@deephaven/jsapi-components 1.5.2-beta.0 → 1.5.2-beta.1
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.
- package/dist/TableInput.d.ts.map +1 -1
- package/dist/TableInput.js +2 -1
- package/dist/TableInput.js.map +1 -1
- package/package.json +10 -10
package/dist/TableInput.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableInput.d.ts","sourceRoot":"","sources":["../src/TableInput.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AAGjD,OAAO,EAGL,KAAK,QAAQ,EACd,MAAM,wBAAwB,CAAC;AAIhC,OAAO,mBAAmB,CAAC;AAI3B,KAAK,KAAK,GAAG,EAAE,CAAC,WAAW,GAAG,MAAM,CAAC;AAQrC,UAAU,eAAe;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,EAAE,KAAK,EAAE,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IACzB,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,IAAI,CAAC;IACnC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAID,iBAAS,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,GAAG,CAAC,OAAO,
|
|
1
|
+
{"version":3,"file":"TableInput.d.ts","sourceRoot":"","sources":["../src/TableInput.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AAGjD,OAAO,EAGL,KAAK,QAAQ,EACd,MAAM,wBAAwB,CAAC;AAIhC,OAAO,mBAAmB,CAAC;AAI3B,KAAK,KAAK,GAAG,EAAE,CAAC,WAAW,GAAG,MAAM,CAAC;AAQrC,UAAU,eAAe;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,EAAE,KAAK,EAAE,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IACzB,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,IAAI,CAAC;IACnC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAID,iBAAS,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,GAAG,CAAC,OAAO,CAiQvD;kBAjQQ,UAAU;;;;;;;AA0QnB,eAAe,UAAU,CAAC"}
|
package/dist/TableInput.js
CHANGED
|
@@ -215,7 +215,8 @@ function TableInput(props) {
|
|
|
215
215
|
children: /*#__PURE__*/_jsx(LoadingOverlay, {
|
|
216
216
|
isLoaded: table != null,
|
|
217
217
|
isLoading: table == null && error == null,
|
|
218
|
-
errorMessage: (_error$message = error === null || error === void 0 ? void 0 : error.message) !== null && _error$message !== void 0 ? _error$message : null
|
|
218
|
+
errorMessage: (_error$message = error === null || error === void 0 ? void 0 : error.message) !== null && _error$message !== void 0 ? _error$message : null,
|
|
219
|
+
"data-testid": "table-input-loading"
|
|
219
220
|
})
|
|
220
221
|
})]
|
|
221
222
|
});
|
package/dist/TableInput.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableInput.js","names":["React","useCallback","useState","useRef","useEffect","useMemo","classNames","LoadingOverlay","SearchInput","SelectValueList","PromiseUtils","Log","Formatter","FormatterUtils","useApi","useTableColumn","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","log","module","SIZE_LIMIT","TableInput","props","_table$size","_error$message","className","undefined","columnName","settings","defaultValue","isInvalid","onChange","onBlur","table","tablePromise","parentRef","dh","formatter","columnFormats","getColumnFormats","dateTimeFormatterOptions","getDateTimeFormatterOptions","defaultDecimalFormatOptions","defaultIntegerFormatOptions","searchValue","setSearchValue","selection","setSelection","Set","setTable","listRef","itemCount","Math","min","size","column","data","error","formatValue","value","getFormattedString","type","name","concat","items","updatedSelection","removedItems","result","forEach","v","isSelected","has","delete","push","displayValue","debug2","newSelection","Array","from","initTable","_ref","_asyncToGenerator","promise","resolved","debug","e","isCanceled","_x","apply","arguments","cancelablePromise","makeCancelable","cancel","handleSearchChange","target","index","findIndex","item","includes","_listRef$current","current","scrollIntoView","handleSelect","length","selectedValue","add","handleSelectAll","values","map","handleClearSelection","handleViewportChange","handleChildBlur","_parentRef$current","relatedTarget","HTMLElement","contains","isEmpty","ref","children","disabled","placeholder","offset","onSelect","onViewportChange","onClick","isLoaded","isLoading","errorMessage","message","displayName","defaultProps"],"sources":["../src/TableInput.tsx"],"sourcesContent":["import React, {\n useCallback,\n useState,\n useRef,\n useEffect,\n useMemo,\n} from 'react';\nimport classNames from 'classnames';\nimport {\n LoadingOverlay,\n SearchInput,\n SelectValueList,\n} from '@deephaven/components';\nimport type { dh } from '@deephaven/jsapi-types';\nimport { PromiseUtils } from '@deephaven/utils';\nimport Log from '@deephaven/log';\nimport {\n Formatter,\n FormatterUtils,\n type Settings,\n} from '@deephaven/jsapi-utils';\nimport { useApi } from '@deephaven/jsapi-bootstrap';\nimport useTableColumn from './useTableColumn';\n\nimport './TableInput.scss';\n\nconst log = Log.module('TableInput');\n\ntype Value = dh.LongWrapper | string;\n\ninterface SelectValueItem {\n displayValue: string;\n value: Value;\n isSelected: boolean;\n}\n\ninterface TableInputProps {\n className?: string;\n columnName: string;\n settings: Settings;\n defaultValue: Value[];\n isInvalid?: boolean;\n table: Promise<dh.Table>;\n onChange: (items: Value[]) => void;\n onBlur?: () => void;\n}\n\nconst SIZE_LIMIT = 250;\n\nfunction TableInput(props: TableInputProps): JSX.Element {\n const {\n className = undefined,\n columnName,\n settings,\n defaultValue = [],\n isInvalid = false,\n onChange = () => false,\n onBlur = () => false,\n table: tablePromise,\n } = props;\n const parentRef = useRef<HTMLDivElement>(null);\n const dh = useApi();\n const formatter = useMemo(() => {\n const columnFormats = FormatterUtils.getColumnFormats(settings);\n const dateTimeFormatterOptions =\n FormatterUtils.getDateTimeFormatterOptions(settings);\n const {\n defaultDecimalFormatOptions = {},\n defaultIntegerFormatOptions = {},\n } = settings;\n return new Formatter(\n dh,\n columnFormats,\n dateTimeFormatterOptions,\n defaultDecimalFormatOptions,\n defaultIntegerFormatOptions\n );\n }, [dh, settings]);\n const [searchValue, setSearchValue] = useState('');\n const [selection, setSelection] = useState(new Set(defaultValue));\n const [table, setTable] = useState<dh.Table | undefined>();\n const listRef = useRef<SelectValueList<Value>>(null);\n\n const itemCount = Math.min(table?.size ?? 0, SIZE_LIMIT);\n\n const { column, data, error } = useTableColumn(\n table,\n 0,\n SIZE_LIMIT - 1,\n columnName\n );\n\n const formatValue = useCallback(\n value =>\n column\n ? formatter.getFormattedString(value, column.type, column.name)\n : `${value}`,\n [column, formatter]\n );\n\n const [items, updatedSelection] = useMemo(() => {\n const removedItems = new Set(selection);\n const result: SelectValueItem[] = [];\n if (data == null) {\n // Viewport not initialized\n return [result, null];\n }\n (data as Value[]).forEach(v => {\n const value = `${v}`;\n const isSelected = selection.has(value);\n if (isSelected) {\n removedItems.delete(value);\n }\n result.push({\n value,\n displayValue: formatValue(v),\n isSelected,\n });\n });\n\n if (removedItems.size > 0) {\n log.debug2('Selection has items that are missing from the viewport');\n const newSelection = new Set(selection);\n Array.from(removedItems).forEach(value => {\n newSelection.delete(value);\n });\n return [result, newSelection];\n }\n return [result, null];\n }, [data, selection, formatValue]);\n\n useEffect(() => {\n if (updatedSelection !== null) {\n setSelection(updatedSelection);\n onChange(Array.from(updatedSelection));\n }\n }, [onChange, updatedSelection]);\n\n const initTable = useCallback(async promise => {\n try {\n const resolved = await promise;\n log.debug('Table resolved', resolved);\n setTable(resolved);\n } catch (e) {\n if (PromiseUtils.isCanceled(e)) {\n return;\n }\n log.error(e);\n }\n }, []);\n\n useEffect(() => {\n const cancelablePromise = PromiseUtils.makeCancelable(tablePromise);\n initTable(cancelablePromise);\n return () => {\n log.debug2('Cancel table promise');\n cancelablePromise.cancel();\n };\n }, [tablePromise, initTable]);\n\n // Scroll the item matching the input into view\n const handleSearchChange = useCallback(\n e => {\n const { value } = e.target;\n setSearchValue(value);\n const index = items.findIndex(item => item.displayValue.includes(value));\n if (index > -1) {\n log.debug2(`Found ${value} at index ${index}`);\n listRef.current?.scrollIntoView(index);\n } else {\n log.debug2(`${value} not found`);\n }\n },\n [items, listRef]\n );\n\n const handleSelect = useCallback(\n index => {\n log.debug('handleSelect', index);\n if (index >= items.length) {\n log.error('Invalid index', index);\n return;\n }\n const selectedValue = items[index].value;\n const newSelection = new Set(selection);\n if (items[index].isSelected) {\n newSelection.delete(selectedValue);\n } else {\n newSelection.add(selectedValue);\n }\n setSelection(newSelection);\n onChange(Array.from(newSelection));\n },\n [onChange, items, selection]\n );\n\n const handleSelectAll = useCallback(() => {\n const values = items.map(item => item.value);\n const newSelection = new Set(values);\n setSelection(newSelection);\n onChange(values);\n }, [items, onChange]);\n\n const handleClearSelection = useCallback(() => {\n setSelection(new Set());\n onChange([]);\n }, [onChange]);\n\n const handleViewportChange = useCallback(() => {\n // no-op\n }, []);\n\n const handleChildBlur = useCallback(\n (e: React.FocusEvent<Element>) => {\n const { relatedTarget } = e;\n log.debug(\n 'handleChildBlur',\n relatedTarget,\n relatedTarget instanceof HTMLElement,\n parentRef.current,\n parentRef.current?.contains(relatedTarget)\n );\n if (\n !relatedTarget ||\n (parentRef.current &&\n relatedTarget instanceof HTMLElement &&\n !parentRef.current.contains(relatedTarget))\n ) {\n onBlur();\n }\n },\n [onBlur]\n );\n\n const isEmpty = items.length === 0;\n\n return (\n <div\n ref={parentRef}\n className={classNames(\n 'table-input-container d-flex flex-column position-relative',\n className\n )}\n >\n <SearchInput\n disabled={!!error || isEmpty}\n value={searchValue}\n placeholder=\"Search\"\n onChange={handleSearchChange}\n className=\"mb-2 d-flex\"\n onBlur={handleChildBlur}\n />\n <SelectValueList\n className=\"table-input-list\"\n disabled={table === undefined || isEmpty}\n isInvalid={isInvalid}\n items={isEmpty ? [{ value: 'Empty', isSelected: false }] : items}\n itemCount={itemCount}\n offset={0}\n onSelect={handleSelect}\n onViewportChange={handleViewportChange}\n ref={listRef}\n onBlur={handleChildBlur}\n />\n\n {table && (\n <div className=\"meta-row\">\n <div className=\"d-flex align-items-center text-muted small\">\n {table != null && table.size > itemCount && (\n <>Table is too large, showing the first {SIZE_LIMIT} items.</>\n )}\n </div>\n <div>\n <button\n type=\"button\"\n className=\"btn btn-link\"\n onBlur={handleChildBlur}\n onClick={handleSelectAll}\n >\n Select All\n </button>\n <button\n type=\"button\"\n className=\"btn btn-link mr-a\"\n onBlur={handleChildBlur}\n onClick={handleClearSelection}\n >\n Clear\n </button>\n </div>\n </div>\n )}\n\n {table == null ||\n (error && (\n <div className=\"h-100 w-100 position-absolute\">\n <LoadingOverlay\n isLoaded={table != null}\n isLoading={table == null && error == null}\n errorMessage={error?.message ?? null}\n />\n </div>\n ))}\n </div>\n );\n}\n\nTableInput.displayName = 'TableInput';\n\nTableInput.defaultProps = {\n isInvalid: false,\n className: undefined,\n};\n\nexport default TableInput;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TableInput.js","names":["React","useCallback","useState","useRef","useEffect","useMemo","classNames","LoadingOverlay","SearchInput","SelectValueList","PromiseUtils","Log","Formatter","FormatterUtils","useApi","useTableColumn","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","log","module","SIZE_LIMIT","TableInput","props","_table$size","_error$message","className","undefined","columnName","settings","defaultValue","isInvalid","onChange","onBlur","table","tablePromise","parentRef","dh","formatter","columnFormats","getColumnFormats","dateTimeFormatterOptions","getDateTimeFormatterOptions","defaultDecimalFormatOptions","defaultIntegerFormatOptions","searchValue","setSearchValue","selection","setSelection","Set","setTable","listRef","itemCount","Math","min","size","column","data","error","formatValue","value","getFormattedString","type","name","concat","items","updatedSelection","removedItems","result","forEach","v","isSelected","has","delete","push","displayValue","debug2","newSelection","Array","from","initTable","_ref","_asyncToGenerator","promise","resolved","debug","e","isCanceled","_x","apply","arguments","cancelablePromise","makeCancelable","cancel","handleSearchChange","target","index","findIndex","item","includes","_listRef$current","current","scrollIntoView","handleSelect","length","selectedValue","add","handleSelectAll","values","map","handleClearSelection","handleViewportChange","handleChildBlur","_parentRef$current","relatedTarget","HTMLElement","contains","isEmpty","ref","children","disabled","placeholder","offset","onSelect","onViewportChange","onClick","isLoaded","isLoading","errorMessage","message","displayName","defaultProps"],"sources":["../src/TableInput.tsx"],"sourcesContent":["import React, {\n useCallback,\n useState,\n useRef,\n useEffect,\n useMemo,\n} from 'react';\nimport classNames from 'classnames';\nimport {\n LoadingOverlay,\n SearchInput,\n SelectValueList,\n} from '@deephaven/components';\nimport type { dh } from '@deephaven/jsapi-types';\nimport { PromiseUtils } from '@deephaven/utils';\nimport Log from '@deephaven/log';\nimport {\n Formatter,\n FormatterUtils,\n type Settings,\n} from '@deephaven/jsapi-utils';\nimport { useApi } from '@deephaven/jsapi-bootstrap';\nimport useTableColumn from './useTableColumn';\n\nimport './TableInput.scss';\n\nconst log = Log.module('TableInput');\n\ntype Value = dh.LongWrapper | string;\n\ninterface SelectValueItem {\n displayValue: string;\n value: Value;\n isSelected: boolean;\n}\n\ninterface TableInputProps {\n className?: string;\n columnName: string;\n settings: Settings;\n defaultValue: Value[];\n isInvalid?: boolean;\n table: Promise<dh.Table>;\n onChange: (items: Value[]) => void;\n onBlur?: () => void;\n}\n\nconst SIZE_LIMIT = 250;\n\nfunction TableInput(props: TableInputProps): JSX.Element {\n const {\n className = undefined,\n columnName,\n settings,\n defaultValue = [],\n isInvalid = false,\n onChange = () => false,\n onBlur = () => false,\n table: tablePromise,\n } = props;\n const parentRef = useRef<HTMLDivElement>(null);\n const dh = useApi();\n const formatter = useMemo(() => {\n const columnFormats = FormatterUtils.getColumnFormats(settings);\n const dateTimeFormatterOptions =\n FormatterUtils.getDateTimeFormatterOptions(settings);\n const {\n defaultDecimalFormatOptions = {},\n defaultIntegerFormatOptions = {},\n } = settings;\n return new Formatter(\n dh,\n columnFormats,\n dateTimeFormatterOptions,\n defaultDecimalFormatOptions,\n defaultIntegerFormatOptions\n );\n }, [dh, settings]);\n const [searchValue, setSearchValue] = useState('');\n const [selection, setSelection] = useState(new Set(defaultValue));\n const [table, setTable] = useState<dh.Table | undefined>();\n const listRef = useRef<SelectValueList<Value>>(null);\n\n const itemCount = Math.min(table?.size ?? 0, SIZE_LIMIT);\n\n const { column, data, error } = useTableColumn(\n table,\n 0,\n SIZE_LIMIT - 1,\n columnName\n );\n\n const formatValue = useCallback(\n value =>\n column\n ? formatter.getFormattedString(value, column.type, column.name)\n : `${value}`,\n [column, formatter]\n );\n\n const [items, updatedSelection] = useMemo(() => {\n const removedItems = new Set(selection);\n const result: SelectValueItem[] = [];\n if (data == null) {\n // Viewport not initialized\n return [result, null];\n }\n (data as Value[]).forEach(v => {\n const value = `${v}`;\n const isSelected = selection.has(value);\n if (isSelected) {\n removedItems.delete(value);\n }\n result.push({\n value,\n displayValue: formatValue(v),\n isSelected,\n });\n });\n\n if (removedItems.size > 0) {\n log.debug2('Selection has items that are missing from the viewport');\n const newSelection = new Set(selection);\n Array.from(removedItems).forEach(value => {\n newSelection.delete(value);\n });\n return [result, newSelection];\n }\n return [result, null];\n }, [data, selection, formatValue]);\n\n useEffect(() => {\n if (updatedSelection !== null) {\n setSelection(updatedSelection);\n onChange(Array.from(updatedSelection));\n }\n }, [onChange, updatedSelection]);\n\n const initTable = useCallback(async promise => {\n try {\n const resolved = await promise;\n log.debug('Table resolved', resolved);\n setTable(resolved);\n } catch (e) {\n if (PromiseUtils.isCanceled(e)) {\n return;\n }\n log.error(e);\n }\n }, []);\n\n useEffect(() => {\n const cancelablePromise = PromiseUtils.makeCancelable(tablePromise);\n initTable(cancelablePromise);\n return () => {\n log.debug2('Cancel table promise');\n cancelablePromise.cancel();\n };\n }, [tablePromise, initTable]);\n\n // Scroll the item matching the input into view\n const handleSearchChange = useCallback(\n e => {\n const { value } = e.target;\n setSearchValue(value);\n const index = items.findIndex(item => item.displayValue.includes(value));\n if (index > -1) {\n log.debug2(`Found ${value} at index ${index}`);\n listRef.current?.scrollIntoView(index);\n } else {\n log.debug2(`${value} not found`);\n }\n },\n [items, listRef]\n );\n\n const handleSelect = useCallback(\n index => {\n log.debug('handleSelect', index);\n if (index >= items.length) {\n log.error('Invalid index', index);\n return;\n }\n const selectedValue = items[index].value;\n const newSelection = new Set(selection);\n if (items[index].isSelected) {\n newSelection.delete(selectedValue);\n } else {\n newSelection.add(selectedValue);\n }\n setSelection(newSelection);\n onChange(Array.from(newSelection));\n },\n [onChange, items, selection]\n );\n\n const handleSelectAll = useCallback(() => {\n const values = items.map(item => item.value);\n const newSelection = new Set(values);\n setSelection(newSelection);\n onChange(values);\n }, [items, onChange]);\n\n const handleClearSelection = useCallback(() => {\n setSelection(new Set());\n onChange([]);\n }, [onChange]);\n\n const handleViewportChange = useCallback(() => {\n // no-op\n }, []);\n\n const handleChildBlur = useCallback(\n (e: React.FocusEvent<Element>) => {\n const { relatedTarget } = e;\n log.debug(\n 'handleChildBlur',\n relatedTarget,\n relatedTarget instanceof HTMLElement,\n parentRef.current,\n parentRef.current?.contains(relatedTarget)\n );\n if (\n !relatedTarget ||\n (parentRef.current &&\n relatedTarget instanceof HTMLElement &&\n !parentRef.current.contains(relatedTarget))\n ) {\n onBlur();\n }\n },\n [onBlur]\n );\n\n const isEmpty = items.length === 0;\n\n return (\n <div\n ref={parentRef}\n className={classNames(\n 'table-input-container d-flex flex-column position-relative',\n className\n )}\n >\n <SearchInput\n disabled={!!error || isEmpty}\n value={searchValue}\n placeholder=\"Search\"\n onChange={handleSearchChange}\n className=\"mb-2 d-flex\"\n onBlur={handleChildBlur}\n />\n <SelectValueList\n className=\"table-input-list\"\n disabled={table === undefined || isEmpty}\n isInvalid={isInvalid}\n items={isEmpty ? [{ value: 'Empty', isSelected: false }] : items}\n itemCount={itemCount}\n offset={0}\n onSelect={handleSelect}\n onViewportChange={handleViewportChange}\n ref={listRef}\n onBlur={handleChildBlur}\n />\n\n {table && (\n <div className=\"meta-row\">\n <div className=\"d-flex align-items-center text-muted small\">\n {table != null && table.size > itemCount && (\n <>Table is too large, showing the first {SIZE_LIMIT} items.</>\n )}\n </div>\n <div>\n <button\n type=\"button\"\n className=\"btn btn-link\"\n onBlur={handleChildBlur}\n onClick={handleSelectAll}\n >\n Select All\n </button>\n <button\n type=\"button\"\n className=\"btn btn-link mr-a\"\n onBlur={handleChildBlur}\n onClick={handleClearSelection}\n >\n Clear\n </button>\n </div>\n </div>\n )}\n\n {table == null ||\n (error && (\n <div className=\"h-100 w-100 position-absolute\">\n <LoadingOverlay\n isLoaded={table != null}\n isLoading={table == null && error == null}\n errorMessage={error?.message ?? null}\n data-testid=\"table-input-loading\"\n />\n </div>\n ))}\n </div>\n );\n}\n\nTableInput.displayName = 'TableInput';\n\nTableInput.defaultProps = {\n isInvalid: false,\n className: undefined,\n};\n\nexport default TableInput;\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@deephaven/jsapi-components",
|
|
3
|
-
"version": "1.5.2-beta.
|
|
3
|
+
"version": "1.5.2-beta.1+8793afa7",
|
|
4
4
|
"description": "Deephaven JSAPI Components",
|
|
5
5
|
"author": "Deephaven Data Labs LLC",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -22,13 +22,13 @@
|
|
|
22
22
|
"build:sass": "sass --embed-sources --load-path=../../node_modules ./src:./dist"
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@deephaven/components": "^1.5.2-beta.
|
|
26
|
-
"@deephaven/jsapi-bootstrap": "^1.5.2-beta.
|
|
25
|
+
"@deephaven/components": "^1.5.2-beta.1+8793afa7",
|
|
26
|
+
"@deephaven/jsapi-bootstrap": "^1.5.2-beta.1+8793afa7",
|
|
27
27
|
"@deephaven/jsapi-types": "^1.0.0-dev0.39.4",
|
|
28
|
-
"@deephaven/jsapi-utils": "^1.5.2-beta.
|
|
29
|
-
"@deephaven/log": "^1.5.2-beta.
|
|
30
|
-
"@deephaven/react-hooks": "^1.5.2-beta.
|
|
31
|
-
"@deephaven/utils": "^1.5.2-beta.
|
|
28
|
+
"@deephaven/jsapi-utils": "^1.5.2-beta.1+8793afa7",
|
|
29
|
+
"@deephaven/log": "^1.5.2-beta.1+8793afa7",
|
|
30
|
+
"@deephaven/react-hooks": "^1.5.2-beta.1+8793afa7",
|
|
31
|
+
"@deephaven/utils": "^1.5.2-beta.1+8793afa7",
|
|
32
32
|
"@types/js-cookie": "^3.0.3",
|
|
33
33
|
"classnames": "^2.3.2",
|
|
34
34
|
"js-cookie": "^3.0.5",
|
|
@@ -36,8 +36,8 @@
|
|
|
36
36
|
"prop-types": "^15.8.1"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
|
-
"@deephaven/jsapi-shim": "^1.5.2-beta.
|
|
40
|
-
"@deephaven/test-utils": "^1.5.2-beta.
|
|
39
|
+
"@deephaven/jsapi-shim": "^1.5.2-beta.1+8793afa7",
|
|
40
|
+
"@deephaven/test-utils": "^1.5.2-beta.1+8793afa7",
|
|
41
41
|
"react-test-renderer": "^17.0.2"
|
|
42
42
|
},
|
|
43
43
|
"peerDependencies": {
|
|
@@ -52,5 +52,5 @@
|
|
|
52
52
|
"publishConfig": {
|
|
53
53
|
"access": "public"
|
|
54
54
|
},
|
|
55
|
-
"gitHead": "
|
|
55
|
+
"gitHead": "8793afa7d6549b898df34d939a63b5853c6758c3"
|
|
56
56
|
}
|