@applicaster/zapp-react-dom-app 15.0.0-rc.98 → 15.1.0-alpha.1852552014
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/App/InteractionManager/hoc/__tests__/withBacktoTopActionHOC.test.tsx +77 -95
- package/App/InteractionManager/hoc/index.ts +1 -4
- package/App/InteractionManager/hoc/withBackToTopAction.tsx +27 -21
- package/App/InteractionManager/index.tsx +4 -4
- package/App/Layout/index.tsx +3 -2
- package/App/Loader/utils/const.js +1 -0
- package/App/Loader/utils/platform.js +21 -5
- package/Polyfills/AppLoaderBridge/utils/enums.ts +1 -0
- package/Polyfills/index.js +1 -0
- package/main.css +1 -1
- package/package.json +6 -6
|
@@ -1,8 +1,21 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { render } from "@testing-library/react-native";
|
|
3
|
+
|
|
3
4
|
import { withBackToTopActionHOC } from "../withBackToTopAction";
|
|
5
|
+
import { focusManager } from "@applicaster/zapp-react-native-utils/appUtils";
|
|
6
|
+
import { useSubscriberFor } from "@applicaster/zapp-react-native-utils/reactHooks/useSubscriberFor";
|
|
7
|
+
import {
|
|
8
|
+
useCurrentScreenIsHome,
|
|
9
|
+
useCurrentScreenIsRoot,
|
|
10
|
+
useCurrentScreenIsTabs,
|
|
11
|
+
} from "../hooks";
|
|
12
|
+
|
|
13
|
+
import {
|
|
14
|
+
useCurrentScreenIsHook,
|
|
15
|
+
useCurrentScreenIsStartupHook,
|
|
16
|
+
useIsStandaloneFullscreen,
|
|
17
|
+
} from "@applicaster/zapp-react-native-utils/reactHooks/screen";
|
|
4
18
|
|
|
5
|
-
// Mock focusManager and hook
|
|
6
19
|
jest.mock("@applicaster/zapp-react-native-utils/appUtils", () => ({
|
|
7
20
|
focusManager: {
|
|
8
21
|
isFocusOnMenu: jest.fn(),
|
|
@@ -11,26 +24,17 @@ jest.mock("@applicaster/zapp-react-native-utils/appUtils", () => ({
|
|
|
11
24
|
},
|
|
12
25
|
}));
|
|
13
26
|
|
|
14
|
-
jest.mock("
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
useCurrentScreenIsTabs: jest.fn(),
|
|
18
|
-
}));
|
|
19
|
-
|
|
20
|
-
import { focusManager } from "@applicaster/zapp-react-native-utils/appUtils";
|
|
21
|
-
import {
|
|
22
|
-
useCurrentScreenIsHome,
|
|
23
|
-
useCurrentScreenIsRoot,
|
|
24
|
-
useCurrentScreenIsTabs,
|
|
25
|
-
} from "../hooks";
|
|
27
|
+
jest.mock("@applicaster/zapp-react-native-utils/reactHooks/useSubscriberFor");
|
|
28
|
+
jest.mock("../hooks");
|
|
29
|
+
jest.mock("@applicaster/zapp-react-native-utils/reactHooks/screen");
|
|
26
30
|
|
|
27
|
-
|
|
28
|
-
useNavigation: jest.fn(),
|
|
29
|
-
}));
|
|
31
|
+
const mockUseSubscriberFor = useSubscriberFor as jest.Mock;
|
|
30
32
|
|
|
31
|
-
|
|
33
|
+
const setupFocusManager = (overrides: Partial<typeof focusManager>) => {
|
|
34
|
+
Object.assign(focusManager, overrides);
|
|
35
|
+
};
|
|
32
36
|
|
|
33
|
-
describe("withBackToTopActionHOC", () => {
|
|
37
|
+
describe("withBackToTopActionHOC - backToTopAction", () => {
|
|
34
38
|
let receivedProps: any;
|
|
35
39
|
|
|
36
40
|
const BaseComponent = (props) => {
|
|
@@ -43,141 +47,119 @@ describe("withBackToTopActionHOC", () => {
|
|
|
43
47
|
|
|
44
48
|
beforeEach(() => {
|
|
45
49
|
jest.clearAllMocks();
|
|
50
|
+
|
|
51
|
+
mockUseSubscriberFor.mockImplementation(() => jest.fn());
|
|
52
|
+
|
|
53
|
+
(useCurrentScreenIsHome as jest.Mock).mockReturnValue(false);
|
|
54
|
+
(useCurrentScreenIsRoot as jest.Mock).mockReturnValue(false);
|
|
55
|
+
(useCurrentScreenIsTabs as jest.Mock).mockReturnValue(false);
|
|
56
|
+
(useIsStandaloneFullscreen as jest.Mock).mockReturnValue(false);
|
|
57
|
+
(useCurrentScreenIsHook as jest.Mock).mockReturnValue(false);
|
|
58
|
+
(useCurrentScreenIsStartupHook as jest.Mock).mockReturnValue(false);
|
|
59
|
+
|
|
60
|
+
setupFocusManager({
|
|
61
|
+
isFocusOnMenu: () => false,
|
|
62
|
+
isFocusOnContent: () => false,
|
|
63
|
+
isTabsScreenContentFocused: () => false,
|
|
64
|
+
});
|
|
46
65
|
});
|
|
47
66
|
|
|
48
|
-
it("returns PLATFORM_BACK
|
|
67
|
+
it("returns PLATFORM_BACK for startup hook", () => {
|
|
49
68
|
expect.assertions(1);
|
|
50
69
|
|
|
51
|
-
(
|
|
52
|
-
|
|
53
|
-
(useNavigation as jest.Mock).mockReturnValue({
|
|
54
|
-
startUpHooks: ["some_startup_hook"],
|
|
55
|
-
});
|
|
70
|
+
(useCurrentScreenIsStartupHook as jest.Mock).mockReturnValue(true);
|
|
56
71
|
|
|
57
72
|
render(<Wrapped />);
|
|
58
73
|
|
|
59
74
|
expect(receivedProps.backToTopAction()).toBe("PLATFORM_BACK");
|
|
60
75
|
});
|
|
61
76
|
|
|
62
|
-
it("returns
|
|
77
|
+
it("returns GO_BACK_FROM_HOOK when isHook", () => {
|
|
63
78
|
expect.assertions(1);
|
|
64
79
|
|
|
65
|
-
(
|
|
66
|
-
(useCurrentScreenIsHome as jest.Mock).mockReturnValue(true);
|
|
67
|
-
(useCurrentScreenIsTabs as jest.Mock).mockReturnValue(false);
|
|
80
|
+
(useCurrentScreenIsHook as jest.Mock).mockReturnValue(true);
|
|
68
81
|
|
|
69
|
-
(
|
|
70
|
-
|
|
71
|
-
|
|
82
|
+
render(<Wrapped />);
|
|
83
|
+
|
|
84
|
+
expect(receivedProps.backToTopAction()).toBe("GO_BACK_FROM_HOOK");
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
it("returns GO_HOME for standalone full screen", () => {
|
|
88
|
+
expect.assertions(1);
|
|
72
89
|
|
|
73
|
-
(
|
|
74
|
-
(focusManager.isFocusOnContent as jest.Mock).mockReturnValue(false);
|
|
90
|
+
(useIsStandaloneFullscreen as jest.Mock).mockReturnValue(true);
|
|
75
91
|
|
|
76
92
|
render(<Wrapped />);
|
|
77
93
|
|
|
78
|
-
expect(receivedProps.backToTopAction()).toBe("
|
|
94
|
+
expect(receivedProps.backToTopAction()).toBe("GO_HOME");
|
|
79
95
|
});
|
|
80
96
|
|
|
81
|
-
it("returns
|
|
97
|
+
it("returns PLATFORM_BACK when root + menu focus + home", () => {
|
|
82
98
|
expect.assertions(1);
|
|
83
99
|
|
|
84
100
|
(useCurrentScreenIsRoot as jest.Mock).mockReturnValue(true);
|
|
85
|
-
(useCurrentScreenIsHome as jest.Mock).mockReturnValue(
|
|
86
|
-
(useCurrentScreenIsTabs as jest.Mock).mockReturnValue(false);
|
|
101
|
+
(useCurrentScreenIsHome as jest.Mock).mockReturnValue(true);
|
|
87
102
|
|
|
88
|
-
(
|
|
89
|
-
|
|
103
|
+
setupFocusManager({
|
|
104
|
+
isFocusOnMenu: () => true,
|
|
90
105
|
});
|
|
91
106
|
|
|
92
|
-
(focusManager.isFocusOnMenu as jest.Mock).mockReturnValue(true);
|
|
93
|
-
(focusManager.isFocusOnContent as jest.Mock).mockReturnValue(false);
|
|
94
|
-
|
|
95
107
|
render(<Wrapped />);
|
|
96
|
-
|
|
108
|
+
|
|
109
|
+
expect(receivedProps.backToTopAction()).toBe("PLATFORM_BACK");
|
|
97
110
|
});
|
|
98
111
|
|
|
99
|
-
it("returns
|
|
112
|
+
it("returns GO_HOME when root + menu focus + NOT home", () => {
|
|
113
|
+
expect.assertions(1);
|
|
114
|
+
|
|
100
115
|
(useCurrentScreenIsRoot as jest.Mock).mockReturnValue(true);
|
|
101
116
|
(useCurrentScreenIsHome as jest.Mock).mockReturnValue(false);
|
|
102
|
-
(useCurrentScreenIsTabs as jest.Mock).mockReturnValue(false);
|
|
103
117
|
|
|
104
|
-
(
|
|
105
|
-
|
|
118
|
+
setupFocusManager({
|
|
119
|
+
isFocusOnMenu: () => true,
|
|
106
120
|
});
|
|
107
121
|
|
|
108
|
-
(focusManager.isFocusOnMenu as jest.Mock).mockReturnValue(false);
|
|
109
|
-
(focusManager.isFocusOnContent as jest.Mock).mockReturnValue(true);
|
|
110
|
-
|
|
111
122
|
render(<Wrapped />);
|
|
112
123
|
|
|
113
|
-
expect(receivedProps.backToTopAction()).toBe(
|
|
114
|
-
"FOCUS_ON_SELECTED_TOP_MENU_ITEM"
|
|
115
|
-
);
|
|
124
|
+
expect(receivedProps.backToTopAction()).toBe("GO_HOME");
|
|
116
125
|
});
|
|
117
126
|
|
|
118
|
-
it("returns FOCUS_ON_SELECTED_TAB_ITEM when
|
|
127
|
+
it("returns FOCUS_ON_SELECTED_TAB_ITEM when tabs content focused", () => {
|
|
128
|
+
expect.assertions(1);
|
|
129
|
+
|
|
119
130
|
(useCurrentScreenIsRoot as jest.Mock).mockReturnValue(true);
|
|
120
|
-
(useCurrentScreenIsHome as jest.Mock).mockReturnValue(false);
|
|
121
131
|
(useCurrentScreenIsTabs as jest.Mock).mockReturnValue(true);
|
|
122
132
|
|
|
123
|
-
(
|
|
124
|
-
|
|
133
|
+
setupFocusManager({
|
|
134
|
+
isTabsScreenContentFocused: () => true,
|
|
125
135
|
});
|
|
126
136
|
|
|
127
|
-
(focusManager.isFocusOnMenu as jest.Mock).mockReturnValue(false);
|
|
128
|
-
(focusManager.isFocusOnContent as jest.Mock).mockReturnValue(true);
|
|
129
|
-
|
|
130
|
-
(focusManager.isTabsScreenContentFocused as jest.Mock).mockReturnValue(
|
|
131
|
-
true
|
|
132
|
-
);
|
|
133
|
-
|
|
134
137
|
render(<Wrapped />);
|
|
135
138
|
|
|
136
139
|
expect(receivedProps.backToTopAction()).toBe("FOCUS_ON_SELECTED_TAB_ITEM");
|
|
137
140
|
});
|
|
138
141
|
|
|
139
|
-
it("returns
|
|
142
|
+
it("returns FOCUS_ON_SELECTED_TOP_MENU_ITEM when content focused", () => {
|
|
140
143
|
expect.assertions(1);
|
|
141
144
|
|
|
142
|
-
(useCurrentScreenIsRoot as jest.Mock).mockReturnValue(
|
|
143
|
-
(useCurrentScreenIsHome as jest.Mock).mockReturnValue(false);
|
|
144
|
-
(useCurrentScreenIsTabs as jest.Mock).mockReturnValue(false);
|
|
145
|
+
(useCurrentScreenIsRoot as jest.Mock).mockReturnValue(true);
|
|
145
146
|
|
|
146
|
-
(
|
|
147
|
-
|
|
147
|
+
setupFocusManager({
|
|
148
|
+
isFocusOnContent: () => true,
|
|
148
149
|
});
|
|
149
150
|
|
|
150
|
-
(
|
|
151
|
-
(focusManager.isFocusOnContent as jest.Mock).mockReturnValue(false);
|
|
151
|
+
render(<Wrapped />);
|
|
152
152
|
|
|
153
|
-
(
|
|
154
|
-
|
|
153
|
+
expect(receivedProps.backToTopAction()).toBe(
|
|
154
|
+
"FOCUS_ON_SELECTED_TOP_MENU_ITEM"
|
|
155
155
|
);
|
|
156
|
-
|
|
157
|
-
render(<Wrapped />);
|
|
158
|
-
expect(receivedProps.backToTopAction()).toBe("GO_BACK");
|
|
159
156
|
});
|
|
160
157
|
|
|
161
|
-
it("returns
|
|
158
|
+
it("returns default GO_BACK", () => {
|
|
162
159
|
expect.assertions(1);
|
|
163
160
|
|
|
164
|
-
(useCurrentScreenIsRoot as jest.Mock).mockReturnValue(false);
|
|
165
|
-
(useCurrentScreenIsHome as jest.Mock).mockReturnValue(false);
|
|
166
|
-
(useCurrentScreenIsTabs as jest.Mock).mockReturnValue(false);
|
|
167
|
-
|
|
168
|
-
(useNavigation as jest.Mock).mockReturnValue({
|
|
169
|
-
startUpHooks: [],
|
|
170
|
-
currentRoute: "/hooks/some_route",
|
|
171
|
-
});
|
|
172
|
-
|
|
173
|
-
(focusManager.isFocusOnMenu as jest.Mock).mockReturnValue(false);
|
|
174
|
-
(focusManager.isFocusOnContent as jest.Mock).mockReturnValue(false);
|
|
175
|
-
|
|
176
|
-
(focusManager.isTabsScreenContentFocused as jest.Mock).mockReturnValue(
|
|
177
|
-
false
|
|
178
|
-
);
|
|
179
|
-
|
|
180
161
|
render(<Wrapped />);
|
|
181
|
-
|
|
162
|
+
|
|
163
|
+
expect(receivedProps.backToTopAction()).toBe("GO_BACK");
|
|
182
164
|
});
|
|
183
165
|
});
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import { isFilledArray } from "@applicaster/zapp-react-native-utils/arrayUtils";
|
|
3
2
|
import { focusManager } from "@applicaster/zapp-react-native-utils/appUtils";
|
|
4
3
|
|
|
5
4
|
import { useSubscriberFor } from "@applicaster/zapp-react-native-utils/reactHooks/useSubscriberFor";
|
|
@@ -10,17 +9,12 @@ import {
|
|
|
10
9
|
useCurrentScreenIsRoot,
|
|
11
10
|
useCurrentScreenIsTabs,
|
|
12
11
|
} from "./hooks";
|
|
13
|
-
import { useNavigation } from "@applicaster/zapp-react-native-utils/reactHooks";
|
|
14
12
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
| "FORCE_GO_BACK"
|
|
21
|
-
| "FOCUS_ON_SELECTED_TAB_ITEM";
|
|
22
|
-
|
|
23
|
-
export type BackToTopAction = () => BACK_TO_TOP_ACTION;
|
|
13
|
+
import {
|
|
14
|
+
useCurrentScreenIsHook,
|
|
15
|
+
useCurrentScreenIsStartupHook,
|
|
16
|
+
useIsStandaloneFullscreen,
|
|
17
|
+
} from "@applicaster/zapp-react-native-utils/reactHooks/screen";
|
|
24
18
|
|
|
25
19
|
export function withBackToTopActionHOC(Component) {
|
|
26
20
|
return function WrappedComponent(props) {
|
|
@@ -28,11 +22,11 @@ export function withBackToTopActionHOC(Component) {
|
|
|
28
22
|
const isRoot = useCurrentScreenIsRoot();
|
|
29
23
|
const isTabsScreen = useCurrentScreenIsTabs();
|
|
30
24
|
|
|
31
|
-
const
|
|
25
|
+
const isStartUpHook = useCurrentScreenIsStartupHook();
|
|
32
26
|
|
|
33
|
-
const
|
|
27
|
+
const isHook = useCurrentScreenIsHook();
|
|
34
28
|
|
|
35
|
-
const
|
|
29
|
+
const isStandaloneFullscreen = useIsStandaloneFullscreen();
|
|
36
30
|
|
|
37
31
|
const emitFocusOnSelectedTab = useSubscriberFor(
|
|
38
32
|
QBUIComponentEvents.focusOnSelectedTab
|
|
@@ -42,11 +36,20 @@ export function withBackToTopActionHOC(Component) {
|
|
|
42
36
|
QBUIComponentEvents.focusOnSelectedTopMenuItem
|
|
43
37
|
);
|
|
44
38
|
|
|
45
|
-
const backToTopAction = React.useCallback(():
|
|
46
|
-
if (
|
|
39
|
+
const backToTopAction = React.useCallback((): BackToTopAction => {
|
|
40
|
+
if (isStartUpHook) {
|
|
47
41
|
return "PLATFORM_BACK";
|
|
48
42
|
}
|
|
49
43
|
|
|
44
|
+
if (isHook) {
|
|
45
|
+
return "GO_BACK_FROM_HOOK";
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
// Handling case where is not top menu visible
|
|
49
|
+
if (isStandaloneFullscreen) {
|
|
50
|
+
return "GO_HOME";
|
|
51
|
+
}
|
|
52
|
+
|
|
50
53
|
if (isRoot && focusManager.isFocusOnMenu() && isHome) {
|
|
51
54
|
return "PLATFORM_BACK";
|
|
52
55
|
}
|
|
@@ -63,13 +66,16 @@ export function withBackToTopActionHOC(Component) {
|
|
|
63
66
|
return "FOCUS_ON_SELECTED_TOP_MENU_ITEM";
|
|
64
67
|
}
|
|
65
68
|
|
|
66
|
-
if (isHook) {
|
|
67
|
-
return "FORCE_GO_BACK";
|
|
68
|
-
}
|
|
69
|
-
|
|
70
69
|
// default
|
|
71
70
|
return "GO_BACK";
|
|
72
|
-
}, [
|
|
71
|
+
}, [
|
|
72
|
+
isHome,
|
|
73
|
+
isRoot,
|
|
74
|
+
isTabsScreen,
|
|
75
|
+
isStartUpHook,
|
|
76
|
+
isHook,
|
|
77
|
+
isStandaloneFullscreen,
|
|
78
|
+
]);
|
|
73
79
|
|
|
74
80
|
return (
|
|
75
81
|
<Component
|
|
@@ -54,7 +54,7 @@ import { OnScreenKeyboard } from "@applicaster/zapp-react-dom-ui-components/Comp
|
|
|
54
54
|
import { KeyboardLongPressManager } from "@applicaster/zapp-react-dom-ui-components/Utils/KeyboardLongPressManager";
|
|
55
55
|
import { KeyInputHandler } from "@applicaster/zapp-react-native-utils/appUtils/keyInputHandler/KeyInputHandler";
|
|
56
56
|
import { getHomeRiver } from "@applicaster/zapp-react-native-utils/reactHooks/state";
|
|
57
|
-
import { withBackToTopActionHOC
|
|
57
|
+
import { withBackToTopActionHOC } from "./hoc";
|
|
58
58
|
|
|
59
59
|
const { withXray } = getXray();
|
|
60
60
|
const globalAny: any = global;
|
|
@@ -76,7 +76,7 @@ type Props = {
|
|
|
76
76
|
rivers: {};
|
|
77
77
|
xray: XRayContext;
|
|
78
78
|
confirmDialog: typeof confirmationDialogStore;
|
|
79
|
-
backToTopAction: BackToTopAction;
|
|
79
|
+
backToTopAction: () => BackToTopAction;
|
|
80
80
|
emitFocusOnSelectedTopMenuItem: Callback;
|
|
81
81
|
emitFocusOnSelectedTab: Callback;
|
|
82
82
|
};
|
|
@@ -461,7 +461,7 @@ class InteractionManagerClass extends React.Component<Props, State> {
|
|
|
461
461
|
}
|
|
462
462
|
}
|
|
463
463
|
|
|
464
|
-
if (action === "
|
|
464
|
+
if (action === "GO_BACK_FROM_HOOK") {
|
|
465
465
|
log_info(action);
|
|
466
466
|
|
|
467
467
|
const fallbackToHome = false;
|
|
@@ -570,7 +570,7 @@ class InteractionManagerClass extends React.Component<Props, State> {
|
|
|
570
570
|
const { playing } = playerManager.getState() || {};
|
|
571
571
|
|
|
572
572
|
if (!playing) {
|
|
573
|
-
return playerManager.togglePlayPause();
|
|
573
|
+
return playerManager.getInstanceController()?.togglePlayPause();
|
|
574
574
|
}
|
|
575
575
|
}
|
|
576
576
|
|
package/App/Layout/index.tsx
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import { createPortal } from "react-dom";
|
|
3
3
|
|
|
4
|
-
import {
|
|
4
|
+
import { BackgroundImage } from "@applicaster/zapp-react-native-ui-components/Components/BackgroundImage";
|
|
5
|
+
|
|
5
6
|
import { ConfirmDialog } from "@applicaster/zapp-react-dom-ui-components/Components/ConfirmDialog";
|
|
6
7
|
import { NavWrapper } from "@applicaster/zapp-react-dom-ui-components/Components/NavWrapper";
|
|
7
8
|
import { useNavigation } from "@applicaster/zapp-react-native-utils/reactHooks/navigation";
|
|
@@ -25,7 +26,7 @@ export function Layout({ children }: Props) {
|
|
|
25
26
|
return (
|
|
26
27
|
<>
|
|
27
28
|
<LayoutComponent
|
|
28
|
-
Components={{ Background, NavBar: NavWrapper }}
|
|
29
|
+
Components={{ Background: BackgroundImage, NavBar: NavWrapper }}
|
|
29
30
|
ComponentsExtraProps={ComponentsExtraProps}
|
|
30
31
|
>
|
|
31
32
|
{children}
|
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
15
|
* @typedef {"tv" | "web" | "other"} DeviceType
|
|
16
|
-
* @typedef {"samsung_tv" | "lg_tv" | unknown} CustomPlatformTypes
|
|
16
|
+
* @typedef {"samsung_tv" | "lg_tv" | "vidaa" | unknown} CustomPlatformTypes
|
|
17
17
|
*/
|
|
18
18
|
|
|
19
19
|
/**
|
|
@@ -75,6 +75,16 @@ export const isVizioPlatform = () => {
|
|
|
75
75
|
);
|
|
76
76
|
};
|
|
77
77
|
|
|
78
|
+
/**
|
|
79
|
+
* Checks if the platform is Vida.
|
|
80
|
+
* @returns {boolean} True if the platform is Vida, false otherwise.
|
|
81
|
+
*/
|
|
82
|
+
export const isVidaaPlatform = () => {
|
|
83
|
+
const userAgent = getUserAgent();
|
|
84
|
+
|
|
85
|
+
return userAgent.includes(PLATFORMS.vidaa);
|
|
86
|
+
};
|
|
87
|
+
|
|
78
88
|
/**
|
|
79
89
|
* Checks if the Vizio APIs are available.
|
|
80
90
|
* @returns {boolean} True if the Vizio APIs are available, false otherwise.
|
|
@@ -99,6 +109,10 @@ export const getDeviceType = () => {
|
|
|
99
109
|
return isSamsungPlatform() ? "tv" : "web";
|
|
100
110
|
case "lg_tv":
|
|
101
111
|
return isLgPlatform() ? "tv" : "web";
|
|
112
|
+
case "vizio":
|
|
113
|
+
return isVizioPlatform() ? "tv" : "web";
|
|
114
|
+
case "vidaa":
|
|
115
|
+
return isVidaaPlatform() ? "tv" : "web";
|
|
102
116
|
default:
|
|
103
117
|
return "other";
|
|
104
118
|
}
|
|
@@ -271,10 +285,11 @@ export const getDeviceData = async () => {
|
|
|
271
285
|
]);
|
|
272
286
|
|
|
273
287
|
deviceData = {
|
|
274
|
-
platform: "lg_tv",
|
|
275
288
|
...webOSInfo,
|
|
276
289
|
...webOSConnectionInfo,
|
|
277
|
-
|
|
290
|
+
platform: "lg_tv",
|
|
291
|
+
deviceMake: "LG",
|
|
292
|
+
deviceType: getDeviceType(),
|
|
278
293
|
...deviceDimensions,
|
|
279
294
|
};
|
|
280
295
|
} else if (isSamsungPlatform()) {
|
|
@@ -284,10 +299,11 @@ export const getDeviceData = async () => {
|
|
|
284
299
|
]);
|
|
285
300
|
|
|
286
301
|
deviceData = {
|
|
287
|
-
platform: "samsung_tv",
|
|
288
302
|
...tizenInfo,
|
|
289
303
|
...tizenConnectionInfo,
|
|
290
|
-
|
|
304
|
+
platform: "samsung_tv",
|
|
305
|
+
deviceMake: "Samsung",
|
|
306
|
+
deviceType: getDeviceType(),
|
|
291
307
|
...deviceDimensions,
|
|
292
308
|
};
|
|
293
309
|
} else if (isVizioPlatform()) {
|
package/Polyfills/index.js
CHANGED
package/main.css
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@applicaster/zapp-react-dom-app",
|
|
3
|
-
"version": "15.
|
|
3
|
+
"version": "15.1.0-alpha.1852552014",
|
|
4
4
|
"description": "Zapp App Component for Applicaster's Quick Brick React Native App",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -22,11 +22,11 @@
|
|
|
22
22
|
},
|
|
23
23
|
"homepage": "https://github.com/applicaster/zapp-react-dom-app#readme",
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@applicaster/zapp-react-dom-ui-components": "15.
|
|
26
|
-
"@applicaster/zapp-react-native-bridge": "15.
|
|
27
|
-
"@applicaster/zapp-react-native-redux": "15.
|
|
28
|
-
"@applicaster/zapp-react-native-ui-components": "15.
|
|
29
|
-
"@applicaster/zapp-react-native-utils": "15.
|
|
25
|
+
"@applicaster/zapp-react-dom-ui-components": "15.1.0-alpha.1852552014",
|
|
26
|
+
"@applicaster/zapp-react-native-bridge": "15.1.0-alpha.1852552014",
|
|
27
|
+
"@applicaster/zapp-react-native-redux": "15.1.0-alpha.1852552014",
|
|
28
|
+
"@applicaster/zapp-react-native-ui-components": "15.1.0-alpha.1852552014",
|
|
29
|
+
"@applicaster/zapp-react-native-utils": "15.1.0-alpha.1852552014",
|
|
30
30
|
"abortcontroller-polyfill": "^1.7.5",
|
|
31
31
|
"typeface-montserrat": "^0.0.54",
|
|
32
32
|
"video.js": "7.14.3",
|