@24i/bigscreen-sdk 1.0.54-alpha.2836 → 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.
- package/README.md +3 -2
- package/package.json +34 -53
- package/packages/adobe-heartbeat/src/AdobeHeartbeat.ts +9 -9
- package/packages/async-image/src/AsyncImage.tsx +10 -15
- package/packages/developer-tools/PlayerDebugWindow/README.md +1 -1
- package/packages/developer-tools/src/DeveloperToolsService/DeveloperToolsList.tsx +0 -11
- package/packages/developer-tools/src/PlayerDebugWindow/PlayerDebugWindow.tsx +5 -5
- package/packages/developer-tools/src/PlayerDebugWindow/constants.ts +0 -15
- package/packages/developer-tools/src/TechnicalInfo/TechnicalInfoDetail.tsx +1 -2
- package/packages/developer-tools/src/TechnicalInfo/TechnicalInfoProvider.ts +5 -57
- package/packages/developer-tools/src/TechnicalInfo/__mocks__/Device.ts +0 -12
- package/packages/developer-tools/src/TechnicalInfo/translations.ts +0 -8
- package/packages/device/src/getKeyDigit.ts +2 -2
- package/packages/device/src/resolver/resolver.ts +5 -18
- package/packages/digital-clock/src/DigitalClock.tsx +4 -15
- package/packages/driver-androidtv/src/DeviceAndroidTV.ts +9 -92
- package/packages/driver-androidtv/src/__mocks__/javaScriptBridge.ts +5 -38
- package/packages/driver-androidtv/src/index.ts +0 -1
- package/packages/driver-androidtv/src/keymap.ts +0 -18
- package/packages/driver-androidtv/src/types.ts +16 -144
- package/packages/driver-base/src/DeviceBase.ts +2 -80
- package/packages/driver-base/src/KeyMap/Key.ts +1 -8
- package/packages/driver-base/src/KeyMap/KeyMap.ts +0 -4
- package/packages/driver-base/src/KeyMap/interface.ts +0 -1
- package/packages/driver-base/src/KeyMap/overrideValues.ts +1 -2
- package/packages/driver-base/src/__mocks__/DeviceBase.ts +0 -24
- package/packages/driver-base/src/__mocks__/keyMap.ts +0 -1
- package/packages/driver-base/src/index.ts +0 -3
- package/packages/driver-base/src/types/DeviceEvent.ts +0 -2
- package/packages/driver-base/src/types/KeycodeKeyMap.ts +0 -1
- package/packages/driver-browser/src/DeviceBrowser.ts +0 -26
- package/packages/driver-browser/src/keymap.ts +0 -8
- package/packages/driver-entone/src/DeviceEntone.ts +1 -31
- package/packages/driver-entone/src/keymap.ts +0 -1
- package/packages/driver-hbbtv/src/DeviceHbbTV.ts +0 -26
- package/packages/driver-kreatv/src/DeviceKreaTV.ts +0 -26
- package/packages/driver-saphi/src/DeviceSaphi.ts +0 -26
- package/packages/driver-tizen/src/DeviceTizen.ts +7 -126
- package/packages/driver-tizen/src/ITizen.ts +202 -15116
- package/packages/driver-tizen/src/IWebapis.ts +87 -8643
- package/packages/driver-tizen/src/TizenKeys.ts +2 -4
- package/packages/driver-tizen/src/__mocks__/tizen.ts +8 -7
- package/packages/driver-tizen/src/constants.ts +195 -1
- package/packages/driver-tizen/src/types.ts +14 -0
- package/packages/driver-vidaa/src/DeviceVidaa.ts +2 -29
- package/packages/driver-vidaa/src/__mocks__/vidaa.ts +1 -1
- package/packages/driver-vidaa/src/keymap.ts +0 -2
- package/packages/driver-webos/src/DeviceWebos.ts +0 -55
- package/packages/driver-webos/src/__mocks__/webos.ts +0 -33
- package/packages/driver-webos/src/constants.ts +0 -1
- package/packages/driver-webos/src/keymap.ts +1 -2
- package/packages/driver-webos/src/types.ts +0 -30
- package/packages/driver-xbox/src/DeviceXbox.ts +1 -30
- package/packages/driver-xbox/src/keymap.ts +1 -1
- package/packages/epg/README.md +1 -3
- package/packages/epg/src/v2/Cell.tsx +2 -16
- package/packages/epg/src/v2/DataManager.ts +41 -112
- package/packages/epg/src/v2/DatePicker.tsx +3 -9
- package/packages/epg/src/v2/DateToast/DateToast.tsx +9 -12
- package/packages/epg/src/v2/Day.tsx +3 -6
- package/packages/epg/src/v2/Epg.tsx +5 -5
- package/packages/epg/src/v2/MockGenerator/generator.ts +2 -3
- package/packages/epg/src/v2/ProgramInfo/utils.ts +3 -4
- package/packages/epg/src/v2/Row.tsx +1 -3
- package/packages/epg/src/v2/TimelineSection.tsx +1 -4
- package/packages/epg/src/v2/basic/CellsManager.tsx +2 -7
- package/packages/epg/src/v2/basic/RowsManager.tsx +1 -3
- package/packages/epg/src/v2/interface.ts +0 -13
- package/packages/events-manager/src/EventsManager.ts +56 -1
- package/packages/focus/README.md +0 -33
- package/packages/focus/src/IFocusable.ts +0 -1
- package/packages/focus/src/Layout/Base.tsx +6 -41
- package/packages/focus/src/Layout/Matrix.tsx +19 -51
- package/packages/focus/src/Layout/__test__/Base.spec.ts +180 -0
- package/packages/focus/src/Layout/__test__/Horizontal.spec.ts +94 -0
- package/packages/focus/src/Layout/__test__/Matrix.spec.ts +261 -0
- package/packages/focus/src/Layout/__test__/Vertical.spec.ts +46 -0
- package/packages/focus/src/Layout/__test__/isRtl.spec.ts +23 -0
- package/packages/focus/src/Layout/__test__/shared.ts +19 -0
- package/packages/focus/src/focusFirstExisting.ts +1 -7
- package/packages/focus/src/index.ts +1 -2
- package/packages/gallup/src/Gallup.ts +3 -3
- package/packages/grid/src/Base/Base.tsx +10 -15
- package/packages/grid/src/FirstOnlyGrid/FirstOnlyGrid.tsx +2 -4
- package/packages/grid/src/UnifiedGridController/UnifiedGridController.ts +6 -6
- package/packages/icon/src/Icon.tsx +5 -27
- package/packages/input/README.md +1 -1
- package/packages/input/src/Input.tsx +10 -16
- package/packages/interactable/README.md +1 -2
- package/packages/interactable/src/Interactable.tsx +3 -9
- package/packages/interactable/src/interface.ts +0 -1
- package/packages/jsx/src/index.ts +1 -1
- package/packages/jsx/src/test-utils/index.ts +0 -1
- package/packages/keyboard/src/Backdrop/Backdrop.scss +0 -2
- package/packages/keyboard/src/KeyboardBase.tsx +4 -16
- package/packages/keyboard/src/WhitelabelKeyboard/Keyboard.scss +0 -4
- package/packages/keyboard/src/WhitelabelKeyboard/Keyboard.tsx +20 -28
- package/packages/keyboard/src/WhitelabelKeyboard/_sizes.1080.scss +0 -1
- package/packages/keyboard/src/WhitelabelKeyboard/_sizes.scss +0 -1
- package/packages/keyboard/src/WhitelabelKeyboard/layouts/index.ts +0 -12
- package/packages/keyboard/src/WhitelabelKeyboard/types.ts +0 -1
- package/packages/keyboard/src/utils/caret.ts +8 -5
- package/packages/keyboard/src/utils/input.ts +6 -5
- package/packages/l10n/README.md +0 -18
- package/packages/l10n/src/date/common.ts +6 -18
- package/packages/l10n/src/date/cs.ts +8 -2
- package/packages/l10n/src/date/en-001.ts +3 -3
- package/packages/l10n/src/date/en-common.ts +4 -5
- package/packages/l10n/src/date/en-us.ts +3 -3
- package/packages/l10n/src/date/iso.ts +13 -12
- package/packages/l10n/src/date/types.ts +0 -9
- package/packages/l10n/src/l10n.ts +3 -61
- package/packages/list/src/Base/Base.tsx +9 -19
- package/packages/list/src/Base/interface.ts +2 -2
- package/packages/list/src/BasicList/BasicList.tsx +7 -7
- package/packages/list/src/CenteredList/CenteredList.tsx +2 -2
- package/packages/list/src/CenteredList/controller.ts +1 -0
- package/packages/list/src/EdgeOffsetList/EdgeOffsetList.tsx +10 -10
- package/packages/list/src/FirstOnlyList/FirstOnlyList.tsx +2 -2
- package/packages/list/src/FirstOnlyVariedList/FirstOnlyVariedList.tsx +2 -2
- package/packages/list/src/FixedToEndList/FixedToEndList.tsx +2 -2
- package/packages/list/src/UnifiedListController/UnifiedListController.ts +2 -6
- package/packages/list/src/interface.ts +2 -2
- package/packages/logger/src/loggers/ConsoleLogger/ConsoleLogger.ts +1 -7
- package/packages/logger/src/loggers/SentryLogger/Sentry.ts +0 -1
- package/packages/logger/src/loggers/SentryLogger/SentryLogger.ts +3 -5
- package/packages/menu/src/MenuAndContentContainer/MenuAndContentContainer.tsx +3 -31
- package/packages/menu/src/MenuAndContentContainer/interface.ts +0 -8
- package/packages/modal-service/README.md +1 -4
- package/packages/modal-service/src/ModalService.tsx +5 -29
- package/packages/perf-utils/README.md +120 -1
- package/packages/perf-utils/src/array/filter.ts +54 -1
- package/packages/perf-utils/src/array/find.ts +43 -1
- package/packages/perf-utils/src/array/findIndex.ts +43 -1
- package/packages/perf-utils/src/array/forEach.ts +48 -1
- package/packages/perf-utils/src/array/includes.ts +41 -1
- package/packages/perf-utils/src/array/includesNaN.ts +32 -1
- package/packages/perf-utils/src/array/index.ts +7 -1
- package/packages/perf-utils/src/array/map.ts +52 -1
- package/packages/player-ui/README.md +1 -1
- package/packages/player-ui/src/CurrentTime.tsx +2 -2
- package/packages/player-ui/src/Duration.tsx +2 -2
- package/packages/player-ui/src/PauseButton.tsx +0 -8
- package/packages/player-ui/src/PlayerInteractable.tsx +0 -1
- package/packages/player-ui/src/PlayerTime.tsx +1 -3
- package/packages/player-ui/src/PlayerUI.tsx +35 -68
- package/packages/player-ui/src/RemainingTime.tsx +2 -2
- package/packages/player-ui/src/Seekbar.tsx +18 -110
- package/packages/player-ui/src/Seeking.ts +16 -57
- package/packages/player-ui/src/Subtitles.tsx +2 -2
- package/packages/player-ui/src/index.ts +0 -1
- package/packages/player-ui/src/mocks.ts +8 -32
- package/packages/player-ui/src/timeUtils.ts +3 -3
- package/packages/player-ui/src/types.ts +3 -9
- package/packages/router/README.md +0 -1
- package/packages/router/src/Route.tsx +27 -61
- package/packages/router/src/Router.tsx +14 -63
- package/packages/router/src/history.ts +1 -8
- package/packages/router/src/index.ts +1 -1
- package/packages/router/src/utils.ts +4 -9
- package/packages/sass-utils/src/linear-gradient.scss +4 -9
- package/packages/sass-utils/src/scale.1080.scss +1 -3
- package/packages/sass-utils/src/scale.720.scss +1 -1
- package/packages/time/README.md +1 -4
- package/packages/time/src/Time.ts +13 -35
- package/packages/time/src/constants.ts +0 -1
- package/packages/toast/src/ToastService.tsx +5 -16
- package/packages/types-bigscreen-jsx/README.md +4 -5
- package/packages/types-bigscreen-jsx/index.d.ts +67 -72
- package/packages/utils/README.md +0 -27
- package/packages/utils/src/elementUtils.ts +0 -25
- package/packages/utils/src/index.ts +0 -8
- package/packages/utils/src/scaledImage.ts +3 -6
- package/packages/utils/src/textUtils.ts +14 -46
- package/packages/utils/src/wait.ts +1 -3
- package/packages/utils/src/xhr/xhrSend.ts +1 -3
- package/packages/utils/src/xhr/xhrSendRetry.ts +1 -3
- package/packages/zapping/src/ChannelZapping.ts +0 -9
- package/packages/zapping/src/Zapping.tsx +0 -10
- package/ci/is_ci_job_skippable.sh +0 -153
- package/packages/analytics/README.md +0 -8
- package/packages/analytics/src/A.ts +0 -1
- package/packages/analytics/src/Analytics.ts +0 -1
- package/packages/analytics/src/analyticsOnScroll.ts +0 -1
- package/packages/analytics/src/clients/ConsoleAnalytics/ConsoleAnalytics.ts +0 -1
- package/packages/analytics/src/clients/ConsoleAnalytics/index.ts +0 -1
- package/packages/analytics/src/clients/GoogleAnalytics/GoogleAnalytics.ts +0 -196
- package/packages/analytics/src/clients/GoogleAnalytics/constants.ts +0 -126
- package/packages/analytics/src/clients/GoogleAnalytics/getUrl.ts +0 -17
- package/packages/analytics/src/clients/GoogleAnalytics/index.ts +0 -2
- package/packages/analytics/src/clients/GoogleAnalytics/interface.ts +0 -82
- package/packages/analytics/src/clients/GoogleAnalytics/mapPayload.ts +0 -51
- package/packages/analytics/src/clients/GoogleAnalytics/prepareBody.ts +0 -14
- package/packages/analytics/src/clients/TealiumAnalytics/TealiumAnalytics.ts +0 -181
- package/packages/analytics/src/clients/TealiumAnalytics/constants.ts +0 -106
- package/packages/analytics/src/clients/TealiumAnalytics/findForLanguage.ts +0 -9
- package/packages/analytics/src/clients/TealiumAnalytics/index.ts +0 -4
- package/packages/analytics/src/clients/TealiumAnalytics/interface.ts +0 -35
- package/packages/analytics/src/clients/TealiumAnalytics/mappers/__mocks__/mediaPayload.ts +0 -72
- package/packages/analytics/src/clients/TealiumAnalytics/mappers/helper.ts +0 -36
- package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapAppError.ts +0 -13
- package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapAppOpen.ts +0 -13
- package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapFavoriteAdd.ts +0 -11
- package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapFavoriteRemove.ts +0 -11
- package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapPlayerClose.ts +0 -15
- package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapPlayerOpen.ts +0 -15
- package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapSceneView.ts +0 -18
- package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapSearch.ts +0 -18
- package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapSearchFailed.ts +0 -8
- package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapSearchSuccess.ts +0 -8
- package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapVideoPause.ts +0 -15
- package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapVideoProgress.ts +0 -18
- package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapVideoResume.ts +0 -15
- package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapVideoStart.ts +0 -15
- package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapVideoStop.ts +0 -15
- package/packages/analytics/src/clients/TealiumAnalytics/types.ts +0 -161
- package/packages/analytics/src/clients/TwentyFourIQ/TwentyFourIQClient.ts +0 -107
- package/packages/analytics/src/clients/TwentyFourIQ/constants.ts +0 -111
- package/packages/analytics/src/clients/TwentyFourIQ/helper.ts +0 -34
- package/packages/analytics/src/clients/TwentyFourIQ/index.ts +0 -2
- package/packages/analytics/src/clients/TwentyFourIQ/interface.ts +0 -34
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapAdEvent.ts +0 -20
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapBase.ts +0 -24
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapBuffering.ts +0 -15
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapPlayerClose.ts +0 -25
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapPlayerOpen.ts +0 -17
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapSceneView.ts +0 -15
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapScroll.ts +0 -17
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoComplete.ts +0 -22
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoPause.ts +0 -25
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoProgress.ts +0 -25
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoStart.ts +0 -34
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoStop.ts +0 -32
- package/packages/analytics/src/clients/TwentyFourIQ/types.ts +0 -132
- package/packages/analytics/src/constants.ts +0 -1
- package/packages/analytics/src/index.ts +0 -3
- package/packages/analytics/src/interface.ts +0 -1
- package/packages/analytics/src/utils/generateSessionId.ts +0 -8
- package/packages/device/src/driver/index.firetv.ts +0 -1
- package/packages/device/src/driver/index.smartcast.tv.ts +0 -1
- package/packages/driver-base/src/types/AdInfo.ts +0 -5
- package/packages/driver-base/src/types/InAppPurchase.ts +0 -25
- package/packages/driver-firetv/src/DeviceFireTV.ts +0 -91
- package/packages/driver-firetv/src/__mocks__/javaScriptBridge.ts +0 -45
- package/packages/driver-firetv/src/index.ts +0 -1
- package/packages/driver-firetv/src/types.ts +0 -1
- package/packages/driver-smartcast/src/DeviceSmartCast.ts +0 -394
- package/packages/driver-smartcast/src/__mocks__/api.ts +0 -79
- package/packages/driver-smartcast/src/index.ts +0 -1
- package/packages/driver-smartcast/src/keymap.ts +0 -9
- package/packages/driver-smartcast/src/types.ts +0 -111
- package/packages/focus/src/hasFocus.ts +0 -36
- package/packages/jsx/src/test-utils/keyup.ts +0 -27
- package/packages/keyboard/src/WhitelabelKeyboard/layouts/arabic.ts +0 -27
- package/packages/keyboard/src/WhitelabelKeyboard/layouts/burmese.ts +0 -27
- package/packages/keyboard/src/WhitelabelKeyboard/layouts/dari.ts +0 -28
- package/packages/keyboard/src/WhitelabelKeyboard/layouts/korean.ts +0 -26
- package/packages/keyboard/src/WhitelabelKeyboard/layouts/pashto.ts +0 -27
- package/packages/keyboard/src/WhitelabelKeyboard/layouts/persian.ts +0 -27
- package/packages/keyboard/src/WhitelabelKeyboard/layouts/russian.ts +0 -27
- package/packages/keyboard/src/WhitelabelKeyboard/layouts/spanish.ts +0 -26
- package/packages/keyboard/src/WhitelabelKeyboard/layouts/tibetan.ts +0 -26
- package/packages/keyboard/src/WhitelabelKeyboard/layouts/turkish.ts +0 -26
- package/packages/keyboard/src/WhitelabelKeyboard/layouts/ukrainian.ts +0 -27
- package/packages/keyboard/src/WhitelabelKeyboard/layouts/urdu.ts +0 -26
- package/packages/keyboard/src/utils/setInputSelectionRange.ts +0 -10
- package/packages/l10n/src/date/de.ts +0 -97
- package/packages/l10n/src/date/es.ts +0 -71
- package/packages/l10n/src/date/fr.ts +0 -94
- package/packages/l10n/src/date/he.ts +0 -101
- package/packages/time/src/adapters/24iMediaTimeApi.ts +0 -47
- package/packages/time/src/services/24iMediaTimeApi/24iMediaTimeApi.ts +0 -43
- package/packages/time/src/services/24iMediaTimeApi/index.ts +0 -6
- package/packages/utils/src/forceReflow.ts +0 -14
- package/packages/utils/src/keyPress/index.ts +0 -6
- package/packages/utils/src/keyPress/keyPressSimulator.ts +0 -74
- package/packages/utils/src/keyPress/simulateKeyPress.ts +0 -25
- package/utils/release/release.ts +0 -156
package/README.md
CHANGED
|
@@ -6,8 +6,9 @@ sidebar_label: README
|
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
# SmartApps BIGscreen SDK
|
|
9
|
-
|
|
10
|
-
[](https://travis-ci.com/24i/smartapps-bigscreen-sdk)
|
|
11
|
+
[](https://coveralls.io/github/24i/smartapps-bigscreen-sdk?branch=development)
|
|
11
12
|
|
|
12
13
|
* [GitHub](https://github.com/24i/smartapps-bigscreen-sdk)
|
|
13
14
|
* [Confluence](https://24imedia.atlassian.net/wiki/spaces/PRDNGBIGSCR/overview)
|
package/package.json
CHANGED
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@24i/bigscreen-sdk",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "2.1.1-alpha.2133",
|
|
4
4
|
"description": "SmartApps BIGscreen SDK monorepo",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
7
|
-
"prepare": "husky && npm run patch-types && npm run scripts:prepare",
|
|
7
|
+
"prepare": "husky install && npm run patch-types && npm run scripts:prepare",
|
|
8
8
|
"prepublishOnly": "npm run scripts:prepare",
|
|
9
9
|
"scripts:prepare": "ts-node ./utils/run-scripts/index.ts \"prepare:.+\"",
|
|
10
10
|
"scripts:prepare:create-export-maps": "ts-node ./utils/create-export-maps/index.ts --project ./tsconfig.utils.json",
|
|
11
11
|
"scripts:prepare:webos": "cd packages/driver-webos && ts-node ./scripts/exportWebOSTVjs.ts --project ../../tsconfig.utils.json",
|
|
12
12
|
"scripts:create-package": "ts-node ./utils/create-package/src/index.ts --project ./tsconfig.utils.json",
|
|
13
|
-
"release": "ts-node --project ./tsconfig.utils.json ./utils/release/release.ts",
|
|
14
13
|
"jest": "cross-env NODE_ICU_DATA=node_modules/full-icu jest",
|
|
15
14
|
"eslint": "eslint \"./packages/**/src/**/*.{ts,tsx}\"",
|
|
16
15
|
"stylelint": "stylelint \"./packages/**/src/**/*.scss\"",
|
|
@@ -18,9 +17,9 @@
|
|
|
18
17
|
"lintcheck:cached": "npm run eslint -- --cache && npm run stylelint -- --cache",
|
|
19
18
|
"typecheck": "tsc --noEmit",
|
|
20
19
|
"typecheck:cached": "npm run typecheck -- --incremental",
|
|
21
|
-
"test": "npm run jest -- --no-cache",
|
|
22
|
-
"test:cached": "npm run jest",
|
|
23
|
-
"coverage": "npm run jest -- --runInBand --coverage",
|
|
20
|
+
"test": "npm run jest -- --no-cache && npm run lintcheck",
|
|
21
|
+
"test:cached": "npm run jest && npm run lintcheck:cached",
|
|
22
|
+
"coverage": "npm run jest -- --runInBand --coverage && coveralls < coverage/lcov.info",
|
|
24
23
|
"branchlint": "branchlint",
|
|
25
24
|
"generate-changelog": "smartapps-bigscreen-changelog-generator",
|
|
26
25
|
"deploy-docs": "cd website && npm run build && vercel ./build/prd-nxg-bigscreen --token=$VERCEL_TOKEN_24I --local-config=./vercel.json --scope=24i -f -c --prod",
|
|
@@ -38,62 +37,49 @@
|
|
|
38
37
|
},
|
|
39
38
|
"homepage": "https://github.com/24i/smartapps-bigscreen-sdk#readme",
|
|
40
39
|
"dependencies": {
|
|
41
|
-
"@24i/
|
|
42
|
-
"@24i/
|
|
43
|
-
"@
|
|
44
|
-
"@
|
|
45
|
-
"@
|
|
46
|
-
"
|
|
47
|
-
"
|
|
48
|
-
"csstype": "^3.1.3",
|
|
49
|
-
"date-fns": "2.29.3",
|
|
50
|
-
"lottie-web": "5.12.2",
|
|
40
|
+
"@24i/player-base": "6.10.0",
|
|
41
|
+
"@24i/smartapps-datalayer": "3.0.2",
|
|
42
|
+
"@sentry/browser": "^7.12.1",
|
|
43
|
+
"@types/prop-types": "^15.7.5",
|
|
44
|
+
"@types/scheduler": "^0.16.2",
|
|
45
|
+
"csstype": "^3.1.1",
|
|
46
|
+
"lottie-web": "5.9.6",
|
|
51
47
|
"prop-types": "^15.8.1"
|
|
52
48
|
},
|
|
53
49
|
"devDependencies": {
|
|
54
50
|
"@24i/bigscreen-sdk": "file:.",
|
|
55
51
|
"@24i/eslint-config-smartapps-bigscreen-linters": "file:./libs/linters",
|
|
56
52
|
"@24i/smartapps-bigscreen-changelog-generator": "0.17.0",
|
|
57
|
-
"@babel/core": "^7.
|
|
58
|
-
"@babel/preset-env": "^7.
|
|
59
|
-
"@types/fs-extra": "^
|
|
60
|
-
"@types/
|
|
61
|
-
"@types/
|
|
62
|
-
"@types/
|
|
63
|
-
"@types/
|
|
64
|
-
"@types/
|
|
65
|
-
"
|
|
66
|
-
"
|
|
67
|
-
"@types/scheduler": "^0.23.0",
|
|
68
|
-
"babel-jest": "^29.7.0",
|
|
69
|
-
"chalk": "^5.3.0",
|
|
53
|
+
"@babel/core": "^7.19.0",
|
|
54
|
+
"@babel/preset-env": "^7.19.0",
|
|
55
|
+
"@types/fs-extra": "^9.0.13",
|
|
56
|
+
"@types/inquirer": "^9.0.1",
|
|
57
|
+
"@types/jest": "^29.0.2",
|
|
58
|
+
"@types/minimist": "^1.2.2",
|
|
59
|
+
"@types/node": "^18.7.18",
|
|
60
|
+
"@types/react": "^18.0.20",
|
|
61
|
+
"babel-jest": "^29.0.3",
|
|
62
|
+
"chalk": "^5.0.1",
|
|
70
63
|
"coveralls": "^3.1.1",
|
|
71
64
|
"cross-env": "^7.0.3",
|
|
72
|
-
"fs-extra": "^
|
|
65
|
+
"fs-extra": "^10.1.0",
|
|
73
66
|
"full-icu": "^1.5.0",
|
|
74
67
|
"identity-obj-proxy": "^3.0.0",
|
|
75
|
-
"inquirer": "^9.
|
|
76
|
-
"jest": "^29.
|
|
77
|
-
"jest-canvas-mock": "^2.
|
|
78
|
-
"jest-environment-jsdom": "^29.
|
|
79
|
-
"
|
|
80
|
-
"
|
|
81
|
-
"
|
|
82
|
-
"sass": "^1.
|
|
83
|
-
"
|
|
84
|
-
"ts-
|
|
85
|
-
"ts-node": "^10.9.2",
|
|
68
|
+
"inquirer": "^9.1.1",
|
|
69
|
+
"jest": "^29.0.3",
|
|
70
|
+
"jest-canvas-mock": "^2.4.0",
|
|
71
|
+
"jest-environment-jsdom": "^29.0.3",
|
|
72
|
+
"minimist": "^1.2.6",
|
|
73
|
+
"patch-package": "^6.4.7",
|
|
74
|
+
"sass": "^1.54.9",
|
|
75
|
+
"sass-true": "^6.1.0",
|
|
76
|
+
"ts-jest": "^29.0.1",
|
|
77
|
+
"ts-node": "^10.9.1",
|
|
86
78
|
"tsconfig-paths-jest": "0.0.1",
|
|
87
|
-
"typescript": "^
|
|
79
|
+
"typescript": "^4.8.3"
|
|
88
80
|
},
|
|
89
81
|
"exports": {
|
|
90
82
|
"./adobe-heartbeat": "./packages/adobe-heartbeat/src/index.ts",
|
|
91
|
-
"./analytics/interface": "./packages/analytics/src/interface.ts",
|
|
92
|
-
"./analytics/ConsoleAnalytics": "./packages/analytics/src/clients/ConsoleAnalytics/index.ts",
|
|
93
|
-
"./analytics/GoogleAnalytics": "./packages/analytics/src/clients/GoogleAnalytics/index.ts",
|
|
94
|
-
"./analytics/TealiumAnalytics": "./packages/analytics/src/clients/TealiumAnalytics/index.ts",
|
|
95
|
-
"./analytics/TwentyFourIQ": "./packages/analytics/src/clients/TwentyFourIQ/index.ts",
|
|
96
|
-
"./analytics": "./packages/analytics/src/index.ts",
|
|
97
83
|
"./animations/mock": "./packages/animations/src/__mocks__/JSAnimations.ts",
|
|
98
84
|
"./animations": "./packages/animations/src/index.ts",
|
|
99
85
|
"./announcement-banner": "./packages/announcement-banner/src/index.ts",
|
|
@@ -122,11 +108,9 @@
|
|
|
122
108
|
"./driver-base": "./packages/driver-base/src/index.ts",
|
|
123
109
|
"./driver-browser": "./packages/driver-browser/src/index.ts",
|
|
124
110
|
"./driver-entone": "./packages/driver-entone/src/index.ts",
|
|
125
|
-
"./driver-firetv": "./packages/driver-firetv/src/index.ts",
|
|
126
111
|
"./driver-hbbtv": "./packages/driver-hbbtv/src/index.ts",
|
|
127
112
|
"./driver-kreatv": "./packages/driver-kreatv/src/index.ts",
|
|
128
113
|
"./driver-saphi": "./packages/driver-saphi/src/index.ts",
|
|
129
|
-
"./driver-smartcast": "./packages/driver-smartcast/src/index.ts",
|
|
130
114
|
"./driver-tizen": "./packages/driver-tizen/src/index.ts",
|
|
131
115
|
"./driver-vidaa": "./packages/driver-vidaa/src/index.ts",
|
|
132
116
|
"./driver-webos/scripts/template": "./packages/driver-webos/scripts/template.ts",
|
|
@@ -261,7 +245,6 @@
|
|
|
261
245
|
"./storage": "./packages/storage/src/index.ts",
|
|
262
246
|
"./throbber": "./packages/throbber/src/index.ts",
|
|
263
247
|
"./time/adapters/worldTimeApi": "./packages/time/src/adapters/worldTimeApi.ts",
|
|
264
|
-
"./time/adapters/24iMediaTimeApi": "./packages/time/src/adapters/24iMediaTimeApi.ts",
|
|
265
248
|
"./time": "./packages/time/src/index.ts",
|
|
266
249
|
"./toast/styles": "./packages/toast/src/Toast/styles.ts",
|
|
267
250
|
"./toast": "./packages/toast/src/index.ts",
|
|
@@ -271,7 +254,6 @@
|
|
|
271
254
|
"./utils/debounce": "./packages/utils/src/debounce.ts",
|
|
272
255
|
"./utils/displayToggler": "./packages/utils/src/displayToggler.ts",
|
|
273
256
|
"./utils/elementUtils": "./packages/utils/src/elementUtils.ts",
|
|
274
|
-
"./utils/forceReflow": "./packages/utils/src/forceReflow.ts",
|
|
275
257
|
"./utils/generateUuid": "./packages/utils/src/generateUuid.ts",
|
|
276
258
|
"./utils/memoryInfo": "./packages/utils/src/memoryInfo.ts",
|
|
277
259
|
"./utils/nTimes": "./packages/utils/src/nTimes.ts",
|
|
@@ -285,7 +267,6 @@
|
|
|
285
267
|
"./utils/timers": "./packages/utils/src/timers/index.ts",
|
|
286
268
|
"./utils/wait": "./packages/utils/src/wait.ts",
|
|
287
269
|
"./utils/xhr": "./packages/utils/src/xhr/index.ts",
|
|
288
|
-
"./utils/keyPress": "./packages/utils/src/keyPress/index.ts",
|
|
289
270
|
"./utils": "./packages/utils/src/index.ts",
|
|
290
271
|
"./volume-control/interface": "./packages/volume-control/src/IVolumeControlUI.ts",
|
|
291
272
|
"./volume-control": "./packages/volume-control/src/index.ts",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference path='./__external__/Adobe/Adobe.d.ts' />
|
|
2
|
-
import { IErrorEvent, PlayerBase } from '@24i/
|
|
2
|
+
import { IErrorEvent, PlayerBase } from '@24i/player-base';
|
|
3
3
|
import { time } from '@24i/bigscreen-sdk/time';
|
|
4
4
|
import { SECOND_IN_MS } from '@24i/bigscreen-sdk/utils';
|
|
5
5
|
import { va as Adobe } from './__external__/Adobe/MediaSDK.min';
|
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
export class AdobeHeartbeat<CustomMetadata extends CustomerMetadata | void = void> {
|
|
16
16
|
static StreamType = Adobe.MediaHeartbeat.StreamType;
|
|
17
17
|
|
|
18
|
-
private player?: PlayerBase
|
|
18
|
+
private player?: PlayerBase<any>;
|
|
19
19
|
|
|
20
20
|
/**
|
|
21
21
|
* Heartbeat configuration object
|
|
@@ -32,7 +32,7 @@ export class AdobeHeartbeat<CustomMetadata extends CustomerMetadata | void = voi
|
|
|
32
32
|
* @param config - Heartbeat configuration object
|
|
33
33
|
* @param player - 24i universal player instance
|
|
34
34
|
*/
|
|
35
|
-
constructor(config: HeartbeatConfig, player?: PlayerBase) {
|
|
35
|
+
constructor(config: HeartbeatConfig, player?: PlayerBase<any>) {
|
|
36
36
|
if (!window.s || !AppMeasurement) throw new Error('Missing Adobe Launch library!');
|
|
37
37
|
this.config = config;
|
|
38
38
|
this.player = player;
|
|
@@ -67,10 +67,10 @@ export class AdobeHeartbeat<CustomMetadata extends CustomerMetadata | void = voi
|
|
|
67
67
|
return {
|
|
68
68
|
getCurrentPlaybackTime: () => {
|
|
69
69
|
if (!this.player) return 0;
|
|
70
|
-
const { currentTime } = this.player.
|
|
70
|
+
const { currentTime } = this.player.getMediaInfo() || {};
|
|
71
71
|
if (this.player.live) {
|
|
72
72
|
try {
|
|
73
|
-
const { programEnd = NaN } = this.player.
|
|
73
|
+
const { programEnd = NaN } = this.player.getMetadata();
|
|
74
74
|
return Math.floor((programEnd - currentTime) / SECOND_IN_MS)
|
|
75
75
|
|| time.getCurrentUnixTime();
|
|
76
76
|
} catch (e) {
|
|
@@ -81,7 +81,7 @@ export class AdobeHeartbeat<CustomMetadata extends CustomerMetadata | void = voi
|
|
|
81
81
|
},
|
|
82
82
|
getQoSObject: () => {
|
|
83
83
|
if (!this.player) return Adobe.MediaHeartbeat.createQoSObject();
|
|
84
|
-
const { bitrate, droppedVideoFrames } = this.player.
|
|
84
|
+
const { bitrate, droppedVideoFrames } = this.player.getMediaInfo() || {};
|
|
85
85
|
return Adobe.MediaHeartbeat.createQoSObject(
|
|
86
86
|
bitrate, undefined, undefined, droppedVideoFrames,
|
|
87
87
|
);
|
|
@@ -89,7 +89,7 @@ export class AdobeHeartbeat<CustomMetadata extends CustomerMetadata | void = voi
|
|
|
89
89
|
};
|
|
90
90
|
}
|
|
91
91
|
|
|
92
|
-
private attachPlayerListeners(player: PlayerBase) {
|
|
92
|
+
private attachPlayerListeners(player: PlayerBase<any>) {
|
|
93
93
|
player.addEventListener('play', this.onPlay);
|
|
94
94
|
player.addEventListener('pause', this.onPause);
|
|
95
95
|
player.addEventListener('ended', this.onEnded);
|
|
@@ -98,7 +98,7 @@ export class AdobeHeartbeat<CustomMetadata extends CustomerMetadata | void = voi
|
|
|
98
98
|
player.addEventListener('error', this.onError);
|
|
99
99
|
}
|
|
100
100
|
|
|
101
|
-
private dettachPlayerListeners(player: PlayerBase) {
|
|
101
|
+
private dettachPlayerListeners(player: PlayerBase<any>) {
|
|
102
102
|
player.removeEventListener('play', this.onPlay);
|
|
103
103
|
player.removeEventListener('pause', this.onPause);
|
|
104
104
|
player.removeEventListener('ended', this.onEnded);
|
|
@@ -143,7 +143,7 @@ export class AdobeHeartbeat<CustomMetadata extends CustomerMetadata | void = voi
|
|
|
143
143
|
* this will replace the old one.
|
|
144
144
|
* @param player - 24i universal player instance
|
|
145
145
|
*/
|
|
146
|
-
attachPlayer(player: PlayerBase) {
|
|
146
|
+
attachPlayer(player: PlayerBase<any>) {
|
|
147
147
|
if (this.player) this.dettachPlayerListeners(this.player);
|
|
148
148
|
this.player = player;
|
|
149
149
|
if (this.player) this.attachPlayerListeners(this.player);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createRef, Component, DeclareProps } from '@24i/bigscreen-sdk/jsx';
|
|
2
2
|
|
|
3
3
|
export type Props = {
|
|
4
|
-
src
|
|
4
|
+
src: string;
|
|
5
5
|
clearBeforeLoading?: boolean;
|
|
6
6
|
onImageLoad?: (src: string) => void;
|
|
7
7
|
onImageError?: (src: string) => void;
|
|
@@ -17,7 +17,6 @@ export class AsyncImage extends Component<Props> {
|
|
|
17
17
|
isCleared = true;
|
|
18
18
|
|
|
19
19
|
static defaultProps = {
|
|
20
|
-
src: undefined,
|
|
21
20
|
clearBeforeLoading: true,
|
|
22
21
|
};
|
|
23
22
|
|
|
@@ -31,7 +30,7 @@ export class AsyncImage extends Component<Props> {
|
|
|
31
30
|
|
|
32
31
|
componentDidMount() {
|
|
33
32
|
const { src } = this.props;
|
|
34
|
-
this.updateImage(src
|
|
33
|
+
this.updateImage(src);
|
|
35
34
|
}
|
|
36
35
|
|
|
37
36
|
private readonly onLoad = () => {
|
|
@@ -48,31 +47,27 @@ export class AsyncImage extends Component<Props> {
|
|
|
48
47
|
private readonly onError = () => {
|
|
49
48
|
if (this.isMounted) {
|
|
50
49
|
const { onImageError } = this.props;
|
|
51
|
-
this.
|
|
50
|
+
this.clearImage();
|
|
52
51
|
if (typeof onImageError === 'function') {
|
|
53
52
|
onImageError(this.src);
|
|
54
53
|
}
|
|
55
54
|
}
|
|
56
55
|
};
|
|
57
56
|
|
|
58
|
-
private
|
|
57
|
+
private clearImage() {
|
|
59
58
|
if (!this.isCleared) {
|
|
60
59
|
this.domRef.current!.style.backgroundImage = '';
|
|
61
60
|
this.isCleared = true;
|
|
62
61
|
}
|
|
63
62
|
}
|
|
64
63
|
|
|
65
|
-
clearImage() {
|
|
66
|
-
this.src = '';
|
|
67
|
-
this.clearBackground();
|
|
68
|
-
}
|
|
69
|
-
|
|
70
64
|
updateImage(src: string) {
|
|
71
|
-
if (
|
|
72
|
-
if (src
|
|
65
|
+
if (src === this.src) return;
|
|
66
|
+
if (!src) {
|
|
73
67
|
this.src = '';
|
|
74
|
-
this.
|
|
75
|
-
|
|
68
|
+
this.image.src = '';
|
|
69
|
+
this.clearImage();
|
|
70
|
+
} else {
|
|
76
71
|
this.src = src;
|
|
77
72
|
this.loadImage(src);
|
|
78
73
|
}
|
|
@@ -82,7 +77,7 @@ export class AsyncImage extends Component<Props> {
|
|
|
82
77
|
const { props: { clearBeforeLoading }, image } = this;
|
|
83
78
|
image.src = src;
|
|
84
79
|
if (clearBeforeLoading === true && !image.complete) {
|
|
85
|
-
this.
|
|
80
|
+
this.clearImage();
|
|
86
81
|
}
|
|
87
82
|
}
|
|
88
83
|
|
|
@@ -7,7 +7,6 @@ import {
|
|
|
7
7
|
import { BACK } from '@24i/bigscreen-sdk/device/keymap';
|
|
8
8
|
import { DISPLAY_NONE, getDisplayToggler, stopEvent } from '@24i/bigscreen-sdk/utils';
|
|
9
9
|
import { map } from '@24i/bigscreen-sdk/perf-utils/array';
|
|
10
|
-
import { Storage } from '@24i/bigscreen-sdk/storage';
|
|
11
10
|
import { IDeveloperTool, DeveloperToolProps } from '../IDeveloperTool';
|
|
12
11
|
import { DeveloperToolItem } from './DeveloperToolItem';
|
|
13
12
|
import { reloadApp } from '../utils/reload';
|
|
@@ -40,11 +39,6 @@ export class DeveloperToolsList extends Component<Props> {
|
|
|
40
39
|
reloadApp();
|
|
41
40
|
};
|
|
42
41
|
|
|
43
|
-
async onClearDataToolPress() {
|
|
44
|
-
await Storage.clear();
|
|
45
|
-
reloadApp();
|
|
46
|
-
}
|
|
47
|
-
|
|
48
42
|
onKeyDown = (event: KeyboardEvent) => {
|
|
49
43
|
if (BACK.is(event)) {
|
|
50
44
|
const { onBack } = this.props;
|
|
@@ -96,11 +90,6 @@ export class DeveloperToolsList extends Component<Props> {
|
|
|
96
90
|
/>
|
|
97
91
|
);
|
|
98
92
|
})}
|
|
99
|
-
<DeveloperToolItem
|
|
100
|
-
ref={this.getNavigationRef()}
|
|
101
|
-
label="Clear data"
|
|
102
|
-
onPress={this.onClearDataToolPress}
|
|
103
|
-
/>
|
|
104
93
|
<DeveloperToolItem
|
|
105
94
|
ref={this.getNavigationRef()}
|
|
106
95
|
label="Restart app"
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { Component, createRef, DeclareProps } from '@24i/bigscreen-sdk/jsx';
|
|
2
2
|
import { DISPLAY_NONE, getDisplayToggler } from '@24i/bigscreen-sdk/utils';
|
|
3
3
|
import { createInterval } from '@24i/bigscreen-sdk/utils/timers';
|
|
4
|
-
import { IMediaInfo, PlayerBase } from '@24i/
|
|
4
|
+
import { IMediaInfo, PlayerBase } from '@24i/player-base';
|
|
5
5
|
import { IDeveloperTool } from '../IDeveloperTool';
|
|
6
6
|
import { MEDIA_INFO_DESCRIPTION, MediaInfo } from './constants';
|
|
7
7
|
|
|
8
8
|
export type Props = {
|
|
9
|
-
playerInstance?: PlayerBase
|
|
9
|
+
playerInstance?: PlayerBase<any>;
|
|
10
10
|
updateInterval?: number;
|
|
11
11
|
onClose?: () => void;
|
|
12
12
|
};
|
|
@@ -16,7 +16,7 @@ export class PlayerDebugWindow extends Component<Props> implements IDeveloperToo
|
|
|
16
16
|
|
|
17
17
|
div = createRef<HTMLDivElement>();
|
|
18
18
|
|
|
19
|
-
playerInstance: PlayerBase | null = null;
|
|
19
|
+
playerInstance: PlayerBase<any> | null = null;
|
|
20
20
|
|
|
21
21
|
interval = createInterval();
|
|
22
22
|
|
|
@@ -34,12 +34,12 @@ export class PlayerDebugWindow extends Component<Props> implements IDeveloperToo
|
|
|
34
34
|
if (playerInstance) this.setPlayerInstance(playerInstance);
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
-
setPlayerInstance(playerInstance: PlayerBase) {
|
|
37
|
+
setPlayerInstance(playerInstance: PlayerBase<any>) {
|
|
38
38
|
this.playerInstance = playerInstance;
|
|
39
39
|
}
|
|
40
40
|
|
|
41
41
|
getMediaInfo() {
|
|
42
|
-
return this.playerInstance?.
|
|
42
|
+
return this.playerInstance?.getMediaInfo() || {};
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
getFormattedValue(item: MediaInfo, value: any) {
|
|
@@ -49,21 +49,6 @@ export const MEDIA_INFO_DESCRIPTION: Record<string, MediaInfo> = {
|
|
|
49
49
|
audioCodec: {
|
|
50
50
|
title: 'Audio codec',
|
|
51
51
|
},
|
|
52
|
-
audioBitrate: {
|
|
53
|
-
title: 'Audio bitrate',
|
|
54
|
-
},
|
|
55
|
-
audioSamplingRate: {
|
|
56
|
-
title: 'Audio sampling rate',
|
|
57
|
-
},
|
|
58
|
-
audioLanguage: {
|
|
59
|
-
title: 'Audio language',
|
|
60
|
-
},
|
|
61
|
-
subtitlesAvailable: {
|
|
62
|
-
title: 'Subtitles available',
|
|
63
|
-
},
|
|
64
|
-
availableSubtitlesListString: {
|
|
65
|
-
title: 'List of available subtitles',
|
|
66
|
-
},
|
|
67
52
|
drmProtection: {
|
|
68
53
|
title: 'DRM protection',
|
|
69
54
|
},
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { createRef, Component } from '@24i/bigscreen-sdk/jsx';
|
|
2
|
-
import { hasFocus } from '@24i/bigscreen-sdk/focus';
|
|
3
2
|
import { ScrollText } from '@24i/bigscreen-sdk/scroll-text';
|
|
4
3
|
import { map } from '@24i/bigscreen-sdk/perf-utils/array';
|
|
5
4
|
import { ITechnicalInfoProvider, TechnicalInfoData } from './ITechnicalInfoProvider';
|
|
@@ -39,7 +38,7 @@ class TechnicalInfoDetail extends Component<Props> {
|
|
|
39
38
|
}
|
|
40
39
|
|
|
41
40
|
hasFocus() {
|
|
42
|
-
return
|
|
41
|
+
return this.wrapRef.current!.contains(document.activeElement);
|
|
43
42
|
}
|
|
44
43
|
|
|
45
44
|
renderInfoData(data: TechnicalInfoData) {
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { DeviceBase } from '@24i/bigscreen-sdk/driver-base';
|
|
2
|
-
import { DeviceAndroidTV } from '@24i/bigscreen-sdk/driver-androidtv';
|
|
3
2
|
import { IStorage } from '@24i/bigscreen-sdk/storage/interface';
|
|
4
3
|
import { getUsedJSHeapSize, getTotalJSHeapSize } from '@24i/bigscreen-sdk/utils/memoryInfo';
|
|
5
4
|
import { ipify } from '@24i/bigscreen-sdk/ipify';
|
|
6
5
|
import { map } from '@24i/bigscreen-sdk/perf-utils/array';
|
|
7
|
-
import { PlayerBase } from '@24i/
|
|
6
|
+
import { PlayerBase } from '@24i/player-base';
|
|
8
7
|
import { hasEMESupport, getListOfSupportedDRM } from './utils/emeSupport';
|
|
9
8
|
import {
|
|
10
9
|
hasEMESupport as hasEMESupport01b,
|
|
@@ -36,8 +35,6 @@ type Props = {
|
|
|
36
35
|
profileName: string,
|
|
37
36
|
/** Version of application. */
|
|
38
37
|
appVersion: string,
|
|
39
|
-
/** Version of the currently used core packages. */
|
|
40
|
-
appCoreVersions: string,
|
|
41
38
|
/** App resolution, in format like "1280x720". */
|
|
42
39
|
appResolution: string,
|
|
43
40
|
/** OVP/CMS back-end base URL. */
|
|
@@ -111,15 +108,6 @@ class TechnicalInfoProvider implements ITechnicalInfoProvider {
|
|
|
111
108
|
return value || unknown;
|
|
112
109
|
}
|
|
113
110
|
|
|
114
|
-
async getDeviceOsLanguage() {
|
|
115
|
-
let value;
|
|
116
|
-
const { unknown } = this.translations;
|
|
117
|
-
try {
|
|
118
|
-
value = await this.props.device.getOsLanguage();
|
|
119
|
-
} catch (e) {}
|
|
120
|
-
return value || unknown;
|
|
121
|
-
}
|
|
122
|
-
|
|
123
111
|
async getPlatformType() {
|
|
124
112
|
let value;
|
|
125
113
|
const { unknown } = this.translations;
|
|
@@ -146,16 +134,6 @@ class TechnicalInfoProvider implements ITechnicalInfoProvider {
|
|
|
146
134
|
return value || unknown;
|
|
147
135
|
}
|
|
148
136
|
|
|
149
|
-
async getAdInfo() {
|
|
150
|
-
let value;
|
|
151
|
-
const { unknown } = this.translations;
|
|
152
|
-
try {
|
|
153
|
-
const { adId, type, latEnabled } = await this.props.device.getAdInfo();
|
|
154
|
-
value = `LAT: ${latEnabled}, AD ID TYPE: ${type}, AD ID: ${adId}`;
|
|
155
|
-
} catch (e) {}
|
|
156
|
-
return value || unknown;
|
|
157
|
-
}
|
|
158
|
-
|
|
159
137
|
async getLocalIpAddress() {
|
|
160
138
|
let value;
|
|
161
139
|
const { unknown } = this.translations;
|
|
@@ -285,42 +263,24 @@ class TechnicalInfoProvider implements ITechnicalInfoProvider {
|
|
|
285
263
|
return this.props.backendBaseUrl || unknown;
|
|
286
264
|
}
|
|
287
265
|
|
|
288
|
-
|
|
289
|
-
const { unknown } = this.translations;
|
|
290
|
-
return this.props.appCoreVersions || unknown;
|
|
291
|
-
}
|
|
292
|
-
|
|
293
|
-
async getWrapperVersion() {
|
|
294
|
-
let value;
|
|
295
|
-
const { unknown } = this.translations;
|
|
296
|
-
try {
|
|
297
|
-
value = await (this.props.device as DeviceAndroidTV).getWrapperVersion();
|
|
298
|
-
} catch (e) {}
|
|
299
|
-
return value || unknown;
|
|
300
|
-
}
|
|
301
|
-
|
|
302
|
-
async getSourceDataLayout() {
|
|
266
|
+
getSourceDataLayout() {
|
|
303
267
|
const {
|
|
304
268
|
username, profile, appVersion, firmwareVersion, deviceModel,
|
|
305
|
-
deviceManufacturer,
|
|
306
|
-
|
|
269
|
+
deviceManufacturer, platform, player, serialNumber, localIpAddress,
|
|
270
|
+
publicIpAddress, connectionType, macAddress, memoryHeapSize,
|
|
307
271
|
usedLocalStorage, timeZone, dateAndTime, flavour, userAgent,
|
|
308
272
|
emeSupport, emeDrmSystems, mseSupport, fourKSupport, resolution, baseUrl,
|
|
309
|
-
appCoreVersions, androidWrapperVersion,
|
|
310
273
|
} = this.translations;
|
|
311
274
|
const dataLayout: SourceDataLayout = [
|
|
312
275
|
{ label: username, getter: this.getUserName },
|
|
313
276
|
{ label: profile, getter: this.getProfileName },
|
|
314
277
|
{ label: appVersion, getter: this.getAppVersion },
|
|
315
|
-
{ label: appCoreVersions, getter: this.getAppCoreVersions },
|
|
316
278
|
{ label: firmwareVersion, getter: this.getFirmwareVersion },
|
|
317
279
|
{ label: deviceModel, getter: this.getDeviceModelName },
|
|
318
280
|
{ label: deviceManufacturer, getter: this.getDeviceManufacturer },
|
|
319
|
-
{ label: deviceLanguage, getter: this.getDeviceOsLanguage },
|
|
320
281
|
{ label: platform, getter: this.getPlatformType },
|
|
321
282
|
{ label: player, getter: this.getPlayerType },
|
|
322
283
|
{ label: serialNumber, getter: this.getDeviceSerialNumber },
|
|
323
|
-
{ label: adInfo, getter: this.getAdInfo },
|
|
324
284
|
{ label: localIpAddress, getter: this.getLocalIpAddress },
|
|
325
285
|
{ label: publicIpAddress, getter: this.getPublicIpAddress },
|
|
326
286
|
{ label: connectionType, getter: this.getConnectionType },
|
|
@@ -338,21 +298,9 @@ class TechnicalInfoProvider implements ITechnicalInfoProvider {
|
|
|
338
298
|
{ label: resolution, getter: this.getAppResolution },
|
|
339
299
|
{ label: baseUrl, getter: this.getBackendBaseUrl },
|
|
340
300
|
];
|
|
341
|
-
|
|
342
|
-
if (await this.isAndroidTV()) {
|
|
343
|
-
dataLayout.push(
|
|
344
|
-
{ label: androidWrapperVersion, getter: this.getWrapperVersion },
|
|
345
|
-
);
|
|
346
|
-
}
|
|
347
|
-
|
|
348
301
|
return dataLayout;
|
|
349
302
|
}
|
|
350
303
|
|
|
351
|
-
async isAndroidTV() {
|
|
352
|
-
const platformName = await this.props.device.getPlatformName();
|
|
353
|
-
return platformName === 'AndroidTV';
|
|
354
|
-
}
|
|
355
|
-
|
|
356
304
|
async loadDataLayout(dataLayout: SourceDataLayout) {
|
|
357
305
|
const promises = map(dataLayout, async (item) => item.getter.call(this));
|
|
358
306
|
const values = await Promise.all(promises);
|
|
@@ -362,7 +310,7 @@ class TechnicalInfoProvider implements ITechnicalInfoProvider {
|
|
|
362
310
|
}
|
|
363
311
|
|
|
364
312
|
async getInfoData() {
|
|
365
|
-
const sourceDataLayout =
|
|
313
|
+
const sourceDataLayout = this.getSourceDataLayout();
|
|
366
314
|
return this.loadDataLayout(sourceDataLayout);
|
|
367
315
|
}
|
|
368
316
|
}
|
|
@@ -43,21 +43,9 @@ class Device {
|
|
|
43
43
|
return 'connection type';
|
|
44
44
|
}
|
|
45
45
|
|
|
46
|
-
async getOsLanguage() {
|
|
47
|
-
return 'device language';
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
async getAdInfo() {
|
|
51
|
-
return { adId: 'ad-id', type: 'ad-id-type', latEnabled: false };
|
|
52
|
-
}
|
|
53
|
-
|
|
54
46
|
async getMacAddress() {
|
|
55
47
|
return 'mac address';
|
|
56
48
|
}
|
|
57
|
-
|
|
58
|
-
async getWrapperVersion() {
|
|
59
|
-
return 'android wrapper version';
|
|
60
|
-
}
|
|
61
49
|
}
|
|
62
50
|
|
|
63
51
|
export { Device };
|
|
@@ -3,7 +3,6 @@ export type Translations = TranslationKeys | { [K in keyof TranslationKeys]?: ne
|
|
|
3
3
|
export type TranslationKeys = {
|
|
4
4
|
unknown: string
|
|
5
5
|
anonymous: string,
|
|
6
|
-
androidWrapperVersion: string,
|
|
7
6
|
yes: string,
|
|
8
7
|
no: string,
|
|
9
8
|
prefixed: string,
|
|
@@ -11,15 +10,12 @@ export type TranslationKeys = {
|
|
|
11
10
|
username: string,
|
|
12
11
|
profile: string,
|
|
13
12
|
appVersion: string,
|
|
14
|
-
appCoreVersions: string,
|
|
15
13
|
firmwareVersion: string,
|
|
16
14
|
deviceModel: string,
|
|
17
15
|
deviceManufacturer: string,
|
|
18
|
-
deviceLanguage: string;
|
|
19
16
|
platform: string,
|
|
20
17
|
player: string,
|
|
21
18
|
serialNumber: string,
|
|
22
|
-
adInfo: string,
|
|
23
19
|
localIpAddress: string,
|
|
24
20
|
publicIpAddress: string,
|
|
25
21
|
connectionType: string,
|
|
@@ -44,7 +40,6 @@ export type TranslationKeys = {
|
|
|
44
40
|
export const defaultTranslations = {
|
|
45
41
|
unknown: 'UNKNOWN',
|
|
46
42
|
anonymous: 'ANONYMOUS',
|
|
47
|
-
androidWrapperVersion: 'Android wrapper version',
|
|
48
43
|
yes: 'Yes',
|
|
49
44
|
no: 'No',
|
|
50
45
|
prefixed: 'prefixed',
|
|
@@ -52,15 +47,12 @@ export const defaultTranslations = {
|
|
|
52
47
|
username: 'Username',
|
|
53
48
|
profile: 'Profile',
|
|
54
49
|
appVersion: 'App version',
|
|
55
|
-
appCoreVersions: 'Core versions',
|
|
56
50
|
firmwareVersion: 'Firmware version',
|
|
57
51
|
deviceModel: 'Device model',
|
|
58
52
|
deviceManufacturer: 'Device manufacturer',
|
|
59
|
-
deviceLanguage: 'Device Language',
|
|
60
53
|
platform: 'Platform',
|
|
61
54
|
player: 'Player',
|
|
62
55
|
serialNumber: 'Serial number',
|
|
63
|
-
adInfo: 'Ad info',
|
|
64
56
|
localIpAddress: 'Local IP address',
|
|
65
57
|
publicIpAddress: 'Public IP address',
|
|
66
58
|
connectionType: 'Connection type',
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { KeycodeKeyMap } from '@24i/bigscreen-sdk/driver-base';
|
|
2
2
|
|
|
3
3
|
export const createGetKeyDigit = (
|
|
4
|
-
getKeyMap: () => Partial<KeycodeKeyMap
|
|
5
|
-
)
|
|
4
|
+
getKeyMap: () => Partial<KeycodeKeyMap>): (event: KeyboardEvent
|
|
5
|
+
) => number | undefined => {
|
|
6
6
|
const {
|
|
7
7
|
NUM_0, NUM_1, NUM_2, NUM_3, NUM_4, NUM_5, NUM_6, NUM_7, NUM_8, NUM_9,
|
|
8
8
|
KP_0, KP_1, KP_2, KP_3, KP_4, KP_5, KP_6, KP_7, KP_8, KP_9,
|