@wavv/ui 1.9.4 → 1.9.5

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 (221) hide show
  1. package/build/cjs/types/theme/colorsIndex.d.ts +3 -0
  2. package/build/colors.ts +150 -0
  3. package/build/esm/types/theme/colorsIndex.d.ts +3 -0
  4. package/build/types/assets/icons/ActivityHistory.d.ts +3 -0
  5. package/build/types/assets/icons/Add.d.ts +3 -0
  6. package/build/types/assets/icons/AddCircle.d.ts +3 -0
  7. package/build/types/assets/icons/AddCircleOutline.d.ts +3 -0
  8. package/build/types/assets/icons/AddPerson.d.ts +3 -0
  9. package/build/types/assets/icons/ArrowDown.d.ts +3 -0
  10. package/build/types/assets/icons/ArrowLeft.d.ts +3 -0
  11. package/build/types/assets/icons/ArrowRight.d.ts +3 -0
  12. package/build/types/assets/icons/ArrowUp.d.ts +3 -0
  13. package/build/types/assets/icons/Attachment.d.ts +3 -0
  14. package/build/types/assets/icons/Calendar.d.ts +3 -0
  15. package/build/types/assets/icons/Camera.d.ts +3 -0
  16. package/build/types/assets/icons/Card.d.ts +3 -0
  17. package/build/types/assets/icons/CaretDown.d.ts +3 -0
  18. package/build/types/assets/icons/CaretUp.d.ts +3 -0
  19. package/build/types/assets/icons/Check.d.ts +3 -0
  20. package/build/types/assets/icons/CheckBadge.d.ts +3 -0
  21. package/build/types/assets/icons/CheckCircle.d.ts +3 -0
  22. package/build/types/assets/icons/CheckCircleOutline.d.ts +3 -0
  23. package/build/types/assets/icons/Checkbox.d.ts +3 -0
  24. package/build/types/assets/icons/CheckboxOff.d.ts +3 -0
  25. package/build/types/assets/icons/CheckboxPartial.d.ts +3 -0
  26. package/build/types/assets/icons/ChevronDown.d.ts +3 -0
  27. package/build/types/assets/icons/ChevronLeft.d.ts +3 -0
  28. package/build/types/assets/icons/ChevronRight.d.ts +3 -0
  29. package/build/types/assets/icons/ChevronUp.d.ts +3 -0
  30. package/build/types/assets/icons/Clapperboard.d.ts +3 -0
  31. package/build/types/assets/icons/ClapperboardOpen.d.ts +3 -0
  32. package/build/types/assets/icons/Close.d.ts +3 -0
  33. package/build/types/assets/icons/CloseCircle.d.ts +3 -0
  34. package/build/types/assets/icons/CloseCircleOutline.d.ts +3 -0
  35. package/build/types/assets/icons/Copy.d.ts +3 -0
  36. package/build/types/assets/icons/Devices.d.ts +3 -0
  37. package/build/types/assets/icons/Dialpad.d.ts +3 -0
  38. package/build/types/assets/icons/DoubleArrowLeft.d.ts +3 -0
  39. package/build/types/assets/icons/DoubleArrowRight.d.ts +3 -0
  40. package/build/types/assets/icons/Download.d.ts +3 -0
  41. package/build/types/assets/icons/Drag.d.ts +3 -0
  42. package/build/types/assets/icons/Edit.d.ts +3 -0
  43. package/build/types/assets/icons/Emoji.d.ts +3 -0
  44. package/build/types/assets/icons/EyeOff.d.ts +3 -0
  45. package/build/types/assets/icons/EyeOn.d.ts +3 -0
  46. package/build/types/assets/icons/Facebook.d.ts +3 -0
  47. package/build/types/assets/icons/Filter.d.ts +3 -0
  48. package/build/types/assets/icons/Flask.d.ts +3 -0
  49. package/build/types/assets/icons/Group.d.ts +3 -0
  50. package/build/types/assets/icons/Heart.d.ts +3 -0
  51. package/build/types/assets/icons/HeartOutline.d.ts +3 -0
  52. package/build/types/assets/icons/Help.d.ts +3 -0
  53. package/build/types/assets/icons/Hourglass.d.ts +3 -0
  54. package/build/types/assets/icons/Info.d.ts +3 -0
  55. package/build/types/assets/icons/Instagram.d.ts +3 -0
  56. package/build/types/assets/icons/KebabMenu.d.ts +3 -0
  57. package/build/types/assets/icons/Link.d.ts +3 -0
  58. package/build/types/assets/icons/Linkedin.d.ts +3 -0
  59. package/build/types/assets/icons/Loading.d.ts +3 -0
  60. package/build/types/assets/icons/Logout.d.ts +3 -0
  61. package/build/types/assets/icons/Maximize.d.ts +3 -0
  62. package/build/types/assets/icons/Menu.d.ts +3 -0
  63. package/build/types/assets/icons/Merge.d.ts +3 -0
  64. package/build/types/assets/icons/MergeField.d.ts +3 -0
  65. package/build/types/assets/icons/Message.d.ts +3 -0
  66. package/build/types/assets/icons/Mic.d.ts +3 -0
  67. package/build/types/assets/icons/MicOff.d.ts +3 -0
  68. package/build/types/assets/icons/Minimize.d.ts +3 -0
  69. package/build/types/assets/icons/Mobile.d.ts +3 -0
  70. package/build/types/assets/icons/NotAllowed.d.ts +3 -0
  71. package/build/types/assets/icons/Open.d.ts +3 -0
  72. package/build/types/assets/icons/Pause.d.ts +3 -0
  73. package/build/types/assets/icons/PauseOutline.d.ts +3 -0
  74. package/build/types/assets/icons/Person.d.ts +3 -0
  75. package/build/types/assets/icons/Phone.d.ts +3 -0
  76. package/build/types/assets/icons/PhoneBlocked.d.ts +3 -0
  77. package/build/types/assets/icons/PhoneCallback.d.ts +3 -0
  78. package/build/types/assets/icons/PhoneEnd.d.ts +3 -0
  79. package/build/types/assets/icons/PhoneForward.d.ts +3 -0
  80. package/build/types/assets/icons/PhoneHistory.d.ts +3 -0
  81. package/build/types/assets/icons/PhoneHold.d.ts +3 -0
  82. package/build/types/assets/icons/PhoneTalk.d.ts +3 -0
  83. package/build/types/assets/icons/PhoneTransfer.d.ts +3 -0
  84. package/build/types/assets/icons/Play.d.ts +3 -0
  85. package/build/types/assets/icons/PlayOutline.d.ts +3 -0
  86. package/build/types/assets/icons/ProfileUser.d.ts +3 -0
  87. package/build/types/assets/icons/RadioButton.d.ts +3 -0
  88. package/build/types/assets/icons/RadioButtonOff.d.ts +3 -0
  89. package/build/types/assets/icons/Record.d.ts +3 -0
  90. package/build/types/assets/icons/Refresh.d.ts +3 -0
  91. package/build/types/assets/icons/Rocket.d.ts +3 -0
  92. package/build/types/assets/icons/Schedule.d.ts +3 -0
  93. package/build/types/assets/icons/ScheduleOutline.d.ts +3 -0
  94. package/build/types/assets/icons/Screenshot.d.ts +3 -0
  95. package/build/types/assets/icons/Search.d.ts +3 -0
  96. package/build/types/assets/icons/Settings.d.ts +3 -0
  97. package/build/types/assets/icons/Share.d.ts +3 -0
  98. package/build/types/assets/icons/ShieldCheck.d.ts +3 -0
  99. package/build/types/assets/icons/ShieldSlash.d.ts +3 -0
  100. package/build/types/assets/icons/Sort.d.ts +3 -0
  101. package/build/types/assets/icons/Spotify.d.ts +3 -0
  102. package/build/types/assets/icons/Star.d.ts +3 -0
  103. package/build/types/assets/icons/StarOutline.d.ts +3 -0
  104. package/build/types/assets/icons/Stop.d.ts +3 -0
  105. package/build/types/assets/icons/StopOutline.d.ts +3 -0
  106. package/build/types/assets/icons/Template.d.ts +3 -0
  107. package/build/types/assets/icons/ToggleOff.d.ts +3 -0
  108. package/build/types/assets/icons/ToggleOn.d.ts +3 -0
  109. package/build/types/assets/icons/Transfer.d.ts +3 -0
  110. package/build/types/assets/icons/TransferCancel.d.ts +3 -0
  111. package/build/types/assets/icons/Trash.d.ts +3 -0
  112. package/build/types/assets/icons/Twitter.d.ts +3 -0
  113. package/build/types/assets/icons/Upload.d.ts +3 -0
  114. package/build/types/assets/icons/Video.d.ts +3 -0
  115. package/build/types/assets/icons/Voicemail.d.ts +3 -0
  116. package/build/types/assets/icons/VolOn.d.ts +3 -0
  117. package/build/types/assets/icons/Warning.d.ts +3 -0
  118. package/build/types/assets/icons/WarningCircleOutline.d.ts +3 -0
  119. package/build/types/assets/icons/Youtube.d.ts +3 -0
  120. package/build/types/components/Accordion.d.ts +45 -0
  121. package/build/types/components/Audio.d.ts +29 -0
  122. package/build/types/components/BarChart.d.ts +25 -0
  123. package/build/types/components/Button/Button.d.ts +17 -0
  124. package/build/types/components/Button/ButtonLoader.d.ts +4 -0
  125. package/build/types/components/Button/ButtonTypes.d.ts +150 -0
  126. package/build/types/components/Button/Group.d.ts +18 -0
  127. package/build/types/components/Button/index.d.ts +2 -0
  128. package/build/types/components/Calendar.d.ts +14 -0
  129. package/build/types/components/ChartHelpers.d.ts +36 -0
  130. package/build/types/components/Checkbox.d.ts +20 -0
  131. package/build/types/components/Code/Code.d.ts +26 -0
  132. package/build/types/components/Code/Copy.d.ts +4 -0
  133. package/build/types/components/Code/Endpoint.d.ts +5 -0
  134. package/build/types/components/Code/index.d.ts +2 -0
  135. package/build/types/components/DocTable.d.ts +7 -0
  136. package/build/types/components/DraftEditor.d.ts +56 -0
  137. package/build/types/components/Dropdown/Dropdown.d.ts +85 -0
  138. package/build/types/components/Dropdown/DropdownUtils.d.ts +56 -0
  139. package/build/types/components/Dropdown/index.d.ts +4 -0
  140. package/build/types/components/DropdownMenu.d.ts +78 -0
  141. package/build/types/components/Form.d.ts +174 -0
  142. package/build/types/components/FormControl.d.ts +18 -0
  143. package/build/types/components/Grid.d.ts +55 -0
  144. package/build/types/components/Icon/Icon.d.ts +38 -0
  145. package/build/types/components/Icon/icons.d.ts +222 -0
  146. package/build/types/components/Icon/index.d.ts +2 -0
  147. package/build/types/components/ImageViewer.d.ts +20 -0
  148. package/build/types/components/InlineCode.d.ts +7 -0
  149. package/build/types/components/Input.d.ts +192 -0
  150. package/build/types/components/InputHelpers.d.ts +90 -0
  151. package/build/types/components/Label.d.ts +16 -0
  152. package/build/types/components/LineChart.d.ts +3 -0
  153. package/build/types/components/Menu.d.ts +53 -0
  154. package/build/types/components/Message.d.ts +25 -0
  155. package/build/types/components/MessageHr.d.ts +11 -0
  156. package/build/types/components/Modal.d.ts +66 -0
  157. package/build/types/components/MultiSelect.d.ts +46 -0
  158. package/build/types/components/Notification.d.ts +14 -0
  159. package/build/types/components/Options.d.ts +45 -0
  160. package/build/types/components/Pagination.d.ts +13 -0
  161. package/build/types/components/PieChart.d.ts +18 -0
  162. package/build/types/components/Progress/CirclePercent.d.ts +10 -0
  163. package/build/types/components/Progress/Progress.d.ts +23 -0
  164. package/build/types/components/Progress/index.d.ts +2 -0
  165. package/build/types/components/Radio.d.ts +16 -0
  166. package/build/types/components/Slider.d.ts +15 -0
  167. package/build/types/components/Spacer.d.ts +6 -0
  168. package/build/types/components/Spinner.d.ts +16 -0
  169. package/build/types/components/Table/Body.d.ts +8 -0
  170. package/build/types/components/Table/Column.d.ts +10 -0
  171. package/build/types/components/Table/Content.d.ts +19 -0
  172. package/build/types/components/Table/Header.d.ts +7 -0
  173. package/build/types/components/Table/HeaderCell.d.ts +14 -0
  174. package/build/types/components/Table/Row.d.ts +3 -0
  175. package/build/types/components/Table/Table.d.ts +28 -0
  176. package/build/types/components/Table/context.d.ts +4 -0
  177. package/build/types/components/Table/index.d.ts +2 -0
  178. package/build/types/components/Table/types.d.ts +43 -0
  179. package/build/types/components/Table/utils.d.ts +4 -0
  180. package/build/types/components/Tabs.d.ts +31 -0
  181. package/build/types/components/Toggle.d.ts +18 -0
  182. package/build/types/components/Tooltip.d.ts +50 -0
  183. package/build/types/components/TransferList.d.ts +47 -0
  184. package/build/types/components/draftUtils.d.ts +49 -0
  185. package/build/types/components/helpers/getIcon.d.ts +8 -0
  186. package/build/types/components/helpers/getPopPosition.d.ts +6 -0
  187. package/build/types/components/helpers/isPropAllowed.d.ts +2 -0
  188. package/build/types/components/helpers/styledProps.d.ts +26 -0
  189. package/build/types/components/types.d.ts +80 -0
  190. package/build/types/global-styles/ResetStyles.d.ts +9 -0
  191. package/build/types/global-styles/ScrollbarStyles.d.ts +2 -0
  192. package/build/types/global-styles/ToastStyles.d.ts +2 -0
  193. package/build/types/global-styles/index.d.ts +3 -0
  194. package/build/types/hooks/index.d.ts +7 -0
  195. package/build/types/hooks/useConfirm.d.ts +13 -0
  196. package/build/types/hooks/useElementObserver.d.ts +8 -0
  197. package/build/types/hooks/useEventListener.d.ts +3 -0
  198. package/build/types/hooks/useOnClickOutside.d.ts +3 -0
  199. package/build/types/hooks/usePrevious.d.ts +2 -0
  200. package/build/types/hooks/useSelect.d.ts +20 -0
  201. package/build/types/hooks/useSelectAll.d.ts +12 -0
  202. package/build/types/hooks/useWindowSize.d.ts +5 -0
  203. package/build/types/index.d.ts +64 -0
  204. package/build/types/theme/ThemeTypes.d.ts +294 -0
  205. package/build/types/theme/colors.d.ts +201 -0
  206. package/build/types/theme/colorsIndex.d.ts +3 -0
  207. package/build/types/theme/common/button.d.ts +24 -0
  208. package/build/types/theme/common/common.d.ts +103 -0
  209. package/build/types/theme/common/index.d.ts +3 -0
  210. package/build/types/theme/dark.d.ts +3 -0
  211. package/build/types/theme/darkScale.d.ts +22 -0
  212. package/build/types/theme/index.d.ts +10 -0
  213. package/build/types/theme/light.d.ts +3 -0
  214. package/build/types/theme/lightScale.d.ts +22 -0
  215. package/build/types/utils/chunk.d.ts +2 -0
  216. package/build/types/utils/copyToClipboard.d.ts +2 -0
  217. package/build/types/utils/formatDate.d.ts +7 -0
  218. package/build/types/utils/index.d.ts +5 -0
  219. package/build/types/utils/numberWithCommas.d.ts +2 -0
  220. package/build/types/utils/range.d.ts +1 -0
  221. package/package.json +1 -1
@@ -0,0 +1,66 @@
1
+ import { ReactNode } from 'react';
2
+ import { ThemeProp } from '../theme';
3
+ import { FlexPosition, Height, Margin, Padding, PositionType, WidthHeight } from './types';
4
+ type ModalProps = {
5
+ children: ReactNode;
6
+ /** The selector (id or className) of the app's root element */
7
+ rootSelector?: string;
8
+ /** Controls whether or not the Modal is open */
9
+ visible: boolean;
10
+ /** The function called when the Modal is closed */
11
+ onClose: () => void;
12
+ /** Displays a close icon in the top right of the Modal */
13
+ closeIcon?: boolean;
14
+ /** Prevents the Modal from closing if the overlay outside the modal is clicked */
15
+ preventOverlayClose?: boolean;
16
+ /** Sets the color of the modal overlay */
17
+ overlayColor?: string;
18
+ /** Overrides the backgroundColor of the modal container */
19
+ backgroundColor?: string;
20
+ /** Styles the Modal as an actionable toast */
21
+ small?: boolean;
22
+ /** Removes the overlay background, and allows the modal to be positioned anywhere on the page */
23
+ noOverlay?: boolean;
24
+ /** Centers the horizontal position of the Modal. Used in conjunction with `noOverlay` */
25
+ centerX?: boolean;
26
+ /** Centers the vertical position of the Modal. Used in conjunction with `noOverlay` */
27
+ centerY?: boolean;
28
+ /** Sets the position of the modal container */
29
+ position?: PositionType;
30
+ /** Sets the `top` position of the modal. Used in conjunction with `noOverlay` */
31
+ top?: number | string;
32
+ /** Sets the `bottom` position of the modal. Used in conjunction with `noOverlay` */
33
+ bottom?: number | string;
34
+ /** Sets the `right` position of the modal. Used in conjunction with `noOverlay` */
35
+ right?: number | string;
36
+ /** Sets the `left` position of the modal. Used in conjunction with `noOverlay` */
37
+ left?: number | string;
38
+ /** Sets the zIndex of the modal container */
39
+ zIndex?: number;
40
+ } & WidthHeight & Padding;
41
+ declare const Modal: {
42
+ ({ children, rootSelector, visible, width, height, onClose, closeIcon, preventOverlayClose, overlayColor, backgroundColor, small, noOverlay, centerX, centerY, position, top, bottom, right, left, padding, paddingTop, paddingBottom, paddingRight, paddingLeft, zIndex, }: ModalProps): import("react").ReactPortal | null;
43
+ Header: import("@emotion/styled").StyledComponent<{
44
+ theme?: import("@emotion/react").Theme | undefined;
45
+ as?: import("react").ElementType<any> | undefined;
46
+ } & ThemeProp, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
47
+ Text: import("@emotion/styled").StyledComponent<{
48
+ theme?: import("@emotion/react").Theme | undefined;
49
+ as?: import("react").ElementType<any> | undefined;
50
+ } & {
51
+ primary?: boolean | undefined;
52
+ fontSize?: string | number | undefined;
53
+ } & ThemeProp, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
54
+ Body: import("@emotion/styled").StyledComponent<{
55
+ theme?: import("@emotion/react").Theme | undefined;
56
+ as?: import("react").ElementType<any> | undefined;
57
+ } & Height & Margin, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
58
+ Footer: import("@emotion/styled").StyledComponent<{
59
+ theme?: import("@emotion/react").Theme | undefined;
60
+ as?: import("react").ElementType<any> | undefined;
61
+ } & {
62
+ justify?: FlexPosition | undefined;
63
+ inline?: boolean | undefined;
64
+ } & Margin, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
65
+ };
66
+ export default Modal;
@@ -0,0 +1,46 @@
1
+ import React, { ReactNode } from 'react';
2
+ import { DropdownOption, InputProps } from './Dropdown';
3
+ import { Width, Margin, MultiSelectRef } from './types';
4
+ type DropdownProps = Omit<InputProps, 'children'>;
5
+ type MultiSelectProps = {
6
+ /** The list of dropdown options to display */
7
+ options: DropdownOption[];
8
+ /** The list of selected options */
9
+ items: DropdownOption[];
10
+ /** A function that gives control of the list items to the user */
11
+ children?: (listOpen: boolean, disabled: boolean) => ReactNode;
12
+ /** Text to display in place of the complete list of items */
13
+ listLabel?: string;
14
+ /** Text to display in front of the list of selected items */
15
+ listText?: string;
16
+ /** The name of the items list to display (1/5 items) */
17
+ itemsTitle?: string;
18
+ /** The maximum number of items allowed to be selected */
19
+ maxItems?: number;
20
+ /** Sets the input placeholder text */
21
+ placeholder?: string;
22
+ /** As the dropdown is searched, the options narrow down according to the search value */
23
+ filter?: boolean;
24
+ /** Prevents the Dropdown from accepting any input other than what matches the provided options */
25
+ restrictInput?: boolean | ((text: string) => boolean);
26
+ /** Disables the Dropdown */
27
+ disabled?: boolean;
28
+ /** Hides the maxItems count and the itemsTitle */
29
+ hideItemsInfo?: boolean;
30
+ /** The selector (id or className) of the element the options should open in relation to */
31
+ optionsParent?: string;
32
+ /** Causes the MultiSelect to collapse if listLabel is also present */
33
+ compact?: boolean;
34
+ /** Sets the backgroundColor */
35
+ backgroundColor?: string;
36
+ /** Removes the bottom border */
37
+ borderless?: boolean;
38
+ /** Function called after an item is selected */
39
+ addItem: (item: DropdownOption | null) => void;
40
+ /** Function called after an item is removed */
41
+ removeItem: (item: DropdownOption | null) => void;
42
+ /** The function to be called when the input is updated */
43
+ onTextChange?: (text: string) => void;
44
+ } & Width & Margin & DropdownProps;
45
+ declare const MultiSelect: React.ForwardRefExoticComponent<Omit<MultiSelectProps, "ref"> & React.RefAttributes<MultiSelectRef>>;
46
+ export default MultiSelect;
@@ -0,0 +1,14 @@
1
+ /// <reference types="react" />
2
+ import { Margin, Position, ThemeProp } from './types';
3
+ declare const Notification: import("@emotion/styled").StyledComponent<{
4
+ theme?: import("@emotion/react").Theme | undefined;
5
+ as?: import("react").ElementType<any> | undefined;
6
+ } & {
7
+ /** The color of the dot */
8
+ color?: string | undefined;
9
+ /** The width/height of the dot */
10
+ size?: string | number | undefined;
11
+ /** Styles the dot to accommodate containing a number */
12
+ number?: boolean | undefined;
13
+ } & ThemeProp & Margin & Position, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
14
+ export default Notification;
@@ -0,0 +1,45 @@
1
+ import { ReactNode, MouseEvent, RefObject } from 'react';
2
+ import { FlexPosition, Width } from './types';
3
+ type OptionsProps = {
4
+ children: ReactNode;
5
+ /** The id of the Options container */
6
+ id?: string;
7
+ /** A ref to the Options container element */
8
+ containerRef?: RefObject<HTMLDivElement>;
9
+ /** Offsets the vertical position of the Options */
10
+ offsetY?: number;
11
+ /** Offsets the horizontal position of the Options */
12
+ offsetX?: number;
13
+ /** Centers the vertical position of the Options relative to the Options trigger */
14
+ centerY?: boolean;
15
+ /** Centers the horizontal position of the Options relative to the Options trigger */
16
+ centerX?: boolean;
17
+ /** The direction, in relation to the trigger, the options should open */
18
+ direction?: 'left' | 'right' | 'top' | 'bottom';
19
+ /** Overrides the default maxHeight of 200px */
20
+ maxHeight?: number;
21
+ /** The selector (id or className) of the element the options should open in relataion to */
22
+ parentSelector?: string;
23
+ } & Width;
24
+ declare const Options: {
25
+ ({ id, children, containerRef, parentSelector, width, maxHeight, offsetY, offsetX, centerY, centerX, direction, }: OptionsProps): import("react/jsx-runtime").JSX.Element;
26
+ Item({ children, id, onClick, selected, noSelect, contentPosition, color, accented, ...props }: OptionsItemProps): import("react/jsx-runtime").JSX.Element;
27
+ };
28
+ type OptionsItemProps = {
29
+ children?: ReactNode;
30
+ /** The id of the Option item */
31
+ id?: number | string;
32
+ /** The function to be called when the Option item is clicked */
33
+ onClick: (event: MouseEvent) => void;
34
+ /** Controls whether the Option appears to be hovered */
35
+ selected?: boolean;
36
+ /** Prevents the Option from appearing to be hovered */
37
+ noSelect?: boolean;
38
+ /** The flex positioning of the Option contents */
39
+ contentPosition?: FlexPosition;
40
+ /** The color of the Option text */
41
+ color?: string;
42
+ /** Sets the Option text color to theme.accent */
43
+ accented?: boolean;
44
+ };
45
+ export default Options;
@@ -0,0 +1,13 @@
1
+ import { Margin, Width } from './types';
2
+ type PaginationProps = {
3
+ /** The callback function that responds with the active page */
4
+ onPageNav: (page: number) => void;
5
+ /** The number of page items */
6
+ totalPages: number;
7
+ /** The current page the component should display */
8
+ page?: number;
9
+ /** The max number of page items to display */
10
+ maxVisibleNumbers?: number;
11
+ } & Margin & Width;
12
+ declare const Pagination: ({ onPageNav, page, totalPages, maxVisibleNumbers, width, ...props }: PaginationProps) => import("react/jsx-runtime").JSX.Element;
13
+ export default Pagination;
@@ -0,0 +1,18 @@
1
+ import { Margin } from './types';
2
+ type ChartData = {
3
+ name: string;
4
+ value: number;
5
+ color?: string;
6
+ };
7
+ type Props = {
8
+ /** The chart data array */
9
+ data: ChartData[];
10
+ /** The width & height of the chart */
11
+ size?: number;
12
+ /** The radius of the inner circle */
13
+ innerRadius?: number;
14
+ /** Displays a gray chart if no data is present */
15
+ showWhenEmpty?: boolean;
16
+ } & Margin;
17
+ declare const PieChart: ({ size, data, innerRadius, showWhenEmpty, ...rest }: Props) => import("react/jsx-runtime").JSX.Element;
18
+ export default PieChart;
@@ -0,0 +1,10 @@
1
+ import { CSSProperties as CSS } from 'react';
2
+ import { Margin } from '../types';
3
+ type Props = {
4
+ percent: number;
5
+ size?: number;
6
+ thickness?: number;
7
+ color?: CSS['backgroundColor'];
8
+ } & Margin;
9
+ declare const CirclePercent: ({ percent, size, thickness, color, margin, marginTop, marginBottom, marginRight, marginLeft, }: Props) => import("react/jsx-runtime").JSX.Element;
10
+ export default CirclePercent;
@@ -0,0 +1,23 @@
1
+ import { CSSProperties as CSS } from 'react';
2
+ import { Margin, WidthHeight } from '../types';
3
+ type CircleProps = ({
4
+ circle?: false;
5
+ size?: never;
6
+ } & WidthHeight) | {
7
+ /** Styles the Progress component as a circle */
8
+ circle: true;
9
+ /** The width and height of the circle */
10
+ size?: number;
11
+ width?: never;
12
+ height?: never;
13
+ };
14
+ type ProgressProps = {
15
+ /** The percent completed (0-100) */
16
+ percent: number;
17
+ /** The color of the progress bar */
18
+ color?: CSS['backgroundColor'];
19
+ /** The thickness of the bar or circle */
20
+ thickness?: number;
21
+ } & CircleProps & Margin;
22
+ declare const Progress: ({ percent, color, circle, width, height, size, thickness, margin, marginTop, marginBottom, marginRight, marginLeft, }: ProgressProps) => import("react/jsx-runtime").JSX.Element;
23
+ export default Progress;
@@ -0,0 +1,2 @@
1
+ import Progress from './Progress';
2
+ export default Progress;
@@ -0,0 +1,16 @@
1
+ import { HTMLProps } from 'react';
2
+ import { Margin, As } from './types';
3
+ type RadioProps = {
4
+ /** Id of the input element */
5
+ id?: string;
6
+ /** Places a label element beside the radio. The value will set the text of the label */
7
+ label?: string;
8
+ /** Sets the label on the left or right of the radio */
9
+ labelPosition?: 'left' | 'right';
10
+ /** Disables the radio */
11
+ disabled?: boolean;
12
+ /** Controls the checked property of the radio */
13
+ checked?: boolean;
14
+ } & Margin & As & HTMLProps<HTMLInputElement>;
15
+ declare const Radio: ({ id, label, labelPosition, checked, disabled, margin, marginTop, marginBottom, marginRight, marginLeft, ...props }: RadioProps) => import("react/jsx-runtime").JSX.Element;
16
+ export default Radio;
@@ -0,0 +1,15 @@
1
+ import { Margin, WidthHeight } from './types';
2
+ type SliderProps = {
3
+ /** The current position of the slider knob */
4
+ value: number;
5
+ /** The max value of the slider */
6
+ max?: number;
7
+ /** The number by which the slider should increment/decrement */
8
+ step?: number;
9
+ /** Disables the slider */
10
+ disabled?: boolean;
11
+ /** The function that is called when the slider knob is changed */
12
+ onChange?: (progressValue: number) => void;
13
+ } & WidthHeight & Margin;
14
+ declare const Slider: ({ value, max, step, width, height, disabled, onChange, ...props }: SliderProps) => import("react/jsx-runtime").JSX.Element;
15
+ export default Slider;
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ declare const Spacer: import("@emotion/styled").StyledComponent<{
3
+ theme?: import("@emotion/react").Theme | undefined;
4
+ as?: import("react").ElementType<any> | undefined;
5
+ } & import("./types").Width & import("./types").Height, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
6
+ export default Spacer;
@@ -0,0 +1,16 @@
1
+ import { Sizes } from './Icon/Icon';
2
+ import { Margin, Position } from './types';
3
+ type SpinnerProps = {
4
+ /** The size of the loading icon */
5
+ size?: Sizes;
6
+ /** The color of the loading icon */
7
+ color?: string;
8
+ /** Center positions the Spinner absolutely */
9
+ center?: boolean;
10
+ /** If center positioned, adds a background overlay behind the spinner */
11
+ background?: string | boolean;
12
+ /** If center positioned, specifies the zIndex of the spinner */
13
+ zIndex?: number;
14
+ } & Margin & Position;
15
+ declare const Spinner: ({ size, color, center, background, zIndex, margin, marginTop, marginBottom, marginRight, marginLeft, position, top, bottom, right, left, ...props }: SpinnerProps) => import("react/jsx-runtime").JSX.Element;
16
+ export default Spinner;
@@ -0,0 +1,8 @@
1
+ import { HTMLProps, ReactNode } from 'react';
2
+ import { As, Height, MaxHeight } from '../types';
3
+ type DefaultBodyProps = Omit<HTMLProps<HTMLTableSectionElement>, 'as'> & As;
4
+ type BodyProps = {
5
+ children: ReactNode;
6
+ } & Height & MaxHeight & DefaultBodyProps;
7
+ declare const Body: ({ children, height, maxHeight, ...rest }: BodyProps) => import("react/jsx-runtime").JSX.Element;
8
+ export default Body;
@@ -0,0 +1,10 @@
1
+ import { ReactNode } from 'react';
2
+ import { Padding } from '../types';
3
+ import { ContentProps } from './Content';
4
+ type ColumnProps = {
5
+ children?: ReactNode;
6
+ /** The string value to display if the child text is undefined (i.e. "N/A", "—") */
7
+ defaultValue?: string;
8
+ } & Padding & ContentProps;
9
+ declare const Column: ({ children, contentPosition, direction, justify, align, gap, defaultValue, padding, paddingTop, paddingBottom, paddingRight, paddingLeft, }: ColumnProps) => import("react/jsx-runtime").JSX.Element;
10
+ export default Column;
@@ -0,0 +1,19 @@
1
+ /// <reference types="react" />
2
+ import { FlexDirection, FlexPosition } from '../types';
3
+ export type ContentProps = {
4
+ /** The flex positioning of the content */
5
+ contentPosition?: FlexPosition;
6
+ /** The flex direction of the content */
7
+ direction?: FlexDirection;
8
+ /** The flex positioning of the content */
9
+ justify?: FlexPosition;
10
+ /** The flex alignment of the content */
11
+ align?: FlexPosition;
12
+ /** The flex gap of the content */
13
+ gap?: number | string;
14
+ };
15
+ declare const Content: import("@emotion/styled").StyledComponent<{
16
+ theme?: import("@emotion/react").Theme | undefined;
17
+ as?: import("react").ElementType<any> | undefined;
18
+ } & ContentProps, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
19
+ export default Content;
@@ -0,0 +1,7 @@
1
+ import { TableHeaderRow } from './types';
2
+ type HeaderProps = {
3
+ /** Compensates for the misalignment caused by a scrollable Table Body */
4
+ alignToScrollBody?: boolean;
5
+ };
6
+ declare const Header: ({ children, columns, columnStyles, alignToScrollBody, ...rest }: HeaderProps & TableHeaderRow) => import("react/jsx-runtime").JSX.Element;
7
+ export default Header;
@@ -0,0 +1,14 @@
1
+ import { MouseEvent, ReactNode } from 'react';
2
+ import { ContentProps } from './Content';
3
+ import { SortDir } from './types';
4
+ type HeaderCellProps = {
5
+ children?: ReactNode;
6
+ /** The function to be called when the HeaderCell is clicked */
7
+ onClick?: (event: MouseEvent) => void;
8
+ /** Controls the direction of the sort icon indicating the direction of the data */
9
+ sorted?: SortDir;
10
+ /** The property of the data object to sort by */
11
+ sortKey?: string;
12
+ } & ContentProps;
13
+ declare const HeaderCell: ({ children, onClick, contentPosition, justify, align, direction, gap, sorted, sortKey, }: HeaderCellProps) => import("react/jsx-runtime").JSX.Element;
14
+ export default HeaderCell;
@@ -0,0 +1,3 @@
1
+ import { TableHeaderRow } from './types';
2
+ declare const Row: ({ children, columns, onClick, columnStyles, ...rest }: TableHeaderRow) => import("react/jsx-runtime").JSX.Element;
3
+ export default Row;
@@ -0,0 +1,28 @@
1
+ import { ReactNode } from 'react';
2
+ import { Width } from '../types';
3
+ import { Data, TableProps } from './types';
4
+ declare const Table: {
5
+ <DataType extends Data>({ children, columns, data, ...rest }: TableProps<DataType>): import("react/jsx-runtime").JSX.Element;
6
+ Header: ({ children, columns, columnStyles, alignToScrollBody, ...rest }: {
7
+ alignToScrollBody?: boolean | undefined;
8
+ } & {
9
+ columnStyles?: import("react").CSSProperties | undefined;
10
+ } & {
11
+ columns?: import("./types").Columns | undefined;
12
+ } & Width & import("../types").Margin & import("../types").Padding & import("react").HTMLProps<HTMLTableRowElement>) => import("react/jsx-runtime").JSX.Element;
13
+ HeaderCell: ({ children, onClick, contentPosition, justify, align, direction, gap, sorted, sortKey, }: {
14
+ children?: ReactNode;
15
+ onClick?: ((event: import("react").MouseEvent<Element, MouseEvent>) => void) | undefined;
16
+ sorted?: import("./types").SortDir | undefined;
17
+ sortKey?: string | undefined;
18
+ } & import("./Content").ContentProps) => import("react/jsx-runtime").JSX.Element;
19
+ Body: ({ children, height, maxHeight, ...rest }: {
20
+ children: ReactNode;
21
+ } & import("../types").Height & import("../types").MaxHeight & Omit<import("react").HTMLProps<HTMLTableSectionElement>, "as"> & import("../types").As) => import("react/jsx-runtime").JSX.Element;
22
+ Row: ({ children, columns, onClick, columnStyles, ...rest }: import("./types").TableHeaderRow) => import("react/jsx-runtime").JSX.Element;
23
+ Column: ({ children, contentPosition, direction, justify, align, gap, defaultValue, padding, paddingTop, paddingBottom, paddingRight, paddingLeft, }: {
24
+ children?: ReactNode;
25
+ defaultValue?: string | undefined;
26
+ } & import("../types").Padding & import("./Content").ContentProps) => import("react/jsx-runtime").JSX.Element;
27
+ };
28
+ export default Table;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { Context } from './types';
3
+ declare const TableContext: import("react").Context<Context>;
4
+ export default TableContext;
@@ -0,0 +1,2 @@
1
+ import Table from './Table';
2
+ export default Table;
@@ -0,0 +1,43 @@
1
+ import { CSSProperties, Dispatch, HTMLProps, ReactNode, SetStateAction } from 'react';
2
+ import { As, MarginPadding, Padding, ThemeProp, Width } from '../types';
3
+ export type Data = {
4
+ [key: string]: unknown;
5
+ };
6
+ export type SetData<DataType> = Dispatch<SetStateAction<DataType[]>>;
7
+ export type Columns = number | string;
8
+ export type SortedChildFunc<DataType> = (data: DataType[]) => ReactNode;
9
+ type Default = {
10
+ data?: never;
11
+ children: ReactNode;
12
+ };
13
+ type Sorted<DataType> = {
14
+ /** The data the table should use to add column sort functionality */
15
+ data: DataType[];
16
+ children: SortedChildFunc<DataType>;
17
+ };
18
+ type TableTypes<DataType> = Default | Sorted<DataType>;
19
+ type DefaultTableProps = Omit<HTMLProps<HTMLTableElement>, 'as' | 'children' | 'data'> & As;
20
+ type TableBase = {
21
+ /** If a number, columns creates n number columns of an equal size. If a string, columns sets the gridTemplateColumns property */
22
+ columns?: Columns;
23
+ } & Width & MarginPadding;
24
+ export type TableProps<DataType> = TableBase & TableTypes<DataType> & DefaultTableProps;
25
+ export type TableHeaderRow = {
26
+ /** CSS styles to be passed to every th/td element in the Header/Row */
27
+ columnStyles?: CSSProperties;
28
+ } & TableBase & HTMLProps<HTMLTableRowElement>;
29
+ export type TableElements = {
30
+ as?: string;
31
+ } & ThemeProp & Padding;
32
+ export type SortDir = 'asc' | 'desc' | 'inactive';
33
+ export type ActiveColumn = {
34
+ key: string;
35
+ dir: 'asc' | 'desc';
36
+ };
37
+ type SetColumn = Dispatch<SetStateAction<ActiveColumn | undefined>>;
38
+ export type Context = {
39
+ parentColumns?: Columns;
40
+ activeColumn?: ActiveColumn;
41
+ setActiveColumn?: SetColumn;
42
+ };
43
+ export {};
@@ -0,0 +1,4 @@
1
+ import { CSSProperties, ReactNode } from 'react';
2
+ import { Data } from './types';
3
+ export declare const wrappedChildren: (children: ReactNode, type: 'th' | 'td', style?: CSSProperties) => (import("react/jsx-runtime").JSX.Element | null)[];
4
+ export declare const isEqualContents: (array1?: Data[], array2?: Data[]) => boolean;
@@ -0,0 +1,31 @@
1
+ import { ReactNode } from 'react';
2
+ import { Margin } from './types';
3
+ import { IconNames } from './Icon/icons';
4
+ export type TabItem = {
5
+ /** The id of the tab */
6
+ id: string | number;
7
+ /** The text to be displayed in the tab */
8
+ label: ReactNode;
9
+ /** Controls whether the tab is visible */
10
+ visible?: boolean;
11
+ /** Adds an icon for the specific icon name to the tab */
12
+ icon?: IconNames;
13
+ /** Positions the icon to the left or right of the tab text */
14
+ iconPosition?: 'left' | 'right';
15
+ /** The color of the icon */
16
+ iconColor?: string;
17
+ };
18
+ type Props<ItemType> = {
19
+ /** The tab items to be rendered */
20
+ items: ItemType[];
21
+ /** The id of the active tab */
22
+ activeItem: string | number;
23
+ /** Controls whether the tabs fill the space of the container */
24
+ itemWidth?: 'fit' | 'fill';
25
+ /** The gap between each tab item */
26
+ itemGap?: string | number;
27
+ /** The function called with the tab item after the tab is changed */
28
+ onChange: (tab: ItemType) => void;
29
+ } & Margin;
30
+ declare const Tabs: <ItemType extends TabItem>({ items, activeItem, itemWidth, itemGap, onChange, ...props }: Props<ItemType>) => import("react/jsx-runtime").JSX.Element;
31
+ export default Tabs;
@@ -0,0 +1,18 @@
1
+ import { CheckboxAttributes } from './FormControl';
2
+ import { As, Margin } from './types';
3
+ type ToggleProps = {
4
+ /** Id of the input element */
5
+ id?: string;
6
+ /** Places a label element beside the toggle. The value will set the text of the label */
7
+ label?: string;
8
+ /** Sets the label on the left or right of the toggle */
9
+ labelPosition?: 'left' | 'right';
10
+ /** Disables the toggle */
11
+ disabled?: boolean;
12
+ /** Controls the checked property of the toggle */
13
+ checked?: boolean;
14
+ /** The function called with the toggle value after the toggle is changed */
15
+ onChange: (val: boolean) => void;
16
+ } & Margin & As & CheckboxAttributes;
17
+ declare const Toggle: ({ id, label, labelPosition, checked, disabled, onChange, margin, marginTop, marginBottom, marginRight, marginLeft, ...props }: ToggleProps) => import("react/jsx-runtime").JSX.Element;
18
+ export default Toggle;
@@ -0,0 +1,50 @@
1
+ import { HTMLProps, ReactNode } from 'react';
2
+ import type { As, PopPosition, ThemeProp } from './types';
3
+ type DivProps = Omit<HTMLProps<HTMLDivElement>, 'as'> & As;
4
+ export type TooltipProps = {
5
+ children?: ReactNode;
6
+ /** The element that will trigger the opening of the Tooltip */
7
+ trigger: ReactNode;
8
+ /** The text content of the Tooltip */
9
+ content?: string;
10
+ /** The position of the Tooltip body and arrow in relation to the trigger */
11
+ position?: PopPosition;
12
+ /** Offset of the Tooltip from the trigger */
13
+ offset?: number;
14
+ /** zIndex of the Tooltip's portal container */
15
+ zIndex?: number;
16
+ /** The width of the Tooltip element */
17
+ width?: number | string;
18
+ /** The maxWidth of the Tooltip element */
19
+ maxWidth?: number | string;
20
+ /** The textAlignment of the Tooltip text */
21
+ textAlign?: 'left' | 'right' | 'center';
22
+ /** Controls the open state of the Tooltip */
23
+ open?: boolean;
24
+ /** Prevents the Tooltip from opening */
25
+ disabled?: boolean;
26
+ /** The id of the Tooltip element */
27
+ id?: string;
28
+ /** The backgroundColor of the Tooltip element */
29
+ bgColor?: string;
30
+ /** The text color of the Tooltip element */
31
+ color?: string;
32
+ /** Specify a container element to portal the content into */
33
+ container?: HTMLElement;
34
+ /** The function called after the Tooltip opens */
35
+ afterShow?: () => void;
36
+ /** The function called after the Tooltip closes */
37
+ afterHide?: () => void;
38
+ } & DivProps;
39
+ declare const Tooltip: {
40
+ ({ trigger, children, content, position, offset, zIndex, width, maxWidth, textAlign, open, disabled, id, bgColor, color, container, afterShow, afterHide, ...props }: TooltipProps): import("react/jsx-runtime").JSX.Element;
41
+ Header: import("@emotion/styled").StyledComponent<{
42
+ theme?: import("@emotion/react").Theme | undefined;
43
+ as?: import("react").ElementType<any> | undefined;
44
+ } & ThemeProp, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
45
+ Body: import("@emotion/styled").StyledComponent<{
46
+ theme?: import("@emotion/react").Theme | undefined;
47
+ as?: import("react").ElementType<any> | undefined;
48
+ } & ThemeProp, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
49
+ };
50
+ export default Tooltip;
@@ -0,0 +1,47 @@
1
+ import { CSSProperties as CSS, ReactElement } from 'react';
2
+ import { ColorNames } from '../theme/colors';
3
+ import { Margin, Width } from './types';
4
+ type Color = ColorNames | CSS['color'];
5
+ export type Item = {
6
+ /** Unique ID of the item */
7
+ id: number | string;
8
+ /** The text displayed for the transfer item */
9
+ label: string;
10
+ /** Used as the data of the item */
11
+ value?: unknown;
12
+ /** If both `header` and `body` are provided, this text will be styled as the transfer item's header */
13
+ header?: string;
14
+ /** If both `header` and `body` are provided, this text will be styled as the transfer item's body */
15
+ body?: string;
16
+ /** Any element to be displayed to the left of the item's label/header/body */
17
+ leftElement?: ReactElement;
18
+ /** Any element to be displayed to the right of the item's label/header/body */
19
+ rightElement?: ReactElement;
20
+ /** The left border color of the transfer item */
21
+ color?: Color;
22
+ /** Used to preselect an item */
23
+ selected?: boolean;
24
+ [key: string]: unknown;
25
+ };
26
+ export type Action = 'select' | 'remove';
27
+ export type Next = (item?: Item) => void;
28
+ type TransferListProps = {
29
+ /** Array of objects that will be rendered as individual items in the list */
30
+ items: Item[];
31
+ /** The function called when an item is selected or removed. It passes the entire list of selected items. */
32
+ onChange: (list: Item[]) => void;
33
+ /** The function called before an item is selected or removed */
34
+ beforeItemChange?: (item: Item, action: Action, next: Next) => void;
35
+ /** The header title of the transfer list */
36
+ listTitle?: string;
37
+ /** The text to display in a readOnly state where there are no selected items */
38
+ noItemsMessage?: string;
39
+ /** Disables moving items and only displays the list of selected items */
40
+ readOnly?: boolean;
41
+ /** Hides the select all button */
42
+ hideSelectAll?: boolean;
43
+ /** Hides the remove all button */
44
+ hideRemoveAll?: boolean;
45
+ } & Width & Margin;
46
+ declare const TransferList: ({ items, onChange, beforeItemChange, listTitle, noItemsMessage, hideSelectAll, hideRemoveAll, readOnly, width, margin, marginTop, marginBottom, marginRight, marginLeft, }: TransferListProps) => import("react/jsx-runtime").JSX.Element;
47
+ export default TransferList;