@clickview/online 0.0.4-rc.1 → 0.0.5-dev.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/dist/en.json +1 -1
  2. package/dist/libs/analytics/src/clients/CollectionApiClient.d.ts +1 -0
  3. package/dist/libs/analytics/src/interfaces/AnalyticsTypes.d.ts +5 -6
  4. package/dist/libs/analytics/src/interfaces/User.d.ts +11 -0
  5. package/dist/libs/analytics/src/models/CollectionEvent.d.ts +6 -0
  6. package/dist/libs/analytics/src/utils/CollectionApiClientHelper.d.ts +1 -1
  7. package/dist/libs/analytics/src/utils/UrlHelper.d.ts +3 -0
  8. package/dist/libs/common/src/react/constants/ViewModelActions.d.ts +3 -0
  9. package/dist/libs/common/src/react/interfaces/ViewModelAction.d.ts +5 -0
  10. package/dist/libs/common/src/react/interfaces/ViewModelPayload.d.ts +5 -0
  11. package/dist/libs/common/src/react/reducers/ViewModelReducer.d.ts +3 -0
  12. package/dist/libs/common/src/react/utils/ArrayHelper.d.ts +1 -2
  13. package/dist/libs/common/src/react/utils/TextHelper.d.ts +2 -0
  14. package/dist/libs/shared/src/components/actions/ActionButton.d.ts +6 -2
  15. package/dist/libs/shared/src/components/actions/ActionsDropdown.d.ts +2 -1
  16. package/dist/libs/shared/src/components/svgs/clickview-logo/ClickViewLogo.d.ts +3 -0
  17. package/dist/libs/shared/src/components/thumbnails/video/VideoThumbnailWatchProgressBar.d.ts +8 -0
  18. package/dist/libs/shared/src/components/widgets/fixed-widget/FixedWidgetUtils.d.ts +1 -1
  19. package/dist/libs/shared/src/enums/PlaylistPrivacy.d.ts +5 -0
  20. package/dist/libs/shared/src/flight-requests/PlaylistRequests.d.ts +3 -0
  21. package/dist/libs/shared/src/hooks/UseLazyLoad.d.ts +1 -1
  22. package/dist/libs/shared/src/interfaces/collections/VideoHistoryCollection.d.ts +4 -0
  23. package/dist/libs/shared/src/interfaces/collections/index.d.ts +1 -0
  24. package/dist/libs/shared/src/interfaces/models/Library.d.ts +2 -0
  25. package/dist/libs/shared/src/interfaces/models/Playlist.d.ts +4 -1
  26. package/dist/libs/shared/src/interfaces/models/Video.d.ts +4 -2
  27. package/dist/libs/shared/src/interfaces/models/VideoHistory.d.ts +9 -0
  28. package/dist/libs/shared/src/interfaces/models/Widget.d.ts +2 -1
  29. package/dist/libs/shared/src/interfaces/models/index.d.ts +2 -1
  30. package/dist/libs/shared/src/utils/ImageHelper.d.ts +1 -1
  31. package/dist/online-app.css +11 -7
  32. package/dist/online-app.js +3 -3
  33. package/dist/projects/online/src/apps/libraries/LibrariesApplication.d.ts +11 -0
  34. package/dist/projects/online/src/apps/libraries/components/libraries-list/LibrariesList.d.ts +7 -0
  35. package/dist/projects/online/src/apps/libraries/components/libraries-list/partial-loading/PartialLibrariesList.d.ts +2 -0
  36. package/dist/projects/online/src/apps/libraries/components/library-item/LibraryItem.d.ts +7 -0
  37. package/dist/projects/online/src/apps/libraries/flight-requests/LibrariesRequests.d.ts +7 -0
  38. package/dist/projects/online/src/apps/libraries/utils/LibraryHelper.d.ts +9 -0
  39. package/dist/projects/online/src/apps/libraries/views/libraries/LibrariesView.d.ts +2 -0
  40. package/dist/projects/online/src/apps/movies-and-tv/MoviesAndTvApplication.d.ts +12 -0
  41. package/dist/projects/online/src/apps/movies-and-tv/views/movies-and-tv/MoviesAndTvView.d.ts +2 -0
  42. package/dist/projects/online/src/apps/playlists/{PlaylistApplication.d.ts → OnlinePlaylistsApplication.d.ts} +5 -9
  43. package/dist/projects/online/src/apps/playlists/components/index.d.ts +0 -2
  44. package/dist/projects/online/src/apps/playlists/components/play-playlist/PlayPlaylist.d.ts +3 -4
  45. package/dist/projects/online/src/apps/playlists/components/playlist-header/PartialPlaylistHeader.d.ts +2 -0
  46. package/dist/projects/online/src/apps/playlists/components/playlist-header/PlaylistHeader.d.ts +6 -13
  47. package/dist/projects/online/src/apps/playlists/components/share-playlist/SharePlaylist.d.ts +2 -0
  48. package/dist/projects/online/src/apps/playlists/views/play-playlist/PlayPlaylistView.d.ts +5 -6
  49. package/dist/projects/online/src/apps/playlists/views/playlist/PlaylistView.d.ts +3 -12
  50. package/dist/projects/online/src/apps/subjects/SubjectPlaylistsApplication.d.ts +3 -3
  51. package/dist/projects/online/src/apps/subjects/views/classification-playlist/ClassificationPlaylistView.d.ts +1 -4
  52. package/dist/projects/online/src/apps/subjects/views/classification-playlist/components/PartialPlaylistHeader.d.ts +2 -0
  53. package/dist/projects/online/src/index.d.ts +8 -3
  54. package/dist/projects/online/src/shared/components/info-banner/InfoBanner.d.ts +2 -0
  55. package/dist/projects/online/src/{apps/playlists → shared}/components/video-list/SortableVideoList.d.ts +2 -3
  56. package/dist/projects/online/src/{apps/playlists → shared}/components/video-list/SortableVideoListContainer.d.ts +1 -2
  57. package/dist/projects/online/src/{apps/playlists → shared}/components/video-list/ThumbnailComponent.d.ts +2 -2
  58. package/dist/projects/online/src/{apps/playlists → shared}/components/video-list/VideoActionsComponent.d.ts +2 -2
  59. package/dist/projects/online/src/{apps/playlists → shared}/components/video-list/VideoItemComponent.d.ts +4 -4
  60. package/dist/projects/online/src/{apps/playlists → shared}/components/video-list/VideoItemPreviewComponent.d.ts +1 -1
  61. package/dist/projects/online/src/shared/components/video-list/VideoList.d.ts +8 -0
  62. package/dist/projects/online/src/shared/constants/Actions.d.ts +22 -4
  63. package/dist/projects/online/src/shared/constants/RadioChannels.d.ts +2 -0
  64. package/dist/projects/online/src/shared/hooks/UseMixinVideoRestrictions.d.ts +14 -0
  65. package/dist/projects/online/src/shared/hooks/index.d.ts +0 -1
  66. package/package.json +3 -3
  67. package/typings/libs/FutureCoreHelper.d.ts +5 -0
  68. package/dist/libs/analytics/src/utils/VideoDataFormatHelper.d.ts +0 -42
  69. package/dist/libs/shared/src/components/div-button/DivButton.d.ts +0 -10
  70. package/dist/libs/shared/src/components/pagination/Pagination.d.ts +0 -28
  71. package/dist/libs/shared/src/components/video-list/VideoItem.d.ts +0 -13
  72. package/dist/libs/shared/src/components/video-list/VideoList.d.ts +0 -22
  73. package/dist/libs/shared/src/components/video-list/components/video-item-actions/VideoItemActions.d.ts +0 -7
  74. package/dist/libs/shared/src/components/video-list/components/video-item-badges/VideoItemBadges.d.ts +0 -7
  75. package/dist/libs/shared/src/components/video-list/components/video-item-description/UseTruncateText.d.ts +0 -9
  76. package/dist/libs/shared/src/components/video-list/components/video-item-description/VideoItemDescription.d.ts +0 -8
  77. package/dist/libs/shared/src/components/video-list/components/video-item-header/VideoItemHeader.d.ts +0 -9
  78. package/dist/libs/shared/src/context/VideoActionsContext.d.ts +0 -10
  79. package/dist/libs/shared/src/flight-requests/FavouriteVideoRequests.d.ts +0 -7
  80. package/dist/libs/shared/src/interfaces/models/VideoWithRestrictions.d.ts +0 -5
  81. package/dist/libs/shared/src/utils/RestrictionHelper.d.ts +0 -5
  82. package/dist/libs/shared/src/utils/VideoHelper.d.ts +0 -4
  83. package/dist/projects/online/src/apps/playlists/components/playlist-header/PlaylistBreadcrumbsComponent.d.ts +0 -7
  84. package/dist/projects/online/src/apps/playlists/components/playlist-header/PlaylistHeaderActionsComponent.d.ts +0 -17
  85. package/dist/projects/online/src/apps/playlists/components/playlist-header/index.d.ts +0 -2
  86. package/dist/projects/online/src/apps/playlists/components/playlist-header/partial-loading/PartialPlaylistHeaderComponent.d.ts +0 -6
  87. package/dist/projects/online/src/apps/playlists/components/playlist-header/partial-loading/index.d.ts +0 -1
  88. package/dist/projects/online/src/apps/playlists/components/video-list/index.d.ts +0 -1
  89. package/dist/projects/online/src/apps/playlists/flight-requests/SubjectRequests.d.ts +0 -4
  90. package/dist/projects/online/src/apps/playlists/flight-requests/index.d.ts +0 -2
  91. package/dist/projects/online/src/apps/playlists/views/add-to-playlist/index.d.ts +0 -1
  92. package/dist/projects/online/src/apps/playlists/views/delete-playlist/index.d.ts +0 -1
  93. package/dist/projects/online/src/apps/playlists/views/edit-playlist/index.d.ts +0 -1
  94. package/dist/projects/online/src/apps/playlists/views/index.d.ts +0 -10
  95. package/dist/projects/online/src/apps/playlists/views/left-nav/index.d.ts +0 -1
  96. package/dist/projects/online/src/apps/playlists/views/migration-in-progress/index.d.ts +0 -1
  97. package/dist/projects/online/src/apps/playlists/views/new-playlist/index.d.ts +0 -1
  98. package/dist/projects/online/src/apps/playlists/views/play-playlist/index.d.ts +0 -1
  99. package/dist/projects/online/src/apps/playlists/views/playlist/PlaylistViewUtils.d.ts +0 -12
  100. package/dist/projects/online/src/apps/playlists/views/playlist/index.d.ts +0 -1
  101. package/dist/projects/online/src/apps/playlists/views/playlists/index.d.ts +0 -1
  102. package/dist/projects/online/src/apps/playlists/views/remove-video-from-playlist/index.d.ts +0 -1
  103. package/dist/projects/online/src/shared/hooks/UseVideoMixin.d.ts +0 -2
  104. /package/dist/projects/online/src/{apps/playlists → shared}/components/video-list/PartialVideoList.d.ts +0 -0
  105. /package/dist/projects/online/src/{apps/playlists → shared}/components/video-list/PlaceHolder.d.ts +0 -0
  106. /package/dist/projects/online/src/{apps/playlists → shared}/components/video-list/RestrictedBadge.d.ts +0 -0
  107. /package/dist/projects/online/src/{apps/playlists → shared}/components/video-list/RestrictionInfo.d.ts +0 -0
@@ -0,0 +1,11 @@
1
+ import { Core } from "../../../../../libs/common/src/backbone";
2
+ import { ReactApplication } from "../../../../../libs/common/src/react/core/ReactApplication";
3
+ import { OnlineLayoutViewOptions, OnlineLayoutView } from "../../shared/layouts";
4
+ export declare class LibrariesApplication extends ReactApplication {
5
+ protected layout: OnlineLayoutView;
6
+ get name(): string;
7
+ static get router(): any;
8
+ get channelName(): string;
9
+ get layoutOptions(): Core.LayoutOptions<OnlineLayoutViewOptions>;
10
+ index(): void;
11
+ }
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import { Library } from "../../../../../../../libs/shared/src/interfaces";
3
+ interface LibrariesListProps {
4
+ libraries: Library[];
5
+ }
6
+ export declare function LibrariesList(props: LibrariesListProps): JSX.Element;
7
+ export {};
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare function PartialLibrariesList(): JSX.Element;
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import { Library } from "../../../../../../../libs/shared/src/interfaces";
3
+ interface LibraryItemProps {
4
+ library: Library;
5
+ }
6
+ export declare function LibraryItem(props: LibraryItemProps): JSX.Element;
7
+ export {};
@@ -0,0 +1,7 @@
1
+ import { Flight } from "../../../../../../libs/common/src/react";
2
+ export declare const LibrariesRequests: {
3
+ libraries(): Flight.Request;
4
+ interactives(): Flight.Request;
5
+ recentLibraryVideos(id: string): Flight.Request;
6
+ mostRecentVideos(): Flight.Request;
7
+ };
@@ -0,0 +1,9 @@
1
+ import { Library } from "../../../../../../libs/shared/src/interfaces";
2
+ export declare const LibraryHelper: {
3
+ isPrimaryLibrary(library: Library): boolean;
4
+ isSecondaryLibrary(library: Library): boolean;
5
+ isMoviesAndTv(library: Library): boolean;
6
+ isHostedLibrary(library: Library): boolean;
7
+ isCustomLibrary(library: Library): boolean;
8
+ isSupplementaryLibrary(library: Library): boolean;
9
+ };
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare function LibrariesView(): JSX.Element;
@@ -0,0 +1,12 @@
1
+ import { Core } from "../../../../../libs/common/src/backbone";
2
+ import { ReactApplication } from "../../../../../libs/common/src/react/core/ReactApplication";
3
+ import { OnlineLayoutViewOptions, OnlineLayoutView } from "../../shared/layouts";
4
+ export declare class MoviesAndTvApplication extends ReactApplication {
5
+ protected layout: OnlineLayoutView;
6
+ get name(): string;
7
+ static get router(): any;
8
+ get channelName(): string;
9
+ get layoutOptions(): Core.LayoutOptions<OnlineLayoutViewOptions>;
10
+ index(): void;
11
+ addToPlaylist(videoId: string): void;
12
+ }
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare function MoviesAndTvView(): JSX.Element;
@@ -1,8 +1,8 @@
1
- import { ObjectHash } from 'backbone';
2
1
  import { Core } from "../../../../../libs/common/src/backbone";
2
+ import { ReactApplication } from "../../../../../libs/common/src/react/core/ReactApplication";
3
3
  import { HashObject } from "../../../../../libs/common/src/react/interfaces/HashObject";
4
4
  import { OnlineLayoutView, OnlineLayoutViewOptions } from "../../shared/layouts";
5
- export declare class PlaylistApplication extends Core.Application {
5
+ export declare class PlaylistApplication extends ReactApplication {
6
6
  protected layout: OnlineLayoutView;
7
7
  private currentPlaylistId;
8
8
  initialize(): void;
@@ -11,26 +11,22 @@ export declare class PlaylistApplication extends Core.Application {
11
11
  get channelName(): string;
12
12
  get layoutOptions(): Core.LayoutOptions<OnlineLayoutViewOptions>;
13
13
  index(params: HashObject): void;
14
- playlist(playlistId: string, slug?: string): void;
14
+ playlist(playlistId: string): void;
15
15
  newPlaylist(): void;
16
16
  editPlaylist(playlistId: string): void;
17
17
  deletePlaylist(playlistId: string): void;
18
18
  removeVideoFromPlaylist(videoId: string, playlistId: string): void;
19
- playPlaylist(playlistId: string): void;
20
- playPlaylistVideo(playlistId: string, videoId?: string): void;
19
+ playPlaylistVideo(playlistId: string, videoId: string): void;
21
20
  sharePlaylist(playlistId: string): void;
22
21
  sharedPlaylist(shareCode: string): void;
23
- playSharedPlaylist(shareCode: string): void;
24
- playSharedPlaylistVideo(shareCode: string, videoId?: string): void;
22
+ playSharedPlaylistVideo(shareCode: string, videoId: string): void;
25
23
  accessDenied(): void;
26
24
  notFound(): void;
27
25
  migrationInProgress(): void;
28
26
  private renderLeftNav;
29
- protected onShowAlert(options?: ObjectHash): void;
30
27
  private setCurrentPlaylist;
31
28
  private hideLeftNav;
32
29
  private getPopupProps;
33
- private getPlaylistAppLink;
34
30
  private getVideoAppLink;
35
31
  private getPhrase;
36
32
  }
@@ -1,5 +1,3 @@
1
- export * from './playlist-header';
2
1
  export * from './playlist-list';
3
2
  export * from './new-playlist-button';
4
- export * from './video-list';
5
3
  export * from './video-not-found';
@@ -1,13 +1,12 @@
1
1
  import * as React from 'react';
2
2
  import { Core } from "../../../../../../../libs/common/src/backbone";
3
- import { Video, Playlist, RestrictedObject } from "../../../../../../../libs/shared/src/interfaces";
3
+ import { Video, Playlist } from "../../../../../../../libs/shared/src/interfaces";
4
4
  interface PlayPlaylistProps {
5
5
  playlist: Playlist;
6
6
  videos: Video[];
7
7
  currentVideoId: string;
8
- videoRestrictions: RestrictedObject[];
9
- getPlaylistAppLink: (playlist: Playlist) => Core.AppLink;
10
- getVideoAppLink: (videoId: string) => Core.AppLink;
8
+ playlistAppLink: Core.AppLink;
9
+ getVideoAppLink: (video: Video) => Core.AppLink;
11
10
  shareCode?: string;
12
11
  }
13
12
  export declare function PlayPlaylist(props: PlayPlaylistProps): React.ReactElement;
@@ -0,0 +1,2 @@
1
+ import * as React from 'react';
2
+ export declare function PartialPlaylistHeader(): React.ReactElement;
@@ -1,23 +1,16 @@
1
- import * as React from 'react';
1
+ /// <reference types="react" />
2
2
  import { Core } from "../../../../../../../libs/common/src/backbone";
3
- import { AppLinkWithLabel, Playlist } from "../../../../../../../libs/shared/src/interfaces";
3
+ import { Playlist } from "../../../../../../../libs/shared/src/interfaces";
4
4
  interface PlaylistHeaderProps {
5
- playlistId: string;
6
5
  playlist: Playlist;
7
- hasVideos: boolean;
6
+ videoCount: number;
8
7
  isFollowing: boolean;
9
8
  follow: (shouldFollow: boolean) => void;
10
- application: string;
11
9
  imageCdnUrl: string;
12
- showPartialLoading: boolean;
13
- showBreadcrumbs: boolean;
14
- showDateMetadata: boolean;
10
+ canShare?: boolean;
11
+ shareAppLink?: Core.AppLink;
15
12
  canEdit?: boolean;
16
13
  canFollow?: boolean;
17
- isShared?: boolean;
18
- playAllAppLink?: Core.AppLink;
19
- returnAppLink?: AppLinkWithLabel;
20
- lastUpdated?: string;
21
14
  }
22
- export declare function PlaylistHeader(props: PlaylistHeaderProps): React.ReactElement;
15
+ export declare function PlaylistHeader(props: PlaylistHeaderProps): JSX.Element;
23
16
  export {};
@@ -1,7 +1,9 @@
1
1
  import * as React from 'react';
2
2
  import { Playlist } from "../../../../../../../libs/shared/src/interfaces";
3
+ import { PlaylistPrivacy } from "../../../../../../../libs/shared/src/enums/PlaylistPrivacy";
3
4
  interface SharePlaylistProps {
4
5
  playlist: Playlist;
6
+ updatePrivacy: (privacy: PlaylistPrivacy) => void;
5
7
  }
6
8
  export declare function SharePlaylist(props: SharePlaylistProps): React.ReactElement;
7
9
  export {};
@@ -1,13 +1,12 @@
1
1
  import * as React from 'react';
2
2
  import { Core } from "../../../../../../../libs/common/src/backbone";
3
- import { Playlist } from "../../../../../../../libs/shared/src/interfaces";
3
+ import { Playlist, Video } from "../../../../../../../libs/shared/src/interfaces";
4
4
  interface PlayPlaylistViewProps {
5
- playlistId: string;
6
- videoId?: string;
7
- isShared?: boolean;
5
+ playlistId?: string;
6
+ shareCode?: string;
7
+ videoId: string;
8
8
  getPlaylistAppLink: (playlist: Playlist) => Core.AppLink;
9
- getVideoAppLink: (videoId: string, videoName?: string) => Core.AppLink;
10
- filterByRating?: boolean;
9
+ getVideoAppLink: (video: Video) => Core.AppLink;
11
10
  }
12
11
  export declare function PlayPlaylistView(props: PlayPlaylistViewProps): React.ReactElement;
13
12
  export {};
@@ -1,19 +1,10 @@
1
1
  import * as React from 'react';
2
2
  import { Core } from "../../../../../../../libs/common/src/backbone";
3
- import { Video, Playlist, Series, AppLinkWithLabel } from "../../../../../../../libs/shared/src/interfaces";
3
+ import { Video } from "../../../../../../../libs/shared/src/interfaces";
4
4
  interface PlaylistViewProps {
5
- playlistId: string;
6
- isShared?: boolean;
7
- application: string;
5
+ playlistId?: string;
6
+ shareCode?: string;
8
7
  getVideoAppLink: (video: Video) => Core.AppLink;
9
- getSeriesAppLink: (series: Series) => Core.AppLink;
10
- getPlayAllAppLink?: (playlist: Playlist) => Core.AppLink;
11
- allowEdit?: boolean;
12
- showBreadcrumbs?: boolean;
13
- showDateMetadata?: boolean;
14
- returnAppLink?: AppLinkWithLabel;
15
- filterByRating?: boolean;
16
- canFollow?: boolean;
17
8
  }
18
9
  export declare function PlaylistView(props: PlaylistViewProps): React.ReactElement;
19
10
  export {};
@@ -7,9 +7,9 @@ export declare class SubjectPlaylistsApplication extends ReactApplication {
7
7
  static get router(): any;
8
8
  get channelName(): string;
9
9
  get layoutOptions(): Core.LayoutOptions<OnlineLayoutViewOptions>;
10
- classificationPlaylist(subjectId: string, playlistId: string, slug?: string): void;
11
- playClassificationPlaylist(subjectId: string, playlistId: string, slug?: string): void;
12
- playClassificationPlaylistVideo(subjectId: string, playlistId: string, videoId?: string, slug?: string): void;
10
+ classificationPlaylist(classificationId: string, playlistId: string, slug?: string): void;
11
+ playClassificationPlaylistVideo(classificationId: string, playlistId: string, videoId: string): void;
12
+ sharePlaylist(playlistId: string): void;
13
13
  private getPlaylistAppLink;
14
14
  private getVideoAppLink;
15
15
  }
@@ -1,10 +1,7 @@
1
1
  /// <reference types="react" />
2
- import { Core } from "../../../../../../../libs/common/src/backbone";
3
- import { Video } from "../../../../../../../libs/shared/src/interfaces";
4
2
  interface ClassificationPlaylistViewProps {
5
- subjectId: string;
3
+ classificationId: string;
6
4
  playlistId: string;
7
- getVideoAppLink: (video: Video) => Core.AppLink;
8
5
  }
9
6
  export declare function ClassificationPlaylistView(props: ClassificationPlaylistViewProps): JSX.Element;
10
7
  export {};
@@ -0,0 +1,2 @@
1
+ import * as React from 'react';
2
+ export declare function PartialPlaylistHeader(): React.ReactElement;
@@ -5,13 +5,14 @@ import './apps/content-updates/views/content-updates/content-updates.lang.json';
5
5
  import './apps/dashboard/components/hero-widget/hero-widget.lang.json';
6
6
  import './apps/dashboard/views/dashboard/dashboard.lang.json';
7
7
  import './apps/dashboard/views/error/error.lang.json';
8
+ import './apps/libraries/views/libraries/libraries.lang.json';
9
+ import './apps/movies-and-tv/views/movies-and-tv/movies-and-tv.lang.json';
8
10
  import './apps/playlists/components/left-nav/left-nav.lang.json';
9
11
  import './apps/playlists/components/new-playlist-button/new-playlist-button.lang.json';
10
12
  import './apps/playlists/components/playlist-actions/playlist-actions.lang.json';
11
13
  import './apps/playlists/components/playlist-details/playlist-details.lang.json';
12
14
  import './apps/playlists/components/playlist-header/playlist-header.lang.json';
13
15
  import './apps/playlists/components/playlist-list/playlist-list.lang.json';
14
- import './apps/playlists/components/video-list/video-list.lang.json';
15
16
  import './apps/playlists/components/video-not-found/video-not-found.lang.json';
16
17
  import './apps/playlists/playlist-application.lang.json';
17
18
  import './apps/playlists/services/services.lang.json';
@@ -28,6 +29,7 @@ import './apps/subjects/views/classification/classifications-view.lang.json';
28
29
  import './apps/subjects/views/preferences/level-preferences/level-preferences.lang.json';
29
30
  import './apps/subjects/views/preferences/subject-preferences/subject-preferences.lang.json';
30
31
  import './apps/subjects/views/preferences/summary/preferences-summary.lang.json';
32
+ import './shared/components/video-list/video-list.lang.json';
31
33
  import './shared/context/context.lang.json';
32
34
  import './shared/errors/not-found/not-found-error.lang.json';
33
35
  import './shared/views/error/error.lang.json';
@@ -69,12 +71,14 @@ export * from './shared/services/OnlineContextService';
69
71
  export * from './shared/layouts/OnlineLayoutView';
70
72
  export * from './apps/default/OnlineDefaultApplication';
71
73
  export * from './apps/playlists/services';
72
- export * from './apps/playlists/PlaylistApplication';
74
+ export * from './apps/playlists/OnlinePlaylistsApplication';
73
75
  export * from './apps/playlists/layouts/OnlinePlaylistsLayoutView';
74
76
  export * from './apps/subjects/SubjectApplication';
75
77
  export * from './apps/subjects/SubjectPlaylistsApplication';
76
78
  export * from './apps/content-updates/ContentUpdatesApplication';
77
79
  export * from './apps/dashboard/OnlineDashboardApplication';
80
+ export * from './apps/movies-and-tv/MoviesAndTvApplication';
81
+ export * from './apps/libraries/LibrariesApplication';
78
82
  import { Core } from "../../../libs/common/src/backbone";
79
83
  import { InstanceManager } from "../../../libs/common/src/backbone/services/InstanceManager";
80
84
  import { AlertType, BaseAlertService } from "../../../libs/common/src/backbone/services/BaseAlertService";
@@ -87,6 +91,7 @@ import { NotImplementedError } from "../../../libs/common/src/backbone/errors/No
87
91
  import { CommonServices } from "../../../libs/common/src/backbone/constants/CommonServices";
88
92
  import { LanguageService } from "../../../libs/common/src/backbone/services/LanguageService";
89
93
  import { Flight } from "../../../libs/common/src/react";
94
+ import { ViewModelReducer } from "../../../libs/common/src/react/reducers/ViewModelReducer";
90
95
  import { ScrollService } from "../../../libs/common/src/backbone/services/ScrollService";
91
96
  import { CacheDurations } from "../../../libs/shared/src/constants/CacheDurations";
92
97
  import { SharedDataServices } from "../../../libs/shared/src/constants/SharedServices";
@@ -106,4 +111,4 @@ import { CollectionApiClientHelper } from "../../../libs/analytics/src/utils/Col
106
111
  import { CountryRegionMapping } from "../../../libs/analytics/src/constants/CountryRegionMapping";
107
112
  import { CoreContextEnricher } from "../../../libs/analytics/src/enrichers/CoreContextEnricher";
108
113
  import { UserDataEnricher } from "../../../libs/analytics/src/enrichers/UserDataEnricher";
109
- export { Core, InstanceManager, BaseAlertService, AlertType, FifoMemoryCache, AjaxDataProvider, ConcurrencyHelper, UrlHelper, DevError, NotImplementedError, CommonServices, LanguageService, Flight, ScrollService, CacheDurations, SharedDataServices, ConfigDataService, UserDataService, LanguageDataService, ImageUrlService, AnalyticsService, DebuggerClient, EventTransport, CollectionApiClient, CollectionApiClientHelper, CountryRegionMapping, CoreContextEnricher, UserDataEnricher, AppOptionsService, AlertError, DialogError, ErrorPageError };
114
+ export { Core, InstanceManager, BaseAlertService, AlertType, FifoMemoryCache, AjaxDataProvider, ConcurrencyHelper, UrlHelper, DevError, NotImplementedError, CommonServices, LanguageService, Flight, ViewModelReducer, ScrollService, CacheDurations, SharedDataServices, ConfigDataService, UserDataService, LanguageDataService, ImageUrlService, AnalyticsService, DebuggerClient, EventTransport, CollectionApiClient, CollectionApiClientHelper, CountryRegionMapping, CoreContextEnricher, UserDataEnricher, AppOptionsService, AlertError, DialogError, ErrorPageError };
@@ -0,0 +1,2 @@
1
+ import React from 'react';
2
+ export declare function InfoBanner(props: React.PropsWithChildren<{}>): JSX.Element;
@@ -1,8 +1,7 @@
1
1
  import * as React from 'react';
2
- import { Video } from "../../../../../../../libs/shared/src/interfaces";
2
+ import { Video } from "../../../../../../libs/shared/src/interfaces";
3
3
  import { VideoItemComponentProps } from './VideoItemComponent';
4
- interface VideoListProps extends Omit<VideoItemComponentProps, 'video' | 'idx'> {
4
+ export interface VideoListProps extends Omit<VideoItemComponentProps, 'video' | 'idx'> {
5
5
  videos: Video[];
6
6
  }
7
7
  export declare const SortableVideoList: React.ComponentClass<VideoListProps & import("react-sortable-hoc").SortableContainerProps, any>;
8
- export {};
@@ -1,12 +1,11 @@
1
1
  import * as React from 'react';
2
- import { VideoListProps } from "../../../../../../../libs/shared/src/components/video-list/VideoList";
2
+ import { VideoListProps } from './SortableVideoList';
3
3
  export interface SortableVideoListContainerProps extends VideoListProps {
4
4
  playlistId: string;
5
5
  onSortComplete: (oldIdx: number, newIdx: number) => void;
6
6
  onSortStart?: (index: number) => void;
7
7
  isUserSignedIn: boolean;
8
8
  canEdit?: boolean;
9
- showPartialLoading?: boolean;
10
9
  fetchRestrictions?: () => void;
11
10
  }
12
11
  export declare function SortableVideoListContainer(props: SortableVideoListContainerProps): React.ReactElement;
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
- import { Core } from "../../../../../../../libs/common/src/backbone";
3
- import { Video } from "../../../../../../../libs/shared/src/interfaces";
2
+ import { Core } from "../../../../../../libs/common/src/backbone";
3
+ import { Video } from "../../../../../../libs/shared/src/interfaces";
4
4
  interface ThumbnailComponentProps {
5
5
  video: Video;
6
6
  appLink: Core.AppLink;
@@ -1,9 +1,9 @@
1
1
  import * as React from 'react';
2
2
  import { Model } from 'backbone';
3
- import { PropsWithAnalyticsOptions } from "../../../../../../../libs/shared/src/interfaces";
3
+ import { PropsWithAnalyticsOptions } from "../../../../../../libs/shared/src/interfaces";
4
4
  interface VideoActionsComponentProps {
5
5
  video: Model;
6
- playlistId: string;
6
+ playlistId?: string;
7
7
  canEdit?: boolean;
8
8
  showLoader: () => void;
9
9
  }
@@ -1,13 +1,13 @@
1
1
  import * as React from 'react';
2
- import { Core } from "../../../../../../../libs/common/src/backbone";
3
- import { Video } from "../../../../../../../libs/shared/src/interfaces";
4
- import { SharedObject } from "../../../../shared/interfaces";
2
+ import { Core } from "../../../../../../libs/common/src/backbone";
3
+ import { Video } from "../../../../../../libs/shared/src/interfaces";
4
+ import { SharedObject } from "../../interfaces";
5
5
  export interface VideoItemComponentProps {
6
6
  video: Video | SharedObject<Video>;
7
- playlistId: string;
8
7
  idx: number;
9
8
  getVideoAppLink: (video: Video) => Core.AppLink;
10
9
  isUserSignedIn: boolean;
10
+ playlistId?: string;
11
11
  canEdit?: boolean;
12
12
  setIsSorting?: (isSorting: boolean) => void;
13
13
  fetchRestrictions?: () => void;
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { Video } from "../../../../../../../libs/shared/src/interfaces";
2
+ import { Video } from "../../../../../../libs/shared/src/interfaces";
3
3
  interface VideoItemPreviewComponentProps {
4
4
  video: Video;
5
5
  previewOpen: boolean;
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ import { Video } from "../../../../../../libs/shared/src/interfaces";
3
+ import { VideoItemComponentProps } from './VideoItemComponent';
4
+ interface VideoListProps extends Omit<VideoItemComponentProps, 'video' | 'idx'> {
5
+ videos: Video[];
6
+ }
7
+ export declare const VideoList: (props: VideoListProps) => JSX.Element;
8
+ export {};
@@ -15,9 +15,7 @@ export declare const Actions: {
15
15
  SHARE_PLAYLIST: string;
16
16
  ADD_TO_PLAYLIST: string;
17
17
  REMOVE_VIDEO_FROM_PLAYLIST: string;
18
- PLAY_PLAYLIST: string;
19
18
  PLAY_PLAYLIST_VIDEO: string;
20
- PLAY_SHARED_PLAYLIST: string;
21
19
  PLAY_SHARED_PLAYLIST_VIDEO: string;
22
20
  ACCESS_DENIED: string;
23
21
  NOT_FOUND: string;
@@ -35,13 +33,15 @@ export declare const Actions: {
35
33
  SHARE: string;
36
34
  };
37
35
  SubjectPlaylists: {
38
- PLAY_CLASSIFICATION_PLAYLIST: string;
39
- PLAY_CLASSIFICATION_PLAYLIST_VIDEO: string;
40
36
  CLASSIFICATION: string;
37
+ CLASSIFICATION_PLAYLIST: string;
38
+ PLAY_CLASSIFICATION_PLAYLIST_VIDEO: string;
39
+ SHARE_PLAYLIST: string;
41
40
  };
42
41
  ContentUpdates: {
43
42
  CONTENT_UPDATES: string;
44
43
  CLASSIFICATION_UPDATE: string;
44
+ CLASSIFICATION: string;
45
45
  };
46
46
  Dashboard: {
47
47
  HOME: string;
@@ -55,5 +55,23 @@ export declare const Actions: {
55
55
  CONTENT_UPDATES: string;
56
56
  USER_CHANNELS: string;
57
57
  USER_CHANNEL: string;
58
+ LATEST_RELEASES: string;
59
+ };
60
+ MoviesAndTv: {
61
+ HOME: string;
62
+ WIDGET: string;
63
+ VIDEO: string;
64
+ SERIES: string;
65
+ ADD_TO_PLAYLIST: string;
66
+ };
67
+ Libraries: {
68
+ HOME: string;
69
+ LIBRARY: string;
70
+ CONTENT_UPDATES: string;
71
+ LATEST_RELEASES: string;
72
+ SERIES: string;
73
+ VIDEO: string;
74
+ INTERACTVIES: string;
75
+ MOST_RECENT: string;
58
76
  };
59
77
  };
@@ -5,6 +5,8 @@ export declare const AppChannels: {
5
5
  SUBJECT_PLAYLISTS: string;
6
6
  CONTENT_UPDATES: string;
7
7
  DASHBOARD: string;
8
+ MOVIES_AND_TV: string;
9
+ LIBRARIES: string;
8
10
  };
9
11
  export declare const DataChannels: {
10
12
  CLASSIFICATION: string;
@@ -0,0 +1,14 @@
1
+ import { Flight } from "../../../../../libs/common/src/react";
2
+ import { VideoCollection, Video, Restriction } from "../../../../../libs/shared/src/interfaces";
3
+ interface MixinVideoRestrictionsResponse {
4
+ response: Flight.Response<Restriction[]>;
5
+ fetchRestrictions: () => void;
6
+ }
7
+ /**
8
+ *
9
+ * @param videos videos to fetch restrictions for
10
+ *
11
+ * Returns a function to re-fetch restrictions
12
+ */
13
+ export declare function useMixinVideoRestrictions(videos: VideoCollection | Video[]): MixinVideoRestrictionsResponse;
14
+ export {};
@@ -1,4 +1,3 @@
1
1
  export * from './UsePolling';
2
2
  export * from './UseRenderBackboneView';
3
3
  export * from './UseRevertPageTitleOnUnsetChild';
4
- export * from './UseVideoMixin';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clickview/online",
3
- "version": "0.0.4-rc.1",
3
+ "version": "0.0.5-dev.0",
4
4
  "description": "Online",
5
5
  "main": "dist/online-app.js",
6
6
  "types": "dist/index.d.ts",
@@ -20,14 +20,14 @@
20
20
  "author": "",
21
21
  "license": "ISC",
22
22
  "devDependencies": {
23
- "@clickview/tooling": "0.0.17",
23
+ "@clickview/tooling": "0.0.18-dev.2",
24
24
  "@types/linkifyjs": "2.1.3",
25
25
  "@types/react-sortable-hoc": "0.7.1",
26
26
  "@types/react-transition-group": "4.2.3",
27
27
  "@types/yup": "0.26.24"
28
28
  },
29
29
  "dependencies": {
30
- "@clickview/styles": "1.0.7",
30
+ "@clickview/styles": "1.0.8-dev.2",
31
31
  "yup": "0.27.0"
32
32
  },
33
33
  "babel": {
@@ -15,4 +15,9 @@ declare namespace ClickView {
15
15
  }
16
16
  }
17
17
  }
18
+
19
+ declare namespace currentUser {
20
+ declare function hasSubjects(): boolean;
21
+ declare function hasMoviesAndTv(): boolean;
22
+ }
18
23
  }
@@ -1,42 +0,0 @@
1
- import { HashObject, Video } from "../interfaces";
2
- export interface VideoWatchAnalyticsEvent {
3
- model: Video;
4
- playbackStatus: PlaybackStatus;
5
- }
6
- export interface PlaybackStatus {
7
- position: number;
8
- chapter: number;
9
- totalDuration: number;
10
- totalWatched: number;
11
- hasStarted?: boolean;
12
- }
13
- interface BaseVideoData {
14
- id: string;
15
- title: string;
16
- trackingCode: string;
17
- duration: number;
18
- }
19
- interface BaseAssocData {
20
- id: string;
21
- title?: string;
22
- }
23
- export interface VideoAnalyticsPayload {
24
- video: BaseVideoData;
25
- rating?: string;
26
- series?: BaseAssocData;
27
- folder?: BaseAssocData;
28
- owner?: BaseAssocData;
29
- playlist?: BaseAssocData;
30
- playbackStatus?: PlaybackStatus;
31
- }
32
- export declare const VideoDataFormatHelper: {
33
- getVideoData(options: VideoWatchAnalyticsEvent): VideoAnalyticsPayload;
34
- /**
35
- * Map to the same properties recorded in Online.
36
- * @see _toLogMasterVideo() in AnalyticsService in Online
37
- *
38
- * TODO: Video origin and user channel logging - both of these need to be re-worked properly.
39
- */
40
- getLegacyVideoData(options: VideoWatchAnalyticsEvent): HashObject<any>;
41
- };
42
- export {};
@@ -1,10 +0,0 @@
1
- import * as React from 'react';
2
- interface DivButtonProps extends React.ButtonHTMLAttributes<HTMLDivElement> {
3
- onClick: (...args: any) => any;
4
- }
5
- /**
6
- * This element lets us use `div` elements as buttons without losing the accessibility of
7
- * a regular HTML button element
8
- */
9
- export declare function DivButton(props: React.PropsWithChildren<DivButtonProps>): JSX.Element;
10
- export {};
@@ -1,28 +0,0 @@
1
- /// <reference types="react" />
2
- import { Core } from "../../../../common/src/backbone";
3
- import { Cursors } from "../../../../common/src/backbone/interfaces";
4
- interface CursorPaginationProps {
5
- cursors: Cursors;
6
- appLink: Core.AppLink;
7
- className?: string;
8
- }
9
- export declare function Pagination({ appLink, cursors, className }: CursorPaginationProps): JSX.Element;
10
- export declare namespace Pagination {
11
- var defaultProps: {
12
- className: string;
13
- };
14
- }
15
- interface LocalPaginationProps {
16
- onClickNext: () => void;
17
- onClickBack: () => void;
18
- currentPage: number;
19
- totalPages: number;
20
- className?: string;
21
- }
22
- export declare function LocalPagination(props: LocalPaginationProps): JSX.Element;
23
- export declare namespace LocalPagination {
24
- var defaultProps: {
25
- className: string;
26
- };
27
- }
28
- export {};
@@ -1,13 +0,0 @@
1
- import * as React from 'react';
2
- import { Core } from "../../../../common/src/backbone";
3
- import { Video, Series } from "../../interfaces";
4
- interface VideoItemProps {
5
- video: Video;
6
- getVideoAppLink: (video: Video) => Core.AppLink;
7
- getSeriesAppLink: (series: Series) => Core.AppLink;
8
- setFavourite?: (videoId: string, shouldFavourite: boolean, onError?: () => void) => void;
9
- idx?: number;
10
- }
11
- export declare function VideoItem(props: VideoItemProps): JSX.Element;
12
- export declare const SortableVideoItem: React.ComponentClass<VideoItemProps & import("react-sortable-hoc").SortableElementProps, any>;
13
- export {};