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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) 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/{52-9d13c36f9b-lite.chunk.js → 52-d91751eafb-lite.chunk.js} +2 -2
  10. package/dist/scripts/52-d91751eafb-lite.chunk.js.map +1 -0
  11. package/dist/scripts/581-6e9a9afba8-lite.chunk.js +2 -0
  12. package/dist/scripts/{2018-693740d206-lite.chunk.js.map → 581-6e9a9afba8-lite.chunk.js.map} +1 -1
  13. package/dist/scripts/5829-1c696c8446-lite.chunk.js +3 -0
  14. package/dist/scripts/5829-1c696c8446-lite.chunk.js.map +1 -0
  15. package/dist/scripts/6156-d9a351e53f-lite.chunk.js +2 -0
  16. package/dist/scripts/{2614-bc2fef6ae0-lite.chunk.js.map → 6156-d9a351e53f-lite.chunk.js.map} +1 -1
  17. package/dist/scripts/6629-3ea157aef8-lite.chunk.js +3 -0
  18. package/dist/scripts/6629-3ea157aef8-lite.chunk.js.map +1 -0
  19. package/dist/scripts/{bundle-f9b9be2d02.min.js → bundle-4735d8d159.min.js} +3 -3
  20. package/dist/scripts/{bundle-f9b9be2d02.min.js.map → bundle-4735d8d159.min.js.map} +1 -1
  21. package/package.json +1 -1
  22. package/dist/scripts/1386-3be201d425-lite.chunk.js +0 -2
  23. package/dist/scripts/1386-3be201d425-lite.chunk.js.map +0 -1
  24. package/dist/scripts/2018-693740d206-lite.chunk.js +0 -2
  25. package/dist/scripts/2614-bc2fef6ae0-lite.chunk.js +0 -2
  26. package/dist/scripts/2952-4f5abfce6d-lite.chunk.js.map +0 -1
  27. package/dist/scripts/52-9d13c36f9b-lite.chunk.js.map +0 -1
  28. package/dist/scripts/5829-82562ea6c2-lite.chunk.js +0 -3
  29. package/dist/scripts/5829-82562ea6c2-lite.chunk.js.map +0 -1
  30. package/dist/scripts/6629-55dc1fdb80-lite.chunk.js +0 -3
  31. package/dist/scripts/6629-55dc1fdb80-lite.chunk.js.map +0 -1
  32. /package/dist/scripts/{5829-82562ea6c2-lite.chunk.js.LICENSE.txt → 5829-1c696c8446-lite.chunk.js.LICENSE.txt} +0 -0
  33. /package/dist/scripts/{6629-55dc1fdb80-lite.chunk.js.LICENSE.txt → 6629-3ea157aef8-lite.chunk.js.LICENSE.txt} +0 -0
  34. /package/dist/scripts/{bundle-f9b9be2d02.min.js.LICENSE.txt → bundle-4735d8d159.min.js.LICENSE.txt} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"scripts/52-9d13c36f9b-lite.chunk.js","mappings":"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","sources":["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/apps/share/components/shared-object-image/shared-object-image.scss","file:///app/packages/libs/shared/src/apps/share/components/shared-object-image/SharedObjectImage.tsx","file:///app/packages/libs/shared/src/components/thumbnails/collection/title/collection-thumbnail-title.scss","file:///app/packages/libs/shared/src/components/thumbnails/collection/title/CollectionThumbnailTitle.tsx","file:///app/packages/libs/shared/src/components/thumbnails/collection/collection-thumbnail.scss","file:///app/packages/libs/shared/src/components/thumbnails/collection/CollectionThumbnail.tsx","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/libs/common/src/react/hooks/UsePolling.ts","file:///app/packages/projects/lite/src/apps/insights/components/share-options/ShareOptions.tsx","file:///app/packages/projects/lite/src/apps/insights/views/share-options/ShareOptionsView.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/utils/ShareLinkHelper.ts","file:///app/node_modules/copy-to-clipboard/index.js","file:///app/node_modules/react-copy-to-clipboard/lib/Component.js","file:///app/node_modules/react-copy-to-clipboard/lib/index.js","file:///app/node_modules/toggle-selection/index.js"],"sourcesContent":["import { 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 anonSessions = Flight.useBasicFetch<AnonSession[]>(shareId && ShareRequests.getAnonSessions(shareId));\n\n if (!anonSessions.data?.length)\n return {};\n\n return anonSessions.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}","// extracted by mini-css-extract-plugin\nexport default {\"thumbnailFallbackSvg\":\"D4JFs\",\"posterFallbackSvg\":\"bjUWl\",\"coverFallbackSvg\":\"kdLpt\",\"thumbnailContainer\":\"d3CKN\",\"insightsMask\":\"KM76U\",\"requireMarking\":\"peLH7\",\"badge\":\"mVu0E\",\"bar\":\"zO3MS\",\"a\":\"K1jW5\",\"expandBar\":\"YITJl\",\"b\":\"tCpLF\",\"c\":\"lC0cq\"};","import React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { LocationContext, UserAction } from 'libs/analytics/interfaces';\n\nimport { ShareViewHelper } from 'libs/shared/apps/share/views/share/ShareViewHelper';\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { BaseImage } from 'libs/shared/components/image/BaseImage';\nimport { ImageFallback, ImageFallbackType } from 'libs/shared/components/image/ImageFallback';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { CollectionThumbnail } from 'libs/shared/components/thumbnails/collection/CollectionThumbnail';\nimport { VideoThumbnail } from 'libs/shared/components/thumbnails/video/VideoThumbnail';\nimport { BG_COLOUR_CLASS_NAMES } from 'libs/shared/constants/ColourClassNames';\nimport { ImageSize, ImageType } from 'libs/shared/enums/Images';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { ThumbnailTextPosition } from 'libs/shared/enums/ThumbnailTextPosition';\nimport { BaseObject, Image, Playlist, Series } from 'libs/shared/interfaces';\nimport { getBgColorClass } from 'libs/shared/utils/getBgColorClass';\nimport { ImageHelper, ImageOptions } from 'libs/shared/utils/ImageHelper';\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\n\nimport styles from './shared-object-image.scss';\n\nconst namespace = 'shared.sharedObjectImage';\n\nconst BASE_IMAGE_CLASS_NAME = 'rounded overflow-hidden';\n\ninterface ImageProps {\n image: Image;\n imageType: ImageType;\n imageClassName?: string;\n imageFallbackComponent: JSX.Element;\n}\n\nfunction getImageProps(object: BaseObject): ImageProps {\n const image = ImageHelper.getDisplayImageFromObject(object);\n\n if (VideoHelper.isVideoType(object))\n return {\n image,\n imageType: ImageType.Thumbnails,\n imageClassName: BASE_IMAGE_CLASS_NAME,\n imageFallbackComponent: <ImageFallback type={ImageFallbackType.Video} />\n };\n\n switch (object.typeId) {\n case MasterType.Series:\n return {\n image,\n imageType: ImageType.TallPosters,\n imageClassName: BASE_IMAGE_CLASS_NAME,\n imageFallbackComponent:\n <ImageFallback type={ImageFallbackType.Series} svgContainerClassName={styles.posterFallbackSvg} />\n };\n\n case MasterType.Playlist:\n return {\n image,\n imageType: ImageType.Covers,\n imageClassName: !image?.url\n ? `${BASE_IMAGE_CLASS_NAME} ${getBgColorClass(object.name, BG_COLOUR_CLASS_NAMES)}`\n : BASE_IMAGE_CLASS_NAME,\n imageFallbackComponent: (\n <ImageFallback\n type={ImageFallbackType.Playlist}\n svgContainerClassName={image?.url ? styles.coverFallbackSvg : 'd-none'}\n extraClasses={!image?.url && 'bg-transparent'}\n />\n )\n };\n }\n}\n\nfunction InsightsMask() {\n return (\n <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`}>\n <div className='position-absolute bg-dark bg-gradient opacity-50 w-100 h-100 z-0 rounded-3'></div>\n <div className='d-flex align-items-end gap-2 h-50 z-1'>\n <div className='d-flex align-items-end h-50'>\n <div className={`${styles.bar} ${styles.a} rounded shadow`}></div>\n </div>\n <div className='d-flex align-items-end h-75'>\n <div className={`${styles.bar} ${styles.b} rounded shadow`}></div>\n </div>\n <div className='d-flex align-items-end h-100'>\n <div className={`${styles.bar} ${styles.c} rounded shadow`}></div>\n </div>\n </div>\n </div>\n );\n}\n\nfunction getImageRatio(object: BaseObject): ImageFallbackType {\n if (VideoHelper.isVideoType(object))\n return 16 / 9;\n\n if (object.typeId === MasterType.Playlist)\n return 1;\n\n if (object.typeId === MasterType.Series)\n return 9 / 16;\n}\n\nSharedObjectImage.defaultProps = {\n imageOptions: { size: ImageSize.Small }\n};\n\ninterface SharedObjectImageProps {\n object: BaseObject;\n locationContext: LocationContext;\n appLink?: Core.AppLink;\n showVideoMetadata?: boolean;\n fixedHeight?: boolean;\n requireMarking?: number;\n imageOptions?: ImageOptions;\n showInsightsMask?: boolean;\n showCollectionMask?: boolean;\n showVideoCount?: boolean;\n thumbnailSize?: 'sm' | 'md';\n}\n\nexport function SharedObjectImage(props: SharedObjectImageProps): JSX.Element {\n const ref = React.useCallback((el: HTMLDivElement) => {\n if (!el || !props.fixedHeight)\n return;\n\n el.style.width = `${el.offsetHeight * getImageRatio(props.object)}px`;\n }, []);\n\n const useVideoThumbnail = VideoHelper.isVideoType(props.object);\n\n const {\n image,\n imageType,\n imageClassName,\n imageFallbackComponent\n } = getImageProps(props.object);\n\n const metadataFlags = !props.showVideoMetadata ? {\n hideDuration: true,\n hideMask: true,\n hideRating: true,\n hideVideoTypeBadge: true\n } : {};\n\n return (\n <div className='d-flex align-items-center justify-content-center w-100 h-100'>\n <div ref={ref} className={props.fixedHeight ? 'h-100' : 'w-100'}>\n {useVideoThumbnail &&\n <div className={`${styles.thumbnailContainer} position-relative`}>\n {props.showInsightsMask && <InsightsMask />}\n <AppLink appLink={props.appLink}>\n <VideoThumbnail\n video={props.object}\n size={props.thumbnailSize}\n imageOptions={props.imageOptions}\n textPosition={ThumbnailTextPosition.Independent}\n type='cosmetic'\n {...metadataFlags}\n />\n </AppLink>\n {!!props.requireMarking && (\n <div className={`${props.showInsightsMask && styles.requireMarking} position-absolute bottom-0 end-0 z-1 m-2`}>\n <div className={`${styles.badge} d-flex align-items-center bg-light-ultramarine text-ultramarine fw-semibold rounded-pill w-fit mt-1 px-2`}>\n <Text namespace={namespace} phrase='requireMarking' options={{ smartCount: props.requireMarking }} />\n </div>\n </div>\n )}\n </div>\n }\n {!useVideoThumbnail &&\n <>\n {'videos' in (props.object as Playlist | Series) ? (\n <CollectionThumbnail\n collection={props.object}\n imageOptions={props.imageOptions}\n appLink={props.appLink}\n analyticsData={{\n id: props.object.id,\n name: props.object.name\n }}\n analyticsOptions={{\n entity: ShareViewHelper.getAnalyticsEntity(props.object.type),\n actionType: UserAction.Click,\n location: props.locationContext\n }}\n showMask={props.showCollectionMask}\n showVideoCount={props.showVideoCount}\n />\n ) : (\n <BaseImage\n data={image?.url}\n imageType={imageType}\n imageOptions={props.imageOptions}\n appLink={props.appLink}\n className={imageClassName}\n analyticsData={{\n id: props.object.id,\n name: props.object.name\n }}\n analyticsOptions={{\n entity: ShareViewHelper.getAnalyticsEntity(props.object.type),\n actionType: UserAction.Click,\n location: props.locationContext\n }}\n >\n {imageFallbackComponent}\n </BaseImage>\n )}\n </>\n }\n </div>\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"thumbnailTitle\":\"OsWjL\"};","import React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\n\nimport styles from './collection-thumbnail-title.scss';\n\ninterface BaseCollectionThumbnailTitleProps {\n title: string;\n}\n\nfunction BaseCollectionThumbnailTitle(props: BaseCollectionThumbnailTitleProps): JSX.Element {\n return (\n <h3 title={props.title} className='h6'>{props.title}</h3>\n );\n}\n\ninterface CollectionThumbnailTitleProps extends BaseCollectionThumbnailTitleProps {\n appLink: Core.AppLink;\n}\n\nexport function CollectionThumbnailTitle(props: CollectionThumbnailTitleProps) {\n if (!props.appLink) {\n return (\n <BaseCollectionThumbnailTitle {...props} />\n );\n }\n \n return (\n <AppLink appLink={props.appLink} className={`${styles.thumbnailTitle}`}>\n <BaseCollectionThumbnailTitle {...props} />\n </AppLink>\n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"badge\":\"M4zat\",\"mask\":\"r0Ztg\",\"thumbnailContainer\":\"uD9dz\"};","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { HashObject } from 'libs/common/react/interfaces';\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { AnalyticsOptions, EntityType, UserAction } from 'libs/analytics/interfaces';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { SvgContainer } from 'libs/shared/components/svg-container/SvgContainer';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { CollectionThumbnailTitle } from 'libs/shared/components/thumbnails/collection/title/CollectionThumbnailTitle';\nimport { VideoThumbnail } from 'libs/shared/components/thumbnails/video/VideoThumbnail';\nimport { TitleSubText } from 'libs/shared/components/title-sub-text/TitleSubText';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { ThumbnailTextPosition } from 'libs/shared/enums/ThumbnailTextPosition';\nimport { Playlist, Series } from 'libs/shared/interfaces';\nimport { ImageOptions } from 'libs/shared/utils/ImageHelper';\nimport { MasterTypeHelper } from 'libs/shared/utils/MasterTypeHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport styles from './collection-thumbnail.scss';\n\nconst namespace = 'shared.collectionThumbnail';\n\ntype SupportedContentType = Playlist | Series;\n\ninterface CollectionThumbnailProps {\n appLink?: Core.AppLink\n collection: SupportedContentType;\n imageOptions?: ImageOptions;\n analyticsData?: HashObject;\n analyticsOptions?: AnalyticsOptions;\n showMask?: boolean;\n showVideoCount?: boolean;\n title?: string;\n titleAppLink?: Core.AppLink;\n subText?: string;\n subTextAppLink?: Core.AppLink;\n hoverText?: string;\n}\n\nexport function CollectionThumbnail(props: CollectionThumbnailProps) {\n function getFirstVideo() {\n let collectionVideos = props.collection?.videos;\n\n if (!collectionVideos)\n return;\n\n if (!collectionVideos.count && props.collection.typeId === MasterType.Playlist) {\n const playlist = props.collection as Playlist;\n\n if (playlist.clips.count)\n collectionVideos = playlist.clips;\n\n if (playlist.interactives.count)\n collectionVideos = playlist.interactives;\n }\n\n return ArrayHelper.first(collectionVideos.data);\n }\n\n function getVideoCount() {\n let totalCount = 0;\n\n if (props.collection.videos && props.collection.videos.count) {\n totalCount += props.collection.videos.count;\n }\n\n if (props.collection.typeId === MasterType.Playlist) {\n const playlist = props.collection as Playlist;\n\n if (playlist.interactives?.count)\n totalCount += playlist.interactives.count;\n\n if (playlist.clips?.count)\n totalCount += playlist.clips.count;\n }\n\n return totalCount;\n }\n\n function getEntityType(collection: SupportedContentType) {\n if (MasterTypeHelper.isType<Playlist>(collection, MasterType.Playlist)) {\n return EntityType.Playlist;\n }\n\n if (MasterTypeHelper.isType<Series>(collection, MasterType.Series)) {\n return EntityType.Series;\n }\n }\n\n const firstVideo = getFirstVideo();\n const videoCount = getVideoCount();\n const showTexts = props.title?.length || props.subText?.length;\n\n const analyticsData = {\n id: props.collection.id.toString(),\n name: props.collection.name,\n\n ...props.analyticsData\n };\n\n const analyticsOptions = {\n actionType: UserAction.Click,\n entity: getEntityType(props.collection),\n \n ...props.analyticsOptions\n };\n\n return (\n <div>\n <div className={`position-relative ${styles.thumbnailContainer} z-1`}>\n <AppLink\n appLink={props.appLink}\n analyticsData={analyticsData}\n analyticsOptions={analyticsOptions}\n preventFocus\n >\n {props.showMask &&\n <div className={`${styles.mask} position-absolute w-100 h-100 rounded-3 bg-dark bg-gradient z-1 bg-opacity-50 pointer-events-none`}>\n <div className={`${styles.badge} d-flex align-items-center w-fit flex-grow-0 bg-dark rounded-pill ps-1 m-2`}>\n <SvgContainer svgName={cvSvgLibrary.Play} className='svg-container text-white' />\n <p className='d-inline fw-medium text-white mb-0'>\n {props.hoverText?.length ?\n <span>{props.hoverText}</span> :\n <Text namespace={namespace} phrase='playAll' />\n }\n </p>\n </div>\n </div>\n }\n\n {firstVideo &&\n <VideoThumbnail\n video={firstVideo}\n imageOptions={props.imageOptions}\n textPosition={ThumbnailTextPosition.Independent}\n type='cosmetic'\n hideMask\n hideRating\n hideDuration\n hideVideoTypeBadge\n />\n }\n\n {!firstVideo &&\n <div className='ratio ratio-16x9 bg-light rounded-3'>\n <div className='d-flex justify-content-center align-items-center'>\n <SvgContainer svgName={cvSvgLibrary.Play} className='w-33 opacity-25 text-gray-400' />\n </div>\n </div>\n }\n\n {props.showVideoCount &&\n <div className={`${styles.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`}>\n <SvgContainer svgName={cvSvgLibrary.Series} className='svg-container text-white me-1' />\n <p className='d-inline fw-semibold text-white mb-0'>\n <Text namespace={namespace} phrase='videos' options={{ count: videoCount, smartCount: videoCount }} />\n </p>\n </div>\n }\n </AppLink>\n\n </div>\n \n {showTexts &&\n <div className='mt-2 d-flex flex-column'>\n {props.subText &&\n <TitleSubText title={props.subText} appLink={props.subTextAppLink}>\n {props.subText}\n </TitleSubText>\n }\n {props.title &&\n <CollectionThumbnailTitle\n title={props.collection.name}\n appLink={props.titleAppLink}\n />\n }\n </div>\n }\n </div>\n );\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 * 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 React from 'react';\nimport { CopyToClipboard } from 'react-copy-to-clipboard';\n\nimport { AppLinkHelper } from 'libs/common/backbone/core';\n\nimport { LocationContext } from 'libs/analytics/interfaces';\n\nimport { SharedObjectImage } from 'libs/shared/apps/share/components/shared-object-image/SharedObjectImage';\nimport { IconButton } from 'libs/shared/components/icon-button/IconButton';\nimport { SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { ImageSize } from 'libs/shared/enums/Images';\nimport { BaseObject, Classroom } from 'libs/shared/interfaces';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\nimport { VideoAppLinkHelper } from 'shared/utils/VideoAppLinkHelper';\n\nimport { ShareAvatar } from 'apps/share-v2/components/ShareAvatar';\nimport { Pincode } from 'apps/share-v2/interfaces/Pincode';\nimport { ShareLink } from 'apps/share-v2/interfaces/ShareLink';\n\ninterface ShareOptionsProps {\n sharedObject?: BaseObject;\n shareLink?: ShareLink;\n pinCode?: Pincode;\n classroom?: Classroom;\n}\n\nexport function ShareOptions(props: ShareOptionsProps) {\n function onExpandCode() {\n console.log('Expanding code..');\n }\n\n const qrCodeValue = props.shareLink?.link?.shortenedUrl ?? '';\n const videoAppLink = VideoAppLinkHelper.getAppLink(props.sharedObject);\n const url = AppLinkHelper.getHref(videoAppLink);\n \n return (\n <div>\n <h3>Share information</h3>\n <div className='mb-4 bg-light-blue p-3 rounded-3'>\n <div className='d-flex gap-3'>\n { props.sharedObject && (\n <div style={{ minWidth: 220 }} className='d-flex flex-column'>\n <SharedObjectImage\n object={props.sharedObject}\n showVideoMetadata\n locationContext={LocationContext.Insights}\n imageOptions={{ size: ImageSize.Medium }}\n showCollectionMask\n showVideoCount\n appLink={videoAppLink}\n />\n </div>\n )}\n <div className='d-flex flex-column justify-content-between'>\n <div className='d-flex align-items-center'>\n <a href={url} className='cursor-pointer h6 mb-0 d-inline me-2'>{props.sharedObject?.name}</a>\n <IconButton\n svgName={cvSvgLibrary.NewWindow}\n appLink={videoAppLink}\n svgSize={SvgContainerSize.Small}\n className='d-inline-block'\n customSize\n />\n </div>\n {props.shareLink && <ShareAvatar shareLink={props.shareLink} classroomName={props.classroom?.name} />}\n <div className='d-flex gap-2'>\n <IconButton\n svgName={cvSvgLibrary.Share}\n className='btn btn-outline-dark'\n appLink={{\n application: AppChannels.SHARE_V2,\n action: Actions.ShareV2.LINK,\n args: [props.sharedObject?.id],\n params: {\n entityType: props.sharedObject?.type,\n shareId: props.shareLink?.shareId\n }\n }}\n >\n Share a link or embed\n </IconButton>\n <IconButton\n svgName={cvSvgLibrary.Download}\n className='btn btn-outline-dark'\n appLink={{\n application: AppChannels.INSIGHTS,\n action: Actions.Insights.QR_CODE,\n params: {\n value: qrCodeValue\n }\n }}\n >\n QR code\n </IconButton>\n </div>\n </div>\n\n <div className='flex-grow-1' />\n\n {props.pinCode && (\n <div className='border p-3 rounded-3 d-flex flex-column align-items-center bg-white'>\n <p>Go to <a href='https://staging.clickview.net/pin' target='_blank' className='text-info'>staging.clickview.net/pin</a> and enter PIN:</p>\n <div className='d-flex align-items-center'>\n <h4 className='mb-0 pb-0 me-1'>{props.pinCode?.code}</h4>\n <CopyToClipboard text={props.pinCode?.code}>\n <IconButton\n svgName={cvSvgLibrary.Copy}\n className='btn'\n />\n </CopyToClipboard>\n <IconButton\n svgName={cvSvgLibrary.NewWindow}\n onClick={onExpandCode}\n className='btn'\n />\n </div>\n </div>\n )}\n </div>\n </div>\n </div>\n );\n}","import React from 'react';\n\nimport { usePolling } from 'libs/common/react/hooks/UsePolling';\nimport { useViewModel } from 'libs/common/react/hooks/UseViewModel';\nimport { Flight } from 'libs/common/react/index';\n\nimport { EngagementTable } from 'libs/shared/apps/analytics/components/engagement-table/EngagementTable';\nimport { useAnonSessions } from 'libs/shared/apps/analytics/hooks/UseAnonSessions';\nimport { useChunkedUsersResponse } from 'libs/shared/apps/analytics/hooks/UseEngagementUsers';\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 { getFilterParamsKey } from 'libs/shared/apps/analytics/utils/FilterParamUtils';\nimport { IconButton } from 'libs/shared/components/icon-button/IconButton';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { PlaylistRequests } from 'libs/shared/flight-requests/PlaylistRequests';\nimport { SeriesRequests } from 'libs/shared/flight-requests/SeriesRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { VideoViewRequests } from 'libs/shared/flight-requests/VideoViewRequests';\nimport { useFetchAll } from 'libs/shared/hooks/UseFetchAll';\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, Classroom, Config, CurrentUser, Engagement, IndividualEngagementResponse, Playlist, Series, User, VideoTypes } from 'libs/shared/interfaces';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\n\nimport { ViewModelKeys } from 'shared/constants/LiteViewModels';\n\nimport { ClassroomRequests } from 'apps/classrooms/flight-requests/ClassroomRequests';\nimport { ShareOptions } from 'apps/insights/components/share-options/ShareOptions';\nimport { InsightsHeader } from 'apps/my-shares/components/insights-header/InsightsHeader';\nimport { getInsightsClipTabs, getInsightsInteractiveTabs, getInsightsPlaylistTabs, getInsightsSeriesTabs, getInsightsVideoTabs } from 'apps/my-shares/utils/InsightsAppLinkUtils';\nimport { ShareType } from 'apps/share-v2/enums/ShareType';\nimport { ShareRequests } from 'apps/share-v2/flight-requests/ShareRequests';\nimport { Pincode } from 'apps/share-v2/interfaces/Pincode';\nimport { ShareLink } from 'apps/share-v2/interfaces/ShareLink';\nimport { ShareLinkHelper } from 'apps/share-v2/utils/ShareLinkHelper';\n\ninterface ShareOptionsViewProps {\n objectId: string;\n typeId: MasterType;\n shareId?: string;\n}\n\nexport function ShareOptionsView(props: ShareOptionsViewProps) {\n const [anonymiseUsers] = useViewModel<boolean>(ViewModelKeys.ANONYMISE_USERS);\n\n const fetch = Flight.useGetFetch();\n\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const shareLink = Flight.useBasicFetch<ShareLink>(props.shareId && ShareRequests.getShareLink(props.shareId));\n const pinCode = Flight.useBasicFetch<Pincode>(props.shareId && ShareRequests.getPincodeByShareId(props.shareId));\n const classRoomId = ShareLinkHelper.getClassroomId(shareLink.data);\n const classroom = Flight.useBasicFetch<Classroom>(classRoomId && ClassroomRequests.getClassroom(classRoomId));\n\n const { hasShareFlowV2, publicInteractiveAttempts } = useSettings(null);\n const { hasPermissions } = usePermissions();\n\n const isVideo = () => [ MasterType.Video, MasterType.Clip, MasterType.Interactive ].includes(props.typeId);\n const isSeries = () => props.typeId === MasterType.Series;\n const isPlaylist = () => props.typeId === MasterType.Playlist;\n\n const videoRequest = isVideo() && VideoHelper.getVideoRequest(props.objectId, props.typeId);\n const video = Flight.useBasicFetch<VideoTypes>(videoRequest);\n\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const seriesRequest = isSeries() && SeriesRequests.series(props.objectId);\n const series = Flight.useBasicFetch<Series>(seriesRequest);\n\n const playlistRequest = isPlaylist() && PlaylistRequests.getPlaylist(props.objectId);\n const playlist = Flight.useBasicFetch<Playlist>(playlistRequest);\n\n const audienceAppLinkParams = AnalyticsFilterHelper.getAudienceAppLinkParams();\n const dateRangeAppLinkParams = AnalyticsFilterHelper.getDateRangeAppLinkParams();\n const params = {\n ...audienceAppLinkParams,\n ...dateRangeAppLinkParams,\n shareId: props.shareId\n };\n\n const requestFilter: AnalyticsRequestFilter = {\n ...getStartEndParams(getInsightsDateRangePresets(), dateRangeAppLinkParams),\n ...getAudienceParams(audienceAppLinkParams)\n };\n\n const engagementRequest = currentUser.data &&\n VideoViewRequests.individualEngagement(\n props.objectId,\n requestFilter,\n currentUser.data?.id,\n publicInteractiveAttempts\n );\n const individualEngagement = Flight.useBasicFetch<IndividualEngagementResponse>(engagementRequest);\n usePolling(() => fetch(engagementRequest), 5000);\n\n const userIds = individualEngagement.data?.data?.map(d => d.userId).filter(Boolean) || [];\n \n const { users, isLoading } = useChunkedUsersResponse(userIds);\n const anonSessions = useAnonSessions(props.shareId);\n\n const fakeEngagement = useGetFakeEngagement(currentUser.data, shareLink.data, individualEngagement.data);\n\n useLockContentWidth();\n useSetPageMetadata({ title: video.data?.name ?? series.data?.name ?? playlist.data?.name });\n useHandleObjectError([ video, series, playlist ]);\n\n const tableDataLoaded = !!individualEngagement.data && (!userIds.length || !isLoading);\n const tableRowsWillBeEmpty = !individualEngagement.data?.data.length\n || (!userIds.length && !Object.keys(anonSessions).length);\n const showTableEmptyState = !tableDataLoaded || tableRowsWillBeEmpty;\n\n function getInsightsTabs() {\n if (props.typeId === MasterType.Interactive)\n return getInsightsInteractiveTabs(props.objectId, 'shareOptions', params, hasShareFlowV2);\n\n if (props.typeId === MasterType.Clip)\n return getInsightsClipTabs(props.objectId, 'shareOptions', params, hasShareFlowV2);\n\n if (props.typeId === MasterType.Video)\n return getInsightsVideoTabs(props.objectId, 'shareOptions', params, hasShareFlowV2);\n\n if (props.typeId === MasterType.Series)\n return getInsightsSeriesTabs(props.objectId, 'shareOptions', params);\n\n if (props.typeId === MasterType.Playlist)\n return getInsightsPlaylistTabs(props.objectId, 'shareOptions', params);\n }\n\n\n return (\n <div className='px-3'>\n <InsightsHeader\n video={video.data ?? series.data ?? playlist.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 <ShareOptions\n sharedObject={video.data ?? series.data ?? playlist.data}\n shareLink={shareLink.data}\n pinCode={pinCode.data}\n classroom={classroom.data}\n />\n <div className='d-flex align-items-center mt-5'>\n <h3 className='p-0 m-0'>Students who have viewed this video</h3>\n {shareLink.data?.type === ShareType.Classroom && (\n <IconButton\n svgName={cvSvgLibrary.Plus}\n onClick={() => console.log('Add new student..')}\n className='btn btn-outline-dark ms-auto'\n >\n Add new student\n </IconButton>\n )}\n </div>\n <div className='col-12 mt-2 mb-5'>\n <EngagementTable\n key={getFilterParamsKey({ ...audienceAppLinkParams, ...dateRangeAppLinkParams })}\n engagement={fakeEngagement}\n users={users ?? []}\n imageCdnUrl={config.data?.imageCdnUrl}\n anonymiseUsers={anonymiseUsers}\n border\n anonSessions={anonSessions}\n hideWhenEmpty={false}\n theme={{\n header: showTableEmptyState ? 'border-0' : 'border-bottom',\n table: showTableEmptyState ? 'bg-white rounded px-0 rounded-bottom-0' : 'bg-white rounded px-0'\n }}\n />\n {showTableEmptyState && (\n <div style={{ minHeight: 400 }} className='border border-top-0 rounded-1 rounded-top-0 pt-5 pb-5 text-center'>\n <h4>Waiting for students to view...</h4>\n </div>\n )}\n </div>\n </div>\n );\n}\n\nfunction useGetFakeEngagement(\n currentUser: CurrentUser,\n shareLink: ShareLink,\n individualEngagement: IndividualEngagementResponse\n) {\n const fetch = Flight.useGetFetch();\n\n const classroomId = shareLink?.recipients?.[0]?.recipientTypeId === MasterType.Classroom &&\n shareLink.recipients[0].recipientId;\n\n const getClassroomRequest = (cursor: string) => classroomId\n && ClassroomRequests.getClassroomStudents(classroomId, cursor);\n const clasroomStudents = useFetchAll<User>(\n getClassroomRequest,\n cursor => fetch(getClassroomRequest(cursor))\n );\n\n const engagementMap = individualEngagement?.data?.reduce<Record<string, Engagement>>((prev, next) =>\n ({ ...prev, [next.userId]: next }), {}) ?? {};\n \n const fakeEngagement = clasroomStudents.items?.length ?\n clasroomStudents.items.map<Engagement>(user => {\n const engagement = engagementMap[user.id];\n\n if (engagement)\n return null;\n\n return {\n customerId: currentUser?.customerId,\n engagementRate: 0,\n heatMap: [],\n userId: user.id,\n videoDuration: 500,\n viewCount: 0,\n videoId: null,\n userIds: [],\n sessionId: null,\n sessionIds: [],\n user\n };\n }).filter(e => !!e)\n : [];\n\n return [ ...individualEngagement?.data ?? [], ...fakeEngagement ];\n}","import React from 'react';\n\nimport { IconCircle } from 'libs/shared/components/icon-circle/IconCircle';\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}\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='p-1'\n />\n </div>\n <div className='d-flex flex-column ms-2'>\n <label className='m-0'>{getTitle(props)}</label>\n <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 { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { DateHelper } from 'libs/common/react/utils/DateHelper';\n\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { ShareLinkStatus } from 'libs/shared/enums/ShareLinkStatus';\nimport { BaseObject, YearGroup } from 'libs/shared/interfaces';\nimport { RestrictionHelper } from 'libs/shared/utils/RestrictionHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\n\nimport { SharePrivacy } from '../enums/SharePrivacy';\nimport { ShareType } from '../enums/ShareType';\nimport { ShareLink } from '../interfaces/ShareLink';\n\nconst namespace = 'share.shareLinkInfo';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface GetIconAndTextOptions {\n linkExpireDate: string;\n isPasswordProtected: boolean;\n privacy: SharePrivacy;\n status: ShareLinkStatus;\n entityTypeId: MasterType;\n hasStudentExp: boolean;\n entity: BaseObject;\n yearGroups: YearGroup[];\n}\n\n\nexport const ShareLinkHelper = {\n getPrivateIconAndText: (options: GetIconAndTextOptions) => {\n const { entityTypeId, privacy, hasStudentExp, entity, yearGroups } = options;\n \n if (entityTypeId === MasterType.Topic || entityTypeId === MasterType.Series)\n return { icon: cvSvgLibrary.VisibleOn, text: getPhrase(hasStudentExp ? 'justMySchoolTeachers' : 'justMySchoolDescription') };\n \n /**\n * This is mainly for typescript, privacy will be an array for playlists\n * but that is handled above\n */\n if (Array.isArray(privacy))\n return;\n \n switch (privacy) {\n case SharePrivacy.Public:\n return { icon: cvSvgLibrary.VisibleOn, text: getPhrase('publicDescription') };\n case SharePrivacy.ProtectedOverrideRestriction:\n return { icon: cvSvgLibrary.VisibleOn, text: getPhrase('clickViewOnly') };\n case SharePrivacy.Protected:\n return {\n icon: cvSvgLibrary.Lock,\n text: ShareLinkHelper.getRespectRatingText(entity, yearGroups, hasStudentExp)\n };\n case SharePrivacy.JustMySchoolOverrideRestriction:\n return { icon: cvSvgLibrary.Lock, text: getPhrase(hasStudentExp ? 'justMySchoolTeachers' : 'justMySchoolDescription') };\n case SharePrivacy.JustMySchool:\n return {\n icon: cvSvgLibrary.Lock,\n text: ShareLinkHelper.getRespectRatingText(entity, yearGroups, hasStudentExp)\n };\n case SharePrivacy.PinCode:\n case SharePrivacy.PasswordProtected:\n return { icon: cvSvgLibrary.Lock, text: getPhrase('privateDescription') };\n default:\n return {};\n }\n },\n\n getIconAndText: (options: GetIconAndTextOptions) => {\n const { linkExpireDate, isPasswordProtected, status } = options;\n if (!linkExpireDate && !isPasswordProtected)\n return ShareLinkHelper.getPrivateIconAndText(options);\n \n if (!linkExpireDate)\n return { icon: cvSvgLibrary.Lock, text: getPhrase('password') };\n \n const isToday = DateHelper.isToday(linkExpireDate);\n const dayDifference = DateHelper.diffBetween(linkExpireDate, new Date(), 'day');\n \n if (!isPasswordProtected) {\n let text = isToday\n ? getPhrase('expiryToday')\n : getPhrase('expiry', { days: dayDifference });\n \n if (status === ShareLinkStatus.Expired)\n text = getPhrase('expired');\n \n return { icon: cvSvgLibrary.Timer, text };\n }\n \n let text = isToday\n ? getPhrase('passwordExpiryToday')\n : getPhrase('passwordExpiry', { days: dayDifference });\n \n if (status === ShareLinkStatus.Expired)\n text = getPhrase('passwordExpired');\n \n return { icon: cvSvgLibrary.Lock, text };\n },\n\n getRespectRatingText(video: BaseObject, yearGroups: YearGroup[], hasStudentExp: boolean) {\n if (!video || !yearGroups)\n return null;\n \n if (hasStudentExp)\n return getPhrase('justMySchoolTeachers');\n \n if (!VideoHelper.isVideoType(video))\n return getPhrase('collectionRating');\n \n const restriction = RestrictionHelper.getWeightedRestriction(video._restrictions?.value);\n \n /**\n * Restrictions without a year level are teacher restricitons, which means only admins can see it.\n */\n if (restriction && !restriction.yearGroup)\n return getPhrase('onlyAdmins');\n \n const rating = VideoHelper.getRating(video);\n \n let maxYearGroup: YearGroup;\n let minAllowedYearGroup: YearGroup;\n \n for (const yearGroup of yearGroups) {\n /**\n * If our year level is our new highest so far, save it\n */\n if (!maxYearGroup || yearGroup.value > maxYearGroup.value)\n maxYearGroup = yearGroup;\n \n /**\n * If the restriction is higher than this year level, skip it.\n */\n if (restriction && yearGroup.value <= restriction.yearGroup)\n continue;\n \n /**\n * If therating is higher than this year level's rating value, skip it.\n */\n if (rating && yearGroup.rating.value < rating.value)\n continue;\n \n /**\n * If our year level is the new lowest so far, save it\n */\n if (!minAllowedYearGroup || yearGroup.value < minAllowedYearGroup.value)\n minAllowedYearGroup = yearGroup;\n }\n \n /**\n * If no year levels are allowed, then it's staff only.\n */\n if (!minAllowedYearGroup)\n return getPhrase('onlyStaff');\n \n \n /**\n * If there's only one year level, and it's allowed, then we can just\n * say that everyone in your school can access it.\n */\n if (yearGroups.length === 1)\n return getPhrase('clickViewOnly');\n \n /**\n * We differentiate the copy if it's the highest year level or not. \n * Basically if we need to say \"X and above\" or not.\n */\n if (minAllowedYearGroup.value === maxYearGroup.value)\n return getPhrase('maxYearGroup', { yearGroup: maxYearGroup.name });\n \n return getPhrase('yearGroupRange', { yearGroup: minAllowedYearGroup.name });\n },\n\n getClassroomId(shareLink: ShareLink | undefined): string {\n if (!shareLink)\n return '';\n\n if (shareLink.type !== ShareType.Classroom)\n return '';\n\n const classroom = shareLink.recipients?.find(r => r.recipientTypeId === MasterType.Classroom);\n\n if (classroom)\n return classroom.recipientId.toString();\n\n const recipientWithScope = shareLink.recipients?.find(r => r.scopeId);\n\n return recipientWithScope?.scopeId.toString() || '';\n }\n};","\"use strict\";\n\nvar deselectCurrent = require(\"toggle-selection\");\n\nvar clipboardToIE11Formatting = {\n \"text/plain\": \"Text\",\n \"text/html\": \"Url\",\n \"default\": \"Text\"\n}\n\nvar defaultMessage = \"Copy to clipboard: #{key}, Enter\";\n\nfunction format(message) {\n var copyKey = (/mac os x/i.test(navigator.userAgent) ? \"⌘\" : \"Ctrl\") + \"+C\";\n return message.replace(/#{\\s*key\\s*}/g, copyKey);\n}\n\nfunction copy(text, options) {\n var debug,\n message,\n reselectPrevious,\n range,\n selection,\n mark,\n success = false;\n if (!options) {\n options = {};\n }\n debug = options.debug || false;\n try {\n reselectPrevious = deselectCurrent();\n\n range = document.createRange();\n selection = document.getSelection();\n\n mark = document.createElement(\"span\");\n mark.textContent = text;\n // avoid screen readers from reading out loud the text\n mark.ariaHidden = \"true\"\n // reset user styles for span element\n mark.style.all = \"unset\";\n // prevents scrolling to the end of the page\n mark.style.position = \"fixed\";\n mark.style.top = 0;\n mark.style.clip = \"rect(0, 0, 0, 0)\";\n // used to preserve spaces and line breaks\n mark.style.whiteSpace = \"pre\";\n // do not inherit user-select (it may be `none`)\n mark.style.webkitUserSelect = \"text\";\n mark.style.MozUserSelect = \"text\";\n mark.style.msUserSelect = \"text\";\n mark.style.userSelect = \"text\";\n mark.addEventListener(\"copy\", function(e) {\n e.stopPropagation();\n if (options.format) {\n e.preventDefault();\n if (typeof e.clipboardData === \"undefined\") { // IE 11\n debug && console.warn(\"unable to use e.clipboardData\");\n debug && console.warn(\"trying IE specific stuff\");\n window.clipboardData.clearData();\n var format = clipboardToIE11Formatting[options.format] || clipboardToIE11Formatting[\"default\"]\n window.clipboardData.setData(format, text);\n } else { // all other browsers\n e.clipboardData.clearData();\n e.clipboardData.setData(options.format, text);\n }\n }\n if (options.onCopy) {\n e.preventDefault();\n options.onCopy(e.clipboardData);\n }\n });\n\n document.body.appendChild(mark);\n\n range.selectNodeContents(mark);\n selection.addRange(range);\n\n var successful = document.execCommand(\"copy\");\n if (!successful) {\n throw new Error(\"copy command was unsuccessful\");\n }\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using execCommand: \", err);\n debug && console.warn(\"trying IE specific stuff\");\n try {\n window.clipboardData.setData(options.format || \"text\", text);\n options.onCopy && options.onCopy(window.clipboardData);\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using clipboardData: \", err);\n debug && console.error(\"falling back to prompt\");\n message = format(\"message\" in options ? options.message : defaultMessage);\n window.prompt(message, text);\n }\n } finally {\n if (selection) {\n if (typeof selection.removeRange == \"function\") {\n selection.removeRange(range);\n } else {\n selection.removeAllRanges();\n }\n }\n\n if (mark) {\n document.body.removeChild(mark);\n }\n reselectPrevious();\n }\n\n return success;\n}\n\nmodule.exports = copy;\n","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CopyToClipboard = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _copyToClipboard = _interopRequireDefault(require(\"copy-to-clipboard\"));\n\nvar _excluded = [\"text\", \"onCopy\", \"options\", \"children\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar CopyToClipboard = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(CopyToClipboard, _React$PureComponent);\n\n var _super = _createSuper(CopyToClipboard);\n\n function CopyToClipboard() {\n var _this;\n\n _classCallCheck(this, CopyToClipboard);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"onClick\", function (event) {\n var _this$props = _this.props,\n text = _this$props.text,\n onCopy = _this$props.onCopy,\n children = _this$props.children,\n options = _this$props.options;\n\n var elem = _react[\"default\"].Children.only(children);\n\n var result = (0, _copyToClipboard[\"default\"])(text, options);\n\n if (onCopy) {\n onCopy(text, result);\n } // Bypass onClick if it was present\n\n\n if (elem && elem.props && typeof elem.props.onClick === 'function') {\n elem.props.onClick(event);\n }\n });\n\n return _this;\n }\n\n _createClass(CopyToClipboard, [{\n key: \"render\",\n value: function render() {\n var _this$props2 = this.props,\n _text = _this$props2.text,\n _onCopy = _this$props2.onCopy,\n _options = _this$props2.options,\n children = _this$props2.children,\n props = _objectWithoutProperties(_this$props2, _excluded);\n\n var elem = _react[\"default\"].Children.only(children);\n\n return /*#__PURE__*/_react[\"default\"].cloneElement(elem, _objectSpread(_objectSpread({}, props), {}, {\n onClick: this.onClick\n }));\n }\n }]);\n\n return CopyToClipboard;\n}(_react[\"default\"].PureComponent);\n\nexports.CopyToClipboard = CopyToClipboard;\n\n_defineProperty(CopyToClipboard, \"defaultProps\", {\n onCopy: undefined,\n options: undefined\n});","\"use strict\";\n\nvar _require = require('./Component'),\n CopyToClipboard = _require.CopyToClipboard;\n\nCopyToClipboard.CopyToClipboard = CopyToClipboard;\nmodule.exports = CopyToClipboard;","\nmodule.exports = function () {\n var selection = document.getSelection();\n if (!selection.rangeCount) {\n return function () {};\n }\n var active = document.activeElement;\n\n var ranges = [];\n for (var i = 0; i < selection.rangeCount; i++) {\n ranges.push(selection.getRangeAt(i));\n }\n\n switch (active.tagName.toUpperCase()) { // .toUpperCase handles XHTML\n case 'INPUT':\n case 'TEXTAREA':\n active.blur();\n break;\n\n default:\n active = null;\n break;\n }\n\n selection.removeAllRanges();\n return function () {\n selection.type === 'Caret' &&\n selection.removeAllRanges();\n\n if (!selection.rangeCount) {\n ranges.forEach(function(range) {\n selection.addRange(range);\n });\n }\n\n active &&\n active.focus();\n };\n};\n"],"names":["useAnonSessions","shareId","anonSessions","data","length","reduce","prev","current","sessionId","useChunkedUsersResponse","usersIds","userIdChunks","usersResponse","map","chunk","users","isLoading","hasCompleted","namespace","BASE_IMAGE_CLASS_NAME","InsightsMask","className","SharedObjectImage","props","ref","el","object","fixedHeight","style","width","offsetHeight","VideoHelper","typeId","MasterType","useVideoThumbnail","image","ImageHelper","imageType","imageClassName","imageFallbackComponent","ImageFallback","type","svgContainerClassName","url","getBgColorClass","name","extraClasses","getImageProps","metadataFlags","showVideoMetadata","hideDuration","hideMask","hideRating","hideVideoTypeBadge","showInsightsMask","AppLink","appLink","VideoThumbnail","video","size","thumbnailSize","imageOptions","textPosition","ThumbnailTextPosition","requireMarking","Text","phrase","options","smartCount","CollectionThumbnail","collection","analyticsData","id","analyticsOptions","entity","ShareViewHelper","actionType","location","locationContext","showMask","showCollectionMask","showVideoCount","BaseImage","defaultProps","BaseCollectionThumbnailTitle","title","CollectionThumbnailTitle","firstVideo","collectionVideos","videos","count","playlist","clips","interactives","ArrayHelper","getFirstVideo","videoCount","totalCount","getVideoCount","showTexts","subText","toString","MasterTypeHelper","preventFocus","SvgContainer","svgName","hoverText","TitleSubText","subTextAppLink","titleAppLink","defaultErrors","notFound","forbidden","rating","yearLevel","region","privacy","badRequest","internalServerError","handleHttpError","info","customErrorMap","ignoreMap","statusCode","status","errorMap","VideoViewRequests","individualEngagement","objectId","filter","sharerId","includeAnonViews","queryParams","key","formatData","d","heatMap","normalize","aggregateEngagement","views","timeOffset","generateCacheKey","flightObjs","obj","join","useHandleObjectError","_flightObjs","customErrors","ignoreErrors","Array","isArray","useEffect","forEach","DEFAULT_POLLING_INTERVAL","ShareOptions","qrCodeValue","shareLink","link","shortenedUrl","videoAppLink","VideoAppLinkHelper","sharedObject","minWidth","href","IconButton","svgSize","S","customSize","ShareAvatar","classroomName","classroom","application","action","args","params","entityType","value","pinCode","target","code","CopyToClipboard","text","onClick","console","log","ShareOptionsView","anonymiseUsers","fetch","config","ConfigRequests","ShareRequests","classRoomId","ShareLinkHelper","ClassroomRequests","useSettings","hasShareFlowV2","publicInteractiveAttempts","hasPermissions","usePermissions","videoRequest","includes","currentUser","UserRequests","seriesRequest","SeriesRequests","series","playlistRequest","PlaylistRequests","audienceAppLinkParams","dateRangeAppLinkParams","requestFilter","engagementRequest","callback","pollingInterval","pollingTrigger","setPollingTrigger","timeoutRef","t","window","setTimeout","FunctionHelper","usePolling","userIds","userId","Boolean","fakeEngagement","classroomId","recipients","recipientTypeId","recipientId","getClassroomRequest","cursor","clasroomStudents","engagementMap","next","items","user","customerId","engagementRate","videoDuration","viewCount","videoId","sessionIds","e","useGetFakeEngagement","useLockContentWidth","useSetPageMetadata","tableDataLoaded","tableRowsWillBeEmpty","Object","keys","showTableEmptyState","InsightsHeader","tabs","hasAnalytics","PermissionName","analyticsWebUrl","ShareType","EngagementTable","engagement","imageCdnUrl","border","hideWhenEmpty","theme","header","table","minHeight","icons","variant","iconColours","textVariant","svgWrapperClassName","titles","groupCount","r","studentCount","pluralize","getSubtitle","singular","plural","SharePrivacy","normalizeOptions","createShareLink","success","error","always","invalidationKeys","getShareLink","getSharesByObjectId","getSentShares","adaptedParams","scopeId","limit","offset","parseInt","values","response","pagination","cursors","createPincode","getPincode","getPincodeByShareId","getPhrase","getPrivateIconAndText","entityTypeId","hasStudentExp","yearGroups","icon","getRespectRatingText","getIconAndText","linkExpireDate","isPasswordProtected","isToday","dayDifference","Date","days","restriction","_restrictions","yearGroup","maxYearGroup","minAllowedYearGroup","getClassroomId","find","recipientWithScope","deselectCurrent","clipboardToIE11Formatting","module","exports","debug","message","reselectPrevious","range","selection","mark","document","createRange","getSelection","createElement","textContent","ariaHidden","all","position","top","clip","whiteSpace","webkitUserSelect","MozUserSelect","msUserSelect","userSelect","addEventListener","stopPropagation","format","preventDefault","clipboardData","warn","clearData","setData","onCopy","body","appendChild","selectNodeContents","addRange","execCommand","Error","err","copyKey","test","navigator","userAgent","replace","prompt","removeRange","removeAllRanges","removeChild","_typeof","Symbol","iterator","constructor","prototype","defineProperty","_react","_interopRequireDefault","_copyToClipboard","_excluded","__esModule","ownKeys","enumerableOnly","getOwnPropertySymbols","symbols","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","i","arguments","source","_defineProperty","getOwnPropertyDescriptors","defineProperties","_defineProperties","descriptor","configurable","writable","_setPrototypeOf","o","p","setPrototypeOf","__proto__","_assertThisInitialized","self","ReferenceError","_getPrototypeOf","getPrototypeOf","_React$PureComponent","subClass","superClass","TypeError","create","_inherits","Constructor","protoProps","Derived","hasNativeReflectConstruct","_super","Reflect","construct","sham","Proxy","valueOf","call","_isNativeReflectConstruct","result","Super","NewTarget","this","_possibleConstructorReturn","_this","instance","_classCallCheck","_len","_key","concat","event","_this$props","children","elem","Children","only","_this$props2","excluded","sourceKeys","indexOf","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","_objectWithoutProperties","cloneElement","PureComponent","undefined","rangeCount","active","activeElement","ranges","getRangeAt","tagName","toUpperCase","blur","focus"],"sourceRoot":""}
@@ -1,3 +0,0 @@
1
- /*! For license information please see 5829-82562ea6c2-lite.chunk.js.LICENSE.txt */
2
- "use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[5829,6629],{18488:(e,t,n)=>{n.d(t,{o:()=>i});var r=n(99940),a=n(97395),o={namespace:"share-v2"},i={createShare:function(e,t,n,a){return{url:"/api/share/v2/shares",key:"create:share-v2",type:r.k.POST,data:e,normalizeOptions:o,invalidationKeys:["sent:shares-v2"],success:t,error:n,always:a}},updateShare:function(e,t,n,a,i){return{url:"/api/share/v2/shares/".concat(e),key:"update:share-v2:".concat(e),type:r.k.PUT,data:t,normalizeOptions:o,invalidationKeys:["share-v2:permanent-link:object","share-v2:".concat(e)],success:n,error:a,always:i}},getShare:function(e,t,n,a){return{url:"/api/share/v2/shares/".concat(e),key:"share-v2:".concat(e),bootstrapName:"share-v2:".concat(e),type:r.k.GET,normalizeOptions:o,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,o=arguments.length>3?arguments[3]:void 0,i=Object.values(e).join(":");return{url:a._.urlBuilder("/api/share/v2/shares/sent",e),key:"sent:shares-v2:".concat(i),formatData:function(t){return{data:t,count:t.length,pagination:{cursors:{next:null,previous:e.cursor}}}},type:r.k.GET,normalize:!1,success:t,error:n,always:o}},getShareLinkByObjectId:function(e){return{url:a._.urlBuilder("/api/share/v2/shares/permanent-link",{objectId:e}),key:"share-v2:permanent-link:object:".concat(e),type:r.k.POST,normalizeOptions:o}},getPrivacy:function(e){return{url:"{gateway}/v1/objects/".concat(e,"/access"),key:"privacy:".concat(e),normalize:!1}}}},79145:(e,t,n)=>{n.d(t,{I:()=>b});var r,a=n(23481),o=n(20354),i=n(49985),c=n(65858);!function(e){e.InstantFeedback="instant_feedback",e.PreventSkipping="prevent_skipping"}(r||(r={}));var s=n(18488),l=n(21750),u=n(43012),d=n(20768),m=n(5112),f=n(60011),p=n(1575),h=n(40841);function v(e){return v="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},v(e)}function y(e,t,n){return(t=function(e){var t=function(e){if("object"!=v(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=v(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==v(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var g=a.T.encloseNamespace("sharev2.utils"),b={canEmbed:function(e){return["video","interactive","clip"].includes(e)},canAddPolicies:function(e){return["video","interactive","clip"].includes(e)},getEnabledIntegrations:function(e,t){return h._.getShareIntegrations(e,t).filter((function(e){return e.enabled})).map((function(e){return e.id}))},getFetchFunctionByType:function(e){switch(e){case"video":return function(e){return o.a.useBasicFetch(p.R.video(e))};case"playlist":return function(e){return o.a.useBasicFetch(m.C.getPlaylist(e))};case"subject":return function(e,t){return o.a.useBasicFetch(l.x.classification(e,t))};case"series":return function(e){return o.a.useBasicFetch(f.J.series(e))};case"interactive":return function(e){return o.a.useBasicFetch(d.b.interactiveMetadata(e))};case"clip":return function(e){return o.a.useBasicFetch(u.e.clip(e))}}},getAnalyticsEntity:function(e){switch(e){case"playlist":return c.py.Playlist;case"subject":return c.py.Classification;case"video":return c.py.Video;case"series":return c.py.Series;case"interactive":return c.py.Interactive;case"clip":return c.py.Clip}},getAnalyticsOptions:function(e){return{entity:b.getAnalyticsEntity(e),location:c.LZ.Popup,workflowPhase:c.eu.Complete}},updateShareLink:function(e,t,n,r,a,l,u,d){o.a.fetch(e,s.o.updateShare(r.shareId,a,(function(e){i.k.logUserAction(Object.assign(Object.assign({},e),{objectName:t.name}),i.k.mergeOptions(b.getAnalyticsOptions(n),{actionType:c.Vw.Edit,entity:c.py.ShareLink,eventVersion:c.eq.V3})),u&&u(e),l.success(g("editSuccess",{name:t.name,escapeText:!0}))}),(function(){d&&d(),l.error(g("editError",{name:t.name,escapeText:!0}))})))},getShareSettingsInitialValues:function(e,t){var n={preventSkipping:(null==t?void 0:t.preventScrubbing)||!1,instantFeedback:(null==t?void 0:t.immediateFeedback)||!1},a=y(y({},r.InstantFeedback,"instantFeedback"),r.PreventSkipping,"preventSkipping");return e.options.reduce((function(e,t){return Object.keys(a).includes(t.option)?("True"===t.value?e[a[t.option]]=!0:"False"===t.value&&(e[a[t.option]]=!1),e):e}),n)}}},9806:(e,t,n)=>{n.d(t,{k:()=>k});var r=n(32735),a=n(65858),o=n(64249),i=n(15611),c=n(7432),s=n(11834),l=n(83345),u=n(56754),d=n(86348),m=n(7733),f=n(54610),p=n(4594),h=n(68626),v=n(9085),y=n(67453),g=n(31908);const b={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 E="shared.sharedObjectImage",S="rounded overflow-hidden";function w(){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(b.bar," ").concat(b.a," rounded shadow")})),r.createElement("div",{className:"d-flex align-items-end h-75"},r.createElement("div",{className:"".concat(b.bar," ").concat(b.b," rounded shadow")})),r.createElement("div",{className:"d-flex align-items-end h-100"},r.createElement("div",{className:"".concat(b.bar," ").concat(b.c," rounded shadow")}))))}function k(e){var t=r.useCallback((function(t){var n;t&&e.fixedHeight&&(t.style.width="".concat(t.offsetHeight*(n=e.object,g.M.isVideoType(n)?16/9:n.typeId===p.E.Playlist?1:n.typeId===p.E.Series?9/16:void 0),"px"))}),[]),n=g.M.isVideoType(e.object),k=function(e){var t=y.j.getDisplayImageFromObject(e);if(g.M.isVideoType(e))return{image:t,imageType:f.__.Thumbnails,imageClassName:S,imageFallbackComponent:r.createElement(s.oy,{type:s.mS.Video})};switch(e.typeId){case p.E.Series:return{image:t,imageType:f.__.TallPosters,imageClassName:S,imageFallbackComponent:r.createElement(s.oy,{type:s.mS.Series,svgContainerClassName:b.posterFallbackSvg})};case p.E.Playlist:return{image:t,imageType:f.__.Covers,imageClassName:(null==t?void 0:t.url)?S:"".concat(S," ").concat((0,v.x)(e.name,m.o)),imageFallbackComponent:r.createElement(s.oy,{type:s.mS.Playlist,svgContainerClassName:(null==t?void 0:t.url)?b.coverFallbackSvg:"d-none",extraClasses:!(null==t?void 0:t.url)&&"bg-transparent"})}}}(e.object),x=k.image,C=k.imageType,N=k.imageClassName,I=k.imageFallbackComponent,O=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(b.thumbnailContainer," position-relative")},e.showInsightsMask&&r.createElement(w,null),r.createElement(i.F,{appLink:e.appLink},r.createElement(d.u,Object.assign({video:e.object,size:e.thumbnailSize,imageOptions:e.imageOptions,textPosition:h.z.Independent,type:"cosmetic"},O))),!!e.requireMarking&&r.createElement("div",{className:"".concat(e.showInsightsMask&&b.requireMarking," position-absolute bottom-0 end-0 z-1 m-2")},r.createElement("div",{className:"".concat(b.badge," d-flex align-items-center bg-light-ultramarine text-ultramarine fw-semibold rounded-pill w-fit mt-1 px-2")},r.createElement(l.x,{namespace:E,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:o.I.getAnalyticsEntity(e.object.type),actionType:a.Vw.Click,location:e.locationContext},showMask:e.showCollectionMask,showVideoCount:e.showVideoCount}):r.createElement(c.Z,{data:null==x?void 0:x.url,imageType:C,imageOptions:e.imageOptions,appLink:e.appLink,className:N,analyticsData:{id:e.object.id,name:e.object.name},analyticsOptions:{entity:o.I.getAnalyticsEntity(e.object.type),actionType:a.Vw.Click,location:e.locationContext}},I))))}k.defaultProps={imageOptions:{size:f.h2.Small}}},56754:(e,t,n)=>{n.d(t,{I:()=>E});var r=n(32735),a=n(75896),o=n(65858),i=n(15611),c=n(83914),s=n(83345);const l={thumbnailTitle:"OsWjL"};function u(e){return r.createElement("h3",{title:e.title,className:"h6"},e.title)}function d(e){return e.appLink?r.createElement(i.F,{appLink:e.appLink,className:"".concat(l.thumbnailTitle)},r.createElement(u,Object.assign({},e))):r.createElement(u,Object.assign({},e))}var m=n(86348),f=n(62335),p=n(4594),h=n(68626),v=n(45778),y=n(35223);const g={badge:"M4zat",mask:"r0Ztg",thumbnailContainer:"uD9dz"};var b="shared.collectionThumbnail";function E(e){var t,n,l,u,E=function(){var t,n=null===(t=e.collection)||void 0===t?void 0:t.videos;if(n){if(!n.count&&e.collection.typeId===p.E.Playlist){var r=e.collection;r.clips.count&&(n=r.clips),r.interactives.count&&(n=r.interactives)}return a.m.first(n.data)}}(),S=function(){var t,n,r=0;if(e.collection.videos&&e.collection.videos.count&&(r+=e.collection.videos.count),e.collection.typeId===p.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}(),w=(null===(t=e.title)||void 0===t?void 0:t.length)||(null===(n=e.subText)||void 0===n?void 0:n.length),k=Object.assign({id:e.collection.id.toString(),name:e.collection.name},e.analyticsData),x=Object.assign({actionType:o.Vw.Click,entity:(u=e.collection,v.G.isType(u,p.E.Playlist)?o.py.Playlist:v.G.isType(u,p.E.Series)?o.py.Series:void 0)},e.analyticsOptions);return r.createElement("div",null,r.createElement("div",{className:"position-relative ".concat(g.thumbnailContainer," z-1")},r.createElement(i.F,{appLink:e.appLink,analyticsData:k,analyticsOptions:x,preventFocus:!0},e.showMask&&r.createElement("div",{className:"".concat(g.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(g.badge," d-flex align-items-center w-fit flex-grow-0 bg-dark rounded-pill ps-1 m-2")},r.createElement(c.x,{svgName:y.vn.Play,className:"svg-container text-white"}),r.createElement("p",{className:"d-inline fw-medium text-white mb-0"},(null===(l=e.hoverText)||void 0===l?void 0:l.length)?r.createElement("span",null,e.hoverText):r.createElement(s.x,{namespace:b,phrase:"playAll"})))),E&&r.createElement(m.u,{video:E,imageOptions:e.imageOptions,textPosition:h.z.Independent,type:"cosmetic",hideMask:!0,hideRating:!0,hideDuration:!0,hideVideoTypeBadge:!0}),!E&&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:y.vn.Play,className:"w-33 opacity-25 text-gray-400"}))),e.showVideoCount&&r.createElement("div",{className:"".concat(g.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:y.vn.Series,className:"svg-container text-white me-1"}),r.createElement("p",{className:"d-inline fw-semibold text-white mb-0"},r.createElement(s.x,{namespace:b,phrase:"videos",options:{count:S,smartCount:S}}))))),w&&r.createElement("div",{className:"mt-2 d-flex flex-column"},e.subText&&r.createElement(f.m,{title:e.subText,appLink:e.subTextAppLink},e.subText),e.title&&r.createElement(d,{title:e.collection.name,appLink:e.titleAppLink})))}},41661:(e,t,n)=>{var r;n.d(t,{D:()=>r}),function(e){e.GoogleClassroom="google-classroom",e.MicrosoftTeams="microsoft-teams",e.Vivi="vivi",e.AppleTv="apply-tv"}(r||(r={}))},40841:(e,t,n)=>{n.d(t,{_:()=>c});var r=n(23481),a=n(41661),o=n(65728),i=r.T.encloseNamespace("shared.shared-utils"),c={getShareIntegrations:function(e,t){return[{id:a.D.GoogleClassroom,name:i("googleClassroom"),enabled:e,settingName:o.E.ShareToGoogleClassroom},{id:a.D.MicrosoftTeams,name:i("msftTeams"),enabled:t,settingName:o.E.ShareToMicrosoftTeams}]}}},86995:(e,t,n)=>{n.d(t,{a:()=>f});var r=n(32735),a=n(68050),o=n(69111),i=n(42272),c=n(93975),s=n(89965);function l(e){var t=r.useId();return r.createElement("div",{className:"d-flex"},r.createElement(s.X,{id:t,onChange:e.onClick,checked:e.toggled}),r.createElement("div",{className:"d-flex flex-column"},r.createElement("label",{className:"m-0",htmlFor:""},e.title),r.createElement("p",{className:"m-0 text-secondary"},e.description)))}var u=n(82444),d=n(4315);function m(e){return"classroom"===e.type?r.createElement(u.b,{selectedClassroom:e.selectedClassroom,onChangeClassroom:e.onChangeClassroom}):"open-classroom"===e.type?r.createElement(d.e,{shareLink:{type:c.y.Open,privacy:i.e.PinCode}}):void 0}function f(e){return r.createElement("div",{className:"d-flex flex-column gap-4 ".concat(e.className)},r.createElement(m,Object.assign({},e)),r.createElement(a.Z,null,r.createElement(o.Z,{sm:12,lg:6},r.createElement(l,{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&&r.createElement(o.Z,{sm:12,lg:6},r.createElement(l,{title:"Enable instant feedback",description:"Allow students to see feedback on their answers before continuing",toggled:e.enableInstantFeedback,onClick:e.onToggleEnableInstantFeedback}))),r.createElement("div",null,r.createElement("label",null,"Add a message for your students (optional)"),r.createElement("br",null),r.createElement("textarea",{className:"form-control",placeholder:"Type a message...",value:e.message,onChange:function(t){return e.onChangeMessage(t.target.value)}})))}},82444:(e,t,n)=>{n.d(t,{b:()=>c});var r=n(32735),a=n(42272),o=n(93975),i=n(4315);function c(e){return r.createElement("div",{className:"d-flex align-items-center w-100 rounded gap-2 justify-content-between"},r.createElement("div",{className:"flex-grow-1"},r.createElement(i.e,{shareLink:{type:o.y.Classroom,privacy:a.e.Direct},classroomName:e.selectedClassroom.name})),r.createElement("div",{className:"d-flex align-items-center"},r.createElement("a",{className:"cursor-pointer text-info",onClick:e.onChangeClassroom},"Change classroom")))}},4315:(e,t,n)=>{n.d(t,{e:()=>d});var r=n(32735),a=n(12528),o=n(4594),i=n(35223),c=n(42272),s=n(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 u(e,t,n){return(t=function(e){var t=function(e){if("object"!=l(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=l(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==l(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function d(e){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:f[e.shareLink.type],textVariant:"white",svgWrapperClassName:"p-1"})),r.createElement("div",{className:"d-flex flex-column ms-2"},r.createElement("label",{className:"m-0"},(n=(t=e).shareLink,i=t.classroomName,n.type===s.y.Classroom&&i?i:p[n.type])),r.createElement("span",{className:"text-secondary"},function(e){var t,n,r,a,i=e.shareLink;if(i.type===s.y.Classroom){var l=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 l&&u?"".concat(l," ").concat(h(l,"group","groups"),", ").concat(u," ").concat(h(u,"student","students")," can view"):l?"".concat(l," ").concat(h(l,"group","groups")," can view"):u?"".concat(u," ").concat(h(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([c.e.JustMySchool,c.e.Protected].includes(i.privacy))return"Respect ratings and restrictions";if(i.privacy===c.e.JustMySchoolOverrideRestriction)return"Anyone in your school can view";if(i.privacy===c.e.ProtectedOverrideRestriction)return"Anyone signed into ClickView can view";if(i.privacy===c.e.Public)return"Anyone with a link can view";if(i.privacy===c.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 t,n,i}var m=u(u(u(u({},s.y.Open,i.vn.School),s.y.Link,i.vn.Link),s.y.Classroom,i.vn.Classrooms),s.y.Live,i.vn.Play),f=u(u(u(u({},s.y.Open,"blue"),s.y.Link,"black"),s.y.Classroom,"teal"),s.y.Live,"purple"),p=u(u(u(u({},s.y.Open,"Open classroom"),s.y.Link,"Link"),s.y.Classroom,"Classroom"),s.y.Live,"Live");function h(e,t,n){return 1===e?t:n}},42272:(e,t,n)=>{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)=>{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)=>{n.d(t,{o:()=>i});var r=n(99940),a=n(97395),o={namespace:"share-v2"},i={createShareLink:function(e,t,n,a){return{url:"/api/share/v2/shares",key:"create:share-v2:link",type:r.k.POST,data:e,normalizeOptions:o,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:o,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:o,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,o=arguments.length>3?arguments[3]:void 0,i={scopeId:e.scopeId,limit:e.limit||25,offset:parseInt(e.cursor)||0},c=Object.values(i).join(":");return{url:a._.urlBuilder("/api/share/v2/shares/sent",i),key:"sent:shares-v2:".concat(c),formatData:function(e){return{data:e,count:e.length,pagination:{cursors:{next:i.offset+e.length}}}},type:r.k.GET,normalize:!1,success:t,error:n,always:o}},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")}}}},93779:(e,t,n)=>{n.d(t,{t:()=>d});var r=n(20354),a=n(30439),o=n(42272),i=n(93975),c=n(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 l(){l=function(){return t};var e,t={},n=Object.prototype,r=n.hasOwnProperty,a=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",c=o.asyncIterator||"@@asyncIterator",u=o.toStringTag||"@@toStringTag";function d(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{d({},"")}catch(e){d=function(e,t,n){return e[t]=n}}function m(e,t,n,r){var o=t&&t.prototype instanceof b?t:b,i=Object.create(o.prototype),c=new P(r||[]);return a(i,"_invoke",{value:O(e,n,c)}),i}function f(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}t.wrap=m;var p="suspendedStart",h="suspendedYield",v="executing",y="completed",g={};function b(){}function E(){}function S(){}var w={};d(w,i,(function(){return this}));var k=Object.getPrototypeOf,x=k&&k(k(A([])));x&&x!==n&&r.call(x,i)&&(w=x);var C=S.prototype=b.prototype=Object.create(w);function N(e){["next","throw","return"].forEach((function(t){d(e,t,(function(e){return this._invoke(t,e)}))}))}function I(e,t){function n(a,o,i,c){var l=f(e[a],e,o);if("throw"!==l.type){var u=l.arg,d=u.value;return d&&"object"==s(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){n("next",e,i,c)}),(function(e){n("throw",e,i,c)})):t.resolve(d).then((function(e){u.value=e,i(u)}),(function(e){return n("throw",e,i,c)}))}c(l.arg)}var o;a(this,"_invoke",{value:function(e,r){function a(){return new t((function(t,a){n(e,r,t,a)}))}return o=o?o.then(a,a):a()}})}function O(t,n,r){var a=p;return function(o,i){if(a===v)throw Error("Generator is already running");if(a===y){if("throw"===o)throw i;return{value:e,done:!0}}for(r.method=o,r.arg=i;;){var c=r.delegate;if(c){var s=L(c,r);if(s){if(s===g)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(a===p)throw a=y,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);a=v;var l=f(t,n,r);if("normal"===l.type){if(a=r.done?y:h,l.arg===g)continue;return{value:l.arg,done:r.done}}"throw"===l.type&&(a=y,r.method="throw",r.arg=l.arg)}}}function L(t,n){var r=n.method,a=t.iterator[r];if(a===e)return n.delegate=null,"throw"===r&&t.iterator.return&&(n.method="return",n.arg=e,L(t,n),"throw"===n.method)||"return"!==r&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+r+"' method")),g;var o=f(a,t.iterator,n.arg);if("throw"===o.type)return n.method="throw",n.arg=o.arg,n.delegate=null,g;var i=o.arg;return i?i.done?(n[t.resultName]=i.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,g):i:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,g)}function j(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 T(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function P(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(j,this),this.reset(!0)}function A(t){if(t||""===t){var n=t[i];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var a=-1,o=function n(){for(;++a<t.length;)if(r.call(t,a))return n.value=t[a],n.done=!1,n;return n.value=e,n.done=!0,n};return o.next=o}}throw new TypeError(s(t)+" is not iterable")}return E.prototype=S,a(C,"constructor",{value:S,configurable:!0}),a(S,"constructor",{value:E,configurable:!0}),E.displayName=d(S,u,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===E||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,S):(e.__proto__=S,d(e,u,"GeneratorFunction")),e.prototype=Object.create(C),e},t.awrap=function(e){return{__await:e}},N(I.prototype),d(I.prototype,c,(function(){return this})),t.AsyncIterator=I,t.async=function(e,n,r,a,o){void 0===o&&(o=Promise);var i=new I(m(e,n,r,a),o);return t.isGeneratorFunction(n)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},N(C),d(C,u,"Generator"),d(C,i,(function(){return this})),d(C,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},t.values=A,P.prototype={constructor:P,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(T),!t)for(var n in this)"t"===n.charAt(0)&&r.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var n=this;function a(r,a){return c.type="throw",c.arg=t,n.next=r,a&&(n.method="next",n.arg=e),!!a}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],c=i.completion;if("root"===i.tryLoc)return a("end");if(i.tryLoc<=this.prev){var s=r.call(i,"catchLoc"),l=r.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return a(i.catchLoc,!0);if(this.prev<i.finallyLoc)return a(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return a(i.catchLoc,!0)}else{if(!l)throw Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return a(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&r.call(a,"finallyLoc")&&this.prev<a.finallyLoc){var o=a;break}}o&&("break"===e||"continue"===e)&&o.tryLoc<=t&&t<=o.finallyLoc&&(o=null);var i=o?o.completion:{};return i.type=e,i.arg=t,o?(this.method="next",this.next=o.finallyLoc,g):this.complete(i)},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 n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),T(n),g}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var a=r.arg;T(n)}return a}}throw Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:A(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=e),g}},t}var u=function(e,t,n,r){return new(n||(n=Promise))((function(a,o){function i(e){try{s(r.next(e))}catch(e){o(e)}}function c(e){try{s(r.throw(e))}catch(e){o(e)}}function s(e){var t;e.done?a(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,c)}s((r=r.apply(e,t||[])).next())}))};function d(e){var t,n=r.a.useBasicFetch(a.o.getPrivacy(e)),s=r.a.useGetFetchAsync(),d=null===(t=n.data)||void 0===t?void 0:t.canManageAccess;return{createShareLink:function(e){return u(this,void 0,void 0,l().mark((function t(){var r;return l().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n.data){t.next=2;break}return t.abrupt("return");case 2:return t.next=4,s(c.o.createShareLink({objectId:e.objectId,type:i.y.Link,privacy:e.privacy,optionRequest:{preventSkipping:e.preventSkipping,instantFeedback:e.instantFeedback}}));case 4:return r=t.sent,t.abrupt("return",r);case 6:case"end":return t.stop()}}),t)})))},createDirectShare:function(e){return u(this,void 0,void 0,l().mark((function t(){var r,a;return l().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n.data){t.next=2;break}return t.abrupt("return");case 2:return r=e.requireSignIn?o.e.Direct:o.e.PinCode,t.next=5,s(c.o.createShareLink({objectId:e.objectId,type:i.y.Classroom,privacy:r,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(a=t.sent,r!==o.e.PinCode){t.next=9;break}return t.next=9,s(c.o.createPincode(a.shareId));case 9:return t.abrupt("return",a);case 10:case"end":return t.stop()}}),t)})))},createOpenSession:function(e){return u(this,void 0,void 0,l().mark((function t(){var r,a;return l().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n.data){t.next=2;break}return t.abrupt("return");case 2:return r=o.e.PinCode,e.requireSignIn&&(r=e.respectRatingsAndRestrictions?d?o.e.JustMySchool:o.e.Protected:d?o.e.JustMySchoolOverrideRestriction:o.e.ProtectedOverrideRestriction),t.next=6,s(c.o.createShareLink({objectId:e.objectId,type:i.y.Open,privacy:r,optionRequest:{preventSkipping:e.preventSkipping,instantFeedback:e.instantFeedback}}));case 6:if(a=t.sent,r!==o.e.PinCode){t.next=10;break}return t.next=10,s(c.o.createPincode(a.shareId));case 10:return t.abrupt("return",a);case 11:case"end":return t.stop()}}),t)})))},canManageAccess:d,hasCompleted:n.hasCompleted}}},72951:(e,t,n)=>{n.d(t,{x:()=>o});var r=n(75896),a=n(4594),o={getFlattenedRecipients:function(e){return r.m.flatten(e.map((function(e){var t;return null!==(t=e.recipients)&&void 0!==t?t:[]})))},getClassoomIds:function(e){var t=o.getFlattenedRecipients(e).map((function(e){return e.scopeId?e.scopeId.toString():e.recipientId&&e.recipientTypeId===a.E.Classroom?e.recipientId.toString():void 0}));return r.m.uniq(t.filter((function(e){return!!e})))},getClassroomIdFromShare:function(e){var t,n=null===(t=e.recipients)||void 0===t?void 0:t[0];if(n)return n.scopeId?n.scopeId.toString():n.recipientId&&n.recipientTypeId===a.E.Classroom?n.recipientId.toString():void 0},getClassroomForShare:function(e,t){var n=o.getClassroomIdFromShare(e);if(n)return t.find((function(e){return e.id.toString()===n.toString()}))}}},35829:(e,t,n)=>{n.r(t),n.d(t,{FlowSelectorView:()=>ce});var r=n(32735),a=n(39202),o=n(20354),i=n(75896),c=n(79145),s=n(91693),l=n(9111),u=n(31949),d=n(35223),m=n(99742),f=n(14070),p=n(97291),h=n(88630),v=n(93975),y=n(91574),g=n(72951),b=n(11607);const E={optionImage:"_uLZl"};function S(e){return r.createElement("div",{className:"bg-white rounded-bottom-3 p-3 d-flex flex-column gap-3 justify-content-center align-items-center"},r.createElement("h2",{className:"h6 m-0"},e.title),r.createElement("div",{className:"d-flex justify-content-center align-items-center gap-3"},e.options.map((function(t){return r.createElement(b.L,{onClick:function(){return e.onClick(t)},className:"text-center cursor-pointer p-3 border rounded-3 user-select-none w-50",key:t.id},r.createElement("img",{src:t.image,className:"img-fluid my-3 w-75 ".concat(E.optionImage),draggable:!1}),r.createElement("h4",null,t.title),r.createElement("p",{className:"mb-0 font-size-sm"},t.description))}))))}var w=n(42648),k=n(82602),x=n(65858),C=n(9806),N=n(12528),I=n(83914),O=n(54610);const L={previousSharesList:"LZvYG",previousSharesListItem:"LEwrl"};function j(e){return r.createElement("div",{className:"d-flex flex-column mt-3 border rounded overflow-hidden ".concat(L.previousSharesList)},r.createElement(w.ZP,{autoHeight:!0,autoHeightMin:0,autoHeightMax:200},e.data.shares.reverse().map((function(t){return r.createElement(b.L,{key:t.shareId,onClick:function(){return e.onClick(t)},className:"p-3 ".concat(L.previousSharesListItem)},r.createElement("div",{className:"row"},r.createElement("div",{className:"col-1 d-flex align-items-center"},r.createElement(C.k,{locationContext:x.LZ.PlayPage,object:e.data.entity,imageOptions:{size:O.h2.Small},thumbnailSize:"sm",showVideoMetadata:!1})),r.createElement("div",{className:"col-3 d-flex align-items-center"},r.createElement("span",{className:"clamp-2 align-self-center"},e.data.entity.name)),r.createElement("div",{className:"col-3 d-flex align-items-center"},function(t){var n,a;return t.type===v.y.Classroom?r.createElement("div",{className:"d-flex flex-row gap-1 align-items-center"},r.createElement("div",null,r.createElement(N.f,{variant:"teal",textVariant:"white",svgName:d.vn.Classrooms,svgSize:I.S.Standard,svgWrapperClassName:"p-1"})),r.createElement("span",{className:"ms-1"},null!==(a=null===(n=g.x.getClassroomForShare(t,e.data.classrooms))||void 0===n?void 0:n.name)&&void 0!==a?a:"Unknown")):t.type===v.y.Open?r.createElement("div",{className:"d-flex flex-row gap-1 align-items-center"},r.createElement("div",null,r.createElement(N.f,{variant:"blue",textVariant:"white",svgName:d.vn.School,svgSize:I.S.Standard,svgWrapperClassName:"p-1"})),r.createElement("span",{className:"ms-1"},"Open classroom")):void 0}(t)),r.createElement("p",{className:"mb-0 col-2 d-flex align-items-center"},t.viewCount||0," views"),r.createElement("p",{className:"mb-0 col-2 d-flex align-items-center"},(0,k.WU)(t.dateCreated)),r.createElement("div",{className:"col-1 d-flex align-items-center"},r.createElement("a",{onClick:function(){return e.onClick(t)},className:"cursor-pointer text-info"},"View"))))}))))}var T=n(13876),P=n(39151),A=n(80130);const _={searchInput:"udDMG"};function F(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 R(e){return e.classrooms.length?r.createElement("div",{className:"d-flex flex-column gap-2"},r.createElement("h3",{className:"h6 m-0"},"My Classrooms"),r.createElement("div",null,e.classrooms.map((function(t){var n,a,o,i,c=null!==(a=null===(n=t.enrolments)||void 0===n?void 0:n.count)&&void 0!==a?a:0;return r.createElement("div",{className:"d-flex align-items-center",key:t.id,onClick:function(){return e.onClassroomSelected(t)}},r.createElement("div",{className:"d-flex align-items-center bg-light-hover px-2 py-1 w-100 rounded gap-2 cursor-pointer justify-content-between"},r.createElement("div",{className:"w-100 d-flex align-items-center gap-2"},r.createElement(A.Z.Check,{type:"radio",name:"classroom-radio",id:"classroom-radio",className:"form-check",value:t.id,onChange:function(){return e.onClassroomSelected(t)},checked:t.id===(null===(o=e.selectedClassroom)||void 0===o?void 0:o.id)}),r.createElement("div",{className:"d-flex align-items-center gap-2"},r.createElement("div",null,r.createElement(N.f,{svgName:d.vn.Classrooms,svgSize:I.S.Standard,variant:"teal",textVariant:"white",svgWrapperClassName:"p-1"})),r.createElement("div",{className:"w-100"},r.createElement("label",{className:"m-0"},null==t?void 0:t.name),r.createElement("p",{className:"m-0 text-muted font-size-sm"},c," ",c>1?"students":"student")))),(null===(i=e.selectedClassroom)||void 0===i?void 0:i.id)===t.id&&r.createElement("div",{className:"d-flex align-items-center justify-content-end w-100"},r.createElement("a",{className:"cursor-pointer text-info",onClick:e.onSelectGroupsOrStudents},"Select specific groups or students"))))})))):r.createElement("div",{className:"d-flex flex-column gap-2 justify-content-center align-items-center"},r.createElement("img",{src:m.W.EmptyStates.Search.RESULTS,width:"30%",alt:"No results found"}),r.createElement("h4",{className:"h6 m-0"},'No results found for "',e.searchQuery,'"'),r.createElement("p",{className:"mb-0"},"Contact your school administrator to assign you to a classroom or ",r.createElement("a",{className:"p-0 text-info cursor-pointer",onClick:e.onClickCreateOpenClassroom},"create an Open classroom.")))}function M(e){var t,n,a=(t=r.useState(""),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,o,i,c=[],s=!0,l=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(r=o.call(n)).done)&&(c.push(r.value),c.length!==t);s=!0);}catch(e){l=!0,a=e}finally{try{if(!s&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(l)throw a}}return c}}(t,n)||function(e,t){if(e){if("string"==typeof e)return F(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)?F(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.")}()),o=a[0],i=a[1],c=o?e.classrooms.filter((function(e){return e.name.toLowerCase().includes(o.toLowerCase())})):e.classrooms;return r.createElement("div",{className:"d-flex flex-column gap-3 ".concat(e.className," mb-3")},r.createElement("div",{className:"position-relative"},r.createElement("div",{className:"position-absolute top-50 start-0 translate-middle-y p-1"},r.createElement(I.x,{svgName:d.vn.Search,size:I.S.Standard})),r.createElement("input",{type:"text",placeholder:"Search for a classroom you teach",value:o,onChange:function(e){return i(e.target.value)},className:"form-control pe-1 py-2 border-dark ".concat(_.searchInput)})),r.createElement(R,{searchQuery:o,classrooms:c,selectedClassroom:e.selectedClassroom,onSelectGroupsOrStudents:e.onSelectGroupsOrStudents,onClassroomSelected:e.onClassroomSelected,onClickCreateOpenClassroom:e.onClickCreateOpenClassroom}))}var G=n(86995),V=n(93779),z=n(97408),D=n(89965),B=n(64818),H=n(82444);const U={avatarContainer:"CEbd9"};function q(e){return function(e){if(Array.isArray(e))return Z(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 W(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,c=[],s=!0,l=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(r=o.call(n)).done)&&(c.push(r.value),c.length!==t);s=!0);}catch(e){l=!0,a=e}finally{try{if(!s&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(l)throw a}}return c}}(e,t)||$(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 $(e,t){if(e){if("string"==typeof e)return Z(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)?Z(e,t):void 0}}function Z(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 J(e){return e.entities.length?r.createElement("div",{className:"d-flex flex-column"},e.entities.map((function(t){var n=e.selectedEntities.includes(t);return r.createElement(b.L,{key:t.id,className:"d-flex align-items-center bg-light-hover px-2 py-1 w-100 rounded gap-2 cursor-pointer justify-content-between",onClick:function(){return e.onSelectEntity(t)}},r.createElement("div",{className:"w-100 d-flex align-items-center"},r.createElement(D.X,{name:"classroom-group",id:"classroom-group",onChange:function(){return e.onSelectEntity(t)},checked:n}),r.createElement("div",{className:"d-flex align-items-center gap-2"},r.createElement("div",null,e.renderIcon?e.renderIcon(t):r.createElement(N.f,{svgName:d.vn.Group,svgSize:I.S.Standard,variant:"pink",textVariant:"white",svgWrapperClassName:"p-1"})),r.createElement("div",{className:"w-100"},e.renderTitle?e.renderTitle(t):r.createElement("label",{className:"m-0"},t.name)))))}))):r.createElement(r.Fragment,null,e.emptyState)}function Y(e){return e.length?e.map((function(e){return e.id})):[]}function K(e){var t=W(r.useState("all"),2),n=t[0],a=t[1],o=W(r.useState([]),2),i=o[0],c=o[1],l=W(r.useState([]),2),u=l[0],m=l[1],f=W(r.useState(!1),2),p=f[0],h=f[1],v=W(r.useState(!1),2),y=v[0],g=v[1],b=e.students.length,E="".concat(b," ").concat(b>1?"students":"student");return r.createElement("div",{className:"d-flex flex-column gap-3"},r.createElement(H.b,{onChangeClassroom:e.onChangeClassroom,selectedClassroom:e.classroom}),r.createElement("div",{className:"d-flex flex-column gap-3"},r.createElement("h3",{className:"h6 m-0"},"Share to ",E,":"),r.createElement("div",null,r.createElement(D.X,{id:"all",checked:"all"===n,label:"All ".concat(E),onChange:function(){a("all"),c([]),m([]),e.onChangeRecipients([])}}))),r.createElement("div",{className:"d-flex flex-column gap-2"},r.createElement("div",null,r.createElement("div",{className:"d-flex align-items-center justify-content-between"},r.createElement("h3",{className:"h6 m-0 p-0"},"Groups (",e.groups.length,")"),r.createElement(s.h,{svgName:p?d.vn.ChevronUp:d.vn.ChevronDown,onClick:function(){return h(!p)}})),p&&r.createElement(J,{entities:e.groups,selectedEntities:i,onSelectEntity:function(t){m([]);var n=q(i);i.includes(t)?n=i.filter((function(e){return e!==t})):n.push(t),n.length?a("groups"):a("all"),c(n),e.onChangeRecipients(Y(n))},emptyState:r.createElement("div",null,"No groups found.")})),r.createElement("div",null,r.createElement("div",{className:"d-flex align-items-center justify-content-between"},r.createElement("h3",{className:"h6 m-0 p-0"},"Students (",e.students.length,")"),r.createElement(s.h,{svgName:y?d.vn.ChevronUp:d.vn.ChevronDown,onClick:function(){return g(!y)}})),y&&r.createElement(J,{entities:e.students,selectedEntities:u,onSelectEntity:function(t){c([]);var n=q(u);u.includes(t)?n=u.filter((function(e){return e!==t})):n.push(t),n.length?a("students"):a("all"),m(n),e.onChangeRecipients(Y(n))},emptyState:r.createElement("div",null,"No students found."),renderTitle:function(e){return r.createElement("label",{className:"m-0"},B.l.getFullName(e))},renderIcon:function(t){var n;return r.createElement("div",{className:U.avatarContainer},r.createElement(z.q,{imageCdnUrl:e.imageCdnUrl,initials:B.l.getInitials(t.name,t.surname),imageUrl:null===(n=t.avatar)||void 0===n?void 0:n.url}))}}))))}function X(e){return X="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},X(e)}function Q(){Q=function(){return t};var e,t={},n=Object.prototype,r=n.hasOwnProperty,a=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",c=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{l({},"")}catch(e){l=function(e,t,n){return e[t]=n}}function u(e,t,n,r){var o=t&&t.prototype instanceof y?t:y,i=Object.create(o.prototype),c=new j(r||[]);return a(i,"_invoke",{value:N(e,n,c)}),i}function d(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}t.wrap=u;var m="suspendedStart",f="suspendedYield",p="executing",h="completed",v={};function y(){}function g(){}function b(){}var E={};l(E,i,(function(){return this}));var S=Object.getPrototypeOf,w=S&&S(S(T([])));w&&w!==n&&r.call(w,i)&&(E=w);var k=b.prototype=y.prototype=Object.create(E);function x(e){["next","throw","return"].forEach((function(t){l(e,t,(function(e){return this._invoke(t,e)}))}))}function C(e,t){function n(a,o,i,c){var s=d(e[a],e,o);if("throw"!==s.type){var l=s.arg,u=l.value;return u&&"object"==X(u)&&r.call(u,"__await")?t.resolve(u.__await).then((function(e){n("next",e,i,c)}),(function(e){n("throw",e,i,c)})):t.resolve(u).then((function(e){l.value=e,i(l)}),(function(e){return n("throw",e,i,c)}))}c(s.arg)}var o;a(this,"_invoke",{value:function(e,r){function a(){return new t((function(t,a){n(e,r,t,a)}))}return o=o?o.then(a,a):a()}})}function N(t,n,r){var a=m;return function(o,i){if(a===p)throw Error("Generator is already running");if(a===h){if("throw"===o)throw i;return{value:e,done:!0}}for(r.method=o,r.arg=i;;){var c=r.delegate;if(c){var s=I(c,r);if(s){if(s===v)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(a===m)throw a=h,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);a=p;var l=d(t,n,r);if("normal"===l.type){if(a=r.done?h:f,l.arg===v)continue;return{value:l.arg,done:r.done}}"throw"===l.type&&(a=h,r.method="throw",r.arg=l.arg)}}}function I(t,n){var r=n.method,a=t.iterator[r];if(a===e)return n.delegate=null,"throw"===r&&t.iterator.return&&(n.method="return",n.arg=e,I(t,n),"throw"===n.method)||"return"!==r&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+r+"' method")),v;var o=d(a,t.iterator,n.arg);if("throw"===o.type)return n.method="throw",n.arg=o.arg,n.delegate=null,v;var i=o.arg;return i?i.done?(n[t.resultName]=i.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,v):i:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,v)}function O(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 L(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function j(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(O,this),this.reset(!0)}function T(t){if(t||""===t){var n=t[i];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var a=-1,o=function n(){for(;++a<t.length;)if(r.call(t,a))return n.value=t[a],n.done=!1,n;return n.value=e,n.done=!0,n};return o.next=o}}throw new TypeError(X(t)+" is not iterable")}return g.prototype=b,a(k,"constructor",{value:b,configurable:!0}),a(b,"constructor",{value:g,configurable:!0}),g.displayName=l(b,s,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===g||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,b):(e.__proto__=b,l(e,s,"GeneratorFunction")),e.prototype=Object.create(k),e},t.awrap=function(e){return{__await:e}},x(C.prototype),l(C.prototype,c,(function(){return this})),t.AsyncIterator=C,t.async=function(e,n,r,a,o){void 0===o&&(o=Promise);var i=new C(u(e,n,r,a),o);return t.isGeneratorFunction(n)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},x(k),l(k,s,"Generator"),l(k,i,(function(){return this})),l(k,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},t.values=T,j.prototype={constructor:j,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(L),!t)for(var n in this)"t"===n.charAt(0)&&r.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var n=this;function a(r,a){return c.type="throw",c.arg=t,n.next=r,a&&(n.method="next",n.arg=e),!!a}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],c=i.completion;if("root"===i.tryLoc)return a("end");if(i.tryLoc<=this.prev){var s=r.call(i,"catchLoc"),l=r.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return a(i.catchLoc,!0);if(this.prev<i.finallyLoc)return a(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return a(i.catchLoc,!0)}else{if(!l)throw Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return a(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&r.call(a,"finallyLoc")&&this.prev<a.finallyLoc){var o=a;break}}o&&("break"===e||"continue"===e)&&o.tryLoc<=t&&t<=o.finallyLoc&&(o=null);var i=o?o.completion:{};return i.type=e,i.arg=t,o?(this.method="next",this.next=o.finallyLoc,v):this.complete(i)},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),v},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),L(n),v}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var a=r.arg;L(n)}return a}}throw Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:T(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=e),v}},t}function ee(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,c=[],s=!0,l=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(r=o.call(n)).done)&&(c.push(r.value),c.length!==t);s=!0);}catch(e){l=!0,a=e}finally{try{if(!s&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(l)throw a}}return c}}(e,t)||function(e,t){if(e){if("string"==typeof e)return te(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)?te(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 te(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 ne=function(e,t,n,r){return new(n||(n=Promise))((function(a,o){function i(e){try{s(r.next(e))}catch(e){o(e)}}function c(e){try{s(r.throw(e))}catch(e){o(e)}}function s(e){var t;e.done?a(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,c)}s((r=r.apply(e,t||[])).next())}))};function re(e){var t=ee(r.useState("select-classroom"),2),n=t[0],i=t[1],c=ee(r.useState(),2),s=c[0],d=c[1],m=ee(r.useState([]),2),v=m[0],y=m[1],g=ee(r.useState(!1),2),b=g[0],E=g[1],S=ee(r.useState(!1),2),w=S[0],k=S[1],x=ee(r.useState(""),2),C=x[0],N=x[1],I=ee(r.useState(!1),2),O=I[0],L=I[1],j=(0,V.t)(e.objectId).createDirectShare,A=o.a.useBasicFetch(u.N.currentUser()),_=o.a.useBasicFetch(A.data&&h.F.getPublishedWithStudents(A.data.id)),F=o.a.useBasicFetch(P.L.config()),R=o.a.useBasicFetch("narrow-selection"===n&&s&&h.F.getClassroomStudents(s.id)),z=o.a.useBasicFetch("narrow-selection"===n&&s&&h.F.getClassroomGroups(s.id));function D(){a.C$.trigger({application:p.O.SHARE_V2,action:f.e.ShareV2.OPEN_CLASSROOM,args:[e.objectId],params:{objectId:e.objectId,entityType:e.entityType}})}var B=!!A.data&&!!_.data&&!!F.data,H=!!z.data&&!!R.data,U="narrow-selection"===n?B&&H:B;return r.createElement(l.G,Object.assign({title:"Assign to ClickView classroom",showLoadingSpinner:!U,size:"lg",bodyClassName:"d-flex flex-column gap-3"},e),function(){var t,a,o,c,l,u;if(!B)return null;switch(n){case"select-classroom":return r.createElement(M,{classrooms:null!==(a=null===(t=_.data)||void 0===t?void 0:t.data)&&void 0!==a?a:[],selectedClassroom:s,onClassroomSelected:d,onSelectGroupsOrStudents:function(){return i("narrow-selection")},onClickCreateOpenClassroom:D});case"narrow-selection":return r.createElement(K,{imageCdnUrl:F.data.imageCdnUrl,students:null!==(c=null===(o=null==R?void 0:R.data)||void 0===o?void 0:o.data)&&void 0!==c?c:[],groups:null!==(u=null===(l=null==z?void 0:z.data)||void 0===l?void 0:l.data)&&void 0!==u?u:[],classroom:s,onChangeRecipients:function(e){return y(e)},onChangeClassroom:function(){return i("select-classroom")}});case"settings":return r.createElement(G.a,{type:"classroom",selectedClassroom:s,enableInstantFeedback:w,preventSkippingAhead:b,isInteractive:"interactive"===e.entityType,message:C,onTogglePreventSkippingAhead:function(){return E(!b)},onToggleEnableInstantFeedback:function(){return k(!w)},onChangeClassroom:function(){return i("select-classroom")},onChangeMessage:N})}}(),r.createElement(T.u,{className:"settings"===n?"justify-content-end":"justify-content-between"},"settings"!==n&&r.createElement(T.u.Submit,{variant:"link",onClick:function(){console.log("Creating a new classroom..")},text:"Create a new classroom",className:"text-info p-0"}),r.createElement("div",null,r.createElement(T.u.Cancel,{variant:"link",onClick:function(){"select-classroom"!==n?["narrow-selection","settings"].includes(n)&&i("select-classroom"):e.closePopup()},text:"Back"}),r.createElement(T.u.Submit,{variant:"dark",onClick:function(){s&&(["select-classroom","narrow-selection"].includes(n)?i("settings"):"settings"!==n||function(){ne(this,void 0,void 0,Q().mark((function t(){var n,r;return Q().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(s){t.next=2;break}return t.abrupt("return");case 2:return L(!0),t.next=5,j({objectId:e.objectId,preventShipping:b,instantFeedback:w,requireSignIn:!0,message:C,recipients:v.length?v:[null==s?void 0:s.id],scopeId:null==s?void 0:s.id});case 5:n=t.sent,r={video:f.e.Insights.VIDEO_SHARE_OPTIONS,clip:f.e.Insights.CLIP_SHARE_OPTIONS,interactive:f.e.Insights.INTERACTIVE_SHARE_OPTIONS,series:f.e.Insights.SERIES_SHARE_OPTIONS,playlist:f.e.Insights.PLAYLIST_SHARE_OPTIONS},a.C$.trigger({application:p.O.INSIGHTS,action:r[e.entityType],args:[e.objectId],params:{shareId:n.shareId}}),L(!1);case 9:case"end":return t.stop()}}),t)})))}())},text:"settings"===n?"Assign":"Next",disabled:!s,showSpinner:O}))))}var ae=n(6629);function oe(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,c=[],s=!0,l=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(r=o.call(n)).done)&&(c.push(r.value),c.length!==t);s=!0);}catch(e){l=!0,a=e}finally{try{if(!s&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(l)throw a}}return c}}(e,t)||function(e,t){if(e){if("string"==typeof e)return ie(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)?ie(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 ie(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 ce(e){var t,n,b=oe(r.useState(""),2),E=b[0],w=b[1],k=oe(r.useState(!0),2),x=k[0],C=k[1],N=o.a.useBasicFetch(y.o.getSharesByObjectId(e.objectId)),I=(null===(t=N.data)||void 0===t?void 0:t.filter((function(e){return e.type===v.y.Classroom||e.type===v.y.Open})))||[],O=o.a.useBasicFetch(u.N.currentUser()),L=c.I.getFetchFunctionByType(e.entityType)(e.objectId,null===(n=O.data)||void 0===n?void 0:n.id),T=i.m.uniq(I.map(g.x.getClassroomIdFromShare).filter((function(e){return!!e}))),P=o.a.useBasicFetch(N.hasCompleted&&h.F.getClassroomsByIds(T));if("classroom"===E)return r.createElement(re,Object.assign({},e,{closePopup:function(){return w("")}}));if("session"===E)return r.createElement(ae.SessionFlowView,Object.assign({},e,{closePopup:function(){return w("")}}));var A=[{id:"classroom",title:"Require students to sign in",description:"Select a ClickView classroom and instantly add video to your students’ feed to collect data.",image:m.W.Share.CLASSROOM_SHARE},{id:"session",title:"Students don’t need to sign in",description:"Create an open classroom. Students enter a name to access the video and data will be collected.",image:m.W.Share.OPEN_CLASSROOM}],_=!!(O.data&&L.data&&N.data&&P.data);return r.createElement(l.G,{size:"lg",title:"Assign",showLoadingSpinner:!_,closePopup:e.closePopup,contentClassName:_?"bg-transparent border-0":"",bodyClassName:"p-0 d-flex flex-column gap-3"},_?r.createElement(r.Fragment,null,r.createElement(S,{title:"How do you want your students to access the video?",options:A,onClick:function(e){return w(e.id)}}),I.length?r.createElement("div",{className:"bg-white rounded-3 p-3"},r.createElement("div",{className:"d-flex align-items-center justify-content-between"},r.createElement("h3",{className:"h6 m-0 p-0"},"Previous assignments (",I.length,")"),r.createElement(s.h,{svgName:x?d.vn.ChevronUp:d.vn.ChevronDown,onClick:function(){return C(!x)}})),x&&r.createElement(j,{data:{shares:I,classrooms:P.data,entity:L.data},onClick:function(t){var n={video:f.e.Insights.VIDEO_SHARE_OPTIONS,clip:f.e.Insights.CLIP_SHARE_OPTIONS,interactive:f.e.Insights.INTERACTIVE_SHARE_OPTIONS,series:f.e.Insights.SERIES_SHARE_OPTIONS,playlist:f.e.Insights.PLAYLIST_SHARE_OPTIONS};a.C$.trigger({application:p.O.INSIGHTS,action:n[e.entityType],args:[e.objectId],params:{shareId:t.shareId}})}})):null):null)}},6629:(e,t,n)=>{n.r(t),n.d(t,{SessionFlowView:()=>v});var r=n(32735),a=n(39202),o=n(9111),i=n(13876),c=n(14070),s=n(97291),l=n(93779),u=n(86995);function d(e){return d="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},d(e)}function m(){m=function(){return t};var e,t={},n=Object.prototype,r=n.hasOwnProperty,a=Object.defineProperty||function(e,t,n){e[t]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",c=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{l({},"")}catch(e){l=function(e,t,n){return e[t]=n}}function u(e,t,n,r){var o=t&&t.prototype instanceof b?t:b,i=Object.create(o.prototype),c=new P(r||[]);return a(i,"_invoke",{value:O(e,n,c)}),i}function f(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}t.wrap=u;var p="suspendedStart",h="suspendedYield",v="executing",y="completed",g={};function b(){}function E(){}function S(){}var w={};l(w,i,(function(){return this}));var k=Object.getPrototypeOf,x=k&&k(k(A([])));x&&x!==n&&r.call(x,i)&&(w=x);var C=S.prototype=b.prototype=Object.create(w);function N(e){["next","throw","return"].forEach((function(t){l(e,t,(function(e){return this._invoke(t,e)}))}))}function I(e,t){function n(a,o,i,c){var s=f(e[a],e,o);if("throw"!==s.type){var l=s.arg,u=l.value;return u&&"object"==d(u)&&r.call(u,"__await")?t.resolve(u.__await).then((function(e){n("next",e,i,c)}),(function(e){n("throw",e,i,c)})):t.resolve(u).then((function(e){l.value=e,i(l)}),(function(e){return n("throw",e,i,c)}))}c(s.arg)}var o;a(this,"_invoke",{value:function(e,r){function a(){return new t((function(t,a){n(e,r,t,a)}))}return o=o?o.then(a,a):a()}})}function O(t,n,r){var a=p;return function(o,i){if(a===v)throw Error("Generator is already running");if(a===y){if("throw"===o)throw i;return{value:e,done:!0}}for(r.method=o,r.arg=i;;){var c=r.delegate;if(c){var s=L(c,r);if(s){if(s===g)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(a===p)throw a=y,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);a=v;var l=f(t,n,r);if("normal"===l.type){if(a=r.done?y:h,l.arg===g)continue;return{value:l.arg,done:r.done}}"throw"===l.type&&(a=y,r.method="throw",r.arg=l.arg)}}}function L(t,n){var r=n.method,a=t.iterator[r];if(a===e)return n.delegate=null,"throw"===r&&t.iterator.return&&(n.method="return",n.arg=e,L(t,n),"throw"===n.method)||"return"!==r&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+r+"' method")),g;var o=f(a,t.iterator,n.arg);if("throw"===o.type)return n.method="throw",n.arg=o.arg,n.delegate=null,g;var i=o.arg;return i?i.done?(n[t.resultName]=i.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,g):i:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,g)}function j(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 T(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function P(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(j,this),this.reset(!0)}function A(t){if(t||""===t){var n=t[i];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var a=-1,o=function n(){for(;++a<t.length;)if(r.call(t,a))return n.value=t[a],n.done=!1,n;return n.value=e,n.done=!0,n};return o.next=o}}throw new TypeError(d(t)+" is not iterable")}return E.prototype=S,a(C,"constructor",{value:S,configurable:!0}),a(S,"constructor",{value:E,configurable:!0}),E.displayName=l(S,s,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===E||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,S):(e.__proto__=S,l(e,s,"GeneratorFunction")),e.prototype=Object.create(C),e},t.awrap=function(e){return{__await:e}},N(I.prototype),l(I.prototype,c,(function(){return this})),t.AsyncIterator=I,t.async=function(e,n,r,a,o){void 0===o&&(o=Promise);var i=new I(u(e,n,r,a),o);return t.isGeneratorFunction(n)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},N(C),l(C,s,"Generator"),l(C,i,(function(){return this})),l(C,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},t.values=A,P.prototype={constructor:P,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(T),!t)for(var n in this)"t"===n.charAt(0)&&r.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var n=this;function a(r,a){return c.type="throw",c.arg=t,n.next=r,a&&(n.method="next",n.arg=e),!!a}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],c=i.completion;if("root"===i.tryLoc)return a("end");if(i.tryLoc<=this.prev){var s=r.call(i,"catchLoc"),l=r.call(i,"finallyLoc");if(s&&l){if(this.prev<i.catchLoc)return a(i.catchLoc,!0);if(this.prev<i.finallyLoc)return a(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return a(i.catchLoc,!0)}else{if(!l)throw Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return a(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&r.call(a,"finallyLoc")&&this.prev<a.finallyLoc){var o=a;break}}o&&("break"===e||"continue"===e)&&o.tryLoc<=t&&t<=o.finallyLoc&&(o=null);var i=o?o.completion:{};return i.type=e,i.arg=t,o?(this.method="next",this.next=o.finallyLoc,g):this.complete(i)},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 n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),T(n),g}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var a=r.arg;T(n)}return a}}throw Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:A(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=e),g}},t}function f(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,c=[],s=!0,l=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(r=o.call(n)).done)&&(c.push(r.value),c.length!==t);s=!0);}catch(e){l=!0,a=e}finally{try{if(!s&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(l)throw a}}return c}}(e,t)||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)||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 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 h=function(e,t,n,r){return new(n||(n=Promise))((function(a,o){function i(e){try{s(r.next(e))}catch(e){o(e)}}function c(e){try{s(r.throw(e))}catch(e){o(e)}}function s(e){var t;e.done?a(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,c)}s((r=r.apply(e,t||[])).next())}))};function v(e){var t=(0,l.t)(e.objectId).createOpenSession,n=f(r.useState(!1),2),d=n[0],p=n[1],v=f(r.useState(!1),2),y=v[0],g=v[1],b=f(r.useState(""),2),E=b[0],S=b[1],w=f(r.useState(!1),2),k=w[0],x=w[1];return r.createElement(o.G,Object.assign({title:"Assign to an Open classroom",showLoadingSpinner:!1,size:"lg",bodyClassName:"d-flex flex-column gap-3"},e),r.createElement(u.a,{type:"open-classroom",enableInstantFeedback:y,preventSkippingAhead:d,isInteractive:"interactive"===e.entityType,message:E,onTogglePreventSkippingAhead:function(){return p(!d)},onToggleEnableInstantFeedback:function(){return g(!y)},onChangeMessage:S}),r.createElement(i.u,null,r.createElement(i.u.Cancel,{variant:"link",onClick:function(){e.closePopup()},text:"Back"}),r.createElement(i.u.Submit,{variant:"dark",onClick:function(){return h(this,void 0,void 0,m().mark((function n(){var r,o;return m().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return x(!0),n.next=3,t({instantFeedback:y,preventSkipping:d,requireSignIn:!1,respectRatingsAndRestrictions:!1,objectId:e.objectId});case 3:r=n.sent,o={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},a.C$.trigger({application:s.O.INSIGHTS,action:o[e.entityType],args:[e.objectId],params:{shareId:r.shareId}});case 6:case"end":return n.stop()}}),n)})))},showSpinner:k,text:"Assign"})))}},82602:(e,t,n)=>{n.d(t,{WU:()=>l});var r=["second","minute","hour","day","week","month","year"],a=["秒","分钟","小时","天","周","个月","年"],o={},i=function(e,t){o[e]=t},c=[60,60,24,7,365/7/12,12];function s(e){return e instanceof Date?e:!isNaN(e)||/^\d+$/.test(e)?new Date(parseInt(e)):(e=(e||"").trim().replace(/\.\d+/,"").replace(/-/,"/").replace(/-/,"/").replace(/(\d)T(\d)/,"$1 $2").replace(/Z/," UTC").replace(/([+-]\d\d):?(\d\d)/," $1$2"),new Date(e))}var l=function(e,t,n){var r=function(e,t){return(+(t?s(t):new Date)-+s(e))/1e3}(e,n&&n.relativeDate);return function(e,t){for(var n=e<0?1:0,r=e=Math.abs(e),a=0;e>=c[a]&&a<c.length;a++)e/=c[a];return(e=Math.floor(e))>(0==(a*=2)?9:1)&&(a+=1),t(e,a,r)[n].replace("%s",e.toString())}(r,function(e){return o[e]||o.en_US}(t))};i("en_US",(function(e,t){if(0===t)return["just now","right now"];var n=r[Math.floor(t/2)];return e>1&&(n+="s"),[e+" "+n+" ago","in "+e+" "+n]})),i("zh_CN",(function(e,t){if(0===t)return["刚刚","片刻后"];var n=a[~~(t/2)];return[e+" "+n+"前",e+" "+n+"后"]}))}}]);
3
- //# sourceMappingURL=5829-82562ea6c2-lite.chunk.js.map