@clickview/player 0.0.2 → 0.0.3-dev-us.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. package/.storybook/main.js +1 -0
  2. package/.storybook/stories/Base.stories.tsx +6 -5
  3. package/.storybook/stories/Interactives.stories.tsx +45 -49
  4. package/.storybook/stories/utils/mock-playerapi.ts +38 -12
  5. package/dist/en.json +733 -0
  6. package/dist/libs/analytics/src/constants/CountryRegionMapping.d.ts +1 -0
  7. package/dist/libs/analytics/src/constants/Regions.d.ts +1 -0
  8. package/dist/libs/analytics/src/enums/CountryCode.d.ts +2 -1
  9. package/dist/libs/analytics/src/enums/RegionName.d.ts +2 -1
  10. package/dist/libs/analytics/src/interfaces/AnalyticsTypes.d.ts +16 -7
  11. package/dist/libs/analytics/src/interfaces/Region.d.ts +0 -1
  12. package/dist/libs/common/src/backbone/core/AppLink.d.ts +1 -0
  13. package/dist/libs/common/src/backbone/core/LocationUtils.d.ts +1 -0
  14. package/dist/libs/common/src/backbone/enums/HttpStatus.d.ts +10 -0
  15. package/dist/libs/common/src/backbone/utils/LocalStorageHelper.d.ts +58 -0
  16. package/dist/libs/common/src/react/flight/FlightHelpers.d.ts +15 -0
  17. package/dist/libs/common/src/react/flight/FlightMiddleware.d.ts +11 -0
  18. package/dist/libs/common/src/react/flight/FlightReducer.d.ts +2 -0
  19. package/dist/libs/common/src/react/flight/FlightSimulator.d.ts +24 -0
  20. package/dist/libs/common/src/react/flight/constants/Actions.d.ts +7 -0
  21. package/dist/libs/common/src/react/flight/constants/index.d.ts +1 -0
  22. package/dist/libs/common/src/react/flight/data-layers/AjaxRequest.d.ts +2 -0
  23. package/dist/libs/common/src/react/flight/data-layers/index.d.ts +1 -0
  24. package/dist/libs/common/src/react/flight/index.d.ts +9 -0
  25. package/dist/libs/common/src/react/flight/interfaces/Action.d.ts +28 -0
  26. package/dist/libs/common/src/react/flight/interfaces/Dispatch.d.ts +3 -0
  27. package/dist/libs/common/src/react/flight/interfaces/HttpRequest.d.ts +27 -0
  28. package/dist/libs/common/src/react/flight/interfaces/NormalizedData.d.ts +7 -0
  29. package/dist/libs/common/src/react/flight/interfaces/Response.d.ts +9 -0
  30. package/dist/libs/common/src/react/flight/interfaces/index.d.ts +9 -0
  31. package/dist/libs/common/src/react/flight/normalizer/Denormalizer.d.ts +3 -0
  32. package/dist/libs/common/src/react/flight/normalizer/Normalizer.d.ts +8 -0
  33. package/dist/libs/common/src/react/flight/normalizer/index.d.ts +2 -0
  34. package/dist/libs/common/src/react/flight/utils/SimulatorHelper.d.ts +5 -0
  35. package/dist/libs/common/src/react/flight/utils/StateHelper.d.ts +11 -0
  36. package/dist/libs/common/src/react/flight/utils/index.d.ts +2 -0
  37. package/dist/libs/common/src/react/utils/ArrayHelper.d.ts +17 -1
  38. package/dist/libs/common/src/react/utils/ObjectHelper.d.ts +1 -0
  39. package/dist/libs/common/src/react/utils/TimeHelper.d.ts +8 -0
  40. package/dist/libs/shared/src/components/actions/Actions.d.ts +2 -2
  41. package/dist/libs/shared/src/components/actions/ActionsDropdown.d.ts +1 -1
  42. package/dist/libs/shared/src/components/app-link/AppLink.d.ts +8 -0
  43. package/dist/libs/shared/src/components/immersive-reader/ImmersiveReader.d.ts +14 -0
  44. package/dist/libs/shared/src/components/interactive-questions/InteractiveQuestions.d.ts +3 -1
  45. package/dist/libs/shared/src/components/text/Text.d.ts +13 -0
  46. package/dist/libs/shared/src/enums/CountryCode.d.ts +2 -1
  47. package/dist/libs/shared/src/enums/CurationStatus.d.ts +12 -0
  48. package/dist/libs/shared/src/enums/InteractionCorrectness.d.ts +8 -0
  49. package/dist/libs/shared/src/enums/InteractiveAnswerStatus.d.ts +5 -0
  50. package/dist/libs/shared/src/enums/ObjectStatus.d.ts +3 -3
  51. package/dist/libs/shared/src/enums/UserGroup.d.ts +3 -3
  52. package/dist/libs/shared/src/enums/UserRole.d.ts +4 -4
  53. package/dist/libs/shared/src/enums/WidgetContents.d.ts +3 -1
  54. package/dist/libs/shared/src/images/svg/ImportedSvgs.d.ts +4 -1
  55. package/dist/libs/shared/src/images/svg/objects/index.d.ts +3 -1
  56. package/dist/libs/shared/src/interfaces/VideoTypes.d.ts +2 -0
  57. package/dist/libs/shared/src/interfaces/app-variables/BaseSearchAppVariables.d.ts +1 -0
  58. package/dist/libs/shared/src/interfaces/index.d.ts +1 -0
  59. package/dist/libs/shared/src/interfaces/models/Classification.d.ts +0 -1
  60. package/dist/libs/shared/src/interfaces/models/Config.d.ts +8 -1
  61. package/dist/libs/shared/src/interfaces/models/Curriculum.d.ts +3 -1
  62. package/dist/libs/shared/src/interfaces/models/Customer.d.ts +2 -1
  63. package/dist/libs/shared/src/interfaces/models/InteractiveMetadata.d.ts +11 -3
  64. package/dist/libs/shared/src/interfaces/models/Library.d.ts +3 -0
  65. package/dist/libs/shared/src/interfaces/models/User.d.ts +38 -3
  66. package/dist/libs/shared/src/interfaces/models/Video.d.ts +2 -0
  67. package/dist/libs/shared/src/interfaces/models/index.d.ts +1 -0
  68. package/dist/libs/shared/src/interfaces/models/interactive-results/InteractiveResult.d.ts +5 -0
  69. package/dist/libs/shared/src/interfaces/models/interactive-results/InteractiveResultSet.d.ts +6 -0
  70. package/dist/libs/shared/src/interfaces/models/interactive-results/StudentAnswer.d.ts +9 -0
  71. package/dist/libs/shared/src/interfaces/models/interactive-results/StudentAttempt.d.ts +6 -0
  72. package/dist/libs/shared/src/interfaces/models/interactive-results/StudentResult.d.ts +6 -0
  73. package/dist/libs/shared/src/interfaces/models/interactive-results/index.d.ts +5 -0
  74. package/dist/libs/shared/src/interfaces/requests/CreateInteractiveMetadataRequest.d.ts +2 -0
  75. package/dist/libs/shared/src/interfaces/requests/CreateInteractiveRequest.d.ts +1 -0
  76. package/dist/libs/shared/src/interfaces/requests/EditInteractiveMetadataOriginRequest.d.ts +5 -0
  77. package/dist/libs/shared/src/interfaces/requests/EditInteractiveMetadataRequest.d.ts +2 -0
  78. package/dist/libs/shared/src/interfaces/requests/index.d.ts +1 -0
  79. package/dist/libs/shared/src/utils/interaction-type-helper/InteractionTypeHelper.d.ts +4 -0
  80. package/dist/player-app.css +387 -1694
  81. package/dist/player-app.js +1208 -5568
  82. package/dist/projects/player/src/components/chapter-bar-items/chapter-bar-item.d.ts +1 -1
  83. package/dist/projects/player/src/components/chapter-bar-items/chapter-bar-items.d.ts +1 -1
  84. package/dist/projects/player/src/components/chapter-bar-items/chapter-bar-load-progress.d.ts +1 -1
  85. package/dist/projects/player/src/components/chapter-bar-items/chapter-bar-play-progress.d.ts +1 -1
  86. package/dist/projects/player/src/components/chapters-button/chapter-menu-item.d.ts +1 -1
  87. package/dist/projects/player/src/components/collapserator/collapserator.d.ts +1 -0
  88. package/dist/projects/player/src/components/player/player.d.ts +1 -1
  89. package/dist/projects/player/src/components/subs-caps-button/SubCapsMenuItem.d.ts +52 -0
  90. package/dist/projects/player/src/components/subs-caps-button/subtitle-size-menu-item.d.ts +53 -0
  91. package/dist/projects/player/src/components/subtitle-size-button/subtitle-size-button.d.ts +1 -0
  92. package/dist/projects/player/src/components/text-track-settings/text-track-settings.d.ts +56 -0
  93. package/dist/projects/player/src/components/thumbnail-display/thumbnail-display.d.ts +2 -1
  94. package/dist/projects/player/src/index.d.ts +0 -2
  95. package/dist/projects/player/src/interfaces/models/PlaybackObject.d.ts +8 -0
  96. package/dist/projects/player/src/players/base-player.d.ts +10 -0
  97. package/dist/projects/player/src/players/interactive-player.d.ts +6 -1
  98. package/dist/projects/player/src/players/player.d.ts +2 -1
  99. package/dist/projects/player/src/plugins/create-clip-plugin/components/clip-timepoint-selector/clip-timepoint-selector-handle.d.ts +1 -1
  100. package/dist/projects/player/src/plugins/create-clip-plugin/components/clip-timepoint-selector/clip-timepoint-selector.d.ts +1 -1
  101. package/dist/projects/player/src/plugins/interactive-plugin/components/continue-session/continue-session.d.ts +8 -0
  102. package/dist/projects/player/src/plugins/interactive-plugin/components/interaction-actions/interaction-actions.d.ts +4 -1
  103. package/dist/projects/player/src/plugins/interactive-plugin/components/interaction-footer/interaction-footer.d.ts +2 -2
  104. package/dist/projects/player/src/plugins/interactive-plugin/components/interactive-summary/InteractiveSummaryWrapper.d.ts +18 -0
  105. package/dist/projects/player/src/plugins/interactive-plugin/components/interactive-summary/interactions-bar/interactions-bar.d.ts +9 -0
  106. package/dist/projects/player/src/plugins/interactive-plugin/components/interactive-summary/interactive-summary.d.ts +20 -0
  107. package/dist/projects/player/src/plugins/interactive-plugin/components/interactive-summary/progress-summary/progress-summary.d.ts +12 -0
  108. package/dist/projects/player/src/plugins/interactive-plugin/components/interactive-summary/show-summary-button/show-summary-button.d.ts +13 -0
  109. package/dist/projects/player/src/plugins/interactive-plugin/components/move-timepoint/move-timepoint.d.ts +12 -0
  110. package/dist/projects/player/src/plugins/interactive-plugin/components/reorder-interactions/reorder-interactions.d.ts +9 -0
  111. package/dist/projects/player/src/plugins/interactive-plugin/components/seek-bar/interactive-bar-items.d.ts +1 -1
  112. package/dist/projects/player/src/plugins/interactive-plugin/components/sliding-timepoint/sliding-timepoints.d.ts +11 -0
  113. package/dist/projects/player/src/plugins/interactive-plugin/components/timepoint/timepoint-component.d.ts +28 -9
  114. package/dist/projects/player/src/plugins/interactive-plugin/components/view-components/interactive-immersive-reader/interactive-immersive-reader.d.ts +8 -0
  115. package/dist/projects/player/src/plugins/interactive-plugin/components/view-components/missing-word/missing-word-interaction.d.ts +2 -0
  116. package/dist/projects/player/src/plugins/interactive-plugin/components/view-components/multiple-choice/multiple-choice-interaction.d.ts +3 -0
  117. package/dist/projects/player/src/plugins/interactive-plugin/components/view-components/true-or-false/true-or-false-interaction.d.ts +3 -0
  118. package/dist/projects/player/src/plugins/interactive-plugin/components/view-components/view-components.d.ts +3 -0
  119. package/dist/projects/player/src/plugins/interactive-plugin/hooks/useInteractiveState.d.ts +10 -4
  120. package/dist/projects/player/src/plugins/interactive-plugin/hooks/useInteractiveTrack.d.ts +1 -0
  121. package/dist/projects/player/src/plugins/interactive-plugin/hooks/useLockPlayer.d.ts +2 -2
  122. package/dist/projects/player/src/plugins/interactive-plugin/hooks/useStateManager.d.ts +12 -4
  123. package/dist/projects/player/src/plugins/interactive-plugin/interactive-plugin.d.ts +47 -0
  124. package/dist/projects/player/src/plugins/interactive-plugin/interfaces/InteractionProps.d.ts +1 -1
  125. package/dist/projects/player/src/plugins/interactive-plugin/interfaces/InteractiveState.d.ts +5 -1
  126. package/dist/projects/player/src/plugins/interactive-plugin/interfaces/LatestSession.d.ts +11 -0
  127. package/dist/projects/player/src/plugins/interactive-plugin/interfaces/index.d.ts +1 -0
  128. package/dist/projects/player/src/plugins/interactive-plugin/utils/InteractiveReducer.d.ts +2 -2
  129. package/dist/projects/player/src/plugins/interactive-plugin/utils/ResultsService.d.ts +4 -1
  130. package/dist/projects/player/src/plugins/interactive-plugin/utils/helpers.d.ts +1 -0
  131. package/dist/projects/player/src/plugins/interactive-plugin/utils/interactive-ajax.d.ts +1 -0
  132. package/dist/projects/player/src/plugins/next-video-plugin/next-video-plugin.d.ts +0 -8
  133. package/dist/projects/player/src/plugins/persist-quality-settings-plugin/persist-quality-settings-plugin.d.ts +33 -0
  134. package/dist/projects/player/src/plugins/persist-subtitle-settings-plugin/persist-subtitle-settings-plugin.d.ts +38 -0
  135. package/dist/projects/player/src/plugins/picture-in-picture-plugin/picture-in-picture-plugin.d.ts +5 -1
  136. package/dist/projects/player/src/plugins/progress-reporter-plugin/progress-reporter-plugin.d.ts +59 -0
  137. package/dist/projects/player/src/plugins/touch-controls-plugin/components/touch-controls/touch-controls.d.ts +1 -1
  138. package/dist/projects/player/src/plugins/whiteboard-mode-plugin/components/drag-handle/drag-handle.d.ts +53 -0
  139. package/dist/projects/player/src/plugins/whiteboard-mode-plugin/components/drag-targets/drag-targets.d.ts +54 -0
  140. package/dist/projects/player/src/plugins/whiteboard-mode-plugin/components/whiteboard-mode-button/whiteboard-mode-button.d.ts +23 -0
  141. package/dist/projects/player/src/plugins/whiteboard-mode-plugin/components/whiteboard-mode-button/whiteboard-mode-menu-item.d.ts +15 -0
  142. package/dist/projects/player/src/plugins/whiteboard-mode-plugin/contants/WhiteboardSides.d.ts +5 -0
  143. package/dist/projects/player/src/plugins/whiteboard-mode-plugin/interfaces/WhiteboardSide.d.ts +1 -0
  144. package/dist/projects/player/src/plugins/whiteboard-mode-plugin/whiteboard-mode-plugin.d.ts +34 -0
  145. package/dist/projects/player/src/react/InteractivePlayer.d.ts +1 -0
  146. package/dist/projects/player/src/react/Player.d.ts +1 -1
  147. package/dist/projects/player/src/utils/local-storage-helper.d.ts +6 -0
  148. package/package.json +8 -4
  149. package/typings/utils/imports.d.ts +1 -1
@@ -42,6 +42,7 @@ export declare enum localSvgs {
42
42
  Play = "play",
43
43
  PlayCircle = "play-circle",
44
44
  ArrowLeft = "arrow-left",
45
+ ArrowRight = "arrow-right",
45
46
  CheckCircleOutline = "check-circle-o",
46
47
  CheckCircle = "check-circle",
47
48
  Check = "check",
@@ -84,5 +85,7 @@ export declare enum localSvgs {
84
85
  Subjects = "subjects",
85
86
  Download = "download",
86
87
  Print = "print",
87
- CreateInteractive = "create-interactive"
88
+ CreateInteractive = "create-interactive",
89
+ Twitter = "twitter",
90
+ Facebook = "facebook"
88
91
  }
@@ -33,4 +33,6 @@ import FilePowerpoint from './file-ppt.svg';
33
33
  import FileWord from './file-word.svg';
34
34
  import FileZip from './file-zip.svg';
35
35
  import FileExcel from './file-excel.svg';
36
- export { Archive, Bell, Bookmark, Broadcast, Calendar, Cog, Folder, Handle, Interactive, Link, Playlist, PublisherArchive, Resources, StarOutline, Star, Tag, Time, Video, Subject, Series, File, FilePDF, FileImg, FilePowerpoint, FileWord, FileZip, FileExcel, Heart, HeartOutline, WhiteWave, Compass, History, Email, YearLevel, Subjects };
36
+ import Twitter from './twitter.svg';
37
+ import Facebook from './facebook.svg';
38
+ export { Archive, Bell, Bookmark, Broadcast, Calendar, Cog, Folder, Handle, Interactive, Link, Playlist, PublisherArchive, Resources, StarOutline, Star, Tag, Time, Video, Subject, Series, File, FilePDF, FileImg, FilePowerpoint, FileWord, FileZip, FileExcel, Heart, HeartOutline, WhiteWave, Compass, History, Email, YearLevel, Subjects, Twitter, Facebook };
@@ -0,0 +1,2 @@
1
+ import { Video, Clip, InteractiveMetadata } from './models';
2
+ export declare type VideoTypes = Video | Clip | InteractiveMetadata;
@@ -14,4 +14,5 @@ export declare abstract class BaseSearchAppVariables {
14
14
  abstract get addSlugs(): boolean;
15
15
  abstract get searchBarPlaceholder(): string;
16
16
  abstract get showSearchTips(): boolean;
17
+ abstract get useContextualSearch(): boolean;
17
18
  }
@@ -11,3 +11,4 @@ export * from './RegionalUrl';
11
11
  export * from './AppLinkWithLabel';
12
12
  export * from './WidgetContext';
13
13
  export * from './RegionalUrl';
14
+ export * from './VideoTypes';
@@ -10,7 +10,6 @@ export interface Classification extends BaseObject {
10
10
  emphasize?: boolean;
11
11
  slug: string;
12
12
  pinnedVideoMasterId?: string;
13
- comingSoon?: boolean;
14
13
  canBePreferred?: boolean;
15
14
  banner?: Banner;
16
15
  playlists?: PlaylistCollection;
@@ -3,7 +3,6 @@ import { CountryCode } from 'libs/shared/enums/CountryCode';
3
3
  export interface Config extends BaseObject {
4
4
  supportSiteUrl: string;
5
5
  imageCdnUrl: string;
6
- countryCode: CountryCode;
7
6
  webPlayerUrl: string;
8
7
  gatewayApiUrl: string;
9
8
  notificationServiceUrl?: string;
@@ -12,4 +11,12 @@ export interface Config extends BaseObject {
12
11
  playerApiUrl?: string;
13
12
  downloadProxy?: string;
14
13
  primaryUrl?: string;
14
+ marketingSiteUrl?: string;
15
+ /**
16
+ * Instance CountryCode
17
+ *
18
+ * This is NOT the same as the customer/user CountryCode.
19
+ * This should only be used for legacy reasons where InstanceRegion is not supported.
20
+ */
21
+ countryCode: CountryCode;
15
22
  }
@@ -1,9 +1,11 @@
1
+ import { ClassificationStatus } from 'libs/shared/enums/ClassificationStatus';
1
2
  import { CurriculumType } from 'libs/shared/enums/CurriculumType';
2
3
  import { VirtualObject } from './primitives/VirtualObject';
3
4
  export interface Curriculum<T = CurriculumType> {
4
5
  backboneClassificationIds: number[];
5
6
  canBePreferred: boolean;
6
- comingSoon: boolean;
7
+ comingSoon?: boolean;
8
+ status: ClassificationStatus;
7
9
  description?: string;
8
10
  emphasize: boolean;
9
11
  id: string;
@@ -1,7 +1,8 @@
1
1
  import { BaseObject, Country } from 'libs/shared/interfaces';
2
2
  import { Organisation } from './Organisation';
3
3
  export interface Customer extends BaseObject {
4
- organisation?: Organisation;
5
4
  crmId: string;
5
+ instanceRegion: string;
6
+ organisation?: Organisation;
6
7
  country?: Country;
7
8
  }
@@ -1,14 +1,19 @@
1
+ import { CurationStatus } from 'libs/shared/enums/CurationStatus';
2
+ import { InteractiveOriginType } from 'libs/shared/enums/InteractiveOriginType';
1
3
  import { BaseObject, VirtualObject } from 'libs/shared/interfaces';
2
- import { User } from './User';
3
- import { Thumbnail } from './Thumbnail';
4
- import { Video } from './Video';
4
+ import { User, Thumbnail, Video } from 'libs/shared/interfaces/models';
5
+ import { Timepoint } from './interactive';
5
6
  export interface InteractiveMetadata extends BaseObject {
7
+ status: CurationStatus;
6
8
  interactiveId: string;
7
9
  owner: User;
8
10
  description?: string;
9
11
  thumbnail?: Thumbnail;
10
12
  video?: Video;
13
+ duration?: number;
14
+ originType: InteractiveOriginType;
11
15
  _isClickViewContent?: IsClickViewContent;
16
+ _timepoints?: VirtualTimepoints;
12
17
  }
13
18
  export interface HasInteractive extends VirtualObject {
14
19
  value: boolean;
@@ -16,4 +21,7 @@ export interface HasInteractive extends VirtualObject {
16
21
  interface IsClickViewContent extends VirtualObject {
17
22
  value: boolean;
18
23
  }
24
+ interface VirtualTimepoints extends VirtualObject {
25
+ value: Timepoint[];
26
+ }
19
27
  export {};
@@ -1,5 +1,8 @@
1
+ import { StaffRequestRole } from 'libs/shared/enums/StaffRequestRole';
1
2
  import { BaseObject } from 'libs/shared/interfaces';
2
3
  export interface Library extends BaseObject {
4
+ allowedStaffRequestRole?: StaffRequestRole;
3
5
  isHiddenLibrary: boolean;
6
+ isSharedLibrary: boolean;
4
7
  type: 'custom_library' | 'hosted_library' | 'exchange' | 'workspace' | 'online_supplementary_library';
5
8
  }
@@ -1,6 +1,5 @@
1
1
  import { BaseObject, Group, Avatar, YearGroup, CustomerCollection, YearGroupCollection } from 'libs/shared/interfaces';
2
2
  import { UserRole } from 'libs/shared/enums/UserRole';
3
- import { CustomerType } from 'libs/shared/enums/CustomerType';
4
3
  import { OnlineUserRole } from 'libs/shared/enums/UserRole';
5
4
  import { UserGroup } from 'libs/shared/enums/UserGroup';
6
5
  import { ObjectStatus } from 'libs/shared/enums/ObjectStatus';
@@ -24,8 +23,12 @@ export interface User extends BaseObject {
24
23
  userType: UserGroup;
25
24
  avatar?: Avatar;
26
25
  isPrimaryContact: boolean;
26
+ isEmailVerified: boolean;
27
27
  roleId: OnlineUserRole;
28
28
  lastSignInDate?: string;
29
+ metadata?: {
30
+ lastSignInTime?: string;
31
+ };
29
32
  }
30
33
  export interface CuratorUser extends User {
31
34
  userId: string;
@@ -49,8 +52,40 @@ export interface CurrentUser extends BaseObject {
49
52
  emailVerified: boolean;
50
53
  customerId: string;
51
54
  customerName: string;
52
- countryCode: string;
53
55
  customerLogo: string;
56
+ /**
57
+ * Regional instance the user (and their cusomter) belong to.
58
+ *
59
+ * @remarks
60
+ * This effectively dictates which region the user and their customer reside in and should be used
61
+ * in any scenario where data needs to be collected, controlled or mapped within that same region.
62
+ *
63
+ * Examples:
64
+ * 1. Any logic that relies on OnlineDB
65
+ * 2. Analytics data should all be logged in the same region, irrespective of where they're logged in.
66
+ * 3. Uploaded files and videos should all be targeted to the same region.
67
+ *
68
+ * This is not the same as CountryCode or ContentRegion.
69
+ */
70
+ instanceRegion: string;
71
+ /**
72
+ * The content set the user should have access to.
73
+ *
74
+ * @remarks
75
+ * Content is not tied to a country or instance region.
76
+ */
77
+ contentRegion: string;
78
+ /**
79
+ * User's Country in Master
80
+ *
81
+ * @remarks
82
+ * In most circumstances you'll want to use the user's InstanceRegion or ContentRegion over this.
83
+ * This is also different to the instance CountryCode used in the Config.
84
+ *
85
+ * Example:
86
+ * Scottish User/Customer will have their CountryCode set to GBR, not the UK.
87
+ */
88
+ countryCode: string;
54
89
  }
55
90
  /**
56
91
  * Current User for Online
@@ -58,7 +93,7 @@ export interface CurrentUser extends BaseObject {
58
93
  export interface OnlineCurrentUser extends CurrentUser {
59
94
  yearGroup: string;
60
95
  crmId: string;
61
- customerType: CustomerType;
96
+ customerType: string;
62
97
  onlineRole: OnlineUserRole;
63
98
  maxAllowedRating: number;
64
99
  }
@@ -1,6 +1,7 @@
1
1
  import { BaseObject, CompanyCollection, PersonCollection, CategoryCollection, Channel, InteractiveCollection, LibraryCollection, Rating, Series, Thumbnail, TagCollection, Season, AudienceCollection, ResourceCollection, LinkCollection, ClipCollection, Glance, HeroBanner, RestrictedObject, VideoProgress, UserCollection, HasInteractive, CurriculumLinks } from 'libs/shared/interfaces';
2
2
  import { HasCurriculumLinks } from './Curriculum';
3
3
  import { User } from './User';
4
+ import { SubtitleCollection } from '../collections';
4
5
  export interface Video extends BaseObject {
5
6
  categories?: CategoryCollection;
6
7
  channel?: Channel;
@@ -17,6 +18,7 @@ export interface Video extends BaseObject {
17
18
  episodeNumber?: number;
18
19
  subjectPresentationAudiences?: AudienceCollection;
19
20
  resources?: ResourceCollection;
21
+ subtitles?: SubtitleCollection;
20
22
  productionCompanies?: CompanyCollection;
21
23
  distributors?: CompanyCollection;
22
24
  producers?: PersonCollection;
@@ -1,5 +1,6 @@
1
1
  export * from './primitives';
2
2
  export * from './interactive';
3
+ export * from './interactive-results';
3
4
  export * from './Audience';
4
5
  export * from './Avatar';
5
6
  export * from './Banner';
@@ -0,0 +1,5 @@
1
+ import { StudentAttempt } from 'libs/shared/interfaces';
2
+ export interface InteractiveResult {
3
+ id: string;
4
+ attempts: StudentAttempt[];
5
+ }
@@ -0,0 +1,6 @@
1
+ import { StudentResults } from 'libs/shared/interfaces';
2
+ export interface InteractiveResultSet {
3
+ id: string;
4
+ duration: number;
5
+ students: StudentResults[];
6
+ }
@@ -0,0 +1,9 @@
1
+ import { InteractiveAnswerStatus } from 'libs/shared/enums/InteractiveAnswerStatus';
2
+ export interface StudentAnswer {
3
+ id: string;
4
+ text: string;
5
+ resultId: string;
6
+ questionId: string;
7
+ status: InteractiveAnswerStatus;
8
+ dateCreated: string;
9
+ }
@@ -0,0 +1,6 @@
1
+ import { StudentAnswer } from 'libs/shared/interfaces';
2
+ export interface StudentAttempt {
3
+ id: string;
4
+ answeredAt: number;
5
+ answers: StudentAnswer;
6
+ }
@@ -0,0 +1,6 @@
1
+ import { InteractiveResult } from 'libs/shared/interfaces';
2
+ export interface StudentResults {
3
+ name: string;
4
+ username: string;
5
+ results: InteractiveResult[];
6
+ }
@@ -0,0 +1,5 @@
1
+ export * from './InteractiveResultSet';
2
+ export * from './InteractiveResult';
3
+ export * from './StudentAnswer';
4
+ export * from './StudentAttempt';
5
+ export * from './StudentResult';
@@ -1,3 +1,4 @@
1
+ import { CurationStatus } from 'libs/shared/enums/CurationStatus';
1
2
  import { InteractiveOriginType } from 'libs/shared/enums/InteractiveOriginType';
2
3
  export interface CreateInteractiveMetadataRequest {
3
4
  name: string;
@@ -7,4 +8,5 @@ export interface CreateInteractiveMetadataRequest {
7
8
  owner: {
8
9
  id: string;
9
10
  };
11
+ status: CurationStatus;
10
12
  }
@@ -1,4 +1,5 @@
1
1
  export interface CreateInteractiveRequest {
2
2
  name: string;
3
3
  duration: number;
4
+ immediateFeedback: boolean;
4
5
  }
@@ -0,0 +1,5 @@
1
+ import { InteractiveOriginType } from 'libs/shared/enums/InteractiveOriginType';
2
+ export declare class EditInteractiveMetadataOriginRequest {
3
+ originType: InteractiveOriginType;
4
+ interactiveId: string;
5
+ }
@@ -1,4 +1,6 @@
1
+ import { CurationStatus } from 'libs/shared/enums/CurationStatus';
1
2
  export interface EditInteractiveMetadataRequest {
2
3
  name: string;
3
4
  description?: string;
5
+ status: CurationStatus;
4
6
  }
@@ -10,3 +10,4 @@ export * from './CreateInteractiveMetadataRequest';
10
10
  export * from './EditDetailsRequest';
11
11
  export * from './EditInteractiveRequest';
12
12
  export * from './EditInteractiveMetadataRequest';
13
+ export * from './EditInteractiveMetadataOriginRequest';
@@ -5,6 +5,10 @@ interface InteractionTypeInfo {
5
5
  prompt?: string;
6
6
  bgClassName: string;
7
7
  Svg: () => React.ReactElement;
8
+ /**
9
+ * Used for anlaytics
10
+ */
11
+ typeName: string;
8
12
  }
9
13
  export declare const InteractionTypeHelper: {
10
14
  getTypeInfo: (typeId: InteractionTypeId) => InteractionTypeInfo;