@clickview/exchange 0.53.0-rc.2 → 0.53.0-rc.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (193) hide show
  1. package/dist/bundles.json +1 -1
  2. package/dist/en.json +1 -1
  3. package/dist/scripts/{ClAFGXub.chunk.js → 2cWOXJSc.chunk.js} +2 -2
  4. package/dist/scripts/{ClAFGXub.chunk.js.map → 2cWOXJSc.chunk.js.map} +1 -1
  5. package/dist/scripts/{B8lGJWZL.chunk.js → B4V5N8Aj.chunk.js} +2 -2
  6. package/dist/scripts/{B8lGJWZL.chunk.js.map → B4V5N8Aj.chunk.js.map} +1 -1
  7. package/dist/scripts/{C2RRkDlH.chunk.js → B574uaRU.chunk.js} +2 -2
  8. package/dist/scripts/{C2RRkDlH.chunk.js.map → B574uaRU.chunk.js.map} +1 -1
  9. package/dist/scripts/{CL_sQPNd.chunk.js → B5ab16ux.chunk.js} +2 -2
  10. package/dist/scripts/{CL_sQPNd.chunk.js.map → B5ab16ux.chunk.js.map} +1 -1
  11. package/dist/scripts/{D_MsBVo0.chunk.js → B9eYOwJp.chunk.js} +2 -2
  12. package/dist/scripts/{D_MsBVo0.chunk.js.map → B9eYOwJp.chunk.js.map} +1 -1
  13. package/dist/scripts/{Be7jUiN-.chunk.js → BDTzvMwe.chunk.js} +2 -2
  14. package/dist/scripts/{Be7jUiN-.chunk.js.map → BDTzvMwe.chunk.js.map} +1 -1
  15. package/dist/scripts/{rXZnQHdQ.chunk.js → BHUkwlPw.chunk.js} +2 -2
  16. package/dist/scripts/{rXZnQHdQ.chunk.js.map → BHUkwlPw.chunk.js.map} +1 -1
  17. package/dist/scripts/{BrnEZwBv.chunk.js → BK8xvE8O.chunk.js} +2 -2
  18. package/dist/scripts/{BrnEZwBv.chunk.js.map → BK8xvE8O.chunk.js.map} +1 -1
  19. package/dist/scripts/{CwMe9YbU.chunk.js → BUmvIVcf.chunk.js} +2 -2
  20. package/dist/scripts/{CwMe9YbU.chunk.js.map → BUmvIVcf.chunk.js.map} +1 -1
  21. package/dist/scripts/{Do_JksC6.chunk.js → BVZ_6O_2.chunk.js} +2 -2
  22. package/dist/scripts/{Do_JksC6.chunk.js.map → BVZ_6O_2.chunk.js.map} +1 -1
  23. package/dist/scripts/{CTRlFXGF.chunk.js → BZ1tO2w1.chunk.js} +2 -2
  24. package/dist/scripts/{CTRlFXGF.chunk.js.map → BZ1tO2w1.chunk.js.map} +1 -1
  25. package/dist/scripts/{C4g2BzSP.chunk.js → BZJ9wVLS.chunk.js} +2 -2
  26. package/dist/scripts/{C4g2BzSP.chunk.js.map → BZJ9wVLS.chunk.js.map} +1 -1
  27. package/dist/scripts/{Bdc13avs.chunk.js → Bbct_sP7.chunk.js} +2 -2
  28. package/dist/scripts/{Bdc13avs.chunk.js.map → Bbct_sP7.chunk.js.map} +1 -1
  29. package/dist/scripts/{Bcnaqlik.chunk.js → BcZspO6C.chunk.js} +2 -2
  30. package/dist/scripts/{Bcnaqlik.chunk.js.map → BcZspO6C.chunk.js.map} +1 -1
  31. package/dist/scripts/{ZQHAaDA4.chunk.js → BeJhgZUK.chunk.js} +2 -2
  32. package/dist/scripts/{ZQHAaDA4.chunk.js.map → BeJhgZUK.chunk.js.map} +1 -1
  33. package/dist/scripts/{CErthkSN.chunk.js → BevPAwSq.chunk.js} +2 -2
  34. package/dist/scripts/{CErthkSN.chunk.js.map → BevPAwSq.chunk.js.map} +1 -1
  35. package/dist/scripts/{CyDCS7Ld.chunk.js → BgKdA1OP.chunk.js} +2 -2
  36. package/dist/scripts/{CyDCS7Ld.chunk.js.map → BgKdA1OP.chunk.js.map} +1 -1
  37. package/dist/scripts/{DYfp6qN2.chunk.js → Bk8pUghK.chunk.js} +2 -2
  38. package/dist/scripts/{DYfp6qN2.chunk.js.map → Bk8pUghK.chunk.js.map} +1 -1
  39. package/dist/scripts/{BaT3mEZj.chunk.js → Bo3WoX3a.chunk.js} +2 -2
  40. package/dist/scripts/{BaT3mEZj.chunk.js.map → Bo3WoX3a.chunk.js.map} +1 -1
  41. package/dist/scripts/{CNPIxxmg.chunk.js → BqNxbGAd.chunk.js} +2 -2
  42. package/dist/scripts/{CNPIxxmg.chunk.js.map → BqNxbGAd.chunk.js.map} +1 -1
  43. package/dist/scripts/BrXQ02P1.chunk.js +2 -0
  44. package/dist/scripts/{2CBDy9LJ.chunk.js.map → BrXQ02P1.chunk.js.map} +1 -1
  45. package/dist/scripts/{8ED1-ESq.chunk.js → BswyFk_N.chunk.js} +2 -2
  46. package/dist/scripts/{8ED1-ESq.chunk.js.map → BswyFk_N.chunk.js.map} +1 -1
  47. package/dist/scripts/{By-zFi71.chunk.js → Bx8ThkKE.chunk.js} +2 -2
  48. package/dist/scripts/{By-zFi71.chunk.js.map → Bx8ThkKE.chunk.js.map} +1 -1
  49. package/dist/scripts/{IqKMNgAo.chunk.js → C0U8L3bs.chunk.js} +2 -2
  50. package/dist/scripts/{IqKMNgAo.chunk.js.map → C0U8L3bs.chunk.js.map} +1 -1
  51. package/dist/scripts/{BQzfQiXW.chunk.js → C1lszv3N.chunk.js} +2 -2
  52. package/dist/scripts/{BQzfQiXW.chunk.js.map → C1lszv3N.chunk.js.map} +1 -1
  53. package/dist/scripts/{FNG4Y7Lo.chunk.js → C5uDJfs-.chunk.js} +2 -2
  54. package/dist/scripts/{FNG4Y7Lo.chunk.js.map → C5uDJfs-.chunk.js.map} +1 -1
  55. package/dist/scripts/{nRcKatki.chunk.js → C6L3Q2Qr.chunk.js} +2 -2
  56. package/dist/scripts/{nRcKatki.chunk.js.map → C6L3Q2Qr.chunk.js.map} +1 -1
  57. package/dist/scripts/{B4yjmogh.chunk.js → CJZbn4PU.chunk.js} +2 -2
  58. package/dist/scripts/{B4yjmogh.chunk.js.map → CJZbn4PU.chunk.js.map} +1 -1
  59. package/dist/scripts/{DZfmH_sm.chunk.js → CJfEp2eL.chunk.js} +2 -2
  60. package/dist/scripts/{DZfmH_sm.chunk.js.map → CJfEp2eL.chunk.js.map} +1 -1
  61. package/dist/scripts/{DEle-NIZ.chunk.js → CK7qxCzb.chunk.js} +2 -2
  62. package/dist/scripts/{DEle-NIZ.chunk.js.map → CK7qxCzb.chunk.js.map} +1 -1
  63. package/dist/scripts/{p02rVyN7.chunk.js → CQBoRtuI.chunk.js} +2 -2
  64. package/dist/scripts/{p02rVyN7.chunk.js.map → CQBoRtuI.chunk.js.map} +1 -1
  65. package/dist/scripts/{BtGKm2NN.chunk.js → CSPZpMnD.chunk.js} +2 -2
  66. package/dist/scripts/{BtGKm2NN.chunk.js.map → CSPZpMnD.chunk.js.map} +1 -1
  67. package/dist/scripts/{B1T8c6eo.chunk.js → CV5zDyPS.chunk.js} +2 -2
  68. package/dist/scripts/{B1T8c6eo.chunk.js.map → CV5zDyPS.chunk.js.map} +1 -1
  69. package/dist/scripts/{B12bgIDA.chunk.js → CVYxTfiV.chunk.js} +2 -2
  70. package/dist/scripts/{B12bgIDA.chunk.js.map → CVYxTfiV.chunk.js.map} +1 -1
  71. package/dist/scripts/{DcCFRClj.chunk.js → CZHoEn2m.chunk.js} +2 -2
  72. package/dist/scripts/{DcCFRClj.chunk.js.map → CZHoEn2m.chunk.js.map} +1 -1
  73. package/dist/scripts/CZVuzuXf.chunk.js +2 -0
  74. package/dist/scripts/{B8wmZM8_.chunk.js.map → CZVuzuXf.chunk.js.map} +1 -1
  75. package/dist/scripts/{BJy6bi_f.chunk.js → CbEBLWWY.chunk.js} +2 -2
  76. package/dist/scripts/{BJy6bi_f.chunk.js.map → CbEBLWWY.chunk.js.map} +1 -1
  77. package/dist/scripts/{BfXH3uXe.chunk.js → CeOQ6-zQ.chunk.js} +2 -2
  78. package/dist/scripts/{BfXH3uXe.chunk.js.map → CeOQ6-zQ.chunk.js.map} +1 -1
  79. package/dist/scripts/CeXuvOA5.chunk.js +2 -0
  80. package/dist/scripts/{DADu9kRW.chunk.js.map → CeXuvOA5.chunk.js.map} +1 -1
  81. package/dist/scripts/{AqddT7uG.chunk.js → CjbS9gjG.chunk.js} +2 -2
  82. package/dist/scripts/{AqddT7uG.chunk.js.map → CjbS9gjG.chunk.js.map} +1 -1
  83. package/dist/scripts/CjttP5Uk.chunk.js +2 -0
  84. package/dist/scripts/{0l0N-xl4.chunk.js.map → CjttP5Uk.chunk.js.map} +1 -1
  85. package/dist/scripts/{DS5mdrnT.chunk.js → Ck7ICj8m.chunk.js} +2 -2
  86. package/dist/scripts/{DS5mdrnT.chunk.js.map → Ck7ICj8m.chunk.js.map} +1 -1
  87. package/dist/scripts/{dkeoKe44.chunk.js → CllCtq0-.chunk.js} +2 -2
  88. package/dist/scripts/{dkeoKe44.chunk.js.map → CllCtq0-.chunk.js.map} +1 -1
  89. package/dist/scripts/{b5m_EArj.chunk.js → CmFTfavO.chunk.js} +2 -2
  90. package/dist/scripts/{b5m_EArj.chunk.js.map → CmFTfavO.chunk.js.map} +1 -1
  91. package/dist/scripts/{Dai_iWJd.chunk.js → CoJMfNPY.chunk.js} +2 -2
  92. package/dist/scripts/{Dai_iWJd.chunk.js.map → CoJMfNPY.chunk.js.map} +1 -1
  93. package/dist/scripts/{CCNNRpT4.chunk.js → CpLpE8Im.chunk.js} +3 -3
  94. package/dist/scripts/{CCNNRpT4.chunk.js.map → CpLpE8Im.chunk.js.map} +1 -1
  95. package/dist/scripts/{jNYdSQcK.chunk.js → CqnxxpxX.chunk.js} +2 -2
  96. package/dist/scripts/{jNYdSQcK.chunk.js.map → CqnxxpxX.chunk.js.map} +1 -1
  97. package/dist/scripts/{Cvd9v1E1.chunk.js → CrejgQYb.chunk.js} +2 -2
  98. package/dist/scripts/{Cvd9v1E1.chunk.js.map → CrejgQYb.chunk.js.map} +1 -1
  99. package/dist/scripts/{CrO_Xwqt.chunk.js → CsxfXB_f.chunk.js} +2 -2
  100. package/dist/scripts/{CrO_Xwqt.chunk.js.map → CsxfXB_f.chunk.js.map} +1 -1
  101. package/dist/scripts/{U--YIgy7.chunk.js → Cwb-wgJ-.chunk.js} +2 -2
  102. package/dist/scripts/{U--YIgy7.chunk.js.map → Cwb-wgJ-.chunk.js.map} +1 -1
  103. package/dist/scripts/{Co_iS0bj.chunk.js → D-4Cgpy-.chunk.js} +2 -2
  104. package/dist/scripts/{Co_iS0bj.chunk.js.map → D-4Cgpy-.chunk.js.map} +1 -1
  105. package/dist/scripts/{CG9hOZ8J.chunk.js → D-hP0WNi.chunk.js} +2 -2
  106. package/dist/scripts/{CG9hOZ8J.chunk.js.map → D-hP0WNi.chunk.js.map} +1 -1
  107. package/dist/scripts/{DTbWcpBu.chunk.js → D0odoQbM.chunk.js} +2 -2
  108. package/dist/scripts/{DTbWcpBu.chunk.js.map → D0odoQbM.chunk.js.map} +1 -1
  109. package/dist/scripts/D1g4_5rR.chunk.js +2 -0
  110. package/dist/scripts/{C_l_6pBR.chunk.js.map → D1g4_5rR.chunk.js.map} +1 -1
  111. package/dist/scripts/D2Szos_W.chunk.js +2 -0
  112. package/dist/scripts/{DtSsOmYM.chunk.js.map → D2Szos_W.chunk.js.map} +1 -1
  113. package/dist/scripts/{ntpj3L_6.chunk.js → DCEbF62l.chunk.js} +2 -2
  114. package/dist/scripts/{ntpj3L_6.chunk.js.map → DCEbF62l.chunk.js.map} +1 -1
  115. package/dist/scripts/{WFbXX0u1.chunk.js → DDbz6pxh.chunk.js} +2 -2
  116. package/dist/scripts/{WFbXX0u1.chunk.js.map → DDbz6pxh.chunk.js.map} +1 -1
  117. package/dist/scripts/{Da5Jh4ka.chunk.js → DEH_8veD.chunk.js} +2 -2
  118. package/dist/scripts/{Da5Jh4ka.chunk.js.map → DEH_8veD.chunk.js.map} +1 -1
  119. package/dist/scripts/{D3ZScl6b.chunk.js → DFLHDfV1.chunk.js} +2 -2
  120. package/dist/scripts/{D3ZScl6b.chunk.js.map → DFLHDfV1.chunk.js.map} +1 -1
  121. package/dist/scripts/{DcF9nran.chunk.js → DOwzdCZ2.chunk.js} +2 -2
  122. package/dist/scripts/{DcF9nran.chunk.js.map → DOwzdCZ2.chunk.js.map} +1 -1
  123. package/dist/scripts/{BUa-w0OB.chunk.js → DQgnWU-I.chunk.js} +2 -2
  124. package/dist/scripts/{BUa-w0OB.chunk.js.map → DQgnWU-I.chunk.js.map} +1 -1
  125. package/dist/scripts/{BDJ3lqh6.chunk.js → DQqQBQqj.chunk.js} +2 -2
  126. package/dist/scripts/{BDJ3lqh6.chunk.js.map → DQqQBQqj.chunk.js.map} +1 -1
  127. package/dist/scripts/{BSl_jK0D.chunk.js → DRF-fC47.chunk.js} +2 -2
  128. package/dist/scripts/{BSl_jK0D.chunk.js.map → DRF-fC47.chunk.js.map} +1 -1
  129. package/dist/scripts/{DnnefRY8.chunk.js → DSEhNJwx.chunk.js} +2 -2
  130. package/dist/scripts/{DnnefRY8.chunk.js.map → DSEhNJwx.chunk.js.map} +1 -1
  131. package/dist/scripts/{BqzK1HZp.chunk.js → DbBmb_UT.chunk.js} +2 -2
  132. package/dist/scripts/{BqzK1HZp.chunk.js.map → DbBmb_UT.chunk.js.map} +1 -1
  133. package/dist/scripts/{CPqMEQCO.chunk.js → DbhlPXNV.chunk.js} +2 -2
  134. package/dist/scripts/{CPqMEQCO.chunk.js.map → DbhlPXNV.chunk.js.map} +1 -1
  135. package/dist/scripts/{CqLsOdMW.chunk.js → DcKDSzxe.chunk.js} +2 -2
  136. package/dist/scripts/{CqLsOdMW.chunk.js.map → DcKDSzxe.chunk.js.map} +1 -1
  137. package/dist/scripts/{CHSGgiBB.chunk.js → DdtiM4q4.chunk.js} +2 -2
  138. package/dist/scripts/{CHSGgiBB.chunk.js.map → DdtiM4q4.chunk.js.map} +1 -1
  139. package/dist/scripts/{BB4BMfoF.chunk.js → DgCSpWkC.chunk.js} +2 -2
  140. package/dist/scripts/{BB4BMfoF.chunk.js.map → DgCSpWkC.chunk.js.map} +1 -1
  141. package/dist/scripts/{CzoJAXkI.chunk.js → DnWI-onh.chunk.js} +2 -2
  142. package/dist/scripts/{CzoJAXkI.chunk.js.map → DnWI-onh.chunk.js.map} +1 -1
  143. package/dist/scripts/{DjBZy08c.chunk.js → DqA_qmQz.chunk.js} +2 -2
  144. package/dist/scripts/{DjBZy08c.chunk.js.map → DqA_qmQz.chunk.js.map} +1 -1
  145. package/dist/scripts/{DFm9lfdG.chunk.js → Dtb7_e7t.chunk.js} +2 -2
  146. package/dist/scripts/{DFm9lfdG.chunk.js.map → Dtb7_e7t.chunk.js.map} +1 -1
  147. package/dist/scripts/Dtn-5-Dc.chunk.js +2 -0
  148. package/dist/scripts/{CpOQf5WX.chunk.js.map → Dtn-5-Dc.chunk.js.map} +1 -1
  149. package/dist/scripts/{4pboFAH2.chunk.js → DuHONSHj.chunk.js} +2 -2
  150. package/dist/scripts/{4pboFAH2.chunk.js.map → DuHONSHj.chunk.js.map} +1 -1
  151. package/dist/scripts/EXqfWnts.chunk.js +2 -0
  152. package/dist/scripts/{Cd3-y22Z.chunk.js.map → EXqfWnts.chunk.js.map} +1 -1
  153. package/dist/scripts/{tDL65UQp.chunk.js → EZNN4Yu0.chunk.js} +2 -2
  154. package/dist/scripts/{tDL65UQp.chunk.js.map → EZNN4Yu0.chunk.js.map} +1 -1
  155. package/dist/scripts/{D94KYGFe.chunk.js → LHI3oaCV.chunk.js} +2 -2
  156. package/dist/scripts/{D94KYGFe.chunk.js.map → LHI3oaCV.chunk.js.map} +1 -1
  157. package/dist/scripts/{BIjZARsn.chunk.js → LvDJgDKk.chunk.js} +2 -2
  158. package/dist/scripts/{BIjZARsn.chunk.js.map → LvDJgDKk.chunk.js.map} +1 -1
  159. package/dist/scripts/{CBbVIYIX.chunk.js → XZOjwf5m.chunk.js} +2 -2
  160. package/dist/scripts/{CBbVIYIX.chunk.js.map → XZOjwf5m.chunk.js.map} +1 -1
  161. package/dist/scripts/{app-C2tLApiH.js → app-B9-iRU1r.js} +3 -3
  162. package/dist/scripts/{app-C2tLApiH.js.map → app-B9-iRU1r.js.map} +1 -1
  163. package/dist/scripts/{BTcJz7pn.chunk.js → bTy6Dmvr.chunk.js} +2 -2
  164. package/dist/scripts/{BTcJz7pn.chunk.js.map → bTy6Dmvr.chunk.js.map} +1 -1
  165. package/dist/scripts/{ZubgjRBI.chunk.js → e3PHoSfW.chunk.js} +2 -2
  166. package/dist/scripts/{ZubgjRBI.chunk.js.map → e3PHoSfW.chunk.js.map} +1 -1
  167. package/dist/scripts/{UKh27rvb.chunk.js → fXlIwRMe.chunk.js} +2 -2
  168. package/dist/scripts/{UKh27rvb.chunk.js.map → fXlIwRMe.chunk.js.map} +1 -1
  169. package/dist/scripts/{B3s6jAFl.chunk.js → jduQkbdO.chunk.js} +2 -2
  170. package/dist/scripts/{B3s6jAFl.chunk.js.map → jduQkbdO.chunk.js.map} +1 -1
  171. package/dist/scripts/{7kGPLcjV.chunk.js → kRwTHNNb.chunk.js} +2 -2
  172. package/dist/scripts/{7kGPLcjV.chunk.js.map → kRwTHNNb.chunk.js.map} +1 -1
  173. package/dist/scripts/{C09aCK-h.chunk.js → oHfhDsTp.chunk.js} +2 -2
  174. package/dist/scripts/{C09aCK-h.chunk.js.map → oHfhDsTp.chunk.js.map} +1 -1
  175. package/dist/scripts/{Dqn_DM3j.chunk.js → ov91D2RT.chunk.js} +2 -2
  176. package/dist/scripts/{Dqn_DM3j.chunk.js.map → ov91D2RT.chunk.js.map} +1 -1
  177. package/dist/scripts/{CeF-ZKL3.chunk.js → r83d385M.chunk.js} +2 -2
  178. package/dist/scripts/{CeF-ZKL3.chunk.js.map → r83d385M.chunk.js.map} +1 -1
  179. package/dist/scripts/{BI-Q7Pp8.chunk.js → rHycMxyI.chunk.js} +2 -2
  180. package/dist/scripts/{BI-Q7Pp8.chunk.js.map → rHycMxyI.chunk.js.map} +1 -1
  181. package/dist/scripts/{CL0AqQPL.chunk.js → rJhp74_5.chunk.js} +2 -2
  182. package/dist/scripts/{CL0AqQPL.chunk.js.map → rJhp74_5.chunk.js.map} +1 -1
  183. package/dist/scripts/{D3l9DF6j.chunk.js → rv4f8H6-.chunk.js} +2 -2
  184. package/dist/scripts/{D3l9DF6j.chunk.js.map → rv4f8H6-.chunk.js.map} +1 -1
  185. package/package.json +1 -1
  186. package/dist/scripts/0l0N-xl4.chunk.js +0 -2
  187. package/dist/scripts/2CBDy9LJ.chunk.js +0 -2
  188. package/dist/scripts/B8wmZM8_.chunk.js +0 -2
  189. package/dist/scripts/C_l_6pBR.chunk.js +0 -2
  190. package/dist/scripts/Cd3-y22Z.chunk.js +0 -2
  191. package/dist/scripts/CpOQf5WX.chunk.js +0 -2
  192. package/dist/scripts/DADu9kRW.chunk.js +0 -2
  193. package/dist/scripts/DtSsOmYM.chunk.js +0 -2
@@ -1,2 +1,2 @@
1
- import{U as a,an as C,S as l,H as p,M as v,m as T}from"./app-C2tLApiH.js";import{C as y}from"./BlDVEZsX.chunk.js";import{P as $}from"./pkzD5BEm.chunk.js";var m=(e=>(e.Series="series",e.Playlist="playlist",e.Widget="widget",e.Folder="category",e.CategoryTree="categoryTree",e))(m||{});const d={sharedVideo:(e,i)=>a.urlBuilder(`/api/objects/${e}`,{shareId:i,query:l.VIDEO}),publicVideo:(e,i)=>a.urlBuilder(`/api/objects/${e}`,{query:"thumbnail,_canBeConsumed,series,season,_rating,libraries{typeId:[17]}",permissionFilterOption:$.StripMetadata,shareId:i}),getVideosById:e=>a.urlBuilder("{gateway}/v1/objects",{"query.video":l.VIDEO_COLLECTION,"query.clip":l.CLIP_COLLECTION,"query.interactive":l.INTERACTIVE_COLLECTION,id:e}),relatedVideos:e=>{const{videoId:i,context:t,collectionId:r,moviesAndTv:s,limit:n}=e,o={videoId:i,limit:n,query:l.VIDEO_COLLECTION};return t&&(t===m.Widget?o["context.widgetId"]=r:(o["context.collectionType"]=t,o["context.collectionId"]=r)),s&&(o["context.moviesAndTv"]=!0),a.urlBuilder("{gateway}/v1/suggestions/related-videos",o)}},f={video(e,i){return{url:a.urlBuilder(`{gateway}/v1/objects/${e}`,{query:l.VIDEO,permissionFilterOption:i}),publicUrl:a.urlBuilder(`/api/objects/${e}`,{query:T.VIDEO,permissionFilterOption:i}),key:`videos:${e}:${i}`}},publicVideo(e,i,t,r){return{url:d.publicVideo(e,i),key:`videos:${e}:public:${i}`,bootstrapName:`shared:object:${e}`,success:t,error:r}},sharedVideo(e,i,t,r){return{url:d.sharedVideo(e,i),key:`shared:video:${e}`,success:t,error:r}},myVideos(e,i){const{VIDEO_COLLECTION:t,CLIP_COLLECTION:r,INTERACTIVE:s}=l,n=`videos[${t}]{libraries.typeid:${v.WorkspaceCollection}}`,o=`clips[${r}]`,u=`interactives[${s}]{status:[${y.Published},${y.Draft}]}`,c={query:`(${n}|${o}|${u}){orderbydesc:id}`,permissionFilterOption:$.StripMetadata};return i&&(c.cursor=i),{url:a.urlBuilder(`{gateway}/v1/objects/${e}/members`,c),key:`my:videos:${i}`}},videos(e,i){return{url:d.getVideosById(e),key:`videos:by:id:${e.join(",")}`,success:i}},watchHistoryVideos(e,i){return{url:d.getVideosById(e),key:`watch:history:videos:by:id:${e.join(",")}`,success:i}},updateVideo(e,i,t,r,s){return{key:`update:video:${e}`,url:`{gateway}/v1/objects/${e}`,type:p.PUT,data:i,success:t,error:r,always:s}},videoRatings(e,i){const t=e.map(r=>`id=${r}`);if(t.length)return{url:`/api/domain/v2/objects?query=rating&${t.join("&")}`,key:`video:ratings:by:id:${e.join(",")}`,normalizeOptions:{namespace:i}}},videoMixinAssocs(e,i){if(e.map(r=>`id=${r}`).length)return{url:a.urlBuilder("{gateway}/v1/objects",{query:"interactives{limit:100},resources{limit:100},links{limit:100},_hasCurriculumLinks",id:e}),publicUrl:a.urlBuilder("/api/objects",{query:"interactives{limit:100},resources{limit:100},links{limit:100},_hasCurriculumLinks",id:e}),key:`video:mixin:assocs:${e.join(",")}`,normalizeOptions:{namespace:i}}},getRestrictions(e){const i=e.slice().sort();return{url:`/api/domain/v1/restrictedobjects?objectTypeId=${v.Video}${i.map(t=>`&objectId=${t}`).join("")}`,key:`restrictions:${i.join(",")}`,normalizeOptions:{namespace:"domain",idAttribute:"objectId"}}},delete(e,i,t){return{url:`{gateway}/v1/objects/${e}`,key:`delete:video:${e}`,type:p.DELETE,success:i,error:t,invalidationKeys:["videos","search"]}},deleteBulk(e,i,t,r,s){const n=e.map(u=>`videoIds=${u}`).join("&"),o=[`categoryId=${t}`,`${n}`].join("&");return{url:`/api/domain/v1/libraries/${i}/videos?${o}`,key:`delete:bulk:video:${e.join(":")}:${i}:${t}`,type:p.DELETE,success:r,error:s,invalidationKeys:["videos","search"]}},relatedVideos(e){const{videoId:i,context:t,collectionId:r,moviesAndTv:s}=e;return{url:d.relatedVideos(e),key:`related:videos:${i}:${t}:${r}:${s}`}},collectionVideos(e,i,t,r,s,n){const o=C.getVideoSortParam(i),{VIDEO_COLLECTION:u,CLIP_COLLECTION:c,INTERACTIVE:b}=l,g=`videos[${u}]`,j=`clips[${c}]`,I=`interactives[${b}]{status:[${y.Published},${y.Draft}]}`,O={query:`(${g}|${j}|${I})${o?`{${o}}`:""}`,permissionFilterOption:$.FilterOut,...t?{cursor:t}:{}},V=["folder","videos",e,t,i].filter(E=>!!E).join(":");return{url:a.urlBuilder(`{gateway}/v1/objects/${e}/members`,O),key:V,success:r,error:s,always:n}},pointsOfInterest(e,i,t,r,s){const n={query:"{limit:100}",cursor:i};return{url:a.urlBuilder(`{gateway}/v1/objects/${e}/pointsofinterest`,n),publicUrl:a.urlBuilder(`/api/objects/${e}/pointsofinterest`,n),key:`pointsofinterest:${e}${i?`:${i}`:""}`,success:t,error:r,always:s}},regionAlternatives(e,i,t,r){return{url:`/api/objects/videos/${e}/region-alternatives`,publicUrl:`/api/objects/videos/${e}/region-alternatives`,key:`video:regionAlternatives:${e}`,normalize:!1,success:i,error:t,always:r}}};export{f as V};
2
- //# sourceMappingURL=ClAFGXub.chunk.js.map
1
+ import{U as a,an as C,S as l,H as p,M as v,m as T}from"./app-B9-iRU1r.js";import{C as y}from"./BlDVEZsX.chunk.js";import{P as $}from"./pkzD5BEm.chunk.js";var m=(e=>(e.Series="series",e.Playlist="playlist",e.Widget="widget",e.Folder="category",e.CategoryTree="categoryTree",e))(m||{});const d={sharedVideo:(e,i)=>a.urlBuilder(`/api/objects/${e}`,{shareId:i,query:l.VIDEO}),publicVideo:(e,i)=>a.urlBuilder(`/api/objects/${e}`,{query:"thumbnail,_canBeConsumed,series,season,_rating,libraries{typeId:[17]}",permissionFilterOption:$.StripMetadata,shareId:i}),getVideosById:e=>a.urlBuilder("{gateway}/v1/objects",{"query.video":l.VIDEO_COLLECTION,"query.clip":l.CLIP_COLLECTION,"query.interactive":l.INTERACTIVE_COLLECTION,id:e}),relatedVideos:e=>{const{videoId:i,context:t,collectionId:r,moviesAndTv:s,limit:n}=e,o={videoId:i,limit:n,query:l.VIDEO_COLLECTION};return t&&(t===m.Widget?o["context.widgetId"]=r:(o["context.collectionType"]=t,o["context.collectionId"]=r)),s&&(o["context.moviesAndTv"]=!0),a.urlBuilder("{gateway}/v1/suggestions/related-videos",o)}},f={video(e,i){return{url:a.urlBuilder(`{gateway}/v1/objects/${e}`,{query:l.VIDEO,permissionFilterOption:i}),publicUrl:a.urlBuilder(`/api/objects/${e}`,{query:T.VIDEO,permissionFilterOption:i}),key:`videos:${e}:${i}`}},publicVideo(e,i,t,r){return{url:d.publicVideo(e,i),key:`videos:${e}:public:${i}`,bootstrapName:`shared:object:${e}`,success:t,error:r}},sharedVideo(e,i,t,r){return{url:d.sharedVideo(e,i),key:`shared:video:${e}`,success:t,error:r}},myVideos(e,i){const{VIDEO_COLLECTION:t,CLIP_COLLECTION:r,INTERACTIVE:s}=l,n=`videos[${t}]{libraries.typeid:${v.WorkspaceCollection}}`,o=`clips[${r}]`,u=`interactives[${s}]{status:[${y.Published},${y.Draft}]}`,c={query:`(${n}|${o}|${u}){orderbydesc:id}`,permissionFilterOption:$.StripMetadata};return i&&(c.cursor=i),{url:a.urlBuilder(`{gateway}/v1/objects/${e}/members`,c),key:`my:videos:${i}`}},videos(e,i){return{url:d.getVideosById(e),key:`videos:by:id:${e.join(",")}`,success:i}},watchHistoryVideos(e,i){return{url:d.getVideosById(e),key:`watch:history:videos:by:id:${e.join(",")}`,success:i}},updateVideo(e,i,t,r,s){return{key:`update:video:${e}`,url:`{gateway}/v1/objects/${e}`,type:p.PUT,data:i,success:t,error:r,always:s}},videoRatings(e,i){const t=e.map(r=>`id=${r}`);if(t.length)return{url:`/api/domain/v2/objects?query=rating&${t.join("&")}`,key:`video:ratings:by:id:${e.join(",")}`,normalizeOptions:{namespace:i}}},videoMixinAssocs(e,i){if(e.map(r=>`id=${r}`).length)return{url:a.urlBuilder("{gateway}/v1/objects",{query:"interactives{limit:100},resources{limit:100},links{limit:100},_hasCurriculumLinks",id:e}),publicUrl:a.urlBuilder("/api/objects",{query:"interactives{limit:100},resources{limit:100},links{limit:100},_hasCurriculumLinks",id:e}),key:`video:mixin:assocs:${e.join(",")}`,normalizeOptions:{namespace:i}}},getRestrictions(e){const i=e.slice().sort();return{url:`/api/domain/v1/restrictedobjects?objectTypeId=${v.Video}${i.map(t=>`&objectId=${t}`).join("")}`,key:`restrictions:${i.join(",")}`,normalizeOptions:{namespace:"domain",idAttribute:"objectId"}}},delete(e,i,t){return{url:`{gateway}/v1/objects/${e}`,key:`delete:video:${e}`,type:p.DELETE,success:i,error:t,invalidationKeys:["videos","search"]}},deleteBulk(e,i,t,r,s){const n=e.map(u=>`videoIds=${u}`).join("&"),o=[`categoryId=${t}`,`${n}`].join("&");return{url:`/api/domain/v1/libraries/${i}/videos?${o}`,key:`delete:bulk:video:${e.join(":")}:${i}:${t}`,type:p.DELETE,success:r,error:s,invalidationKeys:["videos","search"]}},relatedVideos(e){const{videoId:i,context:t,collectionId:r,moviesAndTv:s}=e;return{url:d.relatedVideos(e),key:`related:videos:${i}:${t}:${r}:${s}`}},collectionVideos(e,i,t,r,s,n){const o=C.getVideoSortParam(i),{VIDEO_COLLECTION:u,CLIP_COLLECTION:c,INTERACTIVE:b}=l,g=`videos[${u}]`,j=`clips[${c}]`,I=`interactives[${b}]{status:[${y.Published},${y.Draft}]}`,O={query:`(${g}|${j}|${I})${o?`{${o}}`:""}`,permissionFilterOption:$.FilterOut,...t?{cursor:t}:{}},V=["folder","videos",e,t,i].filter(E=>!!E).join(":");return{url:a.urlBuilder(`{gateway}/v1/objects/${e}/members`,O),key:V,success:r,error:s,always:n}},pointsOfInterest(e,i,t,r,s){const n={query:"{limit:100}",cursor:i};return{url:a.urlBuilder(`{gateway}/v1/objects/${e}/pointsofinterest`,n),publicUrl:a.urlBuilder(`/api/objects/${e}/pointsofinterest`,n),key:`pointsofinterest:${e}${i?`:${i}`:""}`,success:t,error:r,always:s}},regionAlternatives(e,i,t,r){return{url:`/api/objects/videos/${e}/region-alternatives`,publicUrl:`/api/objects/videos/${e}/region-alternatives`,key:`video:regionAlternatives:${e}`,normalize:!1,success:i,error:t,always:r}}};export{f as V};
2
+ //# sourceMappingURL=2cWOXJSc.chunk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClAFGXub.chunk.js","sources":["../../../../libs/shared/src/enums/RelatedVideosContext.ts","../../../../libs/shared/src/flight-requests/VideoRequests.ts"],"sourcesContent":["export enum RelatedVideosContext {\n Series = 'series',\n Playlist = 'playlist',\n Widget = 'widget',\n Folder = 'category',\n CategoryTree = 'categoryTree'\n}","import { HttpVerbs } from 'libs/common/backbone/enums/HttpVerbs';\nimport { Xhr } from 'libs/common/backbone/interfaces/Xhr';\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\nimport { Flight } from 'libs/common/flight';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { PublicWithStatement, SharedWithStatements } from 'libs/shared/constants/WithStatements';\nimport { CurationStatus } from 'libs/shared/enums/CurationStatus';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { PermissionFilterOption } from 'libs/shared/enums/PermissionFilterOption';\nimport { RelatedVideosContext } from 'libs/shared/enums/RelatedVideosContext';\nimport { VideoSortType } from 'libs/shared/enums/VideoSortType';\nimport { PointOfInterestCollection, UpdateVideoRequest, Video, VideoCollection } from 'libs/shared/interfaces';\nimport { RegionAlternative } from 'libs/shared/interfaces/models/RegionAlternative';\nimport { VideoSortHelper } from 'libs/shared/utils/VideoSortHelper';\n\nconst endpoints = {\n sharedVideo: (id: string, shareId: string) => UrlHelper.urlBuilder(`/api/objects/${id}`, {\n shareId,\n query: SharedWithStatements.VIDEO\n }),\n\n publicVideo: (id: string, shareId?: string) => UrlHelper.urlBuilder(`/api/objects/${id}`, {\n // Query statement here is coupled with ClickView.Lite.Common\\Services\\OpenGraph\\OpenGraphService.cs\n // in lite. If you update this, please update both.\n query: 'thumbnail,_canBeConsumed,series,season,_rating,libraries{typeId:[17]}',\n permissionFilterOption: PermissionFilterOption.StripMetadata,\n shareId\n }),\n\n getVideosById: (ids: string[]) => {\n return UrlHelper.urlBuilder('{gateway}/v1/objects', {\n 'query.video': SharedWithStatements.VIDEO_COLLECTION,\n 'query.clip': SharedWithStatements.CLIP_COLLECTION,\n 'query.interactive': SharedWithStatements.INTERACTIVE_COLLECTION,\n 'id': ids\n });\n },\n\n relatedVideos: (options: {\n videoId: string;\n context?: RelatedVideosContext;\n collectionId?: string;\n moviesAndTv?: boolean;\n limit: number;\n }) => {\n const { videoId, context, collectionId, moviesAndTv, limit } = options;\n\n const params: HashObject = {\n videoId,\n limit,\n query: SharedWithStatements.VIDEO_COLLECTION\n };\n\n if (context) {\n if (context === RelatedVideosContext.Widget) {\n params['context.widgetId'] = collectionId;\n } else {\n params['context.collectionType'] = context;\n params['context.collectionId'] = collectionId;\n }\n }\n\n if (moviesAndTv)\n params['context.moviesAndTv'] = true;\n\n return UrlHelper.urlBuilder('{gateway}/v1/suggestions/related-videos', params);\n }\n};\n\nexport const VideoRequests = {\n video(id: string, permissionFilterOption?: PermissionFilterOption): Flight.PublicRequest {\n return {\n url: UrlHelper.urlBuilder(`{gateway}/v1/objects/${id}`, {\n query: SharedWithStatements.VIDEO,\n permissionFilterOption\n }),\n publicUrl: UrlHelper.urlBuilder(`/api/objects/${id}`, {\n query: PublicWithStatement.VIDEO,\n permissionFilterOption\n }),\n key: `videos:${id}:${permissionFilterOption}`\n };\n },\n\n publicVideo(\n id: string,\n shareId?: string,\n success?: (video: Video) => void,\n error?: (xhr: Xhr) => void\n ): Flight.Request {\n return {\n url: endpoints.publicVideo(id, shareId),\n key: `videos:${id}:public:${shareId}`,\n bootstrapName: `shared:object:${id}`,\n success,\n error\n };\n },\n\n sharedVideo(\n id: string,\n shareId: string,\n success?: (video: Video) => void,\n error?: (xhr: Xhr) => void\n ): Flight.Request {\n return {\n url: endpoints.sharedVideo(id, shareId),\n key: `shared:video:${id}`,\n success,\n error\n };\n },\n\n myVideos(userId: string, cursor: string): Flight.Request {\n const { VIDEO_COLLECTION, CLIP_COLLECTION, INTERACTIVE } = SharedWithStatements;\n\n const videoQuery = `videos[${VIDEO_COLLECTION}]{libraries.typeid:${MasterType.WorkspaceCollection}}`;\n const clipQuery = `clips[${CLIP_COLLECTION}]`;\n const interactiveQuery = `interactives[${INTERACTIVE}]{status:[${CurationStatus.Published},${CurationStatus.Draft}]}`;\n\n const params: HashObject = {\n query: `(${videoQuery}|${clipQuery}|${interactiveQuery}){orderbydesc:id}`,\n permissionFilterOption: PermissionFilterOption.StripMetadata\n };\n\n if (cursor)\n params.cursor = cursor;\n\n return {\n url: UrlHelper.urlBuilder(`{gateway}/v1/objects/${userId}/members`, params),\n key: `my:videos:${cursor}`\n };\n },\n\n videos(ids: string[], success?: (videos: Video[]) => void): Flight.Request {\n return {\n url: endpoints.getVideosById(ids),\n key: `videos:by:id:${ids.join(',')}`,\n success\n };\n },\n\n watchHistoryVideos(\n ids: string[],\n success?: (videos: Video[]) => void\n ): Flight.Request {\n return {\n url: endpoints.getVideosById(ids),\n key: `watch:history:videos:by:id:${ids.join(',')}`,\n success\n };\n },\n\n updateVideo(\n id: string,\n data: UpdateVideoRequest,\n success?: () => void,\n error?: () => void,\n always?: () => void\n ): Flight.Request {\n return {\n key: `update:video:${id}`,\n url: `{gateway}/v1/objects/${id}`,\n type: HttpVerbs.PUT,\n data,\n success,\n error,\n always\n };\n },\n\n /**\n * This is simply an example to show the prototype for useVideoMixin\n * eventually there will be endpoints in domain that let us fetch members\n * without fetching the objects properties, so we can fetch stuff like\n * hasInteractives and isFavourited as subsequent calls\n */\n videoRatings(ids: string[], namespace?: string): Flight.Request {\n const params = ids.map(i => `id=${i}`);\n\n if (!params.length)\n return;\n\n return {\n url: `/api/domain/v2/objects?query=rating&${params.join('&')}`,\n key: `video:ratings:by:id:${ids.join(',')}`,\n normalizeOptions: {\n namespace\n }\n };\n },\n\n videoMixinAssocs(ids: string[], namespace?: string): Flight.PublicRequest {\n const params = ids.map(i => `id=${i}`);\n\n if (!params.length)\n return;\n\n /**\n * IMPORTANT!\n * \n * This request is used for BOTH clips and videos. This means these requests will fail if you\n * add assocs in the future that are not supported for both object types. If you find yourself in this\n * case, what you should do is:\n * \n * 1. Consider whether clips should support the assoc that you're hydrating for videos. In most cases,\n * I think they should, as we want clips and videos to basically support the same fields and metadata.\n * 2. If the above is false or can't be done right now, you will need to create a separate request for clips\n * and update the logic in useVideoMixin to handle this.\n */\n return {\n url: UrlHelper.urlBuilder('{gateway}/v1/objects', {\n query: 'interactives{limit:100},resources{limit:100},links{limit:100},_hasCurriculumLinks',\n id: ids\n }),\n publicUrl: UrlHelper.urlBuilder(`/api/objects`, {\n query: 'interactives{limit:100},resources{limit:100},links{limit:100},_hasCurriculumLinks',\n id: ids\n }),\n /**\n * We are intentionally NOT sorting the IDs here. This is because `useVideoMixin` wants to provide\n * the IDs in their original order so that the cache key here doesn't change for subsequent calls.\n * \n * Here is an example of a problem that would occur if we were sorting: say we search for something,\n * and load the first page of 25 results. The videos and clips here would have their IDs sorted in the cache\n * key, then fetched. Then, we scrolled down and fetched the next 25, leading to 50 IDs in the array. If we\n * sort the IDs in the key, the keys would change from the first request, leading to all of the videos/clips\n * from the first request being fetched a second time unnecessarily. Every time you'd fetch a new page, you'd\n * be making multiple unnecessary API calls.\n * \n * TL;DR: Don't sort the IDs here, `useVideoMixin` will handle that.\n */\n key: `video:mixin:assocs:${ids.join(',')}`,\n normalizeOptions: {\n namespace\n }\n };\n },\n\n getRestrictions(videoIds: string[]): Flight.Request {\n const sortedIds = videoIds.slice().sort();\n\n return {\n url: '/api/domain/v1/restrictedobjects'\n + `?objectTypeId=${MasterType.Video}${sortedIds.map(id => `&objectId=${id}`).join('')}`,\n key: `restrictions:${sortedIds.join(',')}`,\n normalizeOptions: {\n namespace: 'domain',\n idAttribute: 'objectId'\n }\n };\n },\n\n delete(videoId: string, success?: () => void, error?: () => void): Flight.Request {\n return {\n url: `{gateway}/v1/objects/${videoId}`,\n key: `delete:video:${videoId}`,\n type: HttpVerbs.DELETE,\n success,\n error,\n invalidationKeys: [ 'videos', 'search' ]\n };\n },\n\n deleteBulk(\n videoId: string[],\n libraryId: string,\n categoryId: string,\n success?: () => void,\n error?: () => void\n ): Flight.Request {\n const videoIds = videoId.map(id => `videoIds=${id}`).join('&');\n const params = [\n `categoryId=${categoryId}`,\n `${videoIds}`\n ].join('&');\n\n return {\n url: `/api/domain/v1/libraries/${libraryId}/videos?${params}`,\n key: `delete:bulk:video:${videoId.join(':')}:${libraryId}:${categoryId}`,\n type: HttpVerbs.DELETE,\n success,\n error,\n invalidationKeys: [ 'videos', 'search' ]\n };\n },\n\n relatedVideos(options: {\n videoId: string;\n context?: RelatedVideosContext;\n collectionId?: string;\n moviesAndTv?: boolean;\n /**\n * This limit is intentionall not in the key. See useGetRelatedVideos for an explanation\n */\n limit: number;\n }): Flight.Request {\n const { videoId, context, collectionId, moviesAndTv } = options;\n\n return {\n url: endpoints.relatedVideos(options),\n key: `related:videos:${videoId}:${context}:${collectionId}:${moviesAndTv}`\n };\n },\n\n collectionVideos(\n collectionId: string,\n sort?: VideoSortType,\n cursor?: string,\n success?: (data: VideoCollection) => void,\n error?: (xhr: Xhr) => void,\n always?: () => void\n ): Flight.Request {\n const sortFilter = VideoSortHelper.getVideoSortParam(sort);\n const { VIDEO_COLLECTION, CLIP_COLLECTION, INTERACTIVE } = SharedWithStatements;\n\n const videoQuery = `videos[${VIDEO_COLLECTION}]`;\n const clipQuery = `clips[${CLIP_COLLECTION}]`;\n const interactiveQuery = `interactives[${INTERACTIVE}]{status:[${CurationStatus.Published},${CurationStatus.Draft}]}`;\n\n const params: HashObject = {\n query: `(${videoQuery}|${clipQuery}|${interactiveQuery})${sortFilter ? `{${sortFilter}}` : ''}`,\n permissionFilterOption: PermissionFilterOption.FilterOut,\n ...(cursor ? { cursor } : {})\n };\n\n const key = [ 'folder', 'videos', collectionId, cursor, sort ].filter(k => !!k).join(':');\n\n return {\n url: UrlHelper.urlBuilder(`{gateway}/v1/objects/${collectionId}/members`, params),\n key,\n success,\n error,\n always\n };\n },\n\n pointsOfInterest(\n videoId: string,\n cursor?: string,\n success?: (data: PointOfInterestCollection) => void,\n error?: (xhr: Xhr) => void,\n always?: () => void\n ): Flight.PublicRequest {\n const queryStringObj = { query: '{limit:100}', cursor };\n\n return {\n url: UrlHelper.urlBuilder(`{gateway}/v1/objects/${videoId}/pointsofinterest`, queryStringObj),\n publicUrl: UrlHelper.urlBuilder(`/api/objects/${videoId}/pointsofinterest`, queryStringObj),\n key: `pointsofinterest:${videoId}${cursor ? `:${cursor}` : ''}`,\n success,\n error,\n always\n };\n },\n\n regionAlternatives(\n videoId: string,\n success?: (data: RegionAlternative[]) => void,\n error?: (xhr: Xhr) => void,\n always?: () => void\n ): Flight.PublicRequest {\n return {\n url: `/api/objects/videos/${videoId}/region-alternatives`,\n publicUrl: `/api/objects/videos/${videoId}/region-alternatives`,\n key: `video:regionAlternatives:${videoId}`,\n normalize: false,\n success,\n error,\n always\n };\n }\n};\n"],"names":["RelatedVideosContext","endpoints","id","shareId","UrlHelper","SharedWithStatements","PermissionFilterOption","ids","options","videoId","context","collectionId","moviesAndTv","limit","params","VideoRequests","permissionFilterOption","PublicWithStatement","success","error","userId","cursor","VIDEO_COLLECTION","CLIP_COLLECTION","INTERACTIVE","videoQuery","MasterType","clipQuery","interactiveQuery","CurationStatus","data","always","HttpVerbs","namespace","i","videoIds","sortedIds","libraryId","categoryId","sort","sortFilter","VideoSortHelper","key","k","queryStringObj"],"mappings":"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"}
1
+ {"version":3,"file":"2cWOXJSc.chunk.js","sources":["../../../../libs/shared/src/enums/RelatedVideosContext.ts","../../../../libs/shared/src/flight-requests/VideoRequests.ts"],"sourcesContent":["export enum RelatedVideosContext {\n Series = 'series',\n Playlist = 'playlist',\n Widget = 'widget',\n Folder = 'category',\n CategoryTree = 'categoryTree'\n}","import { HttpVerbs } from 'libs/common/backbone/enums/HttpVerbs';\nimport { Xhr } from 'libs/common/backbone/interfaces/Xhr';\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\nimport { Flight } from 'libs/common/flight';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { PublicWithStatement, SharedWithStatements } from 'libs/shared/constants/WithStatements';\nimport { CurationStatus } from 'libs/shared/enums/CurationStatus';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { PermissionFilterOption } from 'libs/shared/enums/PermissionFilterOption';\nimport { RelatedVideosContext } from 'libs/shared/enums/RelatedVideosContext';\nimport { VideoSortType } from 'libs/shared/enums/VideoSortType';\nimport { PointOfInterestCollection, UpdateVideoRequest, Video, VideoCollection } from 'libs/shared/interfaces';\nimport { RegionAlternative } from 'libs/shared/interfaces/models/RegionAlternative';\nimport { VideoSortHelper } from 'libs/shared/utils/VideoSortHelper';\n\nconst endpoints = {\n sharedVideo: (id: string, shareId: string) => UrlHelper.urlBuilder(`/api/objects/${id}`, {\n shareId,\n query: SharedWithStatements.VIDEO\n }),\n\n publicVideo: (id: string, shareId?: string) => UrlHelper.urlBuilder(`/api/objects/${id}`, {\n // Query statement here is coupled with ClickView.Lite.Common\\Services\\OpenGraph\\OpenGraphService.cs\n // in lite. If you update this, please update both.\n query: 'thumbnail,_canBeConsumed,series,season,_rating,libraries{typeId:[17]}',\n permissionFilterOption: PermissionFilterOption.StripMetadata,\n shareId\n }),\n\n getVideosById: (ids: string[]) => {\n return UrlHelper.urlBuilder('{gateway}/v1/objects', {\n 'query.video': SharedWithStatements.VIDEO_COLLECTION,\n 'query.clip': SharedWithStatements.CLIP_COLLECTION,\n 'query.interactive': SharedWithStatements.INTERACTIVE_COLLECTION,\n 'id': ids\n });\n },\n\n relatedVideos: (options: {\n videoId: string;\n context?: RelatedVideosContext;\n collectionId?: string;\n moviesAndTv?: boolean;\n limit: number;\n }) => {\n const { videoId, context, collectionId, moviesAndTv, limit } = options;\n\n const params: HashObject = {\n videoId,\n limit,\n query: SharedWithStatements.VIDEO_COLLECTION\n };\n\n if (context) {\n if (context === RelatedVideosContext.Widget) {\n params['context.widgetId'] = collectionId;\n } else {\n params['context.collectionType'] = context;\n params['context.collectionId'] = collectionId;\n }\n }\n\n if (moviesAndTv)\n params['context.moviesAndTv'] = true;\n\n return UrlHelper.urlBuilder('{gateway}/v1/suggestions/related-videos', params);\n }\n};\n\nexport const VideoRequests = {\n video(id: string, permissionFilterOption?: PermissionFilterOption): Flight.PublicRequest {\n return {\n url: UrlHelper.urlBuilder(`{gateway}/v1/objects/${id}`, {\n query: SharedWithStatements.VIDEO,\n permissionFilterOption\n }),\n publicUrl: UrlHelper.urlBuilder(`/api/objects/${id}`, {\n query: PublicWithStatement.VIDEO,\n permissionFilterOption\n }),\n key: `videos:${id}:${permissionFilterOption}`\n };\n },\n\n publicVideo(\n id: string,\n shareId?: string,\n success?: (video: Video) => void,\n error?: (xhr: Xhr) => void\n ): Flight.Request {\n return {\n url: endpoints.publicVideo(id, shareId),\n key: `videos:${id}:public:${shareId}`,\n bootstrapName: `shared:object:${id}`,\n success,\n error\n };\n },\n\n sharedVideo(\n id: string,\n shareId: string,\n success?: (video: Video) => void,\n error?: (xhr: Xhr) => void\n ): Flight.Request {\n return {\n url: endpoints.sharedVideo(id, shareId),\n key: `shared:video:${id}`,\n success,\n error\n };\n },\n\n myVideos(userId: string, cursor: string): Flight.Request {\n const { VIDEO_COLLECTION, CLIP_COLLECTION, INTERACTIVE } = SharedWithStatements;\n\n const videoQuery = `videos[${VIDEO_COLLECTION}]{libraries.typeid:${MasterType.WorkspaceCollection}}`;\n const clipQuery = `clips[${CLIP_COLLECTION}]`;\n const interactiveQuery = `interactives[${INTERACTIVE}]{status:[${CurationStatus.Published},${CurationStatus.Draft}]}`;\n\n const params: HashObject = {\n query: `(${videoQuery}|${clipQuery}|${interactiveQuery}){orderbydesc:id}`,\n permissionFilterOption: PermissionFilterOption.StripMetadata\n };\n\n if (cursor)\n params.cursor = cursor;\n\n return {\n url: UrlHelper.urlBuilder(`{gateway}/v1/objects/${userId}/members`, params),\n key: `my:videos:${cursor}`\n };\n },\n\n videos(ids: string[], success?: (videos: Video[]) => void): Flight.Request {\n return {\n url: endpoints.getVideosById(ids),\n key: `videos:by:id:${ids.join(',')}`,\n success\n };\n },\n\n watchHistoryVideos(\n ids: string[],\n success?: (videos: Video[]) => void\n ): Flight.Request {\n return {\n url: endpoints.getVideosById(ids),\n key: `watch:history:videos:by:id:${ids.join(',')}`,\n success\n };\n },\n\n updateVideo(\n id: string,\n data: UpdateVideoRequest,\n success?: () => void,\n error?: () => void,\n always?: () => void\n ): Flight.Request {\n return {\n key: `update:video:${id}`,\n url: `{gateway}/v1/objects/${id}`,\n type: HttpVerbs.PUT,\n data,\n success,\n error,\n always\n };\n },\n\n /**\n * This is simply an example to show the prototype for useVideoMixin\n * eventually there will be endpoints in domain that let us fetch members\n * without fetching the objects properties, so we can fetch stuff like\n * hasInteractives and isFavourited as subsequent calls\n */\n videoRatings(ids: string[], namespace?: string): Flight.Request {\n const params = ids.map(i => `id=${i}`);\n\n if (!params.length)\n return;\n\n return {\n url: `/api/domain/v2/objects?query=rating&${params.join('&')}`,\n key: `video:ratings:by:id:${ids.join(',')}`,\n normalizeOptions: {\n namespace\n }\n };\n },\n\n videoMixinAssocs(ids: string[], namespace?: string): Flight.PublicRequest {\n const params = ids.map(i => `id=${i}`);\n\n if (!params.length)\n return;\n\n /**\n * IMPORTANT!\n * \n * This request is used for BOTH clips and videos. This means these requests will fail if you\n * add assocs in the future that are not supported for both object types. If you find yourself in this\n * case, what you should do is:\n * \n * 1. Consider whether clips should support the assoc that you're hydrating for videos. In most cases,\n * I think they should, as we want clips and videos to basically support the same fields and metadata.\n * 2. If the above is false or can't be done right now, you will need to create a separate request for clips\n * and update the logic in useVideoMixin to handle this.\n */\n return {\n url: UrlHelper.urlBuilder('{gateway}/v1/objects', {\n query: 'interactives{limit:100},resources{limit:100},links{limit:100},_hasCurriculumLinks',\n id: ids\n }),\n publicUrl: UrlHelper.urlBuilder(`/api/objects`, {\n query: 'interactives{limit:100},resources{limit:100},links{limit:100},_hasCurriculumLinks',\n id: ids\n }),\n /**\n * We are intentionally NOT sorting the IDs here. This is because `useVideoMixin` wants to provide\n * the IDs in their original order so that the cache key here doesn't change for subsequent calls.\n * \n * Here is an example of a problem that would occur if we were sorting: say we search for something,\n * and load the first page of 25 results. The videos and clips here would have their IDs sorted in the cache\n * key, then fetched. Then, we scrolled down and fetched the next 25, leading to 50 IDs in the array. If we\n * sort the IDs in the key, the keys would change from the first request, leading to all of the videos/clips\n * from the first request being fetched a second time unnecessarily. Every time you'd fetch a new page, you'd\n * be making multiple unnecessary API calls.\n * \n * TL;DR: Don't sort the IDs here, `useVideoMixin` will handle that.\n */\n key: `video:mixin:assocs:${ids.join(',')}`,\n normalizeOptions: {\n namespace\n }\n };\n },\n\n getRestrictions(videoIds: string[]): Flight.Request {\n const sortedIds = videoIds.slice().sort();\n\n return {\n url: '/api/domain/v1/restrictedobjects'\n + `?objectTypeId=${MasterType.Video}${sortedIds.map(id => `&objectId=${id}`).join('')}`,\n key: `restrictions:${sortedIds.join(',')}`,\n normalizeOptions: {\n namespace: 'domain',\n idAttribute: 'objectId'\n }\n };\n },\n\n delete(videoId: string, success?: () => void, error?: () => void): Flight.Request {\n return {\n url: `{gateway}/v1/objects/${videoId}`,\n key: `delete:video:${videoId}`,\n type: HttpVerbs.DELETE,\n success,\n error,\n invalidationKeys: [ 'videos', 'search' ]\n };\n },\n\n deleteBulk(\n videoId: string[],\n libraryId: string,\n categoryId: string,\n success?: () => void,\n error?: () => void\n ): Flight.Request {\n const videoIds = videoId.map(id => `videoIds=${id}`).join('&');\n const params = [\n `categoryId=${categoryId}`,\n `${videoIds}`\n ].join('&');\n\n return {\n url: `/api/domain/v1/libraries/${libraryId}/videos?${params}`,\n key: `delete:bulk:video:${videoId.join(':')}:${libraryId}:${categoryId}`,\n type: HttpVerbs.DELETE,\n success,\n error,\n invalidationKeys: [ 'videos', 'search' ]\n };\n },\n\n relatedVideos(options: {\n videoId: string;\n context?: RelatedVideosContext;\n collectionId?: string;\n moviesAndTv?: boolean;\n /**\n * This limit is intentionall not in the key. See useGetRelatedVideos for an explanation\n */\n limit: number;\n }): Flight.Request {\n const { videoId, context, collectionId, moviesAndTv } = options;\n\n return {\n url: endpoints.relatedVideos(options),\n key: `related:videos:${videoId}:${context}:${collectionId}:${moviesAndTv}`\n };\n },\n\n collectionVideos(\n collectionId: string,\n sort?: VideoSortType,\n cursor?: string,\n success?: (data: VideoCollection) => void,\n error?: (xhr: Xhr) => void,\n always?: () => void\n ): Flight.Request {\n const sortFilter = VideoSortHelper.getVideoSortParam(sort);\n const { VIDEO_COLLECTION, CLIP_COLLECTION, INTERACTIVE } = SharedWithStatements;\n\n const videoQuery = `videos[${VIDEO_COLLECTION}]`;\n const clipQuery = `clips[${CLIP_COLLECTION}]`;\n const interactiveQuery = `interactives[${INTERACTIVE}]{status:[${CurationStatus.Published},${CurationStatus.Draft}]}`;\n\n const params: HashObject = {\n query: `(${videoQuery}|${clipQuery}|${interactiveQuery})${sortFilter ? `{${sortFilter}}` : ''}`,\n permissionFilterOption: PermissionFilterOption.FilterOut,\n ...(cursor ? { cursor } : {})\n };\n\n const key = [ 'folder', 'videos', collectionId, cursor, sort ].filter(k => !!k).join(':');\n\n return {\n url: UrlHelper.urlBuilder(`{gateway}/v1/objects/${collectionId}/members`, params),\n key,\n success,\n error,\n always\n };\n },\n\n pointsOfInterest(\n videoId: string,\n cursor?: string,\n success?: (data: PointOfInterestCollection) => void,\n error?: (xhr: Xhr) => void,\n always?: () => void\n ): Flight.PublicRequest {\n const queryStringObj = { query: '{limit:100}', cursor };\n\n return {\n url: UrlHelper.urlBuilder(`{gateway}/v1/objects/${videoId}/pointsofinterest`, queryStringObj),\n publicUrl: UrlHelper.urlBuilder(`/api/objects/${videoId}/pointsofinterest`, queryStringObj),\n key: `pointsofinterest:${videoId}${cursor ? `:${cursor}` : ''}`,\n success,\n error,\n always\n };\n },\n\n regionAlternatives(\n videoId: string,\n success?: (data: RegionAlternative[]) => void,\n error?: (xhr: Xhr) => void,\n always?: () => void\n ): Flight.PublicRequest {\n return {\n url: `/api/objects/videos/${videoId}/region-alternatives`,\n publicUrl: `/api/objects/videos/${videoId}/region-alternatives`,\n key: `video:regionAlternatives:${videoId}`,\n normalize: false,\n success,\n error,\n always\n };\n }\n};\n"],"names":["RelatedVideosContext","endpoints","id","shareId","UrlHelper","SharedWithStatements","PermissionFilterOption","ids","options","videoId","context","collectionId","moviesAndTv","limit","params","VideoRequests","permissionFilterOption","PublicWithStatement","success","error","userId","cursor","VIDEO_COLLECTION","CLIP_COLLECTION","INTERACTIVE","videoQuery","MasterType","clipQuery","interactiveQuery","CurationStatus","data","always","HttpVerbs","namespace","i","videoIds","sortedIds","libraryId","categoryId","sort","sortFilter","VideoSortHelper","key","k","queryStringObj"],"mappings":"0JAAO,IAAKA,GAAAA,IACVA,EAAA,OAAS,SACTA,EAAA,SAAW,WACXA,EAAA,OAAS,SACTA,EAAA,OAAS,WACTA,EAAA,aAAe,eALLA,IAAAA,GAAA,CAAA,CAAA,ECgBZ,MAAMC,EAAY,CAChB,YAAa,CAACC,EAAYC,IAAoBC,EAAU,WAAW,gBAAgBF,CAAE,GAAI,CACvF,QAAAC,EACA,MAAOE,EAAqB,KAAA,CAC7B,EAED,YAAa,CAACH,EAAYC,IAAqBC,EAAU,WAAW,gBAAgBF,CAAE,GAAI,CAGxF,MAAO,wEACP,uBAAwBI,EAAuB,cAC/C,QAAAH,CAAA,CACD,EAED,cAAgBI,GACPH,EAAU,WAAW,uBAAwB,CAClD,cAAeC,EAAqB,iBACpC,aAAcA,EAAqB,gBACnC,oBAAqBA,EAAqB,uBAC1C,GAAME,CAAA,CACP,EAGH,cAAgBC,GAMV,CACJ,KAAM,CAAE,QAAAC,EAAS,QAAAC,EAAS,aAAAC,EAAc,YAAAC,EAAa,MAAAC,GAAUL,EAEzDM,EAAqB,CACzB,QAAAL,EACA,MAAAI,EACA,MAAOR,EAAqB,gBAAA,EAG9B,OAAIK,IACEA,IAAYV,EAAqB,OACnCc,EAAO,kBAAkB,EAAIH,GAE7BG,EAAO,wBAAwB,EAAIJ,EACnCI,EAAO,sBAAsB,EAAIH,IAIjCC,IACFE,EAAO,qBAAqB,EAAI,IAE3BV,EAAU,WAAW,0CAA2CU,CAAM,CAC/E,CACF,EAEaC,EAAgB,CAC3B,MAAMb,EAAYc,EAAuE,CACvF,MAAO,CACL,IAAKZ,EAAU,WAAW,wBAAwBF,CAAE,GAAI,CACtD,MAAOG,EAAqB,MAC5B,uBAAAW,CAAA,CACD,EACD,UAAWZ,EAAU,WAAW,gBAAgBF,CAAE,GAAI,CACpD,MAAOe,EAAoB,MAC3B,uBAAAD,CAAA,CACD,EACD,IAAK,UAAUd,CAAE,IAAIc,CAAsB,EAAA,CAE/C,EAEA,YACEd,EACAC,EACAe,EACAC,EACgB,CAChB,MAAO,CACL,IAAKlB,EAAU,YAAYC,EAAIC,CAAO,EACtC,IAAK,UAAUD,CAAE,WAAWC,CAAO,GACnC,cAAe,iBAAiBD,CAAE,GAClC,QAAAgB,EACA,MAAAC,CAAA,CAEJ,EAEA,YACEjB,EACAC,EACAe,EACAC,EACgB,CAChB,MAAO,CACL,IAAKlB,EAAU,YAAYC,EAAIC,CAAO,EACtC,IAAK,gBAAgBD,CAAE,GACvB,QAAAgB,EACA,MAAAC,CAAA,CAEJ,EAEA,SAASC,EAAgBC,EAAgC,CACvD,KAAM,CAAE,iBAAAC,EAAkB,gBAAAC,EAAiB,YAAAC,CAAA,EAAgBnB,EAErDoB,EAAa,UAAUH,CAAgB,sBAAsBI,EAAW,mBAAmB,IAC3FC,EAAY,SAASJ,CAAe,IACpCK,EAAmB,gBAAgBJ,CAAW,aAAaK,EAAe,SAAS,IAAIA,EAAe,KAAK,KAE3Gf,EAAqB,CACzB,MAAO,IAAIW,CAAU,IAAIE,CAAS,IAAIC,CAAgB,oBACtD,uBAAwBtB,EAAuB,aAAA,EAGjD,OAAIe,IACFP,EAAO,OAASO,GAEX,CACL,IAAKjB,EAAU,WAAW,wBAAwBgB,CAAM,WAAYN,CAAM,EAC1E,IAAK,aAAaO,CAAM,EAAA,CAE5B,EAEA,OAAOd,EAAeW,EAAqD,CACzE,MAAO,CACL,IAAKjB,EAAU,cAAcM,CAAG,EAChC,IAAK,gBAAgBA,EAAI,KAAK,GAAG,CAAC,GAClC,QAAAW,CAAA,CAEJ,EAEA,mBACEX,EACAW,EACgB,CAChB,MAAO,CACL,IAAKjB,EAAU,cAAcM,CAAG,EAChC,IAAK,8BAA8BA,EAAI,KAAK,GAAG,CAAC,GAChD,QAAAW,CAAA,CAEJ,EAEA,YACEhB,EACA4B,EACAZ,EACAC,EACAY,EACgB,CAChB,MAAO,CACL,IAAK,gBAAgB7B,CAAE,GACvB,IAAK,wBAAwBA,CAAE,GAC/B,KAAM8B,EAAU,IAChB,KAAAF,EACA,QAAAZ,EACA,MAAAC,EACA,OAAAY,CAAA,CAEJ,EAQA,aAAaxB,EAAe0B,EAAoC,CAC9D,MAAMnB,EAASP,EAAI,IAAI2B,GAAK,MAAMA,CAAC,EAAE,EAErC,GAAKpB,EAAO,OAGZ,MAAO,CACL,IAAK,uCAAuCA,EAAO,KAAK,GAAG,CAAC,GAC5D,IAAK,uBAAuBP,EAAI,KAAK,GAAG,CAAC,GACzC,iBAAkB,CAChB,UAAA0B,CAAA,CACF,CAEJ,EAEA,iBAAiB1B,EAAe0B,EAA0C,CAGxE,GAFe1B,EAAI,IAAI2B,GAAK,MAAMA,CAAC,EAAE,EAEzB,OAeZ,MAAO,CACL,IAAK9B,EAAU,WAAW,uBAAwB,CAChD,MAAO,oFACP,GAAIG,CAAA,CACL,EACD,UAAWH,EAAU,WAAW,eAAgB,CAC9C,MAAO,oFACP,GAAIG,CAAA,CACL,EAcD,IAAK,sBAAsBA,EAAI,KAAK,GAAG,CAAC,GACxC,iBAAkB,CAChB,UAAA0B,CAAA,CACF,CAEJ,EAEA,gBAAgBE,EAAoC,CAClD,MAAMC,EAAYD,EAAS,MAAA,EAAQ,KAAA,EAEnC,MAAO,CACL,IAAK,iDACgBT,EAAW,KAAK,GAAGU,EAAU,IAAIlC,GAAM,aAAaA,CAAE,EAAE,EAAE,KAAK,EAAE,CAAC,GACvF,IAAK,gBAAgBkC,EAAU,KAAK,GAAG,CAAC,GACxC,iBAAkB,CAChB,UAAW,SACX,YAAa,UAAA,CACf,CAEJ,EAEA,OAAO3B,EAAiBS,EAAsBC,EAAoC,CAChF,MAAO,CACL,IAAK,wBAAwBV,CAAO,GACpC,IAAK,gBAAgBA,CAAO,GAC5B,KAAMuB,EAAU,OAChB,QAAAd,EACA,MAAAC,EACA,iBAAkB,CAAE,SAAU,QAAS,CAAA,CAE3C,EAEA,WACEV,EACA4B,EACAC,EACApB,EACAC,EACgB,CAChB,MAAMgB,EAAW1B,EAAQ,IAAIP,GAAM,YAAYA,CAAE,EAAE,EAAE,KAAK,GAAG,EACvDY,EAAS,CACb,cAAcwB,CAAU,GACxB,GAAGH,CAAQ,EAAA,EACX,KAAK,GAAG,EAEV,MAAO,CACL,IAAK,4BAA4BE,CAAS,WAAWvB,CAAM,GAC3D,IAAK,qBAAqBL,EAAQ,KAAK,GAAG,CAAC,IAAI4B,CAAS,IAAIC,CAAU,GACtE,KAAMN,EAAU,OAChB,QAAAd,EACA,MAAAC,EACA,iBAAkB,CAAE,SAAU,QAAS,CAAA,CAE3C,EAEA,cAAcX,EASK,CACjB,KAAM,CAAE,QAAAC,EAAS,QAAAC,EAAS,aAAAC,EAAc,YAAAC,GAAgBJ,EAExD,MAAO,CACL,IAAKP,EAAU,cAAcO,CAAO,EACpC,IAAK,kBAAkBC,CAAO,IAAIC,CAAO,IAAIC,CAAY,IAAIC,CAAW,EAAA,CAE5E,EAEA,iBACED,EACA4B,EACAlB,EACAH,EACAC,EACAY,EACgB,CAChB,MAAMS,EAAaC,EAAgB,kBAAkBF,CAAI,EACnD,CAAE,iBAAAjB,EAAkB,gBAAAC,EAAiB,YAAAC,CAAA,EAAgBnB,EAErDoB,EAAa,UAAUH,CAAgB,IACvCK,EAAY,SAASJ,CAAe,IACpCK,EAAmB,gBAAgBJ,CAAW,aAAaK,EAAe,SAAS,IAAIA,EAAe,KAAK,KAE3Gf,EAAqB,CACzB,MAAO,IAAIW,CAAU,IAAIE,CAAS,IAAIC,CAAgB,IAAIY,EAAa,IAAIA,CAAU,IAAM,EAAE,GAC7F,uBAAwBlC,EAAuB,UAC/C,GAAIe,EAAS,CAAE,OAAAA,GAAW,CAAA,CAAC,EAGvBqB,EAAM,CAAE,SAAU,SAAU/B,EAAcU,EAAQkB,CAAK,EAAE,UAAY,CAAC,CAACI,CAAC,EAAE,KAAK,GAAG,EAExF,MAAO,CACL,IAAKvC,EAAU,WAAW,wBAAwBO,CAAY,WAAYG,CAAM,EAChF,IAAA4B,EACA,QAAAxB,EACA,MAAAC,EACA,OAAAY,CAAA,CAEJ,EAEA,iBACEtB,EACAY,EACAH,EACAC,EACAY,EACsB,CACtB,MAAMa,EAAiB,CAAE,MAAO,cAAe,OAAAvB,CAAA,EAE/C,MAAO,CACL,IAAKjB,EAAU,WAAW,wBAAwBK,CAAO,oBAAqBmC,CAAc,EAC5F,UAAWxC,EAAU,WAAW,gBAAgBK,CAAO,oBAAqBmC,CAAc,EAC1F,IAAK,oBAAoBnC,CAAO,GAAGY,EAAS,IAAIA,CAAM,GAAK,EAAE,GAC7D,QAAAH,EACA,MAAAC,EACA,OAAAY,CAAA,CAEJ,EAEA,mBACEtB,EACAS,EACAC,EACAY,EACsB,CACtB,MAAO,CACL,IAAK,uBAAuBtB,CAAO,uBACnC,UAAW,uBAAuBA,CAAO,uBACzC,IAAK,4BAA4BA,CAAO,GACxC,UAAW,GACX,QAAAS,EACA,MAAAC,EACA,OAAAY,CAAA,CAEJ,CACF"}
@@ -1,2 +1,2 @@
1
- import{j as l}from"./app-C2tLApiH.js";const s="_channelBadge_1riea_1",n="_small_1riea_4",e={channelBadge:s,small:n};function m(a){return l.jsx("div",{className:`${e.channelBadge} ${a.small?e.small:""} ${a.className||""}`,children:l.jsx("img",{className:"h-100 align-baseline",src:a.logoUrl})})}export{m as T};
2
- //# sourceMappingURL=B8lGJWZL.chunk.js.map
1
+ import{j as l}from"./app-B9-iRU1r.js";const s="_channelBadge_1riea_1",n="_small_1riea_4",e={channelBadge:s,small:n};function m(a){return l.jsx("div",{className:`${e.channelBadge} ${a.small?e.small:""} ${a.className||""}`,children:l.jsx("img",{className:"h-100 align-baseline",src:a.logoUrl})})}export{m as T};
2
+ //# sourceMappingURL=B4V5N8Aj.chunk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"B8lGJWZL.chunk.js","sources":["../../src/apps/tv/components/tv-channel-badge/TvChannelBadge.tsx"],"sourcesContent":["import React from 'react';\n\nimport styles from './tv-channel-badge.module.scss';\n\ninterface TvChannelBadgeProps {\n logoUrl: string;\n small?: boolean;\n className?: string;\n}\n\nexport function TvChannelBadge(props: TvChannelBadgeProps) {\n return (\n <div className={`${styles.channelBadge} ${props.small ? styles.small : ''} ${props.className || ''}`}>\n <img className='h-100 align-baseline' src={props.logoUrl} />\n </div>\n );\n}"],"names":["TvChannelBadge","props","jsx","styles"],"mappings":"oHAUO,SAASA,EAAeC,EAA4B,CACzD,OACEC,EAAAA,IAAC,MAAA,CAAI,UAAW,GAAGC,EAAO,YAAY,IAAIF,EAAM,MAAQE,EAAO,MAAQ,EAAE,IAAIF,EAAM,WAAa,EAAE,GAChG,SAAAC,EAAAA,IAAC,MAAA,CAAI,UAAU,uBAAuB,IAAKD,EAAM,OAAA,CAAS,CAAA,CAC5D,CAEJ"}
1
+ {"version":3,"file":"B4V5N8Aj.chunk.js","sources":["../../src/apps/tv/components/tv-channel-badge/TvChannelBadge.tsx"],"sourcesContent":["import React from 'react';\n\nimport styles from './tv-channel-badge.module.scss';\n\ninterface TvChannelBadgeProps {\n logoUrl: string;\n small?: boolean;\n className?: string;\n}\n\nexport function TvChannelBadge(props: TvChannelBadgeProps) {\n return (\n <div className={`${styles.channelBadge} ${props.small ? styles.small : ''} ${props.className || ''}`}>\n <img className='h-100 align-baseline' src={props.logoUrl} />\n </div>\n );\n}"],"names":["TvChannelBadge","props","jsx","styles"],"mappings":"oHAUO,SAASA,EAAeC,EAA4B,CACzD,OACEC,EAAAA,IAAC,MAAA,CAAI,UAAW,GAAGC,EAAO,YAAY,IAAIF,EAAM,MAAQE,EAAO,MAAQ,EAAE,IAAIF,EAAM,WAAa,EAAE,GAChG,SAAAC,EAAAA,IAAC,MAAA,CAAI,UAAU,uBAAuB,IAAKD,EAAM,OAAA,CAAS,CAAA,CAC5D,CAEJ"}
@@ -1,2 +1,2 @@
1
- import{j as a}from"./app-C2tLApiH.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=C2RRkDlH.chunk.js.map
1
+ import{j as a}from"./app-B9-iRU1r.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=B574uaRU.chunk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"C2RRkDlH.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
+ {"version":3,"file":"B574uaRU.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-C2tLApiH.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=CL_sQPNd.chunk.js.map
1
+ import{j as a}from"./app-B9-iRU1r.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=B5ab16ux.chunk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CL_sQPNd.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
+ {"version":3,"file":"B5ab16ux.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{j as e,am as i,B as d,x as n,L as c,G as o,aK as r,a3 as m,P as x,aD as u}from"./app-C2tLApiH.js";const h="_myVideosButton_5ybcl_1",y={myVideosButton:h},a="shared.alreadyAdded",j=c.encloseNamespace(a);function g(s){return e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"mx-auto w-75 mt-1 mb-2",children:e.jsx("img",{src:i.General.CONFETTI,className:"img-fluid",draggable:!1})}),e.jsxs("div",{className:"text-center pb-3",children:[e.jsx("h4",{children:s.alreadyAdded?e.jsx(d,{namespace:a,phrase:"alreadyAdded"}):e.jsx(d,{namespace:a,phrase:"successfullyAdded"})}),!s.alreadyAdded&&e.jsx("p",{children:e.jsx(d,{namespace:a,phrase:"successfullyAddedDescription"})})]}),e.jsxs(n,{children:[e.jsx(n.Cancel,{text:j(s.alreadyAdded?"addAnyway":"close"),onClick:s.onClickClose,variant:"link"}),e.jsxs("a",{href:`${s.liteUrl}${s.videoId?"/videos/"+s.videoId:"/my-videos"}`,className:`${y.myVideosButton} btn btn-dark d-flex align-items-center`,children:[e.jsx("span",{className:"me-1",children:e.jsx(d,{namespace:a,phrase:s.videoId?"watchVideo":"myVideos"})}),e.jsx(o,{svg:r})]})]})]})}const A="shared.alreadyAdded",v=c.encloseNamespace(A);function p(s){const{alreadyAdded:l}=s.params,t=m(u.config());return e.jsx(x,{title:v("title"),closePopup:s.closePopup,children:e.jsx(g,{liteUrl:t.data.liteUrl,alreadyAdded:l,onClickClose:s.closePopup})})}export{p as TvAlreadyAddedView};
2
- //# sourceMappingURL=D_MsBVo0.chunk.js.map
1
+ import{j as e,am as i,B as d,x as n,L as c,G as o,aK as r,a3 as m,P as x,aD as u}from"./app-B9-iRU1r.js";const h="_myVideosButton_5ybcl_1",y={myVideosButton:h},a="shared.alreadyAdded",j=c.encloseNamespace(a);function g(s){return e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"mx-auto w-75 mt-1 mb-2",children:e.jsx("img",{src:i.General.CONFETTI,className:"img-fluid",draggable:!1})}),e.jsxs("div",{className:"text-center pb-3",children:[e.jsx("h4",{children:s.alreadyAdded?e.jsx(d,{namespace:a,phrase:"alreadyAdded"}):e.jsx(d,{namespace:a,phrase:"successfullyAdded"})}),!s.alreadyAdded&&e.jsx("p",{children:e.jsx(d,{namespace:a,phrase:"successfullyAddedDescription"})})]}),e.jsxs(n,{children:[e.jsx(n.Cancel,{text:j(s.alreadyAdded?"addAnyway":"close"),onClick:s.onClickClose,variant:"link"}),e.jsxs("a",{href:`${s.liteUrl}${s.videoId?"/videos/"+s.videoId:"/my-videos"}`,className:`${y.myVideosButton} btn btn-dark d-flex align-items-center`,children:[e.jsx("span",{className:"me-1",children:e.jsx(d,{namespace:a,phrase:s.videoId?"watchVideo":"myVideos"})}),e.jsx(o,{svg:r})]})]})]})}const A="shared.alreadyAdded",v=c.encloseNamespace(A);function p(s){const{alreadyAdded:l}=s.params,t=m(u.config());return e.jsx(x,{title:v("title"),closePopup:s.closePopup,children:e.jsx(g,{liteUrl:t.data.liteUrl,alreadyAdded:l,onClickClose:s.closePopup})})}export{p as TvAlreadyAddedView};
2
+ //# sourceMappingURL=B9eYOwJp.chunk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"D_MsBVo0.chunk.js","sources":["../../src/shared/components/already-added/AlreadyAdded.tsx","../../src/apps/tv/views/tv-already-added/TvAlreadyAddedView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { PopupButtons } from 'libs/shared/components/popup/PopupButtons';\nimport { SvgContainer } from 'libs/shared/components/svg-container/SvgContainer';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { NewWindowSvg } from 'libs/shared/images/svg/actions/NewWindowSvg';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nimport styles from './already-added.module.scss';\n\nconst namespace = 'shared.alreadyAdded';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface AlreadyAddedProps {\n liteUrl: string;\n videoId?: string;\n alreadyAdded?: boolean;\n onClickClose: () => void;\n}\n\nexport function AlreadyAdded(props: AlreadyAddedProps) {\n return (\n <>\n <div className='mx-auto w-75 mt-1 mb-2'>\n <img src={ImageUrls.General.CONFETTI} className='img-fluid' draggable={false} />\n </div>\n\n <div className='text-center pb-3'>\n <h4>\n {props.alreadyAdded\n ? <Text namespace={namespace} phrase={'alreadyAdded'} />\n : <Text namespace={namespace} phrase={'successfullyAdded'} />\n }\n </h4>\n {!props.alreadyAdded && <p><Text namespace={namespace} phrase='successfullyAddedDescription' /></p>}\n </div>\n\n <PopupButtons>\n <PopupButtons.Cancel\n text={getPhrase(props.alreadyAdded ? 'addAnyway' : 'close')}\n onClick={props.onClickClose}\n variant='link'\n />\n <a\n href={`${props.liteUrl}${props.videoId ? '/videos/' + props.videoId : '/my-videos'}`}\n className={`${styles.myVideosButton} btn btn-dark d-flex align-items-center`}\n >\n <span className='me-1'>\n <Text namespace={namespace} phrase={props.videoId ? 'watchVideo' : 'myVideos'} />\n </span>\n <SvgContainer svg={NewWindowSvg} />\n </a>\n </PopupButtons>\n </>\n );\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/react/index';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { Popup } from 'libs/shared/components/popup/Popup';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { Config, PopupViewProps } from 'libs/shared/interfaces';\n\nimport { AlreadyAdded } from 'shared/components/already-added/AlreadyAdded';\n\nconst namespace = 'shared.alreadyAdded';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface TvAlreadyAddedViewProps extends PopupViewProps {\n params: HashObject;\n}\n\nexport function TvAlreadyAddedView(props: TvAlreadyAddedViewProps): JSX.Element {\n const { alreadyAdded } = props.params;\n\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n\n return (\n <Popup\n title={getPhrase('title')}\n closePopup={props.closePopup}\n >\n <AlreadyAdded\n liteUrl={config.data.liteUrl}\n alreadyAdded={alreadyAdded}\n onClickClose={props.closePopup}\n />\n </Popup>\n );\n}"],"names":["namespace","getPhrase","LanguageService","AlreadyAdded","props","jsxs","Fragment","jsx","ImageUrls","Text","PopupButtons","styles","SvgContainer","NewWindowSvg","TvAlreadyAddedView","alreadyAdded","config","Flight.useBasicFetch","ConfigRequests","Popup"],"mappings":"gKAaMA,EAAY,sBACZC,EAAYC,EAAgB,iBAAiBF,CAAS,EASrD,SAASG,EAAaC,EAA0B,CACrD,OACEC,EAAAA,KAAAC,WAAA,CACE,SAAA,CAAAC,EAAAA,IAAC,MAAA,CAAI,UAAU,yBACb,SAAAA,EAAAA,IAAC,MAAA,CAAI,IAAKC,EAAU,QAAQ,SAAU,UAAU,YAAY,UAAW,GAAO,EAChF,EAEAH,EAAAA,KAAC,MAAA,CAAI,UAAU,mBACb,SAAA,CAAAE,MAAC,KAAA,CACE,SAAAH,EAAM,aACHG,EAAAA,IAACE,aAAKT,EAAsB,OAAQ,cAAA,CAAgB,EACpDO,EAAAA,IAACE,EAAA,CAAA,UAAKT,EAAsB,OAAQ,oBAAqB,EAE/D,EACC,CAACI,EAAM,cAAgBG,MAAC,IAAA,CAAE,eAACE,EAAA,CAAA,UAAKT,EAAsB,OAAO,8BAAA,CAA+B,CAAA,CAAE,CAAA,EACjG,SAECU,EAAA,CACC,SAAA,CAAAH,EAAAA,IAACG,EAAa,OAAb,CACC,KAAMT,EAAUG,EAAM,aAAe,YAAc,OAAO,EAC1D,QAASA,EAAM,aACf,QAAQ,MAAA,CAAA,EAEVC,EAAAA,KAAC,IAAA,CACC,KAAM,GAAGD,EAAM,OAAO,GAAGA,EAAM,QAAU,WAAaA,EAAM,QAAU,YAAY,GAClF,UAAW,GAAGO,EAAO,cAAc,0CAEnC,SAAA,CAAAJ,EAAAA,IAAC,OAAA,CAAK,UAAU,OACd,SAAAA,EAAAA,IAACE,EAAA,CAAA,UAAKT,EAAsB,OAAQI,EAAM,QAAU,aAAe,UAAA,CAAY,EACjF,EACAG,EAAAA,IAACK,EAAA,CAAa,IAAKC,CAAA,CAAc,CAAA,CAAA,CAAA,CACnC,CAAA,CACF,CAAA,EACF,CAEJ,CC9CA,MAAMb,EAAY,sBACZC,EAAYC,EAAgB,iBAAiBF,CAAS,EAMrD,SAASc,EAAmBV,EAA6C,CAC9E,KAAM,CAAE,aAAAW,GAAiBX,EAAM,OAEzBY,EAASC,EAA6BC,EAAe,QAAQ,EAEnE,OACEX,EAAAA,IAACY,EAAA,CACC,MAAOlB,EAAU,OAAO,EACxB,WAAYG,EAAM,WAElB,SAAAG,EAAAA,IAACJ,EAAA,CACC,QAASa,EAAO,KAAK,QACrB,aAAAD,EACA,aAAcX,EAAM,UAAA,CAAA,CACtB,CAAA,CAGN"}
1
+ {"version":3,"file":"B9eYOwJp.chunk.js","sources":["../../src/shared/components/already-added/AlreadyAdded.tsx","../../src/apps/tv/views/tv-already-added/TvAlreadyAddedView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { PopupButtons } from 'libs/shared/components/popup/PopupButtons';\nimport { SvgContainer } from 'libs/shared/components/svg-container/SvgContainer';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { NewWindowSvg } from 'libs/shared/images/svg/actions/NewWindowSvg';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nimport styles from './already-added.module.scss';\n\nconst namespace = 'shared.alreadyAdded';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface AlreadyAddedProps {\n liteUrl: string;\n videoId?: string;\n alreadyAdded?: boolean;\n onClickClose: () => void;\n}\n\nexport function AlreadyAdded(props: AlreadyAddedProps) {\n return (\n <>\n <div className='mx-auto w-75 mt-1 mb-2'>\n <img src={ImageUrls.General.CONFETTI} className='img-fluid' draggable={false} />\n </div>\n\n <div className='text-center pb-3'>\n <h4>\n {props.alreadyAdded\n ? <Text namespace={namespace} phrase={'alreadyAdded'} />\n : <Text namespace={namespace} phrase={'successfullyAdded'} />\n }\n </h4>\n {!props.alreadyAdded && <p><Text namespace={namespace} phrase='successfullyAddedDescription' /></p>}\n </div>\n\n <PopupButtons>\n <PopupButtons.Cancel\n text={getPhrase(props.alreadyAdded ? 'addAnyway' : 'close')}\n onClick={props.onClickClose}\n variant='link'\n />\n <a\n href={`${props.liteUrl}${props.videoId ? '/videos/' + props.videoId : '/my-videos'}`}\n className={`${styles.myVideosButton} btn btn-dark d-flex align-items-center`}\n >\n <span className='me-1'>\n <Text namespace={namespace} phrase={props.videoId ? 'watchVideo' : 'myVideos'} />\n </span>\n <SvgContainer svg={NewWindowSvg} />\n </a>\n </PopupButtons>\n </>\n );\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/react/index';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { Popup } from 'libs/shared/components/popup/Popup';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { Config, PopupViewProps } from 'libs/shared/interfaces';\n\nimport { AlreadyAdded } from 'shared/components/already-added/AlreadyAdded';\n\nconst namespace = 'shared.alreadyAdded';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface TvAlreadyAddedViewProps extends PopupViewProps {\n params: HashObject;\n}\n\nexport function TvAlreadyAddedView(props: TvAlreadyAddedViewProps): JSX.Element {\n const { alreadyAdded } = props.params;\n\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n\n return (\n <Popup\n title={getPhrase('title')}\n closePopup={props.closePopup}\n >\n <AlreadyAdded\n liteUrl={config.data.liteUrl}\n alreadyAdded={alreadyAdded}\n onClickClose={props.closePopup}\n />\n </Popup>\n );\n}"],"names":["namespace","getPhrase","LanguageService","AlreadyAdded","props","jsxs","Fragment","jsx","ImageUrls","Text","PopupButtons","styles","SvgContainer","NewWindowSvg","TvAlreadyAddedView","alreadyAdded","config","Flight.useBasicFetch","ConfigRequests","Popup"],"mappings":"gKAaMA,EAAY,sBACZC,EAAYC,EAAgB,iBAAiBF,CAAS,EASrD,SAASG,EAAaC,EAA0B,CACrD,OACEC,EAAAA,KAAAC,WAAA,CACE,SAAA,CAAAC,EAAAA,IAAC,MAAA,CAAI,UAAU,yBACb,SAAAA,EAAAA,IAAC,MAAA,CAAI,IAAKC,EAAU,QAAQ,SAAU,UAAU,YAAY,UAAW,GAAO,EAChF,EAEAH,EAAAA,KAAC,MAAA,CAAI,UAAU,mBACb,SAAA,CAAAE,MAAC,KAAA,CACE,SAAAH,EAAM,aACHG,EAAAA,IAACE,aAAKT,EAAsB,OAAQ,cAAA,CAAgB,EACpDO,EAAAA,IAACE,EAAA,CAAA,UAAKT,EAAsB,OAAQ,oBAAqB,EAE/D,EACC,CAACI,EAAM,cAAgBG,MAAC,IAAA,CAAE,eAACE,EAAA,CAAA,UAAKT,EAAsB,OAAO,8BAAA,CAA+B,CAAA,CAAE,CAAA,EACjG,SAECU,EAAA,CACC,SAAA,CAAAH,EAAAA,IAACG,EAAa,OAAb,CACC,KAAMT,EAAUG,EAAM,aAAe,YAAc,OAAO,EAC1D,QAASA,EAAM,aACf,QAAQ,MAAA,CAAA,EAEVC,EAAAA,KAAC,IAAA,CACC,KAAM,GAAGD,EAAM,OAAO,GAAGA,EAAM,QAAU,WAAaA,EAAM,QAAU,YAAY,GAClF,UAAW,GAAGO,EAAO,cAAc,0CAEnC,SAAA,CAAAJ,EAAAA,IAAC,OAAA,CAAK,UAAU,OACd,SAAAA,EAAAA,IAACE,EAAA,CAAA,UAAKT,EAAsB,OAAQI,EAAM,QAAU,aAAe,UAAA,CAAY,EACjF,EACAG,EAAAA,IAACK,EAAA,CAAa,IAAKC,CAAA,CAAc,CAAA,CAAA,CAAA,CACnC,CAAA,CACF,CAAA,EACF,CAEJ,CC9CA,MAAMb,EAAY,sBACZC,EAAYC,EAAgB,iBAAiBF,CAAS,EAMrD,SAASc,EAAmBV,EAA6C,CAC9E,KAAM,CAAE,aAAAW,GAAiBX,EAAM,OAEzBY,EAASC,EAA6BC,EAAe,QAAQ,EAEnE,OACEX,EAAAA,IAACY,EAAA,CACC,MAAOlB,EAAU,OAAO,EACxB,WAAYG,EAAM,WAElB,SAAAG,EAAAA,IAACJ,EAAA,CACC,QAASa,EAAO,KAAK,QACrB,aAAAD,EACA,aAAcX,EAAM,UAAA,CAAA,CACtB,CAAA,CAGN"}
@@ -1,2 +1,2 @@
1
- import{j as e,aq as k,a as f,b as j,a3 as m,R as T,aT as E,aB as P,aU as H,l as I,aD as S}from"./app-C2tLApiH.js";import{h as B}from"./7kGPLcjV.chunk.js";import{u as M}from"./DtSsOmYM.chunk.js";import{P as N,A as b,a as U}from"./CeF-ZKL3.chunk.js";import{L as _}from"./CErthkSN.chunk.js";import{T as D}from"./BTcJz7pn.chunk.js";import{T as V}from"./DcF9nran.chunk.js";import{T as F,a as O}from"./D94KYGFe.chunk.js";import{T as q,a as $}from"./CG9hOZ8J.chunk.js";import{T as u}from"./4pboFAH2.chunk.js";import{u as W}from"./DADu9kRW.chunk.js";import{u as z}from"./D3ZScl6b.chunk.js";import{t as G}from"./B4yjmogh.chunk.js";import"./DEle-NIZ.chunk.js";import"./CqLsOdMW.chunk.js";import"./BB4BMfoF.chunk.js";import"./BlDVEZsX.chunk.js";import"./Bdc13avs.chunk.js";import"./CL_sQPNd.chunk.js";import"./BSl_jK0D.chunk.js";import"./jNYdSQcK.chunk.js";const Z="_itemContainer_84hxn_1",J="_thumbnail_84hxn_12",C={itemContainer:Z,thumbnail:J};function K(a){function d(i,l){switch(i.programType){case N.Video:return{application:j.TV,action:f.Tv.PREVIEW,args:[l,i.id]};case N.Audio:return{application:j.TV,action:f.Tv.RADIO_DOWNLOAD,args:[l,i.id]}}}function t(i){const l=i.globalId.split("-").join("");return`${a.previewUrl}/thumbnail/${l}.jpg`}return e.jsx("div",{className:`${C.itemContainer} rounded mx-4 px-2`,children:e.jsxs(k,{appLink:d(a.program,a.region),className:"d-flex align-items-center justify-content-between py-2 px-3 text-decoration-none",children:[e.jsxs("div",{className:"w-50 d-flex align-items-center",children:[e.jsx("div",{className:`${C.thumbnail} flex-shrink-0 me-3 partial-loading-background rounded`,children:e.jsx(_,{src:t(a.program),alt:a.program.title,extraClasses:"w-100 rounded"})}),e.jsxs("div",{className:"d-flex align-items-center",children:[e.jsx("span",{className:"me-1",children:a.name}),a.program.hasAdsFree&&e.jsx(D,{small:!0})]})]}),e.jsx(V,{program:a.program,className:"pointer-events-none",showEndTime:!0})]},a.program.id)})}function Q(a){const{channel:d}=a;return e.jsxs("div",{className:"d-flex mb-3",children:[e.jsx("div",{className:"d-flex align-items-center me-3",style:{maxWidth:"7.5rem"},children:e.jsx("img",{className:"w-100",src:d.logoUrl})}),e.jsxs("div",{children:[e.jsx("h1",{className:"h3",children:d.displayName}),e.jsx("p",{className:"mb-0",children:d.description})]})]})}function X(){return e.jsxs("div",{className:"d-flex mb-3",children:[e.jsx("div",{className:"partial-loading-background d-flex align-items-center me-3",children:e.jsx("div",{style:{width:"7.5rem"}})}),e.jsxs("div",{className:"w-100",children:[e.jsx("div",{className:"partial-loading-background w-25 h3",children:" "}),e.jsx("p",{className:"partial-loading-background w-100 mb-0",children:" "})]})]})}function Te(a){const d=m(S.config()),t=m(u.region(a.region)),i=m(u.regions()),l=m(u.dateRange(a.region)),g=m(t.data&&u.channels(t.data.code)),s=T.useMemo(()=>{var n;return(n=g.data)==null?void 0:n.find(c=>c.id.toString()===a.channelId.toString())},[g.data]),{setRegion:R}=z(),{showTvGuide:w}=E(),h=m(t.data&&s&&u.programsByChannel(t.data.code,s.name,s.startTime,s.stopTime)),A=T.useMemo(()=>{var p;if(!((p=h.data)!=null&&p.length))return[];const n={};return[...h.data].reverse().forEach(r=>{const o=P.format(G(r.startTime,r.timeZone),"dddd Do MMMM");n[o]||(n[o]=[]),n[o].push(r)}),Object.entries(n).map(([r,o])=>[r,o.reverse()])},[h]);g.hasCompleted&&!s&&B(H.BadRequest),W(t),M([i,g,h]),I({title:s==null?void 0:s.displayName});const L=t.hasCompleted&&i.hasCompleted&&g.hasCompleted&&s&&h.hasCompleted;function y(){var n;return a.selectedRegion?(n=i.data)==null?void 0:n.find(c=>c.code===a.selectedRegion):t.data}const x=y();return e.jsxs(e.Fragment,{children:[e.jsx(q,{region:x}),e.jsxs("div",{className:"d-flex justify-content-between",children:[e.jsx(F,{active:"channels",currentRegion:x,showTvGuide:w}),e.jsx($,{currentRegion:x,regions:i.data,appLink:{application:j.TV,action:f.Tv.CHANNELS},onClick:R})]}),e.jsx(O,{dateRange:l.data,region:t.data}),s?e.jsx(Q,{channel:s}):e.jsx(X,{}),L?e.jsx(e.Fragment,{children:e.jsx(b,{children:A.map(([n,c],p)=>e.jsx(b.Header,{title:n,children:e.jsx("div",{className:"mt-2 pb-2",children:c&&c.map(r=>{var o,v;return e.jsx(K,{name:r.title,program:r,region:t.data.code,previewUrl:(v=d.data)==null?void 0:v.tvPreviewUrls[(o=t.data)==null?void 0:o.code]},r.id)})})},p))})}):e.jsx(U,{})]})}export{Te as TvChannelView};
2
- //# sourceMappingURL=Be7jUiN-.chunk.js.map
1
+ import{j as e,aq as k,a as f,b as j,a3 as m,R as T,aT as E,aB as P,aU as H,l as I,aD as S}from"./app-B9-iRU1r.js";import{h as B}from"./kRwTHNNb.chunk.js";import{u as M}from"./D2Szos_W.chunk.js";import{P as N,A as b,a as U}from"./r83d385M.chunk.js";import{L as _}from"./BevPAwSq.chunk.js";import{T as D}from"./bTy6Dmvr.chunk.js";import{T as V}from"./DOwzdCZ2.chunk.js";import{T as F,a as O}from"./LHI3oaCV.chunk.js";import{T as q,a as $}from"./D-hP0WNi.chunk.js";import{T as u}from"./DuHONSHj.chunk.js";import{u as W}from"./CeXuvOA5.chunk.js";import{u as z}from"./DFLHDfV1.chunk.js";import{t as G}from"./CJZbn4PU.chunk.js";import"./CK7qxCzb.chunk.js";import"./DcKDSzxe.chunk.js";import"./DgCSpWkC.chunk.js";import"./BlDVEZsX.chunk.js";import"./Bbct_sP7.chunk.js";import"./B5ab16ux.chunk.js";import"./DRF-fC47.chunk.js";import"./CqnxxpxX.chunk.js";const Z="_itemContainer_84hxn_1",J="_thumbnail_84hxn_12",C={itemContainer:Z,thumbnail:J};function K(a){function d(i,l){switch(i.programType){case N.Video:return{application:j.TV,action:f.Tv.PREVIEW,args:[l,i.id]};case N.Audio:return{application:j.TV,action:f.Tv.RADIO_DOWNLOAD,args:[l,i.id]}}}function t(i){const l=i.globalId.split("-").join("");return`${a.previewUrl}/thumbnail/${l}.jpg`}return e.jsx("div",{className:`${C.itemContainer} rounded mx-4 px-2`,children:e.jsxs(k,{appLink:d(a.program,a.region),className:"d-flex align-items-center justify-content-between py-2 px-3 text-decoration-none",children:[e.jsxs("div",{className:"w-50 d-flex align-items-center",children:[e.jsx("div",{className:`${C.thumbnail} flex-shrink-0 me-3 partial-loading-background rounded`,children:e.jsx(_,{src:t(a.program),alt:a.program.title,extraClasses:"w-100 rounded"})}),e.jsxs("div",{className:"d-flex align-items-center",children:[e.jsx("span",{className:"me-1",children:a.name}),a.program.hasAdsFree&&e.jsx(D,{small:!0})]})]}),e.jsx(V,{program:a.program,className:"pointer-events-none",showEndTime:!0})]},a.program.id)})}function Q(a){const{channel:d}=a;return e.jsxs("div",{className:"d-flex mb-3",children:[e.jsx("div",{className:"d-flex align-items-center me-3",style:{maxWidth:"7.5rem"},children:e.jsx("img",{className:"w-100",src:d.logoUrl})}),e.jsxs("div",{children:[e.jsx("h1",{className:"h3",children:d.displayName}),e.jsx("p",{className:"mb-0",children:d.description})]})]})}function X(){return e.jsxs("div",{className:"d-flex mb-3",children:[e.jsx("div",{className:"partial-loading-background d-flex align-items-center me-3",children:e.jsx("div",{style:{width:"7.5rem"}})}),e.jsxs("div",{className:"w-100",children:[e.jsx("div",{className:"partial-loading-background w-25 h3",children:" "}),e.jsx("p",{className:"partial-loading-background w-100 mb-0",children:" "})]})]})}function Te(a){const d=m(S.config()),t=m(u.region(a.region)),i=m(u.regions()),l=m(u.dateRange(a.region)),g=m(t.data&&u.channels(t.data.code)),s=T.useMemo(()=>{var n;return(n=g.data)==null?void 0:n.find(c=>c.id.toString()===a.channelId.toString())},[g.data]),{setRegion:R}=z(),{showTvGuide:w}=E(),h=m(t.data&&s&&u.programsByChannel(t.data.code,s.name,s.startTime,s.stopTime)),A=T.useMemo(()=>{var p;if(!((p=h.data)!=null&&p.length))return[];const n={};return[...h.data].reverse().forEach(r=>{const o=P.format(G(r.startTime,r.timeZone),"dddd Do MMMM");n[o]||(n[o]=[]),n[o].push(r)}),Object.entries(n).map(([r,o])=>[r,o.reverse()])},[h]);g.hasCompleted&&!s&&B(H.BadRequest),W(t),M([i,g,h]),I({title:s==null?void 0:s.displayName});const L=t.hasCompleted&&i.hasCompleted&&g.hasCompleted&&s&&h.hasCompleted;function y(){var n;return a.selectedRegion?(n=i.data)==null?void 0:n.find(c=>c.code===a.selectedRegion):t.data}const x=y();return e.jsxs(e.Fragment,{children:[e.jsx(q,{region:x}),e.jsxs("div",{className:"d-flex justify-content-between",children:[e.jsx(F,{active:"channels",currentRegion:x,showTvGuide:w}),e.jsx($,{currentRegion:x,regions:i.data,appLink:{application:j.TV,action:f.Tv.CHANNELS},onClick:R})]}),e.jsx(O,{dateRange:l.data,region:t.data}),s?e.jsx(Q,{channel:s}):e.jsx(X,{}),L?e.jsx(e.Fragment,{children:e.jsx(b,{children:A.map(([n,c],p)=>e.jsx(b.Header,{title:n,children:e.jsx("div",{className:"mt-2 pb-2",children:c&&c.map(r=>{var o,v;return e.jsx(K,{name:r.title,program:r,region:t.data.code,previewUrl:(v=d.data)==null?void 0:v.tvPreviewUrls[(o=t.data)==null?void 0:o.code]},r.id)})})},p))})}):e.jsx(U,{})]})}export{Te as TvChannelView};
2
+ //# sourceMappingURL=BDTzvMwe.chunk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Be7jUiN-.chunk.js","sources":["../../src/apps/tv/components/tv-accordion-list-item/TvAccordionListItem.tsx","../../src/apps/tv/views/tv-channel/components/tv-channel-header/TvChannelHeader.tsx","../../src/apps/tv/views/tv-channel/partial-loading/PartialTvChannelPrograms.tsx","../../src/apps/tv/views/tv-channel/TvChannelView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { LazyImage } from 'libs/shared/components/lazy-image/LazyImage';\n\nimport { Actions } from 'shared/constants/ExchangeActions';\nimport { AppChannels } from 'shared/constants/ExchangeRadioChannels';\n\nimport { TvAdFreeBadge } from 'apps/tv/components/tv-ad-free-badge/TvAdFreeBadge';\nimport { TvProgramTimeBadge } from 'apps/tv/components/tv-program-time-badge/TvProgramTimeBadge';\nimport { ProgramType } from 'apps/tv/interfaces/enums/ProgramType';\nimport { TvProgram } from 'apps/tv/interfaces/models/TvProgram';\n\nimport styles from './tv-accordion-list-item.module.scss';\n\ninterface TvAccordionListItemProps {\n name: string;\n program: TvProgram;\n region: string;\n showDate?: boolean;\n previewUrl: string;\n}\n\nexport function TvAccordionListItem(props: TvAccordionListItemProps) {\n function getProgramAppLink(program: TvProgram, region: string) {\n switch (program.programType) {\n case ProgramType.Video:\n return {\n application: AppChannels.TV,\n action: Actions.Tv.PREVIEW,\n args: [ region, program.id ]\n };\n case ProgramType.Audio:\n return {\n application: AppChannels.TV,\n action: Actions.Tv.RADIO_DOWNLOAD,\n args: [ region, program.id ]\n };\n }\n }\n \n function getThumbnailUrl(program: TvProgram) {\n const globalId = program.globalId.split('-').join('');\n return `${props.previewUrl}/thumbnail/${globalId}.jpg`;\n }\n\n return (\n <div className={`${styles.itemContainer} rounded mx-4 px-2`}>\n <AppLink\n key={props.program.id}\n appLink={getProgramAppLink(props.program, props.region)}\n className='d-flex align-items-center justify-content-between py-2 px-3 text-decoration-none'\n >\n <div className='w-50 d-flex align-items-center'>\n <div className={`${styles.thumbnail} flex-shrink-0 me-3 partial-loading-background rounded`}>\n <LazyImage\n src={getThumbnailUrl(props.program)}\n alt={props.program.title}\n extraClasses='w-100 rounded'\n />\n </div>\n <div className='d-flex align-items-center'>\n <span className='me-1'>{props.name}</span>\n {props.program.hasAdsFree && <TvAdFreeBadge small />}\n </div>\n </div>\n <TvProgramTimeBadge program={props.program} className='pointer-events-none' showEndTime />\n </AppLink>\n </div>\n );\n}","import React from 'react';\n\nimport { TvChannel } from 'apps/tv/interfaces/models/TvChannel';\n\ninterface TvChannelHeaderProps {\n channel: TvChannel;\n}\n\nexport function TvChannelHeader(props: TvChannelHeaderProps): JSX.Element {\n const { channel } = props;\n\n return (\n <div className='d-flex mb-3'>\n <div\n className='d-flex align-items-center me-3'\n style={{ maxWidth: '7.5rem' }}>\n <img\n className='w-100'\n src={channel.logoUrl}\n />\n </div>\n <div>\n <h1 className='h3'>{channel.displayName}</h1>\n <p className='mb-0'>{channel.description}</p>\n </div>\n </div>\n );\n}","import React from 'react';\n\nexport function PartialTvChannel() {\n return (\n <div className='d-flex mb-3'>\n <div className='partial-loading-background d-flex align-items-center me-3'>\n <div style={{ width: '7.5rem' }}/>\n </div>\n <div className='w-100'>\n <div className='partial-loading-background w-25 h3'>&nbsp;</div>\n <p className='partial-loading-background w-100 mb-0'>&nbsp;</p>\n </div>\n </div>\n );\n}","import React from 'react';\n\nimport { HttpStatus } from 'libs/common/backbone/enums/HttpStatus';\nimport { Flight } from 'libs/common/flight';\nimport { HashObject } from 'libs/common/react/interfaces';\nimport { DateHelper } from 'libs/common/react/utils/DateHelper';\n\nimport { handleHttpError } from 'libs/shared/errors/handlers/HttpErrorHandlers';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { useHandleObjectError } from 'libs/shared/hooks/UseHandleObjectError';\nimport { useLiteUpgrade } from 'libs/shared/hooks/UseLiteUpgrade';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { Config } from 'libs/shared/interfaces';\n\nimport { AccordionList } from 'shared/components/accordion-list/AccordionList';\nimport { PartialAccordionList } from 'shared/components/accordion-list/partial-loading/PartialAccordionList';\nimport { Actions } from 'shared/constants/ExchangeActions';\nimport { AppChannels } from 'shared/constants/ExchangeRadioChannels';\n\nimport { TvAccordionListItem } from 'apps/tv/components/tv-accordion-list-item/TvAccordionListItem';\nimport { TvInfoAlert } from 'apps/tv/components/tv-info-alert/TvInfoAlert';\nimport { TvRegionSelect } from 'apps/tv/components/tv-region-select/TvRegionSelect';\nimport { TvSearchBar } from 'apps/tv/components/tv-search-bar/TvSearchBar';\nimport { TvTabs } from 'apps/tv/components/tv-tabs/TvTabs';\nimport { TvRequests } from 'apps/tv/flight-requests/TvRequests';\nimport { useHandleRegionError } from 'apps/tv/hooks/useHandleRegionError';\nimport { useSelectedRegion } from 'apps/tv/hooks/useSelectedRegion';\nimport { TvChannel } from 'apps/tv/interfaces/models/TvChannel';\nimport { TvProgram } from 'apps/tv/interfaces/models/TvProgram';\nimport { TvDateRange, TvRegion } from 'apps/tv/interfaces/models/TvRegion';\nimport { toLocalTime } from 'apps/tv/utils/toLocalTime';\n\nimport { TvChannelHeader } from './components/tv-channel-header/TvChannelHeader';\nimport { PartialTvChannel } from './partial-loading/PartialTvChannelPrograms';\n\ninterface TvChannelViewProps {\n region: string;\n channelId: string;\n selectedRegion?: string;\n}\n\nexport function TvChannelView(props: TvChannelViewProps): JSX.Element {\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const region = Flight.useBasicFetch<TvRegion>(TvRequests.region(props.region));\n const regions = Flight.useBasicFetch<TvRegion[]>(TvRequests.regions());\n const dateRange = Flight.useBasicFetch<TvDateRange>(TvRequests.dateRange(props.region));\n const channels = Flight.useBasicFetch<TvChannel[]>(\n region.data && TvRequests.channels(region.data.code)\n );\n const channel = React.useMemo(() => {\n return channels.data?.find(c => c.id.toString() === props.channelId.toString());\n }, [channels.data]);\n\n const { setRegion } = useSelectedRegion();\n const { showTvGuide } = useLiteUpgrade();\n\n const programs = Flight.useBasicFetch<TvProgram[]>(\n region.data &&\n channel &&\n TvRequests.programsByChannel(\n region.data.code,\n channel.name,\n channel.startTime,\n channel.stopTime\n )\n );\n\n const grouped = React.useMemo(() => {\n if (!programs.data?.length)\n return [];\n\n const groups: HashObject<TvProgram[]> = {};\n\n [...programs.data].reverse().forEach(program => {\n const startTime = DateHelper.format(toLocalTime(program.startTime, program.timeZone), 'dddd Do MMMM');\n\n if (!groups[startTime])\n groups[startTime] = [];\n\n groups[startTime].push(program);\n });\n const grouped = Object.entries(groups);\n return grouped.map(([ date, program ]) => [ date, program.reverse() ]);\n }, [programs]);\n\n if ((channels.hasCompleted && !channel)) {\n handleHttpError(HttpStatus.BadRequest);\n }\n\n useHandleRegionError(region);\n useHandleObjectError([ regions, channels, programs ]);\n\n useSetPageMetadata({ title: channel?.displayName });\n\n const dataLoaded =\n region.hasCompleted && regions.hasCompleted && channels.hasCompleted && channel && programs.hasCompleted;\n\n function getCurrentRegion(): TvRegion {\n if (!props.selectedRegion) return region.data;\n\n return regions.data?.find(region => region.code === props.selectedRegion);\n }\n\n const currentRegion = getCurrentRegion();\n\n return (\n <>\n <TvSearchBar region={currentRegion} />\n\n <div className='d-flex justify-content-between'>\n <TvTabs\n active='channels'\n currentRegion={currentRegion}\n showTvGuide={showTvGuide}\n />\n <TvRegionSelect\n currentRegion={currentRegion}\n regions={regions.data}\n appLink={{\n application: AppChannels.TV,\n action: Actions.Tv.CHANNELS\n }}\n onClick={setRegion}\n />\n </div>\n \n <TvInfoAlert dateRange={dateRange.data} region={region.data} />\n\n {channel ? <TvChannelHeader channel={channel} /> : <PartialTvChannel />}\n\n {dataLoaded ? (\n <>\n <AccordionList>\n {grouped.map(([ date, programs ]: [string, TvProgram[]], index) => (\n <AccordionList.Header\n key={index}\n title={date}\n >\n <div className='mt-2 pb-2'>\n {programs && programs.map(program => (\n <TvAccordionListItem\n key={program.id}\n name={program.title}\n program={program}\n region={region.data.code}\n previewUrl={config.data?.tvPreviewUrls[region.data?.code]}\n />\n ))}\n </div>\n </AccordionList.Header>\n ))}\n </AccordionList>\n </>\n ) : (\n <PartialAccordionList />\n )}\n </>\n );\n}"],"names":["TvAccordionListItem","props","getProgramAppLink","program","region","ProgramType","AppChannels","Actions","getThumbnailUrl","globalId","styles","jsxs","AppLink","jsx","LazyImage","TvAdFreeBadge","TvProgramTimeBadge","TvChannelHeader","channel","PartialTvChannel","TvChannelView","config","Flight.useBasicFetch","ConfigRequests","TvRequests","regions","dateRange","channels","React","_a","setRegion","useSelectedRegion","showTvGuide","useLiteUpgrade","programs","grouped","groups","startTime","DateHelper","toLocalTime","date","handleHttpError","HttpStatus","useHandleRegionError","useHandleObjectError","useSetPageMetadata","dataLoaded","getCurrentRegion","currentRegion","Fragment","TvSearchBar","TvTabs","TvRegionSelect","TvInfoAlert","AccordionList","index","_b","PartialAccordionList"],"mappings":"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"}
1
+ {"version":3,"file":"BDTzvMwe.chunk.js","sources":["../../src/apps/tv/components/tv-accordion-list-item/TvAccordionListItem.tsx","../../src/apps/tv/views/tv-channel/components/tv-channel-header/TvChannelHeader.tsx","../../src/apps/tv/views/tv-channel/partial-loading/PartialTvChannelPrograms.tsx","../../src/apps/tv/views/tv-channel/TvChannelView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { LazyImage } from 'libs/shared/components/lazy-image/LazyImage';\n\nimport { Actions } from 'shared/constants/ExchangeActions';\nimport { AppChannels } from 'shared/constants/ExchangeRadioChannels';\n\nimport { TvAdFreeBadge } from 'apps/tv/components/tv-ad-free-badge/TvAdFreeBadge';\nimport { TvProgramTimeBadge } from 'apps/tv/components/tv-program-time-badge/TvProgramTimeBadge';\nimport { ProgramType } from 'apps/tv/interfaces/enums/ProgramType';\nimport { TvProgram } from 'apps/tv/interfaces/models/TvProgram';\n\nimport styles from './tv-accordion-list-item.module.scss';\n\ninterface TvAccordionListItemProps {\n name: string;\n program: TvProgram;\n region: string;\n showDate?: boolean;\n previewUrl: string;\n}\n\nexport function TvAccordionListItem(props: TvAccordionListItemProps) {\n function getProgramAppLink(program: TvProgram, region: string) {\n switch (program.programType) {\n case ProgramType.Video:\n return {\n application: AppChannels.TV,\n action: Actions.Tv.PREVIEW,\n args: [ region, program.id ]\n };\n case ProgramType.Audio:\n return {\n application: AppChannels.TV,\n action: Actions.Tv.RADIO_DOWNLOAD,\n args: [ region, program.id ]\n };\n }\n }\n \n function getThumbnailUrl(program: TvProgram) {\n const globalId = program.globalId.split('-').join('');\n return `${props.previewUrl}/thumbnail/${globalId}.jpg`;\n }\n\n return (\n <div className={`${styles.itemContainer} rounded mx-4 px-2`}>\n <AppLink\n key={props.program.id}\n appLink={getProgramAppLink(props.program, props.region)}\n className='d-flex align-items-center justify-content-between py-2 px-3 text-decoration-none'\n >\n <div className='w-50 d-flex align-items-center'>\n <div className={`${styles.thumbnail} flex-shrink-0 me-3 partial-loading-background rounded`}>\n <LazyImage\n src={getThumbnailUrl(props.program)}\n alt={props.program.title}\n extraClasses='w-100 rounded'\n />\n </div>\n <div className='d-flex align-items-center'>\n <span className='me-1'>{props.name}</span>\n {props.program.hasAdsFree && <TvAdFreeBadge small />}\n </div>\n </div>\n <TvProgramTimeBadge program={props.program} className='pointer-events-none' showEndTime />\n </AppLink>\n </div>\n );\n}","import React from 'react';\n\nimport { TvChannel } from 'apps/tv/interfaces/models/TvChannel';\n\ninterface TvChannelHeaderProps {\n channel: TvChannel;\n}\n\nexport function TvChannelHeader(props: TvChannelHeaderProps): JSX.Element {\n const { channel } = props;\n\n return (\n <div className='d-flex mb-3'>\n <div\n className='d-flex align-items-center me-3'\n style={{ maxWidth: '7.5rem' }}>\n <img\n className='w-100'\n src={channel.logoUrl}\n />\n </div>\n <div>\n <h1 className='h3'>{channel.displayName}</h1>\n <p className='mb-0'>{channel.description}</p>\n </div>\n </div>\n );\n}","import React from 'react';\n\nexport function PartialTvChannel() {\n return (\n <div className='d-flex mb-3'>\n <div className='partial-loading-background d-flex align-items-center me-3'>\n <div style={{ width: '7.5rem' }}/>\n </div>\n <div className='w-100'>\n <div className='partial-loading-background w-25 h3'>&nbsp;</div>\n <p className='partial-loading-background w-100 mb-0'>&nbsp;</p>\n </div>\n </div>\n );\n}","import React from 'react';\n\nimport { HttpStatus } from 'libs/common/backbone/enums/HttpStatus';\nimport { Flight } from 'libs/common/flight';\nimport { HashObject } from 'libs/common/react/interfaces';\nimport { DateHelper } from 'libs/common/react/utils/DateHelper';\n\nimport { handleHttpError } from 'libs/shared/errors/handlers/HttpErrorHandlers';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { useHandleObjectError } from 'libs/shared/hooks/UseHandleObjectError';\nimport { useLiteUpgrade } from 'libs/shared/hooks/UseLiteUpgrade';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { Config } from 'libs/shared/interfaces';\n\nimport { AccordionList } from 'shared/components/accordion-list/AccordionList';\nimport { PartialAccordionList } from 'shared/components/accordion-list/partial-loading/PartialAccordionList';\nimport { Actions } from 'shared/constants/ExchangeActions';\nimport { AppChannels } from 'shared/constants/ExchangeRadioChannels';\n\nimport { TvAccordionListItem } from 'apps/tv/components/tv-accordion-list-item/TvAccordionListItem';\nimport { TvInfoAlert } from 'apps/tv/components/tv-info-alert/TvInfoAlert';\nimport { TvRegionSelect } from 'apps/tv/components/tv-region-select/TvRegionSelect';\nimport { TvSearchBar } from 'apps/tv/components/tv-search-bar/TvSearchBar';\nimport { TvTabs } from 'apps/tv/components/tv-tabs/TvTabs';\nimport { TvRequests } from 'apps/tv/flight-requests/TvRequests';\nimport { useHandleRegionError } from 'apps/tv/hooks/useHandleRegionError';\nimport { useSelectedRegion } from 'apps/tv/hooks/useSelectedRegion';\nimport { TvChannel } from 'apps/tv/interfaces/models/TvChannel';\nimport { TvProgram } from 'apps/tv/interfaces/models/TvProgram';\nimport { TvDateRange, TvRegion } from 'apps/tv/interfaces/models/TvRegion';\nimport { toLocalTime } from 'apps/tv/utils/toLocalTime';\n\nimport { TvChannelHeader } from './components/tv-channel-header/TvChannelHeader';\nimport { PartialTvChannel } from './partial-loading/PartialTvChannelPrograms';\n\ninterface TvChannelViewProps {\n region: string;\n channelId: string;\n selectedRegion?: string;\n}\n\nexport function TvChannelView(props: TvChannelViewProps): JSX.Element {\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const region = Flight.useBasicFetch<TvRegion>(TvRequests.region(props.region));\n const regions = Flight.useBasicFetch<TvRegion[]>(TvRequests.regions());\n const dateRange = Flight.useBasicFetch<TvDateRange>(TvRequests.dateRange(props.region));\n const channels = Flight.useBasicFetch<TvChannel[]>(\n region.data && TvRequests.channels(region.data.code)\n );\n const channel = React.useMemo(() => {\n return channels.data?.find(c => c.id.toString() === props.channelId.toString());\n }, [channels.data]);\n\n const { setRegion } = useSelectedRegion();\n const { showTvGuide } = useLiteUpgrade();\n\n const programs = Flight.useBasicFetch<TvProgram[]>(\n region.data &&\n channel &&\n TvRequests.programsByChannel(\n region.data.code,\n channel.name,\n channel.startTime,\n channel.stopTime\n )\n );\n\n const grouped = React.useMemo(() => {\n if (!programs.data?.length)\n return [];\n\n const groups: HashObject<TvProgram[]> = {};\n\n [...programs.data].reverse().forEach(program => {\n const startTime = DateHelper.format(toLocalTime(program.startTime, program.timeZone), 'dddd Do MMMM');\n\n if (!groups[startTime])\n groups[startTime] = [];\n\n groups[startTime].push(program);\n });\n const grouped = Object.entries(groups);\n return grouped.map(([ date, program ]) => [ date, program.reverse() ]);\n }, [programs]);\n\n if ((channels.hasCompleted && !channel)) {\n handleHttpError(HttpStatus.BadRequest);\n }\n\n useHandleRegionError(region);\n useHandleObjectError([ regions, channels, programs ]);\n\n useSetPageMetadata({ title: channel?.displayName });\n\n const dataLoaded =\n region.hasCompleted && regions.hasCompleted && channels.hasCompleted && channel && programs.hasCompleted;\n\n function getCurrentRegion(): TvRegion {\n if (!props.selectedRegion) return region.data;\n\n return regions.data?.find(region => region.code === props.selectedRegion);\n }\n\n const currentRegion = getCurrentRegion();\n\n return (\n <>\n <TvSearchBar region={currentRegion} />\n\n <div className='d-flex justify-content-between'>\n <TvTabs\n active='channels'\n currentRegion={currentRegion}\n showTvGuide={showTvGuide}\n />\n <TvRegionSelect\n currentRegion={currentRegion}\n regions={regions.data}\n appLink={{\n application: AppChannels.TV,\n action: Actions.Tv.CHANNELS\n }}\n onClick={setRegion}\n />\n </div>\n \n <TvInfoAlert dateRange={dateRange.data} region={region.data} />\n\n {channel ? <TvChannelHeader channel={channel} /> : <PartialTvChannel />}\n\n {dataLoaded ? (\n <>\n <AccordionList>\n {grouped.map(([ date, programs ]: [string, TvProgram[]], index) => (\n <AccordionList.Header\n key={index}\n title={date}\n >\n <div className='mt-2 pb-2'>\n {programs && programs.map(program => (\n <TvAccordionListItem\n key={program.id}\n name={program.title}\n program={program}\n region={region.data.code}\n previewUrl={config.data?.tvPreviewUrls[region.data?.code]}\n />\n ))}\n </div>\n </AccordionList.Header>\n ))}\n </AccordionList>\n </>\n ) : (\n <PartialAccordionList />\n )}\n </>\n );\n}"],"names":["TvAccordionListItem","props","getProgramAppLink","program","region","ProgramType","AppChannels","Actions","getThumbnailUrl","globalId","styles","jsxs","AppLink","jsx","LazyImage","TvAdFreeBadge","TvProgramTimeBadge","TvChannelHeader","channel","PartialTvChannel","TvChannelView","config","Flight.useBasicFetch","ConfigRequests","TvRequests","regions","dateRange","channels","React","_a","setRegion","useSelectedRegion","showTvGuide","useLiteUpgrade","programs","grouped","groups","startTime","DateHelper","toLocalTime","date","handleHttpError","HttpStatus","useHandleRegionError","useHandleObjectError","useSetPageMetadata","dataLoaded","getCurrentRegion","currentRegion","Fragment","TvSearchBar","TvTabs","TvRegionSelect","TvInfoAlert","AccordionList","index","_b","PartialAccordionList"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{U as n,H as $,an as k,c as D,S as y}from"./app-C2tLApiH.js";import{S as C}from"./IqKMNgAo.chunk.js";import{P as b}from"./pkzD5BEm.chunk.js";const j={exchange(){return{url:n.urlBuilder("/api/domain/v2/me/libraries",{type:["exchange"],maxCategoryDepth:0}),key:"exchange",normalize:!1,formatData:e=>D.first(e).data}},categories(){return{url:n.urlBuilder("/api/domain/v2/me/libraries",{type:["exchange"],maxCategoryDepth:2}),key:"exchange:categories",normalize:!1,formatData:e=>D.first(e).children}},folderVideos(e,t,a){const i=k.getVideoSortParam(t),s=(i?`{${i},libraries.typeid:18}`:"")+y.VIDEO_COLLECTION,o=n.urlBuilder(`{gateway}/v1/objects/${e}/videos`,{cursor:a,query:s,permissionFilterOption:b.StripMetadata}),r=["folder","videos",e,a,t].filter(l=>!!l).join(":");return{url:o,key:r}},seriesVideos(e,t,a){const i=k.getVideoSortParam(t),s=(i?`{${i},libraries.typeid:18}`:"")+y.VIDEO_COLLECTION,o=n.urlBuilder(`{gateway}/v1/collections/${e}/videos`,{query:s,cursor:a}),r=["series","videos",e,a,t].filter(l=>!!l).join(":");return{url:o,key:r}},mostRecentVideos(e,t){const a="{orderByDesc:timestamp}"+y.VIDEO_COLLECTION,i=n.urlBuilder(`{gateway}/v1/collections/${e}/videos`,{query:a,cursor:t}),s=["mostRecent","videos",e,t].filter(o=>!!o).join(":");return{url:i,key:s}},addVideo(e,t){return{key:"add:video:exchange",url:"{gateway}/v1/users/me/add-videos",data:{libraryId:e,objectId:t},type:$.POST,invalidationKeys:`videos:${t}:`}},suggestEdit(e,t){return{key:"suggest:an:edit",url:`{gateway}/v1/videos/${e}/suggest-edit`,data:t,type:$.POST}},search(e,t,a={},i){let s=`search:${e}:${t}:${i}`;s+=Object.keys(a).map(r=>a[r]).join(";");const o=Object.assign({},{index:t,cursor:i??void 0,query:e,...a});return{url:n.urlBuilder("{gateway}/v3/search/exchange",o),key:s,formatData:r=>{var g,m;let l=r.totalResults;const u=((g=r==null?void 0:r.results)==null?void 0:g.filter(d=>{var p,v,h,f,x,O,S,V;if(d._index!=="series"&&d._index!=="playlist")return!0;if(d._index==="playlist"){const c=d;return(v=(p=c.clips)==null?void 0:p.data)!=null&&v.length||(f=(h=c.interactives)==null?void 0:h.data)!=null&&f.length||(O=(x=c.videos)==null?void 0:x.data)!=null&&O.length?!0:(l--,!1)}return((V=(S=d.videos)==null?void 0:S.data)==null?void 0:V.length)===0?(l--,!1):!0}))??[];r.results=u,r.totalResults=l;const E=(m=u[0])==null?void 0:m._score;return{...r,results:C.mapMaxScoreToSearchResults(u,E)}}}}};export{j as E};
2
- //# sourceMappingURL=rXZnQHdQ.chunk.js.map
1
+ import{U as n,H as $,an as k,c as D,S as y}from"./app-B9-iRU1r.js";import{S as C}from"./C0U8L3bs.chunk.js";import{P as b}from"./pkzD5BEm.chunk.js";const j={exchange(){return{url:n.urlBuilder("/api/domain/v2/me/libraries",{type:["exchange"],maxCategoryDepth:0}),key:"exchange",normalize:!1,formatData:e=>D.first(e).data}},categories(){return{url:n.urlBuilder("/api/domain/v2/me/libraries",{type:["exchange"],maxCategoryDepth:2}),key:"exchange:categories",normalize:!1,formatData:e=>D.first(e).children}},folderVideos(e,t,a){const i=k.getVideoSortParam(t),s=(i?`{${i},libraries.typeid:18}`:"")+y.VIDEO_COLLECTION,o=n.urlBuilder(`{gateway}/v1/objects/${e}/videos`,{cursor:a,query:s,permissionFilterOption:b.StripMetadata}),r=["folder","videos",e,a,t].filter(l=>!!l).join(":");return{url:o,key:r}},seriesVideos(e,t,a){const i=k.getVideoSortParam(t),s=(i?`{${i},libraries.typeid:18}`:"")+y.VIDEO_COLLECTION,o=n.urlBuilder(`{gateway}/v1/collections/${e}/videos`,{query:s,cursor:a}),r=["series","videos",e,a,t].filter(l=>!!l).join(":");return{url:o,key:r}},mostRecentVideos(e,t){const a="{orderByDesc:timestamp}"+y.VIDEO_COLLECTION,i=n.urlBuilder(`{gateway}/v1/collections/${e}/videos`,{query:a,cursor:t}),s=["mostRecent","videos",e,t].filter(o=>!!o).join(":");return{url:i,key:s}},addVideo(e,t){return{key:"add:video:exchange",url:"{gateway}/v1/users/me/add-videos",data:{libraryId:e,objectId:t},type:$.POST,invalidationKeys:`videos:${t}:`}},suggestEdit(e,t){return{key:"suggest:an:edit",url:`{gateway}/v1/videos/${e}/suggest-edit`,data:t,type:$.POST}},search(e,t,a={},i){let s=`search:${e}:${t}:${i}`;s+=Object.keys(a).map(r=>a[r]).join(";");const o=Object.assign({},{index:t,cursor:i??void 0,query:e,...a});return{url:n.urlBuilder("{gateway}/v3/search/exchange",o),key:s,formatData:r=>{var g,m;let l=r.totalResults;const u=((g=r==null?void 0:r.results)==null?void 0:g.filter(d=>{var p,v,h,f,x,O,S,V;if(d._index!=="series"&&d._index!=="playlist")return!0;if(d._index==="playlist"){const c=d;return(v=(p=c.clips)==null?void 0:p.data)!=null&&v.length||(f=(h=c.interactives)==null?void 0:h.data)!=null&&f.length||(O=(x=c.videos)==null?void 0:x.data)!=null&&O.length?!0:(l--,!1)}return((V=(S=d.videos)==null?void 0:S.data)==null?void 0:V.length)===0?(l--,!1):!0}))??[];r.results=u,r.totalResults=l;const E=(m=u[0])==null?void 0:m._score;return{...r,results:C.mapMaxScoreToSearchResults(u,E)}}}}};export{j as E};
2
+ //# sourceMappingURL=BHUkwlPw.chunk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rXZnQHdQ.chunk.js","sources":["../../src/apps/exchange/flight-requests/ExchangeRequests.ts"],"sourcesContent":["import { HttpVerbs } from 'libs/common/backbone/enums/HttpVerbs';\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\nimport { Flight } from 'libs/common/flight';\nimport { HashObject } from 'libs/common/react/interfaces';\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { SearchIndices, SearchResultObjectTypes, SearchResults, SearchResultsObject } from 'libs/shared/apps/search/interfaces';\nimport { SharedSearchHelper } from 'libs/shared/apps/search/utils/SharedSearchHelper';\nimport { SharedWithStatements } from 'libs/shared/constants/WithStatements';\nimport { PermissionFilterOption } from 'libs/shared/enums/PermissionFilterOption';\nimport { VideoSortType } from 'libs/shared/enums/VideoSortType';\nimport { Playlist, Series, SuggestEditRequest } from 'libs/shared/interfaces';\nimport { VideoSortHelper } from 'libs/shared/utils/VideoSortHelper';\n\nexport const ExchangeRequests = {\n exchange() {\n return {\n url: UrlHelper.urlBuilder('/api/domain/v2/me/libraries', {\n type: ['exchange'],\n maxCategoryDepth: 0\n }),\n key: 'exchange',\n normalize: false,\n formatData: (data: HashObject[]) => {\n return ArrayHelper.first(data).data;\n }\n };\n },\n categories() {\n return {\n url: UrlHelper.urlBuilder('/api/domain/v2/me/libraries', {\n type: ['exchange'],\n maxCategoryDepth: 2\n }),\n key: 'exchange:categories',\n normalize: false,\n formatData: (data: HashObject[]) => {\n return ArrayHelper.first(data).children;\n }\n };\n },\n folderVideos(\n folderId: string,\n sort?: VideoSortType,\n cursor?: string\n ): Flight.Request {\n const sortFilter = VideoSortHelper.getVideoSortParam(sort);\n \n const query = (sortFilter ? `{${sortFilter},libraries.typeid:18}` : '') + SharedWithStatements.VIDEO_COLLECTION;\n\n const url = UrlHelper.urlBuilder(`{gateway}/v1/objects/${folderId}/videos`, {\n cursor,\n query,\n permissionFilterOption: PermissionFilterOption.StripMetadata\n });\n\n const key = [ 'folder', 'videos', folderId, cursor, sort ].filter(k => !!k).join(':');\n\n return {\n url,\n key\n };\n },\n seriesVideos(\n seriesId: string,\n sort?: VideoSortType,\n cursor?: string\n ): Flight.Request {\n const sortFilter = VideoSortHelper.getVideoSortParam(sort);\n\n const query = (sortFilter ? `{${sortFilter},libraries.typeid:18}` : '') + SharedWithStatements.VIDEO_COLLECTION;\n\n const url = UrlHelper.urlBuilder(`{gateway}/v1/collections/${seriesId}/videos`, {\n query,\n cursor\n });\n\n const key = [ 'series', 'videos', seriesId, cursor, sort ].filter(k => !!k).join(':');\n\n return {\n url,\n key\n };\n },\n mostRecentVideos(exchangeId: string, cursor?: string): Flight.Request {\n const query = '{orderByDesc:timestamp}' + SharedWithStatements.VIDEO_COLLECTION;\n \n const url = UrlHelper.urlBuilder(`{gateway}/v1/collections/${exchangeId}/videos`, {\n query,\n cursor\n });\n\n const key = [ 'mostRecent', 'videos', exchangeId, cursor ].filter(k => !!k).join(':');\n\n return {\n url,\n key\n };\n },\n addVideo(\n libraryId: string,\n objectId: string\n ): Flight.Request {\n return {\n key: 'add:video:exchange',\n url: '{gateway}/v1/users/me/add-videos',\n data: {\n libraryId,\n objectId\n },\n type: HttpVerbs.POST,\n invalidationKeys: `videos:${objectId}:`\n };\n },\n\n suggestEdit(id: string, data: SuggestEditRequest): Flight.Request {\n return {\n key: 'suggest:an:edit',\n url: `{gateway}/v1/videos/${id}/suggest-edit`,\n data,\n type: HttpVerbs.POST\n };\n },\n\n search(\n query: string,\n indices: SearchIndices[],\n filters: HashObject = {},\n cursor?: string\n ): Flight.Request {\n let key = `search:${query}:${indices}:${cursor}`;\n\n key += Object.keys(filters).map(filterName => filters[filterName]).join(';');\n\n const params = Object.assign({}, {\n index: indices,\n cursor: cursor ?? undefined,\n query,\n ...filters\n });\n\n return {\n url: UrlHelper.urlBuilder('{gateway}/v3/search/exchange', params),\n key,\n formatData: (response: SearchResults<SearchResultObjectTypes>) => {\n /**\n * Until playlists and series are regionalised, search will always return every series/playlist that exists\n * even if the current user doesn't have access to the content inside (which will happen for example when playlists/series)\n * contain all UK library content but is being searched for by an AU user.\n *\n * For some search queries, this may result in search showing a bunch of \"empty\" playlists/series, which sucks.\n * This will filter all empty collections out and decrement the `totalResults` to avoid this and make search a better\n * experience.\n *\n * Ideally this will be removed one day when this regionalisation is no longer an issue.\n */\n let totalResults = response.totalResults;\n\n const results = response?.results?.filter(result => {\n if (result._index !== 'series' && result._index !== 'playlist')\n return true;\n\n if (result._index === 'playlist') {\n const playlist = result as SearchResultsObject<Playlist>;\n\n if (playlist.clips?.data?.length ||\n playlist.interactives?.data?.length ||\n playlist.videos?.data?.length)\n return true;\n\n totalResults--;\n return false;\n }\n\n if ((result as SearchResultsObject<Series>).videos?.data?.length === 0) {\n totalResults--;\n return false;\n }\n\n return true;\n }) ?? [];\n\n response.results = results;\n response.totalResults = totalResults;\n\n // The first search result will always have the highest score value.\n // We store it so that we can access it for subsequent results pages\n const resultMaxScore = results[0]?._score;\n\n return {\n ...response,\n results: SharedSearchHelper.mapMaxScoreToSearchResults(results, resultMaxScore)\n };\n }\n };\n }\n};"],"names":["ExchangeRequests","UrlHelper","data","ArrayHelper","folderId","sort","cursor","sortFilter","VideoSortHelper","query","SharedWithStatements","url","PermissionFilterOption","key","k","seriesId","exchangeId","libraryId","objectId","HttpVerbs","id","indices","filters","filterName","params","response","totalResults","results","_a","result","playlist","_b","_d","_c","_f","_e","_h","_g","resultMaxScore","SharedSearchHelper"],"mappings":"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"}
1
+ {"version":3,"file":"BHUkwlPw.chunk.js","sources":["../../src/apps/exchange/flight-requests/ExchangeRequests.ts"],"sourcesContent":["import { HttpVerbs } from 'libs/common/backbone/enums/HttpVerbs';\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\nimport { Flight } from 'libs/common/flight';\nimport { HashObject } from 'libs/common/react/interfaces';\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { SearchIndices, SearchResultObjectTypes, SearchResults, SearchResultsObject } from 'libs/shared/apps/search/interfaces';\nimport { SharedSearchHelper } from 'libs/shared/apps/search/utils/SharedSearchHelper';\nimport { SharedWithStatements } from 'libs/shared/constants/WithStatements';\nimport { PermissionFilterOption } from 'libs/shared/enums/PermissionFilterOption';\nimport { VideoSortType } from 'libs/shared/enums/VideoSortType';\nimport { Playlist, Series, SuggestEditRequest } from 'libs/shared/interfaces';\nimport { VideoSortHelper } from 'libs/shared/utils/VideoSortHelper';\n\nexport const ExchangeRequests = {\n exchange() {\n return {\n url: UrlHelper.urlBuilder('/api/domain/v2/me/libraries', {\n type: ['exchange'],\n maxCategoryDepth: 0\n }),\n key: 'exchange',\n normalize: false,\n formatData: (data: HashObject[]) => {\n return ArrayHelper.first(data).data;\n }\n };\n },\n categories() {\n return {\n url: UrlHelper.urlBuilder('/api/domain/v2/me/libraries', {\n type: ['exchange'],\n maxCategoryDepth: 2\n }),\n key: 'exchange:categories',\n normalize: false,\n formatData: (data: HashObject[]) => {\n return ArrayHelper.first(data).children;\n }\n };\n },\n folderVideos(\n folderId: string,\n sort?: VideoSortType,\n cursor?: string\n ): Flight.Request {\n const sortFilter = VideoSortHelper.getVideoSortParam(sort);\n \n const query = (sortFilter ? `{${sortFilter},libraries.typeid:18}` : '') + SharedWithStatements.VIDEO_COLLECTION;\n\n const url = UrlHelper.urlBuilder(`{gateway}/v1/objects/${folderId}/videos`, {\n cursor,\n query,\n permissionFilterOption: PermissionFilterOption.StripMetadata\n });\n\n const key = [ 'folder', 'videos', folderId, cursor, sort ].filter(k => !!k).join(':');\n\n return {\n url,\n key\n };\n },\n seriesVideos(\n seriesId: string,\n sort?: VideoSortType,\n cursor?: string\n ): Flight.Request {\n const sortFilter = VideoSortHelper.getVideoSortParam(sort);\n\n const query = (sortFilter ? `{${sortFilter},libraries.typeid:18}` : '') + SharedWithStatements.VIDEO_COLLECTION;\n\n const url = UrlHelper.urlBuilder(`{gateway}/v1/collections/${seriesId}/videos`, {\n query,\n cursor\n });\n\n const key = [ 'series', 'videos', seriesId, cursor, sort ].filter(k => !!k).join(':');\n\n return {\n url,\n key\n };\n },\n mostRecentVideos(exchangeId: string, cursor?: string): Flight.Request {\n const query = '{orderByDesc:timestamp}' + SharedWithStatements.VIDEO_COLLECTION;\n \n const url = UrlHelper.urlBuilder(`{gateway}/v1/collections/${exchangeId}/videos`, {\n query,\n cursor\n });\n\n const key = [ 'mostRecent', 'videos', exchangeId, cursor ].filter(k => !!k).join(':');\n\n return {\n url,\n key\n };\n },\n addVideo(\n libraryId: string,\n objectId: string\n ): Flight.Request {\n return {\n key: 'add:video:exchange',\n url: '{gateway}/v1/users/me/add-videos',\n data: {\n libraryId,\n objectId\n },\n type: HttpVerbs.POST,\n invalidationKeys: `videos:${objectId}:`\n };\n },\n\n suggestEdit(id: string, data: SuggestEditRequest): Flight.Request {\n return {\n key: 'suggest:an:edit',\n url: `{gateway}/v1/videos/${id}/suggest-edit`,\n data,\n type: HttpVerbs.POST\n };\n },\n\n search(\n query: string,\n indices: SearchIndices[],\n filters: HashObject = {},\n cursor?: string\n ): Flight.Request {\n let key = `search:${query}:${indices}:${cursor}`;\n\n key += Object.keys(filters).map(filterName => filters[filterName]).join(';');\n\n const params = Object.assign({}, {\n index: indices,\n cursor: cursor ?? undefined,\n query,\n ...filters\n });\n\n return {\n url: UrlHelper.urlBuilder('{gateway}/v3/search/exchange', params),\n key,\n formatData: (response: SearchResults<SearchResultObjectTypes>) => {\n /**\n * Until playlists and series are regionalised, search will always return every series/playlist that exists\n * even if the current user doesn't have access to the content inside (which will happen for example when playlists/series)\n * contain all UK library content but is being searched for by an AU user.\n *\n * For some search queries, this may result in search showing a bunch of \"empty\" playlists/series, which sucks.\n * This will filter all empty collections out and decrement the `totalResults` to avoid this and make search a better\n * experience.\n *\n * Ideally this will be removed one day when this regionalisation is no longer an issue.\n */\n let totalResults = response.totalResults;\n\n const results = response?.results?.filter(result => {\n if (result._index !== 'series' && result._index !== 'playlist')\n return true;\n\n if (result._index === 'playlist') {\n const playlist = result as SearchResultsObject<Playlist>;\n\n if (playlist.clips?.data?.length ||\n playlist.interactives?.data?.length ||\n playlist.videos?.data?.length)\n return true;\n\n totalResults--;\n return false;\n }\n\n if ((result as SearchResultsObject<Series>).videos?.data?.length === 0) {\n totalResults--;\n return false;\n }\n\n return true;\n }) ?? [];\n\n response.results = results;\n response.totalResults = totalResults;\n\n // The first search result will always have the highest score value.\n // We store it so that we can access it for subsequent results pages\n const resultMaxScore = results[0]?._score;\n\n return {\n ...response,\n results: SharedSearchHelper.mapMaxScoreToSearchResults(results, resultMaxScore)\n };\n }\n };\n }\n};"],"names":["ExchangeRequests","UrlHelper","data","ArrayHelper","folderId","sort","cursor","sortFilter","VideoSortHelper","query","SharedWithStatements","url","PermissionFilterOption","key","k","seriesId","exchangeId","libraryId","objectId","HttpVerbs","id","indices","filters","filterName","params","response","totalResults","results","_a","result","playlist","_b","_d","_c","_f","_e","_h","_g","resultMaxScore","SharedSearchHelper"],"mappings":"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"}