-
Notifications
You must be signed in to change notification settings - Fork 843
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
Add TS types for EuiTab/EuiTabs/EuiTabbedContent #1288
Conversation
src/components/tabs/index.d.ts
Outdated
expand?: boolean; | ||
} | ||
|
||
export const EuiTab: SFC<EuiTabProps>; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Because EUI forwards extra all props to an underlying element, we annotate this further with HTMLAttributes<HTMLDivElement>
, and solely by convention we usually include CommonProps
on this line instead of intersecting them together above.
export const EuiTab: SFC<EuiTabProps>; | |
export const EuiTab: SFC<EuiTabProps & CommonProps & HTMLAttributes<HTMLDivElement>>; |
which comes with another bonus: div
elements can optionally have children
making the explicit children?
in EuiTabProps
& EuiTabsProps
redundant.
src/components/tabs/index.d.ts
Outdated
} | ||
|
||
export const EuiTab: SFC<EuiTabProps>; | ||
export const EuiTabs: SFC<EuiTabsProps>; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Extra props in EuiTabsProps
are similarly passed through to a div
export const EuiTabs: SFC<EuiTabsProps>; | |
export const EuiTabs: SFC<EuiTabsProps & CommonProps & HTMLAttributes<HTMLDivElement>>; |
@chandlerprall Thanks for the tips, updated! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Needs a changelog entry (see https://github.com/elastic/eui/pull/1265/files for example), then it'll be good to go!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks @joshdover !
Summary
Adds type definitions for the EuiTab and similar components.
Checklist