@deephaven/iris-grid 0.38.1-beta.5 → 0.38.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 (177) hide show
  1. package/README.md +2 -4
  2. package/dist/AdvancedFilterCreator.d.ts +2 -3
  3. package/dist/AdvancedFilterCreator.d.ts.map +1 -1
  4. package/dist/AdvancedFilterCreator.js +4 -8
  5. package/dist/AdvancedFilterCreator.js.map +1 -1
  6. package/dist/AdvancedFilterCreatorFilterItem.d.ts +3 -4
  7. package/dist/AdvancedFilterCreatorFilterItem.d.ts.map +1 -1
  8. package/dist/AdvancedFilterCreatorFilterItem.js +4 -5
  9. package/dist/AdvancedFilterCreatorFilterItem.js.map +1 -1
  10. package/dist/AdvancedFilterCreatorSelectValue.d.ts +2 -4
  11. package/dist/AdvancedFilterCreatorSelectValue.d.ts.map +1 -1
  12. package/dist/AdvancedFilterCreatorSelectValue.js +3 -11
  13. package/dist/AdvancedFilterCreatorSelectValue.js.map +1 -1
  14. package/dist/AdvancedFilterCreatorSelectValueList.d.ts +1 -3
  15. package/dist/AdvancedFilterCreatorSelectValueList.d.ts.map +1 -1
  16. package/dist/AdvancedFilterCreatorSelectValueList.js +5 -7
  17. package/dist/AdvancedFilterCreatorSelectValueList.js.map +1 -1
  18. package/dist/ColumnStatistics.d.ts +1 -1
  19. package/dist/ColumnStatistics.d.ts.map +1 -1
  20. package/dist/ColumnStatistics.js.map +1 -1
  21. package/dist/CommonTypes.d.ts +1 -1
  22. package/dist/CommonTypes.d.ts.map +1 -1
  23. package/dist/CommonTypes.js.map +1 -1
  24. package/dist/CrossColumnSearch.d.ts +2 -2
  25. package/dist/CrossColumnSearch.d.ts.map +1 -1
  26. package/dist/CrossColumnSearch.js +2 -1
  27. package/dist/CrossColumnSearch.js.map +1 -1
  28. package/dist/GotoRow.d.ts +1 -3
  29. package/dist/GotoRow.d.ts.map +1 -1
  30. package/dist/GotoRow.js +0 -1
  31. package/dist/GotoRow.js.map +1 -1
  32. package/dist/IrisGrid.css +0 -3
  33. package/dist/IrisGrid.css.map +1 -1
  34. package/dist/IrisGrid.d.ts +6 -8
  35. package/dist/IrisGrid.d.ts.map +1 -1
  36. package/dist/IrisGrid.js +33 -46
  37. package/dist/IrisGrid.js.map +1 -1
  38. package/dist/IrisGridCopyHandler.js.map +1 -1
  39. package/dist/IrisGridMetricCalculator.d.ts +1 -1
  40. package/dist/IrisGridMetricCalculator.d.ts.map +1 -1
  41. package/dist/IrisGridMetricCalculator.js.map +1 -1
  42. package/dist/IrisGridModel.d.ts +1 -1
  43. package/dist/IrisGridModel.d.ts.map +1 -1
  44. package/dist/IrisGridModel.js.map +1 -1
  45. package/dist/IrisGridModelFactory.d.ts +2 -2
  46. package/dist/IrisGridModelFactory.d.ts.map +1 -1
  47. package/dist/IrisGridModelFactory.js +3 -3
  48. package/dist/IrisGridModelFactory.js.map +1 -1
  49. package/dist/IrisGridModelUpdater.d.ts +2 -3
  50. package/dist/IrisGridModelUpdater.d.ts.map +1 -1
  51. package/dist/IrisGridModelUpdater.js +2 -2
  52. package/dist/IrisGridModelUpdater.js.map +1 -1
  53. package/dist/IrisGridPartitionSelector.d.ts +1 -2
  54. package/dist/IrisGridPartitionSelector.d.ts.map +1 -1
  55. package/dist/IrisGridPartitionSelector.js +0 -2
  56. package/dist/IrisGridPartitionSelector.js.map +1 -1
  57. package/dist/IrisGridProxyModel.d.ts +2 -3
  58. package/dist/IrisGridProxyModel.d.ts.map +1 -1
  59. package/dist/IrisGridProxyModel.js +9 -11
  60. package/dist/IrisGridProxyModel.js.map +1 -1
  61. package/dist/IrisGridRenderer.d.ts +27 -19
  62. package/dist/IrisGridRenderer.d.ts.map +1 -1
  63. package/dist/IrisGridRenderer.js +205 -64
  64. package/dist/IrisGridRenderer.js.map +1 -1
  65. package/dist/IrisGridTableModel.d.ts +2 -2
  66. package/dist/IrisGridTableModel.d.ts.map +1 -1
  67. package/dist/IrisGridTableModel.js +6 -6
  68. package/dist/IrisGridTableModel.js.map +1 -1
  69. package/dist/IrisGridTableModelTemplate.d.ts +3 -8
  70. package/dist/IrisGridTableModelTemplate.d.ts.map +1 -1
  71. package/dist/IrisGridTableModelTemplate.js +15 -36
  72. package/dist/IrisGridTableModelTemplate.js.map +1 -1
  73. package/dist/IrisGridTestUtils.d.ts +3 -2
  74. package/dist/IrisGridTestUtils.d.ts.map +1 -1
  75. package/dist/IrisGridTestUtils.js +6 -5
  76. package/dist/IrisGridTestUtils.js.map +1 -1
  77. package/dist/IrisGridTheme.d.ts.map +1 -1
  78. package/dist/IrisGridTheme.js +1 -4
  79. package/dist/IrisGridTheme.js.map +1 -1
  80. package/dist/IrisGridTheme.module.css +0 -3
  81. package/dist/IrisGridTheme.module.css.map +1 -1
  82. package/dist/IrisGridTreeTableModel.d.ts +1 -1
  83. package/dist/IrisGridTreeTableModel.d.ts.map +1 -1
  84. package/dist/IrisGridTreeTableModel.js.map +1 -1
  85. package/dist/IrisGridUtils.d.ts +85 -88
  86. package/dist/IrisGridUtils.d.ts.map +1 -1
  87. package/dist/IrisGridUtils.js +558 -569
  88. package/dist/IrisGridUtils.js.map +1 -1
  89. package/dist/PartitionSelectorSearch.d.ts +1 -2
  90. package/dist/PartitionSelectorSearch.d.ts.map +1 -1
  91. package/dist/PartitionSelectorSearch.js +1 -3
  92. package/dist/PartitionSelectorSearch.js.map +1 -1
  93. package/dist/TableViewportUpdater.d.ts +1 -1
  94. package/dist/TableViewportUpdater.d.ts.map +1 -1
  95. package/dist/TableViewportUpdater.js.map +1 -1
  96. package/dist/TreeTableViewportUpdater.d.ts +1 -2
  97. package/dist/TreeTableViewportUpdater.d.ts.map +1 -1
  98. package/dist/TreeTableViewportUpdater.js +1 -1
  99. package/dist/TreeTableViewportUpdater.js.map +1 -1
  100. package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.js.map +1 -1
  101. package/dist/mousehandlers/IrisGridContextMenuHandler.d.ts +9 -10
  102. package/dist/mousehandlers/IrisGridContextMenuHandler.d.ts.map +1 -1
  103. package/dist/mousehandlers/IrisGridContextMenuHandler.js +28 -41
  104. package/dist/mousehandlers/IrisGridContextMenuHandler.js.map +1 -1
  105. package/dist/mousehandlers/IrisGridTokenMouseHandler.d.ts.map +1 -1
  106. package/dist/mousehandlers/IrisGridTokenMouseHandler.js +3 -18
  107. package/dist/mousehandlers/IrisGridTokenMouseHandler.js.map +1 -1
  108. package/dist/sidebar/ChartBuilder.d.ts +11 -12
  109. package/dist/sidebar/ChartBuilder.d.ts.map +1 -1
  110. package/dist/sidebar/ChartBuilder.js +81 -98
  111. package/dist/sidebar/ChartBuilder.js.map +1 -1
  112. package/dist/sidebar/RollupRows.d.ts +1 -1
  113. package/dist/sidebar/RollupRows.d.ts.map +1 -1
  114. package/dist/sidebar/RollupRows.js.map +1 -1
  115. package/dist/sidebar/SelectDistinctBuilder.d.ts +1 -1
  116. package/dist/sidebar/SelectDistinctBuilder.d.ts.map +1 -1
  117. package/dist/sidebar/SelectDistinctBuilder.js.map +1 -1
  118. package/dist/sidebar/TableCsvExporter.d.ts +2 -3
  119. package/dist/sidebar/TableCsvExporter.d.ts.map +1 -1
  120. package/dist/sidebar/TableCsvExporter.js +3 -3
  121. package/dist/sidebar/TableCsvExporter.js.map +1 -1
  122. package/dist/sidebar/TableSaver.d.ts +1 -2
  123. package/dist/sidebar/TableSaver.d.ts.map +1 -1
  124. package/dist/sidebar/TableSaver.js +1 -4
  125. package/dist/sidebar/TableSaver.js.map +1 -1
  126. package/dist/sidebar/aggregations/AggregationEdit.d.ts +1 -1
  127. package/dist/sidebar/aggregations/AggregationEdit.d.ts.map +1 -1
  128. package/dist/sidebar/aggregations/AggregationEdit.js.map +1 -1
  129. package/dist/sidebar/aggregations/AggregationUtils.d.ts +1 -1
  130. package/dist/sidebar/aggregations/AggregationUtils.d.ts.map +1 -1
  131. package/dist/sidebar/aggregations/AggregationUtils.js.map +1 -1
  132. package/dist/sidebar/conditional-formatting/ColumnFormatEditor.d.ts +0 -2
  133. package/dist/sidebar/conditional-formatting/ColumnFormatEditor.d.ts.map +1 -1
  134. package/dist/sidebar/conditional-formatting/ColumnFormatEditor.js +0 -2
  135. package/dist/sidebar/conditional-formatting/ColumnFormatEditor.js.map +1 -1
  136. package/dist/sidebar/conditional-formatting/ConditionEditor.d.ts +0 -2
  137. package/dist/sidebar/conditional-formatting/ConditionEditor.d.ts.map +1 -1
  138. package/dist/sidebar/conditional-formatting/ConditionEditor.js +2 -3
  139. package/dist/sidebar/conditional-formatting/ConditionEditor.js.map +1 -1
  140. package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.d.ts.map +1 -1
  141. package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.js +0 -2
  142. package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.js.map +1 -1
  143. package/dist/sidebar/conditional-formatting/ConditionalFormattingAPIUtils.d.ts +2 -2
  144. package/dist/sidebar/conditional-formatting/ConditionalFormattingAPIUtils.d.ts.map +1 -1
  145. package/dist/sidebar/conditional-formatting/ConditionalFormattingAPIUtils.js +1 -1
  146. package/dist/sidebar/conditional-formatting/ConditionalFormattingAPIUtils.js.map +1 -1
  147. package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.d.ts +3 -3
  148. package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.d.ts.map +1 -1
  149. package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.js +3 -3
  150. package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.js.map +1 -1
  151. package/dist/sidebar/conditional-formatting/RowFormatEditor.d.ts +0 -2
  152. package/dist/sidebar/conditional-formatting/RowFormatEditor.d.ts.map +1 -1
  153. package/dist/sidebar/conditional-formatting/RowFormatEditor.js +0 -2
  154. package/dist/sidebar/conditional-formatting/RowFormatEditor.js.map +1 -1
  155. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.d.ts +1 -1
  156. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.d.ts.map +1 -1
  157. package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.js.map +1 -1
  158. package/dist/sidebar/visibility-ordering-builder/sortable-tree/utilities.d.ts +1 -1
  159. package/dist/sidebar/visibility-ordering-builder/sortable-tree/utilities.d.ts.map +1 -1
  160. package/dist/sidebar/visibility-ordering-builder/sortable-tree/utilities.js.map +1 -1
  161. package/package.json +15 -16
  162. package/dist/IrisGridCellRendererUtils.d.ts +0 -7
  163. package/dist/IrisGridCellRendererUtils.d.ts.map +0 -1
  164. package/dist/IrisGridCellRendererUtils.js +0 -20
  165. package/dist/IrisGridCellRendererUtils.js.map +0 -1
  166. package/dist/IrisGridDataBarCellRenderer.d.ts +0 -7
  167. package/dist/IrisGridDataBarCellRenderer.d.ts.map +0 -1
  168. package/dist/IrisGridDataBarCellRenderer.js +0 -10
  169. package/dist/IrisGridDataBarCellRenderer.js.map +0 -1
  170. package/dist/IrisGridIcons.d.ts +0 -4
  171. package/dist/IrisGridIcons.d.ts.map +0 -1
  172. package/dist/IrisGridIcons.js +0 -25
  173. package/dist/IrisGridIcons.js.map +0 -1
  174. package/dist/IrisGridTextCellRenderer.d.ts +0 -20
  175. package/dist/IrisGridTextCellRenderer.d.ts.map +0 -1
  176. package/dist/IrisGridTextCellRenderer.js +0 -139
  177. package/dist/IrisGridTextCellRenderer.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  import React, { PureComponent } from 'react';
2
- import type { Column, dh as DhType, SeriesPlotStyle } from '@deephaven/jsapi-types';
2
+ import { Column, SeriesPlotStyle } from '@deephaven/jsapi-shim';
3
3
  import './ChartBuilder.scss';
4
4
  import IrisGridModel from '../IrisGridModel';
5
5
  export type ChartBuilderSettings = {
@@ -13,7 +13,6 @@ export type SeriesItem = {
13
13
  value: string;
14
14
  };
15
15
  interface ChartBuilderProps {
16
- dh: DhType;
17
16
  model: IrisGridModel;
18
17
  onSubmit: (obj: ChartBuilderSettings) => void;
19
18
  onChange: (obj: ChartBuilderSettings) => void;
@@ -32,20 +31,20 @@ interface ChartBuilderState {
32
31
  * Form for configuring all the settings when creating a console.
33
32
  */
34
33
  declare class ChartBuilder extends PureComponent<ChartBuilderProps, ChartBuilderState> {
35
- static getMaxSeriesCount(dh: DhType, type: SeriesPlotStyle): number;
36
- static makeSeriesItem(value: string): SeriesItem;
37
- static makeDefaultSeriesItems(dh: DhType, type: SeriesPlotStyle, columns: readonly Column[]): SeriesItem[];
38
- static getDefaultXAxis(type: SeriesPlotStyle, columns: readonly Column[]): string | null;
39
- constructor(props: ChartBuilderProps);
40
- getTypes(): SeriesPlotStyle[];
34
+ static types: SeriesPlotStyle[];
41
35
  /**
42
36
  * Converts the provided chart type into a readable type.
43
37
  * Just replaces underscores with spaces and capitals the first letter of each word.
44
38
  */
45
- getTypeName(type: SeriesPlotStyle): string | SeriesPlotStyle;
46
- getTypeIcon(type: SeriesPlotStyle): React.ReactElement | null;
47
- getXAxisLabel(type: SeriesPlotStyle): string;
48
- getSeriesLabel(type: SeriesPlotStyle): string;
39
+ static getTypeName(type: SeriesPlotStyle): string | SeriesPlotStyle;
40
+ static getTypeIcon(type: SeriesPlotStyle): React.ReactElement | null;
41
+ static getMaxSeriesCount(type: SeriesPlotStyle): number;
42
+ static getXAxisLabel(type: SeriesPlotStyle): string;
43
+ static getSeriesLabel(type: SeriesPlotStyle): string;
44
+ static makeSeriesItem(value: string): SeriesItem;
45
+ static makeDefaultSeriesItems(type: SeriesPlotStyle, columns: readonly Column[]): SeriesItem[];
46
+ static getDefaultXAxis(type: SeriesPlotStyle, columns: readonly Column[]): string | null;
47
+ constructor(props: ChartBuilderProps);
49
48
  handleAddSeries(): void;
50
49
  handleLinkStateChange(event: React.ChangeEvent<HTMLInputElement>): void;
51
50
  handleReset(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"ChartBuilder.d.ts","sourceRoot":"","sources":["../../src/sidebar/ChartBuilder.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAY7C,OAAO,KAAK,EACV,MAAM,EACN,EAAE,IAAI,MAAM,EACZ,eAAe,EAChB,MAAM,wBAAwB,CAAC;AAUhC,OAAO,qBAAqB,CAAC;AAC7B,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAI7C,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,eAAe,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC;AACF,MAAM,MAAM,UAAU,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,UAAU,iBAAiB;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,aAAa,CAAC;IACrB,QAAQ,EAAE,CAAC,GAAG,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAC9C,QAAQ,EAAE,CAAC,GAAG,EAAE,oBAAoB,KAAK,IAAI,CAAC;CAC/C;AACD,UAAU,iBAAiB;IACzB,8BAA8B;IAC9B,IAAI,EAAE,eAAe,CAAC;IAEtB,qDAAqD;IACrD,WAAW,EAAE,SAAS,UAAU,EAAE,CAAC;IAEnC,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAC;IAEd,mGAAmG;IACnG,QAAQ,EAAE,OAAO,CAAC;CACnB;AACD;;GAEG;AACH,cAAM,YAAa,SAAQ,aAAa,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAC5E,MAAM,CAAC,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,GAAG,MAAM;IAWnE,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU;IAIhD,MAAM,CAAC,sBAAsB,CAC3B,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,SAAS,MAAM,EAAE,GACzB,UAAU,EAAE;IAUf,MAAM,CAAC,eAAe,CACpB,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,SAAS,MAAM,EAAE,GACzB,MAAM,GAAG,IAAI;gBAQJ,KAAK,EAAE,iBAAiB;IAmCpC,QAAQ;IAYR;;;OAGG;IACH,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,eAAe;IAkB5D,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI;IAkB7D,aAAa,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM;IAY5C,cAAc,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM;IAU7C,eAAe,IAAI,IAAI;IAgBvB,qBAAqB,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAIvE,WAAW,IAAI,IAAI;IAYnB,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,iBAAiB,CAAC,GAAG,IAAI;IAerE,uBAAuB,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,GAAG,IAAI;IAezE,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC,GAAG,IAAI;IAc3D,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,GAAG,IAAI;IAuBjE,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,iBAAiB,CAAC,GAAG,IAAI;IAOpE,UAAU,IAAI,IAAI;IAQlB,MAAM,IAAI,GAAG,CAAC,OAAO;CAyJtB;AAED,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"ChartBuilder.d.ts","sourceRoot":"","sources":["../../src/sidebar/ChartBuilder.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAY7C,OAAW,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAUpE,OAAO,qBAAqB,CAAC;AAC7B,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAI7C,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,eAAe,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC;AACF,MAAM,MAAM,UAAU,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,UAAU,iBAAiB;IACzB,KAAK,EAAE,aAAa,CAAC;IACrB,QAAQ,EAAE,CAAC,GAAG,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAC9C,QAAQ,EAAE,CAAC,GAAG,EAAE,oBAAoB,KAAK,IAAI,CAAC;CAC/C;AACD,UAAU,iBAAiB;IACzB,8BAA8B;IAC9B,IAAI,EAAE,eAAe,CAAC;IAEtB,qDAAqD;IACrD,WAAW,EAAE,SAAS,UAAU,EAAE,CAAC;IAEnC,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAC;IAEd,mGAAmG;IACnG,QAAQ,EAAE,OAAO,CAAC;CACnB;AACD;;GAEG;AACH,cAAM,YAAa,SAAQ,aAAa,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAC5E,MAAM,CAAC,KAAK,oBAOV;IAEF;;;OAGG;IACH,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,eAAe;IAiBnE,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI;IAiBpE,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM;IAWvD,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM;IAWnD,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM;IASpD,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU;IAIhD,MAAM,CAAC,sBAAsB,CAC3B,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,SAAS,MAAM,EAAE,GACzB,UAAU,EAAE;IAUf,MAAM,CAAC,eAAe,CACpB,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,SAAS,MAAM,EAAE,GACzB,MAAM,GAAG,IAAI;gBAQJ,KAAK,EAAE,iBAAiB;IAmCpC,eAAe,IAAI,IAAI;IAgBvB,qBAAqB,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAIvE,WAAW,IAAI,IAAI;IAYnB,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,iBAAiB,CAAC,GAAG,IAAI;IAerE,uBAAuB,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,GAAG,IAAI;IAezE,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC,GAAG,IAAI;IAc3D,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,GAAG,IAAI;IAuBjE,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,iBAAiB,CAAC,GAAG,IAAI;IAOpE,UAAU,IAAI,IAAI;IAQlB,MAAM,IAAI,GAAG,CAAC,OAAO;CAyJtB;AAED,eAAe,YAAY,CAAC"}
@@ -1,8 +1,12 @@
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
3
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
1
4
  import React, { PureComponent } from 'react';
2
5
  import classNames from 'classnames';
3
6
  import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
4
7
  import { Button, RadioGroup, RadioItem } from '@deephaven/components';
5
8
  import { vsLink, dhUnlink, dhTable, dhNewCircleLargeFilled, vsCircleLargeFilled, vsTrash } from '@deephaven/icons';
9
+ import dh from '@deephaven/jsapi-shim';
6
10
  import Log from '@deephaven/log';
7
11
  import shortid from 'shortid';
8
12
  import { BarIcon, HistogramIcon, LineIcon, PieIcon, ScatterIcon } from "./icons/index.js";
@@ -12,7 +16,43 @@ var log = Log.module('ChartBuilder');
12
16
  * Form for configuring all the settings when creating a console.
13
17
  */
14
18
  class ChartBuilder extends PureComponent {
15
- static getMaxSeriesCount(dh, type) {
19
+ /**
20
+ * Converts the provided chart type into a readable type.
21
+ * Just replaces underscores with spaces and capitals the first letter of each word.
22
+ */
23
+ static getTypeName(type) {
24
+ switch (type) {
25
+ case dh.plot.SeriesPlotStyle.LINE:
26
+ return 'Line';
27
+ case dh.plot.SeriesPlotStyle.BAR:
28
+ return 'Bar';
29
+ case dh.plot.SeriesPlotStyle.SCATTER:
30
+ return 'Scatter';
31
+ case dh.plot.SeriesPlotStyle.PIE:
32
+ return 'Pie';
33
+ case dh.plot.SeriesPlotStyle.HISTOGRAM:
34
+ return 'Histogram';
35
+ default:
36
+ return type;
37
+ }
38
+ }
39
+ static getTypeIcon(type) {
40
+ switch (type) {
41
+ case dh.plot.SeriesPlotStyle.LINE:
42
+ return /*#__PURE__*/React.createElement(LineIcon, null);
43
+ case dh.plot.SeriesPlotStyle.BAR:
44
+ return /*#__PURE__*/React.createElement(BarIcon, null);
45
+ case dh.plot.SeriesPlotStyle.SCATTER:
46
+ return /*#__PURE__*/React.createElement(ScatterIcon, null);
47
+ case dh.plot.SeriesPlotStyle.PIE:
48
+ return /*#__PURE__*/React.createElement(PieIcon, null);
49
+ case dh.plot.SeriesPlotStyle.HISTOGRAM:
50
+ return /*#__PURE__*/React.createElement(HistogramIcon, null);
51
+ default:
52
+ return null;
53
+ }
54
+ }
55
+ static getMaxSeriesCount(type) {
16
56
  switch (type) {
17
57
  case dh.plot.SeriesPlotStyle.PIE:
18
58
  return 1;
@@ -22,14 +62,32 @@ class ChartBuilder extends PureComponent {
22
62
  return 100;
23
63
  }
24
64
  }
65
+ static getXAxisLabel(type) {
66
+ switch (type) {
67
+ case dh.plot.SeriesPlotStyle.PIE:
68
+ return 'Labels';
69
+ case dh.plot.SeriesPlotStyle.HISTOGRAM:
70
+ return 'Data';
71
+ default:
72
+ return 'X-Axis';
73
+ }
74
+ }
75
+ static getSeriesLabel(type) {
76
+ switch (type) {
77
+ case dh.plot.SeriesPlotStyle.PIE:
78
+ return 'Values';
79
+ default:
80
+ return 'Series';
81
+ }
82
+ }
25
83
  static makeSeriesItem(value) {
26
84
  return {
27
85
  id: shortid.generate(),
28
86
  value
29
87
  };
30
88
  }
31
- static makeDefaultSeriesItems(dh, type, columns) {
32
- var maxSeriesCount = ChartBuilder.getMaxSeriesCount(dh, type);
89
+ static makeDefaultSeriesItems(type, columns) {
90
+ var maxSeriesCount = ChartBuilder.getMaxSeriesCount(type);
33
91
  if (maxSeriesCount === 0 || columns == null || columns.length === 0) {
34
92
  return [];
35
93
  }
@@ -54,15 +112,14 @@ class ChartBuilder extends PureComponent {
54
112
  this.handleXAxisChange = this.handleXAxisChange.bind(this);
55
113
  this.sendChange = this.sendChange.bind(this);
56
114
  var {
57
- dh,
58
115
  model
59
116
  } = props;
60
117
  var {
61
118
  columns
62
119
  } = model;
63
- var type = this.getTypes()[0];
120
+ var type = ChartBuilder.types[0];
64
121
  var xAxis = ChartBuilder.getDefaultXAxis(type, columns);
65
- var seriesItems = ChartBuilder.makeDefaultSeriesItems(dh, type, columns);
122
+ var seriesItems = ChartBuilder.makeDefaultSeriesItems(type, columns);
66
123
  this.state = {
67
124
  /** The selected chart type */
68
125
  type,
@@ -74,82 +131,6 @@ class ChartBuilder extends PureComponent {
74
131
  isLinked: true
75
132
  };
76
133
  }
77
- getTypes() {
78
- var {
79
- dh
80
- } = this.props;
81
- return [dh.plot.SeriesPlotStyle.LINE, dh.plot.SeriesPlotStyle.BAR, dh.plot.SeriesPlotStyle.SCATTER, dh.plot.SeriesPlotStyle.PIE
82
- // IDS-6808: Disable Histogram in Chart Builder until we pipe histogram creation through the API
83
- // dh.plot.SeriesPlotStyle.HISTOGRAM,
84
- ];
85
- }
86
-
87
- /**
88
- * Converts the provided chart type into a readable type.
89
- * Just replaces underscores with spaces and capitals the first letter of each word.
90
- */
91
- getTypeName(type) {
92
- var {
93
- dh
94
- } = this.props;
95
- switch (type) {
96
- case dh.plot.SeriesPlotStyle.LINE:
97
- return 'Line';
98
- case dh.plot.SeriesPlotStyle.BAR:
99
- return 'Bar';
100
- case dh.plot.SeriesPlotStyle.SCATTER:
101
- return 'Scatter';
102
- case dh.plot.SeriesPlotStyle.PIE:
103
- return 'Pie';
104
- case dh.plot.SeriesPlotStyle.HISTOGRAM:
105
- return 'Histogram';
106
- default:
107
- return type;
108
- }
109
- }
110
- getTypeIcon(type) {
111
- var {
112
- dh
113
- } = this.props;
114
- switch (type) {
115
- case dh.plot.SeriesPlotStyle.LINE:
116
- return /*#__PURE__*/React.createElement(LineIcon, null);
117
- case dh.plot.SeriesPlotStyle.BAR:
118
- return /*#__PURE__*/React.createElement(BarIcon, null);
119
- case dh.plot.SeriesPlotStyle.SCATTER:
120
- return /*#__PURE__*/React.createElement(ScatterIcon, null);
121
- case dh.plot.SeriesPlotStyle.PIE:
122
- return /*#__PURE__*/React.createElement(PieIcon, null);
123
- case dh.plot.SeriesPlotStyle.HISTOGRAM:
124
- return /*#__PURE__*/React.createElement(HistogramIcon, null);
125
- default:
126
- return null;
127
- }
128
- }
129
- getXAxisLabel(type) {
130
- var {
131
- dh
132
- } = this.props;
133
- switch (type) {
134
- case dh.plot.SeriesPlotStyle.PIE:
135
- return 'Labels';
136
- case dh.plot.SeriesPlotStyle.HISTOGRAM:
137
- return 'Data';
138
- default:
139
- return 'X-Axis';
140
- }
141
- }
142
- getSeriesLabel(type) {
143
- var {
144
- dh
145
- } = this.props;
146
- switch (type) {
147
- case dh.plot.SeriesPlotStyle.PIE:
148
- return 'Values';
149
- default:
150
- return 'Series';
151
- }
152
- }
153
134
  handleAddSeries() {
154
135
  this.setState(state => {
155
136
  var {
@@ -178,15 +159,14 @@ class ChartBuilder extends PureComponent {
178
159
  }
179
160
  handleReset() {
180
161
  var {
181
- dh,
182
162
  model
183
163
  } = this.props;
184
164
  var {
185
165
  columns
186
166
  } = model;
187
- var type = this.getTypes()[0];
167
+ var type = ChartBuilder.types[0];
188
168
  var xAxis = ChartBuilder.getDefaultXAxis(type, columns);
189
- var seriesItems = ChartBuilder.makeDefaultSeriesItems(dh, type, columns);
169
+ var seriesItems = ChartBuilder.makeDefaultSeriesItems(type, columns);
190
170
  var isLinked = true;
191
171
  this.setState({
192
172
  type,
@@ -250,23 +230,22 @@ class ChartBuilder extends PureComponent {
250
230
  var changeEvent = event;
251
231
  var index = changeEvent.target.getAttribute('data-index');
252
232
  var intIndex = parseInt(index, 10);
253
- var type = this.getTypes()[intIndex];
233
+ var type = ChartBuilder.types[intIndex];
254
234
  log.debug2('handleTypeSelect', type);
255
235
  this.setState(state => {
256
- var {
257
- dh,
258
- model
259
- } = this.props;
260
- var maxSeriesCount = ChartBuilder.getMaxSeriesCount(dh, type);
236
+ var maxSeriesCount = ChartBuilder.getMaxSeriesCount(type);
261
237
  var {
262
238
  seriesItems
263
239
  } = state;
264
240
  seriesItems = seriesItems.slice(0, maxSeriesCount);
265
241
  if (seriesItems.length === 0 && maxSeriesCount > 0) {
242
+ var {
243
+ model
244
+ } = this.props;
266
245
  var {
267
246
  columns
268
247
  } = model;
269
- seriesItems = ChartBuilder.makeDefaultSeriesItems(dh, type, columns);
248
+ seriesItems = ChartBuilder.makeDefaultSeriesItems(type, columns);
270
249
  }
271
250
  return {
272
251
  type,
@@ -301,7 +280,6 @@ class ChartBuilder extends PureComponent {
301
280
  }
302
281
  render() {
303
282
  var {
304
- dh,
305
283
  model
306
284
  } = this.props;
307
285
  var {
@@ -313,9 +291,9 @@ class ChartBuilder extends PureComponent {
313
291
  xAxis,
314
292
  isLinked
315
293
  } = this.state;
316
- var maxSeriesCount = ChartBuilder.getMaxSeriesCount(dh, type);
317
- var xAxisLabel = this.getXAxisLabel(type);
318
- var seriesLabel = this.getSeriesLabel(type);
294
+ var maxSeriesCount = ChartBuilder.getMaxSeriesCount(type);
295
+ var xAxisLabel = ChartBuilder.getXAxisLabel(type);
296
+ var seriesLabel = ChartBuilder.getSeriesLabel(type);
319
297
  var isSeriesVisible = seriesItems.length > 0;
320
298
  var isAddSeriesVisible = seriesItems.length < maxSeriesCount;
321
299
  return /*#__PURE__*/React.createElement("div", {
@@ -326,7 +304,7 @@ class ChartBuilder extends PureComponent {
326
304
  className: "form-row"
327
305
  }, /*#__PURE__*/React.createElement("label", null, "Select Chart Type"), /*#__PURE__*/React.createElement("div", {
328
306
  className: "form-row"
329
- }, this.getTypes().map((chartType, index) => {
307
+ }, ChartBuilder.types.map((chartType, index) => {
330
308
  var key = chartType;
331
309
  return /*#__PURE__*/React.createElement("div", {
332
310
  key: key,
@@ -338,7 +316,7 @@ class ChartBuilder extends PureComponent {
338
316
  }),
339
317
  "data-index": index,
340
318
  onClick: this.handleTypeClick
341
- }, this.getTypeIcon(chartType), this.getTypeName(chartType)));
319
+ }, ChartBuilder.getTypeIcon(chartType), ChartBuilder.getTypeName(chartType)));
342
320
  }))), /*#__PURE__*/React.createElement("hr", null), /*#__PURE__*/React.createElement("div", {
343
321
  className: "form-row form-inline"
344
322
  }, /*#__PURE__*/React.createElement("label", {
@@ -422,5 +400,10 @@ class ChartBuilder extends PureComponent {
422
400
  }, "Create"))));
423
401
  }
424
402
  }
403
+ _defineProperty(ChartBuilder, "types", [dh.plot.SeriesPlotStyle.LINE, dh.plot.SeriesPlotStyle.BAR, dh.plot.SeriesPlotStyle.SCATTER, dh.plot.SeriesPlotStyle.PIE
404
+ // IDS-6808: Disable Histogram in Chart Builder until we pipe histogram creation through the API
405
+ // dh.plot.SeriesPlotStyle.HISTOGRAM,
406
+ ]);
407
+
425
408
  export default ChartBuilder;
426
409
  //# sourceMappingURL=ChartBuilder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChartBuilder.js","names":["React","PureComponent","classNames","FontAwesomeIcon","Button","RadioGroup","RadioItem","vsLink","dhUnlink","dhTable","dhNewCircleLargeFilled","vsCircleLargeFilled","vsTrash","Log","shortid","BarIcon","HistogramIcon","LineIcon","PieIcon","ScatterIcon","log","module","ChartBuilder","getMaxSeriesCount","dh","type","plot","SeriesPlotStyle","PIE","HISTOGRAM","makeSeriesItem","value","id","generate","makeDefaultSeriesItems","columns","maxSeriesCount","length","name","getDefaultXAxis","constructor","props","handleAddSeries","bind","handleLinkStateChange","handleReset","handleSeriesChange","handleSeriesDeleteClick","handleSubmit","handleTypeClick","handleXAxisChange","sendChange","model","getTypes","xAxis","seriesItems","state","isLinked","LINE","BAR","SCATTER","getTypeName","getTypeIcon","getXAxisLabel","getSeriesLabel","setState","newSeriesItems","push","event","target","index","getAttribute","intIndex","parseInt","changeEvent","splice","preventDefault","onSubmit","series","map","item","debug2","slice","onChange","render","xAxisLabel","seriesLabel","isSeriesVisible","isAddSeriesVisible","chartType","key","active","column","seriesItem","i"],"sources":["../../src/sidebar/ChartBuilder.tsx"],"sourcesContent":["import React, { PureComponent } from 'react';\nimport classNames from 'classnames';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport { Button, RadioGroup, RadioItem } from '@deephaven/components';\nimport {\n vsLink,\n dhUnlink,\n dhTable,\n dhNewCircleLargeFilled,\n vsCircleLargeFilled,\n vsTrash,\n} from '@deephaven/icons';\nimport type {\n Column,\n dh as DhType,\n SeriesPlotStyle,\n} from '@deephaven/jsapi-types';\nimport Log from '@deephaven/log';\nimport shortid from 'shortid';\nimport {\n BarIcon,\n HistogramIcon,\n LineIcon,\n PieIcon,\n ScatterIcon,\n} from './icons';\nimport './ChartBuilder.scss';\nimport IrisGridModel from '../IrisGridModel';\n\nconst log = Log.module('ChartBuilder');\n\nexport type ChartBuilderSettings = {\n type: SeriesPlotStyle;\n series: unknown;\n xAxis: string;\n isLinked: boolean;\n};\nexport type SeriesItem = {\n id: string;\n value: string;\n};\n\ninterface ChartBuilderProps {\n dh: DhType;\n model: IrisGridModel;\n onSubmit: (obj: ChartBuilderSettings) => void;\n onChange: (obj: ChartBuilderSettings) => void;\n}\ninterface ChartBuilderState {\n /** The selected chart type */\n type: SeriesPlotStyle;\n\n /** Array of column names of the series to display */\n seriesItems: readonly SeriesItem[];\n\n /** The column name to use as the x-axis */\n xAxis: string;\n\n /** Whether the newly created chart should be linked with the table (update when filters update) */\n isLinked: boolean;\n}\n/**\n * Form for configuring all the settings when creating a console.\n */\nclass ChartBuilder extends PureComponent<ChartBuilderProps, ChartBuilderState> {\n static getMaxSeriesCount(dh: DhType, type: SeriesPlotStyle): number {\n switch (type) {\n case dh.plot.SeriesPlotStyle.PIE:\n return 1;\n case dh.plot.SeriesPlotStyle.HISTOGRAM:\n return 0;\n default:\n return 100;\n }\n }\n\n static makeSeriesItem(value: string): SeriesItem {\n return { id: shortid.generate(), value };\n }\n\n static makeDefaultSeriesItems(\n dh: DhType,\n type: SeriesPlotStyle,\n columns: readonly Column[]\n ): SeriesItem[] {\n const maxSeriesCount = ChartBuilder.getMaxSeriesCount(dh, type);\n if (maxSeriesCount === 0 || columns == null || columns.length === 0) {\n return [];\n }\n\n const value = columns.length > 1 ? columns[1].name : columns[0].name;\n return [ChartBuilder.makeSeriesItem(value)];\n }\n\n static getDefaultXAxis(\n type: SeriesPlotStyle,\n columns: readonly Column[]\n ): string | null {\n if (columns != null && columns.length > 0) {\n return columns[0].name;\n }\n\n return null;\n }\n\n constructor(props: ChartBuilderProps) {\n super(props);\n\n this.handleAddSeries = this.handleAddSeries.bind(this);\n this.handleLinkStateChange = this.handleLinkStateChange.bind(this);\n this.handleReset = this.handleReset.bind(this);\n this.handleSeriesChange = this.handleSeriesChange.bind(this);\n this.handleSeriesDeleteClick = this.handleSeriesDeleteClick.bind(this);\n this.handleSubmit = this.handleSubmit.bind(this);\n this.handleTypeClick = this.handleTypeClick.bind(this);\n this.handleXAxisChange = this.handleXAxisChange.bind(this);\n this.sendChange = this.sendChange.bind(this);\n\n const { dh, model } = props;\n const { columns } = model;\n\n const type = this.getTypes()[0];\n const xAxis = ChartBuilder.getDefaultXAxis(type, columns) as string;\n const seriesItems = ChartBuilder.makeDefaultSeriesItems(dh, type, columns);\n\n this.state = {\n /** The selected chart type */\n type,\n\n /** Array of column names of the series to display */\n seriesItems,\n\n /** The column name to use as the x-axis */\n xAxis,\n\n /** Whether the newly created chart should be linked with the table (update when filters update) */\n isLinked: true,\n };\n }\n\n getTypes() {\n const { dh } = this.props;\n return [\n dh.plot.SeriesPlotStyle.LINE,\n dh.plot.SeriesPlotStyle.BAR,\n dh.plot.SeriesPlotStyle.SCATTER,\n dh.plot.SeriesPlotStyle.PIE,\n // IDS-6808: Disable Histogram in Chart Builder until we pipe histogram creation through the API\n // dh.plot.SeriesPlotStyle.HISTOGRAM,\n ];\n }\n\n /**\n * Converts the provided chart type into a readable type.\n * Just replaces underscores with spaces and capitals the first letter of each word.\n */\n getTypeName(type: SeriesPlotStyle): string | SeriesPlotStyle {\n const { dh } = this.props;\n switch (type) {\n case dh.plot.SeriesPlotStyle.LINE:\n return 'Line';\n case dh.plot.SeriesPlotStyle.BAR:\n return 'Bar';\n case dh.plot.SeriesPlotStyle.SCATTER:\n return 'Scatter';\n case dh.plot.SeriesPlotStyle.PIE:\n return 'Pie';\n case dh.plot.SeriesPlotStyle.HISTOGRAM:\n return 'Histogram';\n default:\n return type;\n }\n }\n\n getTypeIcon(type: SeriesPlotStyle): React.ReactElement | null {\n const { dh } = this.props;\n switch (type) {\n case dh.plot.SeriesPlotStyle.LINE:\n return <LineIcon />;\n case dh.plot.SeriesPlotStyle.BAR:\n return <BarIcon />;\n case dh.plot.SeriesPlotStyle.SCATTER:\n return <ScatterIcon />;\n case dh.plot.SeriesPlotStyle.PIE:\n return <PieIcon />;\n case dh.plot.SeriesPlotStyle.HISTOGRAM:\n return <HistogramIcon />;\n default:\n return null;\n }\n }\n\n getXAxisLabel(type: SeriesPlotStyle): string {\n const { dh } = this.props;\n switch (type) {\n case dh.plot.SeriesPlotStyle.PIE:\n return 'Labels';\n case dh.plot.SeriesPlotStyle.HISTOGRAM:\n return 'Data';\n default:\n return 'X-Axis';\n }\n }\n\n getSeriesLabel(type: SeriesPlotStyle): string {\n const { dh } = this.props;\n switch (type) {\n case dh.plot.SeriesPlotStyle.PIE:\n return 'Values';\n default:\n return 'Series';\n }\n }\n\n handleAddSeries(): void {\n this.setState(state => {\n const { seriesItems } = state;\n const newSeriesItems = [...seriesItems];\n\n const { model } = this.props;\n const { columns } = model;\n newSeriesItems.push({\n id: shortid.generate(),\n value: columns[0].name,\n });\n\n return { seriesItems: newSeriesItems };\n }, this.sendChange);\n }\n\n handleLinkStateChange(event: React.ChangeEvent<HTMLInputElement>): void {\n this.setState({ isLinked: event.target.value === 'true' }, this.sendChange);\n }\n\n handleReset(): void {\n const { dh, model } = this.props;\n const { columns } = model;\n\n const type = this.getTypes()[0];\n const xAxis = ChartBuilder.getDefaultXAxis(type, columns) as string;\n const seriesItems = ChartBuilder.makeDefaultSeriesItems(dh, type, columns);\n const isLinked = true;\n\n this.setState({ type, seriesItems, xAxis, isLinked }, this.sendChange);\n }\n\n handleSeriesChange(event: React.ChangeEvent<HTMLSelectElement>): void {\n const { value } = event.target;\n const index = event.target.getAttribute('data-index') as string;\n const intIndex = parseInt(index, 10);\n\n this.setState(state => {\n let { seriesItems } = state;\n\n seriesItems = [...seriesItems];\n seriesItems[intIndex].value = value;\n\n return { seriesItems };\n }, this.sendChange);\n }\n\n handleSeriesDeleteClick(event: React.MouseEvent<HTMLButtonElement>): void {\n const changeEvent = (event as unknown) as React.ChangeEvent<HTMLButtonElement>;\n const index = changeEvent.target.getAttribute('data-index') as string;\n const intIndex = parseInt(index, 10);\n\n this.setState(state => {\n const { seriesItems } = state;\n const newSeriesItems = [...seriesItems];\n\n newSeriesItems.splice(intIndex, 1);\n\n return { seriesItems: newSeriesItems };\n }, this.sendChange);\n }\n\n handleSubmit(event: React.FormEvent<HTMLFormElement>): void {\n event.preventDefault();\n\n const { onSubmit } = this.props;\n const { type, seriesItems, xAxis, isLinked } = this.state;\n const series = seriesItems.map(item => item.value);\n onSubmit({\n type: (`${type}` as unknown) as SeriesPlotStyle,\n series,\n xAxis,\n isLinked,\n });\n }\n\n handleTypeClick(event: React.MouseEvent<HTMLButtonElement>): void {\n const changeEvent = (event as unknown) as React.ChangeEvent<HTMLButtonElement>;\n const index = changeEvent.target.getAttribute('data-index') as string;\n const intIndex = parseInt(index, 10);\n\n const type = this.getTypes()[intIndex];\n\n log.debug2('handleTypeSelect', type);\n\n this.setState(state => {\n const { dh, model } = this.props;\n const maxSeriesCount = ChartBuilder.getMaxSeriesCount(dh, type);\n let { seriesItems } = state;\n seriesItems = seriesItems.slice(0, maxSeriesCount);\n if (seriesItems.length === 0 && maxSeriesCount > 0) {\n const { columns } = model;\n seriesItems = ChartBuilder.makeDefaultSeriesItems(dh, type, columns);\n }\n\n return { type, seriesItems };\n }, this.sendChange);\n }\n\n handleXAxisChange(event: React.ChangeEvent<HTMLSelectElement>): void {\n const xAxis = event.target.value;\n log.debug2('x-axis change', xAxis);\n\n this.setState({ xAxis }, this.sendChange);\n }\n\n sendChange(): void {\n const { onChange } = this.props;\n const { isLinked, type, seriesItems, xAxis } = this.state;\n const series = seriesItems.map(item => item.value);\n\n onChange({ type, series, xAxis, isLinked });\n }\n\n render(): JSX.Element {\n const { dh, model } = this.props;\n const { columns } = model;\n const { seriesItems, type, xAxis, isLinked } = this.state;\n const maxSeriesCount = ChartBuilder.getMaxSeriesCount(dh, type);\n const xAxisLabel = this.getXAxisLabel(type);\n const seriesLabel = this.getSeriesLabel(type);\n const isSeriesVisible = seriesItems.length > 0;\n const isAddSeriesVisible = seriesItems.length < maxSeriesCount;\n\n return (\n <div className=\"chart-builder\">\n <form onSubmit={this.handleSubmit}>\n <div className=\"form-row\">\n <label>Select Chart Type</label>\n <div className=\"form-row\">\n {this.getTypes().map((chartType, index) => {\n const key = (chartType as unknown) as React.Key;\n return (\n <div key={key} className=\"col col-chart-type\">\n <button\n type=\"button\"\n className={classNames(\n 'btn',\n 'btn-icon',\n 'btn-chart-type',\n {\n active: chartType === type,\n }\n )}\n data-index={index}\n onClick={this.handleTypeClick}\n >\n {this.getTypeIcon(chartType)}\n {this.getTypeName(chartType)}\n </button>\n </div>\n );\n })}\n </div>\n </div>\n <hr />\n <div className=\"form-row form-inline\">\n <label className=\"col-2 label-left\">{xAxisLabel}</label>\n <select\n className=\"form-control custom-select select-x-axis col\"\n value={xAxis}\n onChange={this.handleXAxisChange}\n >\n {columns.map(column => (\n <option key={column.name} value={column.name}>\n {column.name}\n </option>\n ))}\n </select>\n </div>\n {isSeriesVisible && <hr />}\n {seriesItems.map((seriesItem, i) => (\n <div\n className=\"form-row form-inline form-series-item\"\n key={seriesItem.id}\n data-testid={`form-series-item-${i}`}\n >\n <label className=\"col-2 label-left\">\n {i === 0 ? seriesLabel : ''}\n </label>\n <select\n className=\"form-control custom-select select-series col\"\n value={seriesItem.value}\n onChange={this.handleSeriesChange}\n data-testid={`select-series-item-${i}`}\n data-index={i}\n >\n {columns.map(column => (\n <option key={column.name} value={column.name} data-index={i}>\n {column.name}\n </option>\n ))}\n </select>\n {seriesItems.length > 1 && (\n <Button\n kind=\"ghost\"\n className=\"btn-delete-series ml-2 px-2\"\n data-index={i}\n data-testid={`delete-series-${i}`}\n onClick={this.handleSeriesDeleteClick}\n icon={vsTrash}\n tooltip=\"Delete\"\n />\n )}\n </div>\n ))}\n {isAddSeriesVisible && (\n <div className=\"form-row\">\n <div className=\"col-2\" />\n <Button\n kind=\"ghost\"\n className=\"btn-add-series mt-1\"\n onClick={this.handleAddSeries}\n icon={dhNewCircleLargeFilled}\n >\n Add Series\n </Button>\n </div>\n )}\n <div className=\"form-row chart-builder-link\">\n <label className=\"col-2 label-right\">\n <div className=\"fa-md fa-layers\">\n <FontAwesomeIcon\n mask={dhTable}\n icon={vsCircleLargeFilled}\n transform=\"right-5 down-5\"\n />\n <FontAwesomeIcon\n icon={isLinked ? vsLink : dhUnlink}\n transform=\"grow-2 right-8 down-6\"\n />\n </div>\n </label>\n <RadioGroup\n onChange={this.handleLinkStateChange}\n value={`${isLinked}`}\n >\n <RadioItem value=\"true\">Sync State</RadioItem>\n <RadioItem value=\"false\">Freeze State</RadioItem>\n </RadioGroup>\n </div>\n <div className=\"form-row\">\n <div className=\"col-2 label-right\" />\n <div className=\"col chart-builder-link-info\">\n {isLinked\n ? 'Charts with synced state will update to match any filters or user modifications applied to the parent table.'\n : 'Freeze State disconnects the chart state from the parent table. New filters or user modifications on the parent table will not be applied.'}\n </div>\n </div>\n <div\n className={classNames('form-row', 'justify-content-end', 'my-3')}\n >\n <Button\n kind=\"secondary\"\n className=\"btn-reset\"\n onClick={this.handleReset}\n >\n Reset\n </Button>\n <Button kind=\"primary\" type=\"submit\" className=\"btn-submit\">\n Create\n </Button>\n </div>\n </form>\n </div>\n );\n }\n}\n\nexport default ChartBuilder;\n"],"mappings":"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"}
1
+ {"version":3,"file":"ChartBuilder.js","names":["React","PureComponent","classNames","FontAwesomeIcon","Button","RadioGroup","RadioItem","vsLink","dhUnlink","dhTable","dhNewCircleLargeFilled","vsCircleLargeFilled","vsTrash","dh","Log","shortid","BarIcon","HistogramIcon","LineIcon","PieIcon","ScatterIcon","log","module","ChartBuilder","getTypeName","type","plot","SeriesPlotStyle","LINE","BAR","SCATTER","PIE","HISTOGRAM","getTypeIcon","getMaxSeriesCount","getXAxisLabel","getSeriesLabel","makeSeriesItem","value","id","generate","makeDefaultSeriesItems","columns","maxSeriesCount","length","name","getDefaultXAxis","constructor","props","handleAddSeries","bind","handleLinkStateChange","handleReset","handleSeriesChange","handleSeriesDeleteClick","handleSubmit","handleTypeClick","handleXAxisChange","sendChange","model","types","xAxis","seriesItems","state","isLinked","setState","newSeriesItems","push","event","target","index","getAttribute","intIndex","parseInt","changeEvent","splice","preventDefault","onSubmit","series","map","item","debug2","slice","onChange","render","xAxisLabel","seriesLabel","isSeriesVisible","isAddSeriesVisible","chartType","key","active","column","seriesItem","i"],"sources":["../../src/sidebar/ChartBuilder.tsx"],"sourcesContent":["import React, { PureComponent } from 'react';\nimport classNames from 'classnames';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport { Button, RadioGroup, RadioItem } from '@deephaven/components';\nimport {\n vsLink,\n dhUnlink,\n dhTable,\n dhNewCircleLargeFilled,\n vsCircleLargeFilled,\n vsTrash,\n} from '@deephaven/icons';\nimport dh, { Column, SeriesPlotStyle } from '@deephaven/jsapi-shim';\nimport Log from '@deephaven/log';\nimport shortid from 'shortid';\nimport {\n BarIcon,\n HistogramIcon,\n LineIcon,\n PieIcon,\n ScatterIcon,\n} from './icons';\nimport './ChartBuilder.scss';\nimport IrisGridModel from '../IrisGridModel';\n\nconst log = Log.module('ChartBuilder');\n\nexport type ChartBuilderSettings = {\n type: SeriesPlotStyle;\n series: unknown;\n xAxis: string;\n isLinked: boolean;\n};\nexport type SeriesItem = {\n id: string;\n value: string;\n};\n\ninterface ChartBuilderProps {\n model: IrisGridModel;\n onSubmit: (obj: ChartBuilderSettings) => void;\n onChange: (obj: ChartBuilderSettings) => void;\n}\ninterface ChartBuilderState {\n /** The selected chart type */\n type: SeriesPlotStyle;\n\n /** Array of column names of the series to display */\n seriesItems: readonly SeriesItem[];\n\n /** The column name to use as the x-axis */\n xAxis: string;\n\n /** Whether the newly created chart should be linked with the table (update when filters update) */\n isLinked: boolean;\n}\n/**\n * Form for configuring all the settings when creating a console.\n */\nclass ChartBuilder extends PureComponent<ChartBuilderProps, ChartBuilderState> {\n static types = [\n dh.plot.SeriesPlotStyle.LINE,\n dh.plot.SeriesPlotStyle.BAR,\n dh.plot.SeriesPlotStyle.SCATTER,\n dh.plot.SeriesPlotStyle.PIE,\n // IDS-6808: Disable Histogram in Chart Builder until we pipe histogram creation through the API\n // dh.plot.SeriesPlotStyle.HISTOGRAM,\n ];\n\n /**\n * Converts the provided chart type into a readable type.\n * Just replaces underscores with spaces and capitals the first letter of each word.\n */\n static getTypeName(type: SeriesPlotStyle): string | SeriesPlotStyle {\n switch (type) {\n case dh.plot.SeriesPlotStyle.LINE:\n return 'Line';\n case dh.plot.SeriesPlotStyle.BAR:\n return 'Bar';\n case dh.plot.SeriesPlotStyle.SCATTER:\n return 'Scatter';\n case dh.plot.SeriesPlotStyle.PIE:\n return 'Pie';\n case dh.plot.SeriesPlotStyle.HISTOGRAM:\n return 'Histogram';\n default:\n return type;\n }\n }\n\n static getTypeIcon(type: SeriesPlotStyle): React.ReactElement | null {\n switch (type) {\n case dh.plot.SeriesPlotStyle.LINE:\n return <LineIcon />;\n case dh.plot.SeriesPlotStyle.BAR:\n return <BarIcon />;\n case dh.plot.SeriesPlotStyle.SCATTER:\n return <ScatterIcon />;\n case dh.plot.SeriesPlotStyle.PIE:\n return <PieIcon />;\n case dh.plot.SeriesPlotStyle.HISTOGRAM:\n return <HistogramIcon />;\n default:\n return null;\n }\n }\n\n static getMaxSeriesCount(type: SeriesPlotStyle): number {\n switch (type) {\n case dh.plot.SeriesPlotStyle.PIE:\n return 1;\n case dh.plot.SeriesPlotStyle.HISTOGRAM:\n return 0;\n default:\n return 100;\n }\n }\n\n static getXAxisLabel(type: SeriesPlotStyle): string {\n switch (type) {\n case dh.plot.SeriesPlotStyle.PIE:\n return 'Labels';\n case dh.plot.SeriesPlotStyle.HISTOGRAM:\n return 'Data';\n default:\n return 'X-Axis';\n }\n }\n\n static getSeriesLabel(type: SeriesPlotStyle): string {\n switch (type) {\n case dh.plot.SeriesPlotStyle.PIE:\n return 'Values';\n default:\n return 'Series';\n }\n }\n\n static makeSeriesItem(value: string): SeriesItem {\n return { id: shortid.generate(), value };\n }\n\n static makeDefaultSeriesItems(\n type: SeriesPlotStyle,\n columns: readonly Column[]\n ): SeriesItem[] {\n const maxSeriesCount = ChartBuilder.getMaxSeriesCount(type);\n if (maxSeriesCount === 0 || columns == null || columns.length === 0) {\n return [];\n }\n\n const value = columns.length > 1 ? columns[1].name : columns[0].name;\n return [ChartBuilder.makeSeriesItem(value)];\n }\n\n static getDefaultXAxis(\n type: SeriesPlotStyle,\n columns: readonly Column[]\n ): string | null {\n if (columns != null && columns.length > 0) {\n return columns[0].name;\n }\n\n return null;\n }\n\n constructor(props: ChartBuilderProps) {\n super(props);\n\n this.handleAddSeries = this.handleAddSeries.bind(this);\n this.handleLinkStateChange = this.handleLinkStateChange.bind(this);\n this.handleReset = this.handleReset.bind(this);\n this.handleSeriesChange = this.handleSeriesChange.bind(this);\n this.handleSeriesDeleteClick = this.handleSeriesDeleteClick.bind(this);\n this.handleSubmit = this.handleSubmit.bind(this);\n this.handleTypeClick = this.handleTypeClick.bind(this);\n this.handleXAxisChange = this.handleXAxisChange.bind(this);\n this.sendChange = this.sendChange.bind(this);\n\n const { model } = props;\n const { columns } = model;\n\n const type = ChartBuilder.types[0];\n const xAxis = ChartBuilder.getDefaultXAxis(type, columns) as string;\n const seriesItems = ChartBuilder.makeDefaultSeriesItems(type, columns);\n\n this.state = {\n /** The selected chart type */\n type,\n\n /** Array of column names of the series to display */\n seriesItems,\n\n /** The column name to use as the x-axis */\n xAxis,\n\n /** Whether the newly created chart should be linked with the table (update when filters update) */\n isLinked: true,\n };\n }\n\n handleAddSeries(): void {\n this.setState(state => {\n const { seriesItems } = state;\n const newSeriesItems = [...seriesItems];\n\n const { model } = this.props;\n const { columns } = model;\n newSeriesItems.push({\n id: shortid.generate(),\n value: columns[0].name,\n });\n\n return { seriesItems: newSeriesItems };\n }, this.sendChange);\n }\n\n handleLinkStateChange(event: React.ChangeEvent<HTMLInputElement>): void {\n this.setState({ isLinked: event.target.value === 'true' }, this.sendChange);\n }\n\n handleReset(): void {\n const { model } = this.props;\n const { columns } = model;\n\n const type = ChartBuilder.types[0];\n const xAxis = ChartBuilder.getDefaultXAxis(type, columns) as string;\n const seriesItems = ChartBuilder.makeDefaultSeriesItems(type, columns);\n const isLinked = true;\n\n this.setState({ type, seriesItems, xAxis, isLinked }, this.sendChange);\n }\n\n handleSeriesChange(event: React.ChangeEvent<HTMLSelectElement>): void {\n const { value } = event.target;\n const index = event.target.getAttribute('data-index') as string;\n const intIndex = parseInt(index, 10);\n\n this.setState(state => {\n let { seriesItems } = state;\n\n seriesItems = [...seriesItems];\n seriesItems[intIndex].value = value;\n\n return { seriesItems };\n }, this.sendChange);\n }\n\n handleSeriesDeleteClick(event: React.MouseEvent<HTMLButtonElement>): void {\n const changeEvent = (event as unknown) as React.ChangeEvent<HTMLButtonElement>;\n const index = changeEvent.target.getAttribute('data-index') as string;\n const intIndex = parseInt(index, 10);\n\n this.setState(state => {\n const { seriesItems } = state;\n const newSeriesItems = [...seriesItems];\n\n newSeriesItems.splice(intIndex, 1);\n\n return { seriesItems: newSeriesItems };\n }, this.sendChange);\n }\n\n handleSubmit(event: React.FormEvent<HTMLFormElement>): void {\n event.preventDefault();\n\n const { onSubmit } = this.props;\n const { type, seriesItems, xAxis, isLinked } = this.state;\n const series = seriesItems.map(item => item.value);\n onSubmit({\n type: (`${type}` as unknown) as SeriesPlotStyle,\n series,\n xAxis,\n isLinked,\n });\n }\n\n handleTypeClick(event: React.MouseEvent<HTMLButtonElement>): void {\n const changeEvent = (event as unknown) as React.ChangeEvent<HTMLButtonElement>;\n const index = changeEvent.target.getAttribute('data-index') as string;\n const intIndex = parseInt(index, 10);\n\n const type = ChartBuilder.types[intIndex];\n\n log.debug2('handleTypeSelect', type);\n\n this.setState(state => {\n const maxSeriesCount = ChartBuilder.getMaxSeriesCount(type);\n let { seriesItems } = state;\n seriesItems = seriesItems.slice(0, maxSeriesCount);\n if (seriesItems.length === 0 && maxSeriesCount > 0) {\n const { model } = this.props;\n const { columns } = model;\n seriesItems = ChartBuilder.makeDefaultSeriesItems(type, columns);\n }\n\n return { type, seriesItems };\n }, this.sendChange);\n }\n\n handleXAxisChange(event: React.ChangeEvent<HTMLSelectElement>): void {\n const xAxis = event.target.value;\n log.debug2('x-axis change', xAxis);\n\n this.setState({ xAxis }, this.sendChange);\n }\n\n sendChange(): void {\n const { onChange } = this.props;\n const { isLinked, type, seriesItems, xAxis } = this.state;\n const series = seriesItems.map(item => item.value);\n\n onChange({ type, series, xAxis, isLinked });\n }\n\n render(): JSX.Element {\n const { model } = this.props;\n const { columns } = model;\n const { seriesItems, type, xAxis, isLinked } = this.state;\n const maxSeriesCount = ChartBuilder.getMaxSeriesCount(type);\n const xAxisLabel = ChartBuilder.getXAxisLabel(type);\n const seriesLabel = ChartBuilder.getSeriesLabel(type);\n const isSeriesVisible = seriesItems.length > 0;\n const isAddSeriesVisible = seriesItems.length < maxSeriesCount;\n\n return (\n <div className=\"chart-builder\">\n <form onSubmit={this.handleSubmit}>\n <div className=\"form-row\">\n <label>Select Chart Type</label>\n <div className=\"form-row\">\n {ChartBuilder.types.map((chartType, index) => {\n const key = (chartType as unknown) as React.Key;\n return (\n <div key={key} className=\"col col-chart-type\">\n <button\n type=\"button\"\n className={classNames(\n 'btn',\n 'btn-icon',\n 'btn-chart-type',\n {\n active: chartType === type,\n }\n )}\n data-index={index}\n onClick={this.handleTypeClick}\n >\n {ChartBuilder.getTypeIcon(chartType)}\n {ChartBuilder.getTypeName(chartType)}\n </button>\n </div>\n );\n })}\n </div>\n </div>\n <hr />\n <div className=\"form-row form-inline\">\n <label className=\"col-2 label-left\">{xAxisLabel}</label>\n <select\n className=\"form-control custom-select select-x-axis col\"\n value={xAxis}\n onChange={this.handleXAxisChange}\n >\n {columns.map(column => (\n <option key={column.name} value={column.name}>\n {column.name}\n </option>\n ))}\n </select>\n </div>\n {isSeriesVisible && <hr />}\n {seriesItems.map((seriesItem, i) => (\n <div\n className=\"form-row form-inline form-series-item\"\n key={seriesItem.id}\n data-testid={`form-series-item-${i}`}\n >\n <label className=\"col-2 label-left\">\n {i === 0 ? seriesLabel : ''}\n </label>\n <select\n className=\"form-control custom-select select-series col\"\n value={seriesItem.value}\n onChange={this.handleSeriesChange}\n data-testid={`select-series-item-${i}`}\n data-index={i}\n >\n {columns.map(column => (\n <option key={column.name} value={column.name} data-index={i}>\n {column.name}\n </option>\n ))}\n </select>\n {seriesItems.length > 1 && (\n <Button\n kind=\"ghost\"\n className=\"btn-delete-series ml-2 px-2\"\n data-index={i}\n data-testid={`delete-series-${i}`}\n onClick={this.handleSeriesDeleteClick}\n icon={vsTrash}\n tooltip=\"Delete\"\n />\n )}\n </div>\n ))}\n {isAddSeriesVisible && (\n <div className=\"form-row\">\n <div className=\"col-2\" />\n <Button\n kind=\"ghost\"\n className=\"btn-add-series mt-1\"\n onClick={this.handleAddSeries}\n icon={dhNewCircleLargeFilled}\n >\n Add Series\n </Button>\n </div>\n )}\n <div className=\"form-row chart-builder-link\">\n <label className=\"col-2 label-right\">\n <div className=\"fa-md fa-layers\">\n <FontAwesomeIcon\n mask={dhTable}\n icon={vsCircleLargeFilled}\n transform=\"right-5 down-5\"\n />\n <FontAwesomeIcon\n icon={isLinked ? vsLink : dhUnlink}\n transform=\"grow-2 right-8 down-6\"\n />\n </div>\n </label>\n <RadioGroup\n onChange={this.handleLinkStateChange}\n value={`${isLinked}`}\n >\n <RadioItem value=\"true\">Sync State</RadioItem>\n <RadioItem value=\"false\">Freeze State</RadioItem>\n </RadioGroup>\n </div>\n <div className=\"form-row\">\n <div className=\"col-2 label-right\" />\n <div className=\"col chart-builder-link-info\">\n {isLinked\n ? 'Charts with synced state will update to match any filters or user modifications applied to the parent table.'\n : 'Freeze State disconnects the chart state from the parent table. New filters or user modifications on the parent table will not be applied.'}\n </div>\n </div>\n <div\n className={classNames('form-row', 'justify-content-end', 'my-3')}\n >\n <Button\n kind=\"secondary\"\n className=\"btn-reset\"\n onClick={this.handleReset}\n >\n Reset\n </Button>\n <Button kind=\"primary\" type=\"submit\" className=\"btn-submit\">\n Create\n </Button>\n </div>\n </form>\n </div>\n );\n }\n}\n\nexport default ChartBuilder;\n"],"mappings":"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"}
@@ -4,7 +4,7 @@ import { DraggableItemList, Range, RenderItemProps } from '@deephaven/components
4
4
  import { SortDirection } from '@deephaven/jsapi-utils';
5
5
  import memoize from 'memoizee';
6
6
  import './RollupRows.scss';
7
- import type { Column } from '@deephaven/jsapi-types';
7
+ import { Column } from '@deephaven/jsapi-shim';
8
8
  import IrisGridModel from '../IrisGridModel';
9
9
  import { ColumnName } from '../CommonTypes';
10
10
  export interface UIRollupConfig {
@@ -1 +1 @@
1
- {"version":3,"file":"RollupRows.d.ts","sourceRoot":"","sources":["../../src/sidebar/RollupRows.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RollupRows.d.ts","sourceRoot":"","sources":["../../src/sidebar/RollupRows.tsx"],"names":[],"mappings":"AACA,OAAc,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAG/E,OAAO,EAEL,iBAAiB,EACjB,SAAS,EAET,UAAU,EACX,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAEL,iBAAiB,EAIjB,KAAK,EACL,eAAe,EAEhB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAc,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,OAAO,MAAM,UAAU,CAAC;AAI/B,OAAO,mBAAmB,CAAC;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAO5C,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,wBAAwB,EAAE,OAAO,CAAC;IAClC,mBAAmB,EAAE,IAAI,CAAC;CAC3B;AAED,UAAU,eAAe;IACvB,KAAK,EAAE,aAAa,CAAC;IACrB,QAAQ,EAAE,CAAC,YAAY,EAAE,cAAc,KAAK,IAAI,CAAC;IACjD,MAAM,EAAE,cAAc,GAAG,IAAI,CAAC;CAC/B;AAED,UAAU,eAAe;IACvB,uBAAuB,EAAE,KAAK,EAAE,CAAC;IACjC,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,qBAAqB,EAAE,KAAK,EAAE,CAAC;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,wBAAwB,EAAE,OAAO,CAAC;IAClC,UAAU,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACrC,IAAI,EAAE,aAAa,CAAC;CACrB;AAED,cAAM,UAAW,SAAQ,SAAS,CAAC,eAAe,EAAE,eAAe,CAAC;IAClE,MAAM,CAAC,IAAI;;;OAGR;IAEH,MAAM,CAAC,YAAY;;wBAEH,IAAI;MAClB;IAEF,MAAM,CAAC,YAAY,CAAC,EAClB,IAAI,EACJ,OAAO,EACP,aAAa,GACd,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG;QAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,GAAG,YAAY;IAShB,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAAE,MAAM,EAAE,EAC1B,YAAY,EAAE,MAAM,EAAE,EACtB,KAAK,GAAE,MAAgC,GACtC,MAAM,EAAE;IAmBX,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;gBAI/B,KAAK,EAAE,eAAe;IA8ClC,kBAAkB,CAChB,SAAS,EAAE,eAAe,EAC1B,SAAS,EAAE,eAAe,GACzB,IAAI;IAqBP,oBAAoB,IAAI,IAAI;IAI5B,aAAa,EAAE,SAAS,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;IAEpD,WAAW,EAAE,SAAS,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;IAElD,kBAAkB,CAAC,KAAK,EAAE,WAAW,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAW9D,mBAAmB,IAAI,IAAI;IAS3B,oBAAoB,IAAI,IAAI;IAS5B,cAAc,IAAI,IAAI;IAItB,MAAM,gDAA2B,MAAM,WAmBnB;IAEpB,eAAe,CAAC,CAAC,EAAE,SAAS,GAAG,IAAI;IAQnC,aAAa,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;IAwElC,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAY9C,8BAA8B,CAAC,uBAAuB,EAAE,KAAK,EAAE,GAAG,IAAI;IAatE,4BAA4B,CAAC,qBAAqB,EAAE,KAAK,EAAE,GAAG,IAAI;IAWlE,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQxC,4BAA4B,IAAI,IAAI;IAMpC,oCAAoC,IAAI,IAAI;IAM5C,gBAAgB,IAAI,IAAI;IAUxB,UAAU,IAAI,IAAI;IAUlB,yBAAyB,aAEZ,SAAS,MAAM,EAAE,kBACV,SAAS,UAAU,EAAE,KACpC,SAAS,MAAM,EAAE,+BAFT,SAAS,MAAM,EAAE,kBACV,SAAS,UAAU,EAAE,KACpC,SAAS,MAAM,EAAE,EAMpB;IAEF,sBAAsB,aACV,SAAS,MAAM,EAAE,SAAS,aAAa,KAAG,SAAS,MAAM,EAAE,+BAA3D,SAAS,MAAM,EAAE,SAAS,aAAa,KAAG,SAAS,MAAM,EAAE,EAIrE;IAEF,mBAAmB,IAAI,SAAS,MAAM,EAAE;IAQxC,yBAAyB,IAAI,SAAS,MAAM,EAAE;IAM9C,iBAAiB,CAAC,EAChB,IAAI,EACJ,SAAS,EACT,OAAO,EACP,aAAa,GACd,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG;QAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,GAAG,YAAY;IAwBhB,MAAM,IAAI,YAAY;CAkJvB;AAED,eAAe,UAAU,CAAC"}