Skip to content

Commit 51466c4

Browse files
committed
TS definition updated, not backward compatible
1 parent 661715e commit 51466c4

File tree

3 files changed

+51
-50
lines changed

3 files changed

+51
-50
lines changed

Changelog.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
# 0.10.0
2+
### Breaking changes:
3+
* Changes to TS definitions to support new @types. React.DOMAttributes changed to React.DOMAttributes<HTMLElement>. Now @types/react is required as dependency. This means version from typings (and from DT master) is not compatible now. Stick with 0.9 if you're using typings or DT master
4+
15
# 0.9.0
26
### Breaking changes:
37

index.d.ts

Lines changed: 45 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
///<reference types="react"/>
2+
13
import * as React from "react";
24

35
export interface BaseProps {
@@ -20,11 +22,6 @@ export interface BaseProps {
2022
style?: React.CSSProperties | React.CSSProperties[];
2123
}
2224

23-
export interface ElementDimensions {
24-
width: number;
25-
height: number;
26-
}
27-
2825
/**
2926
* Base animation properties
3027
*/
@@ -53,7 +50,7 @@ export type ColorType = "red" | "orange" | "yellow" | "olive" | "green" | "teal"
5350
| "brown" | "grey" | "black";
5451

5552
// <Label />
56-
export interface LabelProps extends BaseProps, React.DOMAttributes {
53+
export interface LabelProps extends BaseProps, React.DOMAttributes<HTMLElement> {
5754
/**
5855
* A label can attach to a content segment
5956
*/
@@ -118,13 +115,13 @@ export class Label extends React.Component<LabelProps, any> {
118115
}
119116

120117
// <Detail />
121-
export interface DetailProps extends BaseProps, React.DOMAttributes {
118+
export interface DetailProps extends BaseProps, React.DOMAttributes<HTMLElement> {
122119
}
123120
export class Detail extends React.Component<DetailProps, any> {
124121
}
125122

126123
// <Labels />
127-
export interface LabelsProps extends BaseProps, React.DOMAttributes {
124+
export interface LabelsProps extends BaseProps, React.DOMAttributes<HTMLElement> {
128125
/**
129126
* Labels can share shapes
130127
*/
@@ -145,7 +142,7 @@ export interface LabelsProps extends BaseProps, React.DOMAttributes {
145142
export class Labels extends React.Component<LabelsProps, any> {
146143
}
147144

148-
export interface ButtonProps extends BaseProps, React.DOMAttributes {
145+
export interface ButtonProps extends BaseProps, React.DOMAttributes<HTMLElement> {
149146
/**
150147
* Html type
151148
*/
@@ -330,7 +327,7 @@ export class Divider extends React.Component<DividerProps, any> {
330327
}
331328

332329
// <Flag />
333-
export interface FlagProps extends BaseProps, React.DOMAttributes {
330+
export interface FlagProps extends BaseProps, React.DOMAttributes<HTMLElement> {
334331
/**
335332
* The country code, name or alias of the flag
336333
*/
@@ -340,7 +337,7 @@ export class Flag extends React.Component<FlagProps, any> {
340337
}
341338

342339
// <Header />
343-
export interface HeaderProps extends BaseProps, React.DOMAttributes {
340+
export interface HeaderProps extends BaseProps, React.DOMAttributes<HTMLElement> {
344341
/**
345342
* A header can have its text aligned to a side
346343
*/
@@ -401,7 +398,7 @@ export class SubHeader extends React.Component<SubHeaderProps, any> {
401398

402399

403400
// <Icon />
404-
export interface IconProps extends BaseProps, React.DOMAttributes {
401+
export interface IconProps extends BaseProps, React.DOMAttributes<HTMLElement> {
405402
/**
406403
* An icon can be formatted to appear bordered
407404
*/
@@ -454,7 +451,7 @@ export interface IconProps extends BaseProps, React.DOMAttributes {
454451
export class Icon extends React.Component<IconProps, any> {
455452
}
456453

457-
export interface IconsProps extends BaseProps, React.DOMAttributes {
454+
export interface IconsProps extends BaseProps, React.DOMAttributes<HTMLElement> {
458455
/**
459456
* Size of icon group
460457
*/
@@ -464,7 +461,7 @@ export class Icons extends React.Component<IconsProps, any> {
464461
}
465462

466463
// <Image />
467-
export interface ImageProps extends BaseProps, React.DOMAttributes {
464+
export interface ImageProps extends BaseProps, React.DOMAttributes<HTMLElement> {
468465
// Standard image html attributes
469466
/**
470467
* Specifies an alternate text for an image
@@ -544,7 +541,7 @@ export class Images extends React.Component<ImagesProps, any> {
544541

545542

546543
// <Input />
547-
export interface InputProps extends BaseProps, React.DOMAttributes {
544+
export interface InputProps extends BaseProps, React.DOMAttributes<HTMLElement> {
548545
// Standard <input> html attributes
549546
/**
550547
* Specifies whether an <input> element should have autocomplete enabled
@@ -654,7 +651,7 @@ export class Input extends React.Component<InputProps, any> {
654651
}
655652

656653
// <List />
657-
export interface ListProps extends BaseProps, React.DOMAttributes {
654+
export interface ListProps extends BaseProps, React.DOMAttributes<HTMLElement> {
658655
/**
659656
* Controls content alignment for all items in list
660657
*/
@@ -705,7 +702,7 @@ export interface ListProps extends BaseProps, React.DOMAttributes {
705702
export class List extends React.Component<ListProps, any> {
706703
}
707704

708-
export interface ListItemProps extends BaseProps, React.DOMAttributes {
705+
export interface ListItemProps extends BaseProps, React.DOMAttributes<HTMLElement> {
709706
/**
710707
* Mark item as active. Valid only for link list
711708
*/
@@ -735,7 +732,7 @@ export interface ListItemProps extends BaseProps, React.DOMAttributes {
735732
export class ListItem extends React.Component<ListItemProps, any> {}
736733

737734
// <Loader />
738-
export interface LoaderProps extends BaseProps, React.DOMAttributes {
735+
export interface LoaderProps extends BaseProps, React.DOMAttributes<HTMLElement> {
739736
/**
740737
* Loaders can appear inline centered with content
741738
*/
@@ -765,7 +762,7 @@ export class Loader extends React.Component<LoaderProps, any> {
765762
}
766763

767764
// <Rail />
768-
export interface RailProps extends BaseProps, React.DOMAttributes {
765+
export interface RailProps extends BaseProps, React.DOMAttributes<HTMLElement> {
769766
/**
770767
* A rail can appear attached to the main viewport
771768
*/
@@ -795,7 +792,7 @@ export class Rail extends React.Component<RailProps, any> {
795792
}
796793

797794
// <Reveal />
798-
export interface RevealProps extends BaseProps, React.DOMAttributes {
795+
export interface RevealProps extends BaseProps, React.DOMAttributes<HTMLElement> {
799796
active?: boolean;
800797
circular?: boolean;
801798
disabled?: boolean;
@@ -811,7 +808,7 @@ export class Reveal extends React.Component<RevealProps, any> {
811808
}
812809

813810
// <Segment />
814-
export interface SegmentProps extends BaseProps, React.DOMAttributes {
811+
export interface SegmentProps extends BaseProps, React.DOMAttributes<HTMLElement> {
815812
/**
816813
* A segment can have its text aligned to a side
817814
*/
@@ -908,7 +905,7 @@ export interface ActionsProps extends BaseProps {
908905
export class Actions extends React.Component<ActionsProps, any> {
909906
}
910907
// <Author />
911-
export interface AuthorProps extends BaseProps, React.DOMAttributes {
908+
export interface AuthorProps extends BaseProps, React.DOMAttributes<HTMLElement> {
912909
}
913910
export class Author extends React.Component<AuthorProps, any> {
914911
}
@@ -920,7 +917,7 @@ export interface ContainerProps extends BaseProps {
920917
export class Container extends React.Component<ContainerProps, any> {
921918
}
922919
// <Content />
923-
export interface ContentProps extends BaseProps, React.DOMAttributes {
920+
export interface ContentProps extends BaseProps, React.DOMAttributes<HTMLElement> {
924921
active?: boolean;
925922
aligned?: string;
926923
extra?: boolean;
@@ -933,29 +930,29 @@ export interface ContentProps extends BaseProps, React.DOMAttributes {
933930
export class Content extends React.Component<ContentProps, any> {
934931
}
935932
// <Date />
936-
export interface DateProps extends BaseProps, React.DOMAttributes {
933+
export interface DateProps extends BaseProps, React.DOMAttributes<HTMLElement> {
937934
}
938935
export class Date extends React.Component<DateProps, any> {
939936
}
940937
// <Description />
941-
export interface DescriptionProps extends BaseProps, React.DOMAttributes {
938+
export interface DescriptionProps extends BaseProps, React.DOMAttributes<HTMLElement> {
942939
hidden?: boolean;
943940
visible?: boolean;
944941
}
945942
export class Description extends React.Component<DescriptionProps, any> {
946943
}
947944
// <Meta />
948-
export interface MetaProps extends BaseProps, React.DOMAttributes {
945+
export interface MetaProps extends BaseProps, React.DOMAttributes<HTMLElement> {
949946
}
950947
export class Meta extends React.Component<MetaProps, any> {
951948
}
952949
// <Summary />
953-
export interface SummaryProps extends BaseProps, React.DOMAttributes {
950+
export interface SummaryProps extends BaseProps, React.DOMAttributes<HTMLElement> {
954951
}
955952
export class Summary extends React.Component<SummaryProps, any> {
956953
}
957954
// <Text />
958-
export interface TextProps extends BaseProps, React.DOMAttributes {
955+
export interface TextProps extends BaseProps, React.DOMAttributes<HTMLElement> {
959956
extra?: boolean;
960957
}
961958
export class Text extends React.Component<TextProps, any> {
@@ -1012,7 +1009,7 @@ export interface FieldsProps extends BaseProps {
10121009
export class Fields extends React.Component<FieldsProps, any> {
10131010
}
10141011
// <Form />
1015-
export interface FormProps extends BaseProps, React.DOMAttributes {
1012+
export interface FormProps extends BaseProps, React.DOMAttributes<HTMLElement> {
10161013
/**
10171014
* A form on a dark background may have to invert its color scheme
10181015
*/
@@ -1191,7 +1188,7 @@ export class Row extends React.Component<RowProps, any> {
11911188
}
11921189

11931190
// <Message />
1194-
export interface MessageProps extends BaseProps, React.DOMAttributes {
1191+
export interface MessageProps extends BaseProps, React.DOMAttributes<HTMLElement> {
11951192
/**
11961193
* A message can be formatted to attach itself to other content
11971194
*/
@@ -1329,7 +1326,7 @@ export interface TableProps extends BaseProps {
13291326
export class Table extends React.Component<TableProps, any> {
13301327
}
13311328
// <Td />
1332-
export interface TdProps extends BaseProps, React.DOMAttributes {
1329+
export interface TdProps extends BaseProps, React.DOMAttributes<HTMLElement> {
13331330
// Default HTML5 attributes
13341331
/**
13351332
* Specifies the number of columns a cell should span
@@ -1373,7 +1370,7 @@ export class Tr extends React.Component<TrProps, any> {
13731370
}
13741371

13751372
// <BreadcrumbDivider/>
1376-
export interface BreadcrumbDividerProps extends BaseProps, React.DOMAttributes {
1373+
export interface BreadcrumbDividerProps extends BaseProps, React.DOMAttributes<HTMLElement> {
13771374
/**
13781375
* Icon divider
13791376
*/
@@ -1383,7 +1380,7 @@ export interface BreadcrumbDividerProps extends BaseProps, React.DOMAttributes {
13831380
export class BreadcrumbDivider extends React.Component<BreadcrumbDividerProps, any> {}
13841381

13851382
// <BreadcrumbSection />
1386-
export interface BreadcrumbSectionProps extends BaseProps, React.DOMAttributes {
1383+
export interface BreadcrumbSectionProps extends BaseProps, React.DOMAttributes<HTMLElement> {
13871384
/**
13881385
* Section may be active
13891386
*/
@@ -1401,7 +1398,7 @@ export interface BreadcrumbProps extends BaseProps {
14011398
export class Breadcrumb extends React.Component<BreadcrumbProps, any> {}
14021399

14031400
// <Card />
1404-
export interface CardProps extends BaseProps, React.DOMAttributes {
1401+
export interface CardProps extends BaseProps, React.DOMAttributes<HTMLElement> {
14051402
centered?: boolean;
14061403
col?: string;
14071404
color?: ColorType;
@@ -1413,14 +1410,14 @@ export class Card extends React.Component<CardProps, any> {
14131410
}
14141411

14151412
// <Cards />
1416-
export interface CardsProps extends BaseProps, React.DOMAttributes {
1413+
export interface CardsProps extends BaseProps, React.DOMAttributes<HTMLElement> {
14171414
link?: boolean;
14181415
}
14191416
export class Cards extends React.Component<CardsProps, any> {
14201417
}
14211418

14221419
// <Comment />
1423-
export interface CommentProps extends BaseProps, React.DOMAttributes {
1420+
export interface CommentProps extends BaseProps, React.DOMAttributes<HTMLElement> {
14241421
}
14251422
export class Comment extends React.Component<CommentProps, any> {
14261423
}
@@ -1441,13 +1438,13 @@ export interface FeedProps extends BaseProps {
14411438
export class Feed extends React.Component<FeedProps, any> {
14421439
}
14431440
// <Event />
1444-
export interface EventProps extends BaseProps, React.DOMAttributes {
1441+
export interface EventProps extends BaseProps, React.DOMAttributes<HTMLElement> {
14451442
}
14461443
export class Event extends React.Component<EventProps, any> {
14471444
}
14481445

14491446
// <Item />
1450-
export interface ItemProps extends BaseProps, React.DOMAttributes {
1447+
export interface ItemProps extends BaseProps, React.DOMAttributes<HTMLElement> {
14511448
/**
14521449
* Item image
14531450
*/
@@ -1561,7 +1558,7 @@ export class Menu extends React.Component<MenuProps, any> {
15611558
}
15621559

15631560
// <MenuItem />
1564-
export interface MenuItemProps extends BaseProps, React.DOMAttributes {
1561+
export interface MenuItemProps extends BaseProps, React.DOMAttributes<HTMLElement> {
15651562
/**
15661563
* Is item active
15671564
*/
@@ -1674,12 +1671,12 @@ export interface DropdownBaseProps extends BaseProps {
16741671
scrolling?: boolean;
16751672
}
16761673
// <Dropdown />
1677-
export interface DropdownProps extends DropdownBaseProps, React.DOMAttributes {
1674+
export interface DropdownProps extends DropdownBaseProps, React.DOMAttributes<HTMLElement> {
16781675
}
16791676
export class Dropdown extends React.Component<DropdownProps, any> {
16801677
}
16811678
// <DropdownMenu />
1682-
export interface DropdownMenuProps extends DropdownBaseProps, AnimationProps, React.DOMAttributes {
1679+
export interface DropdownMenuProps extends DropdownBaseProps, AnimationProps, React.DOMAttributes<HTMLElement> {
16831680
/**
16841681
* Active/Close menu
16851682
*/
@@ -1728,7 +1725,7 @@ export interface OptionProps extends ItemProps {
17281725
export class Option extends React.Component<OptionProps, any> {
17291726
}
17301727
// <Select />
1731-
export interface SelectProps extends DropdownBaseProps, AnimationProps, React.DOMAttributes {
1728+
export interface SelectProps extends DropdownBaseProps, AnimationProps, React.DOMAttributes<HTMLElement> {
17321729
/**
17331730
* Should be dropdown opened
17341731
*/
@@ -1814,7 +1811,7 @@ export class Select extends React.Component<SelectProps, any> {
18141811
}
18151812

18161813
// <Checkbox />
1817-
export interface CheckboxProps extends BaseProps, React.DOMAttributes {
1814+
export interface CheckboxProps extends BaseProps, React.DOMAttributes<HTMLElement> {
18181815
/**
18191816
* Apply additional class name to to the label
18201817
*/
@@ -1838,7 +1835,7 @@ export interface CheckboxProps extends BaseProps, React.DOMAttributes {
18381835
/**
18391836
* Callback handler to click checkbox
18401837
*/
1841-
onClick?: React.MouseEventHandler;
1838+
onClick?: React.MouseEventHandler<HTMLElement>;
18421839
/**
18431840
* It does disabled, but does not allow user interaction
18441841
*/
@@ -1851,7 +1848,7 @@ export interface CheckboxProps extends BaseProps, React.DOMAttributes {
18511848
export class Checkbox extends React.Component<CheckboxProps, any> {
18521849
}
18531850
// <CheckboxFields />
1854-
export interface CheckboxFieldsProps extends BaseProps, React.DOMAttributes {
1851+
export interface CheckboxFieldsProps extends BaseProps, React.DOMAttributes<HTMLElement> {
18551852
disabled?: boolean;
18561853
name: string;
18571854
radio?: boolean;
@@ -1891,7 +1888,7 @@ export class Dimmable extends React.Component<DimmableProps, any> {
18911888
}
18921889

18931890
// <Popup />
1894-
export interface PopupProps extends BaseProps, AnimationProps, React.DOMAttributes {
1891+
export interface PopupProps extends BaseProps, AnimationProps, React.DOMAttributes<HTMLElement> {
18951892
/**
18961893
* Basic popup variation
18971894
*/
@@ -1971,7 +1968,7 @@ export class Popup extends React.Component<PopupProps, any> {
19711968
}
19721969

19731970
// <AccordionTitle />
1974-
export interface AccordionTitleProps extends BaseProps, React.DOMAttributes {
1971+
export interface AccordionTitleProps extends BaseProps, React.DOMAttributes<HTMLElement> {
19751972
/**
19761973
* True for active (visible) accordion section. This is being set by Accordion itself
19771974
*/
@@ -1992,7 +1989,7 @@ export interface AccordionTitleProps extends BaseProps, React.DOMAttributes {
19921989
export class AccordionTitle extends React.Component<AccordionTitleProps, any> { }
19931990

19941991
// <AccordionBody />
1995-
export interface AccordionBodyProps extends BaseProps, React.DOMAttributes {
1992+
export interface AccordionBodyProps extends BaseProps, React.DOMAttributes<HTMLElement> {
19961993
/**
19971994
* True for active (visible) accordion section. This is being set by Accordion itself
19981995
*/

0 commit comments

Comments
 (0)