@clickview/lite 0.73.1 → 0.74.0-rc.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/bundles.json +2 -2
- package/dist/css/{7122-lite-a094f8fe17.chunk.css → 7122-lite-e0652641e4.chunk.css} +1 -1
- package/dist/css/{4499-lite-c43d17524f.chunk.css → 7150-lite-60d455ba66.chunk.css} +1 -1
- package/dist/css/{lite-app-10d57977f3.css → lite-app-98b3200025.css} +1 -1
- package/dist/languages/en.json +1 -1
- package/dist/scripts/{1362-061cd588c0-lite.chunk.js → 1362-56810ef4c8-lite.chunk.js} +3 -3
- package/dist/scripts/1362-56810ef4c8-lite.chunk.js.map +1 -0
- package/dist/scripts/{1367-12750422b0-lite.chunk.js → 1367-e0481edee3-lite.chunk.js} +2 -2
- package/dist/scripts/1367-e0481edee3-lite.chunk.js.map +1 -0
- package/dist/scripts/{1735-c0f3f1238a-lite.chunk.js → 1735-e4cdbc46ed-lite.chunk.js} +3 -3
- package/dist/scripts/1735-e4cdbc46ed-lite.chunk.js.map +1 -0
- package/dist/scripts/{324-6d6ee95d5d-lite.chunk.js → 324-e7a99b7d52-lite.chunk.js} +2 -2
- package/dist/scripts/{324-6d6ee95d5d-lite.chunk.js.map → 324-e7a99b7d52-lite.chunk.js.map} +1 -1
- package/dist/scripts/{3252-22fac3da15-lite.chunk.js → 3252-50b5c19f19-lite.chunk.js} +1 -1
- package/dist/scripts/{3252-22fac3da15-lite.chunk.js.map → 3252-50b5c19f19-lite.chunk.js.map} +1 -1
- package/dist/scripts/3677-4904f30c6a-lite.chunk.js +2 -0
- package/dist/scripts/3677-4904f30c6a-lite.chunk.js.map +1 -0
- package/dist/scripts/{3781-7a9ddc7736-lite.chunk.js → 3781-e092f92668-lite.chunk.js} +2 -2
- package/dist/scripts/{3781-7a9ddc7736-lite.chunk.js.map → 3781-e092f92668-lite.chunk.js.map} +1 -1
- package/dist/scripts/{3823-e38a508a3c-lite.chunk.js → 3823-0dc1972eb2-lite.chunk.js} +2 -2
- package/dist/scripts/3823-0dc1972eb2-lite.chunk.js.map +1 -0
- package/dist/scripts/3915-abd9a65a08-lite.chunk.js +2 -0
- package/dist/scripts/3915-abd9a65a08-lite.chunk.js.map +1 -0
- package/dist/scripts/{3978-09fb1f250e-lite.chunk.js → 3978-a551dd2648-lite.chunk.js} +2 -2
- package/dist/scripts/3978-a551dd2648-lite.chunk.js.map +1 -0
- package/dist/scripts/{4013-d31272b42a-lite.chunk.js → 4013-6f68d7031e-lite.chunk.js} +1 -1
- package/dist/scripts/{4013-d31272b42a-lite.chunk.js.map → 4013-6f68d7031e-lite.chunk.js.map} +1 -1
- package/dist/scripts/{4014-4225ce1eb6-lite.chunk.js → 4014-3eccce2f89-lite.chunk.js} +3 -3
- package/dist/scripts/4014-3eccce2f89-lite.chunk.js.map +1 -0
- package/dist/scripts/{4050-cf35c4ec45-lite.chunk.js → 4050-ffe5b6ae6d-lite.chunk.js} +2 -2
- package/dist/scripts/{4050-cf35c4ec45-lite.chunk.js.map → 4050-ffe5b6ae6d-lite.chunk.js.map} +1 -1
- package/dist/scripts/{4061-525ef00f69-lite.chunk.js → 4061-100002abf6-lite.chunk.js} +2 -2
- package/dist/scripts/4061-100002abf6-lite.chunk.js.map +1 -0
- package/dist/scripts/4191-9a08c4b205-lite.chunk.js +2 -0
- package/dist/scripts/4191-9a08c4b205-lite.chunk.js.map +1 -0
- package/dist/scripts/{4358-b21c24f96a-lite.chunk.js → 4358-a1bbca8249-lite.chunk.js} +1 -1
- package/dist/scripts/{4358-b21c24f96a-lite.chunk.js.map → 4358-a1bbca8249-lite.chunk.js.map} +1 -1
- package/dist/scripts/{4400-8c36fb4ab5-lite.chunk.js → 4400-755a158a52-lite.chunk.js} +2 -2
- package/dist/scripts/4400-755a158a52-lite.chunk.js.map +1 -0
- package/dist/scripts/4806-13c9302b2c-lite.chunk.js +2 -0
- package/dist/scripts/4806-13c9302b2c-lite.chunk.js.map +1 -0
- package/dist/scripts/{5135-864055ab0b-lite.chunk.js → 5135-166ec46620-lite.chunk.js} +2 -2
- package/dist/scripts/5135-166ec46620-lite.chunk.js.map +1 -0
- package/dist/scripts/{5143-286c66de2b-lite.chunk.js → 5143-d6c4a357ea-lite.chunk.js} +2 -2
- package/dist/scripts/5143-d6c4a357ea-lite.chunk.js.map +1 -0
- package/dist/scripts/{5743-a764171a6d-lite.chunk.js → 5743-14700e4f76-lite.chunk.js} +2 -2
- package/dist/scripts/5743-14700e4f76-lite.chunk.js.map +1 -0
- package/dist/scripts/{6030-5db8cc1bc4-lite.chunk.js → 6030-c2e07df714-lite.chunk.js} +2 -2
- package/dist/scripts/6030-c2e07df714-lite.chunk.js.map +1 -0
- package/dist/scripts/{618-4334f9451b-lite.chunk.js → 618-996d8b560b-lite.chunk.js} +2 -2
- package/dist/scripts/618-996d8b560b-lite.chunk.js.map +1 -0
- package/dist/scripts/{6207-f444184025-lite.chunk.js → 6207-be843186e0-lite.chunk.js} +1 -1
- package/dist/scripts/{6207-f444184025-lite.chunk.js.map → 6207-be843186e0-lite.chunk.js.map} +1 -1
- package/dist/scripts/{6413-c4333e80d4-lite.chunk.js → 6413-caaae6a383-lite.chunk.js} +3 -3
- package/dist/scripts/{6413-c4333e80d4-lite.chunk.js.map → 6413-caaae6a383-lite.chunk.js.map} +1 -1
- package/dist/scripts/{6646-24a34f7d99-lite.chunk.js → 6646-c5775f6553-lite.chunk.js} +3 -3
- package/dist/scripts/6646-c5775f6553-lite.chunk.js.map +1 -0
- package/dist/scripts/{6909-8a45942b63-lite.chunk.js → 6909-6805b6a0d9-lite.chunk.js} +2 -2
- package/dist/scripts/6909-6805b6a0d9-lite.chunk.js.map +1 -0
- package/dist/scripts/7064-b3bafc599f-lite.chunk.js +2 -0
- package/dist/scripts/7064-b3bafc599f-lite.chunk.js.map +1 -0
- package/dist/scripts/7122-dbf374af58-lite.chunk.js +2 -0
- package/dist/scripts/7122-dbf374af58-lite.chunk.js.map +1 -0
- package/dist/scripts/7150-93a205975c-lite.chunk.js +2 -0
- package/dist/scripts/7150-93a205975c-lite.chunk.js.map +1 -0
- package/dist/scripts/{7234-85d4acaa33-lite.chunk.js → 7234-bcddfe2112-lite.chunk.js} +2 -2
- package/dist/scripts/7234-bcddfe2112-lite.chunk.js.map +1 -0
- package/dist/scripts/{7383-690bc234f1-lite.chunk.js → 7383-02d4956304-lite.chunk.js} +2 -2
- package/dist/scripts/7383-02d4956304-lite.chunk.js.map +1 -0
- package/dist/scripts/{7873-2e64f4eb37-lite.chunk.js → 7873-0ce0523a28-lite.chunk.js} +2 -2
- package/dist/scripts/{7873-2e64f4eb37-lite.chunk.js.map → 7873-0ce0523a28-lite.chunk.js.map} +1 -1
- package/dist/scripts/{8248-050265ed2d-lite.chunk.js → 8248-41dad9bf71-lite.chunk.js} +3 -3
- package/dist/scripts/8248-41dad9bf71-lite.chunk.js.map +1 -0
- package/dist/scripts/8385-6ef08fa319-lite.chunk.js +2 -0
- package/dist/scripts/8385-6ef08fa319-lite.chunk.js.map +1 -0
- package/dist/scripts/{8451-1cb649a3f3-lite.chunk.js → 8451-0103210a8f-lite.chunk.js} +2 -2
- package/dist/scripts/8451-0103210a8f-lite.chunk.js.map +1 -0
- package/dist/scripts/8630-80f676dcda-lite.chunk.js +2 -0
- package/dist/scripts/8630-80f676dcda-lite.chunk.js.map +1 -0
- package/dist/scripts/8891-5118c47b59-lite.chunk.js +2 -0
- package/dist/scripts/8891-5118c47b59-lite.chunk.js.map +1 -0
- package/dist/scripts/8982-b9e53e43ec-lite.chunk.js +2 -0
- package/dist/scripts/8982-b9e53e43ec-lite.chunk.js.map +1 -0
- package/dist/scripts/{9186-daf77d7174-lite.chunk.js → 9186-c1d2615458-lite.chunk.js} +2 -2
- package/dist/scripts/9186-c1d2615458-lite.chunk.js.map +1 -0
- package/dist/scripts/{9241-dbac9cb9f9-lite.chunk.js → 9241-2386134dd3-lite.chunk.js} +2 -2
- package/dist/scripts/9241-2386134dd3-lite.chunk.js.map +1 -0
- package/dist/scripts/{9345-30ccf524c5-lite.chunk.js → 9345-0a7f58bb53-lite.chunk.js} +3 -3
- package/dist/scripts/9345-0a7f58bb53-lite.chunk.js.map +1 -0
- package/dist/scripts/9352-d4b2dc16a8-lite.chunk.js +2 -0
- package/dist/scripts/9352-d4b2dc16a8-lite.chunk.js.map +1 -0
- package/dist/scripts/{9503-275c13891d-lite.chunk.js → 9503-715c46ecc1-lite.chunk.js} +2 -2
- package/dist/scripts/9503-715c46ecc1-lite.chunk.js.map +1 -0
- package/dist/scripts/9630-ca2a850260-lite.chunk.js +2 -0
- package/dist/scripts/9630-ca2a850260-lite.chunk.js.map +1 -0
- package/dist/scripts/{9767-d69fdc31b0-lite.chunk.js → 9767-1b583ceb6c-lite.chunk.js} +2 -2
- package/dist/scripts/9767-1b583ceb6c-lite.chunk.js.map +1 -0
- package/dist/scripts/9894-7c119a8fe3-lite.chunk.js +2 -0
- package/dist/scripts/9894-7c119a8fe3-lite.chunk.js.map +1 -0
- package/dist/scripts/bundle-5b65703152.min.js +3 -0
- package/dist/scripts/{bundle-0075afb6af.min.js.map → bundle-5b65703152.min.js.map} +1 -1
- package/package.json +1 -1
- package/dist/scripts/1362-061cd588c0-lite.chunk.js.map +0 -1
- package/dist/scripts/1367-12750422b0-lite.chunk.js.map +0 -1
- package/dist/scripts/1735-c0f3f1238a-lite.chunk.js.map +0 -1
- package/dist/scripts/3677-20958f59d3-lite.chunk.js +0 -2
- package/dist/scripts/3677-20958f59d3-lite.chunk.js.map +0 -1
- package/dist/scripts/3823-e38a508a3c-lite.chunk.js.map +0 -1
- package/dist/scripts/3915-a1f15d687a-lite.chunk.js +0 -2
- package/dist/scripts/3915-a1f15d687a-lite.chunk.js.map +0 -1
- package/dist/scripts/3978-09fb1f250e-lite.chunk.js.map +0 -1
- package/dist/scripts/4014-4225ce1eb6-lite.chunk.js.map +0 -1
- package/dist/scripts/4061-525ef00f69-lite.chunk.js.map +0 -1
- package/dist/scripts/4191-7612e1713c-lite.chunk.js +0 -2
- package/dist/scripts/4191-7612e1713c-lite.chunk.js.map +0 -1
- package/dist/scripts/4400-8c36fb4ab5-lite.chunk.js.map +0 -1
- package/dist/scripts/4499-1365934bf2-lite.chunk.js +0 -2
- package/dist/scripts/4499-1365934bf2-lite.chunk.js.map +0 -1
- package/dist/scripts/4806-384760d9c9-lite.chunk.js +0 -2
- package/dist/scripts/4806-384760d9c9-lite.chunk.js.map +0 -1
- package/dist/scripts/5135-864055ab0b-lite.chunk.js.map +0 -1
- package/dist/scripts/5143-286c66de2b-lite.chunk.js.map +0 -1
- package/dist/scripts/5743-a764171a6d-lite.chunk.js.map +0 -1
- package/dist/scripts/6030-5db8cc1bc4-lite.chunk.js.map +0 -1
- package/dist/scripts/618-4334f9451b-lite.chunk.js.map +0 -1
- package/dist/scripts/6646-24a34f7d99-lite.chunk.js.map +0 -1
- package/dist/scripts/6909-8a45942b63-lite.chunk.js.map +0 -1
- package/dist/scripts/7064-3ccf1b82d1-lite.chunk.js +0 -2
- package/dist/scripts/7064-3ccf1b82d1-lite.chunk.js.map +0 -1
- package/dist/scripts/7122-352fdd3516-lite.chunk.js +0 -2
- package/dist/scripts/7122-352fdd3516-lite.chunk.js.map +0 -1
- package/dist/scripts/7234-85d4acaa33-lite.chunk.js.map +0 -1
- package/dist/scripts/7383-690bc234f1-lite.chunk.js.map +0 -1
- package/dist/scripts/8248-050265ed2d-lite.chunk.js.map +0 -1
- package/dist/scripts/8385-083e882d77-lite.chunk.js +0 -2
- package/dist/scripts/8385-083e882d77-lite.chunk.js.map +0 -1
- package/dist/scripts/8451-1cb649a3f3-lite.chunk.js.map +0 -1
- package/dist/scripts/8630-0945271ea2-lite.chunk.js +0 -2
- package/dist/scripts/8630-0945271ea2-lite.chunk.js.map +0 -1
- package/dist/scripts/8891-393bb5bdaf-lite.chunk.js +0 -2
- package/dist/scripts/8891-393bb5bdaf-lite.chunk.js.map +0 -1
- package/dist/scripts/8982-8c21fab48a-lite.chunk.js +0 -2
- package/dist/scripts/8982-8c21fab48a-lite.chunk.js.map +0 -1
- package/dist/scripts/9186-daf77d7174-lite.chunk.js.map +0 -1
- package/dist/scripts/9241-dbac9cb9f9-lite.chunk.js.map +0 -1
- package/dist/scripts/9345-30ccf524c5-lite.chunk.js.map +0 -1
- package/dist/scripts/9352-04db4c533d-lite.chunk.js +0 -2
- package/dist/scripts/9352-04db4c533d-lite.chunk.js.map +0 -1
- package/dist/scripts/9503-275c13891d-lite.chunk.js.map +0 -1
- package/dist/scripts/9630-285237c980-lite.chunk.js +0 -2
- package/dist/scripts/9630-285237c980-lite.chunk.js.map +0 -1
- package/dist/scripts/9767-d69fdc31b0-lite.chunk.js.map +0 -1
- package/dist/scripts/9894-10943e41f7-lite.chunk.js +0 -2
- package/dist/scripts/9894-10943e41f7-lite.chunk.js.map +0 -1
- package/dist/scripts/bundle-0075afb6af.min.js +0 -3
- /package/dist/scripts/{1362-061cd588c0-lite.chunk.js.LICENSE.txt → 1362-56810ef4c8-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{1735-c0f3f1238a-lite.chunk.js.LICENSE.txt → 1735-e4cdbc46ed-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{4014-4225ce1eb6-lite.chunk.js.LICENSE.txt → 4014-3eccce2f89-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{4050-cf35c4ec45-lite.chunk.js.LICENSE.txt → 4050-ffe5b6ae6d-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{6413-c4333e80d4-lite.chunk.js.LICENSE.txt → 6413-caaae6a383-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{6646-24a34f7d99-lite.chunk.js.LICENSE.txt → 6646-c5775f6553-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{8248-050265ed2d-lite.chunk.js.LICENSE.txt → 8248-41dad9bf71-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9345-30ccf524c5-lite.chunk.js.LICENSE.txt → 9345-0a7f58bb53-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{bundle-0075afb6af.min.js.LICENSE.txt → bundle-5b65703152.min.js.LICENSE.txt} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scripts/7383-02d4956304-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/components/pill-tab-selector/PillTabSelector.tsx","file:///app/packages/libs/shared/src/enums/SupportArticle.ts","file:///app/packages/projects/lite/src/apps/settings/components/restricted-videos-tabs/RestrictedVideosTabs.tsx","file:///app/packages/projects/lite/src/apps/settings/components/settings-layout/SettingsLayout.tsx","file:///app/packages/projects/lite/src/apps/settings/views/video-restrictions/VideoRestrictionsEmptyState.tsx","file:///app/packages/projects/lite/src/apps/settings/views/video-restrictions/VideoRestrictionsView.tsx","file:///app/packages/projects/lite/src/shared/flight-requests/RestrictionRequests.ts","file:///app/packages/projects/lite/src/shared/hooks/useCommonVideoProps.ts","file:///app/packages/libs/shared/src/components/pill-tab-selector/pill-tab-selector.scss"],"sourcesContent":["import React from 'react';\n\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';\n\nimport { SvgContainer } from '../svg-container/SvgContainer';\n\nimport styles from './pill-tab-selector.scss';\n\ninterface TabContentsProps {\n tab: PillTab;\n}\n\nfunction TabContents(props: TabContentsProps): JSX.Element {\n return (\n <>\n {!!props.tab.svgName && (\n <div className={props.tab.name ? 'pe-1' : ''}>\n <SvgContainer svgName={props.tab.svgName} />\n </div>\n )}\n\n {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 svgName?: string;\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\ninterface PillTabSelectorProps {\n tabs: PillTab[];\n containerRef?: (el: HTMLElement) => void;\n listClassName?: string;\n className?: string;\n borderRadius?: 'sm' | 'lg'\n}\n\nPillTabSelector.defaultProps = {\n borderRadius: 'lg'\n};\n\nexport function PillTabSelector(props: PillTabSelectorProps): JSX.Element {\n function onSelectTab(tab: PillTab): void {\n if (tab.active || !tab.onSelect)\n return;\n\n tab.onSelect();\n\n if (tab.analyticsData && tab.analyticsOptions)\n AnalyticsHelper.logUserAction(tab.analyticsData, tab.analyticsOptions);\n }\n\n return (\n <nav className={props.className ?? ''} ref={props.containerRef}>\n <ul className={`\n list-unstyled d-inline-block m-0 ${styles.pillTabSelector}\n ${props.borderRadius ? styles.radiusSmall : ''}\n ${props.listClassName}\n `}>\n {props.tabs.map((tab, index) => {\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} />\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} />\n </DivButton>\n )}\n </li>\n );\n })}\n </ul>\n </nav>\n );\n}\n","// Article name mapped to article ID on support site. Used by `ArticleHelper`\n\nexport enum OnlineSupportArticle {\n AddToPlaylist = '115005679748',\n EditSsoAccounts = '8202508040345',\n\n // LE\n LibraryEditor = '360001974533',\n VideoAccess = '360000153947',\n AddFromOnline = '360011718234',\n UploadToLibraryEditor = '360012069334',\n PBTErrorCodes = '360012421153',\n ManuelReview = '360020004534',\n LibraryReview = '360000163788',\n}\n\nexport enum LiteSupportArticle {\n Integrations = '4407268725529',\n Classrooms = '4405362551833',\n MakeInteractive = '4405370510873',\n EditSsoAccounts = '8202605666073',\n UploadToLibraryEditor = '10672936659865',\n AddFromLite = '10671345281561',\n ManageSsoYearGroups = '14691130889241',\n ContentReview = '18525199576601',\n ContentPermissions = '14692125209497',\n AccessSettings = '27927466562201',\n ContentGuidelines = '24133696186009',\n FoxtelFaq = '24133519542169',\n ViviIntegration = '23826297956377',\n AppleTvIntegration = '25832373739929',\n RssFeed = '32567445635097',\n ManageGroupPermissions = '35407217335705'\n}\n","import React from 'react';\n\nimport { AppLinkHelper } from 'libs/common/backbone/core';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { EntityType, LocationContext, UserAction } from 'libs/analytics/interfaces';\n\nimport { PillTabSelector } from 'libs/shared/components/pill-tab-selector/PillTabSelector';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nconst namespace = 'settings.restrictedVideosTabs';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst APPLINKS = {\n restrictedVideos: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.VIDEO_RESTRICTIONS\n },\n contentReview: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.CONTENT_REVIEW\n },\n contentReviewSettings: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.CONTENT_REVIEW_SETTINGS\n }\n};\n\ninterface RestrictionTabsProps {\n active: 'restricted-videos' | 'content-review' | 'content-review-settings'\n}\n\nexport function RestrictionTabs(props: RestrictionTabsProps): JSX.Element {\n return (\n <div className='mb-3'>\n <PillTabSelector\n tabs={[{\n name: getPhrase('restrictedVideos'),\n appLink: APPLINKS.restrictedVideos,\n active: props.active === 'restricted-videos',\n analyticsData: {\n name: getPhrase('restrictedVideos'),\n url: AppLinkHelper.getHref(APPLINKS.restrictedVideos)\n },\n analyticsOptions: {\n actionType: UserAction.Click,\n entity: EntityType.Url,\n location: LocationContext.MagicTabs\n }\n }, {\n name: getPhrase('contentReview'),\n appLink: APPLINKS.contentReview,\n active: props.active === 'content-review',\n analyticsData: {\n name: LanguageService.getPhrase(namespace, 'contentReview'),\n url: AppLinkHelper.getHref(APPLINKS.contentReview)\n },\n analyticsOptions: {\n actionType: UserAction.Click,\n entity: EntityType.Url,\n location: LocationContext.MagicTabs\n }\n }, {\n name: getPhrase('contentReviewSettings'),\n appLink: APPLINKS.contentReviewSettings,\n active: props.active === 'content-review-settings',\n analyticsData: {\n name: LanguageService.getPhrase(namespace, 'contentReviewSettings'),\n url: AppLinkHelper.getHref(APPLINKS.contentReviewSettings)\n },\n analyticsOptions: {\n actionType: UserAction.Click,\n entity: EntityType.Url,\n location: LocationContext.MagicTabs\n }\n }]}\n />\n </div>\n );\n}","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { Breadcrumbs } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { useGetSettingsGroups } from 'apps/settings/hooks/useGetSettingsGroups';\n\nconst namespace = 'settings.settingsLayout';\n\n/**\n * Checks if the current user has permission to access the settings module\n */\nexport const useCanAccessSettings = (requiredPermissions: PermissionName | PermissionName[]): boolean => {\n const { hasPermissions } = usePermissions();\n const settingsGroups = useGetSettingsGroups();\n\n /**\n * TODO: Update all settings pages to pasas required permissions, because checking the \n * `useGetSettingsGroups()` values clearly doesnt work for settings pages with multiple\n * applinks inside of them. - Sha\n */\n if (requiredPermissions)\n return hasPermissions(requiredPermissions);\n\n const currentRoute = Core.AppLinkHelper.getCurrentAppLink();\n\n /**\n * Allows us to have popups sitting in other locations be used\n * by our settings pages. For example the manage video access popup\n * in the \"videos with restricted access\" page - Sha\n */\n if (currentRoute.application !== AppChannels.SETTINGS)\n return true;\n\n return settingsGroups.some(group => {\n return group.modules.some(settingsModule => {\n if ('appLink' in settingsModule) {\n return settingsModule.appLink.action === currentRoute.action;\n }\n\n return false;\n });\n });\n};\n\ninterface SettingsLayoutProps {\n heading: string;\n breadcrumbs: string[];\n description?: string;\n requiredPermissions?: PermissionName | PermissionName[];\n headingButton?: () => JSX.Element;\n}\n\nexport function SettingsLayout(props: React.PropsWithChildren<SettingsLayoutProps>): JSX.Element {\n const canAccess = useCanAccessSettings(props.requiredPermissions);\n\n React.useEffect(() => {\n if (!canAccess) {\n Core.AppLinkHelper.trigger({\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }, { replace: true });\n }\n }, [canAccess]);\n\n if (!canAccess)\n return <></>;\n\n const breadcrumbs = props.breadcrumbs.map((name, i) => ({\n name,\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n },\n active: i === props.breadcrumbs.length - 1\n }));\n\n return (\n <div className='px-3'>\n <div className='d-flex align-items-center justify-content-between'>\n <h1 className='h2'>{props.heading}</h1>\n {props.headingButton?.()}\n </div>\n <div className='pb-3'>\n <Breadcrumbs\n breadcrumbs={[\n {\n name: LanguageService.getPhrase(namespace, 'settingsBreadcrumb'),\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }\n },\n ...breadcrumbs\n ]}\n />\n </div>\n {props.description &&\n <>\n <p>{props.description}</p>\n <hr />\n </>\n }\n\n {props.children}\n </div>\n );\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { EmptyState } from 'libs/shared/components/empty-states/EmptyState';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { LiteSupportArticle } from 'libs/shared/enums/SupportArticle';\nimport { ArticleHelper } from 'libs/shared/utils/ArticleHelper';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nconst namespace = 'settings.videoRestrictions';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport function VideoRestrictionsEmptyState(): JSX.Element {\n const href = ArticleHelper.getLiteArticle(LiteSupportArticle.ContentReview);\n\n return (\n <EmptyState>\n <EmptyState.Image src={ImageUrls.EmptyStates.ContentReview.RESTRICTED_VIDEOS} />\n <EmptyState.Heading><Text namespace={namespace} phrase='emptyHeading' /></EmptyState.Heading>\n <EmptyState.Cta\n href={href}\n text={getPhrase('emptyCta')}\n className='btn btn-link info-link'\n />\n </EmptyState>\n );\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\n\nimport { LocationContext, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\n\nimport { ActionOptions } from 'libs/shared/components/actions/Actions';\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Pagination } from 'libs/shared/components/pagination/Pagination';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { PartialVideoList } from 'libs/shared/components/video-list/partial-loading/PartialVideoList';\nimport { VideoList } from 'libs/shared/components/video-list/VideoList';\nimport { VideoActionsContext, VideoActionsOptions } from 'libs/shared/context/VideoActionsContext';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { RestrictionType } from 'libs/shared/enums/RestrictionType';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { VideoTypes, VideoTypesCollection } from 'libs/shared/interfaces';\nimport { RestrictionHelper } from 'libs/shared/utils/RestrictionHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\nimport { RestrictionRequests } from 'shared/flight-requests/RestrictionRequests';\nimport { useCommonVideoProps } from 'shared/hooks/useCommonVideoProps';\nimport { InteractiveHelpers } from 'shared/utils/InteractiveHelper';\nimport { VideoAppLinkHelper } from 'shared/utils/VideoAppLinkHelper';\n\nimport { RestrictionTabs } from 'apps/settings/components/restricted-videos-tabs/RestrictedVideosTabs';\nimport { SettingsLayout } from 'apps/settings/components/settings-layout/SettingsLayout';\nimport { VideoRestrictionsEmptyState } from 'apps/settings/views/video-restrictions/VideoRestrictionsEmptyState';\n\nconst namespace = 'settings.videoRestrictions';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst ContentPermissionAppLink = {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.CONTENT_PERMISSIONS\n};\n\ninterface VideoRestrictionsViewProps {\n cursor?: string;\n}\n\nexport function VideoRestrictionsView(props: VideoRestrictionsViewProps): JSX.Element {\n useSetPageMetadata({ title: getPhrase('pageTitle') });\n\n const { commonVideoProps } = useCommonVideoProps({ locationContext: LocationContext.VideoThumbnail });\n const { hasPermissions } = usePermissions();\n\n const videos = Flight.useBasicFetch<VideoTypesCollection>(\n RestrictionRequests.getRestrictedObjects([RestrictionType.User], props.cursor)\n );\n\n function getVideoActions(video: VideoTypes, options: VideoActionsOptions): ActionOptions[] {\n return [{\n order: 1,\n label: getPhrase('manageVideoAccess'),\n button: true,\n className: 'btn btn-outline-dark text-nowrap',\n appLink: {\n application: AppChannels.DEFAULT,\n action: Actions.Default.MANAGE_ACCCESS,\n params: {\n objectId: video.id,\n objectTypeId: video.typeId\n }\n },\n analyticsOptions: {\n ...options.analyticsOptions,\n actionType: UserAction.SetAccess,\n workflowPhase: WorkflowPhase.Start\n },\n analyticsData: options.analyticsData\n }];\n }\n\n return (\n <SettingsLayout\n heading={getPhrase('heading')}\n breadcrumbs={[getPhrase('breadcrumb')]}\n requiredPermissions={PermissionName.ManageVideoAccess}\n >\n <RestrictionTabs active='restricted-videos' />\n <div className='d-flex justify-content-between align-items-center'>\n <p className='mb-0'>\n <Text namespace={namespace} phrase='description'/>\n \n <AppLink appLink={ContentPermissionAppLink} className='info-link'>\n <Text namespace={namespace} phrase='contentPermissions'/>\n </AppLink>\n </p>\n </div>\n <hr />\n {!videos.hasCompleted &&\n <PartialVideoList />\n }\n\n {videos.hasCompleted && !videos.data?.data?.length &&\n <VideoRestrictionsEmptyState />\n }\n\n {!!videos.data?.data?.length &&\n <>\n <VideoActionsContext.Provider value={{ getVideoActions }}>\n <VideoList\n videos={videos.data.data.filter(v =>\n !!RestrictionHelper.getRestrictionByType(v, RestrictionType.User))}\n getVideoAppLink={VideoAppLinkHelper.getAppLink}\n hasPermissions={hasPermissions}\n // we want to show rating badge not year level badge all the time\n presentationAudiences={[]}\n getPreviewQuestionsAppLink={interactive => InteractiveHelpers.getPreviewQuestionsAppLink(interactive)}\n commonVideoProps={commonVideoProps}\n />\n </VideoActionsContext.Provider>\n {videos.data.pagination?.cursors &&\n <div className='clearfix'>\n <Pagination\n cursors={videos.data.pagination.cursors}\n appLink={{\n application: AppChannels.SETTINGS,\n action: Actions.Settings.VIDEO_RESTRICTIONS\n }}\n buttonVariant='outline-dark'\n className='py-2 float-end'\n />\n </div>\n }\n </>\n }\n </SettingsLayout>\n );\n}","import { HttpVerbs } from 'libs/common/backbone/enums/HttpVerbs';\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\nimport { Flight } from 'libs/common/flight';\n\nimport { SharedWithStatements } from 'libs/shared/constants/WithStatements';\nimport { RestrictionType } from 'libs/shared/enums/RestrictionType';\n\nimport { AddRestrictionRequest } from 'shared/interfaces/requests/AddRestrictionRequest';\n\nexport const RestrictionRequests = {\n getRestrictions(id: string): Flight.Request {\n return {\n key: `restrictions:${id}`,\n url: UrlHelper.urlBuilder(`{gateway}/v1/objects/restrictions`, { id })\n };\n },\n\n addRestriction(data: AddRestrictionRequest): Flight.Request {\n return {\n type: HttpVerbs.POST,\n key: `restrictions:${data.objectTypeId}:${data.objectId}:add`,\n url: `{gateway}/v1/restrictions`,\n data: [data],\n invalidationKeys: ['restrictions']\n };\n },\n\n\n deleteRestrictions(objectId: string): Flight.Request {\n return {\n url: UrlHelper.urlBuilder('{gateway}/v1/restrictions', { objectId }),\n key: 'restrictions:delete',\n type: HttpVerbs.DELETE,\n invalidationKeys: ['restrictions']\n };\n },\n\n\n getRestrictedObjects(\n type: RestrictionType[],\n cursor?: string\n ): Flight.Request {\n const params: any = {\n 'type': type,\n 'query.video': SharedWithStatements.VIDEO_COLLECTION,\n 'query.interactive': SharedWithStatements.INTERACTIVE_COLLECTION,\n 'query.clip': SharedWithStatements.CLIP_COLLECTION\n };\n\n if (cursor)\n params.cursor = cursor;\n\n return {\n url: UrlHelper.urlBuilder('{gateway}/v1/restrictions/objects', params),\n key: `restrictions:objects:${type.sort().join(',')}:${cursor}`\n };\n },\n\n approveAll(): Flight.Request {\n return {\n url: '{gateway}/v1/library-reviews/restrictions',\n key: 'restrictions:approve:all',\n type: HttpVerbs.DELETE\n };\n }\n};","import { Core } from 'libs/common/backbone/index';\nimport { Flight } from 'libs/common/react/index';\n\nimport { LocationContext } from 'libs/analytics/interfaces';\n\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { CustomerRequests } from 'libs/shared/flight-requests/CustomerRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\nimport { useSettings } from 'libs/shared/hooks/useSettings';\nimport { Config, CurrentUser, VideoTypes, YearGroup } from 'libs/shared/interfaces';\nimport { CommonVideoProps } from 'libs/shared/interfaces/CommonVideoProps';\n\nimport { VideoAppLinkHelper } from 'shared/utils/VideoAppLinkHelper';\n\nimport { SeriesAppLinkHelper } from 'apps/series/SeriesAppLinkHelper';\n\nimport { usePluginHelper } from './use-plugin-helper/usePluginHelper';\nimport { useLiteFavourites } from './useLiteFavourites';\n\ninterface UseCommonVideoPropsResult {\n hasCommonVideoPropsCompleted: boolean;\n commonVideoProps: CommonVideoProps;\n}\n\ninterface UseCommonVideoPropsOptions {\n locationContext: LocationContext,\n mtv?: boolean;\n flightNamespace?: string;\n sharedPlaylist?: boolean;\n}\n\nexport function useCommonVideoProps(options: UseCommonVideoPropsOptions): UseCommonVideoPropsResult {\n const { locationContext, mtv, flightNamespace, sharedPlaylist } = options || {};\n\n const { isPlugin, params } = usePluginHelper();\n const { setFavourite, canFavourite } = useLiteFavourites(locationContext, flightNamespace);\n const { hasTopicDirectories, isLoadingSettings } = useSettings(null);\n const { hasPermissions, isLoaded: hasLoadedPermissions } = usePermissions();\n const hasStudentExperience = hasPermissions(PermissionName.StudentExperience);\n\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const yearGroups = Flight.useBasicFetch<YearGroup[]>(\n currentUser.data?.isAuthenticated && CustomerRequests.yearGroups(currentUser.data.customerId)\n );\n\n function getSubTextAppLink(video: VideoTypes): Core.AppLink {\n if (!('series' in video))\n return null;\n\n /**\n * We do not allow navigating to series on shared playlists when the user is not signed in\n * because most series are customer created and will be empty for public users\n * \n * We do not have to do this for shared series, because all the series links are self referencing\n * - Sha\n */\n if (sharedPlaylist && !currentUser.data?.isAuthenticated)\n return null;\n \n return SeriesAppLinkHelper.getSeriesAppLink(video.series, { mtv });\n }\n\n const hasCommonVideoPropsCompleted = (\n !isLoadingSettings &&\n hasLoadedPermissions &&\n config.hasCompleted &&\n currentUser.hasCompleted &&\n (!currentUser.data?.isAuthenticated || yearGroups.hasCompleted)\n );\n\n return {\n hasCommonVideoPropsCompleted,\n commonVideoProps: {\n subTextType: 'series',\n getSubTextAppLink,\n isPlugin,\n isPluginPopup: !!params?.popup,\n canFavourite,\n setFavourite,\n imageCdnUrl: config.data?.imageCdnUrl,\n yearGroups: yearGroups.data,\n getClassroomGuideAppLink: VideoAppLinkHelper.getClassroomGuideAppLink,\n getInteractiveGuidanceAppLink: VideoAppLinkHelper.getInteractiveGuidanceAppLink,\n getResourceGuidanceAppLink: VideoAppLinkHelper.getResourceGuidanceAppLink,\n showNewVideoIndicator: hasTopicDirectories,\n companyLogoFallbackUrl: null,\n hasStudentExperience\n }\n };\n}","// extracted by mini-css-extract-plugin\nexport default {\"pillTabSelector\":\"Hdi6o\",\"tab\":\"RvNxr\",\"minWidth\":\"GHSz9\",\"radiusSmall\":\"VhJJa\",\"tabLink\":\"WFyvo\"};"],"names":["TabContents","props","tab","svgName","className","name","count","type","data","PillTabSelector","ref","containerRef","borderRadius","listClassName","tabs","map","index","active","key","appLink","analyticsData","analyticsOptions","onClick","onSelect","onSelectTab","defaultProps","OnlineSupportArticle","LiteSupportArticle","namespace","getPhrase","APPLINKS","restrictedVideos","application","action","contentReview","contentReviewSettings","RestrictionTabs","url","actionType","entity","location","useCanAccessSettings","requiredPermissions","hasPermissions","settingsGroups","currentRoute","some","group","modules","settingsModule","SettingsLayout","canAccess","replace","breadcrumbs","i","length","heading","headingButton","description","children","LanguageService","VideoRestrictionsEmptyState","href","ArticleHelper","EmptyState","src","ImageUrls","Text","phrase","text","ContentPermissionAppLink","VideoRestrictionsView","useSetPageMetadata","title","commonVideoProps","useCommonVideoProps","locationContext","usePermissions","videos","RestrictionRequests","RestrictionType","cursor","PermissionName","AppLink","hasCompleted","PartialVideoList","VideoActionsContext","value","getVideoActions","video","options","order","label","button","params","objectId","id","objectTypeId","typeId","workflowPhase","VideoList","filter","v","RestrictionHelper","getVideoAppLink","VideoAppLinkHelper","presentationAudiences","getPreviewQuestionsAppLink","interactive","InteractiveHelper","pagination","cursors","Pagination","buttonVariant","getRestrictions","addRestriction","invalidationKeys","deleteRestrictions","getRestrictedObjects","sort","join","approveAll","mtv","flightNamespace","sharedPlaylist","isPlugin","u","setFavourite","canFavourite","hasTopicDirectories","isLoadingSettings","hasLoadedPermissions","isLoaded","hasStudentExperience","config","currentUser","yearGroups","isAuthenticated","customerId","hasCommonVideoPropsCompleted","subTextType","getSubTextAppLink","series","isPluginPopup","popup","imageCdnUrl","getClassroomGuideAppLink","getInteractiveGuidanceAppLink","getResourceGuidanceAppLink","showNewVideoIndicator","companyLogoFallbackUrl"],"sourceRoot":""}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[7873],{41661:(e,t,n)=>{var r;n.d(t,{D:()=>r}),function(e){e.GoogleClassroom="google-classroom",e.MicrosoftTeams="microsoft-teams",e.Vivi="vivi",e.AppleTv="apply-tv"}(r||(r={}))},99705:(e,t,n)=>{var r,a;n.d(t,{b:()=>a}),function(e){e.AddToPlaylist="115005679748",e.EditSsoAccounts="8202508040345",e.LibraryEditor="360001974533",e.VideoAccess="360000153947",e.AddFromOnline="360011718234",e.UploadToLibraryEditor="360012069334",e.PBTErrorCodes="360012421153",e.ManuelReview="360020004534",e.LibraryReview="360000163788"}(r||(r={})),function(e){e.Integrations="4407268725529",e.Classrooms="4405362551833",e.MakeInteractive="4405370510873",e.EditSsoAccounts="8202605666073",e.UploadToLibraryEditor="10672936659865",e.AddFromLite="10671345281561",e.ManageSsoYearGroups="14691130889241",e.ContentReview="18525199576601",e.ContentPermissions="14692125209497",e.AccessSettings="27927466562201",e.ContentGuidelines="24133696186009",e.FoxtelFaq="24133519542169",e.ViviIntegration="23826297956377",e.AppleTvIntegration="25832373739929",e.RssFeed="32567445635097",e.ManageGroupPermissions="35407217335705"}(a||(a={}))},40841:(e,t,n)=>{n.d(t,{_:()=>l});var r=n(23481),a=n(41661),o=n(65728),i=r.T.encloseNamespace("shared.shared-utils"),l={getShareIntegrations:function(e,t){return[{id:a.D.GoogleClassroom,name:i("googleClassroom"),enabled:e,settingName:o.E.ShareToGoogleClassroom},{id:a.D.MicrosoftTeams,name:i("msftTeams"),enabled:t,settingName:o.E.ShareToMicrosoftTeams}]}}},81803:(e,t,n)=>{n.d(t,{d:()=>p});var r=n(32735),a=n(81886),o=n(23481),i=n(49935),l=n(22902),c=n(14070),s=n(97291),u=n(96368);function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var d="settings.settingsLayout",g=function(e){var t=(0,l.T)().hasPermissions,n=(0,u.e)();if(e)return t(e);var r=a.Q.C$.getCurrentAppLink();return r.application!==s.O.SETTINGS||n.some((function(e){return e.modules.some((function(e){return"appLink"in e&&e.appLink.action===r.action}))}))};function p(e){var t,n=g(e.requiredPermissions);if(r.useEffect((function(){n||a.Q.C$.trigger({application:s.O.SETTINGS,action:c.e.Settings.HOME},{replace:!0})}),[n]),!n)return r.createElement(r.Fragment,null);var l,u=e.breadcrumbs.map((function(t,n){return{name:t,appLink:{application:s.O.SETTINGS,action:c.e.Settings.HOME},active:n===e.breadcrumbs.length-1}}));return r.createElement("div",{className:"px-3"},r.createElement("div",{className:"d-flex align-items-center justify-content-between"},r.createElement("h1",{className:"h2"},e.heading),null===(t=e.headingButton)||void 0===t?void 0:t.call(e)),r.createElement("div",{className:"pb-3"},r.createElement(i.Oo,{breadcrumbs:[{name:o.T.getPhrase(d,"settingsBreadcrumb"),appLink:{application:s.O.SETTINGS,action:c.e.Settings.HOME}}].concat((l=u,function(e){if(Array.isArray(e))return m(e)}(l)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(l)||function(e,t){if(e){if("string"==typeof e)return m(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?m(e,t):void 0}}(l)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()))})),e.description&&r.createElement(r.Fragment,null,r.createElement("p",null,e.description),r.createElement("hr",null)),e.children)}},57873:(e,t,n)=>{n.r(t),n.d(t,{IntegrationSettingsView:()=>K});var r=n(32735),a=n(23481),o=n(20354),i=n(65858),l=n(41661),c=n(33514),s=n(77963),u=n(65728),m=n(39151),d=n(2744),g=n(31949),p=n(69883),f=n(79612),v=n(37802),b=n(40841),y=n(14070),E=n(97291),S=n(81886),T=n(11607),I=n(83914),h=n(83523),C=n(99705),N=n(12778),A=n(35223),k=n(99742);const w={integrationIcon:"bqV8U",googleClassroomIconContainer:"Rl7gP",viviIconContainer:"qCgv4",appleTvIconContainer:"ASg8C",headerContainer:"GmPjw",statusIndicator:"_2Tuy",connectedStatusIndicator:"Q9uug",notConnectedStatusIndicator:"kn43h",reconnectStatusIndicator:"Kx6Vr"};function L(e){return L="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},L(e)}function j(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function O(e,t,n){return(t=function(e){var t=function(e){if("object"!=L(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=L(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==L(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var P=a.T.encloseNamespace("settings.integrationToggle"),M=O(O(O(O({},l.D.GoogleClassroom,k.W.Integrations.GoogleClassroom),l.D.MicrosoftTeams,k.W.Integrations.MicrosoftTeams),l.D.Vivi,k.W.Integrations.Vivi),l.D.AppleTv,k.W.Integrations.AppleTV),V=O(O(O({},l.D.GoogleClassroom,w.googleClassroomIconContainer),l.D.Vivi,w.viviIconContainer),l.D.AppleTv,w.appleTvIconContainer),x=O(O(O(O({},l.D.GoogleClassroom,C.b.Integrations),l.D.MicrosoftTeams,C.b.Integrations),l.D.Vivi,C.b.ViviIntegration),l.D.AppleTv,C.b.AppleTvIntegration);function D(e){var t,n,a,o=(n=r.useState(e.integration.enabled),a=2,function(e){if(Array.isArray(e))return e}(n)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,l=[],c=!0,s=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=o.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(e){s=!0,a=e}finally{try{if(!c&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(s)throw a}}return l}}(n,a)||function(e,t){if(e){if("string"==typeof e)return j(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?j(e,t):void 0}}(n,a)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),i=o[0],l=o[1];r.useEffect((function(){l(e.integration.enabled)}),[e.updateError]);var s=M[e.integration.id],u=null!==(t=V[e.integration.id])&&void 0!==t?t:"",m=e.integration.status,d=m&&m!==c.I.Connected;return r.createElement("div",{className:"border rounded-3"},r.createElement("div",{className:"position-relative d-flex align-items-center justify-content-center py-4 rounded-top ".concat(u)},r.createElement(R,{status:m,configureTooltip:e.integration.configureTooltip,configureAppLink:e.integration.configureAppLink}),r.createElement("img",{src:s,className:w.integrationIcon})),r.createElement("div",{className:"border-top p-2"},r.createElement("div",{className:"d-flex align-items-center justify-content-between"},r.createElement("span",{className:"me-2"},e.integration.name),r.createElement(h.Z,{onClick:function(){e.onToggleIntegration(e.integration,!i),l(!i)},on:i,disabled:d})),r.createElement("div",null,r.createElement("a",{href:N.o.getLiteArticle(x[e.integration.id]),target:"_blank",className:"text-info"},P("learnMore")))))}var G=O(O(O({},c.I.Connected,w.connectedStatusIndicator),c.I.NotConnected,w.notConnectedStatusIndicator),c.I.Reconnect,w.reconnectStatusIndicator),F=O(O(O({},c.I.Connected,P("connectedStatusLabel")),c.I.NotConnected,P("notConnectedStatusLabel")),c.I.Reconnect,P("reconnectStatusLabel"));function R(e){var t,n,a=e.status,o=e.configureTooltip,i=e.configureAppLink,l=null!==(t=G[a])&&void 0!==t?t:"",c=null!==(n=F[a])&&void 0!==n?n:"";return r.createElement("div",{className:"d-flex justify-content-between align-items-top position-absolute ps-2 pt-1 pe-1 ".concat(w.headerContainer)},r.createElement("div",{className:"d-flex flex-row align-items-center"},l&&r.createElement("span",{className:"inline-block ".concat(w.statusIndicator," ").concat(l)}),c&&r.createElement("span",{className:"ms-1 text-white"},c)),i&&r.createElement(T.L,{className:"cursor-pointer text-white",onClick:function(e){e.stopPropagation(),e.preventDefault(),S.Q.C$.trigger(i)}},r.createElement(I.x,{size:I.S.Medium,svgName:A.vn.Cog,title:o,tooltipPlacement:"top",tooltipSpanHack:!0})))}var _=n(81803);const U={partialToggle:"p5int"};function B(e){return r.createElement("div",{className:e.className},r.createElement("div",{className:"border rounded-3 partial-loading-background ".concat(U.partialToggle)}," "))}function H(e){return r.createElement(r.Fragment,null,r.createElement(B,{className:e.className}),r.createElement(B,{className:e.className}))}const $={toggleContainer:"roVyL"};function q(e){return q="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},q(e)}function Q(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function W(e,t,n){return(t=function(e){var t=function(e){if("object"!=q(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=q(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==q(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Z=a.T.encloseNamespace("settings.integrationSettings"),z=W(W(W({},c.I.Connected,Z("viviConnectedStatusTooltip")),c.I.NotConnected,Z("viviNotConnectedStatusTooltip")),c.I.Reconnect,Z("viviReconnectStatusTooltip"));function K(){var e,t;(0,f.M)({title:Z("pageTitle")});var n,a,c=(n=r.useState({}),a=2,function(e){if(Array.isArray(e))return e}(n)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,l=[],c=!0,s=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=o.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(e){s=!0,a=e}finally{try{if(!c&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(s)throw a}}return l}}(n,a)||function(e,t){if(e){if("string"==typeof e)return Q(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Q(e,t):void 0}}(n,a)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),S=c[0],T=c[1],I=(0,p.Z)(),h=o.a.useBasicFetch(g.N.currentUser()),C=o.a.useBasicFetch(m.L.config()),N=o.a.useBasicFetch((null===(e=h.data)||void 0===e?void 0:e.isAuthenticated)&&d.z.getViviIntegrationStatus()),A=(0,v.r)(i.LZ.Settings),k=A.shareToGoogleClassroom,w=A.shareToMicrosoftTeams,L=A.hasEnabledAppleTvPlayback,j=A.hasEnabledViviPlayback,O=A.updateSetting,P=A.isLoadingSettings,M=b._.getShareIntegrations(k,w),V=[{id:l.D.AppleTv,name:Z("appleTv"),settingName:u.E.HasEnabledAppleTvPlayback,configureAppLink:{application:E.O.SETTINGS,action:y.e.Settings.APPLE_TV},configureTooltip:Z("appleTvTooltip"),enabled:L},{id:l.D.Vivi,name:Z("vivi"),settingName:u.E.HasEnabledViviPlayback,configureAppLink:{application:E.O.SETTINGS,action:y.e.Settings.VIVI},configureTooltip:null!==(t=z[N.data])&&void 0!==t?t:"",enabled:j,status:N.data}],x=!!h.data&&!!C.data&&N.hasCompleted&&!P,G=V.length>0;function F(e,t){var n=t?"enableIntegrationSuccess":"disableIntegrationSuccess",r=t?"enableIntegrationError":"disableIntegrationError",a={name:e.settingName,value:t,kind:s.g.Temporary};O(h.data.customerId,a,(function(){I.success(Z(n,{integrationName:e.name,escapeText:!0})),T((function(t){return Object.assign(Object.assign({},t),W({},e.name,!1))}))}),(function(){I.error(Z(r,{integrationName:e.name,escapeText:!0})),T((function(t){return Object.assign(Object.assign({},t),W({},e.name,!0))}))}))}return r.createElement(_.d,{heading:Z("integrations"),breadcrumbs:[Z("integrations")]},r.createElement("h2",{className:"h4"},Z("shareIntegrations")),r.createElement("p",{className:"mb-0"},Z("shareIntegrationsDescription")),r.createElement("div",{className:"mx-n2"},x?M.map((function(e,t){var n;return r.createElement("div",{key:t,className:"d-inline-block p-2 ".concat($.toggleContainer)},r.createElement(D,{integration:e,onToggleIntegration:F,updateError:null!==(n=S[e.name])&&void 0!==n&&n,userCountryCode:h.data.countryCode}))})):r.createElement(H,{className:"d-inline-block p-2 ".concat($.toggleContainer)})),G&&r.createElement(r.Fragment,null,r.createElement("h2",{className:"h4 mt-3"},Z("playerIntegrations")),r.createElement("p",{className:"mb-0"},Z("playerIntegrationsDescription")),r.createElement("div",{className:"mx-n2"},x?V.map((function(e,t){var n;return r.createElement("div",{key:t,className:"d-inline-block p-2 ".concat($.toggleContainer)},r.createElement(D,{integration:e,onToggleIntegration:F,updateError:null!==(n=S[e.name])&&void 0!==n&&n,userCountryCode:h.data.countryCode}))})):r.createElement(H,{className:"d-inline-block p-2 ".concat($.toggleContainer)}))))}}}]);
|
|
2
|
-
//# sourceMappingURL=7873-
|
|
1
|
+
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[7873],{41661:(e,t,n)=>{var r;n.d(t,{D:()=>r}),function(e){e.GoogleClassroom="google-classroom",e.MicrosoftTeams="microsoft-teams",e.Vivi="vivi",e.AppleTv="apply-tv"}(r||(r={}))},99705:(e,t,n)=>{var r,a;n.d(t,{b:()=>a}),function(e){e.AddToPlaylist="115005679748",e.EditSsoAccounts="8202508040345",e.LibraryEditor="360001974533",e.VideoAccess="360000153947",e.AddFromOnline="360011718234",e.UploadToLibraryEditor="360012069334",e.PBTErrorCodes="360012421153",e.ManuelReview="360020004534",e.LibraryReview="360000163788"}(r||(r={})),function(e){e.Integrations="4407268725529",e.Classrooms="4405362551833",e.MakeInteractive="4405370510873",e.EditSsoAccounts="8202605666073",e.UploadToLibraryEditor="10672936659865",e.AddFromLite="10671345281561",e.ManageSsoYearGroups="14691130889241",e.ContentReview="18525199576601",e.ContentPermissions="14692125209497",e.AccessSettings="27927466562201",e.ContentGuidelines="24133696186009",e.FoxtelFaq="24133519542169",e.ViviIntegration="23826297956377",e.AppleTvIntegration="25832373739929",e.RssFeed="32567445635097",e.ManageGroupPermissions="35407217335705"}(a||(a={}))},40841:(e,t,n)=>{n.d(t,{_:()=>l});var r=n(23481),a=n(41661),o=n(65728),i=r.T.encloseNamespace("shared.shared-utils"),l={getShareIntegrations:function(e,t){return[{id:a.D.GoogleClassroom,name:i("googleClassroom"),enabled:e,settingName:o.E.ShareToGoogleClassroom},{id:a.D.MicrosoftTeams,name:i("msftTeams"),enabled:t,settingName:o.E.ShareToMicrosoftTeams}]}}},81803:(e,t,n)=>{n.d(t,{d:()=>p});var r=n(32735),a=n(81886),o=n(23481),i=n(49935),l=n(22902),c=n(14070),s=n(97291),u=n(96368);function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var g="settings.settingsLayout",d=function(e){var t=(0,l.T)().hasPermissions,n=(0,u.e)();if(e)return t(e);var r=a.Q.C$.getCurrentAppLink();return r.application!==s.O.SETTINGS||n.some((function(e){return e.modules.some((function(e){return"appLink"in e&&e.appLink.action===r.action}))}))};function p(e){var t,n=d(e.requiredPermissions);if(r.useEffect((function(){n||a.Q.C$.trigger({application:s.O.SETTINGS,action:c.e.Settings.HOME},{replace:!0})}),[n]),!n)return r.createElement(r.Fragment,null);var l,u=e.breadcrumbs.map((function(t,n){return{name:t,appLink:{application:s.O.SETTINGS,action:c.e.Settings.HOME},active:n===e.breadcrumbs.length-1}}));return r.createElement("div",{className:"px-3"},r.createElement("div",{className:"d-flex align-items-center justify-content-between"},r.createElement("h1",{className:"h2"},e.heading),null===(t=e.headingButton)||void 0===t?void 0:t.call(e)),r.createElement("div",{className:"pb-3"},r.createElement(i.Oo,{breadcrumbs:[{name:o.T.getPhrase(g,"settingsBreadcrumb"),appLink:{application:s.O.SETTINGS,action:c.e.Settings.HOME}}].concat((l=u,function(e){if(Array.isArray(e))return m(e)}(l)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(l)||function(e,t){if(e){if("string"==typeof e)return m(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?m(e,t):void 0}}(l)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()))})),e.description&&r.createElement(r.Fragment,null,r.createElement("p",null,e.description),r.createElement("hr",null)),e.children)}},57873:(e,t,n)=>{n.r(t),n.d(t,{IntegrationSettingsView:()=>K});var r=n(32735),a=n(23481),o=n(20354),i=n(65858),l=n(41661),c=n(33514),s=n(77963),u=n(65728),m=n(39151),g=n(2744),d=n(31949),p=n(69883),f=n(79612),v=n(37802),b=n(40841),y=n(14070),E=n(97291),S=n(81886),T=n(11607),I=n(83914),h=n(83523),C=n(99705),N=n(12778),A=n(35223),k=n(99742);const w={integrationIcon:"bqV8U",googleClassroomIconContainer:"Rl7gP",viviIconContainer:"qCgv4",appleTvIconContainer:"ASg8C",headerContainer:"GmPjw",statusIndicator:"_2Tuy",connectedStatusIndicator:"Q9uug",notConnectedStatusIndicator:"kn43h",reconnectStatusIndicator:"Kx6Vr"};function L(e){return L="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},L(e)}function j(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function O(e,t,n){return(t=function(e){var t=function(e){if("object"!=L(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=L(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==L(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var P=a.T.encloseNamespace("settings.integrationToggle"),M=O(O(O(O({},l.D.GoogleClassroom,k.W.Integrations.GoogleClassroom),l.D.MicrosoftTeams,k.W.Integrations.MicrosoftTeams),l.D.Vivi,k.W.Integrations.Vivi),l.D.AppleTv,k.W.Integrations.AppleTV),V=O(O(O({},l.D.GoogleClassroom,w.googleClassroomIconContainer),l.D.Vivi,w.viviIconContainer),l.D.AppleTv,w.appleTvIconContainer),x=O(O(O(O({},l.D.GoogleClassroom,C.b.Integrations),l.D.MicrosoftTeams,C.b.Integrations),l.D.Vivi,C.b.ViviIntegration),l.D.AppleTv,C.b.AppleTvIntegration);function D(e){var t,n,a,o=(n=r.useState(e.integration.enabled),a=2,function(e){if(Array.isArray(e))return e}(n)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,l=[],c=!0,s=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=o.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(e){s=!0,a=e}finally{try{if(!c&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(s)throw a}}return l}}(n,a)||function(e,t){if(e){if("string"==typeof e)return j(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?j(e,t):void 0}}(n,a)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),i=o[0],l=o[1];r.useEffect((function(){l(e.integration.enabled)}),[e.updateError]);var s=M[e.integration.id],u=null!==(t=V[e.integration.id])&&void 0!==t?t:"",m=e.integration.status,g=m&&m!==c.I.Connected;return r.createElement("div",{className:"border rounded-3"},r.createElement("div",{className:"position-relative d-flex align-items-center justify-content-center py-4 rounded-top ".concat(u)},r.createElement(R,{status:m,configureTooltip:e.integration.configureTooltip,configureAppLink:e.integration.configureAppLink}),r.createElement("img",{src:s,className:w.integrationIcon})),r.createElement("div",{className:"border-top p-2"},r.createElement("div",{className:"d-flex align-items-center justify-content-between"},r.createElement("span",{className:"me-2"},e.integration.name),r.createElement(h.Z,{onClick:function(){e.onToggleIntegration(e.integration,!i),l(!i)},on:i,disabled:g})),r.createElement("div",null,r.createElement("a",{href:N.o.getLiteArticle(x[e.integration.id]),target:"_blank",className:"text-info"},P("learnMore")))))}var G=O(O(O({},c.I.Connected,w.connectedStatusIndicator),c.I.NotConnected,w.notConnectedStatusIndicator),c.I.Reconnect,w.reconnectStatusIndicator),F=O(O(O({},c.I.Connected,P("connectedStatusLabel")),c.I.NotConnected,P("notConnectedStatusLabel")),c.I.Reconnect,P("reconnectStatusLabel"));function R(e){var t,n,a=e.status,o=e.configureTooltip,i=e.configureAppLink,l=null!==(t=G[a])&&void 0!==t?t:"",c=null!==(n=F[a])&&void 0!==n?n:"";return r.createElement("div",{className:"d-flex justify-content-between align-items-top position-absolute ps-2 pt-1 pe-1 ".concat(w.headerContainer)},r.createElement("div",{className:"d-flex flex-row align-items-center"},l&&r.createElement("span",{className:"inline-block ".concat(w.statusIndicator," ").concat(l)}),c&&r.createElement("span",{className:"ms-1 text-white"},c)),i&&r.createElement(T.L,{className:"cursor-pointer text-white",onClick:function(e){e.stopPropagation(),e.preventDefault(),S.Q.C$.trigger(i)}},r.createElement(I.x,{size:I.S.Medium,svgName:A.vn.Cog,title:o,tooltipPlacement:"top",tooltipSpanHack:!0})))}var _=n(81803);const U={partialToggle:"p5int"};function B(e){return r.createElement("div",{className:e.className},r.createElement("div",{className:"border rounded-3 partial-loading-background ".concat(U.partialToggle)}," "))}function H(e){return r.createElement(r.Fragment,null,r.createElement(B,{className:e.className}),r.createElement(B,{className:e.className}))}const $={toggleContainer:"roVyL"};function q(e){return q="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},q(e)}function Q(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function W(e,t,n){return(t=function(e){var t=function(e){if("object"!=q(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=q(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==q(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Z=a.T.encloseNamespace("settings.integrationSettings"),z=W(W(W({},c.I.Connected,Z("viviConnectedStatusTooltip")),c.I.NotConnected,Z("viviNotConnectedStatusTooltip")),c.I.Reconnect,Z("viviReconnectStatusTooltip"));function K(){var e,t;(0,f.M)({title:Z("pageTitle")});var n,a,c=(n=r.useState({}),a=2,function(e){if(Array.isArray(e))return e}(n)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,l=[],c=!0,s=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=o.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(e){s=!0,a=e}finally{try{if(!c&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(s)throw a}}return l}}(n,a)||function(e,t){if(e){if("string"==typeof e)return Q(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Q(e,t):void 0}}(n,a)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),S=c[0],T=c[1],I=(0,p.Z)(),h=o.a.useBasicFetch(d.N.currentUser()),C=o.a.useBasicFetch(m.L.config()),N=o.a.useBasicFetch((null===(e=h.data)||void 0===e?void 0:e.isAuthenticated)&&g.z.getViviIntegrationStatus()),A=(0,v.r)(i.LZ.Settings),k=A.shareToGoogleClassroom,w=A.shareToMicrosoftTeams,L=A.hasEnabledAppleTvPlayback,j=A.hasEnabledViviPlayback,O=A.updateSetting,P=A.isLoadingSettings,M=b._.getShareIntegrations(k,w),V=[{id:l.D.AppleTv,name:Z("appleTv"),settingName:u.E.HasEnabledAppleTvPlayback,configureAppLink:{application:E.O.SETTINGS,action:y.e.Settings.APPLE_TV},configureTooltip:Z("appleTvTooltip"),enabled:L},{id:l.D.Vivi,name:Z("vivi"),settingName:u.E.HasEnabledViviPlayback,configureAppLink:{application:E.O.SETTINGS,action:y.e.Settings.VIVI},configureTooltip:null!==(t=z[N.data])&&void 0!==t?t:"",enabled:j,status:N.data}],x=!!h.data&&!!C.data&&N.hasCompleted&&!P,G=V.length>0;function F(e,t){var n=t?"enableIntegrationSuccess":"disableIntegrationSuccess",r=t?"enableIntegrationError":"disableIntegrationError",a={name:e.settingName,value:t,kind:s.g.FeatureFlag};O(h.data.customerId,a,(function(){I.success(Z(n,{integrationName:e.name,escapeText:!0})),T((function(t){return Object.assign(Object.assign({},t),W({},e.name,!1))}))}),(function(){I.error(Z(r,{integrationName:e.name,escapeText:!0})),T((function(t){return Object.assign(Object.assign({},t),W({},e.name,!0))}))}))}return r.createElement(_.d,{heading:Z("integrations"),breadcrumbs:[Z("integrations")]},r.createElement("h2",{className:"h4"},Z("shareIntegrations")),r.createElement("p",{className:"mb-0"},Z("shareIntegrationsDescription")),r.createElement("div",{className:"mx-n2"},x?M.map((function(e,t){var n;return r.createElement("div",{key:t,className:"d-inline-block p-2 ".concat($.toggleContainer)},r.createElement(D,{integration:e,onToggleIntegration:F,updateError:null!==(n=S[e.name])&&void 0!==n&&n,userCountryCode:h.data.countryCode}))})):r.createElement(H,{className:"d-inline-block p-2 ".concat($.toggleContainer)})),G&&r.createElement(r.Fragment,null,r.createElement("h2",{className:"h4 mt-3"},Z("playerIntegrations")),r.createElement("p",{className:"mb-0"},Z("playerIntegrationsDescription")),r.createElement("div",{className:"mx-n2"},x?V.map((function(e,t){var n;return r.createElement("div",{key:t,className:"d-inline-block p-2 ".concat($.toggleContainer)},r.createElement(D,{integration:e,onToggleIntegration:F,updateError:null!==(n=S[e.name])&&void 0!==n&&n,userCountryCode:h.data.countryCode}))})):r.createElement(H,{className:"d-inline-block p-2 ".concat($.toggleContainer)}))))}}}]);
|
|
2
|
+
//# sourceMappingURL=7873-0ce0523a28-lite.chunk.js.map
|
package/dist/scripts/{7873-2e64f4eb37-lite.chunk.js.map → 7873-0ce0523a28-lite.chunk.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scripts/7873-2e64f4eb37-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/enums/IntegrationId.ts","file:///app/packages/libs/shared/src/enums/SupportArticle.ts","file:///app/packages/libs/shared/src/utils/IntegrationHelper.ts","file:///app/packages/projects/lite/src/apps/settings/components/settings-layout/SettingsLayout.tsx","file:///app/packages/projects/lite/src/apps/settings/components/integration-toggle/integration-toggle.scss","file:///app/packages/projects/lite/src/apps/settings/components/integration-toggle/IntegrationToggle.tsx","file:///app/packages/projects/lite/src/apps/settings/views/integration-settings/partial-loading/partial-integration-settings.scss","file:///app/packages/projects/lite/src/apps/settings/views/integration-settings/partial-loading/PartialIntegrationSettings.tsx","file:///app/packages/projects/lite/src/apps/settings/views/integration-settings/integration-settings.scss","file:///app/packages/projects/lite/src/apps/settings/views/integration-settings/IntegrationSettingsView.tsx"],"sourcesContent":["export enum IntegrationId {\n GoogleClassroom = 'google-classroom',\n MicrosoftTeams = 'microsoft-teams',\n Vivi = 'vivi',\n AppleTv = 'apply-tv'\n}","// Article name mapped to article ID on support site. Used by `ArticleHelper`\n\nexport enum OnlineSupportArticle {\n AddToPlaylist = '115005679748',\n EditSsoAccounts = '8202508040345',\n\n // LE\n LibraryEditor = '360001974533',\n VideoAccess = '360000153947',\n AddFromOnline = '360011718234',\n UploadToLibraryEditor = '360012069334',\n PBTErrorCodes = '360012421153',\n ManuelReview = '360020004534',\n LibraryReview = '360000163788',\n}\n\nexport enum LiteSupportArticle {\n Integrations = '4407268725529',\n Classrooms = '4405362551833',\n MakeInteractive = '4405370510873',\n EditSsoAccounts = '8202605666073',\n UploadToLibraryEditor = '10672936659865',\n AddFromLite = '10671345281561',\n ManageSsoYearGroups = '14691130889241',\n ContentReview = '18525199576601',\n ContentPermissions = '14692125209497',\n AccessSettings = '27927466562201',\n ContentGuidelines = '24133696186009',\n FoxtelFaq = '24133519542169',\n ViviIntegration = '23826297956377',\n AppleTvIntegration = '25832373739929',\n RssFeed = '32567445635097',\n ManageGroupPermissions = '35407217335705'\n}\n","import { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { IntegrationId } from 'libs/shared/enums/IntegrationId';\nimport { SettingName } from 'libs/shared/enums/SettingName';\nimport { Integration } from 'libs/shared/interfaces';\n\nconst namespace = 'shared.shared-utils';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport const IntegrationHelper = {\n getShareIntegrations(googleClassroomSetting: boolean, msftTeamsSetting: boolean): Integration[] {\n return [\n {\n id: IntegrationId.GoogleClassroom,\n name: getPhrase('googleClassroom'),\n enabled: googleClassroomSetting,\n settingName: SettingName.ShareToGoogleClassroom\n },\n {\n id: IntegrationId.MicrosoftTeams,\n name: getPhrase('msftTeams'),\n enabled: msftTeamsSetting,\n settingName: SettingName.ShareToMicrosoftTeams\n }\n ];\n }\n};\n","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { Breadcrumbs } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { useGetSettingsGroups } from 'apps/settings/hooks/useGetSettingsGroups';\n\nconst namespace = 'settings.settingsLayout';\n\n/**\n * Checks if the current user has permission to access the settings module\n */\nexport const useCanAccessSettings = (requiredPermissions: PermissionName | PermissionName[]): boolean => {\n const { hasPermissions } = usePermissions();\n const settingsGroups = useGetSettingsGroups();\n\n /**\n * TODO: Update all settings pages to pasas required permissions, because checking the \n * `useGetSettingsGroups()` values clearly doesnt work for settings pages with multiple\n * applinks inside of them. - Sha\n */\n if (requiredPermissions)\n return hasPermissions(requiredPermissions);\n\n const currentRoute = Core.AppLinkHelper.getCurrentAppLink();\n\n /**\n * Allows us to have popups sitting in other locations be used\n * by our settings pages. For example the manage video access popup\n * in the \"videos with restricted access\" page - Sha\n */\n if (currentRoute.application !== AppChannels.SETTINGS)\n return true;\n\n return settingsGroups.some(group => {\n return group.modules.some(settingsModule => {\n if ('appLink' in settingsModule) {\n return settingsModule.appLink.action === currentRoute.action;\n }\n\n return false;\n });\n });\n};\n\ninterface SettingsLayoutProps {\n heading: string;\n breadcrumbs: string[];\n description?: string;\n requiredPermissions?: PermissionName | PermissionName[];\n headingButton?: () => JSX.Element;\n}\n\nexport function SettingsLayout(props: React.PropsWithChildren<SettingsLayoutProps>): JSX.Element {\n const canAccess = useCanAccessSettings(props.requiredPermissions);\n\n React.useEffect(() => {\n if (!canAccess) {\n Core.AppLinkHelper.trigger({\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }, { replace: true });\n }\n }, [canAccess]);\n\n if (!canAccess)\n return <></>;\n\n const breadcrumbs = props.breadcrumbs.map((name, i) => ({\n name,\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n },\n active: i === props.breadcrumbs.length - 1\n }));\n\n return (\n <div className='px-3'>\n <div className='d-flex align-items-center justify-content-between'>\n <h1 className='h2'>{props.heading}</h1>\n {props.headingButton?.()}\n </div>\n <div className='pb-3'>\n <Breadcrumbs\n breadcrumbs={[\n {\n name: LanguageService.getPhrase(namespace, 'settingsBreadcrumb'),\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }\n },\n ...breadcrumbs\n ]}\n />\n </div>\n {props.description &&\n <>\n <p>{props.description}</p>\n <hr />\n </>\n }\n\n {props.children}\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"integrationIcon\":\"bqV8U\",\"googleClassroomIconContainer\":\"Rl7gP\",\"viviIconContainer\":\"qCgv4\",\"appleTvIconContainer\":\"ASg8C\",\"headerContainer\":\"GmPjw\",\"statusIndicator\":\"_2Tuy\",\"connectedStatusIndicator\":\"Q9uug\",\"notConnectedStatusIndicator\":\"kn43h\",\"reconnectStatusIndicator\":\"Kx6Vr\"};","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\n\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { ToggleSwitch } from 'libs/shared/components/toggle-switch/ToggleSwitch';\nimport { CountryCode } from 'libs/shared/enums/CountryCode';\nimport { IntegrationId } from 'libs/shared/enums/IntegrationId';\nimport { IntegrationStatus } from 'libs/shared/enums/IntegrationStatus';\nimport { LiteSupportArticle } from 'libs/shared/enums/SupportArticle';\nimport { Integration } from 'libs/shared/interfaces';\nimport { ArticleHelper } from 'libs/shared/utils/ArticleHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nimport styles from './integration-toggle.scss';\n\nconst namespace = 'settings.integrationToggle';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ntype IntegrationLookup = {\n [key in IntegrationId]?: string;\n}\n\nconst IntegrationIconImageUrls: IntegrationLookup = {\n [IntegrationId.GoogleClassroom]: ImageUrls.Integrations.GoogleClassroom,\n [IntegrationId.MicrosoftTeams]: ImageUrls.Integrations.MicrosoftTeams,\n [IntegrationId.Vivi]: ImageUrls.Integrations.Vivi,\n [IntegrationId.AppleTv]: ImageUrls.Integrations.AppleTV\n};\n\nconst IconContainerClassNames: IntegrationLookup = {\n [IntegrationId.GoogleClassroom]: styles.googleClassroomIconContainer,\n [IntegrationId.Vivi]: styles.viviIconContainer,\n [IntegrationId.AppleTv]: styles.appleTvIconContainer\n};\n\nconst IntregrationArticles = {\n [IntegrationId.GoogleClassroom]: LiteSupportArticle.Integrations,\n [IntegrationId.MicrosoftTeams]: LiteSupportArticle.Integrations,\n [IntegrationId.Vivi]: LiteSupportArticle.ViviIntegration,\n [IntegrationId.AppleTv]: LiteSupportArticle.AppleTvIntegration\n};\n\ninterface IntegrationToggleProps {\n integration: Integration;\n onToggleIntegration: (integration: Integration, enable: boolean) => void;\n updateError: boolean;\n userCountryCode: CountryCode;\n}\n\nexport function IntegrationToggle(props: IntegrationToggleProps): JSX.Element {\n // Store enabled in local state so the toggle updated immediately\n const [ enabled, setEnabled ] = React.useState(props.integration.enabled);\n\n /**\n * Resync enabled with api value if there is an error\n */\n React.useEffect(() => {\n setEnabled(props.integration.enabled);\n }, [props.updateError]);\n\n const imageUrl = IntegrationIconImageUrls[props.integration.id];\n const containerClassName = IconContainerClassNames[props.integration.id] ?? '';\n const status = props.integration.status;\n const disabled = status && status !== IntegrationStatus.Connected;\n\n return (\n <div className='border rounded-3'>\n <div className={`position-relative d-flex align-items-center justify-content-center py-4 rounded-top ${containerClassName}`}>\n <IntegrationToggleHeader\n status={status}\n configureTooltip={props.integration.configureTooltip}\n configureAppLink={props.integration.configureAppLink}\n />\n <img src={imageUrl} className={styles.integrationIcon} />\n </div>\n <div className='border-top p-2'>\n <div className='d-flex align-items-center justify-content-between'>\n <span className='me-2'>\n {props.integration.name}\n </span>\n <ToggleSwitch\n onClick={() => {\n props.onToggleIntegration(props.integration, !enabled);\n setEnabled(!enabled);\n }}\n on={enabled}\n disabled={disabled}\n />\n </div>\n <div>\n <a\n href={ArticleHelper.getLiteArticle(IntregrationArticles[props.integration.id])}\n target='_blank'\n className='text-info'\n >\n {getPhrase('learnMore')}\n </a>\n </div>\n </div>\n </div>\n );\n}\n\ntype StatusLookup = {\n [key in IntegrationStatus]?: string;\n}\n\nconst StatusIndicatorClassNames: StatusLookup = {\n [IntegrationStatus.Connected]: styles.connectedStatusIndicator,\n [IntegrationStatus.NotConnected]: styles.notConnectedStatusIndicator,\n [IntegrationStatus.Reconnect]: styles.reconnectStatusIndicator\n};\n\nconst StatusIndicatorLabels: StatusLookup = {\n [IntegrationStatus.Connected]: getPhrase('connectedStatusLabel'),\n [IntegrationStatus.NotConnected]: getPhrase('notConnectedStatusLabel'),\n [IntegrationStatus.Reconnect]: getPhrase('reconnectStatusLabel')\n};\n\ninterface IntegrationToggleHeaderProps {\n status?: IntegrationStatus;\n configureTooltip?: string;\n configureAppLink?: Core.AppLink;\n}\n\nfunction IntegrationToggleHeader({\n status,\n configureTooltip,\n configureAppLink\n}: IntegrationToggleHeaderProps): JSX.Element {\n function onClickConfigure(e: React.MouseEvent): void {\n e.stopPropagation();\n e.preventDefault();\n\n Core.AppLinkHelper.trigger(configureAppLink);\n }\n\n const statusIndicatorClassName = StatusIndicatorClassNames[status] ?? '';\n const statusLabel = StatusIndicatorLabels[status] ?? '';\n\n return (\n <div className={`d-flex justify-content-between align-items-top position-absolute ps-2 pt-1 pe-1 ${styles.headerContainer}`}>\n <div className='d-flex flex-row align-items-center'>\n { statusIndicatorClassName && <span className={`inline-block ${styles.statusIndicator} ${statusIndicatorClassName}`} /> }\n { statusLabel && <span className={`ms-1 text-white`}>{statusLabel}</span> }\n </div>\n { configureAppLink && (\n <DivButton className={`cursor-pointer text-white`} onClick={onClickConfigure}>\n <SvgContainer\n size={SvgContainerSize.Medium}\n svgName={cvSvgLibrary.Cog}\n title={configureTooltip}\n tooltipPlacement='top'\n tooltipSpanHack\n />\n </DivButton>\n )}\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"partialToggle\":\"p5int\"};","import React from 'react';\n\nimport styles from './partial-integration-settings.scss';\n\ninterface PartialIntegrationToggleProps {\n className: string;\n}\n\nfunction PartialIntegrationToggle(props: PartialIntegrationToggleProps): JSX.Element {\n return (\n <div className={props.className}>\n <div className={`border rounded-3 partial-loading-background ${styles.partialToggle}`}>\n \n </div>\n </div>\n );\n}\n\ninterface PartialIntegrationSettingsProps {\n className: string;\n}\n\nexport function PartialIntegrationSettings(props: PartialIntegrationSettingsProps): JSX.Element {\n return (\n <>\n <PartialIntegrationToggle className={props.className} />\n <PartialIntegrationToggle className={props.className} />\n </>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"toggleContainer\":\"roVyL\"};","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\n\nimport { LocationContext } from 'libs/analytics/interfaces';\n\nimport { IntegrationId } from 'libs/shared/enums/IntegrationId';\nimport { IntegrationStatus } from 'libs/shared/enums/IntegrationStatus';\nimport { SettingKind } from 'libs/shared/enums/SettingKind';\nimport { SettingName } from 'libs/shared/enums/SettingName';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { PlayerIntegrationsRequests } from 'libs/shared/flight-requests/PlayerIntegrationsRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { useSettings } from 'libs/shared/hooks/useSettings';\nimport { Config, CurrentUser, Integration } from 'libs/shared/interfaces';\nimport { IntegrationHelper } from 'libs/shared/utils/IntegrationHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { IntegrationToggle } from 'apps/settings/components/integration-toggle/IntegrationToggle';\nimport { SettingsLayout } from 'apps/settings/components/settings-layout/SettingsLayout';\n\nimport { PartialIntegrationSettings } from './partial-loading/PartialIntegrationSettings';\n\nimport styles from './integration-settings.scss';\n\nconst namespace = 'settings.integrationSettings';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst viviTooltipPhrases = {\n [IntegrationStatus.Connected]: getPhrase('viviConnectedStatusTooltip'),\n [IntegrationStatus.NotConnected]: getPhrase('viviNotConnectedStatusTooltip'),\n [IntegrationStatus.Reconnect]: getPhrase('viviReconnectStatusTooltip')\n};\n\nexport function IntegrationSettingsView(): JSX.Element {\n useSetPageMetadata({ title: getPhrase('pageTitle') });\n /**\n * IntegrationToggle will blindly update the UI before the api call is returned so we need a way\n * to let if know if there is an error updating the setting\n */\n const [ updateErrors, setUpdateErrors ] = React.useState<{ [integrationName: string ]: boolean}>({});\n\n const alerts = useAlerts();\n\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const viviStatus = Flight.useBasicFetch<IntegrationStatus>(\n currentUser.data?.isAuthenticated && PlayerIntegrationsRequests.getViviIntegrationStatus()\n );\n\n const {\n shareToGoogleClassroom,\n shareToMicrosoftTeams,\n hasEnabledAppleTvPlayback,\n hasEnabledViviPlayback,\n updateSetting,\n isLoadingSettings\n } = useSettings(LocationContext.Settings);\n\n const shareIntegrations = IntegrationHelper.getShareIntegrations(shareToGoogleClassroom, shareToMicrosoftTeams);\n\n const playerIntegrations = [\n {\n id: IntegrationId.AppleTv,\n name: getPhrase('appleTv'),\n settingName: SettingName.HasEnabledAppleTvPlayback,\n configureAppLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.APPLE_TV\n },\n configureTooltip: getPhrase('appleTvTooltip'),\n enabled: hasEnabledAppleTvPlayback\n },\n {\n id: IntegrationId.Vivi,\n name: getPhrase('vivi'),\n settingName: SettingName.HasEnabledViviPlayback,\n configureAppLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.VIVI\n },\n configureTooltip: viviTooltipPhrases[viviStatus.data] ?? '',\n enabled: hasEnabledViviPlayback,\n status: viviStatus.data\n }\n ];\n\n const dataLoaded = !!currentUser.data &&\n !!config.data &&\n viviStatus.hasCompleted &&\n !isLoadingSettings;\n\n const showPlayerIntegrations = playerIntegrations.length > 0;\n\n function onToggleIntegration(integration: Integration, enable: boolean): void {\n const successPhraseKey = enable ? 'enableIntegrationSuccess' : 'disableIntegrationSuccess';\n const errorPhraseKey = enable ? 'enableIntegrationError' : 'disableIntegrationError';\n\n function success(): void {\n alerts.success(getPhrase(successPhraseKey, { integrationName: integration.name, escapeText: true })),\n setUpdateErrors(errors => ({ ...errors, [integration.name]: false }));\n }\n\n function error(): void {\n alerts.error(getPhrase(errorPhraseKey, { integrationName: integration.name, escapeText: true })),\n setUpdateErrors(errors => ({ ...errors, [integration.name]: true }));\n }\n\n const newSetting = {\n name: integration.settingName,\n value: enable,\n kind: SettingKind.Temporary\n };\n\n updateSetting(currentUser.data.customerId, newSetting, success, error);\n }\n\n return (\n <SettingsLayout\n heading={getPhrase('integrations')}\n breadcrumbs={[getPhrase('integrations')]}\n >\n <h2 className='h4'>{getPhrase('shareIntegrations')}</h2>\n <p className='mb-0'>{getPhrase('shareIntegrationsDescription')}</p>\n <div className='mx-n2'>\n {dataLoaded\n ? shareIntegrations.map((integration, index) => (\n <div key={index} className={`d-inline-block p-2 ${styles.toggleContainer}`}>\n <IntegrationToggle\n integration={integration}\n onToggleIntegration={onToggleIntegration}\n updateError={updateErrors[integration.name] ?? false}\n userCountryCode={currentUser.data.countryCode}\n />\n </div>\n ))\n : <PartialIntegrationSettings className={`d-inline-block p-2 ${styles.toggleContainer}`} />\n }\n </div>\n\n {showPlayerIntegrations && (\n <>\n <h2 className='h4 mt-3'>{getPhrase('playerIntegrations')}</h2>\n <p className='mb-0'>{getPhrase('playerIntegrationsDescription')}</p>\n <div className='mx-n2'>\n {dataLoaded\n ? playerIntegrations.map((integration, index) => (\n <div key={index} className={`d-inline-block p-2 ${styles.toggleContainer}`}>\n <IntegrationToggle\n integration={integration}\n onToggleIntegration={onToggleIntegration}\n updateError={updateErrors[integration.name] ?? false}\n userCountryCode={currentUser.data.countryCode}\n />\n </div>\n ))\n : <PartialIntegrationSettings className={`d-inline-block p-2 ${styles.toggleContainer}`} />\n }\n </div>\n </>\n )}\n </SettingsLayout>\n );\n}"],"names":["IntegrationId","OnlineSupportArticle","LiteSupportArticle","getPhrase","IntegrationHelper","getShareIntegrations","googleClassroomSetting","msftTeamsSetting","id","name","enabled","settingName","namespace","useCanAccessSettings","requiredPermissions","hasPermissions","settingsGroups","currentRoute","application","some","group","modules","settingsModule","appLink","action","SettingsLayout","props","canAccess","replace","breadcrumbs","map","i","active","length","className","heading","headingButton","description","children","LanguageService","IntegrationIconImageUrls","ImageUrls","IconContainerClassNames","IntregrationArticles","IntegrationToggle","integration","setEnabled","updateError","imageUrl","containerClassName","status","disabled","IntegrationStatus","I","IntegrationToggleHeader","configureTooltip","configureAppLink","src","ToggleSwitch","onClick","onToggleIntegration","on","href","ArticleHelper","target","StatusIndicatorClassNames","StatusIndicatorLabels","statusIndicatorClassName","statusLabel","DivButton","e","stopPropagation","preventDefault","SvgContainer","size","S","svgName","title","tooltipPlacement","tooltipSpanHack","PartialIntegrationToggle","PartialIntegrationSettings","viviTooltipPhrases","IntegrationSettingsView","useSetPageMetadata","updateErrors","setUpdateErrors","alerts","currentUser","UserRequests","config","ConfigRequests","viviStatus","data","isAuthenticated","PlayerIntegrationsRequests","useSettings","shareToGoogleClassroom","shareToMicrosoftTeams","hasEnabledAppleTvPlayback","hasEnabledViviPlayback","updateSetting","isLoadingSettings","shareIntegrations","playerIntegrations","SettingName","dataLoaded","hasCompleted","showPlayerIntegrations","enable","successPhraseKey","errorPhraseKey","newSetting","value","kind","SettingKind","customerId","success","integrationName","escapeText","errors","error","index","key","userCountryCode","countryCode"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"scripts/7873-0ce0523a28-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/enums/IntegrationId.ts","file:///app/packages/libs/shared/src/enums/SupportArticle.ts","file:///app/packages/libs/shared/src/utils/IntegrationHelper.ts","file:///app/packages/projects/lite/src/apps/settings/components/settings-layout/SettingsLayout.tsx","file:///app/packages/projects/lite/src/apps/settings/components/integration-toggle/integration-toggle.scss","file:///app/packages/projects/lite/src/apps/settings/components/integration-toggle/IntegrationToggle.tsx","file:///app/packages/projects/lite/src/apps/settings/views/integration-settings/partial-loading/partial-integration-settings.scss","file:///app/packages/projects/lite/src/apps/settings/views/integration-settings/partial-loading/PartialIntegrationSettings.tsx","file:///app/packages/projects/lite/src/apps/settings/views/integration-settings/integration-settings.scss","file:///app/packages/projects/lite/src/apps/settings/views/integration-settings/IntegrationSettingsView.tsx"],"sourcesContent":["export enum IntegrationId {\n GoogleClassroom = 'google-classroom',\n MicrosoftTeams = 'microsoft-teams',\n Vivi = 'vivi',\n AppleTv = 'apply-tv'\n}","// Article name mapped to article ID on support site. Used by `ArticleHelper`\n\nexport enum OnlineSupportArticle {\n AddToPlaylist = '115005679748',\n EditSsoAccounts = '8202508040345',\n\n // LE\n LibraryEditor = '360001974533',\n VideoAccess = '360000153947',\n AddFromOnline = '360011718234',\n UploadToLibraryEditor = '360012069334',\n PBTErrorCodes = '360012421153',\n ManuelReview = '360020004534',\n LibraryReview = '360000163788',\n}\n\nexport enum LiteSupportArticle {\n Integrations = '4407268725529',\n Classrooms = '4405362551833',\n MakeInteractive = '4405370510873',\n EditSsoAccounts = '8202605666073',\n UploadToLibraryEditor = '10672936659865',\n AddFromLite = '10671345281561',\n ManageSsoYearGroups = '14691130889241',\n ContentReview = '18525199576601',\n ContentPermissions = '14692125209497',\n AccessSettings = '27927466562201',\n ContentGuidelines = '24133696186009',\n FoxtelFaq = '24133519542169',\n ViviIntegration = '23826297956377',\n AppleTvIntegration = '25832373739929',\n RssFeed = '32567445635097',\n ManageGroupPermissions = '35407217335705'\n}\n","import { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { IntegrationId } from 'libs/shared/enums/IntegrationId';\nimport { SettingName } from 'libs/shared/enums/SettingName';\nimport { Integration } from 'libs/shared/interfaces';\n\nconst namespace = 'shared.shared-utils';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport const IntegrationHelper = {\n getShareIntegrations(googleClassroomSetting: boolean, msftTeamsSetting: boolean): Integration[] {\n return [\n {\n id: IntegrationId.GoogleClassroom,\n name: getPhrase('googleClassroom'),\n enabled: googleClassroomSetting,\n settingName: SettingName.ShareToGoogleClassroom\n },\n {\n id: IntegrationId.MicrosoftTeams,\n name: getPhrase('msftTeams'),\n enabled: msftTeamsSetting,\n settingName: SettingName.ShareToMicrosoftTeams\n }\n ];\n }\n};\n","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { Breadcrumbs } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { useGetSettingsGroups } from 'apps/settings/hooks/useGetSettingsGroups';\n\nconst namespace = 'settings.settingsLayout';\n\n/**\n * Checks if the current user has permission to access the settings module\n */\nexport const useCanAccessSettings = (requiredPermissions: PermissionName | PermissionName[]): boolean => {\n const { hasPermissions } = usePermissions();\n const settingsGroups = useGetSettingsGroups();\n\n /**\n * TODO: Update all settings pages to pasas required permissions, because checking the \n * `useGetSettingsGroups()` values clearly doesnt work for settings pages with multiple\n * applinks inside of them. - Sha\n */\n if (requiredPermissions)\n return hasPermissions(requiredPermissions);\n\n const currentRoute = Core.AppLinkHelper.getCurrentAppLink();\n\n /**\n * Allows us to have popups sitting in other locations be used\n * by our settings pages. For example the manage video access popup\n * in the \"videos with restricted access\" page - Sha\n */\n if (currentRoute.application !== AppChannels.SETTINGS)\n return true;\n\n return settingsGroups.some(group => {\n return group.modules.some(settingsModule => {\n if ('appLink' in settingsModule) {\n return settingsModule.appLink.action === currentRoute.action;\n }\n\n return false;\n });\n });\n};\n\ninterface SettingsLayoutProps {\n heading: string;\n breadcrumbs: string[];\n description?: string;\n requiredPermissions?: PermissionName | PermissionName[];\n headingButton?: () => JSX.Element;\n}\n\nexport function SettingsLayout(props: React.PropsWithChildren<SettingsLayoutProps>): JSX.Element {\n const canAccess = useCanAccessSettings(props.requiredPermissions);\n\n React.useEffect(() => {\n if (!canAccess) {\n Core.AppLinkHelper.trigger({\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }, { replace: true });\n }\n }, [canAccess]);\n\n if (!canAccess)\n return <></>;\n\n const breadcrumbs = props.breadcrumbs.map((name, i) => ({\n name,\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n },\n active: i === props.breadcrumbs.length - 1\n }));\n\n return (\n <div className='px-3'>\n <div className='d-flex align-items-center justify-content-between'>\n <h1 className='h2'>{props.heading}</h1>\n {props.headingButton?.()}\n </div>\n <div className='pb-3'>\n <Breadcrumbs\n breadcrumbs={[\n {\n name: LanguageService.getPhrase(namespace, 'settingsBreadcrumb'),\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }\n },\n ...breadcrumbs\n ]}\n />\n </div>\n {props.description &&\n <>\n <p>{props.description}</p>\n <hr />\n </>\n }\n\n {props.children}\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"integrationIcon\":\"bqV8U\",\"googleClassroomIconContainer\":\"Rl7gP\",\"viviIconContainer\":\"qCgv4\",\"appleTvIconContainer\":\"ASg8C\",\"headerContainer\":\"GmPjw\",\"statusIndicator\":\"_2Tuy\",\"connectedStatusIndicator\":\"Q9uug\",\"notConnectedStatusIndicator\":\"kn43h\",\"reconnectStatusIndicator\":\"Kx6Vr\"};","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\n\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { ToggleSwitch } from 'libs/shared/components/toggle-switch/ToggleSwitch';\nimport { CountryCode } from 'libs/shared/enums/CountryCode';\nimport { IntegrationId } from 'libs/shared/enums/IntegrationId';\nimport { IntegrationStatus } from 'libs/shared/enums/IntegrationStatus';\nimport { LiteSupportArticle } from 'libs/shared/enums/SupportArticle';\nimport { Integration } from 'libs/shared/interfaces';\nimport { ArticleHelper } from 'libs/shared/utils/ArticleHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nimport styles from './integration-toggle.scss';\n\nconst namespace = 'settings.integrationToggle';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ntype IntegrationLookup = {\n [key in IntegrationId]?: string;\n}\n\nconst IntegrationIconImageUrls: IntegrationLookup = {\n [IntegrationId.GoogleClassroom]: ImageUrls.Integrations.GoogleClassroom,\n [IntegrationId.MicrosoftTeams]: ImageUrls.Integrations.MicrosoftTeams,\n [IntegrationId.Vivi]: ImageUrls.Integrations.Vivi,\n [IntegrationId.AppleTv]: ImageUrls.Integrations.AppleTV\n};\n\nconst IconContainerClassNames: IntegrationLookup = {\n [IntegrationId.GoogleClassroom]: styles.googleClassroomIconContainer,\n [IntegrationId.Vivi]: styles.viviIconContainer,\n [IntegrationId.AppleTv]: styles.appleTvIconContainer\n};\n\nconst IntregrationArticles = {\n [IntegrationId.GoogleClassroom]: LiteSupportArticle.Integrations,\n [IntegrationId.MicrosoftTeams]: LiteSupportArticle.Integrations,\n [IntegrationId.Vivi]: LiteSupportArticle.ViviIntegration,\n [IntegrationId.AppleTv]: LiteSupportArticle.AppleTvIntegration\n};\n\ninterface IntegrationToggleProps {\n integration: Integration;\n onToggleIntegration: (integration: Integration, enable: boolean) => void;\n updateError: boolean;\n userCountryCode: CountryCode;\n}\n\nexport function IntegrationToggle(props: IntegrationToggleProps): JSX.Element {\n // Store enabled in local state so the toggle updated immediately\n const [ enabled, setEnabled ] = React.useState(props.integration.enabled);\n\n /**\n * Resync enabled with api value if there is an error\n */\n React.useEffect(() => {\n setEnabled(props.integration.enabled);\n }, [props.updateError]);\n\n const imageUrl = IntegrationIconImageUrls[props.integration.id];\n const containerClassName = IconContainerClassNames[props.integration.id] ?? '';\n const status = props.integration.status;\n const disabled = status && status !== IntegrationStatus.Connected;\n\n return (\n <div className='border rounded-3'>\n <div className={`position-relative d-flex align-items-center justify-content-center py-4 rounded-top ${containerClassName}`}>\n <IntegrationToggleHeader\n status={status}\n configureTooltip={props.integration.configureTooltip}\n configureAppLink={props.integration.configureAppLink}\n />\n <img src={imageUrl} className={styles.integrationIcon} />\n </div>\n <div className='border-top p-2'>\n <div className='d-flex align-items-center justify-content-between'>\n <span className='me-2'>\n {props.integration.name}\n </span>\n <ToggleSwitch\n onClick={() => {\n props.onToggleIntegration(props.integration, !enabled);\n setEnabled(!enabled);\n }}\n on={enabled}\n disabled={disabled}\n />\n </div>\n <div>\n <a\n href={ArticleHelper.getLiteArticle(IntregrationArticles[props.integration.id])}\n target='_blank'\n className='text-info'\n >\n {getPhrase('learnMore')}\n </a>\n </div>\n </div>\n </div>\n );\n}\n\ntype StatusLookup = {\n [key in IntegrationStatus]?: string;\n}\n\nconst StatusIndicatorClassNames: StatusLookup = {\n [IntegrationStatus.Connected]: styles.connectedStatusIndicator,\n [IntegrationStatus.NotConnected]: styles.notConnectedStatusIndicator,\n [IntegrationStatus.Reconnect]: styles.reconnectStatusIndicator\n};\n\nconst StatusIndicatorLabels: StatusLookup = {\n [IntegrationStatus.Connected]: getPhrase('connectedStatusLabel'),\n [IntegrationStatus.NotConnected]: getPhrase('notConnectedStatusLabel'),\n [IntegrationStatus.Reconnect]: getPhrase('reconnectStatusLabel')\n};\n\ninterface IntegrationToggleHeaderProps {\n status?: IntegrationStatus;\n configureTooltip?: string;\n configureAppLink?: Core.AppLink;\n}\n\nfunction IntegrationToggleHeader({\n status,\n configureTooltip,\n configureAppLink\n}: IntegrationToggleHeaderProps): JSX.Element {\n function onClickConfigure(e: React.MouseEvent): void {\n e.stopPropagation();\n e.preventDefault();\n\n Core.AppLinkHelper.trigger(configureAppLink);\n }\n\n const statusIndicatorClassName = StatusIndicatorClassNames[status] ?? '';\n const statusLabel = StatusIndicatorLabels[status] ?? '';\n\n return (\n <div className={`d-flex justify-content-between align-items-top position-absolute ps-2 pt-1 pe-1 ${styles.headerContainer}`}>\n <div className='d-flex flex-row align-items-center'>\n { statusIndicatorClassName && <span className={`inline-block ${styles.statusIndicator} ${statusIndicatorClassName}`} /> }\n { statusLabel && <span className={`ms-1 text-white`}>{statusLabel}</span> }\n </div>\n { configureAppLink && (\n <DivButton className={`cursor-pointer text-white`} onClick={onClickConfigure}>\n <SvgContainer\n size={SvgContainerSize.Medium}\n svgName={cvSvgLibrary.Cog}\n title={configureTooltip}\n tooltipPlacement='top'\n tooltipSpanHack\n />\n </DivButton>\n )}\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"partialToggle\":\"p5int\"};","import React from 'react';\n\nimport styles from './partial-integration-settings.scss';\n\ninterface PartialIntegrationToggleProps {\n className: string;\n}\n\nfunction PartialIntegrationToggle(props: PartialIntegrationToggleProps): JSX.Element {\n return (\n <div className={props.className}>\n <div className={`border rounded-3 partial-loading-background ${styles.partialToggle}`}>\n \n </div>\n </div>\n );\n}\n\ninterface PartialIntegrationSettingsProps {\n className: string;\n}\n\nexport function PartialIntegrationSettings(props: PartialIntegrationSettingsProps): JSX.Element {\n return (\n <>\n <PartialIntegrationToggle className={props.className} />\n <PartialIntegrationToggle className={props.className} />\n </>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"toggleContainer\":\"roVyL\"};","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\n\nimport { LocationContext } from 'libs/analytics/interfaces';\n\nimport { IntegrationId } from 'libs/shared/enums/IntegrationId';\nimport { IntegrationStatus } from 'libs/shared/enums/IntegrationStatus';\nimport { SettingKind } from 'libs/shared/enums/SettingKind';\nimport { SettingName } from 'libs/shared/enums/SettingName';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { PlayerIntegrationsRequests } from 'libs/shared/flight-requests/PlayerIntegrationsRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { useSettings } from 'libs/shared/hooks/useSettings';\nimport { Config, CurrentUser, Integration } from 'libs/shared/interfaces';\nimport { IntegrationHelper } from 'libs/shared/utils/IntegrationHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { IntegrationToggle } from 'apps/settings/components/integration-toggle/IntegrationToggle';\nimport { SettingsLayout } from 'apps/settings/components/settings-layout/SettingsLayout';\n\nimport { PartialIntegrationSettings } from './partial-loading/PartialIntegrationSettings';\n\nimport styles from './integration-settings.scss';\n\nconst namespace = 'settings.integrationSettings';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst viviTooltipPhrases = {\n [IntegrationStatus.Connected]: getPhrase('viviConnectedStatusTooltip'),\n [IntegrationStatus.NotConnected]: getPhrase('viviNotConnectedStatusTooltip'),\n [IntegrationStatus.Reconnect]: getPhrase('viviReconnectStatusTooltip')\n};\n\nexport function IntegrationSettingsView(): JSX.Element {\n useSetPageMetadata({ title: getPhrase('pageTitle') });\n /**\n * IntegrationToggle will blindly update the UI before the api call is returned so we need a way\n * to let if know if there is an error updating the setting\n */\n const [ updateErrors, setUpdateErrors ] = React.useState<{ [integrationName: string ]: boolean}>({});\n\n const alerts = useAlerts();\n\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const viviStatus = Flight.useBasicFetch<IntegrationStatus>(\n currentUser.data?.isAuthenticated && PlayerIntegrationsRequests.getViviIntegrationStatus()\n );\n\n const {\n shareToGoogleClassroom,\n shareToMicrosoftTeams,\n hasEnabledAppleTvPlayback,\n hasEnabledViviPlayback,\n updateSetting,\n isLoadingSettings\n } = useSettings(LocationContext.Settings);\n\n const shareIntegrations = IntegrationHelper.getShareIntegrations(shareToGoogleClassroom, shareToMicrosoftTeams);\n\n const playerIntegrations = [\n {\n id: IntegrationId.AppleTv,\n name: getPhrase('appleTv'),\n settingName: SettingName.HasEnabledAppleTvPlayback,\n configureAppLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.APPLE_TV\n },\n configureTooltip: getPhrase('appleTvTooltip'),\n enabled: hasEnabledAppleTvPlayback\n },\n {\n id: IntegrationId.Vivi,\n name: getPhrase('vivi'),\n settingName: SettingName.HasEnabledViviPlayback,\n configureAppLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.VIVI\n },\n configureTooltip: viviTooltipPhrases[viviStatus.data] ?? '',\n enabled: hasEnabledViviPlayback,\n status: viviStatus.data\n }\n ];\n\n const dataLoaded = !!currentUser.data &&\n !!config.data &&\n viviStatus.hasCompleted &&\n !isLoadingSettings;\n\n const showPlayerIntegrations = playerIntegrations.length > 0;\n\n function onToggleIntegration(integration: Integration, enable: boolean): void {\n const successPhraseKey = enable ? 'enableIntegrationSuccess' : 'disableIntegrationSuccess';\n const errorPhraseKey = enable ? 'enableIntegrationError' : 'disableIntegrationError';\n\n function success(): void {\n alerts.success(getPhrase(successPhraseKey, { integrationName: integration.name, escapeText: true })),\n setUpdateErrors(errors => ({ ...errors, [integration.name]: false }));\n }\n\n function error(): void {\n alerts.error(getPhrase(errorPhraseKey, { integrationName: integration.name, escapeText: true })),\n setUpdateErrors(errors => ({ ...errors, [integration.name]: true }));\n }\n\n const newSetting = {\n name: integration.settingName,\n value: enable,\n kind: SettingKind.FeatureFlag\n };\n\n updateSetting(currentUser.data.customerId, newSetting, success, error);\n }\n\n return (\n <SettingsLayout\n heading={getPhrase('integrations')}\n breadcrumbs={[getPhrase('integrations')]}\n >\n <h2 className='h4'>{getPhrase('shareIntegrations')}</h2>\n <p className='mb-0'>{getPhrase('shareIntegrationsDescription')}</p>\n <div className='mx-n2'>\n {dataLoaded\n ? shareIntegrations.map((integration, index) => (\n <div key={index} className={`d-inline-block p-2 ${styles.toggleContainer}`}>\n <IntegrationToggle\n integration={integration}\n onToggleIntegration={onToggleIntegration}\n updateError={updateErrors[integration.name] ?? false}\n userCountryCode={currentUser.data.countryCode}\n />\n </div>\n ))\n : <PartialIntegrationSettings className={`d-inline-block p-2 ${styles.toggleContainer}`} />\n }\n </div>\n\n {showPlayerIntegrations && (\n <>\n <h2 className='h4 mt-3'>{getPhrase('playerIntegrations')}</h2>\n <p className='mb-0'>{getPhrase('playerIntegrationsDescription')}</p>\n <div className='mx-n2'>\n {dataLoaded\n ? playerIntegrations.map((integration, index) => (\n <div key={index} className={`d-inline-block p-2 ${styles.toggleContainer}`}>\n <IntegrationToggle\n integration={integration}\n onToggleIntegration={onToggleIntegration}\n updateError={updateErrors[integration.name] ?? false}\n userCountryCode={currentUser.data.countryCode}\n />\n </div>\n ))\n : <PartialIntegrationSettings className={`d-inline-block p-2 ${styles.toggleContainer}`} />\n }\n </div>\n </>\n )}\n </SettingsLayout>\n );\n}"],"names":["IntegrationId","OnlineSupportArticle","LiteSupportArticle","getPhrase","IntegrationHelper","getShareIntegrations","googleClassroomSetting","msftTeamsSetting","id","name","enabled","settingName","namespace","useCanAccessSettings","requiredPermissions","hasPermissions","settingsGroups","currentRoute","application","some","group","modules","settingsModule","appLink","action","SettingsLayout","props","canAccess","replace","breadcrumbs","map","i","active","length","className","heading","headingButton","description","children","LanguageService","IntegrationIconImageUrls","ImageUrls","IconContainerClassNames","IntregrationArticles","IntegrationToggle","integration","setEnabled","updateError","imageUrl","containerClassName","status","disabled","IntegrationStatus","I","IntegrationToggleHeader","configureTooltip","configureAppLink","src","ToggleSwitch","onClick","onToggleIntegration","on","href","ArticleHelper","target","StatusIndicatorClassNames","StatusIndicatorLabels","statusIndicatorClassName","statusLabel","DivButton","e","stopPropagation","preventDefault","SvgContainer","size","S","svgName","title","tooltipPlacement","tooltipSpanHack","PartialIntegrationToggle","PartialIntegrationSettings","viviTooltipPhrases","IntegrationSettingsView","useSetPageMetadata","updateErrors","setUpdateErrors","alerts","currentUser","UserRequests","config","ConfigRequests","viviStatus","data","isAuthenticated","PlayerIntegrationsRequests","useSettings","shareToGoogleClassroom","shareToMicrosoftTeams","hasEnabledAppleTvPlayback","hasEnabledViviPlayback","updateSetting","isLoadingSettings","shareIntegrations","playerIntegrations","SettingName","dataLoaded","hasCompleted","showPlayerIntegrations","enable","successPhraseKey","errorPhraseKey","newSetting","value","kind","SettingKind","customerId","success","integrationName","escapeText","errors","error","index","key","userCountryCode","countryCode"],"sourceRoot":""}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
/*! For license information please see 8248-
|
|
2
|
-
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[8248],{49602:(e,t,n)=>{var r;n.d(t,{b:()=>c}),function(e){e[e.None=0]="None",e[e.AllSubjects=1]="AllSubjects",e[e.AllLevels=2]="AllLevels",e[e.AllSubjectsAndAllLevels=3]="AllSubjectsAndAllLevels"}(r||(r={}));var a=n(25925),c={hasManyPresentationTypes:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=0,n=0;return null==e||e.forEach((function(e){e.type===a.R.Subject?t++:e.type===a.R.Curriculum&&n++})),{hasManySubjectPresentations:t>1,hasManyCurriculumPresentations:n>1}},getBulkPreferencesState:function(e){return e===r.AllSubjectsAndAllLevels?{levels:!0,subjects:!0}:{levels:e===r.AllLevels,subjects:e===r.AllSubjects}},hasBulkSelectedLevels:function(e){return e===r.AllLevels||e===r.AllSubjectsAndAllLevels},hasBulkSelectedTopics:function(e){return e===r.AllSubjects||e===r.AllSubjectsAndAllLevels},getNextBulkState:function(e,t){var n=r.None,a=r.AllSubjects,c=r.AllLevels,l=r.AllSubjectsAndAllLevels,o="topics"===t;switch(e){case n:default:return o?a:c;case a:return o?n:l;case c:return o?l:n;case l:return o?c:a}}}},2192:(e,t,n)=>{n.d(t,{M:()=>x,Q:()=>N});var r=n(32735),a=n(31453),c=n(45157),l=n(15611),o=n(12528),i=n(11834),s=n(83914),u=n(83345),m=n(7733),d=n(54610),f=n(9085),h=n(67453),v=n(45778),p=n(35223),g=n(88241),b="shared.subjectWidgetItem",y=function(e){var t=e.name,n=e.multiline,a=e.noUnderLine,c="".concat(g.Z.comingSoonPanel," \n d-flex flex-column align-items-center justify-content-center px-3 text-center"),l="";return n?l+=" ".concat(g.Z.clamped," clamp-2"):(c+=" text-nowrap",l+=" text-truncate"),r.createElement("div",{className:c},r.createElement("small",{className:"text-secondary"},r.createElement(u.x,{namespace:b,phrase:"comingSoon"})),r.createElement("p",{className:"".concat(a?"":g.Z.name," h6")},r.createElement("span",{className:l},t)))},E=function(e){var t=e.name,n=e.multiline,a=e.subtitle,c=e.noUnderLine,l=e.newVideosCount,o="px-3 d-flex flex-column justify-content-center",i="".concat(c?"":g.Z.name," h6");return n?i+=" ".concat(l?"clamp-2":"clamp-3"," text-start"):(o+=" text-nowrap text-truncate",i+=" text-truncate mb-0"),r.createElement("div",{className:o},a&&r.createElement("div",{className:"text-secondary clamp-1 ".concat(g.Z.text)},a),r.createElement("div",{className:i,title:t},t),!!l&&r.createElement("div",{className:"fw-semibold d-inline-block rounded-pill px-2 mt-1 bg-light-green w-fit h-fit text-green ".concat(g.Z.newVideos)},r.createElement(u.x,{namespace:b,phrase:"newVideos",options:{smartCount:l}})))};function x(e){var t,n=h.j.createUrl(e.coverUrl,{size:e.isLarge?d.h2.Medium:d.h2.Small}),l=void 0;v.G.isClassification(e.data)&&(l=e.data);var u={name:e.data.name,multiline:e.isLarge||e.multiline,subtitle:e.subtitle,noUnderLine:e.highlightOnHover,newVideosCount:e.showNewVideosCount?null===(t=null==l?void 0:l.externalMetadata)||void 0===t?void 0:t.childDashboardNewVideoCount:0},b={backgroundImage:n?"url('".concat(n,"')"):null,backgroundColor:e.coverBgColor},x=(0,f.x)(e.data.name,m.o);return r.createElement("div",{className:"".concat(e.themeColor?g.Z.hasThemeColor:"border"," d-flex position-relative ").concat(e.className," ").concat(g.Z.widgetItem," ").concat(e.isSelected?"border-success border-2":""," ").concat(e.highlightOnHover&&!e.themeColor?"bg-light-blue-hover":""),style:e.themeColor?{"--themeColor":e.themeColor}:{},id:"".concat(e.data.id,"-").concat(c.Y.getRandomInt())},e.isSelected&&r.createElement("div",{className:"".concat(g.Z.selectedMask," border-2")}),r.createElement("div",{className:"".concat(g.Z.imagePanel," ").concat(e.isLarge?g.Z.large:"")},e.isSelected&&!e.hideCheckmark&&r.createElement("div",{className:g.Z.selected},r.createElement(o.f,{svgName:p.vn.Check,svgSize:s.S.Large,textVariant:"white",variant:"green"})),n&&r.createElement("div",{className:(0,a.A)(g.Z.image,e.imageClassName,!e.coverBgColor&&e.showFallbackBackgroundColour&&x),style:b}),!e.hideFallback&&r.createElement(i.oy,{type:i.mS.Subject,extraClasses:e.isLarge?g.Z.large:""})),e.isComingSoon?r.createElement(y,Object.assign({},u)):r.createElement(E,Object.assign({},u)))}function N(e){var t,n=e.getChildAppLink?e.getChildAppLink(e.data):null;return r.createElement(r.Fragment,null,n?r.createElement(l.F,{className:g.Z.appLink,appLink:n,analyticsData:e.analyticsData,analyticsOptions:e.analyticsOptions,appLinkOptions:null===(t=e.getChildAppLinkOptions)||void 0===t?void 0:t.call(e)},r.createElement(x,Object.assign({},e))):r.createElement(x,Object.assign({},e)))}x.defaultProps={showFallbackBackgroundColour:!0}},24871:(e,t,n)=>{n.d(t,{N:()=>c});var r=n(32735);const a={annotation:"LkdHB",above:"ROdbm",below:"OzyHx",left:"W9EBF",right:"zhio2",divider:"cdR_p",imageContainer:"QZZMF"};function c(e){return r.createElement("div",{className:(t="d-flex align-items-center text-center position-relative w-100 ".concat(a.imageContainer),"center"===e.contentPosition&&(t+=" px-5 justify-content-center"),"right"===e.contentPosition&&(t+=" me-n5 justify-content-end"),t)},!!e.annotationUrl&&r.createElement("div",{className:function(){var t=a.annotation;switch(e.annotationPosition){case"top-left":t+=" ".concat(a.above," ").concat(a.left);break;case"top-right":t+=" ".concat(a.above," ").concat(a.right);break;case"bottom-left":t+=" ".concat(a.below," ").concat(a.left);break;case"bottom-right":t+=" ".concat(a.below," ").concat(a.right)}return e.annotationClassName&&(t+=" ".concat(e.annotationClassName)),t}()},r.createElement("img",{className:"img-fluid",src:e.annotationUrl})),e.children,"right"===e.contentPosition&&r.createElement("div",{className:a.divider}));var t}c.defaultProps={contentPosition:"center"}},32547:(e,t,n)=>{n.d(t,{Y:()=>u});var r=n(32735),a=n(54610),c=n(67453),l=n(46400);const o={magicTab:"H5jzm",subjectPlaceholder:"r1L6T",placeholderCover:"z9CFT",promotedTopicPlaceholder:"PbYs6",promotedTopicPlaceholderText:"hZ8Nf"};function i(e){return r.createElement("li",{className:"col-4"},r.createElement("div",{className:"d-flex border rounded-3 overflow-hidden ".concat(o.subjectPlaceholder)},e.coverUrl?r.createElement("div",{className:o.placeholderCover},r.createElement("img",{className:"img-fluid",src:c.j.createUrl(e.coverUrl,{size:a.h2.Small})})):r.createElement("div",{className:"".concat(o.placeholderCover," bg-light-blue")})))}function s(){return r.createElement("li",{className:"col-4"},r.createElement("div",{className:"bg-light-blue rounded-3 w-100 p-1 ".concat(o.promotedTopicPlaceholder)}))}function u(e){var t,n,a,c=Math.max(12-(null!==(n=null===(t=e.subjects)||void 0===t?void 0:t.length)&&void 0!==n?n:0),0);return r.createElement(l.L,{presentation:e.presentation,curriculum:e.curriculum,editingCurriculum:e.editingCurriculum},r.createElement("div",{className:"px-3 pt-3 w-100 d-flex flex-column align-items-center"},r.createElement("div",{className:"rounded-3 border overflow-hidden d-flex mb-2"},r.createElement("div",{className:"bg-light ".concat(o.magicTab)}),r.createElement("div",{className:"".concat(o.magicTab)})),r.createElement("ul",{className:"list-unstyled mb-0 row w-100 g-xl-2 g-lg-1 mb-2"},null===(a=e.subjects)||void 0===a?void 0:a.map((function(e){var t;return r.createElement(i,{key:e.id,coverUrl:null===(t=e.cover)||void 0===t?void 0:t.url})})),new Array(c).fill(0).map((function(e,t){return r.createElement(i,{key:t})}))),r.createElement("ul",{className:"list-unstyled mb-0 row w-100 g-xl-2 g-lg-1"},r.createElement(s,null),r.createElement(s,null),r.createElement(s,null),r.createElement(s,null),r.createElement(s,null),r.createElement(s,null),r.createElement(s,null),r.createElement(s,null),r.createElement(s,null))))}},46400:(e,t,n)=>{n.d(t,{L:()=>g});var r=n(32735),a=n(12528),c=n(83914),l=n(2786),o=n(83345),i=n(54610),s=n(72639),u=n(79967),m=n(67453),d=n(35223),f=n(87114);const h={dot:"AlRQD",logo:"L42gR",blackBar:"ESCxm",topNav:"a3G_4",leftNav:"YxGVV",belowHeader:"jc_cg",leftNavIcon:"U6i6r",leftNavText:"LnYlW",presentationPlaceholderIcon:"Ljaju",presentationIcon:"QdwPq",presentationPlaceholderText:"af06V",curriculumIcon:"N7T4T",curriculumIconSmall:"_6xrUg",curriculumContainer:"Z65qX",iconPlaceholder:"CKOXL",shadow:"zygeJ",presentationName:"Oj7Dt"};var v="onboarding.mockLayout";function p(){return r.createElement("div",{className:"d-flex align-items-center justify-content-center mb-2 px-3"},r.createElement("div",{className:"".concat(h.leftNavIcon," rounded-circle")}),r.createElement("div",{className:"".concat(h.leftNavText," rounded-pill")}))}function g(e){var t,n,g=(0,u.k)();return r.createElement("div",{className:"border border-dark border-2 bg-white rounded-3 user-select-none overflow-hidden position-relative h-100 w-100"},!!e.editingCurriculum&&r.createElement("div",{className:"w-100 h-100 position-absolute ".concat(h.shadow)},r.createElement("div",{className:"d-flex align-items-center h-100 w-50 ".concat(h.curriculumContainer)},r.createElement("div",{className:"bg-white rounded-3 border p-3 w-100"},r.createElement("h2",{className:"h6 text-start"},r.createElement(o.x,{namespace:v,phrase:"curriculum"})),e.curriculum?r.createElement("div",{className:"d-flex align-items-center"},r.createElement("div",{className:"".concat(h.curriculumIcon," rounded-circle me-2 border")},r.createElement(a.f,{imageUrl:m.j.createUrl(null===(t=e.curriculum.cover)||void 0===t?void 0:t.url,{size:i.h2.Small})})),r.createElement("div",{className:"text-start"},e.curriculum.name)):r.createElement("div",{className:"d-flex align-items-center text-secondary"},r.createElement("div",{className:"me-2 rounded-circle p-1 ".concat(h.iconPlaceholder)},r.createElement(a.f,{svgSize:c.S.Large,textVariant:"secondary",svgName:d.vn.GraduationCap})),r.createElement(o.x,{namespace:v,phrase:"selectCurriculum"}))))),r.createElement("div",{className:"bg-dark d-flex px-3 py-2 ".concat(h.blackBar)},r.createElement("div",{className:"rounded-circle me-2 ".concat(h.dot)}),r.createElement("div",{className:"rounded-circle me-2 ".concat(h.dot)}),r.createElement("div",{className:"rounded-circle ".concat(h.dot)})),r.createElement("div",{className:"border-bottom px-3 py-2 d-flex align-items-center ".concat(h.topNav)},r.createElement("div",{className:"".concat(h.logo," me-4")},g.xs?r.createElement(l.bc,null):r.createElement(l.$S,null)),r.createElement("div",{className:"form-control w-75 d-flex justify-content-start"},r.createElement(c.x,{svgName:d.vn.Search})),!!e.curriculum&&r.createElement("div",{className:"".concat(h.curriculumIconSmall," rounded-circle ms-2 me-n1 border")},r.createElement(a.f,{imageUrl:null===(n=e.curriculum.cover)||void 0===n?void 0:n.url}))),r.createElement("div",{className:"d-flex ".concat(h.belowHeader)},r.createElement("div",{className:"".concat(h.leftNav," border-end")},r.createElement("div",{className:"d-flex flex-column pt-3 h-100"},r.createElement(p,null),r.createElement(p,null),r.createElement(p,null),r.createElement(p,null),r.createElement(p,null),r.createElement("div",{className:"d-flex align-items-end h-100 w-100"},r.createElement("div",{className:"border-top p-3 w-100"},r.createElement("div",{className:"d-flex align-items-center"},r.createElement("div",{className:"".concat(function(){if(!e.presentation)return h.presentationPlaceholderIcon;switch(f.i.getMappedPresentationLevel(e.presentation.learningLevel)){case s.p.Level_1:return"bg-indigo ".concat(h.presentationIcon);case s.p.Level_3:return"bg-blue ".concat(h.presentationIcon);default:case s.p.Level_2:return"bg-green ".concat(h.presentationIcon)}}()," text-white rounded")},r.createElement(c.x,{svgName:d.vn.School,size:c.S.Large})),e.presentation?r.createElement("span",{className:"fw-semibold text-truncate ".concat(h.presentationName)},e.presentation.name):r.createElement("div",{className:"".concat(h.presentationPlaceholderText," fw-semibold")},r.createElement(o.x,{namespace:v,phrase:"schoolLevel"}))))))),r.createElement("div",{className:"w-100 h-100 overflow-hidden"},e.children)))}},75258:(e,t,n)=>{n.r(t),n.d(t,{OnboardingSubjectsView:()=>G});var r=n(32735),a=n(23481),c=n(20354),l=n(65858),o=n(60736),i=n(45716),s=n(2158),u=n(49602),m=n(11607),d=n(83345),f=n(2192),h=n(54610),v=n(77963),p=n(65728),g=n(61699),b=n(31949),y=n(84703),E=n(79612),x=n(37802),N=n(67453),w=n(87114),S=n(99742),L=n(82817),j=n(86698),k=n(84550),C=n(12058),A=n(15114),P=n(24871),I=n(32547),O=n(73190),T=n(90815),_=n(67963);const U={selected:"igx0Y",disabled:"nDUWB",annotation:"IN0vA"};function B(e){return B="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},B(e)}function F(){F=function(){return t};var e,t={},n=Object.prototype,r=n.hasOwnProperty,a=Object.defineProperty||function(e,t,n){e[t]=n.value},c="function"==typeof Symbol?Symbol:{},l=c.iterator||"@@iterator",o=c.asyncIterator||"@@asyncIterator",i=c.toStringTag||"@@toStringTag";function s(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{s({},"")}catch(e){s=function(e,t,n){return e[t]=n}}function u(e,t,n,r){var c=t&&t.prototype instanceof g?t:g,l=Object.create(c.prototype),o=new P(r||[]);return a(l,"_invoke",{value:j(e,n,o)}),l}function m(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}t.wrap=u;var d="suspendedStart",f="suspendedYield",h="executing",v="completed",p={};function g(){}function b(){}function y(){}var E={};s(E,l,(function(){return this}));var x=Object.getPrototypeOf,N=x&&x(x(I([])));N&&N!==n&&r.call(N,l)&&(E=N);var w=y.prototype=g.prototype=Object.create(E);function S(e){["next","throw","return"].forEach((function(t){s(e,t,(function(e){return this._invoke(t,e)}))}))}function L(e,t){function n(a,c,l,o){var i=m(e[a],e,c);if("throw"!==i.type){var s=i.arg,u=s.value;return u&&"object"==B(u)&&r.call(u,"__await")?t.resolve(u.__await).then((function(e){n("next",e,l,o)}),(function(e){n("throw",e,l,o)})):t.resolve(u).then((function(e){s.value=e,l(s)}),(function(e){return n("throw",e,l,o)}))}o(i.arg)}var c;a(this,"_invoke",{value:function(e,r){function a(){return new t((function(t,a){n(e,r,t,a)}))}return c=c?c.then(a,a):a()}})}function j(t,n,r){var a=d;return function(c,l){if(a===h)throw Error("Generator is already running");if(a===v){if("throw"===c)throw l;return{value:e,done:!0}}for(r.method=c,r.arg=l;;){var o=r.delegate;if(o){var i=k(o,r);if(i){if(i===p)continue;return i}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(a===d)throw a=v,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);a=h;var s=m(t,n,r);if("normal"===s.type){if(a=r.done?v:f,s.arg===p)continue;return{value:s.arg,done:r.done}}"throw"===s.type&&(a=v,r.method="throw",r.arg=s.arg)}}}function k(t,n){var r=n.method,a=t.iterator[r];if(a===e)return n.delegate=null,"throw"===r&&t.iterator.return&&(n.method="return",n.arg=e,k(t,n),"throw"===n.method)||"return"!==r&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+r+"' method")),p;var c=m(a,t.iterator,n.arg);if("throw"===c.type)return n.method="throw",n.arg=c.arg,n.delegate=null,p;var l=c.arg;return l?l.done?(n[t.resultName]=l.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,p):l:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,p)}function C(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function A(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function P(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(C,this),this.reset(!0)}function I(t){if(t||""===t){var n=t[l];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var a=-1,c=function n(){for(;++a<t.length;)if(r.call(t,a))return n.value=t[a],n.done=!1,n;return n.value=e,n.done=!0,n};return c.next=c}}throw new TypeError(B(t)+" is not iterable")}return b.prototype=y,a(w,"constructor",{value:y,configurable:!0}),a(y,"constructor",{value:b,configurable:!0}),b.displayName=s(y,i,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===b||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,y):(e.__proto__=y,s(e,i,"GeneratorFunction")),e.prototype=Object.create(w),e},t.awrap=function(e){return{__await:e}},S(L.prototype),s(L.prototype,o,(function(){return this})),t.AsyncIterator=L,t.async=function(e,n,r,a,c){void 0===c&&(c=Promise);var l=new L(u(e,n,r,a),c);return t.isGeneratorFunction(n)?l:l.next().then((function(e){return e.done?e.value:l.next()}))},S(w),s(w,i,"Generator"),s(w,l,(function(){return this})),s(w,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},t.values=I,P.prototype={constructor:P,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(A),!t)for(var n in this)"t"===n.charAt(0)&&r.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var n=this;function a(r,a){return o.type="throw",o.arg=t,n.next=r,a&&(n.method="next",n.arg=e),!!a}for(var c=this.tryEntries.length-1;c>=0;--c){var l=this.tryEntries[c],o=l.completion;if("root"===l.tryLoc)return a("end");if(l.tryLoc<=this.prev){var i=r.call(l,"catchLoc"),s=r.call(l,"finallyLoc");if(i&&s){if(this.prev<l.catchLoc)return a(l.catchLoc,!0);if(this.prev<l.finallyLoc)return a(l.finallyLoc)}else if(i){if(this.prev<l.catchLoc)return a(l.catchLoc,!0)}else{if(!s)throw Error("try statement without catch or finally");if(this.prev<l.finallyLoc)return a(l.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&r.call(a,"finallyLoc")&&this.prev<a.finallyLoc){var c=a;break}}c&&("break"===e||"continue"===e)&&c.tryLoc<=t&&t<=c.finallyLoc&&(c=null);var l=c?c.completion:{};return l.type=e,l.arg=t,c?(this.method="next",this.next=c.finallyLoc,p):this.complete(l)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),p},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),A(n),p}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var a=r.arg;A(n)}return a}}throw Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:I(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=e),p}},t}function Z(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,c,l,o=[],i=!0,s=!1;try{if(c=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;i=!1}else for(;!(i=(r=c.call(n)).done)&&(o.push(r.value),o.length!==t);i=!0);}catch(e){s=!0,a=e}finally{try{if(!i&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(s)throw a}}return o}}(e,t)||function(e,t){if(e){if("string"==typeof e)return V(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?V(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function V(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var z=function(e,t,n,r){return new(n||(n=Promise))((function(a,c){function l(e){try{i(r.next(e))}catch(e){c(e)}}function o(e){try{i(r.throw(e))}catch(e){c(e)}}function i(e){var t;e.done?a(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(l,o)}i((r=r.apply(e,t||[])).next())}))},M="onboarding.subjects";function G(e){var t,n,B,V=(0,_.u)(),G=(0,s.T)(V).getPathway,D=c.a.useBasicFetch(b.N.currentUser()),H=(0,j.y)().preferredPresentation,R=c.a.useGetFetchAsync(),Y=(0,O.Q)(e.redirectUrl),W=Y.onClickBack,J=Y.exitOnboarding,Q=Y.onSaveError,X=Y.completeStepAsync,q=(0,L.M)().preferredCurriculum,K=(0,T.H)().logEvent,$=G(),ee=i.H[$.currentScreen],te=(0,x.r)(null==ee?void 0:ee.analyticsLocation),ne=te.updateSettingAsync,re=te.bulkOnboardingPreferencesState;(0,E.M)({title:null!==(n=null===(t=null==ee?void 0:ee.getPageTitle)||void 0===t?void 0:t.call(ee))&&void 0!==n?n:""});var ae=c.a.useBasicFetch(g.o.allSubjectPreferences()),ce=c.a.useBasicFetch(g.o.mySubjectPreferences()),le=u.b.hasBulkSelectedTopics(re),oe=Z(r.useState([]),2),ie=oe[0],se=oe[1],ue=Z(r.useState(le),2),me=ue[0],de=ue[1],fe=(0,y.n)(),he=null===(B=ae.data)||void 0===B?void 0:B.filter((function(e){var t;return!o.A[e.presentationId]||!!(null===(t=o.A[e.presentationId])||void 0===t?void 0:t[e.id])}));return r.useEffect((function(){var e;ce.hasCompleted&&(null===(e=ce.data)||void 0===e?void 0:e.length)&&(me||se(ce.data))}),[ce.hasCompleted]),r.createElement(A.z,{namespace:M},r.createElement(A.z.Left,{className:"bg-ultramarine d-flex flex-column align-items-end justify-content-center"},r.createElement(P.N,{annotationUrl:S.W.OnboardingV2.Subjects.ANNOTATION,annotationPosition:"top-right",annotationClassName:"me-5 ".concat(U.annotation)},r.createElement(I.Y,{presentation:H,subjects:me?he:ie,curriculum:q}))),r.createElement(A.z.Right,{hasCustomButtons:!1,onClickNext:function(){return z(this,void 0,void 0,F().mark((function e(){var t,n,r;return F().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return K(l.Vw.Click,l.Ix.Next,{subjects:ie.map((function(e){return{subjectId:e.id,subjectName:e.name}})),allSubjectsSelected:me,presentationId:H.id,presentationName:H.name,presentationDescription:H.description}),e.prev=1,t=[],me!==le&&t.push(ne(D.data.id,{name:p.E.BulkOnboardingPreferencesState,value:u.b.getNextBulkState(re,"topics"),kind:v.g.Permanent})),me||(n=ie.filter((function(e){return!ce.data.find((function(t){return t.id===e.id}))})),r=ce.data.filter((function(e){return!ie.find((function(t){return t.id===e.id}))})),(null==n?void 0:n.length)&&t.push(R(g.o.followSubjects(n.map((function(e){return e.id}))))),(null==r?void 0:r.length)&&t.push(R(g.o.unfollowSubjects(r.map((function(e){return e.id})))))),e.next=7,Promise.all(t);case 7:return e.next=9,X();case 9:e.next=15;break;case 11:return e.prev=11,e.t0=e.catch(1),Q(),e.abrupt("return",Promise.reject());case 15:case"end":return e.stop()}}),e,null,[[1,11]])})))},onClickBack:W,onClickComeBackLater:J,disableNext:!ie.length&&!me},r.createElement(k.W,null,r.createElement(d.x,{phrase:fe?"headingKdm":"heading"})),r.createElement(C.X,null,r.createElement(d.x,{phrase:"info"})),r.createElement(m.L,{onClick:function(){K(l.Vw.Select,l.Ix.SelectAllSubjects,{presentationId:H.id,presentationName:H.name,presentationDescription:H.description}),me||se([]),de(!me)}},r.createElement(f.M,{data:{name:a.T.getPhrase(M,"allSubjects")},coverUrl:w.i.getPresentationLevelImage(H.learningLevel,"cover"),isSelected:me,multiline:!0})),r.createElement("div",{className:"d-flex align-items-center justify-content-between py-3"},r.createElement("hr",{className:"m-0 flex-grow-1 border-dark"}),r.createElement("p",{className:"mb-0 px-3"},r.createElement(d.x,{phrase:"orSelectSubjects"})),r.createElement("hr",{className:"m-0 flex-grow-1 border-dark"})),r.createElement("ul",{className:"list-unstyled row g-2 mb-0"},null==he?void 0:he.map((function(e){var t,n=!!ie.find((function(t){return t.id===e.id})),a="";return me?a+="cursor-default ".concat(U.disabled):n&&(a+=U.selected),r.createElement("li",{key:e.id,className:"col-12 col-sm-6 col-md-6 col-lg-12 col-xl-6"},r.createElement(m.L,{onClick:function(){return function(e){me||(K(l.Vw.Select,l.Ix.SelectSubject,{subjectId:e.id,subjectName:e.name,presentationId:H.id,presentationName:H.name,presentationDescription:H.description}),ie.find((function(t){return t.id===e.id}))?se(ie.filter((function(t){return t.id!==e.id}))):se(ie.concat(e)))}(e)},disabled:me,className:a},r.createElement(f.M,{data:e,coverUrl:N.j.createUrl(null===(t=e.cover)||void 0===t?void 0:t.url,{size:h.h2.Small}),isSelected:n,multiline:!0})))}))),r.createElement(C.X,{className:"mt-2"},r.createElement(d.x,{phrase:"addMoreLater"}))))}},88241:(e,t,n)=>{n.d(t,{Z:()=>r});const r={appLink:"fFjKN",name:"A_by9",selectedMask:"xSQtR",widgetItem:"Ys9W_",hasThemeColor:"DX2ua",text:"JfAoy",imagePanel:"aUNDc",partialLargeImage:"RuLxv",selected:"BViJb",image:"LkTep",dragHandle:"CJqvP",large:"R5clw",comingSoonPanel:"Wa2PG",newVideos:"s61h8",editSubjectsItem:"gGNFD",allSubjectsItem:"IHdlJ",logoContainer:"Nzaes",draggingItem:"zUOye",partialLargeFallback:"FmJP9",partialIcon:"sdZuo"}}}]);
|
|
3
|
-
//# sourceMappingURL=8248-
|
|
1
|
+
/*! For license information please see 8248-41dad9bf71-lite.chunk.js.LICENSE.txt */
|
|
2
|
+
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[8248],{49602:(e,t,n)=>{var r;n.d(t,{b:()=>c}),function(e){e[e.None=0]="None",e[e.AllSubjects=1]="AllSubjects",e[e.AllLevels=2]="AllLevels",e[e.AllSubjectsAndAllLevels=3]="AllSubjectsAndAllLevels"}(r||(r={}));var a=n(25925),c={hasManyPresentationTypes:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=0,n=0;return null==e||e.forEach((function(e){e.type===a.R.Subject?t++:e.type===a.R.Curriculum&&n++})),{hasManySubjectPresentations:t>1,hasManyCurriculumPresentations:n>1}},getBulkPreferencesState:function(e){return e===r.AllSubjectsAndAllLevels?{levels:!0,subjects:!0}:{levels:e===r.AllLevels,subjects:e===r.AllSubjects}},hasBulkSelectedLevels:function(e){return e===r.AllLevels||e===r.AllSubjectsAndAllLevels},hasBulkSelectedTopics:function(e){return e===r.AllSubjects||e===r.AllSubjectsAndAllLevels},getNextBulkState:function(e,t){var n=r.None,a=r.AllSubjects,c=r.AllLevels,l=r.AllSubjectsAndAllLevels,o="topics"===t;switch(e){case n:default:return o?a:c;case a:return o?n:l;case c:return o?l:n;case l:return o?c:a}}}},2192:(e,t,n)=>{n.d(t,{M:()=>x,Q:()=>N});var r=n(32735),a=n(31453),c=n(45157),l=n(15611),o=n(12528),i=n(11834),s=n(83914),u=n(83345),m=n(7733),d=n(54610),f=n(9085),h=n(67453),v=n(45778),p=n(35223),g=n(88241),b="shared.subjectWidgetItem",y=function(e){var t=e.name,n=e.multiline,a=e.noUnderLine,c="".concat(g.Z.comingSoonPanel," \n d-flex flex-column align-items-center justify-content-center px-3 text-center"),l="";return n?l+=" ".concat(g.Z.clamped," clamp-2"):(c+=" text-nowrap",l+=" text-truncate"),r.createElement("div",{className:c},r.createElement("small",{className:"text-secondary"},r.createElement(u.x,{namespace:b,phrase:"comingSoon"})),r.createElement("p",{className:"".concat(a?"":g.Z.name," h6")},r.createElement("span",{className:l},t)))},E=function(e){var t=e.name,n=e.multiline,a=e.subtitle,c=e.noUnderLine,l=e.newVideosCount,o="px-3 d-flex flex-column justify-content-center",i="".concat(c?"":g.Z.name," h6");return n?i+=" ".concat(l?"clamp-2":"clamp-3"," text-start"):(o+=" text-nowrap text-truncate",i+=" text-truncate mb-0"),r.createElement("div",{className:o},a&&r.createElement("div",{className:"text-secondary clamp-1 ".concat(g.Z.text)},a),r.createElement("div",{className:i,title:t},t),!!l&&r.createElement("div",{className:"fw-semibold d-inline-block rounded-pill px-2 mt-1 bg-light-green w-fit h-fit text-green ".concat(g.Z.newVideos)},r.createElement(u.x,{namespace:b,phrase:"newVideos",options:{smartCount:l}})))};function x(e){var t,n=h.j.createUrl(e.coverUrl,{size:e.isLarge?d.h2.Medium:d.h2.Small}),l=void 0;v.G.isClassification(e.data)&&(l=e.data);var u={name:e.data.name,multiline:e.isLarge||e.multiline,subtitle:e.subtitle,noUnderLine:e.highlightOnHover,newVideosCount:e.showNewVideosCount?null===(t=null==l?void 0:l.externalMetadata)||void 0===t?void 0:t.childDashboardNewVideoCount:0},b={backgroundImage:n?"url('".concat(n,"')"):null,backgroundColor:e.coverBgColor},x=(0,f.x)(e.data.name,m.o);return r.createElement("div",{className:"".concat(e.themeColor?g.Z.hasThemeColor:"border"," d-flex position-relative ").concat(e.className," ").concat(g.Z.widgetItem," ").concat(e.isSelected?"border-success border-2":""," ").concat(e.highlightOnHover&&!e.themeColor?"bg-light-blue-hover":""),style:e.themeColor?{"--themeColor":e.themeColor}:{},id:"".concat(e.data.id,"-").concat(c.Y.getRandomInt())},e.isSelected&&r.createElement("div",{className:"".concat(g.Z.selectedMask," border-2")}),r.createElement("div",{className:"".concat(g.Z.imagePanel," ").concat(e.isLarge?g.Z.large:"")},e.isSelected&&!e.hideCheckmark&&r.createElement("div",{className:g.Z.selected},r.createElement(o.f,{svgName:p.vn.Check,svgSize:s.S.Large,textVariant:"white",variant:"green"})),n&&r.createElement("div",{className:(0,a.A)(g.Z.image,e.imageClassName,!e.coverBgColor&&e.showFallbackBackgroundColour&&x),style:b}),!e.hideFallback&&r.createElement(i.oy,{type:i.mS.Subject,extraClasses:e.isLarge?g.Z.large:""})),e.isComingSoon?r.createElement(y,Object.assign({},u)):r.createElement(E,Object.assign({},u)))}function N(e){var t,n=e.getChildAppLink?e.getChildAppLink(e.data):null;return r.createElement(r.Fragment,null,n?r.createElement(l.F,{className:g.Z.appLink,appLink:n,analyticsData:e.analyticsData,analyticsOptions:e.analyticsOptions,appLinkOptions:null===(t=e.getChildAppLinkOptions)||void 0===t?void 0:t.call(e)},r.createElement(x,Object.assign({},e))):r.createElement(x,Object.assign({},e)))}x.defaultProps={showFallbackBackgroundColour:!0}},24871:(e,t,n)=>{n.d(t,{N:()=>c});var r=n(32735);const a={annotation:"LkdHB",above:"ROdbm",below:"OzyHx",left:"W9EBF",right:"zhio2",divider:"cdR_p",imageContainer:"QZZMF"};function c(e){return r.createElement("div",{className:(t="d-flex align-items-center text-center position-relative w-100 ".concat(a.imageContainer),"center"===e.contentPosition&&(t+=" px-5 justify-content-center"),"right"===e.contentPosition&&(t+=" me-n5 justify-content-end"),t)},!!e.annotationUrl&&r.createElement("div",{className:function(){var t=a.annotation;switch(e.annotationPosition){case"top-left":t+=" ".concat(a.above," ").concat(a.left);break;case"top-right":t+=" ".concat(a.above," ").concat(a.right);break;case"bottom-left":t+=" ".concat(a.below," ").concat(a.left);break;case"bottom-right":t+=" ".concat(a.below," ").concat(a.right)}return e.annotationClassName&&(t+=" ".concat(e.annotationClassName)),t}()},r.createElement("img",{className:"img-fluid",src:e.annotationUrl})),e.children,"right"===e.contentPosition&&r.createElement("div",{className:a.divider}));var t}c.defaultProps={contentPosition:"center"}},32547:(e,t,n)=>{n.d(t,{Y:()=>u});var r=n(32735),a=n(54610),c=n(67453),l=n(46400);const o={magicTab:"H5jzm",subjectPlaceholder:"r1L6T",placeholderCover:"z9CFT",promotedTopicPlaceholder:"PbYs6",promotedTopicPlaceholderText:"hZ8Nf"};function i(e){return r.createElement("li",{className:"col-4"},r.createElement("div",{className:"d-flex border rounded-3 overflow-hidden ".concat(o.subjectPlaceholder)},e.coverUrl?r.createElement("div",{className:o.placeholderCover},r.createElement("img",{className:"img-fluid",src:c.j.createUrl(e.coverUrl,{size:a.h2.Small})})):r.createElement("div",{className:"".concat(o.placeholderCover," bg-light-blue")})))}function s(){return r.createElement("li",{className:"col-4"},r.createElement("div",{className:"bg-light-blue rounded-3 w-100 p-1 ".concat(o.promotedTopicPlaceholder)}))}function u(e){var t,n,a,c=Math.max(12-(null!==(n=null===(t=e.subjects)||void 0===t?void 0:t.length)&&void 0!==n?n:0),0);return r.createElement(l.L,{presentation:e.presentation,curriculum:e.curriculum,editingCurriculum:e.editingCurriculum},r.createElement("div",{className:"px-3 pt-3 w-100 d-flex flex-column align-items-center"},r.createElement("div",{className:"rounded-3 border overflow-hidden d-flex mb-2"},r.createElement("div",{className:"bg-light ".concat(o.magicTab)}),r.createElement("div",{className:"".concat(o.magicTab)})),r.createElement("ul",{className:"list-unstyled mb-0 row w-100 g-xl-2 g-lg-1 mb-2"},null===(a=e.subjects)||void 0===a?void 0:a.map((function(e){var t;return r.createElement(i,{key:e.id,coverUrl:null===(t=e.cover)||void 0===t?void 0:t.url})})),new Array(c).fill(0).map((function(e,t){return r.createElement(i,{key:t})}))),r.createElement("ul",{className:"list-unstyled mb-0 row w-100 g-xl-2 g-lg-1"},r.createElement(s,null),r.createElement(s,null),r.createElement(s,null),r.createElement(s,null),r.createElement(s,null),r.createElement(s,null),r.createElement(s,null),r.createElement(s,null),r.createElement(s,null))))}},46400:(e,t,n)=>{n.d(t,{L:()=>g});var r=n(32735),a=n(12528),c=n(83914),l=n(2786),o=n(83345),i=n(54610),s=n(72639),u=n(79967),m=n(67453),d=n(35223),f=n(87114);const h={dot:"AlRQD",logo:"L42gR",blackBar:"ESCxm",topNav:"a3G_4",leftNav:"YxGVV",belowHeader:"jc_cg",leftNavIcon:"U6i6r",leftNavText:"LnYlW",presentationPlaceholderIcon:"Ljaju",presentationIcon:"QdwPq",presentationPlaceholderText:"af06V",curriculumIcon:"N7T4T",curriculumIconSmall:"_6xrUg",curriculumContainer:"Z65qX",iconPlaceholder:"CKOXL",shadow:"zygeJ",presentationName:"Oj7Dt"};var v="onboarding.mockLayout";function p(){return r.createElement("div",{className:"d-flex align-items-center justify-content-center mb-2 px-3"},r.createElement("div",{className:"".concat(h.leftNavIcon," rounded-circle")}),r.createElement("div",{className:"".concat(h.leftNavText," rounded-pill")}))}function g(e){var t,n,g=(0,u.k)();return r.createElement("div",{className:"border border-dark border-2 bg-white rounded-3 user-select-none overflow-hidden position-relative h-100 w-100"},!!e.editingCurriculum&&r.createElement("div",{className:"w-100 h-100 position-absolute ".concat(h.shadow)},r.createElement("div",{className:"d-flex align-items-center h-100 w-50 ".concat(h.curriculumContainer)},r.createElement("div",{className:"bg-white rounded-3 border p-3 w-100"},r.createElement("h2",{className:"h6 text-start"},r.createElement(o.x,{namespace:v,phrase:"curriculum"})),e.curriculum?r.createElement("div",{className:"d-flex align-items-center"},r.createElement("div",{className:"".concat(h.curriculumIcon," rounded-circle me-2 border")},r.createElement(a.f,{imageUrl:m.j.createUrl(null===(t=e.curriculum.cover)||void 0===t?void 0:t.url,{size:i.h2.Small})})),r.createElement("div",{className:"text-start"},e.curriculum.name)):r.createElement("div",{className:"d-flex align-items-center text-secondary"},r.createElement("div",{className:"me-2 rounded-circle p-1 ".concat(h.iconPlaceholder)},r.createElement(a.f,{svgSize:c.S.Large,textVariant:"secondary",svgName:d.vn.GraduationCap})),r.createElement(o.x,{namespace:v,phrase:"selectCurriculum"}))))),r.createElement("div",{className:"bg-dark d-flex px-3 py-2 ".concat(h.blackBar)},r.createElement("div",{className:"rounded-circle me-2 ".concat(h.dot)}),r.createElement("div",{className:"rounded-circle me-2 ".concat(h.dot)}),r.createElement("div",{className:"rounded-circle ".concat(h.dot)})),r.createElement("div",{className:"border-bottom px-3 py-2 d-flex align-items-center ".concat(h.topNav)},r.createElement("div",{className:"".concat(h.logo," me-4")},g.xs?r.createElement(l.bc,null):r.createElement(l.$S,null)),r.createElement("div",{className:"form-control w-75 d-flex justify-content-start"},r.createElement(c.x,{svgName:d.vn.Search})),!!e.curriculum&&r.createElement("div",{className:"".concat(h.curriculumIconSmall," rounded-circle ms-2 me-n1 border")},r.createElement(a.f,{imageUrl:null===(n=e.curriculum.cover)||void 0===n?void 0:n.url}))),r.createElement("div",{className:"d-flex ".concat(h.belowHeader)},r.createElement("div",{className:"".concat(h.leftNav," border-end")},r.createElement("div",{className:"d-flex flex-column pt-3 h-100"},r.createElement(p,null),r.createElement(p,null),r.createElement(p,null),r.createElement(p,null),r.createElement(p,null),r.createElement("div",{className:"d-flex align-items-end h-100 w-100"},r.createElement("div",{className:"border-top p-3 w-100"},r.createElement("div",{className:"d-flex align-items-center"},r.createElement("div",{className:"".concat(function(){if(!e.presentation)return h.presentationPlaceholderIcon;switch(f.i.getMappedPresentationLevel(e.presentation.learningLevel)){case s.p.Level_1:return"bg-indigo ".concat(h.presentationIcon);case s.p.Level_3:return"bg-blue ".concat(h.presentationIcon);default:case s.p.Level_2:return"bg-green ".concat(h.presentationIcon)}}()," text-white rounded")},r.createElement(c.x,{svgName:d.vn.School,size:c.S.Large})),e.presentation?r.createElement("span",{className:"fw-semibold text-truncate ".concat(h.presentationName)},e.presentation.name):r.createElement("div",{className:"".concat(h.presentationPlaceholderText," fw-semibold")},r.createElement(o.x,{namespace:v,phrase:"schoolLevel"}))))))),r.createElement("div",{className:"w-100 h-100 overflow-hidden"},e.children)))}},75258:(e,t,n)=>{n.r(t),n.d(t,{OnboardingSubjectsView:()=>G});var r=n(32735),a=n(23481),c=n(20354),l=n(65858),o=n(60736),i=n(45716),s=n(2158),u=n(49602),m=n(11607),d=n(83345),f=n(2192),h=n(54610),v=n(77963),p=n(65728),g=n(61699),b=n(31949),y=n(84703),E=n(79612),x=n(37802),N=n(67453),w=n(87114),S=n(99742),L=n(82817),j=n(86698),k=n(84550),C=n(12058),A=n(15114),P=n(24871),I=n(32547),O=n(73190),T=n(90815),_=n(67963);const U={selected:"igx0Y",disabled:"nDUWB",annotation:"IN0vA"};function B(e){return B="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},B(e)}function F(){F=function(){return t};var e,t={},n=Object.prototype,r=n.hasOwnProperty,a=Object.defineProperty||function(e,t,n){e[t]=n.value},c="function"==typeof Symbol?Symbol:{},l=c.iterator||"@@iterator",o=c.asyncIterator||"@@asyncIterator",i=c.toStringTag||"@@toStringTag";function s(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{s({},"")}catch(e){s=function(e,t,n){return e[t]=n}}function u(e,t,n,r){var c=t&&t.prototype instanceof g?t:g,l=Object.create(c.prototype),o=new P(r||[]);return a(l,"_invoke",{value:j(e,n,o)}),l}function m(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}t.wrap=u;var d="suspendedStart",f="suspendedYield",h="executing",v="completed",p={};function g(){}function b(){}function y(){}var E={};s(E,l,(function(){return this}));var x=Object.getPrototypeOf,N=x&&x(x(I([])));N&&N!==n&&r.call(N,l)&&(E=N);var w=y.prototype=g.prototype=Object.create(E);function S(e){["next","throw","return"].forEach((function(t){s(e,t,(function(e){return this._invoke(t,e)}))}))}function L(e,t){function n(a,c,l,o){var i=m(e[a],e,c);if("throw"!==i.type){var s=i.arg,u=s.value;return u&&"object"==B(u)&&r.call(u,"__await")?t.resolve(u.__await).then((function(e){n("next",e,l,o)}),(function(e){n("throw",e,l,o)})):t.resolve(u).then((function(e){s.value=e,l(s)}),(function(e){return n("throw",e,l,o)}))}o(i.arg)}var c;a(this,"_invoke",{value:function(e,r){function a(){return new t((function(t,a){n(e,r,t,a)}))}return c=c?c.then(a,a):a()}})}function j(t,n,r){var a=d;return function(c,l){if(a===h)throw Error("Generator is already running");if(a===v){if("throw"===c)throw l;return{value:e,done:!0}}for(r.method=c,r.arg=l;;){var o=r.delegate;if(o){var i=k(o,r);if(i){if(i===p)continue;return i}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(a===d)throw a=v,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);a=h;var s=m(t,n,r);if("normal"===s.type){if(a=r.done?v:f,s.arg===p)continue;return{value:s.arg,done:r.done}}"throw"===s.type&&(a=v,r.method="throw",r.arg=s.arg)}}}function k(t,n){var r=n.method,a=t.iterator[r];if(a===e)return n.delegate=null,"throw"===r&&t.iterator.return&&(n.method="return",n.arg=e,k(t,n),"throw"===n.method)||"return"!==r&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+r+"' method")),p;var c=m(a,t.iterator,n.arg);if("throw"===c.type)return n.method="throw",n.arg=c.arg,n.delegate=null,p;var l=c.arg;return l?l.done?(n[t.resultName]=l.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,p):l:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,p)}function C(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function A(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function P(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(C,this),this.reset(!0)}function I(t){if(t||""===t){var n=t[l];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var a=-1,c=function n(){for(;++a<t.length;)if(r.call(t,a))return n.value=t[a],n.done=!1,n;return n.value=e,n.done=!0,n};return c.next=c}}throw new TypeError(B(t)+" is not iterable")}return b.prototype=y,a(w,"constructor",{value:y,configurable:!0}),a(y,"constructor",{value:b,configurable:!0}),b.displayName=s(y,i,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===b||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,y):(e.__proto__=y,s(e,i,"GeneratorFunction")),e.prototype=Object.create(w),e},t.awrap=function(e){return{__await:e}},S(L.prototype),s(L.prototype,o,(function(){return this})),t.AsyncIterator=L,t.async=function(e,n,r,a,c){void 0===c&&(c=Promise);var l=new L(u(e,n,r,a),c);return t.isGeneratorFunction(n)?l:l.next().then((function(e){return e.done?e.value:l.next()}))},S(w),s(w,i,"Generator"),s(w,l,(function(){return this})),s(w,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},t.values=I,P.prototype={constructor:P,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(A),!t)for(var n in this)"t"===n.charAt(0)&&r.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var n=this;function a(r,a){return o.type="throw",o.arg=t,n.next=r,a&&(n.method="next",n.arg=e),!!a}for(var c=this.tryEntries.length-1;c>=0;--c){var l=this.tryEntries[c],o=l.completion;if("root"===l.tryLoc)return a("end");if(l.tryLoc<=this.prev){var i=r.call(l,"catchLoc"),s=r.call(l,"finallyLoc");if(i&&s){if(this.prev<l.catchLoc)return a(l.catchLoc,!0);if(this.prev<l.finallyLoc)return a(l.finallyLoc)}else if(i){if(this.prev<l.catchLoc)return a(l.catchLoc,!0)}else{if(!s)throw Error("try statement without catch or finally");if(this.prev<l.finallyLoc)return a(l.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&r.call(a,"finallyLoc")&&this.prev<a.finallyLoc){var c=a;break}}c&&("break"===e||"continue"===e)&&c.tryLoc<=t&&t<=c.finallyLoc&&(c=null);var l=c?c.completion:{};return l.type=e,l.arg=t,c?(this.method="next",this.next=c.finallyLoc,p):this.complete(l)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),p},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),A(n),p}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var a=r.arg;A(n)}return a}}throw Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:I(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=e),p}},t}function Z(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,c,l,o=[],i=!0,s=!1;try{if(c=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;i=!1}else for(;!(i=(r=c.call(n)).done)&&(o.push(r.value),o.length!==t);i=!0);}catch(e){s=!0,a=e}finally{try{if(!i&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(s)throw a}}return o}}(e,t)||function(e,t){if(e){if("string"==typeof e)return V(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?V(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function V(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var z=function(e,t,n,r){return new(n||(n=Promise))((function(a,c){function l(e){try{i(r.next(e))}catch(e){c(e)}}function o(e){try{i(r.throw(e))}catch(e){c(e)}}function i(e){var t;e.done?a(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(l,o)}i((r=r.apply(e,t||[])).next())}))},M="onboarding.subjects";function G(e){var t,n,B,V=(0,_.u)(),G=(0,s.T)(V).getPathway,D=c.a.useBasicFetch(b.N.currentUser()),H=(0,j.y)().preferredPresentation,R=c.a.useGetFetchAsync(),Y=(0,O.Q)(e.redirectUrl),W=Y.onClickBack,J=Y.exitOnboarding,Q=Y.onSaveError,X=Y.completeStepAsync,q=(0,L.M)().preferredCurriculum,K=(0,T.H)().logEvent,$=G(),ee=i.H[$.currentScreen],te=(0,x.r)(null==ee?void 0:ee.analyticsLocation),ne=te.updateSettingAsync,re=te.bulkOnboardingPreferencesState;(0,E.M)({title:null!==(n=null===(t=null==ee?void 0:ee.getPageTitle)||void 0===t?void 0:t.call(ee))&&void 0!==n?n:""});var ae=c.a.useBasicFetch(g.o.allSubjectPreferences()),ce=c.a.useBasicFetch(g.o.mySubjectPreferences()),le=u.b.hasBulkSelectedTopics(re),oe=Z(r.useState([]),2),ie=oe[0],se=oe[1],ue=Z(r.useState(le),2),me=ue[0],de=ue[1],fe=(0,y.n)(),he=null===(B=ae.data)||void 0===B?void 0:B.filter((function(e){var t;return!o.A[e.presentationId]||!!(null===(t=o.A[e.presentationId])||void 0===t?void 0:t[e.id])}));return r.useEffect((function(){var e;ce.hasCompleted&&(null===(e=ce.data)||void 0===e?void 0:e.length)&&(me||se(ce.data))}),[ce.hasCompleted]),r.createElement(A.z,{namespace:M},r.createElement(A.z.Left,{className:"bg-ultramarine d-flex flex-column align-items-end justify-content-center"},r.createElement(P.N,{annotationUrl:S.W.OnboardingV2.Subjects.ANNOTATION,annotationPosition:"top-right",annotationClassName:"me-5 ".concat(U.annotation)},r.createElement(I.Y,{presentation:H,subjects:me?he:ie,curriculum:q}))),r.createElement(A.z.Right,{hasCustomButtons:!1,onClickNext:function(){return z(this,void 0,void 0,F().mark((function e(){var t,n,r;return F().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return K(l.Vw.Click,l.Ix.Next,{subjects:ie.map((function(e){return{subjectId:e.id,subjectName:e.name}})),allSubjectsSelected:me,presentationId:H.id,presentationName:H.name,presentationDescription:H.description}),e.prev=1,t=[],me!==le&&t.push(ne(D.data.id,{name:p.E.BulkOnboardingPreferencesState,value:u.b.getNextBulkState(re,"topics"),kind:v.g.Setting})),me||(n=ie.filter((function(e){return!ce.data.find((function(t){return t.id===e.id}))})),r=ce.data.filter((function(e){return!ie.find((function(t){return t.id===e.id}))})),(null==n?void 0:n.length)&&t.push(R(g.o.followSubjects(n.map((function(e){return e.id}))))),(null==r?void 0:r.length)&&t.push(R(g.o.unfollowSubjects(r.map((function(e){return e.id})))))),e.next=7,Promise.all(t);case 7:return e.next=9,X();case 9:e.next=15;break;case 11:return e.prev=11,e.t0=e.catch(1),Q(),e.abrupt("return",Promise.reject());case 15:case"end":return e.stop()}}),e,null,[[1,11]])})))},onClickBack:W,onClickComeBackLater:J,disableNext:!ie.length&&!me},r.createElement(k.W,null,r.createElement(d.x,{phrase:fe?"headingKdm":"heading"})),r.createElement(C.X,null,r.createElement(d.x,{phrase:"info"})),r.createElement(m.L,{onClick:function(){K(l.Vw.Select,l.Ix.SelectAllSubjects,{presentationId:H.id,presentationName:H.name,presentationDescription:H.description}),me||se([]),de(!me)}},r.createElement(f.M,{data:{name:a.T.getPhrase(M,"allSubjects")},coverUrl:w.i.getPresentationLevelImage(H.learningLevel,"cover"),isSelected:me,multiline:!0})),r.createElement("div",{className:"d-flex align-items-center justify-content-between py-3"},r.createElement("hr",{className:"m-0 flex-grow-1 border-dark"}),r.createElement("p",{className:"mb-0 px-3"},r.createElement(d.x,{phrase:"orSelectSubjects"})),r.createElement("hr",{className:"m-0 flex-grow-1 border-dark"})),r.createElement("ul",{className:"list-unstyled row g-2 mb-0"},null==he?void 0:he.map((function(e){var t,n=!!ie.find((function(t){return t.id===e.id})),a="";return me?a+="cursor-default ".concat(U.disabled):n&&(a+=U.selected),r.createElement("li",{key:e.id,className:"col-12 col-sm-6 col-md-6 col-lg-12 col-xl-6"},r.createElement(m.L,{onClick:function(){return function(e){me||(K(l.Vw.Select,l.Ix.SelectSubject,{subjectId:e.id,subjectName:e.name,presentationId:H.id,presentationName:H.name,presentationDescription:H.description}),ie.find((function(t){return t.id===e.id}))?se(ie.filter((function(t){return t.id!==e.id}))):se(ie.concat(e)))}(e)},disabled:me,className:a},r.createElement(f.M,{data:e,coverUrl:N.j.createUrl(null===(t=e.cover)||void 0===t?void 0:t.url,{size:h.h2.Small}),isSelected:n,multiline:!0})))}))),r.createElement(C.X,{className:"mt-2"},r.createElement(d.x,{phrase:"addMoreLater"}))))}},88241:(e,t,n)=>{n.d(t,{Z:()=>r});const r={appLink:"fFjKN",name:"A_by9",selectedMask:"xSQtR",widgetItem:"Ys9W_",hasThemeColor:"DX2ua",text:"JfAoy",imagePanel:"aUNDc",partialLargeImage:"RuLxv",selected:"BViJb",image:"LkTep",dragHandle:"CJqvP",large:"R5clw",comingSoonPanel:"Wa2PG",newVideos:"s61h8",editSubjectsItem:"gGNFD",allSubjectsItem:"IHdlJ",logoContainer:"Nzaes",draggingItem:"zUOye",partialLargeFallback:"FmJP9",partialIcon:"sdZuo"}}}]);
|
|
3
|
+
//# sourceMappingURL=8248-41dad9bf71-lite.chunk.js.map
|