@clickview/lite 0.67.0-rc.2 → 0.67.0-rc.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundles.json +1 -1
- package/dist/scripts/{1033-4d86251a49-lite.chunk.js → 1033-ae28a23114-lite.chunk.js} +3 -3
- package/dist/scripts/1033-ae28a23114-lite.chunk.js.map +1 -0
- package/dist/scripts/1265-1c11ef03e1-lite.chunk.js +3 -0
- package/dist/scripts/1265-1c11ef03e1-lite.chunk.js.map +1 -0
- package/dist/scripts/2302-6ed6711d59-lite.chunk.js +3 -0
- package/dist/scripts/2302-6ed6711d59-lite.chunk.js.map +1 -0
- package/dist/scripts/{5595-9427836ce1-lite.chunk.js → 5595-b40e8d1fa7-lite.chunk.js} +2 -2
- package/dist/scripts/5595-b40e8d1fa7-lite.chunk.js.map +1 -0
- package/dist/scripts/8675-8b2f552e9f-lite.chunk.js +2 -0
- package/dist/scripts/8675-8b2f552e9f-lite.chunk.js.map +1 -0
- package/dist/scripts/{bundle-729d35b93d.min.js → bundle-87ed395a6c.min.js} +3 -3
- package/dist/scripts/{bundle-729d35b93d.min.js.map → bundle-87ed395a6c.min.js.map} +1 -1
- package/package.json +1 -1
- package/dist/scripts/1033-4d86251a49-lite.chunk.js.map +0 -1
- package/dist/scripts/1265-e698bc4a88-lite.chunk.js +0 -3
- package/dist/scripts/1265-e698bc4a88-lite.chunk.js.map +0 -1
- package/dist/scripts/2302-c88b6018bc-lite.chunk.js +0 -3
- package/dist/scripts/2302-c88b6018bc-lite.chunk.js.map +0 -1
- package/dist/scripts/5595-9427836ce1-lite.chunk.js.map +0 -1
- package/dist/scripts/8675-d0e9117cea-lite.chunk.js +0 -2
- package/dist/scripts/8675-d0e9117cea-lite.chunk.js.map +0 -1
- /package/dist/scripts/{1033-4d86251a49-lite.chunk.js.LICENSE.txt → 1033-ae28a23114-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{1265-e698bc4a88-lite.chunk.js.LICENSE.txt → 1265-1c11ef03e1-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{2302-c88b6018bc-lite.chunk.js.LICENSE.txt → 2302-6ed6711d59-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{bundle-729d35b93d.min.js.LICENSE.txt → bundle-87ed395a6c.min.js.LICENSE.txt} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scripts/8675-d0e9117cea-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/components/caret/Caret.tsx","file:///app/packages/libs/shared/src/components/caret/caret.scss","file:///app/packages/libs/shared/src/components/folder-list/FolderList.tsx","file:///app/packages/libs/shared/src/components/folder-list/partial-loading/partial-folder-list.scss","file:///app/packages/libs/shared/src/components/folder-list/partial-loading/PartialFolderList.tsx","file:///app/packages/libs/shared/src/components/library-folder/library-folder.scss","file:///app/packages/libs/shared/src/components/library-folder/LibraryFolder.tsx","file:///app/packages/projects/lite/src/apps/libraries/hooks/UseFetchAllChildFolders.ts","file:///app/packages/projects/lite/src/apps/libraries/hooks/UseHandleLibraryType.ts","file:///app/packages/projects/lite/src/apps/libraries/views/library-folder/empty-state/LibraryFolderEmptyState.tsx","file:///app/packages/projects/lite/src/apps/libraries/components/library-folder-videos/LibraryFolderVideos.tsx","file:///app/packages/projects/lite/src/apps/libraries/views/library-folder/partial-loading/library-folder-partial-loading.scss","file:///app/packages/projects/lite/src/apps/libraries/views/library-folder/partial-loading/LibraryFolderPartialLoading.tsx","file:///app/packages/projects/lite/src/apps/libraries/views/library-folder/LibraryFolderView.tsx","file:///app/packages/projects/lite/src/apps/libraries/views/library-folder/LibraryFolderViewUtils.ts"],"sourcesContent":["import React from 'react';\n\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { SvgContainer } from '../svg-container/SvgContainer';\n\nimport styles from './caret.scss';\n\ntype CaretDirection = 'left' | 'right' | 'up' | 'down';\n\n\nconst getDirectionClass = (direction: CaretDirection) => {\n switch (direction) {\n case 'up':\n return styles.up;\n case 'down':\n return styles.down;\n case 'right':\n return styles.right;\n case 'left':\n return styles.left;\n }\n};\n\ninterface CaretProps {\n direction?: CaretDirection;\n className?: string;\n}\n\nCaret.defaultProps = {\n direction: 'right'\n};\n\nexport function Caret(props: CaretProps): JSX.Element {\n return (\n <SvgContainer\n svgName={cvSvgLibrary.Caret}\n className={`${getDirectionClass(props.direction)} svg-container d-inline-block ${props.className}`}\n />\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"up\":\"JAT0R\",\"down\":\"ld41u\",\"left\":\"jZTRR\",\"right\":\"HHkPe\"};","import React from 'react';\n\nimport { LocalStorageHelper } from 'libs/common/backbone/utils/LocalStorageHelper';\nimport { Core } from 'libs/common/core';\n\nimport { ActionOptions } from 'libs/shared/components/actions/Actions';\nimport { Caret } from 'libs/shared/components/caret/Caret';\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\nimport { LibraryFolder } from 'libs/shared/components/library-folder/LibraryFolder';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { useBreakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { Folder } from 'libs/shared/interfaces';\n\nconst namespace = 'libraries.folderList';\n\nconst EXPANDED_FOLDERS_KEY = 'has:expanded:library:folders';\n\nfunction useGetFolderLimit(): number {\n const breakpoints = useBreakpoints();\n\n if (breakpoints.xxl || breakpoints.xl || breakpoints.lg)\n return 6;\n\n if (breakpoints.md)\n return 4;\n\n return 3;\n}\n\ninterface FolderListProps {\n folders: Folder[];\n getAppLink: (folder: Folder) => Core.AppLink;\n expandFolders?: boolean;\n showHeading?: boolean;\n getFolderActions?: (f: Folder) => ActionOptions[];\n drag?: boolean;\n drop?: boolean;\n extraButtons?: JSX.Element;\n}\n\nFolderList.defaultProps = {\n showHeading: true\n};\n\nexport function FolderList(props: FolderListProps): JSX.Element {\n const [ _hasExpandedFolders, setHasExpandedFolders ] = React.useState(\n LocalStorageHelper.get(EXPANDED_FOLDERS_KEY) || false\n );\n\n const hasExpandedFolders = props.expandFolders || _hasExpandedFolders;\n\n const folderLimit = useGetFolderLimit();\n\n function onToggleFolder(): void {\n setHasExpandedFolders(!hasExpandedFolders);\n LocalStorageHelper.set(EXPANDED_FOLDERS_KEY, !hasExpandedFolders);\n }\n\n const displayableFolders = hasExpandedFolders ? props.folders : props.folders.slice(0, folderLimit);\n\n const canToggleCollapsedView = props.folders.length > folderLimit && !props.expandFolders;\n\n return (\n <>\n <div className='d-flex justify-content-between align-items-center'>\n {props.showHeading &&\n <DivButton\n className={`d-inline-flex align-items-center mb-2 px-2 ${!canToggleCollapsedView ? 'cursor-default' : ''}`}\n onClick={onToggleFolder}\n >\n {canToggleCollapsedView && (\n <Caret direction={hasExpandedFolders ? 'down' : 'right'} />\n )}\n <h2 className='h4 mb-0'>\n <Text namespace={namespace} phrase='folders' options={{ count: props.folders.length }} />\n </h2>\n </DivButton>\n }\n\n {!!(!hasExpandedFolders && canToggleCollapsedView) && (\n <div className='d-flex justify-content-end justify-self-end px-2'>\n <DivButton onClick={onToggleFolder} className='text-dark hover-text-underline d-inline-block'>\n <Text namespace={namespace} phrase='seeAll' options={{ count: props.folders.length }} />\n </DivButton>\n </div>\n )}\n {!!(hasExpandedFolders && canToggleCollapsedView) && (\n <div className='d-flex justify-content-end justify-self-end px-2'>\n <DivButton onClick={onToggleFolder} className='text-dark hover-text-underline d-inline-block'>\n <Text namespace={namespace} phrase='seeLess' />\n </DivButton>\n </div>\n )}\n\n {props.extraButtons ? props.extraButtons : <></>}\n </div>\n\n <div className='row mx-1'>\n {displayableFolders.map(f => (\n <div key={f.id} className='col-4 col-md-3 col-lg-2 px-1 pb-3'>\n <LibraryFolder\n folder={f}\n getAppLink={props.getAppLink}\n getFolderActions={props.getFolderActions}\n drag={props.drag}\n drop={props.drop}\n />\n </div>\n ))}\n </div>\n </>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"partialFolderHeading\":\"dhbsL\",\"partialFolderThumbnail\":\"CI9vk\",\"partialFolderName\":\"l0Nll\"};","import React from 'react';\n\nimport styles from './partial-folder-list.scss';\n\nconst PartialFolder = () => (\n <div className='col-4 col-md-3 col-lg-2 px-1 pb-3'>\n <div className={`${styles.partialFolderThumbnail} partial-loading-background rounded-top-lg`} />\n <div className={`${styles.partialFolderName} partial-loading-background border-bottom rounded-bottom-lg font-size-normal mb-0 p-2`}>\n \n </div>\n </div>\n);\n\nexport function PartialFolderList({ count = 3 }: { count?: number; }): JSX.Element {\n return (\n <>\n <div className={`${styles.partialFolderHeading} h4 mb-2 partial-loading-background`}> </div>\n <div className='row mx-n1'>\n {Array(count).fill(null).map((_, i) => <PartialFolder key={i} />)}\n </div>\n </>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"actions\":\"cN3nB\",\"actionsContainer\":\"xM37V\",\"ownerLogo\":\"g3JFo\",\"dropStyle\":\"kvCLS\",\"dragStyle\":\"md9Na\"};","import React from 'react';\n\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\nimport { Core } from 'libs/common/core';\n\nimport { AnalyticsOptions, EntityType, HashObject, UserAction } from 'libs/analytics/interfaces';\n\nimport { ActionOptions, Actions } from 'libs/shared/components/actions/Actions';\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { DragDropMoveWrapper } from 'libs/shared/components/drag-drop-move/DragDropMoveWrapper';\nimport { BaseImage } from 'libs/shared/components/image/BaseImage';\nimport { ImageFallback, ImageFallbackType } from 'libs/shared/components/image/ImageFallback';\nimport { ImageSize, ImageType } from 'libs/shared/enums/Images';\nimport { Folder } from 'libs/shared/interfaces';\n\nimport styles from './library-folder.scss';\n\ninterface LibraryFolderProps {\n folder: Folder;\n showOwnerLogo?: boolean;\n drag?: boolean;\n drop?: boolean;\n getAppLink: (f: Folder) => Core.AppLink;\n getFolderActions?: (f: Folder) => ActionOptions[];\n analyticsOptions?: AnalyticsOptions;\n analyticsData?: HashObject;\n}\n\nexport function LibraryFolder(props: LibraryFolderProps): JSX.Element {\n const thumbnailUrl = props.folder.thumbnail\n ? UrlHelper.urlBuilder(props.folder.thumbnail.url, { size: ImageSize.Small })\n : null;\n\n const owner = props.folder?.libraries?.data?.[0]?.owner;\n const ownerLogoUrl = props.showOwnerLogo && !!owner?.logo?.url\n ? UrlHelper.urlBuilder(owner.logo.url, { size: ImageSize.Small })\n : null;\n\n const actions = props.getFolderActions?.(props.folder);\n\n const analyticsData = {\n id: props.folder.id.toString(),\n name: props.folder.name,\n\n ...props.analyticsData\n };\n\n const analyticsOptions = {\n actionType: UserAction.Click,\n entity: EntityType.Folder,\n\n ...props.analyticsOptions\n };\n\n return (\n <DragDropMoveWrapper\n draggable={props.drag && { id: props.folder.id, data: props.folder }}\n droppable={props.drop && { id: props.folder.id, data: props.folder }}\n dropStye={styles.dropStyle}\n dragStyle={styles.dragStyle}\n >\n <div className='position-relative'>\n <AppLink\n className='rounded-3 d-block text-decoration-none'\n appLink={props.getAppLink(props.folder)}\n title={props.folder.name}\n analyticsData={analyticsData}\n analyticsOptions={analyticsOptions}\n >\n <BaseImage\n data={thumbnailUrl}\n imageType={ImageType.Thumbnails}\n imageClassName='rounded-top-lg'\n >\n <ImageFallback\n name={props.folder.name}\n type={ImageFallbackType.Folder}\n extraClasses='rounded-top-lg'\n />\n </BaseImage>\n <h3 className='bg-white border-start border-end border-bottom rounded-bottom-lg font-size-normal fw-semibold mb-0 p-2'>\n <span className='text-truncate d-block'>{props.folder.name}</span>\n </h3>\n </AppLink>\n {actions?.length &&\n <Actions\n actions={actions}\n className={styles.actionsContainer}\n actionsDropdownClassName={styles.actions}\n // Intentionally setting to the default SVG size\n dropdownToggleSvgSize={null}\n />\n }\n {!!ownerLogoUrl &&\n <img src={ownerLogoUrl} className={`rounded-circle ${styles.ownerLogo}`} alt={`${owner?.name} logo`} title={owner?.name || ''} />\n }\n </div>\n </DragDropMoveWrapper>\n );\n}","import { Flight } from 'libs/common/flight';\n\nimport { LibraryRequests } from 'libs/shared/flight-requests/LibraryRequests';\nimport { useFetchAll } from 'libs/shared/hooks/UseFetchAll';\nimport { SelectAllPagesResult, useSelectAllPages } from 'libs/shared/hooks/UseSelectAllPages';\nimport { Folder } from 'libs/shared/interfaces';\n\nexport function useFetchAllChildFolders(parentId?: string): SelectAllPagesResult<Folder> {\n const fetch = Flight.useGetFetch();\n\n function getRequest(cursor?: string): Flight.Request {\n return LibraryRequests.childFolders(parentId, cursor);\n }\n \n function fetchNext(cursor?: string): void {\n fetch(getRequest(cursor));\n }\n\n useFetchAll(!!parentId && getRequest, !!parentId && fetchNext);\n\n return (useSelectAllPages<Folder>(!!parentId && ((cursor?: string) => getRequest(cursor).key)));\n}","import React from 'react';\n\nimport { Core } from 'libs/common/core';\nimport { Flight } from 'libs/common/flight';\n\nimport { MasterObjectTypes } from 'libs/shared/enums/MasterObjectTypes';\nimport { NotFoundError } from 'libs/shared/errors/general/not-found/NotFoundError';\nimport { Library } from 'libs/shared/interfaces';\n\n/**\n * This hook prevents the libraries UI to be used for anything \n * other than customer libraries i.e Hosted, Exchange, Workspace etc\n */\nexport function useHandleLibraryType(request: Flight.Response<Library>): void {\n React.useEffect(() => {\n if (!request.hasCompleted || request.hasError)\n return;\n\n if (request.data.type !== MasterObjectTypes.CustomLibrary)\n Core.ErrorHelper.throw(new NotFoundError());\n }, [request.hasCompleted]);\n}","import React from 'react';\n\nimport { EmptyState } from 'libs/shared/components/empty-states/EmptyState';\nimport { LanguageNamespaceContext, Text } from 'libs/shared/components/text/Text';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nconst namespace = 'libraries.libraryFolderEmptyState';\n\nexport function LibraryFolderEmptyState(): JSX.Element {\n return (\n <LanguageNamespaceContext.Provider value={namespace}>\n <EmptyState>\n <EmptyState.Image src={ImageUrls.EmptyStates.Libraries.FOLDER} />\n\n <EmptyState.Heading><Text phrase='heading' /></EmptyState.Heading>\n\n <EmptyState.Info><Text phrase='info' /></EmptyState.Info>\n </EmptyState>\n </LanguageNamespaceContext.Provider>\n );\n}","import React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { EntityType, LocationContext, SearchSourceDescriptor, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\n\nimport { SourceFilterOptions } from 'libs/shared/apps/search/interfaces';\nimport { IconButton } from 'libs/shared/components/icon-button/IconButton';\nimport { InfiniteScrollFooter } from 'libs/shared/components/infinite-scroll-footer/InfiniteScrollFooter';\nimport { useFocusSearchBar } from 'libs/shared/components/search-bar/SearchUtils';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { VideoList } from 'libs/shared/components/video-list/VideoList';\nimport { VideoSortSelect } from 'libs/shared/components/video-sort-select/VideoSortSelect';\nimport { RelatedVideosContext } from 'libs/shared/enums/RelatedVideosContext';\nimport { VideoSortType } from 'libs/shared/enums/VideoSortType';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\nimport { CanFavouriteFunc, CurrentUser, FavouriteFunc, Library, PresentationAudience, VideoTypes, YearGroup } 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 { InteractiveHelpers } from 'shared/utils/InteractiveHelper';\nimport { VideoAppLinkHelper } from 'shared/utils/VideoAppLinkHelper';\n\nimport { LibraryFolderEmptyState } from 'apps/libraries/views/library-folder/empty-state/LibraryFolderEmptyState';\nimport { SeriesAppLinkHelper } from 'apps/series/SeriesAppLinkHelper';\n\nconst namespace = 'libraries.libraryFolderVideos';\n\ninterface LibraryFolderVideosProps {\n folderId: string;\n videos: VideoTypes[];\n yearGroups: YearGroup[];\n hasSubFolders: boolean;\n setFavourite: FavouriteFunc;\n canFavourite: CanFavouriteFunc;\n audiences: PresentationAudience[];\n libraries: Library[];\n currentUser: CurrentUser;\n\n getSortAppLink: (sort: VideoSortType) => Core.AppLink;\n sort: VideoSortType;\n\n isFetching: boolean;\n hasMore: boolean;\n fetchNext: (cursor: string) => void;\n nextCursor?: string;\n imageCdnUrl?: string;\n isPlugin: boolean;\n}\n\nexport function LibraryFolderVideos(props: LibraryFolderVideosProps): JSX.Element {\n const { focusSearchBar } = useFocusSearchBar();\n const { hasPermissions } = usePermissions();\n\n if (!props.videos.length && !props.hasSubFolders)\n return <LibraryFolderEmptyState />;\n\n if (!props.videos.length)\n return <></>;\n\n return (\n <div>\n {/* With no subfolders, we don't show this subheading, and the sort is moved up to the parent component */}\n {props.hasSubFolders && (\n <div className='d-flex justify-content-between align-items-center'>\n <h2 className='h4 mb-0'>\n <Text namespace={namespace} phrase='videos' />\n </h2>\n\n <div className='d-flex'>\n <IconButton\n svgName={cvSvgLibrary.Search}\n appLink={{\n application: AppChannels.SEARCH,\n action: Actions.Search.HOME,\n params: {\n source: SourceFilterOptions.School\n }\n }}\n className='btn btn-outline-dark d-none d-sm-inline-block'\n onClick={focusSearchBar}\n analyticsData={{}}\n analyticsOptions={{\n entity: EntityType.SearchResults,\n location: LocationContext.Libraries,\n actionType: UserAction.Click,\n descriptor: SearchSourceDescriptor.School\n }}\n >\n <Text namespace={namespace} phrase='searchLibrary' options={{ smartCount: props.libraries?.length }} />\n </IconButton>\n <VideoSortSelect\n variant='outline-dark'\n type={props.sort}\n getSortAppLink={props.getSortAppLink}\n analyticsOptions={{\n location: LocationContext.VideoListHeader,\n entity: EntityType.Video,\n actionType: UserAction.Sort,\n workflowPhase: WorkflowPhase.Complete\n }}\n />\n </div>\n </div>\n )}\n\n <VideoList\n videos={props.videos}\n yearGroups={props.yearGroups}\n getVideoAppLink={(v, opts) => VideoAppLinkHelper.getAppLink(v, {\n ...opts,\n context: RelatedVideosContext.Folder,\n contextId: props.folderId,\n includeContext: props.currentUser?.isAuthenticated\n })}\n getSubTextAppLink={video => SeriesAppLinkHelper.getSeriesAppLink(video.series)}\n setFavourite={props.setFavourite}\n canFavourite={props.canFavourite}\n presentationAudiences={props.audiences}\n hasPermissions={hasPermissions}\n getPreviewQuestionsAppLink={interactive => InteractiveHelpers.getPreviewQuestionsAppLink(interactive)}\n imageCdnUrl={props.imageCdnUrl}\n isPlugin={props.isPlugin}\n getClassroomGuideAppLink={VideoAppLinkHelper.getClassroomGuideAppLink}\n getInteractiveGuidanceAppLink={VideoAppLinkHelper.getInteractiveGuidanceAppLink}\n getResourceGuidanceAppLink={VideoAppLinkHelper.getResourceGuidanceAppLink}\n />\n\n {(props.hasMore || props.isFetching) && (\n <InfiniteScrollFooter\n isFetching={props.isFetching}\n fetchNext={props.fetchNext}\n nextCursor={props.nextCursor}\n />\n )}\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"subheading\":\"IJZtA\"};","import React from 'react';\n\nimport { PartialFolderList } from 'libs/shared/components/folder-list/partial-loading/PartialFolderList';\nimport { PartialVideoList } from 'libs/shared/components/video-list/partial-loading/PartialVideoList';\n\nimport styles from './library-folder-partial-loading.scss';\n\nexport function LibraryFolderPartialLoading(): JSX.Element {\n return (\n <>\n <div className='m-3'>\n <PartialFolderList />\n </div>\n\n <div className='mx-3 mb-3'>\n <div className={`${styles.subheading} partial-loading-background mb-2`} />\n <PartialVideoList />\n </div>\n </>\n );\n}","import React from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport { HttpStatus } from 'libs/common/backbone/enums/HttpStatus';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\n\nimport { EntityType, LocationContext, SearchSourceDescriptor, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\n\nimport { SourceFilterOptions } from 'libs/shared/apps/search/interfaces';\nimport { BannerHeader, PartialBannerHeader } from 'libs/shared/components/banner-header/BannerHeader';\nimport { Breadcrumbs, PartialBreadcrumbs } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { FolderList } from 'libs/shared/components/folder-list/FolderList';\nimport { IconButton } from 'libs/shared/components/icon-button/IconButton';\nimport { useFocusSearchBar } from 'libs/shared/components/search-bar/SearchUtils';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { VideoSortSelect } from 'libs/shared/components/video-sort-select/VideoSortSelect';\nimport { VideoActionsContext } from 'libs/shared/context/VideoActionsContext';\nimport { VideoSortType } from 'libs/shared/enums/VideoSortType';\nimport { handleHttpError } from 'libs/shared/errors/handlers/HttpErrorHandlers';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { CustomerRequests } from 'libs/shared/flight-requests/CustomerRequests';\nimport { LibraryRequests } from 'libs/shared/flight-requests/LibraryRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { VideoRequests } from 'libs/shared/flight-requests/VideoRequests';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { useBreadcrumbs } from 'libs/shared/hooks/useBreadcrumbs';\nimport { useHandleObjectError } from 'libs/shared/hooks/UseHandleObjectError';\nimport { useInfiniteList } from 'libs/shared/hooks/UseInfiniteList';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { Config, CurrentUser, Folder, Library, VideoTypes, YearGroup } from 'libs/shared/interfaces';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\nimport { VideoSortHelper } from 'libs/shared/utils/VideoSortHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\nimport { usePluginHelper } from 'shared/hooks/use-plugin-helper/usePluginHelper';\nimport { useVideoActions, VideoActionsLocation } from 'shared/hooks/use-video-actions/useVideoActions';\nimport { useLiteFavourites } from 'shared/hooks/useLiteFavourites';\nimport { usePresentationAudiences } from 'shared/hooks/usePresentationAudiences';\nimport { useVideoMixin } from 'shared/hooks/useVideoMixin';\n\nimport { LibraryFolderVideos } from 'apps/libraries/components/library-folder-videos/LibraryFolderVideos';\nimport { useFetchAllChildFolders } from 'apps/libraries/hooks/UseFetchAllChildFolders';\nimport { useHandleLibraryType } from 'apps/libraries/hooks/UseHandleLibraryType';\n\nimport { LibraryFolderPartialLoading } from './partial-loading/LibraryFolderPartialLoading';\nimport { getFolderAppLink, getFolderBgColourClass } from './LibraryFolderViewUtils';\n\nconst namespace = 'libraries.libraryFolder';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface LibraryFolderViewProps {\n libraryId: string;\n folderId: string;\n sort?: VideoSortType;\n}\n\nexport function LibraryFolderView(props: LibraryFolderViewProps): JSX.Element {\n const dispatch = useDispatch();\n const alerts = useAlerts();\n const { focusSearchBar } = useFocusSearchBar();\n const { isPlugin } = usePluginHelper();\n\n const libraries = Flight.useBasicFetch<Library[]>(LibraryRequests.domainLibraries([ 'customLibrary', 'sharedLibrary' ]));\n const library = Flight.useBasicFetch<Library>(LibraryRequests.library(props.libraryId));\n const folder = Flight.useBasicFetch<Folder>(LibraryRequests.folder(props.folderId));\n const subfolders = useFetchAllChildFolders(props.folderId);\n\n const curentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const yearGroups = Flight.useBasicFetch<YearGroup[]>(\n curentUser.data?.isAuthenticated && CustomerRequests.yearGroups(curentUser.data.customerId)\n );\n\n const videoActions = useVideoActions({ location: VideoActionsLocation.VideoItem });\n const { setFavourite, canFavourite } = useLiteFavourites(LocationContext.VideoThumbnail);\n const breadcrumbs = useBreadcrumbs({ name: folder.data?.name });\n const audiences = usePresentationAudiences();\n\n useSetPageMetadata({ title: folder.data?.name });\n\n useHandleObjectError([ library, folder ]);\n useHandleLibraryType(library);\n\n const sort = !!curentUser.data && VideoSortHelper.getOrSetSortType(curentUser.data.id, props.sort);\n\n const {\n items: videos,\n hasMore,\n isFetching,\n nextCursor\n } = useInfiniteList<VideoTypes>(getVideosRequest, fetchNext, onError);\n\n useVideoMixin(videos);\n\n function getVideosRequest(cursor?: string): Flight.Request {\n return VideoRequests.collectionVideos(props.folderId, sort, cursor);\n }\n\n function fetchNext(cursor?: string): void {\n return Flight.getFetch(dispatch)(getVideosRequest(cursor));\n }\n\n function onError(pageNumber: number, httpStatus: HttpStatus): void {\n if (pageNumber === 1)\n return handleHttpError(httpStatus);\n\n alerts.error(getPhrase('error'));\n }\n\n const hasNoSubfolders = !!(subfolders.hasCompleted && !subfolders.items?.length);\n\n return (\n <VideoActionsContext.Provider value={videoActions}>\n {(library.data && folder.data && config.data)\n ? (\n <BannerHeader\n heading={folder.data.name}\n banner={folder.data.banner}\n imageCdnUrl={config.data.imageCdnUrl}\n blockColourClass={getFolderBgColourClass(folder.data)}\n logo={library.data.owner?.logo}\n />\n ) : <PartialBannerHeader />\n }\n\n <div className={`d-flex justify-content-between align-items-center py-3 mx-3 ${hasNoSubfolders ? '' : 'border-bottom'}`}>\n {(library.data && folder.data)\n ? <Breadcrumbs breadcrumbs={breadcrumbs} />\n : <PartialBreadcrumbs />\n }\n \n <div className='d-flex'>\n {(hasNoSubfolders || !videos?.length) &&\n <IconButton\n svgName={cvSvgLibrary.Search}\n appLink={{\n application: AppChannels.SEARCH,\n action: Actions.Search.HOME,\n params: {\n source: SourceFilterOptions.School\n }\n }}\n className='btn btn-outline-dark d-none d-sm-inline-block'\n onClick={focusSearchBar}\n analyticsData={{}}\n analyticsOptions={{\n entity: EntityType.SearchResults,\n location: LocationContext.Libraries,\n actionType: UserAction.Click,\n descriptor: SearchSourceDescriptor.School\n }}\n >\n <Text namespace={namespace} phrase='searchLibrary' options={{ smartCount: libraries.data?.length ?? 1 }} />\n </IconButton>\n }\n {(hasNoSubfolders && folder.data) && (\n <VideoSortSelect\n variant='outline-dark'\n type={sort}\n getSortAppLink={sort => getFolderAppLink(props.libraryId, folder.data, sort)}\n analyticsOptions={{\n location: LocationContext.VideoListHeader,\n entity: EntityType.Video,\n actionType: UserAction.Sort,\n workflowPhase: WorkflowPhase.Complete\n }}\n />\n )}\n </div>\n </div>\n\n {(videos && subfolders) ? (\n <>\n {!!subfolders.items?.length && (\n <div className='px-2 py-3'>\n <FolderList\n folders={subfolders.items}\n getAppLink={(f: Folder) => getFolderAppLink(props.libraryId, f, sort)}\n expandFolders={!videos.length}\n />\n </div>\n )}\n\n <div className='px-3 pb-3'>\n <LibraryFolderVideos\n folderId={props.folderId}\n videos={videos}\n yearGroups={yearGroups.data}\n hasSubFolders={!!subfolders.items?.length}\n setFavourite={setFavourite}\n canFavourite={canFavourite}\n hasMore={hasMore}\n isFetching={isFetching}\n fetchNext={fetchNext}\n nextCursor={nextCursor}\n sort={sort}\n getSortAppLink={sort => getFolderAppLink(props.libraryId, folder.data, sort)}\n audiences={audiences.data}\n libraries={libraries.data}\n imageCdnUrl={config.data?.imageCdnUrl}\n isPlugin={isPlugin}\n currentUser={curentUser.data}\n />\n </div>\n </>\n ) : <LibraryFolderPartialLoading />}\n </VideoActionsContext.Provider>\n );\n}","import { Core } from 'libs/common/core';\nimport { TextHelper } from 'libs/common/react/utils/TextHelper';\n\nimport { BG_COLOUR_CLASS_NAMES } from 'libs/shared/constants/ColourClassNames';\nimport { Folder, Library } from 'libs/shared/interfaces';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nexport function getFolderAppLink(libraryId: string, folder: Folder, sort: string): Core.AppLink {\n if (!libraryId || !folder)\n return null;\n\n return {\n application: AppChannels.LIBRARIES,\n action: Actions.Libraries.FOLDER,\n args: [ libraryId, folder.id, TextHelper.slugify(folder.name) ],\n params: {\n sort\n }\n };\n}\n\nexport function getFolderBgColourClass(folder: Folder | Library): string {\n let charCode = 0;\n\n for (let i = 0; i < folder.name?.length ?? 0; i++) {\n charCode += folder.name.charCodeAt(i);\n }\n\n return BG_COLOUR_CLASS_NAMES[charCode % BG_COLOUR_CLASS_NAMES.length];\n}"],"names":["getDirectionClass","direction","Caret","props","SvgContainer","svgName","className","defaultProps","namespace","EXPANDED_FOLDERS_KEY","FolderList","breakpoints","_hasExpandedFolders","setHasExpandedFolders","hasExpandedFolders","expandFolders","folderLimit","xxl","xl","lg","md","onToggleFolder","displayableFolders","folders","slice","canToggleCollapsedView","length","showHeading","onClick","phrase","options","count","extraButtons","map","f","key","id","folder","getAppLink","getFolderActions","drag","drop","PartialFolder","PartialFolderList","Array","fill","_","i","LibraryFolder","thumbnailUrl","thumbnail","UrlHelper","url","size","owner","libraries","data","ownerLogoUrl","showOwnerLogo","logo","actions","analyticsData","toString","name","analyticsOptions","actionType","entity","DragDropMoveWrapper","draggable","droppable","dropStye","dragStyle","AppLink","appLink","title","BaseImage","imageType","imageClassName","ImageFallback","type","extraClasses","Actions","actionsDropdownClassName","dropdownToggleSvgSize","src","alt","useFetchAllChildFolders","parentId","fetch","getRequest","cursor","useHandleLibraryType","request","hasCompleted","hasError","LibraryFolderEmptyState","value","EmptyState","ImageUrls","Text","LibraryFolderVideos","focusSearchBar","hasPermissions","usePermissions","videos","hasSubFolders","IconButton","application","action","params","source","location","descriptor","smartCount","VideoSortSelect","variant","sort","getSortAppLink","workflowPhase","VideoList","yearGroups","getVideoAppLink","v","opts","VideoAppLinkHelper","context","RelatedVideosContext","contextId","folderId","includeContext","currentUser","isAuthenticated","getSubTextAppLink","video","SeriesAppLinkHelper","series","setFavourite","canFavourite","presentationAudiences","audiences","getPreviewQuestionsAppLink","interactive","InteractiveHelper","imageCdnUrl","isPlugin","getClassroomGuideAppLink","getInteractiveGuidanceAppLink","getResourceGuidanceAppLink","hasMore","isFetching","InfiniteScrollFooter","fetchNext","nextCursor","LibraryFolderPartialLoading","PartialVideoList","getPhrase","LanguageService","LibraryFolderView","dispatch","alerts","usePluginHelper","LibraryRequests","library","libraryId","subfolders","curentUser","UserRequests","config","ConfigRequests","CustomerRequests","customerId","videoActions","useVideoActions","useLiteFavourites","u","breadcrumbs","useBreadcrumbs","usePresentationAudiences","useSetPageMetadata","VideoSortHelper","getVideosRequest","pageNumber","httpStatus","error","items","VideoRequests","useVideoMixin","hasNoSubfolders","VideoActionsContext","BannerHeader","heading","banner","blockColourClass","Breadcrumbs","getFolderAppLink","args","getFolderBgColourClass","charCode","charCodeAt"],"sourceRoot":""}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/scripts/{bundle-729d35b93d.min.js.LICENSE.txt → bundle-87ed395a6c.min.js.LICENSE.txt}
RENAMED
|
File without changes
|