Skip to content

Commit 5a5eb67

Browse files
committed
Merge branch 'master' into release
2 parents 03f4568 + 01a7e98 commit 5a5eb67

File tree

74 files changed

+1393
-1415
lines changed

Some content is hidden

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

74 files changed

+1393
-1415
lines changed

demo/src/screens/componentScreens/PickerScreen.tsx

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,12 @@ const filters = [
4040
{label: 'Scheduled', value: 3}
4141
];
4242

43+
const schemes = [
44+
{label: 'Default', value: 1},
45+
{label: 'Light', value: 2},
46+
{label: 'Dark', value: 3}
47+
];
48+
4349
export default class PickerScreen extends Component {
4450
picker = React.createRef<PickerMethods>();
4551
state = {
@@ -51,6 +57,7 @@ export default class PickerScreen extends Component {
5157
nativePickerValue: 'java',
5258
customModalValues: [],
5359
filter: filters[0],
60+
scheme: schemes[0].value,
5461
contact: 0
5562
};
5663

@@ -299,6 +306,39 @@ export default class PickerScreen extends Component {
299306
style={{alignSelf: 'flex-start'}}
300307
onPress={() => this.picker.current?.openExpandable?.()}
301308
/>
309+
310+
<Text text60 marginT-s5>
311+
Different Field Types
312+
</Text>
313+
<Text text80 marginB-s5>(Form/Filter/Settings)</Text>
314+
315+
<Picker
316+
migrate
317+
migrateTextField
318+
value={this.state.filter}
319+
onChange={value => this.setState({filter: value})}
320+
placeholder="Filter posts"
321+
fieldType={Picker.fieldTypes.filter}
322+
marginB-s3
323+
>
324+
{filters.map(filter => (
325+
<Picker.Item key={filter.value} {...filter}/>
326+
))}
327+
</Picker>
328+
329+
<Picker
330+
migrate
331+
migrateTextField
332+
value={this.state.scheme}
333+
onChange={value => this.setState({scheme: value})}
334+
label="Color Scheme"
335+
placeholder="Filter posts"
336+
fieldType={Picker.fieldTypes.settings}
337+
>
338+
{schemes.map(scheme => (
339+
<Picker.Item key={scheme.value} {...scheme}/>
340+
))}
341+
</Picker>
302342
</View>
303343
</ScrollView>
304344
);

demo/src/screens/componentScreens/SliderScreen.tsx

Lines changed: 64 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
import React, {Component} from 'react';
22
import {StyleSheet, ScrollView} from 'react-native';
33
import {Colors, View, Text, Icon, Slider, GradientSlider, ColorSliderGroup, Constants} from 'react-native-ui-lib';
4-
5-
const INITIAL_VALUE = 0;
6-
const COLOR = Colors.blue30;
4+
import {renderBooleanOption} from '../ExampleScreenPresenter';
75

86
interface SliderScreenProps {
97
componentId: string;
@@ -13,18 +11,28 @@ interface SliderScreenState {
1311
alpha: number;
1412
color: string;
1513
sliderValue: number;
14+
sliderMinValue: number;
15+
sliderMaxValue: number;
16+
forceLTR: boolean;
1617
}
1718

19+
const INITIAL_VALUE = 0;
20+
const COLOR = Colors.blue30;
21+
1822
export default class SliderScreen extends Component<SliderScreenProps, SliderScreenState> {
19-
constructor(props: SliderScreenProps) {
20-
super(props);
21-
22-
this.state = {
23-
alpha: 1,
24-
color: COLOR,
25-
sliderValue: INITIAL_VALUE
26-
};
27-
}
23+
state = {
24+
alpha: 1,
25+
color: COLOR,
26+
sliderValue: INITIAL_VALUE,
27+
sliderMinValue: 0,
28+
sliderMaxValue: 100,
29+
forceLTR: false
30+
};
31+
32+
onSliderRangeChange = (values: {min: number, max: number}) => {
33+
const {min, max} = values;
34+
this.setState({sliderMinValue: min, sliderMaxValue: max});
35+
};
2836

2937
onSliderValueChange = (value: number) => {
3038
this.setState({sliderValue: value});
@@ -38,17 +46,26 @@ export default class SliderScreen extends Component<SliderScreenProps, SliderScr
3846
console.warn('onGroupValueChange: ', value);
3947
};
4048

49+
getReverseStyle = () => {
50+
return Constants.isRTL && this.state.forceLTR && styles.ltr;
51+
}
52+
4153
render() {
42-
const {color, alpha, sliderValue} = this.state;
54+
const {color, alpha, sliderValue, sliderMinValue, sliderMaxValue, forceLTR} = this.state;
4355

4456
return (
4557
<ScrollView showsVerticalScrollIndicator={false}>
4658
<View flex padding-20>
47-
<Text titleHuge $textDefault marginB-20>
59+
<Text text40 $textDefault marginB-20>
4860
Sliders
4961
</Text>
5062

51-
<View row centerV style={Constants.isRTL && styles.ltr}>
63+
{Constants.isRTL && renderBooleanOption.call(this, 'Force LTR', 'forceLTR')}
64+
65+
<Text $textDefault text70BO marginB-10>
66+
Default slider
67+
</Text>
68+
<View row centerV style={this.getReverseStyle()}>
5269
<Icon assetName={'search'} style={styles.image}/>
5370
<Slider
5471
onValueChange={this.onSliderValueChange}
@@ -57,14 +74,14 @@ export default class SliderScreen extends Component<SliderScreenProps, SliderScr
5774
maximumValue={100}
5875
step={1}
5976
containerStyle={styles.sliderContainer}
60-
disableRTL
77+
disableRTL={forceLTR}
6178
/>
62-
<Text bodySmall $textNeutral style={styles.text}>
63-
{sliderValue}%
79+
<Text bodySmall $textNeutral style={styles.text} numberOfLines={1}>
80+
${sliderValue}
6481
</Text>
6582
</View>
6683

67-
<Text $textDefault marginT-30>
84+
<Text $textDefault text70BO marginT-30>
6885
Negatives
6986
</Text>
7087
<Slider
@@ -84,12 +101,12 @@ export default class SliderScreen extends Component<SliderScreenProps, SliderScr
84101
containerStyle={styles.slider}
85102
/>
86103

87-
<Text $textDefault marginT-20>
104+
<Text $textDefault text70BO marginT-20>
88105
Disabled
89106
</Text>
90107
<Slider minimumValue={100} maximumValue={200} value={120} containerStyle={styles.slider} disabled/>
91108

92-
<Text $textDefault marginT-15>
109+
<Text $textDefault text70BO marginT-15>
93110
Custom with Steps
94111
</Text>
95112
<Slider
@@ -106,7 +123,28 @@ export default class SliderScreen extends Component<SliderScreenProps, SliderScr
106123
maximumTrackTintColor={Colors.violet70}
107124
/>
108125

109-
<Text $textDefault marginT-15>
126+
<Text $textDefault text70BO marginV-15>
127+
Range slider
128+
</Text>
129+
<View row spread style={this.getReverseStyle()}>
130+
<Text bodySmall $textNeutral>
131+
min. {sliderMinValue}%
132+
</Text>
133+
<Text bodySmall $textNeutral>
134+
max. {sliderMaxValue}%
135+
</Text>
136+
</View>
137+
<Slider
138+
useRange
139+
onRangeChange={this.onSliderRangeChange}
140+
value={INITIAL_VALUE}
141+
minimumValue={0}
142+
maximumValue={100}
143+
step={1}
144+
disableRTL={forceLTR}
145+
/>
146+
147+
<Text $textDefault text70BO marginT-15>
110148
Gradient Sliders
111149
</Text>
112150
<View row centerV>
@@ -137,7 +175,7 @@ export default class SliderScreen extends Component<SliderScreenProps, SliderScr
137175
</View>
138176
</View>
139177

140-
<Text $textDefault marginT-25 marginB-20>
178+
<Text $textDefault text70BO marginV-15>
141179
Color Slider Group
142180
</Text>
143181
<ColorSliderGroup
@@ -189,7 +227,9 @@ const styles = StyleSheet.create({
189227
activeThumb: {
190228
width: 40,
191229
height: 40,
192-
borderRadius: 20
230+
borderRadius: 20,
231+
borderColor: Colors.yellow30,
232+
borderWidth: 2
193233
},
194234
box: {
195235
width: 20,

docuilib/blog/2019-05-28-first-blog-post.md

Lines changed: 0 additions & 12 deletions
This file was deleted.

docuilib/blog/2019-05-29-long-blog-post.md

Lines changed: 0 additions & 44 deletions
This file was deleted.

docuilib/blog/2021-08-01-mdx-blog-post.mdx

Lines changed: 0 additions & 20 deletions
This file was deleted.
Binary file not shown.

docuilib/blog/2021-08-26-welcome/index.md

Lines changed: 0 additions & 25 deletions
This file was deleted.

docuilib/blog/authors.yml

Lines changed: 0 additions & 17 deletions
This file was deleted.

docuilib/docs/intro.md

Lines changed: 0 additions & 35 deletions
This file was deleted.

docuilib/docs/tutorial-basics/_category_.json

Lines changed: 0 additions & 4 deletions
This file was deleted.

0 commit comments

Comments
 (0)