From d16fb75482be156195ffdac6e5b058728951e5d8 Mon Sep 17 00:00:00 2001 From: Vito Date: Tue, 18 Jul 2017 19:10:05 -0400 Subject: [PATCH 1/5] refactor react-bootstrap into individual modules this allows individual components to be imported in addition to named imports on the root module. closes #15856 --- types/react-bootstrap/index.d.ts | 1316 +++-------------- types/react-bootstrap/lib/Accordion.d.ts | 15 + types/react-bootstrap/lib/Alert.d.ts | 12 + types/react-bootstrap/lib/Badge.d.ts | 8 + types/react-bootstrap/lib/Breadcrumb.d.ts | 10 + types/react-bootstrap/lib/BreadcrumbItem.d.ts | 10 + types/react-bootstrap/lib/Button.d.ts | 13 + types/react-bootstrap/lib/ButtonGroup.d.ts | 12 + types/react-bootstrap/lib/ButtonToolbar.d.ts | 12 + types/react-bootstrap/lib/Carousel.d.ts | 29 + .../react-bootstrap/lib/CarouselCaption.d.ts | 7 + types/react-bootstrap/lib/CarouselItem.d.ts | 12 + types/react-bootstrap/lib/Checkbox.d.ts | 11 + types/react-bootstrap/lib/Clearfix.d.ts | 11 + types/react-bootstrap/lib/Col.d.ts | 27 + types/react-bootstrap/lib/Collapse.d.ts | 13 + types/react-bootstrap/lib/ControlLabel.d.ts | 9 + types/react-bootstrap/lib/Dropdown.d.ts | 25 + types/react-bootstrap/lib/DropdownButton.d.ts | 16 + types/react-bootstrap/lib/DropdownMenu.d.ts | 12 + types/react-bootstrap/lib/DropdownToggle.d.ts | 13 + types/react-bootstrap/lib/Fade.d.ts | 11 + types/react-bootstrap/lib/Form.d.ts | 10 + types/react-bootstrap/lib/FormControl.d.ts | 18 + .../lib/FormControlFeedback.d.ts | 5 + .../lib/FormControlStatic.d.ts | 8 + types/react-bootstrap/lib/FormGroup.d.ts | 11 + types/react-bootstrap/lib/Glyphicon.d.ts | 8 + types/react-bootstrap/lib/Grid.d.ts | 9 + types/react-bootstrap/lib/HelpBlock.d.ts | 7 + types/react-bootstrap/lib/Image.d.ts | 10 + types/react-bootstrap/lib/InputGroup.d.ts | 14 + .../react-bootstrap/lib/InputGroupAddon.d.ts | 5 + .../react-bootstrap/lib/InputGroupButton.d.ts | 5 + types/react-bootstrap/lib/Jumbotron.d.ts | 7 + types/react-bootstrap/lib/Label.d.ts | 9 + types/react-bootstrap/lib/ListGroup.d.ts | 8 + types/react-bootstrap/lib/ListGroupItem.d.ts | 13 + types/react-bootstrap/lib/Media.d.ts | 20 + types/react-bootstrap/lib/MediaBody.d.ts | 7 + types/react-bootstrap/lib/MediaHeading.d.ts | 7 + types/react-bootstrap/lib/MediaLeft.d.ts | 7 + types/react-bootstrap/lib/MediaList.d.ts | 5 + types/react-bootstrap/lib/MediaListItem.d.ts | 7 + types/react-bootstrap/lib/MediaRight.d.ts | 7 + types/react-bootstrap/lib/MenuItem.d.ts | 17 + types/react-bootstrap/lib/Modal.d.ts | 41 + types/react-bootstrap/lib/ModalBody.d.ts | 8 + types/react-bootstrap/lib/ModalDialog.d.ts | 14 + types/react-bootstrap/lib/ModalFooter.d.ts | 8 + types/react-bootstrap/lib/ModalHeader.d.ts | 10 + types/react-bootstrap/lib/ModalTitle.d.ts | 8 + types/react-bootstrap/lib/Nav.d.ts | 23 + types/react-bootstrap/lib/NavDropdown.d.ts | 12 + types/react-bootstrap/lib/NavItem.d.ts | 25 + types/react-bootstrap/lib/Navbar.d.ts | 55 + types/react-bootstrap/lib/NavbarBrand.d.ts | 5 + types/react-bootstrap/lib/NavbarCollapse.d.ts | 5 + types/react-bootstrap/lib/NavbarHeader.d.ts | 5 + types/react-bootstrap/lib/NavbarToggle.d.ts | 7 + types/react-bootstrap/lib/Overlay.d.ts | 17 + types/react-bootstrap/lib/OverlayTrigger.d.ts | 26 + types/react-bootstrap/lib/PageHeader.d.ts | 5 + types/react-bootstrap/lib/PageItem.d.ts | 3 + types/react-bootstrap/lib/Pager.d.ts | 11 + types/react-bootstrap/lib/PagerItem.d.ts | 13 + types/react-bootstrap/lib/Pagination.d.ts | 20 + .../react-bootstrap/lib/PaginationButton.d.ts | 14 + types/react-bootstrap/lib/Panel.d.ts | 17 + types/react-bootstrap/lib/PanelGroup.d.ts | 13 + types/react-bootstrap/lib/Popover.d.ts | 15 + types/react-bootstrap/lib/ProgressBar.d.ts | 17 + types/react-bootstrap/lib/Radio.d.ts | 11 + .../react-bootstrap/lib/ResponsiveEmbed.d.ts | 9 + types/react-bootstrap/lib/Row.d.ts | 7 + types/react-bootstrap/lib/SafeAnchor.d.ts | 11 + types/react-bootstrap/lib/SplitButton.d.ts | 12 + types/react-bootstrap/lib/SplitToggle.d.ts | 6 + types/react-bootstrap/lib/Tab.d.ts | 20 + types/react-bootstrap/lib/TabContainer.d.ts | 9 + types/react-bootstrap/lib/TabContent.d.ts | 10 + types/react-bootstrap/lib/TabPane.d.ts | 12 + types/react-bootstrap/lib/Table.d.ts | 13 + types/react-bootstrap/lib/Tabs.d.ts | 17 + types/react-bootstrap/lib/Thumbnail.d.ts | 9 + types/react-bootstrap/lib/Tooltip.d.ts | 15 + types/react-bootstrap/lib/Well.d.ts | 9 + types/react-bootstrap/lib/index.d.ts | 178 +++ .../react-bootstrap/lib/utils/PropTypes.d.ts | 2 + .../lib/utils/StyleConfig.d.ts | 32 + .../lib/utils/ValidComponentChildren.d.ts | 1 + .../lib/utils/bootstrapUtils.d.ts | 18 + .../react-bootstrap/lib/utils/capitalize.d.ts | 1 + .../lib/utils/createChainedFunction.d.ts | 1 + .../lib/utils/deprecationWarning.d.ts | 3 + types/react-bootstrap/lib/utils/index.d.ts | 4 + .../lib/utils/splitComponentProps.d.ts | 1 + ...-bootstrap-individual-components-tests.tsx | 193 +++ .../react-bootstrap/react-bootstrap-tests.tsx | 7 +- types/react-bootstrap/tsconfig.json | 8 +- 100 files changed, 1724 insertions(+), 1120 deletions(-) create mode 100644 types/react-bootstrap/lib/Accordion.d.ts create mode 100644 types/react-bootstrap/lib/Alert.d.ts create mode 100644 types/react-bootstrap/lib/Badge.d.ts create mode 100644 types/react-bootstrap/lib/Breadcrumb.d.ts create mode 100644 types/react-bootstrap/lib/BreadcrumbItem.d.ts create mode 100644 types/react-bootstrap/lib/Button.d.ts create mode 100644 types/react-bootstrap/lib/ButtonGroup.d.ts create mode 100644 types/react-bootstrap/lib/ButtonToolbar.d.ts create mode 100644 types/react-bootstrap/lib/Carousel.d.ts create mode 100644 types/react-bootstrap/lib/CarouselCaption.d.ts create mode 100644 types/react-bootstrap/lib/CarouselItem.d.ts create mode 100644 types/react-bootstrap/lib/Checkbox.d.ts create mode 100644 types/react-bootstrap/lib/Clearfix.d.ts create mode 100644 types/react-bootstrap/lib/Col.d.ts create mode 100644 types/react-bootstrap/lib/Collapse.d.ts create mode 100644 types/react-bootstrap/lib/ControlLabel.d.ts create mode 100644 types/react-bootstrap/lib/Dropdown.d.ts create mode 100644 types/react-bootstrap/lib/DropdownButton.d.ts create mode 100644 types/react-bootstrap/lib/DropdownMenu.d.ts create mode 100644 types/react-bootstrap/lib/DropdownToggle.d.ts create mode 100644 types/react-bootstrap/lib/Fade.d.ts create mode 100644 types/react-bootstrap/lib/Form.d.ts create mode 100644 types/react-bootstrap/lib/FormControl.d.ts create mode 100644 types/react-bootstrap/lib/FormControlFeedback.d.ts create mode 100644 types/react-bootstrap/lib/FormControlStatic.d.ts create mode 100644 types/react-bootstrap/lib/FormGroup.d.ts create mode 100644 types/react-bootstrap/lib/Glyphicon.d.ts create mode 100644 types/react-bootstrap/lib/Grid.d.ts create mode 100644 types/react-bootstrap/lib/HelpBlock.d.ts create mode 100644 types/react-bootstrap/lib/Image.d.ts create mode 100644 types/react-bootstrap/lib/InputGroup.d.ts create mode 100644 types/react-bootstrap/lib/InputGroupAddon.d.ts create mode 100644 types/react-bootstrap/lib/InputGroupButton.d.ts create mode 100644 types/react-bootstrap/lib/Jumbotron.d.ts create mode 100644 types/react-bootstrap/lib/Label.d.ts create mode 100644 types/react-bootstrap/lib/ListGroup.d.ts create mode 100644 types/react-bootstrap/lib/ListGroupItem.d.ts create mode 100644 types/react-bootstrap/lib/Media.d.ts create mode 100644 types/react-bootstrap/lib/MediaBody.d.ts create mode 100644 types/react-bootstrap/lib/MediaHeading.d.ts create mode 100644 types/react-bootstrap/lib/MediaLeft.d.ts create mode 100644 types/react-bootstrap/lib/MediaList.d.ts create mode 100644 types/react-bootstrap/lib/MediaListItem.d.ts create mode 100644 types/react-bootstrap/lib/MediaRight.d.ts create mode 100644 types/react-bootstrap/lib/MenuItem.d.ts create mode 100644 types/react-bootstrap/lib/Modal.d.ts create mode 100644 types/react-bootstrap/lib/ModalBody.d.ts create mode 100644 types/react-bootstrap/lib/ModalDialog.d.ts create mode 100644 types/react-bootstrap/lib/ModalFooter.d.ts create mode 100644 types/react-bootstrap/lib/ModalHeader.d.ts create mode 100644 types/react-bootstrap/lib/ModalTitle.d.ts create mode 100644 types/react-bootstrap/lib/Nav.d.ts create mode 100644 types/react-bootstrap/lib/NavDropdown.d.ts create mode 100644 types/react-bootstrap/lib/NavItem.d.ts create mode 100644 types/react-bootstrap/lib/Navbar.d.ts create mode 100644 types/react-bootstrap/lib/NavbarBrand.d.ts create mode 100644 types/react-bootstrap/lib/NavbarCollapse.d.ts create mode 100644 types/react-bootstrap/lib/NavbarHeader.d.ts create mode 100644 types/react-bootstrap/lib/NavbarToggle.d.ts create mode 100644 types/react-bootstrap/lib/Overlay.d.ts create mode 100644 types/react-bootstrap/lib/OverlayTrigger.d.ts create mode 100644 types/react-bootstrap/lib/PageHeader.d.ts create mode 100644 types/react-bootstrap/lib/PageItem.d.ts create mode 100644 types/react-bootstrap/lib/Pager.d.ts create mode 100644 types/react-bootstrap/lib/PagerItem.d.ts create mode 100644 types/react-bootstrap/lib/Pagination.d.ts create mode 100644 types/react-bootstrap/lib/PaginationButton.d.ts create mode 100644 types/react-bootstrap/lib/Panel.d.ts create mode 100644 types/react-bootstrap/lib/PanelGroup.d.ts create mode 100644 types/react-bootstrap/lib/Popover.d.ts create mode 100644 types/react-bootstrap/lib/ProgressBar.d.ts create mode 100644 types/react-bootstrap/lib/Radio.d.ts create mode 100644 types/react-bootstrap/lib/ResponsiveEmbed.d.ts create mode 100644 types/react-bootstrap/lib/Row.d.ts create mode 100644 types/react-bootstrap/lib/SafeAnchor.d.ts create mode 100644 types/react-bootstrap/lib/SplitButton.d.ts create mode 100644 types/react-bootstrap/lib/SplitToggle.d.ts create mode 100644 types/react-bootstrap/lib/Tab.d.ts create mode 100644 types/react-bootstrap/lib/TabContainer.d.ts create mode 100644 types/react-bootstrap/lib/TabContent.d.ts create mode 100644 types/react-bootstrap/lib/TabPane.d.ts create mode 100644 types/react-bootstrap/lib/Table.d.ts create mode 100644 types/react-bootstrap/lib/Tabs.d.ts create mode 100644 types/react-bootstrap/lib/Thumbnail.d.ts create mode 100644 types/react-bootstrap/lib/Tooltip.d.ts create mode 100644 types/react-bootstrap/lib/Well.d.ts create mode 100644 types/react-bootstrap/lib/index.d.ts create mode 100644 types/react-bootstrap/lib/utils/PropTypes.d.ts create mode 100644 types/react-bootstrap/lib/utils/StyleConfig.d.ts create mode 100644 types/react-bootstrap/lib/utils/ValidComponentChildren.d.ts create mode 100644 types/react-bootstrap/lib/utils/bootstrapUtils.d.ts create mode 100644 types/react-bootstrap/lib/utils/capitalize.d.ts create mode 100644 types/react-bootstrap/lib/utils/createChainedFunction.d.ts create mode 100644 types/react-bootstrap/lib/utils/deprecationWarning.d.ts create mode 100644 types/react-bootstrap/lib/utils/index.d.ts create mode 100644 types/react-bootstrap/lib/utils/splitComponentProps.d.ts create mode 100644 types/react-bootstrap/react-bootstrap-individual-components-tests.tsx diff --git a/types/react-bootstrap/index.d.ts b/types/react-bootstrap/index.d.ts index a696c4ac6d..1ff32a9836 100644 --- a/types/react-bootstrap/index.d.ts +++ b/types/react-bootstrap/index.d.ts @@ -1,1123 +1,207 @@ // Type definitions for react-bootstrap // Project: https://github.com/react-bootstrap/react-bootstrap -// Definitions by: Walker Burgin , Vincent Siao , Danilo Barros , Batbold Gansukh , Raymond May Jr. , Cheng Sieu Ly , Kat Busch +// Definitions by: Walker Burgin , Vincent Siao , Danilo Barros , Batbold Gansukh , Raymond May Jr. , Cheng Sieu Ly , Kat Busch , Vito Samson // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 import * as React from 'react'; -export = ReactBootstrap; -export as namespace ReactBootstrap; - -declare namespace ReactBootstrap { - - type Sizes = 'xs' | 'xsmall' | 'sm' | 'small' | 'medium' | 'lg' | 'large'; - - - // Change onSelect signature to be (eventKey: any, event: SyntheticEvent<{}>) => any on all React-Bootstrap components, instead of the old inconsistent mishmash (#1604, #1677, #1756) - /** ( eventKey:any, e:React.SyntheticEvent<{}> ):void */ - interface SelectCallback extends React.EventHandler { - (eventKey: any, e: React.SyntheticEvent<{}>): void; - /** - @deprecated - This signature is a hack so can still derive from HTMLProps. - It does not reflect the underlying event and should not be used. - */ - (e: React.MouseEvent<{}>): void; - } - - - interface TransitionCallbacks { - onEnter?: Function; - onEntered?: Function; - onEntering?: Function; - onExit?: Function; - onExited?: Function; - onExiting?: Function; - } - - - // - interface AccordionProps extends React.HTMLProps { - bsSize?: Sizes; - bsStyle?: string; - collapsible?: boolean; - defaultExpanded?: boolean; - eventKey?: any; - expanded?: boolean; - footer?: any; // TODO: Add more specific type - header?: any; // TODO: Add more specific type - } - type Accordion = React.ClassicComponent; - var Accordion: React.ClassicComponentClass; - - - // - interface BreadcrumbProps extends React.Props { - bsClass?: string; - } - interface BreadcrumbClass extends React.ClassicComponentClass { - Item: typeof BreadcrumbItem; - } - type Breadcrumb = React.ClassicComponent; - var Breadcrumb: BreadcrumbClass; - - - // - interface BreadcrumbItemProps extends React.Props { - active?: boolean; - id?: string | number; - href?: string; - title?: React.ReactNode; - target?: string; - } - type BreadcrumbItem = React.ClassicComponent; - var BreadcrumbItem: React.ClassicComponentClass; - - - //