fundamental-react 0.5.1 (#35034)

* type definition for fundamental-react

* removing my co-author to make definitelytyped-header-parser happy

* fixing issues to make travis happy :)

* onClick index is mandatory now

* similar folder structure

* making sure, all files are used

* removed an import that is not provided by fundamental-react

* trying to convince travis, that all files are necessary

* fixed a typo

* included index files in tsconfig.json

* fixed formatting
This commit is contained in:
Frank Feinbube
2019-05-02 01:23:47 +02:00
committed by Pranav Senthilnathan
parent d180929701
commit 498aaaf3cc
92 changed files with 4702 additions and 0 deletions

File diff suppressed because it is too large Load Diff

62
types/fundamental-react/index.d.ts vendored Normal file
View File

@@ -0,0 +1,62 @@
// Type definitions for fundamental-react 0.5
// Project: https://sap.github.io/fundamental-react
// Definitions by: Frank Feinbube <https://github.com/Feinbube>
// Milan Proell <https://github.com/milanpro>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.8
export { default as ActionBar } from "./lib/ActionBar/ActionBar";
export { default as Alert } from "./lib/Alert/Alert";
export { default as Badge } from "./lib/Badge/Badge";
export { default as Counter } from "./lib/Badge/Counter";
export { default as Label } from "./lib/Badge/Label";
export { default as Status } from "./lib/Badge/Status";
export { default as Breadcrumb } from "./lib/Breadcrumb/Breadcrumb";
export { default as Button } from "./lib/Button/Button";
export { default as ButtonGroup } from "./lib/Button/ButtonGroup";
export { default as Calendar } from "./lib/Calendar/Calendar";
export { default as ComboboxInput } from "./lib/ComboboxInput/ComboboxInput";
export { default as DatePicker } from "./lib/DatePicker/DatePicker";
export { default as Dropdown } from "./lib/Dropdown/Dropdown";
export { default as FormFieldset } from "./lib/Forms/FormFieldset";
export { default as FormInput } from "./lib/Forms/FormInput";
export { default as FormItem } from "./lib/Forms/FormItem";
export { default as FormLabel } from "./lib/Forms/FormLabel";
export { default as FormLegend } from "./lib/Forms/FormLegend";
export { default as FormMessage } from "./lib/Forms/FormMessage";
export { default as FormRadioGroup } from "./lib/Forms/FormRadioGroup";
export { default as FormRadioItem } from "./lib/Forms/FormRadioItem";
export { default as FormSelect } from "./lib/Forms/FormSelect";
export { default as FormSet } from "./lib/Forms/FormSet";
export { default as FormTextarea } from "./lib/Forms/FormTextarea";
export { default as Icon } from "./lib/Icon/Icon";
export { default as Identifier } from "./lib/Identifier/Identifier";
export { default as Image } from "./lib/Image/Image";
export { default as InlineHelp } from "./lib/InlineHelp/InlineHelp";
export { default as FormGroup } from "./lib/InputGroup/FormGroup";
export { default as InputGroup } from "./lib/InputGroup/InputGroup";
export { default as ListGroup } from "./lib/ListGroup/ListGroup";
export {
default as LocalizationEditor
} from "./lib/LocalizationEditor/LocalizationEditor";
export { default as Menu } from "./lib/Menu/Menu";
export { default as Modal } from "./lib/Modal/Modal";
export { default as MultiInput } from "./lib/MultiInput/MultiInput";
export { default as Pagination } from "./lib/Pagination/Pagination";
export { default as Panel } from "./lib/Panel/Panel";
export { default as PanelGrid } from "./lib/Panel/PanelGrid";
export { default as Popover } from "./lib/Popover/Popover";
export { default as SearchInput } from "./lib/SearchInput/SearchInput";
export { default as Shellbar } from "./lib/Shellbar/Shellbar";
export { default as SideNav } from "./lib/SideNavigation/SideNav";
export { default as Table } from "./lib/Table/Table";
export { default as Tab } from "./lib/Tabs/Tab";
export { default as TabGroup } from "./lib/Tabs/TabGroup";
export { default as ProductTile } from "./lib/Tile/ProductTile";
export { default as Tile } from "./lib/Tile/Tile";
export { default as TileGrid } from "./lib/Tile/TileGrid";
export { default as Time } from "./lib/Time/Time";
export { default as TimePicker } from "./lib/TimePicker/TimePicker";
export { default as Toggle } from "./lib/Toggle/Toggle";
export { default as Token } from "./lib/Token/Token";
export { default as TreeView } from "./lib/TreeView/TreeView";

View File

@@ -0,0 +1,39 @@
import * as React from "react";
export type ActionBarProps = {
className?: string;
/* Set to **true** for mobile view of the Action Bar.*/
mobile?: boolean;
/* The width of the Action Bar in mobile view. */
width?: string;
} & { [x: string]: any };
export type ActionBarActionsProps = {
className?: string;
} & { [x: string]: any };
export type ActionBarBackProps = {
onClick?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
className?: string;
buttonProps?: { [x: string]: any };
} & { [x: string]: any };
export type ActionBarHeaderProps = {
title: string;
className?: string;
/* Localized text for the description. */
description?: string;
/* Additional props to be spread to the description's `<p>` element. */
descriptionProps?: { [x: string]: any };
/* Heading level. `<h1>` is reserved for the page title. */
headingLevel?: 1 | 2 | 3 | 4 | 5 | 6;
titleProps?: { [x: string]: any };
} & { [x: string]: any };
declare class ActionBar extends React.Component<ActionBarProps> {
static Actions: React.FunctionComponent<ActionBarActionsProps>;
static Back: React.FunctionComponent<ActionBarBackProps>;
static Header: React.FunctionComponent<ActionBarHeaderProps>;
}
export default ActionBar;

View File

@@ -0,0 +1 @@
export { default as ActionBar } from "./ActionBar";

View File

@@ -0,0 +1,29 @@
import * as React from "react";
export type AlertType = "warning" | "error" | "success" | "information";
export type AlertProps = {
buttonProps?: { [x: string]: any };
className?: string;
/* Set to **true** to show a dismiss button. */
dismissible?: boolean;
/* Value to be applied to the anchor's `href` attribute. */
link?: string;
/* Additional props to be spread to the link's `<a>` element. */
linkProps?: { [x: string]: any };
/* Localized display text of the link. */
linkText?: string;
localizedText?: {
/* Value for aria-label on the close <button> element. */
close: string;
};
type?: AlertType;
/* Callback function passing event when close button is clicked. */
onCloseClicked?: (
event: React.MouseEvent<HTMLButtonElement, MouseEvent>
) => void;
} & { [x: string]: any };
declare class Alert extends React.Component<AlertProps> {}
export default Alert;

View File

@@ -0,0 +1 @@
export { default as Alert } from "./Alert";

View File

@@ -0,0 +1,12 @@
export type BadgeModifiers = "pill" | "filled";
export type BadgeTypes = "success" | "warning" | "error";
export type BadgeProps = {
className?: string;
modifier?: BadgeModifiers;
type?: BadgeTypes;
} & { [x: string]: any };
declare const Badge: React.FunctionComponent<BadgeProps>;
export default Badge;

View File

@@ -0,0 +1,13 @@
export type CounterProps = {
className?: string;
localizedText?: {
/* The aria-label for the <span> element. */
counterLabel: string;
};
/* Set to **true** to enable counter with notification. */
notification?: boolean;
} & { [x: string]: any };
declare const Counter: React.FunctionComponent<CounterProps>;
export default Counter;

View File

@@ -0,0 +1,10 @@
export type LabelTypes = "success" | "warning" | "error";
export type LabelProps = {
className?: string;
type?: LabelTypes;
} & { [x: string]: any };
declare const Label: React.FunctionComponent<LabelProps>;
export default Label;

View File

@@ -0,0 +1,18 @@
export type StatusType =
| "success"
| "warning"
| "error"
| "available"
| "away"
| "busy"
| "offline";
export type StatusProps = {
className?: string;
glyph?: string;
type?: StatusType;
} & { [x: string]: any };
declare const Status: React.FunctionComponent<StatusProps>;
export default Status;

View File

@@ -0,0 +1,4 @@
export { default as Badge } from "./Badge";
export { default as Counter } from "./Counter";
export { default as Label } from "./Label";
export { default as Status } from "./Status";

View File

@@ -0,0 +1,18 @@
import * as React from "react";
export type BreadcrumbProps = {
[x: string]: any;
} & { [x: string]: any };
export type BreadcrumbItemProps = {
/* Text for the internal anchor tag. */
name?: string;
/* An anchor tag will be generated and set to the url prop. Name or child text must be provided. */
url?: string;
} & { [x: string]: any };
declare const Breadcrumb: React.FunctionComponent<BreadcrumbProps> & {
Item: React.FunctionComponent<BreadcrumbItemProps>;
};
export default Breadcrumb;

View File

@@ -0,0 +1 @@
export { default as Breadcrumb } from "./Breadcrumb";

View File

@@ -0,0 +1,28 @@
import * as React from "react";
export type ButtonOptions = "emphasized" | "light";
export type ButtonTypes = "standard" | "positive" | "negative" | "medium";
export type ButtonProps = {
className?: string;
compact?: boolean;
disabled?: boolean;
/* Set to **true** if button triggers a dropdown list. */
dropdown?: boolean;
glyph?: string;
/* Set to **true** if button is part of global navbar. */
navbar?: boolean;
/* Indicates the importance of the button. */
option?: ButtonOptions;
/* Set to **true** to set state of the button to "selected". */
selected?: boolean;
type?: ButtonTypes;
/* Value for the `type` attribute on the `<button>` element. */
typeAttr?: "submit" | "reset" | "button";
onClick?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
} & { [x: string]: any };
declare const Button: React.FunctionComponent<ButtonProps>;
export default Button;

View File

@@ -0,0 +1,9 @@
import * as React from "react";
export interface ButtonGroupProps {
[x: string]: any;
}
declare const ButtonGroup: React.FunctionComponent<ButtonGroupProps>;
export default ButtonGroup;

View File

@@ -0,0 +1,2 @@
export { default as Button } from "./Button";
export { default as ButtonGroup } from "./ButtonGroup";

View File

@@ -0,0 +1,92 @@
import * as React from "react";
export interface CalendarBaseProps {
/* Blocks dates that are in between the blocked dates. */
blockedDates?: Date[];
/* Disables dates of a calendar that come after the specified date. */
disableAfterDate?: Date;
/* Disables dates of a calendar that come before the specified date. */
disableBeforeDate?: Date;
/* Disables dates that are in between the disabled dates. */
disabledDates?: Date[];
/* Set to **true** to disable dates after today's date. */
disableFutureDates?: boolean;
/* Set to **true** to disable dates before today's date. */
disablePastDates?: boolean;
/* Disables dates that match a weekday. */
disableWeekday?: string[];
/* Set to **true** to disables dates that match a weekend. */
disableWeekends?: boolean;
}
export type CalendarProps = CalendarBaseProps & {
localizedText?: {
/* Full name for Sunday. */
day1Sun: string;
/* Full name for Monday. */
day2Mon: string;
/* Full name for Tuesday. */
day3Tues: string;
/* Full name for Wednesday. */
day4Wed: string;
/* Full name for Thursday. */
day5Thurs: string;
/* Full name for Friday. */
day6Fri: string;
/* Full name for Saturday. */
day7Sat: string;
/* Single character for Sunday. */
dayChar1Sun: string;
/* Single character for Monday. */
dayChar2Mon: string;
/* Single character for Tuesday. */
dayChar3Tues: string;
/* Single character for Wednesday. */
dayChar4Wed: string;
/* Single character for Thursday. */
dayChar5Thurs: string;
/* Single character for Friday. */
dayChar6Fri: string;
/* Single character for Saturday. */
dayChar7Sat: string;
/* Full name for January. */
month01Jan: string;
/* Full name for February. */
month02Feb: string;
/* Full name for March. */
month03Mar: string;
/* Full name for April. */
month04Apr: string;
/* Full name for May. */
month05May: string;
/* Full name for June. */
month06Jun: string;
/* Full name for July. */
month07Jul: string;
/* Full name for August. */
month08Aug: string;
/* Full name for September. */
month09Sep: string;
/* Full name for October. */
month10Oct: string;
/* Full name for November. */
month11Nov: string;
/* Full name for December. */
month12Dec: string;
};
/* Additional props to be spread to the month's `<ul>` element. */
monthListProps?: { [x: string]: any };
/* Additional props to be spread to the `<tbody>` element. */
tableBodyProps?: { [x: string]: any };
/* 'Additional props to be spread to the `<thead>` element.' */
tableHeaderProps?: { [x: string]: any };
/* Additional props to be spread to the `<table>` element. */
tableProps?: { [x: string]: any };
/* Additional props to be spread to the year's `<ul>` element. */
yearListProps?: { [x: string]: any };
onChange?: (date: Date) => void;
} & { [x: string]: any };
declare class Calendar extends React.Component<CalendarProps> {}
export default Calendar;

View File

@@ -0,0 +1 @@
export { default as Calendar } from "./Calendar";

View File

@@ -0,0 +1,17 @@
import * as React from "react";
import { MenuProps } from "../Menu/Menu";
export type ComboboxInputProps = {
/* An object containing a `Menu` component. */
menu: React.ReactElement<MenuProps>;
buttonProps?: object;
className?: string;
compact?: boolean;
inputProps?: object;
placeholder?: string;
popoverProps?: object;
} & { [x: string]: any };
declare const ComboboxInput: React.FunctionComponent<ComboboxInputProps>;
export default ComboboxInput;

View File

@@ -0,0 +1 @@
export { default as ComboboxInput } from "./ComboboxInput";

View File

@@ -0,0 +1,14 @@
import * as React from "react";
import { CalendarBaseProps } from "../Calendar/Calendar";
export type DatePickerProps = CalendarBaseProps & {
buttonProps?: { [x: string]: any };
compact?: boolean;
/* Set to **true** to enable the selection of a date range (begin and end). */
enableRangeSelection?: boolean;
inputProps?: { [x: string]: any };
} & { [x: string]: any };
declare class DatePicker extends React.Component<DatePickerProps> {}
export default DatePicker;

View File

@@ -0,0 +1 @@
export { default as DatePicker } from "./DatePicker";

View File

@@ -0,0 +1,11 @@
import * as React from "react";
export type DropdownProps = {
className?: string;
/* Set to **true** to enable a dropdown for toolbar. */
standard?: boolean;
} & { [x: string]: any };
declare const Dropdown: React.FunctionComponent<DropdownProps>;
export default Dropdown;

View File

@@ -0,0 +1 @@
export { default as Dropdown } from "./Dropdown";

View File

@@ -0,0 +1,9 @@
import * as React from "react";
export type FormFieldsetProps = {
className?: string;
} & { [x: string]: any };
declare const FormFieldset: React.FunctionComponent<FormFieldsetProps>;
export default FormFieldset;

View File

@@ -0,0 +1,23 @@
import * as React from "react";
export type InputType = "normal" | "valid" | "invalid" | "warning";
export type FormInputProps = {
className?: string;
disabled?: boolean;
id?: string;
/* Value for the `name` attribute on the input. */
name?: string;
placeholder?: string;
readOnly?: boolean;
/* Sets the state of the input. Can be left empty for default styles. */
state?: InputType;
/* Value for the `type` attribute on the input. */
type?: string;
/* Value for the `value` attribute on the input. */
value?: string;
} & { [x: string]: any };
declare const FormInput: React.FunctionComponent<FormInputProps>;
export default FormInput;

View File

@@ -0,0 +1,13 @@
import * as React from "react";
export type FormItemProps = {
className?: string;
/* Set to **true** to render an `<input>` with `type` of **checkbox**. */
isCheck?: boolean;
/* Set to **true** to display radio buttons and checkboxes in a row. */
isInline?: boolean;
} & { [x: string]: any };
declare const FormItem: React.FunctionComponent<FormItemProps>;
export default FormItem;

View File

@@ -0,0 +1,11 @@
import * as React from "react";
export type FormLabelProps = {
className?: string;
/* Set to **true** for required input fields. */
required?: boolean;
} & { [x: string]: any };
declare const FormLabel: React.FunctionComponent<FormLabelProps>;
export default FormLabel;

View File

@@ -0,0 +1,9 @@
import * as React from "react";
export type FormLegendProps = {
className?: string;
} & { [x: string]: any };
declare const FormLegend: React.FunctionComponent<FormLegendProps>;
export default FormLegend;

View File

@@ -0,0 +1,12 @@
import * as React from "react";
export type FormMessageType = "error" | "warning" | "help";
export type FormMessageProps = {
className?: string;
type?: FormMessageType;
} & { [x: string]: any };
declare const FormMessage: React.FunctionComponent<FormMessageProps>;
export default FormMessage;

View File

@@ -0,0 +1,12 @@
import * as React from "react";
export type FormRadioGroupProps = {
disabled?: boolean;
/* Set to **true** to display radio buttons in a row. */
inline?: boolean;
onChange?: (...args: any[]) => any;
} & { [x: string]: any };
declare class FormRadioGroup extends React.Component<FormRadioGroupProps> {}
export default FormRadioGroup;

View File

@@ -0,0 +1,21 @@
import * as React from "react";
export type FormRadioItemProps = {
/* Set to **true** when radio input is checked and a controlled component. */
checked?: boolean;
className?: string;
/* Set to **true** when the radio input is checked and an uncontrolled component. */
defaultChecked?: boolean;
disabled?: boolean;
id?: string;
/* _INTERNAL USE ONLY._ */
inline?: boolean;
/* Sets the `name` for the radio input. */
name?: string;
/* Sets the `value` for the radio input. */
value?: string;
} & { [x: string]: any };
declare const FormRadioItem: React.FunctionComponent<FormRadioItemProps>;
export default FormRadioItem;

View File

@@ -0,0 +1,10 @@
import * as React from "react";
export type FormSelectProps = {
className?: string;
disabled?: boolean;
} & { [x: string]: any };
declare const FormSelect: React.FunctionComponent<FormSelectProps>;
export default FormSelect;

View File

@@ -0,0 +1,9 @@
import * as React from "react";
export type FormSetProps = {
className?: string;
} & { [x: string]: any };
declare const FormSet: React.FunctionComponent<FormSetProps>;
export default FormSet;

View File

@@ -0,0 +1,9 @@
import * as React from "react";
export type FormTextareaProps = {
className?: string;
} & { [x: string]: any };
declare const FormTextarea: React.FunctionComponent<FormTextareaProps>;
export default FormTextarea;

View File

@@ -0,0 +1,11 @@
export { default as FormFieldset } from "./FormFieldset";
export { default as FormInput } from "./FormInput";
export { default as FormItem } from "./FormItem";
export { default as FormLabel } from "./FormLabel";
export { default as FormLegend } from "./FormLegend";
export { default as FormMessage } from "./FormMessage";
export { default as FormRadioGroup } from "./FormRadioGroup";
export { default as FormRadioItem } from "./FormRadioItem";
export { default as FormSelect } from "./FormSelect";
export { default as FormSet } from "./FormSet";
export { default as FormTextarea } from "./FormTextarea";

View File

@@ -0,0 +1,14 @@
import * as React from "react";
export type IconSize = "s" | "m" | "l" | "xl";
export type IconProps = {
glyph: string;
className?: string;
/* Size of the icon. Options include **xs**, **s**, **compact**, and **l**. If no size is provided, default (normal) will be used. */
size?: IconSize;
} & { [x: string]: any };
declare const Icon: React.FunctionComponent<IconProps>;
export default Icon;

View File

@@ -0,0 +1 @@
export { default as Icon } from "./Icon";

View File

@@ -0,0 +1,31 @@
import * as React from "react";
export type IdentifierModifiers = "circle" | "transparent";
export type IdentifierSizes = "xxs" | "xs" | "s" | "m" | "l" | "xl" | "xxl";
export type IdentifierProps = {
/* Image URL. */
backgroundImageUrl?: string;
className?: string;
/* Applies a background color. */
color?: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9;
glyph?: string;
/* Localized text for label. */
label?: string;
modifier?: IdentifierModifiers;
/* Size of the image. These sizes are available:
**xxs** (extra extra small) - 20px,
**xs** (extra small) - 28px,
**s** (small) - 32px,
**m** (medium) - 48px,
**l** (large) - 64px,
**xl** (extra lagre) - 88px,
and **xxl** (extra extra large).
Default matches the base font size (14px). */
size: IdentifierSizes;
} & { [x: string]: any };
declare const Identifier: React.FunctionComponent<IdentifierProps>;
export default Identifier;

View File

@@ -0,0 +1 @@
export { default as Identifier } from "./Identifier";

View File

@@ -0,0 +1,15 @@
import * as React from "react";
export type imageSize = "s" | "m" | "l";
export type imageType = "circle";
export type ImageProps = {
/* Picture URL. */
photo: string;
size: imageSize;
className?: string;
type?: imageType;
} & { [x: string]: any };
declare const Image: React.FunctionComponent<ImageProps>;
export default Image;

View File

@@ -0,0 +1 @@
export { default as Image } from "./Image";

View File

@@ -0,0 +1,20 @@
import * as React from "react";
export type InlineHelpPlacement =
| "bottom-right"
| "bottom-left"
| "right"
| "left"
| "bottom-center";
export type InlineHelpProps = {
/* Location to display the inline help pop-up relative to the image. */
placement: InlineHelpPlacement;
/* Localized text to display in the inline help pop-up. */
text: string;
className?: string;
} & { [x: string]: any };
declare const InlineHelp: React.FunctionComponent<InlineHelpProps>;
export default InlineHelp;

View File

@@ -0,0 +1 @@
export { default as InlineHelp } from "./InlineHelp";

View File

@@ -0,0 +1,5 @@
import * as React from "react";
declare const FormGroup: React.FunctionComponent<{ [x: string]: any }>;
export default FormGroup;

View File

@@ -0,0 +1,48 @@
import * as React from "react";
export type InputGroupAddonPosition = "before" | "after";
export type InputGroupTypes = "text" | "number" | "search";
export type InputGroupProps = {
/* Set to **true** to enable an input with actions. Actions can be shown with a text label or icon. */
actions?: boolean;
/* The value of the add-on. */
addon?: string;
/* Location of the add-on relative to the input. */
addonPos?: InputGroupAddonPosition;
className?: string;
compact?: boolean;
glyph?: string;
/* CSS class(es) to add to the `<input>` element. */
inputClassName?: string;
/* Value for the `id` attribute on the `<input>` element. */
inputId?: string;
/* Value for the `name` attribute on the `<input>` element. */
inputName?: string;
/* Value for the `placeholder` attribute on the `<input>` element. */
inputPlaceholder?: string;
inputProps?: { [x: string]: any };
/* Value for the `type` attribute on the `<input>` element. */
inputType?: InputGroupTypes;
/* Value for the `value` attribute on the `<input>` element. */
inputValue?: any;
localizedText?: {
/* Value for aria-label on the clear <button> element. */
clear: string;
/* Value for aria-label on the down <button> element. */
down: string;
/* Value for aria-label on the up <button> element. */
up: string;
};
/* Additional props to be spread to the down `<button>` element (for inputType='number'). */
numberDownButtonProps?: { [x: string]: any };
/* Additional props to be spread to the up `<button>` element (for inputType='number'). */
numberUpButtonProps?: { [x: string]: any };
/* Additional props to be spread to the `<button>` element. */
searchButtonProps?: { [x: string]: any };
} & { [x: string]: any };
declare class InputGroup extends React.Component<InputGroupProps> {}
export default InputGroup;

View File

@@ -0,0 +1,2 @@
export { default as InputGroup } from "./InputGroup";
export { default as FormGroup } from "./FormGroup";

View File

@@ -0,0 +1,27 @@
import * as React from "react";
export type ListGroupProps = {
className?: string;
} & { [x: string]: any };
export type ListGroupItemProps = {
className?: string;
} & { [x: string]: any };
export type ListGroupItemActionsProps = {
className?: string;
} & { [x: string]: any };
export type ListGroupItemCheckboxProps = {
className?: string;
inputProps?: { [x: string]: any };
labelProps?: { [x: string]: any };
} & { [x: string]: any };
declare const ListGroup: React.FunctionComponent<ListGroupProps> & {
Item: React.FunctionComponent<ListGroupItemProps>;
ItemActions: React.FunctionComponent<ListGroupItemActionsProps>;
ItemCheckbox: React.FunctionComponent<ListGroupItemCheckboxProps>;
};
export default ListGroup;

View File

@@ -0,0 +1 @@
export { default as ListGroup } from "./ListGroup";

View File

@@ -0,0 +1,34 @@
import * as React from "react";
export type LocalizationEditorProps = {
/* A collection of properties to apply to the `<label>`, `<input>`/`<textarea>` and `<button>` elements. */
control: {
buttonProps?: { [x: string]: any };
inputProps?: { [x: string]: any };
labelProps?: { [x: string]: any };
/* Localized text for the `<label>` element. */
label?: string;
placeholder?: string;
/* Text to display on the `<button>` element. Meant to be the language of the text in the `<input>`/`<textarea>` element. */
language?: string;
};
/* An array of objects that represent the values of the elements in the dropdown menu. The shape of the objects in the array is `{ placeholder: string, language: string, inputProps: object }`. */
menu: Array<{
inputProps?: { [x: string]: any };
placeholder?: string;
language?: string;
}>;
className?: string;
compact?: boolean;
id?: string;
listProps?: { [x: string]: any };
popoverProps?: { [x: string]: any };
/* Set to **true** to enable a Localization Editor with a textarea. */
textarea?: boolean;
} & { [x: string]: any };
declare const LocalizationEditor: React.FunctionComponent<
LocalizationEditorProps
>;
export default LocalizationEditor;

View File

@@ -0,0 +1 @@
export { default as LocalizationEditor } from "./LocalizationEditor";

View File

@@ -0,0 +1,42 @@
import * as React from "react";
export type MenuProps = {
/* Set to **true** enables menu items with add-on before. */
addonBefore?: boolean;
className?: string;
} & { [x: string]: any };
export type MenuGroupProps = {
title: string;
className?: string;
headingLevel?: 2 | 3 | 4 | 5 | 6;
titleProps?: { [x: string]: any };
} & { [x: string]: any };
export type MenuItemProps = {
/* Name of the SAP icon to be applied as an add-on before. */
addon?: string;
/* Additional props to be spread to the add-on section. */
addonProps?: { [x: string]: any };
className?: string;
/* Set to **true** to style as a link. */
isLink?: boolean;
/* Set to **true** to add a horizontal line (separator). */
separator?: boolean;
/* Enables use of `<a>` element. Value to be applied to the anchor's `href` attribute. Should use either `link` or `url`, but not both. */
url?: string;
/* Additional props to be spread to the Menu Item links (when using `url`). */
urlProps?: { [x: string]: any };
} & { [x: string]: any };
export type MenuListProps = {
className?: string;
} & { [x: string]: any };
declare const Menu: React.FunctionComponent<MenuProps> & {
Group: React.FunctionComponent<MenuGroupProps>;
Item: React.FunctionComponent<MenuItemProps>;
List: React.FunctionComponent<MenuListProps>;
};
export default Menu;

View File

@@ -0,0 +1 @@
export { default as Menu } from "./Menu";

View File

@@ -0,0 +1,31 @@
import * as React from "react";
export type ModalProps = {
title: string;
/* Node(s) to render within the footer of the dialog. */
actions?: React.ReactNode;
/* Additional props to be spread to the body section of the dialog. */
bodyProps?: { [x: string]: any };
/* Additional props to be spread to the close `<button>` element. */
closeProps?: { [x: string]: any };
/* Additional props to be spread to the content section of the dialog. */
contentProps?: { [x: string]: any };
/* Additional props to be spread to the footer of the dialog. */
footerProps?: { [x: string]: any };
/* Additional props to be spread to the header of the dialog. */
headerProps?: { [x: string]: any };
headingLevel?: 2 | 3 | 4 | 5 | 6;
localizedText?: {
/* Aria-label for <button> element. */
closeButton: string;
};
/* Set to **true** to make the dialog visible. */
show?: boolean;
titleProps?: { [x: string]: any };
/* Callback function passing event when close button is clicked. */
onClose?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
} & { [x: string]: any };
declare class Modal extends React.Component<ModalProps> {}
export default Modal;

View File

@@ -0,0 +1 @@
export { default as Modal } from "./Modal";

View File

@@ -0,0 +1,25 @@
import * as React from "react";
export type MultiInputProps = {
/* Collection of items to display in the list. */
data: Array<string | number | string[]>;
buttonProps?: { [x: string]: any };
className?: string;
compact?: boolean;
inputProps?: { [x: string]: any };
listProps?: { [x: string]: any };
localizedText?: {
/* Aria-label in <div> element for image. */
imageLabel: string;
};
/* Localized placeholder text of the input. */
placeHolder?: string;
/* Additional props to be spread to the tags `<div>` element. */
tagProps?: { [x: string]: any };
/* Callback function when a tag is added or removed. Returns array of tags selected. */
onTagsUpdate: (tags: string[]) => void;
} & { [x: string]: any };
declare class MultiInput extends React.Component<MultiInputProps> {}
export default MultiInput;

View File

@@ -0,0 +1 @@
export { default as MultiInput } from "./MultiInput";

View File

@@ -0,0 +1,32 @@
import * as React from "react";
export type PaginationProps = {
/* Total number of items. itemsTotal / itemsPerPage calculates how many navigation items should be shown in the control. */
itemsTotal: number;
onClick: (page: number) => void;
className?: string;
/* Set to **true** to show total number of items along with `totalText` string. */
displayTotal?: boolean;
/* Initial page to be selected. */
initialPage?: number;
/* Number of items to display on page. */
itemsPerPage?: number;
/* Additional props to be spread to the page number `<a>` elements. */
linkProps?: { [x: string]: any };
localizedText?: {
/* Value for aria-label on the next <a> element. */
next: string;
/* Value for aria-label on the previous <a> element. */
previous: string;
};
/* Additional props to be spread to the next arrow `<a>` element. */
nextProps?: { [x: string]: any };
/* Additional props to be spread to the previous arrow `<a>` element. */
prevProps?: { [x: string]: any };
/* Localized text to display next to the total number of items. Used with `displayTotal`. */
totalText?: string;
} & { [x: string]: any };
declare class Pagination extends React.Component<PaginationProps> {}
export default Pagination;

View File

@@ -0,0 +1 @@
export { default as Pagination } from "./Pagination";

View File

@@ -0,0 +1,47 @@
import * as React from "react";
export type PanelProps = {
className?: string;
/* The number of columns to span inside a `PanelGrid`. */
colSpan?: 1 | 2 | 3 | 4 | 5 | 6;
} & { [x: string]: any };
export type PanelActionsProps = {
className?: string;
} & { [x: string]: any };
export type PanelBodyProps = {
className?: string;
} & { [x: string]: any };
export type PanelFiltersProps = {
className?: string;
} & { [x: string]: any };
export type PanelFooterProps = {
className?: string;
} & { [x: string]: any };
export type PanelHeadProps = {
className?: string;
/* Localized text for the description of the panel. */
description?: string;
headingLevel?: 2 | 3 | 4 | 5 | 6;
/* Localized text for the title of the panel. */
title?: string;
} & { [x: string]: any };
export type PanelHeaderProps = {
className?: string;
} & { [x: string]: any };
declare const Panel: React.FunctionComponent<PanelProps> & {
Actions: React.FunctionComponent<PanelActionsProps>;
Body: React.FunctionComponent<PanelBodyProps>;
Filters: React.FunctionComponent<PanelFiltersProps>;
Footer: React.FunctionComponent<PanelFooterProps>;
Head: React.FunctionComponent<PanelHeadProps>;
Header: React.FunctionComponent<PanelHeaderProps>;
};
export default Panel;

View File

@@ -0,0 +1,13 @@
import * as React from "react";
export type PanelGridProps = {
className?: string;
/* The number of columns in the grid. */
cols?: 1 | 2 | 3 | 4 | 5 | 6;
/* Set to **true** to remove the margins between the panels. */
nogap?: boolean;
} & { [x: string]: any };
declare const PanelGrid: React.FunctionComponent<PanelGridProps>;
export default PanelGrid;

View File

@@ -0,0 +1,2 @@
export { default as Panel } from "./Panel";
export { default as PanelGrid } from "./PanelGrid";

View File

@@ -0,0 +1,38 @@
import * as React from "react";
export type PopperPlacement =
| "bottom-start"
| "bottom"
| "bottom-end"
| "left-start"
| "left"
| "left-end"
| "right-start"
| "right"
| "right-end"
| "top-start"
| "top"
| "top-end";
export type PopoverProps = {
/* Node(s) to render in the overlay. */
body: React.ReactNode;
/* Node to render as the reference element (that the `body` will be placed in relation to). */
control: React.ReactNode;
className?: string;
disabled?: boolean;
/* Set to **true** to render a popover without an arrow. */
noArrow?: boolean;
/* Initial position of the `body` (overlay) related to the `control`. */
placement?: PopperPlacement;
/* Additional props to be spread to the overlay element. */
popperProps?: { [x: string]: any };
/* Callback for consumer clicking outside of popover body. */
onClickOutside?: (event: MouseEvent | TouchEvent | FocusEvent) => void;
/* Callback when escape key is pressed when popover body is visible. */
onEscapeKey?: () => void;
} & { [x: string]: any };
declare class Popover extends React.Component<PopoverProps> {}
export default Popover;

View File

@@ -0,0 +1 @@
export { default as Popover } from "./Popover";

View File

@@ -0,0 +1,23 @@
import * as React from "react";
export type SearchInputProps = {
className?: string;
compact?: boolean;
inputProps?: { [x: string]: any };
inShellbar?: boolean;
listProps?: { [x: string]: any };
/* Set to **true** to render without a search button. */
noSearchBtn?: boolean;
placeholder?: string;
/* Additional props to be spread to the search `<button>` element. */
searchBtnProps?: { [x: string]: any };
/* Collection of items to display in the dropdown list. */
searchList?: Array<{ text: string; callback: () => void }>;
onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
/* Callback function when the user hits the <Enter> key. */
onEnter?: (value?: string | number | string[]) => void;
} & { [x: string]: any };
declare class SearchInput extends React.Component<SearchInputProps> {}
export default SearchInput;

View File

@@ -0,0 +1 @@
export { default as SearchInput } from "./SearchInput";

View File

@@ -0,0 +1,74 @@
import * as React from "react";
import { IconSize } from "../Icon/Icon";
export type ShellbarProps = {
/* Holds all product actions and links. */
actions?: Array<{
menu?: React.ReactNode;
label?: string;
glyph: string;
notificationCount: number;
callback?: (
event: React.MouseEvent<HTMLButtonElement, MouseEvent>
) => void;
}>;
className?: string;
/* For use with applications that utilize CoPilot. */
copilot?: boolean;
localizedText?: {
/* Aria-label for <span> element within the <button> element. */
counterLabel: string;
/* Aria-label for <button> element. */
notificationsButton: string;
};
/* Provide an img tag for a logo other than the SAP logo. One of the two props (`logo` or `logoSAP`) should be set. */
logo?: React.ReactNode;
/* Renders the SAP logo in the Shellbar. One of the two props (`logo` or `logoSAP`) should be set. */
logoSAP?: boolean;
/* Information about pending notifications. */
notifications?: {
notificationsBody?: React.ReactNode;
noNotificationsBody?: React.ReactNode;
notificationCount: number;
label?: string;
callback?: (
event: React.MouseEvent<HTMLButtonElement, MouseEvent>
) => void;
};
/* Holds product titles and navigation. */
productMenu?: Array<{
link?: string;
callback?: (...args: any[]) => void;
url?: string;
glyph?: string;
size?: IconSize;
name?: React.ReactNode;
}>;
/* For navigating between products. */
productSwitcher?: object;
/* List of the products. */
productSwitcherList?: Array<{
title: string;
link?: string;
url?: string;
glyph: string;
image: string;
callback?: (
event: React.MouseEvent<HTMLButtonElement, MouseEvent>
) => void;
}>;
/* Displays the current application when no product menu is used. */
productTitle?: string;
/* User information (_e.g._ name, initials, etc.) */
profile?: { [x: string]: any };
/* List of items for the profile menu. */
profileMenu?: Array<{ [x: string]: any }>;
/* Holds `searchInput` properties. */
searchInput?: { [x: string]: any };
/* Displays an application context. Should be used rarely. */
subtitle?: string;
} & { [x: string]: any };
declare class Shellbar extends React.Component<ShellbarProps> {}
export default Shellbar;

View File

@@ -0,0 +1 @@
export { default as Shellbar } from "./Shellbar";

View File

@@ -0,0 +1,53 @@
import * as React from "react";
export type SideNavigationProps = {
className?: string;
/* Set to **true** to only render icons for each `SideNavListItem`. */
icons?: boolean;
/* The `id` of the selected `SideNavListItem`. */
selectedId?: string;
/* Callback function when a navigation item is selected. Arguments passed are the event and the id of the selected item. */
onItemSelect?: (e: any, id: any) => void;
} & { [x: string]: any };
export type SideNavListProps = {
className?: string;
/* _INTERNAL USE ONLY._ */
hasParent?: boolean;
headingLevel?: 2 | 3 | 4 | 5 | 6;
/* _INTERNAL USE ONLY._ */
open?: boolean;
/* _INTERNAL USE ONLY._ */
selectedId?: string;
title?: string;
titleProps?: { [x: string]: any };
/* _INTERNAL USE ONLY._ */
onItemSelect?: (e: any, id: any) => void;
} & { [x: string]: any };
export type SideNavListItemProps = {
/* Set to **true** to have this item initially render as expanded and its children items shown. */
expanded?: boolean;
glyph?: string;
id?: string;
/* _INTERNAL USE ONLY._ */
isSubItem?: boolean;
/* Localized text for the item (when `url` is provided). */
name?: string;
/* _INTERNAL USE ONLY._ */
selected?: boolean;
/* _INTERNAL USE ONLY._ */
selectedId?: string;
/* Enables use of `<a>` element. Value to be applied to the anchor\'s `href` attribute. */
url?: string;
onClick?: (e: React.MouseEvent) => void;
/* _INTERNAL USE ONLY._ */
onItemSelect?: (e: React.MouseEvent, id: any, hasChild: boolean) => void;
} & { [x: string]: any };
declare class SideNav extends React.Component<SideNavigationProps> {
static List: React.ComponentClass<SideNavListProps>;
static ListItem: React.ComponentClass<SideNavListItemProps>;
}
export default SideNav;

View File

@@ -0,0 +1 @@
export { default as SideNav } from "./SideNav";

View File

@@ -0,0 +1,23 @@
import * as React from "react";
export type TableProps = {
/* Array of localized text strings for the column headers. */
headers: Array<string | React.ReactNode>;
/* Array of objects that contain one property: `rowData` (an array of strings containing data for each column in the row). */
tableData?: Array<{ rowData: Array<string | React.ReactNode> }>;
className?: string;
/* Additional props to be spread to the `<tbody>` element. */
tableBodyProps?: { [x: string]: any };
/* Additional props to be spread to the `<tr>` elements within `<tbody>`. If using a function, the parameters passed will be an object representing the row (from `tableData`) and the row index. */
tableBodyRowProps?:
| { [x: string]: any }
| ((rowData: string[], index: number) => void);
/* Additional props to be spread to the `<thead>` element. */
tableHeaderProps?: { [x: string]: any };
/* Additional props to be spread to the `<tr>` element within `<thead>`. */
tableHeaderRowProps?: { [x: string]: any };
} & { [x: string]: any };
declare const Table: React.FunctionComponent<TableProps>;
export default Table;

View File

@@ -0,0 +1 @@
export { default as Table } from "./Table";

View File

@@ -0,0 +1,28 @@
import * as React from "react";
export type TabProps = {
className?: string;
disabled?: boolean;
/* Icon to display on the tab. */
glyph?: string;
id?: string;
/* _INTERNAL USE ONLY._ */
index?: number;
/* Additional props to be spread to the tab\'s <a> element. */
linkProps?: { [x: string]: any };
/* _INTERNAL USE ONLY._ */
selected?: boolean;
/* Additional props to be spread to the tab content's <div> element. */
tabContentProps?: { [x: string]: any };
/* Localized text to display on the tab. */
title?: string;
/* _INTERNAL USE ONLY._ */
onClick?: (
event: React.MouseEvent<HTMLAnchorElement, MouseEvent>,
index: number
) => void;
} & { [x: string]: any };
declare const Tab: React.FunctionComponent<TabProps>;
export default Tab;

View File

@@ -0,0 +1,13 @@
import * as React from "react";
export type TabGroupProps = {
className?: string;
/* The index of the selected tab. */
selectedIndex?: number;
/* Callback function when the user clicks on a tab. Parameters passed to the function are `event` and `index`. */
onTabClick?: (event: React.MouseEvent, index?: number) => void;
} & { [x: string]: any };
declare class TabGroup extends React.Component<TabGroupProps> {}
export default TabGroup;

View File

@@ -0,0 +1,2 @@
export { default as Tab } from "./Tab";
export { default as TabGroup } from "./TabGroup";

View File

@@ -0,0 +1,24 @@
export type ProductTileProps = {
className?: string;
disabled?: boolean;
} & { [x: string]: any };
export type ProductTileMediaProps = {
/* URL of the image. */
image: string;
className?: string;
} & { [x: string]: any };
export type ProductTileContentProps = {
className?: string;
headingLevel?: 2 | 3 | 4 | 5 | 6;
title?: string;
titleProps?: { [x: string]: any };
} & { [x: string]: any };
declare const ProductTile: React.FunctionComponent<ProductTileProps> & {
Content: React.FunctionComponent<ProductTileContentProps>;
Media: React.FunctionComponent<ProductTileMediaProps>;
};
export default ProductTile;

View File

@@ -0,0 +1,35 @@
export type TileProps = {
/* Sets a background color class. */
backgroundColor?: number;
className?: string;
/* Sets a background color accent class. Options include numbers from 1 to 9. */
colorAccent?: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9;
/* Number of columns the tile covers. */
columnSpan?: 1 | 2 | 3 | 4 | 5 | 6;
disabled?: boolean;
/* Number of rows the tile covers. */
rowSpan?: number;
} & { [x: string]: any };
export type TileActionsProps = {
className?: string;
} & { [x: string]: any };
export type TileContentProps = {
title: string;
className?: string;
headingLevel?: 2 | 3 | 4 | 5 | 6;
titleProps?: { [x: string]: any };
} & { [x: string]: any };
export type TileMediaProps = {
className?: string;
} & { [x: string]: any };
declare const Tile: React.FunctionComponent<TileProps> & {
Actions: React.FunctionComponent<TileActionsProps>;
Content: React.FunctionComponent<TileContentProps>;
Media: React.FunctionComponent<TileMediaProps>;
};
export default Tile;

View File

@@ -0,0 +1,8 @@
export type TileGridProps = {
className?: string;
col?: 1 | 2 | 3 | 4 | 5 | 6;
} & { [x: string]: any };
declare const TileGrid: React.FunctionComponent<TileGridProps>;
export default TileGrid;

View File

@@ -0,0 +1,3 @@
export { default as ProductTile } from "./ProductTile";
export { default as Tile } from "./Tile";
export { default as TileGrid } from "./TileGrid";

View File

@@ -0,0 +1,64 @@
import * as React from "react";
export interface TimeBaseProps {
/* Set to **true** to use the 12-hour clock (hours ranging from 01 to 12) and to display a meridiem control. */
format12Hours?: boolean;
/* Enables the input for hours. */
showHour?: boolean;
/* Enables the input for minutes. */
showMinute?: boolean;
/* Enables the input for seconds. */
showSecond?: boolean;
/* Set to **true** to show up/down buttons for each input. */
spinners?: boolean;
/* The time component values. Contains four properties:
**hour** (with values from 01 to 12 when `format12Hours` is true or 00 to 23 when `format12Hours` is false),
**minute** (with values from 00 to 59), **second** (with values from 00 to 59),
**meridiem** (with values 0 for AM or 1 for PM). */
time?: { hour: string; minute: string; second: string; meridiem: 0 | 1 };
}
export type TimeProps = TimeBaseProps & {
disabled?: boolean;
/* Additional props to be spread to the hours down `<button>` element. */
hoursDownButtonProps?: { [x: string]: any };
/* Additional props to be spread to the hours `<input>` element. */
hoursInputProps?: { [x: string]: any };
/* Additional props to be spread to the hours up `<button>` element. */
hoursUpButtonProps?: { [x: string]: any };
id?: string;
localizedText?: {
/* Ante meridiem for 12 hour clock. */
meridiemAM: string;
/* Post meridiem for 12 hour clock. */
meridiemPM: string;
};
/* Additional props to be spread to the meridiem down `<button>` element. */
meridiemDownButtonProps?: { [x: string]: any };
/* Additional props to be spread to the meridiem `<input>` element. */
meridiemInputProps?: { [x: string]: any };
/* Additional props to be spread to the meridiem up `<button>` element. */
meridiemUpButtonProps?: { [x: string]: any };
/* Additional props to be spread to the minutes down `<button>` element. */
minutesDownButtonProps?: { [x: string]: any };
/* Additional props to be spread to the minutes `<input>` element. */
minutesInputProps?: { [x: string]: any };
/* Additional props to be spread to the minutes up `<button>` element. */
minutesUpButtonProps?: { [x: string]: any };
/* Additional props to be spread to the seconds down `<button>` element. */
secondsDownButtonProps?: { [x: string]: any };
/* Additional props to be spread to the seconds `<input>` element. */
secondsInputProps?: { [x: string]: any };
/* Additional props to be spread to the seconds up `<button>` element. */
secondsUpButtonProps?: { [x: string]: any };
onChange?: (time: {
hour: string;
minute: string;
second: string;
meridiem: 0 | 1;
}) => void;
} & { [x: string]: any };
declare class Time extends React.Component<TimeProps> {}
export default Time;

View File

@@ -0,0 +1 @@
export { default as Time } from "./Time";

View File

@@ -0,0 +1,23 @@
import * as React from "react";
import { TimeBaseProps } from "../Time/Time";
export type TimePickerProps = TimeBaseProps & {
buttonProps?: { [x: string]: any };
disabled?: boolean;
id?: string;
inputProps?: { [x: string]: any };
localizedText?: {
/* Ante meridiem for 12 hour clock. */
meridiemAM: string;
/* Post meridiem for 12 hour clock. */
meridiemPM: string;
};
/* Additional props to be spread to the `Time` component. */
timeProps?: { [x: string]: any };
/* Initial time value for the input. */
value?: string;
} & { [x: string]: any };
declare class TimePicker extends React.Component<TimePickerProps> {}
export default TimePicker;

View File

@@ -0,0 +1 @@
export { default as TimePicker } from "./TimePicker";

View File

@@ -0,0 +1,18 @@
import * as React from "react";
export type ToggleSize = "xs" | "s" | "m" | "l";
export type ToggleProps = {
checked?: boolean;
className?: string;
disabled?: boolean;
id?: string;
inputProps?: { [x: string]: any };
labelProps?: { [x: string]: any };
size?: ToggleSize;
onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
} & { [x: string]: any };
declare class Toggle extends React.Component<ToggleProps> {}
export default Toggle;

View File

@@ -0,0 +1 @@
export { default as Toggle } from "./Toggle";

View File

@@ -0,0 +1,9 @@
import * as React from "react";
export type TokenProps = {
className?: string;
} & { [x: string]: any };
declare const Token: React.FunctionComponent<TokenProps>;
export default Token;

View File

@@ -0,0 +1 @@
export { default as Token } from "./Token";

View File

@@ -0,0 +1,79 @@
import * as React from "react";
export type TreeViewProps = {
/* Object with rowId keys and boolean values representing whether that row is expanded. This variable is handled internally, but can be overridden by the consumer through this prop. */
expandData?: { [rowId: string]: boolean };
/* Set to *true* for an expanded tree. This variable is handled internally, but can be overridden by the consumer through this prop */
isExpandAll?: boolean;
/* Callback that is called whenever the internal expand/collapse state changes. The argument is an an object with rowId keys and boolean values representing whether that row is expanded. */
onExpandChange?: (expandData: { [rowId: string]: boolean }) => void;
} & { [x: string]: any };
export type TreeProps = {
/* _INTERNAL USE ONLY._ */
expandData?: { [rowId: string]: boolean };
/* _INTERNAL USE ONLY._ */
isExpanded?: boolean;
/* _INTERNAL USE ONLY._ */
onExpandClick?: (...args: any[]) => void;
} & { [x: string]: any };
export type TreeBranchProps = {
/* _INTERNAL USE ONLY._ */
expandData?: { [rowId: string]: boolean };
/* _INTERNAL USE ONLY._ */
isExpanded?: boolean;
/* _INTERNAL USE ONLY._ */
level?: number;
/* _INTERNAL USE ONLY._ */
onExpandClick?: (...args: any[]) => void;
} & { [x: string]: any };
export type TreeColProps = {
className?: string;
} & { [x: string]: any };
export type TreeHeadProps = {
/* Additional props to be spread to the header expand/collapse `<button>` element. */
buttonProps?: { [x: string]: any };
className?: string;
/* _INTERNAL USE ONLY._ */
isExpanded?: boolean;
/* _INTERNAL USE ONLY._ */
onExpandAll?: (...args: any[]) => void;
} & { [x: string]: any };
export type TreeItemProps = {
/* _INTERNAL USE ONLY._ */
expandData?: { [rowId: string]: boolean };
/* Set to *true* for expanded tree item. This variable is handled internally, but can be overridden by the consumer through this prop. */
isExpanded?: boolean;
/* _INTERNAL USE ONLY._ */
level?: number;
/* ID used to track the expanded/collapsed state of the row. This variable is handled internally, but can be overridden by the consumer through this prop. */
rowId?: string;
/* _INTERNAL USE ONLY._ */
onExpandClick?: (...args: any[]) => void;
} & { [x: string]: any };
export type TreeRowProps = {
/* _INTERNAL USE ONLY._ */
isExpanded?: boolean;
/* _INTERNAL USE ONLY._ */
isParent?: boolean;
/* _INTERNAL USE ONLY._ */
rowId?: string;
/* _INTERNAL USE ONLY._ */
onExpandClick?: (...args: any[]) => void;
} & { [x: string]: any };
declare class TreeView extends React.Component<TreeViewProps> {
static Tree: React.ComponentClass<TreeProps>;
static Branch: React.ComponentClass<TreeBranchProps>;
static Col: React.ComponentClass<TreeColProps>;
static Head: React.ComponentClass<TreeHeadProps>;
static Item: React.ComponentClass<TreeItemProps>;
static Row: React.ComponentClass<TreeRowProps>;
}
export default TreeView;

View File

@@ -0,0 +1 @@
export { default as TreeView } from "./TreeView";

46
types/fundamental-react/lib/index.d.ts vendored Normal file
View File

@@ -0,0 +1,46 @@
export { ActionBar } from "./ActionBar/index";
export { Alert } from "./Alert/index";
export { Badge, Counter, Label, Status } from "./Badge/index";
export { Breadcrumb } from "./Breadcrumb/index";
export { Button, ButtonGroup } from "./Button/index";
export { Calendar } from "./Calendar/index";
export { ComboboxInput } from "./ComboboxInput/index";
export { DatePicker } from "./DatePicker/index";
export { Dropdown } from "./Dropdown/index";
export {
FormFieldset,
FormInput,
FormItem,
FormLabel,
FormLegend,
FormMessage,
FormRadioGroup,
FormRadioItem,
FormSelect,
FormSet,
FormTextarea
} from "./Forms/index";
export { Icon } from "./Icon/index";
export { Identifier } from "./Identifier/index";
export { Image } from "./Image/index";
export { InlineHelp } from "./InlineHelp/index";
export { FormGroup, InputGroup } from "./InputGroup/index";
export { ListGroup } from "./ListGroup/index";
export { LocalizationEditor } from "./LocalizationEditor/index";
export { Menu } from "./Menu/index";
export { Modal } from "./Modal/index";
export { MultiInput } from "./MultiInput/index";
export { Pagination } from "./Pagination/index";
export { Panel, PanelGrid } from "./Panel/index";
export { Popover } from "./Popover/index";
export { SearchInput } from "./SearchInput/index";
export { Shellbar } from "./Shellbar/index";
export { SideNav } from "./SideNavigation/index";
export { Table } from "./Table/index";
export { Tab, TabGroup } from "./Tabs/index";
export { ProductTile, Tile, TileGrid } from "./Tile/index";
export { Time } from "./Time/index";
export { TimePicker } from "./TimePicker/index";
export { Toggle } from "./Toggle/index";
export { Token } from "./Token/index";
export { TreeView } from "./TreeView/index";

View File

@@ -0,0 +1,55 @@
{
"compilerOptions": {
"module": "commonjs",
"lib": ["es6", "dom"],
"noImplicitAny": true,
"noImplicitThis": true,
"strictNullChecks": true,
"strictFunctionTypes": true,
"baseUrl": "../",
"typeRoots": ["../"],
"jsx": "react",
"types": [],
"noEmit": true,
"forceConsistentCasingInFileNames": true
},
"files": [
"index.d.ts",
"fundamental-react-tests.tsx",
"lib/index.d.ts",
"lib/ActionBar/index.d.ts",
"lib/Alert/index.d.ts",
"lib/Badge/index.d.ts",
"lib/Breadcrumb/index.d.ts",
"lib/Button/index.d.ts",
"lib/Calendar/index.d.ts",
"lib/ComboboxInput/index.d.ts",
"lib/DatePicker/index.d.ts",
"lib/Dropdown/index.d.ts",
"lib/Forms/index.d.ts",
"lib/Icon/index.d.ts",
"lib/Identifier/index.d.ts",
"lib/Image/index.d.ts",
"lib/InlineHelp/index.d.ts",
"lib/InputGroup/index.d.ts",
"lib/ListGroup/index.d.ts",
"lib/LocalizationEditor/index.d.ts",
"lib/Menu/index.d.ts",
"lib/Modal/index.d.ts",
"lib/MultiInput/index.d.ts",
"lib/Pagination/index.d.ts",
"lib/Panel/index.d.ts",
"lib/Popover/index.d.ts",
"lib/SearchInput/index.d.ts",
"lib/Shellbar/index.d.ts",
"lib/SideNavigation/index.d.ts",
"lib/Table/index.d.ts",
"lib/Tabs/index.d.ts",
"lib/Tile/index.d.ts",
"lib/Time/index.d.ts",
"lib/TimePicker/index.d.ts",
"lib/Toggle/index.d.ts",
"lib/Token/index.d.ts",
"lib/TreeView/index.d.ts"
]
}

View File

@@ -0,0 +1,3 @@
{
"extends": "dtslint/dt.json"
}