@saooti/octopus-sdk 42.3.0 → 42.3.1
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-DEh3iiuK.mjs → AdvancedSearch-BTbYmlMm.mjs} +8 -8
- package/dist/AdvancedSearch-C6BJzvGT.mjs.map +1 -0
- package/dist/AdvancedSearch-ChnJq71j.mjs.map +1 -0
- package/dist/AdvancedSearch-ChtUj3vS.mjs.map +1 -0
- package/dist/AdvancedSearch-D-9o5KzI.mjs.map +1 -0
- package/dist/AdvancedSearch-DH5YTENK.mjs.map +1 -0
- package/dist/AdvancedSearch-DN3WFduh.mjs.map +1 -0
- package/dist/AdvancedSearch-EpYd6K3d.mjs.map +1 -0
- package/dist/AdvancedSearch-PRJyRSID.mjs.map +1 -0
- package/dist/AdvancedSearch-_E2nwQ-A.mjs.map +1 -0
- package/dist/AdvancedSearch-cLjakm-6.mjs.map +1 -0
- package/dist/AdvancedSearch-k-fQfSBk.mjs.map +1 -0
- package/dist/AdvancedSearch-zFJq-WlO.mjs.map +1 -0
- package/dist/CategoryChooser-CSUjIA0D.mjs.map +1 -0
- package/dist/{CategoryChooser-CeF4n-nw.mjs → CategoryChooser-fAUMJNHu.mjs} +1 -1
- package/dist/CategoryFilter-B0S_nCvS.mjs.map +1 -0
- package/dist/CategoryFilter-BVrLO_pV.mjs.map +1 -0
- package/dist/{CategoryFilter-Djmal5bY.mjs → CategoryFilter-CsYCvEnz.mjs} +3 -3
- package/dist/CategoryFilter-DVwCpHLx.mjs.map +1 -0
- package/dist/CategoryList-B_9GG6Z9.mjs.map +1 -0
- package/dist/{CategoryList-Dksp79Lm.mjs → CategoryList-CDoIfrDw.mjs} +2 -2
- package/dist/CategoryList-CUae_phb.mjs.map +1 -0
- package/dist/CategoryList-DxR0fpKd.mjs.map +1 -0
- package/dist/CategoryPage-C7aKDtgs.mjs.map +1 -0
- package/dist/{CategoryPage-DC8fMny_.mjs → CategoryPage-Cl5Yuxnu.mjs} +2 -2
- package/dist/CategoryPage-DlnAp05t.mjs.map +1 -0
- package/dist/CategoryPage-Dlq5XQBS.mjs.map +1 -0
- package/dist/{CategorySearchFilter-KVYBscdd.mjs → CategorySearchFilter-Cce5zxZB.mjs} +1 -1
- package/dist/CategorySearchFilter-EULpSE2e.mjs.map +1 -0
- package/dist/ChapteringModal-BplEGZj2.mjs.map +1 -0
- package/dist/ChapteringModal-C9yuW_IU.mjs.map +1 -0
- package/dist/{ChapteringModal-Be9FF1yz.mjs → ChapteringModal-DiiVSG7s.mjs} +1 -1
- package/dist/{CheckIdentityModal-nMszYOsW.mjs → CheckIdentityModal-BrnYeGdk.mjs} +3 -3
- package/dist/CheckIdentityModal-BtGdsv2v.mjs.map +1 -0
- package/dist/CheckIdentityModal-CpRO7ehH.mjs.map +1 -0
- package/dist/CheckIdentityModal-Cry9ra4J.mjs.map +1 -0
- package/dist/ClassicDatePicker--q1yYb-S.mjs.map +1 -0
- package/dist/ClassicDatePicker-4ouU5ov9.mjs.map +1 -0
- package/dist/ClassicDatePicker-B8bI9QfF.mjs.map +1 -0
- package/dist/ClassicDatePicker-BTJWityQ.mjs +186 -0
- package/dist/ClassicDatePicker-CChR9LBd.mjs.map +1 -0
- package/dist/ClassicDatePicker-CopJVkF0.mjs.map +1 -0
- package/dist/ClassicDatePicker-DgcJCevR.mjs.map +1 -0
- package/dist/ClassicDatePicker-NxGNQxHE.mjs.map +1 -0
- package/dist/ClassicDatePicker-dgdGXcRk.mjs.map +1 -0
- package/dist/{ClassicEmojiPicker-B4TAlZvo.mjs → ClassicEmojiPicker-C0gm-DA2.mjs} +1 -1
- package/dist/ClassicEmojiPicker-CJZD8H7L.mjs.map +1 -0
- package/dist/{ClassicHelpButton-DT7T8tMe.mjs → ClassicHelpButton-BnRLmYuh.mjs} +1 -1
- package/dist/ClassicHelpButton-Qb4AwvWI.mjs.map +1 -0
- package/dist/{ClassicInputText-DJ5kURGM.mjs → ClassicInputText-YsntJkHk.mjs} +1 -1
- package/dist/ClassicInputText-npkVSUoH.mjs.map +1 -0
- package/dist/ClassicMultiselect-2I2K-o4R.mjs.map +1 -0
- package/dist/{ClassicMultiselect-CDHdJjjV.mjs → ClassicMultiselect-C0yzVQ8Y.mjs} +1 -1
- package/dist/{ClassicNotifications-DEpVRRHg.mjs → ClassicNotifications-8CVfGSqL.mjs} +1 -1
- package/dist/ClassicNotifications-BFQ-R6kO.mjs.map +1 -0
- package/dist/ClassicNotifications-DR0PM1Xp.mjs.map +1 -0
- package/dist/{ClassicPopover-DWR50Nxi.mjs → ClassicPopover-BUb-1WMB.mjs} +1 -1
- package/dist/ClassicPopover-BhMY2SMo.mjs.map +1 -0
- package/dist/ClipboardModal-B_SZ6jDk.mjs.map +1 -0
- package/dist/{ClipboardModal-BUKwZYOf.mjs → ClipboardModal-ByVXPcKD.mjs} +1 -1
- package/dist/ClipboardModal-DjrZQRtY.mjs.map +1 -0
- package/dist/{CommentInput-US8ZtNj1.mjs → CommentInput-CrRstzua.mjs} +4 -4
- package/dist/CommentInput-DPMj47uE.mjs.map +1 -0
- package/dist/CommentInput-DbhOyi7c.mjs.map +1 -0
- package/dist/CommentInput-I97yysBW.mjs.map +1 -0
- package/dist/CommentItem-AItzrTBi.mjs.map +1 -0
- package/dist/CommentItem-B7vvJwZI.mjs.map +1 -0
- package/dist/{CommentItem-CqWZPmbj.mjs → CommentItem-BYU67TIu.mjs} +4 -4
- package/dist/CommentItem-CvNbH7Hf.mjs.map +1 -0
- package/dist/CommentList-BTyyCcX4.mjs.map +1 -0
- package/dist/CommentList-CWrf45Di.mjs.map +1 -0
- package/dist/CommentList-DP6wk4PD.mjs.map +1 -0
- package/dist/{CommentList-CSYpqgNM.mjs → CommentList-snIIudVC.mjs} +2 -2
- package/dist/CommentMoreActions-BNajG7wk.mjs.map +1 -0
- package/dist/CommentMoreActions-C1l4Y_HY.mjs.map +1 -0
- package/dist/CommentMoreActions-DPbJnEEV.mjs.map +1 -0
- package/dist/{CommentMoreActions-T5RN6BGq.mjs → CommentMoreActions-y202UxL5.mjs} +3 -3
- package/dist/{CommentName-DslRo9jg.mjs → CommentName-CHBlEM7I.mjs} +3 -3
- package/dist/CommentName-D5HN8bGE.mjs.map +1 -0
- package/dist/CommentName-DMom_kwo.mjs.map +1 -0
- package/dist/CommentName-OJrxjSxu.mjs.map +1 -0
- package/dist/CommentParentInfo-DWVF5Ewh.mjs.map +1 -0
- package/dist/CommentParentInfo-Do3IlO95.mjs.map +1 -0
- package/dist/{CommentParentInfo-DMX3nkCb.mjs → CommentParentInfo-DoEeaQGU.mjs} +2 -2
- package/dist/CommentParentInfo-DqHfDpKs.mjs.map +1 -0
- package/dist/{CommentPlayer-D3JEVPKX.mjs → CommentPlayer-B4MXG-gG.mjs} +2 -2
- package/dist/CommentPlayer-B67saxPf.mjs.map +1 -0
- package/dist/CommentPlayer-BUtEvkoV.mjs.map +1 -0
- package/dist/CommentSection-BIZMRePu.mjs.map +1 -0
- package/dist/CommentSection-CSehg6MD.mjs.map +1 -0
- package/dist/{CommentSection-Brn0VQcc.mjs → CommentSection-DZf04NxT.mjs} +3 -3
- package/dist/CommentSection-MDKioQWf.mjs.map +1 -0
- package/dist/CommentStore-BBm8MjxW.mjs.map +1 -0
- package/dist/{CommentStore-hPTYaDGr.mjs → CommentStore-CysGkBHp.mjs} +8 -8
- package/dist/CommentStore-F5MVSrDw.mjs.map +1 -0
- package/dist/ContractPreviewModal-CFSkXgB4.mjs.map +1 -0
- package/dist/ContractPreviewModal-CKL6Rb_V.mjs.map +1 -0
- package/dist/{ContractPreviewModal-48Je4Wuy.mjs → ContractPreviewModal-Dd-1KasR.mjs} +2 -2
- package/dist/DateFilter-BwYSwGc-.mjs.map +1 -0
- package/dist/DateFilter-CGTz76bp.mjs.map +1 -0
- package/dist/DateFilter-CfeYepTO.mjs.map +1 -0
- package/dist/{DateFilter-DztHuPm8.mjs → DateFilter-Cnb_S8Up.mjs} +1 -1
- package/dist/DateFilter-DFw66D2V.mjs.map +1 -0
- package/dist/DateFilter-DMOUMeCh.mjs.map +1 -0
- package/dist/DateFilter-DdbvVu9Q.mjs.map +1 -0
- package/dist/DateFilter-Dr1nRuvZ.mjs.map +1 -0
- package/dist/DateFilter-QGaXHkcu.mjs.map +1 -0
- package/dist/{DownloadPodcastButton-BYWuLoNg.mjs → DownloadPodcastButton-6HtR84aE.mjs} +2 -2
- package/dist/DownloadPodcastButton-D2qeKDPT.mjs.map +1 -0
- package/dist/DownloadPodcastButton-Tr_Y4qMu.mjs.map +1 -0
- package/dist/{EditCommentModal-DacFxzLx.mjs → EditCommentModal-BQ03B6LC.mjs} +2 -2
- package/dist/EditCommentModal-BZitN0Ir.mjs.map +1 -0
- package/dist/EditCommentModal-CcmCx_My.mjs.map +1 -0
- package/dist/EditCommentModal-sj0yXd7-.mjs.map +1 -0
- package/dist/EmissionGroupChooser--428fdeK.mjs.map +1 -0
- package/dist/EmissionGroupChooser-BJCKekKM.mjs.map +1 -0
- package/dist/EmissionGroupChooser-ByqGmsGw.mjs.map +1 -0
- package/dist/EmissionGroupChooser-Cb3CF0uc.mjs.map +1 -0
- package/dist/EmissionGroupChooser-D4vMQH8g.mjs.map +1 -0
- package/dist/{EmissionGroupChooser-KmzQjp7d.mjs → EmissionGroupChooser-De_IpEhW.mjs} +2 -2
- package/dist/EmissionInlineList-CdHQBjfR.mjs.map +1 -0
- package/dist/EmissionInlineList-CnA0d_k2.mjs.map +1 -0
- package/dist/EmissionInlineList-DLUvPBNl.mjs.map +1 -0
- package/dist/{EmissionInlineList-BoEIAbLu.mjs → EmissionInlineList-dlb4gUOP.mjs} +5 -5
- package/dist/EmissionItem-B39oFnXF.mjs.map +1 -0
- package/dist/EmissionItem-BkPLFhAo.mjs.map +1 -0
- package/dist/EmissionItem-CjAUdLb7.mjs.map +1 -0
- package/dist/{EmissionItem-BeQWw-UT.mjs → EmissionItem-Dm_IGNkw.mjs} +4 -4
- package/dist/EmissionList-B0UntYdC.mjs.map +1 -0
- package/dist/EmissionList-BQSI4xbi.mjs.map +1 -0
- package/dist/{EmissionList-DB7O1nj5.mjs → EmissionList-C4JEYLyK.mjs} +4 -4
- package/dist/EmissionList-C7lQBdlW.mjs.map +1 -0
- package/dist/EmissionPage-BF6s2ySo.mjs.map +1 -0
- package/dist/EmissionPage-B_-nDP5x.mjs.map +1 -0
- package/dist/EmissionPage-C-ESprrZ.mjs.map +1 -0
- package/dist/{EmissionPage-CNYJ1Puo.mjs → EmissionPage-C4XUdzzm.mjs} +10 -10
- package/dist/EmissionPage-CPXcNHGS.mjs.map +1 -0
- package/dist/EmissionPage-EMgXCVhK.mjs.map +1 -0
- package/dist/EmissionPage-mXbUqOh9.mjs.map +1 -0
- package/dist/{EmissionPlayerItem-S_yqupad.mjs → EmissionPlayerItem-BLIdolRe.mjs} +3 -3
- package/dist/EmissionPlayerItem-C27zJBhY.mjs.map +1 -0
- package/dist/EmissionPlayerItem-C3fkgEaL.mjs.map +1 -0
- package/dist/EmissionPlayerItem-DxXG20G1.mjs.map +1 -0
- package/dist/EmissionPresentationItem-BNnDSWGQ.mjs.map +1 -0
- package/dist/EmissionPresentationItem-BeETY65I.mjs.map +1 -0
- package/dist/{EmissionPresentationItem-kJgKN7Ju.mjs → EmissionPresentationItem-DYDwfqwp.mjs} +1 -1
- package/dist/EmissionPresentationList-BD7rIUok.mjs.map +1 -0
- package/dist/EmissionPresentationList-CGMyY_iu.mjs.map +1 -0
- package/dist/{EmissionPresentationList-Bg9X3CJP.mjs → EmissionPresentationList-Cxi7QnIs.mjs} +3 -3
- package/dist/EmissionsPage-4To0aRBA.mjs.map +1 -0
- package/dist/{EmissionsPage-BLpGH_PR.mjs → EmissionsPage-B0bXLncg.mjs} +5 -5
- package/dist/EmissionsPage-BIspB5uq.mjs.map +1 -0
- package/dist/EmissionsPage-BhUjdpEu.mjs.map +1 -0
- package/dist/EmissionsPage-Bn1R_ipo.mjs.map +1 -0
- package/dist/EmissionsPage-CNXwdJuV.mjs.map +1 -0
- package/dist/EmissionsPage-CPmhIbFf.mjs.map +1 -0
- package/dist/EmissionsPage-Cgzvn2h8.mjs.map +1 -0
- package/dist/EmissionsPage-D09zTpGb.mjs.map +1 -0
- package/dist/EmissionsPage-Dl7qaQT1.mjs.map +1 -0
- package/dist/EmissionsPage-DyleZtu_.mjs.map +1 -0
- package/dist/EmissionsPage-OVpc7k1Z.mjs.map +1 -0
- package/dist/EmissionsPage-wjKBLFM6.mjs.map +1 -0
- package/dist/Error403Page-B6Q7ijY3.mjs.map +1 -0
- package/dist/Error403Page-DF08mgCL.mjs.map +1 -0
- package/dist/{Error403Page-BB69doEn.mjs → Error403Page-DVmC5AOd.mjs} +2 -2
- package/dist/FooterGarSection-BWahCyz0.mjs.map +1 -0
- package/dist/{FooterGarSection-B9nsnpfF.mjs → FooterGarSection-BqPggI3o.mjs} +3 -3
- package/dist/FooterGarSection-CN8ZfO7e.mjs.map +1 -0
- package/dist/FooterSection-BOjr1LRb.mjs.map +1 -0
- package/dist/{FooterSection-DdGtlbk-.mjs → FooterSection-C5FEIJlU.mjs} +11 -11
- package/dist/FooterSection-nVRzKSYN.mjs.map +1 -0
- package/dist/HomeDropdown-3fl_xltN.mjs.map +1 -0
- package/dist/HomeDropdown-DGNkJhG2.mjs.map +1 -0
- package/dist/{HomeDropdown-BqwwLStt.mjs → HomeDropdown-Fx6kQAuH.mjs} +3 -3
- package/dist/HomeDropdown-PvmOUzYb.mjs.map +1 -0
- package/dist/{HomePage-JOUAKKfP.mjs → HomePage-7PT7HmHs.mjs} +3 -3
- package/dist/HomePage-D0Pbu_h1.mjs.map +1 -0
- package/dist/HomePage-D6_D1f33.mjs.map +1 -0
- package/dist/HomePage-ry0NfX1M.mjs.map +1 -0
- package/dist/InlineRubriqueList-BdpS1pVc.mjs.map +1 -0
- package/dist/InlineRubriqueList-BlcjQ4wR.mjs.map +1 -0
- package/dist/{InlineRubriqueList-BzcHKvM4.mjs → InlineRubriqueList-ezgexR-O.mjs} +1 -1
- package/dist/{LikeSection-MmbHMunb.mjs → LikeSection-CGu4yOCr.mjs} +3 -3
- package/dist/LikeSection-Cqj4y7qZ.mjs.map +1 -0
- package/dist/LikeSection-D95IMsZE.mjs.map +1 -0
- package/dist/LikeSection-HJla-zgI.mjs.map +1 -0
- package/dist/{ListPaginate-5uRK_QKJ.mjs → ListPaginate-BPdnBcpe.mjs} +2 -2
- package/dist/ListPaginate-DYzRnp-2.mjs.map +1 -0
- package/dist/ListPaginate-DyR7HLIc.mjs.map +1 -0
- package/dist/LiveHorizontalList-Bqe351Ut.mjs.map +1 -0
- package/dist/{LiveHorizontalList-CpoIRd4C.mjs → LiveHorizontalList-Bs-Rz5Ws.mjs} +3 -3
- package/dist/LiveHorizontalList-CaujYMT3.mjs.map +1 -0
- package/dist/LiveHorizontalList-DhsOZPT3.mjs.map +1 -0
- package/dist/{LiveList-DYFBrNgg.mjs → LiveList-BVOEnAEc.mjs} +5 -5
- package/dist/LiveList-DMB3FxUM.mjs.map +1 -0
- package/dist/LiveList-DOi4GV1x.mjs.map +1 -0
- package/dist/LiveList-Dh1mJVs7.mjs.map +1 -0
- package/dist/LivesPage-BvDLscOE.mjs.map +1 -0
- package/dist/{LivesPage-FSkmBdVw.mjs → LivesPage-DG5VY4HF.mjs} +2 -2
- package/dist/LivesPage-DmSlg7iH.mjs.map +1 -0
- package/dist/LivesPage-yy_5pI8R.mjs.map +1 -0
- package/dist/MapPage-3n-rigBK.mjs.map +1 -0
- package/dist/MapPage-5GwE8Z4E.mjs.map +1 -0
- package/dist/{MapPage-DpBt2gWF.mjs → MapPage-bIe2a9O1.mjs} +2 -2
- package/dist/MobileMenu-BSos17v3.mjs.map +1 -0
- package/dist/{MobileMenu-CjNMfHUP.mjs → MobileMenu-BZ5nOrYw.mjs} +5 -5
- package/dist/MobileMenu-C6W37oJg.mjs.map +1 -0
- package/dist/MobileMenu-K0rNwrW1.mjs.map +1 -0
- package/dist/NewsletterModal-CFGXBtID.mjs.map +1 -0
- package/dist/NewsletterModal-CZNwpCK5.mjs.map +1 -0
- package/dist/{NewsletterModal-BurqHTFc.mjs → NewsletterModal-DZk0mSVC.mjs} +1 -1
- package/dist/OctopusMultiselect-CFUGyzeM.mjs.map +1 -0
- package/dist/OctopusMultiselect-Cn1lqbQo.mjs.map +1 -0
- package/dist/OctopusMultiselect-esu8BY0J.mjs.map +1 -0
- package/dist/{OctopusMultiselect-C8qljiaH.mjs → OctopusMultiselect-noQPQMZQ.mjs} +7 -5
- package/dist/OrganisationChooser-BKfXLT4G.mjs.map +1 -0
- package/dist/{OrganisationChooser-Dx-OT7MW.mjs → OrganisationChooser-C48cWqbY.mjs} +3 -3
- package/dist/OrganisationChooser-PpO7MD7f.mjs.map +1 -0
- package/dist/OrganisationChooser-Y_jO6oXv.mjs.map +1 -0
- package/dist/{OrganisationChooserLight-BF5fT5pV.mjs → OrganisationChooserLight-Bcltbv-v.mjs} +1 -1
- package/dist/OrganisationChooserLight-Dh7wMH40.mjs.map +1 -0
- package/dist/OrganisationChooserLight-Dx_rkvpP.mjs.map +1 -0
- package/dist/PageNotFound-DeW-K_hL.mjs.map +1 -0
- package/dist/{PageNotFound-Cj-3Gv8T.mjs → PageNotFound-DogaoIFX.mjs} +2 -2
- package/dist/PageNotFound-gRuMWYCp.mjs.map +1 -0
- package/dist/ParticipantInlineList-CY_s6aJm.mjs.map +1 -0
- package/dist/{ParticipantInlineList-DEWqM1Io.mjs → ParticipantInlineList-D9pkOlvP.mjs} +4 -4
- package/dist/ParticipantInlineList-DSatB75C.mjs.map +1 -0
- package/dist/ParticipantItem-BG7yqRvD.mjs.map +1 -0
- package/dist/ParticipantItem-BTK25HID.mjs.map +1 -0
- package/dist/{ParticipantItem-BZAUIeSR.mjs → ParticipantItem-CbHOfVon.mjs} +3 -3
- package/dist/ParticipantPage-B4VnV8Yc.mjs.map +1 -0
- package/dist/ParticipantPage-B6Gzg6ul.mjs.map +1 -0
- package/dist/ParticipantPage-CNRNKTtC.mjs.map +1 -0
- package/dist/ParticipantPage-CpkhQjN2.mjs.map +1 -0
- package/dist/ParticipantPage-D61CCIqy.mjs.map +1 -0
- package/dist/ParticipantPage-Dh4JJCmJ.mjs.map +1 -0
- package/dist/{ParticipantPage-CzaHoWij.mjs → ParticipantPage-nTp2MbgB.mjs} +6 -6
- package/dist/{ParticipantsPage-goxJZQZZ.mjs → ParticipantsPage-Bbz9lQ_0.mjs} +6 -6
- package/dist/ParticipantsPage-COaQrVID.mjs.map +1 -0
- package/dist/ParticipantsPage-DRVVU7qp.mjs.map +1 -0
- package/dist/ParticipantsPage-DhKCWwKE.mjs.map +1 -0
- package/dist/{PlayerAnonymousModal-By96BtpA.mjs → PlayerAnonymousModal-B1iZ34O8.mjs} +2 -2
- package/dist/PlayerAnonymousModal-CBZStK-L.mjs.map +1 -0
- package/dist/PlayerAnonymousModal-Cq6-Dn49.mjs.map +1 -0
- package/dist/PlayerAnonymousModal-Cu2GGoAh.mjs.map +1 -0
- package/dist/PlayerAnonymousModal-DiXWtNmM.mjs.map +1 -0
- package/dist/PlayerAnonymousModal-DrQvDDym.mjs.map +1 -0
- package/dist/PlayerCompact-B9oeGx_g.mjs.map +1 -0
- package/dist/PlayerCompact-DtMginEc.mjs.map +1 -0
- package/dist/PlayerCompact-E8ydrdJ4.mjs.map +1 -0
- package/dist/{PlayerCompact-CjU8xxVH.mjs → PlayerCompact-_39FpkWo.mjs} +4 -4
- package/dist/PlayerComponent-4Wj5XlrS.mjs.map +1 -0
- package/dist/{PlayerComponent-B58O6U6i.mjs → PlayerComponent-B1RsmSf0.mjs} +47 -47
- package/dist/PlayerComponent-BGVzhVz9.mjs.map +1 -0
- package/dist/PlayerComponent-BIshvul2.mjs.map +1 -0
- package/dist/PlayerComponent-BO7wUL2M.mjs.map +1 -0
- package/dist/PlayerComponent-C222I0kT.mjs.map +1 -0
- package/dist/PlayerComponent-CjNZNKKz.mjs.map +1 -0
- package/dist/PlayerComponent-UG_c6_yr.mjs.map +1 -0
- package/dist/{PlayerLarge-CWL5SDzD.mjs → PlayerLarge-BxdyYLOt.mjs} +5 -5
- package/dist/PlayerLarge-CPUAoR9q.mjs.map +1 -0
- package/dist/PlayerLarge-DP7RsA83.mjs.map +1 -0
- package/dist/PlayerLarge-DpiFO7gk.mjs.map +1 -0
- package/dist/PlayerLarge-Dwtmu4gz.mjs.map +1 -0
- package/dist/PlayerLarge-HvRHSw4j.mjs.map +1 -0
- package/dist/PlayerLarge-X5uYCbyS.mjs.map +1 -0
- package/dist/PlayerLarge-qwr3iWSX.mjs.map +1 -0
- package/dist/{PlayerPlayButton-DmvV2YDi.mjs → PlayerPlayButton-BIsfgj0d.mjs} +4 -4
- package/dist/PlayerPlayButton-BQ4zJOrE.mjs.map +1 -0
- package/dist/PlayerPlayButton-kh4ZCdWh.mjs.map +1 -0
- package/dist/PlayerProgressBar-C-I3dk3l.mjs.map +1 -0
- package/dist/PlayerProgressBar-Dr-aFk7O.mjs.map +1 -0
- package/dist/{PlayerProgressBar-Cl_mF4nD.mjs → PlayerProgressBar-dSschgez.mjs} +2 -2
- package/dist/PlayerProgressBar-xc1ZFPJY.mjs.map +1 -0
- package/dist/PlayerStore-Aq_ukXXS.mjs.map +1 -0
- package/dist/PlayerStore-C_QCHbT3.mjs.map +1 -0
- package/dist/{PlayerStore-CKprkxa0.mjs → PlayerStore-DggKki80.mjs} +1 -1
- package/dist/PlayerVideo-BNfhaNUn.mjs.map +1 -0
- package/dist/{PlayerVideo-CVUU7nHT.mjs → PlayerVideo-BWyvKlJT.mjs} +3 -3
- package/dist/PlayerVideo-Bhok6qYS.mjs.map +1 -0
- package/dist/PlayerVideo-CN609whx.mjs.map +1 -0
- package/dist/PlayerVideo-DXG_PsWA.mjs.map +1 -0
- package/dist/PlayerVideo-DzUapxuZ.mjs.map +1 -0
- package/dist/PlayerVideoDigiteka-B1rRVLzy.mjs.map +1 -0
- package/dist/PlayerVideoDigiteka-B6qODy7b.mjs.map +1 -0
- package/dist/{PlayerVideoDigiteka-DZIqqN8a.mjs → PlayerVideoDigiteka-Dxx63XHI.mjs} +2 -2
- package/dist/PlayerVideoHls-BoAbvi2b.mjs.map +1 -0
- package/dist/PlayerVideoHls-BsHaaJB-.mjs.map +1 -0
- package/dist/PlayerVideoHls-C0ddorEn.mjs.map +1 -0
- package/dist/PlayerVideoHls-DBODDRmV.mjs.map +1 -0
- package/dist/PlayerVideoHls-DVNHm_O2.mjs.map +1 -0
- package/dist/{PlayerVideoHls-BirHOkZD.mjs → PlayerVideoHls-DzbyXZsQ.mjs} +9 -7
- package/dist/{PlaylistPage-DljbABur.mjs → PlaylistPage-BdbqXFwR.mjs} +35 -35
- package/dist/PlaylistPage-BgUaPJet.mjs.map +1 -0
- package/dist/PlaylistPage-BwF2VdGb.mjs.map +1 -0
- package/dist/PlaylistPage-CINwx3zE.mjs.map +1 -0
- package/dist/PlaylistPage-CPB647jC.mjs.map +1 -0
- package/dist/PlaylistPage-DDzE5GQs.mjs.map +1 -0
- package/dist/PlaylistPage-bm1nWKMg.mjs.map +1 -0
- package/dist/PlaylistsPage-BwkVSYIp.mjs.map +1 -0
- package/dist/PlaylistsPage-C62NUvz4.mjs.map +1 -0
- package/dist/{PlaylistsPage-BSW-uPWF.mjs → PlaylistsPage-D08i24b2.mjs} +13 -13
- package/dist/PlaylistsPage-Dvh77ql6.mjs.map +1 -0
- package/dist/PodcastFilterList-BBhzOM64.mjs.map +1 -0
- package/dist/PodcastFilterList-BKBjd36i.mjs.map +1 -0
- package/dist/{PodcastFilterList-YM90eN60.mjs → PodcastFilterList-CL5ebQ69.mjs} +3 -3
- package/dist/PodcastFilterList-D9NTYS1v.mjs.map +1 -0
- package/dist/{PodcastImage-BtiQlrb3.mjs → PodcastImage-BFA22TgZ.mjs} +6 -6
- package/dist/PodcastImage-BhQKB5te.mjs.map +1 -0
- package/dist/PodcastImage-CHx3bUzt.mjs.map +1 -0
- package/dist/PodcastInlineList-CcNd_Hbs.mjs.map +1 -0
- package/dist/{PodcastInlineList-B32BSFqN.mjs → PodcastInlineList-H6BxXx0A.mjs} +1 -1
- package/dist/PodcastInlineList-akLivgog.mjs.map +1 -0
- package/dist/PodcastInlineList-jI2EvXSo.mjs.map +1 -0
- package/dist/{PodcastInlineListTemplate-DTrS1UiG.mjs → PodcastInlineListTemplate-Chbi8aME.mjs} +3 -3
- package/dist/PodcastInlineListTemplate-DT9ZRs61.mjs.map +1 -0
- package/dist/PodcastInlineListTemplate-Dh1xF6xT.mjs.map +1 -0
- package/dist/PodcastIsPlaying-C0jcpBQd.mjs.map +1 -0
- package/dist/PodcastIsPlaying-H6P1CHAI.mjs.map +1 -0
- package/dist/{PodcastIsPlaying-BtmHnQi9.mjs → PodcastIsPlaying-ugHcefCy.mjs} +1 -1
- package/dist/{PodcastItem-TdtzApJ6.mjs → PodcastItem-Baki7W0q.mjs} +6 -6
- package/dist/PodcastItem-BfvK4ion.mjs.map +1 -0
- package/dist/PodcastItem-DEhA78z9.mjs.map +1 -0
- package/dist/PodcastItem-DwK_Yu1G.mjs.map +1 -0
- package/dist/PodcastList-B4ic6Cij.mjs.map +1 -0
- package/dist/PodcastList-C2R92m6S.mjs.map +1 -0
- package/dist/PodcastList-DWl6zz_z.mjs.map +1 -0
- package/dist/PodcastList-Dbt4nmKg.mjs.map +1 -0
- package/dist/PodcastList-KaQBRbR9.mjs.map +1 -0
- package/dist/{PodcastList-BAOJhQ7G.mjs → PodcastList-N_XOE-hI.mjs} +5 -5
- package/dist/PodcastList-d3SGLPvF.mjs.map +1 -0
- package/dist/{PodcastList-Bbe3yWiu.mjs → PodcastList-yjd_exFg.mjs} +4 -4
- package/dist/PodcastPage-B0pbZ5o_.mjs.map +1 -0
- package/dist/PodcastPage-BOA44Us4.mjs.map +1 -0
- package/dist/PodcastPage-Bs1wz-0E.mjs.map +1 -0
- package/dist/PodcastPage-C37Wa-qH.mjs.map +1 -0
- package/dist/PodcastPage-D0HYJxaK.mjs.map +1 -0
- package/dist/PodcastPage-D0U6-etV.mjs.map +1 -0
- package/dist/PodcastPage-DwMPY4po.mjs.map +1 -0
- package/dist/{PodcastPage-CAxub2do.mjs → PodcastPage-SUEm-Enm.mjs} +26 -26
- package/dist/PodcastPlayBar-Bo-W_dSK.mjs.map +1 -0
- package/dist/PodcastPlayBar-CBtMWlVc.mjs.map +1 -0
- package/dist/{PodcastPlayBar-gAEttclo.mjs → PodcastPlayBar-COU17bnm.mjs} +3 -3
- package/dist/PodcastPlayBar-Cpr3Ff7J.mjs.map +1 -0
- package/dist/PodcastPlayBasicButton-BvJPrxpI.mjs.map +1 -0
- package/dist/PodcastPlayBasicButton-CS5TNlmX.mjs.map +1 -0
- package/dist/{PodcastPlayBasicButton-7w91y2ow.mjs → PodcastPlayBasicButton-CVXhEUHB.mjs} +1 -1
- package/dist/{PodcastPlayButton-CQY0d6f-.mjs → PodcastPlayButton--gjzxW0o.mjs} +3 -3
- package/dist/PodcastPlayButton-BqvE4ZUl.mjs.map +1 -0
- package/dist/PodcastPlayButton-DW5Feest.mjs.map +1 -0
- package/dist/PodcastPlaylistInlineList-BV31HaB2.mjs.map +1 -0
- package/dist/PodcastPlaylistInlineList-C-WYs6aE.mjs.map +1 -0
- package/dist/{PodcastPlaylistInlineList-BE5L8pSP.mjs → PodcastPlaylistInlineList-DsEHaYGZ.mjs} +7 -7
- package/dist/PodcastPlaylistInlineList-HEdFAq1l.mjs.map +1 -0
- package/dist/{PodcastPresentationList-DH6Rq0Z4.mjs → PodcastPresentationList-B9vORr36.mjs} +4 -4
- package/dist/PodcastPresentationList-ChqvdXY0.mjs.map +1 -0
- package/dist/PodcastPresentationList-Dit6HvJr.mjs.map +1 -0
- package/dist/{PodcastProgressBar-DoeG7lDj.mjs → PodcastProgressBar-B0FwZOTT.mjs} +3 -3
- package/dist/PodcastProgressBar-B8ONWq-Z.mjs.map +1 -0
- package/dist/PodcastProgressBar-BoGtJPAa.mjs.map +1 -0
- package/dist/PodcastProgressBar-DTRhKzW-.mjs.map +1 -0
- package/dist/{PodcastRawTranscript-Cktqtbcg.mjs → PodcastRawTranscript-BiuftXu-.mjs} +2 -2
- package/dist/PodcastRawTranscript-C8SJcaQE.mjs.map +1 -0
- package/dist/PodcastRawTranscript-nfzHM0k_.mjs.map +1 -0
- package/dist/PodcastRawTranscript-r5pRtZDg.mjs.map +1 -0
- package/dist/{PodcastSwiperList-DZ26-8xy.mjs → PodcastSwiperList-BKOYhrsH.mjs} +4 -4
- package/dist/PodcastSwiperList-Bsg0q89o.mjs.map +1 -0
- package/dist/PodcastSwiperList-BxsEv7_8.mjs.map +1 -0
- package/dist/PodcastSwiperList-Cju5VHcH.mjs.map +1 -0
- package/dist/PodcastmakerHeader-6fIwE70J.mjs.map +1 -0
- package/dist/PodcastmakerHeader-BBPEy__r.mjs.map +1 -0
- package/dist/{PodcastmakerHeader-MhdOrssb.mjs → PodcastmakerHeader-CIoJwm1L.mjs} +1 -1
- package/dist/PodcastsPage-967SI8kL.mjs.map +1 -0
- package/dist/{PodcastsPage-BXjTDNhn.mjs → PodcastsPage-B5NwPMyn.mjs} +5 -5
- package/dist/PodcastsPage-B7j2XxPZ.mjs.map +1 -0
- package/dist/PodcastsPage-BOzszXpc.mjs.map +1 -0
- package/dist/PodcastsPage-Bw0tzWoX.mjs.map +1 -0
- package/dist/PodcastsPage-D3TAYJV8.mjs.map +1 -0
- package/dist/PodcastsPage-DJsgHs7V.mjs.map +1 -0
- package/dist/PodcastsPage-DKWHzNNA.mjs.map +1 -0
- package/dist/PodcastsPage-DONqoMkB.mjs.map +1 -0
- package/dist/PodcastsPage-DUcfPeLD.mjs.map +1 -0
- package/dist/PodcastsPage-DWBgwD6o.mjs.map +1 -0
- package/dist/PodcastsPage-DZO4H1Ff.mjs.map +1 -0
- package/dist/PodcastsPage-DhEMPqCT.mjs.map +1 -0
- package/dist/ProductorSearch-BgmV_RCq.mjs.map +1 -0
- package/dist/{ProductorSearch-Z36zTZK4.mjs → ProductorSearch-BiUEs7mG.mjs} +3 -3
- package/dist/ProductorSearch-C4Nv2HzS.mjs.map +1 -0
- package/dist/ProductorSearch-DtVe_rU9.mjs.map +1 -0
- package/dist/ProgressBar-BMeSiueh.mjs.map +1 -0
- package/dist/ProgressBar-C15ih0uL.mjs.map +1 -0
- package/dist/{ProgressBar-CTOa-MDz.mjs → ProgressBar-CXB5q3-H.mjs} +2 -2
- package/dist/ProgressBar-DAUOWol1.mjs.map +1 -0
- package/dist/QrCode-BYLxjhwi.mjs.map +1 -0
- package/dist/QrCode-CCigeTaZ.mjs +109 -0
- package/dist/QrCode-CaXoOjo-.mjs.map +1 -0
- package/dist/QrCode-CcQR60hB.mjs.map +1 -0
- package/dist/QrCode-S_eLVZoz.mjs.map +1 -0
- package/dist/QrCode-XZMMiaX5.mjs.map +1 -0
- package/dist/QrCodeModal-BJOu1pAV.mjs.map +1 -0
- package/dist/QrCodeModal-BjT-0P0w.mjs.map +1 -0
- package/dist/QrCodeModal-BrabSTzq.mjs.map +1 -0
- package/dist/QrCodeModal-CjvbRYLW.mjs.map +1 -0
- package/dist/{QrCodeModal-DE3juCsN.mjs → QrCodeModal-Dpw_tCQ6.mjs} +1 -1
- package/dist/QrCodeModal-N2fjbP4S.mjs.map +1 -0
- package/dist/RadioCurrently-B_b8DV2w.mjs.map +1 -0
- package/dist/RadioCurrently-DufvDqm1.mjs.map +1 -0
- package/dist/{RadioCurrently-BlAhcc9E.mjs → RadioCurrently-ysRKhxKU.mjs} +3 -3
- package/dist/RadioHistory-B03bYMxm.mjs.map +1 -0
- package/dist/{RadioHistory-C7S79sZD.mjs → RadioHistory-DjsqvRgH.mjs} +2 -2
- package/dist/RadioHistory-Dv4gt9TM.mjs.map +1 -0
- package/dist/RadioImage-BFdiGgi_.mjs.map +1 -0
- package/dist/{RadioImage-BTn2Lquc.mjs → RadioImage-CSseYIVb.mjs} +4 -4
- package/dist/RadioImage-CrtD33dM.mjs.map +1 -0
- package/dist/RadioList--f7RDhHJ.mjs.map +1 -0
- package/dist/{RadioList-BD3zNwmk.mjs → RadioList-BZFFAobk.mjs} +4 -4
- package/dist/RadioList-De9NQ23Q.mjs.map +1 -0
- package/dist/RadioPage-BK1N--Kr.mjs.map +1 -0
- package/dist/RadioPage-BTtNFJI2.mjs.map +1 -0
- package/dist/RadioPage-CcK0y_5s.mjs.map +1 -0
- package/dist/RadioPage-Cqas0JX6.mjs.map +1 -0
- package/dist/{RadioPage-Bv3oupa1.mjs → RadioPage-Cwooj0wF.mjs} +4 -4
- package/dist/RadioPage-DhSB0sX5.mjs.map +1 -0
- package/dist/RadioPage-DlahFXYC.mjs.map +1 -0
- package/dist/RadioPlanning-BU1E8i4t.mjs.map +1 -0
- package/dist/{RadioPlanning-nkv_Mb_t.mjs → RadioPlanning-BmIxuUBI.mjs} +2 -2
- package/dist/RadioPlanning-Bx-N-xqX.mjs.map +1 -0
- package/dist/RadioProgressBar-0XM3ZTGU.mjs.map +1 -0
- package/dist/{RadioProgressBar-B2EgCOrK.mjs → RadioProgressBar-CQRGuPpC.mjs} +1 -1
- package/dist/RadioProgressBar-oyeS56mV.mjs.map +1 -0
- package/dist/{RecaptchaModal-w-9MlZ45.mjs → RecaptchaModal-BdW4xNlX.mjs} +1 -1
- package/dist/RecaptchaModal-DFlFQcHs.mjs.map +1 -0
- package/dist/RecaptchaModal-iLQ4UYOL.mjs.map +1 -0
- package/dist/ReportAbuseModal-BaPt2DLK.mjs.map +1 -0
- package/dist/ReportAbuseModal-BdZRe29L.mjs.map +1 -0
- package/dist/ReportAbuseModal-CH7Y153n.mjs.map +1 -0
- package/dist/{ReportAbuseModal-O1K7j7NV.mjs → ReportAbuseModal-jjGeXbB9.mjs} +4 -4
- package/dist/RightsIndicator-4pUsBq5j.mjs.map +1 -0
- package/dist/RightsIndicator-BH3jm_1O.mjs.map +1 -0
- package/dist/{RightsIndicator-D0cSu8j2.mjs → RightsIndicator-CPzWpH5Z.mjs} +1 -1
- package/dist/RightsIndicator-d8ffUFIj.mjs.map +1 -0
- package/dist/{RightsWrapper-BUj_1bwR.mjs → RightsWrapper-BTQ8GGUi.mjs} +5 -5
- package/dist/RightsWrapper-C3BRHqqo.mjs.map +1 -0
- package/dist/RightsWrapper-DJG9Ds6c.mjs.map +1 -0
- package/dist/RightsWrapper-nBURBTJX.mjs.map +1 -0
- package/dist/{RubriqueChoice-DaTWiDbl.mjs → RubriqueChoice-C-S-veJJ.mjs} +1 -1
- package/dist/RubriqueChoice-DsmnrUNs.mjs.map +1 -0
- package/dist/{RubriqueChooser-C33LorHa.mjs → RubriqueChooser-CNGn8LcP.mjs} +1 -1
- package/dist/RubriqueChooser-WmzcajTt.mjs.map +1 -0
- package/dist/RubriqueFilter-C9C_OiF5.mjs.map +1 -0
- package/dist/RubriqueFilter-DDI7DjMR.mjs.map +1 -0
- package/dist/RubriqueFilter-_8V1n9-x.mjs.map +1 -0
- package/dist/{RubriqueFilter-RgardNnQ.mjs → RubriqueFilter-rxiG8Wci.mjs} +3 -3
- package/dist/RubriqueList-99-nWSvq.mjs.map +1 -0
- package/dist/RubriqueList-BiRimk17.mjs.map +1 -0
- package/dist/RubriqueList-H_NHILuj.mjs.map +1 -0
- package/dist/{RubriqueList-DA9OYqUl.mjs → RubriqueList-rJj2IycY.mjs} +4 -4
- package/dist/RubriquePage-6KFPBPz8.mjs.map +1 -0
- package/dist/{RubriquePage-xgTOce7c.mjs → RubriquePage-BNEWnk3-.mjs} +4 -4
- package/dist/RubriquePage-Bpt-x7IK.mjs.map +1 -0
- package/dist/RubriquePage-Cwz9OqLO.mjs.map +1 -0
- package/dist/SearchPage-BtZnj3sA.mjs.map +1 -0
- package/dist/SearchPage-CbbbcXxs.mjs.map +1 -0
- package/dist/SearchPage-DMIV2AgJ.mjs.map +1 -0
- package/dist/{SearchPage-C3o5RPP0.mjs → SearchPage-DsZzPoEw.mjs} +2 -2
- package/dist/ShareAnonymous-BeSQozvM.mjs.map +1 -0
- package/dist/ShareAnonymous-BgsR6Ahp.mjs.map +1 -0
- package/dist/ShareAnonymous-CNWR1v6X.mjs.map +1 -0
- package/dist/{ShareAnonymous-bOwwEjPv.mjs → ShareAnonymous-DK2rnLl1.mjs} +3 -3
- package/dist/ShareAnonymous-DVpKBKbi.mjs.map +1 -0
- package/dist/ShareAnonymous-DWArDFT0.mjs.map +1 -0
- package/dist/ShareAnonymous-IaVbb-rp.mjs.map +1 -0
- package/dist/ShareModalPlayer-BHmsvxXF.mjs.map +1 -0
- package/dist/{ShareModalPlayer-D2oBrSly.mjs → ShareModalPlayer-Cfnk68-U.mjs} +1 -1
- package/dist/ShareModalPlayer-DLBU3lsU.mjs.map +1 -0
- package/dist/ShareModalPlayer-O-CmDObW.mjs.map +1 -0
- package/dist/ShareModalPlayer-QYu8Q9ks.mjs.map +1 -0
- package/dist/ShareModalPlayer-Vga-96DM.mjs.map +1 -0
- package/dist/{ShareNewsletter-CNw1LziN.mjs → ShareNewsletter-BWIAt47D.mjs} +1 -1
- package/dist/ShareNewsletter-BhFk6ARk.mjs.map +1 -0
- package/dist/ShareNewsletter-JCO4h7rk.mjs.map +1 -0
- package/dist/SharePlayer-C-RgIOh1.mjs.map +1 -0
- package/dist/{SharePlayer-CRri0YED.mjs → SharePlayer-C0aveOwy.mjs} +2 -2
- package/dist/SharePlayer-CNXrUj8M.mjs.map +1 -0
- package/dist/SharePlayer-D0-qY2dS.mjs.map +1 -0
- package/dist/SharePlayer-DQoFa7iv.mjs.map +1 -0
- package/dist/SharePlayer-DwNl3E7o.mjs.map +1 -0
- package/dist/{SharePlayerRadio-DVsegQMu.mjs → SharePlayerRadio-BqaeyEls.mjs} +2 -2
- package/dist/SharePlayerRadio-CHvCtKdZ.mjs.map +1 -0
- package/dist/SharePlayerRadio-CIsy-rCC.mjs.map +1 -0
- package/dist/SharePlayerRadio-ChfNulnf.mjs.map +1 -0
- package/dist/SharePlayerRadio-DA-W-306.mjs.map +1 -0
- package/dist/SharePlayerRadio-DwPeLUsk.mjs.map +1 -0
- package/dist/SharePlayerTypes-CeMV4n10.mjs.map +1 -0
- package/dist/SharePlayerTypes-DdyoQZDi.mjs.map +1 -0
- package/dist/{SharePlayerTypes-BxkEoBSL.mjs → SharePlayerTypes-DyrqFDVJ.mjs} +1 -1
- package/dist/ShareSocialsButtons-BHWzJVne.mjs.map +1 -0
- package/dist/ShareSocialsButtons-Bjx2ONvj.mjs.map +1 -0
- package/dist/{ShareSocialsButtons-BJ3DqvIO.mjs → ShareSocialsButtons-PqMXhFEk.mjs} +1 -1
- package/dist/{SimpleLayout-BJlcQjx9.mjs → SimpleLayout-9O9FZ69Q.mjs} +2 -2
- package/dist/SimpleLayout-B-QSfHeQ.mjs.map +1 -0
- package/dist/SimpleLayout-BauUacaf.mjs.map +1 -0
- package/dist/SimpleLayout-C29bPtbd.mjs.map +1 -0
- package/dist/SimpleLayout-Cjc3Q9Mb.mjs.map +1 -0
- package/dist/SimpleLayout-D4sVjQGu.mjs.map +1 -0
- package/dist/SimpleLayout-DaoXS--3.mjs.map +1 -0
- package/dist/SimpleLayout-vkWEZHLi.mjs.map +1 -0
- package/dist/{SmartLinkPage-DpD90wc7.mjs → SmartLinkPage-6HgX8LDv.mjs} +16 -16
- package/dist/SmartLinkPage-BcQmox7e.mjs.map +1 -0
- package/dist/SmartLinkPage-M_zB_Xp1.mjs.map +1 -0
- package/dist/SubscribeButtons-CyGYD1B1.mjs.map +1 -0
- package/dist/SubscribeButtons-DjjZQfOU.mjs.map +1 -0
- package/dist/{SubscribeButtons-zlRDGEzS.mjs → SubscribeButtons-IpzqDGIn.mjs} +3 -3
- package/dist/SubscribeButtons-yA2wowFc.mjs.map +1 -0
- package/dist/SwiperList-BNODHhLF.mjs.map +1 -0
- package/dist/SwiperList-Cqklwlg9.mjs.map +1 -0
- package/dist/{SwiperList-BlF3rPq5.mjs → SwiperList-O8nUg87R.mjs} +1 -1
- package/dist/TagList-4RDriU1J.mjs.map +1 -0
- package/dist/TagList-B5JPfT6j.mjs.map +1 -0
- package/dist/TagList-DVjqXiaA.mjs.map +1 -0
- package/dist/{TagList-BBHyaKp-.mjs → TagList-V9fAFATL.mjs} +2 -2
- package/dist/TagPage-BOsz6Bot.mjs.map +1 -0
- package/dist/TagPage-CALmJwxW.mjs.map +1 -0
- package/dist/{TagPage-DLpNBBjP.mjs → TagPage-CsFwN4sE.mjs} +3 -3
- package/dist/TagPage-DMuxYu6y.mjs.map +1 -0
- package/dist/{TopBar-CLWWRgr7.mjs → TopBar-0oG6YPlW.mjs} +37 -37
- package/dist/TopBar-CUCBss7X.mjs.map +1 -0
- package/dist/TopBar-CeQQ1hgH.mjs.map +1 -0
- package/dist/TopBar-DdxThCLR.mjs.map +1 -0
- package/dist/{UserButtonContent-BR3Rlqwp.mjs → UserButtonContent--VK68UsY.mjs} +6 -6
- package/dist/UserButtonContent-067qGenf.mjs.map +1 -0
- package/dist/UserButtonContent-Dqgyrgzv.mjs.map +1 -0
- package/dist/VideoModuleBox-9QgBI-Q-.mjs.map +1 -0
- package/dist/{VideoModuleBox-DxYJVwy3.mjs → VideoModuleBox-Bcqman6a.mjs} +1 -1
- package/dist/VideoModuleBox-BrVK2bDZ.mjs.map +1 -0
- package/dist/VideoModuleBox-DWO47_bZ.mjs.map +1 -0
- package/dist/VideoPage-4MB4zmnA.mjs.map +1 -0
- package/dist/VideoPage-BDGvtr1o.mjs.map +1 -0
- package/dist/{VideoPage-BaeTduNB.mjs → VideoPage-BjlaP2DU.mjs} +6 -6
- package/dist/VideoPage-C-yjvvhl.mjs.map +1 -0
- package/dist/VideoPage-C0_t7XMC.mjs.map +1 -0
- package/dist/VideoPage-CIDpzbkb.mjs.map +1 -0
- package/dist/VideoPage-D2V1oXGC.mjs.map +1 -0
- package/dist/VideoPage-DEJSfeFy.mjs.map +1 -0
- package/dist/{classicApi-pmODlqv5.mjs → classicApi-CGipMqf7.mjs} +267 -256
- package/dist/classicApi-CW1Z-HoF.mjs.map +1 -0
- package/dist/classicApi-OzToKuW1.mjs.map +1 -0
- package/dist/{downloadHelper-BAI-eqgA.mjs → downloadHelper-C3QooCxr.mjs} +1 -1
- package/dist/downloadHelper-D7dUpp5l.mjs.map +1 -0
- package/dist/downloadHelper-DwV3Mmd3.mjs.map +1 -0
- package/dist/index.css +1 -1
- package/dist/index.mjs +183 -183
- package/dist/src/components/form/ClassicDatePicker.vue.d.ts +24 -14
- package/dist/src/components/form/OctopusMultiselect.vue.d.ts +2 -0
- package/dist/src/i18n.d.ts +2 -0
- package/dist/tests.mjs +2 -2
- package/dist/useAdvancedParamInit-BKw9VZ53.mjs.map +1 -0
- package/dist/useAdvancedParamInit-CyRmbqqe.mjs.map +1 -0
- package/dist/{useAdvancedParamInit-Bgvt8758.mjs → useAdvancedParamInit-D5roUdHI.mjs} +10 -10
- package/dist/useDayjs-BKBB00TF.mjs.map +1 -0
- package/dist/useDayjs-UQLGUbw5.mjs.map +1 -0
- package/dist/{useDayjs-DGb3L4kJ.mjs → useDayjs-VUs19G9T.mjs} +1 -1
- package/dist/useErrorHandler-BKN3lhJ5.mjs.map +1 -0
- package/dist/useErrorHandler-C3XnRTmp.mjs.map +1 -0
- package/dist/{useErrorHandler-D9W2BURn.mjs → useErrorHandler-x9sjDYSz.mjs} +1 -1
- package/dist/useImageProxy-AEcmDpvW.mjs.map +1 -0
- package/dist/useImageProxy-BzTG_GCn.mjs.map +1 -0
- package/dist/{useImageProxy-8ndy_oTo.mjs → useImageProxy-CCpDzPmQ.mjs} +1 -1
- package/dist/useOrgaComputed-4PduqYTq.mjs.map +1 -0
- package/dist/useOrgaComputed-C2n0FBbv.mjs.map +1 -0
- package/dist/{useOrgaComputed-CBJ5sDOm.mjs → useOrgaComputed-D81Jihm-.mjs} +2 -2
- package/dist/{usePlayerLogicProgress-C2L7cMdd.mjs → usePlayerLogicProgress-BybmSAcs.mjs} +2 -2
- package/dist/usePlayerLogicProgress-CKoCod6g.mjs.map +1 -0
- package/dist/usePlayerLogicProgress-DZaPRo6p.mjs.map +1 -0
- package/dist/usePodcastView-B-2HPFAo.mjs.map +1 -0
- package/dist/{usePodcastView-CoDJJr6Y.mjs → usePodcastView-CkM-n6iO.mjs} +3 -3
- package/dist/usePodcastView-jdYTK1cW.mjs.map +1 -0
- package/dist/{usePresentationItem-DZZVm3hh.mjs → usePresentationItem-CLEGZwI3.mjs} +3 -3
- package/dist/usePresentationItem-Com4i40U.mjs.map +1 -0
- package/dist/usePresentationItem-OpMean0v.mjs.map +1 -0
- package/dist/{useRights-DOXtpjv5.mjs → useRights-BI2tXXjR.mjs} +1 -1
- package/dist/useRights-Bsv9hr7w.mjs.map +1 -0
- package/dist/useRights-DfudFDI6.mjs.map +1 -0
- package/dist/{useRubriquesFilterComputed-DoUOqOrJ.mjs → useRubriquesFilterComputed-D1yqLnK4.mjs} +1 -1
- package/dist/useRubriquesFilterComputed-DGDJp2gc.mjs.map +1 -0
- package/dist/useRubriquesFilterComputed-NNE-FElk.mjs.map +1 -0
- package/dist/{useRubriquesFilterParam-BE8BbmAQ.mjs → useRubriquesFilterParam-2eMd5ND7.mjs} +1 -1
- package/dist/useRubriquesFilterParam-DE5dYl6c.mjs.map +1 -0
- package/dist/useRubriquesFilterParam-DXYD4G0D.mjs.map +1 -0
- package/dist/useSharePlatforms-CrQ8r5vT.mjs.map +1 -0
- package/dist/useSharePlatforms-D124fJ_v.mjs.map +1 -0
- package/dist/{useSharePlatforms-ZWYDJZBy.mjs → useSharePlatforms-sXgVxsL5.mjs} +5 -5
- package/dist/{useSimplePageParam-DFKSEyiE.mjs → useSimplePageParam-BrtYXOUt.mjs} +1 -1
- package/dist/useSimplePageParam-CruL7rLG.mjs.map +1 -0
- package/dist/useSimplePageParam-SaBaPhb8.mjs.map +1 -0
- package/dist/{useTranslation-Dr7KU7Y4.mjs → useTranslation-BVQwv02Q.mjs} +9 -9
- package/dist/useTranslation-Bf2zP_6C.mjs.map +1 -0
- package/dist/useTranslation-BuhzZoI8.mjs.map +1 -0
- package/dist/useTranslation-OWqckMEl.mjs.map +1 -0
- package/dist/usefetchRadioData-D01ws733.mjs.map +1 -0
- package/dist/usefetchRadioData-DDRPoD4s.mjs.map +1 -0
- package/dist/{usefetchRadioData-SLWfXkYt.mjs → usefetchRadioData-zyQNqiV3.mjs} +1 -1
- package/package.json +1 -1
- package/src/components/composable/useTranslation.ts +2 -2
- package/src/components/display/sharing/QrCode.vue +63 -64
- package/src/components/form/ClassicDatePicker.vue +32 -20
- package/src/components/form/OctopusMultiselect.vue +3 -4
- package/src/components/misc/ClassicPopover.vue +1 -1
- package/src/components/misc/player/video/PlayerVideoHls.vue +160 -159
- package/src/i18n.ts +38 -29
- package/tests/components/form/ClassicDatePicker.spec.ts +32 -0
- package/tests/components/form/OctopusMultiselect.spec.ts +5 -4
- package/dist/ClassicDatePicker-B7UA9CqR.mjs +0 -187
- package/dist/QrCode-DuScZ7PD.mjs +0 -105
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as e } from "./rolldown-runtime-Dy4uBu1J.mjs";
|
|
2
|
-
import {
|
|
2
|
+
import { E as t, i as n, r } from "./classicApi-CGipMqf7.mjs";
|
|
3
3
|
import { t as i } from "./ClassicCopyButton-DJ9T09fS.mjs";
|
|
4
4
|
import { Fragment as a, computed as o, createCommentVNode as s, createElementBlock as c, createElementVNode as l, createVNode as u, defineComponent as d, onBeforeMount as f, openBlock as p, ref as m, renderList as h, toDisplayString as g, unref as _ } from "vue";
|
|
5
5
|
import { useI18n as v } from "vue-i18n";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ShareNewsletter-BhFk6ARk.mjs","names":["_openBlock","_createElementBlock","_createElementVNode","_toDisplayString","_Fragment","_renderList","_createVNode","_createCommentVNode","_sfc_main"],"sources":["../src/components/display/sharing/ShareNewsletter.vue","../src/components/display/sharing/ShareNewsletter.vue"],"sourcesContent":["<template>\n <div class=\"d-flex flex-column align-items-center\">\n <div class=\"d-flex flex-grow-1\">\n <div class=\"d-flex flex-column flex-shrink-0 me-3\">\n <h2 class=\"mb-3\">\n {{ t(\"Configure your Newsletter tile\") }}\n </h2>\n <div\n v-for=\"colors in arrayColors\"\n :key=\"colors.mainText\"\n class=\"d-flex align-items-center mb-3\"\n >\n <VSwatches\n v-model=\"colors.color\"\n class=\"c-hand me-2\"\n show-fallback\n fallback-input-type=\"color\"\n colors=\"text-advanced\"\n popover-to=\"right\"\n :data-color=\"colors.color\"\n />\n <div class=\"d-flex flex-column\">\n <div class=\"fw-bold\">{{ colors.mainText }}</div>\n <div v-if=\"colors.secondText\" class=\"description-text\">\n {{ colors.secondText }}\n </div>\n </div>\n </div>\n </div>\n <!-- eslint-disable vue/no-v-html -->\n <div class=\"border p-3\" v-html=\"newsletterHtml\" />\n <!-- eslint-enable -->\n </div>\n <ClassicCopyButton\n :text=\"t('Copy code')\"\n :text-after-copy=\"t('Code copied!')\"\n :data-to-copy=\"newsletterHtml\"\n />\n <div>{{ t(\"And paste it in your newsletter\") }}</div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport ClassicCopyButton from \"../../form/ClassicCopyButton.vue\";\nimport { VSwatches } from \"vue3-swatches\";\nimport \"vue3-swatches/dist/style.css\";\nimport { Podcast } from \"@/stores/class/general/podcast\";\nimport { computed, onBeforeMount, ref } from \"vue\";\nimport { useSaveFetchStore } from \"../../../stores/SaveFetchStore\";\nimport { useFilterStore } from \"../../../stores/FilterStore\";\nimport { useAuthStore } from \"../../../stores/AuthStore\";\nimport { Emission } from \"@/stores/class/general/emission\";\nimport { Playlist } from \"@/stores/class/general/playlist\";\nimport { useI18n } from \"vue-i18n\";\nimport { useRouter } from \"vue-router\";\n\n//Props \nconst props = defineProps({\n podcast: { default: undefined, type: Object as () => Podcast },\n emission: { default: undefined, type: Object as () => Emission },\n playlist: { default: undefined, type: Object as () => Playlist },\n})\n\nconst { t } = useI18n();\n\n//Data \nconst shareUrl = ref(window.location.origin);\nconst arrayColors = ref([\n {\n color: \"#40a372\",\n mainText: t(\"Choose main color\"),\n secondText: t(\"Newsletter elements\"),\n },\n { color: \"#000000\", mainText: t(\"Choose text color\") },\n { color: \"#FFFFFF\", mainText: t(\"Choose background color\") },\n]);\n\n//Composables\nconst filterStore = useFilterStore();\nconst authStore = useAuthStore();\nconst saveFetchStore = useSaveFetchStore();\nconst router = useRouter();\n\n//Computed\nconst pathShare = computed(() => {\n const orga = filterStore.filterOrgaId ? \"?productor=\"+filterStore.filterOrgaId : \"\";\n if(props.podcast) {\n return router.resolve({ name: \"podcast\", params: { podcastId: props.podcast.podcastId } }).path + orga;\n }\n if(props.emission){\n return router.resolve({ name: \"emission\", params: { emissionId: props.emission.emissionId } }).path + orga;\n }\n if(props.playlist){\n return router.resolve({ name: \"playlist\", params: { playlistId: props.playlist.playlistId } }).path + orga;\n }\n return \"\";\n});\n\nconst newsletterInfo = computed(() => {\n if (props.podcast) {\n return {\n imageUrl: `${props.podcast.imageUrl}\" alt=\"${t(\n \"Episode name image\",\n { name: props.podcast.title },\n )}`,\n title: props.podcast.title,\n description: props.podcast.description ?? \"\",\n shareText: t(\"Listen this episode\"),\n emissionHtml: `<tr><td style=\"padding:5px 0;\">\n <div style=\"display:flex; margin-top:5px;\">\n <div style=\"font-size:16px; color:${\n arrayColors.value[1].color\n }; margin-right:5px;text-wrap: nowrap;\">${t(\"Emission\")} :</div>\n <a href=\"${shareUrl.value+pathShare.value}\" style=\"font-size: 16px;color: ${\n arrayColors.value[0].color\n };overflow: hidden;text-overflow: ellipsis;white-space: nowrap;\">${\n props.podcast.emission.name\n }</a>\n </div></td></tr>`,\n articleHtml:\n !props.podcast?.article || 0 === props.podcast.article?.length\n ? ``\n : `<tr><td style=\"padding:5px 0;\">\n <div style=\"display:flex;\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M7 17h7v-2H7zm0-4h10v-2H7zm0-4h10V7H7zM5 21q-.825 0-1.412-.587T3 19V5q0-.825.588-1.412T5 3h14q.825 0 1.413.588T21 5v14q0 .825-.587 1.413T19 21zm0-2h14V5H5zM5 5v14z\"/></svg>\n <a href=\"${props.podcast.article}\" style=\"color: ${\n arrayColors.value[1].color\n };margin-top:2px\">${t(\"See associated article\")}</a>\n </div></td></tr>\n `,\n colorTitle: `color:${arrayColors.value[1].color};`,\n };\n }\n if (props.emission) {\n return {\n imageUrl: `${props.emission.imageUrl}\" alt=\"${t(\n \"Emission image\",\n )}`,\n title: props.emission.name,\n description: props.emission.description ?? \"\",\n shareText: t(\"Listen to all episodes\"),\n emissionHtml: ``,\n articleHtml: ``,\n colorTitle: `color:${arrayColors.value[0].color};`,\n };\n }\n return {\n imageUrl: `${props.playlist?.imageUrl}\" alt=\"${t(\n \"Playlist image\",\n )}`,\n title: props.playlist?.title,\n description: props.playlist?.description ?? \"\",\n shareText: t(\"Listen to all episodes\"),\n emissionHtml: ``,\n articleHtml: ``,\n colorTitle: `color:${arrayColors.value[0].color};`,\n };\n});\nconst newsletterHtml = computed(() => {\n return `<table style=\"background:${arrayColors.value[2].color};color:${\n arrayColors.value[1].color\n };table-layout: fixed;width:100%;font-size: 14px;\">\n <tr>\n <td valign=\"top\" width=\"30%\" rowspan=\"7\" style=\"padding-right:5px;\"><img width=\"100%\" src=\"${\n newsletterInfo.value.imageUrl\n }\" style=\"border-radius: 4px;\"></td>\n <td valign=\"top\" width=\"70%\" style=\"padding:5px 0;\"><div style=\"margin-top:5px;font-size: 20px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;font-weight:bold;${\n newsletterInfo.value.colorTitle\n }\">${newsletterInfo.value.title}</div></td>\n </tr>${newsletterInfo.value.emissionHtml}\n <tr><td style=\"padding:5px 0;\"><div style=\"overflow: hidden;display: -webkit-box;-webkit-line-clamp: 6;-webkit-box-orient: vertical;word-break: break-word;\">${\n newsletterInfo.value.description\n }</div></td></tr>\n <tr><td valign=\"top\" style=\"padding:5px 0;\"><a href=\"${\n shareUrl.value+pathShare.value\n }\" style=\"color: ${arrayColors.value[0].color};\">${t(\n \"See more\",\n )}</a></td></tr>\n <tr>${newsletterInfo.value.articleHtml}\n <td width=\"1\" style=\"padding:5px 0;\"><a href=\"${\n shareUrl.value+pathShare.value\n }\" style=\"font-size: 18px;color: ${\n arrayColors.value[0].color\n };text-decoration: none; display:flex;\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"50\" height=\"50\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"m9.5 16.5l7-4.5l-7-4.5zM12 22q-2.075 0-3.9-.788t-3.175-2.137q-1.35-1.35-2.137-3.175T2 12q0-2.075.788-3.9t2.137-3.175q1.35-1.35 3.175-2.137T12 2q2.075 0 3.9.788t3.175 2.137q1.35 1.35 2.138 3.175T22 12q0 2.075-.788 3.9t-2.137 3.175q-1.35 1.35-3.175 2.138T12 22\"/></svg><div style=\"margin-top: 15px; color:${\n arrayColors.value[1].color\n };\">${newsletterInfo.value.shareText}</div></a></td>\n </tr>\n </table>\n `;\n});\n\n\nonBeforeMount(()=>initData())\n\n//Methods\nasync function initData(): Promise<void> {\n const orgaId = authStore.authOrgaId;\n if (!orgaId?.length) {\n return;\n }\n const attributes = await saveFetchStore.getOrgaAttributes(orgaId ?? \"\");\n if (\n Object.hasOwn(attributes, \"podcastmakerUrl\") &&\n (attributes.podcastmakerUrl as string | undefined | null)?.length\n ) {\n shareUrl.value = attributes.podcastmakerUrl?.toString() ?? window.location.origin;\n }\n if (Object.hasOwn(attributes, \"COLOR\")) {\n arrayColors.value[0].color = attributes.COLOR as string;\n }\n}\n</script>\n","<template>\n <div class=\"d-flex flex-column align-items-center\">\n <div class=\"d-flex flex-grow-1\">\n <div class=\"d-flex flex-column flex-shrink-0 me-3\">\n <h2 class=\"mb-3\">\n {{ t(\"Configure your Newsletter tile\") }}\n </h2>\n <div\n v-for=\"colors in arrayColors\"\n :key=\"colors.mainText\"\n class=\"d-flex align-items-center mb-3\"\n >\n <VSwatches\n v-model=\"colors.color\"\n class=\"c-hand me-2\"\n show-fallback\n fallback-input-type=\"color\"\n colors=\"text-advanced\"\n popover-to=\"right\"\n :data-color=\"colors.color\"\n />\n <div class=\"d-flex flex-column\">\n <div class=\"fw-bold\">{{ colors.mainText }}</div>\n <div v-if=\"colors.secondText\" class=\"description-text\">\n {{ colors.secondText }}\n </div>\n </div>\n </div>\n </div>\n <!-- eslint-disable vue/no-v-html -->\n <div class=\"border p-3\" v-html=\"newsletterHtml\" />\n <!-- eslint-enable -->\n </div>\n <ClassicCopyButton\n :text=\"t('Copy code')\"\n :text-after-copy=\"t('Code copied!')\"\n :data-to-copy=\"newsletterHtml\"\n />\n <div>{{ t(\"And paste it in your newsletter\") }}</div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport ClassicCopyButton from \"../../form/ClassicCopyButton.vue\";\nimport { VSwatches } from \"vue3-swatches\";\nimport \"vue3-swatches/dist/style.css\";\nimport { Podcast } from \"@/stores/class/general/podcast\";\nimport { computed, onBeforeMount, ref } from \"vue\";\nimport { useSaveFetchStore } from \"../../../stores/SaveFetchStore\";\nimport { useFilterStore } from \"../../../stores/FilterStore\";\nimport { useAuthStore } from \"../../../stores/AuthStore\";\nimport { Emission } from \"@/stores/class/general/emission\";\nimport { Playlist } from \"@/stores/class/general/playlist\";\nimport { useI18n } from \"vue-i18n\";\nimport { useRouter } from \"vue-router\";\n\n//Props \nconst props = defineProps({\n podcast: { default: undefined, type: Object as () => Podcast },\n emission: { default: undefined, type: Object as () => Emission },\n playlist: { default: undefined, type: Object as () => Playlist },\n})\n\nconst { t } = useI18n();\n\n//Data \nconst shareUrl = ref(window.location.origin);\nconst arrayColors = ref([\n {\n color: \"#40a372\",\n mainText: t(\"Choose main color\"),\n secondText: t(\"Newsletter elements\"),\n },\n { color: \"#000000\", mainText: t(\"Choose text color\") },\n { color: \"#FFFFFF\", mainText: t(\"Choose background color\") },\n]);\n\n//Composables\nconst filterStore = useFilterStore();\nconst authStore = useAuthStore();\nconst saveFetchStore = useSaveFetchStore();\nconst router = useRouter();\n\n//Computed\nconst pathShare = computed(() => {\n const orga = filterStore.filterOrgaId ? \"?productor=\"+filterStore.filterOrgaId : \"\";\n if(props.podcast) {\n return router.resolve({ name: \"podcast\", params: { podcastId: props.podcast.podcastId } }).path + orga;\n }\n if(props.emission){\n return router.resolve({ name: \"emission\", params: { emissionId: props.emission.emissionId } }).path + orga;\n }\n if(props.playlist){\n return router.resolve({ name: \"playlist\", params: { playlistId: props.playlist.playlistId } }).path + orga;\n }\n return \"\";\n});\n\nconst newsletterInfo = computed(() => {\n if (props.podcast) {\n return {\n imageUrl: `${props.podcast.imageUrl}\" alt=\"${t(\n \"Episode name image\",\n { name: props.podcast.title },\n )}`,\n title: props.podcast.title,\n description: props.podcast.description ?? \"\",\n shareText: t(\"Listen this episode\"),\n emissionHtml: `<tr><td style=\"padding:5px 0;\">\n <div style=\"display:flex; margin-top:5px;\">\n <div style=\"font-size:16px; color:${\n arrayColors.value[1].color\n }; margin-right:5px;text-wrap: nowrap;\">${t(\"Emission\")} :</div>\n <a href=\"${shareUrl.value+pathShare.value}\" style=\"font-size: 16px;color: ${\n arrayColors.value[0].color\n };overflow: hidden;text-overflow: ellipsis;white-space: nowrap;\">${\n props.podcast.emission.name\n }</a>\n </div></td></tr>`,\n articleHtml:\n !props.podcast?.article || 0 === props.podcast.article?.length\n ? ``\n : `<tr><td style=\"padding:5px 0;\">\n <div style=\"display:flex;\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M7 17h7v-2H7zm0-4h10v-2H7zm0-4h10V7H7zM5 21q-.825 0-1.412-.587T3 19V5q0-.825.588-1.412T5 3h14q.825 0 1.413.588T21 5v14q0 .825-.587 1.413T19 21zm0-2h14V5H5zM5 5v14z\"/></svg>\n <a href=\"${props.podcast.article}\" style=\"color: ${\n arrayColors.value[1].color\n };margin-top:2px\">${t(\"See associated article\")}</a>\n </div></td></tr>\n `,\n colorTitle: `color:${arrayColors.value[1].color};`,\n };\n }\n if (props.emission) {\n return {\n imageUrl: `${props.emission.imageUrl}\" alt=\"${t(\n \"Emission image\",\n )}`,\n title: props.emission.name,\n description: props.emission.description ?? \"\",\n shareText: t(\"Listen to all episodes\"),\n emissionHtml: ``,\n articleHtml: ``,\n colorTitle: `color:${arrayColors.value[0].color};`,\n };\n }\n return {\n imageUrl: `${props.playlist?.imageUrl}\" alt=\"${t(\n \"Playlist image\",\n )}`,\n title: props.playlist?.title,\n description: props.playlist?.description ?? \"\",\n shareText: t(\"Listen to all episodes\"),\n emissionHtml: ``,\n articleHtml: ``,\n colorTitle: `color:${arrayColors.value[0].color};`,\n };\n});\nconst newsletterHtml = computed(() => {\n return `<table style=\"background:${arrayColors.value[2].color};color:${\n arrayColors.value[1].color\n };table-layout: fixed;width:100%;font-size: 14px;\">\n <tr>\n <td valign=\"top\" width=\"30%\" rowspan=\"7\" style=\"padding-right:5px;\"><img width=\"100%\" src=\"${\n newsletterInfo.value.imageUrl\n }\" style=\"border-radius: 4px;\"></td>\n <td valign=\"top\" width=\"70%\" style=\"padding:5px 0;\"><div style=\"margin-top:5px;font-size: 20px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;font-weight:bold;${\n newsletterInfo.value.colorTitle\n }\">${newsletterInfo.value.title}</div></td>\n </tr>${newsletterInfo.value.emissionHtml}\n <tr><td style=\"padding:5px 0;\"><div style=\"overflow: hidden;display: -webkit-box;-webkit-line-clamp: 6;-webkit-box-orient: vertical;word-break: break-word;\">${\n newsletterInfo.value.description\n }</div></td></tr>\n <tr><td valign=\"top\" style=\"padding:5px 0;\"><a href=\"${\n shareUrl.value+pathShare.value\n }\" style=\"color: ${arrayColors.value[0].color};\">${t(\n \"See more\",\n )}</a></td></tr>\n <tr>${newsletterInfo.value.articleHtml}\n <td width=\"1\" style=\"padding:5px 0;\"><a href=\"${\n shareUrl.value+pathShare.value\n }\" style=\"font-size: 18px;color: ${\n arrayColors.value[0].color\n };text-decoration: none; display:flex;\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"50\" height=\"50\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"m9.5 16.5l7-4.5l-7-4.5zM12 22q-2.075 0-3.9-.788t-3.175-2.137q-1.35-1.35-2.137-3.175T2 12q0-2.075.788-3.9t2.137-3.175q1.35-1.35 3.175-2.137T12 2q2.075 0 3.9.788t3.175 2.137q1.35 1.35 2.138 3.175T22 12q0 2.075-.788 3.9t-2.137 3.175q-1.35 1.35-3.175 2.138T12 22\"/></svg><div style=\"margin-top: 15px; color:${\n arrayColors.value[1].color\n };\">${newsletterInfo.value.shareText}</div></a></td>\n </tr>\n </table>\n `;\n});\n\n\nonBeforeMount(()=>initData())\n\n//Methods\nasync function initData(): Promise<void> {\n const orgaId = authStore.authOrgaId;\n if (!orgaId?.length) {\n return;\n }\n const attributes = await saveFetchStore.getOrgaAttributes(orgaId ?? \"\");\n if (\n Object.hasOwn(attributes, \"podcastmakerUrl\") &&\n (attributes.podcastmakerUrl as string | undefined | null)?.length\n ) {\n shareUrl.value = attributes.podcastmakerUrl?.toString() ?? window.location.origin;\n }\n if (Object.hasOwn(attributes, \"COLOR\")) {\n arrayColors.value[0].color = attributes.COLOR as string;\n }\n}\n</script>\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ShareNewsletter-JCO4h7rk.mjs","names":["_openBlock","_createElementBlock","_createElementVNode","_toDisplayString","_Fragment","_renderList","_createVNode","_createCommentVNode","_sfc_main"],"sources":["../src/components/display/sharing/ShareNewsletter.vue","../src/components/display/sharing/ShareNewsletter.vue"],"sourcesContent":["<template>\n <div class=\"d-flex flex-column align-items-center\">\n <div class=\"d-flex flex-grow-1\">\n <div class=\"d-flex flex-column flex-shrink-0 me-3\">\n <h2 class=\"mb-3\">\n {{ t(\"Configure your Newsletter tile\") }}\n </h2>\n <div\n v-for=\"colors in arrayColors\"\n :key=\"colors.mainText\"\n class=\"d-flex align-items-center mb-3\"\n >\n <VSwatches\n v-model=\"colors.color\"\n class=\"c-hand me-2\"\n show-fallback\n fallback-input-type=\"color\"\n colors=\"text-advanced\"\n popover-to=\"right\"\n :data-color=\"colors.color\"\n />\n <div class=\"d-flex flex-column\">\n <div class=\"fw-bold\">{{ colors.mainText }}</div>\n <div v-if=\"colors.secondText\" class=\"description-text\">\n {{ colors.secondText }}\n </div>\n </div>\n </div>\n </div>\n <!-- eslint-disable vue/no-v-html -->\n <div class=\"border p-3\" v-html=\"newsletterHtml\" />\n <!-- eslint-enable -->\n </div>\n <ClassicCopyButton\n :text=\"t('Copy code')\"\n :text-after-copy=\"t('Code copied!')\"\n :data-to-copy=\"newsletterHtml\"\n />\n <div>{{ t(\"And paste it in your newsletter\") }}</div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport ClassicCopyButton from \"../../form/ClassicCopyButton.vue\";\nimport { VSwatches } from \"vue3-swatches\";\nimport \"vue3-swatches/dist/style.css\";\nimport { Podcast } from \"@/stores/class/general/podcast\";\nimport { computed, onBeforeMount, ref } from \"vue\";\nimport { useSaveFetchStore } from \"../../../stores/SaveFetchStore\";\nimport { useFilterStore } from \"../../../stores/FilterStore\";\nimport { useAuthStore } from \"../../../stores/AuthStore\";\nimport { Emission } from \"@/stores/class/general/emission\";\nimport { Playlist } from \"@/stores/class/general/playlist\";\nimport { useI18n } from \"vue-i18n\";\nimport { useRouter } from \"vue-router\";\n\n//Props \nconst props = defineProps({\n podcast: { default: undefined, type: Object as () => Podcast },\n emission: { default: undefined, type: Object as () => Emission },\n playlist: { default: undefined, type: Object as () => Playlist },\n})\n\nconst { t } = useI18n();\n\n//Data \nconst shareUrl = ref(window.location.origin);\nconst arrayColors = ref([\n {\n color: \"#40a372\",\n mainText: t(\"Choose main color\"),\n secondText: t(\"Newsletter elements\"),\n },\n { color: \"#000000\", mainText: t(\"Choose text color\") },\n { color: \"#FFFFFF\", mainText: t(\"Choose background color\") },\n]);\n\n//Composables\nconst filterStore = useFilterStore();\nconst authStore = useAuthStore();\nconst saveFetchStore = useSaveFetchStore();\nconst router = useRouter();\n\n//Computed\nconst pathShare = computed(() => {\n const orga = filterStore.filterOrgaId ? \"?productor=\"+filterStore.filterOrgaId : \"\";\n if(props.podcast) {\n return router.resolve({ name: \"podcast\", params: { podcastId: props.podcast.podcastId } }).path + orga;\n }\n if(props.emission){\n return router.resolve({ name: \"emission\", params: { emissionId: props.emission.emissionId } }).path + orga;\n }\n if(props.playlist){\n return router.resolve({ name: \"playlist\", params: { playlistId: props.playlist.playlistId } }).path + orga;\n }\n return \"\";\n});\n\nconst newsletterInfo = computed(() => {\n if (props.podcast) {\n return {\n imageUrl: `${props.podcast.imageUrl}\" alt=\"${t(\n \"Episode name image\",\n { name: props.podcast.title },\n )}`,\n title: props.podcast.title,\n description: props.podcast.description ?? \"\",\n shareText: t(\"Listen this episode\"),\n emissionHtml: `<tr><td style=\"padding:5px 0;\">\n <div style=\"display:flex; margin-top:5px;\">\n <div style=\"font-size:16px; color:${\n arrayColors.value[1].color\n }; margin-right:5px;text-wrap: nowrap;\">${t(\"Emission\")} :</div>\n <a href=\"${shareUrl.value+pathShare.value}\" style=\"font-size: 16px;color: ${\n arrayColors.value[0].color\n };overflow: hidden;text-overflow: ellipsis;white-space: nowrap;\">${\n props.podcast.emission.name\n }</a>\n </div></td></tr>`,\n articleHtml:\n !props.podcast?.article || 0 === props.podcast.article?.length\n ? ``\n : `<tr><td style=\"padding:5px 0;\">\n <div style=\"display:flex;\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M7 17h7v-2H7zm0-4h10v-2H7zm0-4h10V7H7zM5 21q-.825 0-1.412-.587T3 19V5q0-.825.588-1.412T5 3h14q.825 0 1.413.588T21 5v14q0 .825-.587 1.413T19 21zm0-2h14V5H5zM5 5v14z\"/></svg>\n <a href=\"${props.podcast.article}\" style=\"color: ${\n arrayColors.value[1].color\n };margin-top:2px\">${t(\"See associated article\")}</a>\n </div></td></tr>\n `,\n colorTitle: `color:${arrayColors.value[1].color};`,\n };\n }\n if (props.emission) {\n return {\n imageUrl: `${props.emission.imageUrl}\" alt=\"${t(\n \"Emission image\",\n )}`,\n title: props.emission.name,\n description: props.emission.description ?? \"\",\n shareText: t(\"Listen to all episodes\"),\n emissionHtml: ``,\n articleHtml: ``,\n colorTitle: `color:${arrayColors.value[0].color};`,\n };\n }\n return {\n imageUrl: `${props.playlist?.imageUrl}\" alt=\"${t(\n \"Playlist image\",\n )}`,\n title: props.playlist?.title,\n description: props.playlist?.description ?? \"\",\n shareText: t(\"Listen to all episodes\"),\n emissionHtml: ``,\n articleHtml: ``,\n colorTitle: `color:${arrayColors.value[0].color};`,\n };\n});\nconst newsletterHtml = computed(() => {\n return `<table style=\"background:${arrayColors.value[2].color};color:${\n arrayColors.value[1].color\n };table-layout: fixed;width:100%;font-size: 14px;\">\n <tr>\n <td valign=\"top\" width=\"30%\" rowspan=\"7\" style=\"padding-right:5px;\"><img width=\"100%\" src=\"${\n newsletterInfo.value.imageUrl\n }\" style=\"border-radius: 4px;\"></td>\n <td valign=\"top\" width=\"70%\" style=\"padding:5px 0;\"><div style=\"margin-top:5px;font-size: 20px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;font-weight:bold;${\n newsletterInfo.value.colorTitle\n }\">${newsletterInfo.value.title}</div></td>\n </tr>${newsletterInfo.value.emissionHtml}\n <tr><td style=\"padding:5px 0;\"><div style=\"overflow: hidden;display: -webkit-box;-webkit-line-clamp: 6;-webkit-box-orient: vertical;word-break: break-word;\">${\n newsletterInfo.value.description\n }</div></td></tr>\n <tr><td valign=\"top\" style=\"padding:5px 0;\"><a href=\"${\n shareUrl.value+pathShare.value\n }\" style=\"color: ${arrayColors.value[0].color};\">${t(\n \"See more\",\n )}</a></td></tr>\n <tr>${newsletterInfo.value.articleHtml}\n <td width=\"1\" style=\"padding:5px 0;\"><a href=\"${\n shareUrl.value+pathShare.value\n }\" style=\"font-size: 18px;color: ${\n arrayColors.value[0].color\n };text-decoration: none; display:flex;\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"50\" height=\"50\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"m9.5 16.5l7-4.5l-7-4.5zM12 22q-2.075 0-3.9-.788t-3.175-2.137q-1.35-1.35-2.137-3.175T2 12q0-2.075.788-3.9t2.137-3.175q1.35-1.35 3.175-2.137T12 2q2.075 0 3.9.788t3.175 2.137q1.35 1.35 2.138 3.175T22 12q0 2.075-.788 3.9t-2.137 3.175q-1.35 1.35-3.175 2.138T12 22\"/></svg><div style=\"margin-top: 15px; color:${\n arrayColors.value[1].color\n };\">${newsletterInfo.value.shareText}</div></a></td>\n </tr>\n </table>\n `;\n});\n\n\nonBeforeMount(()=>initData())\n\n//Methods\nasync function initData(): Promise<void> {\n const orgaId = authStore.authOrgaId;\n if (!orgaId?.length) {\n return;\n }\n const attributes = await saveFetchStore.getOrgaAttributes(orgaId ?? \"\");\n if (\n Object.hasOwn(attributes, \"podcastmakerUrl\") &&\n (attributes.podcastmakerUrl as string | undefined | null)?.length\n ) {\n shareUrl.value = attributes.podcastmakerUrl?.toString() ?? window.location.origin;\n }\n if (Object.hasOwn(attributes, \"COLOR\")) {\n arrayColors.value[0].color = attributes.COLOR as string;\n }\n}\n</script>\n","<template>\n <div class=\"d-flex flex-column align-items-center\">\n <div class=\"d-flex flex-grow-1\">\n <div class=\"d-flex flex-column flex-shrink-0 me-3\">\n <h2 class=\"mb-3\">\n {{ t(\"Configure your Newsletter tile\") }}\n </h2>\n <div\n v-for=\"colors in arrayColors\"\n :key=\"colors.mainText\"\n class=\"d-flex align-items-center mb-3\"\n >\n <VSwatches\n v-model=\"colors.color\"\n class=\"c-hand me-2\"\n show-fallback\n fallback-input-type=\"color\"\n colors=\"text-advanced\"\n popover-to=\"right\"\n :data-color=\"colors.color\"\n />\n <div class=\"d-flex flex-column\">\n <div class=\"fw-bold\">{{ colors.mainText }}</div>\n <div v-if=\"colors.secondText\" class=\"description-text\">\n {{ colors.secondText }}\n </div>\n </div>\n </div>\n </div>\n <!-- eslint-disable vue/no-v-html -->\n <div class=\"border p-3\" v-html=\"newsletterHtml\" />\n <!-- eslint-enable -->\n </div>\n <ClassicCopyButton\n :text=\"t('Copy code')\"\n :text-after-copy=\"t('Code copied!')\"\n :data-to-copy=\"newsletterHtml\"\n />\n <div>{{ t(\"And paste it in your newsletter\") }}</div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport ClassicCopyButton from \"../../form/ClassicCopyButton.vue\";\nimport { VSwatches } from \"vue3-swatches\";\nimport \"vue3-swatches/dist/style.css\";\nimport { Podcast } from \"@/stores/class/general/podcast\";\nimport { computed, onBeforeMount, ref } from \"vue\";\nimport { useSaveFetchStore } from \"../../../stores/SaveFetchStore\";\nimport { useFilterStore } from \"../../../stores/FilterStore\";\nimport { useAuthStore } from \"../../../stores/AuthStore\";\nimport { Emission } from \"@/stores/class/general/emission\";\nimport { Playlist } from \"@/stores/class/general/playlist\";\nimport { useI18n } from \"vue-i18n\";\nimport { useRouter } from \"vue-router\";\n\n//Props \nconst props = defineProps({\n podcast: { default: undefined, type: Object as () => Podcast },\n emission: { default: undefined, type: Object as () => Emission },\n playlist: { default: undefined, type: Object as () => Playlist },\n})\n\nconst { t } = useI18n();\n\n//Data \nconst shareUrl = ref(window.location.origin);\nconst arrayColors = ref([\n {\n color: \"#40a372\",\n mainText: t(\"Choose main color\"),\n secondText: t(\"Newsletter elements\"),\n },\n { color: \"#000000\", mainText: t(\"Choose text color\") },\n { color: \"#FFFFFF\", mainText: t(\"Choose background color\") },\n]);\n\n//Composables\nconst filterStore = useFilterStore();\nconst authStore = useAuthStore();\nconst saveFetchStore = useSaveFetchStore();\nconst router = useRouter();\n\n//Computed\nconst pathShare = computed(() => {\n const orga = filterStore.filterOrgaId ? \"?productor=\"+filterStore.filterOrgaId : \"\";\n if(props.podcast) {\n return router.resolve({ name: \"podcast\", params: { podcastId: props.podcast.podcastId } }).path + orga;\n }\n if(props.emission){\n return router.resolve({ name: \"emission\", params: { emissionId: props.emission.emissionId } }).path + orga;\n }\n if(props.playlist){\n return router.resolve({ name: \"playlist\", params: { playlistId: props.playlist.playlistId } }).path + orga;\n }\n return \"\";\n});\n\nconst newsletterInfo = computed(() => {\n if (props.podcast) {\n return {\n imageUrl: `${props.podcast.imageUrl}\" alt=\"${t(\n \"Episode name image\",\n { name: props.podcast.title },\n )}`,\n title: props.podcast.title,\n description: props.podcast.description ?? \"\",\n shareText: t(\"Listen this episode\"),\n emissionHtml: `<tr><td style=\"padding:5px 0;\">\n <div style=\"display:flex; margin-top:5px;\">\n <div style=\"font-size:16px; color:${\n arrayColors.value[1].color\n }; margin-right:5px;text-wrap: nowrap;\">${t(\"Emission\")} :</div>\n <a href=\"${shareUrl.value+pathShare.value}\" style=\"font-size: 16px;color: ${\n arrayColors.value[0].color\n };overflow: hidden;text-overflow: ellipsis;white-space: nowrap;\">${\n props.podcast.emission.name\n }</a>\n </div></td></tr>`,\n articleHtml:\n !props.podcast?.article || 0 === props.podcast.article?.length\n ? ``\n : `<tr><td style=\"padding:5px 0;\">\n <div style=\"display:flex;\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M7 17h7v-2H7zm0-4h10v-2H7zm0-4h10V7H7zM5 21q-.825 0-1.412-.587T3 19V5q0-.825.588-1.412T5 3h14q.825 0 1.413.588T21 5v14q0 .825-.587 1.413T19 21zm0-2h14V5H5zM5 5v14z\"/></svg>\n <a href=\"${props.podcast.article}\" style=\"color: ${\n arrayColors.value[1].color\n };margin-top:2px\">${t(\"See associated article\")}</a>\n </div></td></tr>\n `,\n colorTitle: `color:${arrayColors.value[1].color};`,\n };\n }\n if (props.emission) {\n return {\n imageUrl: `${props.emission.imageUrl}\" alt=\"${t(\n \"Emission image\",\n )}`,\n title: props.emission.name,\n description: props.emission.description ?? \"\",\n shareText: t(\"Listen to all episodes\"),\n emissionHtml: ``,\n articleHtml: ``,\n colorTitle: `color:${arrayColors.value[0].color};`,\n };\n }\n return {\n imageUrl: `${props.playlist?.imageUrl}\" alt=\"${t(\n \"Playlist image\",\n )}`,\n title: props.playlist?.title,\n description: props.playlist?.description ?? \"\",\n shareText: t(\"Listen to all episodes\"),\n emissionHtml: ``,\n articleHtml: ``,\n colorTitle: `color:${arrayColors.value[0].color};`,\n };\n});\nconst newsletterHtml = computed(() => {\n return `<table style=\"background:${arrayColors.value[2].color};color:${\n arrayColors.value[1].color\n };table-layout: fixed;width:100%;font-size: 14px;\">\n <tr>\n <td valign=\"top\" width=\"30%\" rowspan=\"7\" style=\"padding-right:5px;\"><img width=\"100%\" src=\"${\n newsletterInfo.value.imageUrl\n }\" style=\"border-radius: 4px;\"></td>\n <td valign=\"top\" width=\"70%\" style=\"padding:5px 0;\"><div style=\"margin-top:5px;font-size: 20px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;font-weight:bold;${\n newsletterInfo.value.colorTitle\n }\">${newsletterInfo.value.title}</div></td>\n </tr>${newsletterInfo.value.emissionHtml}\n <tr><td style=\"padding:5px 0;\"><div style=\"overflow: hidden;display: -webkit-box;-webkit-line-clamp: 6;-webkit-box-orient: vertical;word-break: break-word;\">${\n newsletterInfo.value.description\n }</div></td></tr>\n <tr><td valign=\"top\" style=\"padding:5px 0;\"><a href=\"${\n shareUrl.value+pathShare.value\n }\" style=\"color: ${arrayColors.value[0].color};\">${t(\n \"See more\",\n )}</a></td></tr>\n <tr>${newsletterInfo.value.articleHtml}\n <td width=\"1\" style=\"padding:5px 0;\"><a href=\"${\n shareUrl.value+pathShare.value\n }\" style=\"font-size: 18px;color: ${\n arrayColors.value[0].color\n };text-decoration: none; display:flex;\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"50\" height=\"50\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"m9.5 16.5l7-4.5l-7-4.5zM12 22q-2.075 0-3.9-.788t-3.175-2.137q-1.35-1.35-2.137-3.175T2 12q0-2.075.788-3.9t2.137-3.175q1.35-1.35 3.175-2.137T12 2q2.075 0 3.9.788t3.175 2.137q1.35 1.35 2.138 3.175T22 12q0 2.075-.788 3.9t-2.137 3.175q-1.35 1.35-3.175 2.138T12 22\"/></svg><div style=\"margin-top: 15px; color:${\n arrayColors.value[1].color\n };\">${newsletterInfo.value.shareText}</div></a></td>\n </tr>\n </table>\n `;\n});\n\n\nonBeforeMount(()=>initData())\n\n//Methods\nasync function initData(): Promise<void> {\n const orgaId = authStore.authOrgaId;\n if (!orgaId?.length) {\n return;\n }\n const attributes = await saveFetchStore.getOrgaAttributes(orgaId ?? \"\");\n if (\n Object.hasOwn(attributes, \"podcastmakerUrl\") &&\n (attributes.podcastmakerUrl as string | undefined | null)?.length\n ) {\n shareUrl.value = attributes.podcastmakerUrl?.toString() ?? window.location.origin;\n }\n if (Object.hasOwn(attributes, \"COLOR\")) {\n arrayColors.value[0].color = attributes.COLOR as string;\n }\n}\n</script>\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SharePlayer-C-RgIOh1.mjs","names":["_openBlock","_createElementBlock","_createElementVNode","_toDisplayString","_createCommentVNode","_createVNode","_createBlock","_sfc_main"],"sources":["../src/components/display/sharing/SharePlayer.vue","../src/components/display/sharing/SharePlayer.vue"],"sourcesContent":["<template>\n <section class=\"module-box overflow-visible\">\n <div class=\"d-flex justify-content-between align-items-center\">\n <h3 class=\"mb-3\">\n {{ t(\"Embed\") }}\n </h3>\n <div\n v-if=\"noAd && !generalStore.platformEducation\"\n class=\"sticker\"\n :title=\"t('You cannot insert advertising')\"\n >\n {{ t(\"No advertising\") }}\n </div>\n </div>\n <template v-if=\"!exclusive && (authenticated || notExclusive)\">\n <div class=\"d-flex\">\n <iframe\n id=\"miniplayerIframe\"\n title=\"Miniplayer\"\n allowfullscreen=\"true\"\n allow=\"clipboard-read; clipboard-write; autoplay\"\n referrerpolicy=\"no-referrer-when-downgrade\"\n frameborder=\"0\"\n :src=\"iFrameSrc\"\n width=\"100%\"\n :height=\"iFrameHeight\"\n class=\"max-iframe mx-3\"\n />\n <div class=\"d-flex flex-column flex-grow-1\">\n <SharePlayerTypes\n v-model:i-frame-model=\"iFrameModel\"\n v-model:type-custom-player=\"typeCustomPlayer\"\n :podcast=\"podcast\"\n :emission=\"emission\"\n :playlist=\"playlist\"\n :organisation-id=\"organisationId\"\n :is-live=\"isLiveReadyToRecord\"\n />\n <SharePlayerColors\n v-model:color=\"color\"\n v-model:theme=\"theme\"\n class=\"mt-3\"\n />\n <PlayerParameters\n v-model:display-article=\"displayArticle\"\n v-model:display-transcript=\"displayTranscript\"\n v-model:display-wave=\"displayWave\"\n v-model:is-visible=\"isVisible\"\n v-model:player-auto-play=\"playerAutoPlay\"\n v-model:episodes-number=\"episodesNumber\"\n v-model:insert-code=\"insertCode\"\n v-model:auto-height=\"autoHeight\"\n :display-is-visible=\"displayIsVisible\"\n :is-podcast-not-visible=\"isPodcastNotVisible\"\n :chose-number-episode=\"displayChoiceAllEpisodes\"\n :display-choice-all-episodes=\"displayChoiceAllEpisodes\"\n :display-transcript-param=\"displayTranscriptParam\"\n :display-article-param=\"displayArticleParam\"\n :display-wave-param=\"displayWaveParam\"\n :display-insert-code=\"displayInsertCode\"\n :display-auto-height=\"iFrameModel.toLowerCase().includes('large')\"\n @episode-choice-display=\"episodeChoiceDisplay = $event\"\n />\n\n <ShareModalPlayer\n v-if=\"isShareModal\"\n :embed-link=\"iFrame\"\n :embedly-link=\"iFrameSrc\"\n :direct-link=\"podcast\"\n @close=\"isShareModal = false\"\n />\n <button\n class=\"btn btn-primary w-fit-content mt-3\"\n @click=\"isShareModal = true\"\n >\n {{ t(\"Share the player\") }}\n </button>\n </div>\n </div>\n </template>\n <div v-else-if=\"exclusive && authenticated\">\n {{ t(\"Only organisation members can share the content\") }}\n </div>\n <div v-else-if=\"!authenticated\">\n {{ t(\"Only authenticated members can share the content\") }}\n </div>\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { Podcast } from \"@/stores/class/general/podcast\";\nimport { Emission } from \"@/stores/class/general/emission\";\nimport { Playlist } from \"@/stores/class/general/playlist\";\nimport { useAuthStore } from \"../../../stores/AuthStore\";\nimport { useApiStore } from \"../../../stores/ApiStore\";\nimport { useSaveFetchStore } from \"../../../stores/SaveFetchStore\";\nimport { defineAsyncComponent, ref, Ref, computed, onBeforeMount } from \"vue\";\nimport { useGeneralStore } from \"../../../stores/GeneralStore\";\nimport { useI18n } from \"vue-i18n\";\nconst ShareModalPlayer = defineAsyncComponent(\n () => import(\"../../misc/modal/ShareModalPlayer.vue\"),\n);\nconst PlayerParameters = defineAsyncComponent(\n () => import(\"./PlayerParameters.vue\"),\n);\nconst SharePlayerTypes = defineAsyncComponent(\n () => import(\"./SharePlayerTypes.vue\"),\n);\nconst SharePlayerColors = defineAsyncComponent(\n () => import(\"./SharePlayerColors.vue\"),\n);\n\n\n//Props \nconst props = defineProps({\n podcast: { default: undefined, type: Object as () => Podcast },\n emission: { default: undefined, type: Object as () => Emission },\n playlist: { default: undefined, type: Object as () => Playlist },\n organisationId: { default: undefined, type: String },\n exclusive: { default: false, type: Boolean },\n notExclusive: { default: true, type: Boolean },\n})\n\n//Data \nconst typeCustomPlayer = ref(\"\");\nconst iFrameModel = ref(\"default\");\nconst isShareModal = ref(false);\nconst color = ref(\"#40a372\");\nconst theme = ref(\"#000000\");\nconst episodeChoiceDisplay = ref(\"number\");\nconst episodesNumber = ref(3);\nconst isVisible = ref(false);\nconst displayArticle = ref(true);\nconst displayTranscript = ref(true);\nconst displayWave = ref(false);\nconst playerAutoPlay = ref(false);\nconst insertCode = ref(false);\nconst autoHeight = ref(false);\nconst orgaAttributes : Ref<{ [key: string]: string | number | boolean | undefined }| undefined>= ref(undefined);\n\n\n//Composables\nconst { t } = useI18n();\nconst authStore = useAuthStore();\nconst apiStore = useApiStore();\nconst generalStore = useGeneralStore();\nconst saveFetchStore = useSaveFetchStore();\n\n\n//Computed\nconst authenticated = computed(() => undefined !== authStore.authOrgaId);\nconst displayWaveParam = computed(() => \"default\" === iFrameModel.value || \"emission\" === iFrameModel.value);\nconst displayIsVisible = computed(() => displayChoiceAllEpisodes.value || isPodcastNotVisible.value);\nconst isPodcastNotVisible = computed(() => {\n return (\n undefined !== props.podcast &&\n !props.podcast.availability.visibility &&\n !isTypeEmission.value\n );\n});\nconst displayArticleParam = computed(() => {\n return (\n undefined !== props.podcast &&\n undefined !== props.podcast.article &&\n 0 !== props.podcast.article.length &&\n (\"default\" === iFrameModel.value ||\n \"large\" === iFrameModel.value ||\n \"largeMore\" === iFrameModel.value)\n );\n});\nconst displayInsertCode = computed(() => {\n let orgaResourceId = \"\";\n if (props.podcast) {\n orgaResourceId = props.podcast.organisation.id;\n }\n if (props.emission) {\n orgaResourceId = props.emission.orga.id;\n }\n if (props.playlist) {\n orgaResourceId = props.playlist.organisation?.id ?? \"\";\n }\n return orgaResourceId === authStore.authOrgaId;\n});\nconst displayTranscriptParam = computed(() => isTranscriptionAuthorize.value && (isDefault.value || isEmission.value));\nconst isTranscriptionAuthorize = computed(() => {\n if (!orgaAttributes.value) {\n return false;\n }\n return orgaAttributes.value &&\n Object.hasOwn(orgaAttributes.value, \"speechtotext.active\")\n ? (orgaAttributes.value[\"speechtotext.active\"] as boolean)\n : false;\n});\nconst displayChoiceAllEpisodes = computed(() => !props.podcast || isTypeEmission.value);\nconst isDefault = computed(() => \"default\" === iFrameModel.value);\nconst isEmission = computed(() => \"emission\" === iFrameModel.value);\nconst isLargeEmission = computed(() => \"emissionLarge\" === iFrameModel.value);\nconst isTypeEmission = computed(() => {\n return (\n isEmission.value ||\n isLargeEmission.value ||\n \"EMISSION\" === typeCustomPlayer.value\n );\n});\nconst isLiveReadyToRecord = computed(() => {\n if (props.podcast)\n return (\n undefined !== props.podcast.conferenceId &&\n 0 !== props.podcast.conferenceId &&\n props.podcast.processingStatus === \"READY_TO_RECORD\"\n );\n return false;\n});\n\nconst noAd = computed(() => {\n return (\n (props.podcast?.organisation.id !== props.organisationId &&\n \"NO\" === props.podcast?.monetisable) ||\n (\"UNDEFINED\" === props.podcast?.monetisable &&\n \"NO\" === props.podcast?.emission.monetisable)\n );\n});\nconst iFrameSrc = computed(() => {\n if (\"video\" === iFrameModel.value) {\n return (\n \"https://www.ultimedia.com/deliver/generic/iframe/mdtk/01009833/zone/1/showtitle/1/src/\" +\n props.podcast?.video?.videoId +\n \"/sound/true\"\n );\n }\n let url = [\"\"];\n const iFrameNumber =\n displayChoiceAllEpisodes.value && \"all\" === episodeChoiceDisplay.value\n ? \"/0\"\n : \"/\" + episodesNumber.value;\n url.push(`${apiStore.miniplayerUrl}miniplayer/`);\n if (!props.podcast && !props.playlist && props.emission) {\n url = constructEmissionUrl(url);\n } else if (props.playlist) {\n url = constructPlaylistUrl(url);\n } else if (props.emission && props.podcast) {\n url.push(`${iFrameModel.value}/`);\n if (isTypeEmission.value) {\n url.push(\n `${props.emission.emissionId}${iFrameNumber}/${props.podcast.podcastId}`,\n );\n } else {\n url.push(`${props.podcast.podcastId}`);\n }\n }\n\n return addUrlParameters(url).join(\"\");\n});\nconst iFrameHeight = computed(() => {\n switch (iFrameModel.value) {\n case \"video\":\n return \"281px\";\n case \"large\":\n if (props.podcast) return \"140px\";\n return \"350px\";\n case \"largeMore\":\n return \"210px\";\n case \"emissionLarge\":\n return \"350px\";\n case \"emission\":\n return \"540px\";\n case \"videoLive\":\n return \"450px\";\n default:\n return \"540px\";\n }\n});\nconst iFrame = computed(() => {\n const specialDigiteka = props.podcast?.video?.videoId\n ? 'allowfullscreen=\"true\" referrerpolicy=\"no-referrer-when-downgrade\"'\n : \"\";\n return `<iframe src=\"${iFrameSrc.value}\" width=\"100%\" height=\"${iFrameHeight.value}\" frameborder=\"0\" scrolling=\"no\" ${specialDigiteka} allow=\"clipboard-read; clipboard-write; autoplay\"></iframe>`;\n});\nconst dataTitle = computed(() => {\n if (props.podcast) return props.podcast.podcastId;\n if (props.emission) return props.emission.emissionId;\n if (props.playlist) return props.playlist.playlistId;\n return 0;\n});\n\n\nonBeforeMount(()=>initSharePlayer())\n\n\n//Methods\nasync function initSharePlayer() {\n orgaAttributes.value = await saveFetchStore.getOrgaAttributes(authStore.authOrgaId ?? \"\");\n initColor();\n if (isLiveReadyToRecord.value) {\n iFrameModel.value = \"large\";\n }\n if (\"true\" === props.podcast?.annotations?.[\"fromTTS\"]) {\n displayTranscript.value = false;\n }\n}\nfunction getIframeNumber(): string {\n return displayChoiceAllEpisodes.value && \"all\" === episodeChoiceDisplay.value\n ? \"/0\"\n : \"/\" + episodesNumber.value;\n}\nfunction constructEmissionUrl(url: Array<string>) {\n if (!props.emission) {\n return [];\n }\n switch (iFrameModel.value) {\n case \"default\":\n url.push(\"emission\");\n break;\n case \"large\":\n url.push(\"emissionLarge\");\n break;\n default:\n url.push(`${iFrameModel.value}`);\n break;\n }\n url.push(`/${props.emission.emissionId}${getIframeNumber()}`);\n return url;\n}\nfunction constructPlaylistUrl(url: Array<string>) {\n if (!props.playlist) {\n return [];\n }\n switch (iFrameModel.value) {\n case \"default\":\n url.push(\"playlist\");\n break;\n case \"large\":\n url.push(\"playlistLarge\");\n break;\n default:\n url.push(`${iFrameModel.value}`);\n break;\n }\n url.push(`/${props.playlist.playlistId}`);\n return url;\n}\nfunction addUrlParameters(url: Array<string>) {\n url.push(\"?distributorId=\" + props.organisationId);\n url.push(\n `&color=${color.value.substring(1)}&theme=${theme.value.substring(1)}`,\n );\n if (!displayArticle.value && displayArticleParam.value) {\n url.push(\"&article=false\");\n }\n if (!displayTranscript.value) {\n url.push(\"&transcript=false\");\n }\n if (!displayWave.value) {\n url.push(\"&wave=false\");\n }\n if (playerAutoPlay.value) {\n url.push(\"&autoplay=true\");\n }\n if (isVisible.value) {\n url.push(\"&key=\" + window.btoa(dataTitle.value.toString()));\n }\n if (insertCode.value) {\n url.push(\"&insertCode=true\");\n }\n if (autoHeight.value) {\n url.push(\"&autoHeight=true\");\n }\n return url;\n}\nfunction initColor(): void {\n if (!orgaAttributes.value) {\n return;\n }\n color.value = Object.hasOwn(orgaAttributes.value, \"COLOR\")\n ? (orgaAttributes.value.COLOR as string)\n : \"#40a372\";\n theme.value = Object.hasOwn(orgaAttributes.value, \"THEME\")\n ? (orgaAttributes.value.THEME as string)\n : \"#ffffff\";\n}\n</script>\n\n<style lang=\"scss\">\n\n@use \"../../../style/iframe\";\n\n.octopus-app {\n .sticker {\n align-self: center;\n background: var(--octopus-primary);\n padding: 0.5rem;\n transition: all 0.5s ease;\n color: white;\n font-weight: bold;\n letter-spacing: 1px;\n box-shadow: 10px 10px 34px -15px var(--octopus-shadow);\n border-radius: 255px 15px 225px 15px/15px 225px 15px 255px;\n border: solid 2px var(--octopus-gray-text);\n\n &:hover {\n box-shadow: 2px 8px 4px -6px var(--octopus-shadow);\n background: transparent;\n color: var(--octopus-primary);\n }\n }\n}\n</style>\n","<template>\n <section class=\"module-box overflow-visible\">\n <div class=\"d-flex justify-content-between align-items-center\">\n <h3 class=\"mb-3\">\n {{ t(\"Embed\") }}\n </h3>\n <div\n v-if=\"noAd && !generalStore.platformEducation\"\n class=\"sticker\"\n :title=\"t('You cannot insert advertising')\"\n >\n {{ t(\"No advertising\") }}\n </div>\n </div>\n <template v-if=\"!exclusive && (authenticated || notExclusive)\">\n <div class=\"d-flex\">\n <iframe\n id=\"miniplayerIframe\"\n title=\"Miniplayer\"\n allowfullscreen=\"true\"\n allow=\"clipboard-read; clipboard-write; autoplay\"\n referrerpolicy=\"no-referrer-when-downgrade\"\n frameborder=\"0\"\n :src=\"iFrameSrc\"\n width=\"100%\"\n :height=\"iFrameHeight\"\n class=\"max-iframe mx-3\"\n />\n <div class=\"d-flex flex-column flex-grow-1\">\n <SharePlayerTypes\n v-model:i-frame-model=\"iFrameModel\"\n v-model:type-custom-player=\"typeCustomPlayer\"\n :podcast=\"podcast\"\n :emission=\"emission\"\n :playlist=\"playlist\"\n :organisation-id=\"organisationId\"\n :is-live=\"isLiveReadyToRecord\"\n />\n <SharePlayerColors\n v-model:color=\"color\"\n v-model:theme=\"theme\"\n class=\"mt-3\"\n />\n <PlayerParameters\n v-model:display-article=\"displayArticle\"\n v-model:display-transcript=\"displayTranscript\"\n v-model:display-wave=\"displayWave\"\n v-model:is-visible=\"isVisible\"\n v-model:player-auto-play=\"playerAutoPlay\"\n v-model:episodes-number=\"episodesNumber\"\n v-model:insert-code=\"insertCode\"\n v-model:auto-height=\"autoHeight\"\n :display-is-visible=\"displayIsVisible\"\n :is-podcast-not-visible=\"isPodcastNotVisible\"\n :chose-number-episode=\"displayChoiceAllEpisodes\"\n :display-choice-all-episodes=\"displayChoiceAllEpisodes\"\n :display-transcript-param=\"displayTranscriptParam\"\n :display-article-param=\"displayArticleParam\"\n :display-wave-param=\"displayWaveParam\"\n :display-insert-code=\"displayInsertCode\"\n :display-auto-height=\"iFrameModel.toLowerCase().includes('large')\"\n @episode-choice-display=\"episodeChoiceDisplay = $event\"\n />\n\n <ShareModalPlayer\n v-if=\"isShareModal\"\n :embed-link=\"iFrame\"\n :embedly-link=\"iFrameSrc\"\n :direct-link=\"podcast\"\n @close=\"isShareModal = false\"\n />\n <button\n class=\"btn btn-primary w-fit-content mt-3\"\n @click=\"isShareModal = true\"\n >\n {{ t(\"Share the player\") }}\n </button>\n </div>\n </div>\n </template>\n <div v-else-if=\"exclusive && authenticated\">\n {{ t(\"Only organisation members can share the content\") }}\n </div>\n <div v-else-if=\"!authenticated\">\n {{ t(\"Only authenticated members can share the content\") }}\n </div>\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { Podcast } from \"@/stores/class/general/podcast\";\nimport { Emission } from \"@/stores/class/general/emission\";\nimport { Playlist } from \"@/stores/class/general/playlist\";\nimport { useAuthStore } from \"../../../stores/AuthStore\";\nimport { useApiStore } from \"../../../stores/ApiStore\";\nimport { useSaveFetchStore } from \"../../../stores/SaveFetchStore\";\nimport { defineAsyncComponent, ref, Ref, computed, onBeforeMount } from \"vue\";\nimport { useGeneralStore } from \"../../../stores/GeneralStore\";\nimport { useI18n } from \"vue-i18n\";\nconst ShareModalPlayer = defineAsyncComponent(\n () => import(\"../../misc/modal/ShareModalPlayer.vue\"),\n);\nconst PlayerParameters = defineAsyncComponent(\n () => import(\"./PlayerParameters.vue\"),\n);\nconst SharePlayerTypes = defineAsyncComponent(\n () => import(\"./SharePlayerTypes.vue\"),\n);\nconst SharePlayerColors = defineAsyncComponent(\n () => import(\"./SharePlayerColors.vue\"),\n);\n\n\n//Props \nconst props = defineProps({\n podcast: { default: undefined, type: Object as () => Podcast },\n emission: { default: undefined, type: Object as () => Emission },\n playlist: { default: undefined, type: Object as () => Playlist },\n organisationId: { default: undefined, type: String },\n exclusive: { default: false, type: Boolean },\n notExclusive: { default: true, type: Boolean },\n})\n\n//Data \nconst typeCustomPlayer = ref(\"\");\nconst iFrameModel = ref(\"default\");\nconst isShareModal = ref(false);\nconst color = ref(\"#40a372\");\nconst theme = ref(\"#000000\");\nconst episodeChoiceDisplay = ref(\"number\");\nconst episodesNumber = ref(3);\nconst isVisible = ref(false);\nconst displayArticle = ref(true);\nconst displayTranscript = ref(true);\nconst displayWave = ref(false);\nconst playerAutoPlay = ref(false);\nconst insertCode = ref(false);\nconst autoHeight = ref(false);\nconst orgaAttributes : Ref<{ [key: string]: string | number | boolean | undefined }| undefined>= ref(undefined);\n\n\n//Composables\nconst { t } = useI18n();\nconst authStore = useAuthStore();\nconst apiStore = useApiStore();\nconst generalStore = useGeneralStore();\nconst saveFetchStore = useSaveFetchStore();\n\n\n//Computed\nconst authenticated = computed(() => undefined !== authStore.authOrgaId);\nconst displayWaveParam = computed(() => \"default\" === iFrameModel.value || \"emission\" === iFrameModel.value);\nconst displayIsVisible = computed(() => displayChoiceAllEpisodes.value || isPodcastNotVisible.value);\nconst isPodcastNotVisible = computed(() => {\n return (\n undefined !== props.podcast &&\n !props.podcast.availability.visibility &&\n !isTypeEmission.value\n );\n});\nconst displayArticleParam = computed(() => {\n return (\n undefined !== props.podcast &&\n undefined !== props.podcast.article &&\n 0 !== props.podcast.article.length &&\n (\"default\" === iFrameModel.value ||\n \"large\" === iFrameModel.value ||\n \"largeMore\" === iFrameModel.value)\n );\n});\nconst displayInsertCode = computed(() => {\n let orgaResourceId = \"\";\n if (props.podcast) {\n orgaResourceId = props.podcast.organisation.id;\n }\n if (props.emission) {\n orgaResourceId = props.emission.orga.id;\n }\n if (props.playlist) {\n orgaResourceId = props.playlist.organisation?.id ?? \"\";\n }\n return orgaResourceId === authStore.authOrgaId;\n});\nconst displayTranscriptParam = computed(() => isTranscriptionAuthorize.value && (isDefault.value || isEmission.value));\nconst isTranscriptionAuthorize = computed(() => {\n if (!orgaAttributes.value) {\n return false;\n }\n return orgaAttributes.value &&\n Object.hasOwn(orgaAttributes.value, \"speechtotext.active\")\n ? (orgaAttributes.value[\"speechtotext.active\"] as boolean)\n : false;\n});\nconst displayChoiceAllEpisodes = computed(() => !props.podcast || isTypeEmission.value);\nconst isDefault = computed(() => \"default\" === iFrameModel.value);\nconst isEmission = computed(() => \"emission\" === iFrameModel.value);\nconst isLargeEmission = computed(() => \"emissionLarge\" === iFrameModel.value);\nconst isTypeEmission = computed(() => {\n return (\n isEmission.value ||\n isLargeEmission.value ||\n \"EMISSION\" === typeCustomPlayer.value\n );\n});\nconst isLiveReadyToRecord = computed(() => {\n if (props.podcast)\n return (\n undefined !== props.podcast.conferenceId &&\n 0 !== props.podcast.conferenceId &&\n props.podcast.processingStatus === \"READY_TO_RECORD\"\n );\n return false;\n});\n\nconst noAd = computed(() => {\n return (\n (props.podcast?.organisation.id !== props.organisationId &&\n \"NO\" === props.podcast?.monetisable) ||\n (\"UNDEFINED\" === props.podcast?.monetisable &&\n \"NO\" === props.podcast?.emission.monetisable)\n );\n});\nconst iFrameSrc = computed(() => {\n if (\"video\" === iFrameModel.value) {\n return (\n \"https://www.ultimedia.com/deliver/generic/iframe/mdtk/01009833/zone/1/showtitle/1/src/\" +\n props.podcast?.video?.videoId +\n \"/sound/true\"\n );\n }\n let url = [\"\"];\n const iFrameNumber =\n displayChoiceAllEpisodes.value && \"all\" === episodeChoiceDisplay.value\n ? \"/0\"\n : \"/\" + episodesNumber.value;\n url.push(`${apiStore.miniplayerUrl}miniplayer/`);\n if (!props.podcast && !props.playlist && props.emission) {\n url = constructEmissionUrl(url);\n } else if (props.playlist) {\n url = constructPlaylistUrl(url);\n } else if (props.emission && props.podcast) {\n url.push(`${iFrameModel.value}/`);\n if (isTypeEmission.value) {\n url.push(\n `${props.emission.emissionId}${iFrameNumber}/${props.podcast.podcastId}`,\n );\n } else {\n url.push(`${props.podcast.podcastId}`);\n }\n }\n\n return addUrlParameters(url).join(\"\");\n});\nconst iFrameHeight = computed(() => {\n switch (iFrameModel.value) {\n case \"video\":\n return \"281px\";\n case \"large\":\n if (props.podcast) return \"140px\";\n return \"350px\";\n case \"largeMore\":\n return \"210px\";\n case \"emissionLarge\":\n return \"350px\";\n case \"emission\":\n return \"540px\";\n case \"videoLive\":\n return \"450px\";\n default:\n return \"540px\";\n }\n});\nconst iFrame = computed(() => {\n const specialDigiteka = props.podcast?.video?.videoId\n ? 'allowfullscreen=\"true\" referrerpolicy=\"no-referrer-when-downgrade\"'\n : \"\";\n return `<iframe src=\"${iFrameSrc.value}\" width=\"100%\" height=\"${iFrameHeight.value}\" frameborder=\"0\" scrolling=\"no\" ${specialDigiteka} allow=\"clipboard-read; clipboard-write; autoplay\"></iframe>`;\n});\nconst dataTitle = computed(() => {\n if (props.podcast) return props.podcast.podcastId;\n if (props.emission) return props.emission.emissionId;\n if (props.playlist) return props.playlist.playlistId;\n return 0;\n});\n\n\nonBeforeMount(()=>initSharePlayer())\n\n\n//Methods\nasync function initSharePlayer() {\n orgaAttributes.value = await saveFetchStore.getOrgaAttributes(authStore.authOrgaId ?? \"\");\n initColor();\n if (isLiveReadyToRecord.value) {\n iFrameModel.value = \"large\";\n }\n if (\"true\" === props.podcast?.annotations?.[\"fromTTS\"]) {\n displayTranscript.value = false;\n }\n}\nfunction getIframeNumber(): string {\n return displayChoiceAllEpisodes.value && \"all\" === episodeChoiceDisplay.value\n ? \"/0\"\n : \"/\" + episodesNumber.value;\n}\nfunction constructEmissionUrl(url: Array<string>) {\n if (!props.emission) {\n return [];\n }\n switch (iFrameModel.value) {\n case \"default\":\n url.push(\"emission\");\n break;\n case \"large\":\n url.push(\"emissionLarge\");\n break;\n default:\n url.push(`${iFrameModel.value}`);\n break;\n }\n url.push(`/${props.emission.emissionId}${getIframeNumber()}`);\n return url;\n}\nfunction constructPlaylistUrl(url: Array<string>) {\n if (!props.playlist) {\n return [];\n }\n switch (iFrameModel.value) {\n case \"default\":\n url.push(\"playlist\");\n break;\n case \"large\":\n url.push(\"playlistLarge\");\n break;\n default:\n url.push(`${iFrameModel.value}`);\n break;\n }\n url.push(`/${props.playlist.playlistId}`);\n return url;\n}\nfunction addUrlParameters(url: Array<string>) {\n url.push(\"?distributorId=\" + props.organisationId);\n url.push(\n `&color=${color.value.substring(1)}&theme=${theme.value.substring(1)}`,\n );\n if (!displayArticle.value && displayArticleParam.value) {\n url.push(\"&article=false\");\n }\n if (!displayTranscript.value) {\n url.push(\"&transcript=false\");\n }\n if (!displayWave.value) {\n url.push(\"&wave=false\");\n }\n if (playerAutoPlay.value) {\n url.push(\"&autoplay=true\");\n }\n if (isVisible.value) {\n url.push(\"&key=\" + window.btoa(dataTitle.value.toString()));\n }\n if (insertCode.value) {\n url.push(\"&insertCode=true\");\n }\n if (autoHeight.value) {\n url.push(\"&autoHeight=true\");\n }\n return url;\n}\nfunction initColor(): void {\n if (!orgaAttributes.value) {\n return;\n }\n color.value = Object.hasOwn(orgaAttributes.value, \"COLOR\")\n ? (orgaAttributes.value.COLOR as string)\n : \"#40a372\";\n theme.value = Object.hasOwn(orgaAttributes.value, \"THEME\")\n ? (orgaAttributes.value.THEME as string)\n : \"#ffffff\";\n}\n</script>\n\n<style lang=\"scss\">\n\n@use \"../../../style/iframe\";\n\n.octopus-app {\n .sticker {\n align-self: center;\n background: var(--octopus-primary);\n padding: 0.5rem;\n transition: all 0.5s ease;\n color: white;\n font-weight: bold;\n letter-spacing: 1px;\n box-shadow: 10px 10px 34px -15px var(--octopus-shadow);\n border-radius: 255px 15px 225px 15px/15px 225px 15px 255px;\n border: solid 2px var(--octopus-gray-text);\n\n &:hover {\n box-shadow: 2px 8px 4px -6px var(--octopus-shadow);\n background: transparent;\n color: var(--octopus-primary);\n }\n }\n}\n</style>\n"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as e } from "./rolldown-runtime-Dy4uBu1J.mjs";
|
|
2
|
-
import {
|
|
2
|
+
import { E as t, i as n, k as ee } from "./classicApi-CGipMqf7.mjs";
|
|
3
3
|
import { t as te } from "./GeneralStore-Darfv4af.mjs";
|
|
4
4
|
import { computed as r, createBlock as ne, createCommentVNode as i, createElementBlock as a, createElementVNode as o, createVNode as s, defineAsyncComponent as c, defineComponent as l, onBeforeMount as u, openBlock as d, ref as f, toDisplayString as p, unref as m } from "vue";
|
|
5
5
|
import { useI18n as h } from "vue-i18n";
|
|
@@ -36,7 +36,7 @@ var g = { class: "module-box overflow-visible" }, re = { class: "d-flex justify-
|
|
|
36
36
|
}
|
|
37
37
|
},
|
|
38
38
|
setup(e) {
|
|
39
|
-
let l = c(() => import("./ShareModalPlayer-
|
|
39
|
+
let l = c(() => import("./ShareModalPlayer-Cfnk68-U.mjs")), y = c(() => import("./PlayerParameters-kVBMXQIb.mjs")), b = c(() => import("./SharePlayerTypes-DyrqFDVJ.mjs")), x = c(() => import("./SharePlayerColors-BpdifsHh.mjs")), S = e, C = f(""), w = f("default"), T = f(!1), E = f("#40a372"), D = f("#000000"), O = f("number"), k = f(3), A = f(!1), j = f(!0), M = f(!0), N = f(!1), P = f(!1), F = f(!1), I = f(!1), L = f(void 0), { t: R } = h(), z = n(), B = ee(), V = te(), H = t(), U = r(() => z.authOrgaId !== void 0), W = r(() => w.value === "default" || w.value === "emission"), le = r(() => q.value || G.value), G = r(() => S.podcast !== void 0 && !S.podcast.availability.visibility && !Y.value), K = r(() => S.podcast !== void 0 && S.podcast.article !== void 0 && S.podcast.article.length !== 0 && (w.value === "default" || w.value === "large" || w.value === "largeMore")), ue = r(() => {
|
|
40
40
|
let e = "";
|
|
41
41
|
return S.podcast && (e = S.podcast.organisation.id), S.emission && (e = S.emission.orga.id), S.playlist && (e = S.playlist.organisation?.id ?? ""), e === z.authOrgaId;
|
|
42
42
|
}), de = r(() => fe.value && (pe.value || J.value)), fe = r(() => L.value && L.value && Object.hasOwn(L.value, "speechtotext.active") ? L.value["speechtotext.active"] : !1), q = r(() => !S.podcast || Y.value), pe = r(() => w.value === "default"), J = r(() => w.value === "emission"), me = r(() => w.value === "emissionLarge"), Y = r(() => J.value || me.value || C.value === "EMISSION"), X = r(() => S.podcast ? S.podcast.conferenceId !== void 0 && S.podcast.conferenceId !== 0 && S.podcast.processingStatus === "READY_TO_RECORD" : !1), he = r(() => S.podcast?.organisation.id !== S.organisationId && S.podcast?.monetisable === "NO" || S.podcast?.monetisable === "UNDEFINED" && S.podcast?.emission.monetisable === "NO"), Z = r(() => {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SharePlayer-CNXrUj8M.mjs","names":["_openBlock","_createElementBlock","_createElementVNode","_toDisplayString","_createCommentVNode","_createVNode","_createBlock","_sfc_main"],"sources":["../src/components/display/sharing/SharePlayer.vue","../src/components/display/sharing/SharePlayer.vue"],"sourcesContent":["<template>\n <section class=\"module-box overflow-visible\">\n <div class=\"d-flex justify-content-between align-items-center\">\n <h3 class=\"mb-3\">\n {{ t(\"Embed\") }}\n </h3>\n <div\n v-if=\"noAd && !generalStore.platformEducation\"\n class=\"sticker\"\n :title=\"t('You cannot insert advertising')\"\n >\n {{ t(\"No advertising\") }}\n </div>\n </div>\n <template v-if=\"!exclusive && (authenticated || notExclusive)\">\n <div class=\"d-flex\">\n <iframe\n id=\"miniplayerIframe\"\n title=\"Miniplayer\"\n allowfullscreen=\"true\"\n allow=\"clipboard-read; clipboard-write; autoplay\"\n referrerpolicy=\"no-referrer-when-downgrade\"\n frameborder=\"0\"\n :src=\"iFrameSrc\"\n width=\"100%\"\n :height=\"iFrameHeight\"\n class=\"max-iframe mx-3\"\n />\n <div class=\"d-flex flex-column flex-grow-1\">\n <SharePlayerTypes\n v-model:i-frame-model=\"iFrameModel\"\n v-model:type-custom-player=\"typeCustomPlayer\"\n :podcast=\"podcast\"\n :emission=\"emission\"\n :playlist=\"playlist\"\n :organisation-id=\"organisationId\"\n :is-live=\"isLiveReadyToRecord\"\n />\n <SharePlayerColors\n v-model:color=\"color\"\n v-model:theme=\"theme\"\n class=\"mt-3\"\n />\n <PlayerParameters\n v-model:display-article=\"displayArticle\"\n v-model:display-transcript=\"displayTranscript\"\n v-model:display-wave=\"displayWave\"\n v-model:is-visible=\"isVisible\"\n v-model:player-auto-play=\"playerAutoPlay\"\n v-model:episodes-number=\"episodesNumber\"\n v-model:insert-code=\"insertCode\"\n v-model:auto-height=\"autoHeight\"\n :display-is-visible=\"displayIsVisible\"\n :is-podcast-not-visible=\"isPodcastNotVisible\"\n :chose-number-episode=\"displayChoiceAllEpisodes\"\n :display-choice-all-episodes=\"displayChoiceAllEpisodes\"\n :display-transcript-param=\"displayTranscriptParam\"\n :display-article-param=\"displayArticleParam\"\n :display-wave-param=\"displayWaveParam\"\n :display-insert-code=\"displayInsertCode\"\n :display-auto-height=\"iFrameModel.toLowerCase().includes('large')\"\n @episode-choice-display=\"episodeChoiceDisplay = $event\"\n />\n\n <ShareModalPlayer\n v-if=\"isShareModal\"\n :embed-link=\"iFrame\"\n :embedly-link=\"iFrameSrc\"\n :direct-link=\"podcast\"\n @close=\"isShareModal = false\"\n />\n <button\n class=\"btn btn-primary w-fit-content mt-3\"\n @click=\"isShareModal = true\"\n >\n {{ t(\"Share the player\") }}\n </button>\n </div>\n </div>\n </template>\n <div v-else-if=\"exclusive && authenticated\">\n {{ t(\"Only organisation members can share the content\") }}\n </div>\n <div v-else-if=\"!authenticated\">\n {{ t(\"Only authenticated members can share the content\") }}\n </div>\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { Podcast } from \"@/stores/class/general/podcast\";\nimport { Emission } from \"@/stores/class/general/emission\";\nimport { Playlist } from \"@/stores/class/general/playlist\";\nimport { useAuthStore } from \"../../../stores/AuthStore\";\nimport { useApiStore } from \"../../../stores/ApiStore\";\nimport { useSaveFetchStore } from \"../../../stores/SaveFetchStore\";\nimport { defineAsyncComponent, ref, Ref, computed, onBeforeMount } from \"vue\";\nimport { useGeneralStore } from \"../../../stores/GeneralStore\";\nimport { useI18n } from \"vue-i18n\";\nconst ShareModalPlayer = defineAsyncComponent(\n () => import(\"../../misc/modal/ShareModalPlayer.vue\"),\n);\nconst PlayerParameters = defineAsyncComponent(\n () => import(\"./PlayerParameters.vue\"),\n);\nconst SharePlayerTypes = defineAsyncComponent(\n () => import(\"./SharePlayerTypes.vue\"),\n);\nconst SharePlayerColors = defineAsyncComponent(\n () => import(\"./SharePlayerColors.vue\"),\n);\n\n\n//Props \nconst props = defineProps({\n podcast: { default: undefined, type: Object as () => Podcast },\n emission: { default: undefined, type: Object as () => Emission },\n playlist: { default: undefined, type: Object as () => Playlist },\n organisationId: { default: undefined, type: String },\n exclusive: { default: false, type: Boolean },\n notExclusive: { default: true, type: Boolean },\n})\n\n//Data \nconst typeCustomPlayer = ref(\"\");\nconst iFrameModel = ref(\"default\");\nconst isShareModal = ref(false);\nconst color = ref(\"#40a372\");\nconst theme = ref(\"#000000\");\nconst episodeChoiceDisplay = ref(\"number\");\nconst episodesNumber = ref(3);\nconst isVisible = ref(false);\nconst displayArticle = ref(true);\nconst displayTranscript = ref(true);\nconst displayWave = ref(false);\nconst playerAutoPlay = ref(false);\nconst insertCode = ref(false);\nconst autoHeight = ref(false);\nconst orgaAttributes : Ref<{ [key: string]: string | number | boolean | undefined }| undefined>= ref(undefined);\n\n\n//Composables\nconst { t } = useI18n();\nconst authStore = useAuthStore();\nconst apiStore = useApiStore();\nconst generalStore = useGeneralStore();\nconst saveFetchStore = useSaveFetchStore();\n\n\n//Computed\nconst authenticated = computed(() => undefined !== authStore.authOrgaId);\nconst displayWaveParam = computed(() => \"default\" === iFrameModel.value || \"emission\" === iFrameModel.value);\nconst displayIsVisible = computed(() => displayChoiceAllEpisodes.value || isPodcastNotVisible.value);\nconst isPodcastNotVisible = computed(() => {\n return (\n undefined !== props.podcast &&\n !props.podcast.availability.visibility &&\n !isTypeEmission.value\n );\n});\nconst displayArticleParam = computed(() => {\n return (\n undefined !== props.podcast &&\n undefined !== props.podcast.article &&\n 0 !== props.podcast.article.length &&\n (\"default\" === iFrameModel.value ||\n \"large\" === iFrameModel.value ||\n \"largeMore\" === iFrameModel.value)\n );\n});\nconst displayInsertCode = computed(() => {\n let orgaResourceId = \"\";\n if (props.podcast) {\n orgaResourceId = props.podcast.organisation.id;\n }\n if (props.emission) {\n orgaResourceId = props.emission.orga.id;\n }\n if (props.playlist) {\n orgaResourceId = props.playlist.organisation?.id ?? \"\";\n }\n return orgaResourceId === authStore.authOrgaId;\n});\nconst displayTranscriptParam = computed(() => isTranscriptionAuthorize.value && (isDefault.value || isEmission.value));\nconst isTranscriptionAuthorize = computed(() => {\n if (!orgaAttributes.value) {\n return false;\n }\n return orgaAttributes.value &&\n Object.hasOwn(orgaAttributes.value, \"speechtotext.active\")\n ? (orgaAttributes.value[\"speechtotext.active\"] as boolean)\n : false;\n});\nconst displayChoiceAllEpisodes = computed(() => !props.podcast || isTypeEmission.value);\nconst isDefault = computed(() => \"default\" === iFrameModel.value);\nconst isEmission = computed(() => \"emission\" === iFrameModel.value);\nconst isLargeEmission = computed(() => \"emissionLarge\" === iFrameModel.value);\nconst isTypeEmission = computed(() => {\n return (\n isEmission.value ||\n isLargeEmission.value ||\n \"EMISSION\" === typeCustomPlayer.value\n );\n});\nconst isLiveReadyToRecord = computed(() => {\n if (props.podcast)\n return (\n undefined !== props.podcast.conferenceId &&\n 0 !== props.podcast.conferenceId &&\n props.podcast.processingStatus === \"READY_TO_RECORD\"\n );\n return false;\n});\n\nconst noAd = computed(() => {\n return (\n (props.podcast?.organisation.id !== props.organisationId &&\n \"NO\" === props.podcast?.monetisable) ||\n (\"UNDEFINED\" === props.podcast?.monetisable &&\n \"NO\" === props.podcast?.emission.monetisable)\n );\n});\nconst iFrameSrc = computed(() => {\n if (\"video\" === iFrameModel.value) {\n return (\n \"https://www.ultimedia.com/deliver/generic/iframe/mdtk/01009833/zone/1/showtitle/1/src/\" +\n props.podcast?.video?.videoId +\n \"/sound/true\"\n );\n }\n let url = [\"\"];\n const iFrameNumber =\n displayChoiceAllEpisodes.value && \"all\" === episodeChoiceDisplay.value\n ? \"/0\"\n : \"/\" + episodesNumber.value;\n url.push(`${apiStore.miniplayerUrl}miniplayer/`);\n if (!props.podcast && !props.playlist && props.emission) {\n url = constructEmissionUrl(url);\n } else if (props.playlist) {\n url = constructPlaylistUrl(url);\n } else if (props.emission && props.podcast) {\n url.push(`${iFrameModel.value}/`);\n if (isTypeEmission.value) {\n url.push(\n `${props.emission.emissionId}${iFrameNumber}/${props.podcast.podcastId}`,\n );\n } else {\n url.push(`${props.podcast.podcastId}`);\n }\n }\n\n return addUrlParameters(url).join(\"\");\n});\nconst iFrameHeight = computed(() => {\n switch (iFrameModel.value) {\n case \"video\":\n return \"281px\";\n case \"large\":\n if (props.podcast) return \"140px\";\n return \"350px\";\n case \"largeMore\":\n return \"210px\";\n case \"emissionLarge\":\n return \"350px\";\n case \"emission\":\n return \"540px\";\n case \"videoLive\":\n return \"450px\";\n default:\n return \"540px\";\n }\n});\nconst iFrame = computed(() => {\n const specialDigiteka = props.podcast?.video?.videoId\n ? 'allowfullscreen=\"true\" referrerpolicy=\"no-referrer-when-downgrade\"'\n : \"\";\n return `<iframe src=\"${iFrameSrc.value}\" width=\"100%\" height=\"${iFrameHeight.value}\" frameborder=\"0\" scrolling=\"no\" ${specialDigiteka} allow=\"clipboard-read; clipboard-write; autoplay\"></iframe>`;\n});\nconst dataTitle = computed(() => {\n if (props.podcast) return props.podcast.podcastId;\n if (props.emission) return props.emission.emissionId;\n if (props.playlist) return props.playlist.playlistId;\n return 0;\n});\n\n\nonBeforeMount(()=>initSharePlayer())\n\n\n//Methods\nasync function initSharePlayer() {\n orgaAttributes.value = await saveFetchStore.getOrgaAttributes(authStore.authOrgaId ?? \"\");\n initColor();\n if (isLiveReadyToRecord.value) {\n iFrameModel.value = \"large\";\n }\n if (\"true\" === props.podcast?.annotations?.[\"fromTTS\"]) {\n displayTranscript.value = false;\n }\n}\nfunction getIframeNumber(): string {\n return displayChoiceAllEpisodes.value && \"all\" === episodeChoiceDisplay.value\n ? \"/0\"\n : \"/\" + episodesNumber.value;\n}\nfunction constructEmissionUrl(url: Array<string>) {\n if (!props.emission) {\n return [];\n }\n switch (iFrameModel.value) {\n case \"default\":\n url.push(\"emission\");\n break;\n case \"large\":\n url.push(\"emissionLarge\");\n break;\n default:\n url.push(`${iFrameModel.value}`);\n break;\n }\n url.push(`/${props.emission.emissionId}${getIframeNumber()}`);\n return url;\n}\nfunction constructPlaylistUrl(url: Array<string>) {\n if (!props.playlist) {\n return [];\n }\n switch (iFrameModel.value) {\n case \"default\":\n url.push(\"playlist\");\n break;\n case \"large\":\n url.push(\"playlistLarge\");\n break;\n default:\n url.push(`${iFrameModel.value}`);\n break;\n }\n url.push(`/${props.playlist.playlistId}`);\n return url;\n}\nfunction addUrlParameters(url: Array<string>) {\n url.push(\"?distributorId=\" + props.organisationId);\n url.push(\n `&color=${color.value.substring(1)}&theme=${theme.value.substring(1)}`,\n );\n if (!displayArticle.value && displayArticleParam.value) {\n url.push(\"&article=false\");\n }\n if (!displayTranscript.value) {\n url.push(\"&transcript=false\");\n }\n if (!displayWave.value) {\n url.push(\"&wave=false\");\n }\n if (playerAutoPlay.value) {\n url.push(\"&autoplay=true\");\n }\n if (isVisible.value) {\n url.push(\"&key=\" + window.btoa(dataTitle.value.toString()));\n }\n if (insertCode.value) {\n url.push(\"&insertCode=true\");\n }\n if (autoHeight.value) {\n url.push(\"&autoHeight=true\");\n }\n return url;\n}\nfunction initColor(): void {\n if (!orgaAttributes.value) {\n return;\n }\n color.value = Object.hasOwn(orgaAttributes.value, \"COLOR\")\n ? (orgaAttributes.value.COLOR as string)\n : \"#40a372\";\n theme.value = Object.hasOwn(orgaAttributes.value, \"THEME\")\n ? (orgaAttributes.value.THEME as string)\n : \"#ffffff\";\n}\n</script>\n\n<style lang=\"scss\">\n\n@use \"../../../style/iframe\";\n\n.octopus-app {\n .sticker {\n align-self: center;\n background: var(--octopus-primary);\n padding: 0.5rem;\n transition: all 0.5s ease;\n color: white;\n font-weight: bold;\n letter-spacing: 1px;\n box-shadow: 10px 10px 34px -15px var(--octopus-shadow);\n border-radius: 255px 15px 225px 15px/15px 225px 15px 255px;\n border: solid 2px var(--octopus-gray-text);\n\n &:hover {\n box-shadow: 2px 8px 4px -6px var(--octopus-shadow);\n background: transparent;\n color: var(--octopus-primary);\n }\n }\n}\n</style>\n","<template>\n <section class=\"module-box overflow-visible\">\n <div class=\"d-flex justify-content-between align-items-center\">\n <h3 class=\"mb-3\">\n {{ t(\"Embed\") }}\n </h3>\n <div\n v-if=\"noAd && !generalStore.platformEducation\"\n class=\"sticker\"\n :title=\"t('You cannot insert advertising')\"\n >\n {{ t(\"No advertising\") }}\n </div>\n </div>\n <template v-if=\"!exclusive && (authenticated || notExclusive)\">\n <div class=\"d-flex\">\n <iframe\n id=\"miniplayerIframe\"\n title=\"Miniplayer\"\n allowfullscreen=\"true\"\n allow=\"clipboard-read; clipboard-write; autoplay\"\n referrerpolicy=\"no-referrer-when-downgrade\"\n frameborder=\"0\"\n :src=\"iFrameSrc\"\n width=\"100%\"\n :height=\"iFrameHeight\"\n class=\"max-iframe mx-3\"\n />\n <div class=\"d-flex flex-column flex-grow-1\">\n <SharePlayerTypes\n v-model:i-frame-model=\"iFrameModel\"\n v-model:type-custom-player=\"typeCustomPlayer\"\n :podcast=\"podcast\"\n :emission=\"emission\"\n :playlist=\"playlist\"\n :organisation-id=\"organisationId\"\n :is-live=\"isLiveReadyToRecord\"\n />\n <SharePlayerColors\n v-model:color=\"color\"\n v-model:theme=\"theme\"\n class=\"mt-3\"\n />\n <PlayerParameters\n v-model:display-article=\"displayArticle\"\n v-model:display-transcript=\"displayTranscript\"\n v-model:display-wave=\"displayWave\"\n v-model:is-visible=\"isVisible\"\n v-model:player-auto-play=\"playerAutoPlay\"\n v-model:episodes-number=\"episodesNumber\"\n v-model:insert-code=\"insertCode\"\n v-model:auto-height=\"autoHeight\"\n :display-is-visible=\"displayIsVisible\"\n :is-podcast-not-visible=\"isPodcastNotVisible\"\n :chose-number-episode=\"displayChoiceAllEpisodes\"\n :display-choice-all-episodes=\"displayChoiceAllEpisodes\"\n :display-transcript-param=\"displayTranscriptParam\"\n :display-article-param=\"displayArticleParam\"\n :display-wave-param=\"displayWaveParam\"\n :display-insert-code=\"displayInsertCode\"\n :display-auto-height=\"iFrameModel.toLowerCase().includes('large')\"\n @episode-choice-display=\"episodeChoiceDisplay = $event\"\n />\n\n <ShareModalPlayer\n v-if=\"isShareModal\"\n :embed-link=\"iFrame\"\n :embedly-link=\"iFrameSrc\"\n :direct-link=\"podcast\"\n @close=\"isShareModal = false\"\n />\n <button\n class=\"btn btn-primary w-fit-content mt-3\"\n @click=\"isShareModal = true\"\n >\n {{ t(\"Share the player\") }}\n </button>\n </div>\n </div>\n </template>\n <div v-else-if=\"exclusive && authenticated\">\n {{ t(\"Only organisation members can share the content\") }}\n </div>\n <div v-else-if=\"!authenticated\">\n {{ t(\"Only authenticated members can share the content\") }}\n </div>\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { Podcast } from \"@/stores/class/general/podcast\";\nimport { Emission } from \"@/stores/class/general/emission\";\nimport { Playlist } from \"@/stores/class/general/playlist\";\nimport { useAuthStore } from \"../../../stores/AuthStore\";\nimport { useApiStore } from \"../../../stores/ApiStore\";\nimport { useSaveFetchStore } from \"../../../stores/SaveFetchStore\";\nimport { defineAsyncComponent, ref, Ref, computed, onBeforeMount } from \"vue\";\nimport { useGeneralStore } from \"../../../stores/GeneralStore\";\nimport { useI18n } from \"vue-i18n\";\nconst ShareModalPlayer = defineAsyncComponent(\n () => import(\"../../misc/modal/ShareModalPlayer.vue\"),\n);\nconst PlayerParameters = defineAsyncComponent(\n () => import(\"./PlayerParameters.vue\"),\n);\nconst SharePlayerTypes = defineAsyncComponent(\n () => import(\"./SharePlayerTypes.vue\"),\n);\nconst SharePlayerColors = defineAsyncComponent(\n () => import(\"./SharePlayerColors.vue\"),\n);\n\n\n//Props \nconst props = defineProps({\n podcast: { default: undefined, type: Object as () => Podcast },\n emission: { default: undefined, type: Object as () => Emission },\n playlist: { default: undefined, type: Object as () => Playlist },\n organisationId: { default: undefined, type: String },\n exclusive: { default: false, type: Boolean },\n notExclusive: { default: true, type: Boolean },\n})\n\n//Data \nconst typeCustomPlayer = ref(\"\");\nconst iFrameModel = ref(\"default\");\nconst isShareModal = ref(false);\nconst color = ref(\"#40a372\");\nconst theme = ref(\"#000000\");\nconst episodeChoiceDisplay = ref(\"number\");\nconst episodesNumber = ref(3);\nconst isVisible = ref(false);\nconst displayArticle = ref(true);\nconst displayTranscript = ref(true);\nconst displayWave = ref(false);\nconst playerAutoPlay = ref(false);\nconst insertCode = ref(false);\nconst autoHeight = ref(false);\nconst orgaAttributes : Ref<{ [key: string]: string | number | boolean | undefined }| undefined>= ref(undefined);\n\n\n//Composables\nconst { t } = useI18n();\nconst authStore = useAuthStore();\nconst apiStore = useApiStore();\nconst generalStore = useGeneralStore();\nconst saveFetchStore = useSaveFetchStore();\n\n\n//Computed\nconst authenticated = computed(() => undefined !== authStore.authOrgaId);\nconst displayWaveParam = computed(() => \"default\" === iFrameModel.value || \"emission\" === iFrameModel.value);\nconst displayIsVisible = computed(() => displayChoiceAllEpisodes.value || isPodcastNotVisible.value);\nconst isPodcastNotVisible = computed(() => {\n return (\n undefined !== props.podcast &&\n !props.podcast.availability.visibility &&\n !isTypeEmission.value\n );\n});\nconst displayArticleParam = computed(() => {\n return (\n undefined !== props.podcast &&\n undefined !== props.podcast.article &&\n 0 !== props.podcast.article.length &&\n (\"default\" === iFrameModel.value ||\n \"large\" === iFrameModel.value ||\n \"largeMore\" === iFrameModel.value)\n );\n});\nconst displayInsertCode = computed(() => {\n let orgaResourceId = \"\";\n if (props.podcast) {\n orgaResourceId = props.podcast.organisation.id;\n }\n if (props.emission) {\n orgaResourceId = props.emission.orga.id;\n }\n if (props.playlist) {\n orgaResourceId = props.playlist.organisation?.id ?? \"\";\n }\n return orgaResourceId === authStore.authOrgaId;\n});\nconst displayTranscriptParam = computed(() => isTranscriptionAuthorize.value && (isDefault.value || isEmission.value));\nconst isTranscriptionAuthorize = computed(() => {\n if (!orgaAttributes.value) {\n return false;\n }\n return orgaAttributes.value &&\n Object.hasOwn(orgaAttributes.value, \"speechtotext.active\")\n ? (orgaAttributes.value[\"speechtotext.active\"] as boolean)\n : false;\n});\nconst displayChoiceAllEpisodes = computed(() => !props.podcast || isTypeEmission.value);\nconst isDefault = computed(() => \"default\" === iFrameModel.value);\nconst isEmission = computed(() => \"emission\" === iFrameModel.value);\nconst isLargeEmission = computed(() => \"emissionLarge\" === iFrameModel.value);\nconst isTypeEmission = computed(() => {\n return (\n isEmission.value ||\n isLargeEmission.value ||\n \"EMISSION\" === typeCustomPlayer.value\n );\n});\nconst isLiveReadyToRecord = computed(() => {\n if (props.podcast)\n return (\n undefined !== props.podcast.conferenceId &&\n 0 !== props.podcast.conferenceId &&\n props.podcast.processingStatus === \"READY_TO_RECORD\"\n );\n return false;\n});\n\nconst noAd = computed(() => {\n return (\n (props.podcast?.organisation.id !== props.organisationId &&\n \"NO\" === props.podcast?.monetisable) ||\n (\"UNDEFINED\" === props.podcast?.monetisable &&\n \"NO\" === props.podcast?.emission.monetisable)\n );\n});\nconst iFrameSrc = computed(() => {\n if (\"video\" === iFrameModel.value) {\n return (\n \"https://www.ultimedia.com/deliver/generic/iframe/mdtk/01009833/zone/1/showtitle/1/src/\" +\n props.podcast?.video?.videoId +\n \"/sound/true\"\n );\n }\n let url = [\"\"];\n const iFrameNumber =\n displayChoiceAllEpisodes.value && \"all\" === episodeChoiceDisplay.value\n ? \"/0\"\n : \"/\" + episodesNumber.value;\n url.push(`${apiStore.miniplayerUrl}miniplayer/`);\n if (!props.podcast && !props.playlist && props.emission) {\n url = constructEmissionUrl(url);\n } else if (props.playlist) {\n url = constructPlaylistUrl(url);\n } else if (props.emission && props.podcast) {\n url.push(`${iFrameModel.value}/`);\n if (isTypeEmission.value) {\n url.push(\n `${props.emission.emissionId}${iFrameNumber}/${props.podcast.podcastId}`,\n );\n } else {\n url.push(`${props.podcast.podcastId}`);\n }\n }\n\n return addUrlParameters(url).join(\"\");\n});\nconst iFrameHeight = computed(() => {\n switch (iFrameModel.value) {\n case \"video\":\n return \"281px\";\n case \"large\":\n if (props.podcast) return \"140px\";\n return \"350px\";\n case \"largeMore\":\n return \"210px\";\n case \"emissionLarge\":\n return \"350px\";\n case \"emission\":\n return \"540px\";\n case \"videoLive\":\n return \"450px\";\n default:\n return \"540px\";\n }\n});\nconst iFrame = computed(() => {\n const specialDigiteka = props.podcast?.video?.videoId\n ? 'allowfullscreen=\"true\" referrerpolicy=\"no-referrer-when-downgrade\"'\n : \"\";\n return `<iframe src=\"${iFrameSrc.value}\" width=\"100%\" height=\"${iFrameHeight.value}\" frameborder=\"0\" scrolling=\"no\" ${specialDigiteka} allow=\"clipboard-read; clipboard-write; autoplay\"></iframe>`;\n});\nconst dataTitle = computed(() => {\n if (props.podcast) return props.podcast.podcastId;\n if (props.emission) return props.emission.emissionId;\n if (props.playlist) return props.playlist.playlistId;\n return 0;\n});\n\n\nonBeforeMount(()=>initSharePlayer())\n\n\n//Methods\nasync function initSharePlayer() {\n orgaAttributes.value = await saveFetchStore.getOrgaAttributes(authStore.authOrgaId ?? \"\");\n initColor();\n if (isLiveReadyToRecord.value) {\n iFrameModel.value = \"large\";\n }\n if (\"true\" === props.podcast?.annotations?.[\"fromTTS\"]) {\n displayTranscript.value = false;\n }\n}\nfunction getIframeNumber(): string {\n return displayChoiceAllEpisodes.value && \"all\" === episodeChoiceDisplay.value\n ? \"/0\"\n : \"/\" + episodesNumber.value;\n}\nfunction constructEmissionUrl(url: Array<string>) {\n if (!props.emission) {\n return [];\n }\n switch (iFrameModel.value) {\n case \"default\":\n url.push(\"emission\");\n break;\n case \"large\":\n url.push(\"emissionLarge\");\n break;\n default:\n url.push(`${iFrameModel.value}`);\n break;\n }\n url.push(`/${props.emission.emissionId}${getIframeNumber()}`);\n return url;\n}\nfunction constructPlaylistUrl(url: Array<string>) {\n if (!props.playlist) {\n return [];\n }\n switch (iFrameModel.value) {\n case \"default\":\n url.push(\"playlist\");\n break;\n case \"large\":\n url.push(\"playlistLarge\");\n break;\n default:\n url.push(`${iFrameModel.value}`);\n break;\n }\n url.push(`/${props.playlist.playlistId}`);\n return url;\n}\nfunction addUrlParameters(url: Array<string>) {\n url.push(\"?distributorId=\" + props.organisationId);\n url.push(\n `&color=${color.value.substring(1)}&theme=${theme.value.substring(1)}`,\n );\n if (!displayArticle.value && displayArticleParam.value) {\n url.push(\"&article=false\");\n }\n if (!displayTranscript.value) {\n url.push(\"&transcript=false\");\n }\n if (!displayWave.value) {\n url.push(\"&wave=false\");\n }\n if (playerAutoPlay.value) {\n url.push(\"&autoplay=true\");\n }\n if (isVisible.value) {\n url.push(\"&key=\" + window.btoa(dataTitle.value.toString()));\n }\n if (insertCode.value) {\n url.push(\"&insertCode=true\");\n }\n if (autoHeight.value) {\n url.push(\"&autoHeight=true\");\n }\n return url;\n}\nfunction initColor(): void {\n if (!orgaAttributes.value) {\n return;\n }\n color.value = Object.hasOwn(orgaAttributes.value, \"COLOR\")\n ? (orgaAttributes.value.COLOR as string)\n : \"#40a372\";\n theme.value = Object.hasOwn(orgaAttributes.value, \"THEME\")\n ? (orgaAttributes.value.THEME as string)\n : \"#ffffff\";\n}\n</script>\n\n<style lang=\"scss\">\n\n@use \"../../../style/iframe\";\n\n.octopus-app {\n .sticker {\n align-self: center;\n background: var(--octopus-primary);\n padding: 0.5rem;\n transition: all 0.5s ease;\n color: white;\n font-weight: bold;\n letter-spacing: 1px;\n box-shadow: 10px 10px 34px -15px var(--octopus-shadow);\n border-radius: 255px 15px 225px 15px/15px 225px 15px 255px;\n border: solid 2px var(--octopus-gray-text);\n\n &:hover {\n box-shadow: 2px 8px 4px -6px var(--octopus-shadow);\n background: transparent;\n color: var(--octopus-primary);\n }\n }\n}\n</style>\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SharePlayer-D0-qY2dS.mjs","names":["_openBlock","_createElementBlock","_createElementVNode","_toDisplayString","_createCommentVNode","_createVNode","_createBlock","_sfc_main"],"sources":["../src/components/display/sharing/SharePlayer.vue","../src/components/display/sharing/SharePlayer.vue"],"sourcesContent":["<template>\n <section class=\"module-box overflow-visible\">\n <div class=\"d-flex justify-content-between align-items-center\">\n <h3 class=\"mb-3\">\n {{ t(\"Embed\") }}\n </h3>\n <div\n v-if=\"noAd && !generalStore.platformEducation\"\n class=\"sticker\"\n :title=\"t('You cannot insert advertising')\"\n >\n {{ t(\"No advertising\") }}\n </div>\n </div>\n <template v-if=\"!exclusive && (authenticated || notExclusive)\">\n <div class=\"d-flex\">\n <iframe\n id=\"miniplayerIframe\"\n title=\"Miniplayer\"\n allowfullscreen=\"true\"\n allow=\"clipboard-read; clipboard-write; autoplay\"\n referrerpolicy=\"no-referrer-when-downgrade\"\n frameborder=\"0\"\n :src=\"iFrameSrc\"\n width=\"100%\"\n :height=\"iFrameHeight\"\n class=\"max-iframe mx-3\"\n />\n <div class=\"d-flex flex-column flex-grow-1\">\n <SharePlayerTypes\n v-model:i-frame-model=\"iFrameModel\"\n v-model:type-custom-player=\"typeCustomPlayer\"\n :podcast=\"podcast\"\n :emission=\"emission\"\n :playlist=\"playlist\"\n :organisation-id=\"organisationId\"\n :is-live=\"isLiveReadyToRecord\"\n />\n <SharePlayerColors\n v-model:color=\"color\"\n v-model:theme=\"theme\"\n class=\"mt-3\"\n />\n <PlayerParameters\n v-model:display-article=\"displayArticle\"\n v-model:display-transcript=\"displayTranscript\"\n v-model:display-wave=\"displayWave\"\n v-model:is-visible=\"isVisible\"\n v-model:player-auto-play=\"playerAutoPlay\"\n v-model:episodes-number=\"episodesNumber\"\n v-model:insert-code=\"insertCode\"\n v-model:auto-height=\"autoHeight\"\n :display-is-visible=\"displayIsVisible\"\n :is-podcast-not-visible=\"isPodcastNotVisible\"\n :chose-number-episode=\"displayChoiceAllEpisodes\"\n :display-choice-all-episodes=\"displayChoiceAllEpisodes\"\n :display-transcript-param=\"displayTranscriptParam\"\n :display-article-param=\"displayArticleParam\"\n :display-wave-param=\"displayWaveParam\"\n :display-insert-code=\"displayInsertCode\"\n :display-auto-height=\"iFrameModel.toLowerCase().includes('large')\"\n @episode-choice-display=\"episodeChoiceDisplay = $event\"\n />\n\n <ShareModalPlayer\n v-if=\"isShareModal\"\n :embed-link=\"iFrame\"\n :embedly-link=\"iFrameSrc\"\n :direct-link=\"podcast\"\n @close=\"isShareModal = false\"\n />\n <button\n class=\"btn btn-primary w-fit-content mt-3\"\n @click=\"isShareModal = true\"\n >\n {{ t(\"Share the player\") }}\n </button>\n </div>\n </div>\n </template>\n <div v-else-if=\"exclusive && authenticated\">\n {{ t(\"Only organisation members can share the content\") }}\n </div>\n <div v-else-if=\"!authenticated\">\n {{ t(\"Only authenticated members can share the content\") }}\n </div>\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { Podcast } from \"@/stores/class/general/podcast\";\nimport { Emission } from \"@/stores/class/general/emission\";\nimport { Playlist } from \"@/stores/class/general/playlist\";\nimport { useAuthStore } from \"../../../stores/AuthStore\";\nimport { useApiStore } from \"../../../stores/ApiStore\";\nimport { useSaveFetchStore } from \"../../../stores/SaveFetchStore\";\nimport { defineAsyncComponent, ref, Ref, computed, onBeforeMount } from \"vue\";\nimport { useGeneralStore } from \"../../../stores/GeneralStore\";\nimport { useI18n } from \"vue-i18n\";\nconst ShareModalPlayer = defineAsyncComponent(\n () => import(\"../../misc/modal/ShareModalPlayer.vue\"),\n);\nconst PlayerParameters = defineAsyncComponent(\n () => import(\"./PlayerParameters.vue\"),\n);\nconst SharePlayerTypes = defineAsyncComponent(\n () => import(\"./SharePlayerTypes.vue\"),\n);\nconst SharePlayerColors = defineAsyncComponent(\n () => import(\"./SharePlayerColors.vue\"),\n);\n\n\n//Props \nconst props = defineProps({\n podcast: { default: undefined, type: Object as () => Podcast },\n emission: { default: undefined, type: Object as () => Emission },\n playlist: { default: undefined, type: Object as () => Playlist },\n organisationId: { default: undefined, type: String },\n exclusive: { default: false, type: Boolean },\n notExclusive: { default: true, type: Boolean },\n})\n\n//Data \nconst typeCustomPlayer = ref(\"\");\nconst iFrameModel = ref(\"default\");\nconst isShareModal = ref(false);\nconst color = ref(\"#40a372\");\nconst theme = ref(\"#000000\");\nconst episodeChoiceDisplay = ref(\"number\");\nconst episodesNumber = ref(3);\nconst isVisible = ref(false);\nconst displayArticle = ref(true);\nconst displayTranscript = ref(true);\nconst displayWave = ref(false);\nconst playerAutoPlay = ref(false);\nconst insertCode = ref(false);\nconst autoHeight = ref(false);\nconst orgaAttributes : Ref<{ [key: string]: string | number | boolean | undefined }| undefined>= ref(undefined);\n\n\n//Composables\nconst { t } = useI18n();\nconst authStore = useAuthStore();\nconst apiStore = useApiStore();\nconst generalStore = useGeneralStore();\nconst saveFetchStore = useSaveFetchStore();\n\n\n//Computed\nconst authenticated = computed(() => undefined !== authStore.authOrgaId);\nconst displayWaveParam = computed(() => \"default\" === iFrameModel.value || \"emission\" === iFrameModel.value);\nconst displayIsVisible = computed(() => displayChoiceAllEpisodes.value || isPodcastNotVisible.value);\nconst isPodcastNotVisible = computed(() => {\n return (\n undefined !== props.podcast &&\n !props.podcast.availability.visibility &&\n !isTypeEmission.value\n );\n});\nconst displayArticleParam = computed(() => {\n return (\n undefined !== props.podcast &&\n undefined !== props.podcast.article &&\n 0 !== props.podcast.article.length &&\n (\"default\" === iFrameModel.value ||\n \"large\" === iFrameModel.value ||\n \"largeMore\" === iFrameModel.value)\n );\n});\nconst displayInsertCode = computed(() => {\n let orgaResourceId = \"\";\n if (props.podcast) {\n orgaResourceId = props.podcast.organisation.id;\n }\n if (props.emission) {\n orgaResourceId = props.emission.orga.id;\n }\n if (props.playlist) {\n orgaResourceId = props.playlist.organisation?.id ?? \"\";\n }\n return orgaResourceId === authStore.authOrgaId;\n});\nconst displayTranscriptParam = computed(() => isTranscriptionAuthorize.value && (isDefault.value || isEmission.value));\nconst isTranscriptionAuthorize = computed(() => {\n if (!orgaAttributes.value) {\n return false;\n }\n return orgaAttributes.value &&\n Object.hasOwn(orgaAttributes.value, \"speechtotext.active\")\n ? (orgaAttributes.value[\"speechtotext.active\"] as boolean)\n : false;\n});\nconst displayChoiceAllEpisodes = computed(() => !props.podcast || isTypeEmission.value);\nconst isDefault = computed(() => \"default\" === iFrameModel.value);\nconst isEmission = computed(() => \"emission\" === iFrameModel.value);\nconst isLargeEmission = computed(() => \"emissionLarge\" === iFrameModel.value);\nconst isTypeEmission = computed(() => {\n return (\n isEmission.value ||\n isLargeEmission.value ||\n \"EMISSION\" === typeCustomPlayer.value\n );\n});\nconst isLiveReadyToRecord = computed(() => {\n if (props.podcast)\n return (\n undefined !== props.podcast.conferenceId &&\n 0 !== props.podcast.conferenceId &&\n props.podcast.processingStatus === \"READY_TO_RECORD\"\n );\n return false;\n});\n\nconst noAd = computed(() => {\n return (\n (props.podcast?.organisation.id !== props.organisationId &&\n \"NO\" === props.podcast?.monetisable) ||\n (\"UNDEFINED\" === props.podcast?.monetisable &&\n \"NO\" === props.podcast?.emission.monetisable)\n );\n});\nconst iFrameSrc = computed(() => {\n if (\"video\" === iFrameModel.value) {\n return (\n \"https://www.ultimedia.com/deliver/generic/iframe/mdtk/01009833/zone/1/showtitle/1/src/\" +\n props.podcast?.video?.videoId +\n \"/sound/true\"\n );\n }\n let url = [\"\"];\n const iFrameNumber =\n displayChoiceAllEpisodes.value && \"all\" === episodeChoiceDisplay.value\n ? \"/0\"\n : \"/\" + episodesNumber.value;\n url.push(`${apiStore.miniplayerUrl}miniplayer/`);\n if (!props.podcast && !props.playlist && props.emission) {\n url = constructEmissionUrl(url);\n } else if (props.playlist) {\n url = constructPlaylistUrl(url);\n } else if (props.emission && props.podcast) {\n url.push(`${iFrameModel.value}/`);\n if (isTypeEmission.value) {\n url.push(\n `${props.emission.emissionId}${iFrameNumber}/${props.podcast.podcastId}`,\n );\n } else {\n url.push(`${props.podcast.podcastId}`);\n }\n }\n\n return addUrlParameters(url).join(\"\");\n});\nconst iFrameHeight = computed(() => {\n switch (iFrameModel.value) {\n case \"video\":\n return \"281px\";\n case \"large\":\n if (props.podcast) return \"140px\";\n return \"350px\";\n case \"largeMore\":\n return \"210px\";\n case \"emissionLarge\":\n return \"350px\";\n case \"emission\":\n return \"540px\";\n case \"videoLive\":\n return \"450px\";\n default:\n return \"540px\";\n }\n});\nconst iFrame = computed(() => {\n const specialDigiteka = props.podcast?.video?.videoId\n ? 'allowfullscreen=\"true\" referrerpolicy=\"no-referrer-when-downgrade\"'\n : \"\";\n return `<iframe src=\"${iFrameSrc.value}\" width=\"100%\" height=\"${iFrameHeight.value}\" frameborder=\"0\" scrolling=\"no\" ${specialDigiteka} allow=\"clipboard-read; clipboard-write; autoplay\"></iframe>`;\n});\nconst dataTitle = computed(() => {\n if (props.podcast) return props.podcast.podcastId;\n if (props.emission) return props.emission.emissionId;\n if (props.playlist) return props.playlist.playlistId;\n return 0;\n});\n\n\nonBeforeMount(()=>initSharePlayer())\n\n\n//Methods\nasync function initSharePlayer() {\n orgaAttributes.value = await saveFetchStore.getOrgaAttributes(authStore.authOrgaId ?? \"\");\n initColor();\n if (isLiveReadyToRecord.value) {\n iFrameModel.value = \"large\";\n }\n if (\"true\" === props.podcast?.annotations?.[\"fromTTS\"]) {\n displayTranscript.value = false;\n }\n}\nfunction getIframeNumber(): string {\n return displayChoiceAllEpisodes.value && \"all\" === episodeChoiceDisplay.value\n ? \"/0\"\n : \"/\" + episodesNumber.value;\n}\nfunction constructEmissionUrl(url: Array<string>) {\n if (!props.emission) {\n return [];\n }\n switch (iFrameModel.value) {\n case \"default\":\n url.push(\"emission\");\n break;\n case \"large\":\n url.push(\"emissionLarge\");\n break;\n default:\n url.push(`${iFrameModel.value}`);\n break;\n }\n url.push(`/${props.emission.emissionId}${getIframeNumber()}`);\n return url;\n}\nfunction constructPlaylistUrl(url: Array<string>) {\n if (!props.playlist) {\n return [];\n }\n switch (iFrameModel.value) {\n case \"default\":\n url.push(\"playlist\");\n break;\n case \"large\":\n url.push(\"playlistLarge\");\n break;\n default:\n url.push(`${iFrameModel.value}`);\n break;\n }\n url.push(`/${props.playlist.playlistId}`);\n return url;\n}\nfunction addUrlParameters(url: Array<string>) {\n url.push(\"?distributorId=\" + props.organisationId);\n url.push(\n `&color=${color.value.substring(1)}&theme=${theme.value.substring(1)}`,\n );\n if (!displayArticle.value && displayArticleParam.value) {\n url.push(\"&article=false\");\n }\n if (!displayTranscript.value) {\n url.push(\"&transcript=false\");\n }\n if (!displayWave.value) {\n url.push(\"&wave=false\");\n }\n if (playerAutoPlay.value) {\n url.push(\"&autoplay=true\");\n }\n if (isVisible.value) {\n url.push(\"&key=\" + window.btoa(dataTitle.value.toString()));\n }\n if (insertCode.value) {\n url.push(\"&insertCode=true\");\n }\n if (autoHeight.value) {\n url.push(\"&autoHeight=true\");\n }\n return url;\n}\nfunction initColor(): void {\n if (!orgaAttributes.value) {\n return;\n }\n color.value = Object.hasOwn(orgaAttributes.value, \"COLOR\")\n ? (orgaAttributes.value.COLOR as string)\n : \"#40a372\";\n theme.value = Object.hasOwn(orgaAttributes.value, \"THEME\")\n ? (orgaAttributes.value.THEME as string)\n : \"#ffffff\";\n}\n</script>\n\n<style lang=\"scss\">\n\n@use \"../../../style/iframe\";\n\n.octopus-app {\n .sticker {\n align-self: center;\n background: var(--octopus-primary);\n padding: 0.5rem;\n transition: all 0.5s ease;\n color: white;\n font-weight: bold;\n letter-spacing: 1px;\n box-shadow: 10px 10px 34px -15px var(--octopus-shadow);\n border-radius: 255px 15px 225px 15px/15px 225px 15px 255px;\n border: solid 2px var(--octopus-gray-text);\n\n &:hover {\n box-shadow: 2px 8px 4px -6px var(--octopus-shadow);\n background: transparent;\n color: var(--octopus-primary);\n }\n }\n}\n</style>\n","<template>\n <section class=\"module-box overflow-visible\">\n <div class=\"d-flex justify-content-between align-items-center\">\n <h3 class=\"mb-3\">\n {{ t(\"Embed\") }}\n </h3>\n <div\n v-if=\"noAd && !generalStore.platformEducation\"\n class=\"sticker\"\n :title=\"t('You cannot insert advertising')\"\n >\n {{ t(\"No advertising\") }}\n </div>\n </div>\n <template v-if=\"!exclusive && (authenticated || notExclusive)\">\n <div class=\"d-flex\">\n <iframe\n id=\"miniplayerIframe\"\n title=\"Miniplayer\"\n allowfullscreen=\"true\"\n allow=\"clipboard-read; clipboard-write; autoplay\"\n referrerpolicy=\"no-referrer-when-downgrade\"\n frameborder=\"0\"\n :src=\"iFrameSrc\"\n width=\"100%\"\n :height=\"iFrameHeight\"\n class=\"max-iframe mx-3\"\n />\n <div class=\"d-flex flex-column flex-grow-1\">\n <SharePlayerTypes\n v-model:i-frame-model=\"iFrameModel\"\n v-model:type-custom-player=\"typeCustomPlayer\"\n :podcast=\"podcast\"\n :emission=\"emission\"\n :playlist=\"playlist\"\n :organisation-id=\"organisationId\"\n :is-live=\"isLiveReadyToRecord\"\n />\n <SharePlayerColors\n v-model:color=\"color\"\n v-model:theme=\"theme\"\n class=\"mt-3\"\n />\n <PlayerParameters\n v-model:display-article=\"displayArticle\"\n v-model:display-transcript=\"displayTranscript\"\n v-model:display-wave=\"displayWave\"\n v-model:is-visible=\"isVisible\"\n v-model:player-auto-play=\"playerAutoPlay\"\n v-model:episodes-number=\"episodesNumber\"\n v-model:insert-code=\"insertCode\"\n v-model:auto-height=\"autoHeight\"\n :display-is-visible=\"displayIsVisible\"\n :is-podcast-not-visible=\"isPodcastNotVisible\"\n :chose-number-episode=\"displayChoiceAllEpisodes\"\n :display-choice-all-episodes=\"displayChoiceAllEpisodes\"\n :display-transcript-param=\"displayTranscriptParam\"\n :display-article-param=\"displayArticleParam\"\n :display-wave-param=\"displayWaveParam\"\n :display-insert-code=\"displayInsertCode\"\n :display-auto-height=\"iFrameModel.toLowerCase().includes('large')\"\n @episode-choice-display=\"episodeChoiceDisplay = $event\"\n />\n\n <ShareModalPlayer\n v-if=\"isShareModal\"\n :embed-link=\"iFrame\"\n :embedly-link=\"iFrameSrc\"\n :direct-link=\"podcast\"\n @close=\"isShareModal = false\"\n />\n <button\n class=\"btn btn-primary w-fit-content mt-3\"\n @click=\"isShareModal = true\"\n >\n {{ t(\"Share the player\") }}\n </button>\n </div>\n </div>\n </template>\n <div v-else-if=\"exclusive && authenticated\">\n {{ t(\"Only organisation members can share the content\") }}\n </div>\n <div v-else-if=\"!authenticated\">\n {{ t(\"Only authenticated members can share the content\") }}\n </div>\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { Podcast } from \"@/stores/class/general/podcast\";\nimport { Emission } from \"@/stores/class/general/emission\";\nimport { Playlist } from \"@/stores/class/general/playlist\";\nimport { useAuthStore } from \"../../../stores/AuthStore\";\nimport { useApiStore } from \"../../../stores/ApiStore\";\nimport { useSaveFetchStore } from \"../../../stores/SaveFetchStore\";\nimport { defineAsyncComponent, ref, Ref, computed, onBeforeMount } from \"vue\";\nimport { useGeneralStore } from \"../../../stores/GeneralStore\";\nimport { useI18n } from \"vue-i18n\";\nconst ShareModalPlayer = defineAsyncComponent(\n () => import(\"../../misc/modal/ShareModalPlayer.vue\"),\n);\nconst PlayerParameters = defineAsyncComponent(\n () => import(\"./PlayerParameters.vue\"),\n);\nconst SharePlayerTypes = defineAsyncComponent(\n () => import(\"./SharePlayerTypes.vue\"),\n);\nconst SharePlayerColors = defineAsyncComponent(\n () => import(\"./SharePlayerColors.vue\"),\n);\n\n\n//Props \nconst props = defineProps({\n podcast: { default: undefined, type: Object as () => Podcast },\n emission: { default: undefined, type: Object as () => Emission },\n playlist: { default: undefined, type: Object as () => Playlist },\n organisationId: { default: undefined, type: String },\n exclusive: { default: false, type: Boolean },\n notExclusive: { default: true, type: Boolean },\n})\n\n//Data \nconst typeCustomPlayer = ref(\"\");\nconst iFrameModel = ref(\"default\");\nconst isShareModal = ref(false);\nconst color = ref(\"#40a372\");\nconst theme = ref(\"#000000\");\nconst episodeChoiceDisplay = ref(\"number\");\nconst episodesNumber = ref(3);\nconst isVisible = ref(false);\nconst displayArticle = ref(true);\nconst displayTranscript = ref(true);\nconst displayWave = ref(false);\nconst playerAutoPlay = ref(false);\nconst insertCode = ref(false);\nconst autoHeight = ref(false);\nconst orgaAttributes : Ref<{ [key: string]: string | number | boolean | undefined }| undefined>= ref(undefined);\n\n\n//Composables\nconst { t } = useI18n();\nconst authStore = useAuthStore();\nconst apiStore = useApiStore();\nconst generalStore = useGeneralStore();\nconst saveFetchStore = useSaveFetchStore();\n\n\n//Computed\nconst authenticated = computed(() => undefined !== authStore.authOrgaId);\nconst displayWaveParam = computed(() => \"default\" === iFrameModel.value || \"emission\" === iFrameModel.value);\nconst displayIsVisible = computed(() => displayChoiceAllEpisodes.value || isPodcastNotVisible.value);\nconst isPodcastNotVisible = computed(() => {\n return (\n undefined !== props.podcast &&\n !props.podcast.availability.visibility &&\n !isTypeEmission.value\n );\n});\nconst displayArticleParam = computed(() => {\n return (\n undefined !== props.podcast &&\n undefined !== props.podcast.article &&\n 0 !== props.podcast.article.length &&\n (\"default\" === iFrameModel.value ||\n \"large\" === iFrameModel.value ||\n \"largeMore\" === iFrameModel.value)\n );\n});\nconst displayInsertCode = computed(() => {\n let orgaResourceId = \"\";\n if (props.podcast) {\n orgaResourceId = props.podcast.organisation.id;\n }\n if (props.emission) {\n orgaResourceId = props.emission.orga.id;\n }\n if (props.playlist) {\n orgaResourceId = props.playlist.organisation?.id ?? \"\";\n }\n return orgaResourceId === authStore.authOrgaId;\n});\nconst displayTranscriptParam = computed(() => isTranscriptionAuthorize.value && (isDefault.value || isEmission.value));\nconst isTranscriptionAuthorize = computed(() => {\n if (!orgaAttributes.value) {\n return false;\n }\n return orgaAttributes.value &&\n Object.hasOwn(orgaAttributes.value, \"speechtotext.active\")\n ? (orgaAttributes.value[\"speechtotext.active\"] as boolean)\n : false;\n});\nconst displayChoiceAllEpisodes = computed(() => !props.podcast || isTypeEmission.value);\nconst isDefault = computed(() => \"default\" === iFrameModel.value);\nconst isEmission = computed(() => \"emission\" === iFrameModel.value);\nconst isLargeEmission = computed(() => \"emissionLarge\" === iFrameModel.value);\nconst isTypeEmission = computed(() => {\n return (\n isEmission.value ||\n isLargeEmission.value ||\n \"EMISSION\" === typeCustomPlayer.value\n );\n});\nconst isLiveReadyToRecord = computed(() => {\n if (props.podcast)\n return (\n undefined !== props.podcast.conferenceId &&\n 0 !== props.podcast.conferenceId &&\n props.podcast.processingStatus === \"READY_TO_RECORD\"\n );\n return false;\n});\n\nconst noAd = computed(() => {\n return (\n (props.podcast?.organisation.id !== props.organisationId &&\n \"NO\" === props.podcast?.monetisable) ||\n (\"UNDEFINED\" === props.podcast?.monetisable &&\n \"NO\" === props.podcast?.emission.monetisable)\n );\n});\nconst iFrameSrc = computed(() => {\n if (\"video\" === iFrameModel.value) {\n return (\n \"https://www.ultimedia.com/deliver/generic/iframe/mdtk/01009833/zone/1/showtitle/1/src/\" +\n props.podcast?.video?.videoId +\n \"/sound/true\"\n );\n }\n let url = [\"\"];\n const iFrameNumber =\n displayChoiceAllEpisodes.value && \"all\" === episodeChoiceDisplay.value\n ? \"/0\"\n : \"/\" + episodesNumber.value;\n url.push(`${apiStore.miniplayerUrl}miniplayer/`);\n if (!props.podcast && !props.playlist && props.emission) {\n url = constructEmissionUrl(url);\n } else if (props.playlist) {\n url = constructPlaylistUrl(url);\n } else if (props.emission && props.podcast) {\n url.push(`${iFrameModel.value}/`);\n if (isTypeEmission.value) {\n url.push(\n `${props.emission.emissionId}${iFrameNumber}/${props.podcast.podcastId}`,\n );\n } else {\n url.push(`${props.podcast.podcastId}`);\n }\n }\n\n return addUrlParameters(url).join(\"\");\n});\nconst iFrameHeight = computed(() => {\n switch (iFrameModel.value) {\n case \"video\":\n return \"281px\";\n case \"large\":\n if (props.podcast) return \"140px\";\n return \"350px\";\n case \"largeMore\":\n return \"210px\";\n case \"emissionLarge\":\n return \"350px\";\n case \"emission\":\n return \"540px\";\n case \"videoLive\":\n return \"450px\";\n default:\n return \"540px\";\n }\n});\nconst iFrame = computed(() => {\n const specialDigiteka = props.podcast?.video?.videoId\n ? 'allowfullscreen=\"true\" referrerpolicy=\"no-referrer-when-downgrade\"'\n : \"\";\n return `<iframe src=\"${iFrameSrc.value}\" width=\"100%\" height=\"${iFrameHeight.value}\" frameborder=\"0\" scrolling=\"no\" ${specialDigiteka} allow=\"clipboard-read; clipboard-write; autoplay\"></iframe>`;\n});\nconst dataTitle = computed(() => {\n if (props.podcast) return props.podcast.podcastId;\n if (props.emission) return props.emission.emissionId;\n if (props.playlist) return props.playlist.playlistId;\n return 0;\n});\n\n\nonBeforeMount(()=>initSharePlayer())\n\n\n//Methods\nasync function initSharePlayer() {\n orgaAttributes.value = await saveFetchStore.getOrgaAttributes(authStore.authOrgaId ?? \"\");\n initColor();\n if (isLiveReadyToRecord.value) {\n iFrameModel.value = \"large\";\n }\n if (\"true\" === props.podcast?.annotations?.[\"fromTTS\"]) {\n displayTranscript.value = false;\n }\n}\nfunction getIframeNumber(): string {\n return displayChoiceAllEpisodes.value && \"all\" === episodeChoiceDisplay.value\n ? \"/0\"\n : \"/\" + episodesNumber.value;\n}\nfunction constructEmissionUrl(url: Array<string>) {\n if (!props.emission) {\n return [];\n }\n switch (iFrameModel.value) {\n case \"default\":\n url.push(\"emission\");\n break;\n case \"large\":\n url.push(\"emissionLarge\");\n break;\n default:\n url.push(`${iFrameModel.value}`);\n break;\n }\n url.push(`/${props.emission.emissionId}${getIframeNumber()}`);\n return url;\n}\nfunction constructPlaylistUrl(url: Array<string>) {\n if (!props.playlist) {\n return [];\n }\n switch (iFrameModel.value) {\n case \"default\":\n url.push(\"playlist\");\n break;\n case \"large\":\n url.push(\"playlistLarge\");\n break;\n default:\n url.push(`${iFrameModel.value}`);\n break;\n }\n url.push(`/${props.playlist.playlistId}`);\n return url;\n}\nfunction addUrlParameters(url: Array<string>) {\n url.push(\"?distributorId=\" + props.organisationId);\n url.push(\n `&color=${color.value.substring(1)}&theme=${theme.value.substring(1)}`,\n );\n if (!displayArticle.value && displayArticleParam.value) {\n url.push(\"&article=false\");\n }\n if (!displayTranscript.value) {\n url.push(\"&transcript=false\");\n }\n if (!displayWave.value) {\n url.push(\"&wave=false\");\n }\n if (playerAutoPlay.value) {\n url.push(\"&autoplay=true\");\n }\n if (isVisible.value) {\n url.push(\"&key=\" + window.btoa(dataTitle.value.toString()));\n }\n if (insertCode.value) {\n url.push(\"&insertCode=true\");\n }\n if (autoHeight.value) {\n url.push(\"&autoHeight=true\");\n }\n return url;\n}\nfunction initColor(): void {\n if (!orgaAttributes.value) {\n return;\n }\n color.value = Object.hasOwn(orgaAttributes.value, \"COLOR\")\n ? (orgaAttributes.value.COLOR as string)\n : \"#40a372\";\n theme.value = Object.hasOwn(orgaAttributes.value, \"THEME\")\n ? (orgaAttributes.value.THEME as string)\n : \"#ffffff\";\n}\n</script>\n\n<style lang=\"scss\">\n\n@use \"../../../style/iframe\";\n\n.octopus-app {\n .sticker {\n align-self: center;\n background: var(--octopus-primary);\n padding: 0.5rem;\n transition: all 0.5s ease;\n color: white;\n font-weight: bold;\n letter-spacing: 1px;\n box-shadow: 10px 10px 34px -15px var(--octopus-shadow);\n border-radius: 255px 15px 225px 15px/15px 225px 15px 255px;\n border: solid 2px var(--octopus-gray-text);\n\n &:hover {\n box-shadow: 2px 8px 4px -6px var(--octopus-shadow);\n background: transparent;\n color: var(--octopus-primary);\n }\n }\n}\n</style>\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SharePlayer-DQoFa7iv.mjs","names":["_openBlock","_createElementBlock","_createElementVNode","_toDisplayString","_createCommentVNode","_createVNode","_createBlock","_sfc_main"],"sources":["../src/components/display/sharing/SharePlayer.vue","../src/components/display/sharing/SharePlayer.vue"],"sourcesContent":["<template>\n <section class=\"module-box overflow-visible\">\n <div class=\"d-flex justify-content-between align-items-center\">\n <h3 class=\"mb-3\">\n {{ t(\"Embed\") }}\n </h3>\n <div\n v-if=\"noAd && !generalStore.platformEducation\"\n class=\"sticker\"\n :title=\"t('You cannot insert advertising')\"\n >\n {{ t(\"No advertising\") }}\n </div>\n </div>\n <template v-if=\"!exclusive && (authenticated || notExclusive)\">\n <div class=\"d-flex\">\n <iframe\n id=\"miniplayerIframe\"\n title=\"Miniplayer\"\n allowfullscreen=\"true\"\n allow=\"clipboard-read; clipboard-write; autoplay\"\n referrerpolicy=\"no-referrer-when-downgrade\"\n frameborder=\"0\"\n :src=\"iFrameSrc\"\n width=\"100%\"\n :height=\"iFrameHeight\"\n class=\"max-iframe mx-3\"\n />\n <div class=\"d-flex flex-column flex-grow-1\">\n <SharePlayerTypes\n v-model:i-frame-model=\"iFrameModel\"\n v-model:type-custom-player=\"typeCustomPlayer\"\n :podcast=\"podcast\"\n :emission=\"emission\"\n :playlist=\"playlist\"\n :organisation-id=\"organisationId\"\n :is-live=\"isLiveReadyToRecord\"\n />\n <SharePlayerColors\n v-model:color=\"color\"\n v-model:theme=\"theme\"\n class=\"mt-3\"\n />\n <PlayerParameters\n v-model:display-article=\"displayArticle\"\n v-model:display-transcript=\"displayTranscript\"\n v-model:display-wave=\"displayWave\"\n v-model:is-visible=\"isVisible\"\n v-model:player-auto-play=\"playerAutoPlay\"\n v-model:episodes-number=\"episodesNumber\"\n v-model:insert-code=\"insertCode\"\n v-model:auto-height=\"autoHeight\"\n :display-is-visible=\"displayIsVisible\"\n :is-podcast-not-visible=\"isPodcastNotVisible\"\n :chose-number-episode=\"displayChoiceAllEpisodes\"\n :display-choice-all-episodes=\"displayChoiceAllEpisodes\"\n :display-transcript-param=\"displayTranscriptParam\"\n :display-article-param=\"displayArticleParam\"\n :display-wave-param=\"displayWaveParam\"\n :display-insert-code=\"displayInsertCode\"\n :display-auto-height=\"iFrameModel.toLowerCase().includes('large')\"\n @episode-choice-display=\"episodeChoiceDisplay = $event\"\n />\n\n <ShareModalPlayer\n v-if=\"isShareModal\"\n :embed-link=\"iFrame\"\n :embedly-link=\"iFrameSrc\"\n :direct-link=\"podcast\"\n @close=\"isShareModal = false\"\n />\n <button\n class=\"btn btn-primary w-fit-content mt-3\"\n @click=\"isShareModal = true\"\n >\n {{ t(\"Share the player\") }}\n </button>\n </div>\n </div>\n </template>\n <div v-else-if=\"exclusive && authenticated\">\n {{ t(\"Only organisation members can share the content\") }}\n </div>\n <div v-else-if=\"!authenticated\">\n {{ t(\"Only authenticated members can share the content\") }}\n </div>\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { Podcast } from \"@/stores/class/general/podcast\";\nimport { Emission } from \"@/stores/class/general/emission\";\nimport { Playlist } from \"@/stores/class/general/playlist\";\nimport { useAuthStore } from \"../../../stores/AuthStore\";\nimport { useApiStore } from \"../../../stores/ApiStore\";\nimport { useSaveFetchStore } from \"../../../stores/SaveFetchStore\";\nimport { defineAsyncComponent, ref, Ref, computed, onBeforeMount } from \"vue\";\nimport { useGeneralStore } from \"../../../stores/GeneralStore\";\nimport { useI18n } from \"vue-i18n\";\nconst ShareModalPlayer = defineAsyncComponent(\n () => import(\"../../misc/modal/ShareModalPlayer.vue\"),\n);\nconst PlayerParameters = defineAsyncComponent(\n () => import(\"./PlayerParameters.vue\"),\n);\nconst SharePlayerTypes = defineAsyncComponent(\n () => import(\"./SharePlayerTypes.vue\"),\n);\nconst SharePlayerColors = defineAsyncComponent(\n () => import(\"./SharePlayerColors.vue\"),\n);\n\n\n//Props \nconst props = defineProps({\n podcast: { default: undefined, type: Object as () => Podcast },\n emission: { default: undefined, type: Object as () => Emission },\n playlist: { default: undefined, type: Object as () => Playlist },\n organisationId: { default: undefined, type: String },\n exclusive: { default: false, type: Boolean },\n notExclusive: { default: true, type: Boolean },\n})\n\n//Data \nconst typeCustomPlayer = ref(\"\");\nconst iFrameModel = ref(\"default\");\nconst isShareModal = ref(false);\nconst color = ref(\"#40a372\");\nconst theme = ref(\"#000000\");\nconst episodeChoiceDisplay = ref(\"number\");\nconst episodesNumber = ref(3);\nconst isVisible = ref(false);\nconst displayArticle = ref(true);\nconst displayTranscript = ref(true);\nconst displayWave = ref(false);\nconst playerAutoPlay = ref(false);\nconst insertCode = ref(false);\nconst autoHeight = ref(false);\nconst orgaAttributes : Ref<{ [key: string]: string | number | boolean | undefined }| undefined>= ref(undefined);\n\n\n//Composables\nconst { t } = useI18n();\nconst authStore = useAuthStore();\nconst apiStore = useApiStore();\nconst generalStore = useGeneralStore();\nconst saveFetchStore = useSaveFetchStore();\n\n\n//Computed\nconst authenticated = computed(() => undefined !== authStore.authOrgaId);\nconst displayWaveParam = computed(() => \"default\" === iFrameModel.value || \"emission\" === iFrameModel.value);\nconst displayIsVisible = computed(() => displayChoiceAllEpisodes.value || isPodcastNotVisible.value);\nconst isPodcastNotVisible = computed(() => {\n return (\n undefined !== props.podcast &&\n !props.podcast.availability.visibility &&\n !isTypeEmission.value\n );\n});\nconst displayArticleParam = computed(() => {\n return (\n undefined !== props.podcast &&\n undefined !== props.podcast.article &&\n 0 !== props.podcast.article.length &&\n (\"default\" === iFrameModel.value ||\n \"large\" === iFrameModel.value ||\n \"largeMore\" === iFrameModel.value)\n );\n});\nconst displayInsertCode = computed(() => {\n let orgaResourceId = \"\";\n if (props.podcast) {\n orgaResourceId = props.podcast.organisation.id;\n }\n if (props.emission) {\n orgaResourceId = props.emission.orga.id;\n }\n if (props.playlist) {\n orgaResourceId = props.playlist.organisation?.id ?? \"\";\n }\n return orgaResourceId === authStore.authOrgaId;\n});\nconst displayTranscriptParam = computed(() => isTranscriptionAuthorize.value && (isDefault.value || isEmission.value));\nconst isTranscriptionAuthorize = computed(() => {\n if (!orgaAttributes.value) {\n return false;\n }\n return orgaAttributes.value &&\n Object.hasOwn(orgaAttributes.value, \"speechtotext.active\")\n ? (orgaAttributes.value[\"speechtotext.active\"] as boolean)\n : false;\n});\nconst displayChoiceAllEpisodes = computed(() => !props.podcast || isTypeEmission.value);\nconst isDefault = computed(() => \"default\" === iFrameModel.value);\nconst isEmission = computed(() => \"emission\" === iFrameModel.value);\nconst isLargeEmission = computed(() => \"emissionLarge\" === iFrameModel.value);\nconst isTypeEmission = computed(() => {\n return (\n isEmission.value ||\n isLargeEmission.value ||\n \"EMISSION\" === typeCustomPlayer.value\n );\n});\nconst isLiveReadyToRecord = computed(() => {\n if (props.podcast)\n return (\n undefined !== props.podcast.conferenceId &&\n 0 !== props.podcast.conferenceId &&\n props.podcast.processingStatus === \"READY_TO_RECORD\"\n );\n return false;\n});\n\nconst noAd = computed(() => {\n return (\n (props.podcast?.organisation.id !== props.organisationId &&\n \"NO\" === props.podcast?.monetisable) ||\n (\"UNDEFINED\" === props.podcast?.monetisable &&\n \"NO\" === props.podcast?.emission.monetisable)\n );\n});\nconst iFrameSrc = computed(() => {\n if (\"video\" === iFrameModel.value) {\n return (\n \"https://www.ultimedia.com/deliver/generic/iframe/mdtk/01009833/zone/1/showtitle/1/src/\" +\n props.podcast?.video?.videoId +\n \"/sound/true\"\n );\n }\n let url = [\"\"];\n const iFrameNumber =\n displayChoiceAllEpisodes.value && \"all\" === episodeChoiceDisplay.value\n ? \"/0\"\n : \"/\" + episodesNumber.value;\n url.push(`${apiStore.miniplayerUrl}miniplayer/`);\n if (!props.podcast && !props.playlist && props.emission) {\n url = constructEmissionUrl(url);\n } else if (props.playlist) {\n url = constructPlaylistUrl(url);\n } else if (props.emission && props.podcast) {\n url.push(`${iFrameModel.value}/`);\n if (isTypeEmission.value) {\n url.push(\n `${props.emission.emissionId}${iFrameNumber}/${props.podcast.podcastId}`,\n );\n } else {\n url.push(`${props.podcast.podcastId}`);\n }\n }\n\n return addUrlParameters(url).join(\"\");\n});\nconst iFrameHeight = computed(() => {\n switch (iFrameModel.value) {\n case \"video\":\n return \"281px\";\n case \"large\":\n if (props.podcast) return \"140px\";\n return \"350px\";\n case \"largeMore\":\n return \"210px\";\n case \"emissionLarge\":\n return \"350px\";\n case \"emission\":\n return \"540px\";\n case \"videoLive\":\n return \"450px\";\n default:\n return \"540px\";\n }\n});\nconst iFrame = computed(() => {\n const specialDigiteka = props.podcast?.video?.videoId\n ? 'allowfullscreen=\"true\" referrerpolicy=\"no-referrer-when-downgrade\"'\n : \"\";\n return `<iframe src=\"${iFrameSrc.value}\" width=\"100%\" height=\"${iFrameHeight.value}\" frameborder=\"0\" scrolling=\"no\" ${specialDigiteka} allow=\"clipboard-read; clipboard-write; autoplay\"></iframe>`;\n});\nconst dataTitle = computed(() => {\n if (props.podcast) return props.podcast.podcastId;\n if (props.emission) return props.emission.emissionId;\n if (props.playlist) return props.playlist.playlistId;\n return 0;\n});\n\n\nonBeforeMount(()=>initSharePlayer())\n\n\n//Methods\nasync function initSharePlayer() {\n orgaAttributes.value = await saveFetchStore.getOrgaAttributes(authStore.authOrgaId ?? \"\");\n initColor();\n if (isLiveReadyToRecord.value) {\n iFrameModel.value = \"large\";\n }\n if (\"true\" === props.podcast?.annotations?.[\"fromTTS\"]) {\n displayTranscript.value = false;\n }\n}\nfunction getIframeNumber(): string {\n return displayChoiceAllEpisodes.value && \"all\" === episodeChoiceDisplay.value\n ? \"/0\"\n : \"/\" + episodesNumber.value;\n}\nfunction constructEmissionUrl(url: Array<string>) {\n if (!props.emission) {\n return [];\n }\n switch (iFrameModel.value) {\n case \"default\":\n url.push(\"emission\");\n break;\n case \"large\":\n url.push(\"emissionLarge\");\n break;\n default:\n url.push(`${iFrameModel.value}`);\n break;\n }\n url.push(`/${props.emission.emissionId}${getIframeNumber()}`);\n return url;\n}\nfunction constructPlaylistUrl(url: Array<string>) {\n if (!props.playlist) {\n return [];\n }\n switch (iFrameModel.value) {\n case \"default\":\n url.push(\"playlist\");\n break;\n case \"large\":\n url.push(\"playlistLarge\");\n break;\n default:\n url.push(`${iFrameModel.value}`);\n break;\n }\n url.push(`/${props.playlist.playlistId}`);\n return url;\n}\nfunction addUrlParameters(url: Array<string>) {\n url.push(\"?distributorId=\" + props.organisationId);\n url.push(\n `&color=${color.value.substring(1)}&theme=${theme.value.substring(1)}`,\n );\n if (!displayArticle.value && displayArticleParam.value) {\n url.push(\"&article=false\");\n }\n if (!displayTranscript.value) {\n url.push(\"&transcript=false\");\n }\n if (!displayWave.value) {\n url.push(\"&wave=false\");\n }\n if (playerAutoPlay.value) {\n url.push(\"&autoplay=true\");\n }\n if (isVisible.value) {\n url.push(\"&key=\" + window.btoa(dataTitle.value.toString()));\n }\n if (insertCode.value) {\n url.push(\"&insertCode=true\");\n }\n if (autoHeight.value) {\n url.push(\"&autoHeight=true\");\n }\n return url;\n}\nfunction initColor(): void {\n if (!orgaAttributes.value) {\n return;\n }\n color.value = Object.hasOwn(orgaAttributes.value, \"COLOR\")\n ? (orgaAttributes.value.COLOR as string)\n : \"#40a372\";\n theme.value = Object.hasOwn(orgaAttributes.value, \"THEME\")\n ? (orgaAttributes.value.THEME as string)\n : \"#ffffff\";\n}\n</script>\n\n<style lang=\"scss\">\n\n@use \"../../../style/iframe\";\n\n.octopus-app {\n .sticker {\n align-self: center;\n background: var(--octopus-primary);\n padding: 0.5rem;\n transition: all 0.5s ease;\n color: white;\n font-weight: bold;\n letter-spacing: 1px;\n box-shadow: 10px 10px 34px -15px var(--octopus-shadow);\n border-radius: 255px 15px 225px 15px/15px 225px 15px 255px;\n border: solid 2px var(--octopus-gray-text);\n\n &:hover {\n box-shadow: 2px 8px 4px -6px var(--octopus-shadow);\n background: transparent;\n color: var(--octopus-primary);\n }\n }\n}\n</style>\n","<template>\n <section class=\"module-box overflow-visible\">\n <div class=\"d-flex justify-content-between align-items-center\">\n <h3 class=\"mb-3\">\n {{ t(\"Embed\") }}\n </h3>\n <div\n v-if=\"noAd && !generalStore.platformEducation\"\n class=\"sticker\"\n :title=\"t('You cannot insert advertising')\"\n >\n {{ t(\"No advertising\") }}\n </div>\n </div>\n <template v-if=\"!exclusive && (authenticated || notExclusive)\">\n <div class=\"d-flex\">\n <iframe\n id=\"miniplayerIframe\"\n title=\"Miniplayer\"\n allowfullscreen=\"true\"\n allow=\"clipboard-read; clipboard-write; autoplay\"\n referrerpolicy=\"no-referrer-when-downgrade\"\n frameborder=\"0\"\n :src=\"iFrameSrc\"\n width=\"100%\"\n :height=\"iFrameHeight\"\n class=\"max-iframe mx-3\"\n />\n <div class=\"d-flex flex-column flex-grow-1\">\n <SharePlayerTypes\n v-model:i-frame-model=\"iFrameModel\"\n v-model:type-custom-player=\"typeCustomPlayer\"\n :podcast=\"podcast\"\n :emission=\"emission\"\n :playlist=\"playlist\"\n :organisation-id=\"organisationId\"\n :is-live=\"isLiveReadyToRecord\"\n />\n <SharePlayerColors\n v-model:color=\"color\"\n v-model:theme=\"theme\"\n class=\"mt-3\"\n />\n <PlayerParameters\n v-model:display-article=\"displayArticle\"\n v-model:display-transcript=\"displayTranscript\"\n v-model:display-wave=\"displayWave\"\n v-model:is-visible=\"isVisible\"\n v-model:player-auto-play=\"playerAutoPlay\"\n v-model:episodes-number=\"episodesNumber\"\n v-model:insert-code=\"insertCode\"\n v-model:auto-height=\"autoHeight\"\n :display-is-visible=\"displayIsVisible\"\n :is-podcast-not-visible=\"isPodcastNotVisible\"\n :chose-number-episode=\"displayChoiceAllEpisodes\"\n :display-choice-all-episodes=\"displayChoiceAllEpisodes\"\n :display-transcript-param=\"displayTranscriptParam\"\n :display-article-param=\"displayArticleParam\"\n :display-wave-param=\"displayWaveParam\"\n :display-insert-code=\"displayInsertCode\"\n :display-auto-height=\"iFrameModel.toLowerCase().includes('large')\"\n @episode-choice-display=\"episodeChoiceDisplay = $event\"\n />\n\n <ShareModalPlayer\n v-if=\"isShareModal\"\n :embed-link=\"iFrame\"\n :embedly-link=\"iFrameSrc\"\n :direct-link=\"podcast\"\n @close=\"isShareModal = false\"\n />\n <button\n class=\"btn btn-primary w-fit-content mt-3\"\n @click=\"isShareModal = true\"\n >\n {{ t(\"Share the player\") }}\n </button>\n </div>\n </div>\n </template>\n <div v-else-if=\"exclusive && authenticated\">\n {{ t(\"Only organisation members can share the content\") }}\n </div>\n <div v-else-if=\"!authenticated\">\n {{ t(\"Only authenticated members can share the content\") }}\n </div>\n </section>\n</template>\n\n<script setup lang=\"ts\">\nimport { Podcast } from \"@/stores/class/general/podcast\";\nimport { Emission } from \"@/stores/class/general/emission\";\nimport { Playlist } from \"@/stores/class/general/playlist\";\nimport { useAuthStore } from \"../../../stores/AuthStore\";\nimport { useApiStore } from \"../../../stores/ApiStore\";\nimport { useSaveFetchStore } from \"../../../stores/SaveFetchStore\";\nimport { defineAsyncComponent, ref, Ref, computed, onBeforeMount } from \"vue\";\nimport { useGeneralStore } from \"../../../stores/GeneralStore\";\nimport { useI18n } from \"vue-i18n\";\nconst ShareModalPlayer = defineAsyncComponent(\n () => import(\"../../misc/modal/ShareModalPlayer.vue\"),\n);\nconst PlayerParameters = defineAsyncComponent(\n () => import(\"./PlayerParameters.vue\"),\n);\nconst SharePlayerTypes = defineAsyncComponent(\n () => import(\"./SharePlayerTypes.vue\"),\n);\nconst SharePlayerColors = defineAsyncComponent(\n () => import(\"./SharePlayerColors.vue\"),\n);\n\n\n//Props \nconst props = defineProps({\n podcast: { default: undefined, type: Object as () => Podcast },\n emission: { default: undefined, type: Object as () => Emission },\n playlist: { default: undefined, type: Object as () => Playlist },\n organisationId: { default: undefined, type: String },\n exclusive: { default: false, type: Boolean },\n notExclusive: { default: true, type: Boolean },\n})\n\n//Data \nconst typeCustomPlayer = ref(\"\");\nconst iFrameModel = ref(\"default\");\nconst isShareModal = ref(false);\nconst color = ref(\"#40a372\");\nconst theme = ref(\"#000000\");\nconst episodeChoiceDisplay = ref(\"number\");\nconst episodesNumber = ref(3);\nconst isVisible = ref(false);\nconst displayArticle = ref(true);\nconst displayTranscript = ref(true);\nconst displayWave = ref(false);\nconst playerAutoPlay = ref(false);\nconst insertCode = ref(false);\nconst autoHeight = ref(false);\nconst orgaAttributes : Ref<{ [key: string]: string | number | boolean | undefined }| undefined>= ref(undefined);\n\n\n//Composables\nconst { t } = useI18n();\nconst authStore = useAuthStore();\nconst apiStore = useApiStore();\nconst generalStore = useGeneralStore();\nconst saveFetchStore = useSaveFetchStore();\n\n\n//Computed\nconst authenticated = computed(() => undefined !== authStore.authOrgaId);\nconst displayWaveParam = computed(() => \"default\" === iFrameModel.value || \"emission\" === iFrameModel.value);\nconst displayIsVisible = computed(() => displayChoiceAllEpisodes.value || isPodcastNotVisible.value);\nconst isPodcastNotVisible = computed(() => {\n return (\n undefined !== props.podcast &&\n !props.podcast.availability.visibility &&\n !isTypeEmission.value\n );\n});\nconst displayArticleParam = computed(() => {\n return (\n undefined !== props.podcast &&\n undefined !== props.podcast.article &&\n 0 !== props.podcast.article.length &&\n (\"default\" === iFrameModel.value ||\n \"large\" === iFrameModel.value ||\n \"largeMore\" === iFrameModel.value)\n );\n});\nconst displayInsertCode = computed(() => {\n let orgaResourceId = \"\";\n if (props.podcast) {\n orgaResourceId = props.podcast.organisation.id;\n }\n if (props.emission) {\n orgaResourceId = props.emission.orga.id;\n }\n if (props.playlist) {\n orgaResourceId = props.playlist.organisation?.id ?? \"\";\n }\n return orgaResourceId === authStore.authOrgaId;\n});\nconst displayTranscriptParam = computed(() => isTranscriptionAuthorize.value && (isDefault.value || isEmission.value));\nconst isTranscriptionAuthorize = computed(() => {\n if (!orgaAttributes.value) {\n return false;\n }\n return orgaAttributes.value &&\n Object.hasOwn(orgaAttributes.value, \"speechtotext.active\")\n ? (orgaAttributes.value[\"speechtotext.active\"] as boolean)\n : false;\n});\nconst displayChoiceAllEpisodes = computed(() => !props.podcast || isTypeEmission.value);\nconst isDefault = computed(() => \"default\" === iFrameModel.value);\nconst isEmission = computed(() => \"emission\" === iFrameModel.value);\nconst isLargeEmission = computed(() => \"emissionLarge\" === iFrameModel.value);\nconst isTypeEmission = computed(() => {\n return (\n isEmission.value ||\n isLargeEmission.value ||\n \"EMISSION\" === typeCustomPlayer.value\n );\n});\nconst isLiveReadyToRecord = computed(() => {\n if (props.podcast)\n return (\n undefined !== props.podcast.conferenceId &&\n 0 !== props.podcast.conferenceId &&\n props.podcast.processingStatus === \"READY_TO_RECORD\"\n );\n return false;\n});\n\nconst noAd = computed(() => {\n return (\n (props.podcast?.organisation.id !== props.organisationId &&\n \"NO\" === props.podcast?.monetisable) ||\n (\"UNDEFINED\" === props.podcast?.monetisable &&\n \"NO\" === props.podcast?.emission.monetisable)\n );\n});\nconst iFrameSrc = computed(() => {\n if (\"video\" === iFrameModel.value) {\n return (\n \"https://www.ultimedia.com/deliver/generic/iframe/mdtk/01009833/zone/1/showtitle/1/src/\" +\n props.podcast?.video?.videoId +\n \"/sound/true\"\n );\n }\n let url = [\"\"];\n const iFrameNumber =\n displayChoiceAllEpisodes.value && \"all\" === episodeChoiceDisplay.value\n ? \"/0\"\n : \"/\" + episodesNumber.value;\n url.push(`${apiStore.miniplayerUrl}miniplayer/`);\n if (!props.podcast && !props.playlist && props.emission) {\n url = constructEmissionUrl(url);\n } else if (props.playlist) {\n url = constructPlaylistUrl(url);\n } else if (props.emission && props.podcast) {\n url.push(`${iFrameModel.value}/`);\n if (isTypeEmission.value) {\n url.push(\n `${props.emission.emissionId}${iFrameNumber}/${props.podcast.podcastId}`,\n );\n } else {\n url.push(`${props.podcast.podcastId}`);\n }\n }\n\n return addUrlParameters(url).join(\"\");\n});\nconst iFrameHeight = computed(() => {\n switch (iFrameModel.value) {\n case \"video\":\n return \"281px\";\n case \"large\":\n if (props.podcast) return \"140px\";\n return \"350px\";\n case \"largeMore\":\n return \"210px\";\n case \"emissionLarge\":\n return \"350px\";\n case \"emission\":\n return \"540px\";\n case \"videoLive\":\n return \"450px\";\n default:\n return \"540px\";\n }\n});\nconst iFrame = computed(() => {\n const specialDigiteka = props.podcast?.video?.videoId\n ? 'allowfullscreen=\"true\" referrerpolicy=\"no-referrer-when-downgrade\"'\n : \"\";\n return `<iframe src=\"${iFrameSrc.value}\" width=\"100%\" height=\"${iFrameHeight.value}\" frameborder=\"0\" scrolling=\"no\" ${specialDigiteka} allow=\"clipboard-read; clipboard-write; autoplay\"></iframe>`;\n});\nconst dataTitle = computed(() => {\n if (props.podcast) return props.podcast.podcastId;\n if (props.emission) return props.emission.emissionId;\n if (props.playlist) return props.playlist.playlistId;\n return 0;\n});\n\n\nonBeforeMount(()=>initSharePlayer())\n\n\n//Methods\nasync function initSharePlayer() {\n orgaAttributes.value = await saveFetchStore.getOrgaAttributes(authStore.authOrgaId ?? \"\");\n initColor();\n if (isLiveReadyToRecord.value) {\n iFrameModel.value = \"large\";\n }\n if (\"true\" === props.podcast?.annotations?.[\"fromTTS\"]) {\n displayTranscript.value = false;\n }\n}\nfunction getIframeNumber(): string {\n return displayChoiceAllEpisodes.value && \"all\" === episodeChoiceDisplay.value\n ? \"/0\"\n : \"/\" + episodesNumber.value;\n}\nfunction constructEmissionUrl(url: Array<string>) {\n if (!props.emission) {\n return [];\n }\n switch (iFrameModel.value) {\n case \"default\":\n url.push(\"emission\");\n break;\n case \"large\":\n url.push(\"emissionLarge\");\n break;\n default:\n url.push(`${iFrameModel.value}`);\n break;\n }\n url.push(`/${props.emission.emissionId}${getIframeNumber()}`);\n return url;\n}\nfunction constructPlaylistUrl(url: Array<string>) {\n if (!props.playlist) {\n return [];\n }\n switch (iFrameModel.value) {\n case \"default\":\n url.push(\"playlist\");\n break;\n case \"large\":\n url.push(\"playlistLarge\");\n break;\n default:\n url.push(`${iFrameModel.value}`);\n break;\n }\n url.push(`/${props.playlist.playlistId}`);\n return url;\n}\nfunction addUrlParameters(url: Array<string>) {\n url.push(\"?distributorId=\" + props.organisationId);\n url.push(\n `&color=${color.value.substring(1)}&theme=${theme.value.substring(1)}`,\n );\n if (!displayArticle.value && displayArticleParam.value) {\n url.push(\"&article=false\");\n }\n if (!displayTranscript.value) {\n url.push(\"&transcript=false\");\n }\n if (!displayWave.value) {\n url.push(\"&wave=false\");\n }\n if (playerAutoPlay.value) {\n url.push(\"&autoplay=true\");\n }\n if (isVisible.value) {\n url.push(\"&key=\" + window.btoa(dataTitle.value.toString()));\n }\n if (insertCode.value) {\n url.push(\"&insertCode=true\");\n }\n if (autoHeight.value) {\n url.push(\"&autoHeight=true\");\n }\n return url;\n}\nfunction initColor(): void {\n if (!orgaAttributes.value) {\n return;\n }\n color.value = Object.hasOwn(orgaAttributes.value, \"COLOR\")\n ? (orgaAttributes.value.COLOR as string)\n : \"#40a372\";\n theme.value = Object.hasOwn(orgaAttributes.value, \"THEME\")\n ? (orgaAttributes.value.THEME as string)\n : \"#ffffff\";\n}\n</script>\n\n<style lang=\"scss\">\n\n@use \"../../../style/iframe\";\n\n.octopus-app {\n .sticker {\n align-self: center;\n background: var(--octopus-primary);\n padding: 0.5rem;\n transition: all 0.5s ease;\n color: white;\n font-weight: bold;\n letter-spacing: 1px;\n box-shadow: 10px 10px 34px -15px var(--octopus-shadow);\n border-radius: 255px 15px 225px 15px/15px 225px 15px 255px;\n border: solid 2px var(--octopus-gray-text);\n\n &:hover {\n box-shadow: 2px 8px 4px -6px var(--octopus-shadow);\n background: transparent;\n color: var(--octopus-primary);\n }\n }\n}\n</style>\n"],"mappings":"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"}
|