@deephaven/dashboard-core-plugins 0.38.1 → 0.39.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.
Files changed (63) hide show
  1. package/dist/ChartBuilderPlugin.d.ts.map +1 -1
  2. package/dist/ChartBuilderPlugin.js +4 -2
  3. package/dist/ChartBuilderPlugin.js.map +1 -1
  4. package/dist/ChartPlugin.d.ts.map +1 -1
  5. package/dist/ChartPlugin.js +4 -2
  6. package/dist/ChartPlugin.js.map +1 -1
  7. package/dist/GridPlugin.d.ts.map +1 -1
  8. package/dist/GridPlugin.js +7 -5
  9. package/dist/GridPlugin.js.map +1 -1
  10. package/dist/PandasPlugin.d.ts.map +1 -1
  11. package/dist/PandasPlugin.js +4 -2
  12. package/dist/PandasPlugin.js.map +1 -1
  13. package/dist/controls/dropdown-filter/DropdownFilter.d.ts +1 -1
  14. package/dist/controls/dropdown-filter/DropdownFilter.d.ts.map +1 -1
  15. package/dist/controls/dropdown-filter/DropdownFilter.js.map +1 -1
  16. package/dist/controls/input-filter/InputFilter.d.ts +1 -1
  17. package/dist/controls/input-filter/InputFilter.d.ts.map +1 -1
  18. package/dist/controls/input-filter/InputFilter.js.map +1 -1
  19. package/dist/linker/Linker.d.ts +3 -1
  20. package/dist/linker/Linker.d.ts.map +1 -1
  21. package/dist/linker/Linker.js +4 -2
  22. package/dist/linker/Linker.js.map +1 -1
  23. package/dist/panels/ChartPanel.d.ts +1 -1
  24. package/dist/panels/ChartPanel.d.ts.map +1 -1
  25. package/dist/panels/ChartPanel.js +22 -4
  26. package/dist/panels/ChartPanel.js.map +1 -1
  27. package/dist/panels/CommandHistoryPanel.d.ts +1 -1
  28. package/dist/panels/CommandHistoryPanel.d.ts.map +1 -1
  29. package/dist/panels/CommandHistoryPanel.js.map +1 -1
  30. package/dist/panels/ConsolePanel.d.ts +1 -1
  31. package/dist/panels/ConsolePanel.d.ts.map +1 -1
  32. package/dist/panels/ConsolePanel.js +3 -1
  33. package/dist/panels/ConsolePanel.js.map +1 -1
  34. package/dist/panels/DropdownFilterPanel.d.ts +4 -3
  35. package/dist/panels/DropdownFilterPanel.d.ts.map +1 -1
  36. package/dist/panels/DropdownFilterPanel.js +25 -12
  37. package/dist/panels/DropdownFilterPanel.js.map +1 -1
  38. package/dist/panels/FileExplorerPanel.d.ts +1 -1
  39. package/dist/panels/FileExplorerPanel.d.ts.map +1 -1
  40. package/dist/panels/FileExplorerPanel.js.map +1 -1
  41. package/dist/panels/FilterSetManagerPanel.d.ts +1 -1
  42. package/dist/panels/FilterSetManagerPanel.d.ts.map +1 -1
  43. package/dist/panels/FilterSetManagerPanel.js.map +1 -1
  44. package/dist/panels/IrisGridPanel.d.ts +2 -1
  45. package/dist/panels/IrisGridPanel.d.ts.map +1 -1
  46. package/dist/panels/IrisGridPanel.js +37 -28
  47. package/dist/panels/IrisGridPanel.js.map +1 -1
  48. package/dist/panels/LogPanel.d.ts +1 -1
  49. package/dist/panels/LogPanel.d.ts.map +1 -1
  50. package/dist/panels/LogPanel.js.map +1 -1
  51. package/dist/panels/NotebookPanel.d.ts +1 -1
  52. package/dist/panels/NotebookPanel.d.ts.map +1 -1
  53. package/dist/panels/NotebookPanel.js.map +1 -1
  54. package/dist/panels/Panel.d.ts +1 -1
  55. package/dist/panels/Panel.d.ts.map +1 -1
  56. package/dist/panels/Panel.js.map +1 -1
  57. package/dist/redux/actions.d.ts +1 -1
  58. package/dist/redux/actions.d.ts.map +1 -1
  59. package/dist/redux/actions.js.map +1 -1
  60. package/dist/redux/selectors.d.ts +1 -1
  61. package/dist/redux/selectors.d.ts.map +1 -1
  62. package/dist/redux/selectors.js.map +1 -1
  63. package/package.json +23 -21
@@ -1 +1 @@
1
- {"version":3,"file":"FilterSetManagerPanel.js","names":["React","Component","connect","getOpenedPanelMapForDashboard","LayoutUtils","Log","getFilterSetsForDashboard","getInputFiltersForDashboard","getTableMapForDashboard","setDashboardFilterSets","setDashboardFilterSetsAction","Panel","FilterSetManager","IrisGridPanel","DropdownFilterPanel","InputFilterPanel","log","module","hasSetPanelState","panel","setPanelState","FilterSetManagerPanel","changeFilterIndexesToColumnNames","table","configs","map","index","filter","columns","length","name","config","constructor","props","handleChange","bind","handleFilterApply","handleSetsUpdate","handleGetFilterState","panelState","filterSets","selectedId","id","undefined","isValueShown","state","getFilterState","dashboardOpenedPanelMap","panels","keys","forEach","key","get","error","componentName","getComponentNameFromPanel","panelId","getIdFromPanel","debug","glContainer","getComponentConfigFromContainer","getPanelComponentState","getComponentName","getIrisGridPanelFilters","push","type","value","panelTableMap","irisGridState","advancedFilters","quickFilters","gridState","indexedAdvancedFilters","indexedQuickFilters","setState","updatePanelState","filterSet","restoreFullState","has","restoreIrisGridFilters","restoreInputFilterState","modifiedFilterSets","localDashboardId","prevAdvancedFilters","prevQuickFilters","setStateOverrides","setFilters","inputFilterState","render","glEventHub","mapStateToProps","ownProps","dashboardInputFilters","ConnectedFilterSetManagerPanel","forwardRef"],"sources":["../../src/panels/FilterSetManagerPanel.tsx"],"sourcesContent":["import React, { Component, ReactElement } from 'react';\nimport { connect } from 'react-redux';\nimport {\n getOpenedPanelMapForDashboard,\n LayoutUtils,\n PanelComponent,\n} from '@deephaven/dashboard';\nimport Log from '@deephaven/log';\nimport type { Container, EventEmitter } from '@deephaven/golden-layout';\nimport { TableTemplate } from '@deephaven/jsapi-shim';\nimport { RootState } from '@deephaven/redux';\nimport {\n AdvancedFilter,\n ColumnName,\n DehydratedIrisGridState,\n QuickFilter,\n} from '@deephaven/iris-grid';\nimport { GridState } from '@deephaven/grid';\nimport {\n getFilterSetsForDashboard,\n getInputFiltersForDashboard,\n getTableMapForDashboard,\n setDashboardFilterSets as setDashboardFilterSetsAction,\n} from '../redux';\nimport Panel from './Panel';\nimport FilterSetManager, {\n ChangeHandlerArgs,\n FilterSet,\n FilterSetPanel,\n} from './FilterSetManager';\nimport { IrisGridPanel } from './IrisGridPanel';\nimport DropdownFilterPanel from './DropdownFilterPanel';\nimport InputFilterPanel, {\n PanelState as InputFilterPanelState,\n} from './InputFilterPanel';\nimport './FilterSetManagerPanel.scss';\n\nconst log = Log.module('FilterSetManagerPanel');\ninterface IrisGridState {\n advancedFilters: [number, AdvancedFilter][];\n quickFilters: [number, QuickFilter][];\n}\n\ninterface PanelState {\n irisGridState?: IrisGridState;\n gridState?: Partial<GridState>;\n selectedId?: string | string[];\n isValueShown?: boolean;\n name?: string;\n type?: string;\n value?: string;\n}\n\ninterface FilterSetManagerPanelProps {\n glContainer: Container;\n glEventHub: EventEmitter;\n panelState: PanelState;\n filterSets: FilterSet[];\n localDashboardId: string;\n dashboardOpenedPanelMap: Map<string | string[], PanelComponent>;\n setDashboardFilterSets: (\n dashboardId: string,\n filterSets: FilterSet[]\n ) => void;\n panelTableMap: Map<string | string[], TableTemplate>;\n}\n\ninterface FilterSetManagerPanelState {\n selectedId?: string | string[];\n isValueShown: boolean;\n // eslint-disable-next-line react/no-unused-state\n panelState: PanelState; // Dehydrated panel state that can load this panel\n}\n\nfunction hasSetPanelState(\n panel: PanelComponent\n): panel is PanelComponent & {\n setPanelState: (state: InputFilterPanelState) => void;\n} {\n return (\n (panel as PanelComponent & {\n setPanelState: (state: InputFilterPanelState) => void;\n }).setPanelState != null\n );\n}\nexport class FilterSetManagerPanel extends Component<\n FilterSetManagerPanelProps,\n FilterSetManagerPanelState\n> {\n static defaultProps = {\n panelState: null,\n };\n\n static COMPONENT = 'FilterSetManagerPanel';\n\n static changeFilterIndexesToColumnNames<T>(\n table: TableTemplate,\n configs: [number, T][]\n ): { name: string; filter: T }[] {\n return configs\n .map(([index, filter]) => {\n if (index >= table.columns.length) {\n return null;\n }\n const { name } = table.columns[index];\n return { name, filter };\n })\n .filter(config => config != null) as { name: string; filter: T }[];\n }\n\n constructor(props: FilterSetManagerPanelProps) {\n super(props);\n\n this.handleChange = this.handleChange.bind(this);\n this.handleFilterApply = this.handleFilterApply.bind(this);\n this.handleSetsUpdate = this.handleSetsUpdate.bind(this);\n this.handleGetFilterState = this.handleGetFilterState.bind(this);\n\n const { panelState, filterSets } = props;\n const {\n selectedId = filterSets.length > 0 ? filterSets[0].id : undefined,\n isValueShown = false,\n } = panelState ?? {};\n\n this.state = {\n selectedId,\n isValueShown,\n // eslint-disable-next-line react/no-unused-state\n panelState, // Dehydrated panel state that can load this panel\n };\n }\n\n // Collect all filter values for each dashboard panel\n getFilterState(): FilterSetPanel[] {\n const { dashboardOpenedPanelMap } = this.props;\n const panels: FilterSetPanel[] = [];\n [...dashboardOpenedPanelMap.keys()].forEach(key => {\n const panel = dashboardOpenedPanelMap.get(key);\n\n if (panel === undefined) {\n log.error('Could not get panel', panel);\n return;\n }\n\n const componentName = LayoutUtils.getComponentNameFromPanel(panel);\n const panelId = LayoutUtils.getIdFromPanel(panel);\n log.debug('Panel:', panel, componentName);\n\n const { glContainer = null } = panel.props;\n if (glContainer == null) {\n log.error('Could not get panel container', panel);\n return;\n }\n const config = LayoutUtils.getComponentConfigFromContainer(glContainer);\n if (config == null) {\n log.error('Could not get component config from container', glContainer);\n return;\n }\n const panelState = LayoutUtils.getPanelComponentState(\n config\n ) as PanelState;\n if (panelState == null) {\n log.debug(`Panel state is null ${panelId}`);\n return;\n }\n switch (componentName) {\n case LayoutUtils.getComponentName(IrisGridPanel): {\n let state;\n if (panelId != null) {\n state = this.getIrisGridPanelFilters(panelId, panelState);\n }\n if (state != null) {\n panels.push({\n panelId,\n type: componentName,\n state,\n });\n }\n break;\n }\n case LayoutUtils.getComponentName(InputFilterPanel):\n case LayoutUtils.getComponentName(DropdownFilterPanel): {\n const { isValueShown, name, type, value } = panelState;\n panels.push({\n panelId,\n type: componentName,\n state: { isValueShown, name, type, value },\n });\n break;\n }\n default:\n }\n });\n return panels;\n }\n\n getIrisGridPanelFilters(\n panelId: string | string[],\n panelState: PanelState\n ): {\n irisGridState: Omit<IrisGridState, 'advancedFilters' | 'quickFilters'> & {\n advancedFilters?: {\n name: string;\n filter: AdvancedFilter;\n }[];\n quickFilters?: {\n name: string;\n filter: QuickFilter;\n }[];\n };\n gridState: Partial<GridState>;\n } | null {\n const { panelTableMap } = this.props;\n const table = panelTableMap.get(panelId);\n if (table == null) {\n log.error(`Unable to get table for panel ${panelId}.`);\n return null;\n }\n // IrisGridUtils.hydrate uses numeric indexes for columns\n // Change indexes to column names to make it work for proxy models\n const {\n irisGridState = { advancedFilters: undefined, quickFilters: undefined },\n gridState = {},\n } = panelState;\n const {\n advancedFilters: indexedAdvancedFilters,\n quickFilters: indexedQuickFilters,\n } = irisGridState;\n let advancedFilters;\n if (indexedAdvancedFilters) {\n advancedFilters = FilterSetManagerPanel.changeFilterIndexesToColumnNames(\n table,\n indexedAdvancedFilters\n );\n }\n\n let quickFilters;\n if (indexedQuickFilters) {\n quickFilters = FilterSetManagerPanel.changeFilterIndexesToColumnNames(\n table,\n indexedQuickFilters\n );\n }\n return {\n irisGridState: {\n ...irisGridState,\n advancedFilters,\n quickFilters,\n },\n gridState: { ...gridState },\n };\n }\n\n handleGetFilterState(): FilterSetPanel[] {\n return this.getFilterState();\n }\n\n handleChange({ isValueShown, selectedId }: ChangeHandlerArgs): void {\n log.debug('handleChange', isValueShown, selectedId);\n this.setState({ isValueShown, selectedId });\n this.updatePanelState();\n }\n\n handleFilterApply(filterSet: FilterSet): void {\n const { dashboardOpenedPanelMap } = this.props;\n const { panels, restoreFullState = false } = filterSet;\n log.debug(`Apply filters from filter set`, filterSet);\n panels.forEach(({ panelId, type, state }) => {\n if (panelId == null) {\n log.debug('panel is null', panelId);\n return;\n }\n if (!dashboardOpenedPanelMap.has(panelId)) {\n log.debug('Ignore closed panel', panelId);\n return;\n }\n log.debug('Apply panel filters', panelId, type, state);\n const panel = dashboardOpenedPanelMap.get(panelId);\n switch (type) {\n case LayoutUtils.getComponentName(IrisGridPanel):\n this.restoreIrisGridFilters(\n panel as IrisGridPanel,\n state as {\n irisGridState: Partial<DehydratedIrisGridState>;\n gridState: Partial<GridState>;\n advancedFilters: { name: string; filter: AdvancedFilter }[];\n quickFilters: { name: string; filter: QuickFilter }[];\n },\n restoreFullState\n );\n break;\n case LayoutUtils.getComponentName(InputFilterPanel):\n case LayoutUtils.getComponentName(DropdownFilterPanel):\n this.restoreInputFilterState(panel, state as InputFilterPanelState);\n break;\n default:\n }\n });\n }\n\n handleSetsUpdate(modifiedFilterSets: FilterSet[]): void {\n const { setDashboardFilterSets, localDashboardId } = this.props;\n log.debug('Saving updated sets', modifiedFilterSets);\n // Filter sets are stored in dashboard data instead of the panelState\n // because they need to be shared between the filter view manager panels\n setDashboardFilterSets(localDashboardId, [...modifiedFilterSets]);\n }\n\n updatePanelState(): void {\n this.setState(({ selectedId, isValueShown }) => ({\n // eslint-disable-next-line react/no-unused-state\n panelState: {\n selectedId,\n isValueShown,\n },\n }));\n }\n\n restoreIrisGridFilters(\n panel: IrisGridPanel,\n state: {\n irisGridState: Partial<DehydratedIrisGridState>;\n gridState: Partial<GridState>;\n advancedFilters: { name: ColumnName; filter: AdvancedFilter }[];\n quickFilters: { name: ColumnName; filter: QuickFilter }[];\n },\n restoreFullState: boolean\n ): void {\n // Fall back to state.advancedFilters and state.quickFilters\n // for backward compatibility with filter sets that only contain filters\n const {\n irisGridState = {},\n advancedFilters: prevAdvancedFilters = [],\n quickFilters: prevQuickFilters = [],\n } = state;\n const {\n advancedFilters = prevAdvancedFilters,\n quickFilters = prevQuickFilters,\n } = irisGridState;\n const { panelTableMap } = this.props;\n const panelId = LayoutUtils.getIdFromPanel(panel);\n if (panelId == null) {\n log.error(`Panel Id is null.`);\n return;\n }\n const table = panelTableMap.get(panelId);\n if (table == null) {\n log.error(`Unable to get table for panel ${panelId}.`);\n return;\n }\n log.debug('restoreIrisGridFilters', panelId, state, restoreFullState);\n if (restoreFullState) {\n panel.setStateOverrides(state);\n } else {\n panel.setFilters({\n quickFilters: quickFilters as {\n name: string;\n filter: QuickFilter;\n }[],\n advancedFilters: advancedFilters as {\n name: string;\n filter: AdvancedFilter;\n }[],\n });\n }\n }\n\n // eslint-disable-next-line class-methods-use-this\n restoreInputFilterState(\n panel: PanelComponent | undefined,\n state: InputFilterPanelState\n ): void {\n const inputFilterState = { ...state };\n // Restore state but don't flip the card\n delete inputFilterState.isValueShown;\n log.debug('restoreInputFilterState', panel, inputFilterState);\n if (panel && hasSetPanelState(panel)) {\n panel.setPanelState(inputFilterState);\n }\n }\n\n render(): ReactElement {\n const { glContainer, glEventHub, filterSets } = this.props;\n const { isValueShown, selectedId } = this.state;\n return (\n <Panel\n className=\"filter-set-manager-panel\"\n componentPanel={this}\n glContainer={glContainer}\n glEventHub={glEventHub}\n isClonable\n isRenamable\n >\n <div className=\"input-filter-container h-100 w-100 container\">\n <FilterSetManager\n onChange={this.handleChange}\n onApply={this.handleFilterApply}\n onUpdateSets={this.handleSetsUpdate}\n isValueShown={isValueShown}\n filterSets={filterSets}\n selectedId={selectedId as string}\n getFilterState={this.handleGetFilterState}\n />\n </div>\n </Panel>\n );\n }\n}\n\nconst mapStateToProps = (\n state: RootState,\n ownProps: { localDashboardId: string }\n) => {\n const { localDashboardId } = ownProps;\n return {\n filterSets: getFilterSetsForDashboard(state, localDashboardId),\n dashboardOpenedPanelMap: getOpenedPanelMapForDashboard(\n state,\n localDashboardId\n ),\n dashboardInputFilters: getInputFiltersForDashboard(state, localDashboardId),\n panelTableMap: getTableMapForDashboard(state, localDashboardId),\n };\n};\n\nconst ConnectedFilterSetManagerPanel = connect(\n mapStateToProps,\n {\n setDashboardFilterSets: setDashboardFilterSetsAction,\n },\n null,\n { forwardRef: true }\n)(FilterSetManagerPanel);\n\nexport default ConnectedFilterSetManagerPanel;\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAsB,OAAO;AACtD,SAASC,OAAO,QAAQ,aAAa;AACrC,SACEC,6BAA6B,EAC7BC,WAAW,QAEN,sBAAsB;AAC7B,OAAOC,GAAG,MAAM,gBAAgB;AAAC,SAY/BC,yBAAyB,EACzBC,2BAA2B,EAC3BC,uBAAuB,EACvBC,sBAAsB,IAAIC,4BAA4B;AAAA,OAEjDC,KAAK;AAAA,OACLC,gBAAgB;AAAA,SAKdC,aAAa;AAAA,OACfC,mBAAmB;AAAA,OACnBC,gBAAgB;AAAA;AAKvB,IAAMC,GAAG,GAAGX,GAAG,CAACY,MAAM,CAAC,uBAAuB,CAAC;AAqC/C,SAASC,gBAAgB,CACvBC,KAAqB,EAGrB;EACA,OACGA,KAAK,CAEHC,aAAa,IAAI,IAAI;AAE5B;AACA,OAAO,MAAMC,qBAAqB,SAASpB,SAAS,CAGlD;EAOA,OAAOqB,gCAAgC,CACrCC,KAAoB,EACpBC,OAAsB,EACS;IAC/B,OAAOA,OAAO,CACXC,GAAG,CAAC,QAAqB;MAAA,IAApB,CAACC,KAAK,EAAEC,MAAM,CAAC;MACnB,IAAID,KAAK,IAAIH,KAAK,CAACK,OAAO,CAACC,MAAM,EAAE;QACjC,OAAO,IAAI;MACb;MACA,IAAM;QAAEC;MAAK,CAAC,GAAGP,KAAK,CAACK,OAAO,CAACF,KAAK,CAAC;MACrC,OAAO;QAAEI,IAAI;QAAEH;MAAO,CAAC;IACzB,CAAC,CAAC,CACDA,MAAM,CAACI,MAAM,IAAIA,MAAM,IAAI,IAAI,CAAC;EACrC;EAEAC,WAAW,CAACC,KAAiC,EAAE;IAC7C,KAAK,CAACA,KAAK,CAAC;IAEZ,IAAI,CAACC,YAAY,GAAG,IAAI,CAACA,YAAY,CAACC,IAAI,CAAC,IAAI,CAAC;IAChD,IAAI,CAACC,iBAAiB,GAAG,IAAI,CAACA,iBAAiB,CAACD,IAAI,CAAC,IAAI,CAAC;IAC1D,IAAI,CAACE,gBAAgB,GAAG,IAAI,CAACA,gBAAgB,CAACF,IAAI,CAAC,IAAI,CAAC;IACxD,IAAI,CAACG,oBAAoB,GAAG,IAAI,CAACA,oBAAoB,CAACH,IAAI,CAAC,IAAI,CAAC;IAEhE,IAAM;MAAEI,UAAU;MAAEC;IAAW,CAAC,GAAGP,KAAK;IACxC,IAAM;MACJQ,UAAU,GAAGD,UAAU,CAACX,MAAM,GAAG,CAAC,GAAGW,UAAU,CAAC,CAAC,CAAC,CAACE,EAAE,GAAGC,SAAS;MACjEC,YAAY,GAAG;IACjB,CAAC,GAAGL,UAAU,aAAVA,UAAU,cAAVA,UAAU,GAAI,CAAC,CAAC;IAEpB,IAAI,CAACM,KAAK,GAAG;MACXJ,UAAU;MACVG,YAAY;MACZ;MACAL,UAAU,CAAE;IACd,CAAC;EACH;;EAEA;EACAO,cAAc,GAAqB;IACjC,IAAM;MAAEC;IAAwB,CAAC,GAAG,IAAI,CAACd,KAAK;IAC9C,IAAMe,MAAwB,GAAG,EAAE;IACnC,CAAC,GAAGD,uBAAuB,CAACE,IAAI,EAAE,CAAC,CAACC,OAAO,CAACC,GAAG,IAAI;MACjD,IAAMhC,KAAK,GAAG4B,uBAAuB,CAACK,GAAG,CAACD,GAAG,CAAC;MAE9C,IAAIhC,KAAK,KAAKwB,SAAS,EAAE;QACvB3B,GAAG,CAACqC,KAAK,CAAC,qBAAqB,EAAElC,KAAK,CAAC;QACvC;MACF;MAEA,IAAMmC,aAAa,GAAGlD,WAAW,CAACmD,yBAAyB,CAACpC,KAAK,CAAC;MAClE,IAAMqC,OAAO,GAAGpD,WAAW,CAACqD,cAAc,CAACtC,KAAK,CAAC;MACjDH,GAAG,CAAC0C,KAAK,CAAC,QAAQ,EAAEvC,KAAK,EAAEmC,aAAa,CAAC;MAEzC,IAAM;QAAEK,WAAW,GAAG;MAAK,CAAC,GAAGxC,KAAK,CAACc,KAAK;MAC1C,IAAI0B,WAAW,IAAI,IAAI,EAAE;QACvB3C,GAAG,CAACqC,KAAK,CAAC,+BAA+B,EAAElC,KAAK,CAAC;QACjD;MACF;MACA,IAAMY,MAAM,GAAG3B,WAAW,CAACwD,+BAA+B,CAACD,WAAW,CAAC;MACvE,IAAI5B,MAAM,IAAI,IAAI,EAAE;QAClBf,GAAG,CAACqC,KAAK,CAAC,+CAA+C,EAAEM,WAAW,CAAC;QACvE;MACF;MACA,IAAMpB,UAAU,GAAGnC,WAAW,CAACyD,sBAAsB,CACnD9B,MAAM,CACO;MACf,IAAIQ,UAAU,IAAI,IAAI,EAAE;QACtBvB,GAAG,CAAC0C,KAAK,+BAAwBF,OAAO,EAAG;QAC3C;MACF;MACA,QAAQF,aAAa;QACnB,KAAKlD,WAAW,CAAC0D,gBAAgB,CAACjD,aAAa,CAAC;UAAE;YAChD,IAAIgC,MAAK;YACT,IAAIW,OAAO,IAAI,IAAI,EAAE;cACnBX,MAAK,GAAG,IAAI,CAACkB,uBAAuB,CAACP,OAAO,EAAEjB,UAAU,CAAC;YAC3D;YACA,IAAIM,MAAK,IAAI,IAAI,EAAE;cACjBG,MAAM,CAACgB,IAAI,CAAC;gBACVR,OAAO;gBACPS,IAAI,EAAEX,aAAa;gBACnBT,KAAK,EAALA;cACF,CAAC,CAAC;YACJ;YACA;UACF;QACA,KAAKzC,WAAW,CAAC0D,gBAAgB,CAAC/C,gBAAgB,CAAC;QACnD,KAAKX,WAAW,CAAC0D,gBAAgB,CAAChD,mBAAmB,CAAC;UAAE;YACtD,IAAM;cAAE8B,YAAY;cAAEd,IAAI;cAAEmC,IAAI;cAAEC;YAAM,CAAC,GAAG3B,UAAU;YACtDS,MAAM,CAACgB,IAAI,CAAC;cACVR,OAAO;cACPS,IAAI,EAAEX,aAAa;cACnBT,KAAK,EAAE;gBAAED,YAAY;gBAAEd,IAAI;gBAAEmC,IAAI;gBAAEC;cAAM;YAC3C,CAAC,CAAC;YACF;UACF;QACA;MAAQ;IAEZ,CAAC,CAAC;IACF,OAAOlB,MAAM;EACf;EAEAe,uBAAuB,CACrBP,OAA0B,EAC1BjB,UAAsB,EAaf;IACP,IAAM;MAAE4B;IAAc,CAAC,GAAG,IAAI,CAAClC,KAAK;IACpC,IAAMV,KAAK,GAAG4C,aAAa,CAACf,GAAG,CAACI,OAAO,CAAC;IACxC,IAAIjC,KAAK,IAAI,IAAI,EAAE;MACjBP,GAAG,CAACqC,KAAK,yCAAkCG,OAAO,OAAI;MACtD,OAAO,IAAI;IACb;IACA;IACA;IACA,IAAM;MACJY,aAAa,GAAG;QAAEC,eAAe,EAAE1B,SAAS;QAAE2B,YAAY,EAAE3B;MAAU,CAAC;MACvE4B,SAAS,GAAG,CAAC;IACf,CAAC,GAAGhC,UAAU;IACd,IAAM;MACJ8B,eAAe,EAAEG,sBAAsB;MACvCF,YAAY,EAAEG;IAChB,CAAC,GAAGL,aAAa;IACjB,IAAIC,eAAe;IACnB,IAAIG,sBAAsB,EAAE;MAC1BH,eAAe,GAAGhD,qBAAqB,CAACC,gCAAgC,CACtEC,KAAK,EACLiD,sBAAsB,CACvB;IACH;IAEA,IAAIF,YAAY;IAChB,IAAIG,mBAAmB,EAAE;MACvBH,YAAY,GAAGjD,qBAAqB,CAACC,gCAAgC,CACnEC,KAAK,EACLkD,mBAAmB,CACpB;IACH;IACA,OAAO;MACLL,aAAa,kCACRA,aAAa;QAChBC,eAAe;QACfC;MAAY,EACb;MACDC,SAAS,oBAAOA,SAAS;IAC3B,CAAC;EACH;EAEAjC,oBAAoB,GAAqB;IACvC,OAAO,IAAI,CAACQ,cAAc,EAAE;EAC9B;EAEAZ,YAAY,QAAwD;IAAA,IAAvD;MAAEU,YAAY;MAAEH;IAA8B,CAAC;IAC1DzB,GAAG,CAAC0C,KAAK,CAAC,cAAc,EAAEd,YAAY,EAAEH,UAAU,CAAC;IACnD,IAAI,CAACiC,QAAQ,CAAC;MAAE9B,YAAY;MAAEH;IAAW,CAAC,CAAC;IAC3C,IAAI,CAACkC,gBAAgB,EAAE;EACzB;EAEAvC,iBAAiB,CAACwC,SAAoB,EAAQ;IAC5C,IAAM;MAAE7B;IAAwB,CAAC,GAAG,IAAI,CAACd,KAAK;IAC9C,IAAM;MAAEe,MAAM;MAAE6B,gBAAgB,GAAG;IAAM,CAAC,GAAGD,SAAS;IACtD5D,GAAG,CAAC0C,KAAK,kCAAkCkB,SAAS,CAAC;IACrD5B,MAAM,CAACE,OAAO,CAAC,SAA8B;MAAA,IAA7B;QAAEM,OAAO;QAAES,IAAI;QAAEpB;MAAM,CAAC;MACtC,IAAIW,OAAO,IAAI,IAAI,EAAE;QACnBxC,GAAG,CAAC0C,KAAK,CAAC,eAAe,EAAEF,OAAO,CAAC;QACnC;MACF;MACA,IAAI,CAACT,uBAAuB,CAAC+B,GAAG,CAACtB,OAAO,CAAC,EAAE;QACzCxC,GAAG,CAAC0C,KAAK,CAAC,qBAAqB,EAAEF,OAAO,CAAC;QACzC;MACF;MACAxC,GAAG,CAAC0C,KAAK,CAAC,qBAAqB,EAAEF,OAAO,EAAES,IAAI,EAAEpB,KAAK,CAAC;MACtD,IAAM1B,KAAK,GAAG4B,uBAAuB,CAACK,GAAG,CAACI,OAAO,CAAC;MAClD,QAAQS,IAAI;QACV,KAAK7D,WAAW,CAAC0D,gBAAgB,CAACjD,aAAa,CAAC;UAC9C,IAAI,CAACkE,sBAAsB,CACzB5D,KAAK,EACL0B,KAAK,EAMLgC,gBAAgB,CACjB;UACD;QACF,KAAKzE,WAAW,CAAC0D,gBAAgB,CAAC/C,gBAAgB,CAAC;QACnD,KAAKX,WAAW,CAAC0D,gBAAgB,CAAChD,mBAAmB,CAAC;UACpD,IAAI,CAACkE,uBAAuB,CAAC7D,KAAK,EAAE0B,KAAK,CAA0B;UACnE;QACF;MAAQ;IAEZ,CAAC,CAAC;EACJ;EAEAR,gBAAgB,CAAC4C,kBAA+B,EAAQ;IACtD,IAAM;MAAExE,sBAAsB;MAAEyE;IAAiB,CAAC,GAAG,IAAI,CAACjD,KAAK;IAC/DjB,GAAG,CAAC0C,KAAK,CAAC,qBAAqB,EAAEuB,kBAAkB,CAAC;IACpD;IACA;IACAxE,sBAAsB,CAACyE,gBAAgB,EAAE,CAAC,GAAGD,kBAAkB,CAAC,CAAC;EACnE;EAEAN,gBAAgB,GAAS;IACvB,IAAI,CAACD,QAAQ,CAAC;MAAA,IAAC;QAAEjC,UAAU;QAAEG;MAAa,CAAC;MAAA,OAAM;QAC/C;QACAL,UAAU,EAAE;UACVE,UAAU;UACVG;QACF;MACF,CAAC;IAAA,CAAC,CAAC;EACL;EAEAmC,sBAAsB,CACpB5D,KAAoB,EACpB0B,KAKC,EACDgC,gBAAyB,EACnB;IACN;IACA;IACA,IAAM;MACJT,aAAa,GAAG,CAAC,CAAC;MAClBC,eAAe,EAAEc,mBAAmB,GAAG,EAAE;MACzCb,YAAY,EAAEc,gBAAgB,GAAG;IACnC,CAAC,GAAGvC,KAAK;IACT,IAAM;MACJwB,eAAe,GAAGc,mBAAmB;MACrCb,YAAY,GAAGc;IACjB,CAAC,GAAGhB,aAAa;IACjB,IAAM;MAAED;IAAc,CAAC,GAAG,IAAI,CAAClC,KAAK;IACpC,IAAMuB,OAAO,GAAGpD,WAAW,CAACqD,cAAc,CAACtC,KAAK,CAAC;IACjD,IAAIqC,OAAO,IAAI,IAAI,EAAE;MACnBxC,GAAG,CAACqC,KAAK,qBAAqB;MAC9B;IACF;IACA,IAAM9B,KAAK,GAAG4C,aAAa,CAACf,GAAG,CAACI,OAAO,CAAC;IACxC,IAAIjC,KAAK,IAAI,IAAI,EAAE;MACjBP,GAAG,CAACqC,KAAK,yCAAkCG,OAAO,OAAI;MACtD;IACF;IACAxC,GAAG,CAAC0C,KAAK,CAAC,wBAAwB,EAAEF,OAAO,EAAEX,KAAK,EAAEgC,gBAAgB,CAAC;IACrE,IAAIA,gBAAgB,EAAE;MACpB1D,KAAK,CAACkE,iBAAiB,CAACxC,KAAK,CAAC;IAChC,CAAC,MAAM;MACL1B,KAAK,CAACmE,UAAU,CAAC;QACfhB,YAAY,EAAEA,YAGX;QACHD,eAAe,EAAEA;MAInB,CAAC,CAAC;IACJ;EACF;;EAEA;EACAW,uBAAuB,CACrB7D,KAAiC,EACjC0B,KAA4B,EACtB;IACN,IAAM0C,gBAAgB,qBAAQ1C,KAAK,CAAE;IACrC;IACA,OAAO0C,gBAAgB,CAAC3C,YAAY;IACpC5B,GAAG,CAAC0C,KAAK,CAAC,yBAAyB,EAAEvC,KAAK,EAAEoE,gBAAgB,CAAC;IAC7D,IAAIpE,KAAK,IAAID,gBAAgB,CAACC,KAAK,CAAC,EAAE;MACpCA,KAAK,CAACC,aAAa,CAACmE,gBAAgB,CAAC;IACvC;EACF;EAEAC,MAAM,GAAiB;IACrB,IAAM;MAAE7B,WAAW;MAAE8B,UAAU;MAAEjD;IAAW,CAAC,GAAG,IAAI,CAACP,KAAK;IAC1D,IAAM;MAAEW,YAAY;MAAEH;IAAW,CAAC,GAAG,IAAI,CAACI,KAAK;IAC/C,oBACE,oBAAC,KAAK;MACJ,SAAS,EAAC,0BAA0B;MACpC,cAAc,EAAE,IAAK;MACrB,WAAW,EAAEc,WAAY;MACzB,UAAU,EAAE8B,UAAW;MACvB,UAAU;MACV,WAAW;IAAA,gBAEX;MAAK,SAAS,EAAC;IAA8C,gBAC3D,oBAAC,gBAAgB;MACf,QAAQ,EAAE,IAAI,CAACvD,YAAa;MAC5B,OAAO,EAAE,IAAI,CAACE,iBAAkB;MAChC,YAAY,EAAE,IAAI,CAACC,gBAAiB;MACpC,YAAY,EAAEO,YAAa;MAC3B,UAAU,EAAEJ,UAAW;MACvB,UAAU,EAAEC,UAAqB;MACjC,cAAc,EAAE,IAAI,CAACH;IAAqB,EAC1C,CACE,CACA;EAEZ;AACF;AAAC,gBAlUYjB,qBAAqB,kBAIV;EACpBkB,UAAU,EAAE;AACd,CAAC;AAAA,gBANUlB,qBAAqB,eAQb,uBAAuB;AA4T5C,IAAMqE,eAAe,GAAG,CACtB7C,KAAgB,EAChB8C,QAAsC,KACnC;EACH,IAAM;IAAET;EAAiB,CAAC,GAAGS,QAAQ;EACrC,OAAO;IACLnD,UAAU,EAAElC,yBAAyB,CAACuC,KAAK,EAAEqC,gBAAgB,CAAC;IAC9DnC,uBAAuB,EAAE5C,6BAA6B,CACpD0C,KAAK,EACLqC,gBAAgB,CACjB;IACDU,qBAAqB,EAAErF,2BAA2B,CAACsC,KAAK,EAAEqC,gBAAgB,CAAC;IAC3Ef,aAAa,EAAE3D,uBAAuB,CAACqC,KAAK,EAAEqC,gBAAgB;EAChE,CAAC;AACH,CAAC;AAED,IAAMW,8BAA8B,GAAG3F,OAAO,CAC5CwF,eAAe,EACf;EACEjF,sBAAsB,EAAEC;AAC1B,CAAC,EACD,IAAI,EACJ;EAAEoF,UAAU,EAAE;AAAK,CAAC,CACrB,CAACzE,qBAAqB,CAAC;AAExB,eAAewE,8BAA8B"}
1
+ {"version":3,"file":"FilterSetManagerPanel.js","names":["React","Component","connect","getOpenedPanelMapForDashboard","LayoutUtils","Log","getFilterSetsForDashboard","getInputFiltersForDashboard","getTableMapForDashboard","setDashboardFilterSets","setDashboardFilterSetsAction","Panel","FilterSetManager","IrisGridPanel","DropdownFilterPanel","InputFilterPanel","log","module","hasSetPanelState","panel","setPanelState","FilterSetManagerPanel","changeFilterIndexesToColumnNames","table","configs","map","index","filter","columns","length","name","config","constructor","props","handleChange","bind","handleFilterApply","handleSetsUpdate","handleGetFilterState","panelState","filterSets","selectedId","id","undefined","isValueShown","state","getFilterState","dashboardOpenedPanelMap","panels","keys","forEach","key","get","error","componentName","getComponentNameFromPanel","panelId","getIdFromPanel","debug","glContainer","getComponentConfigFromContainer","getPanelComponentState","getComponentName","getIrisGridPanelFilters","push","type","value","panelTableMap","irisGridState","advancedFilters","quickFilters","gridState","indexedAdvancedFilters","indexedQuickFilters","setState","updatePanelState","filterSet","restoreFullState","has","restoreIrisGridFilters","restoreInputFilterState","modifiedFilterSets","localDashboardId","prevAdvancedFilters","prevQuickFilters","setStateOverrides","setFilters","inputFilterState","render","glEventHub","mapStateToProps","ownProps","dashboardInputFilters","ConnectedFilterSetManagerPanel","forwardRef"],"sources":["../../src/panels/FilterSetManagerPanel.tsx"],"sourcesContent":["import React, { Component, ReactElement } from 'react';\nimport { connect } from 'react-redux';\nimport {\n getOpenedPanelMapForDashboard,\n LayoutUtils,\n PanelComponent,\n} from '@deephaven/dashboard';\nimport Log from '@deephaven/log';\nimport type { Container, EventEmitter } from '@deephaven/golden-layout';\nimport type { TableTemplate } from '@deephaven/jsapi-types';\nimport { RootState } from '@deephaven/redux';\nimport {\n AdvancedFilter,\n ColumnName,\n DehydratedIrisGridState,\n QuickFilter,\n} from '@deephaven/iris-grid';\nimport { GridState } from '@deephaven/grid';\nimport {\n getFilterSetsForDashboard,\n getInputFiltersForDashboard,\n getTableMapForDashboard,\n setDashboardFilterSets as setDashboardFilterSetsAction,\n} from '../redux';\nimport Panel from './Panel';\nimport FilterSetManager, {\n ChangeHandlerArgs,\n FilterSet,\n FilterSetPanel,\n} from './FilterSetManager';\nimport { IrisGridPanel } from './IrisGridPanel';\nimport DropdownFilterPanel from './DropdownFilterPanel';\nimport InputFilterPanel, {\n PanelState as InputFilterPanelState,\n} from './InputFilterPanel';\nimport './FilterSetManagerPanel.scss';\n\nconst log = Log.module('FilterSetManagerPanel');\ninterface IrisGridState {\n advancedFilters: [number, AdvancedFilter][];\n quickFilters: [number, QuickFilter][];\n}\n\ninterface PanelState {\n irisGridState?: IrisGridState;\n gridState?: Partial<GridState>;\n selectedId?: string | string[];\n isValueShown?: boolean;\n name?: string;\n type?: string;\n value?: string;\n}\n\ninterface FilterSetManagerPanelProps {\n glContainer: Container;\n glEventHub: EventEmitter;\n panelState: PanelState;\n filterSets: FilterSet[];\n localDashboardId: string;\n dashboardOpenedPanelMap: Map<string | string[], PanelComponent>;\n setDashboardFilterSets: (\n dashboardId: string,\n filterSets: FilterSet[]\n ) => void;\n panelTableMap: Map<string | string[], TableTemplate>;\n}\n\ninterface FilterSetManagerPanelState {\n selectedId?: string | string[];\n isValueShown: boolean;\n // eslint-disable-next-line react/no-unused-state\n panelState: PanelState; // Dehydrated panel state that can load this panel\n}\n\nfunction hasSetPanelState(\n panel: PanelComponent\n): panel is PanelComponent & {\n setPanelState: (state: InputFilterPanelState) => void;\n} {\n return (\n (panel as PanelComponent & {\n setPanelState: (state: InputFilterPanelState) => void;\n }).setPanelState != null\n );\n}\nexport class FilterSetManagerPanel extends Component<\n FilterSetManagerPanelProps,\n FilterSetManagerPanelState\n> {\n static defaultProps = {\n panelState: null,\n };\n\n static COMPONENT = 'FilterSetManagerPanel';\n\n static changeFilterIndexesToColumnNames<T>(\n table: TableTemplate,\n configs: [number, T][]\n ): { name: string; filter: T }[] {\n return configs\n .map(([index, filter]) => {\n if (index >= table.columns.length) {\n return null;\n }\n const { name } = table.columns[index];\n return { name, filter };\n })\n .filter(config => config != null) as { name: string; filter: T }[];\n }\n\n constructor(props: FilterSetManagerPanelProps) {\n super(props);\n\n this.handleChange = this.handleChange.bind(this);\n this.handleFilterApply = this.handleFilterApply.bind(this);\n this.handleSetsUpdate = this.handleSetsUpdate.bind(this);\n this.handleGetFilterState = this.handleGetFilterState.bind(this);\n\n const { panelState, filterSets } = props;\n const {\n selectedId = filterSets.length > 0 ? filterSets[0].id : undefined,\n isValueShown = false,\n } = panelState ?? {};\n\n this.state = {\n selectedId,\n isValueShown,\n // eslint-disable-next-line react/no-unused-state\n panelState, // Dehydrated panel state that can load this panel\n };\n }\n\n // Collect all filter values for each dashboard panel\n getFilterState(): FilterSetPanel[] {\n const { dashboardOpenedPanelMap } = this.props;\n const panels: FilterSetPanel[] = [];\n [...dashboardOpenedPanelMap.keys()].forEach(key => {\n const panel = dashboardOpenedPanelMap.get(key);\n\n if (panel === undefined) {\n log.error('Could not get panel', panel);\n return;\n }\n\n const componentName = LayoutUtils.getComponentNameFromPanel(panel);\n const panelId = LayoutUtils.getIdFromPanel(panel);\n log.debug('Panel:', panel, componentName);\n\n const { glContainer = null } = panel.props;\n if (glContainer == null) {\n log.error('Could not get panel container', panel);\n return;\n }\n const config = LayoutUtils.getComponentConfigFromContainer(glContainer);\n if (config == null) {\n log.error('Could not get component config from container', glContainer);\n return;\n }\n const panelState = LayoutUtils.getPanelComponentState(\n config\n ) as PanelState;\n if (panelState == null) {\n log.debug(`Panel state is null ${panelId}`);\n return;\n }\n switch (componentName) {\n case LayoutUtils.getComponentName(IrisGridPanel): {\n let state;\n if (panelId != null) {\n state = this.getIrisGridPanelFilters(panelId, panelState);\n }\n if (state != null) {\n panels.push({\n panelId,\n type: componentName,\n state,\n });\n }\n break;\n }\n case LayoutUtils.getComponentName(InputFilterPanel):\n case LayoutUtils.getComponentName(DropdownFilterPanel): {\n const { isValueShown, name, type, value } = panelState;\n panels.push({\n panelId,\n type: componentName,\n state: { isValueShown, name, type, value },\n });\n break;\n }\n default:\n }\n });\n return panels;\n }\n\n getIrisGridPanelFilters(\n panelId: string | string[],\n panelState: PanelState\n ): {\n irisGridState: Omit<IrisGridState, 'advancedFilters' | 'quickFilters'> & {\n advancedFilters?: {\n name: string;\n filter: AdvancedFilter;\n }[];\n quickFilters?: {\n name: string;\n filter: QuickFilter;\n }[];\n };\n gridState: Partial<GridState>;\n } | null {\n const { panelTableMap } = this.props;\n const table = panelTableMap.get(panelId);\n if (table == null) {\n log.error(`Unable to get table for panel ${panelId}.`);\n return null;\n }\n // IrisGridUtils.hydrate uses numeric indexes for columns\n // Change indexes to column names to make it work for proxy models\n const {\n irisGridState = { advancedFilters: undefined, quickFilters: undefined },\n gridState = {},\n } = panelState;\n const {\n advancedFilters: indexedAdvancedFilters,\n quickFilters: indexedQuickFilters,\n } = irisGridState;\n let advancedFilters;\n if (indexedAdvancedFilters) {\n advancedFilters = FilterSetManagerPanel.changeFilterIndexesToColumnNames(\n table,\n indexedAdvancedFilters\n );\n }\n\n let quickFilters;\n if (indexedQuickFilters) {\n quickFilters = FilterSetManagerPanel.changeFilterIndexesToColumnNames(\n table,\n indexedQuickFilters\n );\n }\n return {\n irisGridState: {\n ...irisGridState,\n advancedFilters,\n quickFilters,\n },\n gridState: { ...gridState },\n };\n }\n\n handleGetFilterState(): FilterSetPanel[] {\n return this.getFilterState();\n }\n\n handleChange({ isValueShown, selectedId }: ChangeHandlerArgs): void {\n log.debug('handleChange', isValueShown, selectedId);\n this.setState({ isValueShown, selectedId });\n this.updatePanelState();\n }\n\n handleFilterApply(filterSet: FilterSet): void {\n const { dashboardOpenedPanelMap } = this.props;\n const { panels, restoreFullState = false } = filterSet;\n log.debug(`Apply filters from filter set`, filterSet);\n panels.forEach(({ panelId, type, state }) => {\n if (panelId == null) {\n log.debug('panel is null', panelId);\n return;\n }\n if (!dashboardOpenedPanelMap.has(panelId)) {\n log.debug('Ignore closed panel', panelId);\n return;\n }\n log.debug('Apply panel filters', panelId, type, state);\n const panel = dashboardOpenedPanelMap.get(panelId);\n switch (type) {\n case LayoutUtils.getComponentName(IrisGridPanel):\n this.restoreIrisGridFilters(\n panel as IrisGridPanel,\n state as {\n irisGridState: Partial<DehydratedIrisGridState>;\n gridState: Partial<GridState>;\n advancedFilters: { name: string; filter: AdvancedFilter }[];\n quickFilters: { name: string; filter: QuickFilter }[];\n },\n restoreFullState\n );\n break;\n case LayoutUtils.getComponentName(InputFilterPanel):\n case LayoutUtils.getComponentName(DropdownFilterPanel):\n this.restoreInputFilterState(panel, state as InputFilterPanelState);\n break;\n default:\n }\n });\n }\n\n handleSetsUpdate(modifiedFilterSets: FilterSet[]): void {\n const { setDashboardFilterSets, localDashboardId } = this.props;\n log.debug('Saving updated sets', modifiedFilterSets);\n // Filter sets are stored in dashboard data instead of the panelState\n // because they need to be shared between the filter view manager panels\n setDashboardFilterSets(localDashboardId, [...modifiedFilterSets]);\n }\n\n updatePanelState(): void {\n this.setState(({ selectedId, isValueShown }) => ({\n // eslint-disable-next-line react/no-unused-state\n panelState: {\n selectedId,\n isValueShown,\n },\n }));\n }\n\n restoreIrisGridFilters(\n panel: IrisGridPanel,\n state: {\n irisGridState: Partial<DehydratedIrisGridState>;\n gridState: Partial<GridState>;\n advancedFilters: { name: ColumnName; filter: AdvancedFilter }[];\n quickFilters: { name: ColumnName; filter: QuickFilter }[];\n },\n restoreFullState: boolean\n ): void {\n // Fall back to state.advancedFilters and state.quickFilters\n // for backward compatibility with filter sets that only contain filters\n const {\n irisGridState = {},\n advancedFilters: prevAdvancedFilters = [],\n quickFilters: prevQuickFilters = [],\n } = state;\n const {\n advancedFilters = prevAdvancedFilters,\n quickFilters = prevQuickFilters,\n } = irisGridState;\n const { panelTableMap } = this.props;\n const panelId = LayoutUtils.getIdFromPanel(panel);\n if (panelId == null) {\n log.error(`Panel Id is null.`);\n return;\n }\n const table = panelTableMap.get(panelId);\n if (table == null) {\n log.error(`Unable to get table for panel ${panelId}.`);\n return;\n }\n log.debug('restoreIrisGridFilters', panelId, state, restoreFullState);\n if (restoreFullState) {\n panel.setStateOverrides(state);\n } else {\n panel.setFilters({\n quickFilters: quickFilters as {\n name: string;\n filter: QuickFilter;\n }[],\n advancedFilters: advancedFilters as {\n name: string;\n filter: AdvancedFilter;\n }[],\n });\n }\n }\n\n // eslint-disable-next-line class-methods-use-this\n restoreInputFilterState(\n panel: PanelComponent | undefined,\n state: InputFilterPanelState\n ): void {\n const inputFilterState = { ...state };\n // Restore state but don't flip the card\n delete inputFilterState.isValueShown;\n log.debug('restoreInputFilterState', panel, inputFilterState);\n if (panel && hasSetPanelState(panel)) {\n panel.setPanelState(inputFilterState);\n }\n }\n\n render(): ReactElement {\n const { glContainer, glEventHub, filterSets } = this.props;\n const { isValueShown, selectedId } = this.state;\n return (\n <Panel\n className=\"filter-set-manager-panel\"\n componentPanel={this}\n glContainer={glContainer}\n glEventHub={glEventHub}\n isClonable\n isRenamable\n >\n <div className=\"input-filter-container h-100 w-100 container\">\n <FilterSetManager\n onChange={this.handleChange}\n onApply={this.handleFilterApply}\n onUpdateSets={this.handleSetsUpdate}\n isValueShown={isValueShown}\n filterSets={filterSets}\n selectedId={selectedId as string}\n getFilterState={this.handleGetFilterState}\n />\n </div>\n </Panel>\n );\n }\n}\n\nconst mapStateToProps = (\n state: RootState,\n ownProps: { localDashboardId: string }\n) => {\n const { localDashboardId } = ownProps;\n return {\n filterSets: getFilterSetsForDashboard(state, localDashboardId),\n dashboardOpenedPanelMap: getOpenedPanelMapForDashboard(\n state,\n localDashboardId\n ),\n dashboardInputFilters: getInputFiltersForDashboard(state, localDashboardId),\n panelTableMap: getTableMapForDashboard(state, localDashboardId),\n };\n};\n\nconst ConnectedFilterSetManagerPanel = connect(\n mapStateToProps,\n {\n setDashboardFilterSets: setDashboardFilterSetsAction,\n },\n null,\n { forwardRef: true }\n)(FilterSetManagerPanel);\n\nexport default ConnectedFilterSetManagerPanel;\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAsB,OAAO;AACtD,SAASC,OAAO,QAAQ,aAAa;AACrC,SACEC,6BAA6B,EAC7BC,WAAW,QAEN,sBAAsB;AAC7B,OAAOC,GAAG,MAAM,gBAAgB;AAAC,SAY/BC,yBAAyB,EACzBC,2BAA2B,EAC3BC,uBAAuB,EACvBC,sBAAsB,IAAIC,4BAA4B;AAAA,OAEjDC,KAAK;AAAA,OACLC,gBAAgB;AAAA,SAKdC,aAAa;AAAA,OACfC,mBAAmB;AAAA,OACnBC,gBAAgB;AAAA;AAKvB,IAAMC,GAAG,GAAGX,GAAG,CAACY,MAAM,CAAC,uBAAuB,CAAC;AAqC/C,SAASC,gBAAgB,CACvBC,KAAqB,EAGrB;EACA,OACGA,KAAK,CAEHC,aAAa,IAAI,IAAI;AAE5B;AACA,OAAO,MAAMC,qBAAqB,SAASpB,SAAS,CAGlD;EAOA,OAAOqB,gCAAgC,CACrCC,KAAoB,EACpBC,OAAsB,EACS;IAC/B,OAAOA,OAAO,CACXC,GAAG,CAAC,QAAqB;MAAA,IAApB,CAACC,KAAK,EAAEC,MAAM,CAAC;MACnB,IAAID,KAAK,IAAIH,KAAK,CAACK,OAAO,CAACC,MAAM,EAAE;QACjC,OAAO,IAAI;MACb;MACA,IAAM;QAAEC;MAAK,CAAC,GAAGP,KAAK,CAACK,OAAO,CAACF,KAAK,CAAC;MACrC,OAAO;QAAEI,IAAI;QAAEH;MAAO,CAAC;IACzB,CAAC,CAAC,CACDA,MAAM,CAACI,MAAM,IAAIA,MAAM,IAAI,IAAI,CAAC;EACrC;EAEAC,WAAW,CAACC,KAAiC,EAAE;IAC7C,KAAK,CAACA,KAAK,CAAC;IAEZ,IAAI,CAACC,YAAY,GAAG,IAAI,CAACA,YAAY,CAACC,IAAI,CAAC,IAAI,CAAC;IAChD,IAAI,CAACC,iBAAiB,GAAG,IAAI,CAACA,iBAAiB,CAACD,IAAI,CAAC,IAAI,CAAC;IAC1D,IAAI,CAACE,gBAAgB,GAAG,IAAI,CAACA,gBAAgB,CAACF,IAAI,CAAC,IAAI,CAAC;IACxD,IAAI,CAACG,oBAAoB,GAAG,IAAI,CAACA,oBAAoB,CAACH,IAAI,CAAC,IAAI,CAAC;IAEhE,IAAM;MAAEI,UAAU;MAAEC;IAAW,CAAC,GAAGP,KAAK;IACxC,IAAM;MACJQ,UAAU,GAAGD,UAAU,CAACX,MAAM,GAAG,CAAC,GAAGW,UAAU,CAAC,CAAC,CAAC,CAACE,EAAE,GAAGC,SAAS;MACjEC,YAAY,GAAG;IACjB,CAAC,GAAGL,UAAU,aAAVA,UAAU,cAAVA,UAAU,GAAI,CAAC,CAAC;IAEpB,IAAI,CAACM,KAAK,GAAG;MACXJ,UAAU;MACVG,YAAY;MACZ;MACAL,UAAU,CAAE;IACd,CAAC;EACH;;EAEA;EACAO,cAAc,GAAqB;IACjC,IAAM;MAAEC;IAAwB,CAAC,GAAG,IAAI,CAACd,KAAK;IAC9C,IAAMe,MAAwB,GAAG,EAAE;IACnC,CAAC,GAAGD,uBAAuB,CAACE,IAAI,EAAE,CAAC,CAACC,OAAO,CAACC,GAAG,IAAI;MACjD,IAAMhC,KAAK,GAAG4B,uBAAuB,CAACK,GAAG,CAACD,GAAG,CAAC;MAE9C,IAAIhC,KAAK,KAAKwB,SAAS,EAAE;QACvB3B,GAAG,CAACqC,KAAK,CAAC,qBAAqB,EAAElC,KAAK,CAAC;QACvC;MACF;MAEA,IAAMmC,aAAa,GAAGlD,WAAW,CAACmD,yBAAyB,CAACpC,KAAK,CAAC;MAClE,IAAMqC,OAAO,GAAGpD,WAAW,CAACqD,cAAc,CAACtC,KAAK,CAAC;MACjDH,GAAG,CAAC0C,KAAK,CAAC,QAAQ,EAAEvC,KAAK,EAAEmC,aAAa,CAAC;MAEzC,IAAM;QAAEK,WAAW,GAAG;MAAK,CAAC,GAAGxC,KAAK,CAACc,KAAK;MAC1C,IAAI0B,WAAW,IAAI,IAAI,EAAE;QACvB3C,GAAG,CAACqC,KAAK,CAAC,+BAA+B,EAAElC,KAAK,CAAC;QACjD;MACF;MACA,IAAMY,MAAM,GAAG3B,WAAW,CAACwD,+BAA+B,CAACD,WAAW,CAAC;MACvE,IAAI5B,MAAM,IAAI,IAAI,EAAE;QAClBf,GAAG,CAACqC,KAAK,CAAC,+CAA+C,EAAEM,WAAW,CAAC;QACvE;MACF;MACA,IAAMpB,UAAU,GAAGnC,WAAW,CAACyD,sBAAsB,CACnD9B,MAAM,CACO;MACf,IAAIQ,UAAU,IAAI,IAAI,EAAE;QACtBvB,GAAG,CAAC0C,KAAK,+BAAwBF,OAAO,EAAG;QAC3C;MACF;MACA,QAAQF,aAAa;QACnB,KAAKlD,WAAW,CAAC0D,gBAAgB,CAACjD,aAAa,CAAC;UAAE;YAChD,IAAIgC,MAAK;YACT,IAAIW,OAAO,IAAI,IAAI,EAAE;cACnBX,MAAK,GAAG,IAAI,CAACkB,uBAAuB,CAACP,OAAO,EAAEjB,UAAU,CAAC;YAC3D;YACA,IAAIM,MAAK,IAAI,IAAI,EAAE;cACjBG,MAAM,CAACgB,IAAI,CAAC;gBACVR,OAAO;gBACPS,IAAI,EAAEX,aAAa;gBACnBT,KAAK,EAALA;cACF,CAAC,CAAC;YACJ;YACA;UACF;QACA,KAAKzC,WAAW,CAAC0D,gBAAgB,CAAC/C,gBAAgB,CAAC;QACnD,KAAKX,WAAW,CAAC0D,gBAAgB,CAAChD,mBAAmB,CAAC;UAAE;YACtD,IAAM;cAAE8B,YAAY;cAAEd,IAAI;cAAEmC,IAAI;cAAEC;YAAM,CAAC,GAAG3B,UAAU;YACtDS,MAAM,CAACgB,IAAI,CAAC;cACVR,OAAO;cACPS,IAAI,EAAEX,aAAa;cACnBT,KAAK,EAAE;gBAAED,YAAY;gBAAEd,IAAI;gBAAEmC,IAAI;gBAAEC;cAAM;YAC3C,CAAC,CAAC;YACF;UACF;QACA;MAAQ;IAEZ,CAAC,CAAC;IACF,OAAOlB,MAAM;EACf;EAEAe,uBAAuB,CACrBP,OAA0B,EAC1BjB,UAAsB,EAaf;IACP,IAAM;MAAE4B;IAAc,CAAC,GAAG,IAAI,CAAClC,KAAK;IACpC,IAAMV,KAAK,GAAG4C,aAAa,CAACf,GAAG,CAACI,OAAO,CAAC;IACxC,IAAIjC,KAAK,IAAI,IAAI,EAAE;MACjBP,GAAG,CAACqC,KAAK,yCAAkCG,OAAO,OAAI;MACtD,OAAO,IAAI;IACb;IACA;IACA;IACA,IAAM;MACJY,aAAa,GAAG;QAAEC,eAAe,EAAE1B,SAAS;QAAE2B,YAAY,EAAE3B;MAAU,CAAC;MACvE4B,SAAS,GAAG,CAAC;IACf,CAAC,GAAGhC,UAAU;IACd,IAAM;MACJ8B,eAAe,EAAEG,sBAAsB;MACvCF,YAAY,EAAEG;IAChB,CAAC,GAAGL,aAAa;IACjB,IAAIC,eAAe;IACnB,IAAIG,sBAAsB,EAAE;MAC1BH,eAAe,GAAGhD,qBAAqB,CAACC,gCAAgC,CACtEC,KAAK,EACLiD,sBAAsB,CACvB;IACH;IAEA,IAAIF,YAAY;IAChB,IAAIG,mBAAmB,EAAE;MACvBH,YAAY,GAAGjD,qBAAqB,CAACC,gCAAgC,CACnEC,KAAK,EACLkD,mBAAmB,CACpB;IACH;IACA,OAAO;MACLL,aAAa,kCACRA,aAAa;QAChBC,eAAe;QACfC;MAAY,EACb;MACDC,SAAS,oBAAOA,SAAS;IAC3B,CAAC;EACH;EAEAjC,oBAAoB,GAAqB;IACvC,OAAO,IAAI,CAACQ,cAAc,EAAE;EAC9B;EAEAZ,YAAY,QAAwD;IAAA,IAAvD;MAAEU,YAAY;MAAEH;IAA8B,CAAC;IAC1DzB,GAAG,CAAC0C,KAAK,CAAC,cAAc,EAAEd,YAAY,EAAEH,UAAU,CAAC;IACnD,IAAI,CAACiC,QAAQ,CAAC;MAAE9B,YAAY;MAAEH;IAAW,CAAC,CAAC;IAC3C,IAAI,CAACkC,gBAAgB,EAAE;EACzB;EAEAvC,iBAAiB,CAACwC,SAAoB,EAAQ;IAC5C,IAAM;MAAE7B;IAAwB,CAAC,GAAG,IAAI,CAACd,KAAK;IAC9C,IAAM;MAAEe,MAAM;MAAE6B,gBAAgB,GAAG;IAAM,CAAC,GAAGD,SAAS;IACtD5D,GAAG,CAAC0C,KAAK,kCAAkCkB,SAAS,CAAC;IACrD5B,MAAM,CAACE,OAAO,CAAC,SAA8B;MAAA,IAA7B;QAAEM,OAAO;QAAES,IAAI;QAAEpB;MAAM,CAAC;MACtC,IAAIW,OAAO,IAAI,IAAI,EAAE;QACnBxC,GAAG,CAAC0C,KAAK,CAAC,eAAe,EAAEF,OAAO,CAAC;QACnC;MACF;MACA,IAAI,CAACT,uBAAuB,CAAC+B,GAAG,CAACtB,OAAO,CAAC,EAAE;QACzCxC,GAAG,CAAC0C,KAAK,CAAC,qBAAqB,EAAEF,OAAO,CAAC;QACzC;MACF;MACAxC,GAAG,CAAC0C,KAAK,CAAC,qBAAqB,EAAEF,OAAO,EAAES,IAAI,EAAEpB,KAAK,CAAC;MACtD,IAAM1B,KAAK,GAAG4B,uBAAuB,CAACK,GAAG,CAACI,OAAO,CAAC;MAClD,QAAQS,IAAI;QACV,KAAK7D,WAAW,CAAC0D,gBAAgB,CAACjD,aAAa,CAAC;UAC9C,IAAI,CAACkE,sBAAsB,CACzB5D,KAAK,EACL0B,KAAK,EAMLgC,gBAAgB,CACjB;UACD;QACF,KAAKzE,WAAW,CAAC0D,gBAAgB,CAAC/C,gBAAgB,CAAC;QACnD,KAAKX,WAAW,CAAC0D,gBAAgB,CAAChD,mBAAmB,CAAC;UACpD,IAAI,CAACkE,uBAAuB,CAAC7D,KAAK,EAAE0B,KAAK,CAA0B;UACnE;QACF;MAAQ;IAEZ,CAAC,CAAC;EACJ;EAEAR,gBAAgB,CAAC4C,kBAA+B,EAAQ;IACtD,IAAM;MAAExE,sBAAsB;MAAEyE;IAAiB,CAAC,GAAG,IAAI,CAACjD,KAAK;IAC/DjB,GAAG,CAAC0C,KAAK,CAAC,qBAAqB,EAAEuB,kBAAkB,CAAC;IACpD;IACA;IACAxE,sBAAsB,CAACyE,gBAAgB,EAAE,CAAC,GAAGD,kBAAkB,CAAC,CAAC;EACnE;EAEAN,gBAAgB,GAAS;IACvB,IAAI,CAACD,QAAQ,CAAC;MAAA,IAAC;QAAEjC,UAAU;QAAEG;MAAa,CAAC;MAAA,OAAM;QAC/C;QACAL,UAAU,EAAE;UACVE,UAAU;UACVG;QACF;MACF,CAAC;IAAA,CAAC,CAAC;EACL;EAEAmC,sBAAsB,CACpB5D,KAAoB,EACpB0B,KAKC,EACDgC,gBAAyB,EACnB;IACN;IACA;IACA,IAAM;MACJT,aAAa,GAAG,CAAC,CAAC;MAClBC,eAAe,EAAEc,mBAAmB,GAAG,EAAE;MACzCb,YAAY,EAAEc,gBAAgB,GAAG;IACnC,CAAC,GAAGvC,KAAK;IACT,IAAM;MACJwB,eAAe,GAAGc,mBAAmB;MACrCb,YAAY,GAAGc;IACjB,CAAC,GAAGhB,aAAa;IACjB,IAAM;MAAED;IAAc,CAAC,GAAG,IAAI,CAAClC,KAAK;IACpC,IAAMuB,OAAO,GAAGpD,WAAW,CAACqD,cAAc,CAACtC,KAAK,CAAC;IACjD,IAAIqC,OAAO,IAAI,IAAI,EAAE;MACnBxC,GAAG,CAACqC,KAAK,qBAAqB;MAC9B;IACF;IACA,IAAM9B,KAAK,GAAG4C,aAAa,CAACf,GAAG,CAACI,OAAO,CAAC;IACxC,IAAIjC,KAAK,IAAI,IAAI,EAAE;MACjBP,GAAG,CAACqC,KAAK,yCAAkCG,OAAO,OAAI;MACtD;IACF;IACAxC,GAAG,CAAC0C,KAAK,CAAC,wBAAwB,EAAEF,OAAO,EAAEX,KAAK,EAAEgC,gBAAgB,CAAC;IACrE,IAAIA,gBAAgB,EAAE;MACpB1D,KAAK,CAACkE,iBAAiB,CAACxC,KAAK,CAAC;IAChC,CAAC,MAAM;MACL1B,KAAK,CAACmE,UAAU,CAAC;QACfhB,YAAY,EAAEA,YAGX;QACHD,eAAe,EAAEA;MAInB,CAAC,CAAC;IACJ;EACF;;EAEA;EACAW,uBAAuB,CACrB7D,KAAiC,EACjC0B,KAA4B,EACtB;IACN,IAAM0C,gBAAgB,qBAAQ1C,KAAK,CAAE;IACrC;IACA,OAAO0C,gBAAgB,CAAC3C,YAAY;IACpC5B,GAAG,CAAC0C,KAAK,CAAC,yBAAyB,EAAEvC,KAAK,EAAEoE,gBAAgB,CAAC;IAC7D,IAAIpE,KAAK,IAAID,gBAAgB,CAACC,KAAK,CAAC,EAAE;MACpCA,KAAK,CAACC,aAAa,CAACmE,gBAAgB,CAAC;IACvC;EACF;EAEAC,MAAM,GAAiB;IACrB,IAAM;MAAE7B,WAAW;MAAE8B,UAAU;MAAEjD;IAAW,CAAC,GAAG,IAAI,CAACP,KAAK;IAC1D,IAAM;MAAEW,YAAY;MAAEH;IAAW,CAAC,GAAG,IAAI,CAACI,KAAK;IAC/C,oBACE,oBAAC,KAAK;MACJ,SAAS,EAAC,0BAA0B;MACpC,cAAc,EAAE,IAAK;MACrB,WAAW,EAAEc,WAAY;MACzB,UAAU,EAAE8B,UAAW;MACvB,UAAU;MACV,WAAW;IAAA,gBAEX;MAAK,SAAS,EAAC;IAA8C,gBAC3D,oBAAC,gBAAgB;MACf,QAAQ,EAAE,IAAI,CAACvD,YAAa;MAC5B,OAAO,EAAE,IAAI,CAACE,iBAAkB;MAChC,YAAY,EAAE,IAAI,CAACC,gBAAiB;MACpC,YAAY,EAAEO,YAAa;MAC3B,UAAU,EAAEJ,UAAW;MACvB,UAAU,EAAEC,UAAqB;MACjC,cAAc,EAAE,IAAI,CAACH;IAAqB,EAC1C,CACE,CACA;EAEZ;AACF;AAAC,gBAlUYjB,qBAAqB,kBAIV;EACpBkB,UAAU,EAAE;AACd,CAAC;AAAA,gBANUlB,qBAAqB,eAQb,uBAAuB;AA4T5C,IAAMqE,eAAe,GAAG,CACtB7C,KAAgB,EAChB8C,QAAsC,KACnC;EACH,IAAM;IAAET;EAAiB,CAAC,GAAGS,QAAQ;EACrC,OAAO;IACLnD,UAAU,EAAElC,yBAAyB,CAACuC,KAAK,EAAEqC,gBAAgB,CAAC;IAC9DnC,uBAAuB,EAAE5C,6BAA6B,CACpD0C,KAAK,EACLqC,gBAAgB,CACjB;IACDU,qBAAqB,EAAErF,2BAA2B,CAACsC,KAAK,EAAEqC,gBAAgB,CAAC;IAC3Ef,aAAa,EAAE3D,uBAAuB,CAACqC,KAAK,EAAEqC,gBAAgB;EAChE,CAAC;AACH,CAAC;AAED,IAAMW,8BAA8B,GAAG3F,OAAO,CAC5CwF,eAAe,EACf;EACEjF,sBAAsB,EAAEC;AAC1B,CAAC,EACD,IAAI,EACJ;EAAEoF,UAAU,EAAE;AAAK,CAAC,CACrB,CAACzE,qBAAqB,CAAC;AAExB,eAAewE,8BAA8B"}
@@ -5,7 +5,7 @@ import { FormattingRule, ReverseType } from '@deephaven/jsapi-utils';
5
5
  import { User, Workspace } from '@deephaven/redux';
6
6
  import { CancelablePromise } from '@deephaven/utils';
7
7
  import { ContextAction } from '@deephaven/components';
8
- import { Column, FilterCondition, Sort, VariableTypeUnion } from '@deephaven/jsapi-shim';
8
+ import type { Column, FilterCondition, Sort, VariableTypeUnion } from '@deephaven/jsapi-types';
9
9
  import { GridRangeIndex, GridState, ModelIndex, ModelSizeMap, MoveOperation } from '@deephaven/grid';
10
10
  import type { Container, EventEmitter } from '@deephaven/golden-layout';
11
11
  import './IrisGridPanel.scss';
@@ -118,6 +118,7 @@ export declare class IrisGridPanel extends PureComponent<IrisGridPanelProps, Iri
118
118
  irisGridState?: IrisGridState;
119
119
  gridState?: GridState;
120
120
  pluginState: unknown;
121
+ private irisGridUtils;
121
122
  getTableName(): string;
122
123
  getGridInputFilters: (columns: readonly Column[], inputFilters: readonly InputFilter[]) => InputFilter[];
123
124
  getAlwaysFetchColumns: (dashboardLinks: readonly Link[], pluginFetchColumns: readonly string[]) => string[];
@@ -1 +1 @@
1
- {"version":3,"file":"IrisGridPanel.d.ts","sourceRoot":"","sources":["../../src/panels/IrisGridPanel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IrisGridPanel.d.ts","sourceRoot":"","sources":["../../src/panels/IrisGridPanel.tsx"],"names":[],"mappings":"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"}
@@ -37,6 +37,7 @@ export class IrisGridPanel extends PureComponent {
37
37
  _defineProperty(this, "irisGridState", void 0);
38
38
  _defineProperty(this, "gridState", void 0);
39
39
  _defineProperty(this, "pluginState", void 0);
40
+ _defineProperty(this, "irisGridUtils", void 0);
40
41
  _defineProperty(this, "getGridInputFilters", memoize((columns, inputFilters) => IrisGridUtils.getInputFiltersForColumns(columns,
41
42
  // They may have picked a column, but not actually entered a value yet. In that case, don't need to update.
42
43
  inputFilters.filter(_ref => {
@@ -92,30 +93,33 @@ export class IrisGridPanel extends PureComponent {
92
93
  partitionColumn,
93
94
  advancedSettings
94
95
  })));
95
- _defineProperty(this, "getDehydratedIrisGridState", memoize((model, sorts, advancedFilters, customColumnFormatMap, isFilterBarShown, quickFilters, customColumns, reverseType, rollupConfig, showSearchBar, searchValue, selectDistinctColumns, selectedSearchColumns, invertSearchColumns, userColumnWidths, userRowHeights, aggregationSettings, pendingDataMap, frozenColumns, conditionalFormats, columnHeaderGroups) => IrisGridUtils.dehydrateIrisGridState(model, {
96
- advancedFilters,
97
- aggregationSettings,
98
- customColumnFormatMap,
99
- isFilterBarShown,
100
- metrics: {
101
- userColumnWidths,
102
- userRowHeights
103
- },
104
- quickFilters,
105
- customColumns,
106
- reverseType,
107
- rollupConfig,
108
- showSearchBar,
109
- searchValue,
110
- selectDistinctColumns,
111
- selectedSearchColumns,
112
- sorts,
113
- invertSearchColumns,
114
- pendingDataMap,
115
- frozenColumns,
116
- conditionalFormats,
117
- columnHeaderGroups
118
- })));
96
+ _defineProperty(this, "getDehydratedIrisGridState", memoize((model, sorts, advancedFilters, customColumnFormatMap, isFilterBarShown, quickFilters, customColumns, reverseType, rollupConfig, showSearchBar, searchValue, selectDistinctColumns, selectedSearchColumns, invertSearchColumns, userColumnWidths, userRowHeights, aggregationSettings, pendingDataMap, frozenColumns, conditionalFormats, columnHeaderGroups) => {
97
+ assertNotNull(this.irisGridUtils);
98
+ return this.irisGridUtils.dehydrateIrisGridState(model, {
99
+ advancedFilters,
100
+ aggregationSettings,
101
+ customColumnFormatMap,
102
+ isFilterBarShown,
103
+ metrics: {
104
+ userColumnWidths,
105
+ userRowHeights
106
+ },
107
+ quickFilters,
108
+ customColumns,
109
+ reverseType,
110
+ rollupConfig,
111
+ showSearchBar,
112
+ searchValue,
113
+ selectDistinctColumns,
114
+ selectedSearchColumns,
115
+ sorts,
116
+ invertSearchColumns,
117
+ pendingDataMap,
118
+ frozenColumns,
119
+ conditionalFormats,
120
+ columnHeaderGroups
121
+ });
122
+ }));
119
123
  _defineProperty(this, "getDehydratedGridState", memoize((model, movedColumns, movedRows, isStuckToBottom, isStuckToRight) => IrisGridUtils.dehydrateGridState(model, {
120
124
  isStuckToBottom,
121
125
  isStuckToRight,
@@ -217,6 +221,7 @@ export class IrisGridPanel extends PureComponent {
217
221
  panelState: _panelState
218
222
  } = props;
219
223
  this.pluginState = null;
224
+ this.irisGridUtils = null;
220
225
  this.state = {
221
226
  error: null,
222
227
  isDisconnected: false,
@@ -325,6 +330,7 @@ export class IrisGridPanel extends PureComponent {
325
330
  irisGridStateOverrides
326
331
  } = this.state;
327
332
  var modelQueue = [];
333
+ this.irisGridUtils = new IrisGridUtils(model.dh);
328
334
  if (panelState != null) {
329
335
  var {
330
336
  irisGridState: _irisGridState
@@ -391,6 +397,7 @@ export class IrisGridPanel extends PureComponent {
391
397
  });
392
398
  }
393
399
  handlePluginFilter(filters) {
400
+ var _this$irisGridUtils$g, _this$irisGridUtils;
394
401
  var {
395
402
  model
396
403
  } = this.state;
@@ -399,7 +406,7 @@ export class IrisGridPanel extends PureComponent {
399
406
  columns,
400
407
  formatter
401
408
  } = model;
402
- var pluginFilters = IrisGridUtils.getFiltersFromInputFilters(columns, filters, formatter.timeZone);
409
+ var pluginFilters = (_this$irisGridUtils$g = (_this$irisGridUtils = this.irisGridUtils) === null || _this$irisGridUtils === void 0 ? void 0 : _this$irisGridUtils.getFiltersFromInputFilters(columns, filters, formatter.timeZone)) !== null && _this$irisGridUtils$g !== void 0 ? _this$irisGridUtils$g : [];
403
410
  this.setState({
404
411
  pluginFilters
405
412
  });
@@ -709,10 +716,11 @@ export class IrisGridPanel extends PureComponent {
709
716
  var [columnIndex] = _ref5;
710
717
  return model.isFilterable(columnIndex);
711
718
  });
719
+ assertNotNull(this.irisGridUtils);
712
720
  irisGrid.clearAllFilters();
713
721
  irisGrid.setFilters({
714
- quickFilters: IrisGridUtils.hydrateQuickFilters(columns, indexedQuickFilters, formatter.timeZone),
715
- advancedFilters: IrisGridUtils.hydrateAdvancedFilters(columns, indexedAdvancedFilters, formatter.timeZone)
722
+ quickFilters: this.irisGridUtils.hydrateQuickFilters(columns, indexedQuickFilters, formatter.timeZone),
723
+ advancedFilters: this.irisGridUtils.hydrateAdvancedFilters(columns, indexedAdvancedFilters, formatter.timeZone)
716
724
  });
717
725
  }
718
726
  setStateOverrides(overrides) {
@@ -765,6 +773,7 @@ export class IrisGridPanel extends PureComponent {
765
773
  partitionColumn,
766
774
  advancedSettings
767
775
  } = IrisGridUtils.hydrateIrisGridPanelState(model, irisGridPanelState);
776
+ assertNotNull(this.irisGridUtils);
768
777
  var {
769
778
  advancedFilters,
770
779
  customColumns,
@@ -786,7 +795,7 @@ export class IrisGridPanel extends PureComponent {
786
795
  frozenColumns,
787
796
  conditionalFormats,
788
797
  columnHeaderGroups
789
- } = IrisGridUtils.hydrateIrisGridState(model, _objectSpread(_objectSpread({}, _irisGridState2), irisGridStateOverrides));
798
+ } = this.irisGridUtils.hydrateIrisGridState(model, _objectSpread(_objectSpread({}, _irisGridState2), irisGridStateOverrides));
790
799
  var {
791
800
  isStuckToBottom,
792
801
  isStuckToRight,