@saooti/octopus-sdk 42.2.1 → 42.2.2
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.
- package/dist/{AdvancedSearch-fO5eaqLJ.mjs → AdvancedSearch-C4segSRv.mjs} +6 -6
- package/dist/AdvancedSearch-C4segSRv.mjs.map +1 -0
- package/dist/AdvancedSearch-DD9tnLCw.mjs.map +1 -0
- package/dist/{CategoryFilter-Cu2a0YE9.mjs → CategoryFilter-CpplEC8n.mjs} +5 -5
- package/dist/CategoryFilter-CpplEC8n.mjs.map +1 -0
- package/dist/CategoryFilter-cbQR_ySd.mjs.map +1 -0
- package/dist/{CategoryList-DkxZDrO5.mjs → CategoryList-BTabY3vQ.mjs} +2 -2
- package/dist/CategoryList-BTabY3vQ.mjs.map +1 -0
- package/dist/CategoryList-DHEJoaez.mjs.map +1 -0
- package/dist/CategoryPage-BbsCC3Wr.mjs.map +1 -0
- package/dist/CategoryPage-BxvUmThb.mjs.map +1 -0
- package/dist/{CategoryPage-3HFz1i7_.mjs → CategoryPage-D755GvQZ.mjs} +3 -3
- package/dist/CategoryPage-D755GvQZ.mjs.map +1 -0
- package/dist/CategoryPage-DDBJ2krs.mjs.map +1 -0
- package/dist/CategoryPage-DRCYjOqG.mjs.map +1 -0
- package/dist/ChapteringModal-CSQqCWIk.mjs.map +1 -0
- package/dist/ChapteringModal-Dt8Rsauh.mjs.map +1 -0
- package/dist/{ChapteringModal-C-rdkbSz.mjs → ChapteringModal-ei6ZqVJU.mjs} +2 -2
- package/dist/ChapteringModal-ei6ZqVJU.mjs.map +1 -0
- package/dist/CheckIdentityModal-CNFVJVB_.mjs.map +1 -0
- package/dist/{CheckIdentityModal-N9h8yvhC.mjs → CheckIdentityModal-cpMOuJGv.mjs} +3 -3
- package/dist/CheckIdentityModal-cpMOuJGv.mjs.map +1 -0
- package/dist/ClipboardModal-2ZGF38VB.mjs.map +1 -0
- package/dist/{ClipboardModal-CnieIOJr.mjs → ClipboardModal-DzCUqSph.mjs} +2 -2
- package/dist/ClipboardModal-DzCUqSph.mjs.map +1 -0
- package/dist/CommentInput-CV46HJN8.mjs.map +1 -0
- package/dist/{CommentInput-CEioyN7X.mjs → CommentInput-D_p03L68.mjs} +6 -6
- package/dist/CommentInput-D_p03L68.mjs.map +1 -0
- package/dist/CommentInput-DwRbD74k.mjs.map +1 -0
- package/dist/CommentItem-B6_XUaFR.mjs.map +1 -0
- package/dist/CommentItem-CbbmwVXB.mjs.map +1 -0
- package/dist/CommentItem-DfKKazY0.mjs.map +1 -0
- package/dist/CommentItem-JRjSLmui.mjs.map +1 -0
- package/dist/{CommentItem-BefuRoxQ.mjs → CommentItem-MFN0JNW1.mjs} +8 -8
- package/dist/CommentItem-MFN0JNW1.mjs.map +1 -0
- package/dist/{CommentList-BsPwzqkf.mjs → CommentList-BkKy5ftL.mjs} +3 -3
- package/dist/CommentList-BkKy5ftL.mjs.map +1 -0
- package/dist/CommentList-BrP71Ug4.mjs.map +1 -0
- package/dist/CommentList-Ng_YXr74.mjs.map +1 -0
- package/dist/CommentList-tKA7NFHM.mjs.map +1 -0
- package/dist/CommentList-yarlxaXg.mjs.map +1 -0
- package/dist/{CommentMoreActions-C86aqy8M.mjs → CommentMoreActions-CBSvuOGJ.mjs} +5 -5
- package/dist/CommentMoreActions-CBSvuOGJ.mjs.map +1 -0
- package/dist/CommentMoreActions-D7guBdA7.mjs.map +1 -0
- package/dist/CommentName-frCHmngc.mjs.map +1 -0
- package/dist/{CommentName-DT1QyPi3.mjs → CommentName-zTMSdG4d.mjs} +3 -3
- package/dist/CommentName-zTMSdG4d.mjs.map +1 -0
- package/dist/{CommentParentInfo-9Fe-3e6c.mjs → CommentParentInfo-CRTYPb8P.mjs} +2 -2
- package/dist/CommentParentInfo-CRTYPb8P.mjs.map +1 -0
- package/dist/CommentParentInfo-D8qquB6k.mjs.map +1 -0
- package/dist/CommentParentInfo-DC4Q6wNO.mjs.map +1 -0
- package/dist/CommentParentInfo-temUvqNv.mjs.map +1 -0
- package/dist/{CommentPlayer-CiWQM64Y.mjs → CommentPlayer-BMuLmZdI.mjs} +3 -3
- package/dist/CommentPlayer-BMuLmZdI.mjs.map +1 -0
- package/dist/CommentPlayer-BPA_lEoE.mjs.map +1 -0
- package/dist/CommentPlayer-CUNi1Lxv.mjs.map +1 -0
- package/dist/{CommentSection-Be38YIkC.mjs → CommentSection-B91sHMDT.mjs} +5 -5
- package/dist/CommentSection-B91sHMDT.mjs.map +1 -0
- package/dist/CommentSection-CpYd7i8U.mjs.map +1 -0
- package/dist/CommentSection-CrqweNX4.mjs.map +1 -0
- package/dist/CommentSection-G8rMWPrM.mjs.map +1 -0
- package/dist/CommentSection-xjY6h7nn.mjs.map +1 -0
- package/dist/CommentStore-9WWuGwIj.mjs.map +1 -0
- package/dist/{CommentStore-Dv7j94Uo.mjs → CommentStore-ClU882RI.mjs} +2 -2
- package/dist/CommentStore-ClU882RI.mjs.map +1 -0
- package/dist/ContractPreviewModal-C4_20E99.mjs.map +1 -0
- package/dist/{ContractPreviewModal-CPT6bDpJ.mjs → ContractPreviewModal-Dn5MeLFo.mjs} +2 -2
- package/dist/ContractPreviewModal-Dn5MeLFo.mjs.map +1 -0
- package/dist/{DownloadPodcastButton-6D8qNAkT.mjs → DownloadPodcastButton-BI_sZWcJ.mjs} +3 -3
- package/dist/DownloadPodcastButton-BI_sZWcJ.mjs.map +1 -0
- package/dist/DownloadPodcastButton-CSRcg8Nl.mjs.map +1 -0
- package/dist/EditCommentModal-KAP1l9RK.mjs.map +1 -0
- package/dist/{EditCommentModal-aAcjhc0v.mjs → EditCommentModal-RbVMVDOp.mjs} +2 -2
- package/dist/EditCommentModal-RbVMVDOp.mjs.map +1 -0
- package/dist/{EmissionGroupChooser-Djt1IZg7.mjs → EmissionGroupChooser-BXqM4iXP.mjs} +2 -2
- package/dist/EmissionGroupChooser-BXqM4iXP.mjs.map +1 -0
- package/dist/EmissionGroupChooser-CO1WBOUi.mjs.map +1 -0
- package/dist/EmissionInlineList-B-r4eI3D.mjs.map +1 -0
- package/dist/{EmissionInlineList-BcrKpW8S.mjs → EmissionInlineList-Cy1lbYKY.mjs} +6 -6
- package/dist/EmissionInlineList-Cy1lbYKY.mjs.map +1 -0
- package/dist/EmissionInlineList-IKPyjBTQ.mjs.map +1 -0
- package/dist/EmissionItem-982WkWkg.mjs.map +1 -0
- package/dist/EmissionItem-B8q9hnN5.mjs.map +1 -0
- package/dist/{EmissionItem-DfkPRcPz.mjs → EmissionItem-BwXm3nNx.mjs} +5 -5
- package/dist/EmissionItem-BwXm3nNx.mjs.map +1 -0
- package/dist/EmissionItem-ZDlQ7B9S.mjs.map +1 -0
- package/dist/{EmissionList-DSuGp0JO.mjs → EmissionList-C8OxrndH.mjs} +6 -6
- package/dist/EmissionList-C8OxrndH.mjs.map +1 -0
- package/dist/EmissionList-C9-UUWMV.mjs.map +1 -0
- package/dist/EmissionList-Dk9xS4s_.mjs.map +1 -0
- package/dist/EmissionList-nrY7ASws.mjs.map +1 -0
- package/dist/EmissionList-vH4NX1NW.mjs.map +1 -0
- package/dist/EmissionPage-BHAPlZw-.mjs.map +1 -0
- package/dist/EmissionPage-B_2JalGG.mjs.map +1 -0
- package/dist/EmissionPage-D4PjyZzN.mjs.map +1 -0
- package/dist/EmissionPage-HGPCRuZD.mjs.map +1 -0
- package/dist/{EmissionPage-Bo9fK8HE.mjs → EmissionPage-nCNIiWCo.mjs} +25 -18
- package/dist/EmissionPage-nCNIiWCo.mjs.map +1 -0
- package/dist/EmissionPlayerItem-B_wRzikv.mjs.map +1 -0
- package/dist/{EmissionPlayerItem-D21OrPmm.mjs → EmissionPlayerItem-Degbnz9F.mjs} +5 -5
- package/dist/EmissionPlayerItem-Degbnz9F.mjs.map +1 -0
- package/dist/EmissionPlayerItem-Dkd0o1ee.mjs.map +1 -0
- package/dist/EmissionPresentationItem-BQ7HhOlC.mjs.map +1 -0
- package/dist/{EmissionPresentationItem-CwDIBurH.mjs → EmissionPresentationItem-CwBGPIgz.mjs} +2 -2
- package/dist/EmissionPresentationItem-CwBGPIgz.mjs.map +1 -0
- package/dist/{EmissionPresentationList-CASI5laP.mjs → EmissionPresentationList-BKI5mQdw.mjs} +4 -4
- package/dist/EmissionPresentationList-BKI5mQdw.mjs.map +1 -0
- package/dist/EmissionPresentationList-CLli23rs.mjs.map +1 -0
- package/dist/EmissionsPage-CO2xgVOR.mjs.map +1 -0
- package/dist/{EmissionsPage-Bw8Qtzlk.mjs → EmissionsPage-Cj7su56Z.mjs} +5 -5
- package/dist/EmissionsPage-Cj7su56Z.mjs.map +1 -0
- package/dist/EmissionsPage-DJdy0re_.mjs.map +1 -0
- package/dist/EmissionsPage-DR9r7_gH.mjs.map +1 -0
- package/dist/EmissionsPage-OVNfLKFu.mjs.map +1 -0
- package/dist/Error403Page-Ch535DfU.mjs.map +1 -0
- package/dist/{Error403Page-nTYCHwTi.mjs → Error403Page-DW2kK8ZZ.mjs} +2 -2
- package/dist/Error403Page-DW2kK8ZZ.mjs.map +1 -0
- package/dist/FooterGarSection-B76j-WZS.mjs.map +1 -0
- package/dist/{FooterGarSection-Cod8Key5.mjs → FooterGarSection-DVdF5RFq.mjs} +4 -4
- package/dist/FooterGarSection-DVdF5RFq.mjs.map +1 -0
- package/dist/FooterSection-BQiO-D1p.mjs.map +1 -0
- package/dist/{FooterSection-4WXBZj7c.mjs → FooterSection-CpYI9OGH.mjs} +5 -5
- package/dist/FooterSection-CpYI9OGH.mjs.map +1 -0
- package/dist/{HomeDropdown-CVe7yF6Y.mjs → HomeDropdown-D7FezAO8.mjs} +3 -3
- package/dist/HomeDropdown-D7FezAO8.mjs.map +1 -0
- package/dist/HomeDropdown-DQoMvBgU.mjs.map +1 -0
- package/dist/HomePage-BWs_az04.mjs.map +1 -0
- package/dist/HomePage-CMPKjRFA.mjs.map +1 -0
- package/dist/HomePage-CsXaeTCW.mjs.map +1 -0
- package/dist/HomePage-NH7OxpA_.mjs.map +1 -0
- package/dist/{HomePage-DupmOw6F.mjs → HomePage-vo6At2bL.mjs} +4 -4
- package/dist/HomePage-vo6At2bL.mjs.map +1 -0
- package/dist/{PodcastRubriqueList-BeTq7IRu.mjs → InlineRubriqueList-3ZVN9GJk.mjs} +14 -12
- package/dist/InlineRubriqueList-3ZVN9GJk.mjs.map +1 -0
- package/dist/InlineRubriqueList-D03VCzg8.mjs.map +1 -0
- package/dist/LikeSection-DtthHZj6.mjs.map +1 -0
- package/dist/{LikeSection-DAid96g9.mjs → LikeSection-jKjhnj88.mjs} +4 -4
- package/dist/LikeSection-jKjhnj88.mjs.map +1 -0
- package/dist/{ListPaginate-C9saxru9.mjs → ListPaginate-BXNnw_I8.mjs} +3 -3
- package/dist/ListPaginate-BXNnw_I8.mjs.map +1 -0
- package/dist/ListPaginate-COsL4t78.mjs.map +1 -0
- package/dist/ListPaginate-JuC0L113.mjs.map +1 -0
- package/dist/LiveHorizontalList-CFs9mGYs.mjs.map +1 -0
- package/dist/LiveHorizontalList-CWBQkS78.mjs.map +1 -0
- package/dist/LiveHorizontalList-DwPVmnvH.mjs.map +1 -0
- package/dist/LiveHorizontalList-jducN58c.mjs.map +1 -0
- package/dist/{LiveHorizontalList-OArlzudf.mjs → LiveHorizontalList-wgXkgFLv.mjs} +4 -4
- package/dist/LiveHorizontalList-wgXkgFLv.mjs.map +1 -0
- package/dist/LiveList-Bp-feBp9.mjs.map +1 -0
- package/dist/LiveList-ByyCyWUl.mjs.map +1 -0
- package/dist/{LiveList-EqIo_cye.mjs → LiveList-CA5n6VeN.mjs} +6 -6
- package/dist/LiveList-CA5n6VeN.mjs.map +1 -0
- package/dist/LiveList-Cah5VFun.mjs.map +1 -0
- package/dist/LiveList-DTAnN32j.mjs.map +1 -0
- package/dist/LivesPage-CNPMz3xS.mjs.map +1 -0
- package/dist/{LivesPage-BmHiBN8A.mjs → LivesPage-CTjXgU-Y.mjs} +5 -5
- package/dist/LivesPage-CTjXgU-Y.mjs.map +1 -0
- package/dist/LivesPage-CdhWyikV.mjs.map +1 -0
- package/dist/LivesPage-CwvFSl6G.mjs.map +1 -0
- package/dist/LivesPage-DyIfBEPX.mjs.map +1 -0
- package/dist/{MapPage-DcXKTGGh.mjs → MapPage-C_nGG0_5.mjs} +3 -3
- package/dist/MapPage-C_nGG0_5.mjs.map +1 -0
- package/dist/MapPage-DXV40zWN.mjs.map +1 -0
- package/dist/{MobileMenu-C0IYBWwF.mjs → MobileMenu-C95GAIm0.mjs} +4 -4
- package/dist/MobileMenu-C95GAIm0.mjs.map +1 -0
- package/dist/MobileMenu-CfHqWqsL.mjs.map +1 -0
- package/dist/NewsletterModal-4Lei4Y59.mjs.map +1 -0
- package/dist/{NewsletterModal-BzlUlz3P.mjs → NewsletterModal-B6ky7DBC.mjs} +2 -2
- package/dist/NewsletterModal-B6ky7DBC.mjs.map +1 -0
- package/dist/OrganisationChooser-BufDZsSd.mjs.map +1 -0
- package/dist/{OrganisationChooser-Bm4zqqCH.mjs → OrganisationChooser-CA0_LiTH.mjs} +3 -3
- package/dist/OrganisationChooser-CA0_LiTH.mjs.map +1 -0
- package/dist/{OrganisationChooserLight-BQ9B91mO.mjs → OrganisationChooserLight-BwG5mNdW.mjs} +2 -2
- package/dist/OrganisationChooserLight-BwG5mNdW.mjs.map +1 -0
- package/dist/OrganisationChooserLight-C2oGlc9Z.mjs.map +1 -0
- package/dist/{PageNotFound-BVQ8M8sO.mjs → PageNotFound-BHpjyNDo.mjs} +3 -3
- package/dist/PageNotFound-BHpjyNDo.mjs.map +1 -0
- package/dist/PageNotFound-IMnfLZqX.mjs.map +1 -0
- package/dist/{ParticipantInlineList-BQtQZFW1.mjs → ParticipantInlineList-A8UwjE4m.mjs} +5 -5
- package/dist/ParticipantInlineList-A8UwjE4m.mjs.map +1 -0
- package/dist/ParticipantInlineList-BpVOpEBm.mjs.map +1 -0
- package/dist/ParticipantInlineList-C5jWxedt.mjs.map +1 -0
- package/dist/ParticipantInlineList-C78uhskc.mjs.map +1 -0
- package/dist/ParticipantItem--Wv16z3V.mjs.map +1 -0
- package/dist/ParticipantItem-B3k4mf2V.mjs.map +1 -0
- package/dist/ParticipantItem-DAPOMGZD.mjs.map +1 -0
- package/dist/{ParticipantItem-EDPkxTT-.mjs → ParticipantItem-Szz8WXI6.mjs} +4 -4
- package/dist/ParticipantItem-Szz8WXI6.mjs.map +1 -0
- package/dist/ParticipantPage-BbKUwNKL.mjs.map +1 -0
- package/dist/ParticipantPage-Byq-9aCQ.mjs.map +1 -0
- package/dist/ParticipantPage-D4RVBlE-.mjs.map +1 -0
- package/dist/ParticipantPage-DfLxuZf-.mjs.map +1 -0
- package/dist/{ParticipantPage-BF-s1oof.mjs → ParticipantPage-y3OoBod8.mjs} +9 -9
- package/dist/ParticipantPage-y3OoBod8.mjs.map +1 -0
- package/dist/{ParticipantsPage-Bzt8Hxah.mjs → ParticipantsPage--BxmzVwz.mjs} +7 -7
- package/dist/ParticipantsPage--BxmzVwz.mjs.map +1 -0
- package/dist/ParticipantsPage-BEPHaCy5.mjs.map +1 -0
- package/dist/ParticipantsPage-BlQavFT6.mjs.map +1 -0
- package/dist/ParticipantsPage-D8ja25F9.mjs.map +1 -0
- package/dist/ParticipantsPage-R8LVrDFY.mjs.map +1 -0
- package/dist/{PlayerAnonymousModal-CbrqO1hs.mjs → PlayerAnonymousModal-BGPpTBPW.mjs} +3 -3
- package/dist/PlayerAnonymousModal-BGPpTBPW.mjs.map +1 -0
- package/dist/PlayerAnonymousModal-BW239BiA.mjs.map +1 -0
- package/dist/PlayerCompact-BFC95d7Y.mjs.map +1 -0
- package/dist/PlayerCompact-C-WCTFZN.mjs.map +1 -0
- package/dist/{PlayerCompact-BtKfz384.mjs → PlayerCompact-DnJns8S2.mjs} +4 -4
- package/dist/PlayerCompact-DnJns8S2.mjs.map +1 -0
- package/dist/PlayerComponent-B8AGq9pg.mjs.map +1 -0
- package/dist/{PlayerComponent-CxNkDcFc.mjs → PlayerComponent-BRBrXVjI.mjs} +27 -39
- package/dist/PlayerComponent-BRBrXVjI.mjs.map +1 -0
- package/dist/PlayerComponent-BbvNS7sy.mjs.map +1 -0
- package/dist/PlayerComponent-By_JAwx_.mjs.map +1 -0
- package/dist/PlayerComponent-C425OWjX.mjs.map +1 -0
- package/dist/PlayerComponent-C5PNQ3TW.mjs.map +1 -0
- package/dist/PlayerComponent-Cnk_vePj.mjs.map +1 -0
- package/dist/PlayerComponent-CovfufPB.mjs.map +1 -0
- package/dist/PlayerComponent-DC4jQIwE.mjs.map +1 -0
- package/dist/PlayerComponent-DEUmVv0M.mjs.map +1 -0
- package/dist/PlayerComponent-DOXY0vL0.mjs.map +1 -0
- package/dist/PlayerComponent-DajZbHv7.mjs.map +1 -0
- package/dist/PlayerComponent-DejSC061.mjs.map +1 -0
- package/dist/PlayerComponent-p7W2UNk6.mjs.map +1 -0
- package/dist/PlayerLarge-3zzN7qom.mjs.map +1 -0
- package/dist/{PlayerLarge-BH6BLQxk.mjs → PlayerLarge-B97rRmrJ.mjs} +12 -10
- package/dist/PlayerLarge-B97rRmrJ.mjs.map +1 -0
- package/dist/PlayerLarge-BzwrEgVR.mjs.map +1 -0
- package/dist/PlayerLarge-CLOwDO6Q.mjs.map +1 -0
- package/dist/PlayerLarge-Chv7pMOU.mjs.map +1 -0
- package/dist/PlayerLarge-CkWGaDiY.mjs.map +1 -0
- package/dist/PlayerLarge-D0NMzCRi.mjs.map +1 -0
- package/dist/PlayerLarge-D3obSnYt.mjs.map +1 -0
- package/dist/PlayerLarge-DLGXpE3K.mjs.map +1 -0
- package/dist/PlayerLarge-QtUrqNm5.mjs.map +1 -0
- package/dist/PlayerLarge-juuY9yOX.mjs.map +1 -0
- package/dist/PlayerLarge-n7zyM6b_.mjs.map +1 -0
- package/dist/PlayerLarge-o4FVk0QB.mjs.map +1 -0
- package/dist/PlayerLarge-tMW3v2La.mjs.map +1 -0
- package/dist/PlayerPlayButton-CTu0337E.mjs.map +1 -0
- package/dist/PlayerPlayButton-CfJWIpoP.mjs.map +1 -0
- package/dist/{PlayerPlayButton-DT2OdqnI.mjs → PlayerPlayButton-zKdHGzFr.mjs} +5 -5
- package/dist/PlayerPlayButton-zKdHGzFr.mjs.map +1 -0
- package/dist/{PlayerProgressBar-CSYnPjZb.mjs → PlayerProgressBar-BG5NG596.mjs} +4 -4
- package/dist/PlayerProgressBar-BG5NG596.mjs.map +1 -0
- package/dist/PlayerProgressBar-Cjv8JVY2.mjs.map +1 -0
- package/dist/PlayerProgressBar-Co0_YEF3.mjs.map +1 -0
- package/dist/PlayerStore-B-L2PQ_b.mjs.map +1 -0
- package/dist/PlayerStore-C2XzSrF5.mjs.map +1 -0
- package/dist/{PlayerStore-DukkcHI_.mjs → PlayerStore-vYmnOEA_.mjs} +3 -3
- package/dist/PlayerStore-vYmnOEA_.mjs.map +1 -0
- package/dist/PlayerVideo-DD6NaGkU.mjs.map +1 -0
- package/dist/{PlayerVideo-_Uz00K_T.mjs → PlayerVideo-Ds0oYeTC.mjs} +5 -5
- package/dist/PlayerVideo-Ds0oYeTC.mjs.map +1 -0
- package/dist/PlayerVideo-cYHZOYMv.mjs.map +1 -0
- package/dist/PlayerVideoDigiteka-BPJdJNEB.mjs.map +1 -0
- package/dist/{PlayerVideoDigiteka-CjfuxXBF.mjs → PlayerVideoDigiteka-C7xb0ndg.mjs} +3 -3
- package/dist/PlayerVideoDigiteka-C7xb0ndg.mjs.map +1 -0
- package/dist/PlayerVideoDigiteka-oqtYXqYK.mjs.map +1 -0
- package/dist/PlayerVideoHls-CB4psqbz.mjs.map +1 -0
- package/dist/{PlayerVideoHls-Dms7iTSo.mjs → PlayerVideoHls-xSNqzBEw.mjs} +4 -4
- package/dist/PlayerVideoHls-xSNqzBEw.mjs.map +1 -0
- package/dist/PlayerVideoHls-zNbegJFp.mjs.map +1 -0
- package/dist/PlaylistPage-BUj1Lzfp.mjs.map +1 -0
- package/dist/PlaylistPage-BhcJkM15.mjs.map +1 -0
- package/dist/PlaylistPage-BsHMB2nn.mjs.map +1 -0
- package/dist/{PlaylistPage-CQX0LhXn.mjs → PlaylistPage-D4mcAo00.mjs} +12 -12
- package/dist/PlaylistPage-D4mcAo00.mjs.map +1 -0
- package/dist/PlaylistPage-DjAgejp8.mjs.map +1 -0
- package/dist/PlaylistsPage-B3V5-WT9.mjs.map +1 -0
- package/dist/PlaylistsPage-DSjvWTw5.mjs.map +1 -0
- package/dist/{PlaylistsPage-Bd-u4qlc.mjs → PlaylistsPage-Dr6HKHf8.mjs} +7 -7
- package/dist/PlaylistsPage-Dr6HKHf8.mjs.map +1 -0
- package/dist/PodcastFilterList-C-8AF1Dn.mjs.map +1 -0
- package/dist/{PodcastFilterList-DkH6bqv_.mjs → PodcastFilterList-CYwPiGko.mjs} +3 -3
- package/dist/PodcastFilterList-CYwPiGko.mjs.map +1 -0
- package/dist/PodcastFilterList-C_d1SyTB.mjs.map +1 -0
- package/dist/PodcastFilterList-ClMsIUaO.mjs.map +1 -0
- package/dist/PodcastFilterList-DBS0kvW6.mjs.map +1 -0
- package/dist/PodcastImage-B8o3T5zK.mjs.map +1 -0
- package/dist/{PodcastImage-BtxcPlrh.mjs → PodcastImage-Bs1lpubL.mjs} +4 -4
- package/dist/PodcastImage-Bs1lpubL.mjs.map +1 -0
- package/dist/PodcastImage-DBB5689n.mjs.map +1 -0
- package/dist/PodcastImage-DNLZH0dY.mjs.map +1 -0
- package/dist/PodcastImage-DrV8oxG8.mjs.map +1 -0
- package/dist/{PodcastInlineList-CVWfH5np.mjs → PodcastInlineList-B7-2QswT.mjs} +2 -2
- package/dist/PodcastInlineList-B7-2QswT.mjs.map +1 -0
- package/dist/PodcastInlineList-BVMV6Wvd.mjs.map +1 -0
- package/dist/PodcastInlineList-BXPpF0YD.mjs.map +1 -0
- package/dist/PodcastInlineList-CLjO1SpD.mjs.map +1 -0
- package/dist/PodcastInlineList-Cf5YF0j9.mjs.map +1 -0
- package/dist/PodcastInlineListTemplate-BX0tXOFx.mjs.map +1 -0
- package/dist/{PodcastInlineListTemplate-BWw1Ix-7.mjs → PodcastInlineListTemplate-DCWn3r7s.mjs} +4 -4
- package/dist/PodcastInlineListTemplate-DCWn3r7s.mjs.map +1 -0
- package/dist/PodcastIsPlaying-BG1_FgVX.mjs.map +1 -0
- package/dist/{PodcastIsPlaying-B7YVeSyB.mjs → PodcastIsPlaying-BsObdQGR.mjs} +2 -2
- package/dist/PodcastIsPlaying-BsObdQGR.mjs.map +1 -0
- package/dist/PodcastIsPlaying-Csd-C2jr.mjs.map +1 -0
- package/dist/PodcastItem-CGmEwYT4.mjs.map +1 -0
- package/dist/PodcastItem-CN6gwARQ.mjs.map +1 -0
- package/dist/PodcastItem-CdLjZKxf.mjs.map +1 -0
- package/dist/PodcastItem-D1MwHzhE.mjs.map +1 -0
- package/dist/{PodcastItem-CFk8MX9D.mjs → PodcastItem-_8ErwIDG.mjs} +7 -7
- package/dist/PodcastItem-_8ErwIDG.mjs.map +1 -0
- package/dist/PodcastList-BXla7F3u.mjs.map +1 -0
- package/dist/PodcastList-BqE8dwdc.mjs.map +1 -0
- package/dist/PodcastList-BvC6iOS6.mjs.map +1 -0
- package/dist/PodcastList-CRwA-s7F.mjs.map +1 -0
- package/dist/PodcastList-CVFr9WNS.mjs.map +1 -0
- package/dist/PodcastList-DZKxDulS.mjs.map +1 -0
- package/dist/{PodcastList-BLXPFjvL.mjs → PodcastList-DgLQjL0d.mjs} +6 -6
- package/dist/PodcastList-DgLQjL0d.mjs.map +1 -0
- package/dist/{PodcastList-c0Iwzakm.mjs → PodcastList-DhKeiBbv.mjs} +5 -5
- package/dist/PodcastList-DhKeiBbv.mjs.map +1 -0
- package/dist/PodcastList-Dtq6kEG4.mjs.map +1 -0
- package/dist/PodcastList-Dx-mo7Wo.mjs.map +1 -0
- package/dist/{PodcastPage-C_d9FaS7.mjs → PodcastPage-C5OCwW8q.mjs} +23 -23
- package/dist/PodcastPage-C5OCwW8q.mjs.map +1 -0
- package/dist/PodcastPage-CsVqOGWc.mjs.map +1 -0
- package/dist/PodcastPage-DQInD9ry.mjs.map +1 -0
- package/dist/PodcastPage-Dka9GEzi.mjs.map +1 -0
- package/dist/PodcastPage-acKIH0vO.mjs.map +1 -0
- package/dist/PodcastPlayBar-AgtR8Ia9.mjs.map +1 -0
- package/dist/PodcastPlayBar-D7CyLEM4.mjs.map +1 -0
- package/dist/{PodcastPlayBar-WjGn_KlZ.mjs → PodcastPlayBar-DC5HCx76.mjs} +4 -4
- package/dist/PodcastPlayBar-DC5HCx76.mjs.map +1 -0
- package/dist/PodcastPlayBasicButton-DHYxw3NX.mjs.map +1 -0
- package/dist/{PodcastPlayBasicButton-BNKlqhGR.mjs → PodcastPlayBasicButton-PJHza4d_.mjs} +2 -2
- package/dist/PodcastPlayBasicButton-PJHza4d_.mjs.map +1 -0
- package/dist/PodcastPlayBasicButton-gK82n3YL.mjs.map +1 -0
- package/dist/{PodcastPlayButton-B9hWbPEk.mjs → PodcastPlayButton-1eaXWTlG.mjs} +4 -4
- package/dist/PodcastPlayButton-1eaXWTlG.mjs.map +1 -0
- package/dist/PodcastPlayButton-Bosq5ozq.mjs.map +1 -0
- package/dist/PodcastPlayButton-DIQi57Oh.mjs.map +1 -0
- package/dist/PodcastPlayButton-DcjbCnlT.mjs.map +1 -0
- package/dist/PodcastPlayButton-DgSCyhrd.mjs.map +1 -0
- package/dist/PodcastPlaylistInlineList-C0HZum5z.mjs.map +1 -0
- package/dist/PodcastPlaylistInlineList-CSziI2j4.mjs.map +1 -0
- package/dist/PodcastPlaylistInlineList-CvX2rauY.mjs.map +1 -0
- package/dist/PodcastPlaylistInlineList-H_rnCHag.mjs.map +1 -0
- package/dist/{PodcastPlaylistInlineList-_csxbYAx.mjs → PodcastPlaylistInlineList-XTbhC8OJ.mjs} +5 -5
- package/dist/PodcastPlaylistInlineList-XTbhC8OJ.mjs.map +1 -0
- package/dist/{PodcastPresentationList-BD8XmnW0.mjs → PodcastPresentationList-BUl5Rq83.mjs} +5 -5
- package/dist/PodcastPresentationList-BUl5Rq83.mjs.map +1 -0
- package/dist/PodcastPresentationList-BvkEDbtG.mjs.map +1 -0
- package/dist/PodcastPresentationList-C0n-xr5w.mjs.map +1 -0
- package/dist/PodcastPresentationList-CnrMkINf.mjs.map +1 -0
- package/dist/PodcastPresentationList-DC-Oi_eK.mjs.map +1 -0
- package/dist/PodcastProgressBar-CP-0ptRF.mjs.map +1 -0
- package/dist/{PodcastProgressBar-B3XOeeJx.mjs → PodcastProgressBar-VG-mRcpi.mjs} +4 -4
- package/dist/PodcastProgressBar-VG-mRcpi.mjs.map +1 -0
- package/dist/PodcastProgressBar-jY43GoFx.mjs.map +1 -0
- package/dist/PodcastRawTranscript-BAu-dt2V.mjs.map +1 -0
- package/dist/{PodcastRawTranscript-D0Nm7jGM.mjs → PodcastRawTranscript-Bf6f5yNd.mjs} +3 -3
- package/dist/PodcastRawTranscript-Bf6f5yNd.mjs.map +1 -0
- package/dist/{PodcastSwiperList-DJ0O3dqM.mjs → PodcastSwiperList-BhulNkN-.mjs} +5 -5
- package/dist/PodcastSwiperList-BhulNkN-.mjs.map +1 -0
- package/dist/PodcastSwiperList-CGeumBPj.mjs.map +1 -0
- package/dist/PodcastSwiperList-CzUkS6M6.mjs.map +1 -0
- package/dist/PodcastSwiperList-DLKOAjUS.mjs.map +1 -0
- package/dist/PodcastSwiperList-DaTHwrHm.mjs.map +1 -0
- package/dist/PodcastmakerHeader-BZT-U0KX.mjs.map +1 -0
- package/dist/{PodcastmakerHeader-DAATtOG_.mjs → PodcastmakerHeader-Df0g2dCr.mjs} +2 -2
- package/dist/PodcastmakerHeader-Df0g2dCr.mjs.map +1 -0
- package/dist/PodcastsPage-B-Qzlif0.mjs.map +1 -0
- package/dist/PodcastsPage-BoK55Z9G.mjs.map +1 -0
- package/dist/PodcastsPage-CTzbr2VD.mjs.map +1 -0
- package/dist/{PodcastsPage-ZhEVoMp1.mjs → PodcastsPage-DSJUPRZE.mjs} +5 -5
- package/dist/PodcastsPage-DSJUPRZE.mjs.map +1 -0
- package/dist/PodcastsPage-Jg_jAix6.mjs.map +1 -0
- package/dist/{ProductorSearch-xs0kzX_E.mjs → ProductorSearch-BTj9gIOs.mjs} +3 -3
- package/dist/ProductorSearch-BTj9gIOs.mjs.map +1 -0
- package/dist/ProductorSearch-ziDbxrDd.mjs.map +1 -0
- package/dist/ProgressBar-BOq9RfZ2.mjs.map +1 -0
- package/dist/{ProgressBar-0DSoUTwB.mjs → ProgressBar-BVc0_6Lv.mjs} +2 -2
- package/dist/ProgressBar-BVc0_6Lv.mjs.map +1 -0
- package/dist/ProgressBar-Cgt2PqnO.mjs.map +1 -0
- package/dist/QrCode-DNiPIFIA.mjs.map +1 -0
- package/dist/{QrCode-CUP2O18d.mjs → QrCode-MCv4t_Bn.mjs} +2 -2
- package/dist/QrCode-MCv4t_Bn.mjs.map +1 -0
- package/dist/{QrCodeModal-DXBCuki7.mjs → QrCodeModal-Be8E0JlC.mjs} +2 -2
- package/dist/QrCodeModal-Be8E0JlC.mjs.map +1 -0
- package/dist/QrCodeModal-DYDKLLuw.mjs.map +1 -0
- package/dist/RadioCurrently-BJOmCSby.mjs.map +1 -0
- package/dist/RadioCurrently-CZePLInZ.mjs.map +1 -0
- package/dist/{RadioCurrently-D5M81oIX.mjs → RadioCurrently-DWySwV64.mjs} +4 -4
- package/dist/RadioCurrently-DWySwV64.mjs.map +1 -0
- package/dist/RadioHistory-7EGvEAMx.mjs.map +1 -0
- package/dist/RadioHistory-BdMa013x.mjs.map +1 -0
- package/dist/{RadioHistory-BgOve4jk.mjs → RadioHistory-DlQFZYp2.mjs} +3 -3
- package/dist/RadioHistory-DlQFZYp2.mjs.map +1 -0
- package/dist/{RadioImage-CUTRr3DL.mjs → RadioImage-BIe2KpG_.mjs} +5 -5
- package/dist/RadioImage-BIe2KpG_.mjs.map +1 -0
- package/dist/RadioImage-CXFZXN1N.mjs.map +1 -0
- package/dist/RadioImage-CpJmuc8a.mjs.map +1 -0
- package/dist/{RadioList-CwzOFHc1.mjs → RadioList-B23gsiEF.mjs} +5 -5
- package/dist/RadioList-B23gsiEF.mjs.map +1 -0
- package/dist/RadioList-BwzgNcMO.mjs.map +1 -0
- package/dist/RadioList-KvAacjmD.mjs.map +1 -0
- package/dist/RadioPage-CM_4A1AQ.mjs.map +1 -0
- package/dist/RadioPage-DkBL81mI.mjs.map +1 -0
- package/dist/{RadioPage-DVflzCV-.mjs → RadioPage-Jg2kmtna.mjs} +11 -11
- package/dist/RadioPage-Jg2kmtna.mjs.map +1 -0
- package/dist/{RadioPlanning-CJ7Qqyhs.mjs → RadioPlanning-2aWTnbZb.mjs} +3 -3
- package/dist/RadioPlanning-2aWTnbZb.mjs.map +1 -0
- package/dist/RadioPlanning-DHxcBVQo.mjs.map +1 -0
- package/dist/RadioProgressBar-BHAawrHe.mjs.map +1 -0
- package/dist/RadioProgressBar-CPjLAoPB.mjs.map +1 -0
- package/dist/{RadioProgressBar-BmJbzzQA.mjs → RadioProgressBar-yIz1oI5d.mjs} +2 -2
- package/dist/RadioProgressBar-yIz1oI5d.mjs.map +1 -0
- package/dist/RecaptchaModal-DKugsU7h.mjs.map +1 -0
- package/dist/{RecaptchaModal-DX9rAHUg.mjs → RecaptchaModal-dfMCfebx.mjs} +2 -2
- package/dist/RecaptchaModal-dfMCfebx.mjs.map +1 -0
- package/dist/ReportAbuseModal-Bxr7NTvH.mjs.map +1 -0
- package/dist/{ReportAbuseModal-CYCRaFAY.mjs → ReportAbuseModal-DZKRbYXJ.mjs} +4 -4
- package/dist/ReportAbuseModal-DZKRbYXJ.mjs.map +1 -0
- package/dist/RightsIndicator-BgW0q3af.mjs.map +1 -0
- package/dist/RightsIndicator-BtzqiPWc.mjs.map +1 -0
- package/dist/{RightsIndicator-qIU4_wiF.mjs → RightsIndicator-D5I3DOfO.mjs} +2 -2
- package/dist/RightsIndicator-D5I3DOfO.mjs.map +1 -0
- package/dist/RightsIndicator-NOZ05rEh.mjs.map +1 -0
- package/dist/RightsWrapper-Cv41FXNO.mjs.map +1 -0
- package/dist/{RightsWrapper-Cs6prZ3E.mjs → RightsWrapper-HasUbnny.mjs} +3 -3
- package/dist/RightsWrapper-HasUbnny.mjs.map +1 -0
- package/dist/{RubriqueFilter-OA_DJKL1.mjs → RubriqueFilter-3SPVH4nT.mjs} +3 -3
- package/dist/RubriqueFilter-3SPVH4nT.mjs.map +1 -0
- package/dist/RubriqueFilter-B_F2fyA0.mjs.map +1 -0
- package/dist/RubriqueList-CalsqgcR.mjs.map +1 -0
- package/dist/{RubriqueList-B94NM5yi.mjs → RubriqueList-TnVM2-Ry.mjs} +3 -3
- package/dist/RubriqueList-TnVM2-Ry.mjs.map +1 -0
- package/dist/RubriquePage-BhneK7GY.mjs.map +1 -0
- package/dist/RubriquePage-CPV9lztT.mjs.map +1 -0
- package/dist/{RubriquePage-DyusiBmp.mjs → RubriquePage-D223TaA2.mjs} +5 -5
- package/dist/RubriquePage-D223TaA2.mjs.map +1 -0
- package/dist/RubriquePage-DriBVVmv.mjs.map +1 -0
- package/dist/RubriquePage-x_tOmQCH.mjs.map +1 -0
- package/dist/SearchPage-B-KDO-5r.mjs.map +1 -0
- package/dist/{SearchPage-BGOBGS4j.mjs → SearchPage-BH1gYkHn.mjs} +3 -3
- package/dist/SearchPage-BH1gYkHn.mjs.map +1 -0
- package/dist/SearchPage-CXOoJF_2.mjs.map +1 -0
- package/dist/SearchPage-DyX_tEm5.mjs.map +1 -0
- package/dist/SearchPage-IvX74fSJ.mjs.map +1 -0
- package/dist/{ShareAnonymous-Chfdzzra.mjs → ShareAnonymous-4UxjKrIe.mjs} +6 -6
- package/dist/ShareAnonymous-4UxjKrIe.mjs.map +1 -0
- package/dist/ShareAnonymous-C4xPMrgf.mjs.map +1 -0
- package/dist/{ShareModalPlayer-CLY_JFFD.mjs → ShareModalPlayer-B0wPlpdU.mjs} +2 -2
- package/dist/ShareModalPlayer-B0wPlpdU.mjs.map +1 -0
- package/dist/ShareModalPlayer-CEvDV-I_.mjs.map +1 -0
- package/dist/ShareNewsletter-Bno5t4ay.mjs.map +1 -0
- package/dist/{ShareNewsletter-B4dn4-jA.mjs → ShareNewsletter-Cf9w-I6c.mjs} +2 -2
- package/dist/ShareNewsletter-Cf9w-I6c.mjs.map +1 -0
- package/dist/SharePlayer-BLqYnywl.mjs.map +1 -0
- package/dist/{SharePlayer-wHDYsWYd.mjs → SharePlayer-Oy1pWckd.mjs} +4 -4
- package/dist/SharePlayer-Oy1pWckd.mjs.map +1 -0
- package/dist/{SharePlayerRadio-D3LXD_gK.mjs → SharePlayerRadio-CI6glNuI.mjs} +3 -3
- package/dist/SharePlayerRadio-CI6glNuI.mjs.map +1 -0
- package/dist/SharePlayerRadio-c_HFTupz.mjs.map +1 -0
- package/dist/SharePlayerTypes-Dkmmw2We.mjs.map +1 -0
- package/dist/{SharePlayerTypes-eYSeVl-W.mjs → SharePlayerTypes-cUgCFZ65.mjs} +2 -2
- package/dist/SharePlayerTypes-cUgCFZ65.mjs.map +1 -0
- package/dist/{ShareSocialsButtons-iHtSoQ3K.mjs → ShareSocialsButtons-BYsXc2Jr.mjs} +2 -2
- package/dist/ShareSocialsButtons-BYsXc2Jr.mjs.map +1 -0
- package/dist/ShareSocialsButtons-DZLZc1c6.mjs.map +1 -0
- package/dist/SimpleLayout-BCsUQENG.mjs.map +1 -0
- package/dist/SimpleLayout-BGKNHHjx.mjs.map +1 -0
- package/dist/SimpleLayout-BHIdltFB.mjs.map +1 -0
- package/dist/SimpleLayout-BKkwQmN6.mjs.map +1 -0
- package/dist/SimpleLayout-BORx9hRX.mjs.map +1 -0
- package/dist/{SimpleLayout-Bk74CAAr.mjs → SimpleLayout-BTJyAJO6.mjs} +3 -3
- package/dist/SimpleLayout-BTJyAJO6.mjs.map +1 -0
- package/dist/SimpleLayout-BvOAauzs.mjs.map +1 -0
- package/dist/SimpleLayout-C3xekYgM.mjs.map +1 -0
- package/dist/SimpleLayout-C4xNk0R4.mjs.map +1 -0
- package/dist/SimpleLayout-CDcsE-Be.mjs.map +1 -0
- package/dist/SimpleLayout-D3M_c1Eu.mjs.map +1 -0
- package/dist/SimpleLayout-DJgC3LcZ.mjs.map +1 -0
- package/dist/SimpleLayout-DkvEZxow.mjs.map +1 -0
- package/dist/SimpleLayout-gtbBGlVV.mjs.map +1 -0
- package/dist/SmartLinkPage-BF8hfaWZ.mjs.map +1 -0
- package/dist/{SmartLinkPage-DbuQT8GM.mjs → SmartLinkPage-DQljzYa-.mjs} +5 -5
- package/dist/SmartLinkPage-DQljzYa-.mjs.map +1 -0
- package/dist/SmartLinkPage-DmlqwhYP.mjs.map +1 -0
- package/dist/SubscribeButtons-DO4MRuDr.mjs.map +1 -0
- package/dist/{SubscribeButtons-rnonTVzT.mjs → SubscribeButtons-lAAMYQCm.mjs} +3 -3
- package/dist/SubscribeButtons-lAAMYQCm.mjs.map +1 -0
- package/dist/{SwiperList-C1v0T1wx.mjs → SwiperList-C51H-enh.mjs} +2 -2
- package/dist/SwiperList-C51H-enh.mjs.map +1 -0
- package/dist/SwiperList-Dsq1MFX6.mjs.map +1 -0
- package/dist/TagList-B5C9zojs.mjs.map +1 -0
- package/dist/{TagList-VeuYS_zJ.mjs → TagList-D3Bn2fIn.mjs} +2 -2
- package/dist/TagList-D3Bn2fIn.mjs.map +1 -0
- package/dist/TagPage-B71pZpRY.mjs.map +1 -0
- package/dist/{TagPage-Bd81QJHn.mjs → TagPage-Brw9iL1F.mjs} +4 -4
- package/dist/TagPage-Brw9iL1F.mjs.map +1 -0
- package/dist/TagPage-CWRyUZkD.mjs.map +1 -0
- package/dist/TagPage-DFo25ZeP.mjs.map +1 -0
- package/dist/TagPage-sI917OpV.mjs.map +1 -0
- package/dist/TopBar-CaCA8kOs.mjs.map +1 -0
- package/dist/{TopBar-CZVp2T7C.mjs → TopBar-DIdhyJi_.mjs} +7 -7
- package/dist/TopBar-DIdhyJi_.mjs.map +1 -0
- package/dist/{UserButtonContent-DmNyGmWr.mjs → UserButtonContent-D13cVA34.mjs} +7 -7
- package/dist/UserButtonContent-D13cVA34.mjs.map +1 -0
- package/dist/UserButtonContent-DMKyXEmF.mjs.map +1 -0
- package/dist/{VideoModuleBox-yJZpgCw6.mjs → VideoModuleBox-CFQmvPrA.mjs} +2 -2
- package/dist/VideoModuleBox-CFQmvPrA.mjs.map +1 -0
- package/dist/VideoModuleBox-DsBLAMrh.mjs.map +1 -0
- package/dist/VideoPage-CfJeWV-R.mjs.map +1 -0
- package/dist/VideoPage-CnIZYz-k.mjs.map +1 -0
- package/dist/VideoPage-D6UNKt2D.mjs.map +1 -0
- package/dist/{VideoPage-y6G4Y2Zi.mjs → VideoPage-DU9dJviO.mjs} +10 -10
- package/dist/VideoPage-DU9dJviO.mjs.map +1 -0
- package/dist/VideoPage-OIb28KAS.mjs.map +1 -0
- package/dist/classicApi-C70YSK8J.mjs.map +1 -0
- package/dist/classicApi-DuzZv1Wk.mjs.map +1 -1
- package/dist/{classicApi-CkDHWZG1.mjs → classicApi-xjOqAovv.mjs} +11 -8
- package/dist/classicApi-xjOqAovv.mjs.map +1 -0
- package/dist/downloadHelper-C4q0i5xN.mjs.map +1 -0
- package/dist/{downloadHelper-DLdkblYN.mjs → downloadHelper-DY3fF3dA.mjs} +2 -2
- package/dist/downloadHelper-DY3fF3dA.mjs.map +1 -0
- package/dist/index.mjs +102 -97
- package/dist/index.mjs.map +1 -1
- package/dist/tests.mjs +2 -2
- package/dist/{useAdvancedParamInit-B7G2Mvjv.mjs → useAdvancedParamInit-CCprE3H2.mjs} +6 -6
- package/dist/useAdvancedParamInit-CCprE3H2.mjs.map +1 -0
- package/dist/useAdvancedParamInit-CT8CdPFW.mjs.map +1 -0
- package/dist/useDayjs-BPXVSBns.mjs.map +1 -0
- package/dist/{useDayjs-C3cnTiDW.mjs → useDayjs-DPVjvJPN.mjs} +2 -2
- package/dist/useDayjs-DPVjvJPN.mjs.map +1 -0
- package/dist/useErrorHandler-BxQT9ZGf.mjs.map +1 -0
- package/dist/{useErrorHandler-DtLjD9t_.mjs → useErrorHandler-D3XVxUh6.mjs} +2 -2
- package/dist/useErrorHandler-D3XVxUh6.mjs.map +1 -0
- package/dist/{useImageProxy-Bj0cOCct.mjs → useImageProxy-BdQJmj4a.mjs} +2 -2
- package/dist/useImageProxy-BdQJmj4a.mjs.map +1 -0
- package/dist/useImageProxy-DROuweGY.mjs.map +1 -0
- package/dist/{useOrgaComputed-BLSpEDfb.mjs → useOrgaComputed-B2Bq0VBT.mjs} +2 -2
- package/dist/useOrgaComputed-B2Bq0VBT.mjs.map +1 -0
- package/dist/useOrgaComputed-CGomgs0r.mjs.map +1 -0
- package/dist/{usePlayerLogicProgress-75G9QMg_.mjs → usePlayerLogicProgress-DcHbYGOR.mjs} +3 -3
- package/dist/usePlayerLogicProgress-DcHbYGOR.mjs.map +1 -0
- package/dist/usePlayerLogicProgress-Dchl5sUO.mjs.map +1 -0
- package/dist/usePlayerLogicProgress-lqnQ5qNd.mjs.map +1 -0
- package/dist/{usePodcastView-BftS642h.mjs → usePodcastView-BDZ6CGQj.mjs} +4 -4
- package/dist/usePodcastView-BDZ6CGQj.mjs.map +1 -0
- package/dist/usePodcastView-CI5le-WW.mjs.map +1 -0
- package/dist/usePresentationItem-Cw9fBYUi.mjs.map +1 -0
- package/dist/{usePresentationItem-CNXIk-Sf.mjs → usePresentationItem-UwAuhVqo.mjs} +4 -4
- package/dist/usePresentationItem-UwAuhVqo.mjs.map +1 -0
- package/dist/useRights-D8CLzCMH.mjs.map +1 -0
- package/dist/{useRights-Co0TgD8y.mjs → useRights-DSZ-5pFg.mjs} +2 -2
- package/dist/useRights-DSZ-5pFg.mjs.map +1 -0
- package/dist/{useRubriquesFilterComputed-VsdTUNL6.mjs → useRubriquesFilterComputed-BkDeXTf-.mjs} +2 -2
- package/dist/useRubriquesFilterComputed-BkDeXTf-.mjs.map +1 -0
- package/dist/useRubriquesFilterComputed-Bkre15fg.mjs.map +1 -0
- package/dist/useRubriquesFilterParam-BmE8v1fS.mjs.map +1 -0
- package/dist/{useRubriquesFilterParam--x07HEw1.mjs → useRubriquesFilterParam-Delgf48y.mjs} +2 -2
- package/dist/useRubriquesFilterParam-Delgf48y.mjs.map +1 -0
- package/dist/{useSharePlatforms-CSSRTkTG.mjs → useSharePlatforms-07n3JYu2.mjs} +3 -3
- package/dist/useSharePlatforms-07n3JYu2.mjs.map +1 -0
- package/dist/useSharePlatforms-B_3OwBFv.mjs.map +1 -0
- package/dist/{useSimplePageParam-ClaGQ9yj.mjs → useSimplePageParam-CsY_ie3c.mjs} +2 -2
- package/dist/useSimplePageParam-CsY_ie3c.mjs.map +1 -0
- package/dist/useSimplePageParam-ki2VyM-X.mjs.map +1 -0
- package/dist/{useTranslation-BNshNMQT.mjs → useTranslation-ChEasnl9.mjs} +25 -8
- package/dist/useTranslation-ChEasnl9.mjs.map +1 -0
- package/dist/useTranslation-D0R0BSx9.mjs.map +1 -0
- package/dist/usefetchRadioData-BPmkztGC.mjs.map +1 -0
- package/dist/{usefetchRadioData-C2cwiaCP.mjs → usefetchRadioData-CkrAfN1c.mjs} +2 -2
- package/dist/usefetchRadioData-CkrAfN1c.mjs.map +1 -0
- package/package.json +1 -1
- package/src/components/composable/player/usePlayerLive.ts +8 -7
- package/src/stores/AuthStore.ts +2 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RightsWrapper-Cv41FXNO.mjs","names":[],"sources":["../src/components/composable/useRightsIndicator.ts","../src/components/display/RightsWrapper.vue","../src/components/display/RightsWrapper.vue"],"sourcesContent":["import { Mix } from '../../stores/class/radio/mix';\nimport { PlaylistMedia } from '../../stores/class/radio/playlistMedia';\nimport { Podcast } from '../../stores/class/general/podcast';\nimport { Cartouchier } from '../../stores/class/cartouchier/cartouchier';\nimport { Media } from \"../../stores/class/general/media\";\nimport { computed } from 'vue';\nimport { useI18n } from 'vue-i18n';\nimport { ActionRight, useRights } from '../composable/useRights';\nimport { state } from '../../stores/ParamSdkStore';\nimport { useAuthStore } from '../../stores/AuthStore';\nimport { storeToRefs } from 'pinia';\nimport { Emission } from '@/stores/class/general/emission';\n\ntype Action = 'create'|'edit'|'delete'|'any';\n\nexport interface PropsBase {\n /** Type of action to check */\n action: Action;\n}\n\ntype NeverEntities = {\n podcast?: never;\n emission?: never;\n cartouchier?: never;\n mix?: never;\n playlistMedia?: never;\n media?: never;\n promoVideoFor?: never;\n};\n\nexport interface PropsPodcast extends PropsBase, Omit<NeverEntities, 'podcast'> {\n podcast: Podcast|boolean;\n}\nexport interface PropsEmission extends PropsBase, Omit<NeverEntities, 'emission'> {\n emission: Emission|boolean;\n}\nexport interface PropsCartouchier extends PropsBase, Omit<NeverEntities, 'cartouchier'> {\n cartouchier: Cartouchier|boolean;\n}\nexport interface PropsMix extends PropsBase, Omit<NeverEntities, 'mix'> {\n mix: Mix|boolean;\n}\nexport interface PropsPlaylistMedia extends PropsBase, Omit<NeverEntities, 'playlistMedia'> {\n playlistMedia: PlaylistMedia|boolean;\n}\nexport interface PropsMedia extends PropsBase, Omit<NeverEntities, 'media'> {\n media: Media|boolean;\n}\nexport interface PropsPromoVideo extends PropsBase, Omit<NeverEntities, 'promoVideoFor'> {\n promoVideoFor: Podcast;\n}\n\nexport type RightsProps = PropsPodcast|PropsEmission|PropsCartouchier|PropsMix|PropsPlaylistMedia|PropsMedia;\n\nexport const useRightsIndicator = (props: PropsPodcast|PropsEmission|PropsCartouchier|PropsMix|PropsPlaylistMedia|PropsMedia) => {\n const rights = useRights();\n const { t, te } = useI18n();\n const { isAuthenticated } = storeToRefs(useAuthStore());\n\n type Rights = ReturnType<typeof useRights>;\n type ActionSegment = 'Create'|'Edit'|'Delete';\n type EntitySegment = 'Podcast'|'Emission'|'Cartouchier'|'Mix'|'PlaylistMedia'|'Media'|'PromoVideo';\n type RightMethodKey = `get${ActionSegment}${EntitySegment}Right` & keyof Rights;\n type RightEntity = Podcast|Emission|Cartouchier|Mix|PlaylistMedia|Media|boolean|undefined;\n\n const actionSegmentMap: Record<Exclude<Action, 'any'>, ActionSegment> = {\n create: 'Create',\n edit: 'Edit',\n delete: 'Delete',\n };\n\n /**\n * Whether to display the indicator\n * It is not shown on podcastmaker, or for unidentified users\n */\n const displayIndicator = computed((): boolean => {\n return !state.generalParameters.podcastmaker && isAuthenticated.value;\n });\n\n /**\n * The entity on which rights are checked\n */\n const entity = computed((): [EntitySegment, RightEntity]|null => {\n let arg: RightEntity;\n let entitySegment: EntitySegment|undefined;\n\n if ('podcast' in props && props.podcast) {\n entitySegment = 'Podcast';\n arg = props.podcast;\n } else if ('emission' in props && props.emission) {\n entitySegment = 'Emission';\n arg = props.emission;\n } else if ('cartouchier' in props && props.cartouchier) {\n entitySegment = 'Cartouchier';\n arg = props.cartouchier;\n } else if ('mix' in props && props.mix) {\n entitySegment = 'Mix';\n arg = props.mix;\n } else if ('playlistMedia' in props && props.playlistMedia) {\n entitySegment = 'PlaylistMedia';\n arg = props.playlistMedia;\n } else if ('media' in props && props.media) {\n entitySegment = 'Media';\n arg = props.media;\n } else if ('promoVideoFor' in props && props.promoVideoFor) {\n entitySegment = 'PromoVideo';\n arg = props.promoVideoFor;\n } else {\n return null;\n }\n\n return [entitySegment, arg];\n });\n\n /**\n * The current rights for the given entity\n */\n const actionRight = computed((): ActionRight => {\n const data = entity.value;\n if (!data) {\n return ActionRight.DeniedNoRight;\n }\n\n const [entitySegment, arg] = data;\n\n if (props.action === 'any') {\n const checks: ActionSegment[] = typeof arg === 'object' && arg !== null\n ? ['Create', 'Edit', 'Delete']\n : ['Create'];\n\n let best = ActionRight.DeniedNoRight;\n for (const a of checks) {\n const key = `get${a}${entitySegment}Right` as RightMethodKey;\n const r = callRightMethod(key, arg);\n if (r === ActionRight.Allowed) {\n return ActionRight.Allowed;\n }\n if (r === ActionRight.DeniedNotOwner) {\n best = ActionRight.DeniedNotOwner;\n }\n }\n return best;\n }\n\n if ((props.action === 'edit' || props.action === 'delete') && typeof arg !== 'object') {\n return ActionRight.DeniedNoRight;\n }\n\n const methodName = `get${actionSegmentMap[props.action]}${entitySegment}Right` as RightMethodKey;\n return callRightMethod(methodName, arg);\n });\n\n /** Helper for calling the method on useRights */\n function callRightMethod(key: RightMethodKey, arg: unknown): ActionRight {\n return (rights[key] as (arg?: unknown) => ActionRight)(arg);\n }\n\n const hasAccess = computed((): boolean => {\n return actionRight.value === ActionRight.Allowed;\n });\n\n const message = computed((): string => {\n const entitySegment = entity.value?.[0];\n let key: string;\n let genericKey: string;\n \n switch (actionRight.value) {\n case ActionRight.Allowed:\n return '';\n\n case ActionRight.DeniedNotOwner:\n key = `RightsIndicator - ${entitySegment} - Not owner`;\n genericKey = 'Generic - Action disabled - Not owner';\n break;\n\n case ActionRight.DeniedInsufficientScope:\n key = `RightsIndicator - ${entitySegment} - Insufficient scope`;\n genericKey = 'RightsIndicator - Generic - Insufficient scope';\n break;\n\n case ActionRight.DeniedNoRight:\n key = `RightsIndicator - ${entitySegment} - Insufficient rights`;\n genericKey = 'RightsIndicator - Generic - Insufficient rights';\n break;\n\n default:\n return 'Cannot process rights';\n }\n\n if (te(key)) {\n return t(key);\n } else {\n return t(genericKey);\n }\n });\n\n return {\n displayIndicator,\n hasAccess,\n message\n }\n};\n","<template>\n <div\n v-if=\"displayIndicator\"\n >\n <slot :id=\"elementId\" :has-access=\"hasAccess\" />\n <span v-if=\"!hasAccess\" class=\"rights-visually-hidden\">{{ message }}</span>\n <ClassicPopover\n v-if=\"!hasAccess\"\n :target=\"elementId\"\n only-mouse\n >\n {{ message }}\n </ClassicPopover>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, getCurrentInstance } from 'vue';\nimport { RightsProps, useRightsIndicator } from '../composable/useRightsIndicator';\nimport ClassicPopover from '../misc/ClassicPopover.vue';\n\nconst props = defineProps<RightsProps>();\n\nconst { displayIndicator, hasAccess, message } = useRightsIndicator(props);\n\nconst uid = getCurrentInstance()?.uid;\n/** ID of the icon for reference by the popover */\nconst elementId = computed((): string => 'rights-wrapper-' + uid);\n</script>\n\n<style scoped lang=\"scss\">\n/** Helper class to keep the data accessible for screen readers */\n.rights-visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border: 0;\n}\n</style>\n","<template>\n <div\n v-if=\"displayIndicator\"\n >\n <slot :id=\"elementId\" :has-access=\"hasAccess\" />\n <span v-if=\"!hasAccess\" class=\"rights-visually-hidden\">{{ message }}</span>\n <ClassicPopover\n v-if=\"!hasAccess\"\n :target=\"elementId\"\n only-mouse\n >\n {{ message }}\n </ClassicPopover>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, getCurrentInstance } from 'vue';\nimport { RightsProps, useRightsIndicator } from '../composable/useRightsIndicator';\nimport ClassicPopover from '../misc/ClassicPopover.vue';\n\nconst props = defineProps<RightsProps>();\n\nconst { displayIndicator, hasAccess, message } = useRightsIndicator(props);\n\nconst uid = getCurrentInstance()?.uid;\n/** ID of the icon for reference by the popover */\nconst elementId = computed((): string => 'rights-wrapper-' + uid);\n</script>\n\n<style scoped lang=\"scss\">\n/** Helper class to keep the data accessible for screen readers */\n.rights-visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border: 0;\n}\n</style>\n"],"mappings":";;;;;;;;;AAsDA,IAAa,sBAAsB,UAA8F;CAC7H,MAAM,SAAS,UAAU;CACzB,MAAM,EAAE,GAAG,OAAO,QAAQ;CAC1B,MAAM,EAAE,oBAAoB,YAAY,aAAa,CAAC;CAQtD,MAAM,mBAAkE;EACpE,QAAQ;EACR,MAAM;EACN,QAAQ;CACZ;;;;;CAMA,MAAM,mBAAmB,eAAwB;EAC7C,OAAO,CAAC,MAAM,kBAAkB,gBAAgB,gBAAgB;CACpE,CAAC;;;;CAKD,MAAM,SAAS,eAAkD;EAC7D,IAAI;EACJ,IAAI;EAEJ,IAAI,aAAa,SAAS,MAAM,SAAS;GACrC,gBAAgB;GAChB,MAAM,MAAM;EAChB,OAAO,IAAI,cAAc,SAAS,MAAM,UAAU;GAC9C,gBAAgB;GAChB,MAAM,MAAM;EAChB,OAAO,IAAI,iBAAiB,SAAS,MAAM,aAAa;GACpD,gBAAgB;GAChB,MAAM,MAAM;EAChB,OAAO,IAAI,SAAS,SAAS,MAAM,KAAK;GACpC,gBAAgB;GAChB,MAAM,MAAM;EAChB,OAAO,IAAI,mBAAmB,SAAS,MAAM,eAAe;GACxD,gBAAgB;GAChB,MAAM,MAAM;EAChB,OAAO,IAAI,WAAW,SAAS,MAAM,OAAO;GACxC,gBAAgB;GAChB,MAAM,MAAM;EAChB,OAAO,IAAI,mBAAmB,SAAS,MAAM,eAAe;GACxD,gBAAgB;GAChB,MAAM,MAAM;EAChB,OACI,OAAO;EAGX,OAAO,CAAC,eAAe,GAAG;CAC9B,CAAC;;;;CAKD,MAAM,cAAc,eAA4B;EAC5C,MAAM,OAAO,OAAO;EACpB,IAAI,CAAC,MACD,OAAO,YAAY;EAGvB,MAAM,CAAC,eAAe,OAAO;EAE7B,IAAI,MAAM,WAAW,OAAO;GACxB,MAAM,SAA0B,OAAO,QAAQ,YAAY,QAAQ,OAC7D;IAAC;IAAU;IAAQ;GAAQ,IAC3B,CAAC,QAAQ;GAEf,IAAI,OAAO,YAAY;GACvB,KAAK,MAAM,KAAK,QAAQ;IAEpB,MAAM,IAAI,gBAAgB,MADR,IAAI,cAAc,QACL,GAAG;IAClC,IAAI,MAAM,YAAY,SAClB,OAAO,YAAY;IAEvB,IAAI,MAAM,YAAY,gBAClB,OAAO,YAAY;GAE3B;GACA,OAAO;EACX;EAEA,KAAK,MAAM,WAAW,UAAU,MAAM,WAAW,aAAa,OAAO,QAAQ,UACzE,OAAO,YAAY;EAIvB,OAAO,gBAAgB,MADE,iBAAiB,MAAM,UAAU,cAAc,QACrC,GAAG;CAC1C,CAAC;;CAGD,SAAS,gBAAgB,KAAqB,KAA2B;EACrE,OAAQ,OAAO,KAAwC,GAAG;CAC9D;CAyCA,OAAO;EACH;EACA,WAzCc,eAAwB;GACtC,OAAO,YAAY,UAAU,YAAY;EAC7C,CAuCI;EACA,SAtCY,eAAuB;GACnC,MAAM,gBAAgB,OAAO,QAAQ;GACrC,IAAI;GACJ,IAAI;GAEJ,QAAQ,YAAY,OAApB;IACA,KAAK,YAAY,SACb,OAAO;IAEX,KAAK,YAAY;KACb,MAAM,qBAAqB,cAAc;KACzC,aAAa;KACb;IAEJ,KAAK,YAAY;KACb,MAAM,qBAAqB,cAAc;KACzC,aAAa;KACb;IAEJ,KAAK,YAAY;KACb,MAAM,qBAAqB,cAAc;KACzC,aAAa;KACb;IAEJ,SACI,OAAO;GACX;GAEA,IAAI,GAAG,GAAG,GACN,OAAO,EAAE,GAAG;QAEZ,OAAO,EAAE,UAAU;EAE3B,CAKI;CACJ;AACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ECpLA,MAAM,QAAQ;EAEd,MAAM,EAAE,kBAAkB,WAAW,YAAY,mBAAmB,KAAK;EAEzE,MAAM,MAAM,mBAAmB,GAAG;;;;;;;cAEhB,eAAuB,oBAAoB,GAAA;;;;;;;;;;;;;;;;CCtB7B,OAAM;;;QAHxB,OAAA,oBAAA,UAAA,GADV,mBAYM,OAAA,YAAA;EATF,WAAgD,KAAA,QAAA,WAAA;GAAzC,IAAI,OAAA;GAAY,WAAY,OAAA;;GACtB,OAAA,aAAA,UAAA,GAAb,mBAA2E,QAA3E,YAA2E,gBAAjB,OAAA,OAAO,GAAA,CAAA,KAAA,mBAAA,QAAA,IAAA;GAEtD,OAAA,aAAA,UAAA,GADX,YAMiB,OAAA,mBAAA;;GAJZ,QAAQ,OAAA;GACT,cAAA;;0BAEa,CAAA,gBAAA,gBAAV,OAAA,OAAO,GAAA,CAAA,CAAA,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-D7D4PA-g.mjs";
|
|
2
2
|
import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper-BOaGB7Aw.mjs";
|
|
3
|
-
import { A as state, i as useAuthStore } from "./classicApi-
|
|
4
|
-
import { n as useRights, t as ActionRight } from "./useRights-
|
|
3
|
+
import { A as state, i as useAuthStore } from "./classicApi-xjOqAovv.mjs";
|
|
4
|
+
import { n as useRights, t as ActionRight } from "./useRights-DSZ-5pFg.mjs";
|
|
5
5
|
import { t as ClassicPopover_default } from "./ClassicPopover-BIyLKorz.mjs";
|
|
6
6
|
import { computed, createBlock, createCommentVNode, createElementBlock, createTextVNode, defineComponent, getCurrentInstance, openBlock, renderSlot, toDisplayString, withCtx } from "vue";
|
|
7
7
|
import { useI18n } from "vue-i18n";
|
|
@@ -209,4 +209,4 @@ var RightsWrapper_default = /*#__PURE__*/ _plugin_vue_export_helper_default(Righ
|
|
|
209
209
|
//#endregion
|
|
210
210
|
export { RightsWrapper_exports as n, useRightsIndicator as r, RightsWrapper_default as t };
|
|
211
211
|
|
|
212
|
-
//# sourceMappingURL=RightsWrapper-
|
|
212
|
+
//# sourceMappingURL=RightsWrapper-HasUbnny.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RightsWrapper-HasUbnny.mjs","names":[],"sources":["../src/components/composable/useRightsIndicator.ts","../src/components/display/RightsWrapper.vue","../src/components/display/RightsWrapper.vue"],"sourcesContent":["import { Mix } from '../../stores/class/radio/mix';\nimport { PlaylistMedia } from '../../stores/class/radio/playlistMedia';\nimport { Podcast } from '../../stores/class/general/podcast';\nimport { Cartouchier } from '../../stores/class/cartouchier/cartouchier';\nimport { Media } from \"../../stores/class/general/media\";\nimport { computed } from 'vue';\nimport { useI18n } from 'vue-i18n';\nimport { ActionRight, useRights } from '../composable/useRights';\nimport { state } from '../../stores/ParamSdkStore';\nimport { useAuthStore } from '../../stores/AuthStore';\nimport { storeToRefs } from 'pinia';\nimport { Emission } from '@/stores/class/general/emission';\n\ntype Action = 'create'|'edit'|'delete'|'any';\n\nexport interface PropsBase {\n /** Type of action to check */\n action: Action;\n}\n\ntype NeverEntities = {\n podcast?: never;\n emission?: never;\n cartouchier?: never;\n mix?: never;\n playlistMedia?: never;\n media?: never;\n promoVideoFor?: never;\n};\n\nexport interface PropsPodcast extends PropsBase, Omit<NeverEntities, 'podcast'> {\n podcast: Podcast|boolean;\n}\nexport interface PropsEmission extends PropsBase, Omit<NeverEntities, 'emission'> {\n emission: Emission|boolean;\n}\nexport interface PropsCartouchier extends PropsBase, Omit<NeverEntities, 'cartouchier'> {\n cartouchier: Cartouchier|boolean;\n}\nexport interface PropsMix extends PropsBase, Omit<NeverEntities, 'mix'> {\n mix: Mix|boolean;\n}\nexport interface PropsPlaylistMedia extends PropsBase, Omit<NeverEntities, 'playlistMedia'> {\n playlistMedia: PlaylistMedia|boolean;\n}\nexport interface PropsMedia extends PropsBase, Omit<NeverEntities, 'media'> {\n media: Media|boolean;\n}\nexport interface PropsPromoVideo extends PropsBase, Omit<NeverEntities, 'promoVideoFor'> {\n promoVideoFor: Podcast;\n}\n\nexport type RightsProps = PropsPodcast|PropsEmission|PropsCartouchier|PropsMix|PropsPlaylistMedia|PropsMedia;\n\nexport const useRightsIndicator = (props: PropsPodcast|PropsEmission|PropsCartouchier|PropsMix|PropsPlaylistMedia|PropsMedia) => {\n const rights = useRights();\n const { t, te } = useI18n();\n const { isAuthenticated } = storeToRefs(useAuthStore());\n\n type Rights = ReturnType<typeof useRights>;\n type ActionSegment = 'Create'|'Edit'|'Delete';\n type EntitySegment = 'Podcast'|'Emission'|'Cartouchier'|'Mix'|'PlaylistMedia'|'Media'|'PromoVideo';\n type RightMethodKey = `get${ActionSegment}${EntitySegment}Right` & keyof Rights;\n type RightEntity = Podcast|Emission|Cartouchier|Mix|PlaylistMedia|Media|boolean|undefined;\n\n const actionSegmentMap: Record<Exclude<Action, 'any'>, ActionSegment> = {\n create: 'Create',\n edit: 'Edit',\n delete: 'Delete',\n };\n\n /**\n * Whether to display the indicator\n * It is not shown on podcastmaker, or for unidentified users\n */\n const displayIndicator = computed((): boolean => {\n return !state.generalParameters.podcastmaker && isAuthenticated.value;\n });\n\n /**\n * The entity on which rights are checked\n */\n const entity = computed((): [EntitySegment, RightEntity]|null => {\n let arg: RightEntity;\n let entitySegment: EntitySegment|undefined;\n\n if ('podcast' in props && props.podcast) {\n entitySegment = 'Podcast';\n arg = props.podcast;\n } else if ('emission' in props && props.emission) {\n entitySegment = 'Emission';\n arg = props.emission;\n } else if ('cartouchier' in props && props.cartouchier) {\n entitySegment = 'Cartouchier';\n arg = props.cartouchier;\n } else if ('mix' in props && props.mix) {\n entitySegment = 'Mix';\n arg = props.mix;\n } else if ('playlistMedia' in props && props.playlistMedia) {\n entitySegment = 'PlaylistMedia';\n arg = props.playlistMedia;\n } else if ('media' in props && props.media) {\n entitySegment = 'Media';\n arg = props.media;\n } else if ('promoVideoFor' in props && props.promoVideoFor) {\n entitySegment = 'PromoVideo';\n arg = props.promoVideoFor;\n } else {\n return null;\n }\n\n return [entitySegment, arg];\n });\n\n /**\n * The current rights for the given entity\n */\n const actionRight = computed((): ActionRight => {\n const data = entity.value;\n if (!data) {\n return ActionRight.DeniedNoRight;\n }\n\n const [entitySegment, arg] = data;\n\n if (props.action === 'any') {\n const checks: ActionSegment[] = typeof arg === 'object' && arg !== null\n ? ['Create', 'Edit', 'Delete']\n : ['Create'];\n\n let best = ActionRight.DeniedNoRight;\n for (const a of checks) {\n const key = `get${a}${entitySegment}Right` as RightMethodKey;\n const r = callRightMethod(key, arg);\n if (r === ActionRight.Allowed) {\n return ActionRight.Allowed;\n }\n if (r === ActionRight.DeniedNotOwner) {\n best = ActionRight.DeniedNotOwner;\n }\n }\n return best;\n }\n\n if ((props.action === 'edit' || props.action === 'delete') && typeof arg !== 'object') {\n return ActionRight.DeniedNoRight;\n }\n\n const methodName = `get${actionSegmentMap[props.action]}${entitySegment}Right` as RightMethodKey;\n return callRightMethod(methodName, arg);\n });\n\n /** Helper for calling the method on useRights */\n function callRightMethod(key: RightMethodKey, arg: unknown): ActionRight {\n return (rights[key] as (arg?: unknown) => ActionRight)(arg);\n }\n\n const hasAccess = computed((): boolean => {\n return actionRight.value === ActionRight.Allowed;\n });\n\n const message = computed((): string => {\n const entitySegment = entity.value?.[0];\n let key: string;\n let genericKey: string;\n \n switch (actionRight.value) {\n case ActionRight.Allowed:\n return '';\n\n case ActionRight.DeniedNotOwner:\n key = `RightsIndicator - ${entitySegment} - Not owner`;\n genericKey = 'Generic - Action disabled - Not owner';\n break;\n\n case ActionRight.DeniedInsufficientScope:\n key = `RightsIndicator - ${entitySegment} - Insufficient scope`;\n genericKey = 'RightsIndicator - Generic - Insufficient scope';\n break;\n\n case ActionRight.DeniedNoRight:\n key = `RightsIndicator - ${entitySegment} - Insufficient rights`;\n genericKey = 'RightsIndicator - Generic - Insufficient rights';\n break;\n\n default:\n return 'Cannot process rights';\n }\n\n if (te(key)) {\n return t(key);\n } else {\n return t(genericKey);\n }\n });\n\n return {\n displayIndicator,\n hasAccess,\n message\n }\n};\n","<template>\n <div\n v-if=\"displayIndicator\"\n >\n <slot :id=\"elementId\" :has-access=\"hasAccess\" />\n <span v-if=\"!hasAccess\" class=\"rights-visually-hidden\">{{ message }}</span>\n <ClassicPopover\n v-if=\"!hasAccess\"\n :target=\"elementId\"\n only-mouse\n >\n {{ message }}\n </ClassicPopover>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, getCurrentInstance } from 'vue';\nimport { RightsProps, useRightsIndicator } from '../composable/useRightsIndicator';\nimport ClassicPopover from '../misc/ClassicPopover.vue';\n\nconst props = defineProps<RightsProps>();\n\nconst { displayIndicator, hasAccess, message } = useRightsIndicator(props);\n\nconst uid = getCurrentInstance()?.uid;\n/** ID of the icon for reference by the popover */\nconst elementId = computed((): string => 'rights-wrapper-' + uid);\n</script>\n\n<style scoped lang=\"scss\">\n/** Helper class to keep the data accessible for screen readers */\n.rights-visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border: 0;\n}\n</style>\n","<template>\n <div\n v-if=\"displayIndicator\"\n >\n <slot :id=\"elementId\" :has-access=\"hasAccess\" />\n <span v-if=\"!hasAccess\" class=\"rights-visually-hidden\">{{ message }}</span>\n <ClassicPopover\n v-if=\"!hasAccess\"\n :target=\"elementId\"\n only-mouse\n >\n {{ message }}\n </ClassicPopover>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, getCurrentInstance } from 'vue';\nimport { RightsProps, useRightsIndicator } from '../composable/useRightsIndicator';\nimport ClassicPopover from '../misc/ClassicPopover.vue';\n\nconst props = defineProps<RightsProps>();\n\nconst { displayIndicator, hasAccess, message } = useRightsIndicator(props);\n\nconst uid = getCurrentInstance()?.uid;\n/** ID of the icon for reference by the popover */\nconst elementId = computed((): string => 'rights-wrapper-' + uid);\n</script>\n\n<style scoped lang=\"scss\">\n/** Helper class to keep the data accessible for screen readers */\n.rights-visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border: 0;\n}\n</style>\n"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper-BOaGB7Aw.mjs";
|
|
2
|
-
import { r as useFilterStore, t as classicApi_default } from "./classicApi-
|
|
2
|
+
import { r as useFilterStore, t as classicApi_default } from "./classicApi-xjOqAovv.mjs";
|
|
3
3
|
import { t as ClassicCheckbox_default } from "./ClassicCheckbox-BHKCPtLR.mjs";
|
|
4
|
-
import { t as useRubriquesFilterParam } from "./useRubriquesFilterParam
|
|
4
|
+
import { t as useRubriquesFilterParam } from "./useRubriquesFilterParam-Delgf48y.mjs";
|
|
5
5
|
import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createVNode, defineAsyncComponent, defineComponent, onBeforeMount, openBlock, ref, renderList, toDisplayString, watch } from "vue";
|
|
6
6
|
import { useI18n } from "vue-i18n";
|
|
7
7
|
//#region src/components/display/filter/RubriqueFilter.vue?vue&type=script&setup=true&lang.ts
|
|
@@ -196,4 +196,4 @@ var RubriqueFilter_default = /*#__PURE__*/ _plugin_vue_export_helper_default(Rub
|
|
|
196
196
|
//#endregion
|
|
197
197
|
export { RubriqueFilter_default as default };
|
|
198
198
|
|
|
199
|
-
//# sourceMappingURL=RubriqueFilter-
|
|
199
|
+
//# sourceMappingURL=RubriqueFilter-3SPVH4nT.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RubriqueFilter-3SPVH4nT.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-B_F2fyA0.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-CalsqgcR.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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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper-BOaGB7Aw.mjs";
|
|
2
|
-
import { r as useFilterStore } from "./classicApi-
|
|
2
|
+
import { r as useFilterStore } from "./classicApi-xjOqAovv.mjs";
|
|
3
3
|
import { t as ClassicPopover_default } from "./ClassicPopover-BIyLKorz.mjs";
|
|
4
|
-
import { t as useRubriquesFilterParam } from "./useRubriquesFilterParam
|
|
4
|
+
import { t as useRubriquesFilterParam } from "./useRubriquesFilterParam-Delgf48y.mjs";
|
|
5
5
|
import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createVNode, defineAsyncComponent, defineComponent, nextTick, onBeforeUnmount, onMounted, openBlock, ref, renderList, toDisplayString, useTemplateRef, vModelSelect, vShow, watch, withCtx, withDirectives } from "vue";
|
|
6
6
|
import PlusIcon from "vue-material-design-icons/Plus.vue";
|
|
7
7
|
import { useI18n } from "vue-i18n";
|
|
@@ -203,4 +203,4 @@ var RubriqueList_default = /*#__PURE__*/ _plugin_vue_export_helper_default(Rubri
|
|
|
203
203
|
//#endregion
|
|
204
204
|
export { RubriqueList_default as default };
|
|
205
205
|
|
|
206
|
-
//# sourceMappingURL=RubriqueList-
|
|
206
|
+
//# sourceMappingURL=RubriqueList-TnVM2-Ry.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RubriqueList-TnVM2-Ry.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 @@
|
|
|
1
|
+
{"version":3,"file":"RubriquePage-BhneK7GY.mjs","names":[],"sources":["../src/components/pages/RubriquePage.vue","../src/components/pages/RubriquePage.vue"],"sourcesContent":["<template>\n <section v-if=\"isInit\" class=\"page-box\">\n <h1>{{ title }}</h1>\n <ProductorSearch\n v-model:organisation-id=\"organisationId\"\n v-model:search-pattern=\"searchPattern\"\n />\n <PodcastList\n :first=\"paginateFirst\"\n :size=\"ps\"\n :rubrique-id=\"[rubriqueId]\"\n :organisation-id=\"orgaArray\"\n :query=\"searchMinSize\"\n :sort-criteria=\"sortOrder ?? 'DATE'\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { useSimplePageParam } from \"../composable/route/useSimplePageParam\";\nimport {useSeoTitleUrl} from \"../composable/route/useSeoTitleUrl\";\nimport classicApi from \"../../api/classicApi\";\nimport PodcastList from \"../display/podcasts/PodcastList.vue\";\nimport { computed, defineAsyncComponent, ref, watch } from \"vue\";\nimport { Rubrique } from \"@/stores/class/rubrique/rubrique\";\nconst ProductorSearch = defineAsyncComponent(\n () => import(\"../display/filter/ProductorSearch.vue\"),\n);\n\n//Props \nconst props = defineProps({\n pr: { default: 0, type: Number },\n ps: { default: 30, type: Number },\n rubriqueId: { default: undefined, type: Number },\n routeOrga: { default: undefined, type: String },\n routeQuery: { default: \"\", type: String },\n});\n\n//Data \nconst title = ref(\"\");\n\n//Composables\nconst {\n searchPattern,\n organisationId,\n searchMinSize,\n paginateFirst,\n isInit\n} = useSimplePageParam(props);\nconst { updatePathParams } = useSeoTitleUrl();\n\n\n//Computed\nconst orgaArray = computed(() =>organisationId.value ? [organisationId.value] : []);\nconst sortOrder = computed(() =>{\n if(searchMinSize.value.length){\n return \"SCORE\";\n }\n return undefined;\n});\n\n//Watch\nwatch(()=>props.rubriqueId, async () => {\n const data = await classicApi.fetchData<Rubrique>({\n api: 0,\n path: \"rubrique/\" + props.rubriqueId,\n });\n updatePathParams(data.name);\n title.value = data.name;\n}, {immediate: true});\n\n</script>\n","<template>\n <section v-if=\"isInit\" class=\"page-box\">\n <h1>{{ title }}</h1>\n <ProductorSearch\n v-model:organisation-id=\"organisationId\"\n v-model:search-pattern=\"searchPattern\"\n />\n <PodcastList\n :first=\"paginateFirst\"\n :size=\"ps\"\n :rubrique-id=\"[rubriqueId]\"\n :organisation-id=\"orgaArray\"\n :query=\"searchMinSize\"\n :sort-criteria=\"sortOrder ?? 'DATE'\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { useSimplePageParam } from \"../composable/route/useSimplePageParam\";\nimport {useSeoTitleUrl} from \"../composable/route/useSeoTitleUrl\";\nimport classicApi from \"../../api/classicApi\";\nimport PodcastList from \"../display/podcasts/PodcastList.vue\";\nimport { computed, defineAsyncComponent, ref, watch } from \"vue\";\nimport { Rubrique } from \"@/stores/class/rubrique/rubrique\";\nconst ProductorSearch = defineAsyncComponent(\n () => import(\"../display/filter/ProductorSearch.vue\"),\n);\n\n//Props \nconst props = defineProps({\n pr: { default: 0, type: Number },\n ps: { default: 30, type: Number },\n rubriqueId: { default: undefined, type: Number },\n routeOrga: { default: undefined, type: String },\n routeQuery: { default: \"\", type: String },\n});\n\n//Data \nconst title = ref(\"\");\n\n//Composables\nconst {\n searchPattern,\n organisationId,\n searchMinSize,\n paginateFirst,\n isInit\n} = useSimplePageParam(props);\nconst { updatePathParams } = useSeoTitleUrl();\n\n\n//Computed\nconst orgaArray = computed(() =>organisationId.value ? [organisationId.value] : []);\nconst sortOrder = computed(() =>{\n if(searchMinSize.value.length){\n return \"SCORE\";\n }\n return undefined;\n});\n\n//Watch\nwatch(()=>props.rubriqueId, async () => {\n const data = await classicApi.fetchData<Rubrique>({\n api: 0,\n path: \"rubrique/\" + props.rubriqueId,\n });\n updatePathParams(data.name);\n title.value = data.name;\n}, {immediate: true});\n\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyBA,MAAM,kBAAkB,2BAChB,OAAO,kCAAA,MAAA,MAAA,EAAA,CAAA,CACf;EAGA,MAAM,QAAQ;EASd,MAAM,QAAQ,IAAI,EAAE;EAGpB,MAAM,EACJ,eACA,gBACA,eACA,eACA,WACE,mBAAmB,KAAK;EAC5B,MAAM,EAAE,qBAAqB,eAAe;EAI5C,MAAM,YAAY,eAAc,eAAe,QAAQ,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC;EAClF,MAAM,YAAY,eAAc;GAC9B,IAAG,cAAc,MAAM,QACrB,OAAO;EAGX,CAAC;EAGD,YAAU,MAAM,YAAY,YAAY;GACtC,MAAM,OAAO,MAAM,mBAAW,UAAoB;IAChD,KAAK;IACL,MAAM,cAAc,MAAM;GAC5B,CAAC;GACD,iBAAiB,KAAK,IAAI;GAC1B,MAAM,QAAQ,KAAK;EACrB,GAAG,EAAC,WAAW,KAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;CCpEK,OAAM;;;QAAd,OAAA,UAAA,UAAA,GAAf,mBAcU,WAdV,YAcU;EAbR,mBAAoB,MAAA,MAAA,gBAAb,OAAA,KAAK,GAAA,CAAA;EACZ,YAGE,OAAA,oBAAA;GAFQ,mBAAiB,OAAA;oEAAA,OAAA,iBAAc;GAC/B,kBAAgB,OAAA;mEAAA,OAAA,gBAAa;;EAEvC,YAOE,OAAA,gBAAA;GANC,OAAO,OAAA;GACP,MAAM,OAAA;GACN,eAAW,CAAG,OAAA,UAAU;GACxB,mBAAiB,OAAA;GACjB,OAAO,OAAA;GACP,iBAAe,OAAA,aAAS"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RubriquePage-CPV9lztT.mjs","names":[],"sources":["../src/components/pages/RubriquePage.vue","../src/components/pages/RubriquePage.vue"],"sourcesContent":["<template>\n <section v-if=\"isInit\" class=\"page-box\">\n <h1>{{ title }}</h1>\n <ProductorSearch\n v-model:organisation-id=\"organisationId\"\n v-model:search-pattern=\"searchPattern\"\n />\n <PodcastList\n :first=\"paginateFirst\"\n :size=\"ps\"\n :rubrique-id=\"[rubriqueId]\"\n :organisation-id=\"orgaArray\"\n :query=\"searchMinSize\"\n :sort-criteria=\"sortOrder ?? 'DATE'\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { useSimplePageParam } from \"../composable/route/useSimplePageParam\";\nimport {useSeoTitleUrl} from \"../composable/route/useSeoTitleUrl\";\nimport classicApi from \"../../api/classicApi\";\nimport PodcastList from \"../display/podcasts/PodcastList.vue\";\nimport { computed, defineAsyncComponent, ref, watch } from \"vue\";\nimport { Rubrique } from \"@/stores/class/rubrique/rubrique\";\nconst ProductorSearch = defineAsyncComponent(\n () => import(\"../display/filter/ProductorSearch.vue\"),\n);\n\n//Props \nconst props = defineProps({\n pr: { default: 0, type: Number },\n ps: { default: 30, type: Number },\n rubriqueId: { default: undefined, type: Number },\n routeOrga: { default: undefined, type: String },\n routeQuery: { default: \"\", type: String },\n});\n\n//Data \nconst title = ref(\"\");\n\n//Composables\nconst {\n searchPattern,\n organisationId,\n searchMinSize,\n paginateFirst,\n isInit\n} = useSimplePageParam(props);\nconst { updatePathParams } = useSeoTitleUrl();\n\n\n//Computed\nconst orgaArray = computed(() =>organisationId.value ? [organisationId.value] : []);\nconst sortOrder = computed(() =>{\n if(searchMinSize.value.length){\n return \"SCORE\";\n }\n return undefined;\n});\n\n//Watch\nwatch(()=>props.rubriqueId, async () => {\n const data = await classicApi.fetchData<Rubrique>({\n api: 0,\n path: \"rubrique/\" + props.rubriqueId,\n });\n updatePathParams(data.name);\n title.value = data.name;\n}, {immediate: true});\n\n</script>\n","<template>\n <section v-if=\"isInit\" class=\"page-box\">\n <h1>{{ title }}</h1>\n <ProductorSearch\n v-model:organisation-id=\"organisationId\"\n v-model:search-pattern=\"searchPattern\"\n />\n <PodcastList\n :first=\"paginateFirst\"\n :size=\"ps\"\n :rubrique-id=\"[rubriqueId]\"\n :organisation-id=\"orgaArray\"\n :query=\"searchMinSize\"\n :sort-criteria=\"sortOrder ?? 'DATE'\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { useSimplePageParam } from \"../composable/route/useSimplePageParam\";\nimport {useSeoTitleUrl} from \"../composable/route/useSeoTitleUrl\";\nimport classicApi from \"../../api/classicApi\";\nimport PodcastList from \"../display/podcasts/PodcastList.vue\";\nimport { computed, defineAsyncComponent, ref, watch } from \"vue\";\nimport { Rubrique } from \"@/stores/class/rubrique/rubrique\";\nconst ProductorSearch = defineAsyncComponent(\n () => import(\"../display/filter/ProductorSearch.vue\"),\n);\n\n//Props \nconst props = defineProps({\n pr: { default: 0, type: Number },\n ps: { default: 30, type: Number },\n rubriqueId: { default: undefined, type: Number },\n routeOrga: { default: undefined, type: String },\n routeQuery: { default: \"\", type: String },\n});\n\n//Data \nconst title = ref(\"\");\n\n//Composables\nconst {\n searchPattern,\n organisationId,\n searchMinSize,\n paginateFirst,\n isInit\n} = useSimplePageParam(props);\nconst { updatePathParams } = useSeoTitleUrl();\n\n\n//Computed\nconst orgaArray = computed(() =>organisationId.value ? [organisationId.value] : []);\nconst sortOrder = computed(() =>{\n if(searchMinSize.value.length){\n return \"SCORE\";\n }\n return undefined;\n});\n\n//Watch\nwatch(()=>props.rubriqueId, async () => {\n const data = await classicApi.fetchData<Rubrique>({\n api: 0,\n path: \"rubrique/\" + props.rubriqueId,\n });\n updatePathParams(data.name);\n title.value = data.name;\n}, {immediate: true});\n\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyBA,MAAM,kBAAkB,2BAChB,OAAO,kCAAA,MAAA,MAAA,EAAA,CAAA,CACf;EAGA,MAAM,QAAQ;EASd,MAAM,QAAQ,IAAI,EAAE;EAGpB,MAAM,EACJ,eACA,gBACA,eACA,eACA,WACE,mBAAmB,KAAK;EAC5B,MAAM,EAAE,qBAAqB,eAAe;EAI5C,MAAM,YAAY,eAAc,eAAe,QAAQ,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC;EAClF,MAAM,YAAY,eAAc;GAC9B,IAAG,cAAc,MAAM,QACrB,OAAO;EAGX,CAAC;EAGD,YAAU,MAAM,YAAY,YAAY;GACtC,MAAM,OAAO,MAAM,mBAAW,UAAoB;IAChD,KAAK;IACL,MAAM,cAAc,MAAM;GAC5B,CAAC;GACD,iBAAiB,KAAK,IAAI;GAC1B,MAAM,QAAQ,KAAK;EACrB,GAAG,EAAC,WAAW,KAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;CCpEK,OAAM;;;QAAd,OAAA,UAAA,UAAA,GAAf,mBAcU,WAdV,YAcU;EAbR,mBAAoB,MAAA,MAAA,gBAAb,OAAA,KAAK,GAAA,CAAA;EACZ,YAGE,OAAA,oBAAA;GAFQ,mBAAiB,OAAA;oEAAA,OAAA,iBAAc;GAC/B,kBAAgB,OAAA;mEAAA,OAAA,gBAAa;;EAEvC,YAOE,OAAA,gBAAA;GANC,OAAO,OAAA;GACP,MAAM,OAAA;GACN,eAAW,CAAG,OAAA,UAAU;GACxB,mBAAiB,OAAA;GACjB,OAAO,OAAA;GACP,iBAAe,OAAA,aAAS"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper-BOaGB7Aw.mjs";
|
|
2
|
-
import { t as classicApi_default } from "./classicApi-
|
|
3
|
-
import { t as useSimplePageParam } from "./useSimplePageParam-
|
|
2
|
+
import { t as classicApi_default } from "./classicApi-xjOqAovv.mjs";
|
|
3
|
+
import { t as useSimplePageParam } from "./useSimplePageParam-CsY_ie3c.mjs";
|
|
4
4
|
import { t as useSeoTitleUrl } from "./useSeoTitleUrl-CrM1YzAc.mjs";
|
|
5
|
-
import { t as PodcastList_default } from "./PodcastList-
|
|
5
|
+
import { t as PodcastList_default } from "./PodcastList-DhKeiBbv.mjs";
|
|
6
6
|
import { computed, createCommentVNode, createElementBlock, createElementVNode, createVNode, defineAsyncComponent, defineComponent, openBlock, ref, toDisplayString, watch } from "vue";
|
|
7
7
|
//#region src/components/pages/RubriquePage.vue?vue&type=script&setup=true&lang.ts
|
|
8
8
|
var RubriquePage_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
@@ -31,7 +31,7 @@ var RubriquePage_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
31
31
|
},
|
|
32
32
|
setup(__props, { expose: __expose }) {
|
|
33
33
|
__expose();
|
|
34
|
-
const ProductorSearch = defineAsyncComponent(() => import("./ProductorSearch-
|
|
34
|
+
const ProductorSearch = defineAsyncComponent(() => import("./ProductorSearch-BTj9gIOs.mjs").then((n) => n.n));
|
|
35
35
|
const props = __props;
|
|
36
36
|
const title = ref("");
|
|
37
37
|
const { searchPattern, organisationId, searchMinSize, paginateFirst, isInit } = useSimplePageParam(props);
|
|
@@ -105,4 +105,4 @@ var RubriquePage_default = /*#__PURE__*/ _plugin_vue_export_helper_default(Rubri
|
|
|
105
105
|
//#endregion
|
|
106
106
|
export { RubriquePage_default as default };
|
|
107
107
|
|
|
108
|
-
//# sourceMappingURL=RubriquePage-
|
|
108
|
+
//# sourceMappingURL=RubriquePage-D223TaA2.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RubriquePage-D223TaA2.mjs","names":[],"sources":["../src/components/pages/RubriquePage.vue","../src/components/pages/RubriquePage.vue"],"sourcesContent":["<template>\n <section v-if=\"isInit\" class=\"page-box\">\n <h1>{{ title }}</h1>\n <ProductorSearch\n v-model:organisation-id=\"organisationId\"\n v-model:search-pattern=\"searchPattern\"\n />\n <PodcastList\n :first=\"paginateFirst\"\n :size=\"ps\"\n :rubrique-id=\"[rubriqueId]\"\n :organisation-id=\"orgaArray\"\n :query=\"searchMinSize\"\n :sort-criteria=\"sortOrder ?? 'DATE'\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { useSimplePageParam } from \"../composable/route/useSimplePageParam\";\nimport {useSeoTitleUrl} from \"../composable/route/useSeoTitleUrl\";\nimport classicApi from \"../../api/classicApi\";\nimport PodcastList from \"../display/podcasts/PodcastList.vue\";\nimport { computed, defineAsyncComponent, ref, watch } from \"vue\";\nimport { Rubrique } from \"@/stores/class/rubrique/rubrique\";\nconst ProductorSearch = defineAsyncComponent(\n () => import(\"../display/filter/ProductorSearch.vue\"),\n);\n\n//Props \nconst props = defineProps({\n pr: { default: 0, type: Number },\n ps: { default: 30, type: Number },\n rubriqueId: { default: undefined, type: Number },\n routeOrga: { default: undefined, type: String },\n routeQuery: { default: \"\", type: String },\n});\n\n//Data \nconst title = ref(\"\");\n\n//Composables\nconst {\n searchPattern,\n organisationId,\n searchMinSize,\n paginateFirst,\n isInit\n} = useSimplePageParam(props);\nconst { updatePathParams } = useSeoTitleUrl();\n\n\n//Computed\nconst orgaArray = computed(() =>organisationId.value ? [organisationId.value] : []);\nconst sortOrder = computed(() =>{\n if(searchMinSize.value.length){\n return \"SCORE\";\n }\n return undefined;\n});\n\n//Watch\nwatch(()=>props.rubriqueId, async () => {\n const data = await classicApi.fetchData<Rubrique>({\n api: 0,\n path: \"rubrique/\" + props.rubriqueId,\n });\n updatePathParams(data.name);\n title.value = data.name;\n}, {immediate: true});\n\n</script>\n","<template>\n <section v-if=\"isInit\" class=\"page-box\">\n <h1>{{ title }}</h1>\n <ProductorSearch\n v-model:organisation-id=\"organisationId\"\n v-model:search-pattern=\"searchPattern\"\n />\n <PodcastList\n :first=\"paginateFirst\"\n :size=\"ps\"\n :rubrique-id=\"[rubriqueId]\"\n :organisation-id=\"orgaArray\"\n :query=\"searchMinSize\"\n :sort-criteria=\"sortOrder ?? 'DATE'\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { useSimplePageParam } from \"../composable/route/useSimplePageParam\";\nimport {useSeoTitleUrl} from \"../composable/route/useSeoTitleUrl\";\nimport classicApi from \"../../api/classicApi\";\nimport PodcastList from \"../display/podcasts/PodcastList.vue\";\nimport { computed, defineAsyncComponent, ref, watch } from \"vue\";\nimport { Rubrique } from \"@/stores/class/rubrique/rubrique\";\nconst ProductorSearch = defineAsyncComponent(\n () => import(\"../display/filter/ProductorSearch.vue\"),\n);\n\n//Props \nconst props = defineProps({\n pr: { default: 0, type: Number },\n ps: { default: 30, type: Number },\n rubriqueId: { default: undefined, type: Number },\n routeOrga: { default: undefined, type: String },\n routeQuery: { default: \"\", type: String },\n});\n\n//Data \nconst title = ref(\"\");\n\n//Composables\nconst {\n searchPattern,\n organisationId,\n searchMinSize,\n paginateFirst,\n isInit\n} = useSimplePageParam(props);\nconst { updatePathParams } = useSeoTitleUrl();\n\n\n//Computed\nconst orgaArray = computed(() =>organisationId.value ? [organisationId.value] : []);\nconst sortOrder = computed(() =>{\n if(searchMinSize.value.length){\n return \"SCORE\";\n }\n return undefined;\n});\n\n//Watch\nwatch(()=>props.rubriqueId, async () => {\n const data = await classicApi.fetchData<Rubrique>({\n api: 0,\n path: \"rubrique/\" + props.rubriqueId,\n });\n updatePathParams(data.name);\n title.value = data.name;\n}, {immediate: true});\n\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyBA,MAAM,kBAAkB,2BAChB,OAAO,kCAAA,MAAA,MAAA,EAAA,CAAA,CACf;EAGA,MAAM,QAAQ;EASd,MAAM,QAAQ,IAAI,EAAE;EAGpB,MAAM,EACJ,eACA,gBACA,eACA,eACA,WACE,mBAAmB,KAAK;EAC5B,MAAM,EAAE,qBAAqB,eAAe;EAI5C,MAAM,YAAY,eAAc,eAAe,QAAQ,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC;EAClF,MAAM,YAAY,eAAc;GAC9B,IAAG,cAAc,MAAM,QACrB,OAAO;EAGX,CAAC;EAGD,YAAU,MAAM,YAAY,YAAY;GACtC,MAAM,OAAO,MAAM,mBAAW,UAAoB;IAChD,KAAK;IACL,MAAM,cAAc,MAAM;GAC5B,CAAC;GACD,iBAAiB,KAAK,IAAI;GAC1B,MAAM,QAAQ,KAAK;EACrB,GAAG,EAAC,WAAW,KAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;CCpEK,OAAM;;;QAAd,OAAA,UAAA,UAAA,GAAf,mBAcU,WAdV,YAcU;EAbR,mBAAoB,MAAA,MAAA,gBAAb,OAAA,KAAK,GAAA,CAAA;EACZ,YAGE,OAAA,oBAAA;GAFQ,mBAAiB,OAAA;oEAAA,OAAA,iBAAc;GAC/B,kBAAgB,OAAA;mEAAA,OAAA,gBAAa;;EAEvC,YAOE,OAAA,gBAAA;GANC,OAAO,OAAA;GACP,MAAM,OAAA;GACN,eAAW,CAAG,OAAA,UAAU;GACxB,mBAAiB,OAAA;GACjB,OAAO,OAAA;GACP,iBAAe,OAAA,aAAS"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RubriquePage-DriBVVmv.mjs","names":[],"sources":["../src/components/pages/RubriquePage.vue","../src/components/pages/RubriquePage.vue"],"sourcesContent":["<template>\n <section v-if=\"isInit\" class=\"page-box\">\n <h1>{{ title }}</h1>\n <ProductorSearch\n v-model:organisation-id=\"organisationId\"\n v-model:search-pattern=\"searchPattern\"\n />\n <PodcastList\n :first=\"paginateFirst\"\n :size=\"ps\"\n :rubrique-id=\"[rubriqueId]\"\n :organisation-id=\"orgaArray\"\n :query=\"searchMinSize\"\n :sort-criteria=\"sortOrder ?? 'DATE'\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { useSimplePageParam } from \"../composable/route/useSimplePageParam\";\nimport {useSeoTitleUrl} from \"../composable/route/useSeoTitleUrl\";\nimport classicApi from \"../../api/classicApi\";\nimport PodcastList from \"../display/podcasts/PodcastList.vue\";\nimport { computed, defineAsyncComponent, ref, watch } from \"vue\";\nimport { Rubrique } from \"@/stores/class/rubrique/rubrique\";\nconst ProductorSearch = defineAsyncComponent(\n () => import(\"../display/filter/ProductorSearch.vue\"),\n);\n\n//Props \nconst props = defineProps({\n pr: { default: 0, type: Number },\n ps: { default: 30, type: Number },\n rubriqueId: { default: undefined, type: Number },\n routeOrga: { default: undefined, type: String },\n routeQuery: { default: \"\", type: String },\n});\n\n//Data \nconst title = ref(\"\");\n\n//Composables\nconst {\n searchPattern,\n organisationId,\n searchMinSize,\n paginateFirst,\n isInit\n} = useSimplePageParam(props);\nconst { updatePathParams } = useSeoTitleUrl();\n\n\n//Computed\nconst orgaArray = computed(() =>organisationId.value ? [organisationId.value] : []);\nconst sortOrder = computed(() =>{\n if(searchMinSize.value.length){\n return \"SCORE\";\n }\n return undefined;\n});\n\n//Watch\nwatch(()=>props.rubriqueId, async () => {\n const data = await classicApi.fetchData<Rubrique>({\n api: 0,\n path: \"rubrique/\" + props.rubriqueId,\n });\n updatePathParams(data.name);\n title.value = data.name;\n}, {immediate: true});\n\n</script>\n","<template>\n <section v-if=\"isInit\" class=\"page-box\">\n <h1>{{ title }}</h1>\n <ProductorSearch\n v-model:organisation-id=\"organisationId\"\n v-model:search-pattern=\"searchPattern\"\n />\n <PodcastList\n :first=\"paginateFirst\"\n :size=\"ps\"\n :rubrique-id=\"[rubriqueId]\"\n :organisation-id=\"orgaArray\"\n :query=\"searchMinSize\"\n :sort-criteria=\"sortOrder ?? 'DATE'\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { useSimplePageParam } from \"../composable/route/useSimplePageParam\";\nimport {useSeoTitleUrl} from \"../composable/route/useSeoTitleUrl\";\nimport classicApi from \"../../api/classicApi\";\nimport PodcastList from \"../display/podcasts/PodcastList.vue\";\nimport { computed, defineAsyncComponent, ref, watch } from \"vue\";\nimport { Rubrique } from \"@/stores/class/rubrique/rubrique\";\nconst ProductorSearch = defineAsyncComponent(\n () => import(\"../display/filter/ProductorSearch.vue\"),\n);\n\n//Props \nconst props = defineProps({\n pr: { default: 0, type: Number },\n ps: { default: 30, type: Number },\n rubriqueId: { default: undefined, type: Number },\n routeOrga: { default: undefined, type: String },\n routeQuery: { default: \"\", type: String },\n});\n\n//Data \nconst title = ref(\"\");\n\n//Composables\nconst {\n searchPattern,\n organisationId,\n searchMinSize,\n paginateFirst,\n isInit\n} = useSimplePageParam(props);\nconst { updatePathParams } = useSeoTitleUrl();\n\n\n//Computed\nconst orgaArray = computed(() =>organisationId.value ? [organisationId.value] : []);\nconst sortOrder = computed(() =>{\n if(searchMinSize.value.length){\n return \"SCORE\";\n }\n return undefined;\n});\n\n//Watch\nwatch(()=>props.rubriqueId, async () => {\n const data = await classicApi.fetchData<Rubrique>({\n api: 0,\n path: \"rubrique/\" + props.rubriqueId,\n });\n updatePathParams(data.name);\n title.value = data.name;\n}, {immediate: true});\n\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyBA,MAAM,kBAAkB,2BAChB,OAAO,kCAAA,MAAA,MAAA,EAAA,CAAA,CACf;EAGA,MAAM,QAAQ;EASd,MAAM,QAAQ,IAAI,EAAE;EAGpB,MAAM,EACJ,eACA,gBACA,eACA,eACA,WACE,mBAAmB,KAAK;EAC5B,MAAM,EAAE,qBAAqB,eAAe;EAI5C,MAAM,YAAY,eAAc,eAAe,QAAQ,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC;EAClF,MAAM,YAAY,eAAc;GAC9B,IAAG,cAAc,MAAM,QACrB,OAAO;EAGX,CAAC;EAGD,YAAU,MAAM,YAAY,YAAY;GACtC,MAAM,OAAO,MAAM,mBAAW,UAAoB;IAChD,KAAK;IACL,MAAM,cAAc,MAAM;GAC5B,CAAC;GACD,iBAAiB,KAAK,IAAI;GAC1B,MAAM,QAAQ,KAAK;EACrB,GAAG,EAAC,WAAW,KAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;CCpEK,OAAM;;;QAAd,OAAA,UAAA,UAAA,GAAf,mBAcU,WAdV,YAcU;EAbR,mBAAoB,MAAA,MAAA,gBAAb,OAAA,KAAK,GAAA,CAAA;EACZ,YAGE,OAAA,oBAAA;GAFQ,mBAAiB,OAAA;oEAAA,OAAA,iBAAc;GAC/B,kBAAgB,OAAA;mEAAA,OAAA,gBAAa;;EAEvC,YAOE,OAAA,gBAAA;GANC,OAAO,OAAA;GACP,MAAM,OAAA;GACN,eAAW,CAAG,OAAA,UAAU;GACxB,mBAAiB,OAAA;GACjB,OAAO,OAAA;GACP,iBAAe,OAAA,aAAS"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RubriquePage-x_tOmQCH.mjs","names":[],"sources":["../src/components/pages/RubriquePage.vue","../src/components/pages/RubriquePage.vue"],"sourcesContent":["<template>\n <section v-if=\"isInit\" class=\"page-box\">\n <h1>{{ title }}</h1>\n <ProductorSearch\n v-model:organisation-id=\"organisationId\"\n v-model:search-pattern=\"searchPattern\"\n />\n <PodcastList\n :first=\"paginateFirst\"\n :size=\"ps\"\n :rubrique-id=\"[rubriqueId]\"\n :organisation-id=\"orgaArray\"\n :query=\"searchMinSize\"\n :sort-criteria=\"sortOrder ?? 'DATE'\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { useSimplePageParam } from \"../composable/route/useSimplePageParam\";\nimport {useSeoTitleUrl} from \"../composable/route/useSeoTitleUrl\";\nimport classicApi from \"../../api/classicApi\";\nimport PodcastList from \"../display/podcasts/PodcastList.vue\";\nimport { computed, defineAsyncComponent, ref, watch } from \"vue\";\nimport { Rubrique } from \"@/stores/class/rubrique/rubrique\";\nconst ProductorSearch = defineAsyncComponent(\n () => import(\"../display/filter/ProductorSearch.vue\"),\n);\n\n//Props \nconst props = defineProps({\n pr: { default: 0, type: Number },\n ps: { default: 30, type: Number },\n rubriqueId: { default: undefined, type: Number },\n routeOrga: { default: undefined, type: String },\n routeQuery: { default: \"\", type: String },\n});\n\n//Data \nconst title = ref(\"\");\n\n//Composables\nconst {\n searchPattern,\n organisationId,\n searchMinSize,\n paginateFirst,\n isInit\n} = useSimplePageParam(props);\nconst { updatePathParams } = useSeoTitleUrl();\n\n\n//Computed\nconst orgaArray = computed(() =>organisationId.value ? [organisationId.value] : []);\nconst sortOrder = computed(() =>{\n if(searchMinSize.value.length){\n return \"SCORE\";\n }\n return undefined;\n});\n\n//Watch\nwatch(()=>props.rubriqueId, async () => {\n const data = await classicApi.fetchData<Rubrique>({\n api: 0,\n path: \"rubrique/\" + props.rubriqueId,\n });\n updatePathParams(data.name);\n title.value = data.name;\n}, {immediate: true});\n\n</script>\n","<template>\n <section v-if=\"isInit\" class=\"page-box\">\n <h1>{{ title }}</h1>\n <ProductorSearch\n v-model:organisation-id=\"organisationId\"\n v-model:search-pattern=\"searchPattern\"\n />\n <PodcastList\n :first=\"paginateFirst\"\n :size=\"ps\"\n :rubrique-id=\"[rubriqueId]\"\n :organisation-id=\"orgaArray\"\n :query=\"searchMinSize\"\n :sort-criteria=\"sortOrder ?? 'DATE'\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { useSimplePageParam } from \"../composable/route/useSimplePageParam\";\nimport {useSeoTitleUrl} from \"../composable/route/useSeoTitleUrl\";\nimport classicApi from \"../../api/classicApi\";\nimport PodcastList from \"../display/podcasts/PodcastList.vue\";\nimport { computed, defineAsyncComponent, ref, watch } from \"vue\";\nimport { Rubrique } from \"@/stores/class/rubrique/rubrique\";\nconst ProductorSearch = defineAsyncComponent(\n () => import(\"../display/filter/ProductorSearch.vue\"),\n);\n\n//Props \nconst props = defineProps({\n pr: { default: 0, type: Number },\n ps: { default: 30, type: Number },\n rubriqueId: { default: undefined, type: Number },\n routeOrga: { default: undefined, type: String },\n routeQuery: { default: \"\", type: String },\n});\n\n//Data \nconst title = ref(\"\");\n\n//Composables\nconst {\n searchPattern,\n organisationId,\n searchMinSize,\n paginateFirst,\n isInit\n} = useSimplePageParam(props);\nconst { updatePathParams } = useSeoTitleUrl();\n\n\n//Computed\nconst orgaArray = computed(() =>organisationId.value ? [organisationId.value] : []);\nconst sortOrder = computed(() =>{\n if(searchMinSize.value.length){\n return \"SCORE\";\n }\n return undefined;\n});\n\n//Watch\nwatch(()=>props.rubriqueId, async () => {\n const data = await classicApi.fetchData<Rubrique>({\n api: 0,\n path: \"rubrique/\" + props.rubriqueId,\n });\n updatePathParams(data.name);\n title.value = data.name;\n}, {immediate: true});\n\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyBA,MAAM,kBAAkB,2BAChB,OAAO,kCAAA,MAAA,MAAA,EAAA,CAAA,CACf;EAGA,MAAM,QAAQ;EASd,MAAM,QAAQ,IAAI,EAAE;EAGpB,MAAM,EACJ,eACA,gBACA,eACA,eACA,WACE,mBAAmB,KAAK;EAC5B,MAAM,EAAE,qBAAqB,eAAe;EAI5C,MAAM,YAAY,eAAc,eAAe,QAAQ,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC;EAClF,MAAM,YAAY,eAAc;GAC9B,IAAG,cAAc,MAAM,QACrB,OAAO;EAGX,CAAC;EAGD,YAAU,MAAM,YAAY,YAAY;GACtC,MAAM,OAAO,MAAM,mBAAW,UAAoB;IAChD,KAAK;IACL,MAAM,cAAc,MAAM;GAC5B,CAAC;GACD,iBAAiB,KAAK,IAAI;GAC1B,MAAM,QAAQ,KAAK;EACrB,GAAG,EAAC,WAAW,KAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;CCpEK,OAAM;;;QAAd,OAAA,UAAA,UAAA,GAAf,mBAcU,WAdV,YAcU;EAbR,mBAAoB,MAAA,MAAA,gBAAb,OAAA,KAAK,GAAA,CAAA;EACZ,YAGE,OAAA,oBAAA;GAFQ,mBAAiB,OAAA;oEAAA,OAAA,iBAAc;GAC/B,kBAAgB,OAAA;mEAAA,OAAA,gBAAa;;EAEvC,YAOE,OAAA,gBAAA;GANC,OAAO,OAAA;GACP,MAAM,OAAA;GACN,eAAW,CAAG,OAAA,UAAU;GACxB,mBAAiB,OAAA;GACjB,OAAO,OAAA;GACP,iBAAe,OAAA,aAAS"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SearchPage-B-KDO-5r.mjs","names":[],"sources":["../src/components/pages/SearchPage.vue","../src/components/pages/SearchPage.vue"],"sourcesContent":["<template>\n <section class=\"page-box\">\n <h1>{{ titlePage }}</h1>\n <ClassicSearch\n v-model:text-init=\"rawQuery\"\n :autofocus=\"true\"\n id-search=\"search-page-input\"\n :label=\"t('Please type at least three characters')\"\n />\n <PodcastList\n v-if=\"!!query\"\n :query=\"query\"\n :first=\"0\"\n :size=\"20\"\n :sort-criteria=\"sortCriteria\"\n @empty-list=\"noResult = true\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport ClassicSearch from \"../form/ClassicSearch.vue\";\nimport PodcastList from \"../display/podcasts/PodcastList.vue\";\nimport { computed, ref, watch } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\nimport { PodcastSort } from \"../../api/podcastApi\";\nimport { state } from \"../../stores/ParamSdkStore\";\n\n//Props\nconst props = defineProps({\n queryRoute: { default: \"\", type: String },\n});\n\n//Data \nconst rawQuery = ref(\"\");\nconst noResult = ref(false);\n\n//Composables\nconst { t } = useI18n();\n\n\n//Computed\nconst sortCriteria = computed(() => {\n return state.searchPage.sortCriteria ?? PodcastSort.DATE;\n});\n\nconst titlePage = computed(() =>{\n const locale = !noResult.value ? \"Search results\" : \"Search - no results\";\n return t(locale, { query: rawQuery.value });\n});\nconst query = computed(() =>{\n return rawQuery.value && rawQuery.value.length >= 3 ? rawQuery.value : \"\";\n});\n\n\n//Watch\nwatch(()=>props.queryRoute, () => {\n rawQuery.value = props.queryRoute;\n}, {immediate: true});\n</script>\n","<template>\n <section class=\"page-box\">\n <h1>{{ titlePage }}</h1>\n <ClassicSearch\n v-model:text-init=\"rawQuery\"\n :autofocus=\"true\"\n id-search=\"search-page-input\"\n :label=\"t('Please type at least three characters')\"\n />\n <PodcastList\n v-if=\"!!query\"\n :query=\"query\"\n :first=\"0\"\n :size=\"20\"\n :sort-criteria=\"sortCriteria\"\n @empty-list=\"noResult = true\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport ClassicSearch from \"../form/ClassicSearch.vue\";\nimport PodcastList from \"../display/podcasts/PodcastList.vue\";\nimport { computed, ref, watch } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\nimport { PodcastSort } from \"../../api/podcastApi\";\nimport { state } from \"../../stores/ParamSdkStore\";\n\n//Props\nconst props = defineProps({\n queryRoute: { default: \"\", type: String },\n});\n\n//Data \nconst rawQuery = ref(\"\");\nconst noResult = ref(false);\n\n//Composables\nconst { t } = useI18n();\n\n\n//Computed\nconst sortCriteria = computed(() => {\n return state.searchPage.sortCriteria ?? PodcastSort.DATE;\n});\n\nconst titlePage = computed(() =>{\n const locale = !noResult.value ? \"Search results\" : \"Search - no results\";\n return t(locale, { query: rawQuery.value });\n});\nconst query = computed(() =>{\n return rawQuery.value && rawQuery.value.length >= 3 ? rawQuery.value : \"\";\n});\n\n\n//Watch\nwatch(()=>props.queryRoute, () => {\n rawQuery.value = props.queryRoute;\n}, {immediate: true});\n</script>\n"],"mappings":";;;;;;;;;;;;;;;EA6BA,MAAM,QAAQ;EAKd,MAAM,WAAW,IAAI,EAAE;EACvB,MAAM,WAAW,IAAI,KAAK;EAG1B,MAAM,EAAE,MAAM,QAAQ;EAItB,MAAM,eAAe,eAAe;GAClC,OAAO,MAAM,WAAW,gBAAgB,YAAY;EACtD,CAAC;EAED,MAAM,YAAY,eAAc;GAE9B,OAAO,EADQ,CAAC,SAAS,QAAQ,mBAAmB,uBACnC,EAAE,OAAO,SAAS,MAAM,CAAC;EAC5C,CAAC;EACD,MAAM,QAAQ,eAAc;GAC1B,OAAO,SAAS,SAAS,SAAS,MAAM,UAAU,IAAI,SAAS,QAAQ;EACzE,CAAC;EAID,YAAU,MAAM,kBAAkB;GAChC,SAAS,QAAQ,MAAM;EACzB,GAAG,EAAC,WAAW,KAAI,CAAC;;;;;;;;;;;;;;;;;;;;;mBCzDT,OAAM,WAAU;;qBAAzB,mBAgBU,WAhBV,YAgBU;EAfR,mBAAwB,MAAA,MAAA,gBAAjB,OAAA,SAAS,GAAA,CAAA;EAChB,YAKE,OAAA,kBAAA;GAJQ,aAAW,OAAA;8DAAA,OAAA,WAAQ;GAC1B,WAAW;GACZ,aAAU;GACT,OAAO,OAAA,EAAC,uCAAA;;IAGD,OAAA,SAAA,UAAA,GADV,YAOE,OAAA,gBAAA;;GALC,OAAO,OAAA;GACP,OAAO;GACP,MAAM;GACN,iBAAe,OAAA;GACf,aAAU,OAAA,OAAA,OAAA,MAAA,WAAE,OAAA,WAAQ"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper-BOaGB7Aw.mjs";
|
|
2
|
-
import { A as state, p as PodcastSort } from "./classicApi-
|
|
2
|
+
import { A as state, p as PodcastSort } from "./classicApi-xjOqAovv.mjs";
|
|
3
3
|
import { t as ClassicSearch_default } from "./ClassicSearch-D5yT0JRA.mjs";
|
|
4
|
-
import { t as PodcastList_default } from "./PodcastList-
|
|
4
|
+
import { t as PodcastList_default } from "./PodcastList-DhKeiBbv.mjs";
|
|
5
5
|
import { computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createVNode, defineComponent, openBlock, ref, toDisplayString, watch } from "vue";
|
|
6
6
|
import { useI18n } from "vue-i18n";
|
|
7
7
|
//#region src/components/pages/SearchPage.vue?vue&type=script&setup=true&lang.ts
|
|
@@ -74,4 +74,4 @@ var SearchPage_default = /*#__PURE__*/ _plugin_vue_export_helper_default(SearchP
|
|
|
74
74
|
//#endregion
|
|
75
75
|
export { SearchPage_default as default };
|
|
76
76
|
|
|
77
|
-
//# sourceMappingURL=SearchPage-
|
|
77
|
+
//# sourceMappingURL=SearchPage-BH1gYkHn.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SearchPage-BH1gYkHn.mjs","names":[],"sources":["../src/components/pages/SearchPage.vue","../src/components/pages/SearchPage.vue"],"sourcesContent":["<template>\n <section class=\"page-box\">\n <h1>{{ titlePage }}</h1>\n <ClassicSearch\n v-model:text-init=\"rawQuery\"\n :autofocus=\"true\"\n id-search=\"search-page-input\"\n :label=\"t('Please type at least three characters')\"\n />\n <PodcastList\n v-if=\"!!query\"\n :query=\"query\"\n :first=\"0\"\n :size=\"20\"\n :sort-criteria=\"sortCriteria\"\n @empty-list=\"noResult = true\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport ClassicSearch from \"../form/ClassicSearch.vue\";\nimport PodcastList from \"../display/podcasts/PodcastList.vue\";\nimport { computed, ref, watch } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\nimport { PodcastSort } from \"../../api/podcastApi\";\nimport { state } from \"../../stores/ParamSdkStore\";\n\n//Props\nconst props = defineProps({\n queryRoute: { default: \"\", type: String },\n});\n\n//Data \nconst rawQuery = ref(\"\");\nconst noResult = ref(false);\n\n//Composables\nconst { t } = useI18n();\n\n\n//Computed\nconst sortCriteria = computed(() => {\n return state.searchPage.sortCriteria ?? PodcastSort.DATE;\n});\n\nconst titlePage = computed(() =>{\n const locale = !noResult.value ? \"Search results\" : \"Search - no results\";\n return t(locale, { query: rawQuery.value });\n});\nconst query = computed(() =>{\n return rawQuery.value && rawQuery.value.length >= 3 ? rawQuery.value : \"\";\n});\n\n\n//Watch\nwatch(()=>props.queryRoute, () => {\n rawQuery.value = props.queryRoute;\n}, {immediate: true});\n</script>\n","<template>\n <section class=\"page-box\">\n <h1>{{ titlePage }}</h1>\n <ClassicSearch\n v-model:text-init=\"rawQuery\"\n :autofocus=\"true\"\n id-search=\"search-page-input\"\n :label=\"t('Please type at least three characters')\"\n />\n <PodcastList\n v-if=\"!!query\"\n :query=\"query\"\n :first=\"0\"\n :size=\"20\"\n :sort-criteria=\"sortCriteria\"\n @empty-list=\"noResult = true\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport ClassicSearch from \"../form/ClassicSearch.vue\";\nimport PodcastList from \"../display/podcasts/PodcastList.vue\";\nimport { computed, ref, watch } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\nimport { PodcastSort } from \"../../api/podcastApi\";\nimport { state } from \"../../stores/ParamSdkStore\";\n\n//Props\nconst props = defineProps({\n queryRoute: { default: \"\", type: String },\n});\n\n//Data \nconst rawQuery = ref(\"\");\nconst noResult = ref(false);\n\n//Composables\nconst { t } = useI18n();\n\n\n//Computed\nconst sortCriteria = computed(() => {\n return state.searchPage.sortCriteria ?? PodcastSort.DATE;\n});\n\nconst titlePage = computed(() =>{\n const locale = !noResult.value ? \"Search results\" : \"Search - no results\";\n return t(locale, { query: rawQuery.value });\n});\nconst query = computed(() =>{\n return rawQuery.value && rawQuery.value.length >= 3 ? rawQuery.value : \"\";\n});\n\n\n//Watch\nwatch(()=>props.queryRoute, () => {\n rawQuery.value = props.queryRoute;\n}, {immediate: true});\n</script>\n"],"mappings":";;;;;;;;;;;;;;;EA6BA,MAAM,QAAQ;EAKd,MAAM,WAAW,IAAI,EAAE;EACvB,MAAM,WAAW,IAAI,KAAK;EAG1B,MAAM,EAAE,MAAM,QAAQ;EAItB,MAAM,eAAe,eAAe;GAClC,OAAO,MAAM,WAAW,gBAAgB,YAAY;EACtD,CAAC;EAED,MAAM,YAAY,eAAc;GAE9B,OAAO,EADQ,CAAC,SAAS,QAAQ,mBAAmB,uBACnC,EAAE,OAAO,SAAS,MAAM,CAAC;EAC5C,CAAC;EACD,MAAM,QAAQ,eAAc;GAC1B,OAAO,SAAS,SAAS,SAAS,MAAM,UAAU,IAAI,SAAS,QAAQ;EACzE,CAAC;EAID,YAAU,MAAM,kBAAkB;GAChC,SAAS,QAAQ,MAAM;EACzB,GAAG,EAAC,WAAW,KAAI,CAAC;;;;;;;;;;;;;;;;;;;;;mBCzDT,OAAM,WAAU;;qBAAzB,mBAgBU,WAhBV,YAgBU;EAfR,mBAAwB,MAAA,MAAA,gBAAjB,OAAA,SAAS,GAAA,CAAA;EAChB,YAKE,OAAA,kBAAA;GAJQ,aAAW,OAAA;8DAAA,OAAA,WAAQ;GAC1B,WAAW;GACZ,aAAU;GACT,OAAO,OAAA,EAAC,uCAAA;;IAGD,OAAA,SAAA,UAAA,GADV,YAOE,OAAA,gBAAA;;GALC,OAAO,OAAA;GACP,OAAO;GACP,MAAM;GACN,iBAAe,OAAA;GACf,aAAU,OAAA,OAAA,OAAA,MAAA,WAAE,OAAA,WAAQ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SearchPage-CXOoJF_2.mjs","names":[],"sources":["../src/components/pages/SearchPage.vue","../src/components/pages/SearchPage.vue"],"sourcesContent":["<template>\n <section class=\"page-box\">\n <h1>{{ titlePage }}</h1>\n <ClassicSearch\n v-model:text-init=\"rawQuery\"\n :autofocus=\"true\"\n id-search=\"search-page-input\"\n :label=\"t('Please type at least three characters')\"\n />\n <PodcastList\n v-if=\"!!query\"\n :query=\"query\"\n :first=\"0\"\n :size=\"20\"\n :sort-criteria=\"sortCriteria\"\n @empty-list=\"noResult = true\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport ClassicSearch from \"../form/ClassicSearch.vue\";\nimport PodcastList from \"../display/podcasts/PodcastList.vue\";\nimport { computed, ref, watch } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\nimport { PodcastSort } from \"../../api/podcastApi\";\nimport { state } from \"../../stores/ParamSdkStore\";\n\n//Props\nconst props = defineProps({\n queryRoute: { default: \"\", type: String },\n});\n\n//Data \nconst rawQuery = ref(\"\");\nconst noResult = ref(false);\n\n//Composables\nconst { t } = useI18n();\n\n\n//Computed\nconst sortCriteria = computed(() => {\n return state.searchPage.sortCriteria ?? PodcastSort.DATE;\n});\n\nconst titlePage = computed(() =>{\n const locale = !noResult.value ? \"Search results\" : \"Search - no results\";\n return t(locale, { query: rawQuery.value });\n});\nconst query = computed(() =>{\n return rawQuery.value && rawQuery.value.length >= 3 ? rawQuery.value : \"\";\n});\n\n\n//Watch\nwatch(()=>props.queryRoute, () => {\n rawQuery.value = props.queryRoute;\n}, {immediate: true});\n</script>\n","<template>\n <section class=\"page-box\">\n <h1>{{ titlePage }}</h1>\n <ClassicSearch\n v-model:text-init=\"rawQuery\"\n :autofocus=\"true\"\n id-search=\"search-page-input\"\n :label=\"t('Please type at least three characters')\"\n />\n <PodcastList\n v-if=\"!!query\"\n :query=\"query\"\n :first=\"0\"\n :size=\"20\"\n :sort-criteria=\"sortCriteria\"\n @empty-list=\"noResult = true\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport ClassicSearch from \"../form/ClassicSearch.vue\";\nimport PodcastList from \"../display/podcasts/PodcastList.vue\";\nimport { computed, ref, watch } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\nimport { PodcastSort } from \"../../api/podcastApi\";\nimport { state } from \"../../stores/ParamSdkStore\";\n\n//Props\nconst props = defineProps({\n queryRoute: { default: \"\", type: String },\n});\n\n//Data \nconst rawQuery = ref(\"\");\nconst noResult = ref(false);\n\n//Composables\nconst { t } = useI18n();\n\n\n//Computed\nconst sortCriteria = computed(() => {\n return state.searchPage.sortCriteria ?? PodcastSort.DATE;\n});\n\nconst titlePage = computed(() =>{\n const locale = !noResult.value ? \"Search results\" : \"Search - no results\";\n return t(locale, { query: rawQuery.value });\n});\nconst query = computed(() =>{\n return rawQuery.value && rawQuery.value.length >= 3 ? rawQuery.value : \"\";\n});\n\n\n//Watch\nwatch(()=>props.queryRoute, () => {\n rawQuery.value = props.queryRoute;\n}, {immediate: true});\n</script>\n"],"mappings":";;;;;;;;;;;;;;;EA6BA,MAAM,QAAQ;EAKd,MAAM,WAAW,IAAI,EAAE;EACvB,MAAM,WAAW,IAAI,KAAK;EAG1B,MAAM,EAAE,MAAM,QAAQ;EAItB,MAAM,eAAe,eAAe;GAClC,OAAO,MAAM,WAAW,gBAAgB,YAAY;EACtD,CAAC;EAED,MAAM,YAAY,eAAc;GAE9B,OAAO,EADQ,CAAC,SAAS,QAAQ,mBAAmB,uBACnC,EAAE,OAAO,SAAS,MAAM,CAAC;EAC5C,CAAC;EACD,MAAM,QAAQ,eAAc;GAC1B,OAAO,SAAS,SAAS,SAAS,MAAM,UAAU,IAAI,SAAS,QAAQ;EACzE,CAAC;EAID,YAAU,MAAM,kBAAkB;GAChC,SAAS,QAAQ,MAAM;EACzB,GAAG,EAAC,WAAW,KAAI,CAAC;;;;;;;;;;;;;;;;;;;;;mBCzDT,OAAM,WAAU;;qBAAzB,mBAgBU,WAhBV,YAgBU;EAfR,mBAAwB,MAAA,MAAA,gBAAjB,OAAA,SAAS,GAAA,CAAA;EAChB,YAKE,OAAA,kBAAA;GAJQ,aAAW,OAAA;8DAAA,OAAA,WAAQ;GAC1B,WAAW;GACZ,aAAU;GACT,OAAO,OAAA,EAAC,uCAAA;;IAGD,OAAA,SAAA,UAAA,GADV,YAOE,OAAA,gBAAA;;GALC,OAAO,OAAA;GACP,OAAO;GACP,MAAM;GACN,iBAAe,OAAA;GACf,aAAU,OAAA,OAAA,OAAA,MAAA,WAAE,OAAA,WAAQ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SearchPage-DyX_tEm5.mjs","names":[],"sources":["../src/components/pages/SearchPage.vue","../src/components/pages/SearchPage.vue"],"sourcesContent":["<template>\n <section class=\"page-box\">\n <h1>{{ titlePage }}</h1>\n <ClassicSearch\n v-model:text-init=\"rawQuery\"\n :autofocus=\"true\"\n id-search=\"search-page-input\"\n :label=\"t('Please type at least three characters')\"\n />\n <PodcastList\n v-if=\"!!query\"\n :query=\"query\"\n :first=\"0\"\n :size=\"20\"\n :sort-criteria=\"sortCriteria\"\n @empty-list=\"noResult = true\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport ClassicSearch from \"../form/ClassicSearch.vue\";\nimport PodcastList from \"../display/podcasts/PodcastList.vue\";\nimport { computed, ref, watch } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\nimport { PodcastSort } from \"../../api/podcastApi\";\nimport { state } from \"../../stores/ParamSdkStore\";\n\n//Props\nconst props = defineProps({\n queryRoute: { default: \"\", type: String },\n});\n\n//Data \nconst rawQuery = ref(\"\");\nconst noResult = ref(false);\n\n//Composables\nconst { t } = useI18n();\n\n\n//Computed\nconst sortCriteria = computed(() => {\n return state.searchPage.sortCriteria ?? PodcastSort.DATE;\n});\n\nconst titlePage = computed(() =>{\n const locale = !noResult.value ? \"Search results\" : \"Search - no results\";\n return t(locale, { query: rawQuery.value });\n});\nconst query = computed(() =>{\n return rawQuery.value && rawQuery.value.length >= 3 ? rawQuery.value : \"\";\n});\n\n\n//Watch\nwatch(()=>props.queryRoute, () => {\n rawQuery.value = props.queryRoute;\n}, {immediate: true});\n</script>\n","<template>\n <section class=\"page-box\">\n <h1>{{ titlePage }}</h1>\n <ClassicSearch\n v-model:text-init=\"rawQuery\"\n :autofocus=\"true\"\n id-search=\"search-page-input\"\n :label=\"t('Please type at least three characters')\"\n />\n <PodcastList\n v-if=\"!!query\"\n :query=\"query\"\n :first=\"0\"\n :size=\"20\"\n :sort-criteria=\"sortCriteria\"\n @empty-list=\"noResult = true\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport ClassicSearch from \"../form/ClassicSearch.vue\";\nimport PodcastList from \"../display/podcasts/PodcastList.vue\";\nimport { computed, ref, watch } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\nimport { PodcastSort } from \"../../api/podcastApi\";\nimport { state } from \"../../stores/ParamSdkStore\";\n\n//Props\nconst props = defineProps({\n queryRoute: { default: \"\", type: String },\n});\n\n//Data \nconst rawQuery = ref(\"\");\nconst noResult = ref(false);\n\n//Composables\nconst { t } = useI18n();\n\n\n//Computed\nconst sortCriteria = computed(() => {\n return state.searchPage.sortCriteria ?? PodcastSort.DATE;\n});\n\nconst titlePage = computed(() =>{\n const locale = !noResult.value ? \"Search results\" : \"Search - no results\";\n return t(locale, { query: rawQuery.value });\n});\nconst query = computed(() =>{\n return rawQuery.value && rawQuery.value.length >= 3 ? rawQuery.value : \"\";\n});\n\n\n//Watch\nwatch(()=>props.queryRoute, () => {\n rawQuery.value = props.queryRoute;\n}, {immediate: true});\n</script>\n"],"mappings":";;;;;;;;;;;;;;;EA6BA,MAAM,QAAQ;EAKd,MAAM,WAAW,IAAI,EAAE;EACvB,MAAM,WAAW,IAAI,KAAK;EAG1B,MAAM,EAAE,MAAM,QAAQ;EAItB,MAAM,eAAe,eAAe;GAClC,OAAO,MAAM,WAAW,gBAAgB,YAAY;EACtD,CAAC;EAED,MAAM,YAAY,eAAc;GAE9B,OAAO,EADQ,CAAC,SAAS,QAAQ,mBAAmB,uBACnC,EAAE,OAAO,SAAS,MAAM,CAAC;EAC5C,CAAC;EACD,MAAM,QAAQ,eAAc;GAC1B,OAAO,SAAS,SAAS,SAAS,MAAM,UAAU,IAAI,SAAS,QAAQ;EACzE,CAAC;EAID,YAAU,MAAM,kBAAkB;GAChC,SAAS,QAAQ,MAAM;EACzB,GAAG,EAAC,WAAW,KAAI,CAAC;;;;;;;;;;;;;;;;;;;;;mBCzDT,OAAM,WAAU;;qBAAzB,mBAgBU,WAhBV,YAgBU;EAfR,mBAAwB,MAAA,MAAA,gBAAjB,OAAA,SAAS,GAAA,CAAA;EAChB,YAKE,OAAA,kBAAA;GAJQ,aAAW,OAAA;8DAAA,OAAA,WAAQ;GAC1B,WAAW;GACZ,aAAU;GACT,OAAO,OAAA,EAAC,uCAAA;;IAGD,OAAA,SAAA,UAAA,GADV,YAOE,OAAA,gBAAA;;GALC,OAAO,OAAA;GACP,OAAO;GACP,MAAM;GACN,iBAAe,OAAA;GACf,aAAU,OAAA,OAAA,OAAA,MAAA,WAAE,OAAA,WAAQ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SearchPage-IvX74fSJ.mjs","names":[],"sources":["../src/components/pages/SearchPage.vue","../src/components/pages/SearchPage.vue"],"sourcesContent":["<template>\n <section class=\"page-box\">\n <h1>{{ titlePage }}</h1>\n <ClassicSearch\n v-model:text-init=\"rawQuery\"\n :autofocus=\"true\"\n id-search=\"search-page-input\"\n :label=\"t('Please type at least three characters')\"\n />\n <PodcastList\n v-if=\"!!query\"\n :query=\"query\"\n :first=\"0\"\n :size=\"20\"\n :sort-criteria=\"sortCriteria\"\n @empty-list=\"noResult = true\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport ClassicSearch from \"../form/ClassicSearch.vue\";\nimport PodcastList from \"../display/podcasts/PodcastList.vue\";\nimport { computed, ref, watch } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\nimport { PodcastSort } from \"../../api/podcastApi\";\nimport { state } from \"../../stores/ParamSdkStore\";\n\n//Props\nconst props = defineProps({\n queryRoute: { default: \"\", type: String },\n});\n\n//Data \nconst rawQuery = ref(\"\");\nconst noResult = ref(false);\n\n//Composables\nconst { t } = useI18n();\n\n\n//Computed\nconst sortCriteria = computed(() => {\n return state.searchPage.sortCriteria ?? PodcastSort.DATE;\n});\n\nconst titlePage = computed(() =>{\n const locale = !noResult.value ? \"Search results\" : \"Search - no results\";\n return t(locale, { query: rawQuery.value });\n});\nconst query = computed(() =>{\n return rawQuery.value && rawQuery.value.length >= 3 ? rawQuery.value : \"\";\n});\n\n\n//Watch\nwatch(()=>props.queryRoute, () => {\n rawQuery.value = props.queryRoute;\n}, {immediate: true});\n</script>\n","<template>\n <section class=\"page-box\">\n <h1>{{ titlePage }}</h1>\n <ClassicSearch\n v-model:text-init=\"rawQuery\"\n :autofocus=\"true\"\n id-search=\"search-page-input\"\n :label=\"t('Please type at least three characters')\"\n />\n <PodcastList\n v-if=\"!!query\"\n :query=\"query\"\n :first=\"0\"\n :size=\"20\"\n :sort-criteria=\"sortCriteria\"\n @empty-list=\"noResult = true\"\n />\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport ClassicSearch from \"../form/ClassicSearch.vue\";\nimport PodcastList from \"../display/podcasts/PodcastList.vue\";\nimport { computed, ref, watch } from \"vue\";\nimport { useI18n } from \"vue-i18n\";\nimport { PodcastSort } from \"../../api/podcastApi\";\nimport { state } from \"../../stores/ParamSdkStore\";\n\n//Props\nconst props = defineProps({\n queryRoute: { default: \"\", type: String },\n});\n\n//Data \nconst rawQuery = ref(\"\");\nconst noResult = ref(false);\n\n//Composables\nconst { t } = useI18n();\n\n\n//Computed\nconst sortCriteria = computed(() => {\n return state.searchPage.sortCriteria ?? PodcastSort.DATE;\n});\n\nconst titlePage = computed(() =>{\n const locale = !noResult.value ? \"Search results\" : \"Search - no results\";\n return t(locale, { query: rawQuery.value });\n});\nconst query = computed(() =>{\n return rawQuery.value && rawQuery.value.length >= 3 ? rawQuery.value : \"\";\n});\n\n\n//Watch\nwatch(()=>props.queryRoute, () => {\n rawQuery.value = props.queryRoute;\n}, {immediate: true});\n</script>\n"],"mappings":";;;;;;;;;;;;;;;EA6BA,MAAM,QAAQ;EAKd,MAAM,WAAW,IAAI,EAAE;EACvB,MAAM,WAAW,IAAI,KAAK;EAG1B,MAAM,EAAE,MAAM,QAAQ;EAItB,MAAM,eAAe,eAAe;GAClC,OAAO,MAAM,WAAW,gBAAgB,YAAY;EACtD,CAAC;EAED,MAAM,YAAY,eAAc;GAE9B,OAAO,EADQ,CAAC,SAAS,QAAQ,mBAAmB,uBACnC,EAAE,OAAO,SAAS,MAAM,CAAC;EAC5C,CAAC;EACD,MAAM,QAAQ,eAAc;GAC1B,OAAO,SAAS,SAAS,SAAS,MAAM,UAAU,IAAI,SAAS,QAAQ;EACzE,CAAC;EAID,YAAU,MAAM,kBAAkB;GAChC,SAAS,QAAQ,MAAM;EACzB,GAAG,EAAC,WAAW,KAAI,CAAC;;;;;;;;;;;;;;;;;;;;;mBCzDT,OAAM,WAAU;;qBAAzB,mBAgBU,WAhBV,YAgBU;EAfR,mBAAwB,MAAA,MAAA,gBAAjB,OAAA,SAAS,GAAA,CAAA;EAChB,YAKE,OAAA,kBAAA;GAJQ,aAAW,OAAA;8DAAA,OAAA,WAAQ;GAC1B,WAAW;GACZ,aAAU;GACT,OAAO,OAAA,EAAC,uCAAA;;IAGD,OAAA,SAAA,UAAA,GADV,YAOE,OAAA,gBAAA;;GALC,OAAO,OAAA;GACP,OAAO;GACP,MAAM;GACN,iBAAe,OAAA;GACf,aAAU,OAAA,OAAA,OAAA,MAAA,WAAE,OAAA,WAAQ"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper-BOaGB7Aw.mjs";
|
|
2
|
-
import { A as state, O as useApiStore, T as useSaveFetchStore, i as useAuthStore, t as classicApi_default } from "./classicApi-
|
|
2
|
+
import { A as state, O as useApiStore, T as useSaveFetchStore, i as useAuthStore, t as classicApi_default } from "./classicApi-xjOqAovv.mjs";
|
|
3
3
|
import { t as displayHelper_default } from "./displayHelper-CpXshNzz.mjs";
|
|
4
4
|
import { t as useSharePath } from "./useSharePath-Vh29oc9Z.mjs";
|
|
5
5
|
import { t as ClassicPopover_default } from "./ClassicPopover-BIyLKorz.mjs";
|
|
@@ -45,10 +45,10 @@ var ShareAnonymous_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
|
|
|
45
45
|
setup(__props, { expose: __expose }) {
|
|
46
46
|
__expose();
|
|
47
47
|
const SnackBar = defineAsyncComponent(() => import("./SnackBar-DdE1dYhi.mjs").then((n) => n.n));
|
|
48
|
-
const NewsletterModal = defineAsyncComponent(() => import("./NewsletterModal-
|
|
49
|
-
const QrCodeModal = defineAsyncComponent(() => import("./QrCodeModal-
|
|
50
|
-
const ClipboardModal = defineAsyncComponent(() => import("./ClipboardModal-
|
|
51
|
-
const PlayerAnonymousModal = defineAsyncComponent(() => import("./PlayerAnonymousModal-
|
|
48
|
+
const NewsletterModal = defineAsyncComponent(() => import("./NewsletterModal-B6ky7DBC.mjs"));
|
|
49
|
+
const QrCodeModal = defineAsyncComponent(() => import("./QrCodeModal-Be8E0JlC.mjs"));
|
|
50
|
+
const ClipboardModal = defineAsyncComponent(() => import("./ClipboardModal-DzCUqSph.mjs"));
|
|
51
|
+
const PlayerAnonymousModal = defineAsyncComponent(() => import("./PlayerAnonymousModal-BGPpTBPW.mjs"));
|
|
52
52
|
const CodeTagsIcon = defineAsyncComponent(() => import("vue-material-design-icons/CodeTags.vue"));
|
|
53
53
|
const EmailNewsletterIcon = defineAsyncComponent(() => import("vue-material-design-icons/EmailNewsletter.vue"));
|
|
54
54
|
const RssIcon = defineAsyncComponent(() => import("vue-material-design-icons/Rss.vue"));
|
|
@@ -318,4 +318,4 @@ var ShareAnonymous_default = /*#__PURE__*/ _plugin_vue_export_helper_default(Sha
|
|
|
318
318
|
//#endregion
|
|
319
319
|
export { ShareAnonymous_default as default };
|
|
320
320
|
|
|
321
|
-
//# sourceMappingURL=ShareAnonymous-
|
|
321
|
+
//# sourceMappingURL=ShareAnonymous-4UxjKrIe.mjs.map
|