@clickview/exchange 0.51.0 → 0.51.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/bundles.json +1 -1
- package/dist/en.json +1 -1
- package/dist/scripts/{BLJrwNZd.chunk.js → 11puwNJo.chunk.js} +2 -2
- package/dist/scripts/{BLJrwNZd.chunk.js.map → 11puwNJo.chunk.js.map} +1 -1
- package/dist/scripts/{CW105qba.chunk.js → 2-mHspOU.chunk.js} +2 -2
- package/dist/scripts/{CW105qba.chunk.js.map → 2-mHspOU.chunk.js.map} +1 -1
- package/dist/scripts/{DZEUA_Xy.chunk.js → 4fNVRbjv.chunk.js} +2 -2
- package/dist/scripts/{DZEUA_Xy.chunk.js.map → 4fNVRbjv.chunk.js.map} +1 -1
- package/dist/scripts/{BYA29WEV.chunk.js → 6JMI0Hhs.chunk.js} +2 -2
- package/dist/scripts/{BYA29WEV.chunk.js.map → 6JMI0Hhs.chunk.js.map} +1 -1
- package/dist/scripts/{BiFlN7Ya.chunk.js → 8qib0Mvd.chunk.js} +2 -2
- package/dist/scripts/{BiFlN7Ya.chunk.js.map → 8qib0Mvd.chunk.js.map} +1 -1
- package/dist/scripts/{CT_rcqQG.chunk.js → B3z0crrc.chunk.js} +2 -2
- package/dist/scripts/{CT_rcqQG.chunk.js.map → B3z0crrc.chunk.js.map} +1 -1
- package/dist/scripts/{U56PHXKm.chunk.js → B5WGUFGa.chunk.js} +2 -2
- package/dist/scripts/{U56PHXKm.chunk.js.map → B5WGUFGa.chunk.js.map} +1 -1
- package/dist/scripts/{BvlT0tCj.chunk.js → B9FAS-p1.chunk.js} +2 -2
- package/dist/scripts/{BvlT0tCj.chunk.js.map → B9FAS-p1.chunk.js.map} +1 -1
- package/dist/scripts/BAsU-_cO.chunk.js +2 -0
- package/dist/scripts/{DDtPt8Oy.chunk.js.map → BAsU-_cO.chunk.js.map} +1 -1
- package/dist/scripts/{Dr28tW01.chunk.js → BJUO8a2A.chunk.js} +2 -2
- package/dist/scripts/{Dr28tW01.chunk.js.map → BJUO8a2A.chunk.js.map} +1 -1
- package/dist/scripts/{DoLggBSu.chunk.js → BKLaPb8Z.chunk.js} +2 -2
- package/dist/scripts/{DoLggBSu.chunk.js.map → BKLaPb8Z.chunk.js.map} +1 -1
- package/dist/scripts/{fr9DW7QR.chunk.js → BMu5FhhA.chunk.js} +2 -2
- package/dist/scripts/{fr9DW7QR.chunk.js.map → BMu5FhhA.chunk.js.map} +1 -1
- package/dist/scripts/{BrHp5K-X.chunk.js → BSsgBjVY.chunk.js} +2 -2
- package/dist/scripts/{BrHp5K-X.chunk.js.map → BSsgBjVY.chunk.js.map} +1 -1
- package/dist/scripts/{C7v7YuIG.chunk.js → BT4JRb1Y.chunk.js} +2 -2
- package/dist/scripts/{C7v7YuIG.chunk.js.map → BT4JRb1Y.chunk.js.map} +1 -1
- package/dist/scripts/{CwLEz-p-.chunk.js → BTcOTDv_.chunk.js} +2 -2
- package/dist/scripts/{CwLEz-p-.chunk.js.map → BTcOTDv_.chunk.js.map} +1 -1
- package/dist/scripts/{DQFr5PPd.chunk.js → BXHBb_0I.chunk.js} +2 -2
- package/dist/scripts/{DQFr5PPd.chunk.js.map → BXHBb_0I.chunk.js.map} +1 -1
- package/dist/scripts/{Cb4tce-r.chunk.js → Ba3xCq1s.chunk.js} +2 -2
- package/dist/scripts/{Cb4tce-r.chunk.js.map → Ba3xCq1s.chunk.js.map} +1 -1
- package/dist/scripts/{CL4pALcK.chunk.js → Ba_KnYVR.chunk.js} +2 -2
- package/dist/scripts/{CL4pALcK.chunk.js.map → Ba_KnYVR.chunk.js.map} +1 -1
- package/dist/scripts/Bbv2kSGH.chunk.js +2 -0
- package/dist/scripts/{B_SfYU_Z.chunk.js.map → Bbv2kSGH.chunk.js.map} +1 -1
- package/dist/scripts/{DleGvW_4.chunk.js → Bc6W0MI6.chunk.js} +2 -2
- package/dist/scripts/{DleGvW_4.chunk.js.map → Bc6W0MI6.chunk.js.map} +1 -1
- package/dist/scripts/{ySnC80BC.chunk.js → BcqbWwtY.chunk.js} +2 -2
- package/dist/scripts/{ySnC80BC.chunk.js.map → BcqbWwtY.chunk.js.map} +1 -1
- package/dist/scripts/{D8WccEdk.chunk.js → BdkyXvBB.chunk.js} +2 -2
- package/dist/scripts/{D8WccEdk.chunk.js.map → BdkyXvBB.chunk.js.map} +1 -1
- package/dist/scripts/BdpMFXvX.chunk.js +2 -0
- package/dist/scripts/{BeMlNTkA.chunk.js.map → BdpMFXvX.chunk.js.map} +1 -1
- package/dist/scripts/{BjHsODRK.chunk.js → BgQsAU_t.chunk.js} +2 -2
- package/dist/scripts/{BjHsODRK.chunk.js.map → BgQsAU_t.chunk.js.map} +1 -1
- package/dist/scripts/{BGadFKMT.chunk.js → Biq7_-Qu.chunk.js} +2 -2
- package/dist/scripts/{BGadFKMT.chunk.js.map → Biq7_-Qu.chunk.js.map} +1 -1
- package/dist/scripts/{CyMTnTQB.chunk.js → Bk4jBWaN.chunk.js} +2 -2
- package/dist/scripts/{CyMTnTQB.chunk.js.map → Bk4jBWaN.chunk.js.map} +1 -1
- package/dist/scripts/{ocyN3mGw.chunk.js → BnkNxrEp.chunk.js} +2 -2
- package/dist/scripts/{ocyN3mGw.chunk.js.map → BnkNxrEp.chunk.js.map} +1 -1
- package/dist/scripts/{DxE8D48c.chunk.js → Br-w-uIM.chunk.js} +2 -2
- package/dist/scripts/{DxE8D48c.chunk.js.map → Br-w-uIM.chunk.js.map} +1 -1
- package/dist/scripts/{Bysn-kjB.chunk.js → BrNzIV_r.chunk.js} +2 -2
- package/dist/scripts/{Bysn-kjB.chunk.js.map → BrNzIV_r.chunk.js.map} +1 -1
- package/dist/scripts/{CGhbtKll.chunk.js → BtTmb52z.chunk.js} +2 -2
- package/dist/scripts/{CGhbtKll.chunk.js.map → BtTmb52z.chunk.js.map} +1 -1
- package/dist/scripts/{C4f1zB5D.chunk.js → BxNS_W6A.chunk.js} +2 -2
- package/dist/scripts/{C4f1zB5D.chunk.js.map → BxNS_W6A.chunk.js.map} +1 -1
- package/dist/scripts/{CqpUPtGp.chunk.js → C-VdYv59.chunk.js} +2 -2
- package/dist/scripts/{CqpUPtGp.chunk.js.map → C-VdYv59.chunk.js.map} +1 -1
- package/dist/scripts/{Cou4Uk_z.chunk.js → C25DVNqV.chunk.js} +2 -2
- package/dist/scripts/{Cou4Uk_z.chunk.js.map → C25DVNqV.chunk.js.map} +1 -1
- package/dist/scripts/{CISd2iel.chunk.js → C3oUPcIr.chunk.js} +2 -2
- package/dist/scripts/{CISd2iel.chunk.js.map → C3oUPcIr.chunk.js.map} +1 -1
- package/dist/scripts/{TSNK3Bg3.chunk.js → C5KITUPg.chunk.js} +2 -2
- package/dist/scripts/{TSNK3Bg3.chunk.js.map → C5KITUPg.chunk.js.map} +1 -1
- package/dist/scripts/{BQzaYetN.chunk.js → C70AJ8Ph.chunk.js} +2 -2
- package/dist/scripts/{BQzaYetN.chunk.js.map → C70AJ8Ph.chunk.js.map} +1 -1
- package/dist/scripts/{B_bh4_2-.chunk.js → COmkaZTY.chunk.js} +2 -2
- package/dist/scripts/{B_bh4_2-.chunk.js.map → COmkaZTY.chunk.js.map} +1 -1
- package/dist/scripts/{DTVmftQW.chunk.js → CSzv69qT.chunk.js} +2 -2
- package/dist/scripts/{DTVmftQW.chunk.js.map → CSzv69qT.chunk.js.map} +1 -1
- package/dist/scripts/{BuccZFco.chunk.js → CT4M6LAt.chunk.js} +2 -2
- package/dist/scripts/{BuccZFco.chunk.js.map → CT4M6LAt.chunk.js.map} +1 -1
- package/dist/scripts/{CQEBaZBs.chunk.js → CVGxJ58B.chunk.js} +2 -2
- package/dist/scripts/{CQEBaZBs.chunk.js.map → CVGxJ58B.chunk.js.map} +1 -1
- package/dist/scripts/{l5drRPeT.chunk.js → CZwze3a2.chunk.js} +2 -2
- package/dist/scripts/{l5drRPeT.chunk.js.map → CZwze3a2.chunk.js.map} +1 -1
- package/dist/scripts/{CqI1MQDE.chunk.js → CeFAm80O.chunk.js} +2 -2
- package/dist/scripts/{CqI1MQDE.chunk.js.map → CeFAm80O.chunk.js.map} +1 -1
- package/dist/scripts/{DVrIrni9.chunk.js → CjpryakR.chunk.js} +2 -2
- package/dist/scripts/{DVrIrni9.chunk.js.map → CjpryakR.chunk.js.map} +1 -1
- package/dist/scripts/{By_OMtDJ.chunk.js → CoXPUxT-.chunk.js} +2 -2
- package/dist/scripts/{By_OMtDJ.chunk.js.map → CoXPUxT-.chunk.js.map} +1 -1
- package/dist/scripts/{BUuCwkpu.chunk.js → Cu98NFjS.chunk.js} +2 -2
- package/dist/scripts/{BUuCwkpu.chunk.js.map → Cu98NFjS.chunk.js.map} +1 -1
- package/dist/scripts/{DX9fdMAU.chunk.js → Cy4rHX30.chunk.js} +2 -2
- package/dist/scripts/{DX9fdMAU.chunk.js.map → Cy4rHX30.chunk.js.map} +1 -1
- package/dist/scripts/{fcH9o5X3.chunk.js → D03Abjc_.chunk.js} +2 -2
- package/dist/scripts/{fcH9o5X3.chunk.js.map → D03Abjc_.chunk.js.map} +1 -1
- package/dist/scripts/{ChL5ufI4.chunk.js → D2a2dcGU.chunk.js} +2 -2
- package/dist/scripts/{ChL5ufI4.chunk.js.map → D2a2dcGU.chunk.js.map} +1 -1
- package/dist/scripts/{QIbgTj4j.chunk.js → D3ImQw2c.chunk.js} +2 -2
- package/dist/scripts/{QIbgTj4j.chunk.js.map → D3ImQw2c.chunk.js.map} +1 -1
- package/dist/scripts/{4dJGhLcF.chunk.js → D3hkQeI3.chunk.js} +2 -2
- package/dist/scripts/{4dJGhLcF.chunk.js.map → D3hkQeI3.chunk.js.map} +1 -1
- package/dist/scripts/{pYIH9TUm.chunk.js → D3i5M6Ra.chunk.js} +2 -2
- package/dist/scripts/{pYIH9TUm.chunk.js.map → D3i5M6Ra.chunk.js.map} +1 -1
- package/dist/scripts/{DhU1_zaa.chunk.js → D6PZ2zrc.chunk.js} +2 -2
- package/dist/scripts/{DhU1_zaa.chunk.js.map → D6PZ2zrc.chunk.js.map} +1 -1
- package/dist/scripts/{D2UAzuy_.chunk.js → DCZt5zdo.chunk.js} +2 -2
- package/dist/scripts/{D2UAzuy_.chunk.js.map → DCZt5zdo.chunk.js.map} +1 -1
- package/dist/scripts/{C5Um1mJN.chunk.js → DKEmRPe5.chunk.js} +2 -2
- package/dist/scripts/{C5Um1mJN.chunk.js.map → DKEmRPe5.chunk.js.map} +1 -1
- package/dist/scripts/{CqyexBBO.chunk.js → DOp0Y0kk.chunk.js} +2 -2
- package/dist/scripts/{CqyexBBO.chunk.js.map → DOp0Y0kk.chunk.js.map} +1 -1
- package/dist/scripts/{0O3fE335.chunk.js → DTO3v7TR.chunk.js} +2 -2
- package/dist/scripts/{0O3fE335.chunk.js.map → DTO3v7TR.chunk.js.map} +1 -1
- package/dist/scripts/{DcsoXCdt.chunk.js → Db208T_5.chunk.js} +2 -2
- package/dist/scripts/{DcsoXCdt.chunk.js.map → Db208T_5.chunk.js.map} +1 -1
- package/dist/scripts/{DsYAvL3r.chunk.js → DdKPWSa-.chunk.js} +2 -2
- package/dist/scripts/{DsYAvL3r.chunk.js.map → DdKPWSa-.chunk.js.map} +1 -1
- package/dist/scripts/{-pUO7-TY.chunk.js → DdaXMT9A.chunk.js} +2 -2
- package/dist/scripts/{-pUO7-TY.chunk.js.map → DdaXMT9A.chunk.js.map} +1 -1
- package/dist/scripts/Dequ_ZY-.chunk.js +2 -0
- package/dist/scripts/{CbuFJTrt.chunk.js.map → Dequ_ZY-.chunk.js.map} +1 -1
- package/dist/scripts/{qIzf4pm6.chunk.js → Dg5ezm9_.chunk.js} +2 -2
- package/dist/scripts/{qIzf4pm6.chunk.js.map → Dg5ezm9_.chunk.js.map} +1 -1
- package/dist/scripts/{E3OALlLu.chunk.js → DiFNkYHy.chunk.js} +2 -2
- package/dist/scripts/{E3OALlLu.chunk.js.map → DiFNkYHy.chunk.js.map} +1 -1
- package/dist/scripts/{SrHfrZ_D.chunk.js → DiVvth5j.chunk.js} +2 -2
- package/dist/scripts/{SrHfrZ_D.chunk.js.map → DiVvth5j.chunk.js.map} +1 -1
- package/dist/scripts/{DCXHIIUP.chunk.js → Dlp5KylI.chunk.js} +2 -2
- package/dist/scripts/{DCXHIIUP.chunk.js.map → Dlp5KylI.chunk.js.map} +1 -1
- package/dist/scripts/{wX0oeObx.chunk.js → DoOK7kUv.chunk.js} +2 -2
- package/dist/scripts/{wX0oeObx.chunk.js.map → DoOK7kUv.chunk.js.map} +1 -1
- package/dist/scripts/{CKHb3pvm.chunk.js → Dot69sAe.chunk.js} +2 -2
- package/dist/scripts/{CKHb3pvm.chunk.js.map → Dot69sAe.chunk.js.map} +1 -1
- package/dist/scripts/{gDhzFsR2.chunk.js → DsCmIb0y.chunk.js} +2 -2
- package/dist/scripts/{gDhzFsR2.chunk.js.map → DsCmIb0y.chunk.js.map} +1 -1
- package/dist/scripts/DulaiN8k.chunk.js +2 -0
- package/dist/scripts/{RDz68qfn.chunk.js.map → DulaiN8k.chunk.js.map} +1 -1
- package/dist/scripts/{CbvT5tOJ.chunk.js → DvopWUeu.chunk.js} +2 -2
- package/dist/scripts/{CbvT5tOJ.chunk.js.map → DvopWUeu.chunk.js.map} +1 -1
- package/dist/scripts/{3NU4Uele.chunk.js → Dvty4-yq.chunk.js} +2 -2
- package/dist/scripts/{3NU4Uele.chunk.js.map → Dvty4-yq.chunk.js.map} +1 -1
- package/dist/scripts/{YlT1G1sJ.chunk.js → DwdAMsTn.chunk.js} +2 -2
- package/dist/scripts/{YlT1G1sJ.chunk.js.map → DwdAMsTn.chunk.js.map} +1 -1
- package/dist/scripts/{CRQrsCQB.chunk.js → Dy5Hagep.chunk.js} +2 -2
- package/dist/scripts/{CRQrsCQB.chunk.js.map → Dy5Hagep.chunk.js.map} +1 -1
- package/dist/scripts/{DkFC8dkV.chunk.js → FARgFqug.chunk.js} +2 -2
- package/dist/scripts/{DkFC8dkV.chunk.js.map → FARgFqug.chunk.js.map} +1 -1
- package/dist/scripts/{DWrwMjZY.chunk.js → GXToHPHe.chunk.js} +2 -2
- package/dist/scripts/{DWrwMjZY.chunk.js.map → GXToHPHe.chunk.js.map} +1 -1
- package/dist/scripts/{D_y7C4wF.chunk.js → Mm1GvAIj.chunk.js} +2 -2
- package/dist/scripts/{D_y7C4wF.chunk.js.map → Mm1GvAIj.chunk.js.map} +1 -1
- package/dist/scripts/{BRcsVYw7.chunk.js → O_gDwfEj.chunk.js} +2 -2
- package/dist/scripts/{BRcsVYw7.chunk.js.map → O_gDwfEj.chunk.js.map} +1 -1
- package/dist/scripts/{DI__y4wi.chunk.js → PUKDcvT2.chunk.js} +2 -2
- package/dist/scripts/{DI__y4wi.chunk.js.map → PUKDcvT2.chunk.js.map} +1 -1
- package/dist/scripts/{LUhWZ6aW.chunk.js → SAoHi7e5.chunk.js} +2 -2
- package/dist/scripts/{LUhWZ6aW.chunk.js.map → SAoHi7e5.chunk.js.map} +1 -1
- package/dist/scripts/SErl8iiO.chunk.js +2 -0
- package/dist/scripts/{IxBH4lFI.chunk.js.map → SErl8iiO.chunk.js.map} +1 -1
- package/dist/scripts/{CImJqeCy.chunk.js → UgARO_Sh.chunk.js} +2 -2
- package/dist/scripts/{CImJqeCy.chunk.js.map → UgARO_Sh.chunk.js.map} +1 -1
- package/dist/scripts/{dniZ6e3H.chunk.js → UvQu1iiY.chunk.js} +2 -2
- package/dist/scripts/{dniZ6e3H.chunk.js.map → UvQu1iiY.chunk.js.map} +1 -1
- package/dist/scripts/aPq0PUkl.chunk.js +2 -0
- package/dist/scripts/{fftzBNKK.chunk.js.map → aPq0PUkl.chunk.js.map} +1 -1
- package/dist/scripts/{app-nj3yOqer.js → app-CAg-7ccU.js} +3 -3
- package/dist/scripts/{app-nj3yOqer.js.map → app-CAg-7ccU.js.map} +1 -1
- package/dist/scripts/{BaY6qhO_.chunk.js → cB6ytVLm.chunk.js} +2 -2
- package/dist/scripts/{BaY6qhO_.chunk.js.map → cB6ytVLm.chunk.js.map} +1 -1
- package/dist/scripts/{HiwCz-PT.chunk.js → c_eEfqOG.chunk.js} +2 -2
- package/dist/scripts/{HiwCz-PT.chunk.js.map → c_eEfqOG.chunk.js.map} +1 -1
- package/dist/scripts/{DKaBhZWG.chunk.js → fIpx79-n.chunk.js} +2 -2
- package/dist/scripts/{DKaBhZWG.chunk.js.map → fIpx79-n.chunk.js.map} +1 -1
- package/dist/scripts/{CE99prXT.chunk.js → qZQmdlst.chunk.js} +2 -2
- package/dist/scripts/{CE99prXT.chunk.js.map → qZQmdlst.chunk.js.map} +1 -1
- package/dist/scripts/{Cau1TcaF.chunk.js → thJth_Km.chunk.js} +2 -2
- package/dist/scripts/{Cau1TcaF.chunk.js.map → thJth_Km.chunk.js.map} +1 -1
- package/dist/scripts/{DprAwPn0.chunk.js → u8PxaIUU.chunk.js} +2 -2
- package/dist/scripts/{DprAwPn0.chunk.js.map → u8PxaIUU.chunk.js.map} +1 -1
- package/dist/scripts/{BVJN5cea.chunk.js → uiiMcBcy.chunk.js} +2 -2
- package/dist/scripts/{BVJN5cea.chunk.js.map → uiiMcBcy.chunk.js.map} +1 -1
- package/dist/scripts/w6RjnEDK.chunk.js +2 -0
- package/dist/scripts/{DnrIQC4C.chunk.js.map → w6RjnEDK.chunk.js.map} +1 -1
- package/package.json +1 -1
- package/dist/scripts/B_SfYU_Z.chunk.js +0 -2
- package/dist/scripts/BeMlNTkA.chunk.js +0 -2
- package/dist/scripts/CbuFJTrt.chunk.js +0 -2
- package/dist/scripts/DDtPt8Oy.chunk.js +0 -2
- package/dist/scripts/DnrIQC4C.chunk.js +0 -2
- package/dist/scripts/IxBH4lFI.chunk.js +0 -2
- package/dist/scripts/RDz68qfn.chunk.js +0 -2
- package/dist/scripts/fftzBNKK.chunk.js +0 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{j as a}from"./app-
|
|
2
|
-
//# sourceMappingURL=
|
|
1
|
+
import{j as a}from"./app-CAg-7ccU.js";function s(e){return a.jsx("span",{id:`${e.name}Error`,className:`${e.className} invalid-feedback d-block`,role:"status",children:e.children})}export{s as F};
|
|
2
|
+
//# sourceMappingURL=11puwNJo.chunk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"11puwNJo.chunk.js","sources":["../../../../libs/shared/src/components/forms/form-feedback/FormFeedback.tsx"],"sourcesContent":["import React from 'react';\n\ninterface FormFeedbackProps extends React.PropsWithChildren {\n name: string;\n className?: string;\n}\n\nexport function FormFeedback(props: FormFeedbackProps) {\n return (\n <span id={`${props.name}Error`} className={`${props.className} invalid-feedback d-block`} role='status'>{props.children}</span>\n );\n}"],"names":["FormFeedback","props","jsx"],"mappings":"sCAOO,SAASA,EAAaC,EAA0B,CACrD,OACEC,EAAAA,IAAC,OAAA,CAAK,GAAI,GAAGD,EAAM,IAAI,QAAS,UAAW,GAAGA,EAAM,SAAS,4BAA6B,KAAK,SAAU,WAAM,SAAS,CAE5H"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{j as a}from"./app-
|
|
2
|
-
//# sourceMappingURL=
|
|
1
|
+
import{j as a}from"./app-CAg-7ccU.js";function h(l){return a.jsx("svg",{...l,children:a.jsx("path",{fill:"currentColor",d:"M4.007 5.007A1.73 1.73 0 0 1 5.23 4.5h3.077a1.73 1.73 0 0 1 1.384.692l1.327 1.77h7.75a1.73 1.73 0 0 1 1.731 1.73v8.616a1.73 1.73 0 0 1-1.73 1.73H5.23a1.73 1.73 0 0 1-1.73-1.73V6.23c0-.46.182-.9.507-1.224M5.23 5.5a.73.73 0 0 0-.731.73V9.5h15v-.808a.73.73 0 0 0-.73-.73h-8a.5.5 0 0 1-.4-.2l-1.478-1.97a.73.73 0 0 0-.584-.292zm14.269 5h-15v6.808a.73.73 0 0 0 .73.73h13.54a.73.73 0 0 0 .73-.73z"})})}function t(l){return a.jsx("svg",{...l,children:a.jsx("path",{d:"M5 6v12h14V6zm0-1h14a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1m2.4 10.3a.5.5 0 0 1-.8-.6l3-4a.5.5 0 0 1 .754-.054l.579.58 1.765-2.513a.5.5 0 0 1 .83.015l3.891 6a.5.5 0 0 1-.838.544l-3.49-5.379-1.682 2.394a.5.5 0 0 1-.763.067l-.592-.593zm.6-4.8a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3m0-1a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1",fill:"currentColor"})})}export{h as F,t as a};
|
|
2
|
+
//# sourceMappingURL=2-mHspOU.chunk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"2-mHspOU.chunk.js","sources":["../../../../libs/shared/src/images/svg/objects/FolderSvg.tsx","../../../../libs/shared/src/images/svg/objects/FileImgSvg.tsx"],"sourcesContent":["import React from 'react';\n\nexport function FolderSvg(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg {...props}>\n <path\n fill='currentColor'\n d='M4.007 5.007A1.73 1.73 0 0 1 5.23 4.5h3.077a1.73 1.73 0 0 1 1.384.692l1.327 1.77h7.75a1.73 1.73 0 0 1 1.731 1.73v8.616a1.73 1.73 0 0 1-1.73 1.73H5.23a1.73 1.73 0 0 1-1.73-1.73V6.23c0-.46.182-.9.507-1.224M5.23 5.5a.73.73 0 0 0-.731.73V9.5h15v-.808a.73.73 0 0 0-.73-.73h-8a.5.5 0 0 1-.4-.2l-1.478-1.97a.73.73 0 0 0-.584-.292zm14.269 5h-15v6.808a.73.73 0 0 0 .73.73h13.54a.73.73 0 0 0 .73-.73z'\n />\n </svg>\n );\n}\n","import React from 'react';\n\nexport function FileImgSvg(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg {...props}>\n <path\n d='M5 6v12h14V6zm0-1h14a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1m2.4 10.3a.5.5 0 0 1-.8-.6l3-4a.5.5 0 0 1 .754-.054l.579.58 1.765-2.513a.5.5 0 0 1 .83.015l3.891 6a.5.5 0 0 1-.838.544l-3.49-5.379-1.682 2.394a.5.5 0 0 1-.763.067l-.592-.593zm.6-4.8a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3m0-1a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1'\n fill='currentColor'\n />\n </svg>\n );\n}\n"],"names":["FolderSvg","props","jsx","FileImgSvg"],"mappings":"sCAEO,SAASA,EAAUC,EAAsC,CAC9D,OACEC,EAAAA,IAAC,MAAA,CAAK,GAAGD,EACP,SAAAC,EAAAA,IAAC,OAAA,CACC,KAAK,eACL,EAAE,wYAAA,CAAA,EAEN,CAEJ,CCTO,SAASC,EAAWF,EAAsC,CAC/D,OACEC,EAAAA,IAAC,MAAA,CAAK,GAAGD,EACP,SAAAC,EAAAA,IAAC,OAAA,CACC,EAAE,iVACF,KAAK,cAAA,CAAA,EAET,CAEJ"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a2 as o,j as e,P as x,L as h,al as g,B as d,x as m,a4 as j}from"./app-
|
|
2
|
-
//# sourceMappingURL=
|
|
1
|
+
import{a2 as o,j as e,P as x,L as h,al as g,B as d,x as m,a4 as j}from"./app-CAg-7ccU.js";import{u as b}from"./aPq0PUkl.chunk.js";import{T as n}from"./C3oUPcIr.chunk.js";import{u as C}from"./BdpMFXvX.chunk.js";import"./D2a2dcGU.chunk.js";const a="tv.adFreeRequest",u=h.encloseNamespace(a);function f(t){const r=o(j.currentUser()),i=o(n.region(t.region)),l=o(n.program(t.id)),s=o(r.data&&i.data&&n.adFreeCredits(r.data.id,r.data.customerId,i.data.code));C(i,!0),b(l.statusCode);const c=r.hasCompleted&&i.hasCompleted&&l.hasCompleted&&s.hasCompleted,p=s.data.maxAvailableCredit-s.data.userRequests;return e.jsxs(x,{title:u("title"),closePopup:t.closePopup,showLoadingSpinner:!c,children:[c&&e.jsxs("div",{className:"text-center",children:[e.jsx("img",{src:g.General.PAPER_PLANE,className:"img-fluid w-50 mb-3",draggable:!1}),e.jsx("h2",{className:"h4 mb-2",children:e.jsx(d,{namespace:a,phrase:"requestSent"})}),e.jsx("div",{className:"bg-dark rounded-pill text-white d-inline-block fw-semibold border border-dark py-0 px-2 mb-2",children:e.jsx(d,{namespace:a,phrase:"remaining",options:{smartCount:p}})}),e.jsxs("div",{className:"pb-1",children:[e.jsx("p",{className:"mb-2",children:e.jsx(d,{namespace:a,phrase:"requestDaily",options:{dailyLimit:s.data.maxAvailableCredit}})}),e.jsx("p",{className:"mb-3",children:e.jsx(d,{namespace:a,phrase:"requestHours",options:{dailyLimit:s.data.maxAvailableCredit}})})]})]}),e.jsx(m,{children:e.jsx(m.Cancel,{text:u("close"),onClick:t.closePopup,variant:"link"})})]})}export{f as TvAdFreeRequestView};
|
|
2
|
+
//# sourceMappingURL=4fNVRbjv.chunk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"4fNVRbjv.chunk.js","sources":["../../src/apps/tv/views/tv-ad-free-request/TvAdFreeRequestView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\n\nimport { Popup } from 'libs/shared/components/popup/Popup';\nimport { PopupButtons } from 'libs/shared/components/popup/PopupButtons';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useHandleDialogError } from 'libs/shared/hooks/UseHandleDialogError';\nimport { CurrentUser, PopupViewProps } from 'libs/shared/interfaces';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nimport { TvRequests } from 'apps/tv/flight-requests/TvRequests';\nimport { useHandleRegionError } from 'apps/tv/hooks/useHandleRegionError';\nimport { AdFreeCredits } from 'apps/tv/interfaces/models/AdFreeCredits';\nimport { TvProgram } from 'apps/tv/interfaces/models/TvProgram';\nimport { TvRegion } from 'apps/tv/interfaces/models/TvRegion';\n\nconst namespace = 'tv.adFreeRequest';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface TvAdFreeRequestViewProps extends PopupViewProps {\n id: string;\n region: string;\n}\n\nexport function TvAdFreeRequestView(props: TvAdFreeRequestViewProps): JSX.Element {\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const region = Flight.useBasicFetch<TvRegion>(TvRequests.region(props.region));\n const program = Flight.useBasicFetch<TvProgram>(TvRequests.program(props.id));\n const adFreeCredits = Flight.useBasicFetch<AdFreeCredits>(\n currentUser.data &&\n region.data &&\n TvRequests.adFreeCredits(\n currentUser.data.id,\n currentUser.data.customerId,\n region.data.code\n )\n );\n\n useHandleRegionError(region, true);\n useHandleDialogError(program.statusCode);\n\n const hasLoaded = (\n currentUser.hasCompleted &&\n region.hasCompleted &&\n program.hasCompleted &&\n adFreeCredits.hasCompleted\n );\n\n const remainingRequests = adFreeCredits.data.maxAvailableCredit - adFreeCredits.data.userRequests;\n\n return (\n <Popup\n title={getPhrase('title')}\n closePopup={props.closePopup}\n showLoadingSpinner={!hasLoaded}\n >\n {hasLoaded &&\n <div className='text-center'>\n <img src={ImageUrls.General.PAPER_PLANE} className='img-fluid w-50 mb-3' draggable={false} />\n <h2 className='h4 mb-2'><Text namespace={namespace} phrase='requestSent' /></h2>\n <div className='bg-dark rounded-pill text-white d-inline-block fw-semibold border border-dark py-0 px-2 mb-2'>\n <Text namespace={namespace} phrase='remaining' options={{ smartCount: remainingRequests }} />\n </div>\n <div className='pb-1'>\n <p className='mb-2'>\n <Text namespace={namespace} phrase='requestDaily' options={{ dailyLimit: adFreeCredits.data.maxAvailableCredit }} />\n </p>\n <p className='mb-3'>\n <Text namespace={namespace} phrase='requestHours' options={{ dailyLimit: adFreeCredits.data.maxAvailableCredit }} />\n </p>\n </div>\n </div>\n }\n\n <PopupButtons>\n <PopupButtons.Cancel\n text={getPhrase('close')}\n onClick={props.closePopup}\n variant='link'\n />\n </PopupButtons>\n </Popup>\n );\n}"],"names":["namespace","getPhrase","LanguageService","TvAdFreeRequestView","props","currentUser","Flight.useBasicFetch","UserRequests","region","TvRequests","program","adFreeCredits","useHandleRegionError","useHandleDialogError","hasLoaded","remainingRequests","jsxs","Popup","jsx","ImageUrls","Text","PopupButtons"],"mappings":"8OAoBA,MAAMA,EAAY,mBACZC,EAAYC,EAAgB,iBAAiBF,CAAS,EAOrD,SAASG,EAAoBC,EAA8C,CAChF,MAAMC,EAAcC,EAAkCC,EAAa,aAAa,EAC1EC,EAASF,EAA+BG,EAAW,OAAOL,EAAM,MAAM,CAAC,EACvEM,EAAUJ,EAAgCG,EAAW,QAAQL,EAAM,EAAE,CAAC,EACtEO,EAAgBL,EACpBD,EAAY,MACZG,EAAO,MACPC,EAAW,cACTJ,EAAY,KAAK,GACjBA,EAAY,KAAK,WACjBG,EAAO,KAAK,IAAA,CACd,EAGFI,EAAqBJ,EAAQ,EAAI,EACjCK,EAAqBH,EAAQ,UAAU,EAEvC,MAAMI,EACJT,EAAY,cACZG,EAAO,cACPE,EAAQ,cACRC,EAAc,aAGVI,EAAoBJ,EAAc,KAAK,mBAAqBA,EAAc,KAAK,aAErF,OACEK,EAAAA,KAACC,EAAA,CACC,MAAOhB,EAAU,OAAO,EACxB,WAAYG,EAAM,WAClB,mBAAoB,CAACU,EAEpB,SAAA,CAAAA,GACCE,EAAAA,KAAC,MAAA,CAAI,UAAU,cACb,SAAA,CAAAE,EAAAA,IAAC,MAAA,CAAI,IAAKC,EAAU,QAAQ,YAAa,UAAU,sBAAsB,UAAW,EAAA,CAAO,EAC3FD,EAAAA,IAAC,MAAG,UAAU,UAAU,eAACE,EAAA,CAAK,UAAApB,EAAsB,OAAO,aAAA,CAAc,CAAA,CAAE,EAC3EkB,EAAAA,IAAC,MAAA,CAAI,UAAU,+FACb,eAACE,EAAA,CAAK,UAAApB,EAAsB,OAAO,YAAY,QAAS,CAAE,WAAYe,CAAA,EAAqB,EAC7F,EACAC,EAAAA,KAAC,MAAA,CAAI,UAAU,OACb,SAAA,CAAAE,MAAC,IAAA,CAAE,UAAU,OACX,SAAAA,EAAAA,IAACE,GAAK,UAAApB,EAAsB,OAAO,eAAe,QAAS,CAAE,WAAYW,EAAc,KAAK,kBAAA,EAAsB,EACpH,QACC,IAAA,CAAE,UAAU,OACX,SAAAO,EAAAA,IAACE,GAAK,UAAApB,EAAsB,OAAO,eAAe,QAAS,CAAE,WAAYW,EAAc,KAAK,kBAAA,EAAsB,CAAA,CACpH,CAAA,CAAA,CACF,CAAA,EACF,QAGDU,EAAA,CACC,SAAAH,EAAAA,IAACG,EAAa,OAAb,CACC,KAAMpB,EAAU,OAAO,EACvB,QAASG,EAAM,WACf,QAAQ,MAAA,CAAA,CACV,CACF,CAAA,CAAA,CAAA,CAGN"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Z as r,aN as n}from"./app-
|
|
2
|
-
//# sourceMappingURL=
|
|
1
|
+
import{Z as r,aN as n}from"./app-CAg-7ccU.js";function v(e,t){const[o,i]=r(`exchange:preview:${e}`,t?n.getPreviousRoute():void 0);return{previewContext:o,clearPreviewContext:()=>i(void 0)}}export{v as u};
|
|
2
|
+
//# sourceMappingURL=6JMI0Hhs.chunk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"6JMI0Hhs.chunk.js","sources":["../../src/apps/exchange/hooks/usePreviewContext.ts"],"sourcesContent":["import { Core } from 'libs/common/core';\nimport { useViewModel } from 'libs/common/react/hooks/UseViewModel';\n\nimport { ContextService } from 'libs/shared/services/ContextService';\n\ninterface ContentViewModel {\n appLink: Core.AppLink;\n}\n\nexport function usePreviewContext(videoId: string, init: boolean) {\n const [ previewContext, setViewModel ] = useViewModel<ContentViewModel>(\n `exchange:preview:${videoId}`,\n init ? ContextService.getPreviousRoute() : undefined\n );\n\n return {\n previewContext,\n clearPreviewContext: () => setViewModel(undefined)\n };\n}"],"names":["usePreviewContext","videoId","init","previewContext","setViewModel","useViewModel","ContextService"],"mappings":"8CASO,SAASA,EAAkBC,EAAiBC,EAAe,CAChE,KAAM,CAAEC,EAAgBC,CAAa,EAAIC,EACvC,oBAAoBJ,CAAO,GAC3BC,EAAOI,EAAe,mBAAqB,MAAA,EAG7C,MAAO,CACL,eAAAH,EACA,oBAAqB,IAAMC,EAAa,MAAS,CAAA,CAErD"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{L as v,aK as O,aA as q,j as a,a0 as Q,B as x,x as D,a1 as X,a2 as C,a3 as Z,P as S,bL as ee,a4 as ae,aa as U,aR as k,ab as E,ac as Y,ad as B,ae as V}from"./app-
|
|
2
|
-
//# sourceMappingURL=
|
|
1
|
+
import{L as v,aK as O,aA as q,j as a,a0 as Q,B as x,x as D,a1 as X,a2 as C,a3 as Z,P as S,bL as ee,a4 as ae,aa as U,aR as k,ab as E,ac as Y,ad as B,ae as V}from"./app-CAg-7ccU.js";import{l as o,F as h,a as se}from"./C-VdYv59.chunk.js";import{I as M}from"./CJ3oIQlG.chunk.js";import{u as ne}from"./DoOK7kUv.chunk.js";import{u as te}from"./FARgFqug.chunk.js";import{a as oe,T as I}from"./C3oUPcIr.chunk.js";import{g as $}from"./C5KITUPg.chunk.js";import{F as re}from"./CVGxJ58B.chunk.js";import"./CT4M6LAt.chunk.js";var G=(e=>(e.Integrations="4407268725529",e.Classrooms="4405362551833",e.MakeInteractive="4405370510873",e.EditSsoAccounts="8202605666073",e.UploadToLibraryEditor="42463303326489",e.AddFromLite="42450541662233",e.ManageSsoYearGroups="14691130889241",e.ContentReview="18525199576601",e.ContentPermissions="14692125209497",e.AccessSettings="27927466562201",e.ContentGuidelines="24133696186009",e.FoxtelFaq="24133519542169",e.ViviIntegration="23826297956377",e.AppleTvIntegration="25832373739929",e.RssFeed="32567445635097",e.ManageGroupPermissions="35407217335705",e.MarcFormatDifferences="48276917260441",e.ExportLibraries="17684275853465",e.StudentSharingGuide="50326395499417",e.Sharing="49512742828953",e))(G||{}),H=(e=>(e[e.BbcRes=0]="BbcRes",e))(H||{});const ie="tv.requestProgramValidation",f=v.encloseNamespace(ie);function ce(e){return e?o.object().shape({channelId:o.string().required(f("channelRequired")),title:o.string().required(f("programRequired")),broadcastDate:o.string().required(f("dateRequired")),broadcastTime:o.string().required(f("timeRequired")),closedCaptions:o.string(),comments:o.string()}):o.object().shape({title:o.string().required(f("programRequired")),comments:o.string()})}const g="tv.requestProgramForm",r=v.encloseNamespace(g);function le(e){const c=O(),b=q.format(q.add(new Date,4,"days"),"YYYY-MM-DD"),i=q.format(q.add(b,11,"days"),"YYYY-MM-DD"),s=$(e.instanceRegion);return a.jsxs(Q,{children:[e.channels&&a.jsxs(h,{as:"select",label:r("channelLabel"),name:"channelId",value:c.values.channelId,showRequiredStar:!0,children:[a.jsx("option",{value:"",children:v.getPhrase(g,"channelPlaceholder")},0),e.channels.map(l=>a.jsx("option",{value:l.id,children:`${l.name} - (${l.number})`},l.id))]}),a.jsx(h,{label:r("programLabel"),placeholder:r("programPlaceholder"),type:"text",name:"title",value:c.values.title,showRequiredStar:!0}),e.channels&&a.jsxs("div",{className:"d-flex",children:[a.jsx("div",{className:"w-50 me-2",children:a.jsx(h,{label:r("broadcastDateLabel"),type:"date",name:"broadcastDate",value:c.values.broadcastDate,min:b,max:i,showRequiredStar:!0})}),a.jsx("div",{className:"w-50",children:a.jsx(h,{label:r("broadcastTimeLabel"),type:"time",name:"broadcastTime",value:c.values.broadcastTime,className:"mb-0",showRequiredStar:!0})})]}),a.jsx("p",{className:"mt-n1",children:a.jsx("small",{children:a.jsx(x,{namespace:g,phrase:s.programGuidePhraseKey})})}),e.channels&&a.jsxs("div",{className:"d-flex",children:[a.jsx("div",{className:"w-50 me-2",children:a.jsxs(h,{as:"select",label:r("ccLabel"),name:"closedCaptions",value:c.values.closedCaptions,children:[a.jsx("option",{value:"",children:v.getPhrase(g,"ccNo")}),a.jsx("option",{value:"yes",children:v.getPhrase(g,"ccYes")})]})}),a.jsx("div",{className:"w-50"})]}),a.jsx(h,{label:r(e.channels?"commentsLabel":"additionalInfoLabel"),placeholder:r(e.channels?"commentsPlaceholder":"additionalInfoPlaceholder"),type:"text",name:"comments",value:c.values.comments}),a.jsx("p",{children:a.jsx(x,{namespace:g,phrase:"note",options:{tv:s.tv}})}),a.jsxs(D,{children:[a.jsx(D.Cancel,{text:r("cancel"),onClick:e.onClickCancel,variant:"link"}),a.jsx(re,{variant:"dark",submitText:r("request")})]})]})}const de={channelId:"",title:"",broadcastDate:"",broadcastTime:"",closedCaptions:"",comments:""},R="tv.requestProgram",P=v.encloseNamespace(R);function Pe(e){const c=X(),b=ne(),i=e.instanceRegion===M.AU,s=C(ae.currentUser()),l=e.instanceRegion===M.UK,y=C(l&&Z.customer(s.data.customerId)),p=C(i&&I.payTvChannels()),d=$(e.instanceRegion);function K(){e.closePopup()}const{loading:W,handleGenerateReportError:A}=te();function L(n){var m;if(i){const t=(m=p.data)==null?void 0:m.find(j=>String(j.id)===n.channelId);b.success(P("successChannel",{tv:d.tv,program:n.title,channel:t==null?void 0:t.name})),U.logUserAction({channel:t.id,name:t.name,program:n.title,region:e.region},{actionType:V.Submit,entity:B.Video,location:Y.Popup,workflowPhase:E.Complete,descriptor:k.RequestProgram})}else b.success(P("successNoChannel",{tv:d.tv,program:n.title})),U.logUserAction({program:n.title,region:e.region},{actionType:V.Submit,entity:B.Video,location:Y.Popup,workflowPhase:E.Complete,descriptor:k.RequestProgram})}function _(n){var T,w,F,N;const{broadcastDate:m,broadcastTime:t,closedCaptions:j,...u}=n;return l?{title:u.title,comments:u.comments,crmId:y.data.crmId,customerName:y.data.name,email:s.data.email,type:H.BbcRes,username:s.data.username}:i?{...u,closedCaptions:!!j,regionCode:e.region,programDateTime:`${m}T${t}`,userId:(T=s.data)==null?void 0:T.id,customerId:(w=s.data)==null?void 0:w.customerId}:{...u,regionCode:e.region,userId:(F=s.data)==null?void 0:F.id,customerId:(N=s.data)==null?void 0:N.customerId}}async function z(n,m){const t=_(n),j=l?I.requestProgramUk(t):I.requestProgram(t);try{await c(j),m(),L(n)}catch(u){A(u,P("error"),P("noEmailError"))}e.closePopup()}const J=s.hasCompleted&&(i&&p.hasCompleted||!i);return a.jsxs(S,{title:P("title",{tv:d.tv}),closePopup:e.closePopup,showLoadingSpinner:!J||W,children:[oe.isHolidayPeriod()&&a.jsxs("div",{className:"alert alert-warning",role:"alert",children:[a.jsx("h3",{className:"h5",children:a.jsx(x,{namespace:R,phrase:"requestAlertHeading"})}),a.jsx("p",{className:"m-0",children:a.jsx(x,{namespace:R,phrase:"requestAlertBody",options:{tv:d.tv}})})]}),a.jsx("p",{children:a.jsx(x,{namespace:R,phrase:"description",options:{tv:d.tv}})}),a.jsx("p",{children:a.jsx(x,{namespace:R,phrase:"moreInfo",options:{tv:d.tv,faqUrl:ee.getLiteArticle(G.FoxtelFaq)}})}),p&&a.jsx(se,{initialValues:de,validationSchema:ce(i),onSubmit:z,children:a.jsx(le,{onClickCancel:K,channels:i&&p.data,instanceRegion:e.instanceRegion})})]})}export{Pe as TvRequestProgramView};
|
|
2
|
+
//# sourceMappingURL=8qib0Mvd.chunk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BiFlN7Ya.chunk.js","sources":["../../../../libs/shared/src/enums/SupportArticle.ts","../../src/apps/tv/interfaces/requests/RequestProgramRequest.ts","../../src/apps/tv/utils/validation/RequestProgramValidation.ts","../../src/apps/tv/views/tv-request-program/components/TvRequestProgramForm.tsx","../../src/apps/tv/views/tv-request-program/TvRequestProgramView.tsx"],"sourcesContent":["// Article name mapped to article ID on support site. Used by `ArticleHelper`\n\nexport enum OnlineSupportArticle {\n AddToPlaylist = '115005679748',\n EditSsoAccounts = '8202508040345',\n\n // LE\n LibraryEditor = '360001974533',\n VideoAccess = '360000153947',\n AddFromOnline = '360011718234',\n UploadToLibraryEditor = '360012069334',\n PBTErrorCodes = '360012421153',\n ManuelReview = '360020004534',\n LibraryReview = '360000163788',\n}\n\nexport enum LiteSupportArticle {\n Integrations = '4407268725529',\n Classrooms = '4405362551833',\n MakeInteractive = '4405370510873',\n EditSsoAccounts = '8202605666073',\n UploadToLibraryEditor = '42463303326489',\n AddFromLite = '42450541662233',\n ManageSsoYearGroups = '14691130889241',\n ContentReview = '18525199576601',\n ContentPermissions = '14692125209497',\n AccessSettings = '27927466562201',\n ContentGuidelines = '24133696186009',\n FoxtelFaq = '24133519542169',\n ViviIntegration = '23826297956377',\n AppleTvIntegration = '25832373739929',\n RssFeed = '32567445635097',\n ManageGroupPermissions = '35407217335705',\n MarcFormatDifferences = '48276917260441',\n ExportLibraries = '17684275853465',\n StudentSharingGuide = '50326395499417',\n Sharing = '49512742828953'\n}\n","export enum FulfillmentStatus {\n Unfulfilled = 0,\n CurrentlyBeingProcessed = 1,\n Fulfilled = 2\n}\n\nexport interface RequestProgramRequest {\n title: string;\n comments: string;\n regionCode: string;\n userId: string;\n customerId: string;\n channelId?: string;\n programDateTime?: string;\n closedCaptions?: boolean;\n}\n\nexport enum ProgramRequestType {\n BbcRes\n}\n\nexport interface RequestProgramUkRequest {\n title: string;\n comments: string;\n customerName: string;\n email: string;\n crmId: string;\n type: 0;\n username: string;\n}","import { object, string } from 'yup';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nconst namespace = 'tv.requestProgramValidation';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport function RequestProgramValidation(hasChannels: boolean) {\n return hasChannels\n ? object().shape({\n channelId: string().required(getPhrase('channelRequired')),\n title: string().required(getPhrase('programRequired')),\n broadcastDate: string().required(getPhrase('dateRequired')),\n broadcastTime: string().required(getPhrase('timeRequired')),\n closedCaptions: string(),\n comments: string()\n })\n : object().shape({\n title: string().required(getPhrase('programRequired')),\n comments: string()\n });\n}\n","import React from 'react';\nimport { Form, useFormikContext } from 'formik';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { DateHelper } from 'libs/common/react/utils/DateHelper';\n\nimport { FormButtons } from 'libs/shared/components/forms/form-buttons/FormButtons';\nimport { FormField } from 'libs/shared/components/forms/form-field/FormField';\nimport { PopupButtons } from 'libs/shared/components/popup/PopupButtons';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { InstanceRegion } from 'libs/shared/enums/InstanceRegion';\n\nimport { RequestProgramModel } from 'apps/tv/interfaces/models/RequestProgram';\nimport { PayTvChannel } from 'apps/tv/interfaces/models/TvChannel';\nimport { RequestProgramRequest } from 'apps/tv/interfaces/requests/RequestProgramRequest';\nimport { getRegionInfo } from 'apps/tv/utils/getRegionInfo/getRegionInfo';\n\nconst namespace = 'tv.requestProgramForm';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface TvRequestProgramFormProps {\n channels?: PayTvChannel[];\n instanceRegion: InstanceRegion;\n onClickCancel: () => void;\n}\n\nexport function TvRequestProgramForm(props: TvRequestProgramFormProps) {\n const formikProps = useFormikContext<RequestProgramModel>();\n\n const minDate = DateHelper.format(DateHelper.add(new Date(), 4, 'days'), 'YYYY-MM-DD');\n const maxDate = DateHelper.format(DateHelper.add(minDate, 11, 'days'), 'YYYY-MM-DD');\n\n const regionInfo = getRegionInfo(props.instanceRegion);\n\n return (\n <Form>\n {props.channels && (\n <FormField\n as='select'\n label={getPhrase('channelLabel')}\n name='channelId'\n value={formikProps.values.channelId}\n showRequiredStar\n >\n <option key={0} value=''>{LanguageService.getPhrase(namespace, 'channelPlaceholder')}</option>\n {props.channels.map(channel => (\n <option key={channel.id} value={channel.id}>{`${channel.name} - (${channel.number})`}</option>\n ))}\n </FormField>)\n }\n\n <FormField\n label={getPhrase('programLabel')}\n placeholder={getPhrase('programPlaceholder')}\n type='text'\n name='title'\n value={formikProps.values.title}\n showRequiredStar\n />\n\n {props.channels && (\n <div className='d-flex'>\n <div className='w-50 me-2'>\n <FormField\n label={getPhrase('broadcastDateLabel')}\n type='date'\n name='broadcastDate'\n value={formikProps.values.broadcastDate}\n min={minDate}\n max={maxDate}\n showRequiredStar\n />\n </div>\n <div className='w-50'>\n <FormField\n label={getPhrase('broadcastTimeLabel')}\n type='time'\n name='broadcastTime'\n value={formikProps.values.broadcastTime}\n className='mb-0'\n showRequiredStar\n />\n </div>\n </div>\n )}\n\n <p className='mt-n1'>\n <small><Text namespace={namespace} phrase={regionInfo.programGuidePhraseKey} /></small>\n </p>\n\n {props.channels && (\n <div className='d-flex'>\n <div className='w-50 me-2'>\n <FormField\n as='select'\n label={getPhrase('ccLabel')}\n name='closedCaptions'\n value={formikProps.values.closedCaptions}\n >\n <option value=''>{LanguageService.getPhrase(namespace, 'ccNo')}</option>\n <option value='yes'>{LanguageService.getPhrase(namespace, 'ccYes')}</option>\n </FormField>\n </div>\n <div className='w-50'></div>\n </div>\n )}\n \n <FormField\n label={getPhrase(props.channels ? 'commentsLabel' : 'additionalInfoLabel')}\n placeholder={getPhrase(props.channels ? 'commentsPlaceholder' : 'additionalInfoPlaceholder')}\n type='text'\n name='comments'\n value={formikProps.values.comments}\n />\n\n <p><Text namespace={namespace} phrase='note' options={{ tv: regionInfo.tv }} /></p>\n\n <PopupButtons>\n <PopupButtons.Cancel\n text={getPhrase('cancel')}\n onClick={props.onClickCancel}\n variant='link'\n />\n <FormButtons<RequestProgramRequest> variant='dark' submitText={getPhrase('request')}/>\n </PopupButtons>\n </Form>\n );\n}\n","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/react/index';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\nimport { EntityType, LocationContext, TvDescriptor, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\n\nimport { FormWrapper } from 'libs/shared/components/forms/form-wrapper/FormWrapper';\nimport { Popup } from 'libs/shared/components/popup/Popup';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { InstanceRegion } from 'libs/shared/enums/InstanceRegion';\nimport { LiteSupportArticle } from 'libs/shared/enums/SupportArticle';\nimport { CustomerRequests } from 'libs/shared/flight-requests/CustomerRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { useVerifiedEmailRequiredErrorHandler } from 'libs/shared/hooks/useVerifiedEmailRequiredErrorHandler';\nimport { CurrentUser, Customer, PopupViewProps } from 'libs/shared/interfaces';\nimport { ArticleHelper } from 'libs/shared/utils/ArticleHelper';\n\nimport { TvRequests } from 'apps/tv/flight-requests/TvRequests';\nimport { RequestProgramModel } from 'apps/tv/interfaces/models/RequestProgram';\nimport { PayTvChannel } from 'apps/tv/interfaces/models/TvChannel';\nimport { ProgramRequestType, RequestProgramRequest, RequestProgramUkRequest } from 'apps/tv/interfaces/requests/RequestProgramRequest';\nimport { getRegionInfo } from 'apps/tv/utils/getRegionInfo/getRegionInfo';\nimport { TvUtils } from 'apps/tv/utils/TvUtils';\nimport { RequestProgramValidation } from 'apps/tv/utils/validation/RequestProgramValidation';\nimport { TvRequestProgramForm } from 'apps/tv/views/tv-request-program/components/TvRequestProgramForm';\n\nconst INITIAL_VALUES = {\n channelId: '',\n title: '',\n broadcastDate: '',\n broadcastTime: '',\n closedCaptions: '',\n comments: ''\n};\n\nconst namespace = 'tv.requestProgram';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface TvRequestProgramProps extends PopupViewProps {\n region: string;\n instanceRegion: InstanceRegion;\n}\n\nexport function TvRequestProgramView(props: TvRequestProgramProps) {\n const fetchAsync = Flight.useGetFetchAsync();\n const alerts = useAlerts();\n\n const hasPayTvChannels = props.instanceRegion === InstanceRegion.AU;\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const isUK = props.instanceRegion === InstanceRegion.UK;\n const customer = Flight.useBasicFetch<Customer>(isUK && CustomerRequests.customer(currentUser.data.customerId));\n\n const channels = Flight.useBasicFetch<PayTvChannel[]>(\n hasPayTvChannels && TvRequests.payTvChannels()\n );\n\n const regionInfo = getRegionInfo(props.instanceRegion);\n\n function onClickCancel() {\n props.closePopup();\n }\n\n const { loading, handleGenerateReportError } = useVerifiedEmailRequiredErrorHandler();\n\n function alertAndLogging(requestData: RequestProgramModel) {\n if (hasPayTvChannels) {\n const channel = channels.data?.find(channel => String(channel.id) === requestData.channelId);\n alerts.success(\n getPhrase(\n 'successChannel',\n {\n tv: regionInfo.tv,\n program: requestData.title,\n channel: channel?.name\n }\n )\n );\n AnalyticsHelper.logUserAction(\n { channel: channel.id, name: channel.name, program: requestData.title, region: props.region },\n {\n actionType: UserAction.Submit,\n entity: EntityType.Video,\n location: LocationContext.Popup,\n workflowPhase: WorkflowPhase.Complete,\n descriptor: TvDescriptor.RequestProgram\n }\n );\n } else {\n alerts.success(\n getPhrase(\n 'successNoChannel',\n {\n tv: regionInfo.tv,\n program: requestData.title\n }\n )\n );\n AnalyticsHelper.logUserAction(\n { program: requestData.title, region: props.region },\n {\n actionType: UserAction.Submit,\n entity: EntityType.Video,\n location: LocationContext.Popup,\n workflowPhase: WorkflowPhase.Complete,\n descriptor: TvDescriptor.RequestProgram\n }\n );\n }\n }\n\n function getRequestData(values: RequestProgramModel): RequestProgramRequest | RequestProgramUkRequest {\n const { broadcastDate, broadcastTime, closedCaptions, ...requestData } = values;\n\n if (isUK) {\n return {\n title: requestData.title,\n comments: requestData.comments,\n crmId: customer.data.crmId,\n customerName: customer.data.name,\n email: currentUser.data.email,\n type: ProgramRequestType.BbcRes,\n username: currentUser.data.username\n };\n }\n\n if (hasPayTvChannels) {\n return {\n ...requestData,\n closedCaptions: Boolean(closedCaptions),\n regionCode: props.region,\n programDateTime: `${broadcastDate}T${broadcastTime}`,\n userId: currentUser.data?.id,\n customerId: currentUser.data?.customerId\n };\n }\n\n return {\n ...requestData,\n regionCode: props.region,\n userId: currentUser.data?.id,\n customerId: currentUser.data?.customerId\n };\n }\n\n async function onClickRequest(\n values: RequestProgramModel,\n onDone: () => void\n ) {\n const requestData = getRequestData(values);\n const request = isUK\n ? TvRequests.requestProgramUk(requestData as RequestProgramUkRequest)\n : TvRequests.requestProgram(requestData as RequestProgramRequest);\n\n try {\n await fetchAsync(request);\n onDone();\n alertAndLogging(values);\n } catch (xhr) {\n handleGenerateReportError(xhr, getPhrase('error'), getPhrase('noEmailError'));\n }\n\n props.closePopup();\n }\n\n const hasLoaded = (currentUser.hasCompleted && ((hasPayTvChannels && channels.hasCompleted) || !hasPayTvChannels));\n\n return (\n <Popup\n title={getPhrase('title', { tv: regionInfo.tv })}\n closePopup={props.closePopup}\n showLoadingSpinner={!hasLoaded || loading}\n >\n {TvUtils.isHolidayPeriod() &&\n <div className='alert alert-warning' role='alert'>\n <h3 className='h5'>\n <Text namespace={namespace} phrase='requestAlertHeading'/>\n </h3>\n <p className='m-0'>\n <Text namespace={namespace} phrase='requestAlertBody' options={{\n tv: regionInfo.tv\n }} />\n </p>\n </div>\n }\n <p>\n <Text\n namespace={namespace}\n phrase='description'\n options={{ tv: regionInfo.tv }}\n />\n </p>\n <p>\n <Text\n namespace={namespace}\n phrase='moreInfo'\n options={{\n tv: regionInfo.tv,\n faqUrl: ArticleHelper.getLiteArticle(LiteSupportArticle.FoxtelFaq)\n }}\n />\n </p>\n {channels &&\n <FormWrapper<RequestProgramModel>\n initialValues={INITIAL_VALUES}\n validationSchema={RequestProgramValidation(hasPayTvChannels)}\n onSubmit={onClickRequest}\n >\n <TvRequestProgramForm\n onClickCancel={onClickCancel}\n channels={hasPayTvChannels && channels.data}\n instanceRegion={props.instanceRegion}\n />\n </FormWrapper>\n }\n </Popup>\n );\n}\n"],"names":["LiteSupportArticle","ProgramRequestType","namespace","getPhrase","LanguageService","RequestProgramValidation","hasChannels","object","string","TvRequestProgramForm","props","formikProps","useFormikContext","minDate","DateHelper","maxDate","regionInfo","getRegionInfo","Form","jsxs","FormField","jsx","channel","Text","PopupButtons","FormButtons","INITIAL_VALUES","TvRequestProgramView","fetchAsync","Flight.useGetFetchAsync","alerts","useAlerts","hasPayTvChannels","InstanceRegion","currentUser","Flight.useBasicFetch","UserRequests","isUK","customer","CustomerRequests","channels","TvRequests","onClickCancel","loading","handleGenerateReportError","useVerifiedEmailRequiredErrorHandler","alertAndLogging","requestData","_a","AnalyticsHelper","UserAction","EntityType","LocationContext","WorkflowPhase","TvDescriptor","getRequestData","values","broadcastDate","broadcastTime","closedCaptions","_b","_c","_d","onClickRequest","onDone","request","xhr","hasLoaded","Popup","TvUtils","ArticleHelper","FormWrapper"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"8qib0Mvd.chunk.js","sources":["../../../../libs/shared/src/enums/SupportArticle.ts","../../src/apps/tv/interfaces/requests/RequestProgramRequest.ts","../../src/apps/tv/utils/validation/RequestProgramValidation.ts","../../src/apps/tv/views/tv-request-program/components/TvRequestProgramForm.tsx","../../src/apps/tv/views/tv-request-program/TvRequestProgramView.tsx"],"sourcesContent":["// Article name mapped to article ID on support site. Used by `ArticleHelper`\n\nexport enum OnlineSupportArticle {\n AddToPlaylist = '115005679748',\n EditSsoAccounts = '8202508040345',\n\n // LE\n LibraryEditor = '360001974533',\n VideoAccess = '360000153947',\n AddFromOnline = '360011718234',\n UploadToLibraryEditor = '360012069334',\n PBTErrorCodes = '360012421153',\n ManuelReview = '360020004534',\n LibraryReview = '360000163788',\n}\n\nexport enum LiteSupportArticle {\n Integrations = '4407268725529',\n Classrooms = '4405362551833',\n MakeInteractive = '4405370510873',\n EditSsoAccounts = '8202605666073',\n UploadToLibraryEditor = '42463303326489',\n AddFromLite = '42450541662233',\n ManageSsoYearGroups = '14691130889241',\n ContentReview = '18525199576601',\n ContentPermissions = '14692125209497',\n AccessSettings = '27927466562201',\n ContentGuidelines = '24133696186009',\n FoxtelFaq = '24133519542169',\n ViviIntegration = '23826297956377',\n AppleTvIntegration = '25832373739929',\n RssFeed = '32567445635097',\n ManageGroupPermissions = '35407217335705',\n MarcFormatDifferences = '48276917260441',\n ExportLibraries = '17684275853465',\n StudentSharingGuide = '50326395499417',\n Sharing = '49512742828953'\n}\n","export enum FulfillmentStatus {\n Unfulfilled = 0,\n CurrentlyBeingProcessed = 1,\n Fulfilled = 2\n}\n\nexport interface RequestProgramRequest {\n title: string;\n comments: string;\n regionCode: string;\n userId: string;\n customerId: string;\n channelId?: string;\n programDateTime?: string;\n closedCaptions?: boolean;\n}\n\nexport enum ProgramRequestType {\n BbcRes\n}\n\nexport interface RequestProgramUkRequest {\n title: string;\n comments: string;\n customerName: string;\n email: string;\n crmId: string;\n type: 0;\n username: string;\n}","import { object, string } from 'yup';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nconst namespace = 'tv.requestProgramValidation';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport function RequestProgramValidation(hasChannels: boolean) {\n return hasChannels\n ? object().shape({\n channelId: string().required(getPhrase('channelRequired')),\n title: string().required(getPhrase('programRequired')),\n broadcastDate: string().required(getPhrase('dateRequired')),\n broadcastTime: string().required(getPhrase('timeRequired')),\n closedCaptions: string(),\n comments: string()\n })\n : object().shape({\n title: string().required(getPhrase('programRequired')),\n comments: string()\n });\n}\n","import React from 'react';\nimport { Form, useFormikContext } from 'formik';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { DateHelper } from 'libs/common/react/utils/DateHelper';\n\nimport { FormButtons } from 'libs/shared/components/forms/form-buttons/FormButtons';\nimport { FormField } from 'libs/shared/components/forms/form-field/FormField';\nimport { PopupButtons } from 'libs/shared/components/popup/PopupButtons';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { InstanceRegion } from 'libs/shared/enums/InstanceRegion';\n\nimport { RequestProgramModel } from 'apps/tv/interfaces/models/RequestProgram';\nimport { PayTvChannel } from 'apps/tv/interfaces/models/TvChannel';\nimport { RequestProgramRequest } from 'apps/tv/interfaces/requests/RequestProgramRequest';\nimport { getRegionInfo } from 'apps/tv/utils/getRegionInfo/getRegionInfo';\n\nconst namespace = 'tv.requestProgramForm';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface TvRequestProgramFormProps {\n channels?: PayTvChannel[];\n instanceRegion: InstanceRegion;\n onClickCancel: () => void;\n}\n\nexport function TvRequestProgramForm(props: TvRequestProgramFormProps) {\n const formikProps = useFormikContext<RequestProgramModel>();\n\n const minDate = DateHelper.format(DateHelper.add(new Date(), 4, 'days'), 'YYYY-MM-DD');\n const maxDate = DateHelper.format(DateHelper.add(minDate, 11, 'days'), 'YYYY-MM-DD');\n\n const regionInfo = getRegionInfo(props.instanceRegion);\n\n return (\n <Form>\n {props.channels && (\n <FormField\n as='select'\n label={getPhrase('channelLabel')}\n name='channelId'\n value={formikProps.values.channelId}\n showRequiredStar\n >\n <option key={0} value=''>{LanguageService.getPhrase(namespace, 'channelPlaceholder')}</option>\n {props.channels.map(channel => (\n <option key={channel.id} value={channel.id}>{`${channel.name} - (${channel.number})`}</option>\n ))}\n </FormField>)\n }\n\n <FormField\n label={getPhrase('programLabel')}\n placeholder={getPhrase('programPlaceholder')}\n type='text'\n name='title'\n value={formikProps.values.title}\n showRequiredStar\n />\n\n {props.channels && (\n <div className='d-flex'>\n <div className='w-50 me-2'>\n <FormField\n label={getPhrase('broadcastDateLabel')}\n type='date'\n name='broadcastDate'\n value={formikProps.values.broadcastDate}\n min={minDate}\n max={maxDate}\n showRequiredStar\n />\n </div>\n <div className='w-50'>\n <FormField\n label={getPhrase('broadcastTimeLabel')}\n type='time'\n name='broadcastTime'\n value={formikProps.values.broadcastTime}\n className='mb-0'\n showRequiredStar\n />\n </div>\n </div>\n )}\n\n <p className='mt-n1'>\n <small><Text namespace={namespace} phrase={regionInfo.programGuidePhraseKey} /></small>\n </p>\n\n {props.channels && (\n <div className='d-flex'>\n <div className='w-50 me-2'>\n <FormField\n as='select'\n label={getPhrase('ccLabel')}\n name='closedCaptions'\n value={formikProps.values.closedCaptions}\n >\n <option value=''>{LanguageService.getPhrase(namespace, 'ccNo')}</option>\n <option value='yes'>{LanguageService.getPhrase(namespace, 'ccYes')}</option>\n </FormField>\n </div>\n <div className='w-50'></div>\n </div>\n )}\n \n <FormField\n label={getPhrase(props.channels ? 'commentsLabel' : 'additionalInfoLabel')}\n placeholder={getPhrase(props.channels ? 'commentsPlaceholder' : 'additionalInfoPlaceholder')}\n type='text'\n name='comments'\n value={formikProps.values.comments}\n />\n\n <p><Text namespace={namespace} phrase='note' options={{ tv: regionInfo.tv }} /></p>\n\n <PopupButtons>\n <PopupButtons.Cancel\n text={getPhrase('cancel')}\n onClick={props.onClickCancel}\n variant='link'\n />\n <FormButtons<RequestProgramRequest> variant='dark' submitText={getPhrase('request')}/>\n </PopupButtons>\n </Form>\n );\n}\n","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/react/index';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\nimport { EntityType, LocationContext, TvDescriptor, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\n\nimport { FormWrapper } from 'libs/shared/components/forms/form-wrapper/FormWrapper';\nimport { Popup } from 'libs/shared/components/popup/Popup';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { InstanceRegion } from 'libs/shared/enums/InstanceRegion';\nimport { LiteSupportArticle } from 'libs/shared/enums/SupportArticle';\nimport { CustomerRequests } from 'libs/shared/flight-requests/CustomerRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { useVerifiedEmailRequiredErrorHandler } from 'libs/shared/hooks/useVerifiedEmailRequiredErrorHandler';\nimport { CurrentUser, Customer, PopupViewProps } from 'libs/shared/interfaces';\nimport { ArticleHelper } from 'libs/shared/utils/ArticleHelper';\n\nimport { TvRequests } from 'apps/tv/flight-requests/TvRequests';\nimport { RequestProgramModel } from 'apps/tv/interfaces/models/RequestProgram';\nimport { PayTvChannel } from 'apps/tv/interfaces/models/TvChannel';\nimport { ProgramRequestType, RequestProgramRequest, RequestProgramUkRequest } from 'apps/tv/interfaces/requests/RequestProgramRequest';\nimport { getRegionInfo } from 'apps/tv/utils/getRegionInfo/getRegionInfo';\nimport { TvUtils } from 'apps/tv/utils/TvUtils';\nimport { RequestProgramValidation } from 'apps/tv/utils/validation/RequestProgramValidation';\nimport { TvRequestProgramForm } from 'apps/tv/views/tv-request-program/components/TvRequestProgramForm';\n\nconst INITIAL_VALUES = {\n channelId: '',\n title: '',\n broadcastDate: '',\n broadcastTime: '',\n closedCaptions: '',\n comments: ''\n};\n\nconst namespace = 'tv.requestProgram';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface TvRequestProgramProps extends PopupViewProps {\n region: string;\n instanceRegion: InstanceRegion;\n}\n\nexport function TvRequestProgramView(props: TvRequestProgramProps) {\n const fetchAsync = Flight.useGetFetchAsync();\n const alerts = useAlerts();\n\n const hasPayTvChannels = props.instanceRegion === InstanceRegion.AU;\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const isUK = props.instanceRegion === InstanceRegion.UK;\n const customer = Flight.useBasicFetch<Customer>(isUK && CustomerRequests.customer(currentUser.data.customerId));\n\n const channels = Flight.useBasicFetch<PayTvChannel[]>(\n hasPayTvChannels && TvRequests.payTvChannels()\n );\n\n const regionInfo = getRegionInfo(props.instanceRegion);\n\n function onClickCancel() {\n props.closePopup();\n }\n\n const { loading, handleGenerateReportError } = useVerifiedEmailRequiredErrorHandler();\n\n function alertAndLogging(requestData: RequestProgramModel) {\n if (hasPayTvChannels) {\n const channel = channels.data?.find(channel => String(channel.id) === requestData.channelId);\n alerts.success(\n getPhrase(\n 'successChannel',\n {\n tv: regionInfo.tv,\n program: requestData.title,\n channel: channel?.name\n }\n )\n );\n AnalyticsHelper.logUserAction(\n { channel: channel.id, name: channel.name, program: requestData.title, region: props.region },\n {\n actionType: UserAction.Submit,\n entity: EntityType.Video,\n location: LocationContext.Popup,\n workflowPhase: WorkflowPhase.Complete,\n descriptor: TvDescriptor.RequestProgram\n }\n );\n } else {\n alerts.success(\n getPhrase(\n 'successNoChannel',\n {\n tv: regionInfo.tv,\n program: requestData.title\n }\n )\n );\n AnalyticsHelper.logUserAction(\n { program: requestData.title, region: props.region },\n {\n actionType: UserAction.Submit,\n entity: EntityType.Video,\n location: LocationContext.Popup,\n workflowPhase: WorkflowPhase.Complete,\n descriptor: TvDescriptor.RequestProgram\n }\n );\n }\n }\n\n function getRequestData(values: RequestProgramModel): RequestProgramRequest | RequestProgramUkRequest {\n const { broadcastDate, broadcastTime, closedCaptions, ...requestData } = values;\n\n if (isUK) {\n return {\n title: requestData.title,\n comments: requestData.comments,\n crmId: customer.data.crmId,\n customerName: customer.data.name,\n email: currentUser.data.email,\n type: ProgramRequestType.BbcRes,\n username: currentUser.data.username\n };\n }\n\n if (hasPayTvChannels) {\n return {\n ...requestData,\n closedCaptions: Boolean(closedCaptions),\n regionCode: props.region,\n programDateTime: `${broadcastDate}T${broadcastTime}`,\n userId: currentUser.data?.id,\n customerId: currentUser.data?.customerId\n };\n }\n\n return {\n ...requestData,\n regionCode: props.region,\n userId: currentUser.data?.id,\n customerId: currentUser.data?.customerId\n };\n }\n\n async function onClickRequest(\n values: RequestProgramModel,\n onDone: () => void\n ) {\n const requestData = getRequestData(values);\n const request = isUK\n ? TvRequests.requestProgramUk(requestData as RequestProgramUkRequest)\n : TvRequests.requestProgram(requestData as RequestProgramRequest);\n\n try {\n await fetchAsync(request);\n onDone();\n alertAndLogging(values);\n } catch (xhr) {\n handleGenerateReportError(xhr, getPhrase('error'), getPhrase('noEmailError'));\n }\n\n props.closePopup();\n }\n\n const hasLoaded = (currentUser.hasCompleted && ((hasPayTvChannels && channels.hasCompleted) || !hasPayTvChannels));\n\n return (\n <Popup\n title={getPhrase('title', { tv: regionInfo.tv })}\n closePopup={props.closePopup}\n showLoadingSpinner={!hasLoaded || loading}\n >\n {TvUtils.isHolidayPeriod() &&\n <div className='alert alert-warning' role='alert'>\n <h3 className='h5'>\n <Text namespace={namespace} phrase='requestAlertHeading'/>\n </h3>\n <p className='m-0'>\n <Text namespace={namespace} phrase='requestAlertBody' options={{\n tv: regionInfo.tv\n }} />\n </p>\n </div>\n }\n <p>\n <Text\n namespace={namespace}\n phrase='description'\n options={{ tv: regionInfo.tv }}\n />\n </p>\n <p>\n <Text\n namespace={namespace}\n phrase='moreInfo'\n options={{\n tv: regionInfo.tv,\n faqUrl: ArticleHelper.getLiteArticle(LiteSupportArticle.FoxtelFaq)\n }}\n />\n </p>\n {channels &&\n <FormWrapper<RequestProgramModel>\n initialValues={INITIAL_VALUES}\n validationSchema={RequestProgramValidation(hasPayTvChannels)}\n onSubmit={onClickRequest}\n >\n <TvRequestProgramForm\n onClickCancel={onClickCancel}\n channels={hasPayTvChannels && channels.data}\n instanceRegion={props.instanceRegion}\n />\n </FormWrapper>\n }\n </Popup>\n );\n}\n"],"names":["LiteSupportArticle","ProgramRequestType","namespace","getPhrase","LanguageService","RequestProgramValidation","hasChannels","object","string","TvRequestProgramForm","props","formikProps","useFormikContext","minDate","DateHelper","maxDate","regionInfo","getRegionInfo","Form","jsxs","FormField","jsx","channel","Text","PopupButtons","FormButtons","INITIAL_VALUES","TvRequestProgramView","fetchAsync","Flight.useGetFetchAsync","alerts","useAlerts","hasPayTvChannels","InstanceRegion","currentUser","Flight.useBasicFetch","UserRequests","isUK","customer","CustomerRequests","channels","TvRequests","onClickCancel","loading","handleGenerateReportError","useVerifiedEmailRequiredErrorHandler","alertAndLogging","requestData","_a","AnalyticsHelper","UserAction","EntityType","LocationContext","WorkflowPhase","TvDescriptor","getRequestData","values","broadcastDate","broadcastTime","closedCaptions","_b","_c","_d","onClickRequest","onDone","request","xhr","hasLoaded","Popup","TvUtils","ArticleHelper","FormWrapper"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a2 as f,T as o,a as p,b as c,L as E,an as A}from"./app-
|
|
2
|
-
//# sourceMappingURL=
|
|
1
|
+
import{a2 as f,T as o,a as p,b as c,L as E,an as A}from"./app-CAg-7ccU.js";import{L}from"./BxNS_W6A.chunk.js";function x(a){var g,h;const{folderId:e,firstItem:r,lastItem:u,getAppLink:m}=a,l=f(e&&L.folderParentTree(e));if(!((h=(g=l.data)==null?void 0:g.children)!=null&&h.length))return[];const s=l.data.children.map(t=>({node:t,path:[t]}));let n=[];for(;s.length;){const{node:t,path:d}=s.pop();t.data.id.toString()===e.toString()&&(n=d.map(i=>({name:i.data.name,appLink:m(i)}))),t.children&&s.push(...t.children.map(i=>({node:i,path:[...d,i]})))}return r&&n.unshift(r),u&&n.push(u),a.setLastActive!==!1&&(n[n.length-1].active=!0),n}const S="exchange.exchangeUtils",k=E.encloseNamespace(S);function y(a){return{application:c.EXCHANGE,action:p.Exchange.PREVIEW,args:[a.id,o.slugify(a.name)]}}function C(a,e){return a!=null&&a.id?{application:c.EXCHANGE,action:p.Exchange.SERIES,args:[a.id,o.slugify(a.name)],params:{sort:e??A.Series}}:null}function I(a,e){return a?{application:c.EXCHANGE,action:p.Exchange.FOLDER,args:[a.id,o.slugify(a.name)],params:{sort:e}}:null}function G(a,e){return x({folderId:a,getAppLink:r=>I(r.data,e),firstItem:{name:k("exchangeArchive"),appLink:{application:c.EXCHANGE,action:p.Exchange.INDEX}}})}export{y as a,C as b,I as g,G as u};
|
|
2
|
+
//# sourceMappingURL=B3z0crrc.chunk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"B3z0crrc.chunk.js","sources":["../../../../libs/shared/src/hooks/useBuildBreadcrumbs.ts","../../src/apps/exchange/utils/ExchangeUtils.ts"],"sourcesContent":["import { Core } from 'libs/common/core';\nimport { Flight } from 'libs/common/flight';\n\nimport { Breadcrumb } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { LibraryRequests } from 'libs/shared/flight-requests/LibraryRequests';\nimport { Folder, MasterNestedObject } from 'libs/shared/interfaces';\n\ninterface BuildOptions {\n folderId: string;\n firstItem?: Breadcrumb;\n lastItem?: Breadcrumb;\n getAppLink: (folder: MasterNestedObject<Folder>) => Core.AppLink;\n setLastActive?: boolean;\n}\n\nexport function useBuildBreadcrumbs(options: BuildOptions): Breadcrumb[] {\n const { folderId, firstItem, lastItem, getAppLink } = options;\n\n const parentTree = Flight.useBasicFetch<MasterNestedObject<Folder>>(\n folderId && LibraryRequests.folderParentTree(folderId)\n );\n\n if (!parentTree.data?.children?.length)\n return [];\n\n const searchStack: {\n node: MasterNestedObject<Folder>,\n path: MasterNestedObject<Folder>[]\n }[] = parentTree.data.children.map(c => ({ node: c, path: [c]}));\n\n let breadcrumbs: Breadcrumb[] = [];\n\n while (searchStack.length) {\n const { node, path } = searchStack.pop();\n \n if (node.data.id.toString() === folderId.toString())\n breadcrumbs = path.map(object => ({\n name: object.data.name,\n appLink: getAppLink(object)\n }));\n\n if (node.children)\n searchStack.push(...node.children.map(c => ({ node: c, path: [ ...path, c ]})));\n }\n\n if (firstItem) breadcrumbs.unshift(firstItem);\n if (lastItem) breadcrumbs.push(lastItem);\n\n if (options.setLastActive !== false)\n breadcrumbs[breadcrumbs.length - 1].active = true;\n\n return breadcrumbs;\n}\n ","import { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\nimport { TextHelper } from 'libs/common/react/utils/TextHelper';\n\nimport { Breadcrumb } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { BG_COLOUR_CLASS_NAMES } from 'libs/shared/constants/ColourClassNames';\nimport { VideoSortType } from 'libs/shared/enums/VideoSortType';\nimport { useBuildBreadcrumbs } from 'libs/shared/hooks/useBuildBreadcrumbs';\nimport { Folder, Library, Series, Video } from 'libs/shared/interfaces';\n\nimport { Actions } from 'shared/constants/ExchangeActions';\nimport { AppChannels } from 'shared/constants/ExchangeRadioChannels';\n\nconst namespace = 'exchange.exchangeUtils';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport function getVideoAppLink(video: Video): Core.AppLink {\n return {\n application: AppChannels.EXCHANGE,\n action: Actions.Exchange.PREVIEW,\n args: [ video.id, TextHelper.slugify(video.name) ]\n };\n}\n\nexport function getSeriesAppLink(series: Series, sort?: string): Core.AppLink {\n if (!series?.id)\n return null;\n\n return {\n application: AppChannels.EXCHANGE,\n action: Actions.Exchange.SERIES,\n args: [ series.id, TextHelper.slugify(series.name) ],\n params: {\n sort: sort ?? VideoSortType.Series\n }\n };\n}\n\nexport function getFolderAppLink(folder: Folder, sort?: string): Core.AppLink {\n if (!folder)\n return null;\n\n return {\n application: AppChannels.EXCHANGE,\n action: Actions.Exchange.FOLDER,\n args: [ folder.id, TextHelper.slugify(folder.name) ],\n params: {\n sort\n }\n };\n}\n\nexport function getFolderBgColourClass(folder: Folder | Library): string {\n let charCode = 0;\n\n for (let i = 0; i < (folder.name?.length ?? 0); i++) {\n charCode += folder.name.charCodeAt(i);\n }\n\n return BG_COLOUR_CLASS_NAMES[charCode % BG_COLOUR_CLASS_NAMES.length];\n}\n\nexport function useGetFolderBreadcrumbs(folderId: string, sort: VideoSortType): Breadcrumb[] {\n return useBuildBreadcrumbs({\n folderId,\n getAppLink: object => getFolderAppLink(object.data, sort),\n firstItem: {\n name: getPhrase('exchangeArchive'),\n appLink: {\n application: AppChannels.EXCHANGE,\n action: Actions.Exchange.INDEX\n }\n }\n });\n}"],"names":["useBuildBreadcrumbs","options","folderId","firstItem","lastItem","getAppLink","parentTree","Flight.useBasicFetch","LibraryRequests","_b","_a","searchStack","c","breadcrumbs","node","path","object","namespace","getPhrase","LanguageService","getVideoAppLink","video","AppChannels","Actions","TextHelper","getSeriesAppLink","series","sort","VideoSortType","getFolderAppLink","folder","useGetFolderBreadcrumbs"],"mappings":"8GAeO,SAASA,EAAoBC,EAAqC,SACvE,KAAM,CAAE,SAAAC,EAAU,UAAAC,EAAW,SAAAC,EAAU,WAAAC,GAAeJ,EAEhDK,EAAaC,EACjBL,GAAYM,EAAgB,iBAAiBN,CAAQ,CAAA,EAGvD,GAAI,GAACO,GAAAC,EAAAJ,EAAW,OAAX,YAAAI,EAAiB,WAAjB,MAAAD,EAA2B,QAC9B,MAAO,CAAA,EAET,MAAME,EAGAL,EAAW,KAAK,SAAS,IAAIM,IAAM,CAAE,KAAMA,EAAG,KAAM,CAACA,CAAC,GAAG,EAE/D,IAAIC,EAA4B,CAAA,EAEhC,KAAOF,EAAY,QAAQ,CACzB,KAAM,CAAE,KAAAG,EAAM,KAAAC,GAASJ,EAAY,IAAA,EAE/BG,EAAK,KAAK,GAAG,SAAA,IAAeZ,EAAS,SAAA,IACvCW,EAAcE,EAAK,IAAIC,IAAW,CAChC,KAAMA,EAAO,KAAK,KAClB,QAASX,EAAWW,CAAM,CAAA,EAC1B,GAEAF,EAAK,UACPH,EAAY,KAAK,GAAGG,EAAK,SAAS,QAAU,CAAE,KAAMF,EAAG,KAAM,CAAE,GAAGG,EAAMH,CAAE,CAAA,EAAG,CAAC,CAClF,CAEA,OAAIT,GAAWU,EAAY,QAAQV,CAAS,EACxCC,GAAUS,EAAY,KAAKT,CAAQ,EAEnCH,EAAQ,gBAAkB,KAC5BY,EAAYA,EAAY,OAAS,CAAC,EAAE,OAAS,IAExCA,CACT,CCvCA,MAAMI,EAAY,yBACZC,EAAYC,EAAgB,iBAAiBF,CAAS,EAErD,SAASG,EAAgBC,EAA4B,CAC1D,MAAO,CACL,YAAaC,EAAY,SACzB,OAAQC,EAAQ,SAAS,QACzB,KAAM,CAAEF,EAAM,GAAIG,EAAW,QAAQH,EAAM,IAAI,CAAE,CAAA,CAErD,CAEO,SAASI,EAAiBC,EAAgBC,EAA6B,CAC5E,OAAKD,GAAA,MAAAA,EAAQ,GAGN,CACL,YAAaJ,EAAY,SACzB,OAAQC,EAAQ,SAAS,OACzB,KAAM,CAAEG,EAAO,GAAIF,EAAW,QAAQE,EAAO,IAAI,CAAE,EACnD,OAAQ,CACN,KAAMC,GAAQC,EAAc,MAAA,CAC9B,EARO,IAUX,CAEO,SAASC,EAAiBC,EAAgBH,EAA6B,CAC5E,OAAKG,EAGE,CACL,YAAaR,EAAY,SACzB,OAAQC,EAAQ,SAAS,OACzB,KAAM,CAAEO,EAAO,GAAIN,EAAW,QAAQM,EAAO,IAAI,CAAE,EACnD,OAAQ,CACN,KAAAH,CAAA,CACF,EARO,IAUX,CAYO,SAASI,EAAwB7B,EAAkByB,EAAmC,CAC3F,OAAO3B,EAAoB,CACzB,SAAAE,EACA,WAAYc,GAAUa,EAAiBb,EAAO,KAAMW,CAAI,EACxD,UAAW,CACT,KAAMT,EAAU,iBAAiB,EACjC,QAAS,CACP,YAAaI,EAAY,SACzB,OAAQC,EAAQ,SAAS,KAAA,CAC3B,CACF,CACD,CACH"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a2 as s,j as a,P as g,L as h,x as i,B as u,aC as x}from"./app-
|
|
2
|
-
//# sourceMappingURL=
|
|
1
|
+
import{a2 as s,j as a,P as g,L as h,x as i,B as u,aC as x}from"./app-CAg-7ccU.js";import{T as j}from"./DdKPWSa-.chunk.js";import{T as r}from"./C3oUPcIr.chunk.js";import"./BgQsAU_t.chunk.js";const l="tv.radioDownload",d=h.encloseNamespace(l);function T(o){const t=s(x.config()),e=s(r.program(o.id)),c=s(r.region(o.region));function m(){var n;const p=(n=e.data)==null?void 0:n.globalId.split("-").join("");return`${t.data.tvPreviewUrls[c.data.code]}/audio/${p}.mp3`}return t.hasCompleted&&e.hasCompleted?a.jsxs(g,{title:d("title"),closePopup:o.closePopup,showLoadingSpinner:!e.hasCompleted,children:[e.data&&a.jsxs(a.Fragment,{children:[a.jsx("p",{className:"fw-semibold mb-2",children:e.data.title}),a.jsx("div",{className:"d-flex mb-2",children:a.jsx(j,{program:e.data,showDate:!0,showEndTime:!0})}),a.jsx("p",{children:e.data.description})]}),a.jsxs(i,{children:[a.jsx(i.Cancel,{text:d("cancel"),onClick:o.closePopup,variant:"link"}),a.jsx("a",{target:"_blank",href:m(),className:"btn btn-dark",children:a.jsx(u,{namespace:l,phrase:"download"})})]})]}):a.jsx(a.Fragment,{})}export{T as TvRadioDownloadView};
|
|
2
|
+
//# sourceMappingURL=B5WGUFGa.chunk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"B5WGUFGa.chunk.js","sources":["../../src/apps/tv/views/tv-radio-download/TvRadioDownloadView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/react/index';\n\nimport { Popup, PopupProps } from 'libs/shared/components/popup/Popup';\nimport { PopupButtons } from 'libs/shared/components/popup/PopupButtons';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { Config } from 'libs/shared/interfaces';\n\nimport { TvProgramTimeBadge } from 'apps/tv/components/tv-program-time-badge/TvProgramTimeBadge';\nimport { TvRequests } from 'apps/tv/flight-requests/TvRequests';\nimport { TvProgram } from 'apps/tv/interfaces/models/TvProgram';\nimport { TvRegion } from 'apps/tv/interfaces/models/TvRegion';\n\nconst namespace = 'tv.radioDownload';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface TvRadioDownloadProps extends PopupProps {\n id: string;\n region: string;\n}\n\nexport function TvRadioDownloadView(props: TvRadioDownloadProps) {\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const program = Flight.useBasicFetch<TvProgram>(TvRequests.program(props.id));\n const region = Flight.useBasicFetch<TvRegion>(TvRequests.region(props.region));\n\n function getDownloadLink() {\n const globalId = program.data?.globalId.split('-').join('');\n return `${config.data.tvPreviewUrls[region.data.code]}/audio/${globalId}.mp3`;\n }\n\n const hasLoaded = (config.hasCompleted && program.hasCompleted);\n\n if (!hasLoaded) {\n return <></>;\n }\n\n return (\n <Popup\n title={getPhrase('title')}\n closePopup={props.closePopup}\n showLoadingSpinner={!program.hasCompleted}\n >\n {program.data &&\n <>\n <p className='fw-semibold mb-2'>{program.data.title}</p>\n <div className='d-flex mb-2'>\n <TvProgramTimeBadge program={program.data} showDate showEndTime />\n </div>\n <p>{program.data.description}</p>\n </>\n }\n <PopupButtons>\n <PopupButtons.Cancel\n text={getPhrase('cancel')}\n onClick={props.closePopup}\n variant='link'\n />\n <a target='_blank' href={getDownloadLink()} className='btn btn-dark'>\n <Text namespace={namespace} phrase='download' />\n </a>\n </PopupButtons>\n </Popup>\n );\n}"],"names":["namespace","getPhrase","LanguageService","TvRadioDownloadView","props","config","Flight.useBasicFetch","ConfigRequests","program","TvRequests","region","getDownloadLink","globalId","_a","jsxs","Popup","Fragment","jsx","TvProgramTimeBadge","PopupButtons","Text"],"mappings":"8LAgBA,MAAMA,EAAY,mBACZC,EAAYC,EAAgB,iBAAiBF,CAAS,EAOrD,SAASG,EAAoBC,EAA6B,CAC/D,MAAMC,EAASC,EAA6BC,EAAe,QAAQ,EAC7DC,EAAUF,EAAgCG,EAAW,QAAQL,EAAM,EAAE,CAAC,EACtEM,EAASJ,EAA+BG,EAAW,OAAOL,EAAM,MAAM,CAAC,EAE7E,SAASO,GAAkB,OACzB,MAAMC,GAAWC,EAAAL,EAAQ,OAAR,YAAAK,EAAc,SAAS,MAAM,KAAK,KAAK,IACxD,MAAO,GAAGR,EAAO,KAAK,cAAcK,EAAO,KAAK,IAAI,CAAC,UAAUE,CAAQ,MACzE,CAIA,OAFmBP,EAAO,cAAgBG,EAAQ,aAOhDM,EAAAA,KAACC,EAAA,CACC,MAAOd,EAAU,OAAO,EACxB,WAAYG,EAAM,WAClB,mBAAoB,CAACI,EAAQ,aAE5B,SAAA,CAAAA,EAAQ,MACPM,EAAAA,KAAAE,EAAAA,SAAA,CACE,SAAA,CAAAC,MAAC,IAAA,CAAE,UAAU,mBAAoB,SAAAT,EAAQ,KAAK,MAAM,QACnD,MAAA,CAAI,UAAU,cACb,eAACU,EAAA,CAAmB,QAASV,EAAQ,KAAM,SAAQ,GAAC,YAAW,EAAA,CAAC,EAClE,QACC,IAAA,CAAG,SAAAA,EAAQ,KAAK,YAAY,CAAA,EAC/B,SAEDW,EAAA,CACC,SAAA,CAAAF,EAAAA,IAACE,EAAa,OAAb,CACC,KAAMlB,EAAU,QAAQ,EACxB,QAASG,EAAM,WACf,QAAQ,MAAA,CAAA,QAET,IAAA,CAAE,OAAO,SAAS,KAAMO,IAAmB,UAAU,eACpD,SAAAM,EAAAA,IAACG,EAAA,CAAK,UAAApB,EAAsB,OAAO,UAAA,CAAW,EAChD,CAAA,EACF,CAAA,CAAA,CAAA,EA3BKiB,EAAAA,IAAAD,EAAAA,SAAA,EAAE,CA8Bb"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a2 as o,j as e,P as m,L as d,B as a,ap as x,a as h,b as j,x as c}from"./app-
|
|
2
|
-
//# sourceMappingURL=
|
|
1
|
+
import{a2 as o,j as e,P as m,L as d,B as a,ap as x,a as h,b as j,x as c}from"./app-CAg-7ccU.js";import{T as l,a as g}from"./C3oUPcIr.chunk.js";import{t as r}from"./BgQsAU_t.chunk.js";const u="_infoAlert_r916y_1",N={infoAlert:u},s="tv.broadcastContent",p=d.encloseNamespace(s);function A(t){const i=o(l.region(t.region)),n=o(l.dateRange(t.region));return e.jsxs(m,{title:p("title"),closePopup:t.closePopup,children:[e.jsx("div",{className:`${N.infoAlert} rounded w-100 p-2 mb-4`,children:e.jsxs("p",{className:"d-inline fw-semibold mb-0 me-2",children:[e.jsx(a,{namespace:s,phrase:"programsAvailable"}),n.data&&g.getFormattedDateRange(r(n.data.startDate,i.data.timeZone),r(n.data.endDate,i.data.timeZone))]})}),e.jsx("h2",{className:"h5",children:e.jsx(a,{namespace:s,phrase:"subTitle"})}),e.jsx("p",{className:"mb-2",children:e.jsx(a,{namespace:s,phrase:"description"})}),e.jsxs("div",{className:"mb-2",children:[e.jsx("p",{className:"d-inline",children:e.jsx(a,{namespace:s,phrase:"missedProgram"})}),e.jsx(x,{appLink:{application:j.EXCHANGE,action:h.Exchange.INDEX},className:"text-info",onClick:t.closePopup,children:e.jsx("span",{children:e.jsx(a,{namespace:s,phrase:"exchangeArchive"})})}),"."]}),e.jsx("p",{className:"mb-3",children:e.jsx(a,{namespace:s,phrase:"emailContent"})}),e.jsx(c,{children:e.jsx(c.Cancel,{text:p("close"),onClick:t.closePopup,variant:"link"})})]})}export{A as TvBroadcastContentView};
|
|
2
|
+
//# sourceMappingURL=B9FAS-p1.chunk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"B9FAS-p1.chunk.js","sources":["../../src/apps/tv/views/tv-broadcast-content/TvBroadcastContentView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/react/index';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Popup } from 'libs/shared/components/popup/Popup';\nimport { PopupButtons } from 'libs/shared/components/popup/PopupButtons';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { PopupViewProps } from 'libs/shared/interfaces';\n\nimport { Actions } from 'shared/constants/ExchangeActions';\nimport { AppChannels } from 'shared/constants/ExchangeRadioChannels';\n\nimport { TvRequests } from 'apps/tv/flight-requests/TvRequests';\nimport { TvDateRange, TvRegion } from 'apps/tv/interfaces/models/TvRegion';\nimport { toLocalTime } from 'apps/tv/utils/toLocalTime';\nimport { TvUtils } from 'apps/tv/utils/TvUtils';\n\nimport styles from './tv-broadcast-content.module.scss';\n\nconst namespace = 'tv.broadcastContent';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface TvBroadcastContentViewProps extends PopupViewProps {\n region: string;\n}\n\nexport function TvBroadcastContentView(props: TvBroadcastContentViewProps) {\n const region = Flight.useBasicFetch<TvRegion>(TvRequests.region(props.region));\n const dateRange = Flight.useBasicFetch<TvDateRange>(TvRequests.dateRange(props.region));\n \n return (\n <Popup\n title={getPhrase('title')}\n closePopup={props.closePopup}\n >\n <div className={`${styles.infoAlert} rounded w-100 p-2 mb-4`}>\n <p className='d-inline fw-semibold mb-0 me-2'>\n <Text namespace={namespace} phrase='programsAvailable' />\n {dateRange.data &&\n TvUtils.getFormattedDateRange(\n toLocalTime(dateRange.data.startDate, region.data.timeZone),\n toLocalTime(dateRange.data.endDate, region.data.timeZone)\n )\n }\n </p>\n </div>\n\n <h2 className='h5'><Text namespace={namespace} phrase='subTitle' /></h2>\n <p className='mb-2'><Text namespace={namespace} phrase='description' /></p>\n\n <div className='mb-2'>\n <p className='d-inline'><Text namespace={namespace} phrase='missedProgram' /></p>\n <AppLink\n appLink={{ application: AppChannels.EXCHANGE, action: Actions.Exchange.INDEX }}\n className='text-info'\n onClick={props.closePopup}\n >\n <span><Text namespace={namespace} phrase='exchangeArchive' /></span>\n </AppLink>.\n </div>\n <p className='mb-3'><Text namespace={namespace} phrase='emailContent' /></p>\n\n <PopupButtons>\n <PopupButtons.Cancel\n text={getPhrase('close')}\n onClick={props.closePopup}\n variant='link'\n />\n </PopupButtons>\n </Popup>\n );\n}\n"],"names":["namespace","getPhrase","LanguageService","TvBroadcastContentView","props","region","Flight.useBasicFetch","TvRequests","dateRange","jsxs","Popup","jsx","styles","Text","TvUtils","toLocalTime","AppLink","AppChannels","Actions","PopupButtons"],"mappings":"oOAqBMA,EAAY,sBACZC,EAAYC,EAAgB,iBAAiBF,CAAS,EAMrD,SAASG,EAAuBC,EAAoC,CACzE,MAAMC,EAASC,EAA+BC,EAAW,OAAOH,EAAM,MAAM,CAAC,EACvEI,EAAYF,EAAkCC,EAAW,UAAUH,EAAM,MAAM,CAAC,EAEtF,OACEK,EAAAA,KAACC,EAAA,CACC,MAAOT,EAAU,OAAO,EACxB,WAAYG,EAAM,WAElB,SAAA,CAAAO,EAAAA,IAAC,MAAA,CAAI,UAAW,GAAGC,EAAO,SAAS,0BACjC,SAAAH,EAAAA,KAAC,IAAA,CAAE,UAAU,iCACX,SAAA,CAAAE,EAAAA,IAACE,EAAA,CAAK,UAAAb,EAAsB,OAAO,mBAAA,CAAoB,EACtDQ,EAAU,MACTM,EAAQ,sBACNC,EAAYP,EAAU,KAAK,UAAWH,EAAO,KAAK,QAAQ,EAC1DU,EAAYP,EAAU,KAAK,QAASH,EAAO,KAAK,QAAQ,CAAA,CAC1D,CAAA,CAEJ,CAAA,CACF,EAEAM,EAAAA,IAAC,MAAG,UAAU,KAAK,eAACE,EAAA,CAAK,UAAAb,EAAsB,OAAO,UAAA,CAAW,CAAA,CAAE,EACnEW,EAAAA,IAAC,KAAE,UAAU,OAAO,eAACE,EAAA,CAAK,UAAAb,EAAsB,OAAO,aAAA,CAAc,CAAA,CAAE,EAEvES,EAAAA,KAAC,MAAA,CAAI,UAAU,OACb,SAAA,CAAAE,EAAAA,IAAC,IAAA,CAAE,UAAU,WAAW,SAAAA,EAAAA,IAACE,GAAK,UAAAb,EAAsB,OAAO,gBAAgB,CAAA,CAAE,EAC7EW,EAAAA,IAACK,EAAA,CACC,QAAS,CAAE,YAAaC,EAAY,SAAU,OAAQC,EAAQ,SAAS,KAAA,EACvE,UAAU,YACV,QAASd,EAAM,WAEf,eAAC,OAAA,CAAK,SAAAO,EAAAA,IAACE,GAAK,UAAAb,EAAsB,OAAO,kBAAkB,CAAA,CAAE,CAAA,CAAA,EACrD,GAAA,EACZ,EACAW,EAAAA,IAAC,KAAE,UAAU,OAAO,eAACE,EAAA,CAAK,UAAAb,EAAsB,OAAO,cAAA,CAAe,CAAA,CAAE,QAEvEmB,EAAA,CACC,SAAAR,EAAAA,IAACQ,EAAa,OAAb,CACC,KAAMlB,EAAU,OAAO,EACvB,QAASG,EAAM,WACf,QAAQ,MAAA,CAAA,CACV,CACF,CAAA,CAAA,CAAA,CAGN"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{R as i,A as o,a,b as n,j as r}from"./app-CAg-7ccU.js";import{u as s}from"./UgARO_Sh.chunk.js";import"./DulaiN8k.chunk.js";import"./D2a2dcGU.chunk.js";import"./C3oUPcIr.chunk.js";function f(){const{region:e,isLoading:t}=s();return i.useEffect(()=>{t||o.trigger({application:n.TV,action:a.Tv.CHANNELS,args:[e]},{replace:!0})},[e]),r.jsx(r.Fragment,{})}export{f as TvHomeView};
|
|
2
|
+
//# sourceMappingURL=BAsU-_cO.chunk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"BAsU-_cO.chunk.js","sources":["../../src/apps/tv/views/tv-home/TvHomeView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { Actions } from 'shared/constants/ExchangeActions';\nimport { AppChannels } from 'shared/constants/ExchangeRadioChannels';\n\nimport { useSelectedRegion } from 'apps/tv/hooks/useSelectedRegion';\n\n// eslint-disable-next-line rulesdir/require-view-title\nexport function TvHomeView(): JSX.Element {\n const { region, isLoading } = useSelectedRegion();\n\n React.useEffect(() => {\n if (isLoading)\n return;\n\n Core.AppLinkHelper.trigger({\n application: AppChannels.TV,\n action: Actions.Tv.CHANNELS,\n args: [region]\n }, { replace: true });\n }, [region]);\n\n return <></>;\n}"],"names":["TvHomeView","region","isLoading","useSelectedRegion","React","Core.AppLinkHelper","AppChannels","Actions","jsx","Fragment"],"mappings":"yLAUO,SAASA,GAA0B,CACxC,KAAM,CAAE,OAAAC,EAAQ,UAAAC,CAAA,EAAcC,EAAA,EAE9B,OAAAC,EAAM,UAAU,IAAM,CAChBF,GAGJG,EAAmB,QAAQ,CACzB,YAAaC,EAAY,GACzB,OAAQC,EAAQ,GAAG,SACnB,KAAM,CAACN,CAAM,CAAA,EACZ,CAAE,QAAS,GAAM,CACtB,EAAG,CAACA,CAAM,CAAC,EAEJO,EAAAA,IAAAC,EAAAA,SAAA,EAAE,CACX"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{j as s,aA as h,L as d}from"./app-
|
|
2
|
-
//# sourceMappingURL=
|
|
1
|
+
import{j as s,aA as h,L as d}from"./app-CAg-7ccU.js";const p="_minHeight_kz0hs_1",C="_restrictionBadgeCustom_kz0hs_4",R="_restrictionBadgeUser_kz0hs_8",v="_streamable_kz0hs_12",g={minHeight:p,restrictionBadgeCustom:C,restrictionBadgeUser:R,streamable:v};var n=(e=>(e.Custom="custom",e.User="year_group",e))(n||{});function f(e){return s.jsx("svg",{...e,children:s.jsx("path",{d:"M9.006 10h6.028c.006-.32.01-.641.002-.974-.016-.663-.077-1.28-.243-1.808-.164-.52-.424-.934-.83-1.223-.407-.292-1.015-.495-1.943-.495s-1.536.203-1.944.495c-.405.29-.665.703-.83 1.223-.166.528-.227 1.145-.242 1.808-.008.333-.004.655.002.974m7.028 0H17a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1v-8a1 1 0 0 1 1-1h1.006c-.006-.33-.01-.67-.002-.997.016-.696.08-1.424.289-2.085.21-.67.576-1.29 1.202-1.737.623-.445 1.453-.681 2.525-.681s1.902.236 2.525.681c.626.447.99 1.068 1.202 1.737.208.661.272 1.389.288 2.085.008.326.005.667 0 .997m-1.014 1H7v8h10v-8h-1.98",fill:"currentColor"})})}function x(e){return s.jsxs("svg",{...e,children:[s.jsx("defs",{children:s.jsx("path",{id:"a",d:"M12 19.059A7.059 7.059 0 1 0 12 4.94a7.059 7.059 0 0 0 0 14.118M12 4a8 8 0 1 1 0 16 8 8 0 0 1 0-16m-.229 2.743a.457.457 0 0 0-.457.457v5.486c0 .147.071.286.191.372l3.174 2.27a.457.457 0 1 0 .532-.744l-2.982-2.133V7.2a.457.457 0 0 0-.458-.457",fill:"currentColor"})}),s.jsxs("g",{fill:"none",fillRule:"evenodd",children:[s.jsx("mask",{id:"b",fill:"#fff",children:s.jsx("use",{href:"#a"})}),s.jsx("use",{fill:"#000",fillRule:"nonzero",href:"#a"}),s.jsx("g",{fill:"#383838",mask:"url(#b)",children:s.jsx("path",{d:"M0 0h24v24H0z",fill:"currentColor"})})]})]})}const y="shared.shared-utils",c=d.encloseNamespace(y),_={[n.Custom]:g.restrictionBadgeCustom,[n.User]:g.restrictionBadgeUser},j={[n.Custom]:x,[n.User]:f},B={[n.Custom]:"restrictionCustom",[n.User]:"restrictionYearGroup"},m={[n.Custom]:200,[n.User]:100},o={mapRestrictionToClass(e){var r;if(!((r=e==null?void 0:e.value)!=null&&r.length))return"";const t=o.getWeightedRestriction(e.value);return _[t.type]},mapRestrictionToSvg(e){var r;if(!((r=e==null?void 0:e.value)!=null&&r.length))return f;const t=o.getWeightedRestriction(e.value);return j[t.type]},mapRestrictionToText(e,t){var l;if(!((l=e==null?void 0:e.value)!=null&&l.length)||!(t!=null&&t.length))return"";const r=o.getWeightedRestriction(e.value),a=t.find(u=>u.value===r.yearGroup),i=B[r.type];if(r.type===n.User)return r.yearGroup===null?c("restrictionStaff"):a?t.length===1?c("restrictionStudents"):c(i,{yearGroup:a.name}):"";if(r.type===n.Custom){const u=o.getRestrictionDuration(r);return u?c(i,{duration:u,smartCount:u}):c("restrictionCustomLessThanDay",{duration:u,smartCount:1})}return""},getWeightedRestriction(e,t="highest"){if(e!=null&&e.length)return e.length===1?e[0]:e.reduce((r,a)=>{const i=m[r.type],l=m[a.type];return t==="highest"&&i>l||t==="lowest"&&i<l?r:a})},getRestrictionByType(e,t){if(!o.hasRestrictions(e))return null;const r=Array.isArray(t)?t:[t],a=e._restrictions.value.filter(i=>r.includes(i.type));return o.getWeightedRestriction(a)},getRestrictionDuration(e){if(e.type!==n.Custom||!e.expiresOn)return;const t=h.convertUTCToLocal(e.expiresOn);if(t)return h.diffBetween(t,new Date,"day")},hasCustomRestriction(e){return!!o.getRestrictionByType(e,[n.Custom])},hasRestrictions(e){var t,r;return!!((r=(t=e==null?void 0:e._restrictions)==null?void 0:t.value)!=null&&r.length)}};export{f as L,o as R,n as a,g as s};
|
|
2
|
+
//# sourceMappingURL=BJUO8a2A.chunk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dr28tW01.chunk.js","sources":["../../../../libs/shared/src/enums/RestrictionType.ts","../../../../libs/shared/src/images/svg/status/LockSvg.tsx","../../../../libs/shared/src/images/svg/status/TimerSvg.tsx","../../../../libs/shared/src/utils/RestrictionHelper.ts"],"sourcesContent":["/**\n * Restriction Types for an object\n */\nexport enum RestrictionType {\n /** Generated for customers who have turned content review on */\n Custom = 'custom',\n\n /** Restriction created by the user */\n User = 'year_group'\n}","import React from 'react';\n\nexport function LockSvg(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg {...props}>\n <path\n d='M9.006 10h6.028c.006-.32.01-.641.002-.974-.016-.663-.077-1.28-.243-1.808-.164-.52-.424-.934-.83-1.223-.407-.292-1.015-.495-1.943-.495s-1.536.203-1.944.495c-.405.29-.665.703-.83 1.223-.166.528-.227 1.145-.242 1.808-.008.333-.004.655.002.974m7.028 0H17a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1v-8a1 1 0 0 1 1-1h1.006c-.006-.33-.01-.67-.002-.997.016-.696.08-1.424.289-2.085.21-.67.576-1.29 1.202-1.737.623-.445 1.453-.681 2.525-.681s1.902.236 2.525.681c.626.447.99 1.068 1.202 1.737.208.661.272 1.389.288 2.085.008.326.005.667 0 .997m-1.014 1H7v8h10v-8h-1.98'\n fill='currentColor'\n />\n </svg>\n );\n}\n","import React from 'react';\n\nexport function TimerSvg(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg {...props}>\n <defs>\n <path\n id='a'\n d='M12 19.059A7.059 7.059 0 1 0 12 4.94a7.059 7.059 0 0 0 0 14.118M12 4a8 8 0 1 1 0 16 8 8 0 0 1 0-16m-.229 2.743a.457.457 0 0 0-.457.457v5.486c0 .147.071.286.191.372l3.174 2.27a.457.457 0 1 0 .532-.744l-2.982-2.133V7.2a.457.457 0 0 0-.458-.457'\n fill='currentColor'\n />\n </defs>\n <g fill='none' fillRule='evenodd'>\n <mask id='b' fill='#fff'>\n <use href='#a' />\n </mask>\n <use fill='#000' fillRule='nonzero' href='#a' />\n <g fill='#383838' mask='url(#b)'>\n <path d='M0 0h24v24H0z' fill='currentColor' />\n </g>\n </g>\n </svg>\n );\n}\n","import { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { DateHelper } from 'libs/common/react/utils/DateHelper';\n\nimport styles from 'libs/shared/components/badges/badge.module.scss';\nimport { RestrictionType } from 'libs/shared/enums/RestrictionType';\nimport { ObjectsRestriction, Restrictions, VideoTypes, YearGroup } from 'libs/shared/interfaces';\n\nimport { LockSvg } from '../images/svg/status/LockSvg';\nimport { TimerSvg } from '../images/svg/status/TimerSvg';\n\nimport { SvgIcon } from './SvgHelper';\n\nconst namespace = 'shared.shared-utils';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst ClassNameMap: {[key in RestrictionType]: string} = {\n [RestrictionType.Custom]: styles.restrictionBadgeCustom,\n [RestrictionType.User]: styles.restrictionBadgeUser\n};\n\nconst IconMap: {[key in RestrictionType]: SvgIcon} = {\n [RestrictionType.Custom]: TimerSvg,\n [RestrictionType.User]: LockSvg\n};\n\nconst PhraseMap: {[key in RestrictionType]: string} = {\n [RestrictionType.Custom]: 'restrictionCustom',\n [RestrictionType.User]: 'restrictionYearGroup'\n};\n\nconst WeightMap: {[Key in RestrictionType]: number} = {\n [RestrictionType.Custom]: 200,\n [RestrictionType.User]: 100\n};\n\nexport const RestrictionHelper = {\n mapRestrictionToClass(restrictions: Restrictions): string {\n if (!restrictions?.value?.length)\n return '';\n\n const restriction = RestrictionHelper.getWeightedRestriction(restrictions.value);\n return ClassNameMap[restriction.type];\n },\n\n mapRestrictionToSvg(restrictions: Restrictions): SvgIcon {\n if (!restrictions?.value?.length)\n return LockSvg;\n\n const restriction = RestrictionHelper.getWeightedRestriction(restrictions.value);\n return IconMap[restriction.type];\n },\n\n mapRestrictionToText(\n restrictions: Restrictions,\n yearGroups: YearGroup[]\n ): string {\n if (!restrictions?.value?.length || !yearGroups?.length)\n return '';\n\n const restriction = RestrictionHelper.getWeightedRestriction(restrictions.value);\n const yearGroup = yearGroups.find(y => y.value === restriction.yearGroup);\n\n const phrase = PhraseMap[restriction.type];\n if (restriction.type === RestrictionType.User) {\n if (restriction.yearGroup === null)\n return getPhrase('restrictionStaff');\n\n if (!yearGroup)\n return '';\n\n if (yearGroups.length === 1)\n return getPhrase('restrictionStudents');\n\n return getPhrase(phrase, { yearGroup: yearGroup.name });\n }\n\n if (restriction.type === RestrictionType.Custom) {\n const duration = RestrictionHelper.getRestrictionDuration(restriction);\n return duration ?\n getPhrase(phrase, { duration, smartCount: duration }) :\n getPhrase('restrictionCustomLessThanDay', { duration, smartCount: 1 });\n }\n\n return '';\n },\n\n /**\n * A video can have multiple restrictions, in that case we need to display\n * only one restriction. By default we display the restriction with highest\n * weight bias.\n */\n getWeightedRestriction(\n restrictions: ObjectsRestriction[],\n bias: 'highest' | 'lowest' = 'highest'\n ): ObjectsRestriction {\n if (!restrictions?.length) return;\n \n if (restrictions.length === 1) return restrictions[0];\n\n return restrictions.reduce((previous, current) => {\n const previousWeight = WeightMap[previous.type];\n const currentWeight = WeightMap[current.type];\n\n if (bias === 'highest' && previousWeight > currentWeight) return previous;\n if (bias === 'lowest' && previousWeight < currentWeight) return previous;\n\n return current;\n });\n },\n\n getRestrictionByType(\n video: VideoTypes,\n type: RestrictionType | RestrictionType[]\n ): ObjectsRestriction {\n if (!RestrictionHelper.hasRestrictions(video))\n return null;\n\n const types = Array.isArray(type) ? type : [type];\n\n const restrictions = video._restrictions.value.filter(r => types.includes(r.type));\n return RestrictionHelper.getWeightedRestriction(restrictions);\n },\n\n getRestrictionDuration(\n restriction: ObjectsRestriction\n ): number {\n if (restriction.type !== RestrictionType.Custom || !restriction.expiresOn) return;\n\n const expiresOn = DateHelper.convertUTCToLocal(restriction.expiresOn);\n if (!expiresOn) return;\n\n return DateHelper.diffBetween(expiresOn, new Date(), 'day');\n },\n\n hasCustomRestriction(\n video: VideoTypes\n ): boolean {\n return !!RestrictionHelper.getRestrictionByType(video, [RestrictionType.Custom]);\n },\n\n hasRestrictions(video: VideoTypes): boolean {\n return !!video?._restrictions?.value?.length;\n }\n};"],"names":["RestrictionType","LockSvg","props","jsx","TimerSvg","jsxs","namespace","getPhrase","LanguageService","ClassNameMap","styles","IconMap","PhraseMap","WeightMap","RestrictionHelper","restrictions","_a","restriction","yearGroups","yearGroup","y","phrase","duration","bias","previous","current","previousWeight","currentWeight","video","type","types","r","expiresOn","DateHelper","_b"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BJUO8a2A.chunk.js","sources":["../../../../libs/shared/src/enums/RestrictionType.ts","../../../../libs/shared/src/images/svg/status/LockSvg.tsx","../../../../libs/shared/src/images/svg/status/TimerSvg.tsx","../../../../libs/shared/src/utils/RestrictionHelper.ts"],"sourcesContent":["/**\n * Restriction Types for an object\n */\nexport enum RestrictionType {\n /** Generated for customers who have turned content review on */\n Custom = 'custom',\n\n /** Restriction created by the user */\n User = 'year_group'\n}","import React from 'react';\n\nexport function LockSvg(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg {...props}>\n <path\n d='M9.006 10h6.028c.006-.32.01-.641.002-.974-.016-.663-.077-1.28-.243-1.808-.164-.52-.424-.934-.83-1.223-.407-.292-1.015-.495-1.943-.495s-1.536.203-1.944.495c-.405.29-.665.703-.83 1.223-.166.528-.227 1.145-.242 1.808-.008.333-.004.655.002.974m7.028 0H17a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1v-8a1 1 0 0 1 1-1h1.006c-.006-.33-.01-.67-.002-.997.016-.696.08-1.424.289-2.085.21-.67.576-1.29 1.202-1.737.623-.445 1.453-.681 2.525-.681s1.902.236 2.525.681c.626.447.99 1.068 1.202 1.737.208.661.272 1.389.288 2.085.008.326.005.667 0 .997m-1.014 1H7v8h10v-8h-1.98'\n fill='currentColor'\n />\n </svg>\n );\n}\n","import React from 'react';\n\nexport function TimerSvg(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg {...props}>\n <defs>\n <path\n id='a'\n d='M12 19.059A7.059 7.059 0 1 0 12 4.94a7.059 7.059 0 0 0 0 14.118M12 4a8 8 0 1 1 0 16 8 8 0 0 1 0-16m-.229 2.743a.457.457 0 0 0-.457.457v5.486c0 .147.071.286.191.372l3.174 2.27a.457.457 0 1 0 .532-.744l-2.982-2.133V7.2a.457.457 0 0 0-.458-.457'\n fill='currentColor'\n />\n </defs>\n <g fill='none' fillRule='evenodd'>\n <mask id='b' fill='#fff'>\n <use href='#a' />\n </mask>\n <use fill='#000' fillRule='nonzero' href='#a' />\n <g fill='#383838' mask='url(#b)'>\n <path d='M0 0h24v24H0z' fill='currentColor' />\n </g>\n </g>\n </svg>\n );\n}\n","import { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { DateHelper } from 'libs/common/react/utils/DateHelper';\n\nimport styles from 'libs/shared/components/badges/badge.module.scss';\nimport { RestrictionType } from 'libs/shared/enums/RestrictionType';\nimport { ObjectsRestriction, Restrictions, VideoTypes, YearGroup } from 'libs/shared/interfaces';\n\nimport { LockSvg } from '../images/svg/status/LockSvg';\nimport { TimerSvg } from '../images/svg/status/TimerSvg';\n\nimport { SvgIcon } from './SvgHelper';\n\nconst namespace = 'shared.shared-utils';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst ClassNameMap: {[key in RestrictionType]: string} = {\n [RestrictionType.Custom]: styles.restrictionBadgeCustom,\n [RestrictionType.User]: styles.restrictionBadgeUser\n};\n\nconst IconMap: {[key in RestrictionType]: SvgIcon} = {\n [RestrictionType.Custom]: TimerSvg,\n [RestrictionType.User]: LockSvg\n};\n\nconst PhraseMap: {[key in RestrictionType]: string} = {\n [RestrictionType.Custom]: 'restrictionCustom',\n [RestrictionType.User]: 'restrictionYearGroup'\n};\n\nconst WeightMap: {[Key in RestrictionType]: number} = {\n [RestrictionType.Custom]: 200,\n [RestrictionType.User]: 100\n};\n\nexport const RestrictionHelper = {\n mapRestrictionToClass(restrictions: Restrictions): string {\n if (!restrictions?.value?.length)\n return '';\n\n const restriction = RestrictionHelper.getWeightedRestriction(restrictions.value);\n return ClassNameMap[restriction.type];\n },\n\n mapRestrictionToSvg(restrictions: Restrictions): SvgIcon {\n if (!restrictions?.value?.length)\n return LockSvg;\n\n const restriction = RestrictionHelper.getWeightedRestriction(restrictions.value);\n return IconMap[restriction.type];\n },\n\n mapRestrictionToText(\n restrictions: Restrictions,\n yearGroups: YearGroup[]\n ): string {\n if (!restrictions?.value?.length || !yearGroups?.length)\n return '';\n\n const restriction = RestrictionHelper.getWeightedRestriction(restrictions.value);\n const yearGroup = yearGroups.find(y => y.value === restriction.yearGroup);\n\n const phrase = PhraseMap[restriction.type];\n if (restriction.type === RestrictionType.User) {\n if (restriction.yearGroup === null)\n return getPhrase('restrictionStaff');\n\n if (!yearGroup)\n return '';\n\n if (yearGroups.length === 1)\n return getPhrase('restrictionStudents');\n\n return getPhrase(phrase, { yearGroup: yearGroup.name });\n }\n\n if (restriction.type === RestrictionType.Custom) {\n const duration = RestrictionHelper.getRestrictionDuration(restriction);\n return duration ?\n getPhrase(phrase, { duration, smartCount: duration }) :\n getPhrase('restrictionCustomLessThanDay', { duration, smartCount: 1 });\n }\n\n return '';\n },\n\n /**\n * A video can have multiple restrictions, in that case we need to display\n * only one restriction. By default we display the restriction with highest\n * weight bias.\n */\n getWeightedRestriction(\n restrictions: ObjectsRestriction[],\n bias: 'highest' | 'lowest' = 'highest'\n ): ObjectsRestriction {\n if (!restrictions?.length) return;\n \n if (restrictions.length === 1) return restrictions[0];\n\n return restrictions.reduce((previous, current) => {\n const previousWeight = WeightMap[previous.type];\n const currentWeight = WeightMap[current.type];\n\n if (bias === 'highest' && previousWeight > currentWeight) return previous;\n if (bias === 'lowest' && previousWeight < currentWeight) return previous;\n\n return current;\n });\n },\n\n getRestrictionByType(\n video: VideoTypes,\n type: RestrictionType | RestrictionType[]\n ): ObjectsRestriction {\n if (!RestrictionHelper.hasRestrictions(video))\n return null;\n\n const types = Array.isArray(type) ? type : [type];\n\n const restrictions = video._restrictions.value.filter(r => types.includes(r.type));\n return RestrictionHelper.getWeightedRestriction(restrictions);\n },\n\n getRestrictionDuration(\n restriction: ObjectsRestriction\n ): number {\n if (restriction.type !== RestrictionType.Custom || !restriction.expiresOn) return;\n\n const expiresOn = DateHelper.convertUTCToLocal(restriction.expiresOn);\n if (!expiresOn) return;\n\n return DateHelper.diffBetween(expiresOn, new Date(), 'day');\n },\n\n hasCustomRestriction(\n video: VideoTypes\n ): boolean {\n return !!RestrictionHelper.getRestrictionByType(video, [RestrictionType.Custom]);\n },\n\n hasRestrictions(video: VideoTypes): boolean {\n return !!video?._restrictions?.value?.length;\n }\n};"],"names":["RestrictionType","LockSvg","props","jsx","TimerSvg","jsxs","namespace","getPhrase","LanguageService","ClassNameMap","styles","IconMap","PhraseMap","WeightMap","RestrictionHelper","restrictions","_a","restriction","yearGroups","yearGroup","y","phrase","duration","bias","previous","current","previousWeight","currentWeight","video","type","types","r","expiresOn","DateHelper","_b"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{U as j,ao as y,ad as L,ae as S,j as a,ap as v,aq as w,R as C,ar as _,w as m,B as u,as as p,r as N}from"./app-
|
|
2
|
-
//# sourceMappingURL=
|
|
1
|
+
import{U as j,ao as y,ad as L,ae as S,j as a,ap as v,aq as w,R as C,ar as _,w as m,B as u,as as p,r as N}from"./app-CAg-7ccU.js";import{C as A}from"./qZQmdlst.chunk.js";import{A as T}from"./Cy4rHX30.chunk.js";import{D as E}from"./Dvty4-yq.chunk.js";import{B as D}from"./DiFNkYHy.chunk.js";import{I as B,a as H,u as I}from"./fIpx79-n.chunk.js";const $="_actions_1psxq_1",q="_actionsContainer_1psxq_14",z="_ownerLogo_1psxq_24",P="_dropStyle_1psxq_33",O="_dragStyle_1psxq_38",d={actions:$,actionsContainer:q,ownerLogo:z,dropStyle:P,dragStyle:O};function U(e){var i,r,f,h,b,F;const s=e.folder.thumbnail?j.urlBuilder(e.folder.thumbnail.url,{size:y.Small}):null,t=(h=(f=(r=(i=e.folder)==null?void 0:i.libraries)==null?void 0:r.data)==null?void 0:f[0])==null?void 0:h.owner,n=e.showOwnerLogo&&((b=t==null?void 0:t.logo)!=null&&b.url)?j.urlBuilder(t.logo.url,{size:y.Small}):null,l=(F=e.getFolderActions)==null?void 0:F.call(e,e.folder),o=e.analyticsData?{id:e.folder.id.toString(),name:e.folder.name,...e.analyticsData}:void 0,c=e.analyticsOptions?{actionType:S.Click,entity:L.Folder,...e.analyticsOptions}:void 0;return a.jsx(E,{draggable:e.drag&&{id:e.folder.id,data:e.folder},droppable:e.drop&&{id:e.folder.id,data:e.folder},dropStye:d.dropStyle,dragStyle:d.dragStyle,children:a.jsxs("div",{className:"position-relative",children:[a.jsxs(v,{className:"rounded-3 d-block text-decoration-none",appLink:e.getAppLink(e.folder),title:e.folder.name,analyticsData:o,analyticsOptions:c,children:[a.jsx(D,{data:s,imageType:w.Thumbnails,imageClassName:"rounded-top-lg",children:a.jsx(B,{name:e.folder.name,type:H.Folder,extraClasses:"rounded-top-lg"})}),a.jsx("h3",{className:"bg-white border-start border-end border-bottom rounded-bottom-lg font-size-normal fw-semibold mb-0 p-2",children:a.jsx("span",{className:"text-truncate d-block",children:e.folder.name})})]}),(l==null?void 0:l.length)&&a.jsx(T,{actions:l,className:d.actionsContainer,actionsDropdownClassName:d.actions,dropdownToggleSvgSize:null}),!!n&&a.jsx("img",{src:n,className:`rounded-circle ${d.ownerLogo}`,alt:`${t==null?void 0:t.name} logo`,title:(t==null?void 0:t.name)||""})]})})}const g="libraries.folderList",k="has:expanded:library:folders";function R(){const e=p();return e.xxl||e.xl||e.lg?6:e.md?4:3}G.defaultProps={showHeading:!0};function G(e){const[s,t]=C.useState(_.get(k)||!1),n=e.expandFolders||s,l=R();function o(){t(!n),_.set(k,!n)}const c=n?e.folders:e.folders.slice(0,l),i=e.folders.length>l&&!e.expandFolders;return a.jsxs(a.Fragment,{children:[a.jsxs("div",{className:"d-flex justify-content-between align-items-center",children:[e.showHeading&&a.jsxs(m,{className:`d-inline-flex align-items-center mb-2 px-2 ${i?"":"cursor-default"}`,onClick:o,children:[i&&a.jsx(A,{direction:n?"down":"right"}),a.jsx("h2",{className:"h4 mb-0",children:a.jsx(u,{namespace:g,phrase:"folders",options:{count:e.folders.length}})})]}),!!(!n&&i)&&a.jsx("div",{className:"d-flex justify-content-end justify-self-end px-2",children:a.jsx(m,{onClick:o,className:"text-dark hover-text-underline d-inline-block",children:a.jsx(u,{namespace:g,phrase:"seeAll",options:{count:e.folders.length}})})}),!!(n&&i)&&a.jsx("div",{className:"d-flex justify-content-end justify-self-end px-2",children:a.jsx(m,{onClick:o,className:"text-dark hover-text-underline d-inline-block",children:a.jsx(u,{namespace:g,phrase:"seeLess"})})}),e.extraButtons?e.extraButtons:a.jsx(a.Fragment,{})]}),a.jsx("div",{className:"row mx-1",children:c.map(r=>a.jsx("div",{className:"col-4 col-md-3 col-lg-2 px-1 pb-3",children:a.jsx(U,{folder:r,getAppLink:e.getAppLink,getFolderActions:e.getFolderActions,drag:e.drag,drop:e.drop})},r.id))})]})}const K="_partialFolderHeading_1surw_1",M="_partialFolderThumbnail_1surw_4",V="_partialFolderName_1surw_7",x={partialFolderHeading:K,partialFolderThumbnail:M,partialFolderName:V},W=()=>a.jsxs("div",{className:"col-4 col-md-3 col-lg-2 px-1 pb-3",children:[a.jsx("div",{className:`${x.partialFolderThumbnail} partial-loading-background rounded-top-lg`}),a.jsx("div",{className:`${x.partialFolderName} partial-loading-background border-bottom rounded-bottom-lg font-size-normal mb-0 p-2`,children:" "})]});function ae({count:e=3}){return a.jsxs(a.Fragment,{children:[a.jsx("div",{className:`${x.partialFolderHeading} h4 mb-2 partial-loading-background`,children:" "}),a.jsx("div",{className:"row mx-n1",children:Array(e).fill(null).map((s,t)=>a.jsx(W,{},t))})]})}function le(e,s){const t=e,n=s,l=I(e&&(o=>t(o).key));return N.useEffect(()=>{l&&l.shouldInitialFetch&&s&&n()},[l==null?void 0:l.shouldInitialFetch,s]),N.useEffect(()=>{!l||!l.nextCursor||l.isFetching||!s||n(l.nextCursor)},[l==null?void 0:l.nextCursor,l==null?void 0:l.isFetching,s]),l}export{G as F,ae as P,le as u};
|
|
2
|
+
//# sourceMappingURL=BKLaPb8Z.chunk.js.map
|