@splunk/react-ui 4.16.2 → 4.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (176) hide show
  1. package/Accordion.js +13 -13
  2. package/Anchor.js +2 -2
  3. package/Animation.js +4 -4
  4. package/AnimationToggle.js +2 -2
  5. package/Box.js +2 -2
  6. package/Button.js +98 -244
  7. package/ButtonGroup.js +4 -4
  8. package/ButtonSimple.js +6 -6
  9. package/CHANGELOG.md +50 -2
  10. package/Calendar.js +73 -274
  11. package/Card.js +75 -227
  12. package/CardLayout.js +2 -2
  13. package/Chip.js +40 -211
  14. package/Clickable.js +10 -10
  15. package/CloseButton.js +34 -202
  16. package/Code.js +27 -20
  17. package/CollapsiblePanel.js +74 -228
  18. package/Color.js +62 -319
  19. package/ColumnLayout.js +6 -6
  20. package/ComboBox.js +32 -32
  21. package/Concertina.js +38 -38
  22. package/ControlGroup.js +20 -20
  23. package/Date.js +22 -22
  24. package/DefinitionList.js +2 -2
  25. package/Divider.js +2 -2
  26. package/Dropdown.js +29 -29
  27. package/DualListbox.d.ts +2 -0
  28. package/DualListbox.js +1780 -0
  29. package/EventListener.js +4 -4
  30. package/File.js +85 -250
  31. package/FormRows.js +60 -215
  32. package/Heading.js +39 -27
  33. package/Image.js +73 -227
  34. package/JSONTree.js +18 -18
  35. package/Layer.js +30 -30
  36. package/Link.js +60 -28
  37. package/List.js +9 -9
  38. package/MIGRATION.md +28 -0
  39. package/Markdown.js +21 -21
  40. package/Menu.js +180 -371
  41. package/Message.js +137 -407
  42. package/MessageBar.js +168 -398
  43. package/Modal.js +31 -31
  44. package/ModalLayer.js +6 -6
  45. package/Monogram.js +4 -4
  46. package/Multiselect.js +2297 -2525
  47. package/Number.js +32 -32
  48. package/Paginator.js +92 -321
  49. package/Paragraph.js +2 -2
  50. package/Popover.js +287 -136
  51. package/Progress.js +15 -15
  52. package/RadioBar.js +23 -19
  53. package/RadioList.js +13 -12
  54. package/Resize.js +18 -18
  55. package/ResultsMenu.js +21 -21
  56. package/ScreenReaderContent.js +2 -2
  57. package/Scroll.js +33 -33
  58. package/ScrollContainerContext.js +13 -13
  59. package/Search.js +34 -32
  60. package/Select.js +220 -367
  61. package/SidePanel.js +12 -12
  62. package/Slider.js +28 -28
  63. package/SlidingPanels.js +29 -29
  64. package/SplitButton.js +59 -62
  65. package/StaticContent.js +4 -4
  66. package/StepBar.js +35 -238
  67. package/Switch.js +23 -23
  68. package/TabBar.js +30 -44
  69. package/TabLayout.js +30 -28
  70. package/Table.js +292 -586
  71. package/Text.js +109 -322
  72. package/TextArea.js +160 -366
  73. package/Tooltip.js +28 -132
  74. package/TransitionOpen.js +21 -21
  75. package/Typography.js +32 -28
  76. package/WaitSpinner.js +2 -2
  77. package/docker-compose.yml +19 -7
  78. package/package.json +10 -11
  79. package/stubs-splunkui.d.ts +4 -1
  80. package/types/src/Button/icons/CaretSmallDown.d.ts +2 -0
  81. package/types/src/Button/icons/External.d.ts +2 -0
  82. package/types/src/Code/Code.d.ts +6 -1
  83. package/types/src/CollapsiblePanel/CollapsiblePanel.d.ts +0 -1
  84. package/types/src/CollapsiblePanel/icons/ExpandPanel.d.ts +11 -0
  85. package/types/src/Date/Icon.d.ts +1 -1
  86. package/types/src/Dropdown/docs/examples/Submenu.d.ts +2 -0
  87. package/types/src/DualListbox/DualListbox.d.ts +87 -0
  88. package/types/src/DualListbox/DualListboxContext.d.ts +27 -0
  89. package/types/src/DualListbox/Label.d.ts +37 -0
  90. package/types/src/DualListbox/Listbox.d.ts +54 -0
  91. package/types/src/DualListbox/ListboxContext.d.ts +32 -0
  92. package/types/src/DualListbox/Option.d.ts +35 -0
  93. package/types/src/DualListbox/ScreenReaderWrapper.d.ts +4 -0
  94. package/types/src/DualListbox/ToolbarButton.d.ts +38 -0
  95. package/types/src/DualListbox/ToolbarContext.d.ts +21 -0
  96. package/types/src/DualListbox/docs/examples/Basic.d.ts +2 -0
  97. package/types/src/DualListbox/docs/examples/Controlled.d.ts +2 -0
  98. package/types/src/DualListbox/docs/examples/Fill.d.ts +2 -0
  99. package/types/src/DualListbox/index.d.ts +2 -0
  100. package/types/src/DualListbox/listboxUtils.d.ts +4 -0
  101. package/types/src/File/Icon.d.ts +1 -1
  102. package/types/src/File/IconCloud.d.ts +1 -1
  103. package/types/src/File/PaperClip.d.ts +1 -1
  104. package/types/src/File/Retry.d.ts +1 -1
  105. package/types/src/File/Trash.d.ts +1 -1
  106. package/types/src/File/docs/examples/Progress.d.ts +1 -15
  107. package/types/src/FormRows/icons/FormRowsPlusIcon.d.ts +2 -0
  108. package/types/src/Heading/Heading.d.ts +12 -4
  109. package/types/src/Heading/docs/examples/Variant.d.ts +2 -0
  110. package/types/src/Image/Image.d.ts +1 -1
  111. package/types/src/Image/icons/Cross.d.ts +2 -0
  112. package/types/src/Link/icons/External.d.ts +2 -0
  113. package/types/src/Menu/Divider.d.ts +1 -0
  114. package/types/src/Menu/Heading.d.ts +1 -0
  115. package/types/src/Menu/Item.d.ts +5 -2
  116. package/types/src/Menu/Menu.d.ts +3 -1
  117. package/types/src/Menu/icons/External.d.ts +2 -0
  118. package/types/src/Number/IncrementIcon.d.ts +1 -1
  119. package/types/src/Popover/Popover.d.ts +7 -9
  120. package/types/src/Popover/PopoverHitArea.d.ts +9 -0
  121. package/types/src/RadioBar/RadioBar.d.ts +1 -1
  122. package/types/src/Search/Option.d.ts +9 -0
  123. package/types/src/Select/OptionBase.d.ts +9 -0
  124. package/types/src/Select/icons/CaretSmallDown.d.ts +2 -0
  125. package/types/src/Select/icons/Search.d.ts +2 -0
  126. package/types/src/SplitButton/SplitButton.d.ts +8 -3
  127. package/types/src/SplitButton/docs/examples/Block.d.ts +1 -0
  128. package/types/src/TabLayout/TabLayout.d.ts +0 -1
  129. package/types/src/Table/HeadInner.d.ts +2 -2
  130. package/types/src/Table/icons/ExpansionRow.d.ts +6 -0
  131. package/types/src/Table/icons/HeadExpandRows.d.ts +1 -0
  132. package/types/src/Text/IconOutlinedHide.d.ts +1 -1
  133. package/types/src/Text/IconOutlinedView.d.ts +1 -1
  134. package/types/src/Tooltip/InfoIcon.d.ts +1 -1
  135. package/types/src/Tooltip/Tooltip.d.ts +0 -4
  136. package/types/src/Typography/Typography.d.ts +4 -7
  137. package/types/src/useRovingFocus/index.d.ts +2 -0
  138. package/types/src/useRovingFocus/useRovingFocus.d.ts +27 -0
  139. package/useForceUpdate.js +2 -2
  140. package/useKeyPress.js +2 -2
  141. package/usePrevious.js +2 -2
  142. package/useRovingFocus.d.ts +2 -0
  143. package/useRovingFocus.js +237 -0
  144. package/Dockerfile.enterprise.storybook +0 -7
  145. package/Dockerfile.prisma.storybook +0 -7
  146. package/Dockerfile.visual +0 -10
  147. package/types/src/File/docs/examples/CustomChildren.d.ts +0 -12
  148. package/types/src/File/docs/examples/prisma/Progress.d.ts +0 -1
  149. package/types/src/Select/matchUtils.d.ts +0 -12
  150. package/types/src/SplitButton/docs/examples/prisma/Basic.d.ts +0 -1
  151. package/types/src/SplitButton/docs/examples/prisma/Disabled.d.ts +0 -1
  152. package/types/src/Table/HeadExpandRowsIcon.d.ts +0 -1
  153. package/types/src/icons/Alert.d.ts +0 -2
  154. package/types/src/icons/AlertFilled.d.ts +0 -2
  155. package/types/src/icons/CaretDown.d.ts +0 -2
  156. package/types/src/icons/CaretRight.d.ts +0 -2
  157. package/types/src/icons/Check.d.ts +0 -2
  158. package/types/src/icons/ChevronDown.d.ts +0 -2
  159. package/types/src/icons/ChevronLeft.d.ts +0 -2
  160. package/types/src/icons/ChevronRight.d.ts +0 -2
  161. package/types/src/icons/CrossMark.d.ts +0 -2
  162. package/types/src/icons/External.d.ts +0 -2
  163. package/types/src/icons/InfoFilled.d.ts +0 -2
  164. package/types/src/icons/More.d.ts +0 -2
  165. package/types/src/icons/MoreVertical.d.ts +0 -2
  166. package/types/src/icons/Plus.d.ts +0 -2
  167. package/types/src/icons/SVG.d.ts +0 -4
  168. package/types/src/icons/Search.d.ts +0 -2
  169. package/types/src/icons/Sort.d.ts +0 -2
  170. package/types/src/icons/SortedDown.d.ts +0 -2
  171. package/types/src/icons/SortedUp.d.ts +0 -2
  172. package/types/src/icons/Success.d.ts +0 -2
  173. package/types/src/icons/SuccessFilled.d.ts +0 -2
  174. package/types/src/icons/ThemedIcon.d.ts +0 -29
  175. package/types/src/icons/WarningFilled.d.ts +0 -2
  176. package/types/src/icons/types.d.ts +0 -11
@@ -32,7 +32,10 @@ declare module '@splunk/ui-utils/format' {
32
32
  declare module '@splunk/ui-utils/focus' {
33
33
  // getSortedTabbableElements returns Elements
34
34
  // handleTab / takeFocus both call focus() which exists only on HTMLElement/SVGElement (modern browsers), but not Element
35
- function getSortedTabbableElements(container: Element): Element[];
35
+ function getSortedTabbableElements(
36
+ container: Element,
37
+ options?: { ignoreTabIndex: boolean }
38
+ ): Element[];
36
39
  function isTabKey(event: KeyboardEvent<Element>): boolean;
37
40
  function handleTab(container: Element, event: KeyboardEvent): Element | null;
38
41
  function takeFocus(container: Element, defaultElement?: 'first' | 'container'): Element | null;
@@ -0,0 +1,2 @@
1
+ declare const CaretSmallDown: () => JSX.Element;
2
+ export default CaretSmallDown;
@@ -0,0 +1,2 @@
1
+ declare function External(): JSX.Element;
2
+ export default External;
@@ -16,6 +16,10 @@ interface CodePropsBase {
16
16
  * Applies syntax highlighting for a specific programming language.
17
17
  */
18
18
  language?: CodeSupportedLanguages;
19
+ /**
20
+ * In cases where `language` is not valid `Code` will use this value as the fallback for `language`.
21
+ */
22
+ languageFallback?: CodeSupportedLanguages;
19
23
  /**
20
24
  * Displays the indent guideline.
21
25
  */
@@ -26,12 +30,13 @@ interface CodePropsBase {
26
30
  value?: string;
27
31
  }
28
32
  declare type CodeProps = ComponentProps<CodePropsBase, 'pre'>;
29
- declare function Code({ elementRef, indentChars, language, showIndentGuide, value, ...otherProps }: CodeProps): JSX.Element;
33
+ declare function Code({ elementRef, indentChars, language, languageFallback, showIndentGuide, value, ...otherProps }: CodeProps): JSX.Element;
30
34
  declare namespace Code {
31
35
  var propTypes: {
32
36
  elementRef: PropTypes.Requireable<object>;
33
37
  indentChars: PropTypes.Requireable<number>;
34
38
  language: PropTypes.Requireable<string>;
39
+ languageFallback: PropTypes.Requireable<string>;
35
40
  showIndentGuide: PropTypes.Requireable<boolean>;
36
41
  value: PropTypes.Requireable<string>;
37
42
  };
@@ -75,7 +75,6 @@ interface CollapsiblePanelPropsBase {
75
75
  title: React.ReactNode;
76
76
  /**
77
77
  * Renders toggle button separate from `title`, allowing `title` to contain interactive elements.
78
- * @includeTheme prisma
79
78
  */
80
79
  titleWithActions?: boolean;
81
80
  }
@@ -0,0 +1,11 @@
1
+ import PropTypes from 'prop-types';
2
+ interface ChevronRightIconProps {
3
+ open?: boolean;
4
+ }
5
+ declare const ChevronRight: {
6
+ ({ open }: ChevronRightIconProps): JSX.Element;
7
+ propTypes: {
8
+ open: PropTypes.Requireable<boolean>;
9
+ };
10
+ };
11
+ export default ChevronRight;
@@ -1,2 +1,2 @@
1
- import { SVGPropsOptionalViewBox } from '@splunk/react-icons/SVG';
1
+ import { SVGPropsOptionalViewBox } from '@splunk/react-icons/SVGEnterprise';
2
2
  export default function CalendarIcon(props: SVGPropsOptionalViewBox): JSX.Element;
@@ -0,0 +1,2 @@
1
+ declare function Submenu(): JSX.Element;
2
+ export default Submenu;
@@ -0,0 +1,87 @@
1
+ import React from 'react';
2
+ import Option from './Option';
3
+ import { ComponentProps } from '../utils/types';
4
+ /** @public */
5
+ declare type DualListboxSelectHandler = (event: React.MouseEvent<HTMLButtonElement> | React.MouseEvent<HTMLLIElement> | React.KeyboardEvent<HTMLUListElement>, data: {
6
+ /**
7
+ * The list `name` associated to the batch action.
8
+ */
9
+ listName: string;
10
+ /**
11
+ * The values marked as selected with the given list.
12
+ */
13
+ values: string[];
14
+ }) => void;
15
+ /** @public */
16
+ declare type DualListboxChangeHandler = (event: React.MouseEvent<HTMLButtonElement> | React.MouseEvent<HTMLLIElement> | React.KeyboardEvent<HTMLUListElement>, data: {
17
+ /**
18
+ * The values being changed.
19
+ */
20
+ affectedValues: string[];
21
+ /**
22
+ * The a11y text describing the move action.
23
+ * If `controlled="true"` the presentation of the text MUST be implemented by the consumer.
24
+ */
25
+ screenReaderMessage: string;
26
+ /**
27
+ * The list `name` associated to the source of the move action.
28
+ */
29
+ sourceListName: string;
30
+ /**
31
+ * The values now contained within the source list.
32
+ */
33
+ sourceValues: string[];
34
+ /**
35
+ * The list `name` associated to the target of the move action.
36
+ */
37
+ targetListName: string;
38
+ /**
39
+ * The values now contained within the target list.
40
+ */
41
+ targetValues: string[];
42
+ }) => void;
43
+ declare type ListboxConfig = {
44
+ name: string;
45
+ label: string;
46
+ };
47
+ interface DualListboxPropsBase {
48
+ /**
49
+ * All children must be instances of `DualListbox.Option`.
50
+ */
51
+ children?: React.ReactNode;
52
+ /**
53
+ * When true, `Options`'s `listName` and `selected` state props are fully controlled.
54
+ */
55
+ controlled?: boolean;
56
+ /**
57
+ * When true, fill height and width of the relative parent container.
58
+ */
59
+ fill?: boolean;
60
+ /**
61
+ * When false, display as inline-block with the default width.
62
+ * Ignored if `fill=true` set.
63
+ */
64
+ inline?: boolean;
65
+ /**
66
+ * List identifiers.
67
+ * `name` should map to child `Option`s `listName` prop, and will be returned with event calls.
68
+ * `label` will be used for visual and assistive text.
69
+ */
70
+ lists: ListboxConfig[];
71
+ /**
72
+ * Callback for selected options moving from one list to another.
73
+ */
74
+ onChange?: DualListboxChangeHandler;
75
+ /**
76
+ * Callback for single selected/de-select actions.
77
+ */
78
+ onSelect?: DualListboxSelectHandler;
79
+ }
80
+ declare type DualListboxProps = ComponentProps<DualListboxPropsBase, 'div'>;
81
+ declare function DualListbox({ children, controlled, fill, inline, onChange, onSelect, lists, ...otherProps }: DualListboxProps): JSX.Element;
82
+ declare namespace DualListbox {
83
+ var propTypes: React.WeakValidationMap<DualListboxPropsBase>;
84
+ var Option: typeof import("./Option").default;
85
+ }
86
+ export default DualListbox;
87
+ export { DualListboxChangeHandler, DualListboxSelectHandler, DualListboxProps, DualListboxPropsBase, Option, };
@@ -0,0 +1,27 @@
1
+ import React from 'react';
2
+ export declare type UpdateCallbackHandler = (callback?: React.DispatchWithoutAction) => void;
3
+ export declare type UpdateNameCallbackHandler = (name: string, callback?: React.DispatchWithoutAction) => void;
4
+ export declare type UpdateValueCallbackHandler = (value: string, callback?: React.DispatchWithoutAction) => void;
5
+ export declare type GetActiveValueHandler = (name: string) => string | undefined;
6
+ export declare type GetCountHandler = (name: string) => number;
7
+ export declare type GetScreenReaderMessageHandler = () => string | undefined;
8
+ export declare type GetSelectedStateHandler = (value: string) => boolean;
9
+ export interface DualListboxContextValue {
10
+ controlled?: boolean;
11
+ getActiveValue?: GetActiveValueHandler;
12
+ getScreenReaderMessage?: GetScreenReaderMessageHandler;
13
+ getSelectedStateForValue?: GetSelectedStateHandler;
14
+ getSelectedValueCount?: GetCountHandler;
15
+ getValueCount?: GetCountHandler;
16
+ updateLabelRefreshHookByName?: UpdateNameCallbackHandler;
17
+ updateOptionRefreshHookByValue?: UpdateValueCallbackHandler;
18
+ updateScreenReaderRefreshHook?: UpdateCallbackHandler;
19
+ }
20
+ /**
21
+ * A React context used to inform subcomponets of DualListbox of parent component values.
22
+ * The context interface is `DualListboxContextValue`.
23
+ * Defaults to `'{}'`.
24
+ * @public
25
+ */
26
+ declare const DualListboxContext: React.Context<DualListboxContextValue>;
27
+ export default DualListboxContext;
@@ -0,0 +1,37 @@
1
+ import React from 'react';
2
+ import { SwitchCheckboxWithSomeClickHandler } from '@splunk/react-ui/Switch';
3
+ import { ComponentProps } from '../utils/types';
4
+ declare type ListboxLabelSwitchClickHandler = SwitchCheckboxWithSomeClickHandler;
5
+ interface ListboxLabelPropsBase {
6
+ /**
7
+ * ID for the label. Used to label the switch and associated listbox.
8
+ */
9
+ id: string;
10
+ /**
11
+ * The list index, used in layout.
12
+ */
13
+ index: number;
14
+ /**
15
+ * Associated listbox id.
16
+ */
17
+ listId: string;
18
+ /**
19
+ * Name associated to the label and listbox. Used for event callbacks.
20
+ */
21
+ name: string;
22
+ /**
23
+ * Toggle callback for the "select-all" switch.
24
+ */
25
+ onSwitchClick: ListboxLabelSwitchClickHandler;
26
+ /**
27
+ * The value of this option and the label shown for it.
28
+ */
29
+ value: string;
30
+ }
31
+ declare type ListboxLabelProps = ComponentProps<ListboxLabelPropsBase, 'div'>;
32
+ declare function ListboxLabel({ id, index, listId, name, onSwitchClick, value }: ListboxLabelProps): JSX.Element | null;
33
+ declare namespace ListboxLabel {
34
+ var propTypes: React.WeakValidationMap<ListboxLabelPropsBase>;
35
+ }
36
+ export default ListboxLabel;
37
+ export { ListboxLabelSwitchClickHandler };
@@ -0,0 +1,54 @@
1
+ import React from 'react';
2
+ import { ComponentProps } from '../utils/types';
3
+ declare type ListboxClickHandler = (event: React.MouseEvent<HTMLLIElement> | React.KeyboardEvent<HTMLUListElement>, data: {
4
+ name: string;
5
+ value: string;
6
+ }) => void;
7
+ declare type ListboxKeyDownHandler = (event: React.KeyboardEvent<HTMLUListElement>, data: {
8
+ name: string;
9
+ }) => void;
10
+ declare type ListboxSelectAllClickHandler = (event: React.MouseEvent<HTMLButtonElement>, data: {
11
+ name: string;
12
+ selected: true | false | 'some';
13
+ }) => void;
14
+ interface ListboxPropsBase {
15
+ /**
16
+ * All children must be instances of `DualListbox.Option`.
17
+ */
18
+ children?: React.ReactNode;
19
+ /**
20
+ * Ref callback.
21
+ */
22
+ elementRef?: React.Ref<HTMLUListElement>;
23
+ /**
24
+ * The list index, used in layout.
25
+ */
26
+ index: number;
27
+ /**
28
+ * Label text for the listbox.
29
+ */
30
+ label: string;
31
+ /**
32
+ * Name associated to the listbox. Used for event callbacks.
33
+ */
34
+ name: string;
35
+ /**
36
+ * Callback for click event.
37
+ */
38
+ onClick?: ListboxClickHandler;
39
+ /**
40
+ * Callback for keydown event.
41
+ */
42
+ onKeyDown?: ListboxKeyDownHandler;
43
+ /**
44
+ * Callback for associated "select-all" switch.
45
+ */
46
+ onSelectAllClick?: ListboxSelectAllClickHandler;
47
+ }
48
+ declare type ListboxProps = ComponentProps<ListboxPropsBase, 'ul'>;
49
+ declare function Listbox({ children, elementRef, index, label, name, onClick, onKeyDown, onSelectAllClick, ...otherProps }: ListboxProps): JSX.Element;
50
+ declare namespace Listbox {
51
+ var propTypes: React.WeakValidationMap<ListboxPropsBase>;
52
+ }
53
+ export default Listbox;
54
+ export { ListboxClickHandler, ListboxKeyDownHandler, ListboxSelectAllClickHandler };
@@ -0,0 +1,32 @@
1
+ import React from 'react';
2
+ import { UpdateNameCallbackHandler, UpdateValueCallbackHandler } from './DualListboxContext';
3
+ export declare type OptionClickHandler = (event: React.MouseEvent<HTMLLIElement>, data: {
4
+ value: string;
5
+ name?: string;
6
+ }) => void;
7
+ export declare type GetOptionStateHandler = (value: string) => {
8
+ active: boolean;
9
+ selected: boolean;
10
+ };
11
+ export declare type GetLabelStateHandler = () => {
12
+ disabled: boolean;
13
+ selected: boolean | 'some';
14
+ selectedValueCount: number;
15
+ valueCount: number;
16
+ };
17
+ export interface ListboxContextValue {
18
+ controlled?: boolean;
19
+ onOptionClick?: OptionClickHandler;
20
+ getLabelState?: GetLabelStateHandler;
21
+ getOptionStateForValue?: GetOptionStateHandler;
22
+ updateLabelRefreshHookByName?: UpdateNameCallbackHandler;
23
+ updateOptionRefreshHookByValue?: UpdateValueCallbackHandler;
24
+ }
25
+ /**
26
+ * A React context used to inform subcomponets of Listbox of parent component values.
27
+ * The context interface is `ListboxContextValue`.
28
+ * Defaults to `'{}'`.
29
+ * @public
30
+ */
31
+ declare const ListboxContext: React.Context<ListboxContextValue>;
32
+ export default ListboxContext;
@@ -0,0 +1,35 @@
1
+ import React from 'react';
2
+ import { ComponentProps } from '../utils/types';
3
+ declare type OptionClickHandler = (event: React.MouseEvent<HTMLLIElement>, data: {
4
+ value: string;
5
+ }) => void;
6
+ interface OptionPropsBase {
7
+ /**
8
+ * The id used for accessibility labelling.
9
+ */
10
+ id: string;
11
+ /**
12
+ * The display of this option, used in key matching.
13
+ */
14
+ label: string;
15
+ /**
16
+ * Parent list `name` associated to option.
17
+ * Used in intial state and controlled variants.
18
+ */
19
+ listName?: string;
20
+ /**
21
+ * When true, applies visual and assistive selected state.
22
+ */
23
+ selected?: boolean;
24
+ /**
25
+ * The value of this option, returned in events.
26
+ */
27
+ value: string;
28
+ }
29
+ declare type OptionProps = ComponentProps<OptionPropsBase, 'li'>;
30
+ declare function Option({ id, label, selected: selectedProp, value, ...otherProps }: OptionProps): JSX.Element | null;
31
+ declare namespace Option {
32
+ var propTypes: React.WeakValidationMap<OptionPropsBase>;
33
+ }
34
+ export default Option;
35
+ export { OptionClickHandler };
@@ -0,0 +1,4 @@
1
+ declare function ScreenReaderWrapper({ ...otherProps }: {
2
+ [x: string]: any;
3
+ }): JSX.Element | null;
4
+ export default ScreenReaderWrapper;
@@ -0,0 +1,38 @@
1
+ import React from 'react';
2
+ import { ComponentProps } from '../utils/types';
3
+ declare type ButtonClickHandler = (event: React.MouseEvent<HTMLButtonElement>, data: {
4
+ name: string;
5
+ }) => void;
6
+ interface ToolbarButtonPropsBase {
7
+ /**
8
+ * Assitive text. Ideally should contain `tooltipLabel` as root of text.
9
+ */
10
+ ariaLabel: string;
11
+ /**
12
+ * Assitive value. aria shortcut key associated to the listbox actions.
13
+ */
14
+ ariaKeyShortcuts?: string;
15
+ /**
16
+ * Icon for the button.
17
+ */
18
+ icon: React.ReactNode;
19
+ /**
20
+ * Associated name for callbacks.
21
+ */
22
+ name: string;
23
+ /**
24
+ * Visible tooltip text. Ideally a short message.
25
+ */
26
+ tooltipLabel: string;
27
+ /**
28
+ * Default tooltipPlacement. Value should be opposite of action direction: e.g. place the tooltip to the left of the action that moves items to the right.
29
+ */
30
+ tooltipPlacement: 'above' | 'below' | 'left' | 'right';
31
+ }
32
+ declare type ToolbarButtonProps = ComponentProps<ToolbarButtonPropsBase, 'button'>;
33
+ declare function ToolbarButton({ ariaLabel, ariaKeyShortcuts, icon, name, tooltipLabel, tooltipPlacement, ...otherProps }: ToolbarButtonProps): JSX.Element | null;
34
+ declare namespace ToolbarButton {
35
+ var propsTypes: React.WeakValidationMap<ComponentProps<ToolbarButtonPropsBase, "button", never>>;
36
+ }
37
+ export default ToolbarButton;
38
+ export { ButtonClickHandler };
@@ -0,0 +1,21 @@
1
+ import React from 'react';
2
+ export declare type ButtonClickHandler = (event: React.MouseEvent<HTMLButtonElement>, data: {
3
+ name: string;
4
+ }) => void;
5
+ export declare type UpdateCallbackHandler = (name: string, callback?: React.DispatchWithoutAction) => void;
6
+ export declare type GetButtonStateHandler = (value: string) => {
7
+ disabled: boolean;
8
+ };
9
+ export interface ToolbarContextValue {
10
+ updateButtonRefreshHookByName?: UpdateCallbackHandler;
11
+ onButtonClick?: ButtonClickHandler;
12
+ getButtonState?: GetButtonStateHandler;
13
+ }
14
+ /**
15
+ * A React context used to inform subcomponets of Toolbar of parent component values.
16
+ * The context interface is `ToolbarContextValue`.
17
+ * Defaults to `'{}'`.
18
+ * @public
19
+ */
20
+ declare const ToolbarContext: React.Context<ToolbarContextValue>;
21
+ export default ToolbarContext;
@@ -0,0 +1,2 @@
1
+ declare function Uncontrolled(): JSX.Element;
2
+ export default Uncontrolled;
@@ -0,0 +1,2 @@
1
+ declare const Controlled: () => JSX.Element;
2
+ export default Controlled;
@@ -0,0 +1,2 @@
1
+ declare function Fill(): JSX.Element;
2
+ export default Fill;
@@ -0,0 +1,2 @@
1
+ export { default } from './DualListbox';
2
+ export * from './DualListbox';
@@ -0,0 +1,4 @@
1
+ declare const arrayWithToggledValue: (valueArr: string[], toggleValue: string) => string[];
2
+ declare const arrayWithRemovedValues: (valueArr: string[], removedValues: string[]) => string[];
3
+ declare const findNextValue: (index: number, originalValues: string[], removedValues: string[]) => string | undefined;
4
+ export { arrayWithToggledValue, arrayWithRemovedValues, findNextValue };
@@ -1,2 +1,2 @@
1
- import { SVGPropsOptionalViewBox } from '@splunk/react-icons/SVG';
1
+ import { SVGPropsOptionalViewBox } from '@splunk/react-icons/SVGEnterprise';
2
2
  export default function FileIcon(props: SVGPropsOptionalViewBox): JSX.Element;
@@ -1,2 +1,2 @@
1
- import { SVGPropsOptionalViewBox } from '@splunk/react-icons/SVG';
1
+ import { SVGPropsOptionalViewBox } from '@splunk/react-icons/SVGEnterprise';
2
2
  export default function FileIconCloud(props: SVGPropsOptionalViewBox): JSX.Element;
@@ -1,2 +1,2 @@
1
- import { SVGPropsOptionalViewBox } from '@splunk/react-icons/SVG';
1
+ import { SVGPropsOptionalViewBox } from '@splunk/react-icons/SVGEnterprise';
2
2
  export default function PaperClip(props: SVGPropsOptionalViewBox): JSX.Element;
@@ -1,2 +1,2 @@
1
- import { SVGPropsOptionalViewBox } from '@splunk/react-icons/SVG';
1
+ import { SVGPropsOptionalViewBox } from '@splunk/react-icons/SVGEnterprise';
2
2
  export default function Retry(props: SVGPropsOptionalViewBox): JSX.Element;
@@ -1,2 +1,2 @@
1
- import { SVGPropsOptionalViewBox } from '@splunk/react-icons/SVG';
1
+ import { SVGPropsOptionalViewBox } from '@splunk/react-icons/SVGEnterprise';
2
2
  export default function Trash(props: SVGPropsOptionalViewBox): JSX.Element;
@@ -1,15 +1 @@
1
- import { Component } from 'react';
2
- import { FileRequestAddHandler } from '@splunk/react-ui/File';
3
- declare class Progress extends Component<{}, {
4
- filename?: string;
5
- uploadPercentage?: number;
6
- }> {
7
- private fileReader;
8
- private timer?;
9
- constructor(props: {});
10
- handleAddFiles: FileRequestAddHandler;
11
- handleRemoveFile: () => void;
12
- fakeUpload: () => void;
13
- render(): JSX.Element;
14
- }
15
- export default Progress;
1
+ export default function Progress(): JSX.Element;
@@ -0,0 +1,2 @@
1
+ declare const FormRowsPlusIcon: () => JSX.Element;
2
+ export default FormRowsPlusIcon;
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
+ import { TypographyTitleVariant } from '@splunk/themes/mixins';
3
4
  import { ComponentProps } from '../utils/types';
4
5
  interface HeadingPropsBase {
5
6
  children?: React.ReactNode;
@@ -8,10 +9,15 @@ interface HeadingPropsBase {
8
9
  */
9
10
  elementRef?: React.Ref<HTMLHeadingElement>;
10
11
  /**
11
- * Corresponds to the respective `<hX>` HTML tags. Use `s` for section-style headings
12
- * and `ss` for small section-style headings.
12
+ * Corresponds to the respective `<hX>` HTML tags and `typography(titleX)` `@splunk/themes` typography variant. Use `s` for section-style headings
13
+ * and `ss` for small section-style headings. Styles will be set corresponding to level if variant is not provided: e.g. `level=3` will default to using `title3` from `mixins`.
13
14
  */
14
- level?: 1 | 2 | 3 | 4 | 's' | 'ss';
15
+ level?: 1 | 2 | 3 | 4 | 's' | 'ss' | 5 | 6;
16
+ /**
17
+ * Styles the component based on typography mixin title preset styles.
18
+ * If a variant is not provided, styles will be set corresponding to level: e.g. `level=3` will default to using `title3` from `mixins`.
19
+ */
20
+ variant?: TypographyTitleVariant;
15
21
  }
16
22
  declare type HeadingProps = ComponentProps<HeadingPropsBase, 'h1'>;
17
23
  declare const levelToElement: {
@@ -21,8 +27,10 @@ declare const levelToElement: {
21
27
  readonly '4': "h4";
22
28
  readonly s: "h4";
23
29
  readonly ss: "h5";
30
+ readonly '5': "h5";
31
+ readonly '6': "h6";
24
32
  };
25
- declare function Heading({ level, children, elementRef, ...otherProps }: HeadingProps): JSX.Element;
33
+ declare function Heading({ level, children, variant, ...otherProps }: HeadingProps): JSX.Element;
26
34
  declare namespace Heading {
27
35
  var propTypes: {
28
36
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
@@ -0,0 +1,2 @@
1
+ declare function Variant(): JSX.Element;
2
+ export default Variant;
@@ -25,7 +25,7 @@ interface ImagePropsBase {
25
25
  * null when it unmounts. */
26
26
  elementRef?: React.Ref<HTMLDivElement>;
27
27
  /** Show the component in an error state. */
28
- error: boolean;
28
+ error?: boolean;
29
29
  /** The max-height of the preview in pixels. */
30
30
  maxHeight?: number;
31
31
  /** A callback for when the image changes. The function is passed an
@@ -0,0 +1,2 @@
1
+ declare const CrossIcon: () => JSX.Element;
2
+ export default CrossIcon;
@@ -0,0 +1,2 @@
1
+ declare function External(): JSX.Element;
2
+ export default External;
@@ -9,5 +9,6 @@ declare namespace Divider {
9
9
  var filterFirst: boolean;
10
10
  var filterConsecutive: boolean;
11
11
  var filterLast: boolean;
12
+ var as: string;
12
13
  }
13
14
  export default Divider;
@@ -23,5 +23,6 @@ declare namespace Heading {
23
23
  };
24
24
  var filterConsecutive: boolean;
25
25
  var filterLast: boolean;
26
+ var as: string;
26
27
  }
27
28
  export default Heading;