@deephaven/iris-grid 0.67.0 → 0.67.1-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.
Files changed (139) hide show
  1. package/dist/AdvancedFilterCreator.d.ts +6 -6
  2. package/dist/AdvancedFilterCreator.d.ts.map +1 -1
  3. package/dist/AdvancedFilterCreator.js.map +1 -1
  4. package/dist/AdvancedFilterCreatorFilterItem.d.ts +3 -3
  5. package/dist/AdvancedFilterCreatorFilterItem.d.ts.map +1 -1
  6. package/dist/AdvancedFilterCreatorFilterItem.js.map +1 -1
  7. package/dist/AdvancedFilterCreatorSelectValue.d.ts +6 -6
  8. package/dist/AdvancedFilterCreatorSelectValue.d.ts.map +1 -1
  9. package/dist/AdvancedFilterCreatorSelectValue.js.map +1 -1
  10. package/dist/AdvancedFilterCreatorSelectValueList.d.ts +7 -7
  11. package/dist/AdvancedFilterCreatorSelectValueList.d.ts.map +1 -1
  12. package/dist/AdvancedFilterCreatorSelectValueList.js.map +1 -1
  13. package/dist/ColumnHeaderGroup.d.ts +1 -1
  14. package/dist/ColumnHeaderGroup.d.ts.map +1 -1
  15. package/dist/ColumnHeaderGroup.js +1 -1
  16. package/dist/ColumnHeaderGroup.js.map +1 -1
  17. package/dist/ColumnStatistics.d.ts +3 -3
  18. package/dist/ColumnStatistics.d.ts.map +1 -1
  19. package/dist/ColumnStatistics.js.map +1 -1
  20. package/dist/CommonTypes.d.ts +5 -5
  21. package/dist/CommonTypes.d.ts.map +1 -1
  22. package/dist/CommonTypes.js.map +1 -1
  23. package/dist/CrossColumnSearch.d.ts +2 -2
  24. package/dist/CrossColumnSearch.d.ts.map +1 -1
  25. package/dist/CrossColumnSearch.js.map +1 -1
  26. package/dist/EmptyIrisGridModel.d.ts +19 -19
  27. package/dist/EmptyIrisGridModel.d.ts.map +1 -1
  28. package/dist/EmptyIrisGridModel.js.map +1 -1
  29. package/dist/GotoRow.js.map +1 -1
  30. package/dist/IrisGrid.d.ts +32 -32
  31. package/dist/IrisGrid.d.ts.map +1 -1
  32. package/dist/IrisGrid.js +4 -1
  33. package/dist/IrisGrid.js.map +1 -1
  34. package/dist/IrisGridCopyHandler.js.map +1 -1
  35. package/dist/IrisGridMetricCalculator.d.ts +4 -4
  36. package/dist/IrisGridMetricCalculator.d.ts.map +1 -1
  37. package/dist/IrisGridMetricCalculator.js.map +1 -1
  38. package/dist/IrisGridModel.d.ts +20 -20
  39. package/dist/IrisGridModel.d.ts.map +1 -1
  40. package/dist/IrisGridModel.js.map +1 -1
  41. package/dist/IrisGridModelFactory.d.ts +2 -2
  42. package/dist/IrisGridModelFactory.d.ts.map +1 -1
  43. package/dist/IrisGridModelFactory.js.map +1 -1
  44. package/dist/IrisGridModelUpdater.d.ts +6 -6
  45. package/dist/IrisGridModelUpdater.d.ts.map +1 -1
  46. package/dist/IrisGridModelUpdater.js.map +1 -1
  47. package/dist/IrisGridPartitionSelector.d.ts +5 -5
  48. package/dist/IrisGridPartitionSelector.d.ts.map +1 -1
  49. package/dist/IrisGridPartitionSelector.js.map +1 -1
  50. package/dist/IrisGridPartitionedTableModel.d.ts +8 -8
  51. package/dist/IrisGridPartitionedTableModel.d.ts.map +1 -1
  52. package/dist/IrisGridPartitionedTableModel.js.map +1 -1
  53. package/dist/IrisGridProxyModel.d.ts +26 -26
  54. package/dist/IrisGridProxyModel.d.ts.map +1 -1
  55. package/dist/IrisGridProxyModel.js.map +1 -1
  56. package/dist/IrisGridRenderer.d.ts +2 -2
  57. package/dist/IrisGridRenderer.d.ts.map +1 -1
  58. package/dist/IrisGridRenderer.js.map +1 -1
  59. package/dist/IrisGridTableModel.d.ts +18 -18
  60. package/dist/IrisGridTableModel.d.ts.map +1 -1
  61. package/dist/IrisGridTableModel.js +8 -7
  62. package/dist/IrisGridTableModel.js.map +1 -1
  63. package/dist/IrisGridTableModelTemplate.d.ts +41 -41
  64. package/dist/IrisGridTableModelTemplate.d.ts.map +1 -1
  65. package/dist/IrisGridTableModelTemplate.js +10 -11
  66. package/dist/IrisGridTableModelTemplate.js.map +1 -1
  67. package/dist/IrisGridTestUtils.d.ts +16 -16
  68. package/dist/IrisGridTestUtils.d.ts.map +1 -1
  69. package/dist/IrisGridTestUtils.js +4 -2
  70. package/dist/IrisGridTestUtils.js.map +1 -1
  71. package/dist/IrisGridTreeTableModel.d.ts +13 -13
  72. package/dist/IrisGridTreeTableModel.d.ts.map +1 -1
  73. package/dist/IrisGridTreeTableModel.js +16 -6
  74. package/dist/IrisGridTreeTableModel.js.map +1 -1
  75. package/dist/IrisGridUtils.d.ts +40 -40
  76. package/dist/IrisGridUtils.d.ts.map +1 -1
  77. package/dist/IrisGridUtils.js +17 -7
  78. package/dist/IrisGridUtils.js.map +1 -1
  79. package/dist/PartitionedGridModel.d.ts +5 -5
  80. package/dist/PartitionedGridModel.d.ts.map +1 -1
  81. package/dist/PartitionedGridModel.js.map +1 -1
  82. package/dist/TableViewportUpdater.d.ts +10 -10
  83. package/dist/TableViewportUpdater.d.ts.map +1 -1
  84. package/dist/TableViewportUpdater.js.map +1 -1
  85. package/dist/TreeTableViewportUpdater.d.ts +7 -7
  86. package/dist/TreeTableViewportUpdater.d.ts.map +1 -1
  87. package/dist/TreeTableViewportUpdater.js.map +1 -1
  88. package/dist/format-context-menus/DecimalFormatContextMenu.d.ts +1 -1
  89. package/dist/format-context-menus/DecimalFormatContextMenu.d.ts.map +1 -1
  90. package/dist/format-context-menus/DecimalFormatContextMenu.js.map +1 -1
  91. package/dist/format-context-menus/FormatContextMenuUtils.js +2 -1
  92. package/dist/format-context-menus/FormatContextMenuUtils.js.map +1 -1
  93. package/dist/format-context-menus/IntegerFormatContextMenu.d.ts +1 -1
  94. package/dist/format-context-menus/IntegerFormatContextMenu.d.ts.map +1 -1
  95. package/dist/format-context-menus/IntegerFormatContextMenu.js.map +1 -1
  96. package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.js.map +1 -1
  97. package/dist/mousehandlers/IrisGridContextMenuHandler.d.ts +17 -17
  98. package/dist/mousehandlers/IrisGridContextMenuHandler.d.ts.map +1 -1
  99. package/dist/mousehandlers/IrisGridContextMenuHandler.js.map +1 -1
  100. package/dist/sidebar/ChartBuilder.d.ts +11 -11
  101. package/dist/sidebar/ChartBuilder.d.ts.map +1 -1
  102. package/dist/sidebar/ChartBuilder.js.map +1 -1
  103. package/dist/sidebar/RollupRows.d.ts +8 -8
  104. package/dist/sidebar/RollupRows.d.ts.map +1 -1
  105. package/dist/sidebar/RollupRows.js.map +1 -1
  106. package/dist/sidebar/SelectDistinctBuilder.d.ts +2 -2
  107. package/dist/sidebar/SelectDistinctBuilder.d.ts.map +1 -1
  108. package/dist/sidebar/SelectDistinctBuilder.js.map +1 -1
  109. package/dist/sidebar/TableCsvExporter.d.ts +3 -3
  110. package/dist/sidebar/TableCsvExporter.d.ts.map +1 -1
  111. package/dist/sidebar/TableCsvExporter.js.map +1 -1
  112. package/dist/sidebar/TableSaver.d.ts +9 -9
  113. package/dist/sidebar/TableSaver.d.ts.map +1 -1
  114. package/dist/sidebar/TableSaver.js.map +1 -1
  115. package/dist/sidebar/conditional-formatting/ColumnFormatEditor.d.ts +1 -1
  116. package/dist/sidebar/conditional-formatting/ColumnFormatEditor.d.ts.map +1 -1
  117. package/dist/sidebar/conditional-formatting/ColumnFormatEditor.js.map +1 -1
  118. package/dist/sidebar/conditional-formatting/ConditionEditor.d.ts +1 -1
  119. package/dist/sidebar/conditional-formatting/ConditionEditor.d.ts.map +1 -1
  120. package/dist/sidebar/conditional-formatting/ConditionEditor.js.map +1 -1
  121. package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.d.ts +1 -1
  122. package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.d.ts.map +1 -1
  123. package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.js.map +1 -1
  124. package/dist/sidebar/conditional-formatting/ConditionalFormattingAPIUtils.d.ts +3 -3
  125. package/dist/sidebar/conditional-formatting/ConditionalFormattingAPIUtils.d.ts.map +1 -1
  126. package/dist/sidebar/conditional-formatting/ConditionalFormattingAPIUtils.js.map +1 -1
  127. package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.d.ts +3 -3
  128. package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.d.ts.map +1 -1
  129. package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.js.map +1 -1
  130. package/dist/sidebar/conditional-formatting/RowFormatEditor.d.ts +1 -1
  131. package/dist/sidebar/conditional-formatting/RowFormatEditor.d.ts.map +1 -1
  132. package/dist/sidebar/conditional-formatting/RowFormatEditor.js.map +1 -1
  133. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.d.ts +5 -5
  134. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.d.ts.map +1 -1
  135. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.js.map +1 -1
  136. package/dist/sidebar/visibility-ordering-builder/sortable-tree/utilities.d.ts +2 -2
  137. package/dist/sidebar/visibility-ordering-builder/sortable-tree/utilities.d.ts.map +1 -1
  138. package/dist/sidebar/visibility-ordering-builder/sortable-tree/utilities.js.map +1 -1
  139. package/package.json +16 -16
@@ -1 +1 @@
1
- {"version":3,"file":"IrisGridModelUpdater.js","names":["React","useEffect","useMemo","TableUtils","EMPTY_ARRAY","EMPTY_MAP","IrisGridUtils","isPartitionedGridModel","COLUMN_BUFFER_PAGES","IrisGridModelUpdater","memo","_ref","model","modelColumns","top","bottom","left","right","filter","formatter","reverseType","REVERSE_TYPE","NONE","sorts","customColumns","movedColumns","hiddenColumns","alwaysFetchColumns","rollupConfig","totalsConfig","selectDistinctColumns","pendingRowCount","pendingDataMap","frozenColumns","formatColumns","columnHeaderGroups","partitionConfig","columns","getModelViewportColumns","updateFilter","updateSorts","sortsForModel","push","dh","Table","reverse","sort","updateFormatter","updateCustomColumns","isCustomColumnsAvailable","updateFormatColumns","isFormatColumnsAvailable","updateViewport","setViewport","updateRollupCOnfig","isRollupAvailable","updateSelectDistinctColumns","isSelectDistinctAvailable","updateTotalsConfig","isTotalsAvailable","updatePendingRowCount","updatePendingDataMap","updateFrozenColumns","updateColumnHeaderGroups","updatePartitionConfig","displayName"],"sources":["../src/IrisGridModelUpdater.tsx"],"sourcesContent":["/* eslint-disable react/require-default-props */\n/* eslint-disable no-param-reassign */\nimport React, { useEffect, useMemo } from 'react';\nimport type {\n Column,\n CustomColumn,\n FilterCondition,\n RollupConfig,\n Sort,\n} from '@deephaven/jsapi-types';\nimport { ModelIndex, MoveOperation } from '@deephaven/grid';\nimport { Formatter, ReverseType, TableUtils } from '@deephaven/jsapi-utils';\nimport { EMPTY_ARRAY, EMPTY_MAP } from '@deephaven/utils';\nimport IrisGridUtils from './IrisGridUtils';\nimport { ColumnName, UITotalsTableConfig, PendingDataMap } from './CommonTypes';\nimport IrisGridModel from './IrisGridModel';\nimport type ColumnHeaderGroup from './ColumnHeaderGroup';\nimport {\n PartitionConfig,\n isPartitionedGridModel,\n} from './PartitionedGridModel';\n\nconst COLUMN_BUFFER_PAGES = 1;\n\ninterface IrisGridModelUpdaterProps {\n model: IrisGridModel;\n modelColumns: readonly Column[];\n top: number;\n bottom: number;\n left: number | null;\n right: number | null;\n filter: readonly FilterCondition[];\n sorts: readonly Sort[];\n reverseType?: ReverseType;\n customColumns: readonly ColumnName[];\n movedColumns: readonly MoveOperation[];\n hiddenColumns: readonly ModelIndex[];\n frozenColumns?: readonly ColumnName[];\n columnHeaderGroups: readonly ColumnHeaderGroup[];\n formatColumns: readonly CustomColumn[];\n alwaysFetchColumns: readonly ColumnName[];\n formatter: Formatter;\n rollupConfig?: RollupConfig | null;\n totalsConfig?: UITotalsTableConfig | null;\n selectDistinctColumns?: readonly ColumnName[];\n pendingRowCount?: number;\n pendingDataMap?: PendingDataMap;\n partitionConfig?: PartitionConfig;\n}\n\n/**\n * React component to keep IrisGridModel in sync\n */\nconst IrisGridModelUpdater = React.memo(\n ({\n model,\n modelColumns,\n top,\n bottom,\n left,\n right,\n filter,\n formatter,\n reverseType = TableUtils.REVERSE_TYPE.NONE,\n sorts,\n customColumns,\n movedColumns,\n hiddenColumns,\n alwaysFetchColumns,\n rollupConfig = null,\n totalsConfig = null,\n selectDistinctColumns = EMPTY_ARRAY,\n pendingRowCount = 0,\n pendingDataMap = EMPTY_MAP,\n frozenColumns,\n formatColumns,\n columnHeaderGroups,\n partitionConfig,\n }: IrisGridModelUpdaterProps) => {\n const columns = useMemo(\n () =>\n IrisGridUtils.getModelViewportColumns(\n modelColumns,\n left,\n right,\n movedColumns,\n hiddenColumns,\n alwaysFetchColumns,\n COLUMN_BUFFER_PAGES\n ),\n [\n modelColumns,\n left,\n right,\n movedColumns,\n hiddenColumns,\n alwaysFetchColumns,\n ]\n );\n\n useEffect(\n function updateFilter() {\n model.filter = filter;\n },\n [model, filter]\n );\n useEffect(\n function updateSorts() {\n const sortsForModel = [...sorts];\n if (reverseType !== TableUtils.REVERSE_TYPE.NONE) {\n sortsForModel.push(model.dh.Table.reverse());\n }\n model.sort = sortsForModel;\n },\n [model, sorts, reverseType]\n );\n useEffect(\n function updateFormatter() {\n model.formatter = formatter;\n },\n [model, formatter]\n );\n useEffect(\n function updateCustomColumns() {\n if (model.isCustomColumnsAvailable) {\n model.customColumns = customColumns;\n }\n },\n [model, customColumns]\n );\n useEffect(\n function updateFormatColumns() {\n if (model.isFormatColumnsAvailable) {\n model.formatColumns = formatColumns;\n }\n },\n [model, formatColumns]\n );\n useEffect(\n function updateViewport() {\n model.setViewport(top, bottom, columns);\n },\n [model, top, bottom, columns]\n );\n useEffect(\n function updateRollupCOnfig() {\n if (model.isRollupAvailable) {\n model.rollupConfig = rollupConfig;\n }\n },\n [model, model.isRollupAvailable, rollupConfig]\n );\n useEffect(\n function updateSelectDistinctColumns() {\n if (model.isSelectDistinctAvailable) {\n model.selectDistinctColumns = selectDistinctColumns;\n }\n },\n [model, selectDistinctColumns]\n );\n useEffect(\n function updateTotalsConfig() {\n if (model.isTotalsAvailable) {\n model.totalsConfig = totalsConfig;\n }\n },\n [model, model.isTotalsAvailable, totalsConfig]\n );\n useEffect(\n function updatePendingRowCount() {\n model.pendingRowCount = pendingRowCount;\n },\n [model, pendingRowCount]\n );\n useEffect(\n function updatePendingDataMap() {\n model.pendingDataMap = pendingDataMap;\n },\n [model, pendingDataMap]\n );\n useEffect(\n function updateFrozenColumns() {\n if (frozenColumns) {\n model.updateFrozenColumns(frozenColumns);\n }\n },\n [model, frozenColumns]\n );\n useEffect(\n function updateColumnHeaderGroups() {\n model.columnHeaderGroups = columnHeaderGroups;\n },\n [model, columnHeaderGroups]\n );\n useEffect(\n function updatePartitionConfig() {\n if (partitionConfig && isPartitionedGridModel(model)) {\n model.partitionConfig = partitionConfig;\n }\n },\n [model, partitionConfig]\n );\n\n return null;\n }\n);\n\nIrisGridModelUpdater.displayName = 'IrisGridModelUpdater';\n\nexport default IrisGridModelUpdater;\n"],"mappings":"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"}
1
+ {"version":3,"file":"IrisGridModelUpdater.js","names":["React","useEffect","useMemo","TableUtils","EMPTY_ARRAY","EMPTY_MAP","IrisGridUtils","isPartitionedGridModel","COLUMN_BUFFER_PAGES","IrisGridModelUpdater","memo","_ref","model","modelColumns","top","bottom","left","right","filter","formatter","reverseType","REVERSE_TYPE","NONE","sorts","customColumns","movedColumns","hiddenColumns","alwaysFetchColumns","rollupConfig","totalsConfig","selectDistinctColumns","pendingRowCount","pendingDataMap","frozenColumns","formatColumns","columnHeaderGroups","partitionConfig","columns","getModelViewportColumns","updateFilter","updateSorts","sortsForModel","push","dh","Table","reverse","sort","updateFormatter","updateCustomColumns","isCustomColumnsAvailable","updateFormatColumns","isFormatColumnsAvailable","updateViewport","setViewport","updateRollupCOnfig","isRollupAvailable","updateSelectDistinctColumns","isSelectDistinctAvailable","updateTotalsConfig","isTotalsAvailable","updatePendingRowCount","updatePendingDataMap","updateFrozenColumns","updateColumnHeaderGroups","updatePartitionConfig","displayName"],"sources":["../src/IrisGridModelUpdater.tsx"],"sourcesContent":["/* eslint-disable react/require-default-props */\n/* eslint-disable no-param-reassign */\nimport React, { useEffect, useMemo } from 'react';\nimport type { dh } from '@deephaven/jsapi-types';\nimport { ModelIndex, MoveOperation } from '@deephaven/grid';\nimport { Formatter, ReverseType, TableUtils } from '@deephaven/jsapi-utils';\nimport { EMPTY_ARRAY, EMPTY_MAP } from '@deephaven/utils';\nimport IrisGridUtils from './IrisGridUtils';\nimport { ColumnName, UITotalsTableConfig, PendingDataMap } from './CommonTypes';\nimport IrisGridModel from './IrisGridModel';\nimport type ColumnHeaderGroup from './ColumnHeaderGroup';\nimport {\n PartitionConfig,\n isPartitionedGridModel,\n} from './PartitionedGridModel';\n\nconst COLUMN_BUFFER_PAGES = 1;\n\ninterface IrisGridModelUpdaterProps {\n model: IrisGridModel;\n modelColumns: readonly dh.Column[];\n top: number;\n bottom: number;\n left: number | null;\n right: number | null;\n filter: readonly dh.FilterCondition[];\n sorts: readonly dh.Sort[];\n reverseType?: ReverseType;\n customColumns: readonly ColumnName[];\n movedColumns: readonly MoveOperation[];\n hiddenColumns: readonly ModelIndex[];\n frozenColumns?: readonly ColumnName[];\n columnHeaderGroups: readonly ColumnHeaderGroup[];\n formatColumns: readonly dh.CustomColumn[];\n alwaysFetchColumns: readonly ColumnName[];\n formatter: Formatter;\n rollupConfig?: dh.RollupConfig | null;\n totalsConfig?: UITotalsTableConfig | null;\n selectDistinctColumns?: readonly ColumnName[];\n pendingRowCount?: number;\n pendingDataMap?: PendingDataMap;\n partitionConfig?: PartitionConfig;\n}\n\n/**\n * React component to keep IrisGridModel in sync\n */\nconst IrisGridModelUpdater = React.memo(\n ({\n model,\n modelColumns,\n top,\n bottom,\n left,\n right,\n filter,\n formatter,\n reverseType = TableUtils.REVERSE_TYPE.NONE,\n sorts,\n customColumns,\n movedColumns,\n hiddenColumns,\n alwaysFetchColumns,\n rollupConfig = null,\n totalsConfig = null,\n selectDistinctColumns = EMPTY_ARRAY,\n pendingRowCount = 0,\n pendingDataMap = EMPTY_MAP,\n frozenColumns,\n formatColumns,\n columnHeaderGroups,\n partitionConfig,\n }: IrisGridModelUpdaterProps) => {\n const columns = useMemo(\n () =>\n IrisGridUtils.getModelViewportColumns(\n modelColumns,\n left,\n right,\n movedColumns,\n hiddenColumns,\n alwaysFetchColumns,\n COLUMN_BUFFER_PAGES\n ),\n [\n modelColumns,\n left,\n right,\n movedColumns,\n hiddenColumns,\n alwaysFetchColumns,\n ]\n );\n\n useEffect(\n function updateFilter() {\n model.filter = filter;\n },\n [model, filter]\n );\n useEffect(\n function updateSorts() {\n const sortsForModel = [...sorts];\n if (reverseType !== TableUtils.REVERSE_TYPE.NONE) {\n sortsForModel.push(model.dh.Table.reverse());\n }\n model.sort = sortsForModel;\n },\n [model, sorts, reverseType]\n );\n useEffect(\n function updateFormatter() {\n model.formatter = formatter;\n },\n [model, formatter]\n );\n useEffect(\n function updateCustomColumns() {\n if (model.isCustomColumnsAvailable) {\n model.customColumns = customColumns;\n }\n },\n [model, customColumns]\n );\n useEffect(\n function updateFormatColumns() {\n if (model.isFormatColumnsAvailable) {\n model.formatColumns = formatColumns;\n }\n },\n [model, formatColumns]\n );\n useEffect(\n function updateViewport() {\n model.setViewport(top, bottom, columns);\n },\n [model, top, bottom, columns]\n );\n useEffect(\n function updateRollupCOnfig() {\n if (model.isRollupAvailable) {\n model.rollupConfig = rollupConfig;\n }\n },\n [model, model.isRollupAvailable, rollupConfig]\n );\n useEffect(\n function updateSelectDistinctColumns() {\n if (model.isSelectDistinctAvailable) {\n model.selectDistinctColumns = selectDistinctColumns;\n }\n },\n [model, selectDistinctColumns]\n );\n useEffect(\n function updateTotalsConfig() {\n if (model.isTotalsAvailable) {\n model.totalsConfig = totalsConfig;\n }\n },\n [model, model.isTotalsAvailable, totalsConfig]\n );\n useEffect(\n function updatePendingRowCount() {\n model.pendingRowCount = pendingRowCount;\n },\n [model, pendingRowCount]\n );\n useEffect(\n function updatePendingDataMap() {\n model.pendingDataMap = pendingDataMap;\n },\n [model, pendingDataMap]\n );\n useEffect(\n function updateFrozenColumns() {\n if (frozenColumns) {\n model.updateFrozenColumns(frozenColumns);\n }\n },\n [model, frozenColumns]\n );\n useEffect(\n function updateColumnHeaderGroups() {\n model.columnHeaderGroups = columnHeaderGroups;\n },\n [model, columnHeaderGroups]\n );\n useEffect(\n function updatePartitionConfig() {\n if (partitionConfig && isPartitionedGridModel(model)) {\n model.partitionConfig = partitionConfig;\n }\n },\n [model, partitionConfig]\n );\n\n return null;\n }\n);\n\nIrisGridModelUpdater.displayName = 'IrisGridModelUpdater';\n\nexport default IrisGridModelUpdater;\n"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { Component } from 'react';
2
2
  import memoizee from 'memoizee';
3
- import type { FilterCondition, Table } from '@deephaven/jsapi-types';
3
+ import type { dh } from '@deephaven/jsapi-types';
4
4
  import { TableUtils } from '@deephaven/jsapi-utils';
5
5
  import { Pending } from '@deephaven/utils';
6
6
  import './IrisGridPartitionSelector.scss';
@@ -12,10 +12,10 @@ interface IrisGridPartitionSelectorProps {
12
12
  }
13
13
  interface IrisGridPartitionSelectorState {
14
14
  isLoading: boolean;
15
- keysTable: Table | null;
16
- partitionTables: Table[] | null;
15
+ keysTable: dh.Table | null;
16
+ partitionTables: dh.Table[] | null;
17
17
  /** The filters to apply to each partition table */
18
- partitionFilters: FilterCondition[][] | null;
18
+ partitionFilters: dh.FilterCondition[][] | null;
19
19
  }
20
20
  declare class IrisGridPartitionSelector extends Component<IrisGridPartitionSelectorProps, IrisGridPartitionSelectorState> {
21
21
  constructor(props: IrisGridPartitionSelectorProps);
@@ -43,7 +43,7 @@ declare class IrisGridPartitionSelector extends Component<IrisGridPartitionSelec
43
43
  * Update the filters on the partition dropdown tables
44
44
  */
45
45
  updatePartitionFilters(): void;
46
- getPartitionFilters(partitionTables: Table[]): FilterCondition[][];
46
+ getPartitionFilters(partitionTables: dh.Table[]): dh.FilterCondition[][];
47
47
  getCachedChangeCallback: ((index: number) => (value: unknown) => Promise<void>) & memoizee.Memoized<(index: number) => (value: unknown) => Promise<void>>;
48
48
  getCachedFormatValueCallback: ((index: number) => (value: unknown) => string) & memoizee.Memoized<(index: number) => (value: unknown) => string>;
49
49
  render(): JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"IrisGridPartitionSelector.d.ts","sourceRoot":"","sources":["../src/IrisGridPartitionSelector.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,QAAQ,MAAM,UAAU,CAAC;AAMhC,OAAO,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAiB,OAAO,EAAgB,MAAM,kBAAkB,CAAC;AACxE,OAAO,kCAAkC,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAI/E,UAAU,8BAA8B;IACtC,KAAK,EAAE,oBAAoB,CAAC;IAC5B,eAAe,EAAE,eAAe,CAAC;IACjC,QAAQ,EAAE,CAAC,eAAe,EAAE,eAAe,KAAK,IAAI,CAAC;CACtD;AACD,UAAU,8BAA8B;IACtC,SAAS,EAAE,OAAO,CAAC;IAEnB,SAAS,EAAE,KAAK,GAAG,IAAI,CAAC;IAExB,eAAe,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAEhC,mDAAmD;IACnD,gBAAgB,EAAE,eAAe,EAAE,EAAE,GAAG,IAAI,CAAC;CAC9C;AACD,cAAM,yBAA0B,SAAQ,SAAS,CAC/C,8BAA8B,EAC9B,8BAA8B,CAC/B;gBACa,KAAK,EAAE,8BAA8B;IAqB3C,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAuCxC,kBAAkB,CAAC,SAAS,EAAE,8BAA8B,GAAG,IAAI;IAUnE,oBAAoB,IAAI,IAAI;IAQ5B,OAAO,EAAE,OAAO,CAAC;IAEjB,UAAU,EAAE,UAAU,CAAC;IAEvB,mBAAmB,IAAI,IAAI;IAW3B,gBAAgB,IAAI,IAAI;IAWxB;;;;OAIG;IACG,qBAAqB,CACzB,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,OAAO,GACrB,OAAO,CAAC,IAAI,CAAC;IAuDhB,UAAU,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI;IAOlD;;;;OAIG;IACH,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM;IAatD;;OAEG;IACH,sBAAsB,IAAI,IAAI;IAiB9B,mBAAmB,CAAC,eAAe,EAAE,KAAK,EAAE,GAAG,eAAe,EAAE,EAAE;IAsClE,uBAAuB,WACb,MAAM,aAAa,OAAO,gDAA1B,MAAM,aAAa,OAAO,oBAElC;IAEF,4BAA4B,WAClB,MAAM,aAAa,OAAO,yCAA1B,MAAM,aAAa,OAAO,aAClC;IAEF,MAAM,IAAI,GAAG,CAAC,OAAO;CAyDtB;AAED,eAAe,yBAAyB,CAAC"}
1
+ {"version":3,"file":"IrisGridPartitionSelector.d.ts","sourceRoot":"","sources":["../src/IrisGridPartitionSelector.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,QAAQ,MAAM,UAAU,CAAC;AAMhC,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAiB,OAAO,EAAgB,MAAM,kBAAkB,CAAC;AACxE,OAAO,kCAAkC,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAI/E,UAAU,8BAA8B;IACtC,KAAK,EAAE,oBAAoB,CAAC;IAC5B,eAAe,EAAE,eAAe,CAAC;IACjC,QAAQ,EAAE,CAAC,eAAe,EAAE,eAAe,KAAK,IAAI,CAAC;CACtD;AACD,UAAU,8BAA8B;IACtC,SAAS,EAAE,OAAO,CAAC;IAEnB,SAAS,EAAE,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC;IAE3B,eAAe,EAAE,EAAE,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC;IAEnC,mDAAmD;IACnD,gBAAgB,EAAE,EAAE,CAAC,eAAe,EAAE,EAAE,GAAG,IAAI,CAAC;CACjD;AACD,cAAM,yBAA0B,SAAQ,SAAS,CAC/C,8BAA8B,EAC9B,8BAA8B,CAC/B;gBACa,KAAK,EAAE,8BAA8B;IAqB3C,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAuCxC,kBAAkB,CAAC,SAAS,EAAE,8BAA8B,GAAG,IAAI;IAUnE,oBAAoB,IAAI,IAAI;IAQ5B,OAAO,EAAE,OAAO,CAAC;IAEjB,UAAU,EAAE,UAAU,CAAC;IAEvB,mBAAmB,IAAI,IAAI;IAW3B,gBAAgB,IAAI,IAAI;IAWxB;;;;OAIG;IACG,qBAAqB,CACzB,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,OAAO,GACrB,OAAO,CAAC,IAAI,CAAC;IAuDhB,UAAU,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI;IAOlD;;;;OAIG;IACH,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM;IAatD;;OAEG;IACH,sBAAsB,IAAI,IAAI;IAiB9B,mBAAmB,CAAC,eAAe,EAAE,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,eAAe,EAAE,EAAE;IAsCxE,uBAAuB,WACb,MAAM,aAAa,OAAO,gDAA1B,MAAM,aAAa,OAAO,oBAElC;IAEF,4BAA4B,WAClB,MAAM,aAAa,OAAO,yCAA1B,MAAM,aAAa,OAAO,aAClC;IAEF,MAAM,IAAI,GAAG,CAAC,OAAO;CAyDtB;AAED,eAAe,yBAAyB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"IrisGridPartitionSelector.js","names":["React","Component","memoizee","FontAwesomeIcon","Button","vsChevronRight","vsMerge","vsKey","Log","TableDropdown","TableUtils","assertNotNull","Pending","PromiseUtils","jsx","_jsx","jsxs","_jsxs","log","module","IrisGridPartitionSelector","constructor","props","_defineProperty","index","value","handlePartitionSelect","getDisplayValue","handleKeyTableClick","bind","handleMergeClick","model","tableUtils","dh","pending","state","isLoading","keysTable","partitionFilters","partitionTables","componentDidMount","_this","_asyncToGenerator","add","partitionKeysTable","then","keyTable","sorts","partitionColumns","map","column","sort","desc","applySort","t","close","Promise","all","_ref","_","i","selectDistinct","slice","_x","_x2","apply","arguments","getPartitionFilters","setState","e","isCanceled","componentDidUpdate","prevProps","partitionConfig","prevConfig","updatePartitionFilters","componentWillUnmount","cancel","forEach","table","debug2","newPartitionConfig","_objectSpread","mode","sendUpdate","selectedValue","_this2","debug","newPartitions","partitions","length","copy","tCopy","partition","partitionColumn","columns","filter","eq","makeFilterRawValue","type","applyFilter","setViewport","data","getViewportData","newConfig","rows","get","error","onChange","isCharType","toString","String","fromCharCode","parseInt","displayString","name","Error","concat","push","previousFilter","previousPartition","previousColumn","partitionFilter","render","partitionSelectors","_partitionTables$inde","className","children","getCachedChangeCallback","undefined","disabled","formatValue","getCachedFormatValueCallback","icon","onClick","kind","tooltip","active","rotation"],"sources":["../src/IrisGridPartitionSelector.tsx"],"sourcesContent":["import React, { Component } from 'react';\nimport memoizee from 'memoizee';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport { Button } from '@deephaven/components';\nimport { vsChevronRight, vsMerge, vsKey } from '@deephaven/icons';\nimport Log from '@deephaven/log';\nimport { TableDropdown } from '@deephaven/jsapi-components';\nimport type { FilterCondition, Table } from '@deephaven/jsapi-types';\nimport { TableUtils } from '@deephaven/jsapi-utils';\nimport { assertNotNull, Pending, PromiseUtils } from '@deephaven/utils';\nimport './IrisGridPartitionSelector.scss';\nimport { PartitionConfig, PartitionedGridModel } from './PartitionedGridModel';\n\nconst log = Log.module('IrisGridPartitionSelector');\n\ninterface IrisGridPartitionSelectorProps {\n model: PartitionedGridModel;\n partitionConfig: PartitionConfig;\n onChange: (partitionConfig: PartitionConfig) => void;\n}\ninterface IrisGridPartitionSelectorState {\n isLoading: boolean;\n\n keysTable: Table | null;\n\n partitionTables: Table[] | null;\n\n /** The filters to apply to each partition table */\n partitionFilters: FilterCondition[][] | null;\n}\nclass IrisGridPartitionSelector extends Component<\n IrisGridPartitionSelectorProps,\n IrisGridPartitionSelectorState\n> {\n constructor(props: IrisGridPartitionSelectorProps) {\n super(props);\n\n this.handleKeyTableClick = this.handleKeyTableClick.bind(this);\n this.handleMergeClick = this.handleMergeClick.bind(this);\n this.handlePartitionSelect = this.handlePartitionSelect.bind(this);\n\n const { model } = props;\n this.tableUtils = new TableUtils(model.dh);\n this.pending = new Pending();\n\n this.state = {\n // We start be loading the partition tables, so we should be in a loading state\n isLoading: true,\n\n keysTable: null,\n partitionFilters: null,\n partitionTables: null,\n };\n }\n\n async componentDidMount(): Promise<void> {\n const { model } = this.props;\n\n try {\n const keysTable = await this.pending.add(\n model.partitionKeysTable().then(keyTable => {\n const sorts = model.partitionColumns.map(column =>\n column.sort().desc()\n );\n keyTable.applySort(sorts);\n return keyTable;\n }),\n t => t.close()\n );\n\n const partitionTables = await Promise.all(\n model.partitionColumns.map(async (_, i) =>\n this.pending.add(\n keysTable.selectDistinct(model.partitionColumns.slice(0, i + 1)),\n t => t.close()\n )\n )\n );\n\n const partitionFilters = this.getPartitionFilters(partitionTables);\n this.setState({\n isLoading: false,\n keysTable,\n partitionFilters,\n partitionTables,\n });\n } catch (e) {\n if (!PromiseUtils.isCanceled(e)) {\n // Just re-throw the error if it's not a cancel\n throw e;\n }\n }\n }\n\n componentDidUpdate(prevProps: IrisGridPartitionSelectorProps): void {\n const { partitionConfig: prevConfig } = prevProps;\n\n const { partitionConfig } = this.props;\n\n if (prevConfig !== partitionConfig) {\n this.updatePartitionFilters();\n }\n }\n\n componentWillUnmount(): void {\n this.pending.cancel();\n\n const { keysTable, partitionTables } = this.state;\n keysTable?.close();\n partitionTables?.forEach(table => table.close());\n }\n\n pending: Pending;\n\n tableUtils: TableUtils;\n\n handleKeyTableClick(): void {\n log.debug2('handleKeyTableClick');\n\n const { partitionConfig } = this.props;\n const newPartitionConfig = { ...partitionConfig };\n // Toggle between Keys and Partition mode\n newPartitionConfig.mode =\n partitionConfig.mode === 'keys' ? 'partition' : 'keys';\n this.sendUpdate(newPartitionConfig);\n }\n\n handleMergeClick(): void {\n log.debug2('handleMergeClick');\n\n const { partitionConfig } = this.props;\n const newPartitionConfig = { ...partitionConfig };\n // Toggle between Merged and Partition mode\n newPartitionConfig.mode =\n partitionConfig.mode === 'merged' ? 'partition' : 'merged';\n this.sendUpdate(newPartitionConfig);\n }\n\n /**\n * Handles when a partition dropdown selection is changed. Will send an update with the new partition config\n * @param index Index of the partition column that was changed\n * @param selectedValue Selected value of the partition column\n */\n async handlePartitionSelect(\n index: number,\n selectedValue: unknown\n ): Promise<void> {\n const { model, partitionConfig: prevConfig } = this.props;\n\n log.debug('handlePartitionSelect', index, selectedValue, prevConfig);\n\n const newPartitions = [...prevConfig.partitions];\n newPartitions[index] = selectedValue;\n\n // If it's the last partition changed, we know it's already a valid value, just emit it\n if (index === model.partitionColumns.length - 1) {\n this.sendUpdate({ partitions: newPartitions, mode: 'partition' });\n return;\n }\n\n const { keysTable } = this.state;\n // Otherwise, we need to get the value from a filtered key table\n assertNotNull(keysTable);\n try {\n this.setState({ isLoading: true });\n const t = await this.pending.add(keysTable.copy(), tCopy =>\n tCopy.close()\n );\n\n // Apply our partition filters, and just get the first value\n const partitionFilters = newPartitions\n .slice(0, index + 1)\n .map((partition, i) => {\n const partitionColumn = t.columns[i];\n return partitionColumn\n .filter()\n .eq(\n this.tableUtils.makeFilterRawValue(\n partitionColumn.type,\n partition\n )\n );\n });\n t.applyFilter(partitionFilters);\n t.setViewport(0, 0, t.columns);\n const data = await this.pending.add(t.getViewportData());\n const newConfig: PartitionConfig = {\n partitions: t.columns.map(column => data.rows[0].get(column)),\n mode: 'partition',\n };\n t.close();\n this.sendUpdate(newConfig);\n } catch (e) {\n if (!PromiseUtils.isCanceled(e)) {\n log.error('Unable to get partition tables', e);\n }\n } finally {\n this.setState({ isLoading: false });\n }\n }\n\n sendUpdate(partitionConfig: PartitionConfig): void {\n log.debug2('sendUpdate', partitionConfig);\n\n const { onChange } = this.props;\n onChange(partitionConfig);\n }\n\n /**\n * Calls model.displayString with a special character case\n * @param index The index of the partition column to get the display value for\n * @param value The partition value to get the display value for\n */\n getDisplayValue(index: number, value: unknown): string {\n const { model } = this.props;\n\n if (value == null || value === '') {\n return '';\n }\n const column = model.partitionColumns[index];\n if (TableUtils.isCharType(column.type) && value.toString().length > 0) {\n return String.fromCharCode(parseInt(value.toString(), 10));\n }\n return model.displayString(value, column.type, column.name);\n }\n\n /**\n * Update the filters on the partition dropdown tables\n */\n updatePartitionFilters(): void {\n const { partitionTables } = this.state;\n assertNotNull(partitionTables);\n\n const { partitionConfig } = this.props;\n const { mode } = partitionConfig;\n log.debug('updatePartitionFilters', partitionConfig);\n if (mode !== 'partition') {\n // We only need to update the filters if the mode is `partitions`\n // In the other modes, we disable the dropdowns anyway\n return;\n }\n\n const partitionFilters = this.getPartitionFilters(partitionTables);\n this.setState({ partitionFilters });\n }\n\n getPartitionFilters(partitionTables: Table[]): FilterCondition[][] {\n const { model, partitionConfig } = this.props;\n const { partitions } = partitionConfig;\n log.debug('getPartitionFilters', partitionConfig);\n\n if (partitions.length !== partitionTables.length) {\n throw new Error(\n `Invalid partition config set. Expected ${partitionTables.length} partitions, but got ${partitions.length}`\n );\n }\n\n // The filters are applied in order, so we need to build up the filters for each partition\n const partitionFilters: FilterCondition[][] = [];\n for (let i = 0; i < partitions.length; i += 1) {\n if (i === 0) {\n // There's no reason to ever filter the first table\n partitionFilters.push([]);\n } else {\n const previousFilter = partitionFilters[i - 1];\n const previousPartition = partitions[i - 1];\n const previousColumn = model.partitionColumns[i - 1];\n const partitionFilter = [\n ...previousFilter,\n previousColumn\n .filter()\n .eq(\n this.tableUtils.makeFilterRawValue(\n previousColumn.type,\n previousPartition\n )\n ),\n ];\n partitionFilters.push(partitionFilter);\n }\n }\n return partitionFilters;\n }\n\n getCachedChangeCallback = memoizee(\n (index: number) => (value: unknown) =>\n this.handlePartitionSelect(index, value)\n );\n\n getCachedFormatValueCallback = memoizee(\n (index: number) => (value: unknown) => this.getDisplayValue(index, value)\n );\n\n render(): JSX.Element {\n const { model, partitionConfig } = this.props;\n const { isLoading, partitionFilters, partitionTables } = this.state;\n\n const { mode, partitions } = partitionConfig;\n\n const partitionSelectors = model.partitionColumns.map((column, index) => (\n <div key={`selector-${column.name}`} className=\"column-selector\">\n <div className=\"column-name\">{column.name}</div>\n <TableDropdown\n className=\"custom-select-sm\"\n table={partitionTables?.[index]}\n column={partitionTables?.[index]?.columns[index]}\n filter={partitionFilters?.[index]}\n onChange={this.getCachedChangeCallback(index)}\n selectedValue={mode === 'partition' ? partitions[index] : undefined}\n disabled={\n (index > 0 && partitionConfig.mode !== 'partition') || isLoading\n }\n formatValue={this.getCachedFormatValueCallback(index)}\n />\n {model.partitionColumns.length - 1 === index || (\n <FontAwesomeIcon icon={vsChevronRight} />\n )}\n </div>\n ));\n return (\n <div className=\"iris-grid-partition-selector\">\n <div className=\"table-name\">Partitioned Table</div>\n <div className=\"partition-button-group\">\n <Button\n className=\"btn-sm\"\n onClick={this.handleKeyTableClick}\n kind=\"inline\"\n tooltip=\"View keys as table\"\n icon={vsKey}\n active={partitionConfig.mode === 'keys'}\n disabled={isLoading}\n >\n Keys\n </Button>\n <Button\n className=\"btn-sm\"\n onClick={this.handleMergeClick}\n kind=\"inline\"\n tooltip=\"View all partitions as one merged table\"\n icon={<FontAwesomeIcon icon={vsMerge} rotation={90} />}\n active={partitionConfig.mode === 'merged'}\n disabled={isLoading}\n >\n Merge\n </Button>\n </div>\n {partitionSelectors}\n </div>\n );\n }\n}\n\nexport default IrisGridPartitionSelector;\n"],"mappings":";;;;;;;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,OAAOC,QAAQ,MAAM,UAAU;AAC/B,SAASC,eAAe,QAAQ,gCAAgC;AAChE,SAASC,MAAM,QAAQ,uBAAuB;AAC9C,SAASC,cAAc,EAAEC,OAAO,EAAEC,KAAK,QAAQ,kBAAkB;AACjE,OAAOC,GAAG,MAAM,gBAAgB;AAChC,SAASC,aAAa,QAAQ,6BAA6B;AAE3D,SAASC,UAAU,QAAQ,wBAAwB;AACnD,SAASC,aAAa,EAAEC,OAAO,EAAEC,YAAY,QAAQ,kBAAkB;AAAC;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAIxE,IAAMC,GAAG,GAAGV,GAAG,CAACW,MAAM,CAAC,2BAA2B,CAAC;AAiBnD,MAAMC,yBAAyB,SAASnB,SAAS,CAG/C;EACAoB,WAAWA,CAACC,KAAqC,EAAE;IACjD,KAAK,CAACA,KAAK,CAAC;IAACC,eAAA;IAAAA,eAAA;IAAAA,eAAA,kCAyPWrB,QAAQ,CAC/BsB,KAAa,IAAMC,KAAc,IAChC,IAAI,CAACC,qBAAqB,CAACF,KAAK,EAAEC,KAAK,CAC3C,CAAC;IAAAF,eAAA,uCAE8BrB,QAAQ,CACpCsB,KAAa,IAAMC,KAAc,IAAK,IAAI,CAACE,eAAe,CAACH,KAAK,EAAEC,KAAK,CAC1E,CAAC;IA9PC,IAAI,CAACG,mBAAmB,GAAG,IAAI,CAACA,mBAAmB,CAACC,IAAI,CAAC,IAAI,CAAC;IAC9D,IAAI,CAACC,gBAAgB,GAAG,IAAI,CAACA,gBAAgB,CAACD,IAAI,CAAC,IAAI,CAAC;IACxD,IAAI,CAACH,qBAAqB,GAAG,IAAI,CAACA,qBAAqB,CAACG,IAAI,CAAC,IAAI,CAAC;IAElE,IAAM;MAAEE;IAAM,CAAC,GAAGT,KAAK;IACvB,IAAI,CAACU,UAAU,GAAG,IAAItB,UAAU,CAACqB,KAAK,CAACE,EAAE,CAAC;IAC1C,IAAI,CAACC,OAAO,GAAG,IAAItB,OAAO,CAAC,CAAC;IAE5B,IAAI,CAACuB,KAAK,GAAG;MACX;MACAC,SAAS,EAAE,IAAI;MAEfC,SAAS,EAAE,IAAI;MACfC,gBAAgB,EAAE,IAAI;MACtBC,eAAe,EAAE;IACnB,CAAC;EACH;EAEMC,iBAAiBA,CAAA,EAAkB;IAAA,IAAAC,KAAA;IAAA,OAAAC,iBAAA;MACvC,IAAM;QAAEX;MAAM,CAAC,GAAGU,KAAI,CAACnB,KAAK;MAE5B,IAAI;QACF,IAAMe,SAAS,SAASI,KAAI,CAACP,OAAO,CAACS,GAAG,CACtCZ,KAAK,CAACa,kBAAkB,CAAC,CAAC,CAACC,IAAI,CAACC,QAAQ,IAAI;UAC1C,IAAMC,KAAK,GAAGhB,KAAK,CAACiB,gBAAgB,CAACC,GAAG,CAACC,MAAM,IAC7CA,MAAM,CAACC,IAAI,CAAC,CAAC,CAACC,IAAI,CAAC,CACrB,CAAC;UACDN,QAAQ,CAACO,SAAS,CAACN,KAAK,CAAC;UACzB,OAAOD,QAAQ;QACjB,CAAC,CAAC,EACFQ,CAAC,IAAIA,CAAC,CAACC,KAAK,CAAC,CACf,CAAC;QAED,IAAMhB,eAAe,SAASiB,OAAO,CAACC,GAAG,CACvC1B,KAAK,CAACiB,gBAAgB,CAACC,GAAG;UAAA,IAAAS,IAAA,GAAAhB,iBAAA,CAAC,WAAOiB,CAAC,EAAEC,CAAC;YAAA,OACpCnB,KAAI,CAACP,OAAO,CAACS,GAAG,CACdN,SAAS,CAACwB,cAAc,CAAC9B,KAAK,CAACiB,gBAAgB,CAACc,KAAK,CAAC,CAAC,EAAEF,CAAC,GAAG,CAAC,CAAC,CAAC,EAChEN,CAAC,IAAIA,CAAC,CAACC,KAAK,CAAC,CACf,CAAC;UAAA;UAAA,iBAAAQ,EAAA,EAAAC,GAAA;YAAA,OAAAN,IAAA,CAAAO,KAAA,OAAAC,SAAA;UAAA;QAAA,GACH,CACF,CAAC;QAED,IAAM5B,gBAAgB,GAAGG,KAAI,CAAC0B,mBAAmB,CAAC5B,eAAe,CAAC;QAClEE,KAAI,CAAC2B,QAAQ,CAAC;UACZhC,SAAS,EAAE,KAAK;UAChBC,SAAS;UACTC,gBAAgB;UAChBC;QACF,CAAC,CAAC;MACJ,CAAC,CAAC,OAAO8B,CAAC,EAAE;QACV,IAAI,CAACxD,YAAY,CAACyD,UAAU,CAACD,CAAC,CAAC,EAAE;UAC/B;UACA,MAAMA,CAAC;QACT;MACF;IAAC;EACH;EAEAE,kBAAkBA,CAACC,SAAyC,EAAQ;IAClE,IAAM;MAAEC,eAAe,EAAEC;IAAW,CAAC,GAAGF,SAAS;IAEjD,IAAM;MAAEC;IAAgB,CAAC,GAAG,IAAI,CAACnD,KAAK;IAEtC,IAAIoD,UAAU,KAAKD,eAAe,EAAE;MAClC,IAAI,CAACE,sBAAsB,CAAC,CAAC;IAC/B;EACF;EAEAC,oBAAoBA,CAAA,EAAS;IAC3B,IAAI,CAAC1C,OAAO,CAAC2C,MAAM,CAAC,CAAC;IAErB,IAAM;MAAExC,SAAS;MAAEE;IAAgB,CAAC,GAAG,IAAI,CAACJ,KAAK;IACjDE,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAEkB,KAAK,CAAC,CAAC;IAClBhB,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAEuC,OAAO,CAACC,KAAK,IAAIA,KAAK,CAACxB,KAAK,CAAC,CAAC,CAAC;EAClD;EAMA3B,mBAAmBA,CAAA,EAAS;IAC1BV,GAAG,CAAC8D,MAAM,CAAC,qBAAqB,CAAC;IAEjC,IAAM;MAAEP;IAAgB,CAAC,GAAG,IAAI,CAACnD,KAAK;IACtC,IAAM2D,kBAAkB,GAAAC,aAAA,KAAQT,eAAe,CAAE;IACjD;IACAQ,kBAAkB,CAACE,IAAI,GACrBV,eAAe,CAACU,IAAI,KAAK,MAAM,GAAG,WAAW,GAAG,MAAM;IACxD,IAAI,CAACC,UAAU,CAACH,kBAAkB,CAAC;EACrC;EAEAnD,gBAAgBA,CAAA,EAAS;IACvBZ,GAAG,CAAC8D,MAAM,CAAC,kBAAkB,CAAC;IAE9B,IAAM;MAAEP;IAAgB,CAAC,GAAG,IAAI,CAACnD,KAAK;IACtC,IAAM2D,kBAAkB,GAAAC,aAAA,KAAQT,eAAe,CAAE;IACjD;IACAQ,kBAAkB,CAACE,IAAI,GACrBV,eAAe,CAACU,IAAI,KAAK,QAAQ,GAAG,WAAW,GAAG,QAAQ;IAC5D,IAAI,CAACC,UAAU,CAACH,kBAAkB,CAAC;EACrC;;EAEA;AACF;AACA;AACA;AACA;EACQvD,qBAAqBA,CACzBF,KAAa,EACb6D,aAAsB,EACP;IAAA,IAAAC,MAAA;IAAA,OAAA5C,iBAAA;MACf,IAAM;QAAEX,KAAK;QAAE0C,eAAe,EAAEC;MAAW,CAAC,GAAGY,MAAI,CAAChE,KAAK;MAEzDJ,GAAG,CAACqE,KAAK,CAAC,uBAAuB,EAAE/D,KAAK,EAAE6D,aAAa,EAAEX,UAAU,CAAC;MAEpE,IAAMc,aAAa,GAAG,CAAC,GAAGd,UAAU,CAACe,UAAU,CAAC;MAChDD,aAAa,CAAChE,KAAK,CAAC,GAAG6D,aAAa;;MAEpC;MACA,IAAI7D,KAAK,KAAKO,KAAK,CAACiB,gBAAgB,CAAC0C,MAAM,GAAG,CAAC,EAAE;QAC/CJ,MAAI,CAACF,UAAU,CAAC;UAAEK,UAAU,EAAED,aAAa;UAAEL,IAAI,EAAE;QAAY,CAAC,CAAC;QACjE;MACF;MAEA,IAAM;QAAE9C;MAAU,CAAC,GAAGiD,MAAI,CAACnD,KAAK;MAChC;MACAxB,aAAa,CAAC0B,SAAS,CAAC;MACxB,IAAI;QACFiD,MAAI,CAAClB,QAAQ,CAAC;UAAEhC,SAAS,EAAE;QAAK,CAAC,CAAC;QAClC,IAAMkB,CAAC,SAASgC,MAAI,CAACpD,OAAO,CAACS,GAAG,CAACN,SAAS,CAACsD,IAAI,CAAC,CAAC,EAAEC,KAAK,IACtDA,KAAK,CAACrC,KAAK,CAAC,CACd,CAAC;;QAED;QACA,IAAMjB,gBAAgB,GAAGkD,aAAa,CACnC1B,KAAK,CAAC,CAAC,EAAEtC,KAAK,GAAG,CAAC,CAAC,CACnByB,GAAG,CAAC,CAAC4C,SAAS,EAAEjC,CAAC,KAAK;UACrB,IAAMkC,eAAe,GAAGxC,CAAC,CAACyC,OAAO,CAACnC,CAAC,CAAC;UACpC,OAAOkC,eAAe,CACnBE,MAAM,CAAC,CAAC,CACRC,EAAE,CACDX,MAAI,CAACtD,UAAU,CAACkE,kBAAkB,CAChCJ,eAAe,CAACK,IAAI,EACpBN,SACF,CACF,CAAC;QACL,CAAC,CAAC;QACJvC,CAAC,CAAC8C,WAAW,CAAC9D,gBAAgB,CAAC;QAC/BgB,CAAC,CAAC+C,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE/C,CAAC,CAACyC,OAAO,CAAC;QAC9B,IAAMO,IAAI,SAAShB,MAAI,CAACpD,OAAO,CAACS,GAAG,CAACW,CAAC,CAACiD,eAAe,CAAC,CAAC,CAAC;QACxD,IAAMC,SAA0B,GAAG;UACjCf,UAAU,EAAEnC,CAAC,CAACyC,OAAO,CAAC9C,GAAG,CAACC,MAAM,IAAIoD,IAAI,CAACG,IAAI,CAAC,CAAC,CAAC,CAACC,GAAG,CAACxD,MAAM,CAAC,CAAC;UAC7DiC,IAAI,EAAE;QACR,CAAC;QACD7B,CAAC,CAACC,KAAK,CAAC,CAAC;QACT+B,MAAI,CAACF,UAAU,CAACoB,SAAS,CAAC;MAC5B,CAAC,CAAC,OAAOnC,CAAC,EAAE;QACV,IAAI,CAACxD,YAAY,CAACyD,UAAU,CAACD,CAAC,CAAC,EAAE;UAC/BnD,GAAG,CAACyF,KAAK,CAAC,gCAAgC,EAAEtC,CAAC,CAAC;QAChD;MACF,CAAC,SAAS;QACRiB,MAAI,CAAClB,QAAQ,CAAC;UAAEhC,SAAS,EAAE;QAAM,CAAC,CAAC;MACrC;IAAC;EACH;EAEAgD,UAAUA,CAACX,eAAgC,EAAQ;IACjDvD,GAAG,CAAC8D,MAAM,CAAC,YAAY,EAAEP,eAAe,CAAC;IAEzC,IAAM;MAAEmC;IAAS,CAAC,GAAG,IAAI,CAACtF,KAAK;IAC/BsF,QAAQ,CAACnC,eAAe,CAAC;EAC3B;;EAEA;AACF;AACA;AACA;AACA;EACE9C,eAAeA,CAACH,KAAa,EAAEC,KAAc,EAAU;IACrD,IAAM;MAAEM;IAAM,CAAC,GAAG,IAAI,CAACT,KAAK;IAE5B,IAAIG,KAAK,IAAI,IAAI,IAAIA,KAAK,KAAK,EAAE,EAAE;MACjC,OAAO,EAAE;IACX;IACA,IAAMyB,MAAM,GAAGnB,KAAK,CAACiB,gBAAgB,CAACxB,KAAK,CAAC;IAC5C,IAAId,UAAU,CAACmG,UAAU,CAAC3D,MAAM,CAACiD,IAAI,CAAC,IAAI1E,KAAK,CAACqF,QAAQ,CAAC,CAAC,CAACpB,MAAM,GAAG,CAAC,EAAE;MACrE,OAAOqB,MAAM,CAACC,YAAY,CAACC,QAAQ,CAACxF,KAAK,CAACqF,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5D;IACA,OAAO/E,KAAK,CAACmF,aAAa,CAACzF,KAAK,EAAEyB,MAAM,CAACiD,IAAI,EAAEjD,MAAM,CAACiE,IAAI,CAAC;EAC7D;;EAEA;AACF;AACA;EACExC,sBAAsBA,CAAA,EAAS;IAC7B,IAAM;MAAEpC;IAAgB,CAAC,GAAG,IAAI,CAACJ,KAAK;IACtCxB,aAAa,CAAC4B,eAAe,CAAC;IAE9B,IAAM;MAAEkC;IAAgB,CAAC,GAAG,IAAI,CAACnD,KAAK;IACtC,IAAM;MAAE6D;IAAK,CAAC,GAAGV,eAAe;IAChCvD,GAAG,CAACqE,KAAK,CAAC,wBAAwB,EAAEd,eAAe,CAAC;IACpD,IAAIU,IAAI,KAAK,WAAW,EAAE;MACxB;MACA;MACA;IACF;IAEA,IAAM7C,gBAAgB,GAAG,IAAI,CAAC6B,mBAAmB,CAAC5B,eAAe,CAAC;IAClE,IAAI,CAAC6B,QAAQ,CAAC;MAAE9B;IAAiB,CAAC,CAAC;EACrC;EAEA6B,mBAAmBA,CAAC5B,eAAwB,EAAuB;IACjE,IAAM;MAAER,KAAK;MAAE0C;IAAgB,CAAC,GAAG,IAAI,CAACnD,KAAK;IAC7C,IAAM;MAAEmE;IAAW,CAAC,GAAGhB,eAAe;IACtCvD,GAAG,CAACqE,KAAK,CAAC,qBAAqB,EAAEd,eAAe,CAAC;IAEjD,IAAIgB,UAAU,CAACC,MAAM,KAAKnD,eAAe,CAACmD,MAAM,EAAE;MAChD,MAAM,IAAI0B,KAAK,2CAAAC,MAAA,CAC6B9E,eAAe,CAACmD,MAAM,2BAAA2B,MAAA,CAAwB5B,UAAU,CAACC,MAAM,CAC3G,CAAC;IACH;;IAEA;IACA,IAAMpD,gBAAqC,GAAG,EAAE;IAChD,KAAK,IAAIsB,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG6B,UAAU,CAACC,MAAM,EAAE9B,CAAC,IAAI,CAAC,EAAE;MAC7C,IAAIA,CAAC,KAAK,CAAC,EAAE;QACX;QACAtB,gBAAgB,CAACgF,IAAI,CAAC,EAAE,CAAC;MAC3B,CAAC,MAAM;QACL,IAAMC,cAAc,GAAGjF,gBAAgB,CAACsB,CAAC,GAAG,CAAC,CAAC;QAC9C,IAAM4D,iBAAiB,GAAG/B,UAAU,CAAC7B,CAAC,GAAG,CAAC,CAAC;QAC3C,IAAM6D,cAAc,GAAG1F,KAAK,CAACiB,gBAAgB,CAACY,CAAC,GAAG,CAAC,CAAC;QACpD,IAAM8D,eAAe,GAAG,CACtB,GAAGH,cAAc,EACjBE,cAAc,CACXzB,MAAM,CAAC,CAAC,CACRC,EAAE,CACD,IAAI,CAACjE,UAAU,CAACkE,kBAAkB,CAChCuB,cAAc,CAACtB,IAAI,EACnBqB,iBACF,CACF,CAAC,CACJ;QACDlF,gBAAgB,CAACgF,IAAI,CAACI,eAAe,CAAC;MACxC;IACF;IACA,OAAOpF,gBAAgB;EACzB;EAWAqF,MAAMA,CAAA,EAAgB;IACpB,IAAM;MAAE5F,KAAK;MAAE0C;IAAgB,CAAC,GAAG,IAAI,CAACnD,KAAK;IAC7C,IAAM;MAAEc,SAAS;MAAEE,gBAAgB;MAAEC;IAAgB,CAAC,GAAG,IAAI,CAACJ,KAAK;IAEnE,IAAM;MAAEgD,IAAI;MAAEM;IAAW,CAAC,GAAGhB,eAAe;IAE5C,IAAMmD,kBAAkB,GAAG7F,KAAK,CAACiB,gBAAgB,CAACC,GAAG,CAAC,CAACC,MAAM,EAAE1B,KAAK;MAAA,IAAAqG,qBAAA;MAAA,oBAClE5G,KAAA;QAAqC6G,SAAS,EAAC,iBAAiB;QAAAC,QAAA,gBAC9DhH,IAAA;UAAK+G,SAAS,EAAC,aAAa;UAAAC,QAAA,EAAE7E,MAAM,CAACiE;QAAI,CAAM,CAAC,eAChDpG,IAAA,CAACN,aAAa;UACZqH,SAAS,EAAC,kBAAkB;UAC5B/C,KAAK,EAAExC,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAGf,KAAK,CAAE;UAChC0B,MAAM,EAAEX,eAAe,aAAfA,eAAe,wBAAAsF,qBAAA,GAAftF,eAAe,CAAGf,KAAK,CAAC,cAAAqG,qBAAA,uBAAxBA,qBAAA,CAA0B9B,OAAO,CAACvE,KAAK,CAAE;UACjDwE,MAAM,EAAE1D,gBAAgB,aAAhBA,gBAAgB,uBAAhBA,gBAAgB,CAAGd,KAAK,CAAE;UAClCoF,QAAQ,EAAE,IAAI,CAACoB,uBAAuB,CAACxG,KAAK,CAAE;UAC9C6D,aAAa,EAAEF,IAAI,KAAK,WAAW,GAAGM,UAAU,CAACjE,KAAK,CAAC,GAAGyG,SAAU;UACpEC,QAAQ,EACL1G,KAAK,GAAG,CAAC,IAAIiD,eAAe,CAACU,IAAI,KAAK,WAAW,IAAK/C,SACxD;UACD+F,WAAW,EAAE,IAAI,CAACC,4BAA4B,CAAC5G,KAAK;QAAE,CACvD,CAAC,EACDO,KAAK,CAACiB,gBAAgB,CAAC0C,MAAM,GAAG,CAAC,KAAKlE,KAAK,iBAC1CT,IAAA,CAACZ,eAAe;UAACkI,IAAI,EAAEhI;QAAe,CAAE,CACzC;MAAA,eAAAgH,MAAA,CAhBmBnE,MAAM,CAACiE,IAAI,CAiB5B,CAAC;IAAA,CACP,CAAC;IACF,oBACElG,KAAA;MAAK6G,SAAS,EAAC,8BAA8B;MAAAC,QAAA,gBAC3ChH,IAAA;QAAK+G,SAAS,EAAC,YAAY;QAAAC,QAAA,EAAC;MAAiB,CAAK,CAAC,eACnD9G,KAAA;QAAK6G,SAAS,EAAC,wBAAwB;QAAAC,QAAA,gBACrChH,IAAA,CAACX,MAAM;UACL0H,SAAS,EAAC,QAAQ;UAClBQ,OAAO,EAAE,IAAI,CAAC1G,mBAAoB;UAClC2G,IAAI,EAAC,QAAQ;UACbC,OAAO,EAAC,oBAAoB;UAC5BH,IAAI,EAAE9H,KAAM;UACZkI,MAAM,EAAEhE,eAAe,CAACU,IAAI,KAAK,MAAO;UACxC+C,QAAQ,EAAE9F,SAAU;UAAA2F,QAAA,EACrB;QAED,CAAQ,CAAC,eACThH,IAAA,CAACX,MAAM;UACL0H,SAAS,EAAC,QAAQ;UAClBQ,OAAO,EAAE,IAAI,CAACxG,gBAAiB;UAC/ByG,IAAI,EAAC,QAAQ;UACbC,OAAO,EAAC,yCAAyC;UACjDH,IAAI,eAAEtH,IAAA,CAACZ,eAAe;YAACkI,IAAI,EAAE/H,OAAQ;YAACoI,QAAQ,EAAE;UAAG,CAAE,CAAE;UACvDD,MAAM,EAAEhE,eAAe,CAACU,IAAI,KAAK,QAAS;UAC1C+C,QAAQ,EAAE9F,SAAU;UAAA2F,QAAA,EACrB;QAED,CAAQ,CAAC;MAAA,CACN,CAAC,EACLH,kBAAkB;IAAA,CAChB,CAAC;EAEV;AACF;AAEA,eAAexG,yBAAyB"}
1
+ {"version":3,"file":"IrisGridPartitionSelector.js","names":["React","Component","memoizee","FontAwesomeIcon","Button","vsChevronRight","vsMerge","vsKey","Log","TableDropdown","TableUtils","assertNotNull","Pending","PromiseUtils","jsx","_jsx","jsxs","_jsxs","log","module","IrisGridPartitionSelector","constructor","props","_defineProperty","index","value","handlePartitionSelect","getDisplayValue","handleKeyTableClick","bind","handleMergeClick","model","tableUtils","dh","pending","state","isLoading","keysTable","partitionFilters","partitionTables","componentDidMount","_this","_asyncToGenerator","add","partitionKeysTable","then","keyTable","sorts","partitionColumns","map","column","sort","desc","applySort","t","close","Promise","all","_ref","_","i","selectDistinct","slice","_x","_x2","apply","arguments","getPartitionFilters","setState","e","isCanceled","componentDidUpdate","prevProps","partitionConfig","prevConfig","updatePartitionFilters","componentWillUnmount","cancel","forEach","table","debug2","newPartitionConfig","_objectSpread","mode","sendUpdate","selectedValue","_this2","debug","newPartitions","partitions","length","copy","tCopy","partition","partitionColumn","columns","filter","eq","makeFilterRawValue","type","applyFilter","setViewport","data","getViewportData","newConfig","rows","get","error","onChange","isCharType","toString","String","fromCharCode","parseInt","displayString","name","Error","concat","push","previousFilter","previousPartition","previousColumn","partitionFilter","render","partitionSelectors","_partitionTables$inde","className","children","getCachedChangeCallback","undefined","disabled","formatValue","getCachedFormatValueCallback","icon","onClick","kind","tooltip","active","rotation"],"sources":["../src/IrisGridPartitionSelector.tsx"],"sourcesContent":["import React, { Component } from 'react';\nimport memoizee from 'memoizee';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport { Button } from '@deephaven/components';\nimport { vsChevronRight, vsMerge, vsKey } from '@deephaven/icons';\nimport Log from '@deephaven/log';\nimport { TableDropdown } from '@deephaven/jsapi-components';\nimport type { dh } from '@deephaven/jsapi-types';\nimport { TableUtils } from '@deephaven/jsapi-utils';\nimport { assertNotNull, Pending, PromiseUtils } from '@deephaven/utils';\nimport './IrisGridPartitionSelector.scss';\nimport { PartitionConfig, PartitionedGridModel } from './PartitionedGridModel';\n\nconst log = Log.module('IrisGridPartitionSelector');\n\ninterface IrisGridPartitionSelectorProps {\n model: PartitionedGridModel;\n partitionConfig: PartitionConfig;\n onChange: (partitionConfig: PartitionConfig) => void;\n}\ninterface IrisGridPartitionSelectorState {\n isLoading: boolean;\n\n keysTable: dh.Table | null;\n\n partitionTables: dh.Table[] | null;\n\n /** The filters to apply to each partition table */\n partitionFilters: dh.FilterCondition[][] | null;\n}\nclass IrisGridPartitionSelector extends Component<\n IrisGridPartitionSelectorProps,\n IrisGridPartitionSelectorState\n> {\n constructor(props: IrisGridPartitionSelectorProps) {\n super(props);\n\n this.handleKeyTableClick = this.handleKeyTableClick.bind(this);\n this.handleMergeClick = this.handleMergeClick.bind(this);\n this.handlePartitionSelect = this.handlePartitionSelect.bind(this);\n\n const { model } = props;\n this.tableUtils = new TableUtils(model.dh);\n this.pending = new Pending();\n\n this.state = {\n // We start be loading the partition tables, so we should be in a loading state\n isLoading: true,\n\n keysTable: null,\n partitionFilters: null,\n partitionTables: null,\n };\n }\n\n async componentDidMount(): Promise<void> {\n const { model } = this.props;\n\n try {\n const keysTable = await this.pending.add(\n model.partitionKeysTable().then(keyTable => {\n const sorts = model.partitionColumns.map(column =>\n column.sort().desc()\n );\n keyTable.applySort(sorts);\n return keyTable;\n }),\n t => t.close()\n );\n\n const partitionTables = await Promise.all(\n model.partitionColumns.map(async (_, i) =>\n this.pending.add(\n keysTable.selectDistinct(model.partitionColumns.slice(0, i + 1)),\n t => t.close()\n )\n )\n );\n\n const partitionFilters = this.getPartitionFilters(partitionTables);\n this.setState({\n isLoading: false,\n keysTable,\n partitionFilters,\n partitionTables,\n });\n } catch (e) {\n if (!PromiseUtils.isCanceled(e)) {\n // Just re-throw the error if it's not a cancel\n throw e;\n }\n }\n }\n\n componentDidUpdate(prevProps: IrisGridPartitionSelectorProps): void {\n const { partitionConfig: prevConfig } = prevProps;\n\n const { partitionConfig } = this.props;\n\n if (prevConfig !== partitionConfig) {\n this.updatePartitionFilters();\n }\n }\n\n componentWillUnmount(): void {\n this.pending.cancel();\n\n const { keysTable, partitionTables } = this.state;\n keysTable?.close();\n partitionTables?.forEach(table => table.close());\n }\n\n pending: Pending;\n\n tableUtils: TableUtils;\n\n handleKeyTableClick(): void {\n log.debug2('handleKeyTableClick');\n\n const { partitionConfig } = this.props;\n const newPartitionConfig = { ...partitionConfig };\n // Toggle between Keys and Partition mode\n newPartitionConfig.mode =\n partitionConfig.mode === 'keys' ? 'partition' : 'keys';\n this.sendUpdate(newPartitionConfig);\n }\n\n handleMergeClick(): void {\n log.debug2('handleMergeClick');\n\n const { partitionConfig } = this.props;\n const newPartitionConfig = { ...partitionConfig };\n // Toggle between Merged and Partition mode\n newPartitionConfig.mode =\n partitionConfig.mode === 'merged' ? 'partition' : 'merged';\n this.sendUpdate(newPartitionConfig);\n }\n\n /**\n * Handles when a partition dropdown selection is changed. Will send an update with the new partition config\n * @param index Index of the partition column that was changed\n * @param selectedValue Selected value of the partition column\n */\n async handlePartitionSelect(\n index: number,\n selectedValue: unknown\n ): Promise<void> {\n const { model, partitionConfig: prevConfig } = this.props;\n\n log.debug('handlePartitionSelect', index, selectedValue, prevConfig);\n\n const newPartitions = [...prevConfig.partitions];\n newPartitions[index] = selectedValue;\n\n // If it's the last partition changed, we know it's already a valid value, just emit it\n if (index === model.partitionColumns.length - 1) {\n this.sendUpdate({ partitions: newPartitions, mode: 'partition' });\n return;\n }\n\n const { keysTable } = this.state;\n // Otherwise, we need to get the value from a filtered key table\n assertNotNull(keysTable);\n try {\n this.setState({ isLoading: true });\n const t = await this.pending.add(keysTable.copy(), tCopy =>\n tCopy.close()\n );\n\n // Apply our partition filters, and just get the first value\n const partitionFilters = newPartitions\n .slice(0, index + 1)\n .map((partition, i) => {\n const partitionColumn = t.columns[i];\n return partitionColumn\n .filter()\n .eq(\n this.tableUtils.makeFilterRawValue(\n partitionColumn.type,\n partition\n )\n );\n });\n t.applyFilter(partitionFilters);\n t.setViewport(0, 0, t.columns);\n const data = await this.pending.add(t.getViewportData());\n const newConfig: PartitionConfig = {\n partitions: t.columns.map(column => data.rows[0].get(column)),\n mode: 'partition',\n };\n t.close();\n this.sendUpdate(newConfig);\n } catch (e) {\n if (!PromiseUtils.isCanceled(e)) {\n log.error('Unable to get partition tables', e);\n }\n } finally {\n this.setState({ isLoading: false });\n }\n }\n\n sendUpdate(partitionConfig: PartitionConfig): void {\n log.debug2('sendUpdate', partitionConfig);\n\n const { onChange } = this.props;\n onChange(partitionConfig);\n }\n\n /**\n * Calls model.displayString with a special character case\n * @param index The index of the partition column to get the display value for\n * @param value The partition value to get the display value for\n */\n getDisplayValue(index: number, value: unknown): string {\n const { model } = this.props;\n\n if (value == null || value === '') {\n return '';\n }\n const column = model.partitionColumns[index];\n if (TableUtils.isCharType(column.type) && value.toString().length > 0) {\n return String.fromCharCode(parseInt(value.toString(), 10));\n }\n return model.displayString(value, column.type, column.name);\n }\n\n /**\n * Update the filters on the partition dropdown tables\n */\n updatePartitionFilters(): void {\n const { partitionTables } = this.state;\n assertNotNull(partitionTables);\n\n const { partitionConfig } = this.props;\n const { mode } = partitionConfig;\n log.debug('updatePartitionFilters', partitionConfig);\n if (mode !== 'partition') {\n // We only need to update the filters if the mode is `partitions`\n // In the other modes, we disable the dropdowns anyway\n return;\n }\n\n const partitionFilters = this.getPartitionFilters(partitionTables);\n this.setState({ partitionFilters });\n }\n\n getPartitionFilters(partitionTables: dh.Table[]): dh.FilterCondition[][] {\n const { model, partitionConfig } = this.props;\n const { partitions } = partitionConfig;\n log.debug('getPartitionFilters', partitionConfig);\n\n if (partitions.length !== partitionTables.length) {\n throw new Error(\n `Invalid partition config set. Expected ${partitionTables.length} partitions, but got ${partitions.length}`\n );\n }\n\n // The filters are applied in order, so we need to build up the filters for each partition\n const partitionFilters: dh.FilterCondition[][] = [];\n for (let i = 0; i < partitions.length; i += 1) {\n if (i === 0) {\n // There's no reason to ever filter the first table\n partitionFilters.push([]);\n } else {\n const previousFilter = partitionFilters[i - 1];\n const previousPartition = partitions[i - 1];\n const previousColumn = model.partitionColumns[i - 1];\n const partitionFilter = [\n ...previousFilter,\n previousColumn\n .filter()\n .eq(\n this.tableUtils.makeFilterRawValue(\n previousColumn.type,\n previousPartition\n )\n ),\n ];\n partitionFilters.push(partitionFilter);\n }\n }\n return partitionFilters;\n }\n\n getCachedChangeCallback = memoizee(\n (index: number) => (value: unknown) =>\n this.handlePartitionSelect(index, value)\n );\n\n getCachedFormatValueCallback = memoizee(\n (index: number) => (value: unknown) => this.getDisplayValue(index, value)\n );\n\n render(): JSX.Element {\n const { model, partitionConfig } = this.props;\n const { isLoading, partitionFilters, partitionTables } = this.state;\n\n const { mode, partitions } = partitionConfig;\n\n const partitionSelectors = model.partitionColumns.map((column, index) => (\n <div key={`selector-${column.name}`} className=\"column-selector\">\n <div className=\"column-name\">{column.name}</div>\n <TableDropdown\n className=\"custom-select-sm\"\n table={partitionTables?.[index]}\n column={partitionTables?.[index]?.columns[index]}\n filter={partitionFilters?.[index]}\n onChange={this.getCachedChangeCallback(index)}\n selectedValue={mode === 'partition' ? partitions[index] : undefined}\n disabled={\n (index > 0 && partitionConfig.mode !== 'partition') || isLoading\n }\n formatValue={this.getCachedFormatValueCallback(index)}\n />\n {model.partitionColumns.length - 1 === index || (\n <FontAwesomeIcon icon={vsChevronRight} />\n )}\n </div>\n ));\n return (\n <div className=\"iris-grid-partition-selector\">\n <div className=\"table-name\">Partitioned Table</div>\n <div className=\"partition-button-group\">\n <Button\n className=\"btn-sm\"\n onClick={this.handleKeyTableClick}\n kind=\"inline\"\n tooltip=\"View keys as table\"\n icon={vsKey}\n active={partitionConfig.mode === 'keys'}\n disabled={isLoading}\n >\n Keys\n </Button>\n <Button\n className=\"btn-sm\"\n onClick={this.handleMergeClick}\n kind=\"inline\"\n tooltip=\"View all partitions as one merged table\"\n icon={<FontAwesomeIcon icon={vsMerge} rotation={90} />}\n active={partitionConfig.mode === 'merged'}\n disabled={isLoading}\n >\n Merge\n </Button>\n </div>\n {partitionSelectors}\n </div>\n );\n }\n}\n\nexport default IrisGridPartitionSelector;\n"],"mappings":"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"}
@@ -1,25 +1,25 @@
1
- import type { Column, dh as DhType, PartitionedTable, Table } from '@deephaven/jsapi-types';
1
+ import type { dh as DhType } from '@deephaven/jsapi-types';
2
2
  import { Formatter } from '@deephaven/jsapi-utils';
3
3
  import { ColumnName } from './CommonTypes';
4
4
  import EmptyIrisGridModel from './EmptyIrisGridModel';
5
5
  import { PartitionedGridModelProvider } from './PartitionedGridModel';
6
6
  declare class IrisGridPartitionedTableModel extends EmptyIrisGridModel implements PartitionedGridModelProvider {
7
- readonly partitionedTable: PartitionedTable;
7
+ readonly partitionedTable: DhType.PartitionedTable;
8
8
  /**
9
9
  * @param dh JSAPI instance
10
10
  * @param table Partitioned table to be used in the model
11
11
  * @param formatter The formatter to use when getting formats
12
12
  */
13
- constructor(dh: DhType, partitionedTable: PartitionedTable, formatter?: Formatter);
13
+ constructor(dh: typeof DhType, partitionedTable: DhType.PartitionedTable, formatter?: Formatter);
14
14
  get isPartitionRequired(): boolean;
15
15
  get isReversible(): boolean;
16
16
  displayString(value: unknown, columnType: string, columnName?: ColumnName): string;
17
17
  close(): void;
18
- get columns(): readonly Column[];
19
- get partitionColumns(): readonly Column[];
20
- partitionKeysTable(): Promise<Table>;
21
- partitionMergedTable(): Promise<Table>;
22
- partitionTable(partitions: unknown[]): Promise<Table>;
18
+ get columns(): readonly DhType.Column[];
19
+ get partitionColumns(): readonly DhType.Column[];
20
+ partitionKeysTable(): Promise<DhType.Table>;
21
+ partitionMergedTable(): Promise<DhType.Table>;
22
+ partitionTable(partitions: unknown[]): Promise<DhType.Table>;
23
23
  }
24
24
  export default IrisGridPartitionedTableModel;
25
25
  //# sourceMappingURL=IrisGridPartitionedTableModel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IrisGridPartitionedTableModel.d.ts","sourceRoot":"","sources":["../src/IrisGridPartitionedTableModel.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,MAAM,EACN,EAAE,IAAI,MAAM,EACZ,gBAAgB,EAChB,KAAK,EACN,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AAItD,OAAO,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AAEtE,cAAM,6BACJ,SAAQ,kBACR,YAAW,4BAA4B;IAEvC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAE5C;;;;OAIG;gBAED,EAAE,EAAE,MAAM,EACV,gBAAgB,EAAE,gBAAgB,EAClC,SAAS,YAAoB;IAM/B,IAAI,mBAAmB,IAAI,OAAO,CAEjC;IAED,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED,aAAa,CACX,KAAK,EAAE,OAAO,EACd,UAAU,EAAE,MAAM,EAClB,UAAU,CAAC,EAAE,UAAU,GACtB,MAAM;IAIT,KAAK,IAAI,IAAI;IAIb,IAAI,OAAO,IAAI,SAAS,MAAM,EAAE,CAE/B;IAED,IAAI,gBAAgB,IAAI,SAAS,MAAM,EAAE,CAExC;IAEK,kBAAkB,IAAI,OAAO,CAAC,KAAK,CAAC;IAIpC,oBAAoB,IAAI,OAAO,CAAC,KAAK,CAAC;IAItC,cAAc,CAAC,UAAU,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC;CAgB5D;AAED,eAAe,6BAA6B,CAAC"}
1
+ {"version":3,"file":"IrisGridPartitionedTableModel.d.ts","sourceRoot":"","sources":["../src/IrisGridPartitionedTableModel.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AAItD,OAAO,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AAEtE,cAAM,6BACJ,SAAQ,kBACR,YAAW,4BAA4B;IAEvC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,CAAC;IAEnD;;;;OAIG;gBAED,EAAE,EAAE,OAAO,MAAM,EACjB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,EACzC,SAAS,YAAoB;IAM/B,IAAI,mBAAmB,IAAI,OAAO,CAEjC;IAED,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED,aAAa,CACX,KAAK,EAAE,OAAO,EACd,UAAU,EAAE,MAAM,EAClB,UAAU,CAAC,EAAE,UAAU,GACtB,MAAM;IAIT,KAAK,IAAI,IAAI;IAIb,IAAI,OAAO,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,CAEtC;IAED,IAAI,gBAAgB,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,CAE/C;IAEK,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;IAI3C,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;IAI7C,cAAc,CAAC,UAAU,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;CAgBnE;AAED,eAAe,6BAA6B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"IrisGridPartitionedTableModel.js","names":["Formatter","EmptyIrisGridModel","MissingPartitionError","isMissingPartitionError","IrisGridPartitionedTableModel","constructor","dh","partitionedTable","formatter","arguments","length","undefined","_defineProperty","isPartitionRequired","isReversible","displayString","value","columnType","columnName","close","columns","partitionColumns","keyColumns","partitionKeysTable","_this","_asyncToGenerator","getKeyTable","partitionMergedTable","_this2","getMergedTable","partitionTable","partitions","_this3","table","getTable","e"],"sources":["../src/IrisGridPartitionedTableModel.ts"],"sourcesContent":["/* eslint class-methods-use-this: \"off\" */\nimport type {\n Column,\n dh as DhType,\n PartitionedTable,\n Table,\n} from '@deephaven/jsapi-types';\nimport { Formatter } from '@deephaven/jsapi-utils';\nimport { ColumnName } from './CommonTypes';\nimport EmptyIrisGridModel from './EmptyIrisGridModel';\nimport MissingPartitionError, {\n isMissingPartitionError,\n} from './MissingPartitionError';\nimport { PartitionedGridModelProvider } from './PartitionedGridModel';\n\nclass IrisGridPartitionedTableModel\n extends EmptyIrisGridModel\n implements PartitionedGridModelProvider\n{\n readonly partitionedTable: PartitionedTable;\n\n /**\n * @param dh JSAPI instance\n * @param table Partitioned table to be used in the model\n * @param formatter The formatter to use when getting formats\n */\n constructor(\n dh: DhType,\n partitionedTable: PartitionedTable,\n formatter = new Formatter(dh)\n ) {\n super(dh, formatter);\n this.partitionedTable = partitionedTable;\n }\n\n get isPartitionRequired(): boolean {\n return true;\n }\n\n get isReversible(): boolean {\n return false;\n }\n\n displayString(\n value: unknown,\n columnType: string,\n columnName?: ColumnName\n ): string {\n return '';\n }\n\n close(): void {\n this.partitionedTable.close();\n }\n\n get columns(): readonly Column[] {\n return this.partitionedTable.columns;\n }\n\n get partitionColumns(): readonly Column[] {\n return this.partitionedTable.keyColumns;\n }\n\n async partitionKeysTable(): Promise<Table> {\n return this.partitionedTable.getKeyTable();\n }\n\n async partitionMergedTable(): Promise<Table> {\n return this.partitionedTable.getMergedTable();\n }\n\n async partitionTable(partitions: unknown[]): Promise<Table> {\n try {\n const table = await this.partitionedTable.getTable(partitions);\n if (table == null) {\n // TODO: Will be unnecessary with https://github.com/deephaven/deephaven-core/pull/5050\n throw new MissingPartitionError('Partition not found');\n }\n return table;\n } catch (e) {\n if (!isMissingPartitionError(e)) {\n throw new MissingPartitionError('Unable to retrieve partition');\n } else {\n throw e;\n }\n }\n }\n}\n\nexport default IrisGridPartitionedTableModel;\n"],"mappings":";;;;;AAAA;;AAOA,SAASA,SAAS,QAAQ,wBAAwB;AAAC,OAE5CC,kBAAkB;AAAA,OAClBC,qBAAqB,IAC1BC,uBAAuB;AAIzB,MAAMC,6BAA6B,SACzBH,kBAAkB,CAE5B;EAGE;AACF;AACA;AACA;AACA;EACEI,WAAWA,CACTC,EAAU,EACVC,gBAAkC,EAElC;IAAA,IADAC,SAAS,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAIT,SAAS,CAACM,EAAE,CAAC;IAE7B,KAAK,CAACA,EAAE,EAAEE,SAAS,CAAC;IAACI,eAAA;IACrB,IAAI,CAACL,gBAAgB,GAAGA,gBAAgB;EAC1C;EAEA,IAAIM,mBAAmBA,CAAA,EAAY;IACjC,OAAO,IAAI;EACb;EAEA,IAAIC,YAAYA,CAAA,EAAY;IAC1B,OAAO,KAAK;EACd;EAEAC,aAAaA,CACXC,KAAc,EACdC,UAAkB,EAClBC,UAAuB,EACf;IACR,OAAO,EAAE;EACX;EAEAC,KAAKA,CAAA,EAAS;IACZ,IAAI,CAACZ,gBAAgB,CAACY,KAAK,CAAC,CAAC;EAC/B;EAEA,IAAIC,OAAOA,CAAA,EAAsB;IAC/B,OAAO,IAAI,CAACb,gBAAgB,CAACa,OAAO;EACtC;EAEA,IAAIC,gBAAgBA,CAAA,EAAsB;IACxC,OAAO,IAAI,CAACd,gBAAgB,CAACe,UAAU;EACzC;EAEMC,kBAAkBA,CAAA,EAAmB;IAAA,IAAAC,KAAA;IAAA,OAAAC,iBAAA;MACzC,OAAOD,KAAI,CAACjB,gBAAgB,CAACmB,WAAW,CAAC,CAAC;IAAC;EAC7C;EAEMC,oBAAoBA,CAAA,EAAmB;IAAA,IAAAC,MAAA;IAAA,OAAAH,iBAAA;MAC3C,OAAOG,MAAI,CAACrB,gBAAgB,CAACsB,cAAc,CAAC,CAAC;IAAC;EAChD;EAEMC,cAAcA,CAACC,UAAqB,EAAkB;IAAA,IAAAC,MAAA;IAAA,OAAAP,iBAAA;MAC1D,IAAI;QACF,IAAMQ,KAAK,SAASD,MAAI,CAACzB,gBAAgB,CAAC2B,QAAQ,CAACH,UAAU,CAAC;QAC9D,IAAIE,KAAK,IAAI,IAAI,EAAE;UACjB;UACA,MAAM,IAAI/B,qBAAqB,CAAC,qBAAqB,CAAC;QACxD;QACA,OAAO+B,KAAK;MACd,CAAC,CAAC,OAAOE,CAAC,EAAE;QACV,IAAI,CAAChC,uBAAuB,CAACgC,CAAC,CAAC,EAAE;UAC/B,MAAM,IAAIjC,qBAAqB,CAAC,8BAA8B,CAAC;QACjE,CAAC,MAAM;UACL,MAAMiC,CAAC;QACT;MACF;IAAC;EACH;AACF;AAEA,eAAe/B,6BAA6B"}
1
+ {"version":3,"file":"IrisGridPartitionedTableModel.js","names":["Formatter","EmptyIrisGridModel","MissingPartitionError","isMissingPartitionError","IrisGridPartitionedTableModel","constructor","dh","partitionedTable","formatter","arguments","length","undefined","_defineProperty","isPartitionRequired","isReversible","displayString","value","columnType","columnName","close","columns","partitionColumns","keyColumns","partitionKeysTable","_this","_asyncToGenerator","getKeyTable","partitionMergedTable","_this2","getMergedTable","partitionTable","partitions","_this3","table","getTable","e"],"sources":["../src/IrisGridPartitionedTableModel.ts"],"sourcesContent":["/* eslint class-methods-use-this: \"off\" */\nimport type { dh as DhType } from '@deephaven/jsapi-types';\nimport { Formatter } from '@deephaven/jsapi-utils';\nimport { ColumnName } from './CommonTypes';\nimport EmptyIrisGridModel from './EmptyIrisGridModel';\nimport MissingPartitionError, {\n isMissingPartitionError,\n} from './MissingPartitionError';\nimport { PartitionedGridModelProvider } from './PartitionedGridModel';\n\nclass IrisGridPartitionedTableModel\n extends EmptyIrisGridModel\n implements PartitionedGridModelProvider\n{\n readonly partitionedTable: DhType.PartitionedTable;\n\n /**\n * @param dh JSAPI instance\n * @param table Partitioned table to be used in the model\n * @param formatter The formatter to use when getting formats\n */\n constructor(\n dh: typeof DhType,\n partitionedTable: DhType.PartitionedTable,\n formatter = new Formatter(dh)\n ) {\n super(dh, formatter);\n this.partitionedTable = partitionedTable;\n }\n\n get isPartitionRequired(): boolean {\n return true;\n }\n\n get isReversible(): boolean {\n return false;\n }\n\n displayString(\n value: unknown,\n columnType: string,\n columnName?: ColumnName\n ): string {\n return '';\n }\n\n close(): void {\n this.partitionedTable.close();\n }\n\n get columns(): readonly DhType.Column[] {\n return this.partitionedTable.columns;\n }\n\n get partitionColumns(): readonly DhType.Column[] {\n return this.partitionedTable.keyColumns;\n }\n\n async partitionKeysTable(): Promise<DhType.Table> {\n return this.partitionedTable.getKeyTable();\n }\n\n async partitionMergedTable(): Promise<DhType.Table> {\n return this.partitionedTable.getMergedTable();\n }\n\n async partitionTable(partitions: unknown[]): Promise<DhType.Table> {\n try {\n const table = await this.partitionedTable.getTable(partitions);\n if (table == null) {\n // TODO: Will be unnecessary with https://github.com/deephaven/deephaven-core/pull/5050\n throw new MissingPartitionError('Partition not found');\n }\n return table;\n } catch (e) {\n if (!isMissingPartitionError(e)) {\n throw new MissingPartitionError('Unable to retrieve partition');\n } else {\n throw e;\n }\n }\n }\n}\n\nexport default IrisGridPartitionedTableModel;\n"],"mappings":";;;;;AAAA;;AAEA,SAASA,SAAS,QAAQ,wBAAwB;AAAC,OAE5CC,kBAAkB;AAAA,OAClBC,qBAAqB,IAC1BC,uBAAuB;AAIzB,MAAMC,6BAA6B,SACzBH,kBAAkB,CAE5B;EAGE;AACF;AACA;AACA;AACA;EACEI,WAAWA,CACTC,EAAiB,EACjBC,gBAAyC,EAEzC;IAAA,IADAC,SAAS,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAIT,SAAS,CAACM,EAAE,CAAC;IAE7B,KAAK,CAACA,EAAE,EAAEE,SAAS,CAAC;IAACI,eAAA;IACrB,IAAI,CAACL,gBAAgB,GAAGA,gBAAgB;EAC1C;EAEA,IAAIM,mBAAmBA,CAAA,EAAY;IACjC,OAAO,IAAI;EACb;EAEA,IAAIC,YAAYA,CAAA,EAAY;IAC1B,OAAO,KAAK;EACd;EAEAC,aAAaA,CACXC,KAAc,EACdC,UAAkB,EAClBC,UAAuB,EACf;IACR,OAAO,EAAE;EACX;EAEAC,KAAKA,CAAA,EAAS;IACZ,IAAI,CAACZ,gBAAgB,CAACY,KAAK,CAAC,CAAC;EAC/B;EAEA,IAAIC,OAAOA,CAAA,EAA6B;IACtC,OAAO,IAAI,CAACb,gBAAgB,CAACa,OAAO;EACtC;EAEA,IAAIC,gBAAgBA,CAAA,EAA6B;IAC/C,OAAO,IAAI,CAACd,gBAAgB,CAACe,UAAU;EACzC;EAEMC,kBAAkBA,CAAA,EAA0B;IAAA,IAAAC,KAAA;IAAA,OAAAC,iBAAA;MAChD,OAAOD,KAAI,CAACjB,gBAAgB,CAACmB,WAAW,CAAC,CAAC;IAAC;EAC7C;EAEMC,oBAAoBA,CAAA,EAA0B;IAAA,IAAAC,MAAA;IAAA,OAAAH,iBAAA;MAClD,OAAOG,MAAI,CAACrB,gBAAgB,CAACsB,cAAc,CAAC,CAAC;IAAC;EAChD;EAEMC,cAAcA,CAACC,UAAqB,EAAyB;IAAA,IAAAC,MAAA;IAAA,OAAAP,iBAAA;MACjE,IAAI;QACF,IAAMQ,KAAK,SAASD,MAAI,CAACzB,gBAAgB,CAAC2B,QAAQ,CAACH,UAAU,CAAC;QAC9D,IAAIE,KAAK,IAAI,IAAI,EAAE;UACjB;UACA,MAAM,IAAI/B,qBAAqB,CAAC,qBAAqB,CAAC;QACxD;QACA,OAAO+B,KAAK;MACd,CAAC,CAAC,OAAOE,CAAC,EAAE;QACV,IAAI,CAAChC,uBAAuB,CAACgC,CAAC,CAAC,EAAE;UAC/B,MAAM,IAAIjC,qBAAqB,CAAC,8BAA8B,CAAC;QACjE,CAAC,MAAM;UACL,MAAMiC,CAAC;QACT;MACF;IAAC;EACH;AACF;AAEA,eAAe/B,6BAA6B"}
@@ -1,6 +1,6 @@
1
1
  import { Formatter } from '@deephaven/jsapi-utils';
2
2
  import { CancelablePromise } from '@deephaven/utils';
3
- import type { Column, ColumnStatistics, CustomColumn, dh as DhType, FilterCondition, InputTable, LayoutHints, RollupConfig, Sort, Table, TreeTable, PartitionedTable, ValueTypeUnion } from '@deephaven/jsapi-types';
3
+ import type { dh as DhType } from '@deephaven/jsapi-types';
4
4
  import { EditableGridModel, ModelIndex, MoveOperation } from '@deephaven/grid';
5
5
  import IrisGridTableModel from './IrisGridTableModel';
6
6
  import IrisGridTreeTableModel from './IrisGridTreeTableModel';
@@ -19,19 +19,19 @@ declare class IrisGridProxyModel extends IrisGridModel implements PartitionedGri
19
19
  * @param formatter The formatter to use when getting formats
20
20
  * @param inputTable Iris input table associated with this table
21
21
  */
22
- dh: DhType;
22
+ dh: typeof DhType;
23
23
  originalModel: IrisGridModel;
24
24
  model: IrisGridModel;
25
25
  modelPromise: CancelablePromise<IrisGridModel> | null;
26
- rollup: RollupConfig | null;
26
+ rollup: DhType.RollupConfig | null;
27
27
  partition: PartitionConfig | null;
28
28
  selectDistinct: ColumnName[];
29
29
  currentViewport?: {
30
30
  top: number;
31
31
  bottom: number;
32
- columns?: Column[];
32
+ columns?: DhType.Column[];
33
33
  };
34
- constructor(dh: DhType, table: Table | TreeTable | PartitionedTable, formatter?: Formatter, inputTable?: InputTable | null);
34
+ constructor(dh: typeof DhType, table: DhType.Table | DhType.TreeTable | DhType.PartitionedTable, formatter?: Formatter, inputTable?: DhType.InputTable | null);
35
35
  close(): void;
36
36
  handleModelEvent(event: CustomEvent): void;
37
37
  setModel(model: IrisGridModel): void;
@@ -77,10 +77,10 @@ declare class IrisGridProxyModel extends IrisGridModel implements PartitionedGri
77
77
  get isSelectDistinctAvailable(): boolean;
78
78
  get isTotalsAvailable(): boolean;
79
79
  get isReversible(): boolean;
80
- get columns(): readonly Column[];
80
+ get columns(): readonly DhType.Column[];
81
81
  get initialMovedColumns(): readonly MoveOperation[];
82
82
  get initialMovedRows(): readonly MoveOperation[];
83
- get layoutHints(): LayoutHints | null;
83
+ get layoutHints(): DhType.LayoutHints | null | undefined;
84
84
  get frontColumns(): readonly ColumnName[];
85
85
  get backColumns(): readonly ColumnName[];
86
86
  get frozenColumns(): readonly ColumnName[];
@@ -92,9 +92,9 @@ declare class IrisGridProxyModel extends IrisGridModel implements PartitionedGri
92
92
  get columnHeaderGroupMap(): ReadonlyMap<string, ColumnHeaderGroup>;
93
93
  get columnHeaderMaxDepth(): number;
94
94
  updateFrozenColumns(columns: readonly ColumnName[]): void;
95
- get originalColumns(): readonly Column[];
96
- get groupedColumns(): readonly Column[];
97
- get partitionColumns(): readonly Column[];
95
+ get originalColumns(): readonly DhType.Column[];
96
+ get groupedColumns(): readonly DhType.Column[];
97
+ get partitionColumns(): readonly DhType.Column[];
98
98
  sourceForCell: IrisGridModel['sourceForCell'];
99
99
  getClearFilterRange: IrisGridModel['getClearFilterRange'];
100
100
  get description(): string;
@@ -102,27 +102,27 @@ declare class IrisGridProxyModel extends IrisGridModel implements PartitionedGri
102
102
  valueForCell: IrisGridModel['valueForCell'];
103
103
  renderTypeForCell: IrisGridModel['renderTypeForCell'];
104
104
  dataBarOptionsForCell: IrisGridModel['dataBarOptionsForCell'];
105
- get filter(): readonly FilterCondition[];
106
- set filter(filter: readonly FilterCondition[]);
105
+ get filter(): readonly DhType.FilterCondition[];
106
+ set filter(filter: readonly DhType.FilterCondition[]);
107
107
  get partitionConfig(): PartitionConfig | null;
108
108
  set partitionConfig(partitionConfig: PartitionConfig | null);
109
- partitionKeysTable(): Promise<Table>;
110
- partitionMergedTable(): Promise<Table>;
111
- partitionTable(partitions: unknown[]): Promise<Table>;
109
+ partitionKeysTable(): Promise<DhType.Table>;
110
+ partitionMergedTable(): Promise<DhType.Table>;
111
+ partitionTable(partitions: unknown[]): Promise<DhType.Table>;
112
112
  get formatter(): Formatter;
113
113
  set formatter(formatter: Formatter);
114
114
  displayString: IrisGridModel['displayString'];
115
- get sort(): readonly Sort[];
116
- set sort(sort: readonly Sort[]);
115
+ get sort(): readonly DhType.Sort[];
116
+ set sort(sort: readonly DhType.Sort[]);
117
117
  get customColumns(): readonly ColumnName[];
118
118
  set customColumns(customColumns: readonly ColumnName[]);
119
- get formatColumns(): readonly CustomColumn[];
120
- set formatColumns(formatColumns: readonly CustomColumn[]);
121
- get rollupConfig(): RollupConfig | null;
122
- set rollupConfig(rollupConfig: RollupConfig | null);
119
+ get formatColumns(): readonly DhType.CustomColumn[];
120
+ set formatColumns(formatColumns: readonly DhType.CustomColumn[]);
121
+ get rollupConfig(): DhType.RollupConfig | null;
122
+ set rollupConfig(rollupConfig: DhType.RollupConfig | null);
123
123
  get selectDistinctColumns(): ColumnName[];
124
124
  set selectDistinctColumns(columnNames: string[]);
125
- get table(): Table | TreeTable | undefined;
125
+ get table(): DhType.Table | DhType.TreeTable | undefined;
126
126
  get totalsConfig(): UITotalsTableConfig | null;
127
127
  set totalsConfig(totalsConfig: UITotalsTableConfig | null);
128
128
  get isFilterRequired(): boolean;
@@ -130,12 +130,12 @@ declare class IrisGridProxyModel extends IrisGridModel implements PartitionedGri
130
130
  get isEditable(): boolean;
131
131
  isEditableRange: IrisGridTableModel['isEditableRange'];
132
132
  isFilterable: IrisGridTableModel['isFilterable'];
133
- setViewport: (top: number, bottom: number, columns?: Column[]) => void;
133
+ setViewport: (top: number, bottom: number, columns?: DhType.Column[]) => void;
134
134
  snapshot: IrisGridModel['snapshot'];
135
135
  textSnapshot: IrisGridTableModel['textSnapshot'];
136
- export(): Promise<Table>;
136
+ export(): Promise<DhType.Table>;
137
137
  valuesTable: IrisGridTableModel['valuesTable'];
138
- columnStatistics(column: Column): Promise<ColumnStatistics>;
138
+ columnStatistics(column: DhType.Column): Promise<DhType.ColumnStatistics>;
139
139
  editValueForCell: IrisGridTableModel['editValueForCell'];
140
140
  setValueForCell: IrisGridTableModel['setValueForCell'];
141
141
  setValueForRanges: IrisGridTableModel['setValueForRanges'];
@@ -149,7 +149,7 @@ declare class IrisGridProxyModel extends IrisGridModel implements PartitionedGri
149
149
  get pendingDataErrors(): PendingDataErrorMap;
150
150
  commitPending: IrisGridTableModel['commitPending'];
151
151
  getColumnIndexByName(name: ColumnName): number | undefined;
152
- seekRow(startRow: number, column: Column, valueType: ValueTypeUnion, value: unknown, insensitive?: boolean, contains?: boolean, isBackwards?: boolean): Promise<number>;
152
+ seekRow(startRow: number, column: DhType.Column, valueType: DhType.ValueTypeType, value: unknown, insensitive?: boolean, contains?: boolean, isBackwards?: boolean): Promise<number>;
153
153
  get isSeekRowAvailable(): boolean;
154
154
  }
155
155
  export default IrisGridProxyModel;
@@ -1 +1 @@
1
- {"version":3,"file":"IrisGridProxyModel.d.ts","sourceRoot":"","sources":["../src/IrisGridProxyModel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IrisGridProxyModel.d.ts","sourceRoot":"","sources":["../src/IrisGridProxyModel.ts"],"names":[],"mappings":"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"}