@clickview/lite 0.50.1-rc.0 → 0.50.1-rc.1
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/{1313-lite-b05099b818.chunk.css → 1313-lite-6b1a20b3fe.chunk.css} +1 -1
- package/dist/css/{1402-lite-9489903efd.chunk.css → 1402-lite-8a07733b96.chunk.css} +1 -1
- package/dist/css/{3588-lite-f083d46330.chunk.css → 1407-lite-be6668ef3a.chunk.css} +1 -1
- package/dist/css/{5725-lite-789978250c.chunk.css → 1539-lite-a5772fefdb.chunk.css} +1 -1
- package/dist/css/{5769-lite-16efb24b77.chunk.css → 1567-lite-2ab4d6f863.chunk.css} +1 -1
- package/dist/css/{1602-lite-90df7cca5c.chunk.css → 1602-lite-8fb6cea449.chunk.css} +1 -1
- package/dist/css/{9818-lite-dca6b9e86d.chunk.css → 1850-lite-e9e8c03964.chunk.css} +1 -1
- package/dist/css/{2446-lite-6b11bdfdc1.chunk.css → 2446-lite-dfc41ecbea.chunk.css} +1 -1
- package/dist/css/{9211-lite-f00eb0266e.chunk.css → 2507-lite-9516182bdb.chunk.css} +1 -1
- package/dist/css/{2724-lite-24da60896e.chunk.css → 2724-lite-669b5b8120.chunk.css} +1 -1
- package/dist/css/{3070-lite-c0909f46f3.chunk.css → 3070-lite-6af4bd0c76.chunk.css} +1 -1
- package/dist/css/{3397-lite-dfab7385b6.chunk.css → 3397-lite-5b25e3a686.chunk.css} +1 -1
- package/dist/css/{3403-lite-4b92798a0c.chunk.css → 3403-lite-89bcc16133.chunk.css} +1 -1
- package/dist/css/{458-lite-c8a3139b8b.chunk.css → 3515-lite-66473d08ed.chunk.css} +1 -1
- package/dist/css/{1407-lite-f083d46330.chunk.css → 3588-lite-be6668ef3a.chunk.css} +1 -1
- package/dist/css/{3895-lite-b05099b818.chunk.css → 3895-lite-6b1a20b3fe.chunk.css} +1 -1
- package/dist/css/{4151-lite-fcc0fc8753.chunk.css → 4151-lite-9cbe9bba57.chunk.css} +1 -1
- package/dist/css/{3515-lite-c8a3139b8b.chunk.css → 458-lite-66473d08ed.chunk.css} +1 -1
- package/dist/css/{5114-lite-38330c6187.chunk.css → 5114-lite-06a1ac179b.chunk.css} +1 -1
- package/dist/css/{5242-lite-58cdcd1ec4.chunk.css → 5242-lite-3e960b685e.chunk.css} +1 -1
- package/dist/css/{5364-lite-93bfe767eb.chunk.css → 5364-lite-e8c416fe79.chunk.css} +1 -1
- package/dist/css/{1539-lite-789978250c.chunk.css → 5725-lite-a5772fefdb.chunk.css} +1 -1
- package/dist/css/{6759-lite-16efb24b77.chunk.css → 5769-lite-2ab4d6f863.chunk.css} +1 -1
- package/dist/css/{5803-lite-d1315afce2.chunk.css → 5803-lite-625e484692.chunk.css} +1 -1
- package/dist/css/{5810-lite-ba174cfe3d.chunk.css → 5810-lite-1224500e4d.chunk.css} +1 -1
- package/dist/css/{6181-lite-7558375a74.chunk.css → 6181-lite-ca9f6aeba1.chunk.css} +1 -1
- package/dist/css/{6189-lite-4c33c1b5c4.chunk.css → 6189-lite-20e4d47423.chunk.css} +1 -1
- package/dist/css/{6309-lite-a23dc59ecd.chunk.css → 6309-lite-bd0968a2c8.chunk.css} +1 -1
- package/dist/css/{6531-lite-9431296610.chunk.css → 6531-lite-1f6f3c392c.chunk.css} +1 -1
- package/dist/css/{1567-lite-16efb24b77.chunk.css → 6759-lite-2ab4d6f863.chunk.css} +1 -1
- package/dist/css/{6803-lite-16efb24b77.chunk.css → 6803-lite-2ab4d6f863.chunk.css} +1 -1
- package/dist/css/{6850-lite-769c93cb9e.chunk.css → 6850-lite-c1a8731a93.chunk.css} +1 -1
- package/dist/css/{7533-lite-d0ae59ec54.chunk.css → 7533-lite-206fce5dbd.chunk.css} +1 -1
- package/dist/css/{7777-lite-8067dea624.chunk.css → 7777-lite-48d916f95c.chunk.css} +1 -1
- package/dist/css/{8218-lite-fe8c54917b.chunk.css → 8218-lite-f54139cf27.chunk.css} +1 -1
- package/dist/css/{8316-lite-9083a6565c.chunk.css → 8316-lite-6036f465f0.chunk.css} +1 -1
- package/dist/css/{8354-lite-bc431d9d01.chunk.css → 8354-lite-8228cb401d.chunk.css} +1 -1
- package/dist/css/{8987-lite-95b3d79328.chunk.css → 8987-lite-6cd15b48d2.chunk.css} +1 -1
- package/dist/css/{9068-lite-c0341005e4.chunk.css → 9068-lite-c3a9ace963.chunk.css} +1 -1
- package/dist/css/{2507-lite-f00eb0266e.chunk.css → 9211-lite-9516182bdb.chunk.css} +1 -1
- package/dist/css/{9329-lite-a259b19412.chunk.css → 9329-lite-5f15379e31.chunk.css} +1 -1
- package/dist/css/{9417-lite-9083a6565c.chunk.css → 9417-lite-6036f465f0.chunk.css} +1 -1
- package/dist/css/{1850-lite-dca6b9e86d.chunk.css → 9818-lite-e9e8c03964.chunk.css} +1 -1
- package/dist/css/{lite-app-28b7b96628.css → lite-app-212404ee3a.css} +1 -1
- package/dist/scripts/{1313-455608bc46-lite.chunk.js → 1313-5a7170fb69-lite.chunk.js} +1 -1
- package/dist/scripts/{1313-455608bc46-lite.chunk.js.map → 1313-5a7170fb69-lite.chunk.js.map} +1 -1
- package/dist/scripts/{1402-d40dc88741-lite.chunk.js → 1402-39cb29d725-lite.chunk.js} +1 -1
- package/dist/scripts/{1402-d40dc88741-lite.chunk.js.map → 1402-39cb29d725-lite.chunk.js.map} +1 -1
- package/dist/scripts/{1407-3592ec24f2-lite.chunk.js → 1407-3bab3f00f6-lite.chunk.js} +1 -1
- package/dist/scripts/{1407-3592ec24f2-lite.chunk.js.map → 1407-3bab3f00f6-lite.chunk.js.map} +1 -1
- package/dist/scripts/{1567-edcff759b1-lite.chunk.js → 1567-b3141bc14f-lite.chunk.js} +1 -1
- package/dist/scripts/{1567-edcff759b1-lite.chunk.js.map → 1567-b3141bc14f-lite.chunk.js.map} +1 -1
- package/dist/scripts/{1602-173a4f272a-lite.chunk.js → 1602-dfe6928d65-lite.chunk.js} +1 -1
- package/dist/scripts/{1602-173a4f272a-lite.chunk.js.map → 1602-dfe6928d65-lite.chunk.js.map} +1 -1
- package/dist/scripts/{2446-acc94130ed-lite.chunk.js → 2446-eaa1d2ee7d-lite.chunk.js} +2 -2
- package/dist/scripts/{2446-acc94130ed-lite.chunk.js.map → 2446-eaa1d2ee7d-lite.chunk.js.map} +1 -1
- package/dist/scripts/{2507-bb4e17b1b3-lite.chunk.js → 2507-fc744cab62-lite.chunk.js} +1 -1
- package/dist/scripts/{2507-bb4e17b1b3-lite.chunk.js.map → 2507-fc744cab62-lite.chunk.js.map} +1 -1
- package/dist/scripts/{2724-ee3a51e0c9-lite.chunk.js → 2724-060fdde41c-lite.chunk.js} +1 -1
- package/dist/scripts/{2724-ee3a51e0c9-lite.chunk.js.map → 2724-060fdde41c-lite.chunk.js.map} +1 -1
- package/dist/scripts/{3070-fb8eb47716-lite.chunk.js → 3070-b148205227-lite.chunk.js} +1 -1
- package/dist/scripts/{3070-fb8eb47716-lite.chunk.js.map → 3070-b148205227-lite.chunk.js.map} +1 -1
- package/dist/scripts/{3397-bb32e2287f-lite.chunk.js → 3397-cd6acb96c4-lite.chunk.js} +1 -1
- package/dist/scripts/{3397-bb32e2287f-lite.chunk.js.map → 3397-cd6acb96c4-lite.chunk.js.map} +1 -1
- package/dist/scripts/{3403-12c460d3f6-lite.chunk.js → 3403-d42b7125ae-lite.chunk.js} +1 -1
- package/dist/scripts/{3403-12c460d3f6-lite.chunk.js.map → 3403-d42b7125ae-lite.chunk.js.map} +1 -1
- package/dist/scripts/{3515-4de2fd7070-lite.chunk.js → 3515-0d5feefbe3-lite.chunk.js} +1 -1
- package/dist/scripts/{3515-4de2fd7070-lite.chunk.js.map → 3515-0d5feefbe3-lite.chunk.js.map} +1 -1
- package/dist/scripts/{3588-62e61bc526-lite.chunk.js → 3588-1c1c264291-lite.chunk.js} +2 -2
- package/dist/scripts/{3588-62e61bc526-lite.chunk.js.map → 3588-1c1c264291-lite.chunk.js.map} +1 -1
- package/dist/scripts/{3895-a54621a8c4-lite.chunk.js → 3895-cbeb003a0a-lite.chunk.js} +1 -1
- package/dist/scripts/{3895-a54621a8c4-lite.chunk.js.map → 3895-cbeb003a0a-lite.chunk.js.map} +1 -1
- package/dist/scripts/{4151-ad0c6f107f-lite.chunk.js → 4151-bb1e8aafcb-lite.chunk.js} +1 -1
- package/dist/scripts/{4151-ad0c6f107f-lite.chunk.js.map → 4151-bb1e8aafcb-lite.chunk.js.map} +1 -1
- package/dist/scripts/{458-35c635a2ce-lite.chunk.js → 458-e3aaac093b-lite.chunk.js} +1 -1
- package/dist/scripts/{458-35c635a2ce-lite.chunk.js.map → 458-e3aaac093b-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5114-fcfd260e0b-lite.chunk.js → 5114-15c4180b16-lite.chunk.js} +1 -1
- package/dist/scripts/{5114-fcfd260e0b-lite.chunk.js.map → 5114-15c4180b16-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5242-2d752ff85e-lite.chunk.js → 5242-e2f40bdd0e-lite.chunk.js} +1 -1
- package/dist/scripts/{5242-2d752ff85e-lite.chunk.js.map → 5242-e2f40bdd0e-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5364-b081f5e1ca-lite.chunk.js → 5364-fe4a00711f-lite.chunk.js} +1 -1
- package/dist/scripts/{5364-b081f5e1ca-lite.chunk.js.map → 5364-fe4a00711f-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5725-6792ca3e92-lite.chunk.js → 5725-1592727a8f-lite.chunk.js} +1 -1
- package/dist/scripts/{5725-6792ca3e92-lite.chunk.js.map → 5725-1592727a8f-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5769-34ad224f5f-lite.chunk.js → 5769-e9f596e2b2-lite.chunk.js} +1 -1
- package/dist/scripts/{5769-34ad224f5f-lite.chunk.js.map → 5769-e9f596e2b2-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5803-0005a9eb66-lite.chunk.js → 5803-7db6af5411-lite.chunk.js} +1 -1
- package/dist/scripts/{5803-0005a9eb66-lite.chunk.js.map → 5803-7db6af5411-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5810-a652483b8e-lite.chunk.js → 5810-c81d69aea8-lite.chunk.js} +2 -2
- package/dist/scripts/{5810-a652483b8e-lite.chunk.js.map → 5810-c81d69aea8-lite.chunk.js.map} +1 -1
- package/dist/scripts/{6102-f1851eca08-lite.chunk.js → 6102-38e3abf2fa-lite.chunk.js} +3 -3
- package/dist/scripts/{6102-f1851eca08-lite.chunk.js.map → 6102-38e3abf2fa-lite.chunk.js.map} +1 -1
- package/dist/scripts/{6181-7a4fc8e1e1-lite.chunk.js → 6181-55d2689d74-lite.chunk.js} +1 -1
- package/dist/scripts/{6181-7a4fc8e1e1-lite.chunk.js.map → 6181-55d2689d74-lite.chunk.js.map} +1 -1
- package/dist/scripts/{6189-ce9f0eeb31-lite.chunk.js → 6189-b45080fab7-lite.chunk.js} +1 -1
- package/dist/scripts/{6189-ce9f0eeb31-lite.chunk.js.map → 6189-b45080fab7-lite.chunk.js.map} +1 -1
- package/dist/scripts/{6309-dd3a8e7f21-lite.chunk.js → 6309-36ea0c9f2c-lite.chunk.js} +2 -2
- package/dist/scripts/{6309-dd3a8e7f21-lite.chunk.js.map → 6309-36ea0c9f2c-lite.chunk.js.map} +1 -1
- package/dist/scripts/{6415-9d8b88c713-lite.chunk.js → 6415-5ac1a71471-lite.chunk.js} +1 -1
- package/dist/scripts/{6415-9d8b88c713-lite.chunk.js.map → 6415-5ac1a71471-lite.chunk.js.map} +1 -1
- package/dist/scripts/{6531-597262a181-lite.chunk.js → 6531-1325be9fb1-lite.chunk.js} +1 -1
- package/dist/scripts/{6531-597262a181-lite.chunk.js.map → 6531-1325be9fb1-lite.chunk.js.map} +1 -1
- package/dist/scripts/{6759-3f36472a49-lite.chunk.js → 6759-a7e1119553-lite.chunk.js} +1 -1
- package/dist/scripts/{6759-3f36472a49-lite.chunk.js.map → 6759-a7e1119553-lite.chunk.js.map} +1 -1
- package/dist/scripts/{6803-2275c83d96-lite.chunk.js → 6803-222bfeea55-lite.chunk.js} +1 -1
- package/dist/scripts/{6803-2275c83d96-lite.chunk.js.map → 6803-222bfeea55-lite.chunk.js.map} +1 -1
- package/dist/scripts/6850-16bec85d3c-lite.chunk.js +3 -0
- package/dist/scripts/6850-16bec85d3c-lite.chunk.js.map +1 -0
- package/dist/scripts/{6948-84a5f8d76f-lite.chunk.js → 6948-23ec6a6370-lite.chunk.js} +2 -2
- package/dist/scripts/6948-23ec6a6370-lite.chunk.js.map +1 -0
- package/dist/scripts/{7533-e079b2af18-lite.chunk.js → 7533-9edee544c6-lite.chunk.js} +1 -1
- package/dist/scripts/{7533-e079b2af18-lite.chunk.js.map → 7533-9edee544c6-lite.chunk.js.map} +1 -1
- package/dist/scripts/{7777-f0937ef1f5-lite.chunk.js → 7777-1c3490134e-lite.chunk.js} +1 -1
- package/dist/scripts/{7777-f0937ef1f5-lite.chunk.js.map → 7777-1c3490134e-lite.chunk.js.map} +1 -1
- package/dist/scripts/{8218-f3b81c7287-lite.chunk.js → 8218-088530bdf7-lite.chunk.js} +1 -1
- package/dist/scripts/{8218-f3b81c7287-lite.chunk.js.map → 8218-088530bdf7-lite.chunk.js.map} +1 -1
- package/dist/scripts/8316-ba6bae1f29-lite.chunk.js +2 -0
- package/dist/scripts/8316-ba6bae1f29-lite.chunk.js.map +1 -0
- package/dist/scripts/{8354-e30261b594-lite.chunk.js → 8354-d07c3bef5a-lite.chunk.js} +1 -1
- package/dist/scripts/{8354-e30261b594-lite.chunk.js.map → 8354-d07c3bef5a-lite.chunk.js.map} +1 -1
- package/dist/scripts/{8987-32190552fa-lite.chunk.js → 8987-c0c2790aab-lite.chunk.js} +1 -1
- package/dist/scripts/{8987-32190552fa-lite.chunk.js.map → 8987-c0c2790aab-lite.chunk.js.map} +1 -1
- package/dist/scripts/{9068-562c30f718-lite.chunk.js → 9068-554aa0d22b-lite.chunk.js} +1 -1
- package/dist/scripts/{9068-562c30f718-lite.chunk.js.map → 9068-554aa0d22b-lite.chunk.js.map} +1 -1
- package/dist/scripts/{9211-d4c7016679-lite.chunk.js → 9211-0381d3e715-lite.chunk.js} +1 -1
- package/dist/scripts/{9211-d4c7016679-lite.chunk.js.map → 9211-0381d3e715-lite.chunk.js.map} +1 -1
- package/dist/scripts/{9329-5cf6baab9d-lite.chunk.js → 9329-798d826fc4-lite.chunk.js} +1 -1
- package/dist/scripts/{9329-5cf6baab9d-lite.chunk.js.map → 9329-798d826fc4-lite.chunk.js.map} +1 -1
- package/dist/scripts/9417-aa8d198d40-lite.chunk.js +2 -0
- package/dist/scripts/9417-aa8d198d40-lite.chunk.js.map +1 -0
- package/dist/scripts/{9818-f63bdbbac4-lite.chunk.js → 9818-a2fa140139-lite.chunk.js} +1 -1
- package/dist/scripts/{9818-f63bdbbac4-lite.chunk.js.map → 9818-a2fa140139-lite.chunk.js.map} +1 -1
- package/dist/scripts/bundle-bb2e18c8ca.min.js +3 -0
- package/dist/scripts/{bundle-d20cb66d1a.min.js.map → bundle-bb2e18c8ca.min.js.map} +1 -1
- package/package.json +1 -1
- package/dist/scripts/6850-8770bfeefb-lite.chunk.js +0 -3
- package/dist/scripts/6850-8770bfeefb-lite.chunk.js.map +0 -1
- package/dist/scripts/6948-84a5f8d76f-lite.chunk.js.map +0 -1
- package/dist/scripts/8316-dad1824a5f-lite.chunk.js +0 -2
- package/dist/scripts/8316-dad1824a5f-lite.chunk.js.map +0 -1
- package/dist/scripts/9417-70c6489c67-lite.chunk.js +0 -2
- package/dist/scripts/9417-70c6489c67-lite.chunk.js.map +0 -1
- package/dist/scripts/bundle-d20cb66d1a.min.js +0 -3
- /package/dist/scripts/{2446-acc94130ed-lite.chunk.js.LICENSE.txt → 2446-eaa1d2ee7d-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{3588-62e61bc526-lite.chunk.js.LICENSE.txt → 3588-1c1c264291-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{5810-a652483b8e-lite.chunk.js.LICENSE.txt → 5810-c81d69aea8-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{6102-f1851eca08-lite.chunk.js.LICENSE.txt → 6102-38e3abf2fa-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{6309-dd3a8e7f21-lite.chunk.js.LICENSE.txt → 6309-36ea0c9f2c-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{6850-8770bfeefb-lite.chunk.js.LICENSE.txt → 6850-16bec85d3c-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{bundle-d20cb66d1a.min.js.LICENSE.txt → bundle-bb2e18c8ca.min.js.LICENSE.txt} +0 -0
package/dist/scripts/{2724-ee3a51e0c9-lite.chunk.js.map → 2724-060fdde41c-lite.chunk.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scripts/2724-ee3a51e0c9-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/apps/onboarding/hooks/useOnboardingPathway.ts","file:///app/packages/projects/lite/src/apps/onboarding/components/loaders/primitives/OnboardingLoaderContainer.tsx","file:///app/packages/projects/lite/src/apps/onboarding/components/loaders/videos-loader/getOnboardingLoaderVideos.ts","file:///app/packages/projects/lite/src/apps/onboarding/components/loaders/videos-loader/OnboardingVideosLoader.tsx","file:///app/packages/projects/lite/src/apps/onboarding/components/loaders/videos-loader/videos-loader.scss","file:///app/packages/projects/lite/src/apps/onboarding/components/mock-views/discover/mock-discover.scss","file:///app/packages/projects/lite/src/apps/onboarding/components/mock-views/discover/MockDiscover.tsx","file:///app/packages/projects/lite/src/apps/onboarding/components/mock-views/layout/mock-layout.scss","file:///app/packages/projects/lite/src/apps/onboarding/components/mock-views/layout/MockLayout.tsx","file:///app/packages/projects/lite/src/apps/onboarding/components/mock-views/playlist/mock-playlist.scss","file:///app/packages/projects/lite/src/apps/onboarding/components/mock-views/playlist/MockPlaylist.tsx","file:///app/packages/projects/lite/src/apps/onboarding/hooks/useConfetti.ts","file:///app/packages/projects/lite/src/apps/onboarding/components/loaders/creating-playlist-loader/creating-playlist-loader.scss","file:///app/packages/projects/lite/src/apps/onboarding/components/loaders/creating-playlist-loader/CreatingPlaylistLoader.tsx","file:///app/packages/projects/lite/src/apps/onboarding/components/loaders/default/default-loader.scss","file:///app/packages/projects/lite/src/apps/onboarding/components/loaders/default/DefaultLoader.tsx","file:///app/packages/projects/lite/src/apps/onboarding/components/loaders/preferences-loader/preferences-loader.scss","file:///app/packages/projects/lite/src/apps/onboarding/components/loaders/preferences-loader/PreferencesLoader.tsx","file:///app/packages/projects/lite/src/apps/onboarding/views/completed-loader/OnboardingCompletedLoaderView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { useViewModel } from 'libs/common/react/hooks/UseViewModel';\nimport { Flight } from 'libs/common/react/index';\n\nimport { OnboardingScreenAppLinks } from 'libs/shared/apps/onboarding/interfaces/OnboardingScreenAppLinks';\nimport { OnboardingPathway, OnboardingPathwayHelper } from 'libs/shared/apps/onboarding/utils/OnboardingPathwayHelper';\nimport { JobTitles } from 'libs/shared/apps/sign-up/interfaces/JobTitles';\nimport { PresentationType } from 'libs/shared/enums/PresentationType';\nimport { ClassificationRequests } from 'libs/shared/flight-requests/ClassificationRequests';\nimport { PlaylistRequests } from 'libs/shared/flight-requests/PlaylistRequests';\nimport { PreferenceRequests } from 'libs/shared/flight-requests/PreferenceRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\nimport { useSettings } from 'libs/shared/hooks/useSettings';\nimport { Classification, CurrentUser, PlaylistCollection, Presentation, User } from 'libs/shared/interfaces';\nimport { ContextService } from 'libs/shared/services/ContextService';\n\nimport { PlaylistCollectionIdentifier } from '../../playlists/interfaces';\n\nexport interface GetPathwayOptions {\n jobTitleOverride?: JobTitles;\n preferredPresentationOverride?: Presentation;\n}\n\nexport function useOnboardingPathway(appLinks: OnboardingScreenAppLinks) {\n const [ hasPlaylist, setHasPlaylist ] = useViewModel<boolean>('has:playlist', null);\n\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const user = Flight.useBasicFetch<User>(currentUser.data?.isAuthenticated && UserRequests.user(currentUser.data.id));\n\n const presentations = Flight.useBasicFetch<Presentation[]>(\n ClassificationRequests.availablePresentations(PresentationType.Subject)\n );\n const preferredPresentation = Flight.useBasicFetch<Presentation>(\n ClassificationRequests.presentation(PresentationType.Subject)\n );\n const curriculums = Flight.useBasicFetch<Presentation[]>(\n ClassificationRequests.availablePresentations(PresentationType.Curriculum)\n );\n const playlists = Flight.useBasicFetch<PlaylistCollection>(\n PlaylistRequests.getUserPlaylists(new PlaylistCollectionIdentifier())\n );\n const preferredSubjects = Flight.useBasicFetch<Classification[]>(\n PreferenceRequests.mySubjectPreferences()\n );\n const { hasPermissions } = usePermissions();\n\n React.useEffect(() => {\n if (!playlists.hasCompleted)\n return;\n\n if (hasPlaylist !== !!playlists.data?.data?.length)\n setHasPlaylist(!!playlists.data?.data?.length);\n }, [playlists.hasCompleted]);\n\n const hasLoadedPathway = (\n currentUser.hasCompleted &&\n user.hasCompleted &&\n presentations.hasCompleted &&\n curriculums.hasCompleted &&\n preferredPresentation.hasCompleted &&\n playlists.hasCompleted &&\n preferredSubjects.hasCompleted &&\n hasPlaylist !== null\n );\n\n const { userSettings } = useSettings(null);\n\n function getPathway(options: GetPathwayOptions = {}): OnboardingPathway {\n const jobTitle = options.jobTitleOverride || user.data?.userProfile?.metadata?.jobTitle;\n const presentation = options.preferredPresentationOverride || preferredPresentation.data;\n\n if (!hasLoadedPathway) {\n return {\n screens: {},\n currentScreen: null,\n totalScreens: 0,\n totalScreensInProgressBar: 0,\n hasCompletedAllSteps: false\n };\n }\n\n return OnboardingPathwayHelper.getOnboardingPathway({\n jobTitle,\n userSettings: userSettings.data,\n presentations: presentations.data,\n curriculums: curriculums.data,\n preferredSubjects: preferredSubjects.data,\n preferredPresentation: presentation,\n appLink: ContextService.getCurrentRoute().appLink,\n appLinks,\n masterUser: user.data,\n hasPlaylist,\n hasPermissions,\n currentUser: currentUser.data\n });\n }\n\n return {\n getPathway,\n hasLoadedPathway\n };\n}","import React from 'react';\n\ninterface OnboardingLoaderContainerProps {\n variant: 'blue' | 'dark-blue'\n}\n\nexport function OnboardingLoaderContainer(props: React.PropsWithChildren<OnboardingLoaderContainerProps>): JSX.Element {\n return (\n <div className={`w-100 h-100 position-fixed bg-${props.variant}`}>\n {props.children}\n </div>\n );\n}","function mobile(index: number): React.CSSProperties {\n const indexPositionId = index % 10;\n\n const styles: React.CSSProperties = { top: `${index * 4}%` };\n\n /**\n * This is pretty much random to make the loader look nicer.\n */\n switch (indexPositionId) {\n case 0: {\n styles.left = '12.5%';\n styles.animationDelay = '0.5s';\n return styles;\n }\n\n case 1: {\n styles.right = '7.5%';\n styles.animationDelay = '1s';\n return styles;\n }\n\n case 2: {\n styles.left = '10%';\n return styles;\n }\n\n case 3: {\n styles.right = '2.5%';\n styles.animationDelay = '0.5s';\n return styles;\n }\n\n case 4: {\n styles.left = '2.5%';\n styles.animationDelay = '1.5s';\n return styles;\n }\n\n case 5: {\n styles.right = '10%';\n return styles;\n }\n\n case 6: {\n styles.left = '12.5%';\n styles.animationDelay = '1.5s';\n return styles;\n }\n\n case 7: {\n styles.right = '7.5%';\n styles.animationDelay = '0.5s';\n return styles;\n }\n\n case 8: {\n styles.left = '5%';\n styles.animationDelay = '1s';\n return styles;\n }\n\n case 9: {\n styles.right = '2.5%';\n styles.animationDelay = '1s';\n return styles;\n }\n\n default: {\n styles.left = '10%';\n styles.animationDelay = '1.5s';\n return styles;\n }\n }\n}\n\nfunction halfScreen(index: number): React.CSSProperties {\n const indexPositionId = index % 10;\n\n const styles: React.CSSProperties = { top: `${index * 4}%` };\n\n /**\n * This is pretty much random to make the loader look nicer.\n */\n switch (indexPositionId) {\n case 0: {\n styles.left = '25%';\n styles.animationDelay = '0.5s';\n return styles;\n }\n\n case 1: {\n styles.right = '15%';\n styles.animationDelay = '1s';\n return styles;\n }\n\n case 2: {\n styles.left = '20%';\n return styles;\n }\n\n case 3: {\n styles.right = '5%';\n styles.animationDelay = '0.5s';\n return styles;\n }\n\n case 4: {\n styles.left = '5%';\n styles.animationDelay = '1.5s';\n return styles;\n }\n\n case 5: {\n styles.right = '20%';\n return styles;\n }\n\n case 6: {\n styles.left = '25%';\n styles.animationDelay = '1.5s';\n return styles;\n }\n\n case 7: {\n styles.right = '15%';\n styles.animationDelay = '0.5s';\n return styles;\n }\n\n case 8: {\n styles.left = '10%';\n styles.animationDelay = '1s';\n return styles;\n }\n\n case 9: {\n styles.right = '5%';\n styles.animationDelay = '1s';\n return styles;\n }\n\n default: {\n styles.left = '20%';\n styles.animationDelay = '1.5s';\n return styles;\n }\n }\n}\n\nfunction fullScreen(index: number): React.CSSProperties {\n const indexPositionId = index % 10;\n\n const styles: React.CSSProperties = { top: `${index * 4}%` };\n\n /**\n * This is pretty much random to make the loader look nicer.\n */\n switch (indexPositionId) {\n case 0: {\n styles.left = '25%';\n styles.animationDelay = '0.5s';\n return styles;\n }\n\n case 1: {\n styles.right = '30%';\n styles.animationDelay = '1s';\n return styles;\n }\n\n case 2: {\n styles.left = '40%';\n return styles;\n }\n\n case 3: {\n styles.right = '10%';\n styles.animationDelay = '0.5s';\n return styles;\n }\n\n case 4: {\n styles.left = '10%';\n styles.animationDelay = '1.5s';\n return styles;\n }\n\n case 5: {\n styles.right = '40%';\n return styles;\n }\n\n case 6: {\n styles.left = '30%';\n styles.animationDelay = '1.5s';\n return styles;\n }\n\n case 7: {\n styles.right = '30%';\n styles.animationDelay = '0.5s';\n return styles;\n }\n\n case 8: {\n styles.left = '10%';\n styles.animationDelay = '1s';\n return styles;\n }\n\n case 9: {\n styles.right = '10%';\n styles.animationDelay = '1s';\n return styles;\n }\n\n default: {\n styles.left = '40%';\n styles.animationDelay = '1.5s';\n return styles;\n }\n }\n}\n\n// 2 columns means the images are more off to the sides\n// 3 columns means they approach the center more\nexport function getOnboardingLoaderVideoStyles(index: number, screenSize: '50%' | '100%' | 'mobile'): React.CSSProperties {\n if (screenSize === 'mobile')\n return mobile(index);\n\n if (screenSize === '50%')\n return halfScreen(index);\n\n return fullScreen(index);\n}","import React from 'react';\n\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { HardCoded } from 'libs/shared/constants/HardCoded';\nimport { ImageSize } from 'libs/shared/enums/Images';\nimport { useBreakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { ImageHelper } from 'libs/shared/utils/ImageHelper';\n\nimport { getOnboardingLoaderVideoStyles } from 'apps/onboarding/components/loaders/videos-loader/getOnboardingLoaderVideos';\n\nimport styles from './videos-loader.scss';\n\ninterface OnboardingVideosLoaderProps {\n screenSize: '50%' | '100%';\n variant: 'dark-blue' | 'blue';\n hideThumbnailMask?: boolean;\n}\n\nexport const OnboardingVideosLoader = React.memo((props: OnboardingVideosLoaderProps) => {\n const thumbnails = ArrayHelper.shuffle(HardCoded.Onboarding.LOADING_THUMBNAILS);\n\n const breakpoints = useBreakpoints();\n\n function getScreenSize(): 'mobile' | OnboardingVideosLoaderProps['screenSize'] {\n if (breakpoints.xs) {\n return 'mobile';\n }\n\n return props.screenSize;\n }\n\n return (\n <div className={`${styles.loading} ${props.screenSize === '50%' ? 'w-50' : 'w-100'}`}>\n {thumbnails.map((thumbnail, index) => {\n return (\n <div\n key={index}\n className={`${styles.loadingImageContainer} position-absolute rounded-3 overflow-hidden`}\n style={getOnboardingLoaderVideoStyles(index, getScreenSize())}\n >\n {!props.hideThumbnailMask && (\n <div className={`${styles.loadingImageMask} ${props.variant === 'blue' ? styles.blue : styles.darkBlue}`} />\n )}\n <img className='img-fluid' src={ImageHelper.createUrl(thumbnail, { size: ImageSize.Small })} />\n </div>\n );\n })}\n </div>\n );\n});","// extracted by mini-css-extract-plugin\nexport default {\"loadingImageContainer\":\"ZlA2t\",\"fadeIn\":\"YmTa1\",\"loadingImageMask\":\"jNop3\",\"darkBlue\":\"YNfFq\",\"blue\":\"jVOWE\",\"loading\":\"n2Qe4\",\"loader\":\"BqV36\"};","// extracted by mini-css-extract-plugin\nexport default {\"magicTab\":\"H5jzm\",\"subjectPlaceholder\":\"r1L6T\",\"placeholderCover\":\"z9CFT\",\"promotedTopicPlaceholder\":\"PbYs6\",\"promotedTopicPlaceholderText\":\"hZ8Nf\"};","import React from 'react';\n\nimport { ImageSize } from 'libs/shared/enums/Images';\nimport { Classification, Presentation } from 'libs/shared/interfaces';\nimport { ImageHelper } from 'libs/shared/utils/ImageHelper';\n\nimport { MockLayout } from 'apps/onboarding/components/mock-views/layout/MockLayout';\n\nimport styles from './mock-discover.scss';\n\ninterface SubjectPlaceholderProps {\n coverUrl?: string;\n}\n\nfunction SubjectPlaceholder(props: SubjectPlaceholderProps): JSX.Element {\n return (\n <li className='col-4'>\n <div className={`d-flex border rounded-3 overflow-hidden ${styles.subjectPlaceholder}`}>\n {props.coverUrl ? (\n <div className={styles.placeholderCover}>\n <img className='img-fluid' src={ImageHelper.createUrl(props.coverUrl, { size: ImageSize.Small })} />\n </div>\n ) : (\n <div className={`${styles.placeholderCover} bg-light-blue`} />\n )}\n </div>\n </li>\n );\n}\n\nfunction PromotedTopicPlaceholder(): JSX.Element {\n return (\n <li className='col-4'>\n <div className={`bg-light-blue rounded-3 w-100 p-1 ${styles.promotedTopicPlaceholder}`} />\n </li>\n );\n}\n\ninterface MockDiscoverProps {\n subjects?: Classification[];\n presentation?: Presentation;\n curriculum?: Presentation;\n editingCurriculum?: boolean;\n}\n\nexport function MockDiscover(props: MockDiscoverProps): JSX.Element {\n const placeholderSubjects = Math.max(12 - (props.subjects?.length ?? 0), 0);\n\n return (\n <MockLayout\n presentation={props.presentation}\n curriculum={props.curriculum}\n editingCurriculum={props.editingCurriculum}\n >\n <div className='px-3 pt-3 w-100 d-flex flex-column align-items-center'>\n {/* Magic tabs */}\n <div className='rounded-3 border overflow-hidden d-flex mb-2'>\n <div className={`bg-light ${styles.magicTab}`} />\n <div className={`${styles.magicTab}`} />\n </div>\n\n {/* Subjects */}\n <ul className='list-unstyled mb-0 row w-100 g-xl-2 g-lg-1 mb-2'>\n {props.subjects?.map(subject => {\n return (\n <SubjectPlaceholder key={subject.id} coverUrl={subject.cover?.url} />\n );\n })}\n {new Array(placeholderSubjects).fill(0).map((_, index) => {\n return (\n <SubjectPlaceholder key={index} />\n );\n })}\n </ul>\n\n {/* Promoted topics */}\n <ul className='list-unstyled mb-0 row w-100 g-xl-2 g-lg-1'>\n <PromotedTopicPlaceholder />\n <PromotedTopicPlaceholder />\n <PromotedTopicPlaceholder />\n <PromotedTopicPlaceholder />\n <PromotedTopicPlaceholder />\n <PromotedTopicPlaceholder />\n <PromotedTopicPlaceholder />\n <PromotedTopicPlaceholder />\n <PromotedTopicPlaceholder />\n </ul>\n </div>\n </MockLayout>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"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\"};","import React from 'react';\n\nimport { IconCircle } from 'libs/shared/components/icon-circle/IconCircle';\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { ClickViewLogo, ClickViewPrimaryLogo } from 'libs/shared/components/svgs/clickview-logo/ClickViewLogo';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { PresentationLearningLevel } from 'libs/shared/enums/PresentationLearningLevel';\nimport { useBreakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { Presentation } from 'libs/shared/interfaces';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\nimport { TopicsHelper } from 'libs/shared/utils/topics-helper/TopicsHelper';\n\nimport styles from './mock-layout.scss';\n\nconst namespace = 'onboarding.mockLayout';\n\nfunction LeftNavItem(): JSX.Element {\n return (\n <div className='d-flex align-items-center justify-content-center mb-2 px-3'>\n <div className={`${styles.leftNavIcon} rounded-circle`} />\n <div className={`${styles.leftNavText} rounded-pill`} />\n </div>\n );\n}\n\ninterface MockLayoutProps {\n editingCurriculum?: boolean;\n curriculum?: Presentation;\n presentation?: Presentation;\n}\n\nexport function MockLayout(props: React.PropsWithChildren<MockLayoutProps>): JSX.Element {\n const breakpoints = useBreakpoints();\n \n function getPresentationClass(): string {\n if (!props.presentation)\n return styles.presentationPlaceholderIcon;\n\n switch (TopicsHelper.getMappedPresentationLevel(props.presentation.learningLevel)) {\n case PresentationLearningLevel.Level_1:\n return `bg-indigo ${styles.presentationIcon}`;\n\n case PresentationLearningLevel.Level_3:\n return `bg-blue ${styles.presentationIcon}`;\n\n default:\n case PresentationLearningLevel.Level_2:\n return `bg-green ${styles.presentationIcon}`;\n }\n }\n\n return (\n <div className={`border border-dark border-2 bg-white rounded-3 user-select-none overflow-hidden position-relative h-100 w-100`}>\n {!!props.editingCurriculum && (\n <div className={`w-100 h-100 position-absolute ${styles.shadow}`}>\n <div className={`d-flex align-items-center h-100 w-50 ${styles.curriculumContainer}`}>\n <div className='bg-white rounded-3 border p-3 w-100'>\n <h2 className='h6 text-start'><Text namespace={namespace} phrase='curriculum' /></h2>\n\n {props.curriculum ? (\n <div className='d-flex align-items-center'>\n <div className={`${styles.curriculumIcon} rounded-circle me-2 border`}>\n <IconCircle imageUrl={props.curriculum.cover?.url} />\n </div>\n <div className='text-start'>{props.curriculum.name}</div>\n </div>\n ) : (\n <div className='d-flex align-items-center text-secondary'>\n <div className={`me-2 rounded-circle p-1 ${styles.iconPlaceholder}`}>\n <IconCircle svgSize={SvgContainerSize.Large} textVariant='secondary' svgName={cvSvgLibrary.GraduationCap} />\n </div>\n <Text namespace={namespace} phrase='selectCurriculum' />\n </div>\n )}\n </div>\n </div>\n </div>\n )}\n\n {/* Black bar */}\n <div className={`bg-dark d-flex px-3 py-2 ${styles.blackBar}`}>\n <div className={`rounded-circle me-2 ${styles.dot}`} />\n <div className={`rounded-circle me-2 ${styles.dot}`} />\n <div className={`rounded-circle ${styles.dot}`} />\n </div>\n\n {/* Header */}\n <div className={`border-bottom px-3 py-2 d-flex align-items-center ${styles.topNav}`}>\n <div className={`${styles.logo} me-4`}>\n {breakpoints.xs ? (\n <ClickViewPrimaryLogo />\n ) : (\n <ClickViewLogo />\n )}\n </div>\n <div className='form-control w-75 d-flex justify-content-start'>\n <SvgContainer svgName={cvSvgLibrary.Search} />\n </div>\n {!!props.curriculum && (\n <div className={`${styles.curriculumIconSmall} rounded-circle ms-2 me-n1 border`}>\n <IconCircle imageUrl={props.curriculum.cover?.url} />\n </div>\n )}\n </div>\n\n <div className={`d-flex ${styles.belowHeader}`}>\n {/* Left nav */}\n <div className={`${styles.leftNav} border-end`}>\n <div className='d-flex flex-column pt-3 h-100'>\n <LeftNavItem />\n <LeftNavItem />\n <LeftNavItem />\n <LeftNavItem />\n <LeftNavItem />\n\n {/* Presentation */}\n <div className='d-flex align-items-end h-100 w-100'>\n <div className='border-top p-3 w-100'>\n <div className='d-flex align-items-center'>\n <div className={`${getPresentationClass()} text-white rounded`}>\n <SvgContainer svgName={cvSvgLibrary.School} size={SvgContainerSize.Large} />\n </div>\n\n {!props.presentation ? (\n <div className={`${styles.presentationPlaceholderText} fw-semibold`}>\n <Text namespace={namespace} phrase='schoolLevel' />\n </div>\n ) : (\n <span className={`fw-semibold text-truncate ${styles.presentationName}`}>{props.presentation.name}</span>\n )}\n </div>\n </div>\n </div>\n </div>\n </div>\n\n {/* Main content */}\n <div className={`w-100 h-100 overflow-hidden`}>\n {props.children}\n </div>\n </div>\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"banner\":\"CQxNy\",\"title\":\"NzV5V\",\"description1\":\"kjCZi\",\"description2\":\"cBeyJ\",\"placeholder\":\"Ks_Tl\",\"playlistName\":\"eFPqz\",\"thumbnailCol\":\"dgCQ7\",\"videoInfoCol\":\"pzfE2\"};","import React from 'react';\n\nimport { ImageFallback, ImageFallbackType } from 'libs/shared/components/image/ImageFallback';\nimport { VideoThumbnail } from 'libs/shared/components/thumbnails/video/VideoThumbnail';\nimport { ImageSize } from 'libs/shared/enums/Images';\nimport { Presentation, Video } from 'libs/shared/interfaces';\n\nimport { MockLayout } from 'apps/onboarding/components/mock-views/layout/MockLayout';\n\nimport styles from './mock-playlist.scss';\n\ninterface VideoPlaceholderProps {\n video?: Video;\n}\n\nfunction VideoPlaceholder(props: VideoPlaceholderProps): JSX.Element {\n return (\n <li className='row mb-2'>\n <div className={`col-lg-4 col-5 ${styles.thumbnailCol}`}>\n {props.video ? (\n <VideoThumbnail video={props.video} type='cosmetic' hideDuration imageOptions={{ size: ImageSize.Medium }} />\n ) : (\n <ImageFallback type={ImageFallbackType.Video} extraClasses={`position-relative rounded-3 ${styles.placeholder}`} />\n )}\n </div>\n\n <div className={`col-lg-8 col-7 ${styles.videoInfoCol}`}>\n <div className={`${styles.title} rounded-pill bg-grey mb-1`} />\n <div className={`${styles.description1} rounded-pill bg-grey mb-1`} />\n <div className={`${styles.description2} rounded-pill bg-grey mb-1`} />\n </div>\n </li>\n );\n}\n\ninterface MockPlaylistProps {\n name?: string;\n presentation?: Presentation;\n curriculum?: Presentation;\n videos: Video[];\n hidePlaceholders?: boolean;\n}\n\nexport function MockPlaylist(props: MockPlaylistProps): JSX.Element {\n const placeholderVideos = props.hidePlaceholders ? 0 : Math.max(6 - (props.videos?.length ?? 0), 0);\n\n return (\n <MockLayout presentation={props.presentation} curriculum={props.curriculum}>\n {/* Banner */}\n <div className={`bg-teal ${styles.banner} position-relative`}>\n {props.name && (\n <div className={`h5 text-white mb-0 ${styles.playlistName}`}>{props.name}</div>\n )}\n </div>\n\n {/* Videos */}\n <ul className='list-unstyled mb-0 w-100 p-2'>\n {props.videos?.map(video => {\n return (\n <VideoPlaceholder key={video.id} video={video} />\n );\n })}\n {new Array(placeholderVideos).fill(0).map((_, index) => {\n return (\n <VideoPlaceholder key={index} />\n );\n })}\n </ul>\n </MockLayout>\n );\n}","import React from 'react';\nimport { confetti } from 'tsparticles-confetti';\n\nexport function useConfetti(): void {\n React.useEffect(() => {\n confetti('tsparticles', {\n count: 500,\n drift: 25,\n origin: { x: 50, y: 100 },\n position: { x: 50, y: 100 },\n startVelocity: 100,\n ticks: 100,\n gravity: 3\n });\n }, []);\n}","// extracted by mini-css-extract-plugin\nexport default {\"playlistContainer\":\"J5iom\",\"confetti\":\"Ja1bk\",\"discover\":\"njFgx\"};","import React from 'react';\n\nimport { Text } from 'libs/shared/components/text/Text';\nimport { Presentation, Video } from 'libs/shared/interfaces';\n\nimport { OnboardingLoaderContainer } from 'apps/onboarding/components/loaders/primitives/OnboardingLoaderContainer';\nimport { OnboardingVideosLoader } from 'apps/onboarding/components/loaders/videos-loader/OnboardingVideosLoader';\nimport { MockPlaylist } from 'apps/onboarding/components/mock-views/playlist/MockPlaylist';\nimport { useConfetti } from 'apps/onboarding/hooks/useConfetti';\nimport { onFinishOnboarding } from 'apps/onboarding/utils/OnboardingAppLinkHelper';\n\nimport styles from './creating-playlist-loader.scss';\n\nconst namespace = 'onboarding.creatingPlaylistLoader';\n\nconst FAKE_LOADER = 5000;\n\ninterface CreatingPlaylistLoaderProps {\n name: string;\n presentation: Presentation;\n curriculum: Presentation;\n videos: Video[];\n redirectUrl: string;\n}\n\nexport function CreatingPlaylistLoader(props: CreatingPlaylistLoaderProps): JSX.Element {\n const [ showTakingToDiscover, setShowTakingToDiscover ] = React.useState(false);\n\n useConfetti();\n\n React.useEffect(() => {\n const timeout = window.setTimeout(() => {\n setShowTakingToDiscover(true);\n }, FAKE_LOADER);\n\n return () => {\n window.clearTimeout(timeout);\n };\n }, []);\n\n React.useEffect(() => {\n if (!showTakingToDiscover)\n return;\n\n const timeout = window.setTimeout(() => {\n onFinishOnboarding(props.redirectUrl);\n }, FAKE_LOADER);\n\n return () => {\n window.clearTimeout(timeout);\n };\n }, [showTakingToDiscover]);\n\n if (showTakingToDiscover) {\n return (\n <OnboardingLoaderContainer variant='dark-blue'>\n <div className={`${styles.playlistContainer} ${styles.discover}`}>\n <h1 className='text-white h3 text-center mb-3'>\n <Text namespace={namespace} phrase='takingYouToDiscover' />\n </h1>\n <MockPlaylist\n presentation={props.presentation}\n curriculum={props.curriculum}\n videos={props.videos}\n name={props.name}\n hidePlaceholders\n />\n </div>\n <OnboardingVideosLoader screenSize='100%' variant='dark-blue' />\n </OnboardingLoaderContainer>\n );\n }\n\n return (\n <OnboardingLoaderContainer variant='dark-blue'>\n <div className={`${styles.playlistContainer} ${styles.confetti}`}>\n <h1 className='text-white h3 text-center mb-3'>\n <Text namespace={namespace} phrase='greatJob' /><br />\n <Text namespace={namespace} phrase='creatingPlaylist' />\n </h1>\n <MockPlaylist\n presentation={props.presentation}\n curriculum={props.curriculum}\n videos={props.videos}\n name={props.name}\n hidePlaceholders\n />\n </div>\n </OnboardingLoaderContainer>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"container\":\"GVDR9\"};","import React from 'react';\n\nimport { Text } from 'libs/shared/components/text/Text';\nimport { Classification, Presentation } from 'libs/shared/interfaces';\n\nimport { OnboardingLoaderContainer } from 'apps/onboarding/components/loaders/primitives/OnboardingLoaderContainer';\nimport { OnboardingVideosLoader } from 'apps/onboarding/components/loaders/videos-loader/OnboardingVideosLoader';\nimport { MockDiscover } from 'apps/onboarding/components/mock-views/discover/MockDiscover';\nimport { useConfetti } from 'apps/onboarding/hooks/useConfetti';\nimport { onFinishOnboarding } from 'apps/onboarding/utils/OnboardingAppLinkHelper';\n\nimport styles from './default-loader.scss';\n\nconst namespace = 'onboarding.defaultLoader';\n\nconst FAKE_LOADER = 5000;\n\ninterface DefaultLoaderProps {\n presentation: Presentation;\n curriculum: Presentation;\n subjects: Classification[];\n redirectUrl: string;\n}\n\nexport function DefaultLoader(props: DefaultLoaderProps): JSX.Element {\n const [ showTakingToDiscover, setShowTakingToDiscover ] = React.useState(false);\n\n useConfetti();\n\n React.useEffect(() => {\n const timeout = window.setTimeout(() => {\n setShowTakingToDiscover(true);\n }, FAKE_LOADER);\n\n return () => {\n window.clearTimeout(timeout);\n };\n }, []);\n\n React.useEffect(() => {\n if (!showTakingToDiscover)\n return;\n\n const timeout = window.setTimeout(() => {\n onFinishOnboarding(props.redirectUrl);\n }, FAKE_LOADER);\n\n return () => {\n window.clearTimeout(timeout);\n };\n }, [showTakingToDiscover]);\n\n if (showTakingToDiscover) {\n return (\n <OnboardingLoaderContainer variant='dark-blue'>\n <div className={`${styles.container}`}>\n <h1 className='text-white h3 text-center mb-3'>\n <Text namespace={namespace} phrase='takingYouToDiscover' />\n </h1>\n <MockDiscover\n presentation={props.presentation}\n curriculum={props.curriculum}\n subjects={props.subjects}\n />\n </div>\n <OnboardingVideosLoader screenSize='100%' variant='dark-blue' />\n </OnboardingLoaderContainer>\n );\n }\n\n return (\n <OnboardingLoaderContainer variant='dark-blue'>\n <div className={`${styles.container}`}>\n <h1 className='text-white h3 text-center mb-3'>\n <Text namespace={namespace} phrase='allDone' />\n </h1>\n <MockDiscover\n presentation={props.presentation}\n subjects={props.subjects}\n curriculum={props.curriculum}\n />\n </div>\n </OnboardingLoaderContainer>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"discoverContainer\":\"u6Ak8\",\"confetti\":\"BVY_E\",\"discover\":\"yYZ_G\"};","import React from 'react';\n\nimport { Text } from 'libs/shared/components/text/Text';\nimport { Classification, Presentation } from 'libs/shared/interfaces';\n\nimport { OnboardingLoaderContainer } from 'apps/onboarding/components/loaders/primitives/OnboardingLoaderContainer';\nimport { OnboardingVideosLoader } from 'apps/onboarding/components/loaders/videos-loader/OnboardingVideosLoader';\nimport { useConfetti } from 'apps/onboarding/hooks/useConfetti';\nimport { onFinishOnboarding } from 'apps/onboarding/utils/OnboardingAppLinkHelper';\n\nimport { MockDiscover } from '../../mock-views/discover/MockDiscover';\n\nimport styles from './preferences-loader.scss';\n\nconst namespace = 'onboarding.preferencesLoader';\n\nconst FAKE_LOADER = 5000;\n\ninterface PreferencesLoaderProps {\n presentation: Presentation;\n curriculum: Presentation;\n subjects: Classification[];\n redirectUrl: string;\n}\n\nexport function PreferencesLoader(props: PreferencesLoaderProps): JSX.Element {\n const [ showTakingToDiscover, setShowTakingToDiscover ] = React.useState(false);\n\n useConfetti();\n\n React.useEffect(() => {\n const timeout = window.setTimeout(() => {\n setShowTakingToDiscover(true);\n }, FAKE_LOADER);\n\n return () => {\n window.clearTimeout(timeout);\n };\n }, []);\n\n React.useEffect(() => {\n if (!showTakingToDiscover)\n return;\n\n const timeout = window.setTimeout(() => {\n onFinishOnboarding(props.redirectUrl);\n }, FAKE_LOADER);\n\n return () => {\n window.clearTimeout(timeout);\n };\n }, [showTakingToDiscover]);\n\n if (showTakingToDiscover) {\n return (\n <OnboardingLoaderContainer variant='dark-blue'>\n <div className={`${styles.discoverContainer} ${styles.discover}`}>\n <h1 className='text-white h3 text-center mb-3'>\n <Text namespace={namespace} phrase='takingYouToDiscover' />\n </h1>\n <MockDiscover\n presentation={props.presentation}\n curriculum={props.curriculum}\n subjects={props.subjects}\n />\n </div>\n <OnboardingVideosLoader screenSize='100%' variant='dark-blue' />\n </OnboardingLoaderContainer>\n );\n }\n\n return (\n <OnboardingLoaderContainer variant='dark-blue'>\n <div className={`${styles.discoverContainer} ${styles.confetti}`}>\n <h1 className='text-white h3 text-center mb-3'>\n <Text namespace={namespace} phrase='greatJob' /><br />\n <Text namespace={namespace} phrase='loadingPreferences' />\n </h1>\n <MockDiscover\n presentation={props.presentation}\n curriculum={props.curriculum}\n subjects={props.subjects}\n />\n </div>\n </OnboardingLoaderContainer>\n );\n}","import React from 'react';\n\nimport { StorageType } from 'libs/common/backbone/utils/LocalStorageHelper';\nimport { useViewModel } from 'libs/common/react/hooks/UseViewModel';\nimport { Flight } from 'libs/common/react/index';\n\nimport { useOnboardingPathway } from 'libs/shared/apps/onboarding/hooks/useOnboardingPathway';\nimport { ClassificationRequests } from 'libs/shared/flight-requests/ClassificationRequests';\nimport { Classification } from 'libs/shared/interfaces';\n\nimport { ViewModelKeys } from 'shared/constants/LiteViewModels';\nimport { useCurriculums } from 'shared/hooks/useCurriculums';\nimport { usePresentation } from 'shared/hooks/usePresentation';\n\nimport { CreatingPlaylistLoader } from 'apps/onboarding/components/loaders/creating-playlist-loader/CreatingPlaylistLoader';\nimport { DefaultLoader } from 'apps/onboarding/components/loaders/default/DefaultLoader';\nimport { PreferencesLoader } from 'apps/onboarding/components/loaders/preferences-loader/PreferencesLoader';\nimport { OnboardingViewProps } from 'apps/onboarding/interfaces/OnboardingViewProps';\nimport { getOnboardingAppLinks } from 'apps/onboarding/utils/OnboardingAppLinkHelper';\n\nimport { SavedOnboardingVideo } from '../select-videos/OnboardingSelectVideosView';\n\ntype LoaderType = 'create-playlist' | 'preferences' | 'default';\n\nexport interface OnboardingLoaderViewModel {\n playlistName?: string;\n}\n\nexport function OnboardingCompletedLoaderView(props: OnboardingViewProps): JSX.Element {\n const appLinks = getOnboardingAppLinks();\n const { getPathway } = useOnboardingPathway(appLinks);\n\n const [loaderViewModel] = useViewModel<OnboardingLoaderViewModel>(ViewModelKeys.ONBOARDING_LOADER, {});\n\n const [videos] = useViewModel<SavedOnboardingVideo[]>(\n ViewModelKeys.ONBOARDING_VIDEOS_V2,\n [],\n { storage: StorageType.LocalStorage }\n );\n\n const { preferredPresentation } = usePresentation();\n const { preferredCurriculum } = useCurriculums();\n const subjects = Flight.useBasicFetch<Classification[]>(ClassificationRequests.classifications());\n\n const loaderType: LoaderType = React.useMemo(() => {\n const pathway = getPathway();\n\n switch (pathway.currentScreen) {\n case 'create-playlist':\n return 'create-playlist';\n \n case 'subjects-summary':\n case 'subjects':\n case 'school-level':\n case 'select-curriculum':\n return 'preferences';\n\n default:\n return 'default';\n }\n }, []);\n\n if (loaderType === 'default') {\n return (\n <DefaultLoader\n subjects={subjects.data}\n presentation={preferredPresentation}\n curriculum={preferredCurriculum}\n redirectUrl={props.redirectUrl}\n />\n );\n }\n\n if (loaderType === 'create-playlist') {\n return (\n <CreatingPlaylistLoader\n name={loaderViewModel.playlistName}\n videos={videos.map(v => v.data)}\n presentation={preferredPresentation}\n curriculum={preferredCurriculum}\n redirectUrl={props.redirectUrl}\n />\n );\n }\n\n if (loaderType === 'preferences') {\n return (\n <PreferencesLoader\n subjects={subjects.data}\n presentation={preferredPresentation}\n curriculum={preferredCurriculum}\n redirectUrl={props.redirectUrl}\n />\n );\n }\n\n return <></>;\n}"],"names":["useOnboardingPathway","appLinks","hasPlaylist","setHasPlaylist","currentUser","user","data","isAuthenticated","id","presentations","preferredPresentation","curriculums","playlists","preferredSubjects","hasPermissions","hasCompleted","length","hasLoadedPathway","userSettings","getPathway","options","jobTitle","jobTitleOverride","userProfile","metadata","presentation","preferredPresentationOverride","appLink","masterUser","screens","currentScreen","totalScreens","totalScreensInProgressBar","hasCompletedAllSteps","OnboardingLoaderContainer","props","className","variant","children","getOnboardingLoaderVideoStyles","index","screenSize","indexPositionId","styles","top","left","animationDelay","right","mobile","halfScreen","fullScreen","OnboardingVideosLoader","thumbnails","ArrayHelper","HardCoded","breakpoints","useBreakpoints","map","thumbnail","key","style","xs","hideThumbnailMask","src","ImageHelper","size","SubjectPlaceholder","coverUrl","PromotedTopicPlaceholder","MockDiscover","placeholderSubjects","Math","max","subjects","MockLayout","curriculum","editingCurriculum","subject","cover","url","Array","fill","_","namespace","LeftNavItem","Text","phrase","IconCircle","imageUrl","name","svgSize","SvgContainer","S","textVariant","svgName","ClickViewLogo","TopicsHelper","learningLevel","PresentationLearningLevel","getPresentationClass","VideoPlaceholder","video","VideoThumbnail","type","hideDuration","imageOptions","ImageFallback","extraClasses","MockPlaylist","placeholderVideos","hidePlaceholders","videos","useConfetti","confetti","count","drift","origin","x","y","position","startVelocity","ticks","gravity","FAKE_LOADER","CreatingPlaylistLoader","showTakingToDiscover","setShowTakingToDiscover","timeout","window","setTimeout","clearTimeout","redirectUrl","DefaultLoader","PreferencesLoader","OnboardingCompletedLoaderView","loaderViewModel","storage","usePresentation","preferredCurriculum","useCurriculums","ClassificationRequests","loaderType","playlistName","v"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"scripts/2724-060fdde41c-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/apps/onboarding/hooks/useOnboardingPathway.ts","file:///app/packages/projects/lite/src/apps/onboarding/components/loaders/primitives/OnboardingLoaderContainer.tsx","file:///app/packages/projects/lite/src/apps/onboarding/components/loaders/videos-loader/getOnboardingLoaderVideos.ts","file:///app/packages/projects/lite/src/apps/onboarding/components/loaders/videos-loader/OnboardingVideosLoader.tsx","file:///app/packages/projects/lite/src/apps/onboarding/components/loaders/videos-loader/videos-loader.scss","file:///app/packages/projects/lite/src/apps/onboarding/components/mock-views/discover/mock-discover.scss","file:///app/packages/projects/lite/src/apps/onboarding/components/mock-views/discover/MockDiscover.tsx","file:///app/packages/projects/lite/src/apps/onboarding/components/mock-views/layout/mock-layout.scss","file:///app/packages/projects/lite/src/apps/onboarding/components/mock-views/layout/MockLayout.tsx","file:///app/packages/projects/lite/src/apps/onboarding/components/mock-views/playlist/mock-playlist.scss","file:///app/packages/projects/lite/src/apps/onboarding/components/mock-views/playlist/MockPlaylist.tsx","file:///app/packages/projects/lite/src/apps/onboarding/hooks/useConfetti.ts","file:///app/packages/projects/lite/src/apps/onboarding/components/loaders/creating-playlist-loader/creating-playlist-loader.scss","file:///app/packages/projects/lite/src/apps/onboarding/components/loaders/creating-playlist-loader/CreatingPlaylistLoader.tsx","file:///app/packages/projects/lite/src/apps/onboarding/components/loaders/default/default-loader.scss","file:///app/packages/projects/lite/src/apps/onboarding/components/loaders/default/DefaultLoader.tsx","file:///app/packages/projects/lite/src/apps/onboarding/components/loaders/preferences-loader/preferences-loader.scss","file:///app/packages/projects/lite/src/apps/onboarding/components/loaders/preferences-loader/PreferencesLoader.tsx","file:///app/packages/projects/lite/src/apps/onboarding/views/completed-loader/OnboardingCompletedLoaderView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { useViewModel } from 'libs/common/react/hooks/UseViewModel';\nimport { Flight } from 'libs/common/react/index';\n\nimport { OnboardingScreenAppLinks } from 'libs/shared/apps/onboarding/interfaces/OnboardingScreenAppLinks';\nimport { OnboardingPathway, OnboardingPathwayHelper } from 'libs/shared/apps/onboarding/utils/OnboardingPathwayHelper';\nimport { JobTitles } from 'libs/shared/apps/sign-up/interfaces/JobTitles';\nimport { PresentationType } from 'libs/shared/enums/PresentationType';\nimport { ClassificationRequests } from 'libs/shared/flight-requests/ClassificationRequests';\nimport { PlaylistRequests } from 'libs/shared/flight-requests/PlaylistRequests';\nimport { PreferenceRequests } from 'libs/shared/flight-requests/PreferenceRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\nimport { useSettings } from 'libs/shared/hooks/useSettings';\nimport { Classification, CurrentUser, PlaylistCollection, Presentation, User } from 'libs/shared/interfaces';\nimport { ContextService } from 'libs/shared/services/ContextService';\n\nimport { PlaylistCollectionIdentifier } from '../../playlists/interfaces';\n\nexport interface GetPathwayOptions {\n jobTitleOverride?: JobTitles;\n preferredPresentationOverride?: Presentation;\n}\n\nexport function useOnboardingPathway(appLinks: OnboardingScreenAppLinks) {\n const [ hasPlaylist, setHasPlaylist ] = useViewModel<boolean>('has:playlist', null);\n\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const user = Flight.useBasicFetch<User>(currentUser.data?.isAuthenticated && UserRequests.user(currentUser.data.id));\n\n const presentations = Flight.useBasicFetch<Presentation[]>(\n ClassificationRequests.availablePresentations(PresentationType.Subject)\n );\n const preferredPresentation = Flight.useBasicFetch<Presentation>(\n ClassificationRequests.presentation(PresentationType.Subject)\n );\n const curriculums = Flight.useBasicFetch<Presentation[]>(\n ClassificationRequests.availablePresentations(PresentationType.Curriculum)\n );\n const playlists = Flight.useBasicFetch<PlaylistCollection>(\n PlaylistRequests.getUserPlaylists(new PlaylistCollectionIdentifier())\n );\n const preferredSubjects = Flight.useBasicFetch<Classification[]>(\n PreferenceRequests.mySubjectPreferences()\n );\n const { hasPermissions } = usePermissions();\n\n React.useEffect(() => {\n if (!playlists.hasCompleted)\n return;\n\n if (hasPlaylist !== !!playlists.data?.data?.length)\n setHasPlaylist(!!playlists.data?.data?.length);\n }, [playlists.hasCompleted]);\n\n const hasLoadedPathway = (\n currentUser.hasCompleted &&\n user.hasCompleted &&\n presentations.hasCompleted &&\n curriculums.hasCompleted &&\n preferredPresentation.hasCompleted &&\n playlists.hasCompleted &&\n preferredSubjects.hasCompleted &&\n hasPlaylist !== null\n );\n\n const { userSettings } = useSettings(null);\n\n function getPathway(options: GetPathwayOptions = {}): OnboardingPathway {\n const jobTitle = options.jobTitleOverride || user.data?.userProfile?.metadata?.jobTitle;\n const presentation = options.preferredPresentationOverride || preferredPresentation.data;\n\n if (!hasLoadedPathway) {\n return {\n screens: {},\n currentScreen: null,\n totalScreens: 0,\n totalScreensInProgressBar: 0,\n hasCompletedAllSteps: false\n };\n }\n\n return OnboardingPathwayHelper.getOnboardingPathway({\n jobTitle,\n userSettings: userSettings.data,\n presentations: presentations.data,\n curriculums: curriculums.data,\n preferredSubjects: preferredSubjects.data,\n preferredPresentation: presentation,\n appLink: ContextService.getCurrentRoute().appLink,\n appLinks,\n masterUser: user.data,\n hasPlaylist,\n hasPermissions,\n currentUser: currentUser.data\n });\n }\n\n return {\n getPathway,\n hasLoadedPathway\n };\n}","import React from 'react';\n\ninterface OnboardingLoaderContainerProps {\n variant: 'blue' | 'dark-blue'\n}\n\nexport function OnboardingLoaderContainer(props: React.PropsWithChildren<OnboardingLoaderContainerProps>): JSX.Element {\n return (\n <div className={`w-100 h-100 position-fixed bg-${props.variant}`}>\n {props.children}\n </div>\n );\n}","function mobile(index: number): React.CSSProperties {\n const indexPositionId = index % 10;\n\n const styles: React.CSSProperties = { top: `${index * 4}%` };\n\n /**\n * This is pretty much random to make the loader look nicer.\n */\n switch (indexPositionId) {\n case 0: {\n styles.left = '12.5%';\n styles.animationDelay = '0.5s';\n return styles;\n }\n\n case 1: {\n styles.right = '7.5%';\n styles.animationDelay = '1s';\n return styles;\n }\n\n case 2: {\n styles.left = '10%';\n return styles;\n }\n\n case 3: {\n styles.right = '2.5%';\n styles.animationDelay = '0.5s';\n return styles;\n }\n\n case 4: {\n styles.left = '2.5%';\n styles.animationDelay = '1.5s';\n return styles;\n }\n\n case 5: {\n styles.right = '10%';\n return styles;\n }\n\n case 6: {\n styles.left = '12.5%';\n styles.animationDelay = '1.5s';\n return styles;\n }\n\n case 7: {\n styles.right = '7.5%';\n styles.animationDelay = '0.5s';\n return styles;\n }\n\n case 8: {\n styles.left = '5%';\n styles.animationDelay = '1s';\n return styles;\n }\n\n case 9: {\n styles.right = '2.5%';\n styles.animationDelay = '1s';\n return styles;\n }\n\n default: {\n styles.left = '10%';\n styles.animationDelay = '1.5s';\n return styles;\n }\n }\n}\n\nfunction halfScreen(index: number): React.CSSProperties {\n const indexPositionId = index % 10;\n\n const styles: React.CSSProperties = { top: `${index * 4}%` };\n\n /**\n * This is pretty much random to make the loader look nicer.\n */\n switch (indexPositionId) {\n case 0: {\n styles.left = '25%';\n styles.animationDelay = '0.5s';\n return styles;\n }\n\n case 1: {\n styles.right = '15%';\n styles.animationDelay = '1s';\n return styles;\n }\n\n case 2: {\n styles.left = '20%';\n return styles;\n }\n\n case 3: {\n styles.right = '5%';\n styles.animationDelay = '0.5s';\n return styles;\n }\n\n case 4: {\n styles.left = '5%';\n styles.animationDelay = '1.5s';\n return styles;\n }\n\n case 5: {\n styles.right = '20%';\n return styles;\n }\n\n case 6: {\n styles.left = '25%';\n styles.animationDelay = '1.5s';\n return styles;\n }\n\n case 7: {\n styles.right = '15%';\n styles.animationDelay = '0.5s';\n return styles;\n }\n\n case 8: {\n styles.left = '10%';\n styles.animationDelay = '1s';\n return styles;\n }\n\n case 9: {\n styles.right = '5%';\n styles.animationDelay = '1s';\n return styles;\n }\n\n default: {\n styles.left = '20%';\n styles.animationDelay = '1.5s';\n return styles;\n }\n }\n}\n\nfunction fullScreen(index: number): React.CSSProperties {\n const indexPositionId = index % 10;\n\n const styles: React.CSSProperties = { top: `${index * 4}%` };\n\n /**\n * This is pretty much random to make the loader look nicer.\n */\n switch (indexPositionId) {\n case 0: {\n styles.left = '25%';\n styles.animationDelay = '0.5s';\n return styles;\n }\n\n case 1: {\n styles.right = '30%';\n styles.animationDelay = '1s';\n return styles;\n }\n\n case 2: {\n styles.left = '40%';\n return styles;\n }\n\n case 3: {\n styles.right = '10%';\n styles.animationDelay = '0.5s';\n return styles;\n }\n\n case 4: {\n styles.left = '10%';\n styles.animationDelay = '1.5s';\n return styles;\n }\n\n case 5: {\n styles.right = '40%';\n return styles;\n }\n\n case 6: {\n styles.left = '30%';\n styles.animationDelay = '1.5s';\n return styles;\n }\n\n case 7: {\n styles.right = '30%';\n styles.animationDelay = '0.5s';\n return styles;\n }\n\n case 8: {\n styles.left = '10%';\n styles.animationDelay = '1s';\n return styles;\n }\n\n case 9: {\n styles.right = '10%';\n styles.animationDelay = '1s';\n return styles;\n }\n\n default: {\n styles.left = '40%';\n styles.animationDelay = '1.5s';\n return styles;\n }\n }\n}\n\n// 2 columns means the images are more off to the sides\n// 3 columns means they approach the center more\nexport function getOnboardingLoaderVideoStyles(index: number, screenSize: '50%' | '100%' | 'mobile'): React.CSSProperties {\n if (screenSize === 'mobile')\n return mobile(index);\n\n if (screenSize === '50%')\n return halfScreen(index);\n\n return fullScreen(index);\n}","import React from 'react';\n\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { HardCoded } from 'libs/shared/constants/HardCoded';\nimport { ImageSize } from 'libs/shared/enums/Images';\nimport { useBreakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { ImageHelper } from 'libs/shared/utils/ImageHelper';\n\nimport { getOnboardingLoaderVideoStyles } from 'apps/onboarding/components/loaders/videos-loader/getOnboardingLoaderVideos';\n\nimport styles from './videos-loader.scss';\n\ninterface OnboardingVideosLoaderProps {\n screenSize: '50%' | '100%';\n variant: 'dark-blue' | 'blue';\n hideThumbnailMask?: boolean;\n}\n\nexport const OnboardingVideosLoader = React.memo((props: OnboardingVideosLoaderProps) => {\n const thumbnails = ArrayHelper.shuffle(HardCoded.Onboarding.LOADING_THUMBNAILS);\n\n const breakpoints = useBreakpoints();\n\n function getScreenSize(): 'mobile' | OnboardingVideosLoaderProps['screenSize'] {\n if (breakpoints.xs) {\n return 'mobile';\n }\n\n return props.screenSize;\n }\n\n return (\n <div className={`${styles.loading} ${props.screenSize === '50%' ? 'w-50' : 'w-100'}`}>\n {thumbnails.map((thumbnail, index) => {\n return (\n <div\n key={index}\n className={`${styles.loadingImageContainer} position-absolute rounded-3 overflow-hidden`}\n style={getOnboardingLoaderVideoStyles(index, getScreenSize())}\n >\n {!props.hideThumbnailMask && (\n <div className={`${styles.loadingImageMask} ${props.variant === 'blue' ? styles.blue : styles.darkBlue}`} />\n )}\n <img className='img-fluid' src={ImageHelper.createUrl(thumbnail, { size: ImageSize.Small })} />\n </div>\n );\n })}\n </div>\n );\n});","// extracted by mini-css-extract-plugin\nexport default {\"loadingImageContainer\":\"ZlA2t\",\"fadeIn\":\"YmTa1\",\"loadingImageMask\":\"jNop3\",\"darkBlue\":\"YNfFq\",\"blue\":\"jVOWE\",\"loading\":\"n2Qe4\",\"loader\":\"BqV36\"};","// extracted by mini-css-extract-plugin\nexport default {\"magicTab\":\"H5jzm\",\"subjectPlaceholder\":\"r1L6T\",\"placeholderCover\":\"z9CFT\",\"promotedTopicPlaceholder\":\"PbYs6\",\"promotedTopicPlaceholderText\":\"hZ8Nf\"};","import React from 'react';\n\nimport { ImageSize } from 'libs/shared/enums/Images';\nimport { Classification, Presentation } from 'libs/shared/interfaces';\nimport { ImageHelper } from 'libs/shared/utils/ImageHelper';\n\nimport { MockLayout } from 'apps/onboarding/components/mock-views/layout/MockLayout';\n\nimport styles from './mock-discover.scss';\n\ninterface SubjectPlaceholderProps {\n coverUrl?: string;\n}\n\nfunction SubjectPlaceholder(props: SubjectPlaceholderProps): JSX.Element {\n return (\n <li className='col-4'>\n <div className={`d-flex border rounded-3 overflow-hidden ${styles.subjectPlaceholder}`}>\n {props.coverUrl ? (\n <div className={styles.placeholderCover}>\n <img className='img-fluid' src={ImageHelper.createUrl(props.coverUrl, { size: ImageSize.Small })} />\n </div>\n ) : (\n <div className={`${styles.placeholderCover} bg-light-blue`} />\n )}\n </div>\n </li>\n );\n}\n\nfunction PromotedTopicPlaceholder(): JSX.Element {\n return (\n <li className='col-4'>\n <div className={`bg-light-blue rounded-3 w-100 p-1 ${styles.promotedTopicPlaceholder}`} />\n </li>\n );\n}\n\ninterface MockDiscoverProps {\n subjects?: Classification[];\n presentation?: Presentation;\n curriculum?: Presentation;\n editingCurriculum?: boolean;\n}\n\nexport function MockDiscover(props: MockDiscoverProps): JSX.Element {\n const placeholderSubjects = Math.max(12 - (props.subjects?.length ?? 0), 0);\n\n return (\n <MockLayout\n presentation={props.presentation}\n curriculum={props.curriculum}\n editingCurriculum={props.editingCurriculum}\n >\n <div className='px-3 pt-3 w-100 d-flex flex-column align-items-center'>\n {/* Magic tabs */}\n <div className='rounded-3 border overflow-hidden d-flex mb-2'>\n <div className={`bg-light ${styles.magicTab}`} />\n <div className={`${styles.magicTab}`} />\n </div>\n\n {/* Subjects */}\n <ul className='list-unstyled mb-0 row w-100 g-xl-2 g-lg-1 mb-2'>\n {props.subjects?.map(subject => {\n return (\n <SubjectPlaceholder key={subject.id} coverUrl={subject.cover?.url} />\n );\n })}\n {new Array(placeholderSubjects).fill(0).map((_, index) => {\n return (\n <SubjectPlaceholder key={index} />\n );\n })}\n </ul>\n\n {/* Promoted topics */}\n <ul className='list-unstyled mb-0 row w-100 g-xl-2 g-lg-1'>\n <PromotedTopicPlaceholder />\n <PromotedTopicPlaceholder />\n <PromotedTopicPlaceholder />\n <PromotedTopicPlaceholder />\n <PromotedTopicPlaceholder />\n <PromotedTopicPlaceholder />\n <PromotedTopicPlaceholder />\n <PromotedTopicPlaceholder />\n <PromotedTopicPlaceholder />\n </ul>\n </div>\n </MockLayout>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"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\"};","import React from 'react';\n\nimport { IconCircle } from 'libs/shared/components/icon-circle/IconCircle';\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { ClickViewLogo, ClickViewPrimaryLogo } from 'libs/shared/components/svgs/clickview-logo/ClickViewLogo';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { PresentationLearningLevel } from 'libs/shared/enums/PresentationLearningLevel';\nimport { useBreakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { Presentation } from 'libs/shared/interfaces';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\nimport { TopicsHelper } from 'libs/shared/utils/topics-helper/TopicsHelper';\n\nimport styles from './mock-layout.scss';\n\nconst namespace = 'onboarding.mockLayout';\n\nfunction LeftNavItem(): JSX.Element {\n return (\n <div className='d-flex align-items-center justify-content-center mb-2 px-3'>\n <div className={`${styles.leftNavIcon} rounded-circle`} />\n <div className={`${styles.leftNavText} rounded-pill`} />\n </div>\n );\n}\n\ninterface MockLayoutProps {\n editingCurriculum?: boolean;\n curriculum?: Presentation;\n presentation?: Presentation;\n}\n\nexport function MockLayout(props: React.PropsWithChildren<MockLayoutProps>): JSX.Element {\n const breakpoints = useBreakpoints();\n \n function getPresentationClass(): string {\n if (!props.presentation)\n return styles.presentationPlaceholderIcon;\n\n switch (TopicsHelper.getMappedPresentationLevel(props.presentation.learningLevel)) {\n case PresentationLearningLevel.Level_1:\n return `bg-indigo ${styles.presentationIcon}`;\n\n case PresentationLearningLevel.Level_3:\n return `bg-blue ${styles.presentationIcon}`;\n\n default:\n case PresentationLearningLevel.Level_2:\n return `bg-green ${styles.presentationIcon}`;\n }\n }\n\n return (\n <div className={`border border-dark border-2 bg-white rounded-3 user-select-none overflow-hidden position-relative h-100 w-100`}>\n {!!props.editingCurriculum && (\n <div className={`w-100 h-100 position-absolute ${styles.shadow}`}>\n <div className={`d-flex align-items-center h-100 w-50 ${styles.curriculumContainer}`}>\n <div className='bg-white rounded-3 border p-3 w-100'>\n <h2 className='h6 text-start'><Text namespace={namespace} phrase='curriculum' /></h2>\n\n {props.curriculum ? (\n <div className='d-flex align-items-center'>\n <div className={`${styles.curriculumIcon} rounded-circle me-2 border`}>\n <IconCircle imageUrl={props.curriculum.cover?.url} />\n </div>\n <div className='text-start'>{props.curriculum.name}</div>\n </div>\n ) : (\n <div className='d-flex align-items-center text-secondary'>\n <div className={`me-2 rounded-circle p-1 ${styles.iconPlaceholder}`}>\n <IconCircle svgSize={SvgContainerSize.Large} textVariant='secondary' svgName={cvSvgLibrary.GraduationCap} />\n </div>\n <Text namespace={namespace} phrase='selectCurriculum' />\n </div>\n )}\n </div>\n </div>\n </div>\n )}\n\n {/* Black bar */}\n <div className={`bg-dark d-flex px-3 py-2 ${styles.blackBar}`}>\n <div className={`rounded-circle me-2 ${styles.dot}`} />\n <div className={`rounded-circle me-2 ${styles.dot}`} />\n <div className={`rounded-circle ${styles.dot}`} />\n </div>\n\n {/* Header */}\n <div className={`border-bottom px-3 py-2 d-flex align-items-center ${styles.topNav}`}>\n <div className={`${styles.logo} me-4`}>\n {breakpoints.xs ? (\n <ClickViewPrimaryLogo />\n ) : (\n <ClickViewLogo />\n )}\n </div>\n <div className='form-control w-75 d-flex justify-content-start'>\n <SvgContainer svgName={cvSvgLibrary.Search} />\n </div>\n {!!props.curriculum && (\n <div className={`${styles.curriculumIconSmall} rounded-circle ms-2 me-n1 border`}>\n <IconCircle imageUrl={props.curriculum.cover?.url} />\n </div>\n )}\n </div>\n\n <div className={`d-flex ${styles.belowHeader}`}>\n {/* Left nav */}\n <div className={`${styles.leftNav} border-end`}>\n <div className='d-flex flex-column pt-3 h-100'>\n <LeftNavItem />\n <LeftNavItem />\n <LeftNavItem />\n <LeftNavItem />\n <LeftNavItem />\n\n {/* Presentation */}\n <div className='d-flex align-items-end h-100 w-100'>\n <div className='border-top p-3 w-100'>\n <div className='d-flex align-items-center'>\n <div className={`${getPresentationClass()} text-white rounded`}>\n <SvgContainer svgName={cvSvgLibrary.School} size={SvgContainerSize.Large} />\n </div>\n\n {!props.presentation ? (\n <div className={`${styles.presentationPlaceholderText} fw-semibold`}>\n <Text namespace={namespace} phrase='schoolLevel' />\n </div>\n ) : (\n <span className={`fw-semibold text-truncate ${styles.presentationName}`}>{props.presentation.name}</span>\n )}\n </div>\n </div>\n </div>\n </div>\n </div>\n\n {/* Main content */}\n <div className={`w-100 h-100 overflow-hidden`}>\n {props.children}\n </div>\n </div>\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"banner\":\"CQxNy\",\"title\":\"NzV5V\",\"description1\":\"kjCZi\",\"description2\":\"cBeyJ\",\"placeholder\":\"Ks_Tl\",\"playlistName\":\"eFPqz\",\"thumbnailCol\":\"dgCQ7\",\"videoInfoCol\":\"pzfE2\"};","import React from 'react';\n\nimport { ImageFallback, ImageFallbackType } from 'libs/shared/components/image/ImageFallback';\nimport { VideoThumbnail } from 'libs/shared/components/thumbnails/video/VideoThumbnail';\nimport { ImageSize } from 'libs/shared/enums/Images';\nimport { Presentation, Video } from 'libs/shared/interfaces';\n\nimport { MockLayout } from 'apps/onboarding/components/mock-views/layout/MockLayout';\n\nimport styles from './mock-playlist.scss';\n\ninterface VideoPlaceholderProps {\n video?: Video;\n}\n\nfunction VideoPlaceholder(props: VideoPlaceholderProps): JSX.Element {\n return (\n <li className='row mb-2'>\n <div className={`col-lg-4 col-5 ${styles.thumbnailCol}`}>\n {props.video ? (\n <VideoThumbnail video={props.video} type='cosmetic' hideDuration imageOptions={{ size: ImageSize.Medium }} />\n ) : (\n <ImageFallback type={ImageFallbackType.Video} extraClasses={`position-relative rounded-3 ${styles.placeholder}`} />\n )}\n </div>\n\n <div className={`col-lg-8 col-7 ${styles.videoInfoCol}`}>\n <div className={`${styles.title} rounded-pill bg-grey mb-1`} />\n <div className={`${styles.description1} rounded-pill bg-grey mb-1`} />\n <div className={`${styles.description2} rounded-pill bg-grey mb-1`} />\n </div>\n </li>\n );\n}\n\ninterface MockPlaylistProps {\n name?: string;\n presentation?: Presentation;\n curriculum?: Presentation;\n videos: Video[];\n hidePlaceholders?: boolean;\n}\n\nexport function MockPlaylist(props: MockPlaylistProps): JSX.Element {\n const placeholderVideos = props.hidePlaceholders ? 0 : Math.max(6 - (props.videos?.length ?? 0), 0);\n\n return (\n <MockLayout presentation={props.presentation} curriculum={props.curriculum}>\n {/* Banner */}\n <div className={`bg-teal ${styles.banner} position-relative`}>\n {props.name && (\n <div className={`h5 text-white mb-0 ${styles.playlistName}`}>{props.name}</div>\n )}\n </div>\n\n {/* Videos */}\n <ul className='list-unstyled mb-0 w-100 p-2'>\n {props.videos?.map(video => {\n return (\n <VideoPlaceholder key={video.id} video={video} />\n );\n })}\n {new Array(placeholderVideos).fill(0).map((_, index) => {\n return (\n <VideoPlaceholder key={index} />\n );\n })}\n </ul>\n </MockLayout>\n );\n}","import React from 'react';\nimport { confetti } from 'tsparticles-confetti';\n\nexport function useConfetti(): void {\n React.useEffect(() => {\n confetti('tsparticles', {\n count: 500,\n drift: 25,\n origin: { x: 50, y: 100 },\n position: { x: 50, y: 100 },\n startVelocity: 100,\n ticks: 100,\n gravity: 3\n });\n }, []);\n}","// extracted by mini-css-extract-plugin\nexport default {\"playlistContainer\":\"J5iom\",\"confetti\":\"Ja1bk\",\"discover\":\"njFgx\"};","import React from 'react';\n\nimport { Text } from 'libs/shared/components/text/Text';\nimport { Presentation, Video } from 'libs/shared/interfaces';\n\nimport { OnboardingLoaderContainer } from 'apps/onboarding/components/loaders/primitives/OnboardingLoaderContainer';\nimport { OnboardingVideosLoader } from 'apps/onboarding/components/loaders/videos-loader/OnboardingVideosLoader';\nimport { MockPlaylist } from 'apps/onboarding/components/mock-views/playlist/MockPlaylist';\nimport { useConfetti } from 'apps/onboarding/hooks/useConfetti';\nimport { onFinishOnboarding } from 'apps/onboarding/utils/OnboardingAppLinkHelper';\n\nimport styles from './creating-playlist-loader.scss';\n\nconst namespace = 'onboarding.creatingPlaylistLoader';\n\nconst FAKE_LOADER = 5000;\n\ninterface CreatingPlaylistLoaderProps {\n name: string;\n presentation: Presentation;\n curriculum: Presentation;\n videos: Video[];\n redirectUrl: string;\n}\n\nexport function CreatingPlaylistLoader(props: CreatingPlaylistLoaderProps): JSX.Element {\n const [ showTakingToDiscover, setShowTakingToDiscover ] = React.useState(false);\n\n useConfetti();\n\n React.useEffect(() => {\n const timeout = window.setTimeout(() => {\n setShowTakingToDiscover(true);\n }, FAKE_LOADER);\n\n return () => {\n window.clearTimeout(timeout);\n };\n }, []);\n\n React.useEffect(() => {\n if (!showTakingToDiscover)\n return;\n\n const timeout = window.setTimeout(() => {\n onFinishOnboarding(props.redirectUrl);\n }, FAKE_LOADER);\n\n return () => {\n window.clearTimeout(timeout);\n };\n }, [showTakingToDiscover]);\n\n if (showTakingToDiscover) {\n return (\n <OnboardingLoaderContainer variant='dark-blue'>\n <div className={`${styles.playlistContainer} ${styles.discover}`}>\n <h1 className='text-white h3 text-center mb-3'>\n <Text namespace={namespace} phrase='takingYouToDiscover' />\n </h1>\n <MockPlaylist\n presentation={props.presentation}\n curriculum={props.curriculum}\n videos={props.videos}\n name={props.name}\n hidePlaceholders\n />\n </div>\n <OnboardingVideosLoader screenSize='100%' variant='dark-blue' />\n </OnboardingLoaderContainer>\n );\n }\n\n return (\n <OnboardingLoaderContainer variant='dark-blue'>\n <div className={`${styles.playlistContainer} ${styles.confetti}`}>\n <h1 className='text-white h3 text-center mb-3'>\n <Text namespace={namespace} phrase='greatJob' /><br />\n <Text namespace={namespace} phrase='creatingPlaylist' />\n </h1>\n <MockPlaylist\n presentation={props.presentation}\n curriculum={props.curriculum}\n videos={props.videos}\n name={props.name}\n hidePlaceholders\n />\n </div>\n </OnboardingLoaderContainer>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"container\":\"GVDR9\"};","import React from 'react';\n\nimport { Text } from 'libs/shared/components/text/Text';\nimport { Classification, Presentation } from 'libs/shared/interfaces';\n\nimport { OnboardingLoaderContainer } from 'apps/onboarding/components/loaders/primitives/OnboardingLoaderContainer';\nimport { OnboardingVideosLoader } from 'apps/onboarding/components/loaders/videos-loader/OnboardingVideosLoader';\nimport { MockDiscover } from 'apps/onboarding/components/mock-views/discover/MockDiscover';\nimport { useConfetti } from 'apps/onboarding/hooks/useConfetti';\nimport { onFinishOnboarding } from 'apps/onboarding/utils/OnboardingAppLinkHelper';\n\nimport styles from './default-loader.scss';\n\nconst namespace = 'onboarding.defaultLoader';\n\nconst FAKE_LOADER = 5000;\n\ninterface DefaultLoaderProps {\n presentation: Presentation;\n curriculum: Presentation;\n subjects: Classification[];\n redirectUrl: string;\n}\n\nexport function DefaultLoader(props: DefaultLoaderProps): JSX.Element {\n const [ showTakingToDiscover, setShowTakingToDiscover ] = React.useState(false);\n\n useConfetti();\n\n React.useEffect(() => {\n const timeout = window.setTimeout(() => {\n setShowTakingToDiscover(true);\n }, FAKE_LOADER);\n\n return () => {\n window.clearTimeout(timeout);\n };\n }, []);\n\n React.useEffect(() => {\n if (!showTakingToDiscover)\n return;\n\n const timeout = window.setTimeout(() => {\n onFinishOnboarding(props.redirectUrl);\n }, FAKE_LOADER);\n\n return () => {\n window.clearTimeout(timeout);\n };\n }, [showTakingToDiscover]);\n\n if (showTakingToDiscover) {\n return (\n <OnboardingLoaderContainer variant='dark-blue'>\n <div className={`${styles.container}`}>\n <h1 className='text-white h3 text-center mb-3'>\n <Text namespace={namespace} phrase='takingYouToDiscover' />\n </h1>\n <MockDiscover\n presentation={props.presentation}\n curriculum={props.curriculum}\n subjects={props.subjects}\n />\n </div>\n <OnboardingVideosLoader screenSize='100%' variant='dark-blue' />\n </OnboardingLoaderContainer>\n );\n }\n\n return (\n <OnboardingLoaderContainer variant='dark-blue'>\n <div className={`${styles.container}`}>\n <h1 className='text-white h3 text-center mb-3'>\n <Text namespace={namespace} phrase='allDone' />\n </h1>\n <MockDiscover\n presentation={props.presentation}\n subjects={props.subjects}\n curriculum={props.curriculum}\n />\n </div>\n </OnboardingLoaderContainer>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"discoverContainer\":\"u6Ak8\",\"confetti\":\"BVY_E\",\"discover\":\"yYZ_G\"};","import React from 'react';\n\nimport { Text } from 'libs/shared/components/text/Text';\nimport { Classification, Presentation } from 'libs/shared/interfaces';\n\nimport { OnboardingLoaderContainer } from 'apps/onboarding/components/loaders/primitives/OnboardingLoaderContainer';\nimport { OnboardingVideosLoader } from 'apps/onboarding/components/loaders/videos-loader/OnboardingVideosLoader';\nimport { useConfetti } from 'apps/onboarding/hooks/useConfetti';\nimport { onFinishOnboarding } from 'apps/onboarding/utils/OnboardingAppLinkHelper';\n\nimport { MockDiscover } from '../../mock-views/discover/MockDiscover';\n\nimport styles from './preferences-loader.scss';\n\nconst namespace = 'onboarding.preferencesLoader';\n\nconst FAKE_LOADER = 5000;\n\ninterface PreferencesLoaderProps {\n presentation: Presentation;\n curriculum: Presentation;\n subjects: Classification[];\n redirectUrl: string;\n}\n\nexport function PreferencesLoader(props: PreferencesLoaderProps): JSX.Element {\n const [ showTakingToDiscover, setShowTakingToDiscover ] = React.useState(false);\n\n useConfetti();\n\n React.useEffect(() => {\n const timeout = window.setTimeout(() => {\n setShowTakingToDiscover(true);\n }, FAKE_LOADER);\n\n return () => {\n window.clearTimeout(timeout);\n };\n }, []);\n\n React.useEffect(() => {\n if (!showTakingToDiscover)\n return;\n\n const timeout = window.setTimeout(() => {\n onFinishOnboarding(props.redirectUrl);\n }, FAKE_LOADER);\n\n return () => {\n window.clearTimeout(timeout);\n };\n }, [showTakingToDiscover]);\n\n if (showTakingToDiscover) {\n return (\n <OnboardingLoaderContainer variant='dark-blue'>\n <div className={`${styles.discoverContainer} ${styles.discover}`}>\n <h1 className='text-white h3 text-center mb-3'>\n <Text namespace={namespace} phrase='takingYouToDiscover' />\n </h1>\n <MockDiscover\n presentation={props.presentation}\n curriculum={props.curriculum}\n subjects={props.subjects}\n />\n </div>\n <OnboardingVideosLoader screenSize='100%' variant='dark-blue' />\n </OnboardingLoaderContainer>\n );\n }\n\n return (\n <OnboardingLoaderContainer variant='dark-blue'>\n <div className={`${styles.discoverContainer} ${styles.confetti}`}>\n <h1 className='text-white h3 text-center mb-3'>\n <Text namespace={namespace} phrase='greatJob' /><br />\n <Text namespace={namespace} phrase='loadingPreferences' />\n </h1>\n <MockDiscover\n presentation={props.presentation}\n curriculum={props.curriculum}\n subjects={props.subjects}\n />\n </div>\n </OnboardingLoaderContainer>\n );\n}","import React from 'react';\n\nimport { StorageType } from 'libs/common/backbone/utils/LocalStorageHelper';\nimport { useViewModel } from 'libs/common/react/hooks/UseViewModel';\nimport { Flight } from 'libs/common/react/index';\n\nimport { useOnboardingPathway } from 'libs/shared/apps/onboarding/hooks/useOnboardingPathway';\nimport { ClassificationRequests } from 'libs/shared/flight-requests/ClassificationRequests';\nimport { Classification } from 'libs/shared/interfaces';\n\nimport { ViewModelKeys } from 'shared/constants/LiteViewModels';\nimport { useCurriculums } from 'shared/hooks/useCurriculums';\nimport { usePresentation } from 'shared/hooks/usePresentation';\n\nimport { CreatingPlaylistLoader } from 'apps/onboarding/components/loaders/creating-playlist-loader/CreatingPlaylistLoader';\nimport { DefaultLoader } from 'apps/onboarding/components/loaders/default/DefaultLoader';\nimport { PreferencesLoader } from 'apps/onboarding/components/loaders/preferences-loader/PreferencesLoader';\nimport { OnboardingViewProps } from 'apps/onboarding/interfaces/OnboardingViewProps';\nimport { getOnboardingAppLinks } from 'apps/onboarding/utils/OnboardingAppLinkHelper';\n\nimport { SavedOnboardingVideo } from '../select-videos/OnboardingSelectVideosView';\n\ntype LoaderType = 'create-playlist' | 'preferences' | 'default';\n\nexport interface OnboardingLoaderViewModel {\n playlistName?: string;\n}\n\nexport function OnboardingCompletedLoaderView(props: OnboardingViewProps): JSX.Element {\n const appLinks = getOnboardingAppLinks();\n const { getPathway } = useOnboardingPathway(appLinks);\n\n const [loaderViewModel] = useViewModel<OnboardingLoaderViewModel>(ViewModelKeys.ONBOARDING_LOADER, {});\n\n const [videos] = useViewModel<SavedOnboardingVideo[]>(\n ViewModelKeys.ONBOARDING_VIDEOS_V2,\n [],\n { storage: StorageType.LocalStorage }\n );\n\n const { preferredPresentation } = usePresentation();\n const { preferredCurriculum } = useCurriculums();\n const subjects = Flight.useBasicFetch<Classification[]>(ClassificationRequests.classifications());\n\n const loaderType: LoaderType = React.useMemo(() => {\n const pathway = getPathway();\n\n switch (pathway.currentScreen) {\n case 'create-playlist':\n return 'create-playlist';\n \n case 'subjects-summary':\n case 'subjects':\n case 'school-level':\n case 'select-curriculum':\n return 'preferences';\n\n default:\n return 'default';\n }\n }, []);\n\n if (loaderType === 'default') {\n return (\n <DefaultLoader\n subjects={subjects.data}\n presentation={preferredPresentation}\n curriculum={preferredCurriculum}\n redirectUrl={props.redirectUrl}\n />\n );\n }\n\n if (loaderType === 'create-playlist') {\n return (\n <CreatingPlaylistLoader\n name={loaderViewModel.playlistName}\n videos={videos.map(v => v.data)}\n presentation={preferredPresentation}\n curriculum={preferredCurriculum}\n redirectUrl={props.redirectUrl}\n />\n );\n }\n\n if (loaderType === 'preferences') {\n return (\n <PreferencesLoader\n subjects={subjects.data}\n presentation={preferredPresentation}\n curriculum={preferredCurriculum}\n redirectUrl={props.redirectUrl}\n />\n );\n }\n\n return <></>;\n}"],"names":["useOnboardingPathway","appLinks","hasPlaylist","setHasPlaylist","currentUser","user","data","isAuthenticated","id","presentations","preferredPresentation","curriculums","playlists","preferredSubjects","hasPermissions","hasCompleted","length","hasLoadedPathway","userSettings","getPathway","options","jobTitle","jobTitleOverride","userProfile","metadata","presentation","preferredPresentationOverride","appLink","masterUser","screens","currentScreen","totalScreens","totalScreensInProgressBar","hasCompletedAllSteps","OnboardingLoaderContainer","props","className","variant","children","getOnboardingLoaderVideoStyles","index","screenSize","indexPositionId","styles","top","left","animationDelay","right","mobile","halfScreen","fullScreen","OnboardingVideosLoader","thumbnails","ArrayHelper","HardCoded","breakpoints","useBreakpoints","map","thumbnail","key","style","xs","hideThumbnailMask","src","ImageHelper","size","SubjectPlaceholder","coverUrl","PromotedTopicPlaceholder","MockDiscover","placeholderSubjects","Math","max","subjects","MockLayout","curriculum","editingCurriculum","subject","cover","url","Array","fill","_","namespace","LeftNavItem","Text","phrase","IconCircle","imageUrl","name","svgSize","SvgContainer","S","textVariant","svgName","ClickViewLogo","TopicsHelper","learningLevel","PresentationLearningLevel","getPresentationClass","VideoPlaceholder","video","VideoThumbnail","type","hideDuration","imageOptions","ImageFallback","extraClasses","MockPlaylist","placeholderVideos","hidePlaceholders","videos","useConfetti","confetti","count","drift","origin","x","y","position","startVelocity","ticks","gravity","FAKE_LOADER","CreatingPlaylistLoader","showTakingToDiscover","setShowTakingToDiscover","timeout","window","setTimeout","clearTimeout","redirectUrl","DefaultLoader","PreferencesLoader","OnboardingCompletedLoaderView","loaderViewModel","storage","usePresentation","preferredCurriculum","useCurriculums","ClassificationRequests","loaderType","playlistName","v"],"sourceRoot":""}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[3070],{80835:(e,n,t)=>{t.d(n,{U:()=>l});var r=t(32735),a=t(89118),i=t(68626),o=t(79967),s=t(80143),u=t(40424),c=t(31908);var l=r.memo((function(e){var n,t=e.data,l=e.getSubTextAppLink,d=e.context,m=e.thumbnailSize,p=e.preloadImage,f=e.presentationAudiences,v=null===(n=null==t?void 0:t.subjectPresentationAudiences)||void 0===n?void 0:n.data,h=(0,s.n)(v,f),g=(0,o.k)(),y="JSM4l";return d.type===u.l9.LargeRow&&(y="YYpNz"),r.createElement("div",{className:"px-1 flex-shrink-0 position-relative ".concat(y)},r.createElement(a.u,{type:e.preventPopout||g.xs?"static":"popout",textPosition:i.z.Below,video:t,appLink:e.getAppLink(t),subTextAppLink:c.M.isVideo(t)&&(null==l?void 0:l(t)),imageOptions:{size:m},preload:p,analyticsData:e.analyticsData,analyticsOptions:e.analyticsOptions,canFavourite:e.canFavourite,setFavourite:e.setFavourite,imageCdnUrl:e.imageCdnUrl,audience:h,hideRating:!!h,hideDuration:!1,yearGroups:e.yearGroups,hideTitle:e.hideTitle,showVideoGuidance:e.showVideoGuidance,companyLogoFallbackUrl:e.companyLogoFallbackUrl,subTextType:e.subTextType,isPlugin:e.isPlugin,getInteractiveGuidanceAppLink:e.getInteractiveGuidanceAppLink,getResourceGuidanceAppLink:e.getResourceGuidanceAppLink,getClassroomGuideAppLink:e.getClassroomGuideAppLink}))}))},39902:(e,n,t)=>{t.d(n,{f:()=>u});var r=t(32735),a=t(70680),i=t(20354);function o(e,n){if(e){if("string"==typeof e)return s(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?s(e,n):void 0}}function s(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function u(e,n){var t,u,c=(t=r.useState([]),u=2,function(e){if(Array.isArray(e))return e}(t)||function(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,a,i,o,s=[],u=!0,c=!1;try{if(i=(t=t.call(e)).next,0===n){if(Object(t)!==t)return;u=!1}else for(;!(u=(r=i.call(t)).done)&&(s.push(r.value),s.length!==n);u=!0);}catch(e){c=!0,a=e}finally{try{if(!u&&null!=t.return&&(o=t.return(),Object(o)!==o))return}finally{if(c)throw a}}return s}}(t,u)||o(t,u)||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.")}()),l=c[0],d=c[1];r.useEffect((function(){if(null==e?void 0:e.length){var n=function(e){return function(e){if(Array.isArray(e))return s(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||o(e)||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.")}()}(l);n.push([]),e.forEach((function(e){n.find((function(n){return n.find((function(n){return n===e}))}))||n[n.length-1].push(e)})),d(n.filter((function(e){return e.length})))}}),[e?e.join(","):null]);var m=(0,a.I0)(),p=(0,a.v9)((function(e){return e}));if(r.useEffect((function(){l.forEach((function(e){var t=n(e);i.a.getResponse(p,t.key).shouldFetch&&i.a.fetch(m,t)}))}),[null==l?void 0:l.length]),!(null==l?void 0:l.length))return{items:null,isFetching:!1};var f={},v={};return l.forEach((function(e,t){var r=n(e),a=i.a.getResponse(p,r.key);v[t]=a,a.data&&a.data.forEach((function(e){return f[e.id]=e}))})),{items:Object.keys(v).some((function(e){return!!v[e].data}))?f:null,isFetching:!!Object.keys(v).some((function(e){return v[e].isFetching}))}}},80143:(e,n,t)=>{t.d(n,{n:()=>i});var r=t(32735),a=t(69454);function i(e,n){var t=r.useMemo((function(){return(null==e?void 0:e.length)&&n&&a.T.shouldShowAudiences(n)?a.T.getSortedPresentationAudiences(e,n):null}),[e]);return r.useMemo((function(){return(null==t?void 0:t.length)?a.T.getMergedPresentationAudienceString(t):null}),[t])}},69454:(e,n,t)=>{t.d(n,{T:()=>d});var r=t(75896),a=t(1048),i=t(55171);function o(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}var s=/\d/,u=function(e){var n,t,a=r.m.first(e),i=r.m.last(e);return a.name===i.name?a.name:"Advanced"===i.name?"lower"===(n=a.name.split(" "),t=1,function(e){if(Array.isArray(e))return e}(n)||function(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,a,i,o,s=[],u=!0,c=!1;try{if(i=(t=t.call(e)).next,0===n){if(Object(t)!==t)return;u=!1}else for(;!(u=(r=i.call(t)).done)&&(s.push(r.value),s.length!==n);u=!0);}catch(e){c=!0,a=e}finally{try{if(!u&&null!=t.return&&(o=t.return(),Object(o)!==o))return}finally{if(c)throw a}}return s}}(n,t)||function(e,n){if(e){if("string"==typeof e)return o(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?o(e,n):void 0}}(n,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.")}())[0].toLowerCase()?"Lower Sec - Adv":"Upper Sec - Adv":"Lower - Upper Sec"},c=/([0-9]+)/gi,l=/\s|\+/gi,d={getSortedPresentationAudiences:function(e,n){var t=e.filter((function(e){return!!e})).map((function(e){return e.id.toString()}));return n.filter((function(e){return t.includes(e.masterId.toString())}))},getMergedPresentationAudienceString:function(e){var n,t,a,o="";switch(+r.m.first(e).presentationId){case i.e.PresentationIds.DEFAULT:case i.e.PresentationIds.AU_SECONDARY:case i.e.PresentationIds.US_ELEMENTARY:case i.e.PresentationIds.AU_PRIMARY:case i.e.PresentationIds.STREAMABLE_LEARNING:if(1===e.length)return e[0];o=function(e){var n=e.map((function(e){return e.name})).join(" "),t=n.split(" ").filter((function(e){return!isNaN(+e)})).map((function(e){return+e}))||[],r=n.split(" ").filter((function(e){return isNaN(+e)}))||[],a=e.find((function(e){return!s.test(e.name)})),i=r.find((function(e){return e!==(null==a?void 0:a.name)}));if(e.length>1&&(i+="s"),a&&t.length)return"".concat(i," ").concat(a.name.charAt(0)," - ").concat(t.pop());var o=function(e){var n,t,r,a,i=!1,o=[];for(e=e.sort((function(e,n){return e-n})),r=0;r<e.length;r++)a=r+1,i||(n=e[r]),t=e[a],e[r]+1===t?i=!0:i?(o.push("".concat(n," - ").concat(e[r])),i=!1):(o.push("".concat(e[r])),i=!1);return o}(t);return"".concat(i," ").concat(o.join(", "))}(e);break;case i.e.PresentationIds.SCOTLAND_PRIMARY:case i.e.PresentationIds.INTERNATIONAL_PRIMARY:case i.e.PresentationIds.INTERNATIONAL_SECONDARY:if(1===e.length)return e[0];o=function(e){var n=e.map((function(e){return e.name})),t={};n.forEach((function(e,n){if(0!==n){var r=e.split(" ");Object.keys(t).forEach((function(e){r.includes(e)||delete t[e]}))}else e.split(" ").forEach((function(e,n){t[e]=0===n?"start":"end"}))}));var r=Object.keys(t)[0],a=t[r];if(!r)return e[0].name;var i=e[0].name,o=e[e.length-1].name,s=function(e){return e.split(r)[0]},u="".concat(s(i)," - ").concat(s(o));return"start"===a?"".concat(r," ").concat(u):"".concat(u," ").concat(r)}(e);break;case i.e.PresentationIds.ENGLISH_SECONDARY:o=u(e);break;case i.e.PresentationIds.SCOTLAND_SECONDARY:n=e,t=r.m.first(n),a=r.m.last(n),o=t.name===a.name?t.name:"Senior Phase"===a.name?"".concat(t.name," - Senior"):"Third - Fourth Level";break;case i.e.PresentationIds.ENGLAND_PRIMARY:o=function(e){var n=r.m.first(e),t=r.m.last(e),a=r.m.first(n.name.split(" ")),i=r.m.first(t.name.split(" ")),o=n.name.split(" ").find((function(e){return!isNaN(+e)})),s=t.name.split(" ").find((function(e){return!isNaN(+e)}));if(n===t)return"Key"===a||"Reception"===a?n.name:"".concat(a," KS").concat(o);var u="",c="";return u="Reception"===a?"R":"KS".concat(o),c="KS".concat(s),"Lower"===a&&"Upper"===i?"L ".concat(u," - U ").concat(c):("Lower"===a&&(u="Lower ".concat(u)),"Upper"===i&&(c="Upper ".concat(c)),"Key"===i&&(c=t.name),"".concat(u," - ").concat(c))}(e);case i.e.PresentationIds.US_MIDDLE:case i.e.PresentationIds.US_HIGH:}return o?{name:o}:null},sortMembersWithDuplicateNamesByAudience:function(e){var n=function(e){return e.length?(e.forEach((function(e){var a=+r.m.first(e.name.match(c));if(!n)return n=e,void(t=a);a<t&&(n=e)})),n):null;var n,t},t={},a=[];return e.forEach((function(e){if(!t[e.name])return t[e.name]=1,void a.push(e);a.push(e),t[e.name]++;var r=a.splice(a.length-t[e.name]).sort((function(e,t){var r=n(e.subjectPresentationAudiences.data),a=n(t.subjectPresentationAudiences.data);if(!r&&a)return 1;if(!a)return-1;var i=r.name.localeCompare(a.name);return 0===i?i:i>0?-1:1}));a=a.concat(r)})),a},getActiveAudiencesFromParams:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(a.t.isObject(n)&&!a.t.isEmpty(n)&&e&&e.length&&d.shouldShowAudiences(e)){var t=n.a;if(t){"string"==typeof t&&(t=[t]);var r=function(e){return e.replace(l,"").toLowerCase()},i=t.reduce((function(e,n){return e[r(n)]=n,e}),{});return e.filter((function(e){return i[r(e.name)]}))}}},getAudienceParams:function(e){return(null==e?void 0:e.length)?{a:e.map((function(e){return e.name}))}:null},shouldShowAudiences:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return!!e&&e.length>1}}},58:(e,n,t)=>{t.r(n),t.d(n,{PopupPluginView:()=>ne});var r=t(32735),a=t(48088),i=t(95846),o=t(81886),s=t(23481),u=t(20354),c=t(65858),l=t(4201),d=t(11518),m=t(80835),p=t(16714),f=t(58704),v=t(89454),h=t(39151),g=t(1666),y=t(63419),A=t(98064),b=t(31949),L=t(35286),S=t(22902),k=t(37802),E=t(40424),P=t(31908),N=t(14070),C=t(97291),I=t(51855),w=t(27638),T=t(86698),M=t(23737),O=t(44230),j=t(22490),F=t(28400),G=t(36848),R=t(60376),U=t(83914),x=t(54610),D=t(67453),V=t(35223),_=t(71750),Y=t(98073),W=t(48688);const B={leftNavIcon:"ssG3i"};var H=s.T.encloseNamespace("default.popupPlugin");function z(e){return r.createElement("li",{className:"columns-of-five-md col-6 mb-3"},r.createElement(G.F,{appLink:e.appLink,className:"border rounded-3 d-flex align-items-center\n justify-content-center flex-column text-decoration-none h-100 py-3 px-1 text-center"},r.createElement("div",{className:"".concat(B.leftNavIcon," ").concat(e.iconClassName," mx-auto mb-3")},r.createElement(R.f,{imageUrl:D.j.createUrl(e.imageUrl,{size:x.h2.Small}),svgName:e.svgName,svgSize:U.S.Large})),r.createElement("div",{className:"h6"},e.name)))}function K(e){var n=e.hasPermissions,t=e.moviesAndTvDashboard,a=e.hasNewMoviesAndTv,i=e.libraries,o=e.liteStudentCustomLibraries;return r.createElement("ul",{className:"list-unstyled row"},n(p.C.StudentExperience)&&r.createElement(z,{id:_.P.StudentFeed,appLink:Y.T[_.P.StudentFeed].appLink,name:H("home"),iconClassName:"bg-purple",svgName:V.vn.House}),r.createElement(z,{id:_.P.Discover,appLink:Y.T[_.P.Discover].appLink,name:H("discover"),iconClassName:"bg-blue",svgName:V.vn.Compass}),!!t&&!!a&&r.createElement(z,{id:_.P.MoviesAndTv,appLink:Y.T[_.P.MoviesAndTv].appLink,name:H("moviesAndTv"),iconClassName:"bg-indigo",svgName:V.vn.Popcorn}),r.createElement(z,{id:_.P.Playlists,appLink:Y.T[_.P.Playlists].appLink,name:H("playlists"),iconClassName:"bg-green",svgName:V.vn.Playlist}),r.createElement(z,{id:_.P.MyVideos,appLink:Y.T[_.P.MyVideos].appLink,name:H("myVideos"),iconClassName:"bg-orange",svgName:V.vn.Video}),!(!(null==i?void 0:i.length)||n(p.C.StudentExperience)&&!o)&&W.g.sort(i).map((function(e,n){var t,a,i,o;return r.createElement(z,{key:n,id:_.P.Library,name:e.name,appLink:Object.assign(Object.assign({},Y.T[_.P.Library].appLink),{args:[e.id,F.m.slugify(e.name)]}),iconClassName:"bg-teal",imageUrl:null===(a=null===(t=e.owner)||void 0===t?void 0:t.logo)||void 0===a?void 0:a.url,svgName:!(null===(o=null===(i=e.owner)||void 0===i?void 0:i.logo)||void 0===o?void 0:o.url)&&V.vn.Library})})))}var $=t(1575),Q=t(39902),q=t(97816),J=t(87821);function Z(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}var X=t(82431),ee=s.T.encloseNamespace("default.popupPlugin");function ne(){var e,n,t=(0,I.G)().isPlugin,s=(0,l.of)().focusSearchBar,F=(0,T.y)().activePresentation,G=(0,S.T)(),R=G.hasPermissions,U=G.isLoaded,x=(0,w.u)(c.LZ.VideoThumbnail),D=x.setFavourite,V=x.canFavourite,_=(0,k.r)(null),Y=_.hasNewMoviesAndTv,W=_.liteStudentCustomLibraries,B=_.isLoadingSettings,H=u.a.useBasicFetch(h.L.config()),z=u.a.useBasicFetch(b.N.currentUser()),ne=u.a.useBasicFetch((null===(e=z.data)||void 0===e?void 0:e.isAuthenticated)&&g.h.yearGroups(z.data.customerId)),te=u.a.useBasicFetch(F&&v.O.audiencesByPresentationId(F.id)),re=function(){var e,n,t,a=u.a.useBasicFetch(J.p.userVideoHistory()),i=(0,Q.f)(null!==(t=null===(n=null===(e=a.data)||void 0===e?void 0:e.data)||void 0===n?void 0:n.map((function(e){return e.videoId})))&&void 0!==t?t:[],$.R.watchHistoryVideos),o=r.useMemo((function(){var e,n,t,r=new Map;return null===(n=null===(e=a.data)||void 0===e?void 0:e.data)||void 0===n||n.forEach((function(e){var n;if(!r.has(e.videoId)){var t=null===(n=i.items)||void 0===n?void 0:n[e.videoId];t&&r.set(e.videoId,t)}})),function(e){if(Array.isArray(e))return Z(e)}(t=r.values())||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(t)||function(e,n){if(e){if("string"==typeof e)return Z(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Z(e,n):void 0}}(t)||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.")}()}),[i.items,a.data]);return(0,q.V)(o),{data:o,hasCompleted:!i.isFetching}}(),ae=u.a.useBasicFetch(z.data&&y.P.getFavourites(z.data.id)),ie=u.a.useBasicFetch(R(p.C.ViewLibraries)&&A.D.domainLibraries(["customLibrary","sharedLibrary"])),oe=(0,M.y)({targetType:E.ku.MoviesAndTv,queryParams:{}}).dashboard;return u.a.useBasicFetch(!!(null===(n=ie.data)||void 0===n?void 0:n.length)&&A.D.librariesWithOwnerLogos(ie.data.map((function(e){return e.id})))),(0,L.L)(i.G.SHELL,o.Q.Vy.ROUTE,(function(e){o.Q.C$.getHref(e)&&(O.e.enableNav(),a.Radio.channel(i.G.SHELL).once("routing:end",s))})),oe.hasCompleted&&U&&!B&&(!R(p.C.ViewLibraries)||ie.hasCompleted)&&H.hasCompleted?r.createElement("div",{className:"px-4"},r.createElement(K,{hasPermissions:R,moviesAndTvDashboard:oe.data,hasNewMoviesAndTv:Y,libraries:ie.data,liteStudentCustomLibraries:W}),re.hasCompleted?r.createElement("div",{className:"mb-3"},r.createElement(d.kM,{name:ee("recentlyWatched"),collection:re.data||[],contents:f.z.Videos,childComponent:m.U,extraChildComponentProps:{setFavourite:D,canFavourite:V,presentationAudiences:te.data,getSubTextAppLink:X.j.getSeriesAppLink,imageCdnUrl:H.data.imageCdnUrl,yearGroups:ne.data,showVideoGuidance:P.M.showVideoGuidance(R),isPlugin:t,getClassroomGuideAppLink:j.W.getClassroomGuideAppLink,getResourceGuidanceAppLink:j.W.getResourceGuidanceAppLink,getInteractiveGuidanceAppLink:j.W.getInteractiveGuidanceAppLink},getChildAppLink:j.W.getAppLink,appLink:{application:C.O.WATCH_HISTORY,action:N.e.WatchHistory.HOME},prefetched:!0})):r.createElement("div",{className:"mb-3"},r.createElement(d.j7,null)),ae.hasCompleted?r.createElement(d.kM,{name:ee("favourites"),collection:ae.data.data||[],contents:f.z.Videos,childComponent:m.U,extraChildComponentProps:{setFavourite:D,canFavourite:V,presentationAudiences:te.data,getSubTextAppLink:X.j.getSeriesAppLink,imageCdnUrl:H.data.imageCdnUrl,yearGroups:ne.data,showVideoGuidance:P.M.showVideoGuidance(R),isPlugin:t,getClassroomGuideAppLink:j.W.getClassroomGuideAppLink,getResourceGuidanceAppLink:j.W.getResourceGuidanceAppLink,getInteractiveGuidanceAppLink:j.W.getInteractiveGuidanceAppLink},getChildAppLink:j.W.getAppLink,appLink:{application:C.O.DEFAULT,action:N.e.MyFavourites.MY_FAVOURITES},prefetched:!0}):r.createElement(d.j7,null)):r.createElement(r.Fragment,null)}},87821:(e,n,t)=>{t.d(n,{p:()=>a});var r=t(110),a={userVideoHistory:function(e,n,t,a){var i="video:history",o="{gateway}/v1/users/me/watch-history";return e&&(i+=":".concat(e),o+="?cursor=".concat(e)),{key:i,url:o,formatData:function(e){return{data:e.data.map((function(e){var n=r.O.format(e.lastTimeWatched),t=r.O.format(n,"YYYY-MM-DD");return Object.assign(Object.assign({},e),{lastTimeWatched:n,lastDateWatched:t})})),pagination:e.pagination}},success:n,error:t,always:a}},videoHistory:function(e,n,t,r,a){var i=e.sort().map((function(e){return"videoId=".concat(e)}));return{key:"video:history:videos:".concat(i.join("&")),url:"{gateway}/v1/videos/history?".concat(i.join("&")),normalizeOptions:{namespace:n},formatData:function(e){return(null==e?void 0:e.length)?e.map((function(e){return{id:e.videoId,lastProgressPoint:e.lastProgressPoint}})):e},success:t,error:r,always:a}}}},97816:(e,n,t)=>{t.d(n,{V:()=>d});var r=t(32735),a=t(20354),i=t(21750),o=t(31949),s=t(1575),u=t(31908);function c(e,n){if(e){if("string"==typeof e)return l(e,n);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?l(e,n):void 0}}function l(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function d(e){var n,t,d=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},m=a.a.useBasicFetch(o.N.currentUser()),p=r.useRef(new Set),f=function(e){return e?Array.isArray(e)?e.filter((function(e){return!!e&&(u.M.isVideo(e)||u.M.isClip(e))})):"data"in e?e.data.filter((function(e){return!!e&&(u.M.isVideo(e)||u.M.isClip(e))})):[]:[]}(e),v=f.map((function(e){return e.id})),h=(n=r.useState([]),t=2,function(e){if(Array.isArray(e))return e}(n)||function(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var r,a,i,o,s=[],u=!0,c=!1;try{if(i=(t=t.call(e)).next,0===n){if(Object(t)!==t)return;u=!1}else for(;!(u=(r=i.call(t)).done)&&(s.push(r.value),s.length!==n);u=!0);}catch(e){c=!0,a=e}finally{try{if(!u&&null!=t.return&&(o=t.return(),Object(o)!==o))return}finally{if(c)throw a}}return s}}(n,t)||c(n,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.")}()),g=h[0],y=h[1];r.useEffect((function(){if((null==v?void 0:v.length)&&m.hasCompleted){var e=[];v.forEach((function(n){p.current.has(n)||(e.push(n),p.current.add(n))})),e.length&&y((function(n){var t,r=[].concat(function(e){return function(e){if(Array.isArray(e))return l(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||c(e)||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.")}()}(n),[s.R.videoMixinAssocs(e,d.flightNamespace)]);return(null===(t=m.data)||void 0===t?void 0:t.isAuthenticated)&&r.push(i.x.hasCurriculumLinks(e,null,d.flightNamespace)),r}))}}),[null==v?void 0:v.length,m.hasCompleted]),a.a.useBasicFetchAll(g)}}}]);
|
|
2
|
-
//# sourceMappingURL=3070-
|
|
2
|
+
//# sourceMappingURL=3070-b148205227-lite.chunk.js.map
|