@deephaven/components 0.16.1-vite.20 → 0.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.
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ interface EditableItemListProps {
3
+ isInvalid?: boolean;
4
+ items: string[];
5
+ onDelete: (item: string) => void;
6
+ onAdd: (item: string) => void;
7
+ validate?: (item: string) => Error | null;
8
+ }
9
+ declare const EditableItemList: (props: EditableItemListProps) => React.ReactElement;
10
+ export default EditableItemList;
11
+ //# sourceMappingURL=EditableItemList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditableItemList.d.ts","sourceRoot":"","sources":["../src/EditableItemList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAMN,MAAM,OAAO,CAAC;AAOf,UAAU,qBAAqB;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,KAAK,GAAG,IAAI,CAAC;CAC3C;AAGD,QAAA,MAAM,gBAAgB,UAAW,qBAAqB,KAAG,MAAM,YA0H9D,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
@@ -0,0 +1,107 @@
1
+ import React, { useCallback, useMemo, useState } from 'react';
2
+ import classNames from 'classnames';
3
+ import clamp from 'lodash.clamp';
4
+ import { vsAdd, vsTrash } from '@deephaven/icons';
5
+ import { Button, ItemList } from "./index.js";
6
+
7
+ // Display a list of items with an input for adding new items, and Add/Delete buttons
8
+ var EditableItemList = props => {
9
+ var {
10
+ isInvalid = false,
11
+ items,
12
+ onAdd = () => undefined,
13
+ onDelete = () => undefined,
14
+ validate = () => null
15
+ } = props;
16
+ var [inputError, setInputError] = useState(null);
17
+ var [selectedIndex, setSelectedIndex] = useState();
18
+ var [value, setValue] = useState('');
19
+ var handleSelect = useCallback(index => {
20
+ setSelectedIndex(index);
21
+ }, []);
22
+ var handleDelete = useCallback(() => {
23
+ var newIndex = selectedIndex === items.length - 1 ? items.length - 2 : selectedIndex;
24
+
25
+ if (selectedIndex !== undefined && selectedIndex >= 0 && selectedIndex < items.length) {
26
+ onDelete(items[selectedIndex]);
27
+ }
28
+
29
+ setSelectedIndex(newIndex === -1 ? undefined : newIndex);
30
+ }, [items, selectedIndex, onDelete]);
31
+ var handleAdd = useCallback(() => {
32
+ var validationError = validate(value);
33
+
34
+ if (validationError == null) {
35
+ onAdd(value);
36
+ setValue('');
37
+ } else {
38
+ setInputError(validationError);
39
+ }
40
+ }, [value, onAdd, validate]);
41
+ var handleInputChange = useCallback(event => {
42
+ var {
43
+ value: inputValue
44
+ } = event.target;
45
+ setValue(inputValue);
46
+ setInputError(validate(inputValue));
47
+ }, [validate]);
48
+ var handleInputFocus = useCallback(() => {
49
+ setSelectedIndex(undefined);
50
+ }, []);
51
+ var handleInputKeyDown = useCallback(event => {
52
+ if (event.key === 'Enter') {
53
+ handleAdd();
54
+ }
55
+ }, [handleAdd]);
56
+ var selectedRanges = useMemo(() => selectedIndex === undefined ? [] : [[selectedIndex, selectedIndex]], [selectedIndex]);
57
+ var containerHeight = useMemo(() => 14 + clamp(items.length, 1, 6) * ItemList.DEFAULT_ROW_HEIGHT, [items.length]);
58
+ return /*#__PURE__*/React.createElement("div", {
59
+ className: classNames('editable-item-list-container', {
60
+ 'is-invalid': isInvalid
61
+ })
62
+ }, /*#__PURE__*/React.createElement("div", {
63
+ style: {
64
+ height: containerHeight
65
+ }
66
+ }, /*#__PURE__*/React.createElement(ItemList, {
67
+ itemCount: items.length,
68
+ items: items.map((item, index) => ({
69
+ value: item,
70
+ isSelected: index === selectedIndex
71
+ })),
72
+ offset: 0,
73
+ onSelect: handleSelect,
74
+ selectedRanges: selectedRanges
75
+ })), /*#__PURE__*/React.createElement("div", {
76
+ className: "d-flex flex-row pt-2"
77
+ }, /*#__PURE__*/React.createElement("div", {
78
+ className: "d-flex flex-grow-1"
79
+ }, /*#__PURE__*/React.createElement("input", {
80
+ className: classNames('form-control', {
81
+ 'is-invalid': inputError != null
82
+ }),
83
+ placeholder: "Enter value",
84
+ type: "text",
85
+ value: value,
86
+ onChange: handleInputChange,
87
+ onFocus: handleInputFocus,
88
+ onKeyDown: handleInputKeyDown
89
+ })), /*#__PURE__*/React.createElement("div", {
90
+ className: "d-flex align-items-start mt-1 ml-2"
91
+ }, /*#__PURE__*/React.createElement(Button, {
92
+ kind: "ghost",
93
+ onClick: handleAdd,
94
+ disabled: inputError != null || value == null || value === '',
95
+ icon: vsAdd,
96
+ tooltip: "Add new item"
97
+ }), /*#__PURE__*/React.createElement(Button, {
98
+ kind: "ghost",
99
+ onClick: handleDelete,
100
+ disabled: selectedIndex === undefined,
101
+ icon: vsTrash,
102
+ tooltip: "Delete selected item"
103
+ }))));
104
+ };
105
+
106
+ export default EditableItemList;
107
+ //# sourceMappingURL=EditableItemList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditableItemList.js","names":["React","useCallback","useMemo","useState","classNames","clamp","vsAdd","vsTrash","Button","ItemList","EditableItemList","props","isInvalid","items","onAdd","undefined","onDelete","validate","inputError","setInputError","selectedIndex","setSelectedIndex","value","setValue","handleSelect","index","handleDelete","newIndex","length","handleAdd","validationError","handleInputChange","event","inputValue","target","handleInputFocus","handleInputKeyDown","key","selectedRanges","containerHeight","DEFAULT_ROW_HEIGHT","height","map","item","isSelected"],"sources":["../src/EditableItemList.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n KeyboardEvent,\n useCallback,\n useMemo,\n useState,\n} from 'react';\nimport classNames from 'classnames';\nimport clamp from 'lodash.clamp';\nimport { vsAdd, vsTrash } from '@deephaven/icons';\nimport { Range } from '@deephaven/utils';\nimport { Button, ItemList } from '.';\n\ninterface EditableItemListProps {\n isInvalid?: boolean;\n items: string[];\n onDelete: (item: string) => void;\n onAdd: (item: string) => void;\n validate?: (item: string) => Error | null;\n}\n\n// Display a list of items with an input for adding new items, and Add/Delete buttons\nconst EditableItemList = (props: EditableItemListProps): React.ReactElement => {\n const {\n isInvalid = false,\n items,\n onAdd = () => undefined,\n onDelete = () => undefined,\n validate = () => null,\n } = props;\n const [inputError, setInputError] = useState<Error | null>(null);\n const [selectedIndex, setSelectedIndex] = useState<number | undefined>();\n const [value, setValue] = useState('');\n\n const handleSelect = useCallback(index => {\n setSelectedIndex(index);\n }, []);\n\n const handleDelete = useCallback(() => {\n const newIndex =\n selectedIndex === items.length - 1 ? items.length - 2 : selectedIndex;\n if (\n selectedIndex !== undefined &&\n selectedIndex >= 0 &&\n selectedIndex < items.length\n ) {\n onDelete(items[selectedIndex]);\n }\n setSelectedIndex(newIndex === -1 ? undefined : newIndex);\n }, [items, selectedIndex, onDelete]);\n\n const handleAdd = useCallback(() => {\n const validationError = validate(value);\n if (validationError == null) {\n onAdd(value);\n setValue('');\n } else {\n setInputError(validationError);\n }\n }, [value, onAdd, validate]);\n\n const handleInputChange = useCallback(\n (event: ChangeEvent<HTMLInputElement>) => {\n const { value: inputValue } = event.target;\n setValue(inputValue);\n setInputError(validate(inputValue));\n },\n [validate]\n );\n\n const handleInputFocus = useCallback(() => {\n setSelectedIndex(undefined);\n }, []);\n\n const handleInputKeyDown = useCallback(\n (event: KeyboardEvent) => {\n if (event.key === 'Enter') {\n handleAdd();\n }\n },\n [handleAdd]\n );\n\n const selectedRanges = useMemo(\n (): Range[] =>\n selectedIndex === undefined ? [] : [[selectedIndex, selectedIndex]],\n [selectedIndex]\n );\n const containerHeight = useMemo(\n (): number => 14 + clamp(items.length, 1, 6) * ItemList.DEFAULT_ROW_HEIGHT,\n [items.length]\n );\n\n return (\n <div\n className={classNames('editable-item-list-container', {\n 'is-invalid': isInvalid,\n })}\n >\n <div style={{ height: containerHeight }}>\n <ItemList\n itemCount={items.length}\n items={items.map((item, index) => ({\n value: item,\n isSelected: index === selectedIndex,\n }))}\n offset={0}\n onSelect={handleSelect}\n selectedRanges={selectedRanges}\n />\n </div>\n <div className=\"d-flex flex-row pt-2\">\n <div className=\"d-flex flex-grow-1\">\n <input\n className={classNames('form-control', {\n 'is-invalid': inputError != null,\n })}\n placeholder=\"Enter value\"\n type=\"text\"\n value={value}\n onChange={handleInputChange}\n onFocus={handleInputFocus}\n onKeyDown={handleInputKeyDown}\n />\n </div>\n <div className=\"d-flex align-items-start mt-1 ml-2\">\n <Button\n kind=\"ghost\"\n onClick={handleAdd}\n disabled={inputError != null || value == null || value === ''}\n icon={vsAdd}\n tooltip=\"Add new item\"\n />\n <Button\n kind=\"ghost\"\n onClick={handleDelete}\n disabled={selectedIndex === undefined}\n icon={vsTrash}\n tooltip=\"Delete selected item\"\n />\n </div>\n </div>\n </div>\n );\n};\n\nexport default EditableItemList;\n"],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -24,6 +24,7 @@ export { default as DeephavenSpinner } from './DeephavenSpinner';
24
24
  export { default as DraggableItemList } from './DraggableItemList';
25
25
  export * from './DraggableItemList';
26
26
  export { default as DragUtils } from './DragUtils';
27
+ export { default as EditableItemList } from './EditableItemList';
27
28
  export { default as HierarchicalCheckboxMenu } from './HierarchicalCheckboxMenu';
28
29
  export * from './HierarchicalCheckboxMenu';
29
30
  export * from './ItemList';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -19,6 +19,7 @@ export { default as DeephavenSpinner } from "./DeephavenSpinner.js";
19
19
  export { default as DraggableItemList } from "./DraggableItemList.js";
20
20
  export * from "./DraggableItemList.js";
21
21
  export { default as DragUtils } from "./DragUtils.js";
22
+ export { default as EditableItemList } from "./EditableItemList.js";
22
23
  export { default as HierarchicalCheckboxMenu } from "./HierarchicalCheckboxMenu.js";
23
24
  export * from "./HierarchicalCheckboxMenu.js";
24
25
  export * from "./ItemList.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["$","window","jQuery","default","AutoCompleteInput","AutoResizeTextarea","BasicModal","Button","ButtonGroup","ButtonOld","CardFlip","Collapse","Checkbox","ComboBox","CustomTimeSelect","DebouncedSearchInput","DeephavenSpinner","DraggableItemList","DragUtils","HierarchicalCheckboxMenu","ItemListItem","LoadingOverlay","LoadingSpinner","DropdownMenu","MaskedInput","Option","RadioGroup","RadioItem","Select","SearchInput","SelectValueList","SocketedButton","ThemeExport","TimeInput","TimeSlider","ToastNotification","UISwitch","ValidateLabelInput"],"sources":["../src/index.ts"],"sourcesContent":["/** Shim for using jquery in frameworks included by react (such as bootstrap) */\nimport $ from 'jquery';\n\ndeclare global {\n interface Window {\n $: typeof $;\n jQuery: typeof $;\n }\n}\n\nwindow.$ = $;\nwindow.jQuery = $;\n\nexport type { Range } from '@deephaven/utils';\nexport { default as AutoCompleteInput } from './AutoCompleteInput';\nexport { default as AutoResizeTextarea } from './AutoResizeTextarea';\nexport { default as BasicModal } from './BasicModal';\nexport { default as Button } from './Button';\nexport { default as ButtonGroup } from './ButtonGroup';\nexport { default as ButtonOld } from './ButtonOld';\nexport { default as CardFlip } from './CardFlip';\nexport * from './context-actions';\nexport { default as Collapse } from './Collapse';\nexport { default as Checkbox } from './Checkbox';\nexport { default as ComboBox } from './ComboBox';\nexport { default as CustomTimeSelect } from './CustomTimeSelect';\nexport { default as DebouncedSearchInput } from './DebouncedSearchInput';\nexport { default as DeephavenSpinner } from './DeephavenSpinner';\nexport { default as DraggableItemList } from './DraggableItemList';\nexport * from './DraggableItemList';\nexport { default as DragUtils } from './DragUtils';\nexport { default as HierarchicalCheckboxMenu } from './HierarchicalCheckboxMenu';\nexport * from './HierarchicalCheckboxMenu';\nexport * from './ItemList';\nexport { default as ItemListItem } from './ItemListItem';\nexport { default as LoadingOverlay } from './LoadingOverlay';\nexport { default as LoadingSpinner } from './LoadingSpinner';\nexport { default as DropdownMenu } from './menu-actions';\nexport * from './menu-actions';\nexport { default as MaskedInput } from './MaskedInput';\nexport * from './MaskedInput';\nexport * from './navigation';\nexport { default as Option } from './Option';\nexport * from './popper';\nexport * from './modal';\nexport { default as RadioGroup } from './RadioGroup';\nexport { default as RadioItem } from './RadioItem';\nexport { default as Select } from './Select';\nexport { default as SearchInput } from './SearchInput';\nexport { default as SelectValueList } from './SelectValueList';\nexport * from './SelectValueList';\nexport * from './shortcuts';\nexport { default as SocketedButton } from './SocketedButton';\nexport { default as ThemeExport } from './ThemeExport';\nexport { default as TimeInput } from './TimeInput';\nexport { default as TimeSlider } from './TimeSlider';\nexport { default as ToastNotification } from './ToastNotification';\nexport { default as UISwitch } from './UISwitch';\nexport { default as ValidateLabelInput } from './ValidateLabelInput';\n"],"mappings":"AAAA;AACA,OAAOA,CAAP,MAAc,QAAd;AASAC,MAAM,CAACD,CAAP,GAAWA,CAAX;AACAC,MAAM,CAACC,MAAP,GAAgBF,CAAhB;SAGSG,OAAO,IAAIC,iB;SACXD,OAAO,IAAIE,kB;SACXF,OAAO,IAAIG,U;SACXH,OAAO,IAAII,M;SACXJ,OAAO,IAAIK,W;SACXL,OAAO,IAAIM,S;SACXN,OAAO,IAAIO,Q;;SAEXP,OAAO,IAAIQ,Q;SACXR,OAAO,IAAIS,Q;SACXT,OAAO,IAAIU,Q;SACXV,OAAO,IAAIW,gB;SACXX,OAAO,IAAIY,oB;SACXZ,OAAO,IAAIa,gB;SACXb,OAAO,IAAIc,iB;;SAEXd,OAAO,IAAIe,S;SACXf,OAAO,IAAIgB,wB;;;SAGXhB,OAAO,IAAIiB,Y;SACXjB,OAAO,IAAIkB,c;SACXlB,OAAO,IAAImB,c;SACXnB,OAAO,IAAIoB,Y;;SAEXpB,OAAO,IAAIqB,W;;;SAGXrB,OAAO,IAAIsB,M;;;SAGXtB,OAAO,IAAIuB,U;SACXvB,OAAO,IAAIwB,S;SACXxB,OAAO,IAAIyB,M;SACXzB,OAAO,IAAI0B,W;SACX1B,OAAO,IAAI2B,e;;;SAGX3B,OAAO,IAAI4B,c;SACX5B,OAAO,IAAI6B,W;SACX7B,OAAO,IAAI8B,S;SACX9B,OAAO,IAAI+B,U;SACX/B,OAAO,IAAIgC,iB;SACXhC,OAAO,IAAIiC,Q;SACXjC,OAAO,IAAIkC,kB"}
1
+ {"version":3,"file":"index.js","names":["$","window","jQuery","default","AutoCompleteInput","AutoResizeTextarea","BasicModal","Button","ButtonGroup","ButtonOld","CardFlip","Collapse","Checkbox","ComboBox","CustomTimeSelect","DebouncedSearchInput","DeephavenSpinner","DraggableItemList","DragUtils","EditableItemList","HierarchicalCheckboxMenu","ItemListItem","LoadingOverlay","LoadingSpinner","DropdownMenu","MaskedInput","Option","RadioGroup","RadioItem","Select","SearchInput","SelectValueList","SocketedButton","ThemeExport","TimeInput","TimeSlider","ToastNotification","UISwitch","ValidateLabelInput"],"sources":["../src/index.ts"],"sourcesContent":["/** Shim for using jquery in frameworks included by react (such as bootstrap) */\nimport $ from 'jquery';\n\ndeclare global {\n interface Window {\n $: typeof $;\n jQuery: typeof $;\n }\n}\n\nwindow.$ = $;\nwindow.jQuery = $;\n\nexport type { Range } from '@deephaven/utils';\nexport { default as AutoCompleteInput } from './AutoCompleteInput';\nexport { default as AutoResizeTextarea } from './AutoResizeTextarea';\nexport { default as BasicModal } from './BasicModal';\nexport { default as Button } from './Button';\nexport { default as ButtonGroup } from './ButtonGroup';\nexport { default as ButtonOld } from './ButtonOld';\nexport { default as CardFlip } from './CardFlip';\nexport * from './context-actions';\nexport { default as Collapse } from './Collapse';\nexport { default as Checkbox } from './Checkbox';\nexport { default as ComboBox } from './ComboBox';\nexport { default as CustomTimeSelect } from './CustomTimeSelect';\nexport { default as DebouncedSearchInput } from './DebouncedSearchInput';\nexport { default as DeephavenSpinner } from './DeephavenSpinner';\nexport { default as DraggableItemList } from './DraggableItemList';\nexport * from './DraggableItemList';\nexport { default as DragUtils } from './DragUtils';\nexport { default as EditableItemList } from './EditableItemList';\nexport { default as HierarchicalCheckboxMenu } from './HierarchicalCheckboxMenu';\nexport * from './HierarchicalCheckboxMenu';\nexport * from './ItemList';\nexport { default as ItemListItem } from './ItemListItem';\nexport { default as LoadingOverlay } from './LoadingOverlay';\nexport { default as LoadingSpinner } from './LoadingSpinner';\nexport { default as DropdownMenu } from './menu-actions';\nexport * from './menu-actions';\nexport { default as MaskedInput } from './MaskedInput';\nexport * from './MaskedInput';\nexport * from './navigation';\nexport { default as Option } from './Option';\nexport * from './popper';\nexport * from './modal';\nexport { default as RadioGroup } from './RadioGroup';\nexport { default as RadioItem } from './RadioItem';\nexport { default as Select } from './Select';\nexport { default as SearchInput } from './SearchInput';\nexport { default as SelectValueList } from './SelectValueList';\nexport * from './SelectValueList';\nexport * from './shortcuts';\nexport { default as SocketedButton } from './SocketedButton';\nexport { default as ThemeExport } from './ThemeExport';\nexport { default as TimeInput } from './TimeInput';\nexport { default as TimeSlider } from './TimeSlider';\nexport { default as ToastNotification } from './ToastNotification';\nexport { default as UISwitch } from './UISwitch';\nexport { default as ValidateLabelInput } from './ValidateLabelInput';\n"],"mappings":"AAAA;AACA,OAAOA,CAAP,MAAc,QAAd;AASAC,MAAM,CAACD,CAAP,GAAWA,CAAX;AACAC,MAAM,CAACC,MAAP,GAAgBF,CAAhB;SAGSG,OAAO,IAAIC,iB;SACXD,OAAO,IAAIE,kB;SACXF,OAAO,IAAIG,U;SACXH,OAAO,IAAII,M;SACXJ,OAAO,IAAIK,W;SACXL,OAAO,IAAIM,S;SACXN,OAAO,IAAIO,Q;;SAEXP,OAAO,IAAIQ,Q;SACXR,OAAO,IAAIS,Q;SACXT,OAAO,IAAIU,Q;SACXV,OAAO,IAAIW,gB;SACXX,OAAO,IAAIY,oB;SACXZ,OAAO,IAAIa,gB;SACXb,OAAO,IAAIc,iB;;SAEXd,OAAO,IAAIe,S;SACXf,OAAO,IAAIgB,gB;SACXhB,OAAO,IAAIiB,wB;;;SAGXjB,OAAO,IAAIkB,Y;SACXlB,OAAO,IAAImB,c;SACXnB,OAAO,IAAIoB,c;SACXpB,OAAO,IAAIqB,Y;;SAEXrB,OAAO,IAAIsB,W;;;SAGXtB,OAAO,IAAIuB,M;;;SAGXvB,OAAO,IAAIwB,U;SACXxB,OAAO,IAAIyB,S;SACXzB,OAAO,IAAI0B,M;SACX1B,OAAO,IAAI2B,W;SACX3B,OAAO,IAAI4B,e;;;SAGX5B,OAAO,IAAI6B,c;SACX7B,OAAO,IAAI8B,W;SACX9B,OAAO,IAAI+B,S;SACX/B,OAAO,IAAIgC,U;SACXhC,OAAO,IAAIiC,iB;SACXjC,OAAO,IAAIkC,Q;SACXlC,OAAO,IAAImC,kB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deephaven/components",
3
- "version": "0.16.1-vite.20+5eabb80",
3
+ "version": "0.17.0",
4
4
  "description": "Deephaven React component library",
5
5
  "author": "Deephaven Data Labs LLC",
6
6
  "license": "Apache-2.0",
@@ -31,16 +31,17 @@
31
31
  "start": "cross-env NODE_ENV=development npm run watch"
32
32
  },
33
33
  "dependencies": {
34
- "@deephaven/icons": "^0.16.1-vite.20+5eabb80",
35
- "@deephaven/log": "^0.16.1-vite.20+5eabb80",
36
- "@deephaven/react-hooks": "^0.16.1-vite.20+5eabb80",
37
- "@deephaven/utils": "^0.16.1-vite.20+5eabb80",
34
+ "@deephaven/icons": "^0.17.0",
35
+ "@deephaven/log": "^0.17.0",
36
+ "@deephaven/react-hooks": "^0.17.0",
37
+ "@deephaven/utils": "^0.17.0",
38
38
  "@fortawesome/fontawesome-svg-core": "^6.1.1",
39
39
  "@fortawesome/react-fontawesome": "^0.1.18",
40
40
  "bootstrap": "4.6.1",
41
41
  "classnames": "^2.3.1",
42
42
  "event-target-shim": "^6.0.2",
43
43
  "jquery": "^3.6.0",
44
+ "lodash.clamp": "^4.0.3",
44
45
  "lodash.debounce": "^4.0.8",
45
46
  "lodash.flatten": "^4.4.0",
46
47
  "memoizee": "^0.4.15",
@@ -57,8 +58,8 @@
57
58
  "react-dom": "^17.x"
58
59
  },
59
60
  "devDependencies": {
60
- "@deephaven/mocks": "^0.16.1-vite.20+5eabb80",
61
- "@deephaven/tsconfig": "^0.16.1-vite.20+5eabb80"
61
+ "@deephaven/mocks": "^0.17.0",
62
+ "@deephaven/tsconfig": "^0.17.0"
62
63
  },
63
64
  "files": [
64
65
  "dist",
@@ -70,5 +71,5 @@
70
71
  "publishConfig": {
71
72
  "access": "public"
72
73
  },
73
- "gitHead": "5eabb80898f1de641e276088dcd86df4a9629491"
74
+ "gitHead": "53437684d53c6664a7c127d2f1ff1a1ef22a4bdb"
74
75
  }