@clickview/lite 0.70.1-dev.0 → 0.70.1-dev.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/dist/bundles.json +1 -1
  2. package/dist/css/{2018-lite-4aa02cdb17.chunk.css → 581-lite-a1cdc302ab.chunk.css} +3 -1
  3. package/dist/css/{2614-lite-0503112afe.chunk.css → 6156-lite-1b21a4e130.chunk.css} +3 -2
  4. package/dist/languages/en.json +1 -1
  5. package/dist/scripts/2154-6da16cef10-lite.chunk.js +2 -0
  6. package/dist/scripts/2154-6da16cef10-lite.chunk.js.map +1 -0
  7. package/dist/scripts/{2952-4f5abfce6d-lite.chunk.js → 2952-c5ec8f135e-lite.chunk.js} +2 -2
  8. package/dist/scripts/2952-c5ec8f135e-lite.chunk.js.map +1 -0
  9. package/dist/scripts/4377-001a8ee263-lite.chunk.js +2 -0
  10. package/dist/scripts/4377-001a8ee263-lite.chunk.js.map +1 -0
  11. package/dist/scripts/549-2d591052e3-lite.chunk.js +2 -0
  12. package/dist/scripts/549-2d591052e3-lite.chunk.js.map +1 -0
  13. package/dist/scripts/5721-2141ed4fb6-lite.chunk.js +2 -0
  14. package/dist/scripts/5721-2141ed4fb6-lite.chunk.js.map +1 -0
  15. package/dist/scripts/5797-f84ce545b9-lite.chunk.js +2 -0
  16. package/dist/scripts/5797-f84ce545b9-lite.chunk.js.map +1 -0
  17. package/dist/scripts/581-6e9a9afba8-lite.chunk.js +2 -0
  18. package/dist/scripts/{2018-693740d206-lite.chunk.js.map → 581-6e9a9afba8-lite.chunk.js.map} +1 -1
  19. package/dist/scripts/5829-5b395badf2-lite.chunk.js +3 -0
  20. package/dist/scripts/5829-5b395badf2-lite.chunk.js.map +1 -0
  21. package/dist/scripts/6046-5652117548-lite.chunk.js +2 -0
  22. package/dist/scripts/6046-5652117548-lite.chunk.js.map +1 -0
  23. package/dist/scripts/6156-d9a351e53f-lite.chunk.js +2 -0
  24. package/dist/scripts/{2614-bc2fef6ae0-lite.chunk.js.map → 6156-d9a351e53f-lite.chunk.js.map} +1 -1
  25. package/dist/scripts/6629-910e316a83-lite.chunk.js +3 -0
  26. package/dist/scripts/6629-910e316a83-lite.chunk.js.map +1 -0
  27. package/dist/scripts/7428-6dd787bc07-lite.chunk.js +2 -0
  28. package/dist/scripts/7428-6dd787bc07-lite.chunk.js.map +1 -0
  29. package/dist/scripts/7757-9b72774917-lite.chunk.js +2 -0
  30. package/dist/scripts/{7757-e4d91d7fac-lite.chunk.js.map → 7757-9b72774917-lite.chunk.js.map} +1 -1
  31. package/dist/scripts/8191-ff27deee6c-lite.chunk.js +2 -0
  32. package/dist/scripts/8191-ff27deee6c-lite.chunk.js.map +1 -0
  33. package/dist/scripts/{bundle-f9b9be2d02.min.js → bundle-4b10174000.min.js} +3 -3
  34. package/dist/scripts/{bundle-f9b9be2d02.min.js.map → bundle-4b10174000.min.js.map} +1 -1
  35. package/package.json +1 -1
  36. package/dist/scripts/1386-3be201d425-lite.chunk.js +0 -2
  37. package/dist/scripts/1386-3be201d425-lite.chunk.js.map +0 -1
  38. package/dist/scripts/2018-693740d206-lite.chunk.js +0 -2
  39. package/dist/scripts/2614-bc2fef6ae0-lite.chunk.js +0 -2
  40. package/dist/scripts/2952-4f5abfce6d-lite.chunk.js.map +0 -1
  41. package/dist/scripts/4377-f6e641f39a-lite.chunk.js +0 -2
  42. package/dist/scripts/4377-f6e641f39a-lite.chunk.js.map +0 -1
  43. package/dist/scripts/52-9d13c36f9b-lite.chunk.js +0 -2
  44. package/dist/scripts/52-9d13c36f9b-lite.chunk.js.map +0 -1
  45. package/dist/scripts/549-f06f2dab2b-lite.chunk.js +0 -2
  46. package/dist/scripts/549-f06f2dab2b-lite.chunk.js.map +0 -1
  47. package/dist/scripts/5721-bfd734f968-lite.chunk.js +0 -2
  48. package/dist/scripts/5721-bfd734f968-lite.chunk.js.map +0 -1
  49. package/dist/scripts/5797-04d8a61b80-lite.chunk.js +0 -2
  50. package/dist/scripts/5797-04d8a61b80-lite.chunk.js.map +0 -1
  51. package/dist/scripts/5829-82562ea6c2-lite.chunk.js +0 -3
  52. package/dist/scripts/5829-82562ea6c2-lite.chunk.js.map +0 -1
  53. package/dist/scripts/6046-339bc1b2e1-lite.chunk.js +0 -2
  54. package/dist/scripts/6046-339bc1b2e1-lite.chunk.js.map +0 -1
  55. package/dist/scripts/6629-55dc1fdb80-lite.chunk.js +0 -3
  56. package/dist/scripts/6629-55dc1fdb80-lite.chunk.js.map +0 -1
  57. package/dist/scripts/7757-e4d91d7fac-lite.chunk.js +0 -2
  58. package/dist/scripts/8191-d5f68d2463-lite.chunk.js +0 -2
  59. package/dist/scripts/8191-d5f68d2463-lite.chunk.js.map +0 -1
  60. /package/dist/css/{52-lite-e2d7497beb.chunk.css → 7428-lite-e2d7497beb.chunk.css} +0 -0
  61. /package/dist/scripts/{5829-82562ea6c2-lite.chunk.js.LICENSE.txt → 5829-5b395badf2-lite.chunk.js.LICENSE.txt} +0 -0
  62. /package/dist/scripts/{6629-55dc1fdb80-lite.chunk.js.LICENSE.txt → 6629-910e316a83-lite.chunk.js.LICENSE.txt} +0 -0
  63. /package/dist/scripts/{bundle-f9b9be2d02.min.js.LICENSE.txt → bundle-4b10174000.min.js.LICENSE.txt} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scripts/6046-5652117548-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/common/src/react/hooks/UsePolling.ts","file:///app/packages/libs/shared/src/apps/analytics/hooks/UseAnonSessions.ts","file:///app/packages/libs/shared/src/apps/analytics/hooks/UseEngagementUsers.ts","file:///app/packages/libs/shared/src/errors/handlers/HttpErrorHandlers.ts","file:///app/packages/libs/shared/src/flight-requests/VideoViewRequests.ts","file:///app/packages/libs/shared/src/hooks/UseHandleObjectError.ts","file:///app/packages/projects/lite/src/apps/my-shares/views/heatmap/InsightsHeatmapView.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\n\nconst DEFAULT_POLLING_INTERVAL = 5000; // 5 seconds.\n\n/**\n * Hook to fire a callback at a set interval.\n * @param callback \n * @param pollingInterval \n * \n * Returns a function to clear the timeout.\n */\nexport function usePolling(callback: () => void, pollingInterval: number = DEFAULT_POLLING_INTERVAL): () => void {\n const [ pollingTrigger, setPollingTrigger ] = React.useState(false);\n\n const timeoutRef = React.useRef<number>(null);\n\n const poll = () => {\n setPollingTrigger(t => !t);\n\n timeoutRef.current = window.setTimeout(poll, pollingInterval);\n };\n\n React.useEffect(() => {\n timeoutRef.current = window.setTimeout(poll, pollingInterval);\n }, []);\n\n React.useEffect(() => {\n if (FunctionHelper.isFunction(callback))\n callback();\n }, [pollingTrigger]);\n\n return () => window.clearTimeout(timeoutRef.current);\n}","import { usePolling } from 'libs/common/react/hooks/UsePolling';\nimport { Flight } from 'libs/common/react/index';\n\nimport { ShareRequests } from 'libs/shared/apps/share/flight-requests/ShareRequests';\n\nexport interface AnonSession {\n sessionId: string;\n sessionName: string;\n}\n\nexport interface AnonSessions extends Record<string, AnonSession> {}\n\nexport function useAnonSessions(shareId: string): AnonSessions {\n const fetch = Flight.useGetFetch();\n const anonSessionsRequest = shareId && ShareRequests.getAnonSessions(shareId);\n const anonSessionsResponse = Flight.useBasicFetch<AnonSession[]>(anonSessionsRequest);\n\n usePolling(() => fetch(anonSessionsRequest), 5000);\n\n if (!anonSessionsResponse.data?.length)\n return {};\n\n return anonSessionsResponse.data.reduce((prev, current) => ({ ...prev, [current.sessionId]: current }), {});\n}","import { Flight } from 'libs/common/react/index';\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { User } from 'libs/shared/interfaces';\n\nexport function useChunkedUsersResponse(usersIds: string[]) {\n const userIdChunks = ArrayHelper.chunk<string>(usersIds ?? [], 25);\n const usersResponse = Flight.useBasicFetchAll<User[]>(userIdChunks.map(chunk => UserRequests.getById(chunk)));\n const users = ArrayHelper.flatten<User>(usersResponse.data);\n return { users, isLoading: !usersResponse.hasCompleted, usersResponse };\n}","import { BaseError } from 'libs/common/backbone/core/BaseError';\nimport { HttpStatus } from 'libs/common/backbone/enums/HttpStatus';\nimport { Xhr } from 'libs/common/backbone/interfaces';\nimport { Core } from 'libs/common/core';\n\nimport { NotFoundError } from 'libs/shared/errors/general/not-found/NotFoundError';\nimport { PrivateResourceError } from 'libs/shared/errors/general/private-resource/PrivateResourceError';\nimport { RegionLockedResourceError } from 'libs/shared/errors/general/region-locked-resource/RegionLockedResourceError';\nimport { UnspecifiedError } from 'libs/shared/errors/general/unspecified-error/UnspecifiedError';\nimport { VideoTypes } from 'libs/shared/interfaces';\n\nexport interface HttpErrorMap {\n notFound?: new () => BaseError;\n forbidden?: {\n rating?: new (description: string) => BaseError;\n yearLevel?: new (description: string) => BaseError;\n region?: new () => BaseError;\n privacy?: new (video?: VideoTypes) => BaseError;\n };\n badRequest?: new () => BaseError;\n internalServerError?: new () => BaseError;\n}\n\nexport type IgnoreHttpErrorMap = {\n [key in keyof HttpErrorMap]: boolean;\n};\n\nconst defaultErrors: HttpErrorMap = {\n notFound: NotFoundError,\n forbidden: {\n rating: PrivateResourceError,\n yearLevel: PrivateResourceError,\n region: RegionLockedResourceError,\n privacy: PrivateResourceError\n },\n badRequest: UnspecifiedError,\n internalServerError: UnspecifiedError\n};\n\nexport function handleHttpError(\n info: HttpStatus | Xhr,\n customErrorMap: HttpErrorMap = {},\n /**\n * Prevent certain errors in the errorMap from being thrown\n * so that you may implement your own handler\n */\n ignoreMap: IgnoreHttpErrorMap = {}\n): void {\n if (!info)\n return;\n\n let statusCode: HttpStatus;\n\n if (typeof(info) === 'number') {\n statusCode = info;\n } else {\n statusCode = info.status;\n }\n\n const errorMap = {\n ...defaultErrors,\n ...customErrorMap\n };\n\n if (!statusCode)\n return;\n\n if (!Core.ErrorHelper.isStatusCodeError(statusCode))\n return;\n\n if (statusCode === HttpStatus.InternalServer) {\n if (!ignoreMap.internalServerError)\n Core.ErrorHelper.throw(new UnspecifiedError());\n return;\n }\n\n if (statusCode === HttpStatus.NotFound) {\n if (!ignoreMap.notFound)\n Core.ErrorHelper.throw(new errorMap.notFound());\n return;\n }\n\n if (statusCode === HttpStatus.Forbidden) {\n /**\n * TODO: Work out how to go about handling all forbidden errors, such as region locking, year levels,\n * ratings, and privacy.\n */\n if (!ignoreMap.forbidden)\n Core.ErrorHelper.throw(new errorMap.forbidden.privacy());\n return;\n }\n\n if (!ignoreMap.badRequest)\n Core.ErrorHelper.throw(new errorMap.badRequest());\n}\n\nexport function handleXhrError(xhr: Xhr, customErrorMap?: HttpErrorMap): void {\n handleHttpError(xhr.status, customErrorMap);\n}","import { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\nimport { Flight } from 'libs/common/flight';\nimport { HashObject } from 'libs/common/react/interfaces';\nimport { DateHelper } from 'libs/common/react/utils/DateHelper';\n\nimport { AnalyticsRequestFilter, Engagement } from 'libs/shared/interfaces';\nimport { getAnalyticsRequestKey } from 'libs/shared/utils/AnalyticsRequestUtils';\n\nexport const VideoViewRequests = {\n individualEngagement(\n objectId: string,\n filter: AnalyticsRequestFilter,\n sharerId?: string,\n includeAnonViews?: boolean\n ): Flight.Request {\n const queryParams: HashObject = {\n objectId,\n ...filter\n };\n\n if (sharerId)\n queryParams.sharerId = sharerId;\n\n if (includeAnonViews)\n queryParams.includeAnonViews = true;\n\n return {\n url: UrlHelper.urlBuilder('{gateway}/v1/analytics/heat-map', queryParams),\n key: getAnalyticsRequestKey(`engagement:${objectId}:${includeAnonViews}`, filter, sharerId),\n formatData: (data: any) => {\n return {\n ...data,\n data: data.data?.map((d: any) => ({\n ...d,\n heatMap: d.heatMap ?? []\n }))\n };\n },\n normalize: false\n };\n },\n \n aggregateEngagement(\n objectId: string,\n filter: AnalyticsRequestFilter,\n sharerId?: string,\n includeAnonViews?: boolean\n ): Flight.Request {\n const queryParams: HashObject = {\n objectId,\n ...filter\n };\n\n if (sharerId)\n queryParams.sharerId = sharerId;\n \n if (includeAnonViews)\n queryParams.includeAnonViews = true;\n\n return {\n url: UrlHelper.urlBuilder('{gateway}/v1/analytics/heat-map/aggregations', queryParams),\n key: getAnalyticsRequestKey(`aggregate:engagement:${objectId}:${includeAnonViews}`, filter, sharerId),\n formatData: (data: Engagement) => {\n return {\n ...data,\n heatMap: data.heatMap ?? []\n };\n },\n normalize: false\n };\n },\n \n views(\n filter: AnalyticsRequestFilter,\n objectId?: string,\n sharerId?: string,\n includeAnonViews?: boolean\n ): Flight.Request {\n const queryParams: HashObject = {\n ...filter,\n timeOffset: DateHelper.getTimezoneOffset()\n };\n\n if (objectId)\n queryParams.objectId = objectId;\n\n if (sharerId)\n queryParams.sharerId = sharerId;\n \n if (includeAnonViews)\n queryParams.includeAnonViews = true;\n\n return {\n url: UrlHelper.urlBuilder('{gateway}/v1/analytics/video-views', queryParams),\n key: getAnalyticsRequestKey(`video:views:${objectId}:${includeAnonViews}`, filter, sharerId),\n normalize: false\n };\n }\n};","import { useEffect } from 'react';\n\nimport { Flight } from 'libs/common/flight';\n\nimport { handleHttpError, HttpErrorMap, IgnoreHttpErrorMap } from 'libs/shared/errors/handlers/HttpErrorHandlers';\n\nfunction generateCacheKey(flightObjs: Array<Flight.Response<any>>): string {\n return flightObjs.map(obj => obj.statusCode).join(':');\n}\n\n// TODO: Change this to just `useHandleHttpError` and only accept a status code.\nexport function useHandleObjectError(\n _flightObjs: Flight.Response<any> | Array<Flight.Response<any>>,\n customErrors?: HttpErrorMap,\n ignoreErrors?: IgnoreHttpErrorMap\n): void {\n const flightObjs = Array.isArray(_flightObjs) ? _flightObjs : [_flightObjs];\n\n useEffect(() => {\n flightObjs.forEach(obj => {\n handleHttpError(obj.statusCode, customErrors, ignoreErrors);\n });\n }, [ generateCacheKey(flightObjs), customErrors, ignoreErrors ]);\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { useViewModel } from 'libs/common/react/hooks/UseViewModel';\nimport { Flight } from 'libs/common/react/index';\n\nimport { useAnonSessions } from 'libs/shared/apps/analytics/hooks/UseAnonSessions';\nimport { useChunkedUsersResponse } from 'libs/shared/apps/analytics/hooks/UseEngagementUsers';\nimport { VideoViewEventResponse } from 'libs/shared/apps/analytics/interfaces/VideoViewEvent';\nimport { AnalyticsFilterHelper } from 'libs/shared/apps/analytics/utils/AnalyticsFilterUtils';\nimport { getAudienceParams } from 'libs/shared/apps/analytics/utils/AudienceUtils';\nimport { getInsightsDateRangePresets, getStartEndParams } from 'libs/shared/apps/analytics/utils/DateRangeUtils';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { MediaIdType } from 'libs/shared/enums/MediaIdType';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { PlayerRequests } from 'libs/shared/flight-requests/PlayerRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { VideoViewRequests } from 'libs/shared/flight-requests/VideoViewRequests';\nimport { useHandleObjectError } from 'libs/shared/hooks/UseHandleObjectError';\nimport { useLockContentWidth } from 'libs/shared/hooks/useLockContentWidth';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { useSettings } from 'libs/shared/hooks/useSettings';\nimport { AnalyticsRequestFilter, Config, CurrentUser, Engagement, IndividualEngagementResponse, PlayerViewKey, VideoTypes } from 'libs/shared/interfaces';\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\n\nimport { ViewModelKeys } from 'shared/constants/LiteViewModels';\n\nimport { InsightsHeader } from 'apps/my-shares/components/insights-header/InsightsHeader';\nimport { InsightsHeatmap } from 'apps/my-shares/components/insights-heatmap/InsightsHeatmap';\nimport { getInsightsClipTabs, getInsightsInteractiveTabs, getInsightsVideoTabs } from 'apps/my-shares/utils/InsightsAppLinkUtils';\n\nconst namespace = 'shared.insightsHeatmap';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface InsightsHeatmapViewProps {\n videoId: string;\n typeId: MasterType;\n shareId?: string;\n}\n\nexport function InsightsHeatmapView(props: InsightsHeatmapViewProps) {\n const [anonymiseUsers] = useViewModel<boolean>(ViewModelKeys.ANONYMISE_USERS);\n\n useLockContentWidth();\n\n const { hasShareFlowV2 } = useSettings(null);\n\n const { hasPermissions } = usePermissions();\n\n const { publicInteractiveAttempts } = useSettings(null);\n\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const videoRequest = VideoHelper.getVideoRequest(props.videoId, props.typeId);\n const video = Flight.useBasicFetch<VideoTypes>(videoRequest);\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n\n const anonSessions = useAnonSessions(props.shareId);\n console.log(anonSessions);\n\n const audienceAppLinkParams = AnalyticsFilterHelper.getAudienceAppLinkParams();\n const dateRangeAppLinkParams = AnalyticsFilterHelper.getDateRangeAppLinkParams();\n\n const requestFilter: AnalyticsRequestFilter = {\n ...getStartEndParams(getInsightsDateRangePresets(), dateRangeAppLinkParams),\n ...getAudienceParams(audienceAppLinkParams)\n };\n\n const aggregateEngagement = Flight.useBasicFetch<Engagement>(\n currentUser.data && VideoViewRequests.aggregateEngagement(\n props.videoId,\n requestFilter,\n currentUser.data.id,\n publicInteractiveAttempts\n )\n );\n\n const individualEngagement = Flight.useBasicFetch<IndividualEngagementResponse>(currentUser.data &&\n VideoViewRequests.individualEngagement(\n props.videoId,\n requestFilter,\n currentUser.data?.id,\n publicInteractiveAttempts\n ));\n\n const userIds = individualEngagement.data?.data?.map(d => d.userId).filter(Boolean) || [];\n const { users, isLoading } = useChunkedUsersResponse(userIds);\n\n const videoViews = Flight.useBasicFetch<VideoViewEventResponse>(currentUser.data &&\n VideoViewRequests.views(requestFilter, props.videoId, currentUser.data?.id, publicInteractiveAttempts));\n\n const viewKey = Flight.useBasicFetch<PlayerViewKey>(\n PlayerRequests.createViewKey(props.videoId, MediaIdType.MasterObject)\n );\n\n useSetPageMetadata({ title: video.data ? getPhrase('pageTitle', { video: video.data?.name }) : null });\n useHandleObjectError(video);\n\n const hasDataLoaded =\n currentUser.data &&\n videoViews.data &&\n video.data &&\n aggregateEngagement.data &&\n viewKey.data;\n\n const tableDataLoaded = !!individualEngagement.data && (!userIds.length || !isLoading);\n\n const params = {\n ...audienceAppLinkParams,\n ...dateRangeAppLinkParams,\n shareId: props.shareId\n };\n\n function getInsightsTabs() {\n if (props.typeId === MasterType.Interactive)\n return getInsightsInteractiveTabs(props.videoId, 'heatmap', params);\n\n if (props.typeId === MasterType.Clip)\n return getInsightsClipTabs(props.videoId, 'heatmap', params);\n\n return getInsightsVideoTabs(props.videoId, 'heatmap', params);\n }\n\n return (\n <div className='px-3'>\n <InsightsHeader\n video={video.data}\n dateRangeAppLinkParams={dateRangeAppLinkParams}\n tabs={getInsightsTabs()}\n hasAnalytics={hasPermissions(PermissionName.ViewCustomerAnalytics)}\n analyticsWebUrl={config.data?.analyticsWebUrl}\n hasShareFlowV2={hasShareFlowV2}\n shareId={props.shareId}\n />\n <InsightsHeatmap\n aggregateEngagement={aggregateEngagement.data}\n individualEngagement={individualEngagement.data}\n videoViews={videoViews.data}\n config={config.data}\n users={users}\n viewKey={viewKey.data}\n hasDataLoaded={!!hasDataLoaded}\n tableDataLoaded={tableDataLoaded}\n anonymiseUsers={anonymiseUsers}\n audienceAppLinkParams={audienceAppLinkParams}\n dateRangeAppLinkParams={dateRangeAppLinkParams}\n anonSessions={anonSessions}\n />\n </div>\n );\n}"],"names":["DEFAULT_POLLING_INTERVAL","usePolling","callback","pollingInterval","pollingTrigger","setPollingTrigger","timeoutRef","t","current","window","setTimeout","clearTimeout","useAnonSessions","shareId","fetch","anonSessionsRequest","anonSessionsResponse","data","length","reduce","prev","sessionId","useChunkedUsersResponse","usersIds","userIdChunks","usersResponse","map","chunk","users","isLoading","hasCompleted","defaultErrors","notFound","forbidden","rating","yearLevel","region","privacy","badRequest","internalServerError","handleHttpError","info","customErrorMap","ignoreMap","statusCode","status","errorMap","VideoViewRequests","individualEngagement","objectId","filter","sharerId","includeAnonViews","queryParams","url","key","formatData","d","heatMap","normalize","aggregateEngagement","views","timeOffset","generateCacheKey","flightObjs","obj","join","useHandleObjectError","_flightObjs","customErrors","ignoreErrors","Array","isArray","useEffect","forEach","getPhrase","InsightsHeatmapView","props","anonymiseUsers","hasShareFlowV2","hasPermissions","publicInteractiveAttempts","currentUser","videoRequest","videoId","typeId","video","config","anonSessions","console","log","audienceAppLinkParams","dateRangeAppLinkParams","requestFilter","id","userIds","userId","Boolean","videoViews","viewKey","title","name","hasDataLoaded","tableDataLoaded","params","className","tabs","hasAnalytics","analyticsWebUrl"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[6156],{35115:(e,a,t)=>{t.d(a,{p:()=>d});var n=t(32735),r=t(49935),l=t(95278);const c="pJf6R",i="MSvzY",s="IFmvc",o="pOcvk";var d=n.memo((function(){return n.createElement("div",{className:"px-3"},n.createElement("div",{className:"mb-1 partial-loading-background ".concat("YrP_G")}),n.createElement("div",{className:"pb-3"},n.createElement(r.b2,{numItems:2})),n.createElement("div",{className:"pb-2"},n.createElement(l.Z,null)),n.createElement("div",{className:"d-flex align-items-center py-2"},n.createElement("div",{className:"mx-4 partial-loading-background ".concat(c)}),n.createElement("div",{className:"me-2 partial-loading-background ".concat(i)}),n.createElement("div",{className:"me-auto partial-loading-background ".concat(i)}),n.createElement("div",{className:"partial-loading-background ".concat("j62jt")})),n.createElement("ul",{className:"striped-list list-unstyled"},Array(20).fill(null).map((function(e,a){return n.createElement("li",{key:a},n.createElement("div",{className:"d-flex align-items-center py-1 px-4"},n.createElement("div",{className:"me-2 partial-loading-background ".concat(c)}),n.createElement("div",{className:"me-2 partial-loading-background ".concat("droqZ")}),n.createElement("div",{className:"w-25"},n.createElement("div",{className:"partial-loading-background ".concat("gorcb")})),n.createElement("div",{className:"me-auto d-flex"},Math.random()>.5?n.createElement(n.Fragment,null,n.createElement("div",{className:"partial-loading-background rounded-pill me-1 ".concat(s," ").concat("SdQ90")}),n.createElement("div",{className:"partial-loading-background rounded-pill ".concat(s," ").concat(o)})):n.createElement("div",{className:"partial-loading-background rounded-pill ".concat(s," ").concat(o)})),n.createElement("div",{className:"me-2 partial-loading-background ".concat(i)}),n.createElement("div",{className:"partial-loading-background ".concat("S7p4K")})))}))))}))},69583:(e,a,t)=>{t.r(a),t.d(a,{ClassroomReportsView:()=>A});var n=t(32735),r=t(23481),l=t(20354),c=t(87801),i=t(83523),s=t(1666),o=t(31949),d=t(79967),m=t(79612),u=t(99742),g=t(86099),p=t(35115),v=t(88630),E=t(31491),b=t(22602),f=t(67467),h=t(60666),N=t(63153),k=t(45231),y=t(69003);function S(e,a){(null==a||a>e.length)&&(a=e.length);for(var t=0,n=Array(a);t<a;t++)n[t]=e[t];return n}var w=r.T.encloseNamespace("classrooms.classroomStudents");function A(e){var a,t,r,A,x,j,C=(x=n.useState(!1),j=2,function(e){if(Array.isArray(e))return e}(x)||function(e,a){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var n,r,l,c,i=[],s=!0,o=!1;try{if(l=(t=t.call(e)).next,0===a){if(Object(t)!==t)return;s=!1}else for(;!(s=(n=l.call(t)).done)&&(i.push(n.value),i.length!==a);s=!0);}catch(e){o=!0,r=e}finally{try{if(!s&&null!=t.return&&(c=t.return(),Object(c)!==c))return}finally{if(o)throw r}}return i}}(x,j)||function(e,a){if(e){if("string"==typeof e)return S(e,a);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,a):void 0}}(x,j)||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.")}()),F=C[0],R=C[1],O=l.a.useBasicFetch(o.N.currentUser()),_=l.a.useBasicFetch(O.data&&v.F.getClassroom(e.id,O.data.id)),I=(0,d.k)(),M=l.a.useBasicFetch((null===(a=O.data)||void 0===a?void 0:a.isAuthenticated)&&s.h.yearGroups(O.data.customerId)),P=(0,y.cl)([]),L=(0,k.a)({scopeId:e.id},!0,!0),T=null===(r=null===(t=_.data)||void 0===t?void 0:t._integrations)||void 0===r?void 0:r.rostered;return(0,m.M)({title:w("pageTitle",{classroomName:null===(A=_.data)||void 0===A?void 0:A.name})}),(0,E._)(_),_.data?n.createElement(b.R,{classroom:_.data,currentUser:O.data,onTogglePin:console.log,activeTab:"reports",isRostered:T},n.createElement("div",{className:"d-flex gap-3 m-3 justify-content-end"},n.createElement("label",{className:"mb-0"},"View as student feed"),n.createElement(i.Z,{on:F,onClick:function(){return R(!F)}})),F&&n.createElement("img",{src:u.W.CLASSROM_FEED}),!F&&(L.showPartialLoading?n.createElement(N.L,null):L.sentShares.length?n.createElement(n.Fragment,null,n.createElement(h.R,{sentShares:L.sentShares,sharedObjects:L.sharedObjects.items,shareRecipients:L.shareRecipients.items,interactivesPendingReview:L.interactivesPendingReview.itemsArr,getObjectAppLink:g.Qh,getObjectActions:function(e,a){return(0,y.sD)(e,a,P.audienceAppLinkParams,!0,!1,I)},imageCdnUrl:L.imageCdnUrl,groupByDateShared:!0,breakpoints:I,yearGroups:M.data,hasDemoInsights:!1}),(L.hasMore||L.isFetching)&&n.createElement(c._,{isFetching:L.isFetching,fetchNext:L.fetchNext,nextCursor:L.nextCursor})):n.createElement(f.o,null))):n.createElement(p.p,null)}}}]);
2
+ //# sourceMappingURL=6156-d9a351e53f-lite.chunk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scripts/2614-bc2fef6ae0-lite.chunk.js","mappings":"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","sources":["file:///app/packages/projects/lite/src/apps/classrooms/components/manage-classroom-students/partial-loading/partial-manage-classroom-students.scss","file:///app/packages/projects/lite/src/apps/classrooms/components/manage-classroom-students/partial-loading/PartialManageClassroomStudents.tsx","file:///app/packages/projects/lite/src/apps/classrooms/views/classroom-reports/ClassroomReportsView.tsx"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"heading\":\"YrP_G\",\"avatar\":\"droqZ\",\"checkbox\":\"pJf6R\",\"actionIcon\":\"MSvzY\",\"addStudents\":\"j62jt\",\"studentName\":\"gorcb\",\"group\":\"IFmvc\",\"sm\":\"pOcvk\",\"lg\":\"SdQ90\",\"moreActions\":\"S7p4K\"};","import React from 'react';\n\nimport { PartialBreadcrumbs } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { PartialPillTabSelector } from 'libs/shared/components/pill-tab-selector/partial-loading/PartialPillTabSelector';\n\nimport styles from './partial-manage-classroom-students.scss';\n\nexport const PartialManageClassroomStudents = React.memo(function(): JSX.Element {\n return (\n <div className='px-3'>\n {/* Heading */}\n <div className={`mb-1 partial-loading-background ${styles.heading}`} />\n\n {/* Breadcrumbs */}\n <div className='pb-3'>\n <PartialBreadcrumbs numItems={2} />\n </div>\n\n {/* Pill tab selector */}\n <div className='pb-2'>\n <PartialPillTabSelector />\n </div>\n\n <div className='d-flex align-items-center py-2'>\n {/* Checkbox */}\n <div className={`mx-4 partial-loading-background ${styles.checkbox}`} />\n {/* Group selector */}\n <div className={`me-2 partial-loading-background ${styles.actionIcon}`} />\n {/* Delete action */}\n <div className={`me-auto partial-loading-background ${styles.actionIcon}`} />\n\n {/* Add new students button */}\n <div className={`partial-loading-background ${styles.addStudents}`} />\n </div>\n\n {/* Students list */}\n <ul className='striped-list list-unstyled'>\n {Array(20).fill(null).map((student, i) => (\n <li key={i}>\n <div className='d-flex align-items-center py-1 px-4'>\n {/* Checkbox */}\n <div className={`me-2 partial-loading-background ${styles.checkbox}`} />\n\n {/* Avatar */}\n <div className={`me-2 partial-loading-background ${styles.avatar}`} />\n\n {/* Student name */}\n <div className='w-25'>\n <div className={`partial-loading-background ${styles.studentName}`} />\n </div>\n\n {/* Groups list. Randomly renders either 1 or 2 groups. Group widths are randomly generated */}\n <div className='me-auto d-flex'>\n {Math.random() > 0.5\n ? (\n <>\n <div className={`partial-loading-background rounded-pill me-1 ${styles.group} ${styles.lg}`} />\n <div className={`partial-loading-background rounded-pill ${styles.group} ${styles.sm}`} />\n </>\n ) : <div className={`partial-loading-background rounded-pill ${styles.group} ${styles.sm}`} />\n }\n </div>\n\n {/* Group selector */}\n <div className={`me-2 partial-loading-background ${styles.actionIcon}`} />\n {/* More actions */}\n <div className={`partial-loading-background ${styles.moreActions}`} />\n </div>\n </li>\n ))}\n </ul>\n </div>\n );\n});","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\n\nimport { InfiniteScrollFooter } from 'libs/shared/components/infinite-scroll-footer/InfiniteScrollFooter';\nimport { ToggleSwitch } from 'libs/shared/components/toggle-switch/ToggleSwitch';\nimport { CustomerRequests } from 'libs/shared/flight-requests/CustomerRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useBreakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { Classroom, CurrentUser, YearGroup } from 'libs/shared/interfaces';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\nimport { getObjectAppLink } from 'shared/utils/ObjectAppLinkHelper';\n\nimport { PartialManageClassroomStudents } from 'apps/classrooms/components/manage-classroom-students/partial-loading/PartialManageClassroomStudents';\nimport { ClassroomRequests } from 'apps/classrooms/flight-requests/ClassroomRequests';\nimport { useHandleClassroomErrors } from 'apps/classrooms/hooks/useHandleClassroomErrors';\nimport { ClassroomLayout } from 'apps/classrooms/layouts/ClassroomLayout';\nimport { MySharesTableEmptyState } from 'apps/my-shares/components/my-shares-table/empty-state/MySharesTableEmptyState';\nimport { MySharesTable } from 'apps/my-shares/components/my-shares-table/MySharesTable';\nimport { PartialMySharesTable } from 'apps/my-shares/components/my-shares-table/partial-loading/PartialMySharesTable';\nimport { useMySharesTable } from 'apps/my-shares/hooks/useMySharesTable';\nimport { getShareObjectActions, getSharesParams } from 'apps/my-shares/views/my-shares/MySharesViewUtils';\n\nconst namespace = 'classrooms.classroomStudents';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface ClassroomReportsViewProps {\n id: string;\n cursor: string;\n}\n\nexport function ClassroomReportsView(props: ClassroomReportsViewProps): JSX.Element {\n const [ showFeed, setShowFeed ] = React.useState(false);\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const classroom = Flight.useBasicFetch<Classroom>(currentUser.data &&\n ClassroomRequests.getClassroom(props.id, currentUser.data.id));\n const breakpoints = useBreakpoints();\n const yearGroups = Flight.useBasicFetch<YearGroup[]>(\n currentUser.data?.isAuthenticated && CustomerRequests.yearGroups(currentUser.data.customerId)\n );\n\n const sharesParams = getSharesParams([]);\n\n const shareData = useMySharesTable({\n scopeId: props.id\n }, true, true);\n\n const isRostered = classroom.data?._integrations?.rostered;\n\n useSetPageMetadata({\n title: getPhrase('pageTitle', { classroomName: classroom.data?.name })\n });\n\n useHandleClassroomErrors(classroom);\n\n function renderTable() {\n if (shareData.showPartialLoading)\n return <PartialMySharesTable />;\n \n if (!shareData.sentShares.length)\n return <MySharesTableEmptyState />;\n\n return (\n <>\n <MySharesTable\n sentShares={shareData.sentShares}\n sharedObjects={shareData.sharedObjects.items}\n shareRecipients={shareData.shareRecipients.items}\n interactivesPendingReview={shareData.interactivesPendingReview.itemsArr}\n getObjectAppLink={getObjectAppLink}\n getObjectActions={(obj, shareId) => getShareObjectActions(\n obj,\n shareId,\n sharesParams.audienceAppLinkParams,\n true,\n false,\n breakpoints\n )}\n imageCdnUrl={shareData.imageCdnUrl}\n groupByDateShared\n breakpoints={breakpoints}\n yearGroups={yearGroups.data}\n hasDemoInsights={false}\n />\n {(shareData.hasMore || shareData.isFetching) &&\n <InfiniteScrollFooter\n isFetching={shareData.isFetching}\n fetchNext={shareData.fetchNext}\n nextCursor={shareData.nextCursor}\n />\n }\n </>\n );\n }\n\n if (!classroom.data)\n return <PartialManageClassroomStudents />;\n\n return (\n <ClassroomLayout\n classroom={classroom.data}\n currentUser={currentUser.data}\n onTogglePin={console.log}\n activeTab='reports'\n isRostered={isRostered}\n >\n <div className='d-flex gap-3 m-3 justify-content-end'>\n <label className='mb-0'>View as student feed</label>\n <ToggleSwitch on={showFeed} onClick={() => setShowFeed(!showFeed)} />\n </div>\n\n {showFeed && <img src={ImageUrls.CLASSROM_FEED} />}\n {!showFeed && renderTable()}\n </ClassroomLayout>\n );\n}\n"],"names":["PartialManageClassroomStudents","className","numItems","PartialPillTabSelector","Array","fill","map","student","i","key","Math","random","getPhrase","ClassroomReportsView","props","showFeed","setShowFeed","currentUser","classroom","data","id","breakpoints","yearGroups","isAuthenticated","customerId","sharesParams","shareData","scopeId","isRostered","_integrations","rostered","title","classroomName","name","onTogglePin","console","log","activeTab","on","onClick","src","showPartialLoading","sentShares","length","sharedObjects","items","shareRecipients","interactivesPendingReview","itemsArr","getObjectAppLink","getObjectActions","obj","shareId","audienceAppLinkParams","imageCdnUrl","groupByDateShared","hasDemoInsights","hasMore","isFetching","fetchNext","nextCursor"],"sourceRoot":""}
1
+ {"version":3,"file":"scripts/6156-d9a351e53f-lite.chunk.js","mappings":"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","sources":["file:///app/packages/projects/lite/src/apps/classrooms/components/manage-classroom-students/partial-loading/partial-manage-classroom-students.scss","file:///app/packages/projects/lite/src/apps/classrooms/components/manage-classroom-students/partial-loading/PartialManageClassroomStudents.tsx","file:///app/packages/projects/lite/src/apps/classrooms/views/classroom-reports/ClassroomReportsView.tsx"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"heading\":\"YrP_G\",\"avatar\":\"droqZ\",\"checkbox\":\"pJf6R\",\"actionIcon\":\"MSvzY\",\"addStudents\":\"j62jt\",\"studentName\":\"gorcb\",\"group\":\"IFmvc\",\"sm\":\"pOcvk\",\"lg\":\"SdQ90\",\"moreActions\":\"S7p4K\"};","import React from 'react';\n\nimport { PartialBreadcrumbs } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { PartialPillTabSelector } from 'libs/shared/components/pill-tab-selector/partial-loading/PartialPillTabSelector';\n\nimport styles from './partial-manage-classroom-students.scss';\n\nexport const PartialManageClassroomStudents = React.memo(function(): JSX.Element {\n return (\n <div className='px-3'>\n {/* Heading */}\n <div className={`mb-1 partial-loading-background ${styles.heading}`} />\n\n {/* Breadcrumbs */}\n <div className='pb-3'>\n <PartialBreadcrumbs numItems={2} />\n </div>\n\n {/* Pill tab selector */}\n <div className='pb-2'>\n <PartialPillTabSelector />\n </div>\n\n <div className='d-flex align-items-center py-2'>\n {/* Checkbox */}\n <div className={`mx-4 partial-loading-background ${styles.checkbox}`} />\n {/* Group selector */}\n <div className={`me-2 partial-loading-background ${styles.actionIcon}`} />\n {/* Delete action */}\n <div className={`me-auto partial-loading-background ${styles.actionIcon}`} />\n\n {/* Add new students button */}\n <div className={`partial-loading-background ${styles.addStudents}`} />\n </div>\n\n {/* Students list */}\n <ul className='striped-list list-unstyled'>\n {Array(20).fill(null).map((student, i) => (\n <li key={i}>\n <div className='d-flex align-items-center py-1 px-4'>\n {/* Checkbox */}\n <div className={`me-2 partial-loading-background ${styles.checkbox}`} />\n\n {/* Avatar */}\n <div className={`me-2 partial-loading-background ${styles.avatar}`} />\n\n {/* Student name */}\n <div className='w-25'>\n <div className={`partial-loading-background ${styles.studentName}`} />\n </div>\n\n {/* Groups list. Randomly renders either 1 or 2 groups. Group widths are randomly generated */}\n <div className='me-auto d-flex'>\n {Math.random() > 0.5\n ? (\n <>\n <div className={`partial-loading-background rounded-pill me-1 ${styles.group} ${styles.lg}`} />\n <div className={`partial-loading-background rounded-pill ${styles.group} ${styles.sm}`} />\n </>\n ) : <div className={`partial-loading-background rounded-pill ${styles.group} ${styles.sm}`} />\n }\n </div>\n\n {/* Group selector */}\n <div className={`me-2 partial-loading-background ${styles.actionIcon}`} />\n {/* More actions */}\n <div className={`partial-loading-background ${styles.moreActions}`} />\n </div>\n </li>\n ))}\n </ul>\n </div>\n );\n});","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\n\nimport { InfiniteScrollFooter } from 'libs/shared/components/infinite-scroll-footer/InfiniteScrollFooter';\nimport { ToggleSwitch } from 'libs/shared/components/toggle-switch/ToggleSwitch';\nimport { CustomerRequests } from 'libs/shared/flight-requests/CustomerRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useBreakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { Classroom, CurrentUser, YearGroup } from 'libs/shared/interfaces';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\nimport { getObjectAppLink } from 'shared/utils/ObjectAppLinkHelper';\n\nimport { PartialManageClassroomStudents } from 'apps/classrooms/components/manage-classroom-students/partial-loading/PartialManageClassroomStudents';\nimport { ClassroomRequests } from 'apps/classrooms/flight-requests/ClassroomRequests';\nimport { useHandleClassroomErrors } from 'apps/classrooms/hooks/useHandleClassroomErrors';\nimport { ClassroomLayout } from 'apps/classrooms/layouts/ClassroomLayout';\nimport { MySharesTableEmptyState } from 'apps/my-shares/components/my-shares-table/empty-state/MySharesTableEmptyState';\nimport { MySharesTable } from 'apps/my-shares/components/my-shares-table-v2/MySharesTable';\nimport { PartialMySharesTable } from 'apps/my-shares/components/my-shares-table-v2/partial-loading/PartialMySharesTable';\nimport { useMySharesTable } from 'apps/my-shares/hooks/useMySharesTable';\nimport { getShareObjectActions, getSharesParams } from 'apps/my-shares/views/my-shares/MySharesViewUtils';\n\nconst namespace = 'classrooms.classroomStudents';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface ClassroomReportsViewProps {\n id: string;\n cursor: string;\n}\n\nexport function ClassroomReportsView(props: ClassroomReportsViewProps): JSX.Element {\n const [ showFeed, setShowFeed ] = React.useState(false);\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const classroom = Flight.useBasicFetch<Classroom>(currentUser.data &&\n ClassroomRequests.getClassroom(props.id, currentUser.data.id));\n const breakpoints = useBreakpoints();\n const yearGroups = Flight.useBasicFetch<YearGroup[]>(\n currentUser.data?.isAuthenticated && CustomerRequests.yearGroups(currentUser.data.customerId)\n );\n\n const sharesParams = getSharesParams([]);\n\n const shareData = useMySharesTable({\n scopeId: props.id\n }, true, true);\n\n const isRostered = classroom.data?._integrations?.rostered;\n\n useSetPageMetadata({\n title: getPhrase('pageTitle', { classroomName: classroom.data?.name })\n });\n\n useHandleClassroomErrors(classroom);\n\n function renderTable() {\n if (shareData.showPartialLoading)\n return <PartialMySharesTable />;\n \n if (!shareData.sentShares.length)\n return <MySharesTableEmptyState />;\n\n return (\n <>\n <MySharesTable\n sentShares={shareData.sentShares}\n sharedObjects={shareData.sharedObjects.items}\n shareRecipients={shareData.shareRecipients.items}\n interactivesPendingReview={shareData.interactivesPendingReview.itemsArr}\n getObjectAppLink={getObjectAppLink}\n getObjectActions={(obj, shareId) => getShareObjectActions(\n obj,\n shareId,\n sharesParams.audienceAppLinkParams,\n true,\n false,\n breakpoints\n )}\n imageCdnUrl={shareData.imageCdnUrl}\n groupByDateShared\n breakpoints={breakpoints}\n yearGroups={yearGroups.data}\n hasDemoInsights={false}\n />\n {(shareData.hasMore || shareData.isFetching) &&\n <InfiniteScrollFooter\n isFetching={shareData.isFetching}\n fetchNext={shareData.fetchNext}\n nextCursor={shareData.nextCursor}\n />\n }\n </>\n );\n }\n\n if (!classroom.data)\n return <PartialManageClassroomStudents />;\n\n return (\n <ClassroomLayout\n classroom={classroom.data}\n currentUser={currentUser.data}\n onTogglePin={console.log}\n activeTab='reports'\n isRostered={isRostered}\n >\n <div className='d-flex gap-3 m-3 justify-content-end'>\n <label className='mb-0'>View as student feed</label>\n <ToggleSwitch on={showFeed} onClick={() => setShowFeed(!showFeed)} />\n </div>\n\n {showFeed && <img src={ImageUrls.CLASSROM_FEED} />}\n {!showFeed && renderTable()}\n </ClassroomLayout>\n );\n}\n"],"names":["PartialManageClassroomStudents","className","numItems","PartialPillTabSelector","Array","fill","map","student","i","key","Math","random","getPhrase","ClassroomReportsView","props","showFeed","setShowFeed","currentUser","classroom","data","id","breakpoints","yearGroups","isAuthenticated","customerId","sharesParams","shareData","scopeId","isRostered","_integrations","rostered","title","classroomName","name","onTogglePin","console","log","activeTab","on","onClick","src","showPartialLoading","sentShares","length","sharedObjects","items","shareRecipients","interactivesPendingReview","itemsArr","getObjectAppLink","getObjectActions","obj","shareId","audienceAppLinkParams","imageCdnUrl","groupByDateShared","hasDemoInsights","hasMore","isFetching","fetchNext","nextCursor"],"sourceRoot":""}
@@ -0,0 +1,3 @@
1
+ /*! For license information please see 6629-910e316a83-lite.chunk.js.LICENSE.txt */
2
+ "use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[6629],{86995:(e,t,r)=>{r.d(t,{a:()=>p});var n=r(32735),o=r(68050),i=r(69111),a=r(42272),c=r(93975),s=r(89965);function u(e){var t=n.useId();return n.createElement("div",{className:"d-flex"},n.createElement(s.X,{id:t,onChange:e.onClick,checked:e.toggled}),n.createElement("div",{className:"d-flex flex-column"},n.createElement("label",{className:"m-0",htmlFor:""},e.title),n.createElement("p",{className:"m-0 text-secondary"},e.description)))}var l=r(82444),f=r(4315);function h(e){return"classroom"===e.type?n.createElement(l.b,{selectedClassroom:e.selectedClassroom,onChangeClassroom:e.onChangeClassroom}):"open-classroom"===e.type?n.createElement(f.e,{shareLink:{type:c.y.Open,privacy:a.e.PinCode}}):void 0}function p(e){return n.createElement("div",{className:"d-flex flex-column gap-4 ".concat(e.className)},n.createElement(h,Object.assign({},e)),n.createElement(o.Z,null,n.createElement(i.Z,{sm:12,lg:6},n.createElement(u,{title:"Prevent skipping ahead",description:"Students cannot skip ahead to parts of the video they have not watched",toggled:e.preventSkippingAhead,onClick:e.onTogglePreventSkippingAhead})),e.isInteractive&&n.createElement(i.Z,{sm:12,lg:6},n.createElement(u,{title:"Enable instant feedback",description:"Allow students to see feedback on their answers before continuing",toggled:e.enableInstantFeedback,onClick:e.onToggleEnableInstantFeedback}))),n.createElement("div",null,n.createElement("label",null,"Add a message for your students (optional)"),n.createElement("br",null),n.createElement("textarea",{className:"form-control",placeholder:"Type a message...",value:e.message,onChange:function(t){return e.onChangeMessage(t.target.value)}})))}},82444:(e,t,r)=>{r.d(t,{b:()=>c});var n=r(32735),o=r(42272),i=r(93975),a=r(4315);function c(e){return n.createElement("div",{className:"d-flex align-items-center w-100 rounded gap-2 justify-content-between"},n.createElement("div",{className:"flex-grow-1"},n.createElement(a.e,{shareLink:{type:i.y.Classroom,privacy:o.e.Direct},classroomName:e.selectedClassroom.name})),n.createElement("div",{className:"d-flex align-items-center"},n.createElement("a",{className:"cursor-pointer text-info",onClick:e.onChangeClassroom},"Change classroom")))}},4315:(e,t,r)=>{r.d(t,{e:()=>h});var n=r(32735),o=r(12528),i=r(83914),a=r(4594),c=r(35223),s=r(42272),u=r(93975);function l(e){return l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l(e)}function f(e,t,r){return(t=function(e){var t=function(e){if("object"!=l(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var r=t.call(e,"string");if("object"!=l(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==l(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function h(e){var t,r,c,l,f;return n.createElement("div",{className:"d-flex align-items-center"},n.createElement("div",{className:"d-flex align-items-center justify-content-center"},n.createElement("div",null,n.createElement(o.f,{svgName:p[e.shareLink.type],variant:y[e.shareLink.type],textVariant:"white",svgWrapperClassName:null!==(t=e.svgWrapperClassName)&&void 0!==t?t:"p-1",svgSize:null!==(r=e.svgSize)&&void 0!==r?r:i.S.Standard})),n.createElement("div",{className:"d-flex flex-column ms-2"},n.createElement("label",{className:"m-0"},(l=(c=e).shareLink,f=c.classroomName,l.type===u.y.Classroom&&f?f:d[l.type])),!e.hideSubtitle&&n.createElement("span",{className:"text-secondary"},function(e){var t,r,n,o,i=e.shareLink;if(i.type===u.y.Classroom){var c=null!==(r=null===(t=i.recipients)||void 0===t?void 0:t.filter((function(e){return e.recipientTypeId===a.E.ClassroomGroup})).length)&&void 0!==r?r:0,l=null!==(o=null===(n=i.recipients)||void 0===n?void 0:n.filter((function(e){return e.recipientTypeId===a.E.User})).length)&&void 0!==o?o:0;return c&&l?"".concat(c," ").concat(v(c,"group","groups"),", ").concat(l," ").concat(v(l,"student","students")," can view"):c?"".concat(c," ").concat(v(c,"group","groups")," can view"):l?"".concat(l," ").concat(v(l,"student","students")," can view"):"All students in classroom can view"}if(i.type===u.y.Open)return"Students watch using a PIN code";if(i.type===u.y.Link){if([s.e.JustMySchool,s.e.Protected].includes(i.privacy))return"Respect ratings and restrictions";if(i.privacy===s.e.JustMySchoolOverrideRestriction)return"Anyone in your school can view";if(i.privacy===s.e.ProtectedOverrideRestriction)return"Anyone signed into ClickView can view";if(i.privacy===s.e.Public)return"Anyone with a link can view";if(i.privacy===s.e.PinCode)return"Anyone with a PIN code can view"}return i.type===u.y.Live?"Live now":"Anyone signed into ClickView can view"}(e)))))}var p=f(f(f(f({},u.y.Open,c.vn.School),u.y.Link,c.vn.Link),u.y.Classroom,c.vn.Classrooms),u.y.Live,c.vn.Play),y=f(f(f(f({},u.y.Open,"blue"),u.y.Link,"black"),u.y.Classroom,"teal"),u.y.Live,"purple"),d=f(f(f(f({},u.y.Open,"Open classroom"),u.y.Link,"Link"),u.y.Classroom,"Classroom"),u.y.Live,"Live");function v(e,t,r){return 1===e?t:r}},42272:(e,t,r)=>{var n;r.d(t,{e:()=>n}),function(e){e.Public="Public",e.PinCode="PinCode",e.PasswordProtected="PasswordProtected",e.ProtectedOverrideRestriction="ProtectedOverrideRestriction",e.JustMySchoolOverrideRestriction="JustMySchoolOverrideRestriction",e.Protected="Protected",e.JustMySchool="JustMySchool",e.Direct="Direct"}(n||(n={}))},93975:(e,t,r)=>{var n;r.d(t,{y:()=>n}),function(e){e.Link="Link",e.Classroom="Classroom",e.Open="Open",e.Live="Live"}(n||(n={}))},91574:(e,t,r)=>{r.d(t,{o:()=>a});var n=r(99940),o=r(97395),i={namespace:"share-v2"},a={createShareLink:function(e,t,r,o){return{url:"/api/share/v2/shares",key:"create:share-v2:link",type:n.k.POST,data:e,normalizeOptions:i,invalidationKeys:["share:link:object:".concat(e.objectId),"privacy:".concat(e.objectId),"sent:shares","get:share-v2:shares:object"],success:t,error:r,always:o}},getShareLink:function(e,t,r,o){return{url:"/api/share/v2/shares/".concat(e),key:"get:share-v2:link:".concat(e),type:n.k.GET,normalizeOptions:i,success:t,error:r,always:o}},getSharesByObjectId:function(e,t,r,o){return{url:"/api/share/v2/shares/objects/".concat(e),key:"get:share-v2:shares:object:".concat(e),type:n.k.GET,normalizeOptions:i,success:t,error:r,always:o}},getSentShares:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0,r=arguments.length>2?arguments[2]:void 0,i=arguments.length>3?arguments[3]:void 0,a={scopeId:e.scopeId,limit:e.limit||25,offset:parseInt(e.cursor)||0},c=Object.values(a).join(":");return{url:o._.urlBuilder("/api/share/v2/shares/sent",a),key:"sent:shares-v2:".concat(c),formatData:function(e){return{data:e,count:e.length,pagination:{cursors:{next:a.offset+e.length}}}},type:n.k.GET,normalize:!1,success:t,error:r,always:i}},createPincode:function(e){return{url:"/api/share/v2/shares/".concat(e,"/pincode"),key:"create:share-v2:pincode",type:n.k.POST}},getPincode:function(e){return{url:"/api/share/v2/shares/pincode?code=".concat(e),key:"get:share-v2:pincode:".concat(e)}},getPincodeByShareId:function(e){return{url:"/api/share/v2/shares/".concat(e,"/pincode"),key:"get:share-v2:".concat(e,":pincode")}}}},93779:(e,t,r)=>{r.d(t,{t:()=>f});var n=r(20354),o=r(30439),i=r(42272),a=r(93975),c=r(91574);function s(e){return s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},s(e)}function u(){u=function(){return t};var e,t={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(e,t,r){e[t]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",c=i.asyncIterator||"@@asyncIterator",l=i.toStringTag||"@@toStringTag";function f(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{f({},"")}catch(e){f=function(e,t,r){return e[t]=r}}function h(e,t,r,n){var i=t&&t.prototype instanceof b?t:b,a=Object.create(i.prototype),c=new _(n||[]);return o(a,"_invoke",{value:P(e,r,c)}),a}function p(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=h;var y="suspendedStart",d="suspendedYield",v="executing",m="completed",g={};function b(){}function w(){}function k(){}var E={};f(E,a,(function(){return this}));var S=Object.getPrototypeOf,x=S&&S(S(T([])));x&&x!==r&&n.call(x,a)&&(E=x);var L=k.prototype=b.prototype=Object.create(E);function O(e){["next","throw","return"].forEach((function(t){f(e,t,(function(e){return this._invoke(t,e)}))}))}function I(e,t){function r(o,i,a,c){var u=p(e[o],e,i);if("throw"!==u.type){var l=u.arg,f=l.value;return f&&"object"==s(f)&&n.call(f,"__await")?t.resolve(f.__await).then((function(e){r("next",e,a,c)}),(function(e){r("throw",e,a,c)})):t.resolve(f).then((function(e){l.value=e,a(l)}),(function(e){return r("throw",e,a,c)}))}c(u.arg)}var i;o(this,"_invoke",{value:function(e,n){function o(){return new t((function(t,o){r(e,n,t,o)}))}return i=i?i.then(o,o):o()}})}function P(t,r,n){var o=y;return function(i,a){if(o===v)throw Error("Generator is already running");if(o===m){if("throw"===i)throw a;return{value:e,done:!0}}for(n.method=i,n.arg=a;;){var c=n.delegate;if(c){var s=j(c,n);if(s){if(s===g)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===y)throw o=m,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=v;var u=p(t,r,n);if("normal"===u.type){if(o=n.done?m:d,u.arg===g)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(o=m,n.method="throw",n.arg=u.arg)}}}function j(t,r){var n=r.method,o=t.iterator[n];if(o===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,j(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),g;var i=p(o,t.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,g;var a=i.arg;return a?a.done?(r[t.resultName]=a.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,g):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,g)}function C(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function N(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function _(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(C,this),this.reset(!0)}function T(t){if(t||""===t){var r=t[a];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,i=function r(){for(;++o<t.length;)if(n.call(t,o))return r.value=t[o],r.done=!1,r;return r.value=e,r.done=!0,r};return i.next=i}}throw new TypeError(s(t)+" is not iterable")}return w.prototype=k,o(L,"constructor",{value:k,configurable:!0}),o(k,"constructor",{value:w,configurable:!0}),w.displayName=f(k,l,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===w||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,k):(e.__proto__=k,f(e,l,"GeneratorFunction")),e.prototype=Object.create(L),e},t.awrap=function(e){return{__await:e}},O(I.prototype),f(I.prototype,c,(function(){return this})),t.AsyncIterator=I,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new I(h(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},O(L),f(L,l,"Generator"),f(L,a,(function(){return this})),f(L,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=T,_.prototype={constructor:_,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(N),!t)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function o(n,o){return c.type="throw",c.arg=t,r.next=n,o&&(r.method="next",r.arg=e),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var s=n.call(a,"catchLoc"),u=n.call(a,"finallyLoc");if(s&&u){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(s){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!u)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,g):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),g},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),N(r),g}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;N(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:T(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),g}},t}var l=function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function a(e){try{s(n.next(e))}catch(e){i(e)}}function c(e){try{s(n.throw(e))}catch(e){i(e)}}function s(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,c)}s((n=n.apply(e,t||[])).next())}))};function f(e){var t,r=n.a.useBasicFetch(o.o.getPrivacy(e)),s=n.a.useGetFetchAsync(),f=null===(t=r.data)||void 0===t?void 0:t.canManageAccess;return{createShareLink:function(e){return l(this,void 0,void 0,u().mark((function t(){var n;return u().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(r.data){t.next=2;break}return t.abrupt("return");case 2:return t.next=4,s(c.o.createShareLink({objectId:e.objectId,type:a.y.Link,privacy:e.privacy,optionRequest:{preventSkipping:e.preventSkipping,instantFeedback:e.instantFeedback}}));case 4:return n=t.sent,t.abrupt("return",n);case 6:case"end":return t.stop()}}),t)})))},createDirectShare:function(e){return l(this,void 0,void 0,u().mark((function t(){var n,o;return u().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(r.data){t.next=2;break}return t.abrupt("return");case 2:return n=e.requireSignIn?i.e.Direct:i.e.PinCode,t.next=5,s(c.o.createShareLink({objectId:e.objectId,type:a.y.Classroom,privacy:n,optionRequest:{preventSkipping:e.preventShipping,instantFeedback:e.instantFeedback},recipientRequest:e.recipients.map((function(t){return{recipientId:t,message:e.message,scopeId:e.scopeId}}))}));case 5:if(o=t.sent,n!==i.e.PinCode){t.next=9;break}return t.next=9,s(c.o.createPincode(o.shareId));case 9:return t.abrupt("return",o);case 10:case"end":return t.stop()}}),t)})))},createOpenSession:function(e){return l(this,void 0,void 0,u().mark((function t(){var n,o;return u().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(r.data){t.next=2;break}return t.abrupt("return");case 2:return n=i.e.PinCode,e.requireSignIn&&(n=e.respectRatingsAndRestrictions?f?i.e.JustMySchool:i.e.Protected:f?i.e.JustMySchoolOverrideRestriction:i.e.ProtectedOverrideRestriction),t.next=6,s(c.o.createShareLink({objectId:e.objectId,type:a.y.Open,privacy:n,optionRequest:{preventSkipping:e.preventSkipping,instantFeedback:e.instantFeedback}}));case 6:if(o=t.sent,n!==i.e.PinCode){t.next=10;break}return t.next=10,s(c.o.createPincode(o.shareId));case 10:return t.abrupt("return",o);case 11:case"end":return t.stop()}}),t)})))},canManageAccess:f,hasCompleted:r.hasCompleted}}},6629:(e,t,r)=>{r.r(t),r.d(t,{SessionFlowView:()=>m});var n=r(32735),o=r(39202),i=r(9111),a=r(13876),c=r(14070),s=r(97291),u=r(93779),l=r(86995);function f(e){return f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},f(e)}function h(){h=function(){return t};var e,t={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(e,t,r){e[t]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",c=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function u(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,r){return e[t]=r}}function l(e,t,r,n){var i=t&&t.prototype instanceof b?t:b,a=Object.create(i.prototype),c=new _(n||[]);return o(a,"_invoke",{value:P(e,r,c)}),a}function p(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=l;var y="suspendedStart",d="suspendedYield",v="executing",m="completed",g={};function b(){}function w(){}function k(){}var E={};u(E,a,(function(){return this}));var S=Object.getPrototypeOf,x=S&&S(S(T([])));x&&x!==r&&n.call(x,a)&&(E=x);var L=k.prototype=b.prototype=Object.create(E);function O(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function I(e,t){function r(o,i,a,c){var s=p(e[o],e,i);if("throw"!==s.type){var u=s.arg,l=u.value;return l&&"object"==f(l)&&n.call(l,"__await")?t.resolve(l.__await).then((function(e){r("next",e,a,c)}),(function(e){r("throw",e,a,c)})):t.resolve(l).then((function(e){u.value=e,a(u)}),(function(e){return r("throw",e,a,c)}))}c(s.arg)}var i;o(this,"_invoke",{value:function(e,n){function o(){return new t((function(t,o){r(e,n,t,o)}))}return i=i?i.then(o,o):o()}})}function P(t,r,n){var o=y;return function(i,a){if(o===v)throw Error("Generator is already running");if(o===m){if("throw"===i)throw a;return{value:e,done:!0}}for(n.method=i,n.arg=a;;){var c=n.delegate;if(c){var s=j(c,n);if(s){if(s===g)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===y)throw o=m,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=v;var u=p(t,r,n);if("normal"===u.type){if(o=n.done?m:d,u.arg===g)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(o=m,n.method="throw",n.arg=u.arg)}}}function j(t,r){var n=r.method,o=t.iterator[n];if(o===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,j(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),g;var i=p(o,t.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,g;var a=i.arg;return a?a.done?(r[t.resultName]=a.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,g):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,g)}function C(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function N(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function _(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(C,this),this.reset(!0)}function T(t){if(t||""===t){var r=t[a];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,i=function r(){for(;++o<t.length;)if(n.call(t,o))return r.value=t[o],r.done=!1,r;return r.value=e,r.done=!0,r};return i.next=i}}throw new TypeError(f(t)+" is not iterable")}return w.prototype=k,o(L,"constructor",{value:k,configurable:!0}),o(k,"constructor",{value:w,configurable:!0}),w.displayName=u(k,s,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===w||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,k):(e.__proto__=k,u(e,s,"GeneratorFunction")),e.prototype=Object.create(L),e},t.awrap=function(e){return{__await:e}},O(I.prototype),u(I.prototype,c,(function(){return this})),t.AsyncIterator=I,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new I(l(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},O(L),u(L,s,"Generator"),u(L,a,(function(){return this})),u(L,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=T,_.prototype={constructor:_,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(N),!t)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function o(n,o){return c.type="throw",c.arg=t,r.next=n,o&&(r.method="next",r.arg=e),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var s=n.call(a,"catchLoc"),u=n.call(a,"finallyLoc");if(s&&u){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(s){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!u)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,g):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),g},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),N(r),g}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;N(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:T(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),g}},t}function p(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,c=[],s=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;s=!1}else for(;!(s=(n=i.call(r)).done)&&(c.push(n.value),c.length!==t);s=!0);}catch(e){u=!0,o=e}finally{try{if(!s&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return c}}(e,t)||function(e,t){if(e){if("string"==typeof e)return y(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?y(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function y(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}var d=function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function a(e){try{s(n.next(e))}catch(e){i(e)}}function c(e){try{s(n.throw(e))}catch(e){i(e)}}function s(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,c)}s((n=n.apply(e,t||[])).next())}))};function v(e){return n.createElement("div",{className:"d-flex flex-column gap-3"},n.createElement(l.a,{type:"open-classroom",enableInstantFeedback:e.enableInstantFeedback,preventSkippingAhead:e.preventSkippingAhead,isInteractive:"interactive"===e.entityType,message:e.message,onTogglePreventSkippingAhead:e.onTogglePreventSkippingAhead,onToggleEnableInstantFeedback:e.onToggleEnableInstantFeedback,onChangeMessage:e.onChangeMessage}),n.createElement(a.u,null,n.createElement(a.u.Cancel,{variant:"link",onClick:e.onBack,text:"Back"}),n.createElement(a.u.Submit,{variant:"dark",onClick:e.onCreate,showSpinner:e.working,text:"Assign"})))}function m(e){var t=(0,u.t)(e.objectId).createOpenSession,r=p(n.useState(!1),2),a=r[0],l=r[1],f=p(n.useState(!1),2),y=f[0],m=f[1],g=p(n.useState(""),2),b=g[0],w=g[1],k=p(n.useState(!1),2),E=k[0],S=k[1],x={entityType:e.entityType,message:b,working:E,enableInstantFeedback:y,preventSkippingAhead:a,isInteractive:"interactive"===e.entityType,onBack:function(){e.closePopup()},onCreate:function(){return d(this,void 0,void 0,h().mark((function r(){var n,i;return h().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return S(!0),r.next=3,t({instantFeedback:y,preventSkipping:a,requireSignIn:!1,respectRatingsAndRestrictions:!1,objectId:e.objectId});case 3:n=r.sent,i={video:c.e.Insights.VIDEO_SHARE_OPTIONS,clip:c.e.Insights.CLIP_SHARE_OPTIONS,interactive:c.e.Insights.INTERACTIVE_SHARE_OPTIONS,series:c.e.Insights.SERIES_SHARE_OPTIONS,playlist:c.e.Insights.PLAYLIST_SHARE_OPTIONS},o.C$.trigger({application:s.O.INSIGHTS,action:i[e.entityType],args:[e.objectId],params:{shareId:n.shareId}});case 6:case"end":return r.stop()}}),r)})))},onChangeMessage:w,onTogglePreventSkippingAhead:function(){return l(!a)},onToggleEnableInstantFeedback:function(){return m(!y)}};return e.noPopup?n.createElement(v,Object.assign({},x)):n.createElement(i.G,Object.assign({title:"Assign to an Open classroom",showLoadingSpinner:!1,size:"lg"},e),n.createElement(v,Object.assign({},x)))}}}]);
3
+ //# sourceMappingURL=6629-910e316a83-lite.chunk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scripts/6629-910e316a83-lite.chunk.js","mappings":"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","sources":["file:///app/packages/projects/lite/src/apps/share-v2/components/section-setting-toggle-item/SectionSettingToggleItem.tsx","file:///app/packages/projects/lite/src/apps/share-v2/components/ClassroomSettingsSectioned.tsx","file:///app/packages/projects/lite/src/apps/share-v2/components/SelectedClassroomHeader.tsx","file:///app/packages/projects/lite/src/apps/share-v2/components/ShareAvatar.tsx","file:///app/packages/projects/lite/src/apps/share-v2/enums/SharePrivacy.ts","file:///app/packages/projects/lite/src/apps/share-v2/enums/ShareType.ts","file:///app/packages/projects/lite/src/apps/share-v2/flight-requests/ShareRequests.ts","file:///app/packages/projects/lite/src/apps/share-v2/hooks/useCreateShare.ts","file:///app/packages/projects/lite/src/apps/share-v2/views/SessionFlowView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { Checkbox } from 'libs/shared/components/forms/form-checkbox/Checkbox';\n\ninterface SectionSettingToggleItemProps {\n title: string;\n description: string;\n toggled: boolean;\n onClick: () => void;\n}\n\nexport function SectionSettingToggleItem(props: SectionSettingToggleItemProps): JSX.Element {\n const id = React.useId();\n \n return (\n <div className='d-flex'>\n <Checkbox\n id={id}\n onChange={props.onClick}\n checked={props.toggled}\n />\n <div className='d-flex flex-column'>\n <label className='m-0' htmlFor=''>{props.title}</label>\n <p className='m-0 text-secondary'>{props.description}</p>\n </div>\n </div>\n );\n}\n","import React from 'react';\nimport { Col, Row } from 'react-bootstrap';\n\nimport { Classroom } from 'libs/shared/interfaces';\n\nimport { SharePrivacy } from '../enums/SharePrivacy';\nimport { ShareType } from '../enums/ShareType';\n\nimport { SectionSettingToggleItem } from './section-setting-toggle-item/SectionSettingToggleItem';\nimport { SelectedClassroomHeader } from './SelectedClassroomHeader';\nimport { ShareAvatar } from './ShareAvatar';\n\ntype ClassroomSettingsType = 'open-classroom' | 'classroom';\n\ntype ClassroomSettingsTypeOptions = ({\n type: 'open-classroom'\n} | {\n type: 'classroom';\n selectedClassroom: Classroom;\n onChangeClassroom: () => void;\n});\n\ntype ClassroomSettingsSectionedProps = {\n type: ClassroomSettingsType;\n preventSkippingAhead: boolean;\n enableInstantFeedback: boolean;\n isInteractive: boolean;\n className?: string;\n message?: string;\n onTogglePreventSkippingAhead: () => void;\n onToggleEnableInstantFeedback: () => void;\n onChangeMessage: (message: string) => void;\n} & ClassroomSettingsTypeOptions;\n\n\ntype ClassroomSettingsSectionedDynamicProps = {\n type: ClassroomSettingsType;\n} & ClassroomSettingsTypeOptions;\n\nfunction ClassroomSettingsSectionedHeader(props: ClassroomSettingsSectionedDynamicProps): JSX.Element {\n if (props.type === 'classroom') {\n return (\n <SelectedClassroomHeader\n selectedClassroom={props.selectedClassroom}\n onChangeClassroom={props.onChangeClassroom}\n />\n );\n }\n\n if (props.type === 'open-classroom') {\n return (\n <ShareAvatar shareLink={{ type: ShareType.Open, privacy: SharePrivacy.PinCode }}/>\n );\n }\n}\n\nexport function ClassroomSettingsSectioned(props: ClassroomSettingsSectionedProps): JSX.Element {\n return (\n <div className={`d-flex flex-column gap-4 ${props.className}`}>\n <ClassroomSettingsSectionedHeader {...props} />\n\n <Row>\n <Col sm={12} lg={6}>\n <SectionSettingToggleItem\n title='Prevent skipping ahead'\n description='Students cannot skip ahead to parts of the video they have not watched'\n toggled={props.preventSkippingAhead}\n onClick={props.onTogglePreventSkippingAhead}\n />\n </Col>\n {props.isInteractive &&\n <Col sm={12} lg={6}>\n <SectionSettingToggleItem\n title='Enable instant feedback'\n description='Allow students to see feedback on their answers before continuing'\n toggled={props.enableInstantFeedback}\n onClick={props.onToggleEnableInstantFeedback}\n />\n </Col>\n }\n </Row>\n\n <div>\n <label>Add a message for your students (optional)</label>\n <br />\n <textarea className='form-control' placeholder='Type a message...' value={props.message} onChange={e => props.onChangeMessage(e.target.value)} />\n </div>\n </div>\n );\n}","import React from 'react';\n\nimport { Classroom } from 'libs/shared/interfaces';\n\nimport { SharePrivacy } from '../enums/SharePrivacy';\nimport { ShareType } from '../enums/ShareType';\n\nimport { ShareAvatar } from './ShareAvatar';\n\ninterface SelectedClassroomHeaderProps {\n selectedClassroom: Classroom;\n onChangeClassroom: () => void;\n}\n\nexport function SelectedClassroomHeader(props: SelectedClassroomHeaderProps): JSX.Element {\n return (\n <div className={`d-flex align-items-center w-100 rounded gap-2 justify-content-between`}>\n <div className='flex-grow-1'>\n <ShareAvatar\n shareLink={{ type: ShareType.Classroom, privacy: SharePrivacy.Direct }}\n classroomName={props.selectedClassroom.name}\n />\n </div>\n <div className='d-flex align-items-center'>\n <a\n className='cursor-pointer text-info'\n onClick={props.onChangeClassroom}\n >\n Change classroom\n </a>\n </div>\n </div>\n );\n}","import React from 'react';\n\nimport { IconCircle } from 'libs/shared/components/icon-circle/IconCircle';\nimport { SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { SharePrivacy } from '../enums/SharePrivacy';\nimport { ShareType } from '../enums/ShareType';\nimport { ShareLink } from '../interfaces/ShareLink';\n\ninterface ShareAvatarProps {\n shareLink: Partial<ShareLink>;\n classroomName?: string;\n hideSubtitle?: boolean;\n svgSize?: SvgContainerSize;\n svgWrapperClassName?: string;\n}\n\nexport function ShareAvatar(props: ShareAvatarProps): JSX.Element {\n return (\n <div className='d-flex align-items-center'>\n <div className='d-flex align-items-center justify-content-center'>\n <div>\n <IconCircle\n svgName={icons[props.shareLink.type]}\n variant={iconColours[props.shareLink.type]}\n textVariant='white'\n svgWrapperClassName={props.svgWrapperClassName ?? 'p-1'}\n svgSize={props.svgSize ?? SvgContainerSize.Standard}\n />\n </div>\n <div className='d-flex flex-column ms-2'>\n <label className='m-0'>{getTitle(props)}</label>\n {!props.hideSubtitle && <span className='text-secondary'>{getSubtitle(props)}</span>}\n </div>\n </div>\n </div>\n );\n}\n\nconst icons = {\n [ShareType.Open]: cvSvgLibrary.School,\n [ShareType.Link]: cvSvgLibrary.Link,\n [ShareType.Classroom]: cvSvgLibrary.Classrooms,\n [ShareType.Live]: cvSvgLibrary.Play\n};\n\nconst iconColours = {\n [ShareType.Open]: 'blue',\n [ShareType.Link]: 'black',\n [ShareType.Classroom]: 'teal',\n [ShareType.Live]: 'purple'\n};\n\nconst titles = {\n [ShareType.Open]: 'Open classroom',\n [ShareType.Link]: 'Link',\n [ShareType.Classroom]: 'Classroom',\n [ShareType.Live]: 'Live'\n};\n\nfunction pluralize(count: number, singular: string, plural: string) {\n return count === 1 ? singular : plural;\n}\n\nfunction getTitle({ shareLink, classroomName }: ShareAvatarProps) {\n if (shareLink.type === ShareType.Classroom && classroomName)\n return classroomName;\n\n return titles[shareLink.type];\n}\n\nfunction getSubtitle({ shareLink }: ShareAvatarProps) {\n if (shareLink.type === ShareType.Classroom) {\n const groupCount = shareLink.recipients?.filter(r => r.recipientTypeId === MasterType.ClassroomGroup).length ?? 0;\n const studentCount = shareLink.recipients?.filter(r => r.recipientTypeId === MasterType.User).length ?? 0;\n\n if (groupCount && studentCount)\n return `${groupCount} ${pluralize(groupCount, 'group', 'groups')}, ${studentCount} ${pluralize(studentCount, 'student', 'students')} can view`;\n\n if (groupCount)\n return `${groupCount} ${pluralize(groupCount, 'group', 'groups')} can view`;\n\n if (studentCount)\n return `${studentCount} ${pluralize(studentCount, 'student', 'students')} can view`;\n\n return `All students in classroom can view`;\n }\n\n if (shareLink.type === ShareType.Open)\n return 'Students watch using a PIN code';\n\n if (shareLink.type === ShareType.Link) {\n if ([ SharePrivacy.JustMySchool, SharePrivacy.Protected ].includes(shareLink.privacy))\n return 'Respect ratings and restrictions';\n\n if (shareLink.privacy === SharePrivacy.JustMySchoolOverrideRestriction)\n return 'Anyone in your school can view';\n\n if (shareLink.privacy === SharePrivacy.ProtectedOverrideRestriction)\n return 'Anyone signed into ClickView can view';\n\n if (shareLink.privacy === SharePrivacy.Public)\n return 'Anyone with a link can view';\n\n if (shareLink.privacy === SharePrivacy.PinCode)\n return 'Anyone with a PIN code can view';\n }\n\n if (shareLink.type === ShareType.Live)\n return 'Live now';\n\n return 'Anyone signed into ClickView can view';\n}","export enum SharePrivacy {\n Public = 'Public',\n PinCode = 'PinCode',\n PasswordProtected = 'PasswordProtected',\n ProtectedOverrideRestriction = 'ProtectedOverrideRestriction',\n JustMySchoolOverrideRestriction = 'JustMySchoolOverrideRestriction',\n Protected = 'Protected',\n JustMySchool = 'JustMySchool',\n Direct = 'Direct'\n}","export enum ShareType {\n Link = 'Link',\n Classroom = 'Classroom',\n Open = 'Open',\n Live = 'Live'\n}","import { HttpVerbs } from 'libs/common/backbone/enums/HttpVerbs';\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\nimport { Flight } from 'libs/common/flight';\n\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { BasePaginatedCollection } from 'libs/shared/interfaces';\n\nimport { CreateShareLinkRequest } from 'apps/share-v2/interfaces/CreateShareLinkRequest';\nimport { ShareLink } from 'apps/share-v2/interfaces/ShareLink';\n\nconst normalizeOptions: Flight.NormalizeOptions = {\n namespace: 'share-v2'\n};\n\nexport interface GetSentSharesParams {\n cursor?: string;\n limit?: number;\n objectTypeId?: MasterType | MasterType[];\n recipientUserId?: string | string[];\n recipientGroupId?: string | string[];\n start?: string;\n end?: string;\n scopeId?: string;\n}\n\nexport const ShareRequests = {\n createShareLink(\n data: CreateShareLinkRequest,\n success?: (shareLink: ShareLink) => void,\n error?: () => void,\n always?: () => void\n ): Flight.Request {\n return {\n url: '/api/share/v2/shares',\n key: 'create:share-v2:link',\n type: HttpVerbs.POST,\n data,\n normalizeOptions,\n invalidationKeys: [\n `share:link:object:${data.objectId}`,\n `privacy:${data.objectId}`,\n 'sent:shares',\n 'get:share-v2:shares:object'\n ],\n success,\n error,\n always\n };\n },\n\n getShareLink(\n shareId: string,\n success?: (shareLink: ShareLink) => void,\n error?: () => void,\n always?: () => void\n ): Flight.Request {\n return {\n url: `/api/share/v2/shares/${shareId}`,\n key: `get:share-v2:link:${shareId}`,\n type: HttpVerbs.GET,\n normalizeOptions,\n success,\n error,\n always\n };\n },\n\n getSharesByObjectId(\n objectId: string | number,\n success?: (shares: ShareLink[]) => void,\n error?: () => void,\n always?: () => void\n ): Flight.Request {\n return {\n url: `/api/share/v2/shares/objects/${objectId}`,\n key: `get:share-v2:shares:object:${objectId}`,\n type: HttpVerbs.GET,\n normalizeOptions,\n success,\n error,\n always\n };\n },\n\n getSentShares(\n params: GetSentSharesParams = {},\n success?: (response: BasePaginatedCollection<ShareLink>[]) => void,\n error?: () => void,\n always?: () => void\n ): Flight.Request {\n const adaptedParams = {\n scopeId: params.scopeId,\n limit: params.limit || 25,\n offset: parseInt(params.cursor) || 0\n };\n\n const key = Object.values(adaptedParams).join(':');\n\n return {\n url: UrlHelper.urlBuilder('/api/share/v2/shares/sent', adaptedParams),\n key: `sent:shares-v2:${key}`,\n formatData: (response: ShareLink[]) => {\n return {\n data: response,\n count: response.length,\n pagination: {\n cursors: {\n next: adaptedParams.offset + response.length\n }\n }\n };\n },\n type: HttpVerbs.GET,\n normalize: false,\n success,\n error,\n always\n };\n },\n\n createPincode(shareId: string): Flight.Request {\n return {\n url: `/api/share/v2/shares/${shareId}/pincode`,\n key: 'create:share-v2:pincode',\n type: HttpVerbs.POST\n };\n },\n\n getPincode(code: string): Flight.Request {\n return {\n url: `/api/share/v2/shares/pincode?code=${code}`,\n key: `get:share-v2:pincode:${code}`\n };\n },\n\n getPincodeByShareId(shareId: string): Flight.Request {\n return {\n url: `/api/share/v2/shares/${shareId}/pincode`,\n key: `get:share-v2:${shareId}:pincode`\n };\n }\n};","import { Flight } from 'libs/common/react/index';\n\nimport { ShareRequests as ShareRequestsV1 } from 'libs/shared/apps/share/flight-requests/ShareRequests';\nimport { SharePrivacyResponse } from 'libs/shared/apps/share/interfaces/responses/SharePrivacyResponse';\n\nimport { SharePrivacy } from 'apps/share-v2/enums/SharePrivacy';\nimport { ShareType } from 'apps/share-v2/enums/ShareType';\nimport { ShareRequests as ShareRequestsV2 } from 'apps/share-v2/flight-requests/ShareRequests';\nimport { ShareLink } from 'apps/share-v2/interfaces/ShareLink';\n\ninterface CreateShareLinkOptions {\n objectId: string;\n privacy: SharePrivacy;\n preventSkipping: boolean;\n instantFeedback: boolean;\n}\n\ninterface CreateDirectShareOptions {\n objectId: string;\n preventShipping: boolean;\n instantFeedback: boolean;\n requireSignIn: boolean;\n message?: string;\n recipients: string[];\n scopeId: string | number;\n}\n\ninterface CreateOpenSessionOptions {\n objectId: string;\n preventSkipping: boolean;\n instantFeedback: boolean;\n requireSignIn: boolean;\n respectRatingsAndRestrictions: boolean;\n}\n\nexport function useCreateShare(objectId: string) {\n const accessPermissions = Flight.useBasicFetch<SharePrivacyResponse>(ShareRequestsV1.getPrivacy(objectId));\n const fetchAsync = Flight.useGetFetchAsync();\n const canManageAccess = accessPermissions.data?.canManageAccess;\n\n async function createShareLink(options: CreateShareLinkOptions) {\n if (!accessPermissions.data) return;\n\n const shareLink = await fetchAsync<ShareLink>(ShareRequestsV2.createShareLink({\n objectId: options.objectId,\n type: ShareType.Link,\n privacy: options.privacy,\n optionRequest: {\n preventSkipping: options.preventSkipping,\n instantFeedback: options.instantFeedback\n }\n }));\n\n return shareLink;\n }\n\n async function createDirectShare(options: CreateDirectShareOptions) {\n if (!accessPermissions.data) return;\n\n const privacy = options.requireSignIn ? SharePrivacy.Direct : SharePrivacy.PinCode;\n\n const shareLink = await fetchAsync<ShareLink>(ShareRequestsV2.createShareLink({\n objectId: options.objectId,\n type: ShareType.Classroom,\n privacy,\n optionRequest: {\n preventSkipping: options.preventShipping,\n instantFeedback: options.instantFeedback\n },\n recipientRequest: options\n .recipients\n .map(recipientId => ({ recipientId, message: options.message, scopeId: options.scopeId }))\n }));\n\n if (privacy === SharePrivacy.PinCode)\n await fetchAsync(ShareRequestsV2.createPincode(shareLink.shareId));\n\n return shareLink;\n }\n\n async function createOpenSession(options: CreateOpenSessionOptions) {\n if (!accessPermissions.data) return;\n\n let privacy = SharePrivacy.PinCode;\n\n if (options.requireSignIn) {\n if (options.respectRatingsAndRestrictions) {\n privacy = canManageAccess ? SharePrivacy.JustMySchool : SharePrivacy.Protected;\n } else {\n privacy = canManageAccess\n ? SharePrivacy.JustMySchoolOverrideRestriction\n : SharePrivacy.ProtectedOverrideRestriction;\n }\n }\n\n const shareLink = await fetchAsync<ShareLink>(ShareRequestsV2.createShareLink({\n objectId: options.objectId,\n type: ShareType.Open,\n privacy,\n optionRequest: {\n preventSkipping: options.preventSkipping,\n instantFeedback: options.instantFeedback\n }\n }));\n\n if (privacy === SharePrivacy.PinCode)\n await fetchAsync(ShareRequestsV2.createPincode(shareLink.shareId));\n\n return shareLink;\n }\n\n return {\n createShareLink,\n createDirectShare,\n createOpenSession,\n canManageAccess,\n hasCompleted: accessPermissions.hasCompleted\n };\n}","import React from 'react';\n\nimport { AppLinkHelper } from 'libs/common/backbone/core';\n\nimport { Popup } from 'libs/shared/components/popup/Popup';\nimport { PopupButtons } from 'libs/shared/components/popup/PopupButtons';\nimport { PopupViewProps } from 'libs/shared/interfaces';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { useCreateShare } from 'apps/share-v2/hooks/useCreateShare';\n\nimport { ClassroomSettingsSectioned } from '../components/ClassroomSettingsSectioned';\n\ninterface SessionFlowViewProps extends PopupViewProps {\n objectId: string;\n entityType: 'video' | 'clip' | 'interactive' | 'series' | 'playlist';\n noPopup?: boolean;\n}\n\ninterface SessionFlowBodyProps {\n entityType: 'video' | 'clip' | 'interactive' | 'series' | 'playlist';\n message: string;\n \n working: boolean;\n isInteractive: boolean;\n preventSkippingAhead: boolean;\n enableInstantFeedback: boolean;\n\n onBack: () => void;\n onCreate: () => void;\n onTogglePreventSkippingAhead: () => void;\n onToggleEnableInstantFeedback: () => void;\n onChangeMessage: (message: string) => void;\n}\n\nfunction SessionFlowBody(props: SessionFlowBodyProps): JSX.Element {\n return (\n <div className='d-flex flex-column gap-3'>\n <ClassroomSettingsSectioned\n type='open-classroom'\n enableInstantFeedback={props.enableInstantFeedback}\n preventSkippingAhead={props.preventSkippingAhead}\n isInteractive={props.entityType === 'interactive'}\n message={props.message}\n onTogglePreventSkippingAhead={props.onTogglePreventSkippingAhead}\n onToggleEnableInstantFeedback={props.onToggleEnableInstantFeedback}\n onChangeMessage={props.onChangeMessage}\n />\n <PopupButtons>\n <PopupButtons.Cancel variant='link' onClick={props.onBack} text='Back' />\n <PopupButtons.Submit variant='dark' onClick={props.onCreate} showSpinner={props.working} text='Assign' />\n </PopupButtons>\n </div>\n );\n}\n\nexport function SessionFlowView(props: SessionFlowViewProps): JSX.Element {\n const { createOpenSession } = useCreateShare(props.objectId);\n const [ preventSkippingAhead, setPreventSkippingAhead ] = React.useState(false);\n const [ enableInstantFeedback, setEnableInstantFeedback ] = React.useState(false);\n const [ message, setMessage ] = React.useState('');\n const [ working, setWorking ] = React.useState(false);\n\n function onBack() {\n props.closePopup();\n }\n\n async function onCreate() {\n setWorking(true);\n\n const shareLink = await createOpenSession({\n instantFeedback: enableInstantFeedback,\n preventSkipping: preventSkippingAhead,\n requireSignIn: false,\n respectRatingsAndRestrictions: false,\n objectId: props.objectId\n });\n\n const actions = {\n video: Actions.Insights.VIDEO_SHARE_OPTIONS,\n clip: Actions.Insights.CLIP_SHARE_OPTIONS,\n interactive: Actions.Insights.INTERACTIVE_SHARE_OPTIONS,\n series: Actions.Insights.SERIES_SHARE_OPTIONS,\n playlist: Actions.Insights.PLAYLIST_SHARE_OPTIONS\n };\n\n AppLinkHelper.trigger({\n application: AppChannels.INSIGHTS,\n action: actions[props.entityType],\n args: [props.objectId],\n params: {\n shareId: shareLink.shareId\n }\n });\n }\n\n const sessionFlowBodyProps: SessionFlowBodyProps = {\n entityType: props.entityType,\n message,\n working,\n enableInstantFeedback,\n preventSkippingAhead,\n isInteractive: props.entityType === 'interactive',\n onBack,\n onCreate,\n onChangeMessage: setMessage,\n onTogglePreventSkippingAhead: () => setPreventSkippingAhead(!preventSkippingAhead),\n onToggleEnableInstantFeedback: () => setEnableInstantFeedback(!enableInstantFeedback)\n };\n\n if (props.noPopup)\n return <SessionFlowBody {...sessionFlowBodyProps} />;\n\n return (\n <Popup\n title={'Assign to an Open classroom'}\n showLoadingSpinner={false}\n size='lg'\n {...props}\n >\n <SessionFlowBody {...sessionFlowBodyProps} />\n </Popup>\n );\n}"],"names":["SectionSettingToggleItem","props","id","className","Checkbox","onChange","onClick","checked","toggled","htmlFor","title","description","ClassroomSettingsSectionedHeader","type","SelectedClassroomHeader","selectedClassroom","onChangeClassroom","ShareAvatar","shareLink","ShareType","privacy","SharePrivacy","ClassroomSettingsSectioned","Row","Col","sm","lg","preventSkippingAhead","onTogglePreventSkippingAhead","isInteractive","enableInstantFeedback","onToggleEnableInstantFeedback","placeholder","value","message","e","onChangeMessage","target","classroomName","name","svgName","icons","variant","iconColours","textVariant","svgWrapperClassName","svgSize","S","titles","hideSubtitle","groupCount","recipients","filter","r","recipientTypeId","length","studentCount","pluralize","includes","getSubtitle","count","singular","plural","normalizeOptions","namespace","ShareRequests","createShareLink","data","success","error","always","url","key","invalidationKeys","objectId","getShareLink","shareId","getSharesByObjectId","getSentShares","params","adaptedParams","scopeId","limit","offset","parseInt","cursor","Object","values","join","formatData","response","pagination","cursors","next","normalize","createPincode","getPincode","code","getPincodeByShareId","useCreateShare","accessPermissions","fetchAsync","canManageAccess","options","optionRequest","preventSkipping","instantFeedback","createDirectShare","requireSignIn","preventShipping","recipientRequest","map","recipientId","createOpenSession","respectRatingsAndRestrictions","hasCompleted","SessionFlowBody","entityType","onBack","text","onCreate","showSpinner","working","SessionFlowView","setPreventSkippingAhead","setEnableInstantFeedback","setMessage","setWorking","sessionFlowBodyProps","closePopup","actions","video","clip","interactive","series","playlist","application","action","args","noPopup","showLoadingSpinner","size"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ (self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[7428],{70376:(e,t,n)=>{"use strict";n.d(t,{W:()=>c});var r=n(32735),a=n(91967);function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var o=5e3;function c(e){var t,n,c=arguments.length>1&&void 0!==arguments[1]?arguments[1]:o,l=(t=r.useState(!1),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,i,o,c=[],l=!0,s=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=i.call(n)).done)&&(c.push(r.value),c.length!==t);l=!0);}catch(e){s=!0,a=e}finally{try{if(!l&&null!=n.return&&(o=n.return(),Object(o)!==o))return}finally{if(s)throw a}}return c}}(t,n)||function(e,t){if(e){if("string"==typeof e)return i(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?i(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),s=l[0],u=l[1],d=r.useRef(null),p=function(){u((function(e){return!e})),d.current=window.setTimeout(p,c)};return r.useEffect((function(){d.current=window.setTimeout(p,c)}),[]),r.useEffect((function(){a.q.isFunction(e)&&e()}),[s]),function(){return window.clearTimeout(d.current)}}},5255:(e,t,n)=>{"use strict";n.d(t,{Y:()=>c});var r=n(70376),a=n(20354),i=n(30439);function o(e){return o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(e)}function c(e){var t,n=a.a.useGetFetch(),c=e&&i.o.getAnonSessions(e),l=a.a.useBasicFetch(c);return(0,r.W)((function(){return n(c)}),5e3),(null===(t=l.data)||void 0===t?void 0:t.length)?l.data.reduce((function(e,t){return Object.assign(Object.assign({},e),(n={},r=t.sessionId,a=t,(r=function(e){var t=function(e){if("object"!=o(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=o(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==o(t)?t:t+""}(r))in n?Object.defineProperty(n,r,{value:a,enumerable:!0,configurable:!0,writable:!0}):n[r]=a,n));var n,r,a}),{}):{}}},4606:(e,t,n)=>{"use strict";n.d(t,{U:()=>o});var r=n(20354),a=n(75896),i=n(31949);function o(e){var t=a.m.chunk(null!=e?e:[],25),n=r.a.useBasicFetchAll(t.map((function(e){return i.N.getById(e)})));return{users:a.m.flatten(n.data),isLoading:!n.hasCompleted,usersResponse:n}}},9806:(e,t,n)=>{"use strict";n.d(t,{k:()=>O});var r=n(32735),a=n(65858),i=n(64249),o=n(15611),c=n(7432),l=n(11834),s=n(83345),u=n(56754),d=n(86348),p=n(7733),m=n(54610),v=n(4594),f=n(68626),y=n(9085),g=n(67453),b=n(31908);const h={thumbnailFallbackSvg:"D4JFs",posterFallbackSvg:"bjUWl",coverFallbackSvg:"kdLpt",thumbnailContainer:"d3CKN",insightsMask:"KM76U",requireMarking:"peLH7",badge:"mVu0E",bar:"zO3MS",a:"K1jW5",expandBar:"YITJl",b:"tCpLF",c:"lC0cq"};var w="shared.sharedObjectImage",E="rounded overflow-hidden";function k(){return r.createElement("div",{className:"d-flex pointer-events-none position-absolute bottom-0 start-0 h-100 w-100 z-1 justify-content-center align-items-center"},r.createElement("div",{className:"position-absolute bg-dark bg-gradient opacity-50 w-100 h-100 z-0 rounded-3"}),r.createElement("div",{className:"d-flex align-items-end gap-2 h-50 z-1"},r.createElement("div",{className:"d-flex align-items-end h-50"},r.createElement("div",{className:"".concat(h.bar," ").concat(h.a," rounded shadow")})),r.createElement("div",{className:"d-flex align-items-end h-75"},r.createElement("div",{className:"".concat(h.bar," ").concat(h.b," rounded shadow")})),r.createElement("div",{className:"d-flex align-items-end h-100"},r.createElement("div",{className:"".concat(h.bar," ").concat(h.c," rounded shadow")}))))}function O(e){var t=r.useCallback((function(t){var n;t&&e.fixedHeight&&(t.style.width="".concat(t.offsetHeight*(n=e.object,b.M.isVideoType(n)?16/9:n.typeId===v.E.Playlist?1:n.typeId===v.E.Series?9/16:void 0),"px"))}),[]),n=b.M.isVideoType(e.object),O=function(e){var t=g.j.getDisplayImageFromObject(e);if(b.M.isVideoType(e))return{image:t,imageType:m.__.Thumbnails,imageClassName:E,imageFallbackComponent:r.createElement(l.oy,{type:l.mS.Video})};switch(e.typeId){case v.E.Series:return{image:t,imageType:m.__.TallPosters,imageClassName:E,imageFallbackComponent:r.createElement(l.oy,{type:l.mS.Series,svgContainerClassName:h.posterFallbackSvg})};case v.E.Playlist:return{image:t,imageType:m.__.Covers,imageClassName:(null==t?void 0:t.url)?E:"".concat(E," ").concat((0,y.x)(e.name,p.o)),imageFallbackComponent:r.createElement(l.oy,{type:l.mS.Playlist,svgContainerClassName:(null==t?void 0:t.url)?h.coverFallbackSvg:"d-none",extraClasses:!(null==t?void 0:t.url)&&"bg-transparent"})}}}(e.object),S=O.image,j=O.imageType,C=O.imageClassName,x=O.imageFallbackComponent,I=e.showVideoMetadata?{}:{hideDuration:!0,hideMask:!0,hideRating:!0,hideVideoTypeBadge:!0};return r.createElement("div",{className:"d-flex align-items-center justify-content-center w-100 h-100"},r.createElement("div",{ref:t,className:e.fixedHeight?"h-100":"w-100"},n&&r.createElement("div",{className:"".concat(h.thumbnailContainer," position-relative")},e.showInsightsMask&&r.createElement(k,null),r.createElement(o.F,{appLink:e.appLink},r.createElement(d.u,Object.assign({video:e.object,size:e.thumbnailSize,imageOptions:e.imageOptions,textPosition:f.z.Independent,type:"cosmetic"},I))),!!e.requireMarking&&r.createElement("div",{className:"".concat(e.showInsightsMask&&h.requireMarking," position-absolute bottom-0 end-0 z-1 m-2")},r.createElement("div",{className:"".concat(h.badge," d-flex align-items-center bg-light-ultramarine text-ultramarine fw-semibold rounded-pill w-fit mt-1 px-2")},r.createElement(s.x,{namespace:w,phrase:"requireMarking",options:{smartCount:e.requireMarking}})))),!n&&r.createElement(r.Fragment,null,"videos"in e.object?r.createElement(u.I,{collection:e.object,imageOptions:e.imageOptions,appLink:e.appLink,analyticsData:{id:e.object.id,name:e.object.name},analyticsOptions:{entity:i.I.getAnalyticsEntity(e.object.type),actionType:a.Vw.Click,location:e.locationContext},showMask:e.showCollectionMask,showVideoCount:e.showVideoCount}):r.createElement(c.Z,{data:null==S?void 0:S.url,imageType:j,imageOptions:e.imageOptions,appLink:e.appLink,className:C,analyticsData:{id:e.object.id,name:e.object.name},analyticsOptions:{entity:i.I.getAnalyticsEntity(e.object.type),actionType:a.Vw.Click,location:e.locationContext}},x))))}O.defaultProps={imageOptions:{size:m.h2.Small}}},56754:(e,t,n)=>{"use strict";n.d(t,{I:()=>w});var r=n(32735),a=n(75896),i=n(65858),o=n(15611),c=n(83914),l=n(83345);const s={thumbnailTitle:"OsWjL"};function u(e){return r.createElement("h3",{title:e.title,className:"h6"},e.title)}function d(e){return e.appLink?r.createElement(o.F,{appLink:e.appLink,className:"".concat(s.thumbnailTitle)},r.createElement(u,Object.assign({},e))):r.createElement(u,Object.assign({},e))}var p=n(86348),m=n(62335),v=n(4594),f=n(68626),y=n(45778),g=n(35223);const b={badge:"M4zat",mask:"r0Ztg",thumbnailContainer:"uD9dz"};var h="shared.collectionThumbnail";function w(e){var t,n,s,u,w=function(){var t,n=null===(t=e.collection)||void 0===t?void 0:t.videos;if(n){if(!n.count&&e.collection.typeId===v.E.Playlist){var r=e.collection;r.clips.count&&(n=r.clips),r.interactives.count&&(n=r.interactives)}return a.m.first(n.data)}}(),E=function(){var t,n,r=0;if(e.collection.videos&&e.collection.videos.count&&(r+=e.collection.videos.count),e.collection.typeId===v.E.Playlist){var a=e.collection;(null===(t=a.interactives)||void 0===t?void 0:t.count)&&(r+=a.interactives.count),(null===(n=a.clips)||void 0===n?void 0:n.count)&&(r+=a.clips.count)}return r}(),k=(null===(t=e.title)||void 0===t?void 0:t.length)||(null===(n=e.subText)||void 0===n?void 0:n.length),O=Object.assign({id:e.collection.id.toString(),name:e.collection.name},e.analyticsData),S=Object.assign({actionType:i.Vw.Click,entity:(u=e.collection,y.G.isType(u,v.E.Playlist)?i.py.Playlist:y.G.isType(u,v.E.Series)?i.py.Series:void 0)},e.analyticsOptions);return r.createElement("div",null,r.createElement("div",{className:"position-relative ".concat(b.thumbnailContainer," z-1")},r.createElement(o.F,{appLink:e.appLink,analyticsData:O,analyticsOptions:S,preventFocus:!0},e.showMask&&r.createElement("div",{className:"".concat(b.mask," position-absolute w-100 h-100 rounded-3 bg-dark bg-gradient z-1 bg-opacity-50 pointer-events-none")},r.createElement("div",{className:"".concat(b.badge," d-flex align-items-center w-fit flex-grow-0 bg-dark rounded-pill ps-1 m-2")},r.createElement(c.x,{svgName:g.vn.Play,className:"svg-container text-white"}),r.createElement("p",{className:"d-inline fw-medium text-white mb-0"},(null===(s=e.hoverText)||void 0===s?void 0:s.length)?r.createElement("span",null,e.hoverText):r.createElement(l.x,{namespace:h,phrase:"playAll"})))),w&&r.createElement(p.u,{video:w,imageOptions:e.imageOptions,textPosition:f.z.Independent,type:"cosmetic",hideMask:!0,hideRating:!0,hideDuration:!0,hideVideoTypeBadge:!0}),!w&&r.createElement("div",{className:"ratio ratio-16x9 bg-light rounded-3"},r.createElement("div",{className:"d-flex justify-content-center align-items-center"},r.createElement(c.x,{svgName:g.vn.Play,className:"w-33 opacity-25 text-gray-400"}))),e.showVideoCount&&r.createElement("div",{className:"".concat(b.badge," d-flex align-items-center w-fit bg-dark bg-opacity-75 rounded-pill position-absolute bottom-0 end-0 ps-1 m-2")},r.createElement(c.x,{svgName:g.vn.Series,className:"svg-container text-white me-1"}),r.createElement("p",{className:"d-inline fw-semibold text-white mb-0"},r.createElement(l.x,{namespace:h,phrase:"videos",options:{count:E,smartCount:E}}))))),k&&r.createElement("div",{className:"mt-2 d-flex flex-column"},e.subText&&r.createElement(m.m,{title:e.subText,appLink:e.subTextAppLink},e.subText),e.title&&r.createElement(d,{title:e.collection.name,appLink:e.titleAppLink})))}},94644:(e,t,n)=>{"use strict";n.d(t,{r:()=>u});var r=n(50242),a=n(81886),i=n(67058),o=n(14553),c=n(49267),l=n(49075),s={notFound:i.d,forbidden:{rating:o.q,yearLevel:o.q,region:c.a,privacy:o.q},badRequest:l._,internalServerError:l._};function u(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(e){var i;i="number"==typeof e?e:e.status;var o=Object.assign(Object.assign({},s),t);i&&a.Q.Ry.isStatusCodeError(i)&&(i!==r.o.InternalServer?i!==r.o.NotFound?i!==r.o.Forbidden?n.badRequest||a.Q.Ry.throw(new o.badRequest):n.forbidden||a.Q.Ry.throw(new o.forbidden.privacy):n.notFound||a.Q.Ry.throw(new o.notFound):n.internalServerError||a.Q.Ry.throw(new l._))}}},17913:(e,t,n)=>{"use strict";n.d(t,{u:()=>o});var r=n(97395),a=n(110),i=n(62875),o={individualEngagement:function(e,t,n,a){var o=Object.assign({objectId:e},t);return n&&(o.sharerId=n),a&&(o.includeAnonViews=!0),{url:r._.urlBuilder("{gateway}/v1/analytics/heat-map",o),key:(0,i.H)("engagement:".concat(e,":").concat(a),t,n),formatData:function(e){var t;return Object.assign(Object.assign({},e),{data:null===(t=e.data)||void 0===t?void 0:t.map((function(e){var t;return Object.assign(Object.assign({},e),{heatMap:null!==(t=e.heatMap)&&void 0!==t?t:[]})}))})},normalize:!1}},aggregateEngagement:function(e,t,n,a){var o=Object.assign({objectId:e},t);return n&&(o.sharerId=n),a&&(o.includeAnonViews=!0),{url:r._.urlBuilder("{gateway}/v1/analytics/heat-map/aggregations",o),key:(0,i.H)("aggregate:engagement:".concat(e,":").concat(a),t,n),formatData:function(e){var t;return Object.assign(Object.assign({},e),{heatMap:null!==(t=e.heatMap)&&void 0!==t?t:[]})},normalize:!1}},views:function(e,t,n,o){var c=Object.assign(Object.assign({},e),{timeOffset:a.O.getTimezoneOffset()});return t&&(c.objectId=t),n&&(c.sharerId=n),o&&(c.includeAnonViews=!0),{url:r._.urlBuilder("{gateway}/v1/analytics/video-views",c),key:(0,i.H)("video:views:".concat(t,":").concat(o),e,n),normalize:!1}}}},91286:(e,t,n)=>{"use strict";n.d(t,{v:()=>o});var r=n(32735),a=n(94644);function i(e){return e.map((function(e){return e.statusCode})).join(":")}function o(e,t,n){var o=Array.isArray(e)?e:[e];(0,r.useEffect)((function(){o.forEach((function(e){(0,a.r)(e.statusCode,t,n)}))}),[i(o),t,n])}},63178:(e,t,n)=>{"use strict";n.r(t),n.d(t,{ShareOptionsView:()=>Z});var r=n(32735),a=n(70376),i=n(2948),o=n(20354),c=n(50938),l=n(5255),s=n(4606),u=n(26025),d=n(74901),p=n(40003),m=n(49475),v=n(91693),f=n(4594),y=n(16714),g=n(39151),b=n(5112),h=n(60011),w=n(31949),E=n(17913),k=n(3010),O=n(91286),S=n(93322),j=n(22902),C=n(79612),x=n(37802),I=n(35223),N=n(31908),P=n(86702),T=n(88630),L=n(59087),A=n(39202),R=n(65858),M=n(9806),D=n(83914),F=n(54610),V=n(14070),_=n(97291),z=n(22490),B=n(4315);function U(e){var t,n,a,i,o,c,l,s,u,d,p=null!==(a=null===(n=null===(t=e.shareLink)||void 0===t?void 0:t.link)||void 0===n?void 0:n.shortenedUrl)&&void 0!==a?a:"",m=z.W.getAppLink(e.sharedObject),f=A.C$.getHref(m);return r.createElement("div",null,r.createElement("h3",null,"Share information"),r.createElement("div",{className:"mb-4 bg-light-blue p-3 rounded-3"},r.createElement("div",{className:"d-flex gap-3"},e.sharedObject&&r.createElement("div",{style:{minWidth:220},className:"d-flex flex-column"},r.createElement(M.k,{object:e.sharedObject,showVideoMetadata:!0,locationContext:R.LZ.Insights,imageOptions:{size:F.h2.Medium},showCollectionMask:!0,showVideoCount:!0,appLink:m})),r.createElement("div",{className:"d-flex flex-column justify-content-between"},r.createElement("div",{className:"d-flex align-items-center"},r.createElement("a",{href:f,className:"cursor-pointer h6 mb-0 d-inline me-2"},null===(i=e.sharedObject)||void 0===i?void 0:i.name),r.createElement(v.h,{svgName:I.vn.NewWindow,appLink:m,svgSize:D.S.Small,className:"d-inline-block",customSize:!0})),e.shareLink&&r.createElement(B.e,{shareLink:e.shareLink,classroomName:null===(o=e.classroom)||void 0===o?void 0:o.name}),r.createElement("div",{className:"d-flex gap-2"},r.createElement(v.h,{svgName:I.vn.Share,className:"btn btn-outline-dark",appLink:{application:_.O.SHARE_V2,action:V.e.ShareV2.LINK,args:[null===(c=e.sharedObject)||void 0===c?void 0:c.id],params:{entityType:null===(l=e.sharedObject)||void 0===l?void 0:l.type,shareId:null===(s=e.shareLink)||void 0===s?void 0:s.shareId}}},"Share a link or embed"),r.createElement(v.h,{svgName:I.vn.Download,className:"btn btn-outline-dark",appLink:{application:_.O.INSIGHTS,action:V.e.Insights.QR_CODE,params:{value:p}}},"QR code"))),r.createElement("div",{className:"flex-grow-1"}),e.pinCode&&r.createElement("div",{className:"border p-3 rounded-3 d-flex flex-column align-items-center bg-white"},r.createElement("p",null,"Go to ",r.createElement("a",{href:"https://staging.clickview.net/pin",target:"_blank",className:"text-info"},"staging.clickview.net/pin")," and enter PIN:"),r.createElement("div",{className:"d-flex align-items-center"},r.createElement("h4",{className:"mb-0 pb-0 me-1"},null===(u=e.pinCode)||void 0===u?void 0:u.code),r.createElement(L.CopyToClipboard,{text:null===(d=e.pinCode)||void 0===d?void 0:d.code},r.createElement(v.h,{svgName:I.vn.Copy,className:"btn"})),r.createElement(v.h,{svgName:I.vn.NewWindow,onClick:function(){console.log("Expanding code..")},className:"btn"}))))))}var G=n(53936),W=n(10447),q=n(93975),H=n(91574),J=n(81969);function Q(e){return Q="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Q(e)}function K(e){return function(e){if(Array.isArray(e))return Y(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||$(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.")}()}function $(e,t){if(e){if("string"==typeof e)return Y(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Y(e,t):void 0}}function Y(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function Z(e){var t,n,L,A,R,M,D,F,V,_,z,B,Y,Z,X,ee,te,ne,re,ae=(ne=(0,i.D)(P.y.ANONYMISE_USERS),re=1,function(e){if(Array.isArray(e))return e}(ne)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,i,o,c=[],l=!0,s=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=i.call(n)).done)&&(c.push(r.value),c.length!==t);l=!0);}catch(e){s=!0,a=e}finally{try{if(!l&&null!=n.return&&(o=n.return(),Object(o)!==o))return}finally{if(s)throw a}}return c}}(ne,re)||$(ne,re)||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],ie=o.a.useGetFetch(),oe=o.a.useBasicFetch(g.L.config()),ce=o.a.useBasicFetch(e.shareId&&H.o.getShareLink(e.shareId)),le=o.a.useBasicFetch(e.shareId&&H.o.getPincodeByShareId(e.shareId)),se=J.R.getClassroomId(ce.data),ue=o.a.useBasicFetch(se&&T.F.getClassroom(se)),de=(0,x.r)(null),pe=de.hasShareFlowV2,me=de.publicInteractiveAttempts,ve=(0,j.T)().hasPermissions,fe=[f.E.Video,f.E.Clip,f.E.Interactive].includes(e.typeId)&&N.M.getVideoRequest(e.objectId,e.typeId),ye=o.a.useBasicFetch(fe),ge=o.a.useBasicFetch(w.N.currentUser()),be=e.typeId===f.E.Series&&h.J.series(e.objectId),he=o.a.useBasicFetch(be),we=e.typeId===f.E.Playlist&&b.C.getPlaylist(e.objectId),Ee=o.a.useBasicFetch(we),ke=u.B.getAudienceAppLinkParams(),Oe=u.B.getDateRangeAppLinkParams(),Se=Object.assign(Object.assign(Object.assign({},ke),Oe),{shareId:e.shareId}),je=Object.assign(Object.assign({},(0,p.wO)((0,p.Hb)(),Oe)),(0,d.K)(ke)),Ce=ge.data&&E.u.individualEngagement(e.objectId,je,null===(t=ge.data)||void 0===t?void 0:t.id,me),xe=o.a.useBasicFetch(Ce);(0,a.W)((function(){return ie(Ce)}),5e3);var Ie=(null===(L=null===(n=xe.data)||void 0===n?void 0:n.data)||void 0===L?void 0:L.map((function(e){return e.userId})).filter(Boolean))||[],Ne=(0,s.U)(Ie),Pe=Ne.users,Te=Ne.isLoading,Le=(0,l.Y)(e.shareId),Ae=function(e,t,n){var r,a,i,c,l,s,u=o.a.useGetFetch(),d=(null===(a=null===(r=null==t?void 0:t.recipients)||void 0===r?void 0:r[0])||void 0===a?void 0:a.recipientTypeId)===f.E.Classroom&&t.recipients[0].recipientId,p=function(e){return d&&T.F.getClassroomStudents(d,e)},m=(0,k.i)(p,(function(e){return u(p(e))})),v=null!==(c=null===(i=null==n?void 0:n.data)||void 0===i?void 0:i.reduce((function(e,t){return Object.assign(Object.assign({},e),function(e,t,n){return(t=function(e){var t=function(e){if("object"!=Q(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Q(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Q(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}({},t.userId,t))}),{}))&&void 0!==c?c:{},y=(null===(l=m.items)||void 0===l?void 0:l.length)?m.items.map((function(t){return v[t.id]?null:{customerId:null==e?void 0:e.customerId,engagementRate:0,heatMap:[],userId:t.id,videoDuration:500,viewCount:0,videoId:null,userIds:[],sessionId:null,sessionIds:[],user:t}})).filter((function(e){return!!e})):[];return[].concat(K(null!==(s=null==n?void 0:n.data)&&void 0!==s?s:[]),K(y))}(ge.data,ce.data,xe.data);(0,S.F)(),(0,C.M)({title:null!==(D=null!==(R=null===(A=ye.data)||void 0===A?void 0:A.name)&&void 0!==R?R:null===(M=he.data)||void 0===M?void 0:M.name)&&void 0!==D?D:null===(F=Ee.data)||void 0===F?void 0:F.name}),(0,O.v)([ye,he,Ee]);var Re=!(!xe.data||Ie.length&&Te),Me=!Ae.length,De=!Re||Me;return console.log({individualEngagementLength:null===(V=xe.data)||void 0===V?void 0:V.data.length,userIdsLength:Ie.length,anonSessionsLength:Object.keys(Le).length,fakeEngagementLength:Ae.length}),r.createElement("div",{className:"px-3"},r.createElement(G.j,{video:null!==(z=null!==(_=ye.data)&&void 0!==_?_:he.data)&&void 0!==z?z:Ee.data,dateRangeAppLinkParams:Oe,tabs:e.typeId===f.E.Interactive?(0,W.kj)(e.objectId,"shareOptions",Se,pe):e.typeId===f.E.Clip?(0,W.$o)(e.objectId,"shareOptions",Se,pe):e.typeId===f.E.Video?(0,W.$6)(e.objectId,"shareOptions",Se,pe):e.typeId===f.E.Series?(0,W.lo)(e.objectId,"shareOptions",Se):e.typeId===f.E.Playlist?(0,W.W_)(e.objectId,"shareOptions",Se):void 0,hasAnalytics:ve(y.C.ViewCustomerAnalytics),analyticsWebUrl:null===(B=oe.data)||void 0===B?void 0:B.analyticsWebUrl,hasShareFlowV2:pe,shareId:e.shareId}),r.createElement(U,{sharedObject:null!==(Z=null!==(Y=ye.data)&&void 0!==Y?Y:he.data)&&void 0!==Z?Z:Ee.data,shareLink:ce.data,pinCode:le.data,classroom:ue.data}),r.createElement("div",{className:"d-flex align-items-center mt-5"},r.createElement("h3",{className:"p-0 m-0"},(null===(X=ce.data)||void 0===X?void 0:X.type)===q.y.Classroom?"All recipients":"Students who have viewed this video"),(null===(ee=ce.data)||void 0===ee?void 0:ee.type)===q.y.Classroom&&r.createElement(v.h,{svgName:I.vn.Plus,onClick:function(){return console.log("Add new student..")},className:"btn btn-outline-dark ms-auto"},"Add new student")),r.createElement("div",{className:"col-12 mt-2 mb-5"},r.createElement(c.z,{key:(0,m.u)(Object.assign(Object.assign({},ke),Oe)),engagement:Ae,users:null!=Pe?Pe:[],imageCdnUrl:null===(te=oe.data)||void 0===te?void 0:te.imageCdnUrl,anonymiseUsers:ae,border:!0,anonSessions:Le,hideWhenEmpty:!1,theme:{header:De?"border-0":"border-bottom",table:De?"bg-white rounded px-0 rounded-bottom-0":"bg-white rounded px-0"}}),De&&r.createElement("div",{style:{minHeight:400},className:"border border-top-0 rounded-1 rounded-top-0 pt-5 pb-5 text-center"},r.createElement("h4",null,"Waiting for students to view..."))))}},4315:(e,t,n)=>{"use strict";n.d(t,{e:()=>p});var r=n(32735),a=n(12528),i=n(83914),o=n(4594),c=n(35223),l=n(42272),s=n(93975);function u(e){return u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},u(e)}function d(e,t,n){return(t=function(e){var t=function(e){if("object"!=u(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=u(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==u(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function p(e){var t,n,c,u,d;return r.createElement("div",{className:"d-flex align-items-center"},r.createElement("div",{className:"d-flex align-items-center justify-content-center"},r.createElement("div",null,r.createElement(a.f,{svgName:m[e.shareLink.type],variant:v[e.shareLink.type],textVariant:"white",svgWrapperClassName:null!==(t=e.svgWrapperClassName)&&void 0!==t?t:"p-1",svgSize:null!==(n=e.svgSize)&&void 0!==n?n:i.S.Standard})),r.createElement("div",{className:"d-flex flex-column ms-2"},r.createElement("label",{className:"m-0"},(u=(c=e).shareLink,d=c.classroomName,u.type===s.y.Classroom&&d?d:f[u.type])),!e.hideSubtitle&&r.createElement("span",{className:"text-secondary"},function(e){var t,n,r,a,i=e.shareLink;if(i.type===s.y.Classroom){var c=null!==(n=null===(t=i.recipients)||void 0===t?void 0:t.filter((function(e){return e.recipientTypeId===o.E.ClassroomGroup})).length)&&void 0!==n?n:0,u=null!==(a=null===(r=i.recipients)||void 0===r?void 0:r.filter((function(e){return e.recipientTypeId===o.E.User})).length)&&void 0!==a?a:0;return c&&u?"".concat(c," ").concat(y(c,"group","groups"),", ").concat(u," ").concat(y(u,"student","students")," can view"):c?"".concat(c," ").concat(y(c,"group","groups")," can view"):u?"".concat(u," ").concat(y(u,"student","students")," can view"):"All students in classroom can view"}if(i.type===s.y.Open)return"Students watch using a PIN code";if(i.type===s.y.Link){if([l.e.JustMySchool,l.e.Protected].includes(i.privacy))return"Respect ratings and restrictions";if(i.privacy===l.e.JustMySchoolOverrideRestriction)return"Anyone in your school can view";if(i.privacy===l.e.ProtectedOverrideRestriction)return"Anyone signed into ClickView can view";if(i.privacy===l.e.Public)return"Anyone with a link can view";if(i.privacy===l.e.PinCode)return"Anyone with a PIN code can view"}return i.type===s.y.Live?"Live now":"Anyone signed into ClickView can view"}(e)))))}var m=d(d(d(d({},s.y.Open,c.vn.School),s.y.Link,c.vn.Link),s.y.Classroom,c.vn.Classrooms),s.y.Live,c.vn.Play),v=d(d(d(d({},s.y.Open,"blue"),s.y.Link,"black"),s.y.Classroom,"teal"),s.y.Live,"purple"),f=d(d(d(d({},s.y.Open,"Open classroom"),s.y.Link,"Link"),s.y.Classroom,"Classroom"),s.y.Live,"Live");function y(e,t,n){return 1===e?t:n}},42272:(e,t,n)=>{"use strict";var r;n.d(t,{e:()=>r}),function(e){e.Public="Public",e.PinCode="PinCode",e.PasswordProtected="PasswordProtected",e.ProtectedOverrideRestriction="ProtectedOverrideRestriction",e.JustMySchoolOverrideRestriction="JustMySchoolOverrideRestriction",e.Protected="Protected",e.JustMySchool="JustMySchool",e.Direct="Direct"}(r||(r={}))},93975:(e,t,n)=>{"use strict";var r;n.d(t,{y:()=>r}),function(e){e.Link="Link",e.Classroom="Classroom",e.Open="Open",e.Live="Live"}(r||(r={}))},91574:(e,t,n)=>{"use strict";n.d(t,{o:()=>o});var r=n(99940),a=n(97395),i={namespace:"share-v2"},o={createShareLink:function(e,t,n,a){return{url:"/api/share/v2/shares",key:"create:share-v2:link",type:r.k.POST,data:e,normalizeOptions:i,invalidationKeys:["share:link:object:".concat(e.objectId),"privacy:".concat(e.objectId),"sent:shares","get:share-v2:shares:object"],success:t,error:n,always:a}},getShareLink:function(e,t,n,a){return{url:"/api/share/v2/shares/".concat(e),key:"get:share-v2:link:".concat(e),type:r.k.GET,normalizeOptions:i,success:t,error:n,always:a}},getSharesByObjectId:function(e,t,n,a){return{url:"/api/share/v2/shares/objects/".concat(e),key:"get:share-v2:shares:object:".concat(e),type:r.k.GET,normalizeOptions:i,success:t,error:n,always:a}},getSentShares:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0,i=arguments.length>3?arguments[3]:void 0,o={scopeId:e.scopeId,limit:e.limit||25,offset:parseInt(e.cursor)||0},c=Object.values(o).join(":");return{url:a._.urlBuilder("/api/share/v2/shares/sent",o),key:"sent:shares-v2:".concat(c),formatData:function(e){return{data:e,count:e.length,pagination:{cursors:{next:o.offset+e.length}}}},type:r.k.GET,normalize:!1,success:t,error:n,always:i}},createPincode:function(e){return{url:"/api/share/v2/shares/".concat(e,"/pincode"),key:"create:share-v2:pincode",type:r.k.POST}},getPincode:function(e){return{url:"/api/share/v2/shares/pincode?code=".concat(e),key:"get:share-v2:pincode:".concat(e)}},getPincodeByShareId:function(e){return{url:"/api/share/v2/shares/".concat(e,"/pincode"),key:"get:share-v2:".concat(e,":pincode")}}}},81969:(e,t,n)=>{"use strict";n.d(t,{R:()=>v});var r=n(23481),a=n(110),i=n(4594),o=n(49080),c=n(26361),l=n(35223),s=n(31908),u=n(42272),d=n(93975);function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var m=r.T.encloseNamespace("share.shareLinkInfo"),v={getPrivateIconAndText:function(e){var t=e.entityTypeId,n=e.privacy,r=e.hasStudentExp,a=e.entity,o=e.yearGroups;if(t===i.E.Topic||t===i.E.Series)return{icon:l.vn.VisibleOn,text:m(r?"justMySchoolTeachers":"justMySchoolDescription")};if(!Array.isArray(n))switch(n){case u.e.Public:return{icon:l.vn.VisibleOn,text:m("publicDescription")};case u.e.ProtectedOverrideRestriction:return{icon:l.vn.VisibleOn,text:m("clickViewOnly")};case u.e.Protected:return{icon:l.vn.Lock,text:v.getRespectRatingText(a,o,r)};case u.e.JustMySchoolOverrideRestriction:return{icon:l.vn.Lock,text:m(r?"justMySchoolTeachers":"justMySchoolDescription")};case u.e.JustMySchool:return{icon:l.vn.Lock,text:v.getRespectRatingText(a,o,r)};case u.e.PinCode:case u.e.PasswordProtected:return{icon:l.vn.Lock,text:m("privateDescription")};default:return{}}},getIconAndText:function(e){var t=e.linkExpireDate,n=e.isPasswordProtected,r=e.status;if(!t&&!n)return v.getPrivateIconAndText(e);if(!t)return{icon:l.vn.Lock,text:m("password")};var i=a.O.isToday(t),c=a.O.diffBetween(t,new Date,"day");if(!n){var s=i?m("expiryToday"):m("expiry",{days:c});return r===o.F.Expired&&(s=m("expired")),{icon:l.vn.Timer,text:s}}var u=i?m("passwordExpiryToday"):m("passwordExpiry",{days:c});return r===o.F.Expired&&(u=m("passwordExpired")),{icon:l.vn.Lock,text:u}},getRespectRatingText:function(e,t,n){var r;if(!e||!t)return null;if(n)return m("justMySchoolTeachers");if(!s.M.isVideoType(e))return m("collectionRating");var a=c.l.getWeightedRestriction(null===(r=e._restrictions)||void 0===r?void 0:r.value);if(a&&!a.yearGroup)return m("onlyAdmins");var i,o,l,u=s.M.getRating(e),d=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return p(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?p(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,o=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){c=!0,i=e},f:function(){try{o||null==n.return||n.return()}finally{if(c)throw i}}}}(t);try{for(d.s();!(l=d.n()).done;){var v=l.value;(!i||v.value>i.value)&&(i=v),a&&v.value<=a.yearGroup||u&&v.rating.value<u.value||(!o||v.value<o.value)&&(o=v)}}catch(e){d.e(e)}finally{d.f()}return o?1===t.length?m("clickViewOnly"):o.value===i.value?m("maxYearGroup",{yearGroup:i.name}):m("yearGroupRange",{yearGroup:o.name}):m("onlyStaff")},getClassroomId:function(e){var t,n;if(!e)return"";if(e.type!==d.y.Classroom)return"";var r=null===(t=e.recipients)||void 0===t?void 0:t.find((function(e){return e.recipientTypeId===i.E.Classroom}));if(r)return r.recipientId.toString();var a=null===(n=e.recipients)||void 0===n?void 0:n.find((function(e){return e.scopeId}));return(null==a?void 0:a.scopeId.toString())||""}}},91969:(e,t,n)=>{"use strict";var r=n(47033),a={"text/plain":"Text","text/html":"Url",default:"Text"};e.exports=function(e,t){var n,i,o,c,l,s,u=!1;t||(t={}),n=t.debug||!1;try{if(o=r(),c=document.createRange(),l=document.getSelection(),(s=document.createElement("span")).textContent=e,s.ariaHidden="true",s.style.all="unset",s.style.position="fixed",s.style.top=0,s.style.clip="rect(0, 0, 0, 0)",s.style.whiteSpace="pre",s.style.webkitUserSelect="text",s.style.MozUserSelect="text",s.style.msUserSelect="text",s.style.userSelect="text",s.addEventListener("copy",(function(r){if(r.stopPropagation(),t.format)if(r.preventDefault(),void 0===r.clipboardData){n&&console.warn("unable to use e.clipboardData"),n&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var i=a[t.format]||a.default;window.clipboardData.setData(i,e)}else r.clipboardData.clearData(),r.clipboardData.setData(t.format,e);t.onCopy&&(r.preventDefault(),t.onCopy(r.clipboardData))})),document.body.appendChild(s),c.selectNodeContents(s),l.addRange(c),!document.execCommand("copy"))throw new Error("copy command was unsuccessful");u=!0}catch(r){n&&console.error("unable to copy using execCommand: ",r),n&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),u=!0}catch(r){n&&console.error("unable to copy using clipboardData: ",r),n&&console.error("falling back to prompt"),i=function(e){var t=(/mac os x/i.test(navigator.userAgent)?"⌘":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}("message"in t?t.message:"Copy to clipboard: #{key}, Enter"),window.prompt(i,e)}}finally{l&&("function"==typeof l.removeRange?l.removeRange(c):l.removeAllRanges()),s&&document.body.removeChild(s),o()}return u}},44818:(e,t,n)=>{"use strict";function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.CopyToClipboard=void 0;var a=c(n(32735)),i=c(n(91969)),o=["text","onCopy","options","children"];function c(e){return e&&e.__esModule?e:{default:e}}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function s(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?l(Object(n),!0).forEach((function(t){v(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):l(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function d(e,t){return d=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},d(e,t)}function p(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function m(e){return m=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},m(e)}function v(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var f=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&d(e,t)}(y,e);var t,n,c,l,f=(c=y,l=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=m(c);if(l){var n=m(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return function(e,t){if(t&&("object"===r(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return p(e)}(this,e)});function y(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,y);for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return v(p(e=f.call.apply(f,[this].concat(n))),"onClick",(function(t){var n=e.props,r=n.text,o=n.onCopy,c=n.children,l=n.options,s=a.default.Children.only(c),u=(0,i.default)(r,l);o&&o(r,u),s&&s.props&&"function"==typeof s.props.onClick&&s.props.onClick(t)})),e}return t=y,(n=[{key:"render",value:function(){var e=this.props,t=(e.text,e.onCopy,e.options,e.children),n=function(e,t){if(null==e)return{};var n,r,a=function(e,t){if(null==e)return{};var n,r,a={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}(e,o),r=a.default.Children.only(t);return a.default.cloneElement(r,s(s({},n),{},{onClick:this.onClick}))}}])&&u(t.prototype,n),Object.defineProperty(t,"prototype",{writable:!1}),y}(a.default.PureComponent);t.CopyToClipboard=f,v(f,"defaultProps",{onCopy:void 0,options:void 0})},59087:(e,t,n)=>{"use strict";var r=n(44818).CopyToClipboard;r.CopyToClipboard=r,e.exports=r},47033:e=>{e.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,n=[],r=0;r<e.rangeCount;r++)n.push(e.getRangeAt(r));switch(t.tagName.toUpperCase()){case"INPUT":case"TEXTAREA":t.blur();break;default:t=null}return e.removeAllRanges(),function(){"Caret"===e.type&&e.removeAllRanges(),e.rangeCount||n.forEach((function(t){e.addRange(t)})),t&&t.focus()}}}}]);
2
+ //# sourceMappingURL=7428-6dd787bc07-lite.chunk.js.map