mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2026-10-06 15:57:13 +00:00
Merge pull request #28415 from t49tran/react-bootstrap/fix-onChange-definition-toggle-button-group
react-bootstrap/fix on change definition toggle button group
This commit is contained in:
+28
-29
@@ -3,37 +3,36 @@ import { ButtonGroup } from 'react-bootstrap';
|
||||
import { Omit } from "../index";
|
||||
|
||||
declare namespace ToggleButtonGroup {
|
||||
interface BaseProps {
|
||||
/**
|
||||
* You'll usually want to use string|number|string[]|number[] here,
|
||||
* but you can technically use any|any[].
|
||||
*/
|
||||
defaultValue?: any;
|
||||
/**
|
||||
* You'll usually want to use string|number|string[]|number[] here,
|
||||
* but you can technically use any|any[].
|
||||
*/
|
||||
value?: any;
|
||||
}
|
||||
interface BaseProps {
|
||||
/**
|
||||
* You'll usually want to use string|number|string[]|number[] here,
|
||||
* but you can technically use any|any[].
|
||||
*/
|
||||
defaultValue?: any;
|
||||
/**
|
||||
* You'll usually want to use string|number|string[]|number[] here,
|
||||
* but you can technically use any|any[].
|
||||
*/
|
||||
value?: any;
|
||||
}
|
||||
|
||||
interface RadioProps {
|
||||
/** Required if `type` is set to "radio" */
|
||||
name: string;
|
||||
type: "radio";
|
||||
onChange?(value: any): void;
|
||||
}
|
||||
interface RadioProps {
|
||||
/** Required if `type` is set to "radio" */
|
||||
name: string;
|
||||
type: "radio";
|
||||
onChange?(value: any): void;
|
||||
}
|
||||
|
||||
interface CheckboxProps {
|
||||
name?: string;
|
||||
type: "checkbox";
|
||||
onChange?(values: any[]): void;
|
||||
}
|
||||
|
||||
export type ToggleButtonGroupProps = BaseProps
|
||||
& (RadioProps | CheckboxProps)
|
||||
& Omit<React.HTMLProps<ToggleButtonGroup>, "defaultValue" | "type" | "value">
|
||||
& Omit<React.HTMLProps<ToggleButtonGroup>, "defaultValue" | "type" | "value" | "onChange">;
|
||||
interface CheckboxProps {
|
||||
name?: string;
|
||||
type: "checkbox";
|
||||
onChange?(values: any[]): void;
|
||||
}
|
||||
|
||||
export type ToggleButtonGroupProps = BaseProps
|
||||
& (RadioProps | CheckboxProps)
|
||||
& Omit<ButtonGroup.ButtonGroupProps, "onChange">
|
||||
& Omit<React.HTMLProps<ToggleButtonGroup>, "defaultValue" | "type" | "value" | "onChange">;
|
||||
}
|
||||
declare class ToggleButtonGroup extends React.Component<ToggleButtonGroup.ToggleButtonGroupProps & ButtonGroup.ButtonGroupProps> { }
|
||||
declare class ToggleButtonGroup extends React.Component<ToggleButtonGroup.ToggleButtonGroupProps> { }
|
||||
export = ToggleButtonGroup;
|
||||
|
||||
@@ -210,8 +210,20 @@ export class ReactBootstrapIndividualComponentsTest extends React.Component {
|
||||
<Tabs />
|
||||
<Thumbnail />
|
||||
<ToggleButton value="foo" bsSize="small" />
|
||||
<ToggleButtonGroup type="checkbox" bsSize="small" />
|
||||
<ToggleButtonGroup type="radio" name="foo" />
|
||||
<ToggleButtonGroup
|
||||
type="checkbox"
|
||||
bsSize="small"
|
||||
defaultValue={[1]}
|
||||
value={[1, 2]}
|
||||
onChange={(value: number[]) => { }}
|
||||
/>
|
||||
<ToggleButtonGroup
|
||||
type="radio"
|
||||
name="foo"
|
||||
defaultValue={1}
|
||||
value={1}
|
||||
onChange={(value: number) => { }}
|
||||
/>
|
||||
<Tooltip />
|
||||
<Well />
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user