@clickview/reports 0.87.0-rc.0 → 0.87.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 +292 -292
- package/dist/bundles.json +1 -1
- package/dist/en.json +1 -1
- package/dist/scripts/3AogjH3v.chunk.js +2 -0
- package/dist/scripts/3AogjH3v.chunk.js.map +1 -0
- package/dist/scripts/{BYLD2f9R2.chunk.js → B01p94Dy2.chunk.js} +2 -2
- package/dist/scripts/{BYLD2f9R2.chunk.js.map → B01p94Dy2.chunk.js.map} +1 -1
- package/dist/scripts/{C7rNnvPs.chunk.js → BKWokslH.chunk.js} +2 -2
- package/dist/scripts/{C7rNnvPs.chunk.js.map → BKWokslH.chunk.js.map} +1 -1
- package/dist/scripts/{BQcTfbZm2.chunk.js → BSethuDj2.chunk.js} +2 -2
- package/dist/scripts/{BQcTfbZm2.chunk.js.map → BSethuDj2.chunk.js.map} +1 -1
- package/dist/scripts/{CkS0imTk2.chunk.js → BbbU3LZb2.chunk.js} +2 -2
- package/dist/scripts/{CkS0imTk2.chunk.js.map → BbbU3LZb2.chunk.js.map} +1 -1
- package/dist/scripts/{DPmS69Mt2.chunk.js → BfXnhpYV2.chunk.js} +2 -2
- package/dist/scripts/{DPmS69Mt2.chunk.js.map → BfXnhpYV2.chunk.js.map} +1 -1
- package/dist/scripts/{CKTy7NJ92.chunk.js → BnSmV6552.chunk.js} +2 -2
- package/dist/scripts/{CKTy7NJ92.chunk.js.map → BnSmV6552.chunk.js.map} +1 -1
- package/dist/scripts/BryHI-Z6.chunk.js +2 -0
- package/dist/scripts/BryHI-Z6.chunk.js.map +1 -0
- package/dist/scripts/{Bs_S7mFn2.chunk.js → C587wSvL2.chunk.js} +2 -2
- package/dist/scripts/{Bs_S7mFn2.chunk.js.map → C587wSvL2.chunk.js.map} +1 -1
- package/dist/scripts/{DldsJ3cq.chunk.js → CGfKmxkF.chunk.js} +2 -2
- package/dist/scripts/{DldsJ3cq.chunk.js.map → CGfKmxkF.chunk.js.map} +1 -1
- package/dist/scripts/{DkXQWig4.chunk.js → CPfbCh7G.chunk.js} +2 -2
- package/dist/scripts/{DkXQWig4.chunk.js.map → CPfbCh7G.chunk.js.map} +1 -1
- package/dist/scripts/{B_HlStqa2.chunk.js → CYTD62SM2.chunk.js} +2 -2
- package/dist/scripts/{B_HlStqa2.chunk.js.map → CYTD62SM2.chunk.js.map} +1 -1
- package/dist/scripts/{CllvFALa2.chunk.js → ChsDPjp62.chunk.js} +2 -2
- package/dist/scripts/{CllvFALa2.chunk.js.map → ChsDPjp62.chunk.js.map} +1 -1
- package/dist/scripts/{DxBCBFh3.chunk.js → Cje7C8bz.chunk.js} +2 -2
- package/dist/scripts/{DxBCBFh3.chunk.js.map → Cje7C8bz.chunk.js.map} +1 -1
- package/dist/scripts/{BLzQ085A.chunk.js → Co8fEkVu.chunk.js} +2 -2
- package/dist/scripts/{BLzQ085A.chunk.js.map → Co8fEkVu.chunk.js.map} +1 -1
- package/dist/scripts/{DuQ74iFu.chunk.js → CqU1GfrZ.chunk.js} +2 -2
- package/dist/scripts/{DuQ74iFu.chunk.js.map → CqU1GfrZ.chunk.js.map} +1 -1
- package/dist/scripts/{rdbFZIyT.chunk.js → CrnI3v9u.chunk.js} +2 -2
- package/dist/scripts/{rdbFZIyT.chunk.js.map → CrnI3v9u.chunk.js.map} +1 -1
- package/dist/scripts/{28JMpJbt.chunk.js → Cu1MGmFY.chunk.js} +2 -2
- package/dist/scripts/{28JMpJbt.chunk.js.map → Cu1MGmFY.chunk.js.map} +1 -1
- package/dist/scripts/{BbTaGrM02.chunk.js → CzP4rwtN2.chunk.js} +2 -2
- package/dist/scripts/{BbTaGrM02.chunk.js.map → CzP4rwtN2.chunk.js.map} +1 -1
- package/dist/scripts/{BxKrer6h.chunk.js → D0Qw5weM.chunk.js} +2 -2
- package/dist/scripts/{BxKrer6h.chunk.js.map → D0Qw5weM.chunk.js.map} +1 -1
- package/dist/scripts/{DK50VHUW2.chunk.js → D3xJ2nOi2.chunk.js} +2 -2
- package/dist/scripts/{DK50VHUW2.chunk.js.map → D3xJ2nOi2.chunk.js.map} +1 -1
- package/dist/scripts/{DFxl2xgU.chunk.js → DLvXDRHp.chunk.js} +2 -2
- package/dist/scripts/{DFxl2xgU.chunk.js.map → DLvXDRHp.chunk.js.map} +1 -1
- package/dist/scripts/{Bn4Go0UF.chunk.js → DPwC1loE.chunk.js} +2 -2
- package/dist/scripts/{Bn4Go0UF.chunk.js.map → DPwC1loE.chunk.js.map} +1 -1
- package/dist/scripts/{C1m-1G6w2.chunk.js → DROEKPMt2.chunk.js} +2 -2
- package/dist/scripts/{C1m-1G6w2.chunk.js.map → DROEKPMt2.chunk.js.map} +1 -1
- package/dist/scripts/{DfhaG70Z2.chunk.js → DfsBAns02.chunk.js} +2 -2
- package/dist/scripts/{DfhaG70Z2.chunk.js.map → DfsBAns02.chunk.js.map} +1 -1
- package/dist/scripts/{BOGodQXj2.chunk.js → DoqY7Zz22.chunk.js} +2 -2
- package/dist/scripts/{BOGodQXj2.chunk.js.map → DoqY7Zz22.chunk.js.map} +1 -1
- package/dist/scripts/{BQLCt3Ad.chunk.js → Ds5BQW36.chunk.js} +45 -45
- package/dist/scripts/Ds5BQW36.chunk.js.map +1 -0
- package/dist/scripts/DtHo-s19.chunk.js +1 -0
- package/dist/scripts/{WxjzAHzM.chunk.js → F0alulpY.chunk.js} +2 -2
- package/dist/scripts/{WxjzAHzM.chunk.js.map → F0alulpY.chunk.js.map} +1 -1
- package/dist/scripts/{yklF-2M1.chunk.js → GIKXvkU2.chunk.js} +2 -2
- package/dist/scripts/{yklF-2M1.chunk.js.map → GIKXvkU2.chunk.js.map} +1 -1
- package/dist/scripts/{Du87dvla.chunk.js → JKXdJyQp.chunk.js} +2 -2
- package/dist/scripts/{Du87dvla.chunk.js.map → JKXdJyQp.chunk.js.map} +1 -1
- package/dist/scripts/{CItOH7dg2.chunk.js → QGZBrJRg2.chunk.js} +2 -2
- package/dist/scripts/{CItOH7dg2.chunk.js.map → QGZBrJRg2.chunk.js.map} +1 -1
- package/dist/scripts/{SNiCkvSP.chunk.js → UxXRVBhL.chunk.js} +2 -2
- package/dist/scripts/{SNiCkvSP.chunk.js.map → UxXRVBhL.chunk.js.map} +1 -1
- package/dist/scripts/{rtCrJwRm.chunk.js → Z3CSanPV.chunk.js} +2 -2
- package/dist/scripts/{rtCrJwRm.chunk.js.map → Z3CSanPV.chunk.js.map} +1 -1
- package/dist/scripts/{app-BeoBow2q.js → app-CirLTvga.js} +6 -6
- package/dist/scripts/app-CirLTvga.js.map +1 -0
- package/dist/scripts/ieOSVilg.chunk.js +1 -0
- package/dist/scripts/{C2ZUZoNE2.chunk.js → msX5dXMR2.chunk.js} +2 -2
- package/dist/scripts/{C2ZUZoNE2.chunk.js.map → msX5dXMR2.chunk.js.map} +1 -1
- package/package.json +1 -1
- package/dist/scripts/BQLCt3Ad.chunk.js.map +0 -1
- package/dist/scripts/CZQnIbqt.chunk.js +0 -1
- package/dist/scripts/CfPosTww.chunk.js +0 -2
- package/dist/scripts/CfPosTww.chunk.js.map +0 -1
- package/dist/scripts/DVHj6R3-.chunk.js +0 -2
- package/dist/scripts/DVHj6R3-.chunk.js.map +0 -1
- package/dist/scripts/ao_3LgdP.chunk.js +0 -1
- package/dist/scripts/app-BeoBow2q.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./app-CirLTvga.js";export{e as ErrorView};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{Kn as e,N as t,P as n,en as r,st as i}from"./BSV_W0cK.chunk.js";import{r as a,v as o,y as s}from"./COrUmz0l.chunk.js";import{t as c}from"./Bqlm3yF_.chunk.js";import{n as l,r as u}from"./H5KLIhR_.chunk.js";import{L as d,et as f,n as p}from"./app-
|
|
1
|
+
import{Kn as e,N as t,P as n,en as r,st as i}from"./BSV_W0cK.chunk.js";import{r as a,v as o,y as s}from"./COrUmz0l.chunk.js";import{t as c}from"./Bqlm3yF_.chunk.js";import{n as l,r as u}from"./H5KLIhR_.chunk.js";import{L as d,et as f,n as p}from"./app-CirLTvga.js";import{n as m,t as h}from"./DROEKPMt2.chunk.js";var g={pillTabSelector:`_pillTabSelector_a6f6x_1`,tab:`_tab_a6f6x_4`,minWidth:`_minWidth_a6f6x_21`,radiusSmall:`_radiusSmall_a6f6x_24`,tabLink:`_tabLink_a6f6x_35`},_=e(i()),v=n();function y(e){return(0,v.jsxs)(v.Fragment,{children:[!!e.tab.svg&&(0,v.jsx)(`div`,{className:e.tab.name?`pe-1`:``,children:(0,v.jsx)(a,{svg:e.tab.svg,size:e.tab.svgSize})}),e.formatDisplayText?.(e.tab.name)??e.tab.name,typeof e.tab.count==`number`&&(0,v.jsx)(`div`,{className:`ps-2`,children:(0,v.jsx)(h,{type:m.Count,data:e.tab.count})})]})}function b(e){let{borderRadius:n=`lg`}=e,i=d();function a(e){e.analyticsData&&e.analyticsOptions&&t.logUserAction(e.analyticsData,e.analyticsOptions)}function c(e){e.active||!e.onSelect||(e.onSelect(),a(e))}function l(t){let n=t.target.value,i=e.tabs.find(e=>e.name===n);!i||i.active||(a(i),r.trigger(i.appLink))}let u=e.tabs.find(e=>e.active),f=e.forceSmallScreenDropdown||e.enableSmallScreenSupport&&(i.sm||i.xs);return(0,v.jsxs)(`nav`,{className:e.className??``,children:[f&&(0,v.jsx)(`select`,{className:`form-select`,onChange:l,value:u?.name,style:{minWidth:`150px`},children:e.tabs.map((t,n)=>t.hide?(0,v.jsx)(_.Fragment,{},n):(0,v.jsx)(`option`,{value:t.name,children:e.formatDisplayText?.(t.name)??t.name},n))}),!f&&(0,v.jsx)(`ul`,{className:`
|
|
2
2
|
list-unstyled d-inline-block m-0 ${g.pillTabSelector}
|
|
3
3
|
${n?g.radiusSmall:``}
|
|
4
4
|
${e.listClassName}
|
|
@@ -12,4 +12,4 @@ import{Kn as e,N as t,P as n,en as r,st as i}from"./BSV_W0cK.chunk.js";import{r
|
|
|
12
12
|
cursor-pointer d-flex align-items-center justify-content-center
|
|
13
13
|
text-decoration-none text-reset px-2 text-nowrap ${g.tabLink}
|
|
14
14
|
`,onClick:()=>c(t),children:(0,v.jsx)(y,{tab:t,formatDisplayText:e.formatDisplayText})})},n))})]})}function x(e){return(0,v.jsx)(b,{className:`pb-3`,tabs:e.items.map(e=>({name:e.label,onSelect:()=>r.trigger(e.appLink),active:e.appLink.action===f.getCurrentRoute()?.appLink?.action}))})}var S=c.encloseNamespace(`reportsVideos.schoolVideosNav`);function C(e){return[{label:S(`overview`),appLink:{application:u.VIDEOS,action:l.Videos.HOME,params:e}},{label:S(`views`),appLink:{application:u.VIDEOS,action:l.Videos.TOP_VIDEOS,params:e}}]}function w(){return(0,v.jsx)(x,{items:C(p())})}export{w as t};
|
|
15
|
-
//# sourceMappingURL=
|
|
15
|
+
//# sourceMappingURL=F0alulpY.chunk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WxjzAHzM.chunk.js","names":[],"sources":["../../../../libs/shared/src/components/pill-tab-selector/pill-tab-selector.module.scss","../../../../libs/shared/src/components/pill-tab-selector/PillTabSelector.tsx","../../src/shared/components/sub-nav/SubNav.tsx","../../src/apps/videos/components/school-videos-nav/SchoolVideosNav.tsx"],"sourcesContent":[":local {\n $pill-tab-min-width: 7rem;\n\n .pillTabSelector {\n border-radius: $border-radius-lg;\n\n .tab {\n border-radius: 0;\n\n &:first-child {\n border-top-left-radius: $border-radius-lg;\n border-bottom-left-radius: $border-radius-lg;\n }\n\n &:last-child {\n border-top-right-radius: $border-radius-lg;\n border-bottom-right-radius: $border-radius-lg;\n }\n\n &:not(:first-child) {\n border-left: none;\n }\n\n &:not(:last-child) {\n border-right: none;\n }\n\n &.minWidth {\n min-width: $pill-tab-min-width;\n }\n }\n\n &.radiusSmall {\n border-radius: $border-radius;\n\n li {\n &:first-child {\n border-top-left-radius: $border-radius;\n border-bottom-left-radius: $border-radius;\n }\n \n &:last-child {\n border-top-right-radius: $border-radius;\n border-bottom-right-radius: $border-radius;\n }\n }\n }\n\n .tabLink {\n padding-top: $input-btn-padding-y;\n padding-bottom: $input-btn-padding-y;\n }\n }\n}","import React from 'react';\n\nimport { AppLinkHelper } from 'libs/common/backbone/core';\nimport { Core } from 'libs/common/core';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\nimport { AnalyticsOptions } from 'libs/analytics/interfaces';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Badge, BadgeType } from 'libs/shared/components/badges/Badge';\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\nimport { useBreakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { SvgIcon } from 'libs/shared/utils/SvgHelper';\n\nimport { SvgContainer, SvgContainerSize } from '../svg-container/SvgContainer';\n\nimport styles from './pill-tab-selector.module.scss';\n\ninterface TabContentsProps {\n tab: PillTab;\n formatDisplayText?: (name: string) => string;\n}\n\nfunction TabContents(props: TabContentsProps): JSX.Element {\n return (\n <>\n {!!props.tab.svg && (\n <div className={props.tab.name ? 'pe-1' : ''}>\n <SvgContainer svg={props.tab.svg} size={props.tab.svgSize} />\n </div>\n )}\n\n {props.formatDisplayText?.(props.tab.name) ?? props.tab.name}\n\n {typeof (props.tab.count) === 'number' && (\n <div className='ps-2'>\n <Badge type={BadgeType.Count} data={props.tab.count} />\n </div>\n )}\n </>\n );\n}\n\nexport interface PillTab {\n name: string;\n active: boolean;\n svg?: SvgIcon;\n svgSize?: SvgContainerSize;\n\n className?: string;\n\n appLink?: Core.AppLink;\n onSelect?: () => void;\n\n analyticsData?: HashObject;\n analyticsOptions?: AnalyticsOptions;\n\n count?: number;\n\n hide?: boolean;\n}\n\ninterface PillTabSelectorProps {\n tabs: PillTab[];\n listClassName?: string;\n className?: string;\n borderRadius?: 'sm' | 'lg';\n enableSmallScreenSupport?: boolean;\n formatDisplayText?: (name: string) => string;\n forceSmallScreenDropdown?: boolean;\n}\n\nexport function PillTabSelector(props: PillTabSelectorProps): JSX.Element {\n const { borderRadius = 'lg' } = props;\n \n const breakpoints = useBreakpoints();\n \n function logAnalytics(tab: PillTab): void {\n if (tab.analyticsData && tab.analyticsOptions)\n AnalyticsHelper.logUserAction(tab.analyticsData, tab.analyticsOptions);\n }\n \n function onSelectTab(tab: PillTab): void {\n if (tab.active || !tab.onSelect)\n return;\n\n tab.onSelect();\n\n logAnalytics(tab);\n }\n\n function onChangeSelect(event: React.ChangeEvent<HTMLSelectElement>): void {\n const value = event.target.value;\n const tab = props.tabs.find(tab => tab.name === value);\n if (!tab || tab.active)\n return;\n \n logAnalytics(tab);\n AppLinkHelper.trigger(tab.appLink);\n }\n\n const selectedTab = props.tabs.find(tab => tab.active);\n const showSelectDropdown = props.forceSmallScreenDropdown\n || (props.enableSmallScreenSupport && (breakpoints.sm || breakpoints.xs));\n\n return (\n <nav className={props.className ?? ''}>\n {showSelectDropdown && (\n <select className='form-select' onChange={onChangeSelect} value={selectedTab?.name} style={{ minWidth: '150px' }}>\n {props.tabs.map((tab, index) => {\n if (tab.hide)\n return <React.Fragment key={index}/>;\n\n return (\n <option\n key={index}\n value={tab.name}>\n {props.formatDisplayText?.(tab.name) ?? tab.name}\n </option>\n );\n })}\n </select>\n )}\n \n {!showSelectDropdown && (\n <ul className={`\n list-unstyled d-inline-block m-0 ${styles.pillTabSelector}\n ${borderRadius ? styles.radiusSmall : ''}\n ${props.listClassName}\n `}>\n {props.tabs.map((tab, index) => {\n if (tab.hide)\n return <React.Fragment key={index}/>;\n \n return (\n <li\n className={`\n p-0 ${styles.tab} ${tab.active ? 'btn btn-dark' : 'btn btn-outline-dark'}\n ${tab.name ? styles.minWidth : ''} ${tab.className}\n `}\n key={index}\n >\n {tab.appLink ? (\n <AppLink\n appLink={tab.appLink}\n analyticsData={tab.analyticsData}\n analyticsOptions={tab.analyticsOptions}\n className={`\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset px-2 text-nowrap ${styles.tabLink}\n `}\n >\n <TabContents tab={tab} formatDisplayText={props.formatDisplayText} />\n </AppLink>\n ) : (\n <DivButton\n className={`\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset px-2 text-nowrap ${styles.tabLink}\n `}\n onClick={() => onSelectTab(tab)}\n >\n <TabContents tab={tab} formatDisplayText={props.formatDisplayText} />\n </DivButton>\n )}\n </li>\n );\n })}\n </ul>\n )}\n </nav>\n );\n}\n","import React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { PillTab, PillTabSelector } from 'libs/shared/components/pill-tab-selector/PillTabSelector';\nimport { ContextService } from 'libs/shared/services/ContextService';\nexport interface SubNavItem {\n label: string;\n appLink: Core.AppLink;\n}\n\ninterface SubNavProps {\n items: SubNavItem[];\n}\n\nexport function SubNav(props: SubNavProps): JSX.Element {\n const tabs: PillTab[] = props.items.map(i => ({\n name: i.label,\n onSelect: () => Core.AppLinkHelper.trigger(i.appLink),\n active: i.appLink.action === ContextService.getCurrentRoute()?.appLink?.action\n }));\n\n return <PillTabSelector className='pb-3' tabs={tabs} />;\n}\n","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { FilterQueryParams } from 'libs/shared/apps/analytics/interfaces/FilterQueryParams';\n\nimport { SubNav, SubNavItem } from 'shared/components/sub-nav/SubNav';\nimport { Actions } from 'shared/constants/ReportsActions';\nimport { AppChannels } from 'shared/constants/ReportsRadioChannels';\nimport { useGetAppLinkFilterParams } from 'shared/hooks/UseGetFilterQueryParams';\n\nconst namespace = 'reportsVideos.schoolVideosNav';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nfunction getNavItems(params: FilterQueryParams): SubNavItem[] {\n return [\n {\n label: getPhrase('overview'),\n appLink: { application: AppChannels.VIDEOS, action: Actions.Videos.HOME, params }\n },\n {\n label: getPhrase('views'),\n appLink: { application: AppChannels.VIDEOS, action: Actions.Videos.TOP_VIDEOS, params }\n }\n ];\n}\n\nexport function SchoolVideosNav(): JSX.Element {\n const filterQueryParams = useGetAppLinkFilterParams();\n\n const navItems = getNavItems(filterQueryParams);\n\n return (\n <SubNav items={navItems} />\n );\n}\n"],"mappings":"4eCwBA,SAAS,EAAY,EAAsC,CACzD,OACE,EAAA,EAAA,MAAA,EAAA,SAAA,CAAA,SAAA,CACG,CAAC,CAAC,EAAM,IAAI,MACX,EAAA,EAAA,KAAC,MAAD,CAAK,UAAW,EAAM,IAAI,KAAO,OAAS,aACxC,EAAA,EAAA,KAAC,EAAD,CAAc,IAAK,EAAM,IAAI,IAAK,KAAM,EAAM,IAAI,QAAW,CAAA,CACzD,CAAA,CAGP,EAAM,oBAAoB,EAAM,IAAI,KAAK,EAAI,EAAM,IAAI,KAEvD,OAAQ,EAAM,IAAI,OAAW,WAC5B,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,iBACb,EAAA,EAAA,KAAC,EAAD,CAAO,KAAM,EAAU,MAAO,KAAM,EAAM,IAAI,MAAS,CAAA,CACnD,CAAA,CAEP,CAAA,CAAA,CAiCP,SAAgB,EAAgB,EAA0C,CACxE,GAAM,CAAE,eAAe,MAAS,EAE1B,EAAc,GAAgB,CAEpC,SAAS,EAAa,EAAoB,CACpC,EAAI,eAAiB,EAAI,kBAC3B,EAAgB,cAAc,EAAI,cAAe,EAAI,iBAAiB,CAG1E,SAAS,EAAY,EAAoB,CACnC,EAAI,QAAU,CAAC,EAAI,WAGvB,EAAI,UAAU,CAEd,EAAa,EAAI,EAGnB,SAAS,EAAe,EAAmD,CACzE,IAAM,EAAQ,EAAM,OAAO,MACrB,EAAM,EAAM,KAAK,KAAK,GAAO,EAAI,OAAS,EAAM,CAClD,CAAC,GAAO,EAAI,SAGhB,EAAa,EAAI,CACjB,EAAc,QAAQ,EAAI,QAAQ,EAGpC,IAAM,EAAc,EAAM,KAAK,KAAK,GAAO,EAAI,OAAO,CAChD,EAAqB,EAAM,0BAC3B,EAAM,2BAA6B,EAAY,IAAM,EAAY,IAEvE,OACE,EAAA,EAAA,MAAC,MAAD,CAAK,UAAW,EAAM,WAAa,YAAnC,CACG,IACC,EAAA,EAAA,KAAC,SAAD,CAAQ,UAAU,cAAc,SAAU,EAAgB,MAAO,GAAa,KAAM,MAAO,CAAE,SAAU,QAAS,UAC7G,EAAM,KAAK,KAAK,EAAK,IAChB,EAAI,MACC,EAAA,EAAA,KAAA,EAAO,SAAP,EAA6B,CAAR,EAAQ,EAGpC,EAAA,EAAA,KAAC,SAAD,CAEE,MAAO,EAAI,cACV,EAAM,oBAAoB,EAAI,KAAK,EAAI,EAAI,KACrC,CAHF,EAGE,EAGN,CAAA,CAGV,CAAC,IACA,EAAA,EAAA,KAAC,KAAD,CAAI,UAAW;6CACsB,EAAO,gBAAA;YACxC,EAAe,EAAO,YAAc,GAAA;YACpC,EAAM,cAAA;mBAEP,EAAM,KAAK,KAAK,EAAK,IAChB,EAAI,MACC,EAAA,EAAA,KAAA,EAAO,SAAP,EAA6B,CAAR,EAAQ,EAGpC,EAAA,EAAA,KAAC,KAAD,CACE,UAAW;sBACL,EAAO,IAAI,GAAG,EAAI,OAAS,eAAiB,uBAAA;kBAChD,EAAI,KAAO,EAAO,SAAW,GAAG,GAAG,EAAI,UAAA;yBAIxC,EAAI,SACH,EAAA,EAAA,KAAC,EAAD,CACE,QAAS,EAAI,QACb,cAAe,EAAI,cACnB,iBAAkB,EAAI,iBACtB,UAAW;;uEAEwC,EAAO,QAAA;8BAG1D,EAAA,EAAA,KAAC,EAAD,CAAkB,MAAK,kBAAmB,EAAM,kBAAqB,CAAA,CAC7D,CAAA,EAEV,EAAA,EAAA,KAAC,EAAD,CACE,UAAW;;uEAEwC,EAAO,QAAA;oBAE1D,YAAe,EAAY,EAAI,WAE/B,EAAA,EAAA,KAAC,EAAD,CAAkB,MAAK,kBAAmB,EAAM,kBAAqB,CAAA,CAC3D,CAAA,CAEX,CAzBE,EAyBF,EAGN,CAAA,CAAA,GC1Jb,SAAgB,EAAO,EAAiC,CAOtD,OAAO,EAAA,EAAA,KAAC,EAAD,CAAiB,UAAU,OAAa,KANvB,EAAM,MAAM,IAAI,IAAM,CAC5C,KAAM,EAAE,MACR,aAAA,EAAmC,QAAQ,EAAE,QAAQ,CACrD,OAAQ,EAAE,QAAQ,SAAW,EAAe,iBAAiB,EAAE,SAAS,OACzE,EAAE,CAEoD,CAAA,CCVzD,IAAM,EAAY,EAAgB,iBADhB,gCAC2C,CAE7D,SAAS,EAAY,EAAyC,CAC5D,MAAO,CACL,CACE,MAAO,EAAU,WAAW,CAC5B,QAAS,CAAE,YAAa,EAAY,OAAQ,OAAQ,EAAQ,OAAO,KAAM,SAAQ,CAClF,CACD,CACE,MAAO,EAAU,QAAQ,CACzB,QAAS,CAAE,YAAa,EAAY,OAAQ,OAAQ,EAAQ,OAAO,WAAY,SAAQ,CACxF,CACF,CAGH,SAAgB,GAA+B,CAK7C,OACE,EAAA,EAAA,KAAC,EAAD,CAAQ,MAHO,EAFS,GAA2B,CAEN,CAGlB,CAAA"}
|
|
1
|
+
{"version":3,"file":"F0alulpY.chunk.js","names":[],"sources":["../../../../libs/shared/src/components/pill-tab-selector/pill-tab-selector.module.scss","../../../../libs/shared/src/components/pill-tab-selector/PillTabSelector.tsx","../../src/shared/components/sub-nav/SubNav.tsx","../../src/apps/videos/components/school-videos-nav/SchoolVideosNav.tsx"],"sourcesContent":[":local {\n $pill-tab-min-width: 7rem;\n\n .pillTabSelector {\n border-radius: $border-radius-lg;\n\n .tab {\n border-radius: 0;\n\n &:first-child {\n border-top-left-radius: $border-radius-lg;\n border-bottom-left-radius: $border-radius-lg;\n }\n\n &:last-child {\n border-top-right-radius: $border-radius-lg;\n border-bottom-right-radius: $border-radius-lg;\n }\n\n &:not(:first-child) {\n border-left: none;\n }\n\n &:not(:last-child) {\n border-right: none;\n }\n\n &.minWidth {\n min-width: $pill-tab-min-width;\n }\n }\n\n &.radiusSmall {\n border-radius: $border-radius;\n\n li {\n &:first-child {\n border-top-left-radius: $border-radius;\n border-bottom-left-radius: $border-radius;\n }\n \n &:last-child {\n border-top-right-radius: $border-radius;\n border-bottom-right-radius: $border-radius;\n }\n }\n }\n\n .tabLink {\n padding-top: $input-btn-padding-y;\n padding-bottom: $input-btn-padding-y;\n }\n }\n}","import React from 'react';\n\nimport { AppLinkHelper } from 'libs/common/backbone/core';\nimport { Core } from 'libs/common/core';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\nimport { AnalyticsOptions } from 'libs/analytics/interfaces';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Badge, BadgeType } from 'libs/shared/components/badges/Badge';\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\nimport { useBreakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { SvgIcon } from 'libs/shared/utils/SvgHelper';\n\nimport { SvgContainer, SvgContainerSize } from '../svg-container/SvgContainer';\n\nimport styles from './pill-tab-selector.module.scss';\n\ninterface TabContentsProps {\n tab: PillTab;\n formatDisplayText?: (name: string) => string;\n}\n\nfunction TabContents(props: TabContentsProps): JSX.Element {\n return (\n <>\n {!!props.tab.svg && (\n <div className={props.tab.name ? 'pe-1' : ''}>\n <SvgContainer svg={props.tab.svg} size={props.tab.svgSize} />\n </div>\n )}\n\n {props.formatDisplayText?.(props.tab.name) ?? props.tab.name}\n\n {typeof (props.tab.count) === 'number' && (\n <div className='ps-2'>\n <Badge type={BadgeType.Count} data={props.tab.count} />\n </div>\n )}\n </>\n );\n}\n\nexport interface PillTab {\n name: string;\n active: boolean;\n svg?: SvgIcon;\n svgSize?: SvgContainerSize;\n\n className?: string;\n\n appLink?: Core.AppLink;\n onSelect?: () => void;\n\n analyticsData?: HashObject;\n analyticsOptions?: AnalyticsOptions;\n\n count?: number;\n\n hide?: boolean;\n}\n\ninterface PillTabSelectorProps {\n tabs: PillTab[];\n listClassName?: string;\n className?: string;\n borderRadius?: 'sm' | 'lg';\n enableSmallScreenSupport?: boolean;\n formatDisplayText?: (name: string) => string;\n forceSmallScreenDropdown?: boolean;\n}\n\nexport function PillTabSelector(props: PillTabSelectorProps): JSX.Element {\n const { borderRadius = 'lg' } = props;\n \n const breakpoints = useBreakpoints();\n \n function logAnalytics(tab: PillTab): void {\n if (tab.analyticsData && tab.analyticsOptions)\n AnalyticsHelper.logUserAction(tab.analyticsData, tab.analyticsOptions);\n }\n \n function onSelectTab(tab: PillTab): void {\n if (tab.active || !tab.onSelect)\n return;\n\n tab.onSelect();\n\n logAnalytics(tab);\n }\n\n function onChangeSelect(event: React.ChangeEvent<HTMLSelectElement>): void {\n const value = event.target.value;\n const tab = props.tabs.find(tab => tab.name === value);\n if (!tab || tab.active)\n return;\n \n logAnalytics(tab);\n AppLinkHelper.trigger(tab.appLink);\n }\n\n const selectedTab = props.tabs.find(tab => tab.active);\n const showSelectDropdown = props.forceSmallScreenDropdown\n || (props.enableSmallScreenSupport && (breakpoints.sm || breakpoints.xs));\n\n return (\n <nav className={props.className ?? ''}>\n {showSelectDropdown && (\n <select className='form-select' onChange={onChangeSelect} value={selectedTab?.name} style={{ minWidth: '150px' }}>\n {props.tabs.map((tab, index) => {\n if (tab.hide)\n return <React.Fragment key={index}/>;\n\n return (\n <option\n key={index}\n value={tab.name}>\n {props.formatDisplayText?.(tab.name) ?? tab.name}\n </option>\n );\n })}\n </select>\n )}\n \n {!showSelectDropdown && (\n <ul className={`\n list-unstyled d-inline-block m-0 ${styles.pillTabSelector}\n ${borderRadius ? styles.radiusSmall : ''}\n ${props.listClassName}\n `}>\n {props.tabs.map((tab, index) => {\n if (tab.hide)\n return <React.Fragment key={index}/>;\n \n return (\n <li\n className={`\n p-0 ${styles.tab} ${tab.active ? 'btn btn-dark' : 'btn btn-outline-dark'}\n ${tab.name ? styles.minWidth : ''} ${tab.className}\n `}\n key={index}\n >\n {tab.appLink ? (\n <AppLink\n appLink={tab.appLink}\n analyticsData={tab.analyticsData}\n analyticsOptions={tab.analyticsOptions}\n className={`\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset px-2 text-nowrap ${styles.tabLink}\n `}\n >\n <TabContents tab={tab} formatDisplayText={props.formatDisplayText} />\n </AppLink>\n ) : (\n <DivButton\n className={`\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset px-2 text-nowrap ${styles.tabLink}\n `}\n onClick={() => onSelectTab(tab)}\n >\n <TabContents tab={tab} formatDisplayText={props.formatDisplayText} />\n </DivButton>\n )}\n </li>\n );\n })}\n </ul>\n )}\n </nav>\n );\n}\n","import React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { PillTab, PillTabSelector } from 'libs/shared/components/pill-tab-selector/PillTabSelector';\nimport { ContextService } from 'libs/shared/services/ContextService';\nexport interface SubNavItem {\n label: string;\n appLink: Core.AppLink;\n}\n\ninterface SubNavProps {\n items: SubNavItem[];\n}\n\nexport function SubNav(props: SubNavProps): JSX.Element {\n const tabs: PillTab[] = props.items.map(i => ({\n name: i.label,\n onSelect: () => Core.AppLinkHelper.trigger(i.appLink),\n active: i.appLink.action === ContextService.getCurrentRoute()?.appLink?.action\n }));\n\n return <PillTabSelector className='pb-3' tabs={tabs} />;\n}\n","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { FilterQueryParams } from 'libs/shared/apps/analytics/interfaces/FilterQueryParams';\n\nimport { SubNav, SubNavItem } from 'shared/components/sub-nav/SubNav';\nimport { Actions } from 'shared/constants/ReportsActions';\nimport { AppChannels } from 'shared/constants/ReportsRadioChannels';\nimport { useGetAppLinkFilterParams } from 'shared/hooks/UseGetFilterQueryParams';\n\nconst namespace = 'reportsVideos.schoolVideosNav';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nfunction getNavItems(params: FilterQueryParams): SubNavItem[] {\n return [\n {\n label: getPhrase('overview'),\n appLink: { application: AppChannels.VIDEOS, action: Actions.Videos.HOME, params }\n },\n {\n label: getPhrase('views'),\n appLink: { application: AppChannels.VIDEOS, action: Actions.Videos.TOP_VIDEOS, params }\n }\n ];\n}\n\nexport function SchoolVideosNav(): JSX.Element {\n const filterQueryParams = useGetAppLinkFilterParams();\n\n const navItems = getNavItems(filterQueryParams);\n\n return (\n <SubNav items={navItems} />\n );\n}\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{P as e,Wn as t,st as n}from"./BSV_W0cK.chunk.js";import{i as r,r as i}from"./COrUmz0l.chunk.js";import{n as a}from"./BmJ66zOA.chunk.js";import{a as o,s}from"./CqVCiInU.chunk.js";import{t as c}from"./Bqlm3yF_.chunk.js";import{D as l}from"./app-
|
|
2
|
-
//# sourceMappingURL=
|
|
1
|
+
import{P as e,Wn as t,st as n}from"./BSV_W0cK.chunk.js";import{i as r,r as i}from"./COrUmz0l.chunk.js";import{n as a}from"./BmJ66zOA.chunk.js";import{a as o,s}from"./CqVCiInU.chunk.js";import{t as c}from"./Bqlm3yF_.chunk.js";import{D as l}from"./app-CirLTvga.js";var u={isType(e,t){return e?.typeId?e.typeId===t:e?.type?.toLowerCase()===a[t].toLowerCase()},isResource(e){return u.isType(e,a.Resource)},isClassification(e){return e.type===`Subject`}},d={colours:`amber.apricot.aqua.azure.black.blue.bronze.brown.chocolate.copper.coral.cream.crimson.cyan.emerald.gold.green.grey.indigo.ivory.jade.lavender.lime.maroon.mint.navy.olive.orange.peach.pink.plum.purple.red.rose.ruby.sage.salmon.sapphire.scarlet.silver.sky.teal.turquoise.violet.white.yellow`.split(`.`),animals:`aardvark.albatross.alligator.alpaca.ant.anteater.antelope.ape.armadillo.baboon.badger.bat.bear.beaver.bee.beetle.bison.blackbird.boar.bobcat.bonobo.buffalo.butterfly.camel.canary.capybara.caribou.cat.caterpillar.chameleon.cheetah.chimpanzee.chinchilla.chipmunk.clownfish.cockatoo.cougar.cow.coyote.crab.crane.crocodile.crow.deer.dingo.dog.dolphin.donkey.dove.dragonfly.duck.eagle.elephant.elk.emu.falcon.ferret.finch.firefly.fish.flamingo.fox.frog.gazelle.gecko.gerbil.giraffe.goat.goldfish.goose.gorilla.grasshopper.gull.hamster.hare.hawk.hedgehog.heron.hippopotamus.horse.hummingbird.iguana.impala.jaguar.jellyfish.kangaroo.kingfisher.kiwi.koala.koi.ladybug.lemur.leopard.lion.lizard.llama.lobster.lynx.macaw.magpie.manatee.mandrill.marlin.meerkat.mole.mongoose.monkey.moose.mouse.mule.narwhal.newt.nightingale.ocelot.octopus.orangutan.orca.ostrich.otter.owl.ox.panda.panther.parakeet.parrot.peacock.pelican.penguin.pheasant.pigeon.platypus.pony.porcupine.possum.pufferfish.puffin.puma.quail.rabbit.raccoon.raven.reindeer.rhinoceros.roadrunner.robin.rooster.salamander.salmon.seahorse.seal.shark.sheep.sloth.snail.snake.sparrow.squid.squirrel.starfish.stingray.stork.swallow.swan.swordfish.tapir.tiger.toad.tortoise.toucan.trout.tuna.turtle.wallaby.walrus.weasel.whale.wildebeest.wolf.wolverine.woodpecker.yak.zebra`.split(`.`)},f=c.encloseNamespace(`shared.analyticsUtils`);function p(e){return e.charAt(0).toUpperCase()+e.slice(1)}function m(e){if(!e)return 0;let t=0;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);t=(t<<5)-t+r,t|=0}return Math.abs(t)}function h(e,t){let n=Math.floor(new Date().getMinutes()/5),r=m(`${e||t}-${n}`),i=d.colours[r%d.colours.length],a=d.animals[Math.floor(r/d.colours.length)%d.animals.length];return`${p(i)} ${p(a)}`}function g(e,t){return e?t?h(e.id,e.sessionId):e.deleted?f(`deleted`):s.getFullName(e)||f(`anonUser`):f(`anonUser`)}n();var _=e();function v(e){return(0,_.jsx)(`svg`,{...e,children:(0,_.jsx)(`path`,{d:`m16.837 9.842-1.138-3.678a1.65 1.65 0 0 0-.887-1.01 1.67 1.67 0 0 0-1.348-.02l-1.14.486a.8.8 0 0 1-.647 0l-1.14-.488a1.67 1.67 0 0 0-1.348.021 1.65 1.65 0 0 0-.887 1.01L7.164 9.842a7.17 7.17 0 0 0-3.062 1.85.41.41 0 0 0 .314.683h15.17c.162 0 .31-.094.376-.241a.41.41 0 0 0-.064-.44 7.17 7.17 0 0 0-3.061-1.852M9.094 6.404a.836.836 0 0 1 1.117-.516l1.135.484c.416.181.89.181 1.306 0l1.137-.485a.836.836 0 0 1 1.117.516l.976 3.153a16.17 16.17 0 0 0-7.764 0zm-3.59 5.148c1.455-1.019 3.866-1.645 6.497-1.645a14.5 14.5 0 0 1 4.41.651c.74.229 1.444.563 2.087.994zm9.807 1.645a2.9 2.9 0 0 0-2.508 1.447 1.61 1.61 0 0 0-1.604 0c-.763-1.323-2.425-1.835-3.807-1.173s-2.016 2.272-1.452 3.69a2.93 2.93 0 0 0 3.6 1.704 2.906 2.906 0 0 0 1.968-3.445.88.88 0 0 1 .986 0 2.87 2.87 0 0 0 1.269 3.088 2.91 2.91 0 0 0 3.351-.176c.966-.762 1.341-2.048.935-3.204s-1.505-1.932-2.738-1.93m-6.62 4.936c-1.143 0-2.07-.92-2.07-2.056s.927-2.057 2.07-2.057 2.069.92 2.069 2.057a2.065 2.065 0 0 1-2.07 2.056m6.62 0c-1.142 0-2.069-.92-2.069-2.056s.927-2.057 2.07-2.057 2.068.92 2.068 2.057a2.065 2.065 0 0 1-2.069 2.056`,fill:`currentColor`})})}var y={iconCircle:`_iconCircle_186sk_1`,dot:`_dot_186sk_8`};function b(e){let t=e.type===`anon`;return e.type===`student-reach`?(0,_.jsx)(`div`,{className:`position-relative h-100 w-100`,children:(0,_.jsx)(`div`,{className:`${y.iconCircle} bg-orange text-light ${e.extraClasses||``}`,children:(0,_.jsx)(i,{svg:l,size:e.anonymousSvgSize||r.Large,className:`svg-container w-100 h-100`})})}):t?(0,_.jsxs)(`div`,{className:`position-relative h-100 w-100`,children:[(0,_.jsx)(`div`,{className:`${y.iconCircle} bg-gray-700 text-light ${e.extraClasses||``}`,children:(0,_.jsx)(i,{svg:v,size:e.anonymousSvgSize||r.Large,className:`svg-container w-100 h-100`})}),e.showDot&&(0,_.jsx)(`div`,{className:`${y.dot} rounded-circle bg-danger`})]}):(0,_.jsx)(o,{imageCdnUrl:e.imageCdnUrl,initials:e.initials,imageUrl:e.imageUrl,extraClasses:e.extraClasses,showDot:e.showDot,anonymiseUsers:e.anonymiseUsers})}var x=t(((e,t)=>{function n(){return t.exports=n=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},t.exports.__esModule=!0,t.exports.default=t.exports,n.apply(null,arguments)}t.exports=n,t.exports.__esModule=!0,t.exports.default=t.exports}));export{u as i,b as n,g as r,x as t};
|
|
2
|
+
//# sourceMappingURL=GIKXvkU2.chunk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yklF-2M1.chunk.js","names":[],"sources":["../../../../libs/shared/src/utils/MasterTypeHelper.ts","../../../../libs/shared/src/apps/analytics/utils/anon-name-dictionaries.json","../../../../libs/shared/src/apps/analytics/utils/AnonymiseUserUtils.ts","../../../../libs/shared/src/images/svg/objects/AnonymousSvg.tsx","../../../../libs/shared/src/components/engagement-avatar/engagement-avatar.module.scss","../../../../libs/shared/src/components/engagement-avatar/EngagementAvatar.tsx","../../../../../node_modules/@babel/runtime/helpers/extends.js"],"sourcesContent":["import { MasterType } from 'libs/shared/enums/MasterType';\nimport { BaseObject, Classification, Resource } from 'libs/shared/interfaces';\n\nexport const MasterTypeHelper = {\n isType<T extends BaseObject>(obj: any, typeId: MasterType): obj is T {\n if (obj?.typeId)\n return obj.typeId === typeId;\n\n // Fallback to comparing actual string types\n return obj?.type?.toLowerCase() === MasterType[typeId].toLowerCase();\n },\n\n isResource(obj: any): obj is Resource {\n return MasterTypeHelper.isType<Resource>(obj, MasterType.Resource);\n },\n\n isClassification(obj: any): obj is Classification {\n return obj.type === 'Subject';\n }\n};\n","{\n \"colours\": [\n \"amber\",\n \"apricot\",\n \"aqua\",\n \"azure\",\n \"black\",\n \"blue\",\n \"bronze\",\n \"brown\",\n \"chocolate\",\n \"copper\",\n \"coral\",\n \"cream\",\n \"crimson\",\n \"cyan\",\n \"emerald\",\n \"gold\",\n \"green\",\n \"grey\",\n \"indigo\",\n \"ivory\",\n \"jade\",\n \"lavender\",\n \"lime\",\n \"maroon\",\n \"mint\",\n \"navy\",\n \"olive\",\n \"orange\",\n \"peach\",\n \"pink\",\n \"plum\",\n \"purple\",\n \"red\",\n \"rose\",\n \"ruby\",\n \"sage\",\n \"salmon\",\n \"sapphire\",\n \"scarlet\",\n \"silver\",\n \"sky\",\n \"teal\",\n \"turquoise\",\n \"violet\",\n \"white\",\n \"yellow\"\n ],\n \"animals\": [\n \"aardvark\", \"albatross\", \"alligator\", \"alpaca\", \"ant\", \"anteater\", \"antelope\", \"ape\", \"armadillo\",\n \"baboon\", \"badger\", \"bat\", \"bear\", \"beaver\", \"bee\", \"beetle\", \"bison\", \"blackbird\", \"boar\", \"bobcat\", \"bonobo\", \"buffalo\", \"butterfly\",\n \"camel\", \"canary\", \"capybara\", \"caribou\", \"cat\", \"caterpillar\", \"chameleon\",\n \"cheetah\", \"chimpanzee\", \"chinchilla\", \"chipmunk\", \"clownfish\", \"cockatoo\", \"cougar\", \"cow\", \"coyote\",\n \"crab\", \"crane\", \"crocodile\", \"crow\",\n \"deer\", \"dingo\", \"dog\", \"dolphin\", \"donkey\", \"dove\", \"dragonfly\", \"duck\",\n \"eagle\", \"elephant\", \"elk\", \"emu\",\n \"falcon\", \"ferret\", \"finch\", \"firefly\", \"fish\", \"flamingo\", \"fox\", \"frog\",\n \"gazelle\", \"gecko\", \"gerbil\", \"giraffe\", \"goat\", \"goldfish\", \"goose\", \"gorilla\", \"grasshopper\", \"gull\",\n \"hamster\", \"hare\", \"hawk\", \"hedgehog\", \"heron\", \"hippopotamus\", \"horse\", \"hummingbird\",\n \"iguana\", \"impala\",\n \"jaguar\", \"jellyfish\",\n \"kangaroo\", \"kingfisher\", \"kiwi\", \"koala\", \"koi\",\n \"ladybug\", \"lemur\", \"leopard\", \"lion\", \"lizard\", \"llama\", \"lobster\", \"lynx\",\n \"macaw\", \"magpie\", \"manatee\", \"mandrill\", \"marlin\", \"meerkat\", \"mole\", \"mongoose\", \"monkey\", \"moose\", \"mouse\", \"mule\",\n \"narwhal\", \"newt\", \"nightingale\",\n \"ocelot\", \"octopus\", \"orangutan\", \"orca\", \"ostrich\", \"otter\", \"owl\", \"ox\",\n \"panda\", \"panther\", \"parakeet\", \"parrot\", \"peacock\", \"pelican\", \"penguin\", \"pheasant\", \"pigeon\", \"platypus\",\n \"pony\", \"porcupine\", \"possum\", \"pufferfish\", \"puffin\", \"puma\",\n \"quail\",\n \"rabbit\", \"raccoon\", \"raven\", \"reindeer\", \"rhinoceros\", \"roadrunner\", \"robin\", \"rooster\",\n \"salamander\", \"salmon\", \"seahorse\", \"seal\", \"shark\", \"sheep\", \"sloth\", \"snail\", \"snake\", \"sparrow\",\n \"squid\", \"squirrel\", \"starfish\", \"stingray\", \"stork\", \"swallow\", \"swan\", \"swordfish\",\n \"tapir\", \"tiger\", \"toad\", \"tortoise\", \"toucan\", \"trout\", \"tuna\", \"turtle\",\n \"wallaby\", \"walrus\", \"weasel\", \"whale\", \"wildebeest\", \"wolf\", \"wolverine\", \"woodpecker\",\n \"yak\",\n \"zebra\"\n ]\n}\n","import { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { AnonUser } from 'libs/shared/interfaces/models/interactive-results/AnonUser';\nimport { UserHelper } from 'libs/shared/utils/UserHelper';\n\nimport dictionaries from './anon-name-dictionaries.json';\n\nconst namespace = 'shared.analyticsUtils';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nfunction capitalize(word: string): string {\n return word.charAt(0).toUpperCase() + word.slice(1);\n}\n\nfunction stringToSeed(input: string): number {\n if (!input)\n return 0;\n\n // Simple hash function (DJB2-like) for browsers\n let hash = 0;\n for (let i = 0; i < input.length; i++) {\n const char = input.charCodeAt(i);\n hash = ((hash << 5) - hash) + char;\n hash |= 0; // Convert to 32bit integer\n }\n return Math.abs(hash);\n}\n\nfunction generateAnonName(userId: string, sessionId: string): string {\n /**\n * Generate a seed that is unique to each user but changes every 5 minutes.\n *\n * We use a seed so that if the same user's name is anonymised multiple times\n * in quick succession (e.g. multiple renders), the same name will be returned each time.\n *\n * We change the seed every 5 minutes so that students don't always have the same name.\n */\n const bucket = Math.floor((new Date()).getMinutes() / 5);\n const seed = stringToSeed(`${userId || sessionId}-${bucket}`);\n // Treat the seed as a mixed-radix number: the low \"digit\" (mod) picks the colour, the next\n // \"digit\" (quotient) picks the animal. This decorrelates the two indices so every pair is\n // reachable and consecutive seeds cycle through all colours before the animal advances.\n const colour = dictionaries.colours[seed % dictionaries.colours.length];\n const animal = dictionaries.animals[Math.floor(seed / dictionaries.colours.length) % dictionaries.animals.length];\n return `${capitalize(colour)} ${capitalize(animal)}`;\n}\n\nexport function anonymiseUserName(user: AnonUser, shouldAnonymise: boolean): string {\n if (!user) {\n return getPhrase('anonUser');\n }\n\n if (!shouldAnonymise) {\n if (user.deleted)\n return getPhrase('deleted');\n\n return UserHelper.getFullName(user) || getPhrase('anonUser');\n }\n\n return generateAnonName(user.id, user.sessionId);\n}\n","import React from 'react';\n\nexport function AnonymousSvg(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg {...props}\n >\n <path\n d='m16.837 9.842-1.138-3.678a1.65 1.65 0 0 0-.887-1.01 1.67 1.67 0 0 0-1.348-.02l-1.14.486a.8.8 0 0 1-.647 0l-1.14-.488a1.67 1.67 0 0 0-1.348.021 1.65 1.65 0 0 0-.887 1.01L7.164 9.842a7.17 7.17 0 0 0-3.062 1.85.41.41 0 0 0 .314.683h15.17c.162 0 .31-.094.376-.241a.41.41 0 0 0-.064-.44 7.17 7.17 0 0 0-3.061-1.852M9.094 6.404a.836.836 0 0 1 1.117-.516l1.135.484c.416.181.89.181 1.306 0l1.137-.485a.836.836 0 0 1 1.117.516l.976 3.153a16.17 16.17 0 0 0-7.764 0zm-3.59 5.148c1.455-1.019 3.866-1.645 6.497-1.645a14.5 14.5 0 0 1 4.41.651c.74.229 1.444.563 2.087.994zm9.807 1.645a2.9 2.9 0 0 0-2.508 1.447 1.61 1.61 0 0 0-1.604 0c-.763-1.323-2.425-1.835-3.807-1.173s-2.016 2.272-1.452 3.69a2.93 2.93 0 0 0 3.6 1.704 2.906 2.906 0 0 0 1.968-3.445.88.88 0 0 1 .986 0 2.87 2.87 0 0 0 1.269 3.088 2.91 2.91 0 0 0 3.351-.176c.966-.762 1.341-2.048.935-3.204s-1.505-1.932-2.738-1.93m-6.62 4.936c-1.143 0-2.07-.92-2.07-2.056s.927-2.057 2.07-2.057 2.069.92 2.069 2.057a2.065 2.065 0 0 1-2.07 2.056m6.62 0c-1.142 0-2.069-.92-2.069-2.056s.927-2.057 2.07-2.057 2.068.92 2.068 2.057a2.065 2.065 0 0 1-2.069 2.056'\n fill='currentColor'\n />\n </svg>\n );\n}\n",":local {\n .iconCircle {\n border-radius: 50%;\n width: 100%;\n height: 100%;\n text-align: center;\n line-height: 100%;\n }\n\n .dot {\n position: absolute;\n top: -0.1rem;\n right: -0.1rem;\n width: 0.8rem;\n height: 0.8rem;\n }\n}\n","import React from 'react';\n\nimport { Avatar } from 'libs/shared/components/avatar/Avatar';\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { AnonymousSvg } from 'libs/shared/images/svg/objects/AnonymousSvg';\nimport { GroupSvg } from 'libs/shared/images/svg/objects/GroupSvg';\nimport { EngagementType } from 'libs/shared/interfaces';\n\nimport styles from './engagement-avatar.module.scss';\n\ninterface EngagementAvatarProps {\n imageCdnUrl: string;\n initials: string;\n imageUrl?: string;\n extraClasses?: string;\n showDot?: boolean;\n anonymiseUsers?: boolean;\n /** When set, determines the avatar icon based on engagement type. */\n type?: EngagementType;\n anonymousSvgSize?: SvgContainerSize;\n}\n\nexport function EngagementAvatar(props: EngagementAvatarProps): JSX.Element {\n const isAnonymous = props.type === 'anon';\n const isClassroomViews = props.type === 'student-reach';\n\n if (isClassroomViews) {\n return (\n <div className='position-relative h-100 w-100'>\n <div className={`${styles.iconCircle} bg-orange text-light ${props.extraClasses || ''}`}>\n <SvgContainer\n svg={GroupSvg}\n size={props.anonymousSvgSize || SvgContainerSize.Large}\n className='svg-container w-100 h-100'\n />\n </div>\n </div>\n );\n }\n\n if (isAnonymous) {\n return (\n <div className='position-relative h-100 w-100'>\n <div className={`${styles.iconCircle} bg-gray-700 text-light ${props.extraClasses || ''}`}>\n <SvgContainer\n svg={AnonymousSvg}\n size={props.anonymousSvgSize || SvgContainerSize.Large}\n className='svg-container w-100 h-100'\n />\n </div>\n {props.showDot && <div className={`${styles.dot} rounded-circle bg-danger`} />}\n </div>\n );\n }\n\n return (\n <Avatar\n imageCdnUrl={props.imageCdnUrl}\n initials={props.initials}\n imageUrl={props.imageUrl}\n extraClasses={props.extraClasses}\n showDot={props.showDot}\n anonymiseUsers={props.anonymiseUsers}\n />\n );\n}\n","function _extends() {\n return module.exports = _extends = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports, _extends.apply(null, arguments);\n}\nmodule.exports = _extends, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"x_google_ignoreList":[6],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"GIKXvkU2.chunk.js","names":[],"sources":["../../../../libs/shared/src/utils/MasterTypeHelper.ts","../../../../libs/shared/src/apps/analytics/utils/anon-name-dictionaries.json","../../../../libs/shared/src/apps/analytics/utils/AnonymiseUserUtils.ts","../../../../libs/shared/src/images/svg/objects/AnonymousSvg.tsx","../../../../libs/shared/src/components/engagement-avatar/engagement-avatar.module.scss","../../../../libs/shared/src/components/engagement-avatar/EngagementAvatar.tsx","../../../../../node_modules/@babel/runtime/helpers/extends.js"],"sourcesContent":["import { MasterType } from 'libs/shared/enums/MasterType';\nimport { BaseObject, Classification, Resource } from 'libs/shared/interfaces';\n\nexport const MasterTypeHelper = {\n isType<T extends BaseObject>(obj: any, typeId: MasterType): obj is T {\n if (obj?.typeId)\n return obj.typeId === typeId;\n\n // Fallback to comparing actual string types\n return obj?.type?.toLowerCase() === MasterType[typeId].toLowerCase();\n },\n\n isResource(obj: any): obj is Resource {\n return MasterTypeHelper.isType<Resource>(obj, MasterType.Resource);\n },\n\n isClassification(obj: any): obj is Classification {\n return obj.type === 'Subject';\n }\n};\n","{\n \"colours\": [\n \"amber\",\n \"apricot\",\n \"aqua\",\n \"azure\",\n \"black\",\n \"blue\",\n \"bronze\",\n \"brown\",\n \"chocolate\",\n \"copper\",\n \"coral\",\n \"cream\",\n \"crimson\",\n \"cyan\",\n \"emerald\",\n \"gold\",\n \"green\",\n \"grey\",\n \"indigo\",\n \"ivory\",\n \"jade\",\n \"lavender\",\n \"lime\",\n \"maroon\",\n \"mint\",\n \"navy\",\n \"olive\",\n \"orange\",\n \"peach\",\n \"pink\",\n \"plum\",\n \"purple\",\n \"red\",\n \"rose\",\n \"ruby\",\n \"sage\",\n \"salmon\",\n \"sapphire\",\n \"scarlet\",\n \"silver\",\n \"sky\",\n \"teal\",\n \"turquoise\",\n \"violet\",\n \"white\",\n \"yellow\"\n ],\n \"animals\": [\n \"aardvark\", \"albatross\", \"alligator\", \"alpaca\", \"ant\", \"anteater\", \"antelope\", \"ape\", \"armadillo\",\n \"baboon\", \"badger\", \"bat\", \"bear\", \"beaver\", \"bee\", \"beetle\", \"bison\", \"blackbird\", \"boar\", \"bobcat\", \"bonobo\", \"buffalo\", \"butterfly\",\n \"camel\", \"canary\", \"capybara\", \"caribou\", \"cat\", \"caterpillar\", \"chameleon\",\n \"cheetah\", \"chimpanzee\", \"chinchilla\", \"chipmunk\", \"clownfish\", \"cockatoo\", \"cougar\", \"cow\", \"coyote\",\n \"crab\", \"crane\", \"crocodile\", \"crow\",\n \"deer\", \"dingo\", \"dog\", \"dolphin\", \"donkey\", \"dove\", \"dragonfly\", \"duck\",\n \"eagle\", \"elephant\", \"elk\", \"emu\",\n \"falcon\", \"ferret\", \"finch\", \"firefly\", \"fish\", \"flamingo\", \"fox\", \"frog\",\n \"gazelle\", \"gecko\", \"gerbil\", \"giraffe\", \"goat\", \"goldfish\", \"goose\", \"gorilla\", \"grasshopper\", \"gull\",\n \"hamster\", \"hare\", \"hawk\", \"hedgehog\", \"heron\", \"hippopotamus\", \"horse\", \"hummingbird\",\n \"iguana\", \"impala\",\n \"jaguar\", \"jellyfish\",\n \"kangaroo\", \"kingfisher\", \"kiwi\", \"koala\", \"koi\",\n \"ladybug\", \"lemur\", \"leopard\", \"lion\", \"lizard\", \"llama\", \"lobster\", \"lynx\",\n \"macaw\", \"magpie\", \"manatee\", \"mandrill\", \"marlin\", \"meerkat\", \"mole\", \"mongoose\", \"monkey\", \"moose\", \"mouse\", \"mule\",\n \"narwhal\", \"newt\", \"nightingale\",\n \"ocelot\", \"octopus\", \"orangutan\", \"orca\", \"ostrich\", \"otter\", \"owl\", \"ox\",\n \"panda\", \"panther\", \"parakeet\", \"parrot\", \"peacock\", \"pelican\", \"penguin\", \"pheasant\", \"pigeon\", \"platypus\",\n \"pony\", \"porcupine\", \"possum\", \"pufferfish\", \"puffin\", \"puma\",\n \"quail\",\n \"rabbit\", \"raccoon\", \"raven\", \"reindeer\", \"rhinoceros\", \"roadrunner\", \"robin\", \"rooster\",\n \"salamander\", \"salmon\", \"seahorse\", \"seal\", \"shark\", \"sheep\", \"sloth\", \"snail\", \"snake\", \"sparrow\",\n \"squid\", \"squirrel\", \"starfish\", \"stingray\", \"stork\", \"swallow\", \"swan\", \"swordfish\",\n \"tapir\", \"tiger\", \"toad\", \"tortoise\", \"toucan\", \"trout\", \"tuna\", \"turtle\",\n \"wallaby\", \"walrus\", \"weasel\", \"whale\", \"wildebeest\", \"wolf\", \"wolverine\", \"woodpecker\",\n \"yak\",\n \"zebra\"\n ]\n}\n","import { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { AnonUser } from 'libs/shared/interfaces/models/interactive-results/AnonUser';\nimport { UserHelper } from 'libs/shared/utils/UserHelper';\n\nimport dictionaries from './anon-name-dictionaries.json';\n\nconst namespace = 'shared.analyticsUtils';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nfunction capitalize(word: string): string {\n return word.charAt(0).toUpperCase() + word.slice(1);\n}\n\nfunction stringToSeed(input: string): number {\n if (!input)\n return 0;\n\n // Simple hash function (DJB2-like) for browsers\n let hash = 0;\n for (let i = 0; i < input.length; i++) {\n const char = input.charCodeAt(i);\n hash = ((hash << 5) - hash) + char;\n hash |= 0; // Convert to 32bit integer\n }\n return Math.abs(hash);\n}\n\nfunction generateAnonName(userId: string, sessionId: string): string {\n /**\n * Generate a seed that is unique to each user but changes every 5 minutes.\n *\n * We use a seed so that if the same user's name is anonymised multiple times\n * in quick succession (e.g. multiple renders), the same name will be returned each time.\n *\n * We change the seed every 5 minutes so that students don't always have the same name.\n */\n const bucket = Math.floor((new Date()).getMinutes() / 5);\n const seed = stringToSeed(`${userId || sessionId}-${bucket}`);\n // Treat the seed as a mixed-radix number: the low \"digit\" (mod) picks the colour, the next\n // \"digit\" (quotient) picks the animal. This decorrelates the two indices so every pair is\n // reachable and consecutive seeds cycle through all colours before the animal advances.\n const colour = dictionaries.colours[seed % dictionaries.colours.length];\n const animal = dictionaries.animals[Math.floor(seed / dictionaries.colours.length) % dictionaries.animals.length];\n return `${capitalize(colour)} ${capitalize(animal)}`;\n}\n\nexport function anonymiseUserName(user: AnonUser, shouldAnonymise: boolean): string {\n if (!user) {\n return getPhrase('anonUser');\n }\n\n if (!shouldAnonymise) {\n if (user.deleted)\n return getPhrase('deleted');\n\n return UserHelper.getFullName(user) || getPhrase('anonUser');\n }\n\n return generateAnonName(user.id, user.sessionId);\n}\n","import React from 'react';\n\nexport function AnonymousSvg(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg {...props}\n >\n <path\n d='m16.837 9.842-1.138-3.678a1.65 1.65 0 0 0-.887-1.01 1.67 1.67 0 0 0-1.348-.02l-1.14.486a.8.8 0 0 1-.647 0l-1.14-.488a1.67 1.67 0 0 0-1.348.021 1.65 1.65 0 0 0-.887 1.01L7.164 9.842a7.17 7.17 0 0 0-3.062 1.85.41.41 0 0 0 .314.683h15.17c.162 0 .31-.094.376-.241a.41.41 0 0 0-.064-.44 7.17 7.17 0 0 0-3.061-1.852M9.094 6.404a.836.836 0 0 1 1.117-.516l1.135.484c.416.181.89.181 1.306 0l1.137-.485a.836.836 0 0 1 1.117.516l.976 3.153a16.17 16.17 0 0 0-7.764 0zm-3.59 5.148c1.455-1.019 3.866-1.645 6.497-1.645a14.5 14.5 0 0 1 4.41.651c.74.229 1.444.563 2.087.994zm9.807 1.645a2.9 2.9 0 0 0-2.508 1.447 1.61 1.61 0 0 0-1.604 0c-.763-1.323-2.425-1.835-3.807-1.173s-2.016 2.272-1.452 3.69a2.93 2.93 0 0 0 3.6 1.704 2.906 2.906 0 0 0 1.968-3.445.88.88 0 0 1 .986 0 2.87 2.87 0 0 0 1.269 3.088 2.91 2.91 0 0 0 3.351-.176c.966-.762 1.341-2.048.935-3.204s-1.505-1.932-2.738-1.93m-6.62 4.936c-1.143 0-2.07-.92-2.07-2.056s.927-2.057 2.07-2.057 2.069.92 2.069 2.057a2.065 2.065 0 0 1-2.07 2.056m6.62 0c-1.142 0-2.069-.92-2.069-2.056s.927-2.057 2.07-2.057 2.068.92 2.068 2.057a2.065 2.065 0 0 1-2.069 2.056'\n fill='currentColor'\n />\n </svg>\n );\n}\n",":local {\n .iconCircle {\n border-radius: 50%;\n width: 100%;\n height: 100%;\n text-align: center;\n line-height: 100%;\n }\n\n .dot {\n position: absolute;\n top: -0.1rem;\n right: -0.1rem;\n width: 0.8rem;\n height: 0.8rem;\n }\n}\n","import React from 'react';\n\nimport { Avatar } from 'libs/shared/components/avatar/Avatar';\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { AnonymousSvg } from 'libs/shared/images/svg/objects/AnonymousSvg';\nimport { GroupSvg } from 'libs/shared/images/svg/objects/GroupSvg';\nimport { EngagementType } from 'libs/shared/interfaces';\n\nimport styles from './engagement-avatar.module.scss';\n\ninterface EngagementAvatarProps {\n imageCdnUrl: string;\n initials: string;\n imageUrl?: string;\n extraClasses?: string;\n showDot?: boolean;\n anonymiseUsers?: boolean;\n /** When set, determines the avatar icon based on engagement type. */\n type?: EngagementType;\n anonymousSvgSize?: SvgContainerSize;\n}\n\nexport function EngagementAvatar(props: EngagementAvatarProps): JSX.Element {\n const isAnonymous = props.type === 'anon';\n const isClassroomViews = props.type === 'student-reach';\n\n if (isClassroomViews) {\n return (\n <div className='position-relative h-100 w-100'>\n <div className={`${styles.iconCircle} bg-orange text-light ${props.extraClasses || ''}`}>\n <SvgContainer\n svg={GroupSvg}\n size={props.anonymousSvgSize || SvgContainerSize.Large}\n className='svg-container w-100 h-100'\n />\n </div>\n </div>\n );\n }\n\n if (isAnonymous) {\n return (\n <div className='position-relative h-100 w-100'>\n <div className={`${styles.iconCircle} bg-gray-700 text-light ${props.extraClasses || ''}`}>\n <SvgContainer\n svg={AnonymousSvg}\n size={props.anonymousSvgSize || SvgContainerSize.Large}\n className='svg-container w-100 h-100'\n />\n </div>\n {props.showDot && <div className={`${styles.dot} rounded-circle bg-danger`} />}\n </div>\n );\n }\n\n return (\n <Avatar\n imageCdnUrl={props.imageCdnUrl}\n initials={props.initials}\n imageUrl={props.imageUrl}\n extraClasses={props.extraClasses}\n showDot={props.showDot}\n anonymiseUsers={props.anonymiseUsers}\n />\n );\n}\n","function _extends() {\n return module.exports = _extends = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports, _extends.apply(null, arguments);\n}\nmodule.exports = _extends, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"x_google_ignoreList":[6],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Kn as e,N as t,P as n,Q as r,U as i,et as a,st as o,z as s}from"./BSV_W0cK.chunk.js";import{n as c,p as l}from"./DLiesDxa.chunk.js";import{t as u}from"./Bqlm3yF_.chunk.js";import{t as d}from"./Btl_wt9M.chunk.js";import{t as f}from"./DjcvhO-s.chunk.js";import{b as p,s as m}from"./app-
|
|
2
|
-
//# sourceMappingURL=
|
|
1
|
+
import{Kn as e,N as t,P as n,Q as r,U as i,et as a,st as o,z as s}from"./BSV_W0cK.chunk.js";import{n as c,p as l}from"./DLiesDxa.chunk.js";import{t as u}from"./Bqlm3yF_.chunk.js";import{t as d}from"./Btl_wt9M.chunk.js";import{t as f}from"./DjcvhO-s.chunk.js";import{b as p,s as m}from"./app-CirLTvga.js";import{t as h}from"./BfXnhpYV2.chunk.js";var g=e(o()),_=n(),v=`reports.removeLogo`,y=u.encloseNamespace(v);function b(e){let[n,o]=g.useState(!1),u=l(),b=h(),x=p();async function S(){o(!0);try{await u(m.removeLogo(e.customerId,e.logoId)),b.success(y(x?`successTertiary`:`success`)),t.logUserAction({id:e.logoId},{actionType:r.Remove,entity:s.Logo,workflowPhase:a.Complete,location:i.Popup}),e.closePopup()}catch{b.success(y(x?`errorTertiary`:`error`)),o(!1)}}return(0,_.jsxs)(d,{closePopup:e.closePopup,title:y(x?`removeSchoolCrestTertiary`:`removeSchoolCrest`),children:[(0,_.jsx)(`p`,{children:(0,_.jsx)(c,{namespace:v,phrase:x?`areYouSureTertiary`:`areYouSure`})}),(0,_.jsxs)(f,{children:[(0,_.jsx)(f.Cancel,{onClick:e.closePopup}),(0,_.jsx)(f.Submit,{onClick:S,text:y(`remove`),showSpinner:n,variant:`danger`})]})]})}export{b as RemoveLogoView};
|
|
2
|
+
//# sourceMappingURL=JKXdJyQp.chunk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"JKXdJyQp.chunk.js","names":[],"sources":["../../src/shared/views/remove-logo/RemoveLogoView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\nimport { EntityType, LocationContext, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\n\nimport { Popup } from 'libs/shared/components/popup/Popup';\nimport { PopupButtons } from 'libs/shared/components/popup/PopupButtons';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { PopupViewProps } from 'libs/shared/interfaces';\n\nimport { LogoRequests } from 'shared/flight-requests/LogoRequests';\nimport { useIsTertiary } from 'shared/hooks/useIsTertiary';\n\nconst namespace = 'reports.removeLogo';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface RemoveLogoViewProps extends PopupViewProps {\n logoId: string;\n customerId: string;\n}\n\nexport function RemoveLogoView(props: RemoveLogoViewProps): JSX.Element {\n const [ showSpinner, setShowSpinner ] = React.useState(false);\n\n const fetchAsync = Flight.useGetFetchAsync();\n\n const alerts = useAlerts();\n const isTertiary = useIsTertiary();\n\n async function onClickRemove(): Promise<void> {\n setShowSpinner(true);\n\n try {\n await fetchAsync(LogoRequests.removeLogo(props.customerId, props.logoId));\n\n alerts.success(getPhrase(isTertiary ? 'successTertiary' : 'success'));\n\n AnalyticsHelper.logUserAction({\n id: props.logoId\n }, {\n actionType: UserAction.Remove,\n entity: EntityType.Logo,\n workflowPhase: WorkflowPhase.Complete,\n location: LocationContext.Popup\n });\n\n props.closePopup();\n } catch {\n alerts.success(getPhrase(isTertiary ? 'errorTertiary' : 'error'));\n setShowSpinner(false);\n }\n }\n\n return (\n <Popup\n closePopup={props.closePopup}\n title={isTertiary ? getPhrase('removeSchoolCrestTertiary') : getPhrase('removeSchoolCrest')}\n >\n <p><Text namespace={namespace} phrase={isTertiary ? 'areYouSureTertiary' : 'areYouSure'} /></p>\n\n <PopupButtons>\n <PopupButtons.Cancel onClick={props.closePopup} />\n <PopupButtons.Submit\n onClick={onClickRemove}\n text={getPhrase('remove')}\n showSpinner={showSpinner}\n variant='danger'\n />\n </PopupButtons>\n </Popup>\n );\n}\n"],"mappings":"4WAiBM,EAAY,qBACZ,EAAY,EAAgB,iBAAiB,EAAU,CAO7D,SAAgB,EAAe,EAAyC,CACtE,GAAM,CAAE,EAAa,GAAA,EAAyB,SAAS,GAAM,CAEvD,EAAa,GAAyB,CAEtC,EAAS,GAAW,CACpB,EAAa,GAAe,CAElC,eAAe,GAA+B,CAC5C,EAAe,GAAK,CAEpB,GAAI,CACF,MAAM,EAAW,EAAa,WAAW,EAAM,WAAY,EAAM,OAAO,CAAC,CAEzE,EAAO,QAAQ,EAAU,EAAa,kBAAoB,UAAU,CAAC,CAErE,EAAgB,cAAc,CAC5B,GAAI,EAAM,OACX,CAAE,CACD,WAAY,EAAW,OACvB,OAAQ,EAAW,KACnB,cAAe,EAAc,SAC7B,SAAU,EAAgB,MAC3B,CAAC,CAEF,EAAM,YAAY,MACZ,CACN,EAAO,QAAQ,EAAU,EAAa,gBAAkB,QAAQ,CAAC,CACjE,EAAe,GAAM,EAIzB,OACE,EAAA,EAAA,MAAC,EAAD,CACE,WAAY,EAAM,WAClB,MAAoB,EAAb,EAAuB,4BAAyC,oBAAoB,UAF7F,EAIE,EAAA,EAAA,KAAC,IAAD,CAAA,UAAG,EAAA,EAAA,KAAC,EAAD,CAAiB,YAAW,OAAQ,EAAa,qBAAuB,aAAgB,CAAA,CAAI,CAAA,EAE/F,EAAA,EAAA,MAAC,EAAD,CAAA,SAAA,EACE,EAAA,EAAA,KAAC,EAAa,OAAd,CAAqB,QAAS,EAAM,WAAc,CAAA,EAClD,EAAA,EAAA,KAAC,EAAa,OAAd,CACE,QAAS,EACT,KAAM,EAAU,SAAS,CACZ,cACb,QAAQ,SACR,CAAA,CACW,CAAA,CAAA,CACT"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Kn as e,N as t,P as n,Q as r,U as i,V as a,Wn as o,Wt as s,Y as c,Yt as l,ct as u,et as d,st as f,z as p}from"./BSV_W0cK.chunk.js";import{i as m,n as h,o as g,r as _,t as v,v as y,y as b}from"./COrUmz0l.chunk.js";import{i as x,r as ee,t as te}from"./DVHj6R3-.chunk.js";import{a as S,b as C,c as ne,d as w,h as re,n as T,t as ie}from"./DLiesDxa.chunk.js";import{t as E}from"./BDdd6NA7.chunk.js";import{i as ae,n as oe,s as se,t as ce}from"./CammdB53.chunk.js";import{t as le}from"./Dhb09xKG.chunk.js";import{n as D,r as ue,t as de}from"./BmJ66zOA.chunk.js";import{n as O}from"./CNQKHXPY.chunk.js";import{t as fe}from"./D_tyQz4J.chunk.js";import{i as pe,l as me,n as he,o as k,r as A,t as j}from"./CqVCiInU.chunk.js";import{t as M}from"./Bqlm3yF_.chunk.js";import{n as ge,t as _e}from"./SNiCkvSP.chunk.js";import{r as ve,t as ye}from"./Btl_wt9M.chunk.js";import{a as be,c as xe,l as Se,n as Ce,t as N}from"./DjcvhO-s.chunk.js";import{G as P,I as we,R as Te,_ as Ee,at as De,d as Oe,f as ke,g as Ae,h as je,j as Me,p as F,u as I,v as Ne,y as L}from"./app-BeoBow2q.js";import{a as Pe,c as Fe,d as Ie,i as Le,n as Re,o as ze,r as Be,s as R,t as Ve,u as He}from"./DldsJ3cq.chunk.js";import{t as Ue}from"./CUMQJeCy.chunk.js";import{t as We}from"./BLzQ085A.chunk.js";import{n as Ge,t as Ke}from"./C1m-1G6w2.chunk.js";import{t as qe}from"./DPmS69Mt2.chunk.js";var z=e(f()),B={namespace:`share`},Je={video:`thumbnail,series,_canBeConsumed,_restrictions`,clip:`_parentVideo[_rating],_canBeConsumed,_thumbnail,_restrictions`,interactive:`_canBeConsumed,_parentVideo[_rating],_parentClip,_thumbnail,_restrictions`,series:`tallPoster,videos[thumbnail,count()]{limit:1}`,playlist:`cover,videos[thumbnail,count()]{limit:1},clips[_thumbnail,count()]{limit:1},interactives[_thumbnail,count()]{limit:1}`};function Ye(e,t){return{id:e,"query.user":`yearGroups,avatar,userprofiles{customer.id:${t}}`,"query.classroom":`enrolments[count()]{role:student,limit:0},customer{id:${t}}`,"query.classroom_group":`classroom,users[count()]{limit:0}`}}var V={getShareObject(e,t,n){return{url:`/api/share/find/${e}`,key:`share:${e}`,bootstrapName:`share:${e}`,success:t,error:n}},getShareRecipients(e){return{url:`/api/share/find/${e}/recipients`,key:`share:${e}:recipients`,normalize:!1}},sharedObjectsById(e){e.sort();let t=e.map(e=>`id=${e}`),n=Object.keys(Je).map(e=>`query.${e}=${Je[e]}`);return{url:`{gateway}/v1/objects?${[...t,...n,`permissionFilterOption=${j.StripMetadata}`].join(`&`)}`,key:`objects:${e.join(`,`)}`,normalize:!1}},sentShare(e={}){let t=Object.values(e).join(`:`);return{url:O.urlBuilder(`{gateway}/v1/users/me/share/sent-items`,e),key:`sent:shares:${t}`,normalize:!1}},getSentDirectShareByObjectId(e){return{url:`{gateway}/v1/users/me/share/direct/sent-items?objectId=${e}`,key:`direct:share:sent:object:${e}`,normalizeOptions:B}},createDirectShare(e,t,n,r){return{url:`{gateway}/v1/share`,key:`create:direct:share`,data:e,type:C.POST,normalizeOptions:B,invalidationKeys:[`direct:share:sent:object:${e.objectId}`,`sent:shares`],success:t,error:n,always:r}},updateDirectShareRecipients(e,t,n,r,i){let a=`direct:share:recipients:${e}`;return{url:`{gateway}/v1/share/${e}/recipients`,key:`edit:direct:share`,data:t,type:C.POST,normalizeOptions:B,invalidationKeys:`sent:shares`,updateState:{keys:a,updateData:e=>!e[a]||t.recipients.length?e:{...e,[a]:[]}},success:n,error:r,always:i}},removeDirectShareRecipient(e,t,n,r,i){let a=`direct:share:recipients:${e}`;return{url:O.urlBuilder(`{gateway}/v1/share/${e}/recipients`,{recipientId:t}),key:`remove:direct:share:recipient`,type:C.DELETE,normalizeOptions:B,invalidationKeys:`sent:shares`,updateState:{keys:a,updateData:e=>e[a]?{...e,[a]:[]}:e},success:n,error:r,always:i}},getDirectShareRecipientsById(e,t,n){return{url:O.urlBuilder(`{gateway}/v1/objects`,Ye(t.map(e=>e.id),n)),key:`direct:share:recipients:${e}`}},getRecipientsById(e,t){return e.sort(),{url:O.urlBuilder(`{gateway}/v1/objects`,Ye(e,t)),key:`share:recipients:${e.join(`,`)}`}},getRecipientUsers(e,t){return{url:`{gateway}/v1/objects/${e}/users?query={limit:100}`,key:`share:recipients:${e}:users`,success:t}},getObjectsSharedWithUser(e){let t={permissionFilterOption:j.StripMetadata};return e&&(t.cursor=e),{url:O.urlBuilder(`{gateway}/v1/users/me/share/received-items`,t),key:`shared:with:me:${e}`}},getShareLinkByObjectId(e){return{url:`{gateway}/v1/share/links?objectId=${e}`,key:`share:link:object:${e}`,normalizeOptions:B,formatData:e=>({...e,linkExpireDate:e.linkExpireDate||null})}},createShareLink(e,t,n,r){return{url:`{gateway}/v1/share/links`,key:`create:share:link`,type:C.POST,data:e,normalizeOptions:B,invalidationKeys:[`share:link:object:${e.resourceId}`,`privacy:${e.resourceId}`,`sent:shares`],success:t,error:n,always:r}},editShareLink(e,t,n,r,i){return{url:`{gateway}/v1/share/links/${e.id}`,key:`edit:share:link`,data:t,type:C.PUT,normalizeOptions:B,invalidationKeys:[`share:${e.id}`,`share:link:object:${e.objectId}`,`sent:shares`],success:n,error:r,always:i}},deleteShareLink(e,t,n,r){return{url:`{gateway}/v1/share/links/${e.id}`,key:`delete:share:link`,type:C.DELETE,normalizeOptions:B,invalidationKeys:[`share:${e.id}`,`share:link:object:${e.objectId}`,`sent:shares`],success:t,error:n,always:r}},checkPassword(e,t,n,r){return{url:`{gateway}/v1/share/links/${e}/password/verify`,publicUrl:`{gateway}/v1/share/links/${e}/password/verify/public`,key:`checkpassword:${e}`,type:C.POST,data:{password:t},success:n,error:r}},getPrivacy(e){return{url:`{gateway}/v1/objects/${e}/access`,key:`privacy:${e}`,normalize:!1}},updatePrivacy(e,t,n,r,i){return{url:`{gateway}/v1/share/links/${e}/privacy`,key:`update:privacy`,type:C.PUT,data:{privacy:t,overrideRestrictions:n},invalidationKeys:[`privacy`,`sent:shares`],normalize:!1,success:r,error:i}},createAnonSession(e,t,n){return{url:`{gateway}/v1/shares/${e}/anon-sessions`,key:`create:anon:session`,type:C.POST,data:{sessionId:t,sessionName:n},normalize:!1}},getAnonSessions(e){return{url:`{gateway}/v1/shares/${e}/anon-sessions`,key:`anon:session:${e}`,normalize:!1}}},Xe=5,H={getRecentItem(e,t,n=!0){let r=n?t.cacheGet(e):t.get(e);return Array.isArray(r)||(r=[]),r},setRecentItem(e,t,n,r){if(Array.isArray(t)){if(r){n.cacheSet(e,t);return}n.set(e,t)}},addRecentItem(e,t,n){let{id:r,limit:i=Xe,expire:a=!0}=n,o=H.getRecentItem(e,t,a),s=o.indexOf(r);return s>-1&&o.splice(s,1),o.unshift(r),o.length>i&&(o=o.slice(0,i)),H.setRecentItem(e,o,t,a),o},removeRecentItem(e,t,n){let r=H.getRecentItem(e,n).filter(e=>e!==t.toString());H.setRecentItem(e,r,n)}},Ze=e=>`recently:shared:to:${e}`,Qe={getRecentlySharedTo(e){return H.getRecentItem(Ze(e),ae)},addRecentlySharedTo(e,t){return H.addRecentItem(Ze(e),ae,t)}},U=n(),$e=`share.embedSize`;function et(e){let{autoplay:t,setAutoplay:n,videoSize:r,setVideoSize:i,videoSizes:a}=e;return(0,U.jsxs)(`div`,{className:`d-flex align-items-center`,children:[!!a.length&&(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`div`,{className:`me-1`,children:(0,U.jsx)(T,{namespace:$e,phrase:`videoSize`})}),(0,U.jsx)(`div`,{className:`pe-3`,children:(0,U.jsxs)(P,{children:[(0,U.jsx)(P.Toggle,{id:`embed-resolution`,variant:`outline-dark`,children:r.label}),(0,U.jsx)(P.Menu,{children:a.map(e=>(0,U.jsx)(P.Item,{onClick:()=>i(e),children:e.label},`${e.width}x${e.height}`))})]})})]}),(0,U.jsx)(`div`,{className:`me-2`,children:(0,U.jsx)(T,{namespace:$e,phrase:`autoplay`})}),(0,U.jsx)(Me,{id:`autoplay-checkbox`,checked:t,onChange:()=>n(!t)})]})}var tt=class{constructor(e){this.setData(e)}setData(e){let{collectionPrefix:t,id:n,sort:r,cursor:i}=e;n&&(this.id=n),r&&(this.sort=r),i&&(this.cursor=i),t&&(this.collectionPrefix=t)}toString(){return[this.collectionPrefix,this.id,this.sort,this.cursor].filter(Boolean).join(`:`)}toParams(){let e={};return this.sort&&(e.sort=this.getSortTypeParam().toLowerCase()),this.cursor&&(e.cursor=this.cursor),e}getSortTypeParam(){return l.throw(new s(`getSortTypeParam must be implemented when extending BaseCollectionIdentifier`)),``}},nt=class extends tt{constructor(e,t=``){super({collectionPrefix:`playlist:videos`,id:e,cursor:t})}},rt={deletePlaylist(e){return t=>{let n={...t};return n.hasOwnProperty(e)&&delete n[e],n}},incrementVideoCount(e,t){return n=>{let r={...n};return r.hasOwnProperty(e)?(r[e].videos||(r[e].videos={}),r[e].videos.count=r[e].videos.count?r[e].videos.count+t:t,r):n}}},it={reorder(e,t,n){if(t===n)return{reorderedItems:e,reorderRequest:null};let r=E.moveItem(e,t,n),i=n<e.length-1?r[n+1].id:null;return{reorderedItems:r,reorderRequest:{sourceMemberId:r[n].id,destinationMemberId:i}}},updateState(e,t,n){let r=[],i=u.deepClone(n),a=[e],o=n[e],s=!!o&&!!o.data&&o.data.length;for(;o&&Array.isArray(o.data);){r.push(...o.data);let t=o.pagination&&o.pagination.cursors&&o.pagination.cursors.next,i=!!t&&`${e}:${t}`;o=t&&n[i],o&&a.push(i)}if(!r.length)return n;let c=E.findIndex(r,e=>e.id===t.sourceMemberId),l=[...r],d=l.splice(c,1),f=t.destinationMemberId?E.findIndex(l,e=>e.id===t.destinationMemberId):l.length;return l.splice(f,0,d[0]),l=l.map(e=>({id:e.id})),a.forEach(e=>{let t=l.splice(0,s);i[e].data=t}),i}},at={getUserPlaylists(e){let{sort:t,type:n}=e,r={sort:t,PermissionFilterOption:`stripMetadata`,query:`{limit:100}${A.PLAYLIST_COLLECTION},_liteOwner,_curationTags`};return e.cursor&&(r.cursor=e.cursor),{url:O.urlBuilder(`/api/domain/v2/me/playlists/${n}`,r),key:e.toString()}},getPlaylist(e,t,n){return{url:O.urlBuilder(`{gateway}/v1/objects/${e}`,{query:`${A.PLAYLIST},_liteOwner,_curationTags`}),publicUrl:O.urlBuilder(`/api/objects/${e}`,{query:`${A.PLAYLIST},_curationTags`}),key:`playlist:${e}`,success:t,error:n}},getSharedPlaylist(e,t,n,r){return{url:O.urlBuilder(`/api/objects/${e}`,{query:`${A.PLAYLIST},_liteOwner,_curationTags`,shareId:t}),key:`shared:playlist:${e}:${t}`,success:n,error:r}},playlistWithThumbnailAndCount(e){return{url:O.urlBuilder(`{gateway}/v1/objects/${e}`,{query:`${A.PLAYLIST},_liteOwner,videos[count()]{limit:1},interactives[count()]{limit:1},clips[count()]{limit:1},_curationTags`}),key:`playlist:${e}:thumbnail:count`}},getPlaylistVideos(e,t){let{VIDEO_COLLECTION:n,CLIP_COLLECTION:r,INTERACTIVE:i}=A,a={query:`(videos[${n}]{status:[${L.Published},${L.Archived}]}|clips[${r}]{status:[${L.Published},${L.Archived}]}|interactives[${i}]){orderBy:orderindex,limit:100}`,permissionFilterOption:j.StripMetadata};return t&&(a.cursor=t),{url:O.urlBuilder(`{gateway}/v1/objects/${e}/members`,a),publicUrl:O.urlBuilder(`/api/objects/${e}/members`,a),key:`playlist:${e}:videos${t?`:${t}`:``}`}},getSharedPlaylistVideos(e,t,n){let{VIDEO_COLLECTION:r,CLIP_COLLECTION:i,INTERACTIVE:a}=A,o={query:`(videos[${r}]{status:[${L.Published},${L.Archived}]}|clips[${i}]{status:[${L.Published},${L.Archived}]}|interactives[${a}]){orderBy:orderindex,limit:100}`,permissionFilterOption:j.StripMetadata,shareId:t};return n&&(o.cursor=n),{url:O.urlBuilder(`/api/objects/${e}/members`,o),key:`shared:playlist:${e}:${t}:videos:${n}`}},getPlaylistVideosCount(e){let t=`{limit:0,status:[${L.Published},${L.Archived}]}`;return{url:O.urlBuilder(`{gateway}/v1/objects/${e}`,{query:`videos[count()]${t},clips[count()]${t},interactives[count()]${t}`}),publicUrl:O.urlBuilder(`/api/objects/${e}`,{query:`videos[count()]${t},clips[count()]${t},interactives[count()]${t}`}),key:`playlist:count:${e}`,normalize:!1}},getSharedPlaylistVideosCount(e,t){let n=`{limit:0,status:[${L.Published},${L.Archived}]}`;return{url:O.urlBuilder(`/api/objects/${e}`,{query:`videos[count()]${n},clips[count()]${n},interactives[count()]${n}`,shareId:t}),key:`shared:playlist:count:${e}:${t}`,normalize:!1}},getVideoPlaylists(e,t,n){return{url:`{gateway}/v1/objects/${e}/playlists?query={limit:100,owner.id:[${t}]}`,key:`video:playlists:${e}${n?`:cursor`:``}`}},createPlaylist(e,t,n,r,i){return{key:`create:playlist`,url:`{gateway}/v1/objects/${e}/playlists`,data:t,type:C.POST,success:n,error:r,always:i,invalidationKeys:`user:playlists`}},updatePlaylist(e,t,n,r,i){return{key:`update:playlist`,url:`{gateway}/v1/objects/${e}`,data:t,type:C.PUT,success:n,error:r,always:i}},deletePlaylist(e,t,n,r){return{key:`delete:playlist`,url:`{gateway}/v1/objects/${e}`,type:C.DELETE,success:t,error:n,always:r,invalidationKeys:`user:playlists`,updateState:{keys:`playlist:${e}`,updateData:rt.deletePlaylist(`playlist:${e}`)}}},copyPlaylist(e,t,n,r){return{url:`{gateway}/v1/playlists/copy`,key:`copy:playlist`,data:{playlistId:e},type:C.POST,invalidationKeys:`user:playlists`,success:t,error:n,always:r}},addToPlaylist(e,t,n,r){let i=[`user:playlists`,new nt(e).toString(),`playlist:${e}:videos`];t.forEach(e=>{i.push(`video:playlists:${e.id}`)});let a=t.reduce((e,t)=>(I.isClip(t)&&(Array.isArray(e.clips)?e.clips.push({id:t.id}):e.clips=[{id:t.id}]),I.isInteractive(t)&&(Array.isArray(e.interactives)?e.interactives.push({id:t.id}):e.interactives=[{id:t.id}]),I.isVideo(t)&&(Array.isArray(e.videos)?e.videos.push({id:t.id}):e.videos=[{id:t.id}]),e),{});return{key:`add:to:playlist:${e}:${t.map(e=>e.id).join(`:`)}`,url:`{gateway}/v1/objects/${e}`,data:a,type:C.PUT,success:n,error:r,invalidationKeys:i,updateState:{keys:`playlist:${e}`,updateData:rt.incrementVideoCount(`playlist:${e}`,t.length)},normalize:!1}},removePlaylistVideo(e,t,n,r,i){let a=`{gateway}/v1/objects/${e}`;return n===D.Clip?a+=`/clips`:n===D.Interactive?a+=`/interactives`:a+=`/videos`,{key:`remove:playlist:video`,url:O.urlBuilder(a,{memberId:t}),type:C.DELETE,success:r,error:i,invalidationKeys:[`user:playlists`,`playlist:${e}:videos`,`video:playlists:${t}`,`playlist:${e}`]}},getIsFollowingPlaylist(e,t){return{url:`{gateway}/v1/objects/${t}/followedPlaylists?query={id:${e}}`,key:`playlist:${e}:following:${t}`,formatData:t=>({objectId:e,isFollowing:!!t?.data?.length}),normalize:!1}},followPlaylist(e,t,n,r,i){return{url:`{gateway}/v1/objects/${t}`,key:`follow:playlist:${e}`,data:{followedPlaylists:e},type:C.PUT,invalidationKeys:[`user:playlists`,`playlist:${e}`,`shared:playlist`],success:n,error:r,always:i}},unfollowPlaylist(e,t,n,r,i){return{url:`{gateway}/v1/objects/${t}/followedPlaylists?memberId=${e}`,key:`unfollow:playlist:${e}`,type:C.DELETE,invalidationKeys:[`user:playlists`,`playlist:${e}`,`shared:playlist`],success:n,error:r,always:i}},reorderVideos(e,t,n,r){return{key:`reorder:playlist`,url:`{gateway}/v1/playlists/${e}/reorder`,data:t,type:C.PUT,success:n,error:r,invalidationKeys:`user:playlists`,updateState:{keys:`playlist:${e}:videos`,updateData:n=>it.updateState(`playlist:${e}:videos`,t,n)}}},getVideoCandidate(e){return{url:`{gateway}/v1/objects/${e}?query=_restrictions`,key:`add:to:playlist:candidate:${e}`}}},ot={sharedSeries:(e,t)=>O.urlBuilder(`/api/objects/${e}`,{query:A.SERIES,shareId:t}),seriesWithVideos:(e,t=3)=>`{gateway}/v1/objects/${e}?query=banner,videos[season,thumbnail,_canBeConsumed]{limit:${t}}`},st={series(e){let t={query:A.SERIES};return{url:O.urlBuilder(`{gateway}/v1/objects/${e}`,t),publicUrl:O.urlBuilder(`/api/objects/${e}`,t),key:`series:${e}`}},sharedSeries(e,t){return{url:ot.sharedSeries(e,t),key:`shared:series:${e}:${t}`}},seriesWithVideos(e,t=3){return{url:ot.seriesWithVideos(e,t),key:`series:${e}:with:videos:${t}`}},seriesWithThumbnailAndCount(e){return{url:`{gateway}/v1/objects/${e}?query=videos[season,thumbnail,_canBeConsumed,count()]{limit:1}`,key:`series:${e}:thumbnail:count`}},seriesVideos(e,t,n,r){let i=Ae.getVideoSortParam(n),a=[`series`,e,`videos`,r,n].filter(e=>!!e).join(`:`);return{url:O.urlBuilder(`{gateway}/v1/collections/${e}/videos`,{query:`{${i}}${A.VIDEO_COLLECTION}`,cursor:r}),publicUrl:O.urlBuilder(`/api/objects/collections/${e}/videos`,{query:`{${i}}${he.VIDEO_COLLECTION}`,cursor:r}),key:a}}},W=M.encloseNamespace(`shared.share`),G={getObjectTypeId(e){switch(e){case`video`:return D.Video;case`playlist`:return D.Playlist;case`subject`:return D.Subject;case`series`:return D.Series;case`interactive`:return D.Interactive;case`clip`:return D.Clip}},createLink(e){let n=n=>{t.logUserAction({...n,objectName:e.entity.name},t.mergeOptions(G.getAnalyticsOptions(e.entityType),{actionType:r.Create,entity:p.ShareLink,eventVersion:a.V3})),e.success&&e.success(n)},i=()=>{e.alerts.error(W(`createLinkError`,{name:e.entity.name}))},o={resourceId:e.entity.id,overrideRestrictions:!1};e.password&&(o.password=e.password),e.linkExpireDate&&(o.linkExpireDate=e.linkExpireDate),S(e.dispatch,V.createShareLink(o,n,i))},updateLink(e,n,i,o,s,c,l,u){S(e,V.editShareLink(o,s,e=>{t.logUserAction({...e,objectName:n.name},t.mergeOptions(G.getAnalyticsOptions(i),{actionType:r.Edit,entity:p.ShareLink,eventVersion:a.V3})),l&&l(e),c.success(W(`editSuccess`,{name:n.name,escapeText:!0}))},()=>{u&&u(),c.error(W(`editError`,{name:n.name,escapeText:!0}))}))},deleteLink(e,n,i,a,o,s,c){S(e,V.deleteShareLink(a,()=>{t.logUserAction({...a,objectName:n.name},t.mergeOptions(G.getAnalyticsOptions(i),{actionType:r.Delete,entity:p.ShareLink})),s&&s(),o.success(W(`deleteSuccess`,{name:n.name,escapeText:!0}))},()=>{o.error(W(`deleteError`,{name:n.name,escapeText:!0}))},()=>{c&&c()}))},createOrUpdateDirectShare(e){let{dispatch:n,entity:i,entityType:o,currentUser:s,recipients:l,sentDirectShare:u,message:d,onSuccess:f,onError:p,onDone:m}=e,h=e=>{f&&f(e),t.logUserAction({id:i.id,name:i.name,shareCount:l.length},t.mergeOptions(G.getAnalyticsOptions(o),{actionType:r.Share,descriptor:c.DirectShare,eventVersion:a.V3})),l.map(e=>{Qe.addRecentlySharedTo(s.id,{id:e.id})})},g={objectId:i.id,objectTypeId:G.getObjectTypeId(o),recipients:l,message:d},_={recipients:l,message:d};S(n,u?V.updateDirectShareRecipients(u.id,_,h,p,m):V.createDirectShare(g,h,p,m))},removeDirectShareRecipient(e,n,i,a,o,s){S(e,V.removeDirectShareRecipient(a.id,n,e=>{o&&o(e),t.logUserAction({shareCount:1},t.mergeOptions(G.getAnalyticsOptions(i),{actionType:r.Unshare}))},s))},getDirectShareRecipientsRequest(e,t){return!!t?.recipients?.length&&V.getDirectShareRecipientsById(t.id,t.recipients,e)},getAnalyticsEntity(e){switch(e){case`playlist`:return p.Playlist;case`subject`:return p.Classification;case`video`:return p.Video;case`series`:return p.Series;case`interactive`:return p.Interactive;case`clip`:return p.Clip}},getAnalyticsOptions(e){return{entity:G.getAnalyticsEntity(e),location:i.Popup,workflowPhase:d.Complete}},getFetchFunctionByType:e=>{switch(e){case`video`:return e=>w(je.video(e));case`playlist`:return e=>w(at.getPlaylist(e));case`subject`:return(e,t)=>w(Ie.classification(e,t));case`series`:return e=>w(st.series(e));case`interactive`:return e=>w(Ee.interactiveMetadata(e));case`clip`:return e=>w(Ne.clip(e))}},getImageUrl(e){return`thumbnail`in e&&e.thumbnail?e.thumbnail?.url:`_thumbnail`in e&&e._thumbnail?e._thumbnail?.url:`cover`in e?e.cover?.url:`tallPoster`in e?e.tallPoster?.url:``},getShareRecipientsPhrase(e){if(!e.length)return;let t={};if(e.length===1)return E.first(e).name;e.forEach(e=>{let n;switch(e.typeId){case D.User:n=`users`;break;case D.Classroom:n=`classrooms`;break;case D.ClassroomGroup:n=`classroomGroups`;break}let r=t[n]??[];r.push(e),t={...t,[n]:E.uniq(r)}});let n=t.classrooms&&!t.classroomGroups&&!t.users,r=t.classroomGroups&&!t.classrooms&&!t.users,i=t.users&&!t.classrooms&&!t.classroomGroups;if(n)return W(`classrooms`,{smartCount:t.classrooms.length});if(r)return W(`groups`,{smartCount:t.classroomGroups.length});if(i)return W(`users`,{smartCount:t.users.length});let a=[];t.classrooms?.length&&a.push(W(`classrooms`,{smartCount:t.classrooms.length})),t.classroomGroups?.length&&a.push(W(`groups`,{smartCount:t.classroomGroups.length})),t.users?.length&&a.push(W(`users`,{smartCount:t.users.length}));let o=a.pop();return`${a.join(`, `)} ${W(`and`)} ${o}`}},ct=o(((e,t)=>{t.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,n=[],r=0;r<e.rangeCount;r++)n.push(e.getRangeAt(r));switch(t.tagName.toUpperCase()){case`INPUT`:case`TEXTAREA`:t.blur();break;default:t=null;break}return e.removeAllRanges(),function(){e.type===`Caret`&&e.removeAllRanges(),e.rangeCount||n.forEach(function(t){e.addRange(t)}),t&&t.focus()}}})),lt=o(((e,t)=>{var n=ct(),r={"text/plain":`Text`,"text/html":`Url`,default:`Text`},i=`Copy to clipboard: #{key}, Enter`;function a(e){var t=(/mac os x/i.test(navigator.userAgent)?`⌘`:`Ctrl`)+`+C`;return e.replace(/#{\s*key\s*}/g,t)}function o(e,t){var o,s,c,l,u,d,f=!1;t||={},o=t.debug||!1;try{if(c=n(),l=document.createRange(),u=document.getSelection(),d=document.createElement(`span`),d.textContent=e,d.ariaHidden=`true`,d.style.all=`unset`,d.style.position=`fixed`,d.style.top=0,d.style.clip=`rect(0, 0, 0, 0)`,d.style.whiteSpace=`pre`,d.style.webkitUserSelect=`text`,d.style.MozUserSelect=`text`,d.style.msUserSelect=`text`,d.style.userSelect=`text`,d.addEventListener(`copy`,function(n){if(n.stopPropagation(),t.format)if(n.preventDefault(),n.clipboardData===void 0){o&&console.warn(`unable to use e.clipboardData`),o&&console.warn(`trying IE specific stuff`),window.clipboardData.clearData();var i=r[t.format]||r.default;window.clipboardData.setData(i,e)}else n.clipboardData.clearData(),n.clipboardData.setData(t.format,e);t.onCopy&&(n.preventDefault(),t.onCopy(n.clipboardData))}),document.body.appendChild(d),l.selectNodeContents(d),u.addRange(l),!document.execCommand(`copy`))throw Error(`copy command was unsuccessful`);f=!0}catch(n){o&&console.error(`unable to copy using execCommand: `,n),o&&console.warn(`trying IE specific stuff`);try{window.clipboardData.setData(t.format||`text`,e),t.onCopy&&t.onCopy(window.clipboardData),f=!0}catch(n){o&&console.error(`unable to copy using clipboardData: `,n),o&&console.error(`falling back to prompt`),s=a(`message`in t?t.message:i),window.prompt(s,e)}}finally{u&&(typeof u.removeRange==`function`?u.removeRange(l):u.removeAllRanges()),d&&document.body.removeChild(d),c()}return f}t.exports=o})),ut=o((e=>{function t(e){"@babel/helpers - typeof";return t=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},t(e)}Object.defineProperty(e,`__esModule`,{value:!0}),e.CopyToClipboard=void 0;var n=a(f()),r=a(lt()),i=[`text`,`onCopy`,`options`,`children`];function a(e){return e&&e.__esModule?e:{default:e}}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function s(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?o(Object(n),!0).forEach(function(t){x(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):o(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function c(e,t){if(e==null)return{};var n=l(e,t),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i<a.length;i++)r=a[i],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function l(e,t){if(e==null)return{};var n={},r=Object.keys(e),i,a;for(a=0;a<r.length;a++)i=r[a],!(t.indexOf(i)>=0)&&(n[i]=e[i]);return n}function u(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function d(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function p(e,t,n){return t&&d(e.prototype,t),n&&d(e,n),Object.defineProperty(e,`prototype`,{writable:!1}),e}function m(e,t){if(typeof t!=`function`&&t!==null)throw TypeError(`Super expression must either be null or a function`);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,`prototype`,{writable:!1}),t&&h(e,t)}function h(e,t){return h=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},h(e,t)}function g(e){var t=y();return function(){var n=b(e),r;if(t){var i=b(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return _(this,r)}}function _(e,n){if(n&&(t(n)===`object`||typeof n==`function`))return n;if(n!==void 0)throw TypeError(`Derived constructors may only return object or undefined`);return v(e)}function v(e){if(e===void 0)throw ReferenceError(`this hasn't been initialised - super() hasn't been called`);return e}function y(){if(typeof Reflect>`u`||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy==`function`)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function b(e){return b=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},b(e)}function x(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var ee=function(e){m(a,e);var t=g(a);function a(){var e;u(this,a);var i=[...arguments];return e=t.call.apply(t,[this].concat(i)),x(v(e),`onClick`,function(t){var i=e.props,a=i.text,o=i.onCopy,s=i.children,c=i.options,l=n.default.Children.only(s),u=(0,r.default)(a,c);o&&o(a,u),l&&l.props&&typeof l.props.onClick==`function`&&l.props.onClick(t)}),e}return p(a,[{key:`render`,value:function(){var e=this.props;e.text,e.onCopy,e.options;var t=e.children,r=c(e,i),a=n.default.Children.only(t);return n.default.cloneElement(a,s(s({},r),{},{onClick:this.onClick}))}}]),a}(n.default.PureComponent);e.CopyToClipboard=ee,x(ee,`defaultProps`,{onCopy:void 0,options:void 0})})),dt=o(((e,t)=>{var n=ut().CopyToClipboard;n.CopyToClipboard=n,t.exports=n}))(),ft={normal:`_normal_1285l_1`,copyBtn:`_copyBtn_1285l_4`,embedHtmlInput:`_embedHtmlInput_1285l_7`},K=M.encloseNamespace(`shared.copyInput`);pt.defaultProps={styling:`normal`};function pt(e){let[t,n]=z.useState(e.showCopiedText||!1);function r(){setTimeout(()=>n(!1),2e3)}function i(){e.onCopy&&e.onCopy(),!t&&(n(!0),r())}z.useEffect(()=>{e.showCopiedText&&r()},[e.showCopiedText]);function a(){return e.styling===`normal-v2`?(0,U.jsx)(dt.CopyToClipboard,{text:e.value,onCopy:i,children:(0,U.jsx)(v,{role:t?`status`:``,svg:t?Te:Ue,className:h(ft.copyBtn,`btn py-0 text-nowrap`,t?`btn-success text-white`:`btn-outline-dark border-secondary`,e.extraButtonClassNames),children:t?e.copiedText||K(`copiedLink`):e.copyText||K(`copy`)})}):(0,U.jsx)(dt.CopyToClipboard,{text:e.value,onCopy:i,children:(0,U.jsx)(`button`,{role:t?`status`:``,className:h(`btn btn-outline-dark border border-secondary py-0 text-nowrap`,e.extraButtonClassNames),children:t?e.copiedText||K(`copied`):e.copyText||K(`copy`)})})}let o=(0,U.jsxs)(`div`,{className:e.styling===`normal-v2`?`d-flex flex-row gap-2 position-relative w-100`:`input-group`,children:[e.textarea?(0,U.jsx)(`textarea`,{className:h(`form-control rounded w-100 h-100`,!e.hasInputBg&&ft.embedHtmlInput,e.textAreaClassName),spellCheck:!1,value:e.value,rows:e.rows||7,readOnly:!0}):(0,U.jsx)(`input`,{type:`text`,autoComplete:`off`,className:h(`form-control`,e.styling===`normal`&&e.styling),spellCheck:!1,value:e.value,readOnly:!0}),(0,U.jsx)(a,{})]});return e.label?(0,U.jsxs)(Se.Group,{className:`form-group`,children:[(0,U.jsx)(Se.Label,{children:e.label}),o]}):o}var mt=`shared.shared-utils`,ht={getEmbedResolutions(e=!0){let t=[{label:M.getPhrase(mt,`small`),width:`640`,height:`360`},{label:M.getPhrase(mt,`medium`),width:`1014`,height:`576`},{label:M.getPhrase(mt,`large`),width:`1280`,height:`720`}];return e&&t.unshift({label:M.getPhrase(mt,`responsive`),width:`100%`,height:`100%`}),t},getEmbedString(e){let{url:t,size:n}=e,r=n.width===`100%`,i=`<iframe ${r?`style="position:absolute; top:0; left:0; width:100%; height:100%;"`:`width="${n.width}" height="${n.height}"`} frameborder="0" allowfullscreen webkitallowfullscreen mozallowfullscreen allow="autoplay" ${`src="${t}"`}></iframe>`;return r?`<div style="padding:56.25% 0 0 0; position:relative;">${i}</div>`:i},buildEmbedUrl(e){let{embedUrl:t,host:n,shareId:r,autoplay:i,consumerKey:a}=e,o=t;o||=O.safeUrlConcat(n,`share/embed/${r}`);let s={};return i&&(s.a=!0),a&&(s.consumerKey=a),O.urlBuilder(o,s)}},gt={embedHtmlInput:`_embedHtmlInput_1rbgz_1`,copyBtnContainer:`_copyBtnContainer_1rbgz_4`},_t=`share.copyEmbedHtml`,vt=M.encloseNamespace(_t);yt.defaultProps={styling:`normal`};function yt(e){let n=ht.getEmbedResolutions(),[i,o]=z.useState(!!e.showEmbedCopiedText),[s,l]=z.useState(!1),[u,d]=z.useState(n.find(e=>e.width===`100%`)),[f,p]=z.useState(!1);z.useEffect(()=>{e.showEmbedCopiedText&&setTimeout(()=>o(!1),2e3)},[e.showEmbedCopiedText]);function m(){if(o(!0),setTimeout(()=>o(!1),2e3),!f){if(p(!0),typeof e.onCopy==`function`){e.onCopy({size:u,autoplay:s});return}t.logUserAction({...e.entity,embedDetails:{size:u,autoplay:s}},t.mergeOptions(G.getAnalyticsOptions(e.entityType),[{actionType:r.Share,descriptor:c.CopyEmbedHtml,eventVersion:a.V3},e.analyticsOptions]))}}function g(e){p(!1),l(e)}function _(e){p(!1),d(e)}let v=ht.buildEmbedUrl({embedUrl:e.embedUrl,host:e.liteUrl,shareId:e.shareId,autoplay:s}),y=ht.getEmbedString({url:v,size:u});return(0,U.jsxs)(ie.Provider,{value:_t,children:[(0,U.jsx)(pt,{value:y,onCopy:m,copiedText:e.styling===`normal-v2`?vt(`copiedV2`):vt(`copied`),copyText:vt(`copy`),showCopiedText:i,styling:e.styling,extraButtonClassNames:h(`position-absolute bottom-0 end-0`,gt.copyBtnContainer),hasInputBg:e.hasInputBg,label:e.hideLabel?void 0:vt(`label`),textarea:!0}),(0,U.jsx)(et,{autoplay:s,setAutoplay:g,videoSize:u,setVideoSize:_,videoSizes:n})]})}var bt=`shared.share`;function xt(e){return(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`div`,{className:`mb-3`,children:(0,U.jsx)(yt,{embedUrl:e.shareLink.embedUrl,entity:e.entity,entityType:e.entityType,liteUrl:e.liteUrl,entityId:e.entityId,shareId:e.shareLink.id,analyticsOptions:e.analyticsOptions})}),(0,U.jsx)(N,{children:(0,U.jsx)(b,{onClick:e.onClickCancel,className:`btn btn-outline-dark`,children:(0,U.jsx)(T,{namespace:bt,phrase:`back`})})})]})}var St=de();function Ct(e){return(0,U.jsx)(`svg`,{...e,children:(0,U.jsx)(`path`,{fill:`currentColor`,fillRule:`evenodd`,d:`M9.758 8.424a.6.6 0 1 0-.849-.848l-4 4a.6.6 0 0 0 0 .848l4 4a.6.6 0 0 0 .849-.848L6.182 12zm5.333-.848a.6.6 0 1 0-.849.848L17.818 12l-3.576 3.576a.6.6 0 0 0 .849.848l4-4a.6.6 0 0 0 0-.848z`,clipRule:`evenodd`})})}var wt=`share.getEmbedCode`;function Tt(e){return(0,U.jsx)(b,{onClick:e.onClickGetEmbedCode,className:`d-inline-block p-1 pe-2 rounded-1 hover-bg-light-blue`,children:(0,U.jsxs)(`div`,{className:`d-flex align-items-center`,children:[(0,U.jsx)(`div`,{className:h(`me-2`,!e.minimal&&`bg-dark text-white rounded-1`),children:(0,U.jsx)(_,{svg:Ct,size:e.minimal?m.Standard:m.Large})}),(0,U.jsx)(T,{namespace:wt,phrase:`getEmbedCode`})]})})}var Et=function(e){return e.Expired=`Expired`,e.Active=`Active`,e}({}),q=M.encloseNamespace(`share.shareLinkInfo`),J={getPrivateIconAndText:e=>{let{entityTypeId:t,privacy:n,hasStudentExp:r,entity:i,yearGroups:a}=e;if(t===D.Topic||t===D.Series)return{icon:R,text:q(r?`justMySchoolTeachers`:`justMySchoolDescription`)};if(!Array.isArray(n))switch(n.privacy){case`public`:return{icon:R,text:q(`publicDescription`)};case`protected`:return n.overrideRestrictions?{icon:R,text:q(`clickViewOnly`)}:{icon:F,text:J.getRespectRatingText(i,a,r)};case`just_my_customer`:return n.overrideRestrictions?{icon:F,text:q(r?`justMySchoolTeachers`:`justMySchoolDescription`)}:{icon:F,text:J.getRespectRatingText(i,a,r)};case`restricted`:case`private`:return{icon:F,text:q(`privateDescription`)};default:return{}}},getIconAndText:e=>{let{linkExpireDate:t,isPasswordProtected:n,status:r}=e;if(!t&&!n)return J.getPrivateIconAndText(e);if(!t)return{icon:F,text:q(`password`)};let i=le.isToday(t),a=le.diffBetween(t,new Date,`day`);if(!n){let e=i?q(`expiryToday`):q(`expiry`,{days:a});return r===Et.Expired&&(e=q(`expired`)),{icon:ke,text:e}}let o=i?q(`passwordExpiryToday`):q(`passwordExpiry`,{days:a});return r===Et.Expired&&(o=q(`passwordExpired`)),{icon:F,text:o}},getRespectRatingText(e,t,n){if(!e||!t)return null;if(n)return q(`justMySchoolTeachers`);if(!I.isVideoType(e))return q(`collectionRating`);let r=Oe.getWeightedRestriction(e._restrictions?.value);if(r&&!r.yearGroup)return q(`onlyAdmins`);let i=I.getRating(e),a,o;for(let e of t)(!a||e.value>a.value)&&(a=e),!(r&&e.value<=r.yearGroup)&&(i&&e.rating.value<i.value||(!o||e.value<o.value)&&(o=e));return o?t.length===1?q(`clickViewOnly`):o.value===a.value?q(`maxYearGroup`,{yearGroup:a.name}):q(`yearGroupRange`,{yearGroup:o.name}):q(`onlyStaff`)}},Y=M.encloseNamespace(`share.shareLinkInfo`);function Dt(e){let{active:t,title:n,description:r,onClick:i}=e;return(0,U.jsxs)(`button`,{className:`${t?`bg-light-blue`:``} dropdown-item d-flex align-items-center justify-content-between`,onClick:t?null:i,type:`button`,children:[(0,U.jsxs)(`div`,{className:`me-4`,children:[(0,U.jsx)(`p`,{className:`fw-semibold mb-1`,children:n}),(0,U.jsx)(`p`,{className:`font-size-sm mb-0`,children:r})]}),t&&(0,U.jsx)(_,{svg:Te})]})}function Ot(e){let[t,n]=z.useState(!1),[r,i]=z.useState(null),{icon:a,text:o}=J.getIconAndText(e);z.useEffect(()=>{n(e.privacy.canManageAccess),i(e.privacy.privacy)},[e.privacy]);let s=t?`just_my_customer`:`protected`;return(0,U.jsx)(`div`,{className:`d-flex align-items-center`,children:!e.isPasswordProtected&&!e.linkExpireDate&&e.shareOverrideRestrictions&&!e.hasStudentExp?(0,U.jsxs)(`div`,{className:`btn-group`,children:[(0,U.jsxs)(`button`,{className:`btn border-0 info-link dropdown-toggle p-1 bg-light-blue-hover`,"data-bs-toggle":`dropdown`,"aria-label":Y(`ariaPrivacy`),children:[(0,U.jsx)(_,{svg:a,className:`svg-container me-1`}),(0,U.jsx)(`span`,{className:`me-1`,children:o})]}),(0,U.jsxs)(`ul`,{className:`dropdown-menu cursor-pointer`,children:[t&&(0,U.jsx)(`li`,{children:(0,U.jsx)(Dt,{active:r===`public`,title:Y(`public`),description:Y(`publicDescription`),onClick:()=>e.onClickSavePrivacy(`public`,!1)})}),(0,U.jsx)(`li`,{children:(0,U.jsx)(Dt,{active:r===s&&e.privacy.overrideRestrictions,title:Y(`justMySchool`),description:Y(t?`justMySchoolDescription`:`clickViewOnly`),onClick:()=>e.onClickSavePrivacy(s,!0)})}),(0,U.jsx)(`li`,{children:(0,U.jsx)(Dt,{active:r===s&&!e.privacy.overrideRestrictions,title:Y(`respectRatings`),description:J.getRespectRatingText(e.entity,e.yearGroups,e.hasStudentExp),onClick:()=>e.onClickSavePrivacy(s,!1)})}),(0,U.jsx)(`li`,{children:(0,U.jsx)(Dt,{active:r===`private`,title:Y(`private`),description:Y(`privateDescription`),onClick:()=>e.onClickSavePrivacy(`private`,!1)})})]})]}):(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(_,{svg:a,className:`svg-container me-1`}),(0,U.jsx)(`span`,{children:o})]})})}function kt(){return(0,U.jsxs)(`svg`,{width:`24`,height:`24`,viewBox:`0 0 24 24`,fill:`none`,children:[(0,U.jsx)(`circle`,{cx:`12`,cy:`12`,r:`12`,fill:`url(#pattern0)`}),(0,U.jsxs)(`defs`,{children:[(0,U.jsx)(`pattern`,{id:`pattern0`,patternContentUnits:`objectBoundingBox`,width:`1`,height:`1`,children:(0,U.jsx)(`use`,{xlinkHref:`#image0_3558_14996`,transform:`scale(0.00520833)`})}),(0,U.jsx)(`image`,{id:`image0_3558_14996`,width:`192`,height:`192`,xlinkHref:`data:image/png;base64,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`})]})]})}function At(){return(0,U.jsxs)(`svg`,{viewBox:`0 0 40 40`,fill:`none`,children:[(0,U.jsx)(`path`,{d:`M29.692 15.31c.58 0 1.146-.173 1.628-.5a2.96 2.96 0 001.078-1.331 3.004 3.004 0 00-.634-3.235 2.918 2.918 0 00-1.5-.812 2.894 2.894 0 00-1.693.169 2.938 2.938 0 00-1.314 1.093 2.997 2.997 0 00.364 3.748 2.91 2.91 0 002.071.869zM20.043 26.267V13.849a.9.9 0 00-.259-.633.877.877 0 00-.624-.262H6.883a.877.877 0 00-.624.262.9.9 0 00-.259.633v12.418c0 .24.092.469.257.64.165.172.39.27.626.276H19.16a.899.899 0 00.626-.276.923.923 0 00.257-.64zm-3.51-10.389v1.92h-2.37v6.68H11.88V17.93H9.51v-2.182h7.022v.13z`,fill:`#fff`}),(0,U.jsx)(`path`,{d:`M21.874 14.132v.917a4.03 4.03 0 002.05-1.47c.512-.699.79-1.545.793-2.415 0-1.1-.431-2.154-1.199-2.932a4.065 4.065 0 00-2.893-1.214 4.065 4.065 0 00-2.894 1.214 4.175 4.175 0 00-1.199 2.932h2.391a2.996 2.996 0 012.061.887c.55.552.868 1.297.89 2.081zM26.332 17.1h-4.458v8.883c0 .8-.309 1.566-.86 2.138-.552.57-1.302.9-2.091.917h-4.588a7.047 7.047 0 003.265 3.317c1.427.7 3.046.887 4.593.532a6.99 6.99 0 003.918-2.486 7.152 7.152 0 001.535-4.418v-7.551a1.348 1.348 0 00-.385-.942 1.313 1.313 0 00-.929-.39zM32.772 17.1h-3.597c.206.414.316.87.323 1.332v7.551a9.1 9.1 0 01-.516 2.859c.236.021.474.021.71 0a4.28 4.28 0 003.046-1.278A4.394 4.394 0 0034 24.477v-6.045c0-.339-.126-.665-.354-.912a1.307 1.307 0 00-.874-.42z`,fill:`#fff`})]})}var X={hoverable:`_hoverable_4a88w_1`,msTeamsContainer:`_msTeamsContainer_4a88w_7`,avatar:`_avatar_4a88w_10`,small:`_small_4a88w_17`},jt=`share.shareIntegrations`;function Mt(e){let t=h(X.avatar,e?.size===`sm`&&X.small,e?.size!==`sm`&&`border`,`rounded-circle overflow-hidden`);return(0,U.jsx)(g,{title:M.getPhrase(jt,`shareThroughIntegrations`),spanHack:!0,disable:e.noTooltip,children:(0,U.jsxs)(`ul`,{className:`list-unstyled d-flex mb-0`,children:[(0,U.jsx)(`li`,{className:t,style:{zIndex:1},children:(0,U.jsx)(kt,{})}),(0,U.jsx)(`li`,{className:`${t} ${X.msTeamsContainer}`,style:{zIndex:0},children:(0,U.jsx)(At,{})})]})})}var Nt=`share.shareAsLink`;function Pt(e){let[n,i]=z.useState(!1);function o(){n||(i(!0),t.logUserAction({id:e.entity.id,name:e.entity.name},t.mergeOptions(G.getAnalyticsOptions(e.entityType),{actionType:r.Share,descriptor:c.CopyLink,eventVersion:a.V3})))}return(0,U.jsx)(U.Fragment,{children:(0,U.jsxs)(`div`,{className:`d-flex justify-content-between align-items-center`,children:[(0,U.jsx)(`div`,{className:`${e.shareLink?`w-100`:`w-75 d-flex align-items-center`}`,children:e.shareLink?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`div`,{className:`d-flex justify-content-between align-items-center mb-1`,children:(0,U.jsx)(Ot,{linkExpireDate:e.shareLink.linkExpireDate,isPasswordProtected:e.shareLink.isPasswordProtected,privacy:e.privacy,entityTypeId:e.shareLink.objectTypeId,status:e.shareLink.status,onClickSavePrivacy:e.onClickSavePrivacy,hasStudentExp:e.hasStudentExp,entity:e.entity,yearGroups:e.yearGroups,shareOverrideRestrictions:e.shareOverrideRestrictions})}),(0,U.jsx)(pt,{value:e.shareLink.url,onCopy:o})]}):(0,U.jsxs)(`div`,{className:`d-flex align-items-center`,children:[(0,U.jsx)(`div`,{className:`me-2`,children:e.enableIntegrations?(0,U.jsx)(Mt,{}):(0,U.jsx)(_,{svg:ze,className:`svg-container`})}),(0,U.jsx)(`span`,{className:`fw-semibold`,children:(0,U.jsx)(T,{namespace:Nt,phrase:`createLink`})})]})}),!e.shareLink&&(0,U.jsx)(b,{className:`info-link`,onClick:e.onClickCreateLink,children:(0,U.jsx)(T,{phrase:`createLink`})})]})})}var Ft={};function It(e,t){let[n,r]=z.useState(!1);return z.useEffect(()=>{if(!e||!t||Ft[e])return;let n=document.createElement(`script`);return n.src=e,n.async=!0,n.onload=()=>{Ft[e]=!0,window.setTimeout(()=>r(!0),0)},document.body.appendChild(n),()=>{n.onload=null,document.body.removeChild(n)}},[e,t]),Ft[e]||n}var Lt=`g-share-to-classroom`;function Rt(e){e&&(window.___gcfg={parsetags:`explicit`});let t=It(`https://apis.google.com/js/platform.js`,e);return z.useEffect(()=>{!e||!t||window.gapi?.sharetoclassroom?.go(Lt)},[e,t]),Lt}function zt(e){let t=It(`https://teams.microsoft.com/share/launcher.js`,e);z.useEffect(()=>{!e||!t||window.shareToMicrosoftTeams?.renderButtons()},[e,t])}var Bt=`shared.lookingForIntegration`,Vt=M.encloseNamespace(Bt);function Ht(e){let[t,n]=oe(ce.LOOKING_FOR_INTEGRATION,{show:!0},{storage:se.LocalStorage});return t.show?(0,U.jsxs)(`div`,{className:h(`d-flex justify-content-between`,!e.hideBackground&&`rounded p-2 bg-light-blue`),children:[(0,U.jsx)(y,{appLink:e.appLink,onClick:()=>e.closePopup?.(),className:`d-inline-flex align-items-center mb-0`,children:(0,U.jsx)(`span`,{className:h(`ms-1 text-info`,!e.normalText&&`fw-semibold`),children:(0,U.jsx)(T,{namespace:Bt,phrase:`lookingForIntegration`})})}),!e.hideDismiss&&(0,U.jsx)(`button`,{onClick:()=>n({show:!1}),"aria-label":`${Vt(`ariaClose`)}`,children:(0,U.jsx)(_,{svg:pe,size:m.Small,className:`text-info d-inline-block svg-container`})})]}):(0,U.jsx)(U.Fragment,{})}var Z=function(e){return e.GoogleClassroom=`google-classroom`,e.MicrosoftTeams=`microsoft-teams`,e.Vivi=`vivi`,e.AppleTv=`apply-tv`,e}({}),Ut=`32`;function Wt(e){let t=Rt(e.integrations?.includes(Z.GoogleClassroom));if(zt(e.integrations?.includes(Z.MicrosoftTeams)),!e.integrations.length&&!e.hideLookingForIntegrations)return(0,U.jsx)(Ht,{appLink:e.appLink,closePopup:e.closePopup});function n(){switch(e.iconSize){case`sm`:return`24`;default:return Ut}}let r=n(),i={height:`${r}px`,width:`${r}px`};return(0,U.jsxs)(`div`,{className:`d-flex gap-1 align-items-start`,children:[e.integrations.includes(Z.GoogleClassroom)&&(0,U.jsx)(`div`,{id:t,className:`rounded partial-loading-background`,style:i,children:(0,U.jsx)(`div`,{className:`g-sharetoclassroom`,"data-size":r,"data-url":e.url})}),e.integrations.includes(Z.MicrosoftTeams)&&(0,U.jsx)(`div`,{className:`rounded overflow-hidden ${X.hoverable}`,children:(0,U.jsx)(`div`,{className:`teams-share-button ${X.msTeamsContainer}`,style:i,"data-href":e.url,"data-button-type":`smallTransWhite`,"data-preview":`false`,"data-icon-px-size":r})})]})}var Q=e(Pe());function Gt(e){return(0,U.jsx)(Ke,{type:Ge.Restriction,data:{restrictions:e.restrictions,yearGroups:e.yearGroups},inline:!0})}function Kt(e){let t=Oe.hasRestrictions(e.video?._restrictions),{canConsume:n}=I.getCanBeConsumed(e.video);return!t||!e.yearGroups||!n?(0,U.jsx)(U.Fragment,{}):(0,U.jsx)(We,{className:e.className||`pt-1`,children:(0,U.jsx)(Gt,{restrictions:e.video._restrictions,yearGroups:e.yearGroups})})}var qt=M.encloseNamespace(`share.shareMessage`),Jt=Q.object().shape({message:Q.string().max(280,()=>qt(`maxMessageLen`))});function Yt(e){let t=Re();return(0,U.jsxs)(be,{children:[(0,U.jsx)(Be,{component:`textarea`,name:`message`,id:`message`,placeholder:qt(`placeholder`),value:t.values.message,label:qt(`label`),showOptionalLabel:!0}),!e.shareOverrideRestrictions&&I.isVideoType(e.entity)&&(0,U.jsx)(`div`,{className:`mb-3`,children:(0,U.jsx)(Kt,{video:e.entity,yearGroups:e.yearGroups})}),(0,U.jsx)(N,{children:(0,U.jsx)(N.Submit,{variant:`dark`,text:qt(`share`)})})]})}function Xt(e){function t(t,n){let r=null;t.message&&(r=t.message),e.onClickShare(r,n)}return(0,U.jsx)(Ve,{initialValues:{message:``},validationSchema:Jt,onSubmit:t,allowInitialSubmit:!0,children:(0,U.jsx)(Yt,{entity:e.entity,yearGroups:e.yearGroups,shareOverrideRestrictions:e.shareOverrideRestrictions})})}var Zt=`shared.share`,Qt=M.encloseNamespace(Zt);function $t(e,t,n,r){if(!e)return[];let i=[...t,...n].map(e=>e.id);return e.filter(e=>!(i.includes(e.id)||e.id===r))}function en(e){let[t,n]=z.useState([]),[r,i]=z.useState(!1),{hasPermissions:a}=we(),{hasClassrooms:o}=_e(null),s=a(k.ManageIntegrations);function c(r,i){e.onClickShare(t,r,()=>{n([]),i()})}function l(r){e.fetchRecipientUsers&&e.fetchRecipientUsers(r,e=>{let i=[];t.forEach(t=>{if(t.id!==r)return i.push(t);let n=u.deepClone(t);e?.data?.length?n.users=e:n.users={count:0,data:[],pagination:null},i.push(n)}),n(E.uniq(i,`id`))})}function d(t){let n=[];return a(k.ShareToUsers)&&n.push({index:`user`,filters:{userType:[ue.Staff,ue.Learner],userProfile:{status:[`${me.Active.toLowerCase()}`],customerId:e.currentUser.customerId}}}),a(k.ShareToClassrooms)&&n.push({index:`classroom`}),a(k.ShareToClassroomGroups)&&n.push({index:`classroom_group`}),{query:t,indices:n,searchType:`user`,limit:10}}let f=o&&(a(k.ShareToUsers)||a(k.ShareToClassrooms)||a(k.ShareToClassroomGroups)),p=$t(e.recentlySharedTo,t,e.directShareRecipients,e.currentUser.id);function m(){i(!0),e.onClickCreateLink()}return z.useEffect(()=>{i(!!e.shareLinkIsLoading)},[e.shareLinkIsLoading]),(0,U.jsxs)(U.Fragment,{children:[f&&(0,U.jsxs)(`div`,{className:`bg-white rounded-bottom-3 pt-3 px-3 mb-2`,children:[(0,U.jsx)(`div`,{className:`d-flex justify-content-between align-items-center pb-3`,children:(0,U.jsx)(Fe,{getRemoteUrl:()=>O.safeUrlConcat(e.gatewayApiUrl,`v4/search`),getRemotePostBody:d,requestHeaders:e.searchRequestHeaders,formatRemoteSuggestions:n=>$t(n?.results,t,e.directShareRecipients,e.currentUser.id),recentSearches:p,selections:t,onSuggestionSelected:e=>n([...t,e]),removeSelection:e=>n(t.filter(t=>t.id!==e.id)),placeholder:Qt(o?`searchPlaceholder`:`searchPlaceholderNoClassrooms`),imageCdnUrl:e.imageCdnUrl,activationLength:2,fetchSelectionMembers:e.fetchRecipientUsers&&l,debounceTime:300,emptyStateImageUrl:e.emptyStateImageUrl,errorStateImageUrl:e.errorStateImageUrl,hasStudentExperience:a(k.StudentExperience)},p?.map(e=>e.id).join(`:`)??`share:search`)}),!t.length&&e.directShareRecipients.length?(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`h3`,{className:`font-size-normal`,children:(0,U.jsx)(T,{phrase:`sharedTo`})}),(0,U.jsx)(St.Scrollbars,{autoHeight:!0,children:(0,U.jsx)(`ul`,{className:`list-unstyled`,children:e.directShareRecipients.map(t=>(0,U.jsx)(`li`,{className:`mb-2 pe-1`,children:(0,U.jsx)(He,{entity:t,imageCdnUrl:e.imageCdnUrl,removeRecipient:e.onClickRemoveRecipient,showDisplayName:a(k.StudentExperience)})},t.id))})})]}):(0,U.jsx)(U.Fragment,{}),!!t.length&&(0,U.jsx)(`div`,{className:`pb-3`,children:(0,U.jsx)(Xt,{onClickShare:c,entity:e.entity,yearGroups:e.yearGroups,shareOverrideRestrictions:e.shareOverrideRestrictions})})]}),!t.length&&!r&&(0,U.jsx)(`div`,{className:`bg-white p-3 ${f?`rounded-3`:`rounded-bottom-3`}`,children:(0,U.jsxs)(`div`,{children:[e.shareLink&&(0,U.jsx)(`div`,{className:`fw-semibold mb-2`,children:(0,U.jsx)(T,{namespace:Zt,phrase:`shareLink`})}),(0,U.jsx)(Pt,{entity:e.entity,entityType:e.entityType,shareLink:e.shareLink,onClickShowSettings:e.onClickShowSettings,onClickCreateLink:m,shareLinkIsLoading:e.shareLinkIsLoading,canAddPolicies:e.canAddPolicies,privacy:e.privacy,entityTypeId:e.entity.typeId,onClickSavePrivacy:e.onClickSavePrivacy,enableIntegrations:e.enableIntegrationBanner,hasStudentExp:a(k.StudentExperience),yearGroups:e.yearGroups,shareOverrideRestrictions:e.shareOverrideRestrictions}),e.shareLink&&e.enableIntegrationBanner&&(0,U.jsx)(`div`,{className:`${e.integrations?.length&&e.canEmbed?`float-end`:``} mt-1 pt-1`,children:(0,U.jsx)(Wt,{integrations:e.integrations,url:e.shareLink.url,closePopup:e.closePopup,appLink:s?e.integrationSettingAppLink:e.messagePopupAppLink})}),e.shareLink&&e.canEmbed&&(0,U.jsx)(`div`,{className:`mt-1`,children:(0,U.jsx)(Tt,{onClickGetEmbedCode:e.onClickGetEmbedCode})}),e.shareLink&&e.canAddPolicies&&(0,U.jsx)(`button`,{className:`btn btn-link text-info mt-2 p-0`,onClick:e.onClickShowSettings,children:(0,U.jsx)(T,{namespace:Zt,phrase:`advancedSettings`})})]})}),r&&(0,U.jsx)(`div`,{className:`bg-white rounded-3 p-3 text-center`,children:(0,U.jsx)(ve,{as:`div`,animation:`border`,role:`status`})})]})}var tn=30;function nn(e){if(!e)return null;let t=new Date;return t.setDate(t.getDate()+tn),t.toISOString()}var rn=`shared.linkExpiry`,an=M.encloseNamespace(rn);function on(e){let t=xe();function n(){e.passwordProtectLink||t.setFieldValue(`linkExpireDate`,nn(!t.values.linkExpireDate))}return(0,U.jsxs)(`div`,{className:`d-flex justify-content-between align-items-center pb-3`,children:[(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`label`,{className:`m-0`,htmlFor:``,children:(0,U.jsx)(T,{namespace:rn,phrase:`linkExpirationHeading`})}),(0,U.jsx)(`p`,{className:`m-0`,children:(0,U.jsx)(T,{namespace:rn,phrase:`linkExpirationInfo`})})]}),(0,U.jsx)(g,{title:an(`passwordProtected`),disable:!e.passwordProtectLink,spanHack:!0,trigger:`hover`,children:(0,U.jsx)(Ce,{onClick:n,on:!!t.values.linkExpireDate,disabled:e.passwordProtectLink,showStateWhenDisabled:!0})})]})}var sn={passwordButton:`_passwordButton_oj2vx_1`},cn=M.encloseNamespace(`share.setPasswordInput`);function ln(e){let[t,n]=z.useState(!1),r=xe().errors?.password;return(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`input`,{className:`form-control ${r?`is-invalid`:``}`,value:e.value,onChange:t=>{e.canEdit&&e.onChange(t.target.value)},type:t?`text`:`password`,placeholder:e.placeholder||cn(`passwordPlaceholder`),readOnly:!e.canEdit}),!!r&&(0,U.jsx)(Se.Control.Feedback,{type:`invalid`,children:r}),!!e.canEdit&&(0,U.jsx)(b,{className:sn.passwordButton,onClick:()=>n(!t),children:(0,U.jsx)(_,{svg:t?R:Le,title:cn(t?`hidePassword`:`revealPassword`),tooltipPlacement:`top`})}),!e.canEdit&&!!e.canReset&&!!e.onReset&&(0,U.jsx)(b,{className:sn.passwordButton,onClick:e.onReset,children:(0,U.jsx)(_,{svg:pe,title:cn(`resetPassword`),tooltipPlacement:`top`})})]})}var un=`shared.linkPassword`,dn=`********`;function fn(e){let{passwordProtectLink:t,setPasswordProtectLink:n}=e,r=xe(),[i,a]=z.useState(!!e.shareLink?.isPasswordProtected);function o(){e.shareLink?.isPasswordProtected&&r.setFieldValue(`removePassword`,t),r.setFieldValue(`password`,``),n(!t),r.setFieldValue(`linkExpireDate`,nn(!t))}function s(e){r.setFieldValue(`password`,e)}function c(){r.setFieldValue(`password`,``),r.setFieldValue(`removePassword`,!0),a(!1)}return(0,U.jsxs)(`div`,{className:`pb-3`,children:[(0,U.jsxs)(`div`,{className:`d-flex justify-content-between align-items-center`,children:[(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`label`,{className:`m-0`,htmlFor:``,children:(0,U.jsx)(T,{namespace:un,phrase:`passwordProtectHeading`})}),(0,U.jsx)(`p`,{className:`m-0`,children:(0,U.jsx)(T,{namespace:un,phrase:`passwordProtectInfo`})})]}),(0,U.jsx)(Ce,{onClick:o,on:t})]}),t&&(0,U.jsx)(`div`,{className:`position-relative mt-2`,children:(0,U.jsx)(ln,{value:i?dn:r.values.password,onChange:s,onReset:c,canEdit:!i,canReset:!0})})]})}var pn=(0,Q.object)().shape({removePassword:(0,Q.boolean)(),resourceId:(0,Q.string)(),linkExpireDate:(0,Q.string)().nullable(),password:(0,Q.string)().test({name:`password-length`,exclusive:!1,params:{},message:M.getPhrase(`share.validation`,`minPassword`),test:e=>e?.length?!(e.length<3):!0}).default(``)}),mn=`shared.share`,hn=M.encloseNamespace(mn);function gn(e){let{hasPermissions:t}=we(),[n,r]=z.useState(!!e.shareLink.isPasswordProtected);return(0,U.jsxs)(be,{children:[e.onClickDeleteLink&&(0,U.jsxs)(`div`,{className:`d-flex justify-content-between align-items-center pb-3`,children:[(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`label`,{className:`mb-0`,children:(0,U.jsx)(T,{namespace:mn,phrase:`deleteLinkLabel`})}),(0,U.jsx)(`p`,{className:`mb-0`,children:(0,U.jsx)(T,{namespace:mn,phrase:`deleteLinkDescription`})})]}),(0,U.jsx)(b,{onClick:e.onClickDeleteLink,className:`info-link justify-self-start`,children:(0,U.jsx)(T,{namespace:mn,phrase:`deleteLink`})})]}),t(k.ManageShareLinkSettings)&&(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(on,{passwordProtectLink:n}),e.shareOverrideRestrictions&&(0,U.jsx)(fn,{shareLink:e.shareLink,passwordProtectLink:n,setPasswordProtectLink:r})]}),(0,U.jsxs)(N,{children:[(0,U.jsx)(N.Cancel,{onClick:e.onClickCancel,text:hn(`back`),variant:`link`}),(0,U.jsx)(N.Submit,{variant:`dark`})]})]})}function _n(e){return(0,U.jsx)(U.Fragment,{children:(0,U.jsx)(Ve,{initialValues:{password:``,removePassword:!1,linkExpireDate:e.shareLink.linkExpireDate,overrideRestrictions:e.shareLink.overrideRestrictions},onSubmit:e.onClickSaveLink,castInitialValues:!1,validationSchema:pn,children:(0,U.jsx)(gn,{entity:e.entity,entityType:e.entityType,config:e.config,shareLink:e.shareLink,entityId:e.entityId,onClickCancel:e.onClickCancel,analyticsOptions:e.analyticsOptions,privacy:e.privacy,onClickDeleteLink:e.onClickDeleteLink,hasStudentExp:e.hasStudentExp,shareOverrideRestrictions:e.shareOverrideRestrictions})})})}var vn=M.encloseNamespace(`shared.shared-utils`),yn={getShareIntegrations(e,t){return[{id:Z.GoogleClassroom,name:vn(`googleClassroom`),enabled:e,settingName:ge.ShareToGoogleClassroom},{id:Z.MicrosoftTeams,name:vn(`msftTeams`),enabled:t,settingName:ge.ShareToMicrosoftTeams}]}},bn=`shared.share`,$=M.encloseNamespace(bn);function xn(e){switch(e){case`video`:return $(`titleVideo`);case`clip`:return $(`titleClip`);case`interactive`:return $(`titleInteractive`);case`series`:return $(`titleSeries`);case`playlist`:return $(`titlePlaylist`);case`subject`:return $(`titleTopic`)}}function Sn(e,t){return yn.getShareIntegrations(e,t).filter(e=>e.enabled).map(e=>e.id)}var Cn=e=>e===`video`||e===`interactive`||e===`clip`,wn=e=>e===`video`||e===`interactive`||e===`clip`;function Tn(e){let t=re(),n=qe(),r=!e.gatewayApiUrl,[i,a]=z.useState(`main`),{hasPermissions:o,hasLocalPermissions:s}=we(),c=w(x.currentUser()),l=G.getFetchFunctionByType(e.entityType)(e.entityId,c.data?.id),u=w(De.config()),d=w(r&&x.token()),f=w(V.getShareLinkByObjectId(e.entityId)),p=w(V.getSentDirectShareByObjectId(e.entityId)),m=w(c.data?.customerId&&G.getDirectShareRecipientsRequest(c.data.customerId,p.data)),h=c.data&&Qe.getRecentlySharedTo(c.data.id),g=w(!!h?.length&&V.getRecipientsById(h,c.data.customerId)),_=w(V.getPrivacy(e.entityId)),v=w(c.data?.isAuthenticated&&fe.yearGroups(c.data.customerId)),{shareToGoogleClassroom:y,shareToMicrosoftTeams:b,shareOverrideRestrictions:C,isLoadingSettings:T}=_e(null);function E(e,n){n.recipients?.length&&ne(t)(G.getDirectShareRecipientsRequest(e,n))}function ae(e,n){ne(t)(V.getRecipientUsers(e,n))}function oe(){f.data||G.createLink({dispatch:t,entity:l.data,entityType:e.entityType,alerts:n})}function se(r,i){G.updateLink(t,l.data,e.entityType,f.data,r,n,()=>a(`main`),i)}function ce(){G.deleteLink(t,l.data,e.entityType,f.data,n,()=>a(`main`))}function le(r,i,a){let o=r.map(e=>({id:e.id,typeId:e.typeId}));G.createOrUpdateDirectShare({dispatch:t,entity:l.data,entityType:e.entityType,currentUser:c.data,recipients:o,message:i,sentDirectShare:p.data,onSuccess:e=>{E(c.data.customerId,e),n.success({heading:ee.Success,message:$(`directShareSuccess`,{object:l.data.name,recipients:G.getShareRecipientsPhrase(r)}),type:te.Success})},onError:()=>n.error($(`directShareError`,{name:l.data.name})),onDone:a})}function D(r,i){G.removeDirectShareRecipient(t,r,e.entityType,p.data,e=>E(c.data.customerId,e),()=>{n.error($(`removeDirectShareError`)),i&&i()})}function ue(e,r){if(e===`private`){ce();return}S(t,V.updatePrivacy(f.data.id,e,r,()=>n.success($(`privaciesSuccess`,{name:l.data.name})),()=>n.error($(`privaciesError`,{name:l.data.name}))))}function de(){return r?{authorization:`Bearer ${d.data.value}`}:null}let O=!!c.data&&!!u.data&&(!r||!!d.data)&&!!p.hasCompleted&&!!_.data&&!!l.data&&!T&&!!v.hasCompleted;return(0,U.jsx)(ie.Provider,{value:bn,children:(0,U.jsx)(ye,{title:xn(e.entityType),closePopup:e.closePopup,showLoadingSpinner:!O,contentClassName:O&&i?`bg-transparent border-0`:``,bodyClassName:`p-0`,children:(()=>{if(!O)return(0,U.jsx)(U.Fragment,{});switch(i){case`main`:return(0,U.jsx)(en,{shareLink:f.data,shareLinkIsLoading:f.isFetching,entity:l.data,entityType:e.entityType,directShareRecipients:m.data||[],recentlySharedTo:g.data||[],onClickCreateLink:oe,onClickShowSettings:()=>a(`link-settings`),onClickShare:le,onClickRemoveRecipient:D,onClickGetEmbedCode:()=>a(`copy-embed`),analyticsOptions:G.getAnalyticsOptions(e.entityType),gatewayApiUrl:e.gatewayApiUrl||u.data.gatewayApiUrl,imageCdnUrl:u.data.imageCdnUrl,searchRequestHeaders:de(),currentUser:c.data,fetchRecipientUsers:ae,privacy:_.data,onClickSavePrivacy:ue,canAddPolicies:wn(e.entityType),emptyStateImageUrl:e.emptyStateImageUrl,errorStateImageUrl:e.errorStateImageUrl,integrations:Sn(y,b),integrationSettingAppLink:e.integrationSettingAppLink,messagePopupAppLink:e.messagePopupAppLink,closePopup:e.closePopup,enableIntegrationBanner:e.enableIntegrationBanner,canEmbed:Cn(e.entityType),yearGroups:v.data,shareOverrideRestrictions:C,hasLocalPermissions:s});case`link-settings`:return(0,U.jsx)(`div`,{className:`bg-white p-3 rounded-bottom-3`,children:(0,U.jsx)(_n,{entity:l.data,entityType:e.entityType,config:u.data,shareLink:f.data,entityId:e.entityId,analyticsOptions:G.getAnalyticsOptions(e.entityType),onClickSaveLink:se,onClickDeleteLink:ce,onClickCancel:()=>a(`main`),privacy:_.data,hasStudentExp:o(k.StudentExperience),shareOverrideRestrictions:C})});case`copy-embed`:return(0,U.jsx)(`div`,{className:`bg-white p-3 rounded-bottom-3`,children:(0,U.jsx)(xt,{entity:l.data,entityType:e.entityType,liteUrl:u.data.liteUrl,shareLink:f.data,entityId:e.entityId,analyticsOptions:G.getAnalyticsOptions(e.entityType),onClickCancel:()=>a(`main`)})})}})()})})}export{Tn as ShareView};
|
|
2
|
-
//# sourceMappingURL=
|
|
1
|
+
import{Kn as e,N as t,P as n,Q as r,U as i,V as a,Wn as o,Wt as s,Y as c,Yt as l,ct as u,et as d,st as f,z as p}from"./BSV_W0cK.chunk.js";import{i as m,n as h,o as g,r as _,t as v,v as y,y as b}from"./COrUmz0l.chunk.js";import{i as x,r as ee,t as te}from"./3AogjH3v.chunk.js";import{a as S,b as C,c as ne,d as w,h as re,n as T,t as ie}from"./DLiesDxa.chunk.js";import{t as E}from"./BDdd6NA7.chunk.js";import{i as ae,n as oe,s as se,t as ce}from"./CammdB53.chunk.js";import{t as le}from"./Dhb09xKG.chunk.js";import{n as D,r as ue,t as de}from"./BmJ66zOA.chunk.js";import{n as O}from"./CNQKHXPY.chunk.js";import{t as fe}from"./D_tyQz4J.chunk.js";import{i as pe,l as me,n as he,o as k,r as A,t as j}from"./CqVCiInU.chunk.js";import{t as M}from"./Bqlm3yF_.chunk.js";import{n as ge,t as _e}from"./UxXRVBhL.chunk.js";import{r as ve,t as ye}from"./Btl_wt9M.chunk.js";import{a as be,c as xe,l as Se,n as Ce,t as N}from"./DjcvhO-s.chunk.js";import{G as P,I as we,R as Te,_ as Ee,at as De,d as Oe,f as ke,g as Ae,h as je,j as Me,p as F,u as I,v as Ne,y as L}from"./app-CirLTvga.js";import{a as Pe,c as Fe,d as Ie,i as Le,n as Re,o as ze,r as Be,s as R,t as Ve,u as He}from"./CGfKmxkF.chunk.js";import{t as Ue}from"./CUMQJeCy.chunk.js";import{t as We}from"./Co8fEkVu.chunk.js";import{n as Ge,t as Ke}from"./DROEKPMt2.chunk.js";import{t as qe}from"./BfXnhpYV2.chunk.js";var z=e(f()),B={namespace:`share`},Je={video:`thumbnail,series,_canBeConsumed,_restrictions`,clip:`_parentVideo[_rating],_canBeConsumed,_thumbnail,_restrictions`,interactive:`_canBeConsumed,_parentVideo[_rating],_parentClip,_thumbnail,_restrictions`,series:`tallPoster,videos[thumbnail,count()]{limit:1}`,playlist:`cover,videos[thumbnail,count()]{limit:1},clips[_thumbnail,count()]{limit:1},interactives[_thumbnail,count()]{limit:1}`};function Ye(e,t){return{id:e,"query.user":`yearGroups,avatar,userprofiles{customer.id:${t}}`,"query.classroom":`enrolments[count()]{role:student,limit:0},customer{id:${t}}`,"query.classroom_group":`classroom,users[count()]{limit:0}`}}var V={getShareObject(e,t,n){return{url:`/api/share/find/${e}`,key:`share:${e}`,bootstrapName:`share:${e}`,success:t,error:n}},getShareRecipients(e){return{url:`/api/share/find/${e}/recipients`,key:`share:${e}:recipients`,normalize:!1}},sharedObjectsById(e){e.sort();let t=e.map(e=>`id=${e}`),n=Object.keys(Je).map(e=>`query.${e}=${Je[e]}`);return{url:`{gateway}/v1/objects?${[...t,...n,`permissionFilterOption=${j.StripMetadata}`].join(`&`)}`,key:`objects:${e.join(`,`)}`,normalize:!1}},sentShare(e={}){let t=Object.values(e).join(`:`);return{url:O.urlBuilder(`{gateway}/v1/users/me/share/sent-items`,e),key:`sent:shares:${t}`,normalize:!1}},getSentDirectShareByObjectId(e){return{url:`{gateway}/v1/users/me/share/direct/sent-items?objectId=${e}`,key:`direct:share:sent:object:${e}`,normalizeOptions:B}},createDirectShare(e,t,n,r){return{url:`{gateway}/v1/share`,key:`create:direct:share`,data:e,type:C.POST,normalizeOptions:B,invalidationKeys:[`direct:share:sent:object:${e.objectId}`,`sent:shares`],success:t,error:n,always:r}},updateDirectShareRecipients(e,t,n,r,i){let a=`direct:share:recipients:${e}`;return{url:`{gateway}/v1/share/${e}/recipients`,key:`edit:direct:share`,data:t,type:C.POST,normalizeOptions:B,invalidationKeys:`sent:shares`,updateState:{keys:a,updateData:e=>!e[a]||t.recipients.length?e:{...e,[a]:[]}},success:n,error:r,always:i}},removeDirectShareRecipient(e,t,n,r,i){let a=`direct:share:recipients:${e}`;return{url:O.urlBuilder(`{gateway}/v1/share/${e}/recipients`,{recipientId:t}),key:`remove:direct:share:recipient`,type:C.DELETE,normalizeOptions:B,invalidationKeys:`sent:shares`,updateState:{keys:a,updateData:e=>e[a]?{...e,[a]:[]}:e},success:n,error:r,always:i}},getDirectShareRecipientsById(e,t,n){return{url:O.urlBuilder(`{gateway}/v1/objects`,Ye(t.map(e=>e.id),n)),key:`direct:share:recipients:${e}`}},getRecipientsById(e,t){return e.sort(),{url:O.urlBuilder(`{gateway}/v1/objects`,Ye(e,t)),key:`share:recipients:${e.join(`,`)}`}},getRecipientUsers(e,t){return{url:`{gateway}/v1/objects/${e}/users?query={limit:100}`,key:`share:recipients:${e}:users`,success:t}},getObjectsSharedWithUser(e){let t={permissionFilterOption:j.StripMetadata};return e&&(t.cursor=e),{url:O.urlBuilder(`{gateway}/v1/users/me/share/received-items`,t),key:`shared:with:me:${e}`}},getShareLinkByObjectId(e){return{url:`{gateway}/v1/share/links?objectId=${e}`,key:`share:link:object:${e}`,normalizeOptions:B,formatData:e=>({...e,linkExpireDate:e.linkExpireDate||null})}},createShareLink(e,t,n,r){return{url:`{gateway}/v1/share/links`,key:`create:share:link`,type:C.POST,data:e,normalizeOptions:B,invalidationKeys:[`share:link:object:${e.resourceId}`,`privacy:${e.resourceId}`,`sent:shares`],success:t,error:n,always:r}},editShareLink(e,t,n,r,i){return{url:`{gateway}/v1/share/links/${e.id}`,key:`edit:share:link`,data:t,type:C.PUT,normalizeOptions:B,invalidationKeys:[`share:${e.id}`,`share:link:object:${e.objectId}`,`sent:shares`],success:n,error:r,always:i}},deleteShareLink(e,t,n,r){return{url:`{gateway}/v1/share/links/${e.id}`,key:`delete:share:link`,type:C.DELETE,normalizeOptions:B,invalidationKeys:[`share:${e.id}`,`share:link:object:${e.objectId}`,`sent:shares`],success:t,error:n,always:r}},checkPassword(e,t,n,r){return{url:`{gateway}/v1/share/links/${e}/password/verify`,publicUrl:`{gateway}/v1/share/links/${e}/password/verify/public`,key:`checkpassword:${e}`,type:C.POST,data:{password:t},success:n,error:r}},getPrivacy(e){return{url:`{gateway}/v1/objects/${e}/access`,key:`privacy:${e}`,normalize:!1}},updatePrivacy(e,t,n,r,i){return{url:`{gateway}/v1/share/links/${e}/privacy`,key:`update:privacy`,type:C.PUT,data:{privacy:t,overrideRestrictions:n},invalidationKeys:[`privacy`,`sent:shares`],normalize:!1,success:r,error:i}},createAnonSession(e,t,n){return{url:`{gateway}/v1/shares/${e}/anon-sessions`,key:`create:anon:session`,type:C.POST,data:{sessionId:t,sessionName:n},normalize:!1}},getAnonSessions(e){return{url:`{gateway}/v1/shares/${e}/anon-sessions`,key:`anon:session:${e}`,normalize:!1}}},Xe=5,H={getRecentItem(e,t,n=!0){let r=n?t.cacheGet(e):t.get(e);return Array.isArray(r)||(r=[]),r},setRecentItem(e,t,n,r){if(Array.isArray(t)){if(r){n.cacheSet(e,t);return}n.set(e,t)}},addRecentItem(e,t,n){let{id:r,limit:i=Xe,expire:a=!0}=n,o=H.getRecentItem(e,t,a),s=o.indexOf(r);return s>-1&&o.splice(s,1),o.unshift(r),o.length>i&&(o=o.slice(0,i)),H.setRecentItem(e,o,t,a),o},removeRecentItem(e,t,n){let r=H.getRecentItem(e,n).filter(e=>e!==t.toString());H.setRecentItem(e,r,n)}},Ze=e=>`recently:shared:to:${e}`,Qe={getRecentlySharedTo(e){return H.getRecentItem(Ze(e),ae)},addRecentlySharedTo(e,t){return H.addRecentItem(Ze(e),ae,t)}},U=n(),$e=`share.embedSize`;function et(e){let{autoplay:t,setAutoplay:n,videoSize:r,setVideoSize:i,videoSizes:a}=e;return(0,U.jsxs)(`div`,{className:`d-flex align-items-center`,children:[!!a.length&&(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`div`,{className:`me-1`,children:(0,U.jsx)(T,{namespace:$e,phrase:`videoSize`})}),(0,U.jsx)(`div`,{className:`pe-3`,children:(0,U.jsxs)(P,{children:[(0,U.jsx)(P.Toggle,{id:`embed-resolution`,variant:`outline-dark`,children:r.label}),(0,U.jsx)(P.Menu,{children:a.map(e=>(0,U.jsx)(P.Item,{onClick:()=>i(e),children:e.label},`${e.width}x${e.height}`))})]})})]}),(0,U.jsx)(`div`,{className:`me-2`,children:(0,U.jsx)(T,{namespace:$e,phrase:`autoplay`})}),(0,U.jsx)(Me,{id:`autoplay-checkbox`,checked:t,onChange:()=>n(!t)})]})}var tt=class{constructor(e){this.setData(e)}setData(e){let{collectionPrefix:t,id:n,sort:r,cursor:i}=e;n&&(this.id=n),r&&(this.sort=r),i&&(this.cursor=i),t&&(this.collectionPrefix=t)}toString(){return[this.collectionPrefix,this.id,this.sort,this.cursor].filter(Boolean).join(`:`)}toParams(){let e={};return this.sort&&(e.sort=this.getSortTypeParam().toLowerCase()),this.cursor&&(e.cursor=this.cursor),e}getSortTypeParam(){return l.throw(new s(`getSortTypeParam must be implemented when extending BaseCollectionIdentifier`)),``}},nt=class extends tt{constructor(e,t=``){super({collectionPrefix:`playlist:videos`,id:e,cursor:t})}},rt={deletePlaylist(e){return t=>{let n={...t};return n.hasOwnProperty(e)&&delete n[e],n}},incrementVideoCount(e,t){return n=>{let r={...n};return r.hasOwnProperty(e)?(r[e].videos||(r[e].videos={}),r[e].videos.count=r[e].videos.count?r[e].videos.count+t:t,r):n}}},it={reorder(e,t,n){if(t===n)return{reorderedItems:e,reorderRequest:null};let r=E.moveItem(e,t,n),i=n<e.length-1?r[n+1].id:null;return{reorderedItems:r,reorderRequest:{sourceMemberId:r[n].id,destinationMemberId:i}}},updateState(e,t,n){let r=[],i=u.deepClone(n),a=[e],o=n[e],s=!!o&&!!o.data&&o.data.length;for(;o&&Array.isArray(o.data);){r.push(...o.data);let t=o.pagination&&o.pagination.cursors&&o.pagination.cursors.next,i=!!t&&`${e}:${t}`;o=t&&n[i],o&&a.push(i)}if(!r.length)return n;let c=E.findIndex(r,e=>e.id===t.sourceMemberId),l=[...r],d=l.splice(c,1),f=t.destinationMemberId?E.findIndex(l,e=>e.id===t.destinationMemberId):l.length;return l.splice(f,0,d[0]),l=l.map(e=>({id:e.id})),a.forEach(e=>{let t=l.splice(0,s);i[e].data=t}),i}},at={getUserPlaylists(e){let{sort:t,type:n}=e,r={sort:t,PermissionFilterOption:`stripMetadata`,query:`{limit:100}${A.PLAYLIST_COLLECTION},_liteOwner,_curationTags`};return e.cursor&&(r.cursor=e.cursor),{url:O.urlBuilder(`/api/domain/v2/me/playlists/${n}`,r),key:e.toString()}},getPlaylist(e,t,n){return{url:O.urlBuilder(`{gateway}/v1/objects/${e}`,{query:`${A.PLAYLIST},_liteOwner,_curationTags`}),publicUrl:O.urlBuilder(`/api/objects/${e}`,{query:`${A.PLAYLIST},_curationTags`}),key:`playlist:${e}`,success:t,error:n}},getSharedPlaylist(e,t,n,r){return{url:O.urlBuilder(`/api/objects/${e}`,{query:`${A.PLAYLIST},_liteOwner,_curationTags`,shareId:t}),key:`shared:playlist:${e}:${t}`,success:n,error:r}},playlistWithThumbnailAndCount(e){return{url:O.urlBuilder(`{gateway}/v1/objects/${e}`,{query:`${A.PLAYLIST},_liteOwner,videos[count()]{limit:1},interactives[count()]{limit:1},clips[count()]{limit:1},_curationTags`}),key:`playlist:${e}:thumbnail:count`}},getPlaylistVideos(e,t){let{VIDEO_COLLECTION:n,CLIP_COLLECTION:r,INTERACTIVE:i}=A,a={query:`(videos[${n}]{status:[${L.Published},${L.Archived}]}|clips[${r}]{status:[${L.Published},${L.Archived}]}|interactives[${i}]){orderBy:orderindex,limit:100}`,permissionFilterOption:j.StripMetadata};return t&&(a.cursor=t),{url:O.urlBuilder(`{gateway}/v1/objects/${e}/members`,a),publicUrl:O.urlBuilder(`/api/objects/${e}/members`,a),key:`playlist:${e}:videos${t?`:${t}`:``}`}},getSharedPlaylistVideos(e,t,n){let{VIDEO_COLLECTION:r,CLIP_COLLECTION:i,INTERACTIVE:a}=A,o={query:`(videos[${r}]{status:[${L.Published},${L.Archived}]}|clips[${i}]{status:[${L.Published},${L.Archived}]}|interactives[${a}]){orderBy:orderindex,limit:100}`,permissionFilterOption:j.StripMetadata,shareId:t};return n&&(o.cursor=n),{url:O.urlBuilder(`/api/objects/${e}/members`,o),key:`shared:playlist:${e}:${t}:videos:${n}`}},getPlaylistVideosCount(e){let t=`{limit:0,status:[${L.Published},${L.Archived}]}`;return{url:O.urlBuilder(`{gateway}/v1/objects/${e}`,{query:`videos[count()]${t},clips[count()]${t},interactives[count()]${t}`}),publicUrl:O.urlBuilder(`/api/objects/${e}`,{query:`videos[count()]${t},clips[count()]${t},interactives[count()]${t}`}),key:`playlist:count:${e}`,normalize:!1}},getSharedPlaylistVideosCount(e,t){let n=`{limit:0,status:[${L.Published},${L.Archived}]}`;return{url:O.urlBuilder(`/api/objects/${e}`,{query:`videos[count()]${n},clips[count()]${n},interactives[count()]${n}`,shareId:t}),key:`shared:playlist:count:${e}:${t}`,normalize:!1}},getVideoPlaylists(e,t,n){return{url:`{gateway}/v1/objects/${e}/playlists?query={limit:100,owner.id:[${t}]}`,key:`video:playlists:${e}${n?`:cursor`:``}`}},createPlaylist(e,t,n,r,i){return{key:`create:playlist`,url:`{gateway}/v1/objects/${e}/playlists`,data:t,type:C.POST,success:n,error:r,always:i,invalidationKeys:`user:playlists`}},updatePlaylist(e,t,n,r,i){return{key:`update:playlist`,url:`{gateway}/v1/objects/${e}`,data:t,type:C.PUT,success:n,error:r,always:i}},deletePlaylist(e,t,n,r){return{key:`delete:playlist`,url:`{gateway}/v1/objects/${e}`,type:C.DELETE,success:t,error:n,always:r,invalidationKeys:`user:playlists`,updateState:{keys:`playlist:${e}`,updateData:rt.deletePlaylist(`playlist:${e}`)}}},copyPlaylist(e,t,n,r){return{url:`{gateway}/v1/playlists/copy`,key:`copy:playlist`,data:{playlistId:e},type:C.POST,invalidationKeys:`user:playlists`,success:t,error:n,always:r}},addToPlaylist(e,t,n,r){let i=[`user:playlists`,new nt(e).toString(),`playlist:${e}:videos`];t.forEach(e=>{i.push(`video:playlists:${e.id}`)});let a=t.reduce((e,t)=>(I.isClip(t)&&(Array.isArray(e.clips)?e.clips.push({id:t.id}):e.clips=[{id:t.id}]),I.isInteractive(t)&&(Array.isArray(e.interactives)?e.interactives.push({id:t.id}):e.interactives=[{id:t.id}]),I.isVideo(t)&&(Array.isArray(e.videos)?e.videos.push({id:t.id}):e.videos=[{id:t.id}]),e),{});return{key:`add:to:playlist:${e}:${t.map(e=>e.id).join(`:`)}`,url:`{gateway}/v1/objects/${e}`,data:a,type:C.PUT,success:n,error:r,invalidationKeys:i,updateState:{keys:`playlist:${e}`,updateData:rt.incrementVideoCount(`playlist:${e}`,t.length)},normalize:!1}},removePlaylistVideo(e,t,n,r,i){let a=`{gateway}/v1/objects/${e}`;return n===D.Clip?a+=`/clips`:n===D.Interactive?a+=`/interactives`:a+=`/videos`,{key:`remove:playlist:video`,url:O.urlBuilder(a,{memberId:t}),type:C.DELETE,success:r,error:i,invalidationKeys:[`user:playlists`,`playlist:${e}:videos`,`video:playlists:${t}`,`playlist:${e}`]}},getIsFollowingPlaylist(e,t){return{url:`{gateway}/v1/objects/${t}/followedPlaylists?query={id:${e}}`,key:`playlist:${e}:following:${t}`,formatData:t=>({objectId:e,isFollowing:!!t?.data?.length}),normalize:!1}},followPlaylist(e,t,n,r,i){return{url:`{gateway}/v1/objects/${t}`,key:`follow:playlist:${e}`,data:{followedPlaylists:e},type:C.PUT,invalidationKeys:[`user:playlists`,`playlist:${e}`,`shared:playlist`],success:n,error:r,always:i}},unfollowPlaylist(e,t,n,r,i){return{url:`{gateway}/v1/objects/${t}/followedPlaylists?memberId=${e}`,key:`unfollow:playlist:${e}`,type:C.DELETE,invalidationKeys:[`user:playlists`,`playlist:${e}`,`shared:playlist`],success:n,error:r,always:i}},reorderVideos(e,t,n,r){return{key:`reorder:playlist`,url:`{gateway}/v1/playlists/${e}/reorder`,data:t,type:C.PUT,success:n,error:r,invalidationKeys:`user:playlists`,updateState:{keys:`playlist:${e}:videos`,updateData:n=>it.updateState(`playlist:${e}:videos`,t,n)}}},getVideoCandidate(e){return{url:`{gateway}/v1/objects/${e}?query=_restrictions`,key:`add:to:playlist:candidate:${e}`}}},ot={sharedSeries:(e,t)=>O.urlBuilder(`/api/objects/${e}`,{query:A.SERIES,shareId:t}),seriesWithVideos:(e,t=3)=>`{gateway}/v1/objects/${e}?query=banner,videos[season,thumbnail,_canBeConsumed]{limit:${t}}`},st={series(e){let t={query:A.SERIES};return{url:O.urlBuilder(`{gateway}/v1/objects/${e}`,t),publicUrl:O.urlBuilder(`/api/objects/${e}`,t),key:`series:${e}`}},sharedSeries(e,t){return{url:ot.sharedSeries(e,t),key:`shared:series:${e}:${t}`}},seriesWithVideos(e,t=3){return{url:ot.seriesWithVideos(e,t),key:`series:${e}:with:videos:${t}`}},seriesWithThumbnailAndCount(e){return{url:`{gateway}/v1/objects/${e}?query=videos[season,thumbnail,_canBeConsumed,count()]{limit:1}`,key:`series:${e}:thumbnail:count`}},seriesVideos(e,t,n,r){let i=Ae.getVideoSortParam(n),a=[`series`,e,`videos`,r,n].filter(e=>!!e).join(`:`);return{url:O.urlBuilder(`{gateway}/v1/collections/${e}/videos`,{query:`{${i}}${A.VIDEO_COLLECTION}`,cursor:r}),publicUrl:O.urlBuilder(`/api/objects/collections/${e}/videos`,{query:`{${i}}${he.VIDEO_COLLECTION}`,cursor:r}),key:a}}},W=M.encloseNamespace(`shared.share`),G={getObjectTypeId(e){switch(e){case`video`:return D.Video;case`playlist`:return D.Playlist;case`subject`:return D.Subject;case`series`:return D.Series;case`interactive`:return D.Interactive;case`clip`:return D.Clip}},createLink(e){let n=n=>{t.logUserAction({...n,objectName:e.entity.name},t.mergeOptions(G.getAnalyticsOptions(e.entityType),{actionType:r.Create,entity:p.ShareLink,eventVersion:a.V3})),e.success&&e.success(n)},i=()=>{e.alerts.error(W(`createLinkError`,{name:e.entity.name}))},o={resourceId:e.entity.id,overrideRestrictions:!1};e.password&&(o.password=e.password),e.linkExpireDate&&(o.linkExpireDate=e.linkExpireDate),S(e.dispatch,V.createShareLink(o,n,i))},updateLink(e,n,i,o,s,c,l,u){S(e,V.editShareLink(o,s,e=>{t.logUserAction({...e,objectName:n.name},t.mergeOptions(G.getAnalyticsOptions(i),{actionType:r.Edit,entity:p.ShareLink,eventVersion:a.V3})),l&&l(e),c.success(W(`editSuccess`,{name:n.name,escapeText:!0}))},()=>{u&&u(),c.error(W(`editError`,{name:n.name,escapeText:!0}))}))},deleteLink(e,n,i,a,o,s,c){S(e,V.deleteShareLink(a,()=>{t.logUserAction({...a,objectName:n.name},t.mergeOptions(G.getAnalyticsOptions(i),{actionType:r.Delete,entity:p.ShareLink})),s&&s(),o.success(W(`deleteSuccess`,{name:n.name,escapeText:!0}))},()=>{o.error(W(`deleteError`,{name:n.name,escapeText:!0}))},()=>{c&&c()}))},createOrUpdateDirectShare(e){let{dispatch:n,entity:i,entityType:o,currentUser:s,recipients:l,sentDirectShare:u,message:d,onSuccess:f,onError:p,onDone:m}=e,h=e=>{f&&f(e),t.logUserAction({id:i.id,name:i.name,shareCount:l.length},t.mergeOptions(G.getAnalyticsOptions(o),{actionType:r.Share,descriptor:c.DirectShare,eventVersion:a.V3})),l.map(e=>{Qe.addRecentlySharedTo(s.id,{id:e.id})})},g={objectId:i.id,objectTypeId:G.getObjectTypeId(o),recipients:l,message:d},_={recipients:l,message:d};S(n,u?V.updateDirectShareRecipients(u.id,_,h,p,m):V.createDirectShare(g,h,p,m))},removeDirectShareRecipient(e,n,i,a,o,s){S(e,V.removeDirectShareRecipient(a.id,n,e=>{o&&o(e),t.logUserAction({shareCount:1},t.mergeOptions(G.getAnalyticsOptions(i),{actionType:r.Unshare}))},s))},getDirectShareRecipientsRequest(e,t){return!!t?.recipients?.length&&V.getDirectShareRecipientsById(t.id,t.recipients,e)},getAnalyticsEntity(e){switch(e){case`playlist`:return p.Playlist;case`subject`:return p.Classification;case`video`:return p.Video;case`series`:return p.Series;case`interactive`:return p.Interactive;case`clip`:return p.Clip}},getAnalyticsOptions(e){return{entity:G.getAnalyticsEntity(e),location:i.Popup,workflowPhase:d.Complete}},getFetchFunctionByType:e=>{switch(e){case`video`:return e=>w(je.video(e));case`playlist`:return e=>w(at.getPlaylist(e));case`subject`:return(e,t)=>w(Ie.classification(e,t));case`series`:return e=>w(st.series(e));case`interactive`:return e=>w(Ee.interactiveMetadata(e));case`clip`:return e=>w(Ne.clip(e))}},getImageUrl(e){return`thumbnail`in e&&e.thumbnail?e.thumbnail?.url:`_thumbnail`in e&&e._thumbnail?e._thumbnail?.url:`cover`in e?e.cover?.url:`tallPoster`in e?e.tallPoster?.url:``},getShareRecipientsPhrase(e){if(!e.length)return;let t={};if(e.length===1)return E.first(e).name;e.forEach(e=>{let n;switch(e.typeId){case D.User:n=`users`;break;case D.Classroom:n=`classrooms`;break;case D.ClassroomGroup:n=`classroomGroups`;break}let r=t[n]??[];r.push(e),t={...t,[n]:E.uniq(r)}});let n=t.classrooms&&!t.classroomGroups&&!t.users,r=t.classroomGroups&&!t.classrooms&&!t.users,i=t.users&&!t.classrooms&&!t.classroomGroups;if(n)return W(`classrooms`,{smartCount:t.classrooms.length});if(r)return W(`groups`,{smartCount:t.classroomGroups.length});if(i)return W(`users`,{smartCount:t.users.length});let a=[];t.classrooms?.length&&a.push(W(`classrooms`,{smartCount:t.classrooms.length})),t.classroomGroups?.length&&a.push(W(`groups`,{smartCount:t.classroomGroups.length})),t.users?.length&&a.push(W(`users`,{smartCount:t.users.length}));let o=a.pop();return`${a.join(`, `)} ${W(`and`)} ${o}`}},ct=o(((e,t)=>{t.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,n=[],r=0;r<e.rangeCount;r++)n.push(e.getRangeAt(r));switch(t.tagName.toUpperCase()){case`INPUT`:case`TEXTAREA`:t.blur();break;default:t=null;break}return e.removeAllRanges(),function(){e.type===`Caret`&&e.removeAllRanges(),e.rangeCount||n.forEach(function(t){e.addRange(t)}),t&&t.focus()}}})),lt=o(((e,t)=>{var n=ct(),r={"text/plain":`Text`,"text/html":`Url`,default:`Text`},i=`Copy to clipboard: #{key}, Enter`;function a(e){var t=(/mac os x/i.test(navigator.userAgent)?`⌘`:`Ctrl`)+`+C`;return e.replace(/#{\s*key\s*}/g,t)}function o(e,t){var o,s,c,l,u,d,f=!1;t||={},o=t.debug||!1;try{if(c=n(),l=document.createRange(),u=document.getSelection(),d=document.createElement(`span`),d.textContent=e,d.ariaHidden=`true`,d.style.all=`unset`,d.style.position=`fixed`,d.style.top=0,d.style.clip=`rect(0, 0, 0, 0)`,d.style.whiteSpace=`pre`,d.style.webkitUserSelect=`text`,d.style.MozUserSelect=`text`,d.style.msUserSelect=`text`,d.style.userSelect=`text`,d.addEventListener(`copy`,function(n){if(n.stopPropagation(),t.format)if(n.preventDefault(),n.clipboardData===void 0){o&&console.warn(`unable to use e.clipboardData`),o&&console.warn(`trying IE specific stuff`),window.clipboardData.clearData();var i=r[t.format]||r.default;window.clipboardData.setData(i,e)}else n.clipboardData.clearData(),n.clipboardData.setData(t.format,e);t.onCopy&&(n.preventDefault(),t.onCopy(n.clipboardData))}),document.body.appendChild(d),l.selectNodeContents(d),u.addRange(l),!document.execCommand(`copy`))throw Error(`copy command was unsuccessful`);f=!0}catch(n){o&&console.error(`unable to copy using execCommand: `,n),o&&console.warn(`trying IE specific stuff`);try{window.clipboardData.setData(t.format||`text`,e),t.onCopy&&t.onCopy(window.clipboardData),f=!0}catch(n){o&&console.error(`unable to copy using clipboardData: `,n),o&&console.error(`falling back to prompt`),s=a(`message`in t?t.message:i),window.prompt(s,e)}}finally{u&&(typeof u.removeRange==`function`?u.removeRange(l):u.removeAllRanges()),d&&document.body.removeChild(d),c()}return f}t.exports=o})),ut=o((e=>{function t(e){"@babel/helpers - typeof";return t=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},t(e)}Object.defineProperty(e,`__esModule`,{value:!0}),e.CopyToClipboard=void 0;var n=a(f()),r=a(lt()),i=[`text`,`onCopy`,`options`,`children`];function a(e){return e&&e.__esModule?e:{default:e}}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function s(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?o(Object(n),!0).forEach(function(t){x(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):o(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function c(e,t){if(e==null)return{};var n=l(e,t),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i<a.length;i++)r=a[i],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function l(e,t){if(e==null)return{};var n={},r=Object.keys(e),i,a;for(a=0;a<r.length;a++)i=r[a],!(t.indexOf(i)>=0)&&(n[i]=e[i]);return n}function u(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function d(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function p(e,t,n){return t&&d(e.prototype,t),n&&d(e,n),Object.defineProperty(e,`prototype`,{writable:!1}),e}function m(e,t){if(typeof t!=`function`&&t!==null)throw TypeError(`Super expression must either be null or a function`);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,`prototype`,{writable:!1}),t&&h(e,t)}function h(e,t){return h=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},h(e,t)}function g(e){var t=y();return function(){var n=b(e),r;if(t){var i=b(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return _(this,r)}}function _(e,n){if(n&&(t(n)===`object`||typeof n==`function`))return n;if(n!==void 0)throw TypeError(`Derived constructors may only return object or undefined`);return v(e)}function v(e){if(e===void 0)throw ReferenceError(`this hasn't been initialised - super() hasn't been called`);return e}function y(){if(typeof Reflect>`u`||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy==`function`)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function b(e){return b=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},b(e)}function x(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var ee=function(e){m(a,e);var t=g(a);function a(){var e;u(this,a);var i=[...arguments];return e=t.call.apply(t,[this].concat(i)),x(v(e),`onClick`,function(t){var i=e.props,a=i.text,o=i.onCopy,s=i.children,c=i.options,l=n.default.Children.only(s),u=(0,r.default)(a,c);o&&o(a,u),l&&l.props&&typeof l.props.onClick==`function`&&l.props.onClick(t)}),e}return p(a,[{key:`render`,value:function(){var e=this.props;e.text,e.onCopy,e.options;var t=e.children,r=c(e,i),a=n.default.Children.only(t);return n.default.cloneElement(a,s(s({},r),{},{onClick:this.onClick}))}}]),a}(n.default.PureComponent);e.CopyToClipboard=ee,x(ee,`defaultProps`,{onCopy:void 0,options:void 0})})),dt=o(((e,t)=>{var n=ut().CopyToClipboard;n.CopyToClipboard=n,t.exports=n}))(),ft={normal:`_normal_1285l_1`,copyBtn:`_copyBtn_1285l_4`,embedHtmlInput:`_embedHtmlInput_1285l_7`},K=M.encloseNamespace(`shared.copyInput`);pt.defaultProps={styling:`normal`};function pt(e){let[t,n]=z.useState(e.showCopiedText||!1);function r(){setTimeout(()=>n(!1),2e3)}function i(){e.onCopy&&e.onCopy(),!t&&(n(!0),r())}z.useEffect(()=>{e.showCopiedText&&r()},[e.showCopiedText]);function a(){return e.styling===`normal-v2`?(0,U.jsx)(dt.CopyToClipboard,{text:e.value,onCopy:i,children:(0,U.jsx)(v,{role:t?`status`:``,svg:t?Te:Ue,className:h(ft.copyBtn,`btn py-0 text-nowrap`,t?`btn-success text-white`:`btn-outline-dark border-secondary`,e.extraButtonClassNames),children:t?e.copiedText||K(`copiedLink`):e.copyText||K(`copy`)})}):(0,U.jsx)(dt.CopyToClipboard,{text:e.value,onCopy:i,children:(0,U.jsx)(`button`,{role:t?`status`:``,className:h(`btn btn-outline-dark border border-secondary py-0 text-nowrap`,e.extraButtonClassNames),children:t?e.copiedText||K(`copied`):e.copyText||K(`copy`)})})}let o=(0,U.jsxs)(`div`,{className:e.styling===`normal-v2`?`d-flex flex-row gap-2 position-relative w-100`:`input-group`,children:[e.textarea?(0,U.jsx)(`textarea`,{className:h(`form-control rounded w-100 h-100`,!e.hasInputBg&&ft.embedHtmlInput,e.textAreaClassName),spellCheck:!1,value:e.value,rows:e.rows||7,readOnly:!0}):(0,U.jsx)(`input`,{type:`text`,autoComplete:`off`,className:h(`form-control`,e.styling===`normal`&&e.styling),spellCheck:!1,value:e.value,readOnly:!0}),(0,U.jsx)(a,{})]});return e.label?(0,U.jsxs)(Se.Group,{className:`form-group`,children:[(0,U.jsx)(Se.Label,{children:e.label}),o]}):o}var mt=`shared.shared-utils`,ht={getEmbedResolutions(e=!0){let t=[{label:M.getPhrase(mt,`small`),width:`640`,height:`360`},{label:M.getPhrase(mt,`medium`),width:`1014`,height:`576`},{label:M.getPhrase(mt,`large`),width:`1280`,height:`720`}];return e&&t.unshift({label:M.getPhrase(mt,`responsive`),width:`100%`,height:`100%`}),t},getEmbedString(e){let{url:t,size:n}=e,r=n.width===`100%`,i=`<iframe ${r?`style="position:absolute; top:0; left:0; width:100%; height:100%;"`:`width="${n.width}" height="${n.height}"`} frameborder="0" allowfullscreen webkitallowfullscreen mozallowfullscreen allow="autoplay" ${`src="${t}"`}></iframe>`;return r?`<div style="padding:56.25% 0 0 0; position:relative;">${i}</div>`:i},buildEmbedUrl(e){let{embedUrl:t,host:n,shareId:r,autoplay:i,consumerKey:a}=e,o=t;o||=O.safeUrlConcat(n,`share/embed/${r}`);let s={};return i&&(s.a=!0),a&&(s.consumerKey=a),O.urlBuilder(o,s)}},gt={embedHtmlInput:`_embedHtmlInput_1rbgz_1`,copyBtnContainer:`_copyBtnContainer_1rbgz_4`},_t=`share.copyEmbedHtml`,vt=M.encloseNamespace(_t);yt.defaultProps={styling:`normal`};function yt(e){let n=ht.getEmbedResolutions(),[i,o]=z.useState(!!e.showEmbedCopiedText),[s,l]=z.useState(!1),[u,d]=z.useState(n.find(e=>e.width===`100%`)),[f,p]=z.useState(!1);z.useEffect(()=>{e.showEmbedCopiedText&&setTimeout(()=>o(!1),2e3)},[e.showEmbedCopiedText]);function m(){if(o(!0),setTimeout(()=>o(!1),2e3),!f){if(p(!0),typeof e.onCopy==`function`){e.onCopy({size:u,autoplay:s});return}t.logUserAction({...e.entity,embedDetails:{size:u,autoplay:s}},t.mergeOptions(G.getAnalyticsOptions(e.entityType),[{actionType:r.Share,descriptor:c.CopyEmbedHtml,eventVersion:a.V3},e.analyticsOptions]))}}function g(e){p(!1),l(e)}function _(e){p(!1),d(e)}let v=ht.buildEmbedUrl({embedUrl:e.embedUrl,host:e.liteUrl,shareId:e.shareId,autoplay:s}),y=ht.getEmbedString({url:v,size:u});return(0,U.jsxs)(ie.Provider,{value:_t,children:[(0,U.jsx)(pt,{value:y,onCopy:m,copiedText:e.styling===`normal-v2`?vt(`copiedV2`):vt(`copied`),copyText:vt(`copy`),showCopiedText:i,styling:e.styling,extraButtonClassNames:h(`position-absolute bottom-0 end-0`,gt.copyBtnContainer),hasInputBg:e.hasInputBg,label:e.hideLabel?void 0:vt(`label`),textarea:!0}),(0,U.jsx)(et,{autoplay:s,setAutoplay:g,videoSize:u,setVideoSize:_,videoSizes:n})]})}var bt=`shared.share`;function xt(e){return(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`div`,{className:`mb-3`,children:(0,U.jsx)(yt,{embedUrl:e.shareLink.embedUrl,entity:e.entity,entityType:e.entityType,liteUrl:e.liteUrl,entityId:e.entityId,shareId:e.shareLink.id,analyticsOptions:e.analyticsOptions})}),(0,U.jsx)(N,{children:(0,U.jsx)(b,{onClick:e.onClickCancel,className:`btn btn-outline-dark`,children:(0,U.jsx)(T,{namespace:bt,phrase:`back`})})})]})}var St=de();function Ct(e){return(0,U.jsx)(`svg`,{...e,children:(0,U.jsx)(`path`,{fill:`currentColor`,fillRule:`evenodd`,d:`M9.758 8.424a.6.6 0 1 0-.849-.848l-4 4a.6.6 0 0 0 0 .848l4 4a.6.6 0 0 0 .849-.848L6.182 12zm5.333-.848a.6.6 0 1 0-.849.848L17.818 12l-3.576 3.576a.6.6 0 0 0 .849.848l4-4a.6.6 0 0 0 0-.848z`,clipRule:`evenodd`})})}var wt=`share.getEmbedCode`;function Tt(e){return(0,U.jsx)(b,{onClick:e.onClickGetEmbedCode,className:`d-inline-block p-1 pe-2 rounded-1 hover-bg-light-blue`,children:(0,U.jsxs)(`div`,{className:`d-flex align-items-center`,children:[(0,U.jsx)(`div`,{className:h(`me-2`,!e.minimal&&`bg-dark text-white rounded-1`),children:(0,U.jsx)(_,{svg:Ct,size:e.minimal?m.Standard:m.Large})}),(0,U.jsx)(T,{namespace:wt,phrase:`getEmbedCode`})]})})}var Et=function(e){return e.Expired=`Expired`,e.Active=`Active`,e}({}),q=M.encloseNamespace(`share.shareLinkInfo`),J={getPrivateIconAndText:e=>{let{entityTypeId:t,privacy:n,hasStudentExp:r,entity:i,yearGroups:a}=e;if(t===D.Topic||t===D.Series)return{icon:R,text:q(r?`justMySchoolTeachers`:`justMySchoolDescription`)};if(!Array.isArray(n))switch(n.privacy){case`public`:return{icon:R,text:q(`publicDescription`)};case`protected`:return n.overrideRestrictions?{icon:R,text:q(`clickViewOnly`)}:{icon:F,text:J.getRespectRatingText(i,a,r)};case`just_my_customer`:return n.overrideRestrictions?{icon:F,text:q(r?`justMySchoolTeachers`:`justMySchoolDescription`)}:{icon:F,text:J.getRespectRatingText(i,a,r)};case`restricted`:case`private`:return{icon:F,text:q(`privateDescription`)};default:return{}}},getIconAndText:e=>{let{linkExpireDate:t,isPasswordProtected:n,status:r}=e;if(!t&&!n)return J.getPrivateIconAndText(e);if(!t)return{icon:F,text:q(`password`)};let i=le.isToday(t),a=le.diffBetween(t,new Date,`day`);if(!n){let e=i?q(`expiryToday`):q(`expiry`,{days:a});return r===Et.Expired&&(e=q(`expired`)),{icon:ke,text:e}}let o=i?q(`passwordExpiryToday`):q(`passwordExpiry`,{days:a});return r===Et.Expired&&(o=q(`passwordExpired`)),{icon:F,text:o}},getRespectRatingText(e,t,n){if(!e||!t)return null;if(n)return q(`justMySchoolTeachers`);if(!I.isVideoType(e))return q(`collectionRating`);let r=Oe.getWeightedRestriction(e._restrictions?.value);if(r&&!r.yearGroup)return q(`onlyAdmins`);let i=I.getRating(e),a,o;for(let e of t)(!a||e.value>a.value)&&(a=e),!(r&&e.value<=r.yearGroup)&&(i&&e.rating.value<i.value||(!o||e.value<o.value)&&(o=e));return o?t.length===1?q(`clickViewOnly`):o.value===a.value?q(`maxYearGroup`,{yearGroup:a.name}):q(`yearGroupRange`,{yearGroup:o.name}):q(`onlyStaff`)}},Y=M.encloseNamespace(`share.shareLinkInfo`);function Dt(e){let{active:t,title:n,description:r,onClick:i}=e;return(0,U.jsxs)(`button`,{className:`${t?`bg-light-blue`:``} dropdown-item d-flex align-items-center justify-content-between`,onClick:t?null:i,type:`button`,children:[(0,U.jsxs)(`div`,{className:`me-4`,children:[(0,U.jsx)(`p`,{className:`fw-semibold mb-1`,children:n}),(0,U.jsx)(`p`,{className:`font-size-sm mb-0`,children:r})]}),t&&(0,U.jsx)(_,{svg:Te})]})}function Ot(e){let[t,n]=z.useState(!1),[r,i]=z.useState(null),{icon:a,text:o}=J.getIconAndText(e);z.useEffect(()=>{n(e.privacy.canManageAccess),i(e.privacy.privacy)},[e.privacy]);let s=t?`just_my_customer`:`protected`;return(0,U.jsx)(`div`,{className:`d-flex align-items-center`,children:!e.isPasswordProtected&&!e.linkExpireDate&&e.shareOverrideRestrictions&&!e.hasStudentExp?(0,U.jsxs)(`div`,{className:`btn-group`,children:[(0,U.jsxs)(`button`,{className:`btn border-0 info-link dropdown-toggle p-1 bg-light-blue-hover`,"data-bs-toggle":`dropdown`,"aria-label":Y(`ariaPrivacy`),children:[(0,U.jsx)(_,{svg:a,className:`svg-container me-1`}),(0,U.jsx)(`span`,{className:`me-1`,children:o})]}),(0,U.jsxs)(`ul`,{className:`dropdown-menu cursor-pointer`,children:[t&&(0,U.jsx)(`li`,{children:(0,U.jsx)(Dt,{active:r===`public`,title:Y(`public`),description:Y(`publicDescription`),onClick:()=>e.onClickSavePrivacy(`public`,!1)})}),(0,U.jsx)(`li`,{children:(0,U.jsx)(Dt,{active:r===s&&e.privacy.overrideRestrictions,title:Y(`justMySchool`),description:Y(t?`justMySchoolDescription`:`clickViewOnly`),onClick:()=>e.onClickSavePrivacy(s,!0)})}),(0,U.jsx)(`li`,{children:(0,U.jsx)(Dt,{active:r===s&&!e.privacy.overrideRestrictions,title:Y(`respectRatings`),description:J.getRespectRatingText(e.entity,e.yearGroups,e.hasStudentExp),onClick:()=>e.onClickSavePrivacy(s,!1)})}),(0,U.jsx)(`li`,{children:(0,U.jsx)(Dt,{active:r===`private`,title:Y(`private`),description:Y(`privateDescription`),onClick:()=>e.onClickSavePrivacy(`private`,!1)})})]})]}):(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(_,{svg:a,className:`svg-container me-1`}),(0,U.jsx)(`span`,{children:o})]})})}function kt(){return(0,U.jsxs)(`svg`,{width:`24`,height:`24`,viewBox:`0 0 24 24`,fill:`none`,children:[(0,U.jsx)(`circle`,{cx:`12`,cy:`12`,r:`12`,fill:`url(#pattern0)`}),(0,U.jsxs)(`defs`,{children:[(0,U.jsx)(`pattern`,{id:`pattern0`,patternContentUnits:`objectBoundingBox`,width:`1`,height:`1`,children:(0,U.jsx)(`use`,{xlinkHref:`#image0_3558_14996`,transform:`scale(0.00520833)`})}),(0,U.jsx)(`image`,{id:`image0_3558_14996`,width:`192`,height:`192`,xlinkHref:`data:image/png;base64,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`})]})]})}function At(){return(0,U.jsxs)(`svg`,{viewBox:`0 0 40 40`,fill:`none`,children:[(0,U.jsx)(`path`,{d:`M29.692 15.31c.58 0 1.146-.173 1.628-.5a2.96 2.96 0 001.078-1.331 3.004 3.004 0 00-.634-3.235 2.918 2.918 0 00-1.5-.812 2.894 2.894 0 00-1.693.169 2.938 2.938 0 00-1.314 1.093 2.997 2.997 0 00.364 3.748 2.91 2.91 0 002.071.869zM20.043 26.267V13.849a.9.9 0 00-.259-.633.877.877 0 00-.624-.262H6.883a.877.877 0 00-.624.262.9.9 0 00-.259.633v12.418c0 .24.092.469.257.64.165.172.39.27.626.276H19.16a.899.899 0 00.626-.276.923.923 0 00.257-.64zm-3.51-10.389v1.92h-2.37v6.68H11.88V17.93H9.51v-2.182h7.022v.13z`,fill:`#fff`}),(0,U.jsx)(`path`,{d:`M21.874 14.132v.917a4.03 4.03 0 002.05-1.47c.512-.699.79-1.545.793-2.415 0-1.1-.431-2.154-1.199-2.932a4.065 4.065 0 00-2.893-1.214 4.065 4.065 0 00-2.894 1.214 4.175 4.175 0 00-1.199 2.932h2.391a2.996 2.996 0 012.061.887c.55.552.868 1.297.89 2.081zM26.332 17.1h-4.458v8.883c0 .8-.309 1.566-.86 2.138-.552.57-1.302.9-2.091.917h-4.588a7.047 7.047 0 003.265 3.317c1.427.7 3.046.887 4.593.532a6.99 6.99 0 003.918-2.486 7.152 7.152 0 001.535-4.418v-7.551a1.348 1.348 0 00-.385-.942 1.313 1.313 0 00-.929-.39zM32.772 17.1h-3.597c.206.414.316.87.323 1.332v7.551a9.1 9.1 0 01-.516 2.859c.236.021.474.021.71 0a4.28 4.28 0 003.046-1.278A4.394 4.394 0 0034 24.477v-6.045c0-.339-.126-.665-.354-.912a1.307 1.307 0 00-.874-.42z`,fill:`#fff`})]})}var X={hoverable:`_hoverable_4a88w_1`,msTeamsContainer:`_msTeamsContainer_4a88w_7`,avatar:`_avatar_4a88w_10`,small:`_small_4a88w_17`},jt=`share.shareIntegrations`;function Mt(e){let t=h(X.avatar,e?.size===`sm`&&X.small,e?.size!==`sm`&&`border`,`rounded-circle overflow-hidden`);return(0,U.jsx)(g,{title:M.getPhrase(jt,`shareThroughIntegrations`),spanHack:!0,disable:e.noTooltip,children:(0,U.jsxs)(`ul`,{className:`list-unstyled d-flex mb-0`,children:[(0,U.jsx)(`li`,{className:t,style:{zIndex:1},children:(0,U.jsx)(kt,{})}),(0,U.jsx)(`li`,{className:`${t} ${X.msTeamsContainer}`,style:{zIndex:0},children:(0,U.jsx)(At,{})})]})})}var Nt=`share.shareAsLink`;function Pt(e){let[n,i]=z.useState(!1);function o(){n||(i(!0),t.logUserAction({id:e.entity.id,name:e.entity.name},t.mergeOptions(G.getAnalyticsOptions(e.entityType),{actionType:r.Share,descriptor:c.CopyLink,eventVersion:a.V3})))}return(0,U.jsx)(U.Fragment,{children:(0,U.jsxs)(`div`,{className:`d-flex justify-content-between align-items-center`,children:[(0,U.jsx)(`div`,{className:`${e.shareLink?`w-100`:`w-75 d-flex align-items-center`}`,children:e.shareLink?(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`div`,{className:`d-flex justify-content-between align-items-center mb-1`,children:(0,U.jsx)(Ot,{linkExpireDate:e.shareLink.linkExpireDate,isPasswordProtected:e.shareLink.isPasswordProtected,privacy:e.privacy,entityTypeId:e.shareLink.objectTypeId,status:e.shareLink.status,onClickSavePrivacy:e.onClickSavePrivacy,hasStudentExp:e.hasStudentExp,entity:e.entity,yearGroups:e.yearGroups,shareOverrideRestrictions:e.shareOverrideRestrictions})}),(0,U.jsx)(pt,{value:e.shareLink.url,onCopy:o})]}):(0,U.jsxs)(`div`,{className:`d-flex align-items-center`,children:[(0,U.jsx)(`div`,{className:`me-2`,children:e.enableIntegrations?(0,U.jsx)(Mt,{}):(0,U.jsx)(_,{svg:ze,className:`svg-container`})}),(0,U.jsx)(`span`,{className:`fw-semibold`,children:(0,U.jsx)(T,{namespace:Nt,phrase:`createLink`})})]})}),!e.shareLink&&(0,U.jsx)(b,{className:`info-link`,onClick:e.onClickCreateLink,children:(0,U.jsx)(T,{phrase:`createLink`})})]})})}var Ft={};function It(e,t){let[n,r]=z.useState(!1);return z.useEffect(()=>{if(!e||!t||Ft[e])return;let n=document.createElement(`script`);return n.src=e,n.async=!0,n.onload=()=>{Ft[e]=!0,window.setTimeout(()=>r(!0),0)},document.body.appendChild(n),()=>{n.onload=null,document.body.removeChild(n)}},[e,t]),Ft[e]||n}var Lt=`g-share-to-classroom`;function Rt(e){e&&(window.___gcfg={parsetags:`explicit`});let t=It(`https://apis.google.com/js/platform.js`,e);return z.useEffect(()=>{!e||!t||window.gapi?.sharetoclassroom?.go(Lt)},[e,t]),Lt}function zt(e){let t=It(`https://teams.microsoft.com/share/launcher.js`,e);z.useEffect(()=>{!e||!t||window.shareToMicrosoftTeams?.renderButtons()},[e,t])}var Bt=`shared.lookingForIntegration`,Vt=M.encloseNamespace(Bt);function Ht(e){let[t,n]=oe(ce.LOOKING_FOR_INTEGRATION,{show:!0},{storage:se.LocalStorage});return t.show?(0,U.jsxs)(`div`,{className:h(`d-flex justify-content-between`,!e.hideBackground&&`rounded p-2 bg-light-blue`),children:[(0,U.jsx)(y,{appLink:e.appLink,onClick:()=>e.closePopup?.(),className:`d-inline-flex align-items-center mb-0`,children:(0,U.jsx)(`span`,{className:h(`ms-1 text-info`,!e.normalText&&`fw-semibold`),children:(0,U.jsx)(T,{namespace:Bt,phrase:`lookingForIntegration`})})}),!e.hideDismiss&&(0,U.jsx)(`button`,{onClick:()=>n({show:!1}),"aria-label":`${Vt(`ariaClose`)}`,children:(0,U.jsx)(_,{svg:pe,size:m.Small,className:`text-info d-inline-block svg-container`})})]}):(0,U.jsx)(U.Fragment,{})}var Z=function(e){return e.GoogleClassroom=`google-classroom`,e.MicrosoftTeams=`microsoft-teams`,e.Vivi=`vivi`,e.AppleTv=`apply-tv`,e}({}),Ut=`32`;function Wt(e){let t=Rt(e.integrations?.includes(Z.GoogleClassroom));if(zt(e.integrations?.includes(Z.MicrosoftTeams)),!e.integrations.length&&!e.hideLookingForIntegrations)return(0,U.jsx)(Ht,{appLink:e.appLink,closePopup:e.closePopup});function n(){switch(e.iconSize){case`sm`:return`24`;default:return Ut}}let r=n(),i={height:`${r}px`,width:`${r}px`};return(0,U.jsxs)(`div`,{className:`d-flex gap-1 align-items-start`,children:[e.integrations.includes(Z.GoogleClassroom)&&(0,U.jsx)(`div`,{id:t,className:`rounded partial-loading-background`,style:i,children:(0,U.jsx)(`div`,{className:`g-sharetoclassroom`,"data-size":r,"data-url":e.url})}),e.integrations.includes(Z.MicrosoftTeams)&&(0,U.jsx)(`div`,{className:`rounded overflow-hidden ${X.hoverable}`,children:(0,U.jsx)(`div`,{className:`teams-share-button ${X.msTeamsContainer}`,style:i,"data-href":e.url,"data-button-type":`smallTransWhite`,"data-preview":`false`,"data-icon-px-size":r})})]})}var Q=e(Pe());function Gt(e){return(0,U.jsx)(Ke,{type:Ge.Restriction,data:{restrictions:e.restrictions,yearGroups:e.yearGroups},inline:!0})}function Kt(e){let t=Oe.hasRestrictions(e.video?._restrictions),{canConsume:n}=I.getCanBeConsumed(e.video);return!t||!e.yearGroups||!n?(0,U.jsx)(U.Fragment,{}):(0,U.jsx)(We,{className:e.className||`pt-1`,children:(0,U.jsx)(Gt,{restrictions:e.video._restrictions,yearGroups:e.yearGroups})})}var qt=M.encloseNamespace(`share.shareMessage`),Jt=Q.object().shape({message:Q.string().max(280,()=>qt(`maxMessageLen`))});function Yt(e){let t=Re();return(0,U.jsxs)(be,{children:[(0,U.jsx)(Be,{component:`textarea`,name:`message`,id:`message`,placeholder:qt(`placeholder`),value:t.values.message,label:qt(`label`),showOptionalLabel:!0}),!e.shareOverrideRestrictions&&I.isVideoType(e.entity)&&(0,U.jsx)(`div`,{className:`mb-3`,children:(0,U.jsx)(Kt,{video:e.entity,yearGroups:e.yearGroups})}),(0,U.jsx)(N,{children:(0,U.jsx)(N.Submit,{variant:`dark`,text:qt(`share`)})})]})}function Xt(e){function t(t,n){let r=null;t.message&&(r=t.message),e.onClickShare(r,n)}return(0,U.jsx)(Ve,{initialValues:{message:``},validationSchema:Jt,onSubmit:t,allowInitialSubmit:!0,children:(0,U.jsx)(Yt,{entity:e.entity,yearGroups:e.yearGroups,shareOverrideRestrictions:e.shareOverrideRestrictions})})}var Zt=`shared.share`,Qt=M.encloseNamespace(Zt);function $t(e,t,n,r){if(!e)return[];let i=[...t,...n].map(e=>e.id);return e.filter(e=>!(i.includes(e.id)||e.id===r))}function en(e){let[t,n]=z.useState([]),[r,i]=z.useState(!1),{hasPermissions:a}=we(),{hasClassrooms:o}=_e(null),s=a(k.ManageIntegrations);function c(r,i){e.onClickShare(t,r,()=>{n([]),i()})}function l(r){e.fetchRecipientUsers&&e.fetchRecipientUsers(r,e=>{let i=[];t.forEach(t=>{if(t.id!==r)return i.push(t);let n=u.deepClone(t);e?.data?.length?n.users=e:n.users={count:0,data:[],pagination:null},i.push(n)}),n(E.uniq(i,`id`))})}function d(t){let n=[];return a(k.ShareToUsers)&&n.push({index:`user`,filters:{userType:[ue.Staff,ue.Learner],userProfile:{status:[`${me.Active.toLowerCase()}`],customerId:e.currentUser.customerId}}}),a(k.ShareToClassrooms)&&n.push({index:`classroom`}),a(k.ShareToClassroomGroups)&&n.push({index:`classroom_group`}),{query:t,indices:n,searchType:`user`,limit:10}}let f=o&&(a(k.ShareToUsers)||a(k.ShareToClassrooms)||a(k.ShareToClassroomGroups)),p=$t(e.recentlySharedTo,t,e.directShareRecipients,e.currentUser.id);function m(){i(!0),e.onClickCreateLink()}return z.useEffect(()=>{i(!!e.shareLinkIsLoading)},[e.shareLinkIsLoading]),(0,U.jsxs)(U.Fragment,{children:[f&&(0,U.jsxs)(`div`,{className:`bg-white rounded-bottom-3 pt-3 px-3 mb-2`,children:[(0,U.jsx)(`div`,{className:`d-flex justify-content-between align-items-center pb-3`,children:(0,U.jsx)(Fe,{getRemoteUrl:()=>O.safeUrlConcat(e.gatewayApiUrl,`v4/search`),getRemotePostBody:d,requestHeaders:e.searchRequestHeaders,formatRemoteSuggestions:n=>$t(n?.results,t,e.directShareRecipients,e.currentUser.id),recentSearches:p,selections:t,onSuggestionSelected:e=>n([...t,e]),removeSelection:e=>n(t.filter(t=>t.id!==e.id)),placeholder:Qt(o?`searchPlaceholder`:`searchPlaceholderNoClassrooms`),imageCdnUrl:e.imageCdnUrl,activationLength:2,fetchSelectionMembers:e.fetchRecipientUsers&&l,debounceTime:300,emptyStateImageUrl:e.emptyStateImageUrl,errorStateImageUrl:e.errorStateImageUrl,hasStudentExperience:a(k.StudentExperience)},p?.map(e=>e.id).join(`:`)??`share:search`)}),!t.length&&e.directShareRecipients.length?(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`h3`,{className:`font-size-normal`,children:(0,U.jsx)(T,{phrase:`sharedTo`})}),(0,U.jsx)(St.Scrollbars,{autoHeight:!0,children:(0,U.jsx)(`ul`,{className:`list-unstyled`,children:e.directShareRecipients.map(t=>(0,U.jsx)(`li`,{className:`mb-2 pe-1`,children:(0,U.jsx)(He,{entity:t,imageCdnUrl:e.imageCdnUrl,removeRecipient:e.onClickRemoveRecipient,showDisplayName:a(k.StudentExperience)})},t.id))})})]}):(0,U.jsx)(U.Fragment,{}),!!t.length&&(0,U.jsx)(`div`,{className:`pb-3`,children:(0,U.jsx)(Xt,{onClickShare:c,entity:e.entity,yearGroups:e.yearGroups,shareOverrideRestrictions:e.shareOverrideRestrictions})})]}),!t.length&&!r&&(0,U.jsx)(`div`,{className:`bg-white p-3 ${f?`rounded-3`:`rounded-bottom-3`}`,children:(0,U.jsxs)(`div`,{children:[e.shareLink&&(0,U.jsx)(`div`,{className:`fw-semibold mb-2`,children:(0,U.jsx)(T,{namespace:Zt,phrase:`shareLink`})}),(0,U.jsx)(Pt,{entity:e.entity,entityType:e.entityType,shareLink:e.shareLink,onClickShowSettings:e.onClickShowSettings,onClickCreateLink:m,shareLinkIsLoading:e.shareLinkIsLoading,canAddPolicies:e.canAddPolicies,privacy:e.privacy,entityTypeId:e.entity.typeId,onClickSavePrivacy:e.onClickSavePrivacy,enableIntegrations:e.enableIntegrationBanner,hasStudentExp:a(k.StudentExperience),yearGroups:e.yearGroups,shareOverrideRestrictions:e.shareOverrideRestrictions}),e.shareLink&&e.enableIntegrationBanner&&(0,U.jsx)(`div`,{className:`${e.integrations?.length&&e.canEmbed?`float-end`:``} mt-1 pt-1`,children:(0,U.jsx)(Wt,{integrations:e.integrations,url:e.shareLink.url,closePopup:e.closePopup,appLink:s?e.integrationSettingAppLink:e.messagePopupAppLink})}),e.shareLink&&e.canEmbed&&(0,U.jsx)(`div`,{className:`mt-1`,children:(0,U.jsx)(Tt,{onClickGetEmbedCode:e.onClickGetEmbedCode})}),e.shareLink&&e.canAddPolicies&&(0,U.jsx)(`button`,{className:`btn btn-link text-info mt-2 p-0`,onClick:e.onClickShowSettings,children:(0,U.jsx)(T,{namespace:Zt,phrase:`advancedSettings`})})]})}),r&&(0,U.jsx)(`div`,{className:`bg-white rounded-3 p-3 text-center`,children:(0,U.jsx)(ve,{as:`div`,animation:`border`,role:`status`})})]})}var tn=30;function nn(e){if(!e)return null;let t=new Date;return t.setDate(t.getDate()+tn),t.toISOString()}var rn=`shared.linkExpiry`,an=M.encloseNamespace(rn);function on(e){let t=xe();function n(){e.passwordProtectLink||t.setFieldValue(`linkExpireDate`,nn(!t.values.linkExpireDate))}return(0,U.jsxs)(`div`,{className:`d-flex justify-content-between align-items-center pb-3`,children:[(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`label`,{className:`m-0`,htmlFor:``,children:(0,U.jsx)(T,{namespace:rn,phrase:`linkExpirationHeading`})}),(0,U.jsx)(`p`,{className:`m-0`,children:(0,U.jsx)(T,{namespace:rn,phrase:`linkExpirationInfo`})})]}),(0,U.jsx)(g,{title:an(`passwordProtected`),disable:!e.passwordProtectLink,spanHack:!0,trigger:`hover`,children:(0,U.jsx)(Ce,{onClick:n,on:!!t.values.linkExpireDate,disabled:e.passwordProtectLink,showStateWhenDisabled:!0})})]})}var sn={passwordButton:`_passwordButton_oj2vx_1`},cn=M.encloseNamespace(`share.setPasswordInput`);function ln(e){let[t,n]=z.useState(!1),r=xe().errors?.password;return(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(`input`,{className:`form-control ${r?`is-invalid`:``}`,value:e.value,onChange:t=>{e.canEdit&&e.onChange(t.target.value)},type:t?`text`:`password`,placeholder:e.placeholder||cn(`passwordPlaceholder`),readOnly:!e.canEdit}),!!r&&(0,U.jsx)(Se.Control.Feedback,{type:`invalid`,children:r}),!!e.canEdit&&(0,U.jsx)(b,{className:sn.passwordButton,onClick:()=>n(!t),children:(0,U.jsx)(_,{svg:t?R:Le,title:cn(t?`hidePassword`:`revealPassword`),tooltipPlacement:`top`})}),!e.canEdit&&!!e.canReset&&!!e.onReset&&(0,U.jsx)(b,{className:sn.passwordButton,onClick:e.onReset,children:(0,U.jsx)(_,{svg:pe,title:cn(`resetPassword`),tooltipPlacement:`top`})})]})}var un=`shared.linkPassword`,dn=`********`;function fn(e){let{passwordProtectLink:t,setPasswordProtectLink:n}=e,r=xe(),[i,a]=z.useState(!!e.shareLink?.isPasswordProtected);function o(){e.shareLink?.isPasswordProtected&&r.setFieldValue(`removePassword`,t),r.setFieldValue(`password`,``),n(!t),r.setFieldValue(`linkExpireDate`,nn(!t))}function s(e){r.setFieldValue(`password`,e)}function c(){r.setFieldValue(`password`,``),r.setFieldValue(`removePassword`,!0),a(!1)}return(0,U.jsxs)(`div`,{className:`pb-3`,children:[(0,U.jsxs)(`div`,{className:`d-flex justify-content-between align-items-center`,children:[(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`label`,{className:`m-0`,htmlFor:``,children:(0,U.jsx)(T,{namespace:un,phrase:`passwordProtectHeading`})}),(0,U.jsx)(`p`,{className:`m-0`,children:(0,U.jsx)(T,{namespace:un,phrase:`passwordProtectInfo`})})]}),(0,U.jsx)(Ce,{onClick:o,on:t})]}),t&&(0,U.jsx)(`div`,{className:`position-relative mt-2`,children:(0,U.jsx)(ln,{value:i?dn:r.values.password,onChange:s,onReset:c,canEdit:!i,canReset:!0})})]})}var pn=(0,Q.object)().shape({removePassword:(0,Q.boolean)(),resourceId:(0,Q.string)(),linkExpireDate:(0,Q.string)().nullable(),password:(0,Q.string)().test({name:`password-length`,exclusive:!1,params:{},message:M.getPhrase(`share.validation`,`minPassword`),test:e=>e?.length?!(e.length<3):!0}).default(``)}),mn=`shared.share`,hn=M.encloseNamespace(mn);function gn(e){let{hasPermissions:t}=we(),[n,r]=z.useState(!!e.shareLink.isPasswordProtected);return(0,U.jsxs)(be,{children:[e.onClickDeleteLink&&(0,U.jsxs)(`div`,{className:`d-flex justify-content-between align-items-center pb-3`,children:[(0,U.jsxs)(`div`,{children:[(0,U.jsx)(`label`,{className:`mb-0`,children:(0,U.jsx)(T,{namespace:mn,phrase:`deleteLinkLabel`})}),(0,U.jsx)(`p`,{className:`mb-0`,children:(0,U.jsx)(T,{namespace:mn,phrase:`deleteLinkDescription`})})]}),(0,U.jsx)(b,{onClick:e.onClickDeleteLink,className:`info-link justify-self-start`,children:(0,U.jsx)(T,{namespace:mn,phrase:`deleteLink`})})]}),t(k.ManageShareLinkSettings)&&(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(on,{passwordProtectLink:n}),e.shareOverrideRestrictions&&(0,U.jsx)(fn,{shareLink:e.shareLink,passwordProtectLink:n,setPasswordProtectLink:r})]}),(0,U.jsxs)(N,{children:[(0,U.jsx)(N.Cancel,{onClick:e.onClickCancel,text:hn(`back`),variant:`link`}),(0,U.jsx)(N.Submit,{variant:`dark`})]})]})}function _n(e){return(0,U.jsx)(U.Fragment,{children:(0,U.jsx)(Ve,{initialValues:{password:``,removePassword:!1,linkExpireDate:e.shareLink.linkExpireDate,overrideRestrictions:e.shareLink.overrideRestrictions},onSubmit:e.onClickSaveLink,castInitialValues:!1,validationSchema:pn,children:(0,U.jsx)(gn,{entity:e.entity,entityType:e.entityType,config:e.config,shareLink:e.shareLink,entityId:e.entityId,onClickCancel:e.onClickCancel,analyticsOptions:e.analyticsOptions,privacy:e.privacy,onClickDeleteLink:e.onClickDeleteLink,hasStudentExp:e.hasStudentExp,shareOverrideRestrictions:e.shareOverrideRestrictions})})})}var vn=M.encloseNamespace(`shared.shared-utils`),yn={getShareIntegrations(e,t){return[{id:Z.GoogleClassroom,name:vn(`googleClassroom`),enabled:e,settingName:ge.ShareToGoogleClassroom},{id:Z.MicrosoftTeams,name:vn(`msftTeams`),enabled:t,settingName:ge.ShareToMicrosoftTeams}]}},bn=`shared.share`,$=M.encloseNamespace(bn);function xn(e){switch(e){case`video`:return $(`titleVideo`);case`clip`:return $(`titleClip`);case`interactive`:return $(`titleInteractive`);case`series`:return $(`titleSeries`);case`playlist`:return $(`titlePlaylist`);case`subject`:return $(`titleTopic`)}}function Sn(e,t){return yn.getShareIntegrations(e,t).filter(e=>e.enabled).map(e=>e.id)}var Cn=e=>e===`video`||e===`interactive`||e===`clip`,wn=e=>e===`video`||e===`interactive`||e===`clip`;function Tn(e){let t=re(),n=qe(),r=!e.gatewayApiUrl,[i,a]=z.useState(`main`),{hasPermissions:o,hasLocalPermissions:s}=we(),c=w(x.currentUser()),l=G.getFetchFunctionByType(e.entityType)(e.entityId,c.data?.id),u=w(De.config()),d=w(r&&x.token()),f=w(V.getShareLinkByObjectId(e.entityId)),p=w(V.getSentDirectShareByObjectId(e.entityId)),m=w(c.data?.customerId&&G.getDirectShareRecipientsRequest(c.data.customerId,p.data)),h=c.data&&Qe.getRecentlySharedTo(c.data.id),g=w(!!h?.length&&V.getRecipientsById(h,c.data.customerId)),_=w(V.getPrivacy(e.entityId)),v=w(c.data?.isAuthenticated&&fe.yearGroups(c.data.customerId)),{shareToGoogleClassroom:y,shareToMicrosoftTeams:b,shareOverrideRestrictions:C,isLoadingSettings:T}=_e(null);function E(e,n){n.recipients?.length&&ne(t)(G.getDirectShareRecipientsRequest(e,n))}function ae(e,n){ne(t)(V.getRecipientUsers(e,n))}function oe(){f.data||G.createLink({dispatch:t,entity:l.data,entityType:e.entityType,alerts:n})}function se(r,i){G.updateLink(t,l.data,e.entityType,f.data,r,n,()=>a(`main`),i)}function ce(){G.deleteLink(t,l.data,e.entityType,f.data,n,()=>a(`main`))}function le(r,i,a){let o=r.map(e=>({id:e.id,typeId:e.typeId}));G.createOrUpdateDirectShare({dispatch:t,entity:l.data,entityType:e.entityType,currentUser:c.data,recipients:o,message:i,sentDirectShare:p.data,onSuccess:e=>{E(c.data.customerId,e),n.success({heading:ee.Success,message:$(`directShareSuccess`,{object:l.data.name,recipients:G.getShareRecipientsPhrase(r)}),type:te.Success})},onError:()=>n.error($(`directShareError`,{name:l.data.name})),onDone:a})}function D(r,i){G.removeDirectShareRecipient(t,r,e.entityType,p.data,e=>E(c.data.customerId,e),()=>{n.error($(`removeDirectShareError`)),i&&i()})}function ue(e,r){if(e===`private`){ce();return}S(t,V.updatePrivacy(f.data.id,e,r,()=>n.success($(`privaciesSuccess`,{name:l.data.name})),()=>n.error($(`privaciesError`,{name:l.data.name}))))}function de(){return r?{authorization:`Bearer ${d.data.value}`}:null}let O=!!c.data&&!!u.data&&(!r||!!d.data)&&!!p.hasCompleted&&!!_.data&&!!l.data&&!T&&!!v.hasCompleted;return(0,U.jsx)(ie.Provider,{value:bn,children:(0,U.jsx)(ye,{title:xn(e.entityType),closePopup:e.closePopup,showLoadingSpinner:!O,contentClassName:O&&i?`bg-transparent border-0`:``,bodyClassName:`p-0`,children:(()=>{if(!O)return(0,U.jsx)(U.Fragment,{});switch(i){case`main`:return(0,U.jsx)(en,{shareLink:f.data,shareLinkIsLoading:f.isFetching,entity:l.data,entityType:e.entityType,directShareRecipients:m.data||[],recentlySharedTo:g.data||[],onClickCreateLink:oe,onClickShowSettings:()=>a(`link-settings`),onClickShare:le,onClickRemoveRecipient:D,onClickGetEmbedCode:()=>a(`copy-embed`),analyticsOptions:G.getAnalyticsOptions(e.entityType),gatewayApiUrl:e.gatewayApiUrl||u.data.gatewayApiUrl,imageCdnUrl:u.data.imageCdnUrl,searchRequestHeaders:de(),currentUser:c.data,fetchRecipientUsers:ae,privacy:_.data,onClickSavePrivacy:ue,canAddPolicies:wn(e.entityType),emptyStateImageUrl:e.emptyStateImageUrl,errorStateImageUrl:e.errorStateImageUrl,integrations:Sn(y,b),integrationSettingAppLink:e.integrationSettingAppLink,messagePopupAppLink:e.messagePopupAppLink,closePopup:e.closePopup,enableIntegrationBanner:e.enableIntegrationBanner,canEmbed:Cn(e.entityType),yearGroups:v.data,shareOverrideRestrictions:C,hasLocalPermissions:s});case`link-settings`:return(0,U.jsx)(`div`,{className:`bg-white p-3 rounded-bottom-3`,children:(0,U.jsx)(_n,{entity:l.data,entityType:e.entityType,config:u.data,shareLink:f.data,entityId:e.entityId,analyticsOptions:G.getAnalyticsOptions(e.entityType),onClickSaveLink:se,onClickDeleteLink:ce,onClickCancel:()=>a(`main`),privacy:_.data,hasStudentExp:o(k.StudentExperience),shareOverrideRestrictions:C})});case`copy-embed`:return(0,U.jsx)(`div`,{className:`bg-white p-3 rounded-bottom-3`,children:(0,U.jsx)(xt,{entity:l.data,entityType:e.entityType,liteUrl:u.data.liteUrl,shareLink:f.data,entityId:e.entityId,analyticsOptions:G.getAnalyticsOptions(e.entityType),onClickCancel:()=>a(`main`)})})}})()})})}export{Tn as ShareView};
|
|
2
|
+
//# sourceMappingURL=QGZBrJRg2.chunk.js.map
|