All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.
0.49.1 (2023-09-27)
- Copy did not work from embedded iframes (#1528) (3549a33), closes #1527
- Dehydration of class components (#1535) (3e834de), closes #1534
- inconsistent drag for webkit (#1518) (cd5408c), closes #1360
- Render tables partitioned by non-string columns (#1533) (585b2ff), closes #1441
- Right clicking with a custom context menu open should open another context menu (#1526) (bd08e1f), closes #1525
0.49.0 (2023-09-15)
- Plugin peer dependencies do not get versions from lerna (#1517) (322f6ff)
- Table overflow button has lower priority than grid tokens (#1510) (32e6d20), closes #1480
TableSaver
now expects the service worker to send it a complete URL for download instead of just a file name. DHE will need to adjust itsserviceWorker.js
to incorporate the same changes from this PR.
0.48.0 (2023-09-12)
- Hide "Append Command" button when viewing partition aware table in iframe UI (#1495) (d15d6b1), closes #1414
- webpack dynamic import (#1509) (1e8bb72)
0.47.0 (2023-09-08)
- Change dynamic import to string (#1484) (45e2ada)
- Console History Not Scrolling to Bottom (DH-14062) (#1481) (93687a7)
- Forbid @deephaven modules from self importing (#1499) (81cdd65), closes #1497
- quick filter focus text doesn't match canvas text (#1475) (02841b5), closes #1472
- Remove totals table rows from displayed row count (#1492) (f686891), closes #1407
- adds copy file support to file explorer and fixes rename bug (#1491) (d35aa49), closes #185 #1375 #1488
- bindAllMethods util function (#1476) (0dab8d7), closes #1474
- Consolidate and normalize plugin types (#1456) (43a782d), closes #1454 #1451
0.46.1 (2023-09-01)
- flaky e2e tests (#1453) (d59e9be)
- Heap usage request throttling (#1450) (5cc2936), closes #1439 #1 #2 #3 #1 #2 #3 #4 #5 #6 #7 #8 #9 #10 #11 #12 #13 #14 #15 #16 #17 #18 #19 #20 #21 #22 #23 #24 #25 #26 #27 #1 #2 #3 #4 #5
- Heap usage should tick immediately when dependencies change (#1468) (96b27a5), closes #1464
- legal notices dismisses on click anywhere (#1452) (a189375)
- Remove unused ref forwarded to all dashboard panels (#1451) (938aa07)
- Zip CSV uploads not working (#1457) (08d0296), closes #1080 #1416
0.46.0 (2023-08-18)
- Environment variable replacement in styleguide (#1443) (9fd5c27)
- failing table operations e2e test (#1447) (6d2cb06)
- login page looks bad when narrow (#1428) (6e0b60e), closes #1399
- Upgrade Monaco to ^0.41.0 (#1448) (1120c2b), closes #1445 #1191
- Monaco will need to be upgraded to ^0.41.0 in Enterprise to ensure compatibility
Tests Performed
- Console Input
Cmd+F
does nothing- Intellisense can be closed via
Esc
- Log tab
Esc
does not close find inputEsc
does clear selection when focus is in the log content
- Code Editor
- Verified that newline with leading space no longer crashes the browser
tab
a a
- Wrote some Python code. Intellisense, syntax highlighting, and general
typing experience seemed as expected
- Execute full code + selected code successfully
- @deephaven/icons: Any imports/aliasing to
@deephaven/icons/dist
should be removed and just read the package contents normally (e.g. DHE jest and vite configs for using community packages locally). See the changes to vite and jest configs in this change for how to update
0.45.1 (2023-08-01)
0.45.0 (2023-07-31)
- Add support for Category plots with error bars (#1412) (7480280)
- Added containsIgnoreCase to FilterValue interface (#1426) (d131b05), closes #1425
- Upgrade Prettier to 3.0.0 (#1420) (334e530), closes #1419
0.44.1 (2023-07-11)
0.44.0 (2023-07-07)
- export TypeUtils (#1395) (c76730f)
- Use user permissions for iframes instead of query parameters (#1400) (8cf2bbd), closes #1337
- "Extends" TypeScript util type (#1394) (7cb073f), closes #1393
- DH-14538: Export InputEditor and added options (#1398) (405f42f), closes #1397
- disable column sorting on unsupported types (#1390) (3a89bbf), closes #1380
- Outdent code when running selection from a notebook (#1391) (154ccfc), closes #1326
0.43.0 (2023-07-07)
- export TypeUtils (#1395) (c76730f)
- Use user permissions for iframes instead of query parameters (#1400) (8cf2bbd), closes #1337
- "Extends" TypeScript util type (#1394) (7cb073f), closes #1393
- DH-14538: Export InputEditor and added options (#1398) (405f42f), closes #1397
- disable column sorting on unsupported types (#1390) (3a89bbf), closes #1380
- Outdent code when running selection from a notebook (#1391) (154ccfc), closes #1326
0.42.0 (2023-06-29)
- AuthPluginParent wasn't working when embedded in an iframe (#1383) (e23695d), closes #1373
- DH-15032: Fix incorrect warning about updated shared state (#1364) (9e53dd2)
- Ran npm audit fix on packages (#1357) (0830099)
- add column count to table tooltip (#1382) (004ac6c)
- add sort-slash icon (#1381) (9a7b910), closes #1380
- Console output test util (#1370) (626de83), closes #1369
- improvements to null and empty strings filters in grid (#1348) (ed3a8c5), closes #1243
0.41.1 (2023-06-08)
0.41.0 (2023-06-08)
- Catch errors when emitting events to prevent breaking entire layout (#1353) (aac5bd2), closes #1352
- DH-14972 Remove setSearch debounce in CommandHistoryViewportUpdater (#1351) (2601146)
0.40.4 (2023-06-02)
- Add a default DashboardPanelWrapper (#1346) (ddd92cf), closes #1329
- DateWrapper fails on first day of month (#1342) (a4677eb), closes #1341
- DH-14657 Disconnect handling increase debounce timeout (#1347) (66bdad8)
- panels menu should only open downwards (#1340) (a25be7f)
0.40.3 (2023-05-31)
0.40.2 (2023-05-31)
- disable screenshot tests in debug mode (#1328) (cbe8f72), closes #1327
- failing linter test from de-globalize PR (#1321) (6ae174c)
- notebook panel unsaved indicator not showing after dragging a panel (#1325) (99818a8)
- truncated column headers (#1319) (db7716e), closes #1318
- Worker plugin definitions, optional panel wrapper for Dashboards (#1329) (c32ffbc)
0.40.1 (2023-05-24)
0.40.0 (2023-05-19)
- drag to re-arrange custom columns not working (#1299) (5e23e4a), closes #1282 #1013
- Export useTableUtils (#1309) (9212107), closes #1308
- Search icon styleguide using prefixed string (#1300) (0d02ab9)
- add contains ignore case in go to row (#1291) (d67712e), closes #1274
- Mount layout panels inside the main react tree (#1229) (f8f8d61)
0.39.0 (2023-05-15)
- add word-break to long column names in column tooltip (#1290) (02215b6), closes #1283
- DH-14630: useDebouncedViewportSearch: memoization bug (#1273) (be82b14), closes #1272
- Select distinct throwing for tables with multiple columns (#1286) (4b40e4b), closes #1275
- Table rendering support for databars (#1212) (a17cc0e), closes #1151
- add uncaught rejections to support logs (#1293) (29ed459), closes #1253
- Added new icons and added composition example to styleguide (#1294) (97c7ead)
- De-globalize JSAPI in Chart package (#1258) (87fa2ef)
- De-globalize JSAPI in Console package (#1292) (3f12dd3)
- De-globalize JSAPI in IrisGrid package (#1262) (588cb8f)
- De-globalize utils, formatters, linker (#1278) (cb0e9ba)
- DH-14630 - ACL Editor Hooks (#1257) (e0a2a36), closes #1260
- remove click handler setting onTabContentFocusIn (#1263) (7d56f97)
- Update @vscode/codicons to v0.0.33 (#1259) (1b29af1)
- useTableUtils hook (#1281) (ce1fe2c), closes #1280
-
- Components
IrisGrid
,Chart
,ChartBuilder
,AdvancedFilterCreator
,GotoRow
,IrisGridModelUpdater
,TableCSVExporter
get the JSAPI reference from themodel
prop.dh
prop removed.
- Components
makeApi
props inIrisGridPanel
andChartPanel
removed.- Components
Console
,ConsoleMenu
,ConsoleStatusBar
now require the JSAPI instance in thedh
prop. ConsoleUtils
: static methodsisTableType
,isWidgetType
,isOpenableType
,isFigureType
,isPandas
require JSAPI instance passed in the first argument.SessionUtils
: static methodscreateSessionWrapper
,loadSessionWrapper
require JSAPI instance passed in the first argument.- Class
IrisGridModel
requires JSAPI instance passed in the constructor args. - Components
DashboardLayout
,ObjectIcon
has to be wrapped inApiContext.Provider
passing the JSAPI instance.
-
- Class
Formatter
requires the JSAPI instance as the first argument.
- Class
- Classes
DateTimeColumnFormatter
,DecimalColumnFormatter
,IntegerColumnFormatter
,TableColumnFormatter
: static methodisValid
and constructor require the JSAPI instance in the first argument. - Component
Chart
requires the JSAPI instance passed in the new propdh
. WidgetUtils
: methodscreateChartModel
,createGridModel
methods require the JSAPI instance passed in the first argument.- Components
DateTimeOptions
,TableInput
,useViewportData
have to be wrapped inApiContext.Provider
passing the JSAPI instance. SettingsUtils
: methodsisValidFormat
andisFormatRuleValidForSave
require the JSAPI instance passed in the first argument.SessionUtils
: methodscreateConnection
,createCoreClient
require the JSAPI instance passed in the first argument.TableUtils
static methodsapplyCustomColumns
,applyFilter
,applyNeverFilter
,applySort
converted to instance methods.- Components
DropdownFilterPanel
,Linker
now get the JSAPI instance from redux store. DecimalFormatContextMenu.getOptions
,IntegerFormatContextMenu.getOptions
now require the JSAPI instance in the first argument.
-
DateUtils
static methodsmakeDateWrapper
,getNextDate
,parseDateRange
now require the JSAPI object as the first argument.
IrisGridUtils
static methodsdehydrateIrisGridState
,hydrateIrisGridState
,hydrateQuickFilters
,dehydrateAdvancedFilters
,hydrateAdvancedFilters
,dehydrateAdvancedFilterOptions
,hydrateAdvancedFilterOptions
,dehydratePendingDataMap
,hydratePendingDataMap
,dehydrateValue
,hydrateValue
,dehydrateDateTime
,hydrateDateTime
,hydrateLong
,hydrateSort
,applyTableSettings
,getFiltersFromInputFilters
,rangeSetFromRanges
converted to instance methods. Consumers now need to create anIrisGridUtils
instance and pass the JSAPI object to the constructor.TableUtils
static methodsmakeQuickFilter
,makeQuickFilterFromComponent
,makeQuickNumberFilter
,makeQuickTextFilter
,makeQuickBooleanFilter
,makeQuickDateFilter
,makeQuickDateFilterWithOperation
,makeQuickCharFilter
,makeAdvancedFilter
,makeAdvancedValueFilter
,makeFilterValue
,makeFilterRawValue
,makeValue
,makeSelectValueFilter
converted to instance methods. Consumers now need to create aTableUtils
instance and pass the JSAPI object to the constructor.IrisGridTableModel
,IrisGridTableModelTemplate
,IrisGridProxyModel
constructors require the JSAPI object in the first argument.IrisGridTestUtils.makeModel
,IrisGridModelFactory.makeModel
now require the JSAPI object in the first argument.IrisGridContextMenuHandler
constructor requires the JSAPI object in the second argument.IrisGridPanel
requires a newmakeApi
prop, a function that resolves with the JSAPI instance.CrossColumnSearch.createSearchFilter
requires the JSAPI object argument.- Components
AdvancedFilterCreatorSelectValue
,AdvancedFilterCreatorSelectValueList
,ChartBuilder
,GotoRow
,IrisGrid
,IrisGridModelUpdater
,IrisGridPartitionSelector
,PartitionSelectorSearch
,TableCSVExporter
,TableSaver
,TreeTableViewportUpdater
,RowFormatEditor
,ColumnFormatEditor
,ConditionEditor
now require the JSAPI object passed in the new propdh
. - Components
AdvancedFilterCreator
,AdvancedFilterCreatorFilterItem
require theTableUtils
instance pass in the new proptableUtils
. ConditionalFormattingUtils
static methodsgetFormatColumns
,isDateConditionValid
require the JSAPI object in the first argument.ConditionalFormattingAPIUtils
static methodmakeRowFormatColumn
requires the JSAPI object in the first argument.
-
ChartUtils
class now needs to be instantiated with a JSAPI object, most of the methods converted from static to instance methods.
- All
ChartModelFactory
methods require JSAPI object as the first argument. FigureChartModel
constructor requires JSAPI object as the first argument.
generateEmptyKeyedItemsRange
previously required a singlecount
arg, but now requires astart
andend
indexvsCircleLargeOutline
icon renamed tovsCircleLarge
0.38.0 (2023-05-03)
- DH-14657 Better disconnect handling (#1261) (9358e41), closes #1149
- Restrict link parsing so it requires protocol (#1254) (0e286bd), closes #1252
0.37.3 (2023-04-25)
0.37.2 (2023-04-25)
0.37.1 (2023-04-25)
0.37.0 (2023-04-20)
- @deephaven/components: Custom React Spectrum Provider (#1211) (609c57e), closes #1210
- Added support for null in useTableListener (#1227) (e485c86), closes #1228
- Core authentication plugins (#1180) (1624309), closes #1058
- DH-14630 useViewportData + supporting utils (#1230) (2f9c020), closes #1221
- Improve plugin load error handling (#1214) (8ac7dc8)
- usePromiseFactory hook (#1226) (f8c4ba3), closes #1221
0.36.0 (2023-04-14)
- Display workerName and processInfoId in the console status bar (#1173) (85ce600)
- Pass optional envoyPrefix query param to CoreClient constructor (#1219) (8b1e58c)
- usePanelRegistration hook (#1208) (d8db9ca), closes #1207
0.35.0 (2023-04-04)
- Fix column data appearing incorrectly when multiplier null (#1194) (e22e68d), closes #1193 #0
- Fixed generic selector types (#1199) (de9b751), closes #1197
- Added isACLEditor prop to Redux state (#1201) (f39100a), closes #1200
- Created ValueOf util type (#1203) (19fcf0e), closes #1202
0.34.0 (2023-03-31)
- Conditional formatting not being applied to custom columns (#1181) (1e4f8f9), closes #1135
- Context menu does not appear when right-clicking IrisGrid component in styleguide (#1184) (696cc2d), closes #1065
- Double clicking a file causes the loader to flash incorrectly (#1189) (a279670), closes #942
- Preview did not draw correctly when dragging Grids (#1183) (1a0ff8d), closes #1112
- Save or discard a changed notebook does not close modal on first click (#1188) (bba2d01), closes #1187
- Typing for WritableStream (#1186) (dfdf356), closes #803
- Add signatureHelp and hover providers to monaco (#1178) (f1f3abf)
- Double click notebook tab to remove its preview status (#1190) (4870171), closes #1189
- JS API reconnect (#1149) (15551df), closes #1140
0.33.0 (2023-03-28)
- Added smarter caching for command history fetching (#1145) (76b3bd5), closes #325
- DH-14439 Fix QueryMonitor breaking on "null" in default search filter (#1159) (ac6a514)
- Error thrown when cell overflow position is unknown (#1177) (bb24f61), closes #1116
- Goto Value Skips Rows on String Column, Displays Incorrect Filter, and
shift+enter
Doesn't go to Previous (#1162) (e83d7c9), closes #1156 #1157 - Handling no columns (#1170) (2ac25ae), closes #1169
- Scrolling horizontally in Linker mode renders empty cells (#1160) (e314be6), closes #1146
- Fix fast refresh invalidations (#1150) (2606826), closes #727
- TypeScript Type Improvements (#1056) (0be0850), closes #1122
- Renamed
renderFileListItem
toFileListItem
. RenamedRenderFileListItemProps
toFileListItemProps
. Removed exports forConsolePlugin.assertIsConsolePluginProps
,GridPlugin.SUPPORTED_TYPES
,FileList.getPathFromItem
,FileList.DRAG_HOVER_TIMEOUT
,FileList.getItemIcon
,Grid.directionForKey
,GotoRow.isIrisGridProxyModel
, andAggregations.SELECTABLE_OPTIONS
. These were all only being consumed within their own file and are not consumed in enterprise - Selector Type removed from redux
0.32.0 (2023-03-10)
- DH-12163 - Column grouping sidebar test failure fixes (#1142) (a55308d)
- Fixed rollup divider position (#1125) (859bfa2), closes #1062
- Grid rendering header incorrectly when hiding all children in a group via layout hints (#1139) (2fbccc6), closes #1097
- Removed index property from dh.types Column type. IrisGridUtils.dehydrateSort now returns column name instead of index. TableUtils now expects column name instead of index for functions that don't have access to a columns array.
0.31.1 (2023-03-03)
- Aggregations should be available when creating a rollup (#1129) (c3d8433), closes /github.com/deephaven/web-client-ui/blob/a069543812b6c544957ebf664e0918e98a3affbf/packages/iris-grid/src/IrisGrid.tsx#L1288
0.31.0 (2023-03-03)
- Add react-dom, redux and react-redux to remote component dependencies (#1127) (d6c8a98)
- Added date time parsing for conditional formatting (#1120) (4c7710e), closes #1108
- Clicking a folder in file explorer panel sometimes fails to open or close it (#1099) (7a7fc14), closes #1085
- Conditional date formatting (#1104) (2f503ba)
- Disable applying "No formatting" (#1107) (14020f1), closes #1106
- Fix the style guide (#1119) (e4a75a1)
- Ordering of subplots (#1111) (c4a3795)
- Select Distinct Column Throws
null
error (#1101) (144605a), closes #1100
- Goto Value Improvements (#1072) (970a575), closes #1027
- Improve text labels based on suggestions from chatGPT (#1118) (d852e49)
- Instants and ZonedDateTimes should be treated as DateTimes (#1117) (3900a2e), closes deephaven/deephaven-core#3385 deephaven/deephaven-core#3455
- isConfirmDangerProp (#1110) (ffb7ada), closes #1109
0.30.1 (2023-02-16)
- add missing return for editvalueforcell, missing from TS conversion (#1090) (1b00840), closes #1087
- DH-14240 hasHeaders false should hide header bar (#1086) (28d97ad)
- Remove default export in jsapi-types (#1092) (7de114a)
0.30.0 (2023-02-13)
- The JS API packaged as a module is now required for the
code-studio
,embed-grid
, andembed-chart
applications. Existing (Enterprise) applications should be able to usejsapi-shim
still and load the JS API using the old method.