Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 7d748c9

Browse files
chore: bump ui-kitten to v5
1 parent e78b87e commit 7d748c9

File tree

148 files changed

+6541
-3625
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

148 files changed

+6541
-3625
lines changed

ios/Podfile.lock

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,7 @@ PODS:
182182
- React-cxxreact (= 0.61.5)
183183
- React-jsi (= 0.61.5)
184184
- React-jsinspector (0.61.5)
185-
- react-native-appearance (0.3.2):
185+
- react-native-appearance (0.3.4):
186186
- React
187187
- react-native-safari-view (1.0.0):
188188
- React
@@ -223,9 +223,9 @@ PODS:
223223
- React-cxxreact (= 0.61.5)
224224
- React-jsi (= 0.61.5)
225225
- ReactCommon/jscallinvoker (= 0.61.5)
226-
- RNCMaskedView (0.1.6):
226+
- RNCMaskedView (0.1.10):
227227
- React
228-
- RNDeviceInfo (5.5.1):
228+
- RNDeviceInfo (5.6.5):
229229
- React
230230
- RNGestureHandler (1.5.6):
231231
- React
@@ -277,7 +277,7 @@ DEPENDENCIES:
277277
- Yoga (from `../node_modules/react-native/ReactCommon/yoga`)
278278

279279
SPEC REPOS:
280-
https://github.com/CocoaPods/Specs.git:
280+
trunk:
281281
- boost-for-react-native
282282

283283
EXTERNAL SOURCES:
@@ -366,7 +366,7 @@ SPEC CHECKSUMS:
366366
React-jsi: cb2cd74d7ccf4cffb071a46833613edc79cdf8f7
367367
React-jsiexecutor: d5525f9ed5f782fdbacb64b9b01a43a9323d2386
368368
React-jsinspector: fa0ecc501688c3c4c34f28834a76302233e29dc0
369-
react-native-appearance: c2e0666225d999f7f0e7d9a9cb6c627c6e4c4b92
369+
react-native-appearance: 0f0e5fc2fcef70e03d48c8fe6b00b9158c2ba8aa
370370
react-native-safari-view: 955d7160d159241b8e9395d12d10ea0ef863dcdd
371371
react-native-safe-area-context: d288138da2c800caa111f9352e9333f186a06ead
372372
React-RCTActionSheet: 600b4d10e3aea0913b5a92256d2719c0cdd26d76
@@ -379,8 +379,8 @@ SPEC CHECKSUMS:
379379
React-RCTText: 9ccc88273e9a3aacff5094d2175a605efa854dbe
380380
React-RCTVibration: a49a1f42bf8f5acf1c3e297097517c6b3af377ad
381381
ReactCommon: 198c7c8d3591f975e5431bec1b0b3b581aa1c5dd
382-
RNCMaskedView: a88953beefbd347a29072d9eba90e42945fe291e
383-
RNDeviceInfo: 017aa2fd29a437fba26807cbe2fa51a149da70cd
382+
RNCMaskedView: 5a8ec07677aa885546a0d98da336457e2bea557f
383+
RNDeviceInfo: c5f8f3a456adcbba405ace475254b08febc4c095
384384
RNGestureHandler: 911d3b110a7a233a34c4f800e7188a84b75319c6
385385
RNReanimated: b2ab0b693dddd2339bd2f300e770f6302d2e960c
386386
RNScreens: 254da4b84f25971cbb30ed3ddc84131f23cac812
@@ -389,4 +389,4 @@ SPEC CHECKSUMS:
389389

390390
PODFILE CHECKSUM: 283d79fe9f997cb2e4e5c3b30b4cfe5de474678b
391391

392-
COCOAPODS: 1.8.4
392+
COCOAPODS: 1.10.0

package.json

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,15 +39,16 @@
3939
"@react-navigation/material-top-tabs": "^5.0.0",
4040
"@react-navigation/native": "^5.0.0",
4141
"@react-navigation/stack": "^5.0.0",
42-
"@ui-kitten/components": "^4.4.0",
43-
"@ui-kitten/date-fns": "^4.4.0",
44-
"@ui-kitten/eva-icons": "^4.4.0",
45-
"@ui-kitten/moment": "^4.4.0",
42+
"@ui-kitten/components": "5.0.0",
43+
"@ui-kitten/date-fns": "5.0.0",
44+
"@ui-kitten/eva-icons": "5.0.0",
45+
"@ui-kitten/moment": "5.0.0",
4646
"date-fns": "^1.30.1",
4747
"expo": "^36.0.2",
4848
"expo-constants": "^8.0.0",
4949
"expo-web-browser": "~8.0.0",
5050
"moment": "^2.24.0",
51+
"patch-package": "^6.2.2",
5152
"react": "~16.9.0",
5253
"react-dom": "~16.9.0",
5354
"react-native": "~0.61.5",

src/components/layout-grid-list.component.tsx

Lines changed: 24 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,18 @@
11
import React from 'react';
2-
import { Dimensions, Image, ListRenderItemInfo, StyleSheet } from 'react-native';
2+
import {
3+
Dimensions,
4+
Image,
5+
ListRenderItemInfo,
6+
StyleSheet,
7+
} from 'react-native';
38
import {
49
Card,
510
CardElement,
6-
CardHeader,
7-
CardHeaderElement,
811
List,
912
ListElement,
1013
ListProps,
14+
Layout,
15+
Text,
1116
} from '@ui-kitten/components';
1217
import { LayoutItem } from '../model/layout-item.model';
1318

@@ -19,28 +24,25 @@ export interface LayoutGridListProps extends Omit<ListProps, 'renderItem'> {
1924
export type LayoutGridListElement = React.ReactElement<LayoutGridListProps>;
2025

2126
export const LayoutGridList = (props: LayoutGridListProps): ListElement => {
22-
2327
const { contentContainerStyle, onItemPress, ...listProps } = props;
2428

25-
const renderItemHeader = (info: ListRenderItemInfo<LayoutItem>): CardHeaderElement => (
26-
<CardHeader
27-
style={styles.itemHeader}
28-
title={info.item.title}
29-
description={info.item.description}
30-
/>
31-
);
29+
const renderItem = (info: ListRenderItemInfo<LayoutItem>): CardElement => {
30+
const renderItemHeader = (evaProps): React.ReactElement => (
31+
<Layout {...evaProps}>
32+
<Text category='h6'>{info.item.title}</Text>
33+
<Text category='s1'>{info.item.description}</Text>
34+
</Layout>
35+
);
3236

33-
const renderItem = (info: ListRenderItemInfo<LayoutItem>): CardElement => (
34-
<Card
35-
style={styles.itemContainer}
36-
header={() => renderItemHeader(info)}
37-
onPress={() => onItemPress(info.index)}>
38-
<Image
39-
style={styles.itemImage}
40-
source={info.item.image}
41-
/>
42-
</Card>
43-
);
37+
return (
38+
<Card
39+
style={styles.itemContainer}
40+
header={renderItemHeader}
41+
onPress={() => onItemPress(info.index)}>
42+
<Image style={styles.itemImage} source={info.item.image} />
43+
</Card>
44+
);
45+
};
4446

4547
return (
4648
<List
Lines changed: 24 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,20 @@
11
import React from 'react';
2-
import { FlexStyle, View, ViewProps } from 'react-native';
2+
import { FlexStyle, StyleSheet, View, ViewProps, ViewStyle } from 'react-native';
33
import { EdgeInsets, SafeAreaConsumer } from 'react-native-safe-area-context';
44
import { styled, StyledComponentProps } from '@ui-kitten/components';
55

66
interface InsetProvider {
7-
toStyle: (insets: EdgeInsets, styles) => FlexStyle;
7+
toStyle: (insets: EdgeInsets) => FlexStyle;
88
}
99

1010
const INSETS: Record<string, InsetProvider> = {
1111
top: {
12-
toStyle: (insets: EdgeInsets, styles): FlexStyle => ({
13-
...styles,
12+
toStyle: (insets: EdgeInsets): FlexStyle => ({
1413
paddingTop: insets.top,
1514
}),
1615
},
1716
bottom: {
18-
toStyle: (insets: EdgeInsets, styles): FlexStyle => ({
19-
...styles,
17+
toStyle: (insets: EdgeInsets): FlexStyle => ({
2018
paddingBottom: insets.bottom,
2119
}),
2220
},
@@ -27,37 +25,40 @@ type Inset = 'top' | 'bottom';
2725
export interface SafeAreaLayoutProps extends ViewProps, StyledComponentProps {
2826
insets?: Inset;
2927
children?: React.ReactNode;
28+
backgroundColor?: string;
3029
}
3130

31+
@styled('SafeAreaLayout')
3232
export class SafeAreaLayoutComponent extends React.Component<SafeAreaLayoutProps> {
33-
34-
static styledComponentName: string = 'SafeAreaLayout';
35-
3633
public render(): React.ReactElement<ViewProps> {
37-
return (
38-
<SafeAreaConsumer>
39-
{this.renderComponent}
40-
</SafeAreaConsumer>
41-
);
34+
return <SafeAreaConsumer>{this.renderComponent}</SafeAreaConsumer>;
4235
}
4336

44-
private createInsets = (insets: Inset | Inset[],
45-
safeAreaInsets: EdgeInsets,
46-
style): FlexStyle[] => {
47-
return React.Children.map(insets, inset => INSETS[inset].toStyle(safeAreaInsets, style));
37+
private createInsets = (
38+
insets: Inset | Inset[],
39+
safeAreaInsets: EdgeInsets,
40+
): FlexStyle[] => {
41+
return React.Children.map(insets, (inset) =>
42+
INSETS[inset].toStyle(safeAreaInsets),
43+
);
4844
};
4945

50-
private renderComponent = (safeAreaInsets: EdgeInsets): React.ReactElement<ViewProps> => {
51-
const { style, insets, themedStyle, ...viewProps } = this.props;
46+
private renderComponent = (
47+
safeAreaInsets: EdgeInsets,
48+
): React.ReactElement<ViewProps> => {
49+
const { style, insets, eva, backgroundColor, ...viewProps } = this.props;
5250

5351
return (
5452
<View
5553
{...viewProps}
56-
style={[this.createInsets(insets, safeAreaInsets, themedStyle), style]}
54+
style={[
55+
this.createInsets(insets, safeAreaInsets),
56+
style,
57+
{ backgroundColor: eva.theme[backgroundColor || 'background-basic-color-1'] },
58+
]}
5759
/>
5860
);
5961
};
6062
}
6163

62-
export const SafeAreaLayout = styled(SafeAreaLayoutComponent);
63-
64+
export const SafeAreaLayout = SafeAreaLayoutComponent;

src/components/showcase-container.component.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ export const ShowcaseContainer = (props: ShowcaseContainerProps): React.ReactEle
4545
insets='top'>
4646
<TopNavigation
4747
title={showcase.title}
48-
leftControl={renderBackAction()}
48+
accessoryLeft={renderBackAction}
4949
/>
5050
<Divider/>
5151
<ShowcaseSettings

src/components/showcase-settings.component.tsx

Lines changed: 59 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
1-
import React from 'react';
1+
import React, { ReactElement } from 'react';
22
import { I18nManager, Platform, StyleSheet, ViewProps } from 'react-native';
33
import {
44
Button,
5+
ButtonElement,
56
CheckBox,
7+
IndexPath,
68
Layout,
79
OverflowMenu,
8-
OverflowMenuItemType,
10+
MenuItem,
911
} from '@ui-kitten/components';
1012
import { ColorPaletteIcon, SettingsIcon, TrashIcon } from './icons';
1113
import { ComponentShowcaseSetting } from '../model/showcase.model';
@@ -21,31 +23,38 @@ export interface ShowcaseSettingsProps extends ViewProps {
2123
}
2224

2325
export const ShowcaseSettings = (props: ShowcaseSettingsProps): React.ReactElement => {
26+
const [themesMenuVisible, setThemesMenuVisible] = React.useState<boolean>(
27+
false,
28+
);
29+
const [settingsMenuVisible, setSettingsMenuVisible] = React.useState<boolean>(
30+
false,
31+
);
2432

25-
const [themesMenuVisible, setThemesMenuVisible] = React.useState<boolean>(false);
26-
const [settingsMenuVisible, setSettingsMenuVisible] = React.useState<boolean>(false);
27-
28-
const createSettingMenuItem = (setting: ComponentShowcaseSetting): OverflowMenuItemType => {
29-
return {
30-
title: setting.description || `${setting.propertyName}: ${setting.value}`,
31-
};
32-
};
33+
const createSettingMenuItem = (setting: ComponentShowcaseSetting, index: number): React.ReactElement => (
34+
<MenuItem
35+
key={index}
36+
title={setting.description || `${setting.propertyName}: ${setting.value}`}
37+
/>
38+
);
3339

34-
const createThemeMenuItem = (title: string): OverflowMenuItemType => {
35-
return { title };
36-
};
40+
const createThemeMenuItem = (title: string, index: number): ReactElement => (
41+
<MenuItem
42+
key={index}
43+
title={title}
44+
/>
45+
);
3746

38-
const onThemeSelect = (index: number): void => {
39-
props.onThemeSelect(props.themes[index]);
47+
const onThemeSelect = (index: IndexPath): void => {
48+
props.onThemeSelect(props.themes[index.row]);
4049
setThemesMenuVisible(false);
4150
};
4251

4352
const onResetButtonPress = (): void => {
4453
props.onReset();
4554
};
4655

47-
const onSettingSelect = (index: number): void => {
48-
const { [index]: setting } = props.settings;
56+
const onSettingSelect = (index: IndexPath): void => {
57+
const { [index.row]: setting } = props.settings;
4958

5059
props.onSettingSelect({
5160
[setting.propertyName]: setting.value,
@@ -54,11 +63,11 @@ export const ShowcaseSettings = (props: ShowcaseSettingsProps): React.ReactEleme
5463
setSettingsMenuVisible(false);
5564
};
5665

57-
const createThemesMenuItems = (): OverflowMenuItemType[] => {
66+
const createThemesMenuItems = (): React.ReactElement[] => {
5867
return props.themes && props.themes.map(createThemeMenuItem);
5968
};
6069

61-
const createSettingsMenuItems = (): OverflowMenuItemType[] => {
70+
const createSettingsMenuItems = (): React.ReactElement[] => {
6271
const settings = props.settings && props.settings.map(createSettingMenuItem);
6372
return settings || [];
6473
};
@@ -80,45 +89,51 @@ export const ShowcaseSettings = (props: ShowcaseSettingsProps): React.ReactEleme
8089
const renderRTLToggle = (): React.ReactElement => (
8190
<CheckBox
8291
checked={I18nManager.isRTL}
83-
onChange={toggleRtl}
84-
text='RTL'
85-
/>
92+
onChange={toggleRtl}>
93+
RTL
94+
</CheckBox>
95+
);
96+
97+
const renderButtonThemes = (): ButtonElement => (
98+
<Button
99+
size='tiny'
100+
accessoryLeft={ColorPaletteIcon}
101+
disabled={!props.themes}
102+
onPress={toggleThemesMenu}>
103+
THEMES
104+
</Button>
105+
);
106+
107+
const renderButtonSettings = (): ButtonElement => (
108+
<Button
109+
size='tiny'
110+
accessoryLeft={SettingsIcon}
111+
disabled={!props.settings}
112+
onPress={toggleSettingsMenu}>
113+
SETTINGS
114+
</Button>
86115
);
87116

88117
return (
89-
<Layout
90-
style={[styles.container, props.style]}
91-
level='1'>
118+
<Layout style={styles.container} level='1'>
92119
<OverflowMenu
93120
visible={themesMenuVisible}
94121
onSelect={onThemeSelect}
95-
data={createThemesMenuItems()}
96-
onBackdropPress={toggleThemesMenu}>
97-
<Button
98-
size='tiny'
99-
icon={ColorPaletteIcon}
100-
disabled={!props.themes}
101-
onPress={toggleThemesMenu}>
102-
THEMES
103-
</Button>
122+
onBackdropPress={toggleThemesMenu}
123+
anchor={renderButtonThemes}>
124+
{createThemesMenuItems()}
104125
</OverflowMenu>
105126
<OverflowMenu
106127
visible={settingsMenuVisible}
107128
onSelect={onSettingSelect}
108-
data={createSettingsMenuItems()}
109-
onBackdropPress={toggleSettingsMenu}>
110-
<Button
111-
size='tiny'
112-
icon={SettingsIcon}
113-
disabled={!props.settings}
114-
onPress={toggleSettingsMenu}>
115-
SETTINGS
116-
</Button>
129+
onBackdropPress={toggleSettingsMenu}
130+
anchor={renderButtonSettings}>
131+
{createSettingsMenuItems()}
117132
</OverflowMenu>
118133
<Button
119134
size='tiny'
120135
status='danger'
121-
icon={TrashIcon}
136+
accessoryLeft={TrashIcon}
122137
disabled={!props.settings}
123138
onPress={onResetButtonPress}>
124139
RESET

0 commit comments

Comments
 (0)