@clickview/exchange 0.62.0-rc.0 → 0.62.0

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 (124) hide show
  1. package/dist/.vite/manifest.json +549 -549
  2. package/dist/bundles.json +1 -1
  3. package/dist/css/Crtlho0p.chunk.css +8 -0
  4. package/dist/en.json +1 -1
  5. package/dist/scripts/{Dg-h5qnR.chunk.js → 0uwnPAi2.chunk.js} +2 -2
  6. package/dist/scripts/{Dg-h5qnR.chunk.js.map → 0uwnPAi2.chunk.js.map} +1 -1
  7. package/dist/scripts/{CgGl8jzo.chunk.js → 6f-CHYL3.chunk.js} +2 -2
  8. package/dist/scripts/{CgGl8jzo.chunk.js.map → 6f-CHYL3.chunk.js.map} +1 -1
  9. package/dist/scripts/{CkH6ird3.chunk.js → B09qwiFG.chunk.js} +2 -2
  10. package/dist/scripts/{CkH6ird3.chunk.js.map → B09qwiFG.chunk.js.map} +1 -1
  11. package/dist/scripts/{BRQhDr-02.chunk.js → B0uOvqjG2.chunk.js} +2 -2
  12. package/dist/scripts/{BRQhDr-02.chunk.js.map → B0uOvqjG2.chunk.js.map} +1 -1
  13. package/dist/scripts/{ZSP3Vfha2.chunk.js → B8BobN3r2.chunk.js} +2 -2
  14. package/dist/scripts/{ZSP3Vfha2.chunk.js.map → B8BobN3r2.chunk.js.map} +1 -1
  15. package/dist/scripts/{BHKm8WQq2.chunk.js → B8wHzPHI2.chunk.js} +2 -2
  16. package/dist/scripts/{BHKm8WQq2.chunk.js.map → B8wHzPHI2.chunk.js.map} +1 -1
  17. package/dist/scripts/{CeCXhgoJ.chunk.js → BAIdKirt.chunk.js} +2 -2
  18. package/dist/scripts/{CeCXhgoJ.chunk.js.map → BAIdKirt.chunk.js.map} +1 -1
  19. package/dist/scripts/{Ct8ETEOn2.chunk.js → BAwP70HI2.chunk.js} +2 -2
  20. package/dist/scripts/{Ct8ETEOn2.chunk.js.map → BAwP70HI2.chunk.js.map} +1 -1
  21. package/dist/scripts/{YGLkoFLc.chunk.js → BEv09vqz.chunk.js} +2 -2
  22. package/dist/scripts/{YGLkoFLc.chunk.js.map → BEv09vqz.chunk.js.map} +1 -1
  23. package/dist/scripts/{uPFXIvcK2.chunk.js → BLs3APIS2.chunk.js} +2 -2
  24. package/dist/scripts/{uPFXIvcK2.chunk.js.map → BLs3APIS2.chunk.js.map} +1 -1
  25. package/dist/scripts/{D9zlZIWi2.chunk.js → BP0LMV9S2.chunk.js} +2 -2
  26. package/dist/scripts/{D9zlZIWi2.chunk.js.map → BP0LMV9S2.chunk.js.map} +1 -1
  27. package/dist/scripts/{CqNKzFA4.chunk.js → BPttZx0-.chunk.js} +2 -2
  28. package/dist/scripts/{CqNKzFA4.chunk.js.map → BPttZx0-.chunk.js.map} +1 -1
  29. package/dist/scripts/{B9Rb6IIb.chunk.js → BQk9Mhlr.chunk.js} +2 -2
  30. package/dist/scripts/{B9Rb6IIb.chunk.js.map → BQk9Mhlr.chunk.js.map} +1 -1
  31. package/dist/scripts/{CYUx40jk.chunk.js → BXIfsdxg.chunk.js} +2 -2
  32. package/dist/scripts/{CYUx40jk.chunk.js.map → BXIfsdxg.chunk.js.map} +1 -1
  33. package/dist/scripts/{CvQQNf_J2.chunk.js → B_P4D3Hf2.chunk.js} +2 -2
  34. package/dist/scripts/{CvQQNf_J2.chunk.js.map → B_P4D3Hf2.chunk.js.map} +1 -1
  35. package/dist/scripts/{Dp0gbhZx2.chunk.js → BgskDBpT2.chunk.js} +2 -2
  36. package/dist/scripts/{Dp0gbhZx2.chunk.js.map → BgskDBpT2.chunk.js.map} +1 -1
  37. package/dist/scripts/{Nx0q4bij.chunk.js → BhOZYAZn.chunk.js} +2 -2
  38. package/dist/scripts/{Nx0q4bij.chunk.js.map → BhOZYAZn.chunk.js.map} +1 -1
  39. package/dist/scripts/{CKrB9r9w.chunk.js → Bn9ROglk.chunk.js} +2 -2
  40. package/dist/scripts/{CKrB9r9w.chunk.js.map → Bn9ROglk.chunk.js.map} +1 -1
  41. package/dist/scripts/{Ds3cFntF2.chunk.js → Bo8PhXY12.chunk.js} +3 -3
  42. package/dist/scripts/{Ds3cFntF2.chunk.js.map → Bo8PhXY12.chunk.js.map} +1 -1
  43. package/dist/scripts/{Fu0bLEzl2.chunk.js → BrVyRSUS2.chunk.js} +2 -2
  44. package/dist/scripts/{Fu0bLEzl2.chunk.js.map → BrVyRSUS2.chunk.js.map} +1 -1
  45. package/dist/scripts/{CeHHO1Hv.chunk.js → BxLgTmMl.chunk.js} +2 -2
  46. package/dist/scripts/{CeHHO1Hv.chunk.js.map → BxLgTmMl.chunk.js.map} +1 -1
  47. package/dist/scripts/{BPgKK-d32.chunk.js → Bxsu4S752.chunk.js} +2 -2
  48. package/dist/scripts/{BPgKK-d32.chunk.js.map → Bxsu4S752.chunk.js.map} +1 -1
  49. package/dist/scripts/{B0VKYPiu.chunk.js → C-PORBUs.chunk.js} +2 -2
  50. package/dist/scripts/{B0VKYPiu.chunk.js.map → C-PORBUs.chunk.js.map} +1 -1
  51. package/dist/scripts/{RiPZGw_q2.chunk.js → C1StI3Bl2.chunk.js} +2 -2
  52. package/dist/scripts/{RiPZGw_q2.chunk.js.map → C1StI3Bl2.chunk.js.map} +1 -1
  53. package/dist/scripts/{DoTtsl0X.chunk.js → C6Hr-vqw.chunk.js} +2 -2
  54. package/dist/scripts/{DoTtsl0X.chunk.js.map → C6Hr-vqw.chunk.js.map} +1 -1
  55. package/dist/scripts/{UjMbny4R.chunk.js → CBnNAkzx.chunk.js} +2 -2
  56. package/dist/scripts/{UjMbny4R.chunk.js.map → CBnNAkzx.chunk.js.map} +1 -1
  57. package/dist/scripts/{DyRGf1o8.chunk.js → CFkqPGiT.chunk.js} +2 -2
  58. package/dist/scripts/{DyRGf1o8.chunk.js.map → CFkqPGiT.chunk.js.map} +1 -1
  59. package/dist/scripts/{Xs1Bv1h-.chunk.js → CKD2j1rw.chunk.js} +2 -2
  60. package/dist/scripts/{Xs1Bv1h-.chunk.js.map → CKD2j1rw.chunk.js.map} +1 -1
  61. package/dist/scripts/{aDegERgV2.chunk.js → CSKzCsLv2.chunk.js} +2 -2
  62. package/dist/scripts/{aDegERgV2.chunk.js.map → CSKzCsLv2.chunk.js.map} +1 -1
  63. package/dist/scripts/{DVVx1aiS2.chunk.js → CZgaUoHE2.chunk.js} +2 -2
  64. package/dist/scripts/{DVVx1aiS2.chunk.js.map → CZgaUoHE2.chunk.js.map} +1 -1
  65. package/dist/scripts/{B6mSouu5.chunk.js → C_7tv1r9.chunk.js} +2 -2
  66. package/dist/scripts/{B6mSouu5.chunk.js.map → C_7tv1r9.chunk.js.map} +1 -1
  67. package/dist/scripts/{DtYC8Udi2.chunk.js → C_jUsStb2.chunk.js} +2 -2
  68. package/dist/scripts/{DtYC8Udi2.chunk.js.map → C_jUsStb2.chunk.js.map} +1 -1
  69. package/dist/scripts/{BOvQpQ21.chunk.js → CdNTKjPA.chunk.js} +2 -2
  70. package/dist/scripts/{BOvQpQ21.chunk.js.map → CdNTKjPA.chunk.js.map} +1 -1
  71. package/dist/scripts/{C7OCN_w_.chunk.js → ChDwbV8F.chunk.js} +2 -2
  72. package/dist/scripts/{C7OCN_w_.chunk.js.map → ChDwbV8F.chunk.js.map} +1 -1
  73. package/dist/scripts/{CKUk2HqE.chunk.js → Cq-TpkxJ.chunk.js} +2 -2
  74. package/dist/scripts/{CKUk2HqE.chunk.js.map → Cq-TpkxJ.chunk.js.map} +1 -1
  75. package/dist/scripts/{o2htB_49.chunk.js → CrCX606H.chunk.js} +2 -2
  76. package/dist/scripts/{o2htB_49.chunk.js.map → CrCX606H.chunk.js.map} +1 -1
  77. package/dist/scripts/{D0H6Hjd-2.chunk.js → CrDpB82d2.chunk.js} +2 -2
  78. package/dist/scripts/{D0H6Hjd-2.chunk.js.map → CrDpB82d2.chunk.js.map} +1 -1
  79. package/dist/scripts/{DBKlntFN2.chunk.js → Czivka682.chunk.js} +2 -2
  80. package/dist/scripts/{DBKlntFN2.chunk.js.map → Czivka682.chunk.js.map} +1 -1
  81. package/dist/scripts/{eLmgigsW.chunk.js → DEP_Z-S0.chunk.js} +2 -2
  82. package/dist/scripts/{eLmgigsW.chunk.js.map → DEP_Z-S0.chunk.js.map} +1 -1
  83. package/dist/scripts/{cIPkkuhG.chunk.js → DQBoqkL7.chunk.js} +2 -2
  84. package/dist/scripts/{cIPkkuhG.chunk.js.map → DQBoqkL7.chunk.js.map} +1 -1
  85. package/dist/scripts/{BV2vTX2L.chunk.js → DeXP2wHV.chunk.js} +2 -2
  86. package/dist/scripts/{BV2vTX2L.chunk.js.map → DeXP2wHV.chunk.js.map} +1 -1
  87. package/dist/scripts/{C1u2qBZg2.chunk.js → Df82DFJ62.chunk.js} +2 -2
  88. package/dist/scripts/{C1u2qBZg2.chunk.js.map → Df82DFJ62.chunk.js.map} +1 -1
  89. package/dist/scripts/{Co_6cSBX2.chunk.js → DgrEIxhT2.chunk.js} +2 -2
  90. package/dist/scripts/{Co_6cSBX2.chunk.js.map → DgrEIxhT2.chunk.js.map} +1 -1
  91. package/dist/scripts/{CRHkMr9_2.chunk.js → DhT0tpZm2.chunk.js} +2 -2
  92. package/dist/scripts/{CRHkMr9_2.chunk.js.map → DhT0tpZm2.chunk.js.map} +1 -1
  93. package/dist/scripts/{CUdaR862.chunk.js → Dhe09-jE.chunk.js} +2 -2
  94. package/dist/scripts/{CUdaR862.chunk.js.map → Dhe09-jE.chunk.js.map} +1 -1
  95. package/dist/scripts/{BijIuzIs2.chunk.js → DhtgaF-y2.chunk.js} +2 -2
  96. package/dist/scripts/{BijIuzIs2.chunk.js.map → DhtgaF-y2.chunk.js.map} +1 -1
  97. package/dist/scripts/{BsSKrRku2.chunk.js → Div1wl-R2.chunk.js} +2 -2
  98. package/dist/scripts/{BsSKrRku2.chunk.js.map → Div1wl-R2.chunk.js.map} +1 -1
  99. package/dist/scripts/{CKNdXwxe2.chunk.js → DjuXXgD-2.chunk.js} +2 -2
  100. package/dist/scripts/{CKNdXwxe2.chunk.js.map → DjuXXgD-2.chunk.js.map} +1 -1
  101. package/dist/scripts/{DBJfKQKx.chunk.js → Dkazht4Q.chunk.js} +2 -2
  102. package/dist/scripts/{DBJfKQKx.chunk.js.map → Dkazht4Q.chunk.js.map} +1 -1
  103. package/dist/scripts/{D5qMnGHT2.chunk.js → DmmZ2XbB2.chunk.js} +2 -2
  104. package/dist/scripts/{D5qMnGHT2.chunk.js.map → DmmZ2XbB2.chunk.js.map} +1 -1
  105. package/dist/scripts/{CWsmm40y.chunk.js → Dr35AMvf.chunk.js} +2 -2
  106. package/dist/scripts/{CWsmm40y.chunk.js.map → Dr35AMvf.chunk.js.map} +1 -1
  107. package/dist/scripts/{CyAM5o2e.chunk.js → HgLS_KfH.chunk.js} +2 -2
  108. package/dist/scripts/{CyAM5o2e.chunk.js.map → HgLS_KfH.chunk.js.map} +1 -1
  109. package/dist/scripts/{zp5MUThO.chunk.js → W8Q7Z6fd.chunk.js} +2 -2
  110. package/dist/scripts/{zp5MUThO.chunk.js.map → W8Q7Z6fd.chunk.js.map} +1 -1
  111. package/dist/scripts/{NInuYe7b2.chunk.js → XWykPl9h2.chunk.js} +2 -2
  112. package/dist/scripts/{NInuYe7b2.chunk.js.map → XWykPl9h2.chunk.js.map} +1 -1
  113. package/dist/scripts/{BggsU83p2.chunk.js → _3n_0ch72.chunk.js} +2 -2
  114. package/dist/scripts/{BggsU83p2.chunk.js.map → _3n_0ch72.chunk.js.map} +1 -1
  115. package/dist/scripts/{app-DDrsm5nt.js → app-CgkYY4K0.js} +3 -3
  116. package/dist/scripts/app-CgkYY4K0.js.map +1 -0
  117. package/dist/scripts/{DeevL6eQ.chunk.js → go6zFmPK.chunk.js} +2 -2
  118. package/dist/scripts/{DeevL6eQ.chunk.js.map → go6zFmPK.chunk.js.map} +1 -1
  119. package/dist/scripts/{BJxTZJOX.chunk.js → p5-1Ey-R.chunk.js} +2 -2
  120. package/dist/scripts/{BJxTZJOX.chunk.js.map → p5-1Ey-R.chunk.js.map} +1 -1
  121. package/dist/scripts/{B0hNKKDw2.chunk.js → qrcrWbQJ2.chunk.js} +2 -2
  122. package/dist/scripts/{B0hNKKDw2.chunk.js.map → qrcrWbQJ2.chunk.js.map} +1 -1
  123. package/package.json +1 -1
  124. package/dist/scripts/app-DDrsm5nt.js.map +0 -1
@@ -1,2 +1,2 @@
1
- import{C as e,D as t}from"./CnnBLBPY.chunk.js";import{l as n,u as r}from"./D8clSITt.chunk.js";import{t as i}from"./GN6vNflP.chunk.js";import{i as a,o,s}from"./cIPkkuhG.chunk.js";import{t as c}from"./BjaJoJzM.chunk.js";import{t as l}from"./D9zlZIWi2.chunk.js";import{h as u,m as d,t as f}from"./DyRGf1o8.chunk.js";import{t as p}from"./CyAM5o2e.chunk.js";import{t as m}from"./CeHHO1Hv.chunk.js";import{t as h}from"./DBJfKQKx.chunk.js";import{t as g}from"./d3WuXtzH.chunk.js";import{t as _}from"./B0VKYPiu.chunk.js";import{r as v}from"./CYUx40jk.chunk.js";t();var y=e(),b=i.encloseNamespace(`exchange.mostRecent`);function x(){let e=r(),t=l(),i=n(p.exchange()),x=h(`video-list`),{commonVideoProps:S}=d();c({title:b(`title`)});let{items:C,hasMore:w,isFetching:T,nextCursor:E}=s(i.data&&D,O,k);function D(e){return p.mostRecentVideos(i.data.id,e)}function O(t){return e(D(t))}function k(e,n){if(e===1)return m(n);t.error(b(`error`))}return(0,y.jsxs)(u.Provider,{value:x,children:[(0,y.jsxs)(`div`,{className:`mb-2`,children:[(0,y.jsx)(g,{}),(0,y.jsx)(_,{active:`most-recent`})]}),C?(0,y.jsx)(f,{videos:C,getVideoAppLink:v,presentationAudiences:null,getPreviewQuestionsAppLink:()=>null,hasPermissions:()=>!1,hideVideoGuidance:!0,commonVideoProps:S}):(0,y.jsx)(`div`,{className:`mx-n2`,children:(0,y.jsx)(a,{})}),(w||T)&&(0,y.jsx)(o,{isFetching:T,fetchNext:O,nextCursor:E})]})}export{x as ExchangeMostRecentView};
2
- //# sourceMappingURL=Xs1Bv1h-.chunk.js.map
1
+ import{C as e,D as t}from"./CnnBLBPY.chunk.js";import{l as n,u as r}from"./D8clSITt.chunk.js";import{t as i}from"./GN6vNflP.chunk.js";import{i as a,o,s}from"./DQBoqkL7.chunk.js";import{t as c}from"./BjaJoJzM.chunk.js";import{t as l}from"./BP0LMV9S2.chunk.js";import{h as u,m as d,t as f}from"./CFkqPGiT.chunk.js";import{t as p}from"./HgLS_KfH.chunk.js";import{t as m}from"./BxLgTmMl.chunk.js";import{t as h}from"./Dkazht4Q.chunk.js";import{t as g}from"./d3WuXtzH.chunk.js";import{t as _}from"./C-PORBUs.chunk.js";import{r as v}from"./BXIfsdxg.chunk.js";t();var y=e(),b=i.encloseNamespace(`exchange.mostRecent`);function x(){let e=r(),t=l(),i=n(p.exchange()),x=h(`video-list`),{commonVideoProps:S}=d();c({title:b(`title`)});let{items:C,hasMore:w,isFetching:T,nextCursor:E}=s(i.data&&D,O,k);function D(e){return p.mostRecentVideos(i.data.id,e)}function O(t){return e(D(t))}function k(e,n){if(e===1)return m(n);t.error(b(`error`))}return(0,y.jsxs)(u.Provider,{value:x,children:[(0,y.jsxs)(`div`,{className:`mb-2`,children:[(0,y.jsx)(g,{}),(0,y.jsx)(_,{active:`most-recent`})]}),C?(0,y.jsx)(f,{videos:C,getVideoAppLink:v,presentationAudiences:null,getPreviewQuestionsAppLink:()=>null,hasPermissions:()=>!1,hideVideoGuidance:!0,commonVideoProps:S}):(0,y.jsx)(`div`,{className:`mx-n2`,children:(0,y.jsx)(a,{})}),(w||T)&&(0,y.jsx)(o,{isFetching:T,fetchNext:O,nextCursor:E})]})}export{x as ExchangeMostRecentView};
2
+ //# sourceMappingURL=CKD2j1rw.chunk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Xs1Bv1h-.chunk.js","names":[],"sources":["../../src/apps/exchange/views/exchange-most-recent/ExchangeMostRecentView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { HttpStatus } from 'libs/common/backbone/enums/HttpStatus';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/react/index';\n\nimport { InfiniteScrollFooter } from 'libs/shared/components/infinite-scroll-footer/InfiniteScrollFooter';\nimport { PartialVideoList } from 'libs/shared/components/video-list/partial-loading/PartialVideoList';\nimport { VideoList } from 'libs/shared/components/video-list/VideoList';\nimport { VideoActionsContext } from 'libs/shared/context/VideoActionsContext';\nimport { handleHttpError } from 'libs/shared/errors/handlers/HttpErrorHandlers';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { useInfiniteList } from 'libs/shared/hooks/UseInfiniteList';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { Library, Video } from 'libs/shared/interfaces';\n\nimport { ExchangeSearchBar } from 'apps/exchange/components/exchange-search-bar/ExchangeSearchBar';\nimport { ExchangeTabs } from 'apps/exchange/components/exchange-tabs/ExchangeTabs';\nimport { ExchangeRequests } from 'apps/exchange/flight-requests/ExchangeRequests';\nimport { useCommonVideoProps } from 'apps/exchange/hooks/useCommonVideoProps';\nimport { useGetExchangeActions } from 'apps/exchange/hooks/useGetExchangeActions';\nimport { getVideoAppLink } from 'apps/exchange/utils/ExchangeUtils';\n\nconst namespace = 'exchange.mostRecent';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport function ExchangeMostRecentView() {\n const fetch = Flight.useGetFetch();\n const alerts = useAlerts();\n\n const exchange = Flight.useBasicFetch<Library>(ExchangeRequests.exchange());\n \n const videoActions = useGetExchangeActions('video-list');\n\n const { commonVideoProps } = useCommonVideoProps();\n\n useSetPageMetadata({ title: getPhrase('title') });\n\n const {\n items: videos,\n hasMore,\n isFetching,\n nextCursor\n } = useInfiniteList<Video>(exchange.data && getVideosRequest, fetchNextVideos, onError);\n\n function getVideosRequest(cursor?: string): Flight.Request {\n return ExchangeRequests.mostRecentVideos(exchange.data.id, cursor);\n }\n\n function fetchNextVideos(cursor?: string): void {\n return fetch(getVideosRequest(cursor));\n }\n\n function onError(pageNumber: number, httpStatus: HttpStatus): void {\n if (pageNumber === 1)\n return handleHttpError(httpStatus);\n\n alerts.error(getPhrase('error'));\n }\n\n return (\n <VideoActionsContext.Provider value={videoActions}>\n <div className='mb-2'>\n <ExchangeSearchBar />\n <ExchangeTabs active='most-recent' />\n </div>\n\n {videos ? (\n <VideoList\n videos={videos}\n getVideoAppLink={getVideoAppLink}\n presentationAudiences={null}\n getPreviewQuestionsAppLink={() => null}\n hasPermissions={() => false}\n hideVideoGuidance\n commonVideoProps={commonVideoProps}\n />\n ) : (\n <div className='mx-n2'>\n <PartialVideoList />\n </div>\n )}\n\n {(hasMore || isFetching) && (\n <InfiniteScrollFooter\n isFetching={isFetching}\n fetchNext={fetchNextVideos}\n nextCursor={nextCursor}\n />\n )}\n </VideoActionsContext.Provider>\n );\n}\n"],"mappings":"ujBAwBM,EAAY,EAAgB,iBADhB,sBAC2C,CAE7D,SAAgB,GAAyB,CACvC,IAAM,EAAQ,GAAoB,CAC5B,EAAS,GAAW,CAEpB,EAAW,EAA8B,EAAiB,UAAU,CAAC,CAErE,EAAe,EAAsB,aAAa,CAElD,CAAE,oBAAqB,GAAqB,CAElD,EAAmB,CAAE,MAAO,EAAU,QAAQ,CAAE,CAAC,CAEjD,GAAM,CACJ,MAAO,EACP,UACA,aACA,cACE,EAAuB,EAAS,MAAQ,EAAkB,EAAiB,EAAQ,CAEvF,SAAS,EAAiB,EAAiC,CACzD,OAAO,EAAiB,iBAAiB,EAAS,KAAK,GAAI,EAAO,CAGpE,SAAS,EAAgB,EAAuB,CAC9C,OAAO,EAAM,EAAiB,EAAO,CAAC,CAGxC,SAAS,EAAQ,EAAoB,EAA8B,CACjE,GAAI,IAAe,EACjB,OAAO,EAAgB,EAAW,CAEpC,EAAO,MAAM,EAAU,QAAQ,CAAC,CAGlC,OACE,EAAA,EAAA,MAAC,EAAoB,SAArB,CAA8B,MAAO,WAArC,EACE,EAAA,EAAA,MAAC,MAAD,CAAK,UAAU,gBAAf,EACE,EAAA,EAAA,KAAC,EAAD,EAAqB,CAAA,EACrB,EAAA,EAAA,KAAC,EAAD,CAAc,OAAO,cAAgB,CAAA,CACjC,GAEL,GACC,EAAA,EAAA,KAAC,EAAD,CACU,SACS,kBACjB,sBAAuB,KACvB,+BAAkC,KAClC,mBAAsB,GACtB,kBAAA,GACkB,mBAClB,CAAA,EAEF,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,kBACb,EAAA,EAAA,KAAC,EAAD,EAAoB,CAAA,CAChB,CAAA,EAGN,GAAW,KACX,EAAA,EAAA,KAAC,EAAD,CACc,aACZ,UAAW,EACC,aACZ,CAAA,CAEyB"}
1
+ {"version":3,"file":"CKD2j1rw.chunk.js","names":[],"sources":["../../src/apps/exchange/views/exchange-most-recent/ExchangeMostRecentView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { HttpStatus } from 'libs/common/backbone/enums/HttpStatus';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/react/index';\n\nimport { InfiniteScrollFooter } from 'libs/shared/components/infinite-scroll-footer/InfiniteScrollFooter';\nimport { PartialVideoList } from 'libs/shared/components/video-list/partial-loading/PartialVideoList';\nimport { VideoList } from 'libs/shared/components/video-list/VideoList';\nimport { VideoActionsContext } from 'libs/shared/context/VideoActionsContext';\nimport { handleHttpError } from 'libs/shared/errors/handlers/HttpErrorHandlers';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { useInfiniteList } from 'libs/shared/hooks/UseInfiniteList';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { Library, Video } from 'libs/shared/interfaces';\n\nimport { ExchangeSearchBar } from 'apps/exchange/components/exchange-search-bar/ExchangeSearchBar';\nimport { ExchangeTabs } from 'apps/exchange/components/exchange-tabs/ExchangeTabs';\nimport { ExchangeRequests } from 'apps/exchange/flight-requests/ExchangeRequests';\nimport { useCommonVideoProps } from 'apps/exchange/hooks/useCommonVideoProps';\nimport { useGetExchangeActions } from 'apps/exchange/hooks/useGetExchangeActions';\nimport { getVideoAppLink } from 'apps/exchange/utils/ExchangeUtils';\n\nconst namespace = 'exchange.mostRecent';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport function ExchangeMostRecentView() {\n const fetch = Flight.useGetFetch();\n const alerts = useAlerts();\n\n const exchange = Flight.useBasicFetch<Library>(ExchangeRequests.exchange());\n \n const videoActions = useGetExchangeActions('video-list');\n\n const { commonVideoProps } = useCommonVideoProps();\n\n useSetPageMetadata({ title: getPhrase('title') });\n\n const {\n items: videos,\n hasMore,\n isFetching,\n nextCursor\n } = useInfiniteList<Video>(exchange.data && getVideosRequest, fetchNextVideos, onError);\n\n function getVideosRequest(cursor?: string): Flight.Request {\n return ExchangeRequests.mostRecentVideos(exchange.data.id, cursor);\n }\n\n function fetchNextVideos(cursor?: string): void {\n return fetch(getVideosRequest(cursor));\n }\n\n function onError(pageNumber: number, httpStatus: HttpStatus): void {\n if (pageNumber === 1)\n return handleHttpError(httpStatus);\n\n alerts.error(getPhrase('error'));\n }\n\n return (\n <VideoActionsContext.Provider value={videoActions}>\n <div className='mb-2'>\n <ExchangeSearchBar />\n <ExchangeTabs active='most-recent' />\n </div>\n\n {videos ? (\n <VideoList\n videos={videos}\n getVideoAppLink={getVideoAppLink}\n presentationAudiences={null}\n getPreviewQuestionsAppLink={() => null}\n hasPermissions={() => false}\n hideVideoGuidance\n commonVideoProps={commonVideoProps}\n />\n ) : (\n <div className='mx-n2'>\n <PartialVideoList />\n </div>\n )}\n\n {(hasMore || isFetching) && (\n <InfiniteScrollFooter\n isFetching={isFetching}\n fetchNext={fetchNextVideos}\n nextCursor={nextCursor}\n />\n )}\n </VideoActionsContext.Provider>\n );\n}\n"],"mappings":"ujBAwBM,EAAY,EAAgB,iBADhB,sBAC2C,CAE7D,SAAgB,GAAyB,CACvC,IAAM,EAAQ,GAAoB,CAC5B,EAAS,GAAW,CAEpB,EAAW,EAA8B,EAAiB,UAAU,CAAC,CAErE,EAAe,EAAsB,aAAa,CAElD,CAAE,oBAAqB,GAAqB,CAElD,EAAmB,CAAE,MAAO,EAAU,QAAQ,CAAE,CAAC,CAEjD,GAAM,CACJ,MAAO,EACP,UACA,aACA,cACE,EAAuB,EAAS,MAAQ,EAAkB,EAAiB,EAAQ,CAEvF,SAAS,EAAiB,EAAiC,CACzD,OAAO,EAAiB,iBAAiB,EAAS,KAAK,GAAI,EAAO,CAGpE,SAAS,EAAgB,EAAuB,CAC9C,OAAO,EAAM,EAAiB,EAAO,CAAC,CAGxC,SAAS,EAAQ,EAAoB,EAA8B,CACjE,GAAI,IAAe,EACjB,OAAO,EAAgB,EAAW,CAEpC,EAAO,MAAM,EAAU,QAAQ,CAAC,CAGlC,OACE,EAAA,EAAA,MAAC,EAAoB,SAArB,CAA8B,MAAO,WAArC,EACE,EAAA,EAAA,MAAC,MAAD,CAAK,UAAU,gBAAf,EACE,EAAA,EAAA,KAAC,EAAD,EAAqB,CAAA,EACrB,EAAA,EAAA,KAAC,EAAD,CAAc,OAAO,cAAgB,CAAA,CACjC,GAEL,GACC,EAAA,EAAA,KAAC,EAAD,CACU,SACS,kBACjB,sBAAuB,KACvB,+BAAkC,KAClC,mBAAsB,GACtB,kBAAA,GACkB,mBAClB,CAAA,EAEF,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,kBACb,EAAA,EAAA,KAAC,EAAD,EAAoB,CAAA,CAChB,CAAA,EAGN,GAAW,KACX,EAAA,EAAA,KAAC,EAAD,CACc,aACZ,UAAW,EACC,aACZ,CAAA,CAEyB"}
@@ -1,2 +1,2 @@
1
- import{C as e,D as t}from"./CnnBLBPY.chunk.js";import{t as n}from"./DW0w8_XN.chunk.js";import{l as r}from"./D8clSITt.chunk.js";import{t as i}from"./GN6vNflP.chunk.js";import{t as a}from"./DRTfS6nN.chunk.js";import{I as o,M as s,S as c,U as l,Z as u}from"./app-DDrsm5nt.js";t();var d={myVideosButton:`_myVideosButton_5ybcl_1`},f=e(),p=`shared.alreadyAdded`,m=i.encloseNamespace(p);function h(e){return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(`div`,{className:`mx-auto w-75 mt-1 mb-2`,children:(0,f.jsx)(`img`,{src:a.General.CONFETTI,className:`img-fluid`,draggable:!1})}),(0,f.jsxs)(`div`,{className:`text-center pb-3`,children:[(0,f.jsx)(`h4`,{children:e.alreadyAdded?(0,f.jsx)(o,{namespace:p,phrase:`alreadyAdded`}):(0,f.jsx)(o,{namespace:p,phrase:`successfullyAdded`})}),!e.alreadyAdded&&(0,f.jsx)(`p`,{children:(0,f.jsx)(o,{namespace:p,phrase:`successfullyAddedDescription`})})]}),(0,f.jsxs)(s,{children:[(0,f.jsx)(s.Cancel,{text:m(e.alreadyAdded?`addAnyway`:`close`),onClick:e.onClickClose,variant:`link`}),(0,f.jsxs)(`a`,{href:`${e.liteUrl}${e.videoId?`/videos/`+e.videoId:`/my-videos`}`,className:`${d.myVideosButton} btn btn-dark d-flex align-items-center`,children:[(0,f.jsx)(`span`,{className:`me-1`,children:(0,f.jsx)(o,{namespace:p,phrase:e.videoId?`watchVideo`:`myVideos`})}),(0,f.jsx)(n,{svg:c})]})]})]})}var g=i.encloseNamespace(`shared.alreadyAdded`);function _(e){let{alreadyAdded:t}=e.params,n=r(u.config());return(0,f.jsx)(l,{title:g(`title`),closePopup:e.closePopup,children:(0,f.jsx)(h,{liteUrl:n.data.liteUrl,alreadyAdded:t,onClickClose:e.closePopup})})}export{_ as TvAlreadyAddedView};
2
- //# sourceMappingURL=aDegERgV2.chunk.js.map
1
+ import{C as e,D as t}from"./CnnBLBPY.chunk.js";import{t as n}from"./DW0w8_XN.chunk.js";import{l as r}from"./D8clSITt.chunk.js";import{t as i}from"./GN6vNflP.chunk.js";import{t as a}from"./DRTfS6nN.chunk.js";import{I as o,M as s,S as c,U as l,Z as u}from"./app-CgkYY4K0.js";t();var d={myVideosButton:`_myVideosButton_5ybcl_1`},f=e(),p=`shared.alreadyAdded`,m=i.encloseNamespace(p);function h(e){return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(`div`,{className:`mx-auto w-75 mt-1 mb-2`,children:(0,f.jsx)(`img`,{src:a.General.CONFETTI,className:`img-fluid`,draggable:!1})}),(0,f.jsxs)(`div`,{className:`text-center pb-3`,children:[(0,f.jsx)(`h4`,{children:e.alreadyAdded?(0,f.jsx)(o,{namespace:p,phrase:`alreadyAdded`}):(0,f.jsx)(o,{namespace:p,phrase:`successfullyAdded`})}),!e.alreadyAdded&&(0,f.jsx)(`p`,{children:(0,f.jsx)(o,{namespace:p,phrase:`successfullyAddedDescription`})})]}),(0,f.jsxs)(s,{children:[(0,f.jsx)(s.Cancel,{text:m(e.alreadyAdded?`addAnyway`:`close`),onClick:e.onClickClose,variant:`link`}),(0,f.jsxs)(`a`,{href:`${e.liteUrl}${e.videoId?`/videos/`+e.videoId:`/my-videos`}`,className:`${d.myVideosButton} btn btn-dark d-flex align-items-center`,children:[(0,f.jsx)(`span`,{className:`me-1`,children:(0,f.jsx)(o,{namespace:p,phrase:e.videoId?`watchVideo`:`myVideos`})}),(0,f.jsx)(n,{svg:c})]})]})]})}var g=i.encloseNamespace(`shared.alreadyAdded`);function _(e){let{alreadyAdded:t}=e.params,n=r(u.config());return(0,f.jsx)(l,{title:g(`title`),closePopup:e.closePopup,children:(0,f.jsx)(h,{liteUrl:n.data.liteUrl,alreadyAdded:t,onClickClose:e.closePopup})})}export{_ as TvAlreadyAddedView};
2
+ //# sourceMappingURL=CSKzCsLv2.chunk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"aDegERgV2.chunk.js","names":[],"sources":["../../src/shared/components/already-added/already-added.module.scss","../../src/shared/components/already-added/AlreadyAdded.tsx","../../src/apps/tv/views/tv-already-added/TvAlreadyAddedView.tsx"],"sourcesContent":[":local {\n .myVideosButton {\n padding: 0.5rem 0.5rem 0.5rem 0.75rem;\n }\n}","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}\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}\n"],"mappings":"4UCaM,EAAY,sBACZ,EAAY,EAAgB,iBAAiB,EAAU,CAS7D,SAAgB,EAAa,EAA0B,CACrD,OACE,EAAA,EAAA,MAAA,EAAA,SAAA,CAAA,SAAA,EACE,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,mCACb,EAAA,EAAA,KAAC,MAAD,CAAK,IAAK,EAAU,QAAQ,SAAU,UAAU,YAAY,UAAW,GAAS,CAAA,CAC5E,CAAA,EAEN,EAAA,EAAA,MAAC,MAAD,CAAK,UAAU,4BAAf,EACE,EAAA,EAAA,KAAC,KAAD,CAAA,SACG,EAAM,cACL,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAO,eAAiB,CAAA,EACpD,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAO,oBAAsB,CAAA,CAExD,CAAA,CACJ,CAAC,EAAM,eAAgB,EAAA,EAAA,KAAC,IAAD,CAAA,UAAG,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAO,+BAAiC,CAAA,CAAI,CAAA,CAAA,IAGrG,EAAA,EAAA,MAAC,EAAD,CAAA,SAAA,EACE,EAAA,EAAA,KAAC,EAAa,OAAd,CACE,KAAM,EAAU,EAAM,aAAe,YAAc,QAAQ,CAC3D,QAAS,EAAM,aACf,QAAQ,OACR,CAAA,EACF,EAAA,EAAA,MAAC,IAAD,CACE,KAAM,GAAG,EAAM,UAAU,EAAM,QAAU,WAAa,EAAM,QAAU,eACtE,UAAW,GAAG,EAAO,eAAe,kDAFtC,EAIE,EAAA,EAAA,KAAC,OAAD,CAAM,UAAU,iBACd,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAQ,EAAM,QAAU,aAAe,WAAc,CAAA,CAC5E,CAAA,EACP,EAAA,EAAA,KAAC,EAAD,CAAc,IAAK,EAAgB,CAAA,CAAA,GAExB,CAAA,CAAA,CACd,CAAA,CAAA,CC3CP,IAAM,EAAY,EAAgB,iBADhB,sBAC2C,CAM7D,SAAgB,EAAmB,EAA6C,CAC9E,GAAM,CAAE,gBAAiB,EAAM,OAEzB,EAAS,EAA6B,EAAe,QAAQ,CAAC,CAEpE,OACE,EAAA,EAAA,KAAC,EAAD,CACE,MAAO,EAAU,QAAQ,CACzB,WAAY,EAAM,qBAElB,EAAA,EAAA,KAAC,EAAD,CACE,QAAS,EAAO,KAAK,QACP,eACd,aAAc,EAAM,WACpB,CAAA,CACI,CAAA"}
1
+ {"version":3,"file":"CSKzCsLv2.chunk.js","names":[],"sources":["../../src/shared/components/already-added/already-added.module.scss","../../src/shared/components/already-added/AlreadyAdded.tsx","../../src/apps/tv/views/tv-already-added/TvAlreadyAddedView.tsx"],"sourcesContent":[":local {\n .myVideosButton {\n padding: 0.5rem 0.5rem 0.5rem 0.75rem;\n }\n}","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}\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}\n"],"mappings":"4UCaM,EAAY,sBACZ,EAAY,EAAgB,iBAAiB,EAAU,CAS7D,SAAgB,EAAa,EAA0B,CACrD,OACE,EAAA,EAAA,MAAA,EAAA,SAAA,CAAA,SAAA,EACE,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,mCACb,EAAA,EAAA,KAAC,MAAD,CAAK,IAAK,EAAU,QAAQ,SAAU,UAAU,YAAY,UAAW,GAAS,CAAA,CAC5E,CAAA,EAEN,EAAA,EAAA,MAAC,MAAD,CAAK,UAAU,4BAAf,EACE,EAAA,EAAA,KAAC,KAAD,CAAA,SACG,EAAM,cACL,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAO,eAAiB,CAAA,EACpD,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAO,oBAAsB,CAAA,CAExD,CAAA,CACJ,CAAC,EAAM,eAAgB,EAAA,EAAA,KAAC,IAAD,CAAA,UAAG,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAO,+BAAiC,CAAA,CAAI,CAAA,CAAA,IAGrG,EAAA,EAAA,MAAC,EAAD,CAAA,SAAA,EACE,EAAA,EAAA,KAAC,EAAa,OAAd,CACE,KAAM,EAAU,EAAM,aAAe,YAAc,QAAQ,CAC3D,QAAS,EAAM,aACf,QAAQ,OACR,CAAA,EACF,EAAA,EAAA,MAAC,IAAD,CACE,KAAM,GAAG,EAAM,UAAU,EAAM,QAAU,WAAa,EAAM,QAAU,eACtE,UAAW,GAAG,EAAO,eAAe,kDAFtC,EAIE,EAAA,EAAA,KAAC,OAAD,CAAM,UAAU,iBACd,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAQ,EAAM,QAAU,aAAe,WAAc,CAAA,CAC5E,CAAA,EACP,EAAA,EAAA,KAAC,EAAD,CAAc,IAAK,EAAgB,CAAA,CAAA,GAExB,CAAA,CAAA,CACd,CAAA,CAAA,CC3CP,IAAM,EAAY,EAAgB,iBADhB,sBAC2C,CAM7D,SAAgB,EAAmB,EAA6C,CAC9E,GAAM,CAAE,gBAAiB,EAAM,OAEzB,EAAS,EAA6B,EAAe,QAAQ,CAAC,CAEpE,OACE,EAAA,EAAA,KAAC,EAAD,CACE,MAAO,EAAU,QAAQ,CACzB,WAAY,EAAM,qBAElB,EAAA,EAAA,KAAC,EAAD,CACE,QAAS,EAAO,KAAK,QACP,eACd,aAAc,EAAM,WACpB,CAAA,CACI,CAAA"}
@@ -1,2 +1,2 @@
1
- import{C as e,D as t}from"./CnnBLBPY.chunk.js";import{l as n,u as r}from"./D8clSITt.chunk.js";import{t as i}from"./GN6vNflP.chunk.js";import{t as a}from"./BjaJoJzM.chunk.js";import{t as o}from"./BijIuzIs2.chunk.js";import{t as s}from"./CyAM5o2e.chunk.js";import{n as c,r as l,t as u}from"./eLmgigsW.chunk.js";import{t as d}from"./C7OCN_w_.chunk.js";import{t as f}from"./d3WuXtzH.chunk.js";import{t as p}from"./B0VKYPiu.chunk.js";import{t as m}from"./CYUx40jk.chunk.js";t();var h=e(),g=i.encloseNamespace(`exchange.exchange`);function _(){let e=r(),t=n(s.exchange()),i=e=>o.childFolders(t.data.categoryTree.id,e),_=c(t.data&&i,t=>e(i(t)));return d(t),a({title:g(`exchangeArchive`)}),(0,h.jsxs)(h.Fragment,{children:[(0,h.jsxs)(`div`,{className:`mb-3`,children:[(0,h.jsx)(f,{}),(0,h.jsx)(p,{active:`categories`})]}),_?.items?_.items.length?(0,h.jsx)(`div`,{className:`mx-n2`,children:(0,h.jsx)(l,{folders:_.items,getAppLink:e=>m(e),expandFolders:!0,showHeading:!1})}):(0,h.jsx)(h.Fragment,{}):(0,h.jsx)(`div`,{className:`mt-3`,children:(0,h.jsx)(u,{count:22})})]})}export{_ as ExchangeView};
2
- //# sourceMappingURL=DVVx1aiS2.chunk.js.map
1
+ import{C as e,D as t}from"./CnnBLBPY.chunk.js";import{l as n,u as r}from"./D8clSITt.chunk.js";import{t as i}from"./GN6vNflP.chunk.js";import{t as a}from"./BjaJoJzM.chunk.js";import{t as o}from"./DhtgaF-y2.chunk.js";import{t as s}from"./HgLS_KfH.chunk.js";import{n as c,r as l,t as u}from"./DEP_Z-S0.chunk.js";import{t as d}from"./ChDwbV8F.chunk.js";import{t as f}from"./d3WuXtzH.chunk.js";import{t as p}from"./C-PORBUs.chunk.js";import{t as m}from"./BXIfsdxg.chunk.js";t();var h=e(),g=i.encloseNamespace(`exchange.exchange`);function _(){let e=r(),t=n(s.exchange()),i=e=>o.childFolders(t.data.categoryTree.id,e),_=c(t.data&&i,t=>e(i(t)));return d(t),a({title:g(`exchangeArchive`)}),(0,h.jsxs)(h.Fragment,{children:[(0,h.jsxs)(`div`,{className:`mb-3`,children:[(0,h.jsx)(f,{}),(0,h.jsx)(p,{active:`categories`})]}),_?.items?_.items.length?(0,h.jsx)(`div`,{className:`mx-n2`,children:(0,h.jsx)(l,{folders:_.items,getAppLink:e=>m(e),expandFolders:!0,showHeading:!1})}):(0,h.jsx)(h.Fragment,{}):(0,h.jsx)(`div`,{className:`mt-3`,children:(0,h.jsx)(u,{count:22})})]})}export{_ as ExchangeView};
2
+ //# sourceMappingURL=CZgaUoHE2.chunk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DVVx1aiS2.chunk.js","names":[],"sources":["../../src/apps/exchange/views/exchange/ExchangeView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\n\nimport { FolderList } from 'libs/shared/components/folder-list/FolderList';\nimport { PartialFolderList } from 'libs/shared/components/folder-list/partial-loading/PartialFolderList';\nimport { LibraryRequests } from 'libs/shared/flight-requests/LibraryRequests';\nimport { useFetchAll } from 'libs/shared/hooks/UseFetchAll';\nimport { useHandleObjectError } from 'libs/shared/hooks/UseHandleObjectError';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { Folder, Library } from 'libs/shared/interfaces';\n\nimport { ExchangeSearchBar } from 'apps/exchange/components/exchange-search-bar/ExchangeSearchBar';\nimport { ExchangeTabs } from 'apps/exchange/components/exchange-tabs/ExchangeTabs';\nimport { ExchangeRequests } from 'apps/exchange/flight-requests/ExchangeRequests';\nimport { getFolderAppLink } from 'apps/exchange/utils/ExchangeUtils';\n\nconst namespace = 'exchange.exchange';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport function ExchangeView(): JSX.Element {\n const fetch = Flight.useGetFetch();\n\n const exchange = Flight.useBasicFetch<Library>(ExchangeRequests.exchange());\n const getRequest = (cursor: string) => LibraryRequests.childFolders(exchange.data.categoryTree.id, cursor);\n const fetchNext = (cursor: string) => fetch(getRequest(cursor));\n const libraryFolders = useFetchAll(exchange.data && getRequest, fetchNext);\n\n useHandleObjectError(exchange);\n\n useSetPageMetadata({ title: getPhrase('exchangeArchive') });\n\n return (\n <>\n <div className='mb-3'>\n <ExchangeSearchBar />\n <ExchangeTabs active='categories' />\n </div>\n \n {(() => {\n if (!libraryFolders?.items)\n return <div className='mt-3'><PartialFolderList count={22} /></div>;\n\n if (!libraryFolders.items.length)\n return <></>;\n\n return (\n <div className='mx-n2'>\n <FolderList\n folders={libraryFolders.items}\n getAppLink={(f: Folder) => getFolderAppLink(f)}\n expandFolders\n showHeading={false}\n />\n </div>\n );\n })()}\n </>\n );\n}\n"],"mappings":"meAmBM,EAAY,EAAgB,iBADhB,oBAC2C,CAE7D,SAAgB,GAA4B,CAC1C,IAAM,EAAQ,GAAoB,CAE5B,EAAW,EAA8B,EAAiB,UAAU,CAAC,CACrE,EAAc,GAAmB,EAAgB,aAAa,EAAS,KAAK,aAAa,GAAI,EAAO,CAEpG,EAAiB,EAAY,EAAS,MAAQ,EADjC,GAAmB,EAAM,EAAW,EAAO,CAAC,CACW,CAM1E,OAJA,EAAqB,EAAS,CAE9B,EAAmB,CAAE,MAAO,EAAU,kBAAkB,CAAE,CAAC,EAGzD,EAAA,EAAA,MAAA,EAAA,SAAA,CAAA,SAAA,EACE,EAAA,EAAA,MAAC,MAAD,CAAK,UAAU,gBAAf,EACE,EAAA,EAAA,KAAC,EAAD,EAAqB,CAAA,EACrB,EAAA,EAAA,KAAC,EAAD,CAAc,OAAO,aAAe,CAAA,CAChC,GAGC,GAAgB,MAGhB,EAAe,MAAM,QAIxB,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,kBACb,EAAA,EAAA,KAAC,EAAD,CACE,QAAS,EAAe,MACxB,WAAa,GAAc,EAAiB,EAAE,CAC9C,cAAA,GACA,YAAa,GACb,CAAA,CACE,CAAA,EAVC,EAAA,EAAA,KAAA,EAAA,SAAA,EAAK,CAAA,EAHL,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,iBAAO,EAAA,EAAA,KAAC,EAAD,CAAmB,MAAO,GAAM,CAAA,CAAM,CAAA,CAgBtE,CAAA,CAAA"}
1
+ {"version":3,"file":"CZgaUoHE2.chunk.js","names":[],"sources":["../../src/apps/exchange/views/exchange/ExchangeView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\n\nimport { FolderList } from 'libs/shared/components/folder-list/FolderList';\nimport { PartialFolderList } from 'libs/shared/components/folder-list/partial-loading/PartialFolderList';\nimport { LibraryRequests } from 'libs/shared/flight-requests/LibraryRequests';\nimport { useFetchAll } from 'libs/shared/hooks/UseFetchAll';\nimport { useHandleObjectError } from 'libs/shared/hooks/UseHandleObjectError';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { Folder, Library } from 'libs/shared/interfaces';\n\nimport { ExchangeSearchBar } from 'apps/exchange/components/exchange-search-bar/ExchangeSearchBar';\nimport { ExchangeTabs } from 'apps/exchange/components/exchange-tabs/ExchangeTabs';\nimport { ExchangeRequests } from 'apps/exchange/flight-requests/ExchangeRequests';\nimport { getFolderAppLink } from 'apps/exchange/utils/ExchangeUtils';\n\nconst namespace = 'exchange.exchange';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport function ExchangeView(): JSX.Element {\n const fetch = Flight.useGetFetch();\n\n const exchange = Flight.useBasicFetch<Library>(ExchangeRequests.exchange());\n const getRequest = (cursor: string) => LibraryRequests.childFolders(exchange.data.categoryTree.id, cursor);\n const fetchNext = (cursor: string) => fetch(getRequest(cursor));\n const libraryFolders = useFetchAll(exchange.data && getRequest, fetchNext);\n\n useHandleObjectError(exchange);\n\n useSetPageMetadata({ title: getPhrase('exchangeArchive') });\n\n return (\n <>\n <div className='mb-3'>\n <ExchangeSearchBar />\n <ExchangeTabs active='categories' />\n </div>\n \n {(() => {\n if (!libraryFolders?.items)\n return <div className='mt-3'><PartialFolderList count={22} /></div>;\n\n if (!libraryFolders.items.length)\n return <></>;\n\n return (\n <div className='mx-n2'>\n <FolderList\n folders={libraryFolders.items}\n getAppLink={(f: Folder) => getFolderAppLink(f)}\n expandFolders\n showHeading={false}\n />\n </div>\n );\n })()}\n </>\n );\n}\n"],"mappings":"meAmBM,EAAY,EAAgB,iBADhB,oBAC2C,CAE7D,SAAgB,GAA4B,CAC1C,IAAM,EAAQ,GAAoB,CAE5B,EAAW,EAA8B,EAAiB,UAAU,CAAC,CACrE,EAAc,GAAmB,EAAgB,aAAa,EAAS,KAAK,aAAa,GAAI,EAAO,CAEpG,EAAiB,EAAY,EAAS,MAAQ,EADjC,GAAmB,EAAM,EAAW,EAAO,CAAC,CACW,CAM1E,OAJA,EAAqB,EAAS,CAE9B,EAAmB,CAAE,MAAO,EAAU,kBAAkB,CAAE,CAAC,EAGzD,EAAA,EAAA,MAAA,EAAA,SAAA,CAAA,SAAA,EACE,EAAA,EAAA,MAAC,MAAD,CAAK,UAAU,gBAAf,EACE,EAAA,EAAA,KAAC,EAAD,EAAqB,CAAA,EACrB,EAAA,EAAA,KAAC,EAAD,CAAc,OAAO,aAAe,CAAA,CAChC,GAGC,GAAgB,MAGhB,EAAe,MAAM,QAIxB,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,kBACb,EAAA,EAAA,KAAC,EAAD,CACE,QAAS,EAAe,MACxB,WAAa,GAAc,EAAiB,EAAE,CAC9C,cAAA,GACA,YAAa,GACb,CAAA,CACE,CAAA,EAVC,EAAA,EAAA,KAAA,EAAA,SAAA,EAAK,CAAA,EAHL,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,iBAAO,EAAA,EAAA,KAAC,EAAD,CAAmB,MAAO,GAAM,CAAA,CAAM,CAAA,CAgBtE,CAAA,CAAA"}
@@ -1,2 +1,2 @@
1
- import{C as e,D as t,mn as n}from"./CnnBLBPY.chunk.js";import{l as r}from"./D8clSITt.chunk.js";import{t as i}from"./CrBD6Z4s.chunk.js";import{t as a}from"./CRRZVEmA.chunk.js";import{U as o,Z as s}from"./app-DDrsm5nt.js";import{t as c}from"./BsSKrRku2.chunk.js";import{n as l,r as u,t as d}from"./Ds3cFntF2.chunk.js";import{t as f}from"./C6jF43q92.chunk.js";import{t as p}from"./uPFXIvcK2.chunk.js";import{t as m}from"./CeCXhgoJ.chunk.js";var h=n(t());function g(e){let{currentUser:t,region:n,config:r,program:a}=e,o=r.tvPreviewUrls[n.code],s=a.globalId.replace(/-/g,``),c=i.safeUrlConcat(o,`/thumbnail/${s}.jpg`),l=i.safeUrlConcat(o,`/144p/${s.toUpperCase()}_144p.mp4`),u=i.safeUrlConcat(o,`/subtitle/${s.toUpperCase()}.srt`),d=i.urlBuilder(i.safeUrlConcat(r.playerApiUrl,`/api/srt-to-vtt`),{url:u});return{videoId:null,episodeNumber:0,seriesName:null,mediaId:null,mediaType:null,ratingCode:null,region:t.instanceRegion,seasonNumber:null,viewerId:t.id,viewerCustomerId:t.customerId,files:{fileToken:``,progressive:[{mimeType:`video/mp4`,profile:`144`,quality:144,url:l,label:`Preview`}]},chapters:{list:[]},instanceRegion:t.instanceRegion,localCacheAddresses:[],posterUrl:c,resources:{list:[]},settings:{showSubtitles:!1,playbackProfile:`144`,playbackProfileLocalCache:`144`,playbackQuality:`144`,playbackQualityLocalCache:`144`,playbackQualityFallback:`144`,playbackSubtitleSizeDefault:`medium`},subtitles:{list:[{url:d,isDefault:!1,language:`en-AU`,mimeType:`text/vtt`,label:`English`}]},title:a.title}}var _=e();function v(e){let t=r(f.region(e.region)),n=r(s.config()),i=r(f.program(e.id)),v=r(a.currentUser()),[y,b]=h.useState(),x=m(`preview`,t.data,y);p(t,!0),c(i.statusCode);function S(t){b(t),e.currentTime&&t.currentTime(e.currentTime)}let C=t.hasCompleted&&i.hasCompleted&&n.hasCompleted&&v.hasCompleted,w=C&&g({currentUser:v.data,region:t.data,config:n.data,program:i.data});return(0,_.jsx)(o,{title:i.data?.title,closePopup:e.closePopup,showLoadingSpinner:!C,size:`lg`,bodyClassName:`p-0 rounded-3 position-relative`,hideTitle:!0,children:C&&(0,_.jsxs)(_.Fragment,{children:[(0,_.jsx)(`div`,{className:`overflow-hidden rounded-top-lg`,children:(0,_.jsx)(u,{viewKey:null,offlinePlaybackObject:w,playerApi:new URL(n.data.playerApiUrl),autoplay:!0,hotkeyElQuerySelector:`body`,onReady:S,allowFullscreen:!1})}),(0,_.jsx)(d,{program:i.data,title:i.data.title,description:i.data.description,videoActions:x(i.data)}),(0,_.jsx)(l,{closePopup:e.closePopup})]})})}export{v as TvPreviewView};
2
- //# sourceMappingURL=B6mSouu5.chunk.js.map
1
+ import{C as e,D as t,mn as n}from"./CnnBLBPY.chunk.js";import{l as r}from"./D8clSITt.chunk.js";import{t as i}from"./CrBD6Z4s.chunk.js";import{t as a}from"./CRRZVEmA.chunk.js";import{U as o,Z as s}from"./app-CgkYY4K0.js";import{t as c}from"./Div1wl-R2.chunk.js";import{n as l,r as u,t as d}from"./Bo8PhXY12.chunk.js";import{t as f}from"./C6jF43q92.chunk.js";import{t as p}from"./BLs3APIS2.chunk.js";import{t as m}from"./BAIdKirt.chunk.js";var h=n(t());function g(e){let{currentUser:t,region:n,config:r,program:a}=e,o=r.tvPreviewUrls[n.code],s=a.globalId.replace(/-/g,``),c=i.safeUrlConcat(o,`/thumbnail/${s}.jpg`),l=i.safeUrlConcat(o,`/144p/${s.toUpperCase()}_144p.mp4`),u=i.safeUrlConcat(o,`/subtitle/${s.toUpperCase()}.srt`),d=i.urlBuilder(i.safeUrlConcat(r.playerApiUrl,`/api/srt-to-vtt`),{url:u});return{videoId:null,episodeNumber:0,seriesName:null,mediaId:null,mediaType:null,ratingCode:null,region:t.instanceRegion,seasonNumber:null,viewerId:t.id,viewerCustomerId:t.customerId,files:{fileToken:``,progressive:[{mimeType:`video/mp4`,profile:`144`,quality:144,url:l,label:`Preview`}]},chapters:{list:[]},instanceRegion:t.instanceRegion,localCacheAddresses:[],posterUrl:c,resources:{list:[]},settings:{showSubtitles:!1,playbackProfile:`144`,playbackProfileLocalCache:`144`,playbackQuality:`144`,playbackQualityLocalCache:`144`,playbackQualityFallback:`144`,playbackSubtitleSizeDefault:`medium`},subtitles:{list:[{url:d,isDefault:!1,language:`en-AU`,mimeType:`text/vtt`,label:`English`}]},title:a.title}}var _=e();function v(e){let t=r(f.region(e.region)),n=r(s.config()),i=r(f.program(e.id)),v=r(a.currentUser()),[y,b]=h.useState(),x=m(`preview`,t.data,y);p(t,!0),c(i.statusCode);function S(t){b(t),e.currentTime&&t.currentTime(e.currentTime)}let C=t.hasCompleted&&i.hasCompleted&&n.hasCompleted&&v.hasCompleted,w=C&&g({currentUser:v.data,region:t.data,config:n.data,program:i.data});return(0,_.jsx)(o,{title:i.data?.title,closePopup:e.closePopup,showLoadingSpinner:!C,size:`lg`,bodyClassName:`p-0 rounded-3 position-relative`,hideTitle:!0,children:C&&(0,_.jsxs)(_.Fragment,{children:[(0,_.jsx)(`div`,{className:`overflow-hidden rounded-top-lg`,children:(0,_.jsx)(u,{viewKey:null,offlinePlaybackObject:w,playerApi:new URL(n.data.playerApiUrl),autoplay:!0,hotkeyElQuerySelector:`body`,onReady:S,allowFullscreen:!1})}),(0,_.jsx)(d,{program:i.data,title:i.data.title,description:i.data.description,videoActions:x(i.data)}),(0,_.jsx)(l,{closePopup:e.closePopup})]})})}export{v as TvPreviewView};
2
+ //# sourceMappingURL=C_7tv1r9.chunk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"B6mSouu5.chunk.js","names":[],"sources":["../../src/apps/tv/views/tv-preview/utils/getTvPlaybackObject.ts","../../src/apps/tv/views/tv-preview/TvPreviewView.tsx"],"sourcesContent":["import { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\n\nimport { RegionName } from 'libs/analytics/enums/RegionName';\n\nimport { CurrentUser } from 'libs/shared/interfaces';\n\nimport { PlaybackObject } from 'projects/player/interfaces/models/PlaybackObject';\n\nimport { ExchangeConfig } from 'shared/interfaces/ExchangeConfig';\n\nimport { TvProgram } from 'apps/tv/interfaces/models/TvProgram';\nimport { TvRegion } from 'apps/tv/interfaces/models/TvRegion';\n\ninterface GetTvPlaybackObjectOptions {\n currentUser: CurrentUser;\n region: TvRegion;\n config: ExchangeConfig;\n program: TvProgram;\n}\n\nexport function getTvPlaybackObject(options: GetTvPlaybackObjectOptions): PlaybackObject {\n const { currentUser, region, config, program } = options;\n\n const previewUrl = config.tvPreviewUrls[region.code];\n\n const globalId = program.globalId.replace(/-/g, '');\n\n const thumbnailUrl = UrlHelper.safeUrlConcat(\n previewUrl,\n `/thumbnail/${globalId}.jpg`\n );\n const fileUrl = UrlHelper.safeUrlConcat(\n previewUrl,\n `/144p/${globalId.toUpperCase()}_144p.mp4`\n );\n const subtitleLocation = UrlHelper.safeUrlConcat(\n previewUrl,\n `/subtitle/${globalId.toUpperCase()}.srt`\n );\n const subtitleUrl = UrlHelper.urlBuilder(\n UrlHelper.safeUrlConcat(config.playerApiUrl, `/api/srt-to-vtt`),\n { url: subtitleLocation }\n );\n\n return ({\n videoId: null,\n episodeNumber: 0,\n seriesName: null,\n mediaId: null,\n mediaType: null,\n ratingCode: null,\n region: currentUser.instanceRegion,\n seasonNumber: null,\n viewerId: currentUser.id,\n viewerCustomerId: currentUser.customerId,\n files: {\n fileToken: '',\n progressive: [{\n mimeType: 'video/mp4',\n profile: '144',\n quality: 144,\n url: fileUrl,\n label: 'Preview'\n }]\n },\n chapters: { list: []},\n instanceRegion: currentUser.instanceRegion as unknown as RegionName,\n localCacheAddresses: [],\n posterUrl: thumbnailUrl,\n resources: { list: []},\n settings: {\n showSubtitles: false,\n playbackProfile: '144',\n playbackProfileLocalCache: '144',\n playbackQuality: '144',\n playbackQualityLocalCache: '144',\n playbackQualityFallback: '144',\n playbackSubtitleSizeDefault: 'medium'\n },\n subtitles: {\n list: [{\n url: subtitleUrl,\n isDefault: false,\n language: 'en-AU',\n mimeType: 'text/vtt',\n label: 'English'\n }]\n },\n title: program.title\n });\n}\n","import React from 'react';\n\nimport { Flight } from 'libs/common/flight';\n\nimport { Popup } from 'libs/shared/components/popup/Popup';\nimport { PlayerReference } from 'libs/shared/context/player-context/interfaces/PlayerReference';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useHandleDialogError } from 'libs/shared/hooks/UseHandleDialogError';\nimport { CurrentUser, PopupViewProps } from 'libs/shared/interfaces';\n\nimport { ClickViewPlayer } from 'projects/player/react/Player';\n\nimport { PlayerOverlayButtons } from 'shared/components/player-overlay-buttons/PlayerOverlayButtons';\nimport { PreviewVideoDetails } from 'shared/components/preview-video-details/PreviewVideoDetails';\nimport { ExchangeConfig } from 'shared/interfaces/ExchangeConfig';\n\nimport { TvRequests } from 'apps/tv/flight-requests/TvRequests';\nimport { useGetTvActions } from 'apps/tv/hooks/useGetTvActions';\nimport { useHandleRegionError } from 'apps/tv/hooks/useHandleRegionError';\nimport { TvProgram } from 'apps/tv/interfaces/models/TvProgram';\nimport { TvRegion } from 'apps/tv/interfaces/models/TvRegion';\n\nimport { getTvPlaybackObject } from './utils/getTvPlaybackObject';\n\ninterface TvPreviewViewProps extends PopupViewProps {\n id: string;\n region: string;\n currentTime: number;\n}\n\nexport function TvPreviewView(props: TvPreviewViewProps): JSX.Element {\n const region = Flight.useBasicFetch<TvRegion>(TvRequests.region(props.region));\n const config = Flight.useBasicFetch<ExchangeConfig>(ConfigRequests.config());\n const program = Flight.useBasicFetch<TvProgram>(TvRequests.program(props.id));\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n\n const [ playerRef, setPlayerRef ] = React.useState<PlayerReference>();\n\n const getVideoActions = useGetTvActions('preview', region.data, playerRef);\n\n useHandleRegionError(region, true);\n useHandleDialogError(program.statusCode);\n\n // TODO: Solve analytics collection\n function onReady(player: PlayerReference): void {\n setPlayerRef(player);\n\n if (props.currentTime)\n player.currentTime(props.currentTime);\n // setupAnalytics(player);\n }\n\n const dataLoaded = (\n region.hasCompleted &&\n program.hasCompleted &&\n config.hasCompleted &&\n currentUser.hasCompleted\n );\n\n const playbackObject = dataLoaded && getTvPlaybackObject({\n currentUser: currentUser.data,\n region: region.data,\n config: config.data,\n program: program.data\n });\n\n return (\n <Popup\n title={program.data?.title}\n closePopup={props.closePopup}\n showLoadingSpinner={!dataLoaded}\n size='lg'\n bodyClassName='p-0 rounded-3 position-relative'\n hideTitle\n >\n {dataLoaded &&\n <>\n <div className='overflow-hidden rounded-top-lg'>\n <ClickViewPlayer\n viewKey={null}\n offlinePlaybackObject={playbackObject}\n playerApi={new URL(config.data.playerApiUrl)}\n autoplay\n hotkeyElQuerySelector='body'\n onReady={onReady}\n allowFullscreen={false}\n />\n </div>\n <PreviewVideoDetails\n program={program.data}\n title={program.data.title}\n description={program.data.description}\n videoActions={getVideoActions(program.data)}\n />\n <PlayerOverlayButtons closePopup={props.closePopup} />\n </>\n }\n </Popup>\n );\n}\n"],"mappings":"mcAoBA,SAAA,EAAA,EAAA,gVAwBE,MAAA,qsBCbF,SAAgB,EAAc,EAAwC,CACpE,IAAM,EAAS,EAA+B,EAAW,OAAO,EAAM,OAAO,CAAC,CACxE,EAAS,EAAqC,EAAe,QAAQ,CAAC,CACtE,EAAU,EAAgC,EAAW,QAAQ,EAAM,GAAG,CAAC,CACvE,EAAc,EAAkC,EAAa,aAAa,CAAC,CAE3E,CAAE,EAAW,GAAA,EAAuB,UAA2B,CAE/D,EAAkB,EAAgB,UAAW,EAAO,KAAM,EAAU,CAE1E,EAAqB,EAAQ,GAAK,CAClC,EAAqB,EAAQ,WAAW,CAGxC,SAAS,EAAQ,EAA+B,CAC9C,EAAa,EAAO,CAEhB,EAAM,aACR,EAAO,YAAY,EAAM,YAAY,CAIzC,IAAM,EACJ,EAAO,cACP,EAAQ,cACR,EAAO,cACP,EAAY,aAGR,EAAiB,GAAc,EAAoB,CACvD,YAAa,EAAY,KACzB,OAAQ,EAAO,KACf,OAAQ,EAAO,KACf,QAAS,EAAQ,KAClB,CAAC,CAEF,OACE,EAAA,EAAA,KAAC,EAAD,CACE,MAAO,EAAQ,MAAM,MACrB,WAAY,EAAM,WAClB,mBAAoB,CAAC,EACrB,KAAK,KACL,cAAc,kCACd,UAAA,YAEC,IACC,EAAA,EAAA,MAAA,EAAA,SAAA,CAAA,SAAA,EACE,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,2CACb,EAAA,EAAA,KAAC,EAAD,CACE,QAAS,KACT,sBAAuB,EACvB,UAAW,IAAI,IAAI,EAAO,KAAK,aAAa,CAC5C,SAAA,GACA,sBAAsB,OACb,UACT,gBAAiB,GACjB,CAAA,CACE,CAAA,EACN,EAAA,EAAA,KAAC,EAAD,CACE,QAAS,EAAQ,KACjB,MAAO,EAAQ,KAAK,MACpB,YAAa,EAAQ,KAAK,YAC1B,aAAc,EAAgB,EAAQ,KAAK,CAC3C,CAAA,EACF,EAAA,EAAA,KAAC,EAAD,CAAsB,WAAY,EAAM,WAAc,CAAA,CACrD,CAAA,CAAA,CAEC,CAAA"}
1
+ {"version":3,"file":"C_7tv1r9.chunk.js","names":[],"sources":["../../src/apps/tv/views/tv-preview/utils/getTvPlaybackObject.ts","../../src/apps/tv/views/tv-preview/TvPreviewView.tsx"],"sourcesContent":["import { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\n\nimport { RegionName } from 'libs/analytics/enums/RegionName';\n\nimport { CurrentUser } from 'libs/shared/interfaces';\n\nimport { PlaybackObject } from 'projects/player/interfaces/models/PlaybackObject';\n\nimport { ExchangeConfig } from 'shared/interfaces/ExchangeConfig';\n\nimport { TvProgram } from 'apps/tv/interfaces/models/TvProgram';\nimport { TvRegion } from 'apps/tv/interfaces/models/TvRegion';\n\ninterface GetTvPlaybackObjectOptions {\n currentUser: CurrentUser;\n region: TvRegion;\n config: ExchangeConfig;\n program: TvProgram;\n}\n\nexport function getTvPlaybackObject(options: GetTvPlaybackObjectOptions): PlaybackObject {\n const { currentUser, region, config, program } = options;\n\n const previewUrl = config.tvPreviewUrls[region.code];\n\n const globalId = program.globalId.replace(/-/g, '');\n\n const thumbnailUrl = UrlHelper.safeUrlConcat(\n previewUrl,\n `/thumbnail/${globalId}.jpg`\n );\n const fileUrl = UrlHelper.safeUrlConcat(\n previewUrl,\n `/144p/${globalId.toUpperCase()}_144p.mp4`\n );\n const subtitleLocation = UrlHelper.safeUrlConcat(\n previewUrl,\n `/subtitle/${globalId.toUpperCase()}.srt`\n );\n const subtitleUrl = UrlHelper.urlBuilder(\n UrlHelper.safeUrlConcat(config.playerApiUrl, `/api/srt-to-vtt`),\n { url: subtitleLocation }\n );\n\n return ({\n videoId: null,\n episodeNumber: 0,\n seriesName: null,\n mediaId: null,\n mediaType: null,\n ratingCode: null,\n region: currentUser.instanceRegion,\n seasonNumber: null,\n viewerId: currentUser.id,\n viewerCustomerId: currentUser.customerId,\n files: {\n fileToken: '',\n progressive: [{\n mimeType: 'video/mp4',\n profile: '144',\n quality: 144,\n url: fileUrl,\n label: 'Preview'\n }]\n },\n chapters: { list: []},\n instanceRegion: currentUser.instanceRegion as unknown as RegionName,\n localCacheAddresses: [],\n posterUrl: thumbnailUrl,\n resources: { list: []},\n settings: {\n showSubtitles: false,\n playbackProfile: '144',\n playbackProfileLocalCache: '144',\n playbackQuality: '144',\n playbackQualityLocalCache: '144',\n playbackQualityFallback: '144',\n playbackSubtitleSizeDefault: 'medium'\n },\n subtitles: {\n list: [{\n url: subtitleUrl,\n isDefault: false,\n language: 'en-AU',\n mimeType: 'text/vtt',\n label: 'English'\n }]\n },\n title: program.title\n });\n}\n","import React from 'react';\n\nimport { Flight } from 'libs/common/flight';\n\nimport { Popup } from 'libs/shared/components/popup/Popup';\nimport { PlayerReference } from 'libs/shared/context/player-context/interfaces/PlayerReference';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useHandleDialogError } from 'libs/shared/hooks/UseHandleDialogError';\nimport { CurrentUser, PopupViewProps } from 'libs/shared/interfaces';\n\nimport { ClickViewPlayer } from 'projects/player/react/Player';\n\nimport { PlayerOverlayButtons } from 'shared/components/player-overlay-buttons/PlayerOverlayButtons';\nimport { PreviewVideoDetails } from 'shared/components/preview-video-details/PreviewVideoDetails';\nimport { ExchangeConfig } from 'shared/interfaces/ExchangeConfig';\n\nimport { TvRequests } from 'apps/tv/flight-requests/TvRequests';\nimport { useGetTvActions } from 'apps/tv/hooks/useGetTvActions';\nimport { useHandleRegionError } from 'apps/tv/hooks/useHandleRegionError';\nimport { TvProgram } from 'apps/tv/interfaces/models/TvProgram';\nimport { TvRegion } from 'apps/tv/interfaces/models/TvRegion';\n\nimport { getTvPlaybackObject } from './utils/getTvPlaybackObject';\n\ninterface TvPreviewViewProps extends PopupViewProps {\n id: string;\n region: string;\n currentTime: number;\n}\n\nexport function TvPreviewView(props: TvPreviewViewProps): JSX.Element {\n const region = Flight.useBasicFetch<TvRegion>(TvRequests.region(props.region));\n const config = Flight.useBasicFetch<ExchangeConfig>(ConfigRequests.config());\n const program = Flight.useBasicFetch<TvProgram>(TvRequests.program(props.id));\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n\n const [ playerRef, setPlayerRef ] = React.useState<PlayerReference>();\n\n const getVideoActions = useGetTvActions('preview', region.data, playerRef);\n\n useHandleRegionError(region, true);\n useHandleDialogError(program.statusCode);\n\n // TODO: Solve analytics collection\n function onReady(player: PlayerReference): void {\n setPlayerRef(player);\n\n if (props.currentTime)\n player.currentTime(props.currentTime);\n // setupAnalytics(player);\n }\n\n const dataLoaded = (\n region.hasCompleted &&\n program.hasCompleted &&\n config.hasCompleted &&\n currentUser.hasCompleted\n );\n\n const playbackObject = dataLoaded && getTvPlaybackObject({\n currentUser: currentUser.data,\n region: region.data,\n config: config.data,\n program: program.data\n });\n\n return (\n <Popup\n title={program.data?.title}\n closePopup={props.closePopup}\n showLoadingSpinner={!dataLoaded}\n size='lg'\n bodyClassName='p-0 rounded-3 position-relative'\n hideTitle\n >\n {dataLoaded &&\n <>\n <div className='overflow-hidden rounded-top-lg'>\n <ClickViewPlayer\n viewKey={null}\n offlinePlaybackObject={playbackObject}\n playerApi={new URL(config.data.playerApiUrl)}\n autoplay\n hotkeyElQuerySelector='body'\n onReady={onReady}\n allowFullscreen={false}\n />\n </div>\n <PreviewVideoDetails\n program={program.data}\n title={program.data.title}\n description={program.data.description}\n videoActions={getVideoActions(program.data)}\n />\n <PlayerOverlayButtons closePopup={props.closePopup} />\n </>\n }\n </Popup>\n );\n}\n"],"mappings":"mcAoBA,SAAA,EAAA,EAAA,gVAwBE,MAAA,qsBCbF,SAAgB,EAAc,EAAwC,CACpE,IAAM,EAAS,EAA+B,EAAW,OAAO,EAAM,OAAO,CAAC,CACxE,EAAS,EAAqC,EAAe,QAAQ,CAAC,CACtE,EAAU,EAAgC,EAAW,QAAQ,EAAM,GAAG,CAAC,CACvE,EAAc,EAAkC,EAAa,aAAa,CAAC,CAE3E,CAAE,EAAW,GAAA,EAAuB,UAA2B,CAE/D,EAAkB,EAAgB,UAAW,EAAO,KAAM,EAAU,CAE1E,EAAqB,EAAQ,GAAK,CAClC,EAAqB,EAAQ,WAAW,CAGxC,SAAS,EAAQ,EAA+B,CAC9C,EAAa,EAAO,CAEhB,EAAM,aACR,EAAO,YAAY,EAAM,YAAY,CAIzC,IAAM,EACJ,EAAO,cACP,EAAQ,cACR,EAAO,cACP,EAAY,aAGR,EAAiB,GAAc,EAAoB,CACvD,YAAa,EAAY,KACzB,OAAQ,EAAO,KACf,OAAQ,EAAO,KACf,QAAS,EAAQ,KAClB,CAAC,CAEF,OACE,EAAA,EAAA,KAAC,EAAD,CACE,MAAO,EAAQ,MAAM,MACrB,WAAY,EAAM,WAClB,mBAAoB,CAAC,EACrB,KAAK,KACL,cAAc,kCACd,UAAA,YAEC,IACC,EAAA,EAAA,MAAA,EAAA,SAAA,CAAA,SAAA,EACE,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,2CACb,EAAA,EAAA,KAAC,EAAD,CACE,QAAS,KACT,sBAAuB,EACvB,UAAW,IAAI,IAAI,EAAO,KAAK,aAAa,CAC5C,SAAA,GACA,sBAAsB,OACb,UACT,gBAAiB,GACjB,CAAA,CACE,CAAA,EACN,EAAA,EAAA,KAAC,EAAD,CACE,QAAS,EAAQ,KACjB,MAAO,EAAQ,KAAK,MACpB,YAAa,EAAQ,KAAK,YAC1B,aAAc,EAAgB,EAAQ,KAAK,CAC3C,CAAA,EACF,EAAA,EAAA,KAAC,EAAD,CAAsB,WAAY,EAAM,WAAc,CAAA,CACrD,CAAA,CAAA,CAEC,CAAA"}
@@ -1,2 +1,2 @@
1
- import{C as e,D as t}from"./CnnBLBPY.chunk.js";import{g as n}from"./DW0w8_XN.chunk.js";import{l as r}from"./D8clSITt.chunk.js";import{t as i}from"./GN6vNflP.chunk.js";import{n as a,t as o}from"./Dn3hwC-o.chunk.js";import{I as s,M as c,U as l}from"./app-DDrsm5nt.js";import{t as u}from"./BcJCL8cu2.chunk.js";import{n as d,t as f}from"./C6jF43q92.chunk.js";t();var p={infoAlert:`_infoAlert_r916y_1`},m=e(),h=`tv.broadcastContent`,g=i.encloseNamespace(h);function _(e){let t=r(f.region(e.region)),i=r(f.dateRange(e.region));return(0,m.jsxs)(l,{title:g(`title`),closePopup:e.closePopup,children:[(0,m.jsx)(`div`,{className:`${p.infoAlert} rounded w-100 p-2 mb-4`,children:(0,m.jsxs)(`p`,{className:`d-inline fw-semibold mb-0 me-2`,children:[(0,m.jsx)(s,{namespace:h,phrase:`programsAvailable`}),i.data&&d.getFormattedDateRange(u(i.data.startDate,t.data.timeZone),u(i.data.endDate,t.data.timeZone))]})}),(0,m.jsx)(`h2`,{className:`h5`,children:(0,m.jsx)(s,{namespace:h,phrase:`subTitle`})}),(0,m.jsx)(`p`,{className:`mb-2`,children:(0,m.jsx)(s,{namespace:h,phrase:`description`})}),(0,m.jsxs)(`div`,{className:`mb-2`,children:[(0,m.jsx)(`p`,{className:`d-inline`,children:(0,m.jsx)(s,{namespace:h,phrase:`missedProgram`})}),(0,m.jsx)(n,{appLink:{application:a.EXCHANGE,action:o.Exchange.INDEX},className:`text-info`,onClick:e.closePopup,children:(0,m.jsx)(`span`,{children:(0,m.jsx)(s,{namespace:h,phrase:`exchangeArchive`})})}),`.`]}),(0,m.jsx)(`p`,{className:`mb-3`,children:(0,m.jsx)(s,{namespace:h,phrase:`emailContent`})}),(0,m.jsx)(c,{children:(0,m.jsx)(c.Cancel,{text:g(`close`),onClick:e.closePopup,variant:`link`})})]})}export{_ as TvBroadcastContentView};
2
- //# sourceMappingURL=DtYC8Udi2.chunk.js.map
1
+ import{C as e,D as t}from"./CnnBLBPY.chunk.js";import{g as n}from"./DW0w8_XN.chunk.js";import{l as r}from"./D8clSITt.chunk.js";import{t as i}from"./GN6vNflP.chunk.js";import{n as a,t as o}from"./Dn3hwC-o.chunk.js";import{I as s,M as c,U as l}from"./app-CgkYY4K0.js";import{t as u}from"./BcJCL8cu2.chunk.js";import{n as d,t as f}from"./C6jF43q92.chunk.js";t();var p={infoAlert:`_infoAlert_r916y_1`},m=e(),h=`tv.broadcastContent`,g=i.encloseNamespace(h);function _(e){let t=r(f.region(e.region)),i=r(f.dateRange(e.region));return(0,m.jsxs)(l,{title:g(`title`),closePopup:e.closePopup,children:[(0,m.jsx)(`div`,{className:`${p.infoAlert} rounded w-100 p-2 mb-4`,children:(0,m.jsxs)(`p`,{className:`d-inline fw-semibold mb-0 me-2`,children:[(0,m.jsx)(s,{namespace:h,phrase:`programsAvailable`}),i.data&&d.getFormattedDateRange(u(i.data.startDate,t.data.timeZone),u(i.data.endDate,t.data.timeZone))]})}),(0,m.jsx)(`h2`,{className:`h5`,children:(0,m.jsx)(s,{namespace:h,phrase:`subTitle`})}),(0,m.jsx)(`p`,{className:`mb-2`,children:(0,m.jsx)(s,{namespace:h,phrase:`description`})}),(0,m.jsxs)(`div`,{className:`mb-2`,children:[(0,m.jsx)(`p`,{className:`d-inline`,children:(0,m.jsx)(s,{namespace:h,phrase:`missedProgram`})}),(0,m.jsx)(n,{appLink:{application:a.EXCHANGE,action:o.Exchange.INDEX},className:`text-info`,onClick:e.closePopup,children:(0,m.jsx)(`span`,{children:(0,m.jsx)(s,{namespace:h,phrase:`exchangeArchive`})})}),`.`]}),(0,m.jsx)(`p`,{className:`mb-3`,children:(0,m.jsx)(s,{namespace:h,phrase:`emailContent`})}),(0,m.jsx)(c,{children:(0,m.jsx)(c.Cancel,{text:g(`close`),onClick:e.closePopup,variant:`link`})})]})}export{_ as TvBroadcastContentView};
2
+ //# sourceMappingURL=C_jUsStb2.chunk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DtYC8Udi2.chunk.js","names":[],"sources":["../../src/apps/tv/views/tv-broadcast-content/tv-broadcast-content.module.scss","../../src/apps/tv/views/tv-broadcast-content/TvBroadcastContentView.tsx"],"sourcesContent":[":local {\n .infoAlert {\n background-color: $gray-100;\n }\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/react/index';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Popup } from 'libs/shared/components/popup/Popup';\nimport { PopupButtons } from 'libs/shared/components/popup/PopupButtons';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { PopupViewProps } from 'libs/shared/interfaces';\n\nimport { Actions } from 'shared/constants/ExchangeActions';\nimport { AppChannels } from 'shared/constants/ExchangeRadioChannels';\n\nimport { TvRequests } from 'apps/tv/flight-requests/TvRequests';\nimport { TvDateRange, TvRegion } from 'apps/tv/interfaces/models/TvRegion';\nimport { toLocalTime } from 'apps/tv/utils/toLocalTime';\nimport { TvUtils } from 'apps/tv/utils/TvUtils';\n\nimport styles from './tv-broadcast-content.module.scss';\n\nconst namespace = 'tv.broadcastContent';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface TvBroadcastContentViewProps extends PopupViewProps {\n region: string;\n}\n\nexport function TvBroadcastContentView(props: TvBroadcastContentViewProps) {\n const region = Flight.useBasicFetch<TvRegion>(TvRequests.region(props.region));\n const dateRange = Flight.useBasicFetch<TvDateRange>(TvRequests.dateRange(props.region));\n \n return (\n <Popup\n title={getPhrase('title')}\n closePopup={props.closePopup}\n >\n <div className={`${styles.infoAlert} rounded w-100 p-2 mb-4`}>\n <p className='d-inline fw-semibold mb-0 me-2'>\n <Text namespace={namespace} phrase='programsAvailable' />\n {dateRange.data &&\n TvUtils.getFormattedDateRange(\n toLocalTime(dateRange.data.startDate, region.data.timeZone),\n toLocalTime(dateRange.data.endDate, region.data.timeZone)\n )\n }\n </p>\n </div>\n\n <h2 className='h5'><Text namespace={namespace} phrase='subTitle' /></h2>\n <p className='mb-2'><Text namespace={namespace} phrase='description' /></p>\n\n <div className='mb-2'>\n <p className='d-inline'><Text namespace={namespace} phrase='missedProgram' /></p>\n <AppLink\n appLink={{ application: AppChannels.EXCHANGE, action: Actions.Exchange.INDEX }}\n className='text-info'\n onClick={props.closePopup}\n >\n <span><Text namespace={namespace} phrase='exchangeArchive' /></span>\n </AppLink>.\n </div>\n <p className='mb-3'><Text namespace={namespace} phrase='emailContent' /></p>\n\n <PopupButtons>\n <PopupButtons.Cancel\n text={getPhrase('close')}\n onClick={props.closePopup}\n variant='link'\n />\n </PopupButtons>\n </Popup>\n );\n}\n"],"mappings":"oZCqBM,EAAY,sBACZ,EAAY,EAAgB,iBAAiB,EAAU,CAM7D,SAAgB,EAAuB,EAAoC,CACzE,IAAM,EAAS,EAA+B,EAAW,OAAO,EAAM,OAAO,CAAC,CACxE,EAAY,EAAkC,EAAW,UAAU,EAAM,OAAO,CAAC,CAEvF,OACE,EAAA,EAAA,MAAC,EAAD,CACE,MAAO,EAAU,QAAQ,CACzB,WAAY,EAAM,oBAFpB,EAIE,EAAA,EAAA,KAAC,MAAD,CAAK,UAAW,GAAG,EAAO,UAAU,mCAClC,EAAA,EAAA,MAAC,IAAD,CAAG,UAAU,0CAAb,EACE,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAO,oBAAsB,CAAA,CACxD,EAAU,MACT,EAAQ,sBACN,EAAY,EAAU,KAAK,UAAW,EAAO,KAAK,SAAS,CAC3D,EAAY,EAAU,KAAK,QAAS,EAAO,KAAK,SAAS,CAC1D,CAAA,GAGD,CAAA,EAEN,EAAA,EAAA,KAAC,KAAD,CAAI,UAAU,eAAK,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAO,WAAa,CAAA,CAAK,CAAA,EACxE,EAAA,EAAA,KAAC,IAAD,CAAG,UAAU,iBAAO,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAO,cAAgB,CAAA,CAAI,CAAA,EAE3E,EAAA,EAAA,MAAC,MAAD,CAAK,UAAU,gBAAf,EACE,EAAA,EAAA,KAAC,IAAD,CAAG,UAAU,qBAAW,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAO,gBAAkB,CAAA,CAAI,CAAA,EACjF,EAAA,EAAA,KAAC,EAAD,CACE,QAAS,CAAE,YAAa,EAAY,SAAU,OAAQ,EAAQ,SAAS,MAAO,CAC9E,UAAU,YACV,QAAS,EAAM,qBAEf,EAAA,EAAA,KAAC,OAAD,CAAA,UAAM,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAO,kBAAoB,CAAA,CAAO,CAAA,CAC5D,CAAA,SAEZ,EAAA,EAAA,KAAC,IAAD,CAAG,UAAU,iBAAO,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAO,eAAiB,CAAA,CAAI,CAAA,EAE5E,EAAA,EAAA,KAAC,EAAD,CAAA,UACE,EAAA,EAAA,KAAC,EAAa,OAAd,CACE,KAAM,EAAU,QAAQ,CACxB,QAAS,EAAM,WACf,QAAQ,OACR,CAAA,CACW,CAAA"}
1
+ {"version":3,"file":"C_jUsStb2.chunk.js","names":[],"sources":["../../src/apps/tv/views/tv-broadcast-content/tv-broadcast-content.module.scss","../../src/apps/tv/views/tv-broadcast-content/TvBroadcastContentView.tsx"],"sourcesContent":[":local {\n .infoAlert {\n background-color: $gray-100;\n }\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/react/index';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Popup } from 'libs/shared/components/popup/Popup';\nimport { PopupButtons } from 'libs/shared/components/popup/PopupButtons';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { PopupViewProps } from 'libs/shared/interfaces';\n\nimport { Actions } from 'shared/constants/ExchangeActions';\nimport { AppChannels } from 'shared/constants/ExchangeRadioChannels';\n\nimport { TvRequests } from 'apps/tv/flight-requests/TvRequests';\nimport { TvDateRange, TvRegion } from 'apps/tv/interfaces/models/TvRegion';\nimport { toLocalTime } from 'apps/tv/utils/toLocalTime';\nimport { TvUtils } from 'apps/tv/utils/TvUtils';\n\nimport styles from './tv-broadcast-content.module.scss';\n\nconst namespace = 'tv.broadcastContent';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface TvBroadcastContentViewProps extends PopupViewProps {\n region: string;\n}\n\nexport function TvBroadcastContentView(props: TvBroadcastContentViewProps) {\n const region = Flight.useBasicFetch<TvRegion>(TvRequests.region(props.region));\n const dateRange = Flight.useBasicFetch<TvDateRange>(TvRequests.dateRange(props.region));\n \n return (\n <Popup\n title={getPhrase('title')}\n closePopup={props.closePopup}\n >\n <div className={`${styles.infoAlert} rounded w-100 p-2 mb-4`}>\n <p className='d-inline fw-semibold mb-0 me-2'>\n <Text namespace={namespace} phrase='programsAvailable' />\n {dateRange.data &&\n TvUtils.getFormattedDateRange(\n toLocalTime(dateRange.data.startDate, region.data.timeZone),\n toLocalTime(dateRange.data.endDate, region.data.timeZone)\n )\n }\n </p>\n </div>\n\n <h2 className='h5'><Text namespace={namespace} phrase='subTitle' /></h2>\n <p className='mb-2'><Text namespace={namespace} phrase='description' /></p>\n\n <div className='mb-2'>\n <p className='d-inline'><Text namespace={namespace} phrase='missedProgram' /></p>\n <AppLink\n appLink={{ application: AppChannels.EXCHANGE, action: Actions.Exchange.INDEX }}\n className='text-info'\n onClick={props.closePopup}\n >\n <span><Text namespace={namespace} phrase='exchangeArchive' /></span>\n </AppLink>.\n </div>\n <p className='mb-3'><Text namespace={namespace} phrase='emailContent' /></p>\n\n <PopupButtons>\n <PopupButtons.Cancel\n text={getPhrase('close')}\n onClick={props.closePopup}\n variant='link'\n />\n </PopupButtons>\n </Popup>\n );\n}\n"],"mappings":"oZCqBM,EAAY,sBACZ,EAAY,EAAgB,iBAAiB,EAAU,CAM7D,SAAgB,EAAuB,EAAoC,CACzE,IAAM,EAAS,EAA+B,EAAW,OAAO,EAAM,OAAO,CAAC,CACxE,EAAY,EAAkC,EAAW,UAAU,EAAM,OAAO,CAAC,CAEvF,OACE,EAAA,EAAA,MAAC,EAAD,CACE,MAAO,EAAU,QAAQ,CACzB,WAAY,EAAM,oBAFpB,EAIE,EAAA,EAAA,KAAC,MAAD,CAAK,UAAW,GAAG,EAAO,UAAU,mCAClC,EAAA,EAAA,MAAC,IAAD,CAAG,UAAU,0CAAb,EACE,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAO,oBAAsB,CAAA,CACxD,EAAU,MACT,EAAQ,sBACN,EAAY,EAAU,KAAK,UAAW,EAAO,KAAK,SAAS,CAC3D,EAAY,EAAU,KAAK,QAAS,EAAO,KAAK,SAAS,CAC1D,CAAA,GAGD,CAAA,EAEN,EAAA,EAAA,KAAC,KAAD,CAAI,UAAU,eAAK,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAO,WAAa,CAAA,CAAK,CAAA,EACxE,EAAA,EAAA,KAAC,IAAD,CAAG,UAAU,iBAAO,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAO,cAAgB,CAAA,CAAI,CAAA,EAE3E,EAAA,EAAA,MAAC,MAAD,CAAK,UAAU,gBAAf,EACE,EAAA,EAAA,KAAC,IAAD,CAAG,UAAU,qBAAW,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAO,gBAAkB,CAAA,CAAI,CAAA,EACjF,EAAA,EAAA,KAAC,EAAD,CACE,QAAS,CAAE,YAAa,EAAY,SAAU,OAAQ,EAAQ,SAAS,MAAO,CAC9E,UAAU,YACV,QAAS,EAAM,qBAEf,EAAA,EAAA,KAAC,OAAD,CAAA,UAAM,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAO,kBAAoB,CAAA,CAAO,CAAA,CAC5D,CAAA,SAEZ,EAAA,EAAA,KAAC,IAAD,CAAG,UAAU,iBAAO,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAO,eAAiB,CAAA,CAAI,CAAA,EAE5E,EAAA,EAAA,KAAC,EAAD,CAAA,UACE,EAAA,EAAA,KAAC,EAAa,OAAd,CACE,KAAM,EAAU,QAAQ,CACxB,QAAS,EAAM,WACf,QAAQ,OACR,CAAA,CACW,CAAA"}
@@ -1,4 +1,4 @@
1
- import{C as e,D as t,St as n,mn as r,t as i}from"./CnnBLBPY.chunk.js";import{_ as a,g as o,t as s}from"./DW0w8_XN.chunk.js";import{T as c}from"./app-DDrsm5nt.js";import{n as l,t as u}from"./CXtVyCmH.chunk.js";var d={pillTabSelector:`_pillTabSelector_a6f6x_1`,tab:`_tab_a6f6x_4`,minWidth:`_minWidth_a6f6x_21`,radiusSmall:`_radiusSmall_a6f6x_24`,tabLink:`_tabLink_a6f6x_35`},f=r(t()),p=e();function m(e){return(0,p.jsxs)(p.Fragment,{children:[!!e.tab.svg&&(0,p.jsx)(`div`,{className:e.tab.name?`pe-1`:``,children:(0,p.jsx)(s,{svg:e.tab.svg,size:e.tab.svgSize})}),e.formatDisplayText?.(e.tab.name)??e.tab.name,typeof e.tab.count==`number`&&(0,p.jsx)(`div`,{className:`ps-2`,children:(0,p.jsx)(u,{type:l.Count,data:e.tab.count})})]})}function h(e){let{borderRadius:t=`lg`}=e,r=c();function s(e){e.analyticsData&&e.analyticsOptions&&i.logUserAction(e.analyticsData,e.analyticsOptions)}function l(e){e.active||!e.onSelect||(e.onSelect(),s(e))}function u(t){let r=t.target.value,i=e.tabs.find(e=>e.name===r);!i||i.active||(s(i),n.trigger(i.appLink))}let h=e.tabs.find(e=>e.active),g=e.forceSmallScreenDropdown||e.enableSmallScreenSupport&&(r.sm||r.xs);return(0,p.jsxs)(`nav`,{className:e.className??``,children:[g&&(0,p.jsx)(`select`,{className:`form-select`,onChange:u,value:h?.name,style:{minWidth:`150px`},children:e.tabs.map((t,n)=>t.hide?(0,p.jsx)(f.Fragment,{},n):(0,p.jsx)(`option`,{value:t.name,children:e.formatDisplayText?.(t.name)??t.name},n))}),!g&&(0,p.jsx)(`ul`,{className:`
1
+ import{C as e,D as t,St as n,mn as r,t as i}from"./CnnBLBPY.chunk.js";import{_ as a,g as o,t as s}from"./DW0w8_XN.chunk.js";import{T as c}from"./app-CgkYY4K0.js";import{n as l,t as u}from"./CXtVyCmH.chunk.js";var d={pillTabSelector:`_pillTabSelector_a6f6x_1`,tab:`_tab_a6f6x_4`,minWidth:`_minWidth_a6f6x_21`,radiusSmall:`_radiusSmall_a6f6x_24`,tabLink:`_tabLink_a6f6x_35`},f=r(t()),p=e();function m(e){return(0,p.jsxs)(p.Fragment,{children:[!!e.tab.svg&&(0,p.jsx)(`div`,{className:e.tab.name?`pe-1`:``,children:(0,p.jsx)(s,{svg:e.tab.svg,size:e.tab.svgSize})}),e.formatDisplayText?.(e.tab.name)??e.tab.name,typeof e.tab.count==`number`&&(0,p.jsx)(`div`,{className:`ps-2`,children:(0,p.jsx)(u,{type:l.Count,data:e.tab.count})})]})}function h(e){let{borderRadius:t=`lg`}=e,r=c();function s(e){e.analyticsData&&e.analyticsOptions&&i.logUserAction(e.analyticsData,e.analyticsOptions)}function l(e){e.active||!e.onSelect||(e.onSelect(),s(e))}function u(t){let r=t.target.value,i=e.tabs.find(e=>e.name===r);!i||i.active||(s(i),n.trigger(i.appLink))}let h=e.tabs.find(e=>e.active),g=e.forceSmallScreenDropdown||e.enableSmallScreenSupport&&(r.sm||r.xs);return(0,p.jsxs)(`nav`,{className:e.className??``,children:[g&&(0,p.jsx)(`select`,{className:`form-select`,onChange:u,value:h?.name,style:{minWidth:`150px`},children:e.tabs.map((t,n)=>t.hide?(0,p.jsx)(f.Fragment,{},n):(0,p.jsx)(`option`,{value:t.name,children:e.formatDisplayText?.(t.name)??t.name},n))}),!g&&(0,p.jsx)(`ul`,{className:`
2
2
  list-unstyled d-inline-block m-0 ${d.pillTabSelector}
3
3
  ${t?d.radiusSmall:``}
4
4
  ${e.listClassName}
@@ -12,4 +12,4 @@ import{C as e,D as t,St as n,mn as r,t as i}from"./CnnBLBPY.chunk.js";import{_ a
12
12
  cursor-pointer d-flex align-items-center justify-content-center
13
13
  text-decoration-none text-reset px-2 text-nowrap ${d.tabLink}
14
14
  `,onClick:()=>l(t),children:(0,p.jsx)(m,{tab:t,formatDisplayText:e.formatDisplayText})})},n))})]})}export{h as t};
15
- //# sourceMappingURL=BOvQpQ21.chunk.js.map
15
+ //# sourceMappingURL=CdNTKjPA.chunk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BOvQpQ21.chunk.js","names":[],"sources":["../../../../libs/shared/src/components/pill-tab-selector/pill-tab-selector.module.scss","../../../../libs/shared/src/components/pill-tab-selector/PillTabSelector.tsx"],"sourcesContent":[":local {\n $pill-tab-min-width: 7rem;\n\n .pillTabSelector {\n border-radius: $border-radius-lg;\n\n .tab {\n border-radius: 0;\n\n &:first-child {\n border-top-left-radius: $border-radius-lg;\n border-bottom-left-radius: $border-radius-lg;\n }\n\n &:last-child {\n border-top-right-radius: $border-radius-lg;\n border-bottom-right-radius: $border-radius-lg;\n }\n\n &:not(:first-child) {\n border-left: none;\n }\n\n &:not(:last-child) {\n border-right: none;\n }\n\n &.minWidth {\n min-width: $pill-tab-min-width;\n }\n }\n\n &.radiusSmall {\n border-radius: $border-radius;\n\n li {\n &:first-child {\n border-top-left-radius: $border-radius;\n border-bottom-left-radius: $border-radius;\n }\n \n &:last-child {\n border-top-right-radius: $border-radius;\n border-bottom-right-radius: $border-radius;\n }\n }\n }\n\n .tabLink {\n padding-top: $input-btn-padding-y;\n padding-bottom: $input-btn-padding-y;\n }\n }\n}","import React from 'react';\n\nimport { AppLinkHelper } from 'libs/common/backbone/core';\nimport { Core } from 'libs/common/core';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\nimport { AnalyticsOptions } from 'libs/analytics/interfaces';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Badge, BadgeType } from 'libs/shared/components/badges/Badge';\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\nimport { useBreakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { SvgIcon } from 'libs/shared/utils/SvgHelper';\n\nimport { SvgContainer, SvgContainerSize } from '../svg-container/SvgContainer';\n\nimport styles from './pill-tab-selector.module.scss';\n\ninterface TabContentsProps {\n tab: PillTab;\n formatDisplayText?: (name: string) => string;\n}\n\nfunction TabContents(props: TabContentsProps): JSX.Element {\n return (\n <>\n {!!props.tab.svg && (\n <div className={props.tab.name ? 'pe-1' : ''}>\n <SvgContainer svg={props.tab.svg} size={props.tab.svgSize} />\n </div>\n )}\n\n {props.formatDisplayText?.(props.tab.name) ?? props.tab.name}\n\n {typeof (props.tab.count) === 'number' && (\n <div className='ps-2'>\n <Badge type={BadgeType.Count} data={props.tab.count} />\n </div>\n )}\n </>\n );\n}\n\nexport interface PillTab {\n name: string;\n active: boolean;\n svg?: SvgIcon;\n svgSize?: SvgContainerSize;\n\n className?: string;\n\n appLink?: Core.AppLink;\n onSelect?: () => void;\n\n analyticsData?: HashObject;\n analyticsOptions?: AnalyticsOptions;\n\n count?: number;\n\n hide?: boolean;\n}\n\ninterface PillTabSelectorProps {\n tabs: PillTab[];\n listClassName?: string;\n className?: string;\n borderRadius?: 'sm' | 'lg';\n enableSmallScreenSupport?: boolean;\n formatDisplayText?: (name: string) => string;\n forceSmallScreenDropdown?: boolean;\n}\n\nexport function PillTabSelector(props: PillTabSelectorProps): JSX.Element {\n const { borderRadius = 'lg' } = props;\n \n const breakpoints = useBreakpoints();\n \n function logAnalytics(tab: PillTab): void {\n if (tab.analyticsData && tab.analyticsOptions)\n AnalyticsHelper.logUserAction(tab.analyticsData, tab.analyticsOptions);\n }\n \n function onSelectTab(tab: PillTab): void {\n if (tab.active || !tab.onSelect)\n return;\n\n tab.onSelect();\n\n logAnalytics(tab);\n }\n\n function onChangeSelect(event: React.ChangeEvent<HTMLSelectElement>): void {\n const value = event.target.value;\n const tab = props.tabs.find(tab => tab.name === value);\n if (!tab || tab.active)\n return;\n \n logAnalytics(tab);\n AppLinkHelper.trigger(tab.appLink);\n }\n\n const selectedTab = props.tabs.find(tab => tab.active);\n const showSelectDropdown = props.forceSmallScreenDropdown\n || (props.enableSmallScreenSupport && (breakpoints.sm || breakpoints.xs));\n\n return (\n <nav className={props.className ?? ''}>\n {showSelectDropdown && (\n <select className='form-select' onChange={onChangeSelect} value={selectedTab?.name} style={{ minWidth: '150px' }}>\n {props.tabs.map((tab, index) => {\n if (tab.hide)\n return <React.Fragment key={index}/>;\n\n return (\n <option\n key={index}\n value={tab.name}>\n {props.formatDisplayText?.(tab.name) ?? tab.name}\n </option>\n );\n })}\n </select>\n )}\n \n {!showSelectDropdown && (\n <ul className={`\n list-unstyled d-inline-block m-0 ${styles.pillTabSelector}\n ${borderRadius ? styles.radiusSmall : ''}\n ${props.listClassName}\n `}>\n {props.tabs.map((tab, index) => {\n if (tab.hide)\n return <React.Fragment key={index}/>;\n \n return (\n <li\n className={`\n p-0 ${styles.tab} ${tab.active ? 'btn btn-dark' : 'btn btn-outline-dark'}\n ${tab.name ? styles.minWidth : ''} ${tab.className}\n `}\n key={index}\n >\n {tab.appLink ? (\n <AppLink\n appLink={tab.appLink}\n analyticsData={tab.analyticsData}\n analyticsOptions={tab.analyticsOptions}\n className={`\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset px-2 text-nowrap ${styles.tabLink}\n `}\n >\n <TabContents tab={tab} formatDisplayText={props.formatDisplayText} />\n </AppLink>\n ) : (\n <DivButton\n className={`\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset px-2 text-nowrap ${styles.tabLink}\n `}\n onClick={() => onSelectTab(tab)}\n >\n <TabContents tab={tab} formatDisplayText={props.formatDisplayText} />\n </DivButton>\n )}\n </li>\n );\n })}\n </ul>\n )}\n </nav>\n );\n}\n"],"mappings":"oYCwBA,SAAS,EAAY,EAAsC,CACzD,OACE,EAAA,EAAA,MAAA,EAAA,SAAA,CAAA,SAAA,CACG,CAAC,CAAC,EAAM,IAAI,MACX,EAAA,EAAA,KAAC,MAAD,CAAK,UAAW,EAAM,IAAI,KAAO,OAAS,aACxC,EAAA,EAAA,KAAC,EAAD,CAAc,IAAK,EAAM,IAAI,IAAK,KAAM,EAAM,IAAI,QAAW,CAAA,CACzD,CAAA,CAGP,EAAM,oBAAoB,EAAM,IAAI,KAAK,EAAI,EAAM,IAAI,KAEvD,OAAQ,EAAM,IAAI,OAAW,WAC5B,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,iBACb,EAAA,EAAA,KAAC,EAAD,CAAO,KAAM,EAAU,MAAO,KAAM,EAAM,IAAI,MAAS,CAAA,CACnD,CAAA,CAEP,CAAA,CAAA,CAiCP,SAAgB,EAAgB,EAA0C,CACxE,GAAM,CAAE,eAAe,MAAS,EAE1B,EAAc,GAAgB,CAEpC,SAAS,EAAa,EAAoB,CACpC,EAAI,eAAiB,EAAI,kBAC3B,EAAgB,cAAc,EAAI,cAAe,EAAI,iBAAiB,CAG1E,SAAS,EAAY,EAAoB,CACnC,EAAI,QAAU,CAAC,EAAI,WAGvB,EAAI,UAAU,CAEd,EAAa,EAAI,EAGnB,SAAS,EAAe,EAAmD,CACzE,IAAM,EAAQ,EAAM,OAAO,MACrB,EAAM,EAAM,KAAK,KAAK,GAAO,EAAI,OAAS,EAAM,CAClD,CAAC,GAAO,EAAI,SAGhB,EAAa,EAAI,CACjB,EAAc,QAAQ,EAAI,QAAQ,EAGpC,IAAM,EAAc,EAAM,KAAK,KAAK,GAAO,EAAI,OAAO,CAChD,EAAqB,EAAM,0BAC3B,EAAM,2BAA6B,EAAY,IAAM,EAAY,IAEvE,OACE,EAAA,EAAA,MAAC,MAAD,CAAK,UAAW,EAAM,WAAa,YAAnC,CACG,IACC,EAAA,EAAA,KAAC,SAAD,CAAQ,UAAU,cAAc,SAAU,EAAgB,MAAO,GAAa,KAAM,MAAO,CAAE,SAAU,QAAS,UAC7G,EAAM,KAAK,KAAK,EAAK,IAChB,EAAI,MACC,EAAA,EAAA,KAAA,EAAO,SAAP,EAA6B,CAAR,EAAQ,EAGpC,EAAA,EAAA,KAAC,SAAD,CAEE,MAAO,EAAI,cACV,EAAM,oBAAoB,EAAI,KAAK,EAAI,EAAI,KACrC,CAHF,EAGE,EAGN,CAAA,CAGV,CAAC,IACA,EAAA,EAAA,KAAC,KAAD,CAAI,UAAW;6CACsB,EAAO,gBAAA;YACxC,EAAe,EAAO,YAAc,GAAA;YACpC,EAAM,cAAA;mBAEP,EAAM,KAAK,KAAK,EAAK,IAChB,EAAI,MACC,EAAA,EAAA,KAAA,EAAO,SAAP,EAA6B,CAAR,EAAQ,EAGpC,EAAA,EAAA,KAAC,KAAD,CACE,UAAW;sBACL,EAAO,IAAI,GAAG,EAAI,OAAS,eAAiB,uBAAA;kBAChD,EAAI,KAAO,EAAO,SAAW,GAAG,GAAG,EAAI,UAAA;yBAIxC,EAAI,SACH,EAAA,EAAA,KAAC,EAAD,CACE,QAAS,EAAI,QACb,cAAe,EAAI,cACnB,iBAAkB,EAAI,iBACtB,UAAW;;uEAEwC,EAAO,QAAA;8BAG1D,EAAA,EAAA,KAAC,EAAD,CAAkB,MAAK,kBAAmB,EAAM,kBAAqB,CAAA,CAC7D,CAAA,EAEV,EAAA,EAAA,KAAC,EAAD,CACE,UAAW;;uEAEwC,EAAO,QAAA;oBAE1D,YAAe,EAAY,EAAI,WAE/B,EAAA,EAAA,KAAC,EAAD,CAAkB,MAAK,kBAAmB,EAAM,kBAAqB,CAAA,CAC3D,CAAA,CAEX,CAzBE,EAyBF,EAGN,CAAA,CAAA"}
1
+ {"version":3,"file":"CdNTKjPA.chunk.js","names":[],"sources":["../../../../libs/shared/src/components/pill-tab-selector/pill-tab-selector.module.scss","../../../../libs/shared/src/components/pill-tab-selector/PillTabSelector.tsx"],"sourcesContent":[":local {\n $pill-tab-min-width: 7rem;\n\n .pillTabSelector {\n border-radius: $border-radius-lg;\n\n .tab {\n border-radius: 0;\n\n &:first-child {\n border-top-left-radius: $border-radius-lg;\n border-bottom-left-radius: $border-radius-lg;\n }\n\n &:last-child {\n border-top-right-radius: $border-radius-lg;\n border-bottom-right-radius: $border-radius-lg;\n }\n\n &:not(:first-child) {\n border-left: none;\n }\n\n &:not(:last-child) {\n border-right: none;\n }\n\n &.minWidth {\n min-width: $pill-tab-min-width;\n }\n }\n\n &.radiusSmall {\n border-radius: $border-radius;\n\n li {\n &:first-child {\n border-top-left-radius: $border-radius;\n border-bottom-left-radius: $border-radius;\n }\n \n &:last-child {\n border-top-right-radius: $border-radius;\n border-bottom-right-radius: $border-radius;\n }\n }\n }\n\n .tabLink {\n padding-top: $input-btn-padding-y;\n padding-bottom: $input-btn-padding-y;\n }\n }\n}","import React from 'react';\n\nimport { AppLinkHelper } from 'libs/common/backbone/core';\nimport { Core } from 'libs/common/core';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\nimport { AnalyticsOptions } from 'libs/analytics/interfaces';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Badge, BadgeType } from 'libs/shared/components/badges/Badge';\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\nimport { useBreakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { SvgIcon } from 'libs/shared/utils/SvgHelper';\n\nimport { SvgContainer, SvgContainerSize } from '../svg-container/SvgContainer';\n\nimport styles from './pill-tab-selector.module.scss';\n\ninterface TabContentsProps {\n tab: PillTab;\n formatDisplayText?: (name: string) => string;\n}\n\nfunction TabContents(props: TabContentsProps): JSX.Element {\n return (\n <>\n {!!props.tab.svg && (\n <div className={props.tab.name ? 'pe-1' : ''}>\n <SvgContainer svg={props.tab.svg} size={props.tab.svgSize} />\n </div>\n )}\n\n {props.formatDisplayText?.(props.tab.name) ?? props.tab.name}\n\n {typeof (props.tab.count) === 'number' && (\n <div className='ps-2'>\n <Badge type={BadgeType.Count} data={props.tab.count} />\n </div>\n )}\n </>\n );\n}\n\nexport interface PillTab {\n name: string;\n active: boolean;\n svg?: SvgIcon;\n svgSize?: SvgContainerSize;\n\n className?: string;\n\n appLink?: Core.AppLink;\n onSelect?: () => void;\n\n analyticsData?: HashObject;\n analyticsOptions?: AnalyticsOptions;\n\n count?: number;\n\n hide?: boolean;\n}\n\ninterface PillTabSelectorProps {\n tabs: PillTab[];\n listClassName?: string;\n className?: string;\n borderRadius?: 'sm' | 'lg';\n enableSmallScreenSupport?: boolean;\n formatDisplayText?: (name: string) => string;\n forceSmallScreenDropdown?: boolean;\n}\n\nexport function PillTabSelector(props: PillTabSelectorProps): JSX.Element {\n const { borderRadius = 'lg' } = props;\n \n const breakpoints = useBreakpoints();\n \n function logAnalytics(tab: PillTab): void {\n if (tab.analyticsData && tab.analyticsOptions)\n AnalyticsHelper.logUserAction(tab.analyticsData, tab.analyticsOptions);\n }\n \n function onSelectTab(tab: PillTab): void {\n if (tab.active || !tab.onSelect)\n return;\n\n tab.onSelect();\n\n logAnalytics(tab);\n }\n\n function onChangeSelect(event: React.ChangeEvent<HTMLSelectElement>): void {\n const value = event.target.value;\n const tab = props.tabs.find(tab => tab.name === value);\n if (!tab || tab.active)\n return;\n \n logAnalytics(tab);\n AppLinkHelper.trigger(tab.appLink);\n }\n\n const selectedTab = props.tabs.find(tab => tab.active);\n const showSelectDropdown = props.forceSmallScreenDropdown\n || (props.enableSmallScreenSupport && (breakpoints.sm || breakpoints.xs));\n\n return (\n <nav className={props.className ?? ''}>\n {showSelectDropdown && (\n <select className='form-select' onChange={onChangeSelect} value={selectedTab?.name} style={{ minWidth: '150px' }}>\n {props.tabs.map((tab, index) => {\n if (tab.hide)\n return <React.Fragment key={index}/>;\n\n return (\n <option\n key={index}\n value={tab.name}>\n {props.formatDisplayText?.(tab.name) ?? tab.name}\n </option>\n );\n })}\n </select>\n )}\n \n {!showSelectDropdown && (\n <ul className={`\n list-unstyled d-inline-block m-0 ${styles.pillTabSelector}\n ${borderRadius ? styles.radiusSmall : ''}\n ${props.listClassName}\n `}>\n {props.tabs.map((tab, index) => {\n if (tab.hide)\n return <React.Fragment key={index}/>;\n \n return (\n <li\n className={`\n p-0 ${styles.tab} ${tab.active ? 'btn btn-dark' : 'btn btn-outline-dark'}\n ${tab.name ? styles.minWidth : ''} ${tab.className}\n `}\n key={index}\n >\n {tab.appLink ? (\n <AppLink\n appLink={tab.appLink}\n analyticsData={tab.analyticsData}\n analyticsOptions={tab.analyticsOptions}\n className={`\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset px-2 text-nowrap ${styles.tabLink}\n `}\n >\n <TabContents tab={tab} formatDisplayText={props.formatDisplayText} />\n </AppLink>\n ) : (\n <DivButton\n className={`\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset px-2 text-nowrap ${styles.tabLink}\n `}\n onClick={() => onSelectTab(tab)}\n >\n <TabContents tab={tab} formatDisplayText={props.formatDisplayText} />\n </DivButton>\n )}\n </li>\n );\n })}\n </ul>\n )}\n </nav>\n );\n}\n"],"mappings":"oYCwBA,SAAS,EAAY,EAAsC,CACzD,OACE,EAAA,EAAA,MAAA,EAAA,SAAA,CAAA,SAAA,CACG,CAAC,CAAC,EAAM,IAAI,MACX,EAAA,EAAA,KAAC,MAAD,CAAK,UAAW,EAAM,IAAI,KAAO,OAAS,aACxC,EAAA,EAAA,KAAC,EAAD,CAAc,IAAK,EAAM,IAAI,IAAK,KAAM,EAAM,IAAI,QAAW,CAAA,CACzD,CAAA,CAGP,EAAM,oBAAoB,EAAM,IAAI,KAAK,EAAI,EAAM,IAAI,KAEvD,OAAQ,EAAM,IAAI,OAAW,WAC5B,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,iBACb,EAAA,EAAA,KAAC,EAAD,CAAO,KAAM,EAAU,MAAO,KAAM,EAAM,IAAI,MAAS,CAAA,CACnD,CAAA,CAEP,CAAA,CAAA,CAiCP,SAAgB,EAAgB,EAA0C,CACxE,GAAM,CAAE,eAAe,MAAS,EAE1B,EAAc,GAAgB,CAEpC,SAAS,EAAa,EAAoB,CACpC,EAAI,eAAiB,EAAI,kBAC3B,EAAgB,cAAc,EAAI,cAAe,EAAI,iBAAiB,CAG1E,SAAS,EAAY,EAAoB,CACnC,EAAI,QAAU,CAAC,EAAI,WAGvB,EAAI,UAAU,CAEd,EAAa,EAAI,EAGnB,SAAS,EAAe,EAAmD,CACzE,IAAM,EAAQ,EAAM,OAAO,MACrB,EAAM,EAAM,KAAK,KAAK,GAAO,EAAI,OAAS,EAAM,CAClD,CAAC,GAAO,EAAI,SAGhB,EAAa,EAAI,CACjB,EAAc,QAAQ,EAAI,QAAQ,EAGpC,IAAM,EAAc,EAAM,KAAK,KAAK,GAAO,EAAI,OAAO,CAChD,EAAqB,EAAM,0BAC3B,EAAM,2BAA6B,EAAY,IAAM,EAAY,IAEvE,OACE,EAAA,EAAA,MAAC,MAAD,CAAK,UAAW,EAAM,WAAa,YAAnC,CACG,IACC,EAAA,EAAA,KAAC,SAAD,CAAQ,UAAU,cAAc,SAAU,EAAgB,MAAO,GAAa,KAAM,MAAO,CAAE,SAAU,QAAS,UAC7G,EAAM,KAAK,KAAK,EAAK,IAChB,EAAI,MACC,EAAA,EAAA,KAAA,EAAO,SAAP,EAA6B,CAAR,EAAQ,EAGpC,EAAA,EAAA,KAAC,SAAD,CAEE,MAAO,EAAI,cACV,EAAM,oBAAoB,EAAI,KAAK,EAAI,EAAI,KACrC,CAHF,EAGE,EAGN,CAAA,CAGV,CAAC,IACA,EAAA,EAAA,KAAC,KAAD,CAAI,UAAW;6CACsB,EAAO,gBAAA;YACxC,EAAe,EAAO,YAAc,GAAA;YACpC,EAAM,cAAA;mBAEP,EAAM,KAAK,KAAK,EAAK,IAChB,EAAI,MACC,EAAA,EAAA,KAAA,EAAO,SAAP,EAA6B,CAAR,EAAQ,EAGpC,EAAA,EAAA,KAAC,KAAD,CACE,UAAW;sBACL,EAAO,IAAI,GAAG,EAAI,OAAS,eAAiB,uBAAA;kBAChD,EAAI,KAAO,EAAO,SAAW,GAAG,GAAG,EAAI,UAAA;yBAIxC,EAAI,SACH,EAAA,EAAA,KAAC,EAAD,CACE,QAAS,EAAI,QACb,cAAe,EAAI,cACnB,iBAAkB,EAAI,iBACtB,UAAW;;uEAEwC,EAAO,QAAA;8BAG1D,EAAA,EAAA,KAAC,EAAD,CAAkB,MAAK,kBAAmB,EAAM,kBAAqB,CAAA,CAC7D,CAAA,EAEV,EAAA,EAAA,KAAC,EAAD,CACE,UAAW;;uEAEwC,EAAO,QAAA;oBAE1D,YAAe,EAAY,EAAI,WAE/B,EAAA,EAAA,KAAC,EAAD,CAAkB,MAAK,kBAAmB,EAAM,kBAAqB,CAAA,CAC3D,CAAA,CAEX,CAzBE,EAyBF,EAGN,CAAA,CAAA"}
@@ -1,2 +1,2 @@
1
- import{D as e,mn as t}from"./CnnBLBPY.chunk.js";import{t as n}from"./CeHHO1Hv.chunk.js";var r=t(e());function i(e){return e.map(e=>e.statusCode).join(`:`)}function a(e,t,a){let o=Array.isArray(e)?e:[e];(0,r.useEffect)(()=>{o.forEach(e=>{n(e.statusCode,t,a)})},[i(o),t,a])}export{a as t};
2
- //# sourceMappingURL=C7OCN_w_.chunk.js.map
1
+ import{D as e,mn as t}from"./CnnBLBPY.chunk.js";import{t as n}from"./BxLgTmMl.chunk.js";var r=t(e());function i(e){return e.map(e=>e.statusCode).join(`:`)}function a(e,t,a){let o=Array.isArray(e)?e:[e];(0,r.useEffect)(()=>{o.forEach(e=>{n(e.statusCode,t,a)})},[i(o),t,a])}export{a as t};
2
+ //# sourceMappingURL=ChDwbV8F.chunk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"C7OCN_w_.chunk.js","names":[],"sources":["../../../../libs/shared/src/hooks/UseHandleObjectError.ts"],"sourcesContent":["import { useEffect } from 'react';\n\nimport { Flight } from 'libs/common/flight';\n\nimport { handleHttpError, HttpErrorMap, IgnoreHttpErrorMap } from 'libs/shared/errors/handlers/HttpErrorHandlers';\n\nfunction generateCacheKey(flightObjs: Array<Flight.Response<any>>): string {\n return flightObjs.map(obj => obj.statusCode).join(':');\n}\n\n// TODO: Change this to just `useHandleHttpError` and only accept a status code.\nexport function useHandleObjectError(\n _flightObjs: Flight.Response<any> | Array<Flight.Response<any>>,\n customErrors?: HttpErrorMap,\n ignoreErrors?: IgnoreHttpErrorMap\n): void {\n const flightObjs = Array.isArray(_flightObjs) ? _flightObjs : [_flightObjs];\n\n useEffect(() => {\n flightObjs.forEach(obj => {\n handleHttpError(obj.statusCode, customErrors, ignoreErrors);\n });\n }, [ generateCacheKey(flightObjs), customErrors, ignoreErrors ]);\n}\n"],"mappings":"qGAMA,SAAS,EAAiB,EAAiD,CACzE,OAAO,EAAW,IAAI,GAAO,EAAI,WAAW,CAAC,KAAK,IAAI,CAIxD,SAAgB,EACd,EACA,EACA,EACM,CACN,IAAM,EAAa,MAAM,QAAQ,EAAY,CAAG,EAAc,CAAC,EAAY,EAE3E,EAAA,EAAA,eAAgB,CACd,EAAW,QAAQ,GAAO,CACxB,EAAgB,EAAI,WAAY,EAAc,EAAa,EAC3D,EACD,CAAE,EAAiB,EAAW,CAAE,EAAc,EAAc,CAAC"}
1
+ {"version":3,"file":"ChDwbV8F.chunk.js","names":[],"sources":["../../../../libs/shared/src/hooks/UseHandleObjectError.ts"],"sourcesContent":["import { useEffect } from 'react';\n\nimport { Flight } from 'libs/common/flight';\n\nimport { handleHttpError, HttpErrorMap, IgnoreHttpErrorMap } from 'libs/shared/errors/handlers/HttpErrorHandlers';\n\nfunction generateCacheKey(flightObjs: Array<Flight.Response<any>>): string {\n return flightObjs.map(obj => obj.statusCode).join(':');\n}\n\n// TODO: Change this to just `useHandleHttpError` and only accept a status code.\nexport function useHandleObjectError(\n _flightObjs: Flight.Response<any> | Array<Flight.Response<any>>,\n customErrors?: HttpErrorMap,\n ignoreErrors?: IgnoreHttpErrorMap\n): void {\n const flightObjs = Array.isArray(_flightObjs) ? _flightObjs : [_flightObjs];\n\n useEffect(() => {\n flightObjs.forEach(obj => {\n handleHttpError(obj.statusCode, customErrors, ignoreErrors);\n });\n }, [ generateCacheKey(flightObjs), customErrors, ignoreErrors ]);\n}\n"],"mappings":"qGAMA,SAAS,EAAiB,EAAiD,CACzE,OAAO,EAAW,IAAI,GAAO,EAAI,WAAW,CAAC,KAAK,IAAI,CAIxD,SAAgB,EACd,EACA,EACA,EACM,CACN,IAAM,EAAa,MAAM,QAAQ,EAAY,CAAG,EAAc,CAAC,EAAY,EAE3E,EAAA,EAAA,eAAgB,CACd,EAAW,QAAQ,GAAO,CACxB,EAAgB,EAAI,WAAY,EAAc,EAAa,EAC3D,EACD,CAAE,EAAiB,EAAW,CAAE,EAAc,EAAc,CAAC"}