@clickview/player 0.0.8-dev.1 → 0.0.8-dev.3

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 (57) hide show
  1. package/dist/en.json +1 -1
  2. package/dist/libs/shared/src/apps/search/interfaces/SearchFilter.d.ts +1 -0
  3. package/dist/libs/shared/src/components/actions/Actions.d.ts +1 -0
  4. package/dist/libs/shared/src/components/avatar/Avatar.d.ts +1 -0
  5. package/dist/libs/shared/src/components/feedback-tooltip/FeedbackTooltip.d.ts +1 -0
  6. package/dist/libs/shared/src/components/image-cropper/SimpleCropper.d.ts +1 -0
  7. package/dist/libs/shared/src/components/immersive-reader/ImmersiveReader.d.ts +1 -0
  8. package/dist/libs/shared/src/components/interaction-answers/multiple-choice/MultipleChoiceInteractionAnswers.d.ts +1 -0
  9. package/dist/libs/shared/src/components/interaction-answers/true-or-false/TrueOrFalseInteractionAnswers.d.ts +1 -0
  10. package/dist/libs/shared/src/components/interactive-questions/InteractionLabel.d.ts +1 -0
  11. package/dist/libs/shared/src/components/svg-container/SvgContainer.d.ts +1 -0
  12. package/dist/libs/shared/src/hooks/UseLazyLoad.d.ts +10 -1
  13. package/dist/libs/shared/src/images/svg/ImportedSvgs.d.ts +1 -0
  14. package/dist/libs/shared/src/images/svg/objects/index.d.ts +2 -1
  15. package/dist/libs/shared/src/interfaces/models/Video.d.ts +2 -0
  16. package/dist/libs/shared/src/interfaces/models/VideoHistory.d.ts +3 -1
  17. package/dist/libs/shared/src/interfaces/responses/UnionWrapper.d.ts +4 -0
  18. package/dist/libs/shared/src/interfaces/responses/index.d.ts +1 -0
  19. package/dist/libs/shared/src/utils/UserHelper.d.ts +2 -0
  20. package/dist/player-app.js +4 -4
  21. package/dist/projects/player/src/plugins/engagement-overlay-plugin/components/timepoint-interactions/timepoint-interactions.d.ts +1 -0
  22. package/dist/projects/player/src/plugins/interactive-plugin/components/create-components/create-annotation/create-annotation-link.d.ts +1 -0
  23. package/dist/projects/player/src/plugins/interactive-plugin/components/create-components/create-image/create-image-cropper.d.ts +1 -0
  24. package/dist/projects/player/src/plugins/interactive-plugin/components/create-components/create-image/upload-image-icon.d.ts +1 -0
  25. package/dist/projects/player/src/plugins/interactive-plugin/components/create-components/create-missing-word/create-missing-word.d.ts +1 -0
  26. package/dist/projects/player/src/plugins/interactive-plugin/components/create-components/create-multiple-choice/create-multiple-choice.d.ts +1 -0
  27. package/dist/projects/player/src/plugins/interactive-plugin/components/create-components/create-multiple-choice/multiple-choice-answer.d.ts +1 -0
  28. package/package.json +3 -3
  29. package/.storybook/main.js +0 -23
  30. package/.storybook/preview-head.html +0 -4
  31. package/.storybook/stories/Base.stories.tsx +0 -133
  32. package/.storybook/stories/Clips.stories.tsx +0 -80
  33. package/.storybook/stories/Interactives.stories.tsx +0 -64
  34. package/.storybook/stories/Resources.stories.tsx +0 -15
  35. package/.storybook/stories/Subtitles.stories.tsx +0 -22
  36. package/.storybook/stories/assets/chapters.vtt +0 -19
  37. package/.storybook/stories/assets/en.vtt +0 -8
  38. package/.storybook/stories/assets/es.vtt +0 -8
  39. package/.storybook/stories/assets/fr.vtt +0 -8
  40. package/.storybook/stories/assets/interactive.json +0 -451
  41. package/.storybook/stories/assets/sample_1280x720.mp4.jpg +0 -0
  42. package/.storybook/stories/assets/sample_1280x720.mp4.vtx +0 -0
  43. package/.storybook/stories/assets/thumbnails.vtt +0 -62
  44. package/.storybook/stories/assets/vertical.mp4 +0 -0
  45. package/.storybook/stories/utils/Wrap.tsx +0 -18
  46. package/.storybook/stories/utils/mock-playerapi.ts +0 -361
  47. package/.storybook/stories/utils/mock-setup.ts +0 -16
  48. package/dist/libs/analytics/src/utils/VideoDataFormatHelper.d.ts +0 -42
  49. package/dist/libs/shared/src/components/thumbnails/base/BaseThumbnail.d.ts +0 -26
  50. package/dist/libs/shared/src/images/svg/player/index.d.ts +0 -14
  51. package/dist/libs/shared/src/interfaces/FavouriteVideoFunc.d.ts +0 -2
  52. package/dist/libs/shared/src/interfaces/requests/CreateViewKeyRequest.d.ts +0 -3
  53. package/dist/projects/player/src/plugins/engagement-overlay-plugin/components/engagement-overlay.d.ts +0 -1
  54. package/dist/projects/player/src/plugins/example-plugin/components/example-button/example-button.d.ts +0 -1
  55. package/dist/projects/player/src/plugins/example-plugin/components/example-react-button/example-react-button.d.ts +0 -1
  56. package/dist/projects/player/src/plugins/example-plugin/example-plugin.d.ts +0 -2
  57. package/dist/projects/player/src/utils/scrollbar-helper.d.ts +0 -6
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { Interactive } from 'libs/shared/interfaces';
2
3
  interface TimepointInteractionsProps {
3
4
  interactive: Interactive;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  interface LinkState {
2
3
  link: string;
3
4
  selectionText: string;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  interface CreateImageCropperProps {
2
3
  image: HTMLImageElement;
3
4
  imageAlt: string;
@@ -1 +1,2 @@
1
+ /// <reference types="react" />
1
2
  export declare function UploadImageIcon(): JSX.Element;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { Interaction } from 'libs/shared/interfaces';
2
3
  import { InteractionProps, CreateInteractionState } from 'projects/player/plugins/interactive-plugin/interfaces';
3
4
  interface Word {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { Interaction } from 'libs/shared/interfaces';
2
3
  import { InteractionProps, CreateInteractionState } from 'projects/player/plugins/interactive-plugin/interfaces';
3
4
  import './create-multiple-choice.scss';
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { MultipleChoiceAnswer } from './create-multiple-choice';
2
3
  interface MultipleChoiceAnswerProps {
3
4
  answer: MultipleChoiceAnswer;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clickview/player",
3
- "version": "0.0.8-dev.1",
3
+ "version": "0.0.8-dev.3",
4
4
  "description": "ClickView Player",
5
5
  "main": "dist/player-app.js",
6
6
  "scripts": {
@@ -28,7 +28,7 @@
28
28
  "@babel/core": "7.11.6",
29
29
  "@clickview/eslint-config": "1.0.1",
30
30
  "@clickview/player-font": "0.0.12",
31
- "@clickview/tooling": "0.0.26-dev.1",
31
+ "@clickview/tooling": "0.0.26-dev.3",
32
32
  "@storybook/react": "6.0.26",
33
33
  "@types/chromecast-caf-sender": "1.0.3",
34
34
  "@types/cropperjs": "1.3.0",
@@ -42,7 +42,7 @@
42
42
  "webpack-dev-server": "3.11.0"
43
43
  },
44
44
  "dependencies": {
45
- "@clickview/styles": "1.0.19-dev.1",
45
+ "@clickview/styles": "1.0.19-dev.3",
46
46
  "@microsoft/signalr": "5.0.2",
47
47
  "cropperjs": "1.5.6",
48
48
  "draft-convert": "2.1.10",
@@ -1,23 +0,0 @@
1
- const custom = require('../tooling/webpack.config');
2
-
3
- module.exports = {
4
- stories: [
5
- './**/*.stories.@(js|jsx|ts|tsx)'
6
- ],
7
- webpackFinal: (config) => {
8
- return {
9
- ...config,
10
- context: custom.context,
11
- module: {
12
- ...config.module,
13
- rules: custom.module.rules
14
- },
15
- resolve: custom.resolve,
16
- resolveLoader: custom.resolveLoader,
17
- plugins: [
18
- ...config.plugins,
19
- ...custom.plugins
20
- ]
21
- };
22
- },
23
- };
@@ -1,4 +0,0 @@
1
- <!-- TODO: Link to stylesheet -->
2
- <!-- <link rel="stylesheet" href="player-app.css"> -->
3
- <link rel="stylesheet" href="https://online.clickview.com.au/Assets/css/compiled/modules/styles/cv-styles.css?v=7.35.0">
4
- <script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
@@ -1,133 +0,0 @@
1
- import React from 'react';
2
- import { ClickViewPlayer, Player } from '../../src/index';
3
- import { mockplayerApi } from './utils/mock-playerapi';
4
- import { mockSetups } from './utils/mock-setup';
5
-
6
- const PLAYER_API_STAGING = 'https://player.web.au.stg.cvnet.io';
7
-
8
- export default {
9
- title: 'Base'
10
- };
11
-
12
- export const Default = () => <ClickViewPlayer viewKey='basic' fetch={mockplayerApi} />;
13
-
14
- Default.storyName = 'Default';
15
-
16
- export const Chapters = () =>
17
- <ClickViewPlayer viewKey='chapters' fetch={mockplayerApi} />;
18
-
19
- Chapters.storyName = 'Chapters';
20
-
21
- export const Thumbnails = () =>
22
- <ClickViewPlayer viewKey='chapters' fetch={mockplayerApi} setup={mockSetups.thumbnails} />;
23
-
24
- Thumbnails.storyName = 'Thumbnails';
25
-
26
- export const Vertical = () => (
27
- <div style={{ width: '300px' }}>
28
- <ClickViewPlayer viewKey='vertical' fetch={mockplayerApi} />
29
- </div>
30
- );
31
-
32
- Vertical.storyName = 'Vertical';
33
-
34
- export const NoControls = () =>
35
- <ClickViewPlayer viewKey='basic' fetch={mockplayerApi} controls={false} />;
36
-
37
- NoControls.storyName = 'No Controls';
38
-
39
- export const OpenExternally = () =>
40
- <ClickViewPlayer
41
- viewKey='basic'
42
- fetch={mockplayerApi}
43
- getExternalLink={(options: any) => `https://online.clickview.com.au/share?sharecode=1ef15209&t=${options.currentTime}`}
44
- />;
45
-
46
- OpenExternally.storyName = 'Open Externally';
47
-
48
- export const Error = () =>
49
- <ClickViewPlayer viewKey='error' fetch={mockplayerApi} />;
50
-
51
- export const PlayerApi = () =>
52
- <ClickViewPlayer viewKey='camwashere' playerApi={new URL(PLAYER_API_STAGING)} />;
53
-
54
- PlayerApi.storyName = 'Player API';
55
-
56
- /**
57
- * This story uses an intentionally invalid viewKey.
58
- */
59
- export const PlayerApiError = () =>
60
- <ClickViewPlayer viewKey='camwashere_error' playerApi={new URL(PLAYER_API_STAGING)} />;
61
-
62
- PlayerApiError.storyName = 'Player API Error';
63
-
64
- export const MultipleQualities = () =>
65
- <ClickViewPlayer viewKey='multipleQualities' fetch={mockplayerApi} />;
66
-
67
- export const Poster = () =>
68
- <ClickViewPlayer viewKey='poster' fetch={mockplayerApi} />;
69
-
70
- export const Everything = () =>
71
- <ClickViewPlayer
72
- viewKey='everything'
73
- fetch={mockplayerApi}
74
- setup={mockSetups.everything}
75
- getExternalLink={(options: any) => `https://online.clickview.com.au/share?sharecode=1ef15209&t=${options.currentTime}`}
76
- />;
77
-
78
- export const LocalCache = () => <ClickViewPlayer viewKey='localcache' fetch={mockplayerApi} />;
79
-
80
- export const StyleGuideline = () => {
81
- const [ hidden, setHidden ] = React.useState(false);
82
-
83
- function onClick(): void {
84
- setHidden(!hidden);
85
- }
86
-
87
- return (
88
- <div
89
- style={{
90
- width: '1100px',
91
- height: '619px',
92
- position: 'relative'
93
- }}
94
- >
95
- <div
96
- style={{
97
- position: 'absolute',
98
- top: '0px',
99
- left: '0px',
100
- right: '0px',
101
- bottom: '0px',
102
- backgroundImage: 'url(https://i.imgur.com/nqKupnk.png)',
103
- zIndex: 2,
104
- display: hidden ? 'none' : 'block'
105
- }}
106
- ></div>
107
- <div style={{ position: 'relative', zIndex: 1 }}>
108
- <ClickViewPlayer
109
- viewKey='everything'
110
- fetch={mockplayerApi}
111
- setup={mockSetups.everything}
112
- />
113
- </div>
114
-
115
- <button onClick={onClick}>Toggle</button>
116
- </div>
117
- )
118
- }
119
-
120
- export const PlayNextVideo = () => {
121
- return <ClickViewPlayer
122
- // viewKey='basic'
123
- viewKey='chapters'
124
- fetch={mockplayerApi}
125
- onReady={(player: Player) => {
126
- player.setNextVideo({
127
- name: 'The Equalizer',
128
- thumbnailUrl: 'https://image.api.stg.cvnet.io/v2/thumbnails/Q229lo'
129
- }, () => {
130
- console.log('playNextVideo')
131
- });
132
- }} />;
133
- }
@@ -1,80 +0,0 @@
1
- import React from 'react';
2
- import { ClickViewPlayer, ClickViewCreateClipPlayer } from '../../src/index';
3
- import { mockplayerApi } from './utils/mock-playerapi';
4
-
5
- interface ClipFormProps {
6
- startTime?: number;
7
- endTime?: number;
8
- minDuration?: number;
9
- }
10
-
11
- function ClipForm(props: ClipFormProps): JSX.Element {
12
- const [ startTime, setStartTime ] = React.useState(props.startTime);
13
- const [ endTime, setEndTime ] = React.useState(props.endTime);
14
-
15
- const getInputValue = (time?: number) => {
16
- return isNaN(time)
17
- ? ''
18
- : time;
19
- };
20
-
21
- return (
22
- <>
23
- <ClickViewCreateClipPlayer
24
- viewKey='basic'
25
- fetch={mockplayerApi}
26
- startTime={startTime}
27
- onChangeStartTime={setStartTime}
28
- endTime={endTime}
29
- onChangeEndTime={setEndTime}
30
- minDuration={props.minDuration}
31
- />
32
- <div style={{ marginTop: '15px' }}>
33
- <label>Start Time (s)</label>
34
- <input type='number' value={getInputValue(startTime)} onChange={e => setStartTime(+e.target.value)} />
35
- <label>End Time (s)</label>
36
- <input type='number' value={getInputValue(endTime)} onChange={e => setEndTime(+e.target.value)} />
37
- <label>Duration (s)</label>
38
- <input type='number' value={getInputValue(endTime - startTime)} readOnly />
39
- </div>
40
- </>
41
- );
42
- }
43
-
44
- export default {
45
- title: 'Clips'
46
- };
47
-
48
- export const ClipPlayback = () =>
49
- <ClickViewPlayer viewKey='clip' fetch={mockplayerApi} />;
50
-
51
- ClipPlayback.storyName = 'Clip Playback';
52
-
53
- export const CreateClipButton = () => {
54
- const [ showCreateClipPlayer, setShowCreateClipPlayer ] = React.useState(false);
55
-
56
- if (showCreateClipPlayer)
57
- return <ClipForm />;
58
-
59
- return (
60
- <ClickViewPlayer
61
- viewKey='basic'
62
- fetch={mockplayerApi}
63
- onClickCreateClip={() => setShowCreateClipPlayer(true)}
64
- />
65
- );
66
- };
67
-
68
- CreateClipButton.storyName = 'Create Clip Button';
69
-
70
- export const CreateClip = () => <ClipForm />;
71
-
72
- CreateClip.storyName = 'Create Clip';
73
-
74
- export const EditClip = () => <ClipForm startTime={100} endTime={200} />;
75
-
76
- EditClip.storyName = 'Edit Clip';
77
-
78
- export const MinDurationClip = () => <ClipForm minDuration={30} />;
79
-
80
- MinDurationClip.storyName = 'Create Clip with 30s min duration';
@@ -1,64 +0,0 @@
1
- import React from 'react';
2
-
3
- export default {
4
- title: 'Interactives'
5
- };
6
-
7
- export const Default = () => <h1>Sorry no interactives</h1>;
8
-
9
- Default.storyName = 'Default';
10
-
11
- // export const Create = () =>
12
- // <ClickViewInteractivePlayer
13
- // viewKey='interactive'
14
- // fetch={mockplayerApi}
15
- // mode={InteractiveMode.Create}
16
- // imageApi={new URL(IMAGE_API_URL_STAGING)} />;
17
-
18
- // export const Annotation = () => {
19
- // function onReady(player: InteractivePlayer): void {
20
- // player.currentTime(15);
21
- // }
22
-
23
- // return <ClickViewInteractivePlayer onReady={onReady} viewKey='interactive' fetch={mockplayerApi} autoplay={true} />;
24
- // };
25
-
26
- // export const ShortAnswer = () => {
27
- // function onReady(player: InteractivePlayer): void {
28
- // player.currentTime(13);
29
- // }
30
-
31
- // return <ClickViewInteractivePlayer onReady={onReady} viewKey='interactive' fetch={mockplayerApi} autoplay={true} />;
32
- // };
33
-
34
- // export const Image = () => {
35
- // function onReady(player: InteractivePlayer): void {
36
- // player.currentTime(17);
37
- // }
38
-
39
- // return <ClickViewInteractivePlayer onReady={onReady} viewKey='interactive' fetch={mockplayerApi} autoplay={true} />;
40
- // };
41
-
42
- // export const TrueOrFalse = () => {
43
- // function onReady(player: InteractivePlayer): void {
44
- // player.currentTime(5);
45
- // }
46
-
47
- // return <ClickViewInteractivePlayer onReady={onReady} viewKey='interactive' fetch={mockplayerApi} autoplay={true} />;
48
- // };
49
-
50
- // export const MultipleChoice = () => {
51
- // function onReady(player: InteractivePlayer): void {
52
- // player.currentTime(7);
53
- // }
54
-
55
- // return <ClickViewInteractivePlayer onReady={onReady} viewKey='interactive' fetch={mockplayerApi} autoplay={true} />;
56
- // };
57
-
58
- // export const MissingWord = () => {
59
- // function onReady(player: InteractivePlayer): void {
60
- // player.currentTime(9);
61
- // }
62
-
63
- // return <ClickViewInteractivePlayer onReady={onReady} viewKey='interactive' fetch={mockplayerApi} autoplay={true} />;
64
- // };
@@ -1,15 +0,0 @@
1
- import React from 'react';
2
- import { ClickViewPlayer } from '../../src';
3
- import { mockplayerApi } from './utils/mock-playerapi';
4
-
5
- export default {
6
- title: 'Resources'
7
- };
8
-
9
- export const Base = () =>
10
- <ClickViewPlayer
11
- viewKey='basic'
12
- fetch={mockplayerApi}
13
- imageCdnUrl='https://image.api.stg.cvnet.io'
14
- showResources
15
- />;
@@ -1,22 +0,0 @@
1
- import React from 'react';
2
- import { ClickViewPlayer } from '../../src/index';
3
- import { mockplayerApi } from './utils/mock-playerapi';
4
-
5
- export default {
6
- title: 'Subtitles'
7
- };
8
-
9
- export const SingleTrack = () =>
10
- <ClickViewPlayer viewKey='basic' fetch={mockplayerApi} />;
11
-
12
- SingleTrack.storyName = 'Single Track';
13
-
14
- export const MultipleTracksWithDefault = () =>
15
- <ClickViewPlayer viewKey='multipleTracksWithDefault' fetch={mockplayerApi} />;
16
-
17
- MultipleTracksWithDefault.storyName = 'Multiple Tracks with default';
18
-
19
- export const MultipleTracks = () =>
20
- <ClickViewPlayer viewKey='multipleSubtitles' fetch={mockplayerApi} />;
21
-
22
- MultipleTracks.storyName = 'Multiple Tracks';
@@ -1,19 +0,0 @@
1
- WEBVTT
2
-
3
- 00:00.000 --> 00:05.000
4
- Waves
5
-
6
- 00:05.000 --> 00:11.000
7
- Some More Waves
8
-
9
- 00:11.000 --> 00:13.000
10
- Waves hitting Rocks
11
-
12
- 00:13.000 --> 00:20.000
13
- Rocky Rocks
14
-
15
- 00:20.000 --> 00:26.000
16
- More Rocks
17
-
18
- 00:26.000 --> 00:28.000
19
- End of waves
@@ -1,8 +0,0 @@
1
- WEBVTT
2
-
3
- 00:01.000 --> 00:15.000
4
- - Never drink liquid nitrogen.
5
-
6
- 00:17.000 --> 00:25.000
7
- - It will perforate your stomach.
8
- - You could die.
@@ -1,8 +0,0 @@
1
- WEBVTT
2
-
3
- 00:01.000 --> 00:15.000
4
- - Nunca beba nitrógeno líquido.
5
-
6
- 00:17.000 --> 00:25.000
7
- - Perforará tu estómago.
8
- - Podrías morir.
@@ -1,8 +0,0 @@
1
- WEBVTT
2
-
3
- 00:01.000 --> 00:15.000
4
- - Ne buvez jamais d'azote liquide.
5
-
6
- 00:17.000 --> 00:25.000
7
- - Il perforera votre estomac.
8
- - Tu pourrais mourir.