@applicaster/zapp-react-native-ui-components 12.0.0-alpha.6602834797 → 12.0.0-alpha.7257632022
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/Components/Image/Image.android.tsx +0 -1
- package/Components/River/River.tsx +8 -5
- package/Components/River/useScreenConfiguration.ts +3 -4
- package/Components/Screen/__tests__/Screen.test.tsx +40 -42
- package/Components/Screen/index.tsx +0 -1
- package/Components/Screen/orientationHandler.ts +1 -1
- package/Components/VideoModal/PlayerWrapper.tsx +4 -2
- package/Components/VideoModal/hooks/useModalSize.ts +13 -4
- package/Decorators/RiverResolver/index.tsx +0 -4
- package/Decorators/index.tsx +0 -4
- package/package.json +5 -6
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import * as R from "ramda";
|
|
3
|
+
import { GeneralContentScreen } from "@applicaster/zapp-react-native-ui-components/Components/GeneralContentScreen";
|
|
3
4
|
|
|
4
5
|
import { FeedLoader } from "../FeedLoader";
|
|
5
6
|
import { ScreenResolver } from "../ScreenResolver";
|
|
6
7
|
|
|
7
|
-
import type { ZappScreenProps } from "@applicaster/zapp-react-native-flow-types";
|
|
8
|
-
|
|
9
|
-
import { GeneralContentScreen } from "../GeneralContentScreen";
|
|
10
|
-
|
|
11
8
|
type Props = ZappScreenProps & {
|
|
12
9
|
feedUrl?: string;
|
|
13
10
|
isInsideContainer?: boolean;
|
|
@@ -18,6 +15,12 @@ type Props = ZappScreenProps & {
|
|
|
18
15
|
| import("react-native").FlatListProps<any>
|
|
19
16
|
) &
|
|
20
17
|
Record<string, any>;
|
|
18
|
+
appData: AppDataKeys;
|
|
19
|
+
screenTitle: string;
|
|
20
|
+
screenSummary: string;
|
|
21
|
+
setIsScreenWrappedInContainer: (isInsideContainer: boolean) => void;
|
|
22
|
+
screenContext: ZappRiver;
|
|
23
|
+
river: ZappRiver;
|
|
21
24
|
};
|
|
22
25
|
|
|
23
26
|
type State = {
|
|
@@ -27,7 +30,7 @@ type State = {
|
|
|
27
30
|
export class RiverComponent extends React.Component<Props, State> {
|
|
28
31
|
private currentScreenTitle: string;
|
|
29
32
|
private currentScreenSummary: string;
|
|
30
|
-
constructor(props) {
|
|
33
|
+
constructor(props: Props) {
|
|
31
34
|
super(props);
|
|
32
35
|
|
|
33
36
|
this.state = {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as R from "ramda";
|
|
2
2
|
|
|
3
3
|
import { usePickFromState } from "@applicaster/zapp-react-native-redux/hooks";
|
|
4
|
-
import {
|
|
4
|
+
import { useIsTablet } from "@applicaster/zapp-react-native-utils/reactHooks";
|
|
5
5
|
import { toCamelCase } from "@applicaster/zapp-react-native-utils/stringUtils";
|
|
6
6
|
import { useMemo } from "react";
|
|
7
7
|
import { isNilOrEmpty } from "@applicaster/zapp-react-native-utils/reactUtils/helpers";
|
|
@@ -47,7 +47,7 @@ const stylingKeys = [
|
|
|
47
47
|
|
|
48
48
|
export function useScreenConfiguration(screenId: string): ScreenConfiguration {
|
|
49
49
|
const { rivers } = usePickFromState(["rivers"]);
|
|
50
|
-
const
|
|
50
|
+
const isTablet = useIsTablet();
|
|
51
51
|
|
|
52
52
|
return useMemo(() => {
|
|
53
53
|
const config = {} as ScreenConfiguration;
|
|
@@ -56,8 +56,7 @@ export function useScreenConfiguration(screenId: string): ScreenConfiguration {
|
|
|
56
56
|
if (screenData) {
|
|
57
57
|
const { styles } = screenData;
|
|
58
58
|
|
|
59
|
-
const keyPrefix =
|
|
60
|
-
deviceInfo?.isTablet && styles?.tablet_theme ? "tablet_" : "";
|
|
59
|
+
const keyPrefix = isTablet && styles?.tablet_theme ? "tablet_" : "";
|
|
61
60
|
|
|
62
61
|
stylingKeys.forEach(([key, castFn]) => {
|
|
63
62
|
const styleKey = `${keyPrefix}${key}`;
|
|
@@ -2,8 +2,6 @@ import * as React from "react";
|
|
|
2
2
|
import { View } from "react-native";
|
|
3
3
|
import { create, act } from "react-test-renderer";
|
|
4
4
|
|
|
5
|
-
import { ORIENTATIONS } from "@applicaster/zapp-react-native-utils/appUtils/orientationHelper";
|
|
6
|
-
|
|
7
5
|
const Mocked_RouteManager = jest.fn((props) => (
|
|
8
6
|
<View testID="routeManager" {...props} />
|
|
9
7
|
));
|
|
@@ -144,44 +142,44 @@ describe("<Screen Component />", () => {
|
|
|
144
142
|
});
|
|
145
143
|
});
|
|
146
144
|
|
|
147
|
-
it("invokes the orientation hook when the route changes", () => {
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
});
|
|
145
|
+
// it("invokes the orientation hook when the route changes", () => {
|
|
146
|
+
// act(() => {
|
|
147
|
+
// wrapper = create(<Screen {...screenProps} />);
|
|
148
|
+
// });
|
|
149
|
+
|
|
150
|
+
// // @ts-ignore
|
|
151
|
+
// useCurrentScreenData.mockReturnValue({
|
|
152
|
+
// id: "player-testId",
|
|
153
|
+
// general: { screen_orientation: ORIENTATIONS.landscapeSensor },
|
|
154
|
+
// plugin_type: "player",
|
|
155
|
+
// });
|
|
156
|
+
|
|
157
|
+
// act(() => {
|
|
158
|
+
// wrapper.update(
|
|
159
|
+
// <Screen
|
|
160
|
+
// {...screenProps}
|
|
161
|
+
// pathname="/playable"
|
|
162
|
+
// screenData={{
|
|
163
|
+
// id: "player-testId",
|
|
164
|
+
// general: { screen_orientation: ORIENTATIONS.landscapeSensor },
|
|
165
|
+
// plugin_type: "player",
|
|
166
|
+
// }}
|
|
167
|
+
// />
|
|
168
|
+
// );
|
|
169
|
+
// });
|
|
170
|
+
|
|
171
|
+
// useCurrentScreenData.mockReturnValue({
|
|
172
|
+
// id: "player-testId",
|
|
173
|
+
// general: { screen_orientation: ORIENTATIONS.landscapeSensor },
|
|
174
|
+
// });
|
|
175
|
+
|
|
176
|
+
// act(() => {
|
|
177
|
+
// wrapper.update(<Screen {...screenProps} />);
|
|
178
|
+
// });
|
|
179
|
+
|
|
180
|
+
// expect(allowedOrientationsForScreen).toHaveBeenNthCalledWith(
|
|
181
|
+
// 1,
|
|
182
|
+
// ORIENTATIONS.landscapeSensor
|
|
183
|
+
// );
|
|
184
|
+
// });
|
|
187
185
|
});
|
|
@@ -7,7 +7,6 @@ import { useTheme } from "@applicaster/zapp-react-native-utils/theme";
|
|
|
7
7
|
import { useScreenOrientationHandler } from "./orientationHandler";
|
|
8
8
|
import { useScreenConfiguration } from "../River/useScreenConfiguration";
|
|
9
9
|
import { useCurrentScreenData } from "@applicaster/zapp-react-native-utils/reactHooks/screen";
|
|
10
|
-
import type { ZappNavigationProps } from "@applicaster/zapp-react-native-flow-types/index";
|
|
11
10
|
import { usePickFromState } from "@applicaster/zapp-react-native-redux/hooks";
|
|
12
11
|
import { ScreenContextProvider } from "../../Contexts/ScreenContext";
|
|
13
12
|
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
|
|
9
9
|
import { usePickFromState } from "@applicaster/zapp-react-native-redux/hooks";
|
|
10
10
|
import { findPluginByType } from "@applicaster/zapp-react-native-utils/pluginUtils";
|
|
11
|
-
import { useIsTablet } from "@applicaster/zapp-react-native-utils/reactHooks
|
|
11
|
+
import { useIsTablet } from "@applicaster/zapp-react-native-utils/reactHooks";
|
|
12
12
|
import { ZappHookModalContext } from "../../Contexts";
|
|
13
13
|
import { HookModalContextT } from "../../Contexts/ZappHookModalContext";
|
|
14
14
|
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
import { Edge, SafeAreaView } from "react-native-safe-area-context";
|
|
10
10
|
|
|
11
11
|
import { isTV } from "@applicaster/zapp-react-native-utils/reactUtils";
|
|
12
|
-
import { useIsTablet } from "@applicaster/zapp-react-native-utils/reactHooks
|
|
12
|
+
import { useIsTablet } from "@applicaster/zapp-react-native-utils/reactHooks";
|
|
13
13
|
import { PlayerDetails } from "./PlayerDetails";
|
|
14
14
|
import { playerDimesionsHack } from "./utils";
|
|
15
15
|
import { PathnameContext } from "../../Contexts/PathnameContext";
|
|
@@ -33,6 +33,7 @@ type Props = {
|
|
|
33
33
|
containerStyle?: ViewStyle;
|
|
34
34
|
inline?: boolean;
|
|
35
35
|
docked?: boolean;
|
|
36
|
+
pip?: boolean;
|
|
36
37
|
isModal?: boolean;
|
|
37
38
|
fullscreen?: boolean;
|
|
38
39
|
isTabletPortrait?: boolean;
|
|
@@ -135,6 +136,7 @@ export const PlayerWrapper = (props: Props) => {
|
|
|
135
136
|
children,
|
|
136
137
|
isTabletPortrait,
|
|
137
138
|
configuration,
|
|
139
|
+
pip,
|
|
138
140
|
} = props;
|
|
139
141
|
|
|
140
142
|
const isTablet = useIsTablet();
|
|
@@ -158,7 +160,7 @@ export const PlayerWrapper = (props: Props) => {
|
|
|
158
160
|
() => ({
|
|
159
161
|
...baseDimensions,
|
|
160
162
|
width: isInlineModal && docked ? undefined : baseDimensions.width,
|
|
161
|
-
aspectRatio: !isInlineModal ? getScreenAspectRatio() : 16 / 9,
|
|
163
|
+
aspectRatio: !isInlineModal && !pip ? getScreenAspectRatio() : 16 / 9,
|
|
162
164
|
}),
|
|
163
165
|
[baseDimensions, isInlineModal]
|
|
164
166
|
);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React from "react";
|
|
1
|
+
import * as React from "react";
|
|
2
2
|
import { Dimensions } from "react-native";
|
|
3
3
|
import { useIsTabletLandscape } from "@applicaster/zapp-react-native-utils/reactHooks/device/useMemoizedIsTablet";
|
|
4
4
|
import {
|
|
@@ -39,13 +39,22 @@ export const useModalSize = (): Size => {
|
|
|
39
39
|
MODAL_SIZE_FOR_PORTRAIT
|
|
40
40
|
);
|
|
41
41
|
|
|
42
|
-
const setNewModalSize = (
|
|
43
|
-
setModalSize(
|
|
42
|
+
const setNewModalSize = React.useCallback((newSize, log) => {
|
|
43
|
+
setModalSize((oldSize) => {
|
|
44
|
+
if (
|
|
45
|
+
oldSize.height === newSize.height &&
|
|
46
|
+
oldSize.width === newSize.width
|
|
47
|
+
) {
|
|
48
|
+
return oldSize;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
return newSize;
|
|
52
|
+
});
|
|
44
53
|
|
|
45
54
|
logger.debug({
|
|
46
55
|
message: log,
|
|
47
56
|
});
|
|
48
|
-
};
|
|
57
|
+
}, []);
|
|
49
58
|
|
|
50
59
|
const isTabletLandscape = useIsTabletLandscape();
|
|
51
60
|
|
|
@@ -1,9 +1,5 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
|
|
3
|
-
import type {
|
|
4
|
-
ZappComponent,
|
|
5
|
-
ZappRivers,
|
|
6
|
-
} from "@applicaster/zapp-react-native-flow-types";
|
|
7
3
|
import { usePickFromState } from "@applicaster/zapp-react-native-redux/hooks";
|
|
8
4
|
import { isTV } from "@applicaster/zapp-react-native-utils/reactUtils";
|
|
9
5
|
import { usePathname } from "@applicaster/zapp-react-native-utils/reactHooks/navigation";
|
package/Decorators/index.tsx
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@applicaster/zapp-react-native-ui-components",
|
|
3
|
-
"version": "12.0.0-alpha.
|
|
3
|
+
"version": "12.0.0-alpha.7257632022",
|
|
4
4
|
"description": "Applicaster Zapp React Native ui components for the Quick Brick App",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "index.d.ts",
|
|
@@ -29,16 +29,15 @@
|
|
|
29
29
|
},
|
|
30
30
|
"homepage": "https://github.com/applicaster/quickbrick#readme",
|
|
31
31
|
"devDependencies": {
|
|
32
|
-
"@applicaster/zapp-react-native-flow-types": "1.5.0",
|
|
33
32
|
"@types/react": "17.0.2",
|
|
34
33
|
"@types/react-native": "0.69.6",
|
|
35
34
|
"redux-mock-store": "^1.5.3"
|
|
36
35
|
},
|
|
37
36
|
"dependencies": {
|
|
38
|
-
"@applicaster/applicaster-types": "12.0.0-alpha.
|
|
39
|
-
"@applicaster/zapp-react-native-bridge": "12.0.0-alpha.
|
|
40
|
-
"@applicaster/zapp-react-native-redux": "12.0.0-alpha.
|
|
41
|
-
"@applicaster/zapp-react-native-utils": "12.0.0-alpha.
|
|
37
|
+
"@applicaster/applicaster-types": "12.0.0-alpha.7257632022",
|
|
38
|
+
"@applicaster/zapp-react-native-bridge": "12.0.0-alpha.7257632022",
|
|
39
|
+
"@applicaster/zapp-react-native-redux": "12.0.0-alpha.7257632022",
|
|
40
|
+
"@applicaster/zapp-react-native-utils": "12.0.0-alpha.7257632022",
|
|
42
41
|
"promise": "^8.3.0",
|
|
43
42
|
"react-router-native": "^5.1.2",
|
|
44
43
|
"url": "^0.11.0",
|