@deque/cauldron-react 2.0.0-canary.b30e4f33 → 2.0.0-canary.cd719c24

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.
@@ -1,12 +1,14 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  export interface CardProps extends React.HTMLAttributes<HTMLDivElement> {
4
+ variant?: 'simple';
4
5
  }
5
6
  declare const Card: {
6
- ({ className, ...other }: CardProps): JSX.Element;
7
+ ({ className, variant, ...other }: CardProps): JSX.Element;
7
8
  displayName: string;
8
9
  propTypes: {
9
10
  className: PropTypes.Requireable<string>;
11
+ variant: PropTypes.Requireable<string>;
10
12
  };
11
13
  };
12
14
  export default Card;
@@ -1,7 +1,9 @@
1
1
  import React from 'react';
2
+ import { IconType, iconTypes } from './types';
3
+ export { IconType, iconTypes };
2
4
  export interface IconProps extends React.HTMLAttributes<HTMLDivElement> {
3
5
  label?: string;
4
- type: string;
6
+ type: IconType;
5
7
  }
6
8
  declare const Icon: React.ForwardRefExoticComponent<IconProps & React.RefAttributes<HTMLDivElement>>;
7
9
  export default Icon;
@@ -0,0 +1,7 @@
1
+ /*!
2
+ * GENERATED CODE. DO NOT EDIT DIRECTLY!
3
+ */
4
+ /** IconType represents each valid icon type. */
5
+ export declare type IconType = 'add-user' | 'arrow-circle-up' | 'arrow-circle-down' | 'arrow-circle-left' | 'arrow-circle-right' | 'arrow-up' | 'arrow-down' | 'arrow-left' | 'arrow-right' | 'arrows-alt' | 'bolt' | 'caution' | 'check-circle' | 'check-shield' | 'check-solid' | 'check' | 'checkbox-checked' | 'checkbox-unchecked' | 'chevron-double-up' | 'chevron-double-down' | 'chevron-double-left' | 'chevron-double-right' | 'chevron-up' | 'chevron-down' | 'chevron-left' | 'chevron-right' | 'close' | 'code' | 'download' | 'exchange' | 'external-link' | 'eye' | 'filter' | 'flag' | 'gears' | 'grid' | 'hamburger-menu' | 'highlight' | 'info-circle-alt' | 'info-circle' | 'info-square' | 'kabob' | 'list' | 'lock' | 'menu' | 'new-releases' | 'new' | 'no' | 'pencil' | 'plus' | 'question-circle' | 'radio-checked' | 'radio-unchecked' | 'recycle' | 'run-again' | 'save' | 'share' | 'sort' | 'star' | 'sun' | 'tag' | 'target' | 'trash' | 'triangle-up' | 'triangle-down' | 'triangle-left' | 'triangle-right' | 'upload';
6
+ /** iconTypes holds each valid icon type. */
7
+ export declare const iconTypes: string[];
@@ -1,7 +1,8 @@
1
1
  import React from 'react';
2
+ import { IconType } from '../Icon';
2
3
  import { TooltipProps } from '../Tooltip';
3
4
  export interface IconButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
4
- icon: string;
5
+ icon: IconType;
5
6
  label: string;
6
7
  tooltipPlacement?: TooltipProps['placement'];
7
8
  tooltipVariant?: TooltipProps['variant'];
@@ -15,5 +15,5 @@ export interface SelectProps extends Omit<React.HTMLProps<HTMLSelectElement>, 'c
15
15
  defaultValue?: any;
16
16
  onChange: (e: React.ChangeEvent<HTMLSelectElement>) => void;
17
17
  }
18
- declare const Select: React.ForwardRefExoticComponent<Pick<SelectProps, "max" | "required" | "default" | "high" | "low" | "disabled" | "error" | "start" | "open" | "media" | "hidden" | "cite" | "data" | "dir" | "form" | "label" | "slot" | "span" | "style" | "summary" | "title" | "pattern" | "async" | "defer" | "manifest" | "color" | "content" | "size" | "wrap" | "multiple" | "key" | "children" | "list" | "step" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "type" | "name" | "target" | "accept" | "acceptCharset" | "action" | "allowFullScreen" | "allowTransparency" | "alt" | "as" | "autoComplete" | "autoFocus" | "autoPlay" | "capture" | "cellPadding" | "cellSpacing" | "charSet" | "challenge" | "checked" | "classID" | "cols" | "colSpan" | "controls" | "coords" | "crossOrigin" | "dateTime" | "download" | "encType" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "frameBorder" | "headers" | "height" | "href" | "hrefLang" | "htmlFor" | "httpEquiv" | "integrity" | "keyParams" | "keyType" | "kind" | "loop" | "marginHeight" | "marginWidth" | "maxLength" | "mediaGroup" | "method" | "min" | "minLength" | "muted" | "nonce" | "noValidate" | "optimum" | "playsInline" | "poster" | "preload" | "readOnly" | "rel" | "reversed" | "rows" | "rowSpan" | "sandbox" | "scope" | "scoped" | "scrolling" | "seamless" | "selected" | "shape" | "sizes" | "src" | "srcDoc" | "srcLang" | "srcSet" | "useMap" | "value" | "width" | "wmode" | "options" | "requiredText"> & React.RefAttributes<HTMLSelectElement>>;
18
+ declare const Select: React.ForwardRefExoticComponent<Pick<SelectProps, "max" | "required" | "default" | "high" | "low" | "disabled" | "error" | "start" | "open" | "media" | "hidden" | "cite" | "data" | "dir" | "form" | "label" | "slot" | "span" | "style" | "summary" | "title" | "pattern" | "async" | "defer" | "manifest" | "color" | "content" | "size" | "wrap" | "multiple" | "key" | "children" | "list" | "step" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "download" | "target" | "type" | "name" | "accept" | "acceptCharset" | "action" | "allowFullScreen" | "allowTransparency" | "alt" | "as" | "autoComplete" | "autoFocus" | "autoPlay" | "capture" | "cellPadding" | "cellSpacing" | "charSet" | "challenge" | "checked" | "classID" | "cols" | "colSpan" | "controls" | "coords" | "crossOrigin" | "dateTime" | "encType" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "frameBorder" | "headers" | "height" | "href" | "hrefLang" | "htmlFor" | "httpEquiv" | "integrity" | "keyParams" | "keyType" | "kind" | "loop" | "marginHeight" | "marginWidth" | "maxLength" | "mediaGroup" | "method" | "min" | "minLength" | "muted" | "nonce" | "noValidate" | "optimum" | "playsInline" | "poster" | "preload" | "readOnly" | "rel" | "reversed" | "rows" | "rowSpan" | "sandbox" | "scope" | "scoped" | "scrolling" | "seamless" | "selected" | "shape" | "sizes" | "src" | "srcDoc" | "srcLang" | "srcSet" | "useMap" | "value" | "width" | "wmode" | "options" | "requiredText"> & React.RefAttributes<HTMLSelectElement>>;
19
19
  export default Select;
@@ -1,5 +1,7 @@
1
1
  import React from 'react';
2
2
  interface TabProps extends React.HTMLAttributes<HTMLLIElement> {
3
+ target: React.RefObject<HTMLDivElement> | HTMLElement;
4
+ id?: string;
3
5
  children?: React.ReactNode;
4
6
  }
5
7
  declare const Tab: React.ForwardRefExoticComponent<TabProps & React.RefAttributes<HTMLLIElement>>;
@@ -1,15 +1,8 @@
1
1
  import React from 'react';
2
- import PropTypes from 'prop-types';
3
2
  interface TabPanelProps extends React.HTMLAttributes<HTMLDivElement> {
3
+ id?: string;
4
4
  children?: React.ReactNode;
5
5
  className?: string;
6
6
  }
7
- declare const TabPanel: {
8
- ({ children, ...other }: TabPanelProps): JSX.Element;
9
- displayName: string;
10
- Proptypes: {
11
- children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
12
- className: PropTypes.Requireable<string>;
13
- };
14
- };
7
+ declare const TabPanel: React.ForwardRefExoticComponent<TabPanelProps & React.RefAttributes<HTMLDivElement>>;
15
8
  export default TabPanel;
@@ -1,6 +1,5 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
- declare type TabsVariant = 'full-width';
4
3
  declare type LabelProps = {
5
4
  'aria-label': string;
6
5
  } | {
@@ -9,23 +8,19 @@ declare type LabelProps = {
9
8
  declare type TabsProps = {
10
9
  children: React.ReactNode;
11
10
  initialActiveIndex?: number;
12
- id?: string;
13
11
  thin?: boolean;
14
12
  className?: string;
15
- variant?: TabsVariant;
16
13
  } & LabelProps;
17
14
  declare const Tabs: {
18
- ({ children, thin, id: propId, initialActiveIndex, variant, className, ...labelProp }: TabsProps): JSX.Element;
15
+ ({ children, thin, initialActiveIndex, className, ...labelProp }: TabsProps): JSX.Element;
19
16
  displayName: string;
20
17
  propTypes: {
21
18
  children: PropTypes.Validator<string | number | boolean | {} | PropTypes.ReactElementLike | PropTypes.ReactNodeArray>;
22
- label: PropTypes.Requireable<string>;
23
- labelledby: PropTypes.Requireable<string>;
24
- id: PropTypes.Requireable<string>;
19
+ 'aria-label': PropTypes.Requireable<string>;
20
+ 'aria-labelledby': PropTypes.Requireable<string>;
25
21
  initialActiveIndex: PropTypes.Requireable<number>;
26
22
  thin: PropTypes.Requireable<boolean>;
27
23
  className: PropTypes.Requireable<string>;
28
- variant: PropTypes.Requireable<string>;
29
24
  };
30
25
  };
31
26
  export default Tabs;
@@ -42,7 +42,6 @@ export default class TextField extends React.Component<TextFieldProps, TextField
42
42
  private errorId;
43
43
  private input;
44
44
  constructor(props: TextFieldProps);
45
- componentDidUpdate(prevProps: TextFieldProps): void;
46
45
  render(): JSX.Element;
47
46
  onChange(e: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>): void;
48
47
  }
@@ -1,26 +1,13 @@
1
+ import { IconType } from '../Icon';
2
+ interface TypeMap {
3
+ [name: string]: {
4
+ className: string;
5
+ icon: IconType;
6
+ };
7
+ }
1
8
  /**
2
9
  * Maps toast types to their classNames and icons
3
10
  */
4
- export declare const typeMap: {
5
- confirmation: {
6
- className: string;
7
- icon: string;
8
- };
9
- caution: {
10
- className: string;
11
- icon: string;
12
- };
13
- 'action-needed': {
14
- className: string;
15
- icon: string;
16
- };
17
- error: {
18
- className: string;
19
- icon: string;
20
- };
21
- info: {
22
- className: string;
23
- icon: string;
24
- };
25
- };
11
+ export declare const typeMap: TypeMap;
26
12
  export declare const tabIndexHandler: (reset: boolean, toast: HTMLElement | null) => any;
13
+ export {};
package/lib/index.d.ts CHANGED
@@ -4,7 +4,7 @@
4
4
  export { default as Workspace } from './components/Workspace';
5
5
  export { default as Main } from './components/Main';
6
6
  export { default as Layout } from './components/Layout';
7
- export { default as Icon } from './components/Icon';
7
+ export { default as Icon, IconType, iconTypes } from './components/Icon';
8
8
  export { default as Offscreen } from './components/Offscreen';
9
9
  export { default as Scrim } from './components/Scrim';
10
10
  export { default as MenuItem } from './components/MenuItem';
package/lib/index.js CHANGED
@@ -112,6 +112,81 @@ var Workspace = /** @class */ (function (_super) {
112
112
 
113
113
  var Offscreen = function (props) { return (React__default.createElement("div", tslib.__assign({ className: "Offscreen" }, props))); };
114
114
 
115
+ /*!
116
+ * GENERATED CODE. DO NOT EDIT DIRECTLY!
117
+ */
118
+ /** iconTypes holds each valid icon type. */
119
+ var iconTypes = [
120
+ 'add-user',
121
+ 'arrow-circle-up',
122
+ 'arrow-circle-down',
123
+ 'arrow-circle-left',
124
+ 'arrow-circle-right',
125
+ 'arrow-up',
126
+ 'arrow-down',
127
+ 'arrow-left',
128
+ 'arrow-right',
129
+ 'arrows-alt',
130
+ 'bolt',
131
+ 'caution',
132
+ 'check-circle',
133
+ 'check-shield',
134
+ 'check-solid',
135
+ 'check',
136
+ 'checkbox-checked',
137
+ 'checkbox-unchecked',
138
+ 'chevron-double-up',
139
+ 'chevron-double-down',
140
+ 'chevron-double-left',
141
+ 'chevron-double-right',
142
+ 'chevron-up',
143
+ 'chevron-down',
144
+ 'chevron-left',
145
+ 'chevron-right',
146
+ 'close',
147
+ 'code',
148
+ 'download',
149
+ 'exchange',
150
+ 'external-link',
151
+ 'eye',
152
+ 'filter',
153
+ 'flag',
154
+ 'gears',
155
+ 'grid',
156
+ 'hamburger-menu',
157
+ 'highlight',
158
+ 'info-circle-alt',
159
+ 'info-circle',
160
+ 'info-square',
161
+ 'kabob',
162
+ 'list',
163
+ 'lock',
164
+ 'menu',
165
+ 'new-releases',
166
+ 'new',
167
+ 'no',
168
+ 'pencil',
169
+ 'plus',
170
+ 'question-circle',
171
+ 'radio-checked',
172
+ 'radio-unchecked',
173
+ 'recycle',
174
+ 'run-again',
175
+ 'save',
176
+ 'share',
177
+ 'sort',
178
+ 'star',
179
+ 'sun',
180
+ 'tag',
181
+ 'target',
182
+ 'trash',
183
+ 'triangle-up',
184
+ 'triangle-down',
185
+ 'triangle-left',
186
+ 'triangle-right',
187
+ 'upload'
188
+ ];
189
+
115
190
  function __variableDynamicImportRuntime0__(path) {
116
191
  switch (path) {
117
192
  case './icons/add-user.svg': return Promise.resolve().then(function () { return require('./add-user-075c63a1.js'); });
@@ -142,10 +217,11 @@ function __variableDynamicImportRuntime0__(path) {
142
217
  case './icons/highlight.svg': return Promise.resolve().then(function () { return require('./highlight-81bfb759.js'); });
143
218
  case './icons/info-circle-alt.svg': return Promise.resolve().then(function () { return require('./info-circle-alt-b1a696c7.js'); });
144
219
  case './icons/info-circle.svg': return Promise.resolve().then(function () { return require('./info-circle-b43f7a9b.js'); });
220
+ case './icons/info-square.svg': return Promise.resolve().then(function () { return require('./info-square-f193e281.js'); });
145
221
  case './icons/kabob.svg': return Promise.resolve().then(function () { return require('./kabob-692fdc00.js'); });
146
222
  case './icons/list.svg': return Promise.resolve().then(function () { return require('./list-8fbd8209.js'); });
147
223
  case './icons/lock.svg': return Promise.resolve().then(function () { return require('./lock-bd0122db.js'); });
148
- case './icons/menu.svg': return Promise.resolve().then(function () { return require('./menu-2bb052ac.js'); });
224
+ case './icons/menu.svg': return Promise.resolve().then(function () { return require('./menu-2f2be7c2.js'); });
149
225
  case './icons/new-releases.svg': return Promise.resolve().then(function () { return require('./new-releases-ac749bdd.js'); });
150
226
  case './icons/new.svg': return Promise.resolve().then(function () { return require('./new-6c3ac7d7.js'); });
151
227
  case './icons/no.svg': return Promise.resolve().then(function () { return require('./no-bb3aa565.js'); });
@@ -154,6 +230,7 @@ function __variableDynamicImportRuntime0__(path) {
154
230
  case './icons/question-circle.svg': return Promise.resolve().then(function () { return require('./question-circle-c3c634c4.js'); });
155
231
  case './icons/radio-checked.svg': return Promise.resolve().then(function () { return require('./radio-checked-006112fe.js'); });
156
232
  case './icons/radio-unchecked.svg': return Promise.resolve().then(function () { return require('./radio-unchecked-a76e2d66.js'); });
233
+ case './icons/recycle.svg': return Promise.resolve().then(function () { return require('./recycle-0198fb67.js'); });
157
234
  case './icons/run-again.svg': return Promise.resolve().then(function () { return require('./run-again-c9777075.js'); });
158
235
  case './icons/save.svg': return Promise.resolve().then(function () { return require('./save-edf5fc68.js'); });
159
236
  case './icons/share.svg': return Promise.resolve().then(function () { return require('./share-70e94257.js'); });
@@ -205,6 +282,7 @@ var Icon = React.forwardRef(function (_a, ref) {
205
282
  Icon.propTypes = {
206
283
  label: PropTypes.string,
207
284
  className: PropTypes.string,
285
+ // @ts-expect-error
208
286
  type: PropTypes.string.isRequired
209
287
  };
210
288
  Icon.displayName = 'Icon';
@@ -1485,14 +1563,15 @@ var IconButton = React.forwardRef(function (_a, ref) {
1485
1563
  !disabled && (React__default.createElement(Tooltip, { target: buttonRef, placement: tooltipPlacement, variant: tooltipVariant, portal: tooltipPortal, association: "aria-labelledby", hideElementOnHidden: true }, label))));
1486
1564
  });
1487
1565
  IconButton.propTypes = {
1566
+ // @ts-expect-error
1488
1567
  icon: PropTypes.string.isRequired,
1489
1568
  label: PropTypes.string.isRequired,
1490
- // @ts-ignore
1569
+ // @ts-expect-error
1491
1570
  tooltipPlacement: PropTypes.string,
1492
- // @ts-ignore
1571
+ // @ts-expect-error
1493
1572
  tooltipVariant: PropTypes.string,
1494
1573
  tooltipPortal: PropTypes.any,
1495
- // @ts-ignore
1574
+ // @ts-expect-error
1496
1575
  variant: PropTypes.string
1497
1576
  };
1498
1577
  IconButton.displayName = 'IconButton';
@@ -2242,12 +2321,16 @@ function TooltipTabstop(_a) {
2242
2321
  TooltipTabstop.displayName = 'TooltipTabstop';
2243
2322
 
2244
2323
  var Card = function (_a) {
2245
- var className = _a.className, other = tslib.__rest(_a, ["className"]);
2246
- return (React__default.createElement("div", tslib.__assign({ className: classNames('Card', className) }, other)));
2324
+ var className = _a.className, variant = _a.variant, other = tslib.__rest(_a, ["className", "variant"]);
2325
+ return (React__default.createElement("div", tslib.__assign({ className: classNames(className, {
2326
+ 'Card--simple': variant === 'simple',
2327
+ Card: !variant
2328
+ }) }, other)));
2247
2329
  };
2248
2330
  Card.displayName = 'Card';
2249
2331
  Card.propTypes = {
2250
- className: PropTypes.string
2332
+ className: PropTypes.string,
2333
+ variant: PropTypes.string
2251
2334
  };
2252
2335
 
2253
2336
  var CardHeader = function (_a) {
@@ -2291,21 +2374,12 @@ var TextField = /** @class */ (function (_super) {
2291
2374
  _this.onChange = _this.onChange.bind(_this);
2292
2375
  return _this;
2293
2376
  }
2294
- TextField.prototype.componentDidUpdate = function (prevProps) {
2295
- var value = this.props.value;
2296
- if (value === prevProps.value) {
2297
- return;
2298
- }
2299
- this.setState({ value: value });
2300
- };
2301
2377
  TextField.prototype.render = function () {
2302
2378
  var _this = this;
2303
2379
  var isRequired = !!this.props.required;
2304
2380
  // disabling `no-unused-vars` to prevent specific
2305
2381
  // props from being passed through to the input
2306
- var _a = this.props, label = _a.label, fieldRef = _a.fieldRef,
2307
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
2308
- value = _a.value,
2382
+ var _a = this.props, label = _a.label, fieldRef = _a.fieldRef, value = _a.value,
2309
2383
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
2310
2384
  onChange = _a.onChange,
2311
2385
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
@@ -2330,7 +2404,7 @@ var TextField = /** @class */ (function (_super) {
2330
2404
  'Field__text-input': !multiline,
2331
2405
  Field__textarea: multiline,
2332
2406
  'Field--has-error': error
2333
- }), id: this.inputId, value: this.state.value, onChange: this.onChange, "aria-invalid": !!error, ref: function (input) {
2407
+ }), id: this.inputId, value: typeof value !== 'undefined' ? value : this.state.value, onChange: this.onChange, "aria-invalid": !!error, ref: function (input) {
2334
2408
  _this.input = input;
2335
2409
  setRef(fieldRef, input);
2336
2410
  } }, other, inputProps)),
@@ -2383,7 +2457,7 @@ function PanelTrigger(_a) {
2383
2457
  var children = _a.children, className = _a.className, open = _a.open, fullWidth = _a.fullWidth, onClick = _a.onClick, other = tslib.__rest(_a, ["children", "className", "open", "fullWidth", "onClick"]);
2384
2458
  return (React__default.createElement("button", tslib.__assign({}, other, { className: classNames('ExpandCollapse__trigger', fullWidth ? 'fullWidth' : '', className), type: "button", "aria-expanded": open, onClick: onClick }),
2385
2459
  React__default.createElement("div", { className: "ExpandCollapse__trigger-title" }, typeof children === 'function' ? children({ open: !!open }) : children),
2386
- React__default.createElement(Icon, { type: "chevron-" + (open ? 'down' : 'right') })));
2460
+ React__default.createElement(Icon, { type: open ? 'chevron-down' : 'chevron-right' })));
2387
2461
  }
2388
2462
  PanelTrigger.propTypes = {
2389
2463
  children: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),
@@ -7871,42 +7945,31 @@ TableRow.propTypes = {
7871
7945
  className: PropTypes.string
7872
7946
  };
7873
7947
 
7874
- var TabPanel = function (_a) {
7875
- var children = _a.children, other = tslib.__rest(_a, ["children"]);
7876
- return (React__default.createElement("div", tslib.__assign({ role: "tabpanel" }, other), children));
7877
- };
7878
- TabPanel.displayName = 'TabPanel';
7879
- TabPanel.Proptypes = {
7880
- children: PropTypes.node,
7881
- className: PropTypes.string
7882
- };
7883
-
7884
7948
  var Tab = React__default.forwardRef(function (_a, ref) {
7885
- var children = _a.children, other = tslib.__rest(_a, ["children"]);
7886
- return (React__default.createElement("li", tslib.__assign({ ref: ref, role: "tab" }, other), children));
7949
+ var children = _a.children, propId = _a.id, target = _a.target, other = tslib.__rest(_a, ["children", "id", "target"]);
7950
+ return (React__default.createElement("li", tslib.__assign({ id: propId, ref: ref, role: "tab" }, other), children));
7887
7951
  });
7888
7952
  Tab.displayName = 'Tab';
7889
7953
  Tab.propTypes = {
7954
+ target: PropTypes.any.isRequired,
7955
+ id: PropTypes.string,
7890
7956
  children: PropTypes.node
7891
7957
  };
7892
7958
 
7893
- var _a$1 = [37, 39, 36, 35], left = _a$1[0], right = _a$1[1], home = _a$1[2], end = _a$1[3];
7894
7959
  var Tabs = function (_a) {
7895
- var children = _a.children, thin = _a.thin, propId = _a.id, _b = _a.initialActiveIndex, initialActiveIndex = _b === void 0 ? 0 : _b, variant = _a.variant, className = _a.className, labelProp = tslib.__rest(_a, ["children", "thin", "id", "initialActiveIndex", "variant", "className"]);
7960
+ var children = _a.children, thin = _a.thin, _b = _a.initialActiveIndex, initialActiveIndex = _b === void 0 ? 0 : _b, className = _a.className, labelProp = tslib.__rest(_a, ["children", "thin", "initialActiveIndex", "className"]);
7896
7961
  var _c = React.useState(initialActiveIndex), activeIndex = _c[0], setActiveIndex = _c[1];
7897
- var id = (propId ? [propId] : nextId.useId(1, 'tabs'))[0];
7898
7962
  var focusedTabRef = React.useRef(null);
7899
7963
  var tabs = React__default.Children.toArray(children).filter(function (child) { return child.type === Tab; });
7900
- var panels = React__default.Children.toArray(children).filter(function (child) { return child.type === TabPanel; });
7901
7964
  var tabCount = tabs.length;
7902
7965
  var handleClick = function (index) {
7903
7966
  setActiveIndex(index);
7904
7967
  };
7905
7968
  var handleKeyDown = function (event) {
7906
- var which = event.which;
7969
+ var key = event.key;
7907
7970
  var newIndex = activeIndex;
7908
- switch (which) {
7909
- case left: {
7971
+ switch (key) {
7972
+ case 'ArrowLeft': {
7910
7973
  newIndex = activeIndex - 1;
7911
7974
  // circularity
7912
7975
  if (newIndex === -1) {
@@ -7915,7 +7978,7 @@ var Tabs = function (_a) {
7915
7978
  setActiveIndex(newIndex);
7916
7979
  break;
7917
7980
  }
7918
- case right: {
7981
+ case 'ArrowRight': {
7919
7982
  newIndex = activeIndex + 1;
7920
7983
  // circularity
7921
7984
  if (newIndex === tabCount) {
@@ -7924,12 +7987,13 @@ var Tabs = function (_a) {
7924
7987
  setActiveIndex(newIndex);
7925
7988
  break;
7926
7989
  }
7927
- case home: {
7990
+ case 'Home': {
7928
7991
  newIndex = 0;
7929
7992
  setActiveIndex(newIndex);
7930
7993
  break;
7931
7994
  }
7932
- case end: {
7995
+ case 'End': {
7996
+ event.preventDefault();
7933
7997
  newIndex = tabCount - 1;
7934
7998
  setActiveIndex(newIndex);
7935
7999
  break;
@@ -7938,22 +8002,24 @@ var Tabs = function (_a) {
7938
8002
  };
7939
8003
  var tabComponents = tabs.map(function (child, index) {
7940
8004
  var _a;
7941
- var other = tslib.__rest(child.props, []);
8005
+ var _b;
8006
+ var _c = child.props, target = _c.target, propId = _c.id, other = tslib.__rest(_c, ["target", "id"]);
7942
8007
  var selected = index === activeIndex;
7943
- var config = tslib.__assign((_a = { id: id + "-" + index, className: classNames('Tab', {
7944
- 'Tab--active': selected,
7945
- 'Tab--full-width': variant === 'full-width'
7946
- }), tabIndex: index === activeIndex ? 0 : -1 }, _a['aria-controls'] = id + "-panel-" + index, _a['aria-selected'] = selected, _a.ref = index === activeIndex ? focusedTabRef : null, _a.onClick = function () { return handleClick(index); }, _a), other);
8008
+ var id = (propId ? [propId] : nextId.useId(1, 'tab'))[0];
8009
+ React.useEffect(function () {
8010
+ var _a;
8011
+ (_a = target.current) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-labelledby', id);
8012
+ }, [target]);
8013
+ React.useEffect(function () {
8014
+ var _a, _b;
8015
+ index === activeIndex
8016
+ ? (_a = target.current) === null || _a === void 0 ? void 0 : _a.classList.remove('TabPanel--hidden') : (_b = target.current) === null || _b === void 0 ? void 0 : _b.classList.add('TabPanel--hidden');
8017
+ }, [activeIndex]);
8018
+ var config = tslib.__assign((_a = { id: id, className: classNames('Tab', {
8019
+ 'Tab--active': selected
8020
+ }), tabIndex: index === activeIndex ? 0 : -1 }, _a['aria-controls'] = (_b = target.current) === null || _b === void 0 ? void 0 : _b.id, _a['aria-selected'] = selected, _a.ref = index === activeIndex ? focusedTabRef : null, _a.onClick = function () { return handleClick(index); }, _a), other);
7947
8021
  return React__default.cloneElement(child, config);
7948
8022
  });
7949
- var tabPanelComponents = panels.map(function (child, index) {
7950
- var _a;
7951
- var _b = child.props, className = _b.className, other = tslib.__rest(_b, ["className"]);
7952
- var panelId = id + "-panel-" + index;
7953
- return React__default.cloneElement(child, tslib.__assign((_a = { id: panelId }, _a['aria-labelledby'] = id + "-" + index, _a.className = classNames('TabPanel', className, {
7954
- 'TabPanel--hidden': activeIndex !== index
7955
- }), _a), other));
7956
- });
7957
8023
  useDidUpdate(function () {
7958
8024
  var _a;
7959
8025
  (_a = focusedTabRef.current) === null || _a === void 0 ? void 0 : _a.focus();
@@ -7961,21 +8027,28 @@ var Tabs = function (_a) {
7961
8027
  return (React__default.createElement("div", { className: classNames('Tabs', className, {
7962
8028
  'Tabs--thin': thin
7963
8029
  }) },
7964
- React__default.createElement("ul", tslib.__assign({ role: "tablist", className: classNames('Tablist', {
7965
- 'Tablist--full-width': variant === 'full-width'
7966
- }) }, labelProp, { onKeyDown: handleKeyDown }), tabComponents),
7967
- tabPanelComponents));
8030
+ React__default.createElement("ul", tslib.__assign({ role: "tablist", className: "Tablist" }, labelProp, { onKeyDown: handleKeyDown }), tabComponents)));
7968
8031
  };
7969
8032
  Tabs.displayName = 'Tabs';
7970
8033
  Tabs.propTypes = {
7971
8034
  children: PropTypes.node.isRequired,
7972
- label: PropTypes.string,
7973
- labelledby: PropTypes.string,
7974
- id: PropTypes.string,
8035
+ 'aria-label': PropTypes.string,
8036
+ 'aria-labelledby': PropTypes.string,
7975
8037
  initialActiveIndex: PropTypes.number,
7976
8038
  thin: PropTypes.bool,
7977
- className: PropTypes.string,
7978
- variant: PropTypes.string
8039
+ className: PropTypes.string
8040
+ };
8041
+
8042
+ var TabPanel = React.forwardRef(function (_a, ref) {
8043
+ var children = _a.children, propId = _a.id, className = _a.className, other = tslib.__rest(_a, ["children", "id", "className"]);
8044
+ var id = (propId ? [propId] : nextId.useId(1, 'tabpanel'))[0];
8045
+ return (React__default.createElement("div", tslib.__assign({ role: "tabpanel", className: classNames('TabPanel', className), id: id, ref: ref }, other), children));
8046
+ });
8047
+ TabPanel.displayName = 'TabPanel';
8048
+ TabPanel.propTypes = {
8049
+ id: PropTypes.string,
8050
+ children: PropTypes.node,
8051
+ className: PropTypes.string
7979
8052
  };
7980
8053
 
7981
8054
  var commonPropTypes = {
@@ -8201,5 +8274,6 @@ exports.TopBarMenu = TopBarMenu;
8201
8274
  exports.TopBarTrigger = TopBarTrigger;
8202
8275
  exports.Workspace = Workspace;
8203
8276
  exports.focusableSelector = focusableSelector;
8277
+ exports.iconTypes = iconTypes;
8204
8278
  exports.useDidUpdate = useDidUpdate;
8205
8279
  exports.useThemeContext = useThemeContext;
@@ -0,0 +1,25 @@
1
+ 'use strict';
2
+
3
+ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
4
+
5
+ var React = require('react');
6
+ var React__default = _interopDefault(React);
7
+
8
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
9
+
10
+ var _ref = /*#__PURE__*/React.createElement("path", {
11
+ d: "M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-7 9h-2V5h2v6zm0 4h-2v-2h2v2z",
12
+ vectorEffect: "non-scaling-stroke",
13
+ fill: "currentColor"
14
+ });
15
+
16
+ function SvgInfoSquare(props) {
17
+ return /*#__PURE__*/React.createElement("svg", _extends({
18
+ overflow: "visible",
19
+ preserveAspectRatio: "none",
20
+ width: 24,
21
+ height: 24
22
+ }, props), _ref);
23
+ }
24
+
25
+ exports.default = SvgInfoSquare;
@@ -7,24 +7,7 @@ var React__default = _interopDefault(React);
7
7
 
8
8
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
9
9
 
10
- var _ref = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("path", {
11
- d: "M0 0h24v24H0V0z",
12
- id: "menu_svg__a",
13
- vectorEffect: "non-scaling-stroke",
14
- fill: "currentColor"
15
- }));
16
-
17
- var _ref2 = /*#__PURE__*/React.createElement("clipPath", {
18
- xmlnsXlink: "http://www.w3.org/1999/xlink",
19
- id: "menu_svg__b",
20
- vectorEffect: "non-scaling-stroke"
21
- }, /*#__PURE__*/React.createElement("use", {
22
- xlinkHref: "#menu_svg__a",
23
- vectorEffect: "non-scaling-stroke"
24
- }));
25
-
26
- var _ref3 = /*#__PURE__*/React.createElement("path", {
27
- clipPath: "url(#menu_svg__b)",
10
+ var _ref = /*#__PURE__*/React.createElement("path", {
28
11
  d: "M20 9H4v2h16V9zM4 15h16v-2H4v2z",
29
12
  vectorEffect: "non-scaling-stroke",
30
13
  fill: "currentColor"
@@ -37,7 +20,7 @@ function SvgMenu(props) {
37
20
  viewBox: "0 0 24 24",
38
21
  width: 19,
39
22
  height: 19
40
- }, props), _ref, _ref2, _ref3);
23
+ }, props), _ref);
41
24
  }
42
25
 
43
26
  exports.default = SvgMenu;
@@ -0,0 +1,25 @@
1
+ 'use strict';
2
+
3
+ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
4
+
5
+ var React = require('react');
6
+ var React__default = _interopDefault(React);
7
+
8
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
9
+
10
+ var _ref = /*#__PURE__*/React.createElement("path", {
11
+ d: "M12 6v3l4-4-4-4v3c-4.42 0-8 3.58-8 8 0 1.57.46 3.03 1.24 4.26L6.7 14.8A5.87 5.87 0 016 12c0-3.31 2.69-6 6-6zm6.76 1.74L17.3 9.2c.44.84.7 1.79.7 2.8 0 3.31-2.69 6-6 6v-3l-4 4 4 4v-3c4.42 0 8-3.58 8-8 0-1.57-.46-3.03-1.24-4.26z",
12
+ vectorEffect: "non-scaling-stroke",
13
+ fill: "currentColor"
14
+ });
15
+
16
+ function SvgRecycle(props) {
17
+ return /*#__PURE__*/React.createElement("svg", _extends({
18
+ overflow: "visible",
19
+ preserveAspectRatio: "none",
20
+ width: 24,
21
+ height: 24
22
+ }, props), _ref);
23
+ }
24
+
25
+ exports.default = SvgRecycle;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deque/cauldron-react",
3
- "version": "2.0.0-canary.b30e4f33",
3
+ "version": "2.0.0-canary.cd719c24",
4
4
  "description": "Fully accessible react components library for Deque Cauldron",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -13,6 +13,7 @@
13
13
  ],
14
14
  "scripts": {
15
15
  "build": "yarn build:lib && yarn build:css",
16
+ "prebuild:lib": "node scripts/buildIconTypes.js",
16
17
  "build:lib": "rollup -c && tsc --declaration --emitDeclarationOnly --outDir lib",
17
18
  "build:css": "postcss --output=lib/cauldron.css src/index.css",
18
19
  "dev": "concurrently 'yarn build:css --watch' 'rollup -c --watch'",