@24i/bigscreen-sdk 1.0.54-alpha.2836 → 1.1.0
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/.vscode/settings.json +6 -0
- package/README.md +3 -2
- package/package.json +10 -10
- package/packages/analytics/src/clients/GoogleAnalytics/GoogleAnalytics.ts +14 -10
- package/packages/analytics/src/clients/GoogleAnalytics/constants.ts +2 -10
- package/packages/analytics/src/clients/GoogleAnalytics/interface.ts +1 -6
- package/packages/analytics/src/clients/GoogleAnalytics/mapPayload.ts +0 -1
- package/packages/analytics/src/clients/TealiumAnalytics/TealiumAnalytics.ts +24 -36
- package/packages/analytics/src/clients/TealiumAnalytics/constants.ts +1 -5
- package/packages/analytics/src/clients/TealiumAnalytics/findIdForLanguage.ts +9 -0
- package/packages/analytics/src/clients/TealiumAnalytics/index.ts +1 -1
- package/packages/analytics/src/clients/TealiumAnalytics/interface.ts +1 -3
- package/packages/analytics/src/clients/TealiumAnalytics/mappers/__mocks__/mediaPayload.ts +14 -16
- package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapSceneView.ts +1 -1
- package/packages/analytics/src/clients/TealiumAnalytics/types.ts +14 -19
- package/packages/analytics/src/clients/TwentyFourIQ/TwentyFourIQClient.ts +22 -13
- package/packages/analytics/src/clients/TwentyFourIQ/constants.ts +3 -15
- package/packages/analytics/src/clients/TwentyFourIQ/interface.ts +4 -7
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapAdLoaded.ts +13 -0
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapAdSkipped.ts +16 -0
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapBase.ts +3 -6
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapBuffering.ts +2 -2
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapPlayerClose.ts +3 -4
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapPlayerOpen.ts +3 -2
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapSceneView.ts +2 -2
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapScroll.ts +2 -2
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoComplete.ts +3 -4
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoPause.ts +3 -4
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoProgress.ts +3 -4
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoStart.ts +2 -2
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoStop.ts +2 -2
- package/packages/analytics/src/clients/TwentyFourIQ/types.ts +28 -45
- package/packages/create-package/dist/createPackage.js +66 -0
- package/packages/create-package/dist/createPackage.js.map +1 -0
- package/packages/create-package/dist/index.js +5 -0
- package/packages/create-package/dist/index.js.map +1 -0
- package/packages/create-package/dist/questionnaire/questions.js +35 -0
- package/packages/create-package/dist/questionnaire/questions.js.map +1 -0
- package/packages/create-package/dist/settings/Settings.js +10 -0
- package/packages/create-package/dist/settings/Settings.js.map +1 -0
- package/packages/create-package/dist/types.js +3 -0
- package/packages/create-package/dist/types.js.map +1 -0
- package/packages/developer-tools/src/TechnicalInfo/TechnicalInfoProvider.ts +2 -23
- package/packages/developer-tools/src/TechnicalInfo/__mocks__/Device.ts +0 -8
- package/packages/developer-tools/src/TechnicalInfo/translations.ts +0 -4
- package/packages/driver-androidtv/src/DeviceAndroidTV.ts +0 -38
- package/packages/driver-androidtv/src/__mocks__/javaScriptBridge.ts +0 -9
- package/packages/driver-androidtv/src/index.ts +0 -1
- package/packages/driver-androidtv/src/types.ts +0 -42
- package/packages/driver-base/src/DeviceBase.ts +0 -19
- package/packages/driver-base/src/__mocks__/DeviceBase.ts +0 -24
- package/packages/driver-base/src/index.ts +0 -3
- package/packages/driver-browser/src/DeviceBrowser.ts +0 -26
- package/packages/driver-entone/src/DeviceEntone.ts +1 -31
- package/packages/driver-firetv/src/DeviceFireTV.ts +1 -74
- package/packages/driver-firetv/src/__mocks__/javaScriptBridge.ts +0 -9
- 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-smartcast/src/DeviceSmartCast.ts +1 -78
- package/packages/driver-smartcast/src/__mocks__/api.ts +2 -32
- package/packages/driver-smartcast/src/types.ts +2 -48
- 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 -2
- 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 +0 -26
- package/packages/driver-webos/src/DeviceWebos.ts +0 -47
- package/packages/driver-webos/src/__mocks__/webos.ts +0 -33
- package/packages/driver-webos/src/constants.ts +0 -1
- package/packages/driver-webos/src/types.ts +0 -30
- package/packages/driver-xbox/src/DeviceXbox.ts +1 -30
- package/packages/grid/src/UnifiedGridController/UnifiedGridController.ts +6 -6
- package/packages/input/README.md +3 -0
- package/packages/input/src/Input.tsx +62 -32
- package/packages/input/src/utils.ts +71 -0
- package/packages/keyboard/src/WhitelabelKeyboard/layouts/index.ts +0 -1
- package/packages/keyboard/src/utils/caret.ts +8 -5
- package/packages/keyboard/src/utils/input.ts +6 -5
- package/packages/list/src/BasicList/BasicList.tsx +7 -7
- package/packages/list/src/CenteredList/CenteredList.tsx +2 -2
- package/packages/list/src/EdgeOffsetList/EdgeOffsetList.tsx +7 -7
- 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/interface.ts +2 -2
- package/packages/logger/src/loggers/ConsoleLogger/ConsoleLogger.ts +1 -7
- package/packages/logger/src/loggers/SentryLogger/SentryLogger.ts +1 -3
- package/packages/router/README.md +0 -1
- package/packages/router/src/Router.tsx +1 -4
- package/packages/router/src/utils.ts +1 -1
- package/utils/release/release.ts +5 -7
- package/ci/is_ci_job_skippable.sh +0 -153
- package/packages/analytics/src/clients/TealiumAnalytics/findForLanguage.ts +0 -9
- package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapAppOpen.ts +0 -13
- package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapAdEvent.ts +0 -20
- 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/types.ts +0 -1
- package/packages/input/src/handleOverflow.ts +0 -29
- package/packages/keyboard/src/WhitelabelKeyboard/layouts/spanish.ts +0 -26
- package/packages/keyboard/src/utils/setInputSelectionRange.ts +0 -10
|
@@ -11,7 +11,8 @@ import { mapPlayerOpen } from './mappers/mapPlayerOpen';
|
|
|
11
11
|
import { mapPlayerClose } from './mappers/mapPlayerClose';
|
|
12
12
|
import { mapVideoStart } from './mappers/mapVideoStart';
|
|
13
13
|
import { mapVideoPause } from './mappers/mapVideoPause';
|
|
14
|
-
import {
|
|
14
|
+
import { mapAdLoaded } from './mappers/mapAdLoaded';
|
|
15
|
+
import { mapAdSkipped } from './mappers/mapAdSkipped';
|
|
15
16
|
import { EventMappingFunction } from './types';
|
|
16
17
|
|
|
17
18
|
export const EVENTS_MAPPING: Record<EVENTS, EventMappingFunction> = {
|
|
@@ -25,10 +26,6 @@ export const EVENTS_MAPPING: Record<EVENTS, EventMappingFunction> = {
|
|
|
25
26
|
[EVENTS.VIDEO_PROGRESS]: mapVideoProgress,
|
|
26
27
|
[EVENTS.VIDEO_COMPLETE]: mapVideoComplete,
|
|
27
28
|
[EVENTS.VIDEO_PAUSE]: mapVideoPause,
|
|
28
|
-
[EVENTS.
|
|
29
|
-
[EVENTS.
|
|
30
|
-
[EVENTS.AD_ERROR]: mapAdEvent,
|
|
31
|
-
[EVENTS.AD_SKIPPED]: mapAdEvent,
|
|
32
|
-
[EVENTS.AD_START]: mapAdEvent,
|
|
33
|
-
[EVENTS.AD_STOP]: mapAdEvent,
|
|
29
|
+
[EVENTS.AD_LOADED]: mapAdLoaded,
|
|
30
|
+
[EVENTS.AD_SKIPPED]: mapAdSkipped,
|
|
34
31
|
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
|
|
2
|
+
import { getAssetId } from '../helper';
|
|
3
|
+
import { Payload, AdLoadedResult } from '../types';
|
|
4
|
+
import { mapBase } from './mapBase';
|
|
5
|
+
|
|
6
|
+
export const mapAdLoaded = (triggerName: AnalyticsTriggers, payload: Payload): AdLoadedResult => ({
|
|
7
|
+
...mapBase(payload),
|
|
8
|
+
action: triggerName,
|
|
9
|
+
event_trigger: triggerName,
|
|
10
|
+
thing_id: getAssetId(payload.sceneId),
|
|
11
|
+
player_advertisment_name: '', // TODO: adPayload?.adName,
|
|
12
|
+
player_advertisment_position: 0, // TODO: adPayload?.adPosition,
|
|
13
|
+
});
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
|
|
2
|
+
import { getAssetId } from '../helper';
|
|
3
|
+
import { Payload, AdSkippedResult } from '../types';
|
|
4
|
+
import { mapBase } from './mapBase';
|
|
5
|
+
|
|
6
|
+
export const mapAdSkipped = (
|
|
7
|
+
triggerName: AnalyticsTriggers,
|
|
8
|
+
payload: Payload,
|
|
9
|
+
): AdSkippedResult => ({
|
|
10
|
+
...mapBase(payload),
|
|
11
|
+
action: triggerName,
|
|
12
|
+
event_trigger: triggerName,
|
|
13
|
+
thing_id: getAssetId(payload.sceneId),
|
|
14
|
+
player_advertisment_name: '', // TODO: adPayload?.adName,
|
|
15
|
+
player_advertisment_position: 0, // TODO: adPayload?.adPosition,
|
|
16
|
+
});
|
|
@@ -4,17 +4,14 @@ import { formatDateTime, getTimezoneOffsetString } from '../helper';
|
|
|
4
4
|
|
|
5
5
|
export const mapBase = (payload: Payload): BaseResult => {
|
|
6
6
|
const timestampDate = time.getCurrentTime();
|
|
7
|
-
const
|
|
7
|
+
const formatedTimestamp = getTimezoneOffsetString();
|
|
8
8
|
return {
|
|
9
|
-
device_appversion: payload.appVersion || '',
|
|
10
9
|
session_id: payload.sessionId.toString(),
|
|
11
10
|
timestamp_initiated: formatDateTime(timestampDate),
|
|
12
11
|
device_id: payload.deviceId,
|
|
13
|
-
device_type:
|
|
12
|
+
device_type: payload.deviceType,
|
|
14
13
|
device_platform: payload.platform || '',
|
|
15
|
-
|
|
16
|
-
device_manufacturer: payload.manufacturer || '',
|
|
17
|
-
device_timezone: formattedTimestamp,
|
|
14
|
+
device_timezone: formatedTimestamp,
|
|
18
15
|
service_id: payload.serviceId || '',
|
|
19
16
|
user_id: payload.userId || '',
|
|
20
17
|
user_profile_id: payload.userProfileId,
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
|
|
2
|
+
import { getAssetId } from '../helper';
|
|
2
3
|
import { Payload, BufferingResult } from '../types';
|
|
3
4
|
import { mapBase } from './mapBase';
|
|
4
5
|
|
|
@@ -9,7 +10,6 @@ export const mapBuffering = (
|
|
|
9
10
|
...mapBase(payload),
|
|
10
11
|
action: triggerName,
|
|
11
12
|
event_trigger: triggerName,
|
|
12
|
-
thing_id: payload.
|
|
13
|
-
attribution_id: payload.attributionId || '',
|
|
13
|
+
thing_id: getAssetId(payload.sceneId),
|
|
14
14
|
source_page: payload.sceneName,
|
|
15
15
|
});
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { SECOND_IN_MS } from '@24i/bigscreen-sdk/utils';
|
|
2
2
|
import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
|
|
3
|
-
import {
|
|
3
|
+
import { EVENTS, HUNDRED_PERCENT } from '../constants';
|
|
4
4
|
import { PlayerCloseResult, Payload } from '../types';
|
|
5
5
|
import { mapBase } from './mapBase';
|
|
6
|
+
import { getAssetId } from '../helper';
|
|
6
7
|
|
|
7
8
|
export const mapPlayerClose = (
|
|
8
9
|
triggerName: AnalyticsTriggers,
|
|
@@ -16,9 +17,7 @@ export const mapPlayerClose = (
|
|
|
16
17
|
...mapBase(payload),
|
|
17
18
|
action: EVENTS.PLAYER_CLOSE,
|
|
18
19
|
event_trigger: triggerName,
|
|
19
|
-
|
|
20
|
-
thing_id: payload.assetId || '',
|
|
21
|
-
attribution_id: payload.attributionId || '',
|
|
20
|
+
thing_id: getAssetId(payload.sceneId),
|
|
22
21
|
duration,
|
|
23
22
|
progress_pct: progressPercent,
|
|
24
23
|
};
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
|
|
2
2
|
import { DefaultScreens } from '../constants';
|
|
3
|
+
import { getAssetId } from '../helper';
|
|
4
|
+
|
|
3
5
|
import { PlayerOpenResult, Payload } from '../types';
|
|
4
6
|
import { mapBase } from './mapBase';
|
|
5
7
|
|
|
@@ -11,7 +13,6 @@ export const mapPlayerOpen = (
|
|
|
11
13
|
action: triggerName,
|
|
12
14
|
event_trigger: triggerName,
|
|
13
15
|
source_page: DefaultScreens.PLAYBACK,
|
|
14
|
-
thing_id: payload.
|
|
15
|
-
attribution_id: payload.attributionId || '',
|
|
16
|
+
thing_id: getAssetId(payload.sceneId),
|
|
16
17
|
source_rail: '', // TODO: payload.payload.asset.sectionLabel,
|
|
17
18
|
});
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
|
|
2
|
+
import { getAssetId } from '../helper';
|
|
2
3
|
import { Payload, SceneViewResult } from '../types';
|
|
3
4
|
import { mapBase } from './mapBase';
|
|
4
5
|
|
|
@@ -10,6 +11,5 @@ export const mapSceneView = (
|
|
|
10
11
|
action: triggerName,
|
|
11
12
|
event_trigger: triggerName,
|
|
12
13
|
source_page: payload.sceneName,
|
|
13
|
-
thing_id: payload.
|
|
14
|
-
attribution_id: payload.attributionId || '',
|
|
14
|
+
thing_id: getAssetId(payload.sceneId),
|
|
15
15
|
});
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
|
|
2
2
|
import { EVENTS } from '../constants';
|
|
3
|
+
import { getAssetId } from '../helper';
|
|
3
4
|
import { Payload, ScrollResult } from '../types';
|
|
4
5
|
import { mapBase } from './mapBase';
|
|
5
6
|
|
|
@@ -10,8 +11,7 @@ export const mapScroll = (triggerName: AnalyticsTriggers, payload: Payload): Scr
|
|
|
10
11
|
action: EVENTS.SCROLL,
|
|
11
12
|
event_trigger: triggerName,
|
|
12
13
|
source_page: payload.sceneName,
|
|
13
|
-
thing_id: payload.
|
|
14
|
-
attribution_id: payload.attributionId || '',
|
|
14
|
+
thing_id: getAssetId(payload.sceneId),
|
|
15
15
|
percent_scrolled: percentScrolled,
|
|
16
16
|
};
|
|
17
17
|
};
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
|
|
2
2
|
import { SECOND_IN_MS } from '@24i/bigscreen-sdk/utils';
|
|
3
|
-
import {
|
|
3
|
+
import { EVENTS } from '../constants';
|
|
4
4
|
import { Payload, VideoCompleteResult } from '../types';
|
|
5
5
|
import { mapBase } from './mapBase';
|
|
6
|
+
import { getAssetId } from '../helper';
|
|
6
7
|
|
|
7
8
|
export const mapVideoComplete = (
|
|
8
9
|
triggerName: AnalyticsTriggers,
|
|
@@ -13,10 +14,8 @@ export const mapVideoComplete = (
|
|
|
13
14
|
...mapBase(payload),
|
|
14
15
|
action: EVENTS.VIDEO_COMPLETE,
|
|
15
16
|
event_trigger: triggerName,
|
|
16
|
-
thing_id: payload.
|
|
17
|
-
attribution_id: payload.attributionId || '',
|
|
17
|
+
thing_id: getAssetId(payload.sceneId),
|
|
18
18
|
progress_pct: 90,
|
|
19
19
|
duration: assetDuration,
|
|
20
|
-
source_page: DefaultScreens.PLAYBACK,
|
|
21
20
|
};
|
|
22
21
|
};
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
|
|
2
2
|
import { SECOND_IN_MS } from '@24i/bigscreen-sdk/utils';
|
|
3
|
-
import {
|
|
3
|
+
import { EVENTS, HUNDRED_PERCENT } from '../constants';
|
|
4
4
|
import { VideoPauseResult, Payload } from '../types';
|
|
5
5
|
import { mapBase } from './mapBase';
|
|
6
|
+
import { getAssetId } from '../helper';
|
|
6
7
|
|
|
7
8
|
export const mapVideoPause = (
|
|
8
9
|
triggerName: AnalyticsTriggers,
|
|
@@ -16,10 +17,8 @@ export const mapVideoPause = (
|
|
|
16
17
|
...mapBase(payload),
|
|
17
18
|
action: EVENTS.VIDEO_PAUSE,
|
|
18
19
|
event_trigger: triggerName,
|
|
19
|
-
thing_id: payload.
|
|
20
|
-
attribution_id: payload.attributionId || '',
|
|
20
|
+
thing_id: getAssetId(payload.sceneId),
|
|
21
21
|
duration: overallDuration,
|
|
22
22
|
progress_pct: progressPercent,
|
|
23
|
-
source_page: DefaultScreens.PLAYBACK,
|
|
24
23
|
};
|
|
25
24
|
};
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
|
|
2
2
|
import { SECOND_IN_MS } from '@24i/bigscreen-sdk/utils';
|
|
3
3
|
import { Payload, VideoProgressResult } from '../types';
|
|
4
|
-
import {
|
|
4
|
+
import { EVENTS, HUNDRED_PERCENT } from '../constants';
|
|
5
5
|
import { mapBase } from './mapBase';
|
|
6
|
+
import { getAssetId } from '../helper';
|
|
6
7
|
|
|
7
8
|
export const mapVideoProgress = (
|
|
8
9
|
triggerName: AnalyticsTriggers,
|
|
@@ -16,10 +17,8 @@ export const mapVideoProgress = (
|
|
|
16
17
|
...mapBase(payload),
|
|
17
18
|
action: EVENTS.VIDEO_PROGRESS,
|
|
18
19
|
event_trigger: triggerName,
|
|
19
|
-
thing_id: payload.
|
|
20
|
-
attribution_id: payload.attributionId || '',
|
|
20
|
+
thing_id: getAssetId(payload.sceneId),
|
|
21
21
|
progress_pct: progressPercent,
|
|
22
22
|
duration: durationInSeconds,
|
|
23
|
-
source_page: DefaultScreens.PLAYBACK,
|
|
24
23
|
};
|
|
25
24
|
};
|
|
@@ -4,6 +4,7 @@ import { SECOND_IN_MS } from '@24i/bigscreen-sdk/utils';
|
|
|
4
4
|
import { DefaultScreens, EVENTS } from '../constants';
|
|
5
5
|
import { VideoStartResult, Payload } from '../types';
|
|
6
6
|
import { mapBase } from './mapBase';
|
|
7
|
+
import { getAssetId } from '../helper';
|
|
7
8
|
|
|
8
9
|
const HUNDRED_PERCENT = 100;
|
|
9
10
|
|
|
@@ -24,8 +25,7 @@ export const mapVideoStart = (
|
|
|
24
25
|
...mapBase(payload),
|
|
25
26
|
action: EVENTS.VIDEO_START,
|
|
26
27
|
event_trigger: triggerName,
|
|
27
|
-
thing_id: payload.
|
|
28
|
-
attribution_id: payload.attributionId || '',
|
|
28
|
+
thing_id: getAssetId(payload.sceneId),
|
|
29
29
|
duration: assetDuration,
|
|
30
30
|
progress_pct: progressPercent,
|
|
31
31
|
source_page: DefaultScreens.PLAYBACK,
|
|
@@ -4,6 +4,7 @@ import { PropertyType } from '@24i/smartapps-datalayer/models';
|
|
|
4
4
|
import { DefaultScreens, EVENTS, HUNDRED_PERCENT } from '../constants';
|
|
5
5
|
import { Payload, VideoStopResult } from '../types';
|
|
6
6
|
import { mapBase } from './mapBase';
|
|
7
|
+
import { getAssetId } from '../helper';
|
|
7
8
|
|
|
8
9
|
export const mapVideoStop = (
|
|
9
10
|
triggerName: AnalyticsTriggers,
|
|
@@ -22,8 +23,7 @@ export const mapVideoStop = (
|
|
|
22
23
|
...mapBase(payload),
|
|
23
24
|
action: EVENTS.VIDEO_STOP,
|
|
24
25
|
event_trigger: triggerName,
|
|
25
|
-
thing_id: payload.
|
|
26
|
-
attribution_id: payload.attributionId || '',
|
|
26
|
+
thing_id: getAssetId(payload.sceneId),
|
|
27
27
|
progress_pct: progressPercent,
|
|
28
28
|
duration,
|
|
29
29
|
source_page: DefaultScreens.PLAYBACK,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Asset } from '@24i/smartapps-datalayer/models';
|
|
2
2
|
import { AnalyticsTriggers } from '@24i/appstage-shared-analytics';
|
|
3
|
-
import type { AnyPayload, UserInfo, AppInfo
|
|
3
|
+
import type { AnyPayload, UserInfo, AppInfo } from '../../interface';
|
|
4
4
|
|
|
5
5
|
interface ScreenParams {
|
|
6
6
|
screen: string;
|
|
@@ -14,9 +14,8 @@ export interface CorePayload {
|
|
|
14
14
|
asset?: Asset;
|
|
15
15
|
source?: string;
|
|
16
16
|
duration?: number;
|
|
17
|
-
|
|
17
|
+
id?: string;
|
|
18
18
|
percentOfPlayback?: number;
|
|
19
|
-
attributionId?: string;
|
|
20
19
|
}
|
|
21
20
|
|
|
22
21
|
export interface SessionInfo {
|
|
@@ -28,8 +27,8 @@ export interface DeviceInfo {
|
|
|
28
27
|
appVersion: string,
|
|
29
28
|
manufacturer: string,
|
|
30
29
|
platform: string,
|
|
30
|
+
platformVersion: string,
|
|
31
31
|
deviceId: string,
|
|
32
|
-
deviceModel: string,
|
|
33
32
|
}
|
|
34
33
|
|
|
35
34
|
export interface SceneInfo {
|
|
@@ -38,21 +37,7 @@ export interface SceneInfo {
|
|
|
38
37
|
sceneType?: string,
|
|
39
38
|
}
|
|
40
39
|
|
|
41
|
-
export
|
|
42
|
-
adId: string;
|
|
43
|
-
adName: string;
|
|
44
|
-
adType: AdType;
|
|
45
|
-
adDuration: string;
|
|
46
|
-
adPosition: string;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
export type Payload = CorePayload
|
|
50
|
-
& SceneInfo
|
|
51
|
-
& SessionInfo
|
|
52
|
-
& UserInfo
|
|
53
|
-
& DeviceInfo
|
|
54
|
-
& AppInfo
|
|
55
|
-
& AdInfo;
|
|
40
|
+
export type Payload = CorePayload & SceneInfo & SessionInfo & UserInfo & AppInfo;
|
|
56
41
|
|
|
57
42
|
export type EventBody = AnyPayload;
|
|
58
43
|
|
|
@@ -62,14 +47,11 @@ export type EventMappingFunction = (
|
|
|
62
47
|
) => AnyPayload | void;
|
|
63
48
|
|
|
64
49
|
export type BaseResult = {
|
|
65
|
-
device_appversion: string,
|
|
66
50
|
session_id: string;
|
|
67
51
|
timestamp_initiated: string;
|
|
68
52
|
device_id: string;
|
|
69
53
|
device_type: string;
|
|
70
54
|
device_platform: string;
|
|
71
|
-
device_manufacturer: string;
|
|
72
|
-
device_model: string;
|
|
73
55
|
device_timezone: string;
|
|
74
56
|
service_id: string;
|
|
75
57
|
user_id?: string;
|
|
@@ -84,49 +66,50 @@ export type CoreResult = BaseResult & {
|
|
|
84
66
|
export type SceneViewResult = CoreResult & {
|
|
85
67
|
source_page: string;
|
|
86
68
|
thing_id: string;
|
|
87
|
-
attribution_id: string;
|
|
88
69
|
};
|
|
89
70
|
export type BufferingResult = SceneViewResult;
|
|
90
71
|
|
|
91
72
|
export type ScrollResult = SceneViewResult & {
|
|
92
73
|
percent_scrolled: string;
|
|
93
74
|
};
|
|
75
|
+
export type VideoProgressResult = CoreResult & {
|
|
76
|
+
thing_id: string;
|
|
77
|
+
progress_pct: number;
|
|
78
|
+
duration: number;
|
|
79
|
+
};
|
|
80
|
+
|
|
94
81
|
export type PlayerOpenResult = CoreResult & {
|
|
95
82
|
thing_id: string;
|
|
96
|
-
attribution_id: string;
|
|
97
83
|
source_page: string;
|
|
98
84
|
source_rail?: string | null;
|
|
99
85
|
};
|
|
100
86
|
|
|
101
|
-
export type
|
|
87
|
+
export type VideoStartResult = CoreResult & {
|
|
102
88
|
thing_id: string;
|
|
103
|
-
attribution_id: string;
|
|
104
89
|
duration: number;
|
|
105
90
|
progress_pct: number;
|
|
106
91
|
source_page: string;
|
|
107
|
-
};
|
|
108
|
-
|
|
109
|
-
export type VideoStartResult = VideoBaseResult & {
|
|
110
92
|
source_rail?: string | null;
|
|
111
93
|
};
|
|
112
94
|
|
|
113
|
-
export type VideoPauseResult =
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
export type VideoCompleteResult = VideoBaseResult;
|
|
95
|
+
export type VideoPauseResult = CoreResult & {
|
|
96
|
+
thing_id: string;
|
|
97
|
+
duration: number;
|
|
98
|
+
progress_pct: number;
|
|
99
|
+
};
|
|
120
100
|
|
|
121
|
-
export type
|
|
101
|
+
export type AdLoadedResult = CoreResult & {
|
|
102
|
+
thing_id: string;
|
|
103
|
+
player_advertisment_name: string;
|
|
104
|
+
player_advertisment_position: number;
|
|
105
|
+
};
|
|
122
106
|
|
|
123
|
-
export type
|
|
124
|
-
ad_id: string;
|
|
125
|
-
ad_name: string;
|
|
126
|
-
ad_position: AdType;
|
|
127
|
-
ad_playback_position: string;
|
|
128
|
-
ad_playback_duration: string;
|
|
107
|
+
export type AdSkippedResult = CoreResult & {
|
|
129
108
|
thing_id: string;
|
|
130
|
-
|
|
131
|
-
|
|
109
|
+
player_advertisment_name: string;
|
|
110
|
+
player_advertisment_position: number;
|
|
132
111
|
};
|
|
112
|
+
|
|
113
|
+
export type VideoCompleteResult = VideoPauseResult;
|
|
114
|
+
export type VideoStopResult = VideoStartResult;
|
|
115
|
+
export type PlayerCloseResult = VideoPauseResult;
|
|
@@ -0,0 +1,66 @@
|
|
|
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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createPackage.js","sourceRoot":"","sources":["../src/createPackage.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAAA,mDAAuC;AAEvC,IAAA,oBAAI,GAAE,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
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
|
|
@@ -0,0 +1 @@
|
|
|
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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
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
|
|
@@ -0,0 +1 @@
|
|
|
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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
|
@@ -111,15 +111,6 @@ class TechnicalInfoProvider implements ITechnicalInfoProvider {
|
|
|
111
111
|
return value || unknown;
|
|
112
112
|
}
|
|
113
113
|
|
|
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
114
|
async getPlatformType() {
|
|
124
115
|
let value;
|
|
125
116
|
const { unknown } = this.translations;
|
|
@@ -146,16 +137,6 @@ class TechnicalInfoProvider implements ITechnicalInfoProvider {
|
|
|
146
137
|
return value || unknown;
|
|
147
138
|
}
|
|
148
139
|
|
|
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
140
|
async getLocalIpAddress() {
|
|
160
141
|
let value;
|
|
161
142
|
const { unknown } = this.translations;
|
|
@@ -302,8 +283,8 @@ class TechnicalInfoProvider implements ITechnicalInfoProvider {
|
|
|
302
283
|
async getSourceDataLayout() {
|
|
303
284
|
const {
|
|
304
285
|
username, profile, appVersion, firmwareVersion, deviceModel,
|
|
305
|
-
deviceManufacturer,
|
|
306
|
-
|
|
286
|
+
deviceManufacturer, platform, player, serialNumber, localIpAddress,
|
|
287
|
+
publicIpAddress, connectionType, macAddress, memoryHeapSize,
|
|
307
288
|
usedLocalStorage, timeZone, dateAndTime, flavour, userAgent,
|
|
308
289
|
emeSupport, emeDrmSystems, mseSupport, fourKSupport, resolution, baseUrl,
|
|
309
290
|
appCoreVersions, androidWrapperVersion,
|
|
@@ -316,11 +297,9 @@ class TechnicalInfoProvider implements ITechnicalInfoProvider {
|
|
|
316
297
|
{ label: firmwareVersion, getter: this.getFirmwareVersion },
|
|
317
298
|
{ label: deviceModel, getter: this.getDeviceModelName },
|
|
318
299
|
{ label: deviceManufacturer, getter: this.getDeviceManufacturer },
|
|
319
|
-
{ label: deviceLanguage, getter: this.getDeviceOsLanguage },
|
|
320
300
|
{ label: platform, getter: this.getPlatformType },
|
|
321
301
|
{ label: player, getter: this.getPlayerType },
|
|
322
302
|
{ label: serialNumber, getter: this.getDeviceSerialNumber },
|
|
323
|
-
{ label: adInfo, getter: this.getAdInfo },
|
|
324
303
|
{ label: localIpAddress, getter: this.getLocalIpAddress },
|
|
325
304
|
{ label: publicIpAddress, getter: this.getPublicIpAddress },
|
|
326
305
|
{ label: connectionType, getter: this.getConnectionType },
|
|
@@ -43,14 +43,6 @@ 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
|
}
|
|
@@ -15,11 +15,9 @@ export type TranslationKeys = {
|
|
|
15
15
|
firmwareVersion: string,
|
|
16
16
|
deviceModel: string,
|
|
17
17
|
deviceManufacturer: string,
|
|
18
|
-
deviceLanguage: string;
|
|
19
18
|
platform: string,
|
|
20
19
|
player: string,
|
|
21
20
|
serialNumber: string,
|
|
22
|
-
adInfo: string,
|
|
23
21
|
localIpAddress: string,
|
|
24
22
|
publicIpAddress: string,
|
|
25
23
|
connectionType: string,
|
|
@@ -56,11 +54,9 @@ export const defaultTranslations = {
|
|
|
56
54
|
firmwareVersion: 'Firmware version',
|
|
57
55
|
deviceModel: 'Device model',
|
|
58
56
|
deviceManufacturer: 'Device manufacturer',
|
|
59
|
-
deviceLanguage: 'Device Language',
|
|
60
57
|
platform: 'Platform',
|
|
61
58
|
player: 'Player',
|
|
62
59
|
serialNumber: 'Serial number',
|
|
63
|
-
adInfo: 'Ad info',
|
|
64
60
|
localIpAddress: 'Local IP address',
|
|
65
61
|
publicIpAddress: 'Public IP address',
|
|
66
62
|
connectionType: 'Connection type',
|