@tivio/sdk-react 2.1.1 → 2.1.5

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 (38) hide show
  1. package/README.md +8 -1
  2. package/dist/components/hooks/usePurchaseSubscription.d.ts +2 -7
  3. package/dist/components/hooks/useTransactionPayment.d.ts +2 -7
  4. package/dist/customPlayer.types.d.ts +2 -0
  5. package/dist/index.js +1 -1
  6. package/dist/services/sentry.d.ts +1 -1
  7. package/dist/types.d.ts +21 -11
  8. package/env +0 -0
  9. package/package.json +7 -8
  10. package/scripts/build_dev.sh +3 -0
  11. package/scripts/build_prod.sh +3 -0
  12. package/scripts/prepublish.ts +16 -0
  13. package/scripts/start.sh +3 -0
  14. package/coverage/clover.xml +0 -113
  15. package/coverage/lcov-report/base.css +0 -224
  16. package/coverage/lcov-report/block-navigation.js +0 -79
  17. package/coverage/lcov-report/favicon.png +0 -0
  18. package/coverage/lcov-report/index.html +0 -126
  19. package/coverage/lcov-report/prettify.css +0 -1
  20. package/coverage/lcov-report/prettify.js +0 -2
  21. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  22. package/coverage/lcov-report/sorter.js +0 -170
  23. package/coverage/lcov-report/src/components/TivioProvider.tsx.html +0 -227
  24. package/coverage/lcov-report/src/components/TivioWidget.tsx.html +0 -203
  25. package/coverage/lcov-report/src/components/TivioWidgetError.tsx.html +0 -122
  26. package/coverage/lcov-report/src/components/TivioWidgetLoader.tsx.html +0 -116
  27. package/coverage/lcov-report/src/components/index.html +0 -156
  28. package/coverage/lcov-report/src/conf.ts.html +0 -239
  29. package/coverage/lcov-report/src/index.html +0 -111
  30. package/coverage/lcov-report/src/services/bundleLoader.ts.html +0 -698
  31. package/coverage/lcov-report/src/services/dependencyResolver.ts.html +0 -212
  32. package/coverage/lcov-report/src/services/index.html +0 -141
  33. package/coverage/lcov-report/src/services/logger.ts.html +0 -365
  34. package/coverage/lcov-report/src/services/packageLoader.ts.html +0 -194
  35. package/coverage/lcov-report/src/services/pubSub.ts.html +0 -242
  36. package/coverage/lcov-report/src/services/settings.ts.html +0 -218
  37. package/coverage/lcov-report/src/setupTests.ts.html +0 -158
  38. package/coverage/lcov.info +0 -175
@@ -1,5 +1,5 @@
1
1
  import * as _Sentry from '@sentry/browser';
2
- export declare const Sentry: typeof _Sentry;
2
+ export declare const Sentry: null | typeof _Sentry;
3
3
  export declare const initSentry: () => void;
4
4
  /**
5
5
  * Inject Sentry to window in order to use it inside core-js, core-react, etc.
package/dist/types.d.ts CHANGED
@@ -5,11 +5,11 @@
5
5
  /**
6
6
  * Export public client side API
7
7
  */
8
- import type { Monetization, Screen, SubscribeToItemsInRow, SubscribeToRowsInScreen, SubscribeToScreen, Video } from '@tivio/common';
8
+ import type { Monetization, QerkoPaymentInfo, Screen, SubscribeToItemsInRow, SubscribeToRowsInScreen, SubscribeToScreen, Video } from '@tivio/common';
9
9
  import { USER_TYPE } from '@tivio/common';
10
10
  import type React from 'react';
11
11
  import { InternalConf } from './conf';
12
- import { PlayerWrapper } from './customPlayer.types';
12
+ import { AdSource, PlayerWrapper } from './customPlayer.types';
13
13
  declare type RemoteProviderProps = {
14
14
  disableUnmounting?: boolean;
15
15
  language?: string;
@@ -117,14 +117,6 @@ export interface TivioWidgetRef {
117
117
  x: number;
118
118
  });
119
119
  }
120
- declare type QerkoPaymentInfo = {
121
- webPaymentGatewayLink: string;
122
- gatewayUri: string;
123
- paymentQRCodeUri: string;
124
- purchaseId: string;
125
- currency: string;
126
- amount: number;
127
- };
128
120
  declare type TivioSubscriptions = {
129
121
  subscribeToUser: (cb: (error: string | null, user: User | null) => void) => void;
130
122
  /**
@@ -325,6 +317,9 @@ interface WebPlayerProps {
325
317
  * default true
326
318
  */
327
319
  enableKeyboardShortcuts?: boolean;
320
+ onProgress?: (event: React.ChangeEvent<HTMLVideoElement>) => void;
321
+ onLoadedMetadata?: (event: React.ChangeEvent<HTMLVideoElement>) => void;
322
+ onPlayerControllerCreated?: (playerController: any) => void;
328
323
  }
329
324
  declare type TivioComponents = {
330
325
  AdIndicationButtonWeb: React.ReactNode;
@@ -335,6 +330,20 @@ declare type TivioComponents = {
335
330
  VideoAdBanner: React.ReactNode;
336
331
  WebPlayer: React.ComponentType<WebPlayerProps>;
337
332
  Widget: React.ComponentType<TivioWidgetProps>;
333
+ TvPlayer: React.ComponentType<WebPlayerProps>;
334
+ PlayerDataContextProvider: React.ComponentType<{
335
+ id: string;
336
+ }>;
337
+ SkipButtonTv: React.ComponentType<{
338
+ Button: React.ComponentType;
339
+ Label: React.ComponentType;
340
+ Container: React.ComponentType;
341
+ onStarted?: () => any;
342
+ onEnded?: () => any;
343
+ }>;
344
+ };
345
+ declare type TivioHooks = {
346
+ useAd: () => [(AdSource | null)];
338
347
  };
339
348
  declare type TivioSources = {
340
349
  AdSource: any;
@@ -346,6 +355,7 @@ declare type TivioBundle = {
346
355
  components: TivioComponents;
347
356
  getters: TivioGetters;
348
357
  auth: TivioAuth;
358
+ hooks: TivioHooks;
349
359
  init: (config: Conf) => void | Promise<void>;
350
360
  purchaseVideoWithQerko: (videoId: string, monetizationId: string) => Promise<QerkoPaymentInfo>;
351
361
  purchaseSubscriptionWithQerko: (monetizationId: string) => Promise<QerkoPaymentInfo>;
@@ -354,4 +364,4 @@ declare type TivioBundle = {
354
364
  sources: TivioSources;
355
365
  subscriptions: TivioSubscriptions;
356
366
  };
357
- export type { RemoteProviderProps, WebPlayerProps, Conf, Nullable, Empty, Disposer, Marker, BetOffer, QerkoPaymentInfo, Purchase, Chapter, Language, Widget, Channel, Section, Video, TivioAuth, TivioSubscriptions, TivioGetters, TivioBundle, TivioComponents, TivioSources, UserData, User, Monetization, VodTivioSource, };
367
+ export type { RemoteProviderProps, WebPlayerProps, Conf, Nullable, Empty, Disposer, Marker, BetOffer, Purchase, Chapter, Language, Widget, Channel, Section, Video, TivioAuth, TivioSubscriptions, TivioGetters, TivioBundle, TivioHooks, TivioComponents, TivioSources, UserData, User, Monetization, VodTivioSource, };
package/env ADDED
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tivio/sdk-react",
3
- "version": "2.1.1",
3
+ "version": "2.1.5",
4
4
  "main": "dist/index.js",
5
5
  "typings": "dist/index.d.ts",
6
6
  "source": "src/index.ts",
@@ -9,12 +9,12 @@
9
9
  "access": "public"
10
10
  },
11
11
  "scripts": {
12
- "build": "echo 'TODO We need a build script dev vs. prod 🔥' && yarn run clean && webpack --config=webpack.config.prod.js",
13
- "dev": "yarn run clean && webpack --config=webpack.config.dev.js",
14
- "start": "yarn run clean && webpack -w --config=webpack.config.dev.js",
12
+ "build": "bash ./scripts/build_prod.sh",
13
+ "build:dev": "bash ./scripts/build_dev.sh",
14
+ "start": "bash ./scripts/start.sh",
15
15
  "test": "jest --config=./jest.config.js --coverage",
16
16
  "clean": "rm -rf dist",
17
- "prepublishOnly": "yarn && rm -rf ./dist && yarn run build"
17
+ "publish:alpha": "npm publish --tag alpha"
18
18
  },
19
19
  "peerDependencies": {
20
20
  "firebase": "^8.2.3",
@@ -24,6 +24,7 @@
24
24
  "styled-components": "^5.2.1"
25
25
  },
26
26
  "dependencies": {
27
+ "@tivio/common": "1.1.22",
27
28
  "@sentry/browser": "^6.1.0",
28
29
  "mobx-react": "^7.1.0"
29
30
  },
@@ -51,11 +52,9 @@
51
52
  "styled-components": "^5.2.1",
52
53
  "timers-browserify": "^2.0.12",
53
54
  "ts-jest": "^26.4.4",
54
- "ts-loader": "^8.0.14",
55
55
  "typescript": "^4.1.3",
56
56
  "webpack": "^5.15.0",
57
57
  "webpack-cli": "^4.4.0",
58
- "webpack-merge": "^5.7.3",
59
- "@tivio/common": "*"
58
+ "webpack-merge": "^5.7.3"
60
59
  }
61
60
  }
@@ -0,0 +1,3 @@
1
+ cat ./.env.dev > ./.env;
2
+ yarn run clean;
3
+ yarn webpack --config=webpack.config.dev.js;
@@ -0,0 +1,3 @@
1
+ cat ./.env.prod > ./.env;
2
+ yarn run clean;
3
+ yarn webpack --config=webpack.config.prod.js;
@@ -0,0 +1,16 @@
1
+ import {
2
+ execCommand,
3
+ } from '@tivio/build-utils'
4
+
5
+ console.info('Publishing latest @tivio/common...')
6
+
7
+ execCommand('yarn --cwd ../common pub;')
8
+
9
+ console.info('Updating version of @tivio/common dependency in package.json...')
10
+
11
+ const tivioCommonPackageJson = require('../../common/package.json')
12
+
13
+ // Using sed instead of fs.write because it does not change the order
14
+ // of the other line
15
+ // eslint-disable-next-line no-useless-escape
16
+ execCommand(`sed -i 's#"@tivio/common":.*#"@tivio/common": "${tivioCommonPackageJson.version}",#g' package.json`)
@@ -0,0 +1,3 @@
1
+ cat ./.env.dev > ./.env;
2
+ yarn run clean;
3
+ yarn webpack -w --config=webpack.config.dev.js;
@@ -1,113 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <coverage generated="1620299977616" clover="3.2.0">
3
- <project timestamp="1620299977616" name="All files">
4
- <metrics statements="89" coveredstatements="57" conditionals="22" coveredconditionals="5" methods="14" coveredmethods="8" elements="125" coveredelements="70" complexity="0" loc="89" ncloc="89" packages="2" files="4" classes="4"/>
5
- <package name="src">
6
- <metrics statements="8" coveredstatements="8" conditionals="0" coveredconditionals="0" methods="0" coveredmethods="0"/>
7
- <file name="setupTests.ts" path="/home/artur/Desktop/git/tivio/libs/sdk-react/src/setupTests.ts">
8
- <metrics statements="8" coveredstatements="8" conditionals="0" coveredconditionals="0" methods="0" coveredmethods="0"/>
9
- <line num="1" count="1" type="stmt"/>
10
- <line num="4" count="1" type="stmt"/>
11
- <line num="5" count="1" type="stmt"/>
12
- <line num="6" count="1" type="stmt"/>
13
- <line num="7" count="1" type="stmt"/>
14
- <line num="9" count="1" type="stmt"/>
15
- <line num="11" count="1" type="stmt"/>
16
- <line num="23" count="1" type="stmt"/>
17
- </file>
18
- </package>
19
- <package name="src.services">
20
- <metrics statements="81" coveredstatements="49" conditionals="22" coveredconditionals="5" methods="14" coveredmethods="8"/>
21
- <file name="bundleLoader.ts" path="/home/artur/Desktop/git/tivio/libs/sdk-react/src/services/bundleLoader.ts">
22
- <metrics statements="55" coveredstatements="35" conditionals="14" coveredconditionals="5" methods="10" coveredmethods="7"/>
23
- <line num="12" count="1" type="stmt"/>
24
- <line num="15" count="1" type="stmt"/>
25
- <line num="16" count="1" type="stmt"/>
26
- <line num="49" count="1" type="stmt"/>
27
- <line num="50" count="12" type="stmt"/>
28
- <line num="51" count="12" type="stmt"/>
29
- <line num="53" count="12" type="stmt"/>
30
- <line num="59" count="12" type="stmt"/>
31
- <line num="60" count="12" type="stmt"/>
32
- <line num="62" count="12" type="stmt"/>
33
- <line num="63" count="12" type="stmt"/>
34
- <line num="64" count="10" type="stmt"/>
35
- <line num="66" count="2" type="stmt"/>
36
- <line num="69" count="10" type="cond" truecount="2" falsecount="0"/>
37
- <line num="70" count="2" type="stmt"/>
38
- <line num="73" count="8" type="stmt"/>
39
- <line num="80" count="1" type="stmt"/>
40
- <line num="81" count="14" type="stmt"/>
41
- <line num="82" count="8" type="stmt"/>
42
- <line num="84" count="7" type="stmt"/>
43
- <line num="85" count="7" type="stmt"/>
44
- <line num="87" count="7" type="stmt"/>
45
- <line num="88" count="7" type="stmt"/>
46
- <line num="89" count="6" type="stmt"/>
47
- <line num="91" count="1" type="stmt"/>
48
- <line num="94" count="6" type="cond" truecount="2" falsecount="0"/>
49
- <line num="95" count="1" type="stmt"/>
50
- <line num="98" count="5" type="cond" truecount="1" falsecount="1"/>
51
- <line num="99" count="5" type="stmt"/>
52
- <line num="102" count="0" type="cond" truecount="0" falsecount="2"/>
53
- <line num="103" count="0" type="stmt"/>
54
- <line num="106" count="0" type="cond" truecount="0" falsecount="2"/>
55
- <line num="107" count="0" type="stmt"/>
56
- <line num="112" count="0" type="stmt"/>
57
- <line num="117" count="1" type="stmt"/>
58
- <line num="118" count="7" type="stmt"/>
59
- <line num="119" count="7" type="stmt"/>
60
- <line num="121" count="7" type="stmt"/>
61
- <line num="122" count="14" type="stmt"/>
62
- <line num="135" count="14" type="stmt"/>
63
- <line num="147" count="0" type="stmt"/>
64
- <line num="148" count="0" type="cond" truecount="0" falsecount="2"/>
65
- <line num="149" count="0" type="stmt"/>
66
- <line num="152" count="0" type="stmt"/>
67
- <line num="154" count="0" type="cond" truecount="0" falsecount="2"/>
68
- <line num="155" count="0" type="stmt"/>
69
- <line num="156" count="0" type="stmt"/>
70
- <line num="159" count="0" type="stmt"/>
71
- <line num="161" count="0" type="stmt"/>
72
- <line num="173" count="0" type="stmt"/>
73
- <line num="174" count="0" type="stmt"/>
74
- <line num="177" count="0" type="stmt"/>
75
- <line num="179" count="0" type="stmt"/>
76
- <line num="190" count="0" type="stmt"/>
77
- <line num="194" count="0" type="stmt"/>
78
- </file>
79
- <file name="dependencyResolver.ts" path="/home/artur/Desktop/git/tivio/libs/sdk-react/src/services/dependencyResolver.ts">
80
- <metrics statements="13" coveredstatements="10" conditionals="2" coveredconditionals="0" methods="1" coveredmethods="0"/>
81
- <line num="12" count="1" type="stmt"/>
82
- <line num="13" count="1" type="stmt"/>
83
- <line num="14" count="1" type="stmt"/>
84
- <line num="15" count="1" type="stmt"/>
85
- <line num="16" count="1" type="stmt"/>
86
- <line num="17" count="1" type="stmt"/>
87
- <line num="18" count="1" type="stmt"/>
88
- <line num="19" count="1" type="stmt"/>
89
- <line num="28" count="1" type="stmt"/>
90
- <line num="38" count="1" type="stmt"/>
91
- <line num="39" count="0" type="cond" truecount="0" falsecount="2"/>
92
- <line num="40" count="0" type="stmt"/>
93
- <line num="43" count="0" type="stmt"/>
94
- </file>
95
- <file name="settings.ts" path="/home/artur/Desktop/git/tivio/libs/sdk-react/src/services/settings.ts">
96
- <metrics statements="13" coveredstatements="4" conditionals="6" coveredconditionals="0" methods="3" coveredmethods="1"/>
97
- <line num="18" count="1" type="stmt"/>
98
- <line num="19" count="12" type="stmt"/>
99
- <line num="23" count="12" type="stmt"/>
100
- <line num="25" count="12" type="stmt"/>
101
- <line num="27" count="0" type="cond" truecount="0" falsecount="2"/>
102
- <line num="28" count="0" type="stmt"/>
103
- <line num="30" count="0" type="stmt"/>
104
- <line num="32" count="0" type="cond" truecount="0" falsecount="2"/>
105
- <line num="33" count="0" type="stmt"/>
106
- <line num="38" count="0" type="cond" truecount="0" falsecount="2"/>
107
- <line num="39" count="0" type="stmt"/>
108
- <line num="40" count="0" type="stmt"/>
109
- <line num="42" count="0" type="stmt"/>
110
- </file>
111
- </package>
112
- </project>
113
- </coverage>
@@ -1,224 +0,0 @@
1
- body, html {
2
- margin:0; padding: 0;
3
- height: 100%;
4
- }
5
- body {
6
- font-family: Helvetica Neue, Helvetica, Arial;
7
- font-size: 14px;
8
- color:#333;
9
- }
10
- .small { font-size: 12px; }
11
- *, *:after, *:before {
12
- -webkit-box-sizing:border-box;
13
- -moz-box-sizing:border-box;
14
- box-sizing:border-box;
15
- }
16
- h1 { font-size: 20px; margin: 0;}
17
- h2 { font-size: 14px; }
18
- pre {
19
- font: 12px/1.4 Consolas, "Liberation Mono", Menlo, Courier, monospace;
20
- margin: 0;
21
- padding: 0;
22
- -moz-tab-size: 2;
23
- -o-tab-size: 2;
24
- tab-size: 2;
25
- }
26
- a { color:#0074D9; text-decoration:none; }
27
- a:hover { text-decoration:underline; }
28
- .strong { font-weight: bold; }
29
- .space-top1 { padding: 10px 0 0 0; }
30
- .pad2y { padding: 20px 0; }
31
- .pad1y { padding: 10px 0; }
32
- .pad2x { padding: 0 20px; }
33
- .pad2 { padding: 20px; }
34
- .pad1 { padding: 10px; }
35
- .space-left2 { padding-left:55px; }
36
- .space-right2 { padding-right:20px; }
37
- .center { text-align:center; }
38
- .clearfix { display:block; }
39
- .clearfix:after {
40
- content:'';
41
- display:block;
42
- height:0;
43
- clear:both;
44
- visibility:hidden;
45
- }
46
- .fl { float: left; }
47
- @media only screen and (max-width:640px) {
48
- .col3 { width:100%; max-width:100%; }
49
- .hide-mobile { display:none!important; }
50
- }
51
-
52
- .quiet {
53
- color: #7f7f7f;
54
- color: rgba(0,0,0,0.5);
55
- }
56
- .quiet a { opacity: 0.7; }
57
-
58
- .fraction {
59
- font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace;
60
- font-size: 10px;
61
- color: #555;
62
- background: #E8E8E8;
63
- padding: 4px 5px;
64
- border-radius: 3px;
65
- vertical-align: middle;
66
- }
67
-
68
- div.path a:link, div.path a:visited { color: #333; }
69
- table.coverage {
70
- border-collapse: collapse;
71
- margin: 10px 0 0 0;
72
- padding: 0;
73
- }
74
-
75
- table.coverage td {
76
- margin: 0;
77
- padding: 0;
78
- vertical-align: top;
79
- }
80
- table.coverage td.line-count {
81
- text-align: right;
82
- padding: 0 5px 0 20px;
83
- }
84
- table.coverage td.line-coverage {
85
- text-align: right;
86
- padding-right: 10px;
87
- min-width:20px;
88
- }
89
-
90
- table.coverage td span.cline-any {
91
- display: inline-block;
92
- padding: 0 5px;
93
- width: 100%;
94
- }
95
- .missing-if-branch {
96
- display: inline-block;
97
- margin-right: 5px;
98
- border-radius: 3px;
99
- position: relative;
100
- padding: 0 4px;
101
- background: #333;
102
- color: yellow;
103
- }
104
-
105
- .skip-if-branch {
106
- display: none;
107
- margin-right: 10px;
108
- position: relative;
109
- padding: 0 4px;
110
- background: #ccc;
111
- color: white;
112
- }
113
- .missing-if-branch .typ, .skip-if-branch .typ {
114
- color: inherit !important;
115
- }
116
- .coverage-summary {
117
- border-collapse: collapse;
118
- width: 100%;
119
- }
120
- .coverage-summary tr { border-bottom: 1px solid #bbb; }
121
- .keyline-all { border: 1px solid #ddd; }
122
- .coverage-summary td, .coverage-summary th { padding: 10px; }
123
- .coverage-summary tbody { border: 1px solid #bbb; }
124
- .coverage-summary td { border-right: 1px solid #bbb; }
125
- .coverage-summary td:last-child { border-right: none; }
126
- .coverage-summary th {
127
- text-align: left;
128
- font-weight: normal;
129
- white-space: nowrap;
130
- }
131
- .coverage-summary th.file { border-right: none !important; }
132
- .coverage-summary th.pct { }
133
- .coverage-summary th.pic,
134
- .coverage-summary th.abs,
135
- .coverage-summary td.pct,
136
- .coverage-summary td.abs { text-align: right; }
137
- .coverage-summary td.file { white-space: nowrap; }
138
- .coverage-summary td.pic { min-width: 120px !important; }
139
- .coverage-summary tfoot td { }
140
-
141
- .coverage-summary .sorter {
142
- height: 10px;
143
- width: 7px;
144
- display: inline-block;
145
- margin-left: 0.5em;
146
- background: url(sort-arrow-sprite.png) no-repeat scroll 0 0 transparent;
147
- }
148
- .coverage-summary .sorted .sorter {
149
- background-position: 0 -20px;
150
- }
151
- .coverage-summary .sorted-desc .sorter {
152
- background-position: 0 -10px;
153
- }
154
- .status-line { height: 10px; }
155
- /* yellow */
156
- .cbranch-no { background: yellow !important; color: #111; }
157
- /* dark red */
158
- .red.solid, .status-line.low, .low .cover-fill { background:#C21F39 }
159
- .low .chart { border:1px solid #C21F39 }
160
- .highlighted,
161
- .highlighted .cstat-no, .highlighted .fstat-no, .highlighted .cbranch-no{
162
- background: #C21F39 !important;
163
- }
164
- /* medium red */
165
- .cstat-no, .fstat-no, .cbranch-no, .cbranch-no { background:#F6C6CE }
166
- /* light red */
167
- .low, .cline-no { background:#FCE1E5 }
168
- /* light green */
169
- .high, .cline-yes { background:rgb(230,245,208) }
170
- /* medium green */
171
- .cstat-yes { background:rgb(161,215,106) }
172
- /* dark green */
173
- .status-line.high, .high .cover-fill { background:rgb(77,146,33) }
174
- .high .chart { border:1px solid rgb(77,146,33) }
175
- /* dark yellow (gold) */
176
- .status-line.medium, .medium .cover-fill { background: #f9cd0b; }
177
- .medium .chart { border:1px solid #f9cd0b; }
178
- /* light yellow */
179
- .medium { background: #fff4c2; }
180
-
181
- .cstat-skip { background: #ddd; color: #111; }
182
- .fstat-skip { background: #ddd; color: #111 !important; }
183
- .cbranch-skip { background: #ddd !important; color: #111; }
184
-
185
- span.cline-neutral { background: #eaeaea; }
186
-
187
- .coverage-summary td.empty {
188
- opacity: .5;
189
- padding-top: 4px;
190
- padding-bottom: 4px;
191
- line-height: 1;
192
- color: #888;
193
- }
194
-
195
- .cover-fill, .cover-empty {
196
- display:inline-block;
197
- height: 12px;
198
- }
199
- .chart {
200
- line-height: 0;
201
- }
202
- .cover-empty {
203
- background: white;
204
- }
205
- .cover-full {
206
- border-right: none !important;
207
- }
208
- pre.prettyprint {
209
- border: none !important;
210
- padding: 0 !important;
211
- margin: 0 !important;
212
- }
213
- .com { color: #999 !important; }
214
- .ignore-none { color: #999; font-weight: normal; }
215
-
216
- .wrapper {
217
- min-height: 100%;
218
- height: auto !important;
219
- height: 100%;
220
- margin: 0 auto -48px;
221
- }
222
- .footer, .push {
223
- height: 48px;
224
- }
@@ -1,79 +0,0 @@
1
- /* eslint-disable */
2
- var jumpToCode = (function init() {
3
- // Classes of code we would like to highlight in the file view
4
- var missingCoverageClasses = ['.cbranch-no', '.cstat-no', '.fstat-no'];
5
-
6
- // Elements to highlight in the file listing view
7
- var fileListingElements = ['td.pct.low'];
8
-
9
- // We don't want to select elements that are direct descendants of another match
10
- var notSelector = ':not(' + missingCoverageClasses.join('):not(') + ') > '; // becomes `:not(a):not(b) > `
11
-
12
- // Selecter that finds elements on the page to which we can jump
13
- var selector =
14
- fileListingElements.join(', ') +
15
- ', ' +
16
- notSelector +
17
- missingCoverageClasses.join(', ' + notSelector); // becomes `:not(a):not(b) > a, :not(a):not(b) > b`
18
-
19
- // The NodeList of matching elements
20
- var missingCoverageElements = document.querySelectorAll(selector);
21
-
22
- var currentIndex;
23
-
24
- function toggleClass(index) {
25
- missingCoverageElements
26
- .item(currentIndex)
27
- .classList.remove('highlighted');
28
- missingCoverageElements.item(index).classList.add('highlighted');
29
- }
30
-
31
- function makeCurrent(index) {
32
- toggleClass(index);
33
- currentIndex = index;
34
- missingCoverageElements.item(index).scrollIntoView({
35
- behavior: 'smooth',
36
- block: 'center',
37
- inline: 'center'
38
- });
39
- }
40
-
41
- function goToPrevious() {
42
- var nextIndex = 0;
43
- if (typeof currentIndex !== 'number' || currentIndex === 0) {
44
- nextIndex = missingCoverageElements.length - 1;
45
- } else if (missingCoverageElements.length > 1) {
46
- nextIndex = currentIndex - 1;
47
- }
48
-
49
- makeCurrent(nextIndex);
50
- }
51
-
52
- function goToNext() {
53
- var nextIndex = 0;
54
-
55
- if (
56
- typeof currentIndex === 'number' &&
57
- currentIndex < missingCoverageElements.length - 1
58
- ) {
59
- nextIndex = currentIndex + 1;
60
- }
61
-
62
- makeCurrent(nextIndex);
63
- }
64
-
65
- return function jump(event) {
66
- switch (event.which) {
67
- case 78: // n
68
- case 74: // j
69
- goToNext();
70
- break;
71
- case 66: // b
72
- case 75: // k
73
- case 80: // p
74
- goToPrevious();
75
- break;
76
- }
77
- };
78
- })();
79
- window.addEventListener('keydown', jumpToCode);
Binary file