diff --git a/package-lock.json b/package-lock.json index 6cd270d0bb..fb9a10e6e1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -30057,6 +30057,7 @@ "dependencies": { "@deephaven/components": "file:../components", "@deephaven/golden-layout": "file:../golden-layout", + "@deephaven/grid": "file:../grid", "@deephaven/icons": "file:../icons", "@deephaven/iris-grid": "file:../iris-grid", "@deephaven/jsapi-types": "^1.0.0-dev0.34.0", @@ -31648,7 +31649,7 @@ "@deephaven/utils": "file:../utils", "@fortawesome/fontawesome-svg-core": "^6.2.1", "@fortawesome/react-fontawesome": "^0.2.0", - "@internationalized/date": "*", + "@internationalized/date": "^3.5.5", "@react-spectrum/theme-default": "^3.5.1", "@react-spectrum/utils": "^3.11.5", "@react-types/radio": "^3.8.1", @@ -32243,6 +32244,7 @@ "requires": { "@deephaven/components": "file:../components", "@deephaven/golden-layout": "file:../golden-layout", + "@deephaven/grid": "file:../grid", "@deephaven/icons": "file:../icons", "@deephaven/iris-grid": "file:../iris-grid", "@deephaven/jsapi-types": "^1.0.0-dev0.34.0", diff --git a/packages/dashboard-core-plugins/src/panels/IrisGridPanel.tsx b/packages/dashboard-core-plugins/src/panels/IrisGridPanel.tsx index 858e41a35c..1b68ea5bd8 100644 --- a/packages/dashboard-core-plugins/src/panels/IrisGridPanel.tsx +++ b/packages/dashboard-core-plugins/src/panels/IrisGridPanel.tsx @@ -424,6 +424,7 @@ export class IrisGridPanel extends PureComponent< } // TODO #2093: Find a better way to handle deprecated panel prop + // eslint-disable-next-line @typescript-eslint/no-unused-vars const deprecatedProps = { panel: this, }; @@ -436,10 +437,10 @@ export class IrisGridPanel extends PureComponent< fetchColumns={this.handlePluginFetchColumns} model={model} table={model.table} + tableName={this.getTableName()} + selectedRanges={this.irisGrid.current?.state.selectedRanges} onStateChange={this.handlePluginStateChange} pluginState={pluginState} - // eslint-disable-next-line react/jsx-props-no-spreading - {...deprecatedProps} /> ); diff --git a/packages/plugin/package.json b/packages/plugin/package.json index c53775f6c3..14a452b78d 100644 --- a/packages/plugin/package.json +++ b/packages/plugin/package.json @@ -24,6 +24,7 @@ "dependencies": { "@deephaven/components": "file:../components", "@deephaven/golden-layout": "file:../golden-layout", + "@deephaven/grid": "file:../grid", "@deephaven/icons": "file:../icons", "@deephaven/iris-grid": "file:../iris-grid", "@deephaven/jsapi-types": "^1.0.0-dev0.34.0", diff --git a/packages/plugin/src/TablePlugin.ts b/packages/plugin/src/TablePlugin.ts index 6860b8bca5..94a82ec3d4 100644 --- a/packages/plugin/src/TablePlugin.ts +++ b/packages/plugin/src/TablePlugin.ts @@ -5,6 +5,7 @@ import type { IrisGridContextMenuData, IrisGridModel, } from '@deephaven/iris-grid'; +import { GridRange } from '@deephaven/grid'; import type { ResolvableContextAction } from '@deephaven/components'; import type { dh } from '@deephaven/jsapi-types'; @@ -35,6 +36,16 @@ export interface TablePluginProps { */ table: dh.Table; + /** + * The name of the table this plugin is associated with. + */ + tableName: string; + + /** + * The currently selected ranges in the table. + */ + selectedRanges: readonly GridRange[] | undefined; + /** * Notify of a state change in the plugin state. Will be saved with the panel data. * Should be an object that can be serialized to JSON.