@24i/bigscreen-sdk 1.1.0 → 2.1.1-alpha.2133

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 (256) hide show
  1. package/README.md +1 -1
  2. package/package.json +34 -53
  3. package/packages/adobe-heartbeat/src/AdobeHeartbeat.ts +9 -9
  4. package/packages/async-image/src/AsyncImage.tsx +10 -15
  5. package/packages/developer-tools/PlayerDebugWindow/README.md +1 -1
  6. package/packages/developer-tools/src/DeveloperToolsService/DeveloperToolsList.tsx +0 -11
  7. package/packages/developer-tools/src/PlayerDebugWindow/PlayerDebugWindow.tsx +5 -5
  8. package/packages/developer-tools/src/PlayerDebugWindow/constants.ts +0 -15
  9. package/packages/developer-tools/src/TechnicalInfo/TechnicalInfoDetail.tsx +1 -2
  10. package/packages/developer-tools/src/TechnicalInfo/TechnicalInfoProvider.ts +3 -34
  11. package/packages/developer-tools/src/TechnicalInfo/__mocks__/Device.ts +0 -4
  12. package/packages/developer-tools/src/TechnicalInfo/translations.ts +0 -4
  13. package/packages/device/src/getKeyDigit.ts +2 -2
  14. package/packages/device/src/resolver/resolver.ts +5 -18
  15. package/packages/digital-clock/src/DigitalClock.tsx +4 -15
  16. package/packages/driver-androidtv/src/DeviceAndroidTV.ts +9 -54
  17. package/packages/driver-androidtv/src/__mocks__/javaScriptBridge.ts +5 -29
  18. package/packages/driver-androidtv/src/keymap.ts +0 -18
  19. package/packages/driver-androidtv/src/types.ts +16 -102
  20. package/packages/driver-base/src/DeviceBase.ts +2 -61
  21. package/packages/driver-base/src/KeyMap/Key.ts +1 -8
  22. package/packages/driver-base/src/KeyMap/KeyMap.ts +0 -4
  23. package/packages/driver-base/src/KeyMap/interface.ts +0 -1
  24. package/packages/driver-base/src/KeyMap/overrideValues.ts +1 -2
  25. package/packages/driver-base/src/__mocks__/keyMap.ts +0 -1
  26. package/packages/driver-base/src/types/DeviceEvent.ts +0 -2
  27. package/packages/driver-base/src/types/KeycodeKeyMap.ts +0 -1
  28. package/packages/driver-browser/src/keymap.ts +0 -8
  29. package/packages/driver-entone/src/keymap.ts +0 -1
  30. package/packages/driver-tizen/src/TizenKeys.ts +0 -2
  31. package/packages/driver-vidaa/src/DeviceVidaa.ts +2 -3
  32. package/packages/driver-vidaa/src/__mocks__/vidaa.ts +1 -1
  33. package/packages/driver-vidaa/src/keymap.ts +0 -2
  34. package/packages/driver-webos/src/DeviceWebos.ts +0 -8
  35. package/packages/driver-webos/src/keymap.ts +1 -2
  36. package/packages/driver-xbox/src/keymap.ts +1 -1
  37. package/packages/epg/README.md +1 -3
  38. package/packages/epg/src/v2/Cell.tsx +2 -16
  39. package/packages/epg/src/v2/DataManager.ts +41 -112
  40. package/packages/epg/src/v2/DatePicker.tsx +3 -9
  41. package/packages/epg/src/v2/DateToast/DateToast.tsx +9 -12
  42. package/packages/epg/src/v2/Day.tsx +3 -6
  43. package/packages/epg/src/v2/Epg.tsx +5 -5
  44. package/packages/epg/src/v2/MockGenerator/generator.ts +2 -3
  45. package/packages/epg/src/v2/ProgramInfo/utils.ts +3 -4
  46. package/packages/epg/src/v2/Row.tsx +1 -3
  47. package/packages/epg/src/v2/TimelineSection.tsx +1 -4
  48. package/packages/epg/src/v2/basic/CellsManager.tsx +2 -7
  49. package/packages/epg/src/v2/basic/RowsManager.tsx +1 -3
  50. package/packages/epg/src/v2/interface.ts +0 -13
  51. package/packages/events-manager/src/EventsManager.ts +56 -1
  52. package/packages/focus/README.md +0 -33
  53. package/packages/focus/src/IFocusable.ts +0 -1
  54. package/packages/focus/src/Layout/Base.tsx +6 -41
  55. package/packages/focus/src/Layout/Matrix.tsx +19 -51
  56. package/packages/focus/src/Layout/__test__/Base.spec.ts +180 -0
  57. package/packages/focus/src/Layout/__test__/Horizontal.spec.ts +94 -0
  58. package/packages/focus/src/Layout/__test__/Matrix.spec.ts +261 -0
  59. package/packages/focus/src/Layout/__test__/Vertical.spec.ts +46 -0
  60. package/packages/focus/src/Layout/__test__/isRtl.spec.ts +23 -0
  61. package/packages/focus/src/Layout/__test__/shared.ts +19 -0
  62. package/packages/focus/src/focusFirstExisting.ts +1 -7
  63. package/packages/focus/src/index.ts +1 -2
  64. package/packages/gallup/src/Gallup.ts +3 -3
  65. package/packages/grid/src/Base/Base.tsx +10 -15
  66. package/packages/grid/src/FirstOnlyGrid/FirstOnlyGrid.tsx +2 -4
  67. package/packages/icon/src/Icon.tsx +5 -27
  68. package/packages/input/README.md +1 -4
  69. package/packages/input/src/Input.tsx +29 -65
  70. package/packages/input/src/handleOverflow.ts +29 -0
  71. package/packages/interactable/README.md +1 -2
  72. package/packages/interactable/src/Interactable.tsx +3 -9
  73. package/packages/interactable/src/interface.ts +0 -1
  74. package/packages/jsx/src/index.ts +1 -1
  75. package/packages/jsx/src/test-utils/index.ts +0 -1
  76. package/packages/keyboard/src/Backdrop/Backdrop.scss +0 -2
  77. package/packages/keyboard/src/KeyboardBase.tsx +4 -16
  78. package/packages/keyboard/src/WhitelabelKeyboard/Keyboard.scss +0 -4
  79. package/packages/keyboard/src/WhitelabelKeyboard/Keyboard.tsx +20 -28
  80. package/packages/keyboard/src/WhitelabelKeyboard/_sizes.1080.scss +0 -1
  81. package/packages/keyboard/src/WhitelabelKeyboard/_sizes.scss +0 -1
  82. package/packages/keyboard/src/WhitelabelKeyboard/layouts/index.ts +0 -11
  83. package/packages/keyboard/src/WhitelabelKeyboard/types.ts +0 -1
  84. package/packages/l10n/README.md +0 -18
  85. package/packages/l10n/src/date/common.ts +6 -18
  86. package/packages/l10n/src/date/cs.ts +8 -2
  87. package/packages/l10n/src/date/en-001.ts +3 -3
  88. package/packages/l10n/src/date/en-common.ts +4 -5
  89. package/packages/l10n/src/date/en-us.ts +3 -3
  90. package/packages/l10n/src/date/iso.ts +13 -12
  91. package/packages/l10n/src/date/types.ts +0 -9
  92. package/packages/l10n/src/l10n.ts +3 -61
  93. package/packages/list/src/Base/Base.tsx +9 -19
  94. package/packages/list/src/Base/interface.ts +2 -2
  95. package/packages/list/src/CenteredList/controller.ts +1 -0
  96. package/packages/list/src/EdgeOffsetList/EdgeOffsetList.tsx +3 -3
  97. package/packages/list/src/UnifiedListController/UnifiedListController.ts +2 -6
  98. package/packages/logger/src/loggers/SentryLogger/Sentry.ts +0 -1
  99. package/packages/logger/src/loggers/SentryLogger/SentryLogger.ts +2 -2
  100. package/packages/menu/src/MenuAndContentContainer/MenuAndContentContainer.tsx +3 -31
  101. package/packages/menu/src/MenuAndContentContainer/interface.ts +0 -8
  102. package/packages/modal-service/README.md +1 -4
  103. package/packages/modal-service/src/ModalService.tsx +5 -29
  104. package/packages/perf-utils/README.md +120 -1
  105. package/packages/perf-utils/src/array/filter.ts +54 -1
  106. package/packages/perf-utils/src/array/find.ts +43 -1
  107. package/packages/perf-utils/src/array/findIndex.ts +43 -1
  108. package/packages/perf-utils/src/array/forEach.ts +48 -1
  109. package/packages/perf-utils/src/array/includes.ts +41 -1
  110. package/packages/perf-utils/src/array/includesNaN.ts +32 -1
  111. package/packages/perf-utils/src/array/index.ts +7 -1
  112. package/packages/perf-utils/src/array/map.ts +52 -1
  113. package/packages/player-ui/README.md +1 -1
  114. package/packages/player-ui/src/CurrentTime.tsx +2 -2
  115. package/packages/player-ui/src/Duration.tsx +2 -2
  116. package/packages/player-ui/src/PauseButton.tsx +0 -8
  117. package/packages/player-ui/src/PlayerInteractable.tsx +0 -1
  118. package/packages/player-ui/src/PlayerTime.tsx +1 -3
  119. package/packages/player-ui/src/PlayerUI.tsx +35 -68
  120. package/packages/player-ui/src/RemainingTime.tsx +2 -2
  121. package/packages/player-ui/src/Seekbar.tsx +18 -110
  122. package/packages/player-ui/src/Seeking.ts +16 -57
  123. package/packages/player-ui/src/Subtitles.tsx +2 -2
  124. package/packages/player-ui/src/index.ts +0 -1
  125. package/packages/player-ui/src/mocks.ts +8 -32
  126. package/packages/player-ui/src/timeUtils.ts +3 -3
  127. package/packages/player-ui/src/types.ts +3 -9
  128. package/packages/router/src/Route.tsx +27 -61
  129. package/packages/router/src/Router.tsx +13 -59
  130. package/packages/router/src/history.ts +1 -8
  131. package/packages/router/src/index.ts +1 -1
  132. package/packages/router/src/utils.ts +4 -9
  133. package/packages/sass-utils/src/linear-gradient.scss +4 -9
  134. package/packages/sass-utils/src/scale.1080.scss +1 -3
  135. package/packages/sass-utils/src/scale.720.scss +1 -1
  136. package/packages/time/README.md +1 -4
  137. package/packages/time/src/Time.ts +13 -35
  138. package/packages/time/src/constants.ts +0 -1
  139. package/packages/toast/src/ToastService.tsx +5 -16
  140. package/packages/types-bigscreen-jsx/README.md +4 -5
  141. package/packages/types-bigscreen-jsx/index.d.ts +67 -72
  142. package/packages/utils/README.md +0 -27
  143. package/packages/utils/src/elementUtils.ts +0 -25
  144. package/packages/utils/src/index.ts +0 -8
  145. package/packages/utils/src/scaledImage.ts +3 -6
  146. package/packages/utils/src/textUtils.ts +14 -46
  147. package/packages/utils/src/wait.ts +1 -3
  148. package/packages/utils/src/xhr/xhrSend.ts +1 -3
  149. package/packages/utils/src/xhr/xhrSendRetry.ts +1 -3
  150. package/packages/zapping/src/ChannelZapping.ts +0 -9
  151. package/packages/zapping/src/Zapping.tsx +0 -10
  152. package/.vscode/settings.json +0 -6
  153. package/packages/analytics/README.md +0 -8
  154. package/packages/analytics/src/A.ts +0 -1
  155. package/packages/analytics/src/Analytics.ts +0 -1
  156. package/packages/analytics/src/analyticsOnScroll.ts +0 -1
  157. package/packages/analytics/src/clients/ConsoleAnalytics/ConsoleAnalytics.ts +0 -1
  158. package/packages/analytics/src/clients/ConsoleAnalytics/index.ts +0 -1
  159. package/packages/analytics/src/clients/GoogleAnalytics/GoogleAnalytics.ts +0 -200
  160. package/packages/analytics/src/clients/GoogleAnalytics/constants.ts +0 -118
  161. package/packages/analytics/src/clients/GoogleAnalytics/getUrl.ts +0 -17
  162. package/packages/analytics/src/clients/GoogleAnalytics/index.ts +0 -2
  163. package/packages/analytics/src/clients/GoogleAnalytics/interface.ts +0 -77
  164. package/packages/analytics/src/clients/GoogleAnalytics/mapPayload.ts +0 -50
  165. package/packages/analytics/src/clients/GoogleAnalytics/prepareBody.ts +0 -14
  166. package/packages/analytics/src/clients/TealiumAnalytics/TealiumAnalytics.ts +0 -169
  167. package/packages/analytics/src/clients/TealiumAnalytics/constants.ts +0 -102
  168. package/packages/analytics/src/clients/TealiumAnalytics/findIdForLanguage.ts +0 -9
  169. package/packages/analytics/src/clients/TealiumAnalytics/index.ts +0 -4
  170. package/packages/analytics/src/clients/TealiumAnalytics/interface.ts +0 -33
  171. package/packages/analytics/src/clients/TealiumAnalytics/mappers/__mocks__/mediaPayload.ts +0 -70
  172. package/packages/analytics/src/clients/TealiumAnalytics/mappers/helper.ts +0 -36
  173. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapAppError.ts +0 -13
  174. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapFavoriteAdd.ts +0 -11
  175. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapFavoriteRemove.ts +0 -11
  176. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapPlayerClose.ts +0 -15
  177. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapPlayerOpen.ts +0 -15
  178. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapSceneView.ts +0 -18
  179. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapSearch.ts +0 -18
  180. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapSearchFailed.ts +0 -8
  181. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapSearchSuccess.ts +0 -8
  182. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapVideoPause.ts +0 -15
  183. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapVideoProgress.ts +0 -18
  184. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapVideoResume.ts +0 -15
  185. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapVideoStart.ts +0 -15
  186. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapVideoStop.ts +0 -15
  187. package/packages/analytics/src/clients/TealiumAnalytics/types.ts +0 -156
  188. package/packages/analytics/src/clients/TwentyFourIQ/TwentyFourIQClient.ts +0 -116
  189. package/packages/analytics/src/clients/TwentyFourIQ/constants.ts +0 -99
  190. package/packages/analytics/src/clients/TwentyFourIQ/helper.ts +0 -34
  191. package/packages/analytics/src/clients/TwentyFourIQ/index.ts +0 -2
  192. package/packages/analytics/src/clients/TwentyFourIQ/interface.ts +0 -31
  193. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapAdLoaded.ts +0 -13
  194. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapAdSkipped.ts +0 -16
  195. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapBase.ts +0 -21
  196. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapBuffering.ts +0 -15
  197. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapPlayerClose.ts +0 -24
  198. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapPlayerOpen.ts +0 -18
  199. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapSceneView.ts +0 -15
  200. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapScroll.ts +0 -17
  201. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoComplete.ts +0 -21
  202. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoPause.ts +0 -24
  203. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoProgress.ts +0 -24
  204. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoStart.ts +0 -34
  205. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoStop.ts +0 -32
  206. package/packages/analytics/src/clients/TwentyFourIQ/types.ts +0 -115
  207. package/packages/analytics/src/constants.ts +0 -1
  208. package/packages/analytics/src/index.ts +0 -3
  209. package/packages/analytics/src/interface.ts +0 -1
  210. package/packages/analytics/src/utils/generateSessionId.ts +0 -8
  211. package/packages/create-package/dist/createPackage.js +0 -66
  212. package/packages/create-package/dist/createPackage.js.map +0 -1
  213. package/packages/create-package/dist/index.js +0 -5
  214. package/packages/create-package/dist/index.js.map +0 -1
  215. package/packages/create-package/dist/questionnaire/questions.js +0 -35
  216. package/packages/create-package/dist/questionnaire/questions.js.map +0 -1
  217. package/packages/create-package/dist/settings/Settings.js +0 -10
  218. package/packages/create-package/dist/settings/Settings.js.map +0 -1
  219. package/packages/create-package/dist/types.js +0 -3
  220. package/packages/create-package/dist/types.js.map +0 -1
  221. package/packages/device/src/driver/index.firetv.ts +0 -1
  222. package/packages/device/src/driver/index.smartcast.tv.ts +0 -1
  223. package/packages/driver-firetv/src/DeviceFireTV.ts +0 -18
  224. package/packages/driver-firetv/src/__mocks__/javaScriptBridge.ts +0 -36
  225. package/packages/driver-firetv/src/index.ts +0 -1
  226. package/packages/driver-smartcast/src/DeviceSmartCast.ts +0 -317
  227. package/packages/driver-smartcast/src/__mocks__/api.ts +0 -49
  228. package/packages/driver-smartcast/src/index.ts +0 -1
  229. package/packages/driver-smartcast/src/keymap.ts +0 -9
  230. package/packages/driver-smartcast/src/types.ts +0 -65
  231. package/packages/focus/src/hasFocus.ts +0 -36
  232. package/packages/input/src/utils.ts +0 -71
  233. package/packages/jsx/src/test-utils/keyup.ts +0 -27
  234. package/packages/keyboard/src/WhitelabelKeyboard/layouts/arabic.ts +0 -27
  235. package/packages/keyboard/src/WhitelabelKeyboard/layouts/burmese.ts +0 -27
  236. package/packages/keyboard/src/WhitelabelKeyboard/layouts/dari.ts +0 -28
  237. package/packages/keyboard/src/WhitelabelKeyboard/layouts/korean.ts +0 -26
  238. package/packages/keyboard/src/WhitelabelKeyboard/layouts/pashto.ts +0 -27
  239. package/packages/keyboard/src/WhitelabelKeyboard/layouts/persian.ts +0 -27
  240. package/packages/keyboard/src/WhitelabelKeyboard/layouts/russian.ts +0 -27
  241. package/packages/keyboard/src/WhitelabelKeyboard/layouts/tibetan.ts +0 -26
  242. package/packages/keyboard/src/WhitelabelKeyboard/layouts/turkish.ts +0 -26
  243. package/packages/keyboard/src/WhitelabelKeyboard/layouts/ukrainian.ts +0 -27
  244. package/packages/keyboard/src/WhitelabelKeyboard/layouts/urdu.ts +0 -26
  245. package/packages/l10n/src/date/de.ts +0 -97
  246. package/packages/l10n/src/date/es.ts +0 -71
  247. package/packages/l10n/src/date/fr.ts +0 -94
  248. package/packages/l10n/src/date/he.ts +0 -101
  249. package/packages/time/src/adapters/24iMediaTimeApi.ts +0 -47
  250. package/packages/time/src/services/24iMediaTimeApi/24iMediaTimeApi.ts +0 -43
  251. package/packages/time/src/services/24iMediaTimeApi/index.ts +0 -6
  252. package/packages/utils/src/forceReflow.ts +0 -14
  253. package/packages/utils/src/keyPress/index.ts +0 -6
  254. package/packages/utils/src/keyPress/keyPressSimulator.ts +0 -74
  255. package/packages/utils/src/keyPress/simulateKeyPress.ts +0 -25
  256. package/utils/release/release.ts +0 -154
@@ -1,18 +0,0 @@
1
- import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
2
- import { DefaultScreens } from '../constants';
3
- import { getAssetId } from '../helper';
4
-
5
- import { PlayerOpenResult, Payload } from '../types';
6
- import { mapBase } from './mapBase';
7
-
8
- export const mapPlayerOpen = (
9
- triggerName: AnalyticsTriggers,
10
- payload: Payload,
11
- ): PlayerOpenResult => ({
12
- ...mapBase(payload),
13
- action: triggerName,
14
- event_trigger: triggerName,
15
- source_page: DefaultScreens.PLAYBACK,
16
- thing_id: getAssetId(payload.sceneId),
17
- source_rail: '', // TODO: payload.payload.asset.sectionLabel,
18
- });
@@ -1,15 +0,0 @@
1
- import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
2
- import { getAssetId } from '../helper';
3
- import { Payload, SceneViewResult } from '../types';
4
- import { mapBase } from './mapBase';
5
-
6
- export const mapSceneView = (
7
- triggerName: AnalyticsTriggers,
8
- payload: Payload,
9
- ): SceneViewResult | undefined => ({
10
- ...mapBase(payload),
11
- action: triggerName,
12
- event_trigger: triggerName,
13
- source_page: payload.sceneName,
14
- thing_id: getAssetId(payload.sceneId),
15
- });
@@ -1,17 +0,0 @@
1
- import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
2
- import { EVENTS } from '../constants';
3
- import { getAssetId } from '../helper';
4
- import { Payload, ScrollResult } from '../types';
5
- import { mapBase } from './mapBase';
6
-
7
- export const mapScroll = (triggerName: AnalyticsTriggers, payload: Payload): ScrollResult => {
8
- const percentScrolled = triggerName.split('_')[1];
9
- return {
10
- ...mapBase(payload),
11
- action: EVENTS.SCROLL,
12
- event_trigger: triggerName,
13
- source_page: payload.sceneName,
14
- thing_id: getAssetId(payload.sceneId),
15
- percent_scrolled: percentScrolled,
16
- };
17
- };
@@ -1,21 +0,0 @@
1
- import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
2
- import { SECOND_IN_MS } from '@24i/bigscreen-sdk/utils';
3
- import { EVENTS } from '../constants';
4
- import { Payload, VideoCompleteResult } from '../types';
5
- import { mapBase } from './mapBase';
6
- import { getAssetId } from '../helper';
7
-
8
- export const mapVideoComplete = (
9
- triggerName: AnalyticsTriggers,
10
- payload: Payload,
11
- ): VideoCompleteResult => {
12
- const assetDuration = (payload.duration || 0) / SECOND_IN_MS;
13
- return {
14
- ...mapBase(payload),
15
- action: EVENTS.VIDEO_COMPLETE,
16
- event_trigger: triggerName,
17
- thing_id: getAssetId(payload.sceneId),
18
- progress_pct: 90,
19
- duration: assetDuration,
20
- };
21
- };
@@ -1,24 +0,0 @@
1
- import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
2
- import { SECOND_IN_MS } from '@24i/bigscreen-sdk/utils';
3
- import { EVENTS, HUNDRED_PERCENT } from '../constants';
4
- import { VideoPauseResult, Payload } from '../types';
5
- import { mapBase } from './mapBase';
6
- import { getAssetId } from '../helper';
7
-
8
- export const mapVideoPause = (
9
- triggerName: AnalyticsTriggers,
10
- payload: Payload,
11
- ): VideoPauseResult => {
12
- const { asset, duration = 0 } = payload;
13
- const progressPercent = Number(payload.percentOfPlayback);
14
- const assetDuration = duration / SECOND_IN_MS || asset?.duration || 0;
15
- const overallDuration = Math.round((assetDuration * progressPercent) / HUNDRED_PERCENT);
16
- return {
17
- ...mapBase(payload),
18
- action: EVENTS.VIDEO_PAUSE,
19
- event_trigger: triggerName,
20
- thing_id: getAssetId(payload.sceneId),
21
- duration: overallDuration,
22
- progress_pct: progressPercent,
23
- };
24
- };
@@ -1,24 +0,0 @@
1
- import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
2
- import { SECOND_IN_MS } from '@24i/bigscreen-sdk/utils';
3
- import { Payload, VideoProgressResult } from '../types';
4
- import { EVENTS, HUNDRED_PERCENT } from '../constants';
5
- import { mapBase } from './mapBase';
6
- import { getAssetId } from '../helper';
7
-
8
- export const mapVideoProgress = (
9
- triggerName: AnalyticsTriggers,
10
- payload: Payload,
11
- ): VideoProgressResult => {
12
- const { asset, duration = 0 } = payload;
13
- const progressPercent = Number(triggerName.split('_')[1]);
14
- const assetDuration = duration / SECOND_IN_MS || asset?.duration || 0;
15
- const durationInSeconds = Math.round((assetDuration * progressPercent) / HUNDRED_PERCENT);
16
- return {
17
- ...mapBase(payload),
18
- action: EVENTS.VIDEO_PROGRESS,
19
- event_trigger: triggerName,
20
- thing_id: getAssetId(payload.sceneId),
21
- progress_pct: progressPercent,
22
- duration: durationInSeconds,
23
- };
24
- };
@@ -1,34 +0,0 @@
1
- import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
2
- import { PropertyType } from '@24i/smartapps-datalayer/models';
3
- import { SECOND_IN_MS } from '@24i/bigscreen-sdk/utils';
4
- import { DefaultScreens, EVENTS } from '../constants';
5
- import { VideoStartResult, Payload } from '../types';
6
- import { mapBase } from './mapBase';
7
- import { getAssetId } from '../helper';
8
-
9
- const HUNDRED_PERCENT = 100;
10
-
11
- export const mapVideoStart = (
12
- triggerName: AnalyticsTriggers,
13
- payload: Payload,
14
- ): VideoStartResult => {
15
- const { duration = 0, asset } = payload;
16
- const assetDuration = duration / SECOND_IN_MS || asset?.duration || 0;
17
- const startPosition = Number(asset?.properties?.find(
18
- (property) => property.type === PropertyType.WATCH_PROGRESS,
19
- ) || 0);
20
- let progressPercent = 0;
21
- if (assetDuration !== 0 && startPosition !== 0) {
22
- progressPercent = Number(((startPosition / assetDuration) * HUNDRED_PERCENT).toFixed(2));
23
- }
24
- return {
25
- ...mapBase(payload),
26
- action: EVENTS.VIDEO_START,
27
- event_trigger: triggerName,
28
- thing_id: getAssetId(payload.sceneId),
29
- duration: assetDuration,
30
- progress_pct: progressPercent,
31
- source_page: DefaultScreens.PLAYBACK,
32
- source_rail: '', // TODO: asset.sectionLabel,
33
- };
34
- };
@@ -1,32 +0,0 @@
1
- import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
2
- import { SECOND_IN_MS } from '@24i/bigscreen-sdk/utils';
3
- import { PropertyType } from '@24i/smartapps-datalayer/models';
4
- import { DefaultScreens, EVENTS, HUNDRED_PERCENT } from '../constants';
5
- import { Payload, VideoStopResult } from '../types';
6
- import { mapBase } from './mapBase';
7
- import { getAssetId } from '../helper';
8
-
9
- export const mapVideoStop = (
10
- triggerName: AnalyticsTriggers,
11
- payload: Payload,
12
- ): VideoStopResult | undefined => {
13
- const { duration = 0, asset } = payload;
14
- const assetDuration = duration / SECOND_IN_MS || asset?.duration || 0;
15
- const startPosition = Number(asset?.properties?.find(
16
- (property) => property.type === PropertyType.WATCH_PROGRESS,
17
- ) || 0);
18
- let progressPercent = 0;
19
- if (assetDuration !== 0 && startPosition !== 0) {
20
- progressPercent = Number(((startPosition / assetDuration) * HUNDRED_PERCENT));
21
- }
22
- return {
23
- ...mapBase(payload),
24
- action: EVENTS.VIDEO_STOP,
25
- event_trigger: triggerName,
26
- thing_id: getAssetId(payload.sceneId),
27
- progress_pct: progressPercent,
28
- duration,
29
- source_page: DefaultScreens.PLAYBACK,
30
- source_rail: '', // TODO: payload.payload.asset.sectionLabel,
31
- };
32
- };
@@ -1,115 +0,0 @@
1
- import { Asset } from '@24i/smartapps-datalayer/models';
2
- import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
3
- import type { AnyPayload, UserInfo, AppInfo } from '../../interface';
4
-
5
- interface ScreenParams {
6
- screen: string;
7
- screenName: string;
8
- id: string;
9
- asset: Asset;
10
- }
11
- export interface CorePayload {
12
- timestamp?: number;
13
- params?: ScreenParams;
14
- asset?: Asset;
15
- source?: string;
16
- duration?: number;
17
- id?: string;
18
- percentOfPlayback?: number;
19
- }
20
-
21
- export interface SessionInfo {
22
- sessionId: number;
23
- sessionNumber: number;
24
- }
25
-
26
- export interface DeviceInfo {
27
- appVersion: string,
28
- manufacturer: string,
29
- platform: string,
30
- platformVersion: string,
31
- deviceId: string,
32
- }
33
-
34
- export interface SceneInfo {
35
- sceneName: string,
36
- sceneId: string,
37
- sceneType?: string,
38
- }
39
-
40
- export type Payload = CorePayload & SceneInfo & SessionInfo & UserInfo & AppInfo;
41
-
42
- export type EventBody = AnyPayload;
43
-
44
- export type EventMappingFunction = (
45
- triggerName: AnalyticsTriggers,
46
- payload: Payload
47
- ) => AnyPayload | void;
48
-
49
- export type BaseResult = {
50
- session_id: string;
51
- timestamp_initiated: string;
52
- device_id: string;
53
- device_type: string;
54
- device_platform: string;
55
- device_timezone: string;
56
- service_id: string;
57
- user_id?: string;
58
- user_profile_id?: string;
59
- custom_gdpr_status?: boolean;
60
- };
61
-
62
- export type CoreResult = BaseResult & {
63
- action: string;
64
- event_trigger: string;
65
- };
66
- export type SceneViewResult = CoreResult & {
67
- source_page: string;
68
- thing_id: string;
69
- };
70
- export type BufferingResult = SceneViewResult;
71
-
72
- export type ScrollResult = SceneViewResult & {
73
- percent_scrolled: string;
74
- };
75
- export type VideoProgressResult = CoreResult & {
76
- thing_id: string;
77
- progress_pct: number;
78
- duration: number;
79
- };
80
-
81
- export type PlayerOpenResult = CoreResult & {
82
- thing_id: string;
83
- source_page: string;
84
- source_rail?: string | null;
85
- };
86
-
87
- export type VideoStartResult = CoreResult & {
88
- thing_id: string;
89
- duration: number;
90
- progress_pct: number;
91
- source_page: string;
92
- source_rail?: string | null;
93
- };
94
-
95
- export type VideoPauseResult = CoreResult & {
96
- thing_id: string;
97
- duration: number;
98
- progress_pct: number;
99
- };
100
-
101
- export type AdLoadedResult = CoreResult & {
102
- thing_id: string;
103
- player_advertisment_name: string;
104
- player_advertisment_position: number;
105
- };
106
-
107
- export type AdSkippedResult = CoreResult & {
108
- thing_id: string;
109
- player_advertisment_name: string;
110
- player_advertisment_position: number;
111
- };
112
-
113
- export type VideoCompleteResult = VideoPauseResult;
114
- export type VideoStopResult = VideoStartResult;
115
- export type PlayerCloseResult = VideoPauseResult;
@@ -1 +0,0 @@
1
- export * from '@24i/appstage-shared-analytics';
@@ -1,3 +0,0 @@
1
- export { analytics } from './Analytics';
2
- export { A } from './A';
3
- export { analyticsOnScroll } from './analyticsOnScroll';
@@ -1 +0,0 @@
1
- export * from '@24i/appstage-shared-analytics/dist/interface';
@@ -1,8 +0,0 @@
1
- const RANDOM_SEED = 2147483647;
2
- /**
3
- * Recommended way to generate session id by Google.
4
- * Blackbox
5
- */
6
- export const generateSessionId = () => (
7
- Math.floor(Math.random() * (RANDOM_SEED - 0 + 1) + 0)
8
- );
@@ -1,66 +0,0 @@
1
- #!/usr/bin/env node
2
- "use strict";
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.main = void 0;
5
- const path = require("path");
6
- const fs = require("fs");
7
- const fse = require("fs-extra");
8
- const chalk = require("chalk");
9
- const minimist = require("minimist");
10
- const questions_1 = require("./questionnaire/questions");
11
- const Settings_1 = require("./settings/Settings");
12
- async function isDirectoryEmpty(dirPath) {
13
- const files = await fs.promises.readdir(dirPath);
14
- return !files.length;
15
- }
16
- async function copyTemplateFiles(templateDir, targetDir) {
17
- return fse.copy(templateDir, targetDir);
18
- }
19
- function updatePackageJsonFile(filePath, options) {
20
- let data = fs.readFileSync(filePath, 'utf8');
21
- const keywords = options.keywords.map((word) => `"${word}"`).join(', ');
22
- data = data.replace(/("name": ")(.*)(")/, `$1${options.name}$3`);
23
- data = data.replace(/("version": ")(.*)(")/, `$1${options.version}$3`);
24
- data = data.replace(/("description": ")(.*)(")/, `$1${options.description}$3`);
25
- data = data.replace(/("keywords": \[)(.*)(\])/, `$1${keywords}$3`);
26
- data = data.replace(/("author": ")(.*)(")/, `$1${options.author}$3`);
27
- fs.writeFileSync(filePath, data);
28
- }
29
- function parseArguments(rawArgv) {
30
- const argv = minimist(rawArgv.slice(2));
31
- const dirName = argv._[0];
32
- if (!dirName) {
33
- console.error('Error: Missing package name');
34
- process.exit(1);
35
- }
36
- return {
37
- dirName,
38
- };
39
- }
40
- async function main() {
41
- const { dirName: destDirName } = parseArguments(process.argv);
42
- const destDir = path.join(process.cwd(), 'packages/', destDirName);
43
- if (fs.existsSync(destDir)) {
44
- console.error(`Error: Target directory "${destDir}" already exists`);
45
- process.exit(1);
46
- }
47
- fs.mkdirSync(destDir, { recursive: true });
48
- const isDirEmpty = await isDirectoryEmpty(destDir);
49
- if (!isDirEmpty) {
50
- console.error(`Error: Target directory "${destDir}" is not empty.`);
51
- process.exit(1);
52
- }
53
- const settings = Object.assign({}, Settings_1.Settings);
54
- settings.name = `${Settings_1.Settings.name}${destDirName}`.toLowerCase();
55
- const details = await (0, questions_1.promptPackageDetails)(settings);
56
- const templateDir = path.join(__dirname, '..', 'templates/typescript');
57
- await copyTemplateFiles(templateDir, destDir);
58
- const packageJsonFile = path.join(destDir, 'package.json');
59
- updatePackageJsonFile(packageJsonFile, details);
60
- const docsSymlinkTarget = path.join('../../../packages/', destDirName, '/README.md');
61
- const docsSymlinkPath = path.join(process.cwd(), 'docs/packages/', destDirName, '/README.md');
62
- await fse.ensureSymlink(docsSymlinkTarget, docsSymlinkPath);
63
- console.log(`${chalk.green('Success')}, package has been initialized!`);
64
- }
65
- exports.main = main;
66
- //# sourceMappingURL=createPackage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createPackage.js","sourceRoot":"","sources":["../src/createPackage.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const createPackage_1 = require("./createPackage");
4
- (0, createPackage_1.main)();
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAAA,mDAAuC;AAEvC,IAAA,oBAAI,GAAE,CAAC"}
@@ -1,35 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.promptPackageDetails = void 0;
4
- const inquirer = require("inquirer");
5
- async function promptPackageDetails(defaultValues) {
6
- return inquirer.prompt([
7
- {
8
- type: 'input',
9
- name: 'name',
10
- message: 'Package name:',
11
- default: defaultValues.name,
12
- }, {
13
- type: 'input',
14
- name: 'version',
15
- message: 'Version:',
16
- default: defaultValues.version,
17
- }, {
18
- type: 'input',
19
- name: 'description',
20
- message: 'Description:',
21
- }, {
22
- type: 'input',
23
- name: 'keywords',
24
- message: 'Keywords:',
25
- filter: (ans) => ans.split(/[\s,]+/),
26
- }, {
27
- type: 'input',
28
- name: 'author',
29
- message: 'Author:',
30
- default: defaultValues.author,
31
- },
32
- ]);
33
- }
34
- exports.promptPackageDetails = promptPackageDetails;
35
- //# sourceMappingURL=questions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"questions.js","sourceRoot":"","sources":["../../src/questionnaire/questions.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AAWrC,KAAK,UAAU,oBAAoB,CAAC,aAA4C;IAC5E,OAAO,QAAQ,CAAC,MAAM,CAAC;QACnB;YACI,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,eAAe;YACxB,OAAO,EAAE,aAAa,CAAC,IAAI;SAC9B,EAAE;YACC,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,UAAU;YACnB,OAAO,EAAE,aAAa,CAAC,OAAO;SACjC,EAAE;YACC,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,cAAc;SAC1B,EAAE;YACC,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,WAAW;YACpB,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC;SACvC,EAAE;YACC,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,aAAa,CAAC,MAAM;SAChC;KACJ,CAAC,CAAC;AACP,CAAC;AAEQ,oDAAoB"}
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Settings = void 0;
4
- const Settings = {
5
- name: '@24i/smartapps-bigscreen-',
6
- version: '0.0.1',
7
- author: '24i',
8
- };
9
- exports.Settings = Settings;
10
- //# sourceMappingURL=Settings.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Settings.js","sourceRoot":"","sources":["../../src/settings/Settings.ts"],"names":[],"mappings":";;;AAAA,MAAM,QAAQ,GAAG;IACb,IAAI,EAAE,2BAA2B;IACjC,OAAO,EAAE,OAAO;IAChB,MAAM,EAAE,KAAK;CAChB,CAAC;AAEO,4BAAQ"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- export { DeviceFireTV as Device } from '@24i/bigscreen-sdk/driver-firetv';
@@ -1 +0,0 @@
1
- export { DeviceSmartCast as Device } from '@24i/bigscreen-sdk/driver-smartcast';
@@ -1,18 +0,0 @@
1
- import { DeviceAndroidTV } from '@24i/bigscreen-sdk/driver-androidtv';
2
-
3
- /**
4
- * Fire TV driver implementing API of Android TV Bridge.
5
- *
6
- * See https://github.com/24i/prd-smart-ott-androidtv
7
- */
8
- export class DeviceFireTV extends DeviceAndroidTV {
9
- async getPlatformName(): Promise<string> {
10
- return 'FireTV';
11
- }
12
-
13
- async getDeviceName(): Promise<string> {
14
- const modelName = await this.getModelName();
15
- const manufacturerName = await this.getManufacturerName();
16
- return `FireTV ${manufacturerName} ${modelName}`.trim();
17
- }
18
- }
@@ -1,36 +0,0 @@
1
- import { IJavaScriptBridge } from '../../../driver-androidtv/src/types';
2
-
3
- export const mockJavaScriptBridge: IJavaScriptBridge = {
4
- JavaScriptBridge: {
5
- bridgeJavaScriptToAndroid_GetDeviceInfo: () => (
6
- JSON.stringify({
7
- deviceBrand: 'Amazon',
8
- deviceModel: 'AFTR',
9
- osVersion: '8.0.0',
10
- appVersion: '0.0.1',
11
- appFlavor: 'appstage-bigscreen',
12
- drmKeySystems: '["W3C Clear Key", "Google Widevine"]',
13
- ipLocal: '127.0.0.1',
14
- })
15
- ),
16
- bridgeJavaScriptToAndroid_Back: () => {},
17
- bridgeJavaScriptToAndroid_StopVideo: () => {},
18
- bridgeJavaScriptToAndroid_FullScreenVideo: () => {},
19
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
20
- bridgeJavaScriptToAndroid_SetVideoPath: (url: string) => {},
21
- bridgeJavaScriptToAndroid_IsPlaying: () => true,
22
- bridgeJavaScriptToAndroid_PauseVideo: () => {},
23
- bridgeJavaScriptToAndroid_PlayVideo: () => {},
24
- bridgeJavaScriptToAndroid_IsLive: () => false,
25
- bridgeJavaScriptToAndroid_GetCurrentTime: () => Date.now(),
26
- bridgeJavaScriptToAndroid_GetTotalTime: () => Date.now(),
27
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
28
- bridgeJavaScriptToAndroid_SeekTo: (milliseconds: number) => {},
29
- bridgeJavaScriptToAndroid_getCurrentSubtitleTrack: () => '{}',
30
- bridgeJavaScriptToAndroid_getCurrentAudioTrack: () => '{}',
31
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
32
- bridgeJavaScriptToAndroid_SetTrack: (track: string) => {},
33
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
34
- bridgeJavaScriptToAndroid_SetAudioTrack: (track: string) => {},
35
- },
36
- };
@@ -1 +0,0 @@
1
- export { DeviceFireTV } from './DeviceFireTV';