-
Notifications
You must be signed in to change notification settings - Fork 959
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
📝 [Sticky] UI Kitten 5.0 Discussion & Roadmap #896
Comments
TopNavigation syntax proposalIdeaWe should be able to pass any component to What does it resolveThis will help use resolve #777 and potentially #863. Examples
const Title = (evaProps) => (
<React.Fragment>
<Image source={require('./logo.png')}
<Text style={...evaProps, ...myCustomStyle} {...someOtherCustomProps}>Title</Text>
<React.Fragment/>
);
const Header = () => (
<TopNavigation title={evaProps => <Title {...evaProps}/>} />
);
// Even better with inline syntax
// <TopNavigation title={Title} />
const BackIcon = (evaProps) => (
<Icon {..evaProps} name='arrow-ios-back' />
);
// Why not to use a `ghost` Button instead of TopNavigationAction?
const BackButton = (evaProps) => (
<Button {...evaProps} appearance='ghost' accessoryLeft={BackIcon}>BACK</Button>
);
const Header = () => (
<TopNavigation accessoryLeft={evaProps => <BackButton {...evaProps} />} />
);
// Even better with inline syntax
// <TopNavigation accessoryLeft={BackButton} /> |
Replace
|
Potentially affected componentsResuming the ideas above, the following components can be potentially affected, but not bring breaking changes. With the new syntax, the properties described for each component below should be able to accept Class components, Functional components, and meaningful primitives like strings or numbers (depending on property meaning).
|
New syntax examplev4 InputYou can render only a Text inside <Input
label='Movies'
labelStyle={{ color: 'red' }}
/> v5 InputYou can render anything inside <Input label='Movies' /> // Let Eva handle stylings
// OR let me customize it
const Label = (props) => (
<Text {...props} style={[props.style, { color: 'red' }]}>Movies</Text>
);
<Input label={Label} /> |
I can't wait for the V5. Also, can we add a prop to the Icon component to change his color? Edit. |
@focux there is no need to do this. An Icon accepts |
Combine
|
Select syntaxconst MySelect = () => (
<Select selectedIndex={selectedIndex} onSelect={setSelectedIndex}>
<SelectGroup title='Group 1'>
<SelectItem title='Option 1.1'/>
<SelectItem title='Option 1.2'/>
</SelectGroup>
<SelectGroup title='Group 2'>
<SelectItem title='Option 2.1'/>
<SelectItem title='Option 2.2'/>
</SelectGroup>
</Select>
); Same would be available for Drawer and Menu components |
In my opinion your |
Upcoming changes can be found in PR Changelog |
Oh what about making input icons have a visual response when pressed? |
@sudomann we can't handle this because there are multiple icon types, e.g |
Support import individual components on demand. When we create a new project by The reason is that when we import |
This is not the reason of increased startup time. Check this guide |
Thanks for all the great works and detailed changelog. Is there a ETA for the 5.0.0 version ? Even a rough estimation. Is it more likely to come in 2-3, 2-3 months or 2-3 years? :) |
ping ? |
Thanks for the update! Looking forward! |
Time Picker please :( |
AutoComplete is great component. But I think Autocomplete can be extended for :
Other components like Table, Accordion, etc like https://www.akveo.com/ngx-admin/pages/dashboard will be great if can be provided. |
List and ListItem aren't typed properly like FlatList is, would be nice to have that fixed before V5 is pushed. |
This is a communication-open issue indicating version 5.0 roadmap.
Yes, we're going to skip future 4.x releases since it will introduce some breaking changes 💣
Our plan is:
Features
📆 Time Picker Time picker #778(postponed)📚 Documentation for Eva Theme System.
For now, we realize that
background-basic-color-1
looks like a magic string. And that's why we should describe all theme variables exported from Eva and describe how and where they're used and where not.Bug Fixes
Refactoring
We're going to add support of passing Component classes as well as Functional components to component props. A good example for this is a
title
property of TopNavigation component which more likely can include an Image.This should close the following issues: #564 #737 #777 #810 #863
Currently, we're investigating this feature and looking for a good architecture solution. If you have any suggestions, feel free to mention them in the discussion.
💣 BREAKING: Unification of property names. For example, Select and Autocomplete items should have a same property name for a title. Currently,
text
andtitle
are used.💣 [NOT ACCEPTED] BREAKING: Unification with React Native property names. For example, use
title
property for button instead of passing text as children. Let us know how do you feel about that.Migration
Starting from v5, this repository will be moved under Eva Design project.
Also, keep in mind that we're going to completely deprecate
react-native-ui-kitten
package in order to use@ui-kitten/components
.We're not going to include more feature requests in 5.0. In this discussion, we accept proposals regarding the features described above.
Please open a new issue if you have a feature request or questions regarding the current API in order to help us keep this conversation clean.
The text was updated successfully, but these errors were encountered: