@clickview/exchange 0.62.0-rc.1 → 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.
- package/dist/.vite/manifest.json +542 -542
- package/dist/bundles.json +1 -1
- package/dist/en.json +1 -1
- package/dist/scripts/{BPYdRA7H.chunk.js → 0uwnPAi2.chunk.js} +2 -2
- package/dist/scripts/{BPYdRA7H.chunk.js.map → 0uwnPAi2.chunk.js.map} +1 -1
- package/dist/scripts/{eUKFc6dK.chunk.js → 6f-CHYL3.chunk.js} +2 -2
- package/dist/scripts/{eUKFc6dK.chunk.js.map → 6f-CHYL3.chunk.js.map} +1 -1
- package/dist/scripts/{BS8sYAAh.chunk.js → B09qwiFG.chunk.js} +2 -2
- package/dist/scripts/{BS8sYAAh.chunk.js.map → B09qwiFG.chunk.js.map} +1 -1
- package/dist/scripts/{BbrEvwAi2.chunk.js → B0uOvqjG2.chunk.js} +2 -2
- package/dist/scripts/{BbrEvwAi2.chunk.js.map → B0uOvqjG2.chunk.js.map} +1 -1
- package/dist/scripts/{EIJf9JbR2.chunk.js → B8BobN3r2.chunk.js} +2 -2
- package/dist/scripts/{EIJf9JbR2.chunk.js.map → B8BobN3r2.chunk.js.map} +1 -1
- package/dist/scripts/{Ca_-2JTE2.chunk.js → B8wHzPHI2.chunk.js} +2 -2
- package/dist/scripts/{Ca_-2JTE2.chunk.js.map → B8wHzPHI2.chunk.js.map} +1 -1
- package/dist/scripts/{DkB0qBxI.chunk.js → BAIdKirt.chunk.js} +2 -2
- package/dist/scripts/{DkB0qBxI.chunk.js.map → BAIdKirt.chunk.js.map} +1 -1
- package/dist/scripts/{Bi8itw8v2.chunk.js → BAwP70HI2.chunk.js} +2 -2
- package/dist/scripts/{Bi8itw8v2.chunk.js.map → BAwP70HI2.chunk.js.map} +1 -1
- package/dist/scripts/{BHbt9wzx.chunk.js → BEv09vqz.chunk.js} +2 -2
- package/dist/scripts/{BHbt9wzx.chunk.js.map → BEv09vqz.chunk.js.map} +1 -1
- package/dist/scripts/{8pXw5z942.chunk.js → BLs3APIS2.chunk.js} +2 -2
- package/dist/scripts/{8pXw5z942.chunk.js.map → BLs3APIS2.chunk.js.map} +1 -1
- package/dist/scripts/{DuPL-nK72.chunk.js → BP0LMV9S2.chunk.js} +2 -2
- package/dist/scripts/{DuPL-nK72.chunk.js.map → BP0LMV9S2.chunk.js.map} +1 -1
- package/dist/scripts/{EO2xPuAQ.chunk.js → BPttZx0-.chunk.js} +2 -2
- package/dist/scripts/{EO2xPuAQ.chunk.js.map → BPttZx0-.chunk.js.map} +1 -1
- package/dist/scripts/{NtrZI2Ef.chunk.js → BQk9Mhlr.chunk.js} +2 -2
- package/dist/scripts/{NtrZI2Ef.chunk.js.map → BQk9Mhlr.chunk.js.map} +1 -1
- package/dist/scripts/{amjwjus3.chunk.js → BXIfsdxg.chunk.js} +2 -2
- package/dist/scripts/{amjwjus3.chunk.js.map → BXIfsdxg.chunk.js.map} +1 -1
- package/dist/scripts/{DKz4jhnr2.chunk.js → B_P4D3Hf2.chunk.js} +2 -2
- package/dist/scripts/{DKz4jhnr2.chunk.js.map → B_P4D3Hf2.chunk.js.map} +1 -1
- package/dist/scripts/{DfOgl-0-2.chunk.js → BgskDBpT2.chunk.js} +2 -2
- package/dist/scripts/{DfOgl-0-2.chunk.js.map → BgskDBpT2.chunk.js.map} +1 -1
- package/dist/scripts/{BsLLiG1-.chunk.js → BhOZYAZn.chunk.js} +2 -2
- package/dist/scripts/{BsLLiG1-.chunk.js.map → BhOZYAZn.chunk.js.map} +1 -1
- package/dist/scripts/{BaSi1pig.chunk.js → Bn9ROglk.chunk.js} +2 -2
- package/dist/scripts/{BaSi1pig.chunk.js.map → Bn9ROglk.chunk.js.map} +1 -1
- package/dist/scripts/{SDRXIwM22.chunk.js → Bo8PhXY12.chunk.js} +3 -3
- package/dist/scripts/{SDRXIwM22.chunk.js.map → Bo8PhXY12.chunk.js.map} +1 -1
- package/dist/scripts/{C3Hw2TpW2.chunk.js → BrVyRSUS2.chunk.js} +2 -2
- package/dist/scripts/{C3Hw2TpW2.chunk.js.map → BrVyRSUS2.chunk.js.map} +1 -1
- package/dist/scripts/{DmVXt6_V.chunk.js → BxLgTmMl.chunk.js} +2 -2
- package/dist/scripts/{DmVXt6_V.chunk.js.map → BxLgTmMl.chunk.js.map} +1 -1
- package/dist/scripts/{DsHiClyc2.chunk.js → Bxsu4S752.chunk.js} +2 -2
- package/dist/scripts/{DsHiClyc2.chunk.js.map → Bxsu4S752.chunk.js.map} +1 -1
- package/dist/scripts/{MYu2AEsL.chunk.js → C-PORBUs.chunk.js} +2 -2
- package/dist/scripts/{MYu2AEsL.chunk.js.map → C-PORBUs.chunk.js.map} +1 -1
- package/dist/scripts/{CxUrOnxW2.chunk.js → C1StI3Bl2.chunk.js} +2 -2
- package/dist/scripts/{CxUrOnxW2.chunk.js.map → C1StI3Bl2.chunk.js.map} +1 -1
- package/dist/scripts/{CKL4ViMC.chunk.js → C6Hr-vqw.chunk.js} +2 -2
- package/dist/scripts/{CKL4ViMC.chunk.js.map → C6Hr-vqw.chunk.js.map} +1 -1
- package/dist/scripts/{Bue5_bLM.chunk.js → CBnNAkzx.chunk.js} +2 -2
- package/dist/scripts/{Bue5_bLM.chunk.js.map → CBnNAkzx.chunk.js.map} +1 -1
- package/dist/scripts/{C03mMZ4k.chunk.js → CFkqPGiT.chunk.js} +2 -2
- package/dist/scripts/{C03mMZ4k.chunk.js.map → CFkqPGiT.chunk.js.map} +1 -1
- package/dist/scripts/{vvCGyl_q.chunk.js → CKD2j1rw.chunk.js} +2 -2
- package/dist/scripts/{vvCGyl_q.chunk.js.map → CKD2j1rw.chunk.js.map} +1 -1
- package/dist/scripts/{DqM6hYTJ2.chunk.js → CSKzCsLv2.chunk.js} +2 -2
- package/dist/scripts/{DqM6hYTJ2.chunk.js.map → CSKzCsLv2.chunk.js.map} +1 -1
- package/dist/scripts/{B7m3cCi42.chunk.js → CZgaUoHE2.chunk.js} +2 -2
- package/dist/scripts/{B7m3cCi42.chunk.js.map → CZgaUoHE2.chunk.js.map} +1 -1
- package/dist/scripts/{CL9SkODG.chunk.js → C_7tv1r9.chunk.js} +2 -2
- package/dist/scripts/{CL9SkODG.chunk.js.map → C_7tv1r9.chunk.js.map} +1 -1
- package/dist/scripts/{CKZJ2qae2.chunk.js → C_jUsStb2.chunk.js} +2 -2
- package/dist/scripts/{CKZJ2qae2.chunk.js.map → C_jUsStb2.chunk.js.map} +1 -1
- package/dist/scripts/{DSZkTUVU.chunk.js → CdNTKjPA.chunk.js} +2 -2
- package/dist/scripts/{DSZkTUVU.chunk.js.map → CdNTKjPA.chunk.js.map} +1 -1
- package/dist/scripts/{CfNYdg0m.chunk.js → ChDwbV8F.chunk.js} +2 -2
- package/dist/scripts/{CfNYdg0m.chunk.js.map → ChDwbV8F.chunk.js.map} +1 -1
- package/dist/scripts/{pOL5_XNC.chunk.js → Cq-TpkxJ.chunk.js} +2 -2
- package/dist/scripts/{pOL5_XNC.chunk.js.map → Cq-TpkxJ.chunk.js.map} +1 -1
- package/dist/scripts/{F1LOVRO_.chunk.js → CrCX606H.chunk.js} +2 -2
- package/dist/scripts/{F1LOVRO_.chunk.js.map → CrCX606H.chunk.js.map} +1 -1
- package/dist/scripts/{BtdygabL2.chunk.js → CrDpB82d2.chunk.js} +2 -2
- package/dist/scripts/{BtdygabL2.chunk.js.map → CrDpB82d2.chunk.js.map} +1 -1
- package/dist/scripts/{BvamDkjt2.chunk.js → Czivka682.chunk.js} +2 -2
- package/dist/scripts/{BvamDkjt2.chunk.js.map → Czivka682.chunk.js.map} +1 -1
- package/dist/scripts/{sViLex0Q.chunk.js → DEP_Z-S0.chunk.js} +2 -2
- package/dist/scripts/{sViLex0Q.chunk.js.map → DEP_Z-S0.chunk.js.map} +1 -1
- package/dist/scripts/{1iKkdpYv.chunk.js → DQBoqkL7.chunk.js} +2 -2
- package/dist/scripts/{1iKkdpYv.chunk.js.map → DQBoqkL7.chunk.js.map} +1 -1
- package/dist/scripts/{C2AXrtJf.chunk.js → DeXP2wHV.chunk.js} +2 -2
- package/dist/scripts/{C2AXrtJf.chunk.js.map → DeXP2wHV.chunk.js.map} +1 -1
- package/dist/scripts/{U0UyGd9c2.chunk.js → Df82DFJ62.chunk.js} +2 -2
- package/dist/scripts/{U0UyGd9c2.chunk.js.map → Df82DFJ62.chunk.js.map} +1 -1
- package/dist/scripts/{BlOKamx72.chunk.js → DgrEIxhT2.chunk.js} +2 -2
- package/dist/scripts/{BlOKamx72.chunk.js.map → DgrEIxhT2.chunk.js.map} +1 -1
- package/dist/scripts/{OBYDGOgI2.chunk.js → DhT0tpZm2.chunk.js} +2 -2
- package/dist/scripts/{OBYDGOgI2.chunk.js.map → DhT0tpZm2.chunk.js.map} +1 -1
- package/dist/scripts/{Ct_4zyE3.chunk.js → Dhe09-jE.chunk.js} +2 -2
- package/dist/scripts/{Ct_4zyE3.chunk.js.map → Dhe09-jE.chunk.js.map} +1 -1
- package/dist/scripts/{xEGWFFpD2.chunk.js → DhtgaF-y2.chunk.js} +2 -2
- package/dist/scripts/{xEGWFFpD2.chunk.js.map → DhtgaF-y2.chunk.js.map} +1 -1
- package/dist/scripts/{nMyWveQA2.chunk.js → Div1wl-R2.chunk.js} +2 -2
- package/dist/scripts/{nMyWveQA2.chunk.js.map → Div1wl-R2.chunk.js.map} +1 -1
- package/dist/scripts/{DG6L7zHU2.chunk.js → DjuXXgD-2.chunk.js} +2 -2
- package/dist/scripts/{DG6L7zHU2.chunk.js.map → DjuXXgD-2.chunk.js.map} +1 -1
- package/dist/scripts/{BAN6QE-X.chunk.js → Dkazht4Q.chunk.js} +2 -2
- package/dist/scripts/{BAN6QE-X.chunk.js.map → Dkazht4Q.chunk.js.map} +1 -1
- package/dist/scripts/{D_k-Kl3-2.chunk.js → DmmZ2XbB2.chunk.js} +2 -2
- package/dist/scripts/{D_k-Kl3-2.chunk.js.map → DmmZ2XbB2.chunk.js.map} +1 -1
- package/dist/scripts/{l7UAnIb0.chunk.js → Dr35AMvf.chunk.js} +2 -2
- package/dist/scripts/{l7UAnIb0.chunk.js.map → Dr35AMvf.chunk.js.map} +1 -1
- package/dist/scripts/{CK_CN_mA.chunk.js → HgLS_KfH.chunk.js} +2 -2
- package/dist/scripts/{CK_CN_mA.chunk.js.map → HgLS_KfH.chunk.js.map} +1 -1
- package/dist/scripts/{Pixwk-h-.chunk.js → W8Q7Z6fd.chunk.js} +2 -2
- package/dist/scripts/{Pixwk-h-.chunk.js.map → W8Q7Z6fd.chunk.js.map} +1 -1
- package/dist/scripts/{BzJLc19T2.chunk.js → XWykPl9h2.chunk.js} +2 -2
- package/dist/scripts/{BzJLc19T2.chunk.js.map → XWykPl9h2.chunk.js.map} +1 -1
- package/dist/scripts/{G-hiM6b42.chunk.js → _3n_0ch72.chunk.js} +2 -2
- package/dist/scripts/{G-hiM6b42.chunk.js.map → _3n_0ch72.chunk.js.map} +1 -1
- package/dist/scripts/{app-BGxmHvGl.js → app-CgkYY4K0.js} +3 -3
- package/dist/scripts/app-CgkYY4K0.js.map +1 -0
- package/dist/scripts/{BINz0dmF.chunk.js → go6zFmPK.chunk.js} +2 -2
- package/dist/scripts/{BINz0dmF.chunk.js.map → go6zFmPK.chunk.js.map} +1 -1
- package/dist/scripts/{DFXpg6rF.chunk.js → p5-1Ey-R.chunk.js} +2 -2
- package/dist/scripts/{DFXpg6rF.chunk.js.map → p5-1Ey-R.chunk.js.map} +1 -1
- package/dist/scripts/{BobZ5p_m2.chunk.js → qrcrWbQJ2.chunk.js} +2 -2
- package/dist/scripts/{BobZ5p_m2.chunk.js.map → qrcrWbQJ2.chunk.js.map} +1 -1
- package/package.json +1 -1
- package/dist/scripts/app-BGxmHvGl.js.map +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{C as e,D as t,St as n,b as r,d as i,s as a}from"./CnnBLBPY.chunk.js";import{t as o}from"./GN6vNflP.chunk.js";import{n as s,t as c}from"./Dn3hwC-o.chunk.js";import{t as l}from"./
|
|
2
|
-
//# sourceMappingURL=
|
|
1
|
+
import{C as e,D as t,St as n,b as r,d as i,s as a}from"./CnnBLBPY.chunk.js";import{t as o}from"./GN6vNflP.chunk.js";import{n as s,t as c}from"./Dn3hwC-o.chunk.js";import{t as l}from"./CdNTKjPA.chunk.js";t();var u=e(),d=`exchange.exchangeTabs`,f=o.encloseNamespace(d),p={categories:{application:s.EXCHANGE,action:c.Exchange.INDEX},mostRecent:{application:s.EXCHANGE,action:c.Exchange.MOST_RECENT}},m={actionType:r.Click,entity:a.Url,location:i.MagicTabs};function h(e){let{active:t}=e;return(0,u.jsx)(l,{tabs:[{name:f(`categories`),appLink:p.categories,active:t===`categories`,analyticsData:{name:f(`categories`),url:n.getHref(p.categories)},analyticsOptions:m},{name:f(`mostRecent`),appLink:p.mostRecent,active:t===`most-recent`,analyticsData:{name:o.getPhrase(d,`mostRecent`),url:n.getHref(p.mostRecent)},analyticsOptions:m}]})}export{h as t};
|
|
2
|
+
//# sourceMappingURL=C-PORBUs.chunk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"C-PORBUs.chunk.js","names":[],"sources":["../../src/apps/exchange/components/exchange-tabs/ExchangeTabs.tsx"],"sourcesContent":["import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { EntityType, LocationContext, UserAction } from 'libs/analytics/interfaces';\n\nimport { PillTabSelector } from 'libs/shared/components/pill-tab-selector/PillTabSelector';\n\nimport { Actions } from 'shared/constants/ExchangeActions';\nimport { AppChannels } from 'shared/constants/ExchangeRadioChannels';\n\nconst namespace = 'exchange.exchangeTabs';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst APP_LINKS = {\n categories: {\n application: AppChannels.EXCHANGE,\n action: Actions.Exchange.INDEX\n },\n mostRecent: {\n application: AppChannels.EXCHANGE,\n action: Actions.Exchange.MOST_RECENT\n }\n};\n\nconst ANALYTICS_OPTIONS = {\n actionType: UserAction.Click,\n entity: EntityType.Url,\n location: LocationContext.MagicTabs\n};\n\ninterface ExchangeTabs {\n active: 'categories' | 'most-recent' | 'featured-channels';\n}\n\nexport function ExchangeTabs(props: ExchangeTabs): JSX.Element {\n const { active } = props;\n\n return (\n <PillTabSelector\n tabs={[{\n name: getPhrase('categories'),\n appLink: APP_LINKS.categories,\n active: active === 'categories',\n analyticsData: {\n name: getPhrase('categories'),\n url: Core.AppLinkHelper.getHref(APP_LINKS.categories)\n },\n analyticsOptions: ANALYTICS_OPTIONS\n }, {\n name: getPhrase('mostRecent'),\n appLink: APP_LINKS.mostRecent,\n active: active === 'most-recent',\n analyticsData: {\n name: LanguageService.getPhrase(namespace, 'mostRecent'),\n url: Core.AppLinkHelper.getHref(APP_LINKS.mostRecent)\n },\n analyticsOptions: ANALYTICS_OPTIONS\n }]}\n />\n );\n}\n"],"mappings":"yNAYM,EAAY,wBACZ,EAAY,EAAgB,iBAAiB,EAAU,CAEvD,EAAY,CAChB,WAAY,CACV,YAAa,EAAY,SACzB,OAAQ,EAAQ,SAAS,MAC1B,CACD,WAAY,CACV,YAAa,EAAY,SACzB,OAAQ,EAAQ,SAAS,YAC1B,CACF,CAEK,EAAoB,CACxB,WAAY,EAAW,MACvB,OAAQ,EAAW,IACnB,SAAU,EAAgB,UAC3B,CAMD,SAAgB,EAAa,EAAkC,CAC7D,GAAM,CAAE,UAAW,EAEnB,OACE,EAAA,EAAA,KAAC,EAAD,CACE,KAAM,CAAC,CACL,KAAM,EAAU,aAAa,CAC7B,QAAS,EAAU,WACnB,OAAQ,IAAW,aACnB,cAAe,CACb,KAAM,EAAU,aAAa,CAC7B,IAAA,EAAwB,QAAQ,EAAU,WAAW,CACtD,CACD,iBAAkB,EACnB,CAAE,CACD,KAAM,EAAU,aAAa,CAC7B,QAAS,EAAU,WACnB,OAAQ,IAAW,cACnB,cAAe,CACb,KAAM,EAAgB,UAAU,EAAW,aAAa,CACxD,IAAA,EAAwB,QAAQ,EAAU,WAAW,CACtD,CACD,iBAAkB,EACnB,CAAC,CACF,CAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{C as e,D as t,St as n}from"./CnnBLBPY.chunk.js";import{l as r,y as i}from"./D8clSITt.chunk.js";import{n as a,t as o}from"./Dn3hwC-o.chunk.js";import{U as s,Z as c}from"./app-
|
|
2
|
-
//# sourceMappingURL=
|
|
1
|
+
import{C as e,D as t,St as n}from"./CnnBLBPY.chunk.js";import{l as r,y as i}from"./D8clSITt.chunk.js";import{n as a,t as o}from"./Dn3hwC-o.chunk.js";import{U as s,Z as c}from"./app-CgkYY4K0.js";import{t as l}from"./DjuXXgD-2.chunk.js";import{t as u}from"./DrVEkVd5.chunk.js";import{t as d}from"./BQk9Mhlr.chunk.js";import{t as f}from"./Dkazht4Q.chunk.js";import{t as p}from"./Div1wl-R2.chunk.js";import{n as m,r as h,t as g}from"./Bo8PhXY12.chunk.js";t();var _=function(e){return e.Share=`share`,e.MasterObject=`masterobject`,e}({}),v={createViewKey(e,t,n,r,a){let o={mediaId:e.toString(),mediaIdType:t};return n&&(o.shareContextId=n),{url:`/api/player/create-view-key`,key:`view:key:${e}:${t}:${n}`,type:i.POST,data:o,cacheDuration:28800,success:r,error:a}}},y=e();function b(e){let t=r(l.video(e.videoId)),i=r(c.config()),b=r(v.createViewKey(e.videoId,_.MasterObject)),x=f(`preview`);p(t.statusCode);let{previewContext:S,clearPreviewContext:C}=d(e.videoId,!0);function w(e){}function T(){e.closePopup(),u.preventScrollTop(),n.trigger(S?.appLink??{application:a.EXCHANGE,action:o.Exchange.INDEX}),C()}let E=t.data&&i.hasCompleted&&b.hasCompleted;return(0,y.jsx)(s,{title:t.data?.name,hideTitle:!0,closePopup:T,showLoadingSpinner:!E,size:`lg`,bodyClassName:`p-0 rounded-3 position-relative`,children:E&&(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(`div`,{className:`overflow-hidden rounded-top-lg`,children:(0,y.jsx)(h,{viewKey:b.data.viewKey,playerApi:new URL(i.data.playerApiUrl),autoplay:!0,hotkeyElQuerySelector:`body`,onReady:w,allowFullscreen:!1})}),(0,y.jsx)(g,{video:t.data,title:t.data.name,description:t.data.description,videoActions:x.getVideoActions(t.data)}),(0,y.jsx)(m,{closePopup:T})]})})}export{b as ExchangePreviewView};
|
|
2
|
+
//# sourceMappingURL=C1StI3Bl2.chunk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"C1StI3Bl2.chunk.js","names":[],"sources":["../../../../libs/shared/src/enums/MediaIdType.ts","../../../../libs/shared/src/flight-requests/PlayerRequests.ts","../../src/apps/exchange/views/exchange-preview/ExchangePreviewView.tsx"],"sourcesContent":["export enum MediaIdType {\n Share = 'share',\n MasterObject = 'masterobject'\n}\n","import { HttpVerbs } from 'libs/common/backbone/enums/HttpVerbs';\nimport { Xhr } from 'libs/common/backbone/interfaces';\nimport { Flight } from 'libs/common/flight';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { MediaIdType } from 'libs/shared/enums/MediaIdType';\nimport { PlayerViewKey } from 'libs/shared/interfaces';\n\nexport const PlayerRequests = {\n createViewKey(\n mediaId: string,\n mediaIdType: MediaIdType,\n shareContextId?: string,\n success?: (viewKey: PlayerViewKey) => void,\n error?: (xhr: Xhr) => void\n ): Flight.Request {\n const data: HashObject = {\n mediaId: mediaId.toString(),\n mediaIdType\n };\n\n if (shareContextId)\n data.shareContextId = shareContextId;\n\n return {\n url: `/api/player/create-view-key`,\n key: `view:key:${mediaId}:${mediaIdType}:${shareContextId}`,\n type: HttpVerbs.POST,\n data,\n /**\n * A view key is valid for 8 hours, at that point we need refetch the view key\n */\n cacheDuration: 28800,\n success,\n error\n };\n }\n};\n","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { ScrollHelper } from 'libs/common/backbone/utils/ScrollHelper';\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 { MediaIdType } from 'libs/shared/enums/MediaIdType';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { PlayerRequests } from 'libs/shared/flight-requests/PlayerRequests';\nimport { VideoRequests } from 'libs/shared/flight-requests/VideoRequests';\nimport { useHandleDialogError } from 'libs/shared/hooks/UseHandleDialogError';\nimport { Config, PlayerViewKey, PopupViewProps, Video } 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 { Actions } from 'shared/constants/ExchangeActions';\nimport { AppChannels } from 'shared/constants/ExchangeRadioChannels';\n\nimport { useGetExchangeActions } from 'apps/exchange/hooks/useGetExchangeActions';\nimport { usePreviewContext } from 'apps/exchange/hooks/usePreviewContext';\n\ninterface ExchangePreviewViewProps extends PopupViewProps {\n videoId: string;\n currentTime: number;\n}\n\nexport function ExchangePreviewView(props: ExchangePreviewViewProps): JSX.Element {\n // const analyticsTracker = React.useRef<PlayerAnalyticsTracker>(null);\n const video = Flight.useBasicFetch<Video>(VideoRequests.video(props.videoId));\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const viewKey = Flight.useBasicFetch<PlayerViewKey>(\n PlayerRequests.createViewKey(props.videoId, MediaIdType.MasterObject)\n );\n\n const videoActions = useGetExchangeActions('preview');\n useHandleDialogError(video.statusCode);\n\n const { previewContext, clearPreviewContext } = usePreviewContext(props.videoId, true);\n\n // TODO: Solve analytics collection\n function onReady(player: PlayerReference): void {\n player;\n // setupAnalytics(player);\n }\n\n // function setupAnalytics(player: PlayerReference): void {\n // analyticsTracker.current = new PlayerAnalyticsTracker({\n // player,\n // video: props.video,\n // analyticsLocation: props.embed ?\n // LocationContext.EmbeddedPlayer :\n // LocationContext.PlayPage,\n // shareId: props.shareLink?.id\n // });\n // }\n\n function onClose(): void {\n props.closePopup();\n\n ScrollHelper.preventScrollTop();\n Core.AppLinkHelper.trigger(previewContext?.appLink ?? {\n application: AppChannels.EXCHANGE,\n action: Actions.Exchange.INDEX\n });\n clearPreviewContext();\n }\n\n const hasLoaded = (\n video.data &&\n config.hasCompleted &&\n viewKey.hasCompleted\n );\n\n return (\n <Popup\n title={video.data?.name}\n hideTitle\n closePopup={onClose}\n showLoadingSpinner={!hasLoaded}\n size='lg'\n bodyClassName='p-0 rounded-3 position-relative'\n >\n {hasLoaded &&\n <>\n <div className='overflow-hidden rounded-top-lg'>\n <ClickViewPlayer\n viewKey={viewKey.data.viewKey}\n playerApi={new URL(config.data.playerApiUrl)}\n autoplay\n hotkeyElQuerySelector='body'\n onReady={onReady}\n allowFullscreen={false}\n />\n </div>\n <PreviewVideoDetails\n video={video.data}\n title={video.data.name}\n description={video.data.description}\n videoActions={videoActions.getVideoActions(video.data)}\n />\n <PlayerOverlayButtons closePopup={onClose} />\n </>\n }\n </Popup>\n );\n}\n"],"mappings":"ucAAA,IAAA,EAAA,SAAA,EAAA,OACE,GAAA,MAAA,QACA,EAAA,aAAA,sBCMW,EAAiB,CAC5B,cACE,EACA,EACA,EACA,EACA,EACgB,CAChB,IAAM,EAAmB,CACvB,QAAS,EAAQ,UAAU,CAC3B,cACD,CAKD,OAHI,IACF,EAAK,eAAiB,GAEjB,CACL,IAAK,8BACL,IAAK,YAAY,EAAQ,GAAG,EAAY,GAAG,IAC3C,KAAM,EAAU,KAChB,OAIA,cAAe,MACf,UACA,QACD,EAEJ,OCPD,SAAgB,EAAoB,EAA8C,CAEhF,IAAM,EAAQ,EAA4B,EAAc,MAAM,EAAM,QAAQ,CAAC,CACvE,EAAS,EAA6B,EAAe,QAAQ,CAAC,CAC9D,EAAU,EACd,EAAe,cAAc,EAAM,QAAS,EAAY,aAAa,CACtE,CAEK,EAAe,EAAsB,UAAU,CACrD,EAAqB,EAAM,WAAW,CAEtC,GAAM,CAAE,iBAAgB,uBAAwB,EAAkB,EAAM,QAAS,GAAK,CAGtF,SAAS,EAAQ,EAA+B,EAgBhD,SAAS,GAAgB,CACvB,EAAM,YAAY,CAElB,EAAa,kBAAkB,CAC/B,EAAmB,QAAQ,GAAgB,SAAW,CACpD,YAAa,EAAY,SACzB,OAAQ,EAAQ,SAAS,MAC1B,CAAC,CACF,GAAqB,CAGvB,IAAM,EACJ,EAAM,MACN,EAAO,cACP,EAAQ,aAGV,OACE,EAAA,EAAA,KAAC,EAAD,CACE,MAAO,EAAM,MAAM,KACnB,UAAA,GACA,WAAY,EACZ,mBAAoB,CAAC,EACrB,KAAK,KACL,cAAc,2CAEb,IACC,EAAA,EAAA,MAAA,EAAA,SAAA,CAAA,SAAA,EACE,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,2CACb,EAAA,EAAA,KAAC,EAAD,CACE,QAAS,EAAQ,KAAK,QACtB,UAAW,IAAI,IAAI,EAAO,KAAK,aAAa,CAC5C,SAAA,GACA,sBAAsB,OACb,UACT,gBAAiB,GACjB,CAAA,CACE,CAAA,EACN,EAAA,EAAA,KAAC,EAAD,CACE,MAAO,EAAM,KACb,MAAO,EAAM,KAAK,KAClB,YAAa,EAAM,KAAK,YACxB,aAAc,EAAa,gBAAgB,EAAM,KAAK,CACtD,CAAA,EACF,EAAA,EAAA,KAAC,EAAD,CAAsB,WAAY,EAAW,CAAA,CAC5C,CAAA,CAAA,CAEC,CAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{C as e,D as t,S as n,b as r,d as i,mn as a,s as o,t as s}from"./CnnBLBPY.chunk.js";import{l as c,y as l}from"./D8clSITt.chunk.js";import{Z as u}from"./app-
|
|
2
|
-
//# sourceMappingURL=
|
|
1
|
+
import{C as e,D as t,S as n,b as r,d as i,mn as a,s as o,t as s}from"./CnnBLBPY.chunk.js";import{l as c,y as l}from"./D8clSITt.chunk.js";import{Z as u}from"./app-CgkYY4K0.js";import{t as d}from"./C_TYjZJB2.chunk.js";var f=a(t()),p={createDownloadToken(e){return{url:`/api/downloadproxy/api/tokens`,key:`download:token:${e}`,data:{objectId:e},type:l.POST,normalize:!1}}},m=e();function h(e){let t=f.useRef(null),a=c(u.config()),l=c(p.createDownloadToken(e.id)),h=!!a.data&&!!l.data;return f.useEffect(()=>{if(!h||!t.current)return;let c=d.getVideoDownloadUrl(a.data.downloadProxy,l.data.token);t.current.src=c,s.logUserAction({id:e.id},{actionType:r.Download,location:i.Popup,entity:o.Video,workflowPhase:n.Complete})},[h,t.current]),(0,m.jsx)(`iframe`,{ref:t})}export{h as DownloadVideoView};
|
|
2
|
+
//# sourceMappingURL=C6Hr-vqw.chunk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"C6Hr-vqw.chunk.js","names":[],"sources":["../../src/shared/flight-requests/DownloadRequests.ts","../../src/shared/views/download-video/DownloadVideoView.tsx"],"sourcesContent":["import { HttpVerbs } from 'libs/common/backbone/enums/HttpVerbs';\nimport { Flight } from 'libs/common/flight';\n\nexport const DownloadRequests = {\n createDownloadToken(videoId: string): Flight.Request {\n return {\n url: '/api/downloadproxy/api/tokens',\n key: `download:token:${videoId}`,\n data: { objectId: videoId },\n type: HttpVerbs.POST,\n normalize: false\n };\n }\n};\n","import React from 'react';\n\nimport { Flight } from 'libs/common/flight';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\nimport { EntityType, LocationContext, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\n\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { Config } from 'libs/shared/interfaces';\nimport { DownloadHelper } from 'libs/shared/utils/DownloadHelper';\n\nimport { DownloadRequests } from 'shared/flight-requests/DownloadRequests';\n\ninterface DownloadVideoViewProps {\n id: string;\n}\n\n// eslint-disable-next-line rulesdir/require-view-title\nexport function DownloadVideoView(props: DownloadVideoViewProps): JSX.Element {\n const ref = React.useRef(null);\n\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const downloadToken = Flight.useBasicFetch<HashObject>(DownloadRequests.createDownloadToken(props.id));\n\n const dataLoaded = !!config.data && !!downloadToken.data;\n\n React.useEffect(() => {\n if (!dataLoaded || !ref.current)\n return;\n\n const url = DownloadHelper.getVideoDownloadUrl(config.data.downloadProxy, downloadToken.data.token);\n ref.current.src = url;\n\n AnalyticsHelper.logUserAction({\n id: props.id\n }, {\n actionType: UserAction.Download,\n location: LocationContext.Popup,\n entity: EntityType.Video,\n workflowPhase: WorkflowPhase.Complete\n });\n }, [ dataLoaded, ref.current ]);\n\n return (\n <iframe ref={ref} />\n );\n}\n"],"mappings":"qOAGA,EAAA,CAAA,oBAAA,EAAA,CAEI,MAAA,mHCcJ,SAAgB,EAAkB,EAA4C,CAC5E,IAAM,EAAA,EAAY,OAAO,KAAK,CAExB,EAAS,EAA6B,EAAe,QAAQ,CAAC,CAC9D,EAAgB,EAAiC,EAAiB,oBAAoB,EAAM,GAAG,CAAC,CAEhG,EAAa,CAAC,CAAC,EAAO,MAAQ,CAAC,CAAC,EAAc,KAmBpD,OAjBA,EAAM,cAAgB,CACpB,GAAI,CAAC,GAAc,CAAC,EAAI,QACtB,OAEF,IAAM,EAAM,EAAe,oBAAoB,EAAO,KAAK,cAAe,EAAc,KAAK,MAAM,CACnG,EAAI,QAAQ,IAAM,EAElB,EAAgB,cAAc,CAC5B,GAAI,EAAM,GACX,CAAE,CACD,WAAY,EAAW,SACvB,SAAU,EAAgB,MAC1B,OAAQ,EAAW,MACnB,cAAe,EAAc,SAC9B,CAAC,EACD,CAAE,EAAY,EAAI,QAAS,CAAC,EAG7B,EAAA,EAAA,KAAC,SAAD,CAAa,MAAO,CAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{C as e,D as t,d as n,mn as r,s as i,yt as a}from"./CnnBLBPY.chunk.js";import{g as o}from"./DW0w8_XN.chunk.js";import{l as s,u as c}from"./D8clSITt.chunk.js";import{n as l,t as u}from"./Dn3hwC-o.chunk.js";import{i as d,o as f,s as p}from"./
|
|
2
|
-
//# sourceMappingURL=
|
|
1
|
+
import{C as e,D as t,d as n,mn as r,s as i,yt as a}from"./CnnBLBPY.chunk.js";import{g as o}from"./DW0w8_XN.chunk.js";import{l as s,u as c}from"./D8clSITt.chunk.js";import{n as l,t as u}from"./Dn3hwC-o.chunk.js";import{i as d,o as f,s as p}from"./DQBoqkL7.chunk.js";import{t as m}from"./DIgVUF5c.chunk.js";import{t as h}from"./BjaJoJzM.chunk.js";import{t as g}from"./xL848v0O.chunk.js";import{t as _}from"./DRTfS6nN.chunk.js";import{r as v}from"./BK-FLPB-.chunk.js";import{F as y,I as b}from"./app-CgkYY4K0.js";import{t as x}from"./DWCNy_Jd2.chunk.js";import{t as S}from"./BP0LMV9S2.chunk.js";import{n as C,t as w}from"./CXtVyCmH.chunk.js";import{r as T,t as E}from"./BhOZYAZn.chunk.js";import{n as D}from"./Jf-R5ehU.chunk.js";import{n as O,r as k}from"./ApcDOLl8.chunk.js";import{t as A}from"./BxLgTmMl.chunk.js";import{t as j}from"./ChDwbV8F.chunk.js";import{t as M}from"./BLtXMKpA.chunk.js";import{t as N}from"./Df82DFJ62.chunk.js";import{t as P}from"./RDQrcIZZ2.chunk.js";import{t as F}from"./BcJCL8cu2.chunk.js";import{t as I}from"./BdSdO6n62.chunk.js";import{t as L}from"./C6jF43q92.chunk.js";import{t as R}from"./BLs3APIS2.chunk.js";import{n as z,t as B}from"./6124murE2.chunk.js";import{t as V}from"./BrVyRSUS2.chunk.js";import{t as H}from"./BAIdKirt.chunk.js";var U=r(t()),W=e(),G=`tv.searchResultsEmptyState`;function K(e){return(0,W.jsx)(y.Provider,{value:G,children:(0,W.jsxs)(m,{children:[(0,W.jsx)(m.Image,{src:_.EmptyStates.SEARCH}),(0,W.jsx)(m.Heading,{children:e.query?(0,W.jsx)(b,{phrase:`headingWithQuery`,options:{query:e.query}}):(0,W.jsx)(b,{phrase:`headingWithoutQuery`})}),(0,W.jsx)(m.Info,{children:(0,W.jsx)(b,{phrase:`info`})})]})})}var q={highlight:`_highlight_107l1_1`,badgeOverlay:`_badgeOverlay_107l1_8`};function J(e,t){let n=new RegExp(t,`gi`);return e.replace(n,e=>`<span class=${q.highlight}>${e}</span>`)}function Y(e){let{program:t,query:n,region:r,getVideoActions:i}=e,[a,s]=U.useState(!1),c={application:l.TV,action:u.Tv.PREVIEW,args:[r.code,t.id]},d=F(t.startTime,t.timeZone),f=F(t.stopTime,t.timeZone),p=Math.abs(g.diffBetween(d,f,`milliseconds`));return(0,W.jsxs)(`div`,{className:`row gx-3 mb-3`,children:[(0,W.jsx)(`div`,{className:`col-3 flex-column align-items-flex-start pe-2`,children:(0,W.jsx)(`div`,{className:`rounded rounded-3 overflow-hidden`,children:(0,W.jsxs)(D,{imageType:v.Thumbnails,data:t.thumbnailUrl,appLink:c,children:[(0,W.jsx)(O,{type:k.Video}),(0,W.jsx)(`div`,{className:q.badgeOverlay,children:(0,W.jsx)(w,{type:C.DurationApproximate,data:p})})]})})}),(0,W.jsxs)(`div`,{className:`col-9 pb-2`,children:[(0,W.jsx)(x,{actions:i(t),className:`float-end mt-n1`,actionsDropdownClassName:`btn btn-link ms-1`}),(0,W.jsx)(o,{appLink:c,children:(0,W.jsx)(`h5`,{className:`h4 mb-1 align-middle text-dark text-truncate`,title:t.title??``,children:(0,W.jsx)(`span`,{dangerouslySetInnerHTML:{__html:J(t.title,n)}})})}),(0,W.jsxs)(M,{className:`mb-1`,children:[t.channelLogoUrl&&(0,W.jsx)(P,{logoUrl:t.channelLogoUrl,className:`me-1`,small:!0}),(0,W.jsx)(I,{program:t,className:`me-1`,showDate:!0,showEndTime:!0}),t.hasAdsFree&&(0,W.jsx)(N,{small:!0})]}),(0,W.jsx)(`div`,{className:`mb-1`,children:(0,W.jsx)(`span`,{dangerouslySetInnerHTML:{__html:J(t.description,n)}})}),!!t.subtitleHits?.length&&(0,W.jsxs)(`div`,{children:[t.subtitleHits?.map(((e,t)=>!a&&t>1?(0,W.jsx)(U.Fragment,{},t):(0,W.jsxs)(o,{appLink:{...c,args:[...c.args],params:{currentTime:e.hitStartTime/1e3}},className:`d-block text-dark`,children:[(0,W.jsxs)(`span`,{className:`fw-semibold`,children:[`[`,g.format(g.add(d,e.hitStartTime,`milliseconds`),`h:mm:ss a`),`]`]}),`\xA0`,(0,W.jsx)(`span`,{dangerouslySetInnerHTML:{__html:J(e.srtFragment,n)}})]},t))),!a&&t.subtitleHits?.length>2&&(0,W.jsx)(`div`,{className:`text-info cursor-pointer`,onClick:()=>s(!0),children:`Show more`})]})]})]})}X.defaultProps={queryParams:{}};function X(e){let{queryParams:t}=e,{query:r}=t,o=c(),m=S(),g=s(L.region(e.region)),_=s(L.regions()),v=s(g.data&&L.channels(g.data.code));g.hasCompleted&&!g.data&&A(a.BadRequest);let{setRegion:y}=V();R(g),j([_,v]),h({title:r??``});let{items:b,hasMore:x,isFetching:C,nextCursor:w}=p(g.data&&D,O,k,e=>e.results,e=>e.page*25>e.totalNumber?null:(e.page+1).toString());function D(e){return L.search(g.data.code,t,+e)}function O(e){return o(D(e))}function k(e,t){if(e===1)return A(t);m.error(`Something went wrong`)}let M=H(`video-list`,g.data),N=g.hasCompleted&&_.hasCompleted&&v.hasCompleted,P=[T.TvChannel(v.data),T.TvDateBroadcast(),T.TvFields()];return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(B,{query:r,region:g.data}),(0,W.jsxs)(`div`,{className:`d-flex justify-content-between mb-2`,children:[(0,W.jsx)(E,{queryParams:t,mainFilters:P,analyticsOptions:{entity:i.SearchResults,location:n.SearchFilters},appLink:{application:l.TV,action:u.Tv.SEARCH,args:[g.data?.code]},hideDivider:!0,isFetchingOptions:!N}),(0,W.jsx)(z,{currentRegion:g.data,regions:_.data,appLink:{application:l.TV,action:u.Tv.SEARCH,params:{query:r}},onClick:y})]}),N&&(0,W.jsx)(W.Fragment,{children:b?.length?(0,W.jsxs)(W.Fragment,{children:[b.map((e,t)=>(0,W.jsx)(Y,{program:e,query:r,region:g.data,getVideoActions:M},t)),(x||C)&&(0,W.jsx)(f,{isFetching:C,fetchNext:O,nextCursor:w})]}):(0,W.jsx)(W.Fragment,{children:C?(0,W.jsx)(`div`,{className:`m-n2`,children:(0,W.jsx)(d,{})}):(0,W.jsx)(K,{query:r})})})]})}export{X as TvSearchResultsView};
|
|
2
|
+
//# sourceMappingURL=CBnNAkzx.chunk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Bue5_bLM.chunk.js","names":[],"sources":["../../src/apps/tv/views/tv-search-results/empty-state/TvSearchEmptyState.tsx","../../src/apps/tv/views/tv-search-results/components/tv-search-result-item/tv-search-result-item.module.scss","../../src/apps/tv/views/tv-search-results/components/tv-search-result-item/TvSearchResultItem.tsx","../../src/apps/tv/views/tv-search-results/TvSearchResultsView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { EmptyState } from 'libs/shared/components/empty-states/EmptyState';\nimport { LanguageNamespaceContext, Text } from 'libs/shared/components/text/Text';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nconst namespace = 'tv.searchResultsEmptyState';\n\ninterface TvSearchResultsStateProps {\n query?: string;\n}\n\nexport function TvSearchResultsState(props: TvSearchResultsStateProps): JSX.Element {\n return (\n <LanguageNamespaceContext.Provider value={namespace}>\n <EmptyState>\n <EmptyState.Image src={ImageUrls.EmptyStates.SEARCH} />\n\n <EmptyState.Heading>\n {props.query ?\n <Text phrase='headingWithQuery' options={{ query: props.query }} /> :\n <Text phrase='headingWithoutQuery' />\n }\n </EmptyState.Heading>\n\n <EmptyState.Info>\n <Text phrase='info' />\n </EmptyState.Info>\n </EmptyState>\n </LanguageNamespaceContext.Provider>\n );\n}\n",":local {\n .highlight {\n background-color: rgba($yellow, 0.5);\n display: inline-block;\n margin: 0px -0.1875rem;\n padding: 0px 0.1875rem;\n border-radius: $border-radius;\n }\n\n .badgeOverlay {\n position: absolute;\n right: map-get($spacers, 2);\n bottom: map-get($spacers, 2);\n height: 1.5rem;\n z-index: 2;\n\n :global(.duration-badge-new) {\n font-size: 100%;\n font-weight: 500;\n height: 100%;\n }\n }\n}","import React from 'react';\n\nimport { DateHelper } from 'libs/common/react/utils/DateHelper';\n\nimport { ActionOptions, Actions as ActionsComponent } from 'libs/shared/components/actions/Actions';\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Badge, BadgeType } from 'libs/shared/components/badges/Badge';\nimport { BadgeListContainer } from 'libs/shared/components/badges/BadgeListContainer';\nimport { BaseImage } from 'libs/shared/components/image/BaseImage';\nimport { ImageFallback, ImageFallbackType } from 'libs/shared/components/image/ImageFallback';\nimport { ImageType } from 'libs/shared/enums/Images';\n\nimport { Actions } from 'shared/constants/ExchangeActions';\nimport { AppChannels } from 'shared/constants/ExchangeRadioChannels';\n\nimport { TvAdFreeBadge } from 'apps/tv/components/tv-ad-free-badge/TvAdFreeBadge';\nimport { TvChannelBadge } from 'apps/tv/components/tv-channel-badge/TvChannelBadge';\nimport { TvProgramTimeBadge } from 'apps/tv/components/tv-program-time-badge/TvProgramTimeBadge';\nimport { TvProgram } from 'apps/tv/interfaces/models/TvProgram';\nimport { TvRegion } from 'apps/tv/interfaces/models/TvRegion';\nimport { TvSearchResult } from 'apps/tv/interfaces/models/TvSearchResult';\nimport { toLocalTime } from 'apps/tv/utils/toLocalTime';\n\nimport styles from './tv-search-result-item.module.scss';\n\nfunction highlightText(text: string, query: string): string {\n const regex = new RegExp(query, 'gi');\n return text.replace(regex, match => `<span class=${styles.highlight}>${match}</span>`);\n}\n\ninterface TvSearchResultItemProps {\n query: string;\n program: TvSearchResult;\n region: TvRegion;\n getVideoActions: (video: TvProgram) => ActionOptions[];\n}\n\nexport function TvSearchResultItem(props: TvSearchResultItemProps): JSX.Element {\n const { program, query, region, getVideoActions } = props;\n\n const [ showMore, setShowMore ] = React.useState(false);\n\n const appLink = {\n application: AppChannels.TV,\n action: Actions.Tv.PREVIEW,\n args: [ region.code, program.id ]\n };\n\n const startTime = toLocalTime(program.startTime, program.timeZone);\n const stopTime = toLocalTime(program.stopTime, program.timeZone);\n const diff = Math.abs(DateHelper.diffBetween(startTime, stopTime, 'milliseconds'));\n\n return (\n <div className='row gx-3 mb-3'>\n <div className='col-3 flex-column align-items-flex-start pe-2'>\n <div className='rounded rounded-3 overflow-hidden'>\n <BaseImage\n imageType={ImageType.Thumbnails}\n data={program.thumbnailUrl}\n appLink={appLink}\n >\n <ImageFallback type={ImageFallbackType.Video} />\n\n <div className={styles.badgeOverlay}>\n <Badge\n type={BadgeType.DurationApproximate}\n data={diff}\n />\n </div>\n </BaseImage>\n </div>\n </div>\n <div className='col-9 pb-2'>\n <ActionsComponent\n actions={getVideoActions(program as TvProgram)}\n className='float-end mt-n1'\n actionsDropdownClassName='btn btn-link ms-1'\n />\n <AppLink appLink={appLink}>\n <h5 className='h4 mb-1 align-middle text-dark text-truncate' title={program.title ?? ''}>\n <span dangerouslySetInnerHTML={{\n __html: highlightText(program.title, query)\n }}></span>\n </h5>\n </AppLink>\n <BadgeListContainer className='mb-1'>\n {program.channelLogoUrl && <TvChannelBadge logoUrl={program.channelLogoUrl} className='me-1' small />}\n <TvProgramTimeBadge program={program as TvProgram} className='me-1' showDate showEndTime />\n {program.hasAdsFree && <TvAdFreeBadge small />}\n </BadgeListContainer>\n <div className='mb-1'>\n <span dangerouslySetInnerHTML={{\n __html: highlightText(program.description, query)\n }}></span>\n </div>\n {!!program.subtitleHits?.length &&\n <div>\n {program.subtitleHits?.map(((hit, index) => {\n if (!showMore && index > 1)\n return <React.Fragment key={index} />;\n\n return (\n <AppLink\n key={index}\n appLink={{\n ...appLink,\n args: [...appLink.args],\n params: {\n currentTime: hit.hitStartTime / 1000\n }\n }}\n className='d-block text-dark'\n >\n <span className='fw-semibold'>\n [{DateHelper.format(DateHelper.add(startTime, hit.hitStartTime, 'milliseconds'), 'h:mm:ss a')}]\n </span>\n \n <span dangerouslySetInnerHTML={{\n __html: highlightText(hit.srtFragment, query)\n }}></span>\n </AppLink>\n );\n }))}\n {!showMore && program.subtitleHits?.length > 2 && <div className='text-info cursor-pointer' onClick={() => setShowMore(true)}>Show more</div>}\n </div>\n }\n </div>\n </div>\n );\n}\n","import React from 'react';\n\nimport { HttpStatus } from 'libs/common/backbone/enums/HttpStatus';\nimport { Flight } from 'libs/common/flight';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { EntityType, LocationContext } from 'libs/analytics/interfaces';\n\nimport { SearchFilters } from 'libs/shared/apps/search/components/search-filters/SearchFilters';\nimport { Filters } from 'libs/shared/apps/search/utils/FilterHelper';\nimport { InfiniteScrollFooter } from 'libs/shared/components/infinite-scroll-footer/InfiniteScrollFooter';\nimport { PartialVideoList } from 'libs/shared/components/video-list/partial-loading/PartialVideoList';\nimport { handleHttpError } from 'libs/shared/errors/handlers/HttpErrorHandlers';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { useHandleObjectError } from 'libs/shared/hooks/UseHandleObjectError';\nimport { useInfiniteList } from 'libs/shared/hooks/UseInfiniteList';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\n\nimport { Actions } from 'shared/constants/ExchangeActions';\nimport { AppChannels } from 'shared/constants/ExchangeRadioChannels';\n\nimport { TvRegionSelect } from 'apps/tv/components/tv-region-select/TvRegionSelect';\nimport { TvSearchBar } from 'apps/tv/components/tv-search-bar/TvSearchBar';\nimport { TvRequests } from 'apps/tv/flight-requests/TvRequests';\nimport { useGetTvActions } from 'apps/tv/hooks/useGetTvActions';\nimport { useHandleRegionError } from 'apps/tv/hooks/useHandleRegionError';\nimport { useSelectedRegion } from 'apps/tv/hooks/useSelectedRegion';\nimport { TvChannel } from 'apps/tv/interfaces/models/TvChannel';\nimport { TvRegion } from 'apps/tv/interfaces/models/TvRegion';\nimport { TvSearchResult } from 'apps/tv/interfaces/models/TvSearchResult';\nimport { TvSearchResponse } from 'apps/tv/interfaces/responses/TvSearchResponse';\nimport { TvSearchResultsState } from 'apps/tv/views/tv-search-results/empty-state/TvSearchEmptyState';\n\nimport { TvSearchResultItem } from './components/tv-search-result-item/TvSearchResultItem';\n\ninterface TvSearchResultsViewProps {\n region: string;\n queryParams: HashObject;\n}\n\nTvSearchResultsView.defaultProps = {\n queryParams: {}\n};\n\nexport function TvSearchResultsView(props: TvSearchResultsViewProps): JSX.Element {\n const { queryParams } = props;\n const { query } = queryParams;\n\n const fetch = Flight.useGetFetch();\n const alerts = useAlerts();\n\n const region = Flight.useBasicFetch<TvRegion>(TvRequests.region(props.region));\n const regions = Flight.useBasicFetch<TvRegion[]>(TvRequests.regions());\n const channels = Flight.useBasicFetch<TvChannel[]>(\n region.data && TvRequests.channels(region.data.code)\n );\n\n if (region.hasCompleted && !region.data) {\n handleHttpError(HttpStatus.BadRequest);\n }\n\n const { setRegion } = useSelectedRegion();\n\n useHandleRegionError(region);\n useHandleObjectError([ regions, channels ]);\n\n useSetPageMetadata({ title: query ?? '' });\n\n const {\n items: programs,\n hasMore,\n isFetching,\n nextCursor\n } = useInfiniteList<TvSearchResult, TvSearchResponse>(\n region.data && getRequest,\n fetchNext,\n onError,\n response => response.results,\n response => {\n if (response.page * 25 > response.totalNumber)\n return null;\n\n return (response.page + 1).toString();\n }\n );\n\n function getRequest(cursor?: string): Flight.Request {\n return TvRequests.search(\n region.data.code,\n queryParams,\n +cursor\n );\n }\n\n function fetchNext(cursor?: string): void {\n return fetch(getRequest(cursor));\n }\n\n function onError(pageNumber: number, httpStatus: HttpStatus): void {\n if (pageNumber === 1)\n return handleHttpError(httpStatus);\n\n alerts.error('Something went wrong');\n }\n\n const getVideoActions = useGetTvActions('video-list', region.data);\n\n const dataLoaded = region.hasCompleted && regions.hasCompleted && channels.hasCompleted;\n\n const mainFilters = [\n Filters.TvChannel(channels.data),\n Filters.TvDateBroadcast(),\n Filters.TvFields()\n ];\n\n return (\n <>\n <TvSearchBar query={query} region={region.data} />\n\n <div className='d-flex justify-content-between mb-2'>\n <SearchFilters\n queryParams={queryParams}\n mainFilters={mainFilters}\n analyticsOptions={{\n entity: EntityType.SearchResults,\n location: LocationContext.SearchFilters\n }}\n appLink={{ application: AppChannels.TV, action: Actions.Tv.SEARCH, args: [region.data?.code]}}\n hideDivider\n isFetchingOptions={!dataLoaded}\n />\n\n <TvRegionSelect\n currentRegion={region.data}\n regions={regions.data}\n appLink={{\n application: AppChannels.TV,\n action: Actions.Tv.SEARCH,\n params: { query: query }\n }}\n onClick={setRegion}\n />\n </div>\n\n {dataLoaded && (\n <>\n {programs?.length ? (\n <>\n {programs.map((program, index) => {\n return (\n <TvSearchResultItem\n key={index}\n program={program}\n query={query}\n region={region.data}\n getVideoActions={getVideoActions}\n />\n );\n })}\n {(hasMore || isFetching) && (\n <InfiniteScrollFooter\n isFetching={isFetching}\n fetchNext={fetchNext}\n nextCursor={nextCursor}\n />\n )}\n </>\n ) : (\n <>\n {isFetching ? (\n <div className='m-n2'>\n <PartialVideoList />\n </div>\n ) : <TvSearchResultsState query={query} />}\n </>\n )}\n </>\n )}\n </>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CBnNAkzx.chunk.js","names":[],"sources":["../../src/apps/tv/views/tv-search-results/empty-state/TvSearchEmptyState.tsx","../../src/apps/tv/views/tv-search-results/components/tv-search-result-item/tv-search-result-item.module.scss","../../src/apps/tv/views/tv-search-results/components/tv-search-result-item/TvSearchResultItem.tsx","../../src/apps/tv/views/tv-search-results/TvSearchResultsView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { EmptyState } from 'libs/shared/components/empty-states/EmptyState';\nimport { LanguageNamespaceContext, Text } from 'libs/shared/components/text/Text';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nconst namespace = 'tv.searchResultsEmptyState';\n\ninterface TvSearchResultsStateProps {\n query?: string;\n}\n\nexport function TvSearchResultsState(props: TvSearchResultsStateProps): JSX.Element {\n return (\n <LanguageNamespaceContext.Provider value={namespace}>\n <EmptyState>\n <EmptyState.Image src={ImageUrls.EmptyStates.SEARCH} />\n\n <EmptyState.Heading>\n {props.query ?\n <Text phrase='headingWithQuery' options={{ query: props.query }} /> :\n <Text phrase='headingWithoutQuery' />\n }\n </EmptyState.Heading>\n\n <EmptyState.Info>\n <Text phrase='info' />\n </EmptyState.Info>\n </EmptyState>\n </LanguageNamespaceContext.Provider>\n );\n}\n",":local {\n .highlight {\n background-color: rgba($yellow, 0.5);\n display: inline-block;\n margin: 0px -0.1875rem;\n padding: 0px 0.1875rem;\n border-radius: $border-radius;\n }\n\n .badgeOverlay {\n position: absolute;\n right: map-get($spacers, 2);\n bottom: map-get($spacers, 2);\n height: 1.5rem;\n z-index: 2;\n\n :global(.duration-badge-new) {\n font-size: 100%;\n font-weight: 500;\n height: 100%;\n }\n }\n}","import React from 'react';\n\nimport { DateHelper } from 'libs/common/react/utils/DateHelper';\n\nimport { ActionOptions, Actions as ActionsComponent } from 'libs/shared/components/actions/Actions';\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Badge, BadgeType } from 'libs/shared/components/badges/Badge';\nimport { BadgeListContainer } from 'libs/shared/components/badges/BadgeListContainer';\nimport { BaseImage } from 'libs/shared/components/image/BaseImage';\nimport { ImageFallback, ImageFallbackType } from 'libs/shared/components/image/ImageFallback';\nimport { ImageType } from 'libs/shared/enums/Images';\n\nimport { Actions } from 'shared/constants/ExchangeActions';\nimport { AppChannels } from 'shared/constants/ExchangeRadioChannels';\n\nimport { TvAdFreeBadge } from 'apps/tv/components/tv-ad-free-badge/TvAdFreeBadge';\nimport { TvChannelBadge } from 'apps/tv/components/tv-channel-badge/TvChannelBadge';\nimport { TvProgramTimeBadge } from 'apps/tv/components/tv-program-time-badge/TvProgramTimeBadge';\nimport { TvProgram } from 'apps/tv/interfaces/models/TvProgram';\nimport { TvRegion } from 'apps/tv/interfaces/models/TvRegion';\nimport { TvSearchResult } from 'apps/tv/interfaces/models/TvSearchResult';\nimport { toLocalTime } from 'apps/tv/utils/toLocalTime';\n\nimport styles from './tv-search-result-item.module.scss';\n\nfunction highlightText(text: string, query: string): string {\n const regex = new RegExp(query, 'gi');\n return text.replace(regex, match => `<span class=${styles.highlight}>${match}</span>`);\n}\n\ninterface TvSearchResultItemProps {\n query: string;\n program: TvSearchResult;\n region: TvRegion;\n getVideoActions: (video: TvProgram) => ActionOptions[];\n}\n\nexport function TvSearchResultItem(props: TvSearchResultItemProps): JSX.Element {\n const { program, query, region, getVideoActions } = props;\n\n const [ showMore, setShowMore ] = React.useState(false);\n\n const appLink = {\n application: AppChannels.TV,\n action: Actions.Tv.PREVIEW,\n args: [ region.code, program.id ]\n };\n\n const startTime = toLocalTime(program.startTime, program.timeZone);\n const stopTime = toLocalTime(program.stopTime, program.timeZone);\n const diff = Math.abs(DateHelper.diffBetween(startTime, stopTime, 'milliseconds'));\n\n return (\n <div className='row gx-3 mb-3'>\n <div className='col-3 flex-column align-items-flex-start pe-2'>\n <div className='rounded rounded-3 overflow-hidden'>\n <BaseImage\n imageType={ImageType.Thumbnails}\n data={program.thumbnailUrl}\n appLink={appLink}\n >\n <ImageFallback type={ImageFallbackType.Video} />\n\n <div className={styles.badgeOverlay}>\n <Badge\n type={BadgeType.DurationApproximate}\n data={diff}\n />\n </div>\n </BaseImage>\n </div>\n </div>\n <div className='col-9 pb-2'>\n <ActionsComponent\n actions={getVideoActions(program as TvProgram)}\n className='float-end mt-n1'\n actionsDropdownClassName='btn btn-link ms-1'\n />\n <AppLink appLink={appLink}>\n <h5 className='h4 mb-1 align-middle text-dark text-truncate' title={program.title ?? ''}>\n <span dangerouslySetInnerHTML={{\n __html: highlightText(program.title, query)\n }}></span>\n </h5>\n </AppLink>\n <BadgeListContainer className='mb-1'>\n {program.channelLogoUrl && <TvChannelBadge logoUrl={program.channelLogoUrl} className='me-1' small />}\n <TvProgramTimeBadge program={program as TvProgram} className='me-1' showDate showEndTime />\n {program.hasAdsFree && <TvAdFreeBadge small />}\n </BadgeListContainer>\n <div className='mb-1'>\n <span dangerouslySetInnerHTML={{\n __html: highlightText(program.description, query)\n }}></span>\n </div>\n {!!program.subtitleHits?.length &&\n <div>\n {program.subtitleHits?.map(((hit, index) => {\n if (!showMore && index > 1)\n return <React.Fragment key={index} />;\n\n return (\n <AppLink\n key={index}\n appLink={{\n ...appLink,\n args: [...appLink.args],\n params: {\n currentTime: hit.hitStartTime / 1000\n }\n }}\n className='d-block text-dark'\n >\n <span className='fw-semibold'>\n [{DateHelper.format(DateHelper.add(startTime, hit.hitStartTime, 'milliseconds'), 'h:mm:ss a')}]\n </span>\n \n <span dangerouslySetInnerHTML={{\n __html: highlightText(hit.srtFragment, query)\n }}></span>\n </AppLink>\n );\n }))}\n {!showMore && program.subtitleHits?.length > 2 && <div className='text-info cursor-pointer' onClick={() => setShowMore(true)}>Show more</div>}\n </div>\n }\n </div>\n </div>\n );\n}\n","import React from 'react';\n\nimport { HttpStatus } from 'libs/common/backbone/enums/HttpStatus';\nimport { Flight } from 'libs/common/flight';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { EntityType, LocationContext } from 'libs/analytics/interfaces';\n\nimport { SearchFilters } from 'libs/shared/apps/search/components/search-filters/SearchFilters';\nimport { Filters } from 'libs/shared/apps/search/utils/FilterHelper';\nimport { InfiniteScrollFooter } from 'libs/shared/components/infinite-scroll-footer/InfiniteScrollFooter';\nimport { PartialVideoList } from 'libs/shared/components/video-list/partial-loading/PartialVideoList';\nimport { handleHttpError } from 'libs/shared/errors/handlers/HttpErrorHandlers';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { useHandleObjectError } from 'libs/shared/hooks/UseHandleObjectError';\nimport { useInfiniteList } from 'libs/shared/hooks/UseInfiniteList';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\n\nimport { Actions } from 'shared/constants/ExchangeActions';\nimport { AppChannels } from 'shared/constants/ExchangeRadioChannels';\n\nimport { TvRegionSelect } from 'apps/tv/components/tv-region-select/TvRegionSelect';\nimport { TvSearchBar } from 'apps/tv/components/tv-search-bar/TvSearchBar';\nimport { TvRequests } from 'apps/tv/flight-requests/TvRequests';\nimport { useGetTvActions } from 'apps/tv/hooks/useGetTvActions';\nimport { useHandleRegionError } from 'apps/tv/hooks/useHandleRegionError';\nimport { useSelectedRegion } from 'apps/tv/hooks/useSelectedRegion';\nimport { TvChannel } from 'apps/tv/interfaces/models/TvChannel';\nimport { TvRegion } from 'apps/tv/interfaces/models/TvRegion';\nimport { TvSearchResult } from 'apps/tv/interfaces/models/TvSearchResult';\nimport { TvSearchResponse } from 'apps/tv/interfaces/responses/TvSearchResponse';\nimport { TvSearchResultsState } from 'apps/tv/views/tv-search-results/empty-state/TvSearchEmptyState';\n\nimport { TvSearchResultItem } from './components/tv-search-result-item/TvSearchResultItem';\n\ninterface TvSearchResultsViewProps {\n region: string;\n queryParams: HashObject;\n}\n\nTvSearchResultsView.defaultProps = {\n queryParams: {}\n};\n\nexport function TvSearchResultsView(props: TvSearchResultsViewProps): JSX.Element {\n const { queryParams } = props;\n const { query } = queryParams;\n\n const fetch = Flight.useGetFetch();\n const alerts = useAlerts();\n\n const region = Flight.useBasicFetch<TvRegion>(TvRequests.region(props.region));\n const regions = Flight.useBasicFetch<TvRegion[]>(TvRequests.regions());\n const channels = Flight.useBasicFetch<TvChannel[]>(\n region.data && TvRequests.channels(region.data.code)\n );\n\n if (region.hasCompleted && !region.data) {\n handleHttpError(HttpStatus.BadRequest);\n }\n\n const { setRegion } = useSelectedRegion();\n\n useHandleRegionError(region);\n useHandleObjectError([ regions, channels ]);\n\n useSetPageMetadata({ title: query ?? '' });\n\n const {\n items: programs,\n hasMore,\n isFetching,\n nextCursor\n } = useInfiniteList<TvSearchResult, TvSearchResponse>(\n region.data && getRequest,\n fetchNext,\n onError,\n response => response.results,\n response => {\n if (response.page * 25 > response.totalNumber)\n return null;\n\n return (response.page + 1).toString();\n }\n );\n\n function getRequest(cursor?: string): Flight.Request {\n return TvRequests.search(\n region.data.code,\n queryParams,\n +cursor\n );\n }\n\n function fetchNext(cursor?: string): void {\n return fetch(getRequest(cursor));\n }\n\n function onError(pageNumber: number, httpStatus: HttpStatus): void {\n if (pageNumber === 1)\n return handleHttpError(httpStatus);\n\n alerts.error('Something went wrong');\n }\n\n const getVideoActions = useGetTvActions('video-list', region.data);\n\n const dataLoaded = region.hasCompleted && regions.hasCompleted && channels.hasCompleted;\n\n const mainFilters = [\n Filters.TvChannel(channels.data),\n Filters.TvDateBroadcast(),\n Filters.TvFields()\n ];\n\n return (\n <>\n <TvSearchBar query={query} region={region.data} />\n\n <div className='d-flex justify-content-between mb-2'>\n <SearchFilters\n queryParams={queryParams}\n mainFilters={mainFilters}\n analyticsOptions={{\n entity: EntityType.SearchResults,\n location: LocationContext.SearchFilters\n }}\n appLink={{ application: AppChannels.TV, action: Actions.Tv.SEARCH, args: [region.data?.code]}}\n hideDivider\n isFetchingOptions={!dataLoaded}\n />\n\n <TvRegionSelect\n currentRegion={region.data}\n regions={regions.data}\n appLink={{\n application: AppChannels.TV,\n action: Actions.Tv.SEARCH,\n params: { query: query }\n }}\n onClick={setRegion}\n />\n </div>\n\n {dataLoaded && (\n <>\n {programs?.length ? (\n <>\n {programs.map((program, index) => {\n return (\n <TvSearchResultItem\n key={index}\n program={program}\n query={query}\n region={region.data}\n getVideoActions={getVideoActions}\n />\n );\n })}\n {(hasMore || isFetching) && (\n <InfiniteScrollFooter\n isFetching={isFetching}\n fetchNext={fetchNext}\n nextCursor={nextCursor}\n />\n )}\n </>\n ) : (\n <>\n {isFetching ? (\n <div className='m-n2'>\n <PartialVideoList />\n </div>\n ) : <TvSearchResultsState query={query} />}\n </>\n )}\n </>\n )}\n </>\n );\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{C as e,D as t,O as n,St as r,_t as i,b as a,d as o,ft as s,mn as c,o as l,s as u,t as d}from"./CnnBLBPY.chunk.js";import{_ as f,g as p,n as m,r as h,t as g,v as _}from"./DW0w8_XN.chunk.js";import{l as v}from"./D8clSITt.chunk.js";import{t as y}from"./CBDo4oAU.chunk.js";import{t as b}from"./GN6vNflP.chunk.js";import{n as x,t as S}from"./QxhzRpcg.chunk.js";import{a as C,c as w,n as T,r as ee,t as E}from"./1iKkdpYv.chunk.js";import{t as te}from"./xL848v0O.chunk.js";import{t as ne}from"./BHEKlg6n.chunk.js";import{n as D,r as O,t as re}from"./BK-FLPB-.chunk.js";import{E as ie,F as ae,I as k,O as oe,T as se,Z as A,r as ce,tt as le,v as ue}from"./app-BGxmHvGl.js";import{t as j}from"./DWCNy_Jd2.chunk.js";import{t as M}from"./EIJf9JbR2.chunk.js";import{t as N}from"./DuPL-nK72.chunk.js";import{t as P}from"./G-hiM6b42.chunk.js";import{i as de,n as fe,t as pe}from"./CxfZJDOr2.chunk.js";import{n as me,t as F}from"./BITl6co82.chunk.js";import{t as he}from"./DbuCsVvX.chunk.js";import{n as I,o as ge,t as L}from"./CXtVyCmH.chunk.js";import{t as _e}from"./B7KaaLVd.chunk.js";import{t as ve}from"./DrVEkVd5.chunk.js";import{S as ye,_ as be,a as xe,b as Se,c as Ce,d as we,f as Te,g as Ee,h as De,i as R,l as Oe,m as ke,n as Ae,o as je,p as Me,r as Ne,s as Pe,t as Fe,u as Ie,v as Le,x as Re,y as ze}from"./BXmlDh1p.chunk.js";import{n as Be,t as Ve}from"./Jf-R5ehU.chunk.js";import{i as He,n as Ue,r as We}from"./ApcDOLl8.chunk.js";import{n as Ge}from"./amjwjus3.chunk.js";import{t as Ke}from"./BLtXMKpA.chunk.js";import{a as qe,c as Je,i as Ye,n as Xe,o as Ze,r as Qe,s as $e,t as et,u as tt}from"./Ct_4zyE3.chunk.js";var z=function(e){return e[e.MultipleChoice=1]=`MultipleChoice`,e[e.ShortAnswer=2]=`ShortAnswer`,e[e.TrueOrFalse=3]=`TrueOrFalse`,e[e.Annotation=4]=`Annotation`,e[e.Image=5]=`Image`,e[e.MissingWord=6]=`MissingWord`,e[e.Illustration=7]=`Illustration`,e}({}),nt={},B=c(t()),rt=B.createContext(null);function it(e){return`series`in e?Ge(e.series):null}function at(){let e=v(A.config());return{hasCommonVideoPropsCompleted:e.hasCompleted,commonVideoProps:{subTextType:`series`,getSubTextAppLink:it,isPlugin:!1,canFavourite:null,setFavourite:null,yearGroups:null,imageCdnUrl:e.data?.imageCdnUrl,getClassroomGuideAppLink:null,getInteractiveGuidanceAppLink:null,getResourceGuidanceAppLink:null,showNewVideoIndicator:!1,getCompanyLogoFallbackUrl:()=>null,hasStudentExperience:!1,hasGuestExperience:!1,features:{showClassroomGuide:()=>!1}}}}var V=e();function ot(e,t,n){if(!t)return null;let r=e.params??{};return n?r?.previous?{application:e.application,action:e.action,args:e.args,params:{...r,cursor:r?.previous,previous:null}}:{application:e.application,action:e.action,args:e.args,params:{...r,cursor:null,previous:null}}:{application:e.application,action:e.action,args:e.args,params:{...r,cursor:t,previous:r.cursor}}}st.defaultProps={className:`py-2`,buttonVariant:`secondary`};function st({appLink:e,cursors:t,className:n,buttonVariant:r,prevHack:i,scrollTop:s,onClick:c}){function l(n){e&&s===!1&&ve.preventScrollTop(),d.logUserAction({page:n},{location:o.Pagination,entity:u.Pagination,actionType:a.Navigate}),c&&c(t[n])}return e?(0,V.jsx)(ae.Provider,{value:`shared.pagination`,children:(0,V.jsxs)(`div`,{className:n,children:[(0,V.jsx)(p,{appLink:ot(e,t.previous,i),className:`btn btn-${r} me-1 ${t.previous?``:`disabled`}`,onClick:()=>l(`previous`),style:{display:`inline-block`},children:(0,V.jsx)(k,{phrase:`previous`})}),(0,V.jsx)(p,{appLink:ot(e,t.next),className:`btn btn-${r} ${t.next?``:`disabled`}`,onClick:()=>l(`next`),style:{display:`inline-block`},children:(0,V.jsx)(k,{phrase:`next`})})]})}):(0,V.jsx)(ae.Provider,{value:`shared.pagination`,children:(0,V.jsxs)(`div`,{className:n,children:[(0,V.jsx)(x,{variant:r,className:`me-1 ${t.previous?``:`disabled`}`,onClick:()=>l(`previous`),children:(0,V.jsx)(k,{phrase:`previous`})}),(0,V.jsx)(x,{variant:r,className:`btn ${t.next?``:`disabled`}`,onClick:()=>l(`next`),children:(0,V.jsx)(k,{phrase:`next`})})]})})}var ct=({transform:e})=>({...e,x:0});function lt(e,t,n){let r=e.slice();return r.splice(n<0?r.length+n:n,0,r.splice(t,1)[0]),r}function ut(e,t){return e.reduce((e,n,r)=>{let i=t.get(n);return i&&(e[r]=i),e},Array(e.length))}function dt(e){return e!==null&&e>=0}function ft(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function pt(e){return typeof e==`boolean`?{draggable:e,droppable:e}:e}var mt=e=>{let{rects:t,activeIndex:n,overIndex:r,index:i}=e,a=lt(t,r,n),o=t[i],s=a[i];return!s||!o?null:{x:s.left-o.left,y:s.top-o.top,scaleX:s.width/o.width,scaleY:s.height/o.height}},ht={scaleX:1,scaleY:1},gt=e=>{let{activeIndex:t,activeNodeRect:n,index:r,rects:i,overIndex:a}=e,o=i[t]??n;if(!o)return null;if(r===t){let e=i[a];return e?{x:0,y:t<a?e.top+e.height-(o.top+o.height):e.top-o.top,...ht}:null}let s=_t(i,r,t);return r>t&&r<=a?{x:0,y:-o.height-s,...ht}:r<t&&r>=a?{x:0,y:o.height+s,...ht}:{x:0,y:0,...ht}};function _t(e,t,n){let r=e[t],i=e[t-1],a=e[t+1];return r?n<t?i?r.top-(i.top+i.height):a?a.top-(r.top+r.height):0:a?a.top-(r.top+r.height):i?r.top-(i.top+i.height):0:0}var vt=`Sortable`,yt=B.createContext({activeIndex:-1,containerId:vt,disableTransforms:!1,items:[],overIndex:-1,useDragOverlay:!1,sortedRects:[],strategy:mt,disabled:{draggable:!1,droppable:!1}});function bt(e){let{children:t,id:n,items:r,strategy:i=mt,disabled:a=!1}=e,{active:o,dragOverlay:s,droppableRects:c,over:l,measureDroppableContainers:u,measuringScheduled:d}=Te(),f=ye(vt,n),p=s.rect!==null,m=(0,B.useMemo)(()=>r.map(e=>typeof e==`object`&&`id`in e?e.id:e),[r]),h=o!=null,g=o?m.indexOf(o.id):-1,_=l?m.indexOf(l.id):-1,v=(0,B.useRef)(m),y=!ft(m,v.current),b=_!==-1&&g===-1||y,x=pt(a);Re(()=>{y&&h&&!d&&u(m)},[y,m,h,u,d]),(0,B.useEffect)(()=>{v.current=m},[m]);let S=(0,B.useMemo)(()=>({activeIndex:g,containerId:f,disabled:x,disableTransforms:b,items:m,overIndex:_,useDragOverlay:p,sortedRects:ut(m,c),strategy:i}),[g,f,x.draggable,x.droppable,b,m,_,c,p,i]);return B.createElement(yt.Provider,{value:S},t)}var xt=e=>{let{id:t,items:n,activeIndex:r,overIndex:i}=e;return lt(n,r,i).indexOf(t)},St=e=>{let{containerId:t,isSorting:n,wasDragging:r,index:i,items:a,newIndex:o,previousItems:s,previousContainerId:c,transition:l}=e;return!l||!r||s!==a&&i===o?!1:n?!0:o!==i&&t===c},Ct={duration:200,easing:`ease`},wt=`transform`,Tt=be.Transition.toString({property:wt,duration:0,easing:`linear`}),Et={roleDescription:`sortable`};function Dt(e){let{disabled:t,index:n,node:r,rect:i}=e,[a,o]=(0,B.useState)(null),s=(0,B.useRef)(n);return Re(()=>{if(!t&&n!==s.current&&r.current){let e=i.current;if(e){let t=Oe(r.current,{ignoreTransform:!0}),n={x:e.left-t.left,y:e.top-t.top,scaleX:e.width/t.width,scaleY:e.height/t.height};(n.x||n.y)&&o(n)}}n!==s.current&&(s.current=n)},[t,n,r,i]),(0,B.useEffect)(()=>{a&&requestAnimationFrame(()=>{o(null)})},[a]),a}function Ot(e){let{animateLayoutChanges:t=St,attributes:n,disabled:r,data:i,getNewIndex:a=xt,id:o,strategy:s,resizeObserverConfig:c,transition:l=Ct}=e,{items:u,containerId:d,activeIndex:f,disabled:p,disableTransforms:m,sortedRects:h,overIndex:g,useDragOverlay:_,strategy:v}=(0,B.useContext)(yt),y=kt(r,p),b=u.indexOf(o),x=(0,B.useMemo)(()=>({sortable:{containerId:d,index:b,items:u},...i}),[d,i,b,u]),S=(0,B.useMemo)(()=>u.slice(u.indexOf(o)),[u,o]),{rect:C,node:w,isOver:T,setNodeRef:ee}=ke({id:o,data:x,disabled:y.droppable,resizeObserverConfig:{updateMeasurementsFor:S,...c}}),{active:E,activatorEvent:te,activeNodeRect:ne,attributes:D,setNodeRef:O,listeners:re,isDragging:ie,over:ae,setActivatorNodeRef:k,transform:oe}=Me({id:o,data:x,attributes:{...Et,...n},disabled:y.draggable}),se=Se(ee,O),A=!!E,ce=A&&!m&&dt(f)&&dt(g),le=!_&&ie,ue=ce?(le&&ce?oe:null)??(s??v)({rects:h,activeNodeRect:ne,activeIndex:f,overIndex:g,index:b}):null,j=dt(f)&&dt(g)?a({id:o,items:u,activeIndex:f,overIndex:g}):b,M=E?.id,N=(0,B.useRef)({activeId:M,items:u,newIndex:j,containerId:d}),P=u!==N.current.items,de=t({active:E,containerId:d,isDragging:ie,isSorting:A,id:o,index:b,items:u,newIndex:N.current.newIndex,previousItems:N.current.items,previousContainerId:N.current.containerId,transition:l,wasDragging:N.current.activeId!=null}),fe=Dt({disabled:!de,index:b,node:w,rect:C});return(0,B.useEffect)(()=>{A&&N.current.newIndex!==j&&(N.current.newIndex=j),d!==N.current.containerId&&(N.current.containerId=d),u!==N.current.items&&(N.current.items=u)},[A,j,d,u]),(0,B.useEffect)(()=>{if(M===N.current.activeId)return;if(M&&!N.current.activeId){N.current.activeId=M;return}let e=setTimeout(()=>{N.current.activeId=M},50);return()=>clearTimeout(e)},[M]),{active:E,activeIndex:f,attributes:D,data:x,rect:C,index:b,newIndex:j,items:u,isOver:T,isSorting:A,isDragging:ie,listeners:re,node:w,overIndex:g,over:ae,setNodeRef:se,setActivatorNodeRef:k,setDroppableNodeRef:ee,setDraggableNodeRef:O,transform:fe??ue,transition:pe()};function pe(){if(fe||P&&N.current.newIndex===b)return Tt;if(!(le&&!Le(te)||!l)&&(A||de))return be.Transition.toString({...l,property:wt})}}function kt(e,t){return typeof e==`boolean`?{draggable:e,droppable:!1}:{draggable:e?.draggable??t.draggable,droppable:e?.droppable??t.droppable}}function At(e){if(!e)return!1;let t=e.data.current;return!!(t&&`sortable`in t&&typeof t.sortable==`object`&&`containerId`in t.sortable&&`items`in t.sortable&&`index`in t.sortable)}var jt=[R.Down,R.Right,R.Up,R.Left],Mt=(e,t)=>{let{context:{active:n,collisionRect:r,droppableRects:i,droppableContainers:a,over:o,scrollableAncestors:s}}=t;if(jt.includes(e.code)){if(e.preventDefault(),!n||!r)return;let t=[];a.getEnabled().forEach(n=>{if(!n||n!=null&&n.disabled)return;let a=i.get(n.id);if(a)switch(e.code){case R.Down:r.top<a.top&&t.push(n);break;case R.Up:r.top>a.top&&t.push(n);break;case R.Left:r.left>a.left&&t.push(n);break;case R.Right:r.left<a.left&&t.push(n);break}});let c=Ce({active:n,collisionRect:r,droppableRects:i,droppableContainers:t,pointerCoordinates:null}),l=Ie(c,`id`);if(l===o?.id&&c.length>1&&(l=c[1].id),l!=null){let e=a.get(n.id),t=a.get(l),o=t?i.get(t.id):null,c=t?.node.current;if(c&&o&&e&&t){let n=we(c).some((e,t)=>s[t]!==e),i=Nt(e,t),a=Pt(e,t),l=n||!i?{x:0,y:0}:{x:a?r.width-o.width:0,y:a?r.height-o.height:0},u={x:o.left,y:o.top};return l.x&&l.y?u:ze(u,l)}}}};function Nt(e,t){return!At(e)||!At(t)?!1:e.data.current.sortable.containerId===t.data.current.sortable.containerId}function Pt(e,t){return!At(e)||!At(t)||!Nt(e,t)?!1:e.data.current.sortable.index<t.data.current.sortable.index}Ft.defaultProps={dropAnimation:{duration:250,easing:`ease`},vertical:!0};function Ft(e){let[t,n]=B.useState(null);function r(t){n(t.active.id),e.onSortStart?.(t)}function i(t){n(null),e.onSortEnd(t)}function a(){return e.vertical?[ct]:[]}function o(){return e.vertical?gt:mt}let s=Ee(De(je,{activationConstraint:{distance:10}}),De(xe,{coordinateGetter:Mt}));return e.disabled?(0,V.jsx)(V.Fragment,{children:e.children}):(0,V.jsxs)(Ae,{sensors:s,collisionDetection:Pe,onDragStart:r,onDragEnd:i,modifiers:a(),children:[(0,V.jsx)(bt,{items:e.ids,strategy:o(),children:e.children}),(0,V.jsx)(Ne,{dropAnimation:e.dropAnimation,children:t?e.getDragOverlay(t):null})]})}function It(e,t,n){return t===e?n>t?`down`:n<t?`up`:null:null}function Lt(e){let{setNodeRef:t,transform:n,transition:r,isSorting:i,listeners:a,attributes:o,activeIndex:s,overIndex:c,index:l}=Ot({id:e.id,disabled:e.disabled}),u={transform:be.Transform.toString(n),transition:r,touchAction:`none`,position:`relative`};i&&l===s&&(u.visibility=`hidden`);let d=e.childComponent,f=It(l,s,c);return(0,V.jsx)(d,{...e.childProps,ref:t,style:u,dragListeners:a,dragAttributes:o,dragDirection:f})}function Rt(e){return(0,V.jsx)(`svg`,{...e,children:(0,V.jsx)(`path`,{fill:`currentColor`,d:`M11.67 19.376a.5.5 0 0 0 .66 0c.732-.64 1.435-1.239 2.1-1.805 1.453-1.235 2.722-2.314 3.703-3.335 1.443-1.504 2.367-2.984 2.367-4.812 0-2.588-1.83-4.866-4.517-4.866-1.736 0-2.865 1.008-3.535 1.954a7 7 0 0 0-.448.733 7 7 0 0 0-.448-.733c-.67-.946-1.8-1.954-3.535-1.954C5.33 4.558 3.5 6.836 3.5 9.424c0 1.828.924 3.308 2.367 4.812.98 1.02 2.25 2.1 3.703 3.335.665.566 1.368 1.165 2.1 1.805m.812-10.7.001-.004.007-.022.03-.097a5.83 5.83 0 0 1 .744-1.463c.565-.798 1.428-1.532 2.72-1.532 2.03 0 3.516 1.72 3.516 3.866 0 1.445-.713 2.686-2.089 4.119-.944.984-2.151 2.01-3.579 3.224-.575.49-1.187 1.01-1.832 1.57-.645-.56-1.257-1.08-1.832-1.57-1.428-1.214-2.635-2.24-3.58-3.224C5.214 12.11 4.5 10.869 4.5 9.423c0-2.146 1.487-3.865 3.517-3.865 1.29 0 2.154.734 2.719 1.532a5.8 5.8 0 0 1 .774 1.56l.007.022v.004a.5.5 0 0 0 .965 0`})})}function zt(e){return(0,V.jsx)(`svg`,{...e,children:(0,V.jsx)(`path`,{fill:`currentColor`,fillOpacity:.9,d:`M11.67 19.376a.5.5 0 0 0 .66 0c.732-.64 1.435-1.239 2.1-1.805 1.453-1.235 2.722-2.314 3.703-3.335 1.443-1.504 2.367-2.984 2.367-4.812 0-2.588-1.83-4.866-4.517-4.866-1.736 0-2.865 1.008-3.535 1.954a7 7 0 0 0-.448.733 7 7 0 0 0-.448-.733c-.67-.946-1.8-1.954-3.535-1.954C5.33 4.558 3.5 6.836 3.5 9.424c0 1.828.924 3.308 2.367 4.812.98 1.02 2.25 2.1 3.703 3.335.665.566 1.368 1.165 2.1 1.805`})})}var H={isFavouritedByCurrentUser(e){return e?.favouritedBy?.data.length===1},isFavouritedByUser(e,t){return!!y.findWhere(e?.favouritedBy?.data,{id:t?.id})},updateVideoState(e,t,n){return{id:e.id,favouritedBy:{data:n?[{id:t.id}]:[],pagination:{limit:25,cursors:{next:``,previous:``}}}}},showFavouriteButton(e,t){return P.getCanBeConsumed(e)?.canConsume?!!(t||ce.isTabletOrMobile()||H.isFavouritedByCurrentUser(e)):!1}},Bt={favourited:`_favourited_19h9u_1`,favouriteButton:`_favouriteButton_19h9u_1`,heart:`_heart_19h9u_5`,heartOutline:`_heartOutline_19h9u_16`},Vt=b.encloseNamespace(`shared.favouriteButton`);function Ht(e){let t=N(),n=H.isFavouritedByCurrentUser(e.video),[r,i]=B.useState(n);B.useEffect(()=>{i(n)},[n]);let a=`d-flex align-items-center justify-content-center cursor-pointer ${Bt.favouriteButton} ${r?Bt.favourited:``}`;e.className&&(a+=` ${e.className}`);function o(){let n=!r;function a(){function r(){return P.isClip(e.video)?n?`favouriteClipError`:`unfavouriteClipError`:P.isInteractive(e.video)?n?`favouriteInteractiveError`:`unfavouriteInteractiveError`:n?`favouriteVideoError`:`unfavouriteVideoError`}t.error(Vt(r())),i(!n)}i(n),e.setFavourite(e.video,n,null,a,e.analyticsData,e.analyticsOptions)}return!_.isFunction(e.setFavourite)||!_.isFunction(e.canFavourite)||!e.canFavourite(e.video)?(0,V.jsx)(V.Fragment,{}):(0,V.jsxs)(f,{className:a,onClick:o,tabIndex:e.preventFocus?-1:void 0,children:[(0,V.jsx)(g,{svg:zt,className:`svg-container ${Bt.heart}`}),(0,V.jsx)(g,{svg:Rt,className:`svg-container ${Bt.heartOutline}`})]})}function Ut(e){let t=P.getVideoProgress(e.video),n=t&&e.video.duration&&t/e.video.duration*1e5;return n?(0,V.jsx)(`div`,{className:`bg-primary h-100`,style:{width:`${n}%`}}):(0,V.jsx)(V.Fragment,{})}var Wt={bottomBar:`_bottomBar_575p1_1`};function Gt(e){return P.isVideo(e.video)?(0,V.jsx)(`div`,{className:Wt.bottomBar,children:(0,V.jsx)(Ut,{video:e.video})}):(0,V.jsx)(V.Fragment,{})}var Kt=`d-inline-block svg-container`,qt=`span`;function Jt(e){let{children:t,className:n=Kt,tagName:r=qt,size:i=m.Standard,onClick:a,title:o,tooltipPlacement:s=`right`}=e,c=r,l={className:`${n} svg-container ${i}`,onClick:_.isFunction(a)?a:null};return o?(0,V.jsx)(h,{title:o,placement:s,children:(0,V.jsx)(c,{...l,children:t})}):(0,V.jsx)(c,{...l,children:t})}var U={std:`_std_hibpg_1`,sm:`_sm_hibpg_5`,stdIcon:`_stdIcon_hibpg_10`,smIcon:`_smIcon_hibpg_21`};function Yt(e){return!P.isInteractive(e.video)&&!P.isClip(e.video)||!e.video._liteOwner&&!e.video._isClickViewCurated?.value?(0,V.jsx)(V.Fragment,{}):e.video._isClickViewCurated?.value?(0,V.jsx)(`div`,{className:`${e.size===`sm`?U.sm:U.std} me-1 rounded-circle position-relative bg-white`,children:(0,V.jsx)(Jt,{className:e.size===`sm`?U.smIcon:U.stdIcon,children:(0,V.jsx)(oe,{})})}):(0,V.jsx)(`div`,{className:`${e.size===`sm`?U.sm:U.std} me-1`,children:(0,V.jsx)(ie,{imageCdnUrl:e.imageCdnUrl,initials:ue.getInitials(e.video._liteOwner.name,e.video._liteOwner.surname),imageUrl:e.video._liteOwner.avatar?.url})})}var Xt={pluginHover:`_pluginHover_wpoz0_1`},Zt=`shared.pluginHover`;function Qt(e){return!e.isPlugin||e.isPluginPopup?(0,V.jsx)(V.Fragment,{}):(0,V.jsx)(p,{appLink:e.appLink,analyticsData:e.analyticsData,analyticsOptions:e.analyticsOptions,onClick:e.onClick,className:`
|
|
1
|
+
import{C as e,D as t,O as n,St as r,_t as i,b as a,d as o,ft as s,mn as c,o as l,s as u,t as d}from"./CnnBLBPY.chunk.js";import{_ as f,g as p,n as m,r as h,t as g,v as _}from"./DW0w8_XN.chunk.js";import{l as v}from"./D8clSITt.chunk.js";import{t as y}from"./CBDo4oAU.chunk.js";import{t as b}from"./GN6vNflP.chunk.js";import{n as x,t as S}from"./QxhzRpcg.chunk.js";import{a as C,c as w,n as T,r as ee,t as E}from"./DQBoqkL7.chunk.js";import{t as te}from"./xL848v0O.chunk.js";import{t as ne}from"./BHEKlg6n.chunk.js";import{n as D,r as O,t as re}from"./BK-FLPB-.chunk.js";import{E as ie,F as ae,I as k,O as oe,T as se,Z as A,r as ce,tt as le,v as ue}from"./app-CgkYY4K0.js";import{t as j}from"./DWCNy_Jd2.chunk.js";import{t as M}from"./B8BobN3r2.chunk.js";import{t as N}from"./BP0LMV9S2.chunk.js";import{t as P}from"./_3n_0ch72.chunk.js";import{i as de,n as fe,t as pe}from"./CxfZJDOr2.chunk.js";import{n as me,t as F}from"./BITl6co82.chunk.js";import{t as he}from"./DbuCsVvX.chunk.js";import{n as I,o as ge,t as L}from"./CXtVyCmH.chunk.js";import{t as _e}from"./B7KaaLVd.chunk.js";import{t as ve}from"./DrVEkVd5.chunk.js";import{S as ye,_ as be,a as xe,b as Se,c as Ce,d as we,f as Te,g as Ee,h as De,i as R,l as Oe,m as ke,n as Ae,o as je,p as Me,r as Ne,s as Pe,t as Fe,u as Ie,v as Le,x as Re,y as ze}from"./BXmlDh1p.chunk.js";import{n as Be,t as Ve}from"./Jf-R5ehU.chunk.js";import{i as He,n as Ue,r as We}from"./ApcDOLl8.chunk.js";import{n as Ge}from"./BXIfsdxg.chunk.js";import{t as Ke}from"./BLtXMKpA.chunk.js";import{a as qe,c as Je,i as Ye,n as Xe,o as Ze,r as Qe,s as $e,t as et,u as tt}from"./Dhe09-jE.chunk.js";var z=function(e){return e[e.MultipleChoice=1]=`MultipleChoice`,e[e.ShortAnswer=2]=`ShortAnswer`,e[e.TrueOrFalse=3]=`TrueOrFalse`,e[e.Annotation=4]=`Annotation`,e[e.Image=5]=`Image`,e[e.MissingWord=6]=`MissingWord`,e[e.Illustration=7]=`Illustration`,e}({}),nt={},B=c(t()),rt=B.createContext(null);function it(e){return`series`in e?Ge(e.series):null}function at(){let e=v(A.config());return{hasCommonVideoPropsCompleted:e.hasCompleted,commonVideoProps:{subTextType:`series`,getSubTextAppLink:it,isPlugin:!1,canFavourite:null,setFavourite:null,yearGroups:null,imageCdnUrl:e.data?.imageCdnUrl,getClassroomGuideAppLink:null,getInteractiveGuidanceAppLink:null,getResourceGuidanceAppLink:null,showNewVideoIndicator:!1,getCompanyLogoFallbackUrl:()=>null,hasStudentExperience:!1,hasGuestExperience:!1,features:{showClassroomGuide:()=>!1}}}}var V=e();function ot(e,t,n){if(!t)return null;let r=e.params??{};return n?r?.previous?{application:e.application,action:e.action,args:e.args,params:{...r,cursor:r?.previous,previous:null}}:{application:e.application,action:e.action,args:e.args,params:{...r,cursor:null,previous:null}}:{application:e.application,action:e.action,args:e.args,params:{...r,cursor:t,previous:r.cursor}}}st.defaultProps={className:`py-2`,buttonVariant:`secondary`};function st({appLink:e,cursors:t,className:n,buttonVariant:r,prevHack:i,scrollTop:s,onClick:c}){function l(n){e&&s===!1&&ve.preventScrollTop(),d.logUserAction({page:n},{location:o.Pagination,entity:u.Pagination,actionType:a.Navigate}),c&&c(t[n])}return e?(0,V.jsx)(ae.Provider,{value:`shared.pagination`,children:(0,V.jsxs)(`div`,{className:n,children:[(0,V.jsx)(p,{appLink:ot(e,t.previous,i),className:`btn btn-${r} me-1 ${t.previous?``:`disabled`}`,onClick:()=>l(`previous`),style:{display:`inline-block`},children:(0,V.jsx)(k,{phrase:`previous`})}),(0,V.jsx)(p,{appLink:ot(e,t.next),className:`btn btn-${r} ${t.next?``:`disabled`}`,onClick:()=>l(`next`),style:{display:`inline-block`},children:(0,V.jsx)(k,{phrase:`next`})})]})}):(0,V.jsx)(ae.Provider,{value:`shared.pagination`,children:(0,V.jsxs)(`div`,{className:n,children:[(0,V.jsx)(x,{variant:r,className:`me-1 ${t.previous?``:`disabled`}`,onClick:()=>l(`previous`),children:(0,V.jsx)(k,{phrase:`previous`})}),(0,V.jsx)(x,{variant:r,className:`btn ${t.next?``:`disabled`}`,onClick:()=>l(`next`),children:(0,V.jsx)(k,{phrase:`next`})})]})})}var ct=({transform:e})=>({...e,x:0});function lt(e,t,n){let r=e.slice();return r.splice(n<0?r.length+n:n,0,r.splice(t,1)[0]),r}function ut(e,t){return e.reduce((e,n,r)=>{let i=t.get(n);return i&&(e[r]=i),e},Array(e.length))}function dt(e){return e!==null&&e>=0}function ft(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function pt(e){return typeof e==`boolean`?{draggable:e,droppable:e}:e}var mt=e=>{let{rects:t,activeIndex:n,overIndex:r,index:i}=e,a=lt(t,r,n),o=t[i],s=a[i];return!s||!o?null:{x:s.left-o.left,y:s.top-o.top,scaleX:s.width/o.width,scaleY:s.height/o.height}},ht={scaleX:1,scaleY:1},gt=e=>{let{activeIndex:t,activeNodeRect:n,index:r,rects:i,overIndex:a}=e,o=i[t]??n;if(!o)return null;if(r===t){let e=i[a];return e?{x:0,y:t<a?e.top+e.height-(o.top+o.height):e.top-o.top,...ht}:null}let s=_t(i,r,t);return r>t&&r<=a?{x:0,y:-o.height-s,...ht}:r<t&&r>=a?{x:0,y:o.height+s,...ht}:{x:0,y:0,...ht}};function _t(e,t,n){let r=e[t],i=e[t-1],a=e[t+1];return r?n<t?i?r.top-(i.top+i.height):a?a.top-(r.top+r.height):0:a?a.top-(r.top+r.height):i?r.top-(i.top+i.height):0:0}var vt=`Sortable`,yt=B.createContext({activeIndex:-1,containerId:vt,disableTransforms:!1,items:[],overIndex:-1,useDragOverlay:!1,sortedRects:[],strategy:mt,disabled:{draggable:!1,droppable:!1}});function bt(e){let{children:t,id:n,items:r,strategy:i=mt,disabled:a=!1}=e,{active:o,dragOverlay:s,droppableRects:c,over:l,measureDroppableContainers:u,measuringScheduled:d}=Te(),f=ye(vt,n),p=s.rect!==null,m=(0,B.useMemo)(()=>r.map(e=>typeof e==`object`&&`id`in e?e.id:e),[r]),h=o!=null,g=o?m.indexOf(o.id):-1,_=l?m.indexOf(l.id):-1,v=(0,B.useRef)(m),y=!ft(m,v.current),b=_!==-1&&g===-1||y,x=pt(a);Re(()=>{y&&h&&!d&&u(m)},[y,m,h,u,d]),(0,B.useEffect)(()=>{v.current=m},[m]);let S=(0,B.useMemo)(()=>({activeIndex:g,containerId:f,disabled:x,disableTransforms:b,items:m,overIndex:_,useDragOverlay:p,sortedRects:ut(m,c),strategy:i}),[g,f,x.draggable,x.droppable,b,m,_,c,p,i]);return B.createElement(yt.Provider,{value:S},t)}var xt=e=>{let{id:t,items:n,activeIndex:r,overIndex:i}=e;return lt(n,r,i).indexOf(t)},St=e=>{let{containerId:t,isSorting:n,wasDragging:r,index:i,items:a,newIndex:o,previousItems:s,previousContainerId:c,transition:l}=e;return!l||!r||s!==a&&i===o?!1:n?!0:o!==i&&t===c},Ct={duration:200,easing:`ease`},wt=`transform`,Tt=be.Transition.toString({property:wt,duration:0,easing:`linear`}),Et={roleDescription:`sortable`};function Dt(e){let{disabled:t,index:n,node:r,rect:i}=e,[a,o]=(0,B.useState)(null),s=(0,B.useRef)(n);return Re(()=>{if(!t&&n!==s.current&&r.current){let e=i.current;if(e){let t=Oe(r.current,{ignoreTransform:!0}),n={x:e.left-t.left,y:e.top-t.top,scaleX:e.width/t.width,scaleY:e.height/t.height};(n.x||n.y)&&o(n)}}n!==s.current&&(s.current=n)},[t,n,r,i]),(0,B.useEffect)(()=>{a&&requestAnimationFrame(()=>{o(null)})},[a]),a}function Ot(e){let{animateLayoutChanges:t=St,attributes:n,disabled:r,data:i,getNewIndex:a=xt,id:o,strategy:s,resizeObserverConfig:c,transition:l=Ct}=e,{items:u,containerId:d,activeIndex:f,disabled:p,disableTransforms:m,sortedRects:h,overIndex:g,useDragOverlay:_,strategy:v}=(0,B.useContext)(yt),y=kt(r,p),b=u.indexOf(o),x=(0,B.useMemo)(()=>({sortable:{containerId:d,index:b,items:u},...i}),[d,i,b,u]),S=(0,B.useMemo)(()=>u.slice(u.indexOf(o)),[u,o]),{rect:C,node:w,isOver:T,setNodeRef:ee}=ke({id:o,data:x,disabled:y.droppable,resizeObserverConfig:{updateMeasurementsFor:S,...c}}),{active:E,activatorEvent:te,activeNodeRect:ne,attributes:D,setNodeRef:O,listeners:re,isDragging:ie,over:ae,setActivatorNodeRef:k,transform:oe}=Me({id:o,data:x,attributes:{...Et,...n},disabled:y.draggable}),se=Se(ee,O),A=!!E,ce=A&&!m&&dt(f)&&dt(g),le=!_&&ie,ue=ce?(le&&ce?oe:null)??(s??v)({rects:h,activeNodeRect:ne,activeIndex:f,overIndex:g,index:b}):null,j=dt(f)&&dt(g)?a({id:o,items:u,activeIndex:f,overIndex:g}):b,M=E?.id,N=(0,B.useRef)({activeId:M,items:u,newIndex:j,containerId:d}),P=u!==N.current.items,de=t({active:E,containerId:d,isDragging:ie,isSorting:A,id:o,index:b,items:u,newIndex:N.current.newIndex,previousItems:N.current.items,previousContainerId:N.current.containerId,transition:l,wasDragging:N.current.activeId!=null}),fe=Dt({disabled:!de,index:b,node:w,rect:C});return(0,B.useEffect)(()=>{A&&N.current.newIndex!==j&&(N.current.newIndex=j),d!==N.current.containerId&&(N.current.containerId=d),u!==N.current.items&&(N.current.items=u)},[A,j,d,u]),(0,B.useEffect)(()=>{if(M===N.current.activeId)return;if(M&&!N.current.activeId){N.current.activeId=M;return}let e=setTimeout(()=>{N.current.activeId=M},50);return()=>clearTimeout(e)},[M]),{active:E,activeIndex:f,attributes:D,data:x,rect:C,index:b,newIndex:j,items:u,isOver:T,isSorting:A,isDragging:ie,listeners:re,node:w,overIndex:g,over:ae,setNodeRef:se,setActivatorNodeRef:k,setDroppableNodeRef:ee,setDraggableNodeRef:O,transform:fe??ue,transition:pe()};function pe(){if(fe||P&&N.current.newIndex===b)return Tt;if(!(le&&!Le(te)||!l)&&(A||de))return be.Transition.toString({...l,property:wt})}}function kt(e,t){return typeof e==`boolean`?{draggable:e,droppable:!1}:{draggable:e?.draggable??t.draggable,droppable:e?.droppable??t.droppable}}function At(e){if(!e)return!1;let t=e.data.current;return!!(t&&`sortable`in t&&typeof t.sortable==`object`&&`containerId`in t.sortable&&`items`in t.sortable&&`index`in t.sortable)}var jt=[R.Down,R.Right,R.Up,R.Left],Mt=(e,t)=>{let{context:{active:n,collisionRect:r,droppableRects:i,droppableContainers:a,over:o,scrollableAncestors:s}}=t;if(jt.includes(e.code)){if(e.preventDefault(),!n||!r)return;let t=[];a.getEnabled().forEach(n=>{if(!n||n!=null&&n.disabled)return;let a=i.get(n.id);if(a)switch(e.code){case R.Down:r.top<a.top&&t.push(n);break;case R.Up:r.top>a.top&&t.push(n);break;case R.Left:r.left>a.left&&t.push(n);break;case R.Right:r.left<a.left&&t.push(n);break}});let c=Ce({active:n,collisionRect:r,droppableRects:i,droppableContainers:t,pointerCoordinates:null}),l=Ie(c,`id`);if(l===o?.id&&c.length>1&&(l=c[1].id),l!=null){let e=a.get(n.id),t=a.get(l),o=t?i.get(t.id):null,c=t?.node.current;if(c&&o&&e&&t){let n=we(c).some((e,t)=>s[t]!==e),i=Nt(e,t),a=Pt(e,t),l=n||!i?{x:0,y:0}:{x:a?r.width-o.width:0,y:a?r.height-o.height:0},u={x:o.left,y:o.top};return l.x&&l.y?u:ze(u,l)}}}};function Nt(e,t){return!At(e)||!At(t)?!1:e.data.current.sortable.containerId===t.data.current.sortable.containerId}function Pt(e,t){return!At(e)||!At(t)||!Nt(e,t)?!1:e.data.current.sortable.index<t.data.current.sortable.index}Ft.defaultProps={dropAnimation:{duration:250,easing:`ease`},vertical:!0};function Ft(e){let[t,n]=B.useState(null);function r(t){n(t.active.id),e.onSortStart?.(t)}function i(t){n(null),e.onSortEnd(t)}function a(){return e.vertical?[ct]:[]}function o(){return e.vertical?gt:mt}let s=Ee(De(je,{activationConstraint:{distance:10}}),De(xe,{coordinateGetter:Mt}));return e.disabled?(0,V.jsx)(V.Fragment,{children:e.children}):(0,V.jsxs)(Ae,{sensors:s,collisionDetection:Pe,onDragStart:r,onDragEnd:i,modifiers:a(),children:[(0,V.jsx)(bt,{items:e.ids,strategy:o(),children:e.children}),(0,V.jsx)(Ne,{dropAnimation:e.dropAnimation,children:t?e.getDragOverlay(t):null})]})}function It(e,t,n){return t===e?n>t?`down`:n<t?`up`:null:null}function Lt(e){let{setNodeRef:t,transform:n,transition:r,isSorting:i,listeners:a,attributes:o,activeIndex:s,overIndex:c,index:l}=Ot({id:e.id,disabled:e.disabled}),u={transform:be.Transform.toString(n),transition:r,touchAction:`none`,position:`relative`};i&&l===s&&(u.visibility=`hidden`);let d=e.childComponent,f=It(l,s,c);return(0,V.jsx)(d,{...e.childProps,ref:t,style:u,dragListeners:a,dragAttributes:o,dragDirection:f})}function Rt(e){return(0,V.jsx)(`svg`,{...e,children:(0,V.jsx)(`path`,{fill:`currentColor`,d:`M11.67 19.376a.5.5 0 0 0 .66 0c.732-.64 1.435-1.239 2.1-1.805 1.453-1.235 2.722-2.314 3.703-3.335 1.443-1.504 2.367-2.984 2.367-4.812 0-2.588-1.83-4.866-4.517-4.866-1.736 0-2.865 1.008-3.535 1.954a7 7 0 0 0-.448.733 7 7 0 0 0-.448-.733c-.67-.946-1.8-1.954-3.535-1.954C5.33 4.558 3.5 6.836 3.5 9.424c0 1.828.924 3.308 2.367 4.812.98 1.02 2.25 2.1 3.703 3.335.665.566 1.368 1.165 2.1 1.805m.812-10.7.001-.004.007-.022.03-.097a5.83 5.83 0 0 1 .744-1.463c.565-.798 1.428-1.532 2.72-1.532 2.03 0 3.516 1.72 3.516 3.866 0 1.445-.713 2.686-2.089 4.119-.944.984-2.151 2.01-3.579 3.224-.575.49-1.187 1.01-1.832 1.57-.645-.56-1.257-1.08-1.832-1.57-1.428-1.214-2.635-2.24-3.58-3.224C5.214 12.11 4.5 10.869 4.5 9.423c0-2.146 1.487-3.865 3.517-3.865 1.29 0 2.154.734 2.719 1.532a5.8 5.8 0 0 1 .774 1.56l.007.022v.004a.5.5 0 0 0 .965 0`})})}function zt(e){return(0,V.jsx)(`svg`,{...e,children:(0,V.jsx)(`path`,{fill:`currentColor`,fillOpacity:.9,d:`M11.67 19.376a.5.5 0 0 0 .66 0c.732-.64 1.435-1.239 2.1-1.805 1.453-1.235 2.722-2.314 3.703-3.335 1.443-1.504 2.367-2.984 2.367-4.812 0-2.588-1.83-4.866-4.517-4.866-1.736 0-2.865 1.008-3.535 1.954a7 7 0 0 0-.448.733 7 7 0 0 0-.448-.733c-.67-.946-1.8-1.954-3.535-1.954C5.33 4.558 3.5 6.836 3.5 9.424c0 1.828.924 3.308 2.367 4.812.98 1.02 2.25 2.1 3.703 3.335.665.566 1.368 1.165 2.1 1.805`})})}var H={isFavouritedByCurrentUser(e){return e?.favouritedBy?.data.length===1},isFavouritedByUser(e,t){return!!y.findWhere(e?.favouritedBy?.data,{id:t?.id})},updateVideoState(e,t,n){return{id:e.id,favouritedBy:{data:n?[{id:t.id}]:[],pagination:{limit:25,cursors:{next:``,previous:``}}}}},showFavouriteButton(e,t){return P.getCanBeConsumed(e)?.canConsume?!!(t||ce.isTabletOrMobile()||H.isFavouritedByCurrentUser(e)):!1}},Bt={favourited:`_favourited_19h9u_1`,favouriteButton:`_favouriteButton_19h9u_1`,heart:`_heart_19h9u_5`,heartOutline:`_heartOutline_19h9u_16`},Vt=b.encloseNamespace(`shared.favouriteButton`);function Ht(e){let t=N(),n=H.isFavouritedByCurrentUser(e.video),[r,i]=B.useState(n);B.useEffect(()=>{i(n)},[n]);let a=`d-flex align-items-center justify-content-center cursor-pointer ${Bt.favouriteButton} ${r?Bt.favourited:``}`;e.className&&(a+=` ${e.className}`);function o(){let n=!r;function a(){function r(){return P.isClip(e.video)?n?`favouriteClipError`:`unfavouriteClipError`:P.isInteractive(e.video)?n?`favouriteInteractiveError`:`unfavouriteInteractiveError`:n?`favouriteVideoError`:`unfavouriteVideoError`}t.error(Vt(r())),i(!n)}i(n),e.setFavourite(e.video,n,null,a,e.analyticsData,e.analyticsOptions)}return!_.isFunction(e.setFavourite)||!_.isFunction(e.canFavourite)||!e.canFavourite(e.video)?(0,V.jsx)(V.Fragment,{}):(0,V.jsxs)(f,{className:a,onClick:o,tabIndex:e.preventFocus?-1:void 0,children:[(0,V.jsx)(g,{svg:zt,className:`svg-container ${Bt.heart}`}),(0,V.jsx)(g,{svg:Rt,className:`svg-container ${Bt.heartOutline}`})]})}function Ut(e){let t=P.getVideoProgress(e.video),n=t&&e.video.duration&&t/e.video.duration*1e5;return n?(0,V.jsx)(`div`,{className:`bg-primary h-100`,style:{width:`${n}%`}}):(0,V.jsx)(V.Fragment,{})}var Wt={bottomBar:`_bottomBar_575p1_1`};function Gt(e){return P.isVideo(e.video)?(0,V.jsx)(`div`,{className:Wt.bottomBar,children:(0,V.jsx)(Ut,{video:e.video})}):(0,V.jsx)(V.Fragment,{})}var Kt=`d-inline-block svg-container`,qt=`span`;function Jt(e){let{children:t,className:n=Kt,tagName:r=qt,size:i=m.Standard,onClick:a,title:o,tooltipPlacement:s=`right`}=e,c=r,l={className:`${n} svg-container ${i}`,onClick:_.isFunction(a)?a:null};return o?(0,V.jsx)(h,{title:o,placement:s,children:(0,V.jsx)(c,{...l,children:t})}):(0,V.jsx)(c,{...l,children:t})}var U={std:`_std_hibpg_1`,sm:`_sm_hibpg_5`,stdIcon:`_stdIcon_hibpg_10`,smIcon:`_smIcon_hibpg_21`};function Yt(e){return!P.isInteractive(e.video)&&!P.isClip(e.video)||!e.video._liteOwner&&!e.video._isClickViewCurated?.value?(0,V.jsx)(V.Fragment,{}):e.video._isClickViewCurated?.value?(0,V.jsx)(`div`,{className:`${e.size===`sm`?U.sm:U.std} me-1 rounded-circle position-relative bg-white`,children:(0,V.jsx)(Jt,{className:e.size===`sm`?U.smIcon:U.stdIcon,children:(0,V.jsx)(oe,{})})}):(0,V.jsx)(`div`,{className:`${e.size===`sm`?U.sm:U.std} me-1`,children:(0,V.jsx)(ie,{imageCdnUrl:e.imageCdnUrl,initials:ue.getInitials(e.video._liteOwner.name,e.video._liteOwner.surname),imageUrl:e.video._liteOwner.avatar?.url})})}var Xt={pluginHover:`_pluginHover_wpoz0_1`},Zt=`shared.pluginHover`;function Qt(e){return!e.isPlugin||e.isPluginPopup?(0,V.jsx)(V.Fragment,{}):(0,V.jsx)(p,{appLink:e.appLink,analyticsData:e.analyticsData,analyticsOptions:e.analyticsOptions,onClick:e.onClick,className:`
|
|
2
2
|
position-absolute top-0 start-0 end-0 bottom-0 opacity-0 cursor-pointer
|
|
3
3
|
${Xt.pluginHover}
|
|
4
4
|
${e.className?e.className:``}
|
|
@@ -47,4 +47,4 @@ import{C as e,D as t,O as n,St as r,_t as i,b as a,d as o,ft as s,mn as c,o as l
|
|
|
47
47
|
<path fill-rule='evenodd' clip-rule='evenodd' d='M18.2411 13.7881C18.2887 13.5157 18.0395 13.2465 17.6953 13.3346C17.3344 13.4271 16.9508 13.4506 16.5627 13.3938C15.8185 14.404 15.232 15.0693 14.7556 15.4771C14.9397 15.8591 14.9223 16.3164 14.7953 16.7237C14.663 17.148 14.3965 17.5746 14.004 17.9197C13.1974 18.6288 11.9124 18.9538 10.252 18.3555L9.6361 18.1336L10.8248 16.4403C10.8536 16.3994 10.895 16.2797 10.948 15.9967C10.9568 15.9502 10.9658 15.8998 10.9752 15.8466L10.9753 15.846L10.9754 15.8459L10.9754 15.8459C11.0141 15.6287 11.0613 15.3639 11.1335 15.1223C11.2242 14.8188 11.3771 14.4637 11.6835 14.2095C11.9817 13.9622 12.3608 13.8619 12.8023 13.9024C13.0571 13.2864 13.5182 12.476 14.2494 11.3987L14.2357 11.357C14.2007 11.2488 14.1511 11.0868 14.119 10.8858C14.0536 10.4764 14.0643 9.9266 14.3604 9.29657C14.4494 9.10715 14.5146 8.91445 14.5573 8.72168C14.8536 7.38674 14.077 6.0484 12.7163 5.76998C12.6531 5.75701 12.5892 5.74486 12.5246 5.73347C8.70188 5.05944 5.05659 7.61193 4.38254 11.4346C3.70848 15.2574 6.26101 18.9027 10.0837 19.5768C13.9064 20.2508 17.5518 17.6983 18.2258 13.8756L18.2411 13.7881ZM15.8626 12.6572C15.8947 12.5723 15.9481 12.5005 16.0149 12.4463C16.091 12.34 16.1692 12.2296 16.2493 12.1152C17.2716 10.6552 18.1315 9.27136 18.6754 8.22122C18.8855 7.81559 19.042 7.47194 19.1431 7.19994C18.9065 7.38016 18.6161 7.63896 18.2839 7.97168C17.4465 8.81052 16.4034 10.0589 15.3866 11.5111C14.5179 12.7517 14.0214 13.6064 13.7659 14.1913L14.285 14.5548C14.6757 14.1827 15.1887 13.5831 15.8626 12.6572ZM17.4471 12.3659C17.3881 12.381 17.3282 12.3933 17.2674 12.4027C18.2189 11.0249 19.029 9.71286 19.5633 8.68114C19.8471 8.13334 20.0641 7.64372 20.1787 7.25589C20.2351 7.06519 20.2765 6.8674 20.2745 6.68479C20.2725 6.51587 20.2295 6.23216 19.9736 6.05296C19.7244 5.87848 19.4469 5.92652 19.2885 5.97523C19.1139 6.02893 18.9362 6.12717 18.7674 6.23956C18.4249 6.46764 18.0169 6.82379 17.5762 7.26518C16.8442 7.99842 15.9806 9.00929 15.1147 10.1778C15.1398 10.0455 15.1836 9.90125 15.2542 9.74611L15.2654 9.72185C16.2163 7.69819 15.1756 5.25268 12.9173 4.7904C12.8445 4.77544 12.7715 4.76158 12.6983 4.74868C8.33172 3.97872 4.16769 6.89438 3.39773 11.261C2.62777 15.6276 5.54347 19.7916 9.91006 20.5616C14.2767 21.3315 18.4407 18.4159 19.2106 14.0492L19.2262 13.9606C19.4123 12.8961 18.4178 12.1172 17.4471 12.3659ZM11.6433 17.0149C11.8176 16.7665 11.8855 16.4229 11.9309 16.1811C11.9432 16.1158 11.9545 16.0525 11.9655 15.9909C12.0033 15.7804 12.0374 15.5901 12.0916 15.4086C12.161 15.1765 12.2405 15.0468 12.3219 14.9792C12.3717 14.9379 12.4608 14.8871 12.649 14.894L13.8774 15.9774C13.9004 16.0738 13.9028 16.2267 13.8406 16.426C13.7637 16.6728 13.6001 16.9432 13.3438 17.1686C12.934 17.5288 12.2479 17.8037 11.2342 17.5976L11.6433 17.0149ZM7 14.5C7 14.7761 7.22386 15 7.5 15C7.77614 15 8 14.7761 8 14.5C8 14.2239 7.77614 14 7.5 14C7.22386 14 7 14.2239 7 14.5ZM9 14.5C9 15.3284 8.32843 16 7.5 16C6.67157 16 6 15.3284 6 14.5C6 13.6716 6.67157 13 7.5 13C8.32843 13 9 13.6716 9 14.5ZM11.6 8.5C11.6 8.77614 11.3761 9 11.1 9C10.8238 9 10.6 8.77614 10.6 8.5C10.6 8.22386 10.8238 8 11.1 8C11.3761 8 11.6 8.22386 11.6 8.5ZM9.59998 8.5C9.59998 9.32843 10.2715 10 11.1 10C11.9284 10 12.6 9.32843 12.6 8.5C12.6 7.67157 11.9284 7 11.1 7C10.2715 7 9.59998 7.67157 9.59998 8.5ZM7.70007 11C7.42393 11 7.20007 10.7761 7.20007 10.5C7.20007 10.2239 7.42393 10 7.70007 10C7.97622 10 8.20007 10.2239 8.20007 10.5C8.20007 10.7761 7.97622 11 7.70007 11ZM7.70007 12C8.5285 12 9.20007 11.3284 9.20007 10.5C9.20007 9.67157 8.5285 9 7.70007 9C6.87165 9 6.20007 9.67157 6.20007 10.5C6.20007 11.3284 6.87165 12 7.70007 12Z' />
|
|
48
48
|
</svg>
|
|
49
49
|
`}var Lr=b.encloseNamespace(`shared.interactionTypes`),Q=(e,t)=>b.isInitialised()?Lr(e):t;function $(e){return(0,V.jsx)(`div`,{dangerouslySetInnerHTML:{__html:e}})}var Rr={[z.Annotation](){return{name:Q(`annotationName`,`Annotation`),bgClassName:`bg-pink`,Svg:()=>$(Fr()),svgEl:Fr(),typeName:`annotation`}},[z.Image](){return{name:Q(`imageName`,`Image`),bgClassName:`bg-orange`,Svg:()=>$(Pr()),svgEl:Pr(),typeName:`image`}},[z.MissingWord](){return{name:Q(`missingWordName`,`Fill in the blank`),prompt:Q(`missingWordPrompt`,`Fill in the blank by typing the missing word(s)`),bgClassName:`bg-teal`,Svg:()=>$(Mr()),svgEl:Mr(),typeName:`missing-word`}},[z.MultipleChoice](){return{name:Q(`multipleChoiceName`,`Multiple choice`),prompt:Q(`multipleChoicePrompt`,`Choose the correct answer(s)`),bgClassName:`bg-blue`,Svg:()=>$(Nr()),svgEl:Nr(),typeName:`multiple-choice`}},[z.ShortAnswer](){return{name:Q(`shortAnswerName`,`Short answer`),prompt:Q(`shortAnswerPrompt`,`Type in your answer to the question`),bgClassName:`bg-green`,Svg:()=>$(jr()),svgEl:jr(),typeName:`short-answer`}},[z.TrueOrFalse](){return{name:Q(`trueOrFalseName`,`True or false`),prompt:Q(`trueOrFalsePrompt`,`Choose the correct answer`),bgClassName:`bg-purple`,Svg:()=>$(Ar()),svgEl:Ar(),typeName:`true-or-false`}},[z.Illustration](){return{name:Q(`illustrationName`,`Illustrate`),prompt:Q(`illustrationPrompt`,`Draw the answer`),bgClassName:`bg-indigo`,Svg:()=>$(Ir()),svgEl:Ir(),typeName:`illustration`}}},zr={getTypeInfo:e=>{let t=Rr[e];if(!t){i.throw(new s(`No type info defined for typeId: ${e}`));return}return t()}};function Br(e,t,n){return e.replace(RegExp(`<${t}.*?>`,`gi`),``).replace(RegExp(`</${t}>`,`gi`),n?`<br>`:``)}function Vr(e,t,n=!1){return!e||!t.length?e:t.reduce((e,t)=>Br(e,t,n),e)}var Hr={stripTags(e){let{text:t,fallbackText:n}=e;if(!t)return;let r=t;return r=Vr(r,[`ul`,`ol`,`b`,`i`,`u`,`old`,`em`,`strong`,`sup`,`sub`,`a`,`span`,`svg`,`path`]),r=Vr(r,[`li`,`p`,`div`],!0),r.split(`<br>`)?.filter(e=>!!e)?.join(``)?.trim()||n}};function Ur(e){return Hr.stripTags({text:e,fallbackText:`Annotation`})}Wr.defaultProps={showIcon:!0,showQuestion:!0};function Wr(e){let{name:t,bgClassName:n,Svg:r}=zr.getTypeInfo(e.interaction.typeId),i=e.questionNumber?`${e.questionNumber}. `:``,a=`interaction-type-icon flex-shrink-0 ${n}`;return e.smallIcon&&(a+=` sm`),(e.showQuestion||e.showTypeName)&&(a+=e.smallIcon?` me-1`:` me-2`),e.iconClassName&&(a+=` ${e.iconClassName}`),(0,V.jsxs)(`span`,{className:e.containerClassName,children:[!!e.showIcon&&(0,V.jsx)(`span`,{className:a,children:(0,V.jsx)(r,{})}),(0,V.jsxs)(p,{appLink:e.appLink,onClick:e.onClick,children:[!!e.showTypeName&&(0,V.jsx)(`span`,{className:e.typeNameClassName,children:(0,V.jsxs)(`strong`,{children:[i,t]})}),!!e.showQuestion&&(0,V.jsx)(`span`,{className:e.questionClassName,children:e.interaction.typeId===z.Annotation?(0,V.jsx)(`span`,{dangerouslySetInnerHTML:{__html:Ur(e.interaction.data.annotation)}}):e.interaction.name})]})]})}var Gr=`shared.interactiveItem`;function Kr(e){let t=E();return typeof e==`number`?e:t===_e.XS?3:t===_e.SM?1:t===_e.MD||t===_e.LG?2:3}function qr(e){let t=Kr(e.totalToDisplay);if(!e.timepoints?.length)return(0,V.jsx)(V.Fragment,{});let n=[],r=0;e.timepoints.forEach(i=>{i?.interactions.forEach(a=>{if(nt[a.typeId]||r>=t)return;r++;let o=a.typeId===z.Annotation&&typeof a.data==`string`?JSON.parse(a.data):a.data,s={...a,data:{...o,appLink:e.appLink&&{...e.appLink,params:{t:Math.floor(i.visibleAt/1e3)}}}};n.push(s)})});let i=e.timepoints.reduce((e,t)=>{let n=t?.interactions?.length??0;return e+=n,e},0);return n.length?(0,V.jsxs)(V.Fragment,{children:[n.map((t,n)=>(0,V.jsx)(`div`,{className:`d-flex align-items-center mb-1`,children:(0,V.jsx)(`div`,{className:`clamp-1`,children:(0,V.jsx)(Wr,{interaction:t,appLink:t.data?.appLink,onClick:t.data?.appLink?e.onClickAppLink:null,smallIcon:!0})})},n)),(0,V.jsx)(`div`,{className:`mb-1 text-link`,children:(0,V.jsx)(p,{className:`cursor-pointer hover-text-underline`,appLink:e.previewAppLink,onClick:e.onClickAppLink,children:(0,V.jsx)(k,{namespace:Gr,phrase:`previewQuestions`,options:{questionsShown:n.length,smartCount:i}})})})]}):(0,V.jsx)(V.Fragment,{})}var Jr=B.forwardRef((e,t)=>{let n=se(),[r,i]=F(),a=C.getSize(n,e.size),s=a===`sm`,{isSortable:c}=B.useContext(ni),l=Er(e.video.subjectPresentationAudiences?.data,e.presentationAudiences),d=c&&!n.xs&&(i||e.index===void 0||!e.showIndexes),f=e.showIndexes&&!d&&!n.xs,p=(d||e.showIndexes)&&!n.xs,m=e.getVideoAppLink(e.video,{}),h={analyticsData:e.analyticsData,analyticsOptions:{entity:u.Interactive,location:o.InteractiveListItem}},{canNavigate:g}=P.getCanBeConsumed(e.video);return(0,V.jsx)(`div`,{ref:r,className:`w-100`,children:(0,V.jsxs)(`div`,{className:`row g-0 py-2`,ref:t,style:e.style,children:[(0,V.jsx)(S,{...C.getThumbnailColumns(),className:`flex-column align-items-flex-start ${s?`pb-2 pe-2`:`mb-1 px-2`}`,children:(0,V.jsxs)(w,{children:[(0,V.jsx)(dr,{index:e.index,showDragHandle:d,showIndexes:f,dragHandleIcon:e.dragHandleIcon,dragHandleIconSize:e.dragHandleIconSize,dragAttributes:e.dragAttributes,dragListeners:e.dragListeners}),(0,V.jsx)(S,{xs:C.getThumbnailColSize(p),children:(0,V.jsx)(ir,{...h,video:e.video,appLink:m,shareId:e.shareId,audience:l,imageOptions:{size:D.Medium},textPosition:Y.Independent,type:`static`,hideDuration:s,commonVideoProps:{...e.commonVideoProps,subTextType:`none`}})})]})}),(0,V.jsxs)(S,{...C.getDetailsColumns(),className:`position-relative ${s?`pb-2`:`px-2`}`,children:[(0,V.jsxs)(`div`,{className:`d-flex justify-content-between`,children:[(0,V.jsx)(mr,{video:e.video,appLink:m,size:a,yearGroups:e.commonVideoProps.yearGroups,showPadlock:!e.commonVideoProps.hasStudentExperience&&!e.commonVideoProps.hasGuestExperience,linkClassName:`flex-grow-1`,...h}),(0,V.jsx)(vr,{...h,video:e.video,showSignIn:e.showSignIn,signInAppLink:e.getSignInAppLink?.(m)})]}),g?(0,V.jsx)(`div`,{className:`pt-sm-1 pt-md-0`,children:(0,V.jsx)(qr,{timepoints:e.video._timepoints?.value,appLink:m,previewAppLink:e.getPreviewQuestionsAppLink(e.video)})}):(0,V.jsx)(sr,{video:e.video,showSignIn:e.showSignIn,hasStudentExperience:e.commonVideoProps.hasStudentExperience,hasGuestExperience:e.commonVideoProps.hasGuestExperience}),!e.commonVideoProps.hasStudentExperience&&!e.commonVideoProps.hasGuestExperience&&(0,V.jsx)(pr,{video:e.video,yearGroups:e.commonVideoProps.yearGroups})]})]})})}),Yr=e=>(0,V.jsx)(Lt,{id:e.video.id,childComponent:Jr,childProps:e}),Xr={responsiveGuidance:`_responsiveGuidance_kx84c_2`},Zr=B.forwardRef((e,t)=>{let n=se(),[r,i]=F(),a=C.getSize(n,e.size),s=a===`sm`,{isSortable:c}=B.useContext(ni),l=e.video?.subjectPresentationAudiences?.data,d=Er(l,e.presentationAudiences),f=c&&!n.xs&&(i||e.index===void 0||!e.showIndexes),p=e.showIndexes&&!f&&!n.xs,m=(f||e.showIndexes)&&!n.xs,h=e.getVideoAppLink?.(e.video,{});function g(){return e.commonVideoProps.getSubTextAppLink?.(e.video)}let _=e.commonVideoProps.getSubTextType?.(e.video),v=g(),y={analyticsData:e.analyticsData,analyticsOptions:e.analyticsOptions??{entity:u.Video,location:o.VideoListItem}};return(0,V.jsx)(`div`,{ref:r,className:`w-100`,children:(0,V.jsxs)(`div`,{className:`row g-0 ${s?``:`py-2`}`,style:e.style,ref:t,children:[(0,V.jsx)(S,{...C.getThumbnailColumns(),className:`flex-column align-items-flex-start mb-1 mb-sm-0 pb-sm-2 pe-sm-2 px-md-2 pb-md-0`,children:(0,V.jsxs)(w,{children:[(0,V.jsx)(dr,{index:e.index,showDragHandle:f,showIndexes:p,dragHandleIcon:e.dragHandleIcon,dragHandleIconSize:e.dragHandleIconSize,dragAttributes:e.dragAttributes,dragListeners:e.dragListeners}),(0,V.jsx)(S,{xs:C.getThumbnailColSize(m),children:(0,V.jsx)(ir,{...y,video:e.video,appLink:h,shareId:e.shareId,audience:d,imageOptions:{size:m?D.Small:D.Medium},textPosition:Y.Independent,type:`static`,hideRating:!1,commonVideoProps:e.commonVideoProps})})]})}),(0,V.jsxs)(S,{...C.getDetailsColumns(),className:`d-flex position-relative flex-column px-0 px-md-2 pb-0 pb-sm-2 pb-md-0 justify-content-md-between`,children:[(0,V.jsxs)(`div`,{children:[(0,V.jsxs)(`div`,{className:`d-flex justify-content-between`,children:[(0,V.jsxs)(`div`,{className:`flex-grow-1`,children:[(0,V.jsx)(tt,{...y,video:e.video,appLink:v,type:_}),(0,V.jsx)(mr,{...y,video:e.video,appLink:h,size:a,yearGroups:e.commonVideoProps.yearGroups,showNewVideoIndicator:e.commonVideoProps.showNewVideoIndicator,showPadlock:!e.commonVideoProps.hasStudentExperience&&!e.commonVideoProps.hasGuestExperience,titleClassName:`mb-0`})]}),(0,V.jsx)(vr,{...y,video:e.video,showSignIn:e.showSignIn,signInAppLink:e.getSignInAppLink?.(h)})]}),!s&&(0,V.jsx)(sr,{video:e.video,showSignIn:e.showSignIn,hasStudentExperience:e.commonVideoProps.hasStudentExperience,hasGuestExperience:e.commonVideoProps.hasGuestExperience}),!e.commonVideoProps.hasStudentExperience&&!e.commonVideoProps.hasGuestExperience&&(0,V.jsx)(pr,{video:e.video,yearGroups:e.commonVideoProps.yearGroups})]}),!e.hideVideoGuidance&&(0,V.jsx)(Ln,{video:e.video,getVideoAppLink:e.getVideoAppLink,commonVideoProps:e.commonVideoProps,containerClassName:`d-flex justify-content-start align-items-center pt-sm-1 gap-1`,responsiveClassName:Xr.responsiveGuidance,...y})]})]})})});Zr.defaultProps={dragHandleIcon:cr,dragHandleIconSize:m.Small,size:`md`};var Qr=e=>(0,V.jsx)(Lt,{id:e.video.id,childComponent:Zr,childProps:e}),$r={sortableVideo:`_sortableVideo_ix6n3_1`,videoList:`_videoList_ix6n3_4`,badgeContainer:`_badgeContainer_ix6n3_12`,dragStyle:`_dragStyle_ix6n3_31`},ei=b.encloseNamespace(`shared.videoList`);function ti(e,t){return P.isClip(e)?t?kr:Or:P.isInteractive(e)?t?Yr:Jr:t?Qr:Zr}var ni=B.createContext({isSortable:!1});function ri(e){let{isSortable:t}=B.useContext(ni),[n,i]=B.useState(!1),{checkboxHelper:a}=e,o=r.getCurrentAppLink();return(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(`div`,{className:`position-relative ${$r.videoList}`,children:e.videos.map((r,o)=>{let s=ti(r,t),c=Number.isInteger(e.startingPositionIndex)?e.startingPositionIndex:0,l=a&&a.getSelectedCount()>1&&a.isChecked(r.id)?a.getSelected():r,u=typeof e.getAnalyticsData==`function`?e.getAnalyticsData(o):{pagePositionIndex:c+o};return(0,V.jsx)(Fe,{draggable:e.drag&&!t&&{id:r.id,data:l},dragStyle:$r.dragStyle,isDragging:n,setIsDragging:i,children:(0,V.jsxs)(`div`,{className:`d-flex flex-row align-items-center`,children:[e.allowBulkAction&&(0,V.jsx)(ee,{className:`mx-0 mx-md-2`,id:r.id,ariaLabel:`${ei(`ariaBulkAction`)}: ${r.name}`,onChange:()=>a.onToggleItem(r.id),checked:a.isChecked(r.id)}),(0,V.jsx)(s,{video:r,index:o,getVideoAppLink:e.getVideoAppLink,dragHandleIcon:e.dragHandleIcon,dragHandleIconSize:e.dragHandleIconSize,showSignIn:e.showSignIn,getSignInAppLink:e.getSignInAppLink,analyticsData:u,hasPermissions:e.hasPermissions,canRemovePrivateVideos:e.canRemovePrivateVideos,presentationAudiences:e.presentationAudiences,showIndexes:e.showIndexes,getPreviewQuestionsAppLink:e.getPreviewQuestionsAppLink,hideVideoGuidance:e.hideVideoGuidance,showOwner:e.showOwner,shareId:e.shareId,commonVideoProps:e.commonVideoProps,analyticsOptions:e.analyticsOptions})]})},`${r.id}:${o}`)})}),e.cursors&&(0,V.jsx)(st,{appLink:o,cursors:e.cursors})]})}export{Er as a,ir as c,Wn as d,Ln as f,rt as h,Or as i,Y as l,at as m,Zr as n,_r as o,vn as p,Jr as r,mr as s,ri as t,qn as u};
|
|
50
|
-
//# sourceMappingURL=
|
|
50
|
+
//# sourceMappingURL=CFkqPGiT.chunk.js.map
|