@deephaven/iris-grid 0.22.3-beta.18 → 0.22.3-beta.21
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.
- package/dist/AdvancedFilterCreator.js +7 -65
- package/dist/AdvancedFilterCreator.js.map +1 -1
- package/dist/AdvancedFilterCreatorFilterItem.js +0 -23
- package/dist/AdvancedFilterCreatorFilterItem.js.map +1 -1
- package/dist/AdvancedFilterCreatorSelectValue.js +0 -52
- package/dist/AdvancedFilterCreatorSelectValue.js.map +1 -1
- package/dist/AdvancedFilterCreatorSelectValueList.js +2 -42
- package/dist/AdvancedFilterCreatorSelectValueList.js.map +1 -1
- package/dist/ColumnHeaderGroup.js +0 -11
- package/dist/ColumnHeaderGroup.js.map +1 -1
- package/dist/ColumnStatistics.js +1 -20
- package/dist/ColumnStatistics.js.map +1 -1
- package/dist/CrossColumnSearch.js +2 -23
- package/dist/CrossColumnSearch.js.map +1 -1
- package/dist/FilterInputField.js +2 -36
- package/dist/FilterInputField.js.map +1 -1
- package/dist/GotoRow.d.ts +1 -1
- package/dist/GotoRow.d.ts.map +1 -1
- package/dist/GotoRow.js +2 -7
- package/dist/GotoRow.js.map +1 -1
- package/dist/IrisGrid.d.ts +11 -5
- package/dist/IrisGrid.d.ts.map +1 -1
- package/dist/IrisGrid.js +77 -519
- package/dist/IrisGrid.js.map +1 -1
- package/dist/IrisGridBottomBar.d.ts +1 -1
- package/dist/IrisGridBottomBar.d.ts.map +1 -1
- package/dist/IrisGridBottomBar.js +2 -2
- package/dist/IrisGridBottomBar.js.map +1 -1
- package/dist/IrisGridCellOverflowModal.js +6 -21
- package/dist/IrisGridCellOverflowModal.js.map +1 -1
- package/dist/IrisGridCopyHandler.js +3 -50
- package/dist/IrisGridCopyHandler.js.map +1 -1
- package/dist/IrisGridMetricCalculator.js +2 -12
- package/dist/IrisGridMetricCalculator.js.map +1 -1
- package/dist/IrisGridModel.js +32 -58
- package/dist/IrisGridModel.js.map +1 -1
- package/dist/IrisGridModelFactory.js +0 -7
- package/dist/IrisGridModelFactory.js.map +1 -1
- package/dist/IrisGridModelUpdater.js +0 -4
- package/dist/IrisGridModelUpdater.js.map +1 -1
- package/dist/IrisGridPartitionSelector.js +0 -23
- package/dist/IrisGridPartitionSelector.js.map +1 -1
- package/dist/IrisGridProxyModel.js +9 -153
- package/dist/IrisGridProxyModel.js.map +1 -1
- package/dist/IrisGridRenderer.js +41 -183
- package/dist/IrisGridRenderer.js.map +1 -1
- package/dist/IrisGridShortcuts.js.map +1 -1
- package/dist/IrisGridTableModel.js +7 -86
- package/dist/IrisGridTableModel.js.map +1 -1
- package/dist/IrisGridTableModelTemplate.js +70 -461
- package/dist/IrisGridTableModelTemplate.js.map +1 -1
- package/dist/IrisGridTestUtils.js +0 -23
- package/dist/IrisGridTestUtils.js.map +1 -1
- package/dist/IrisGridTheme.js.map +1 -1
- package/dist/IrisGridTreeTableModel.js +3 -42
- package/dist/IrisGridTreeTableModel.js.map +1 -1
- package/dist/IrisGridUtils.d.ts +8 -2
- package/dist/IrisGridUtils.d.ts.map +1 -1
- package/dist/IrisGridUtils.js +97 -195
- package/dist/IrisGridUtils.js.map +1 -1
- package/dist/MissingKeyError.js +0 -7
- package/dist/MissingKeyError.js.map +1 -1
- package/dist/PartitionSelectorSearch.js +2 -48
- package/dist/PartitionSelectorSearch.js.map +1 -1
- package/dist/PendingDataBottomBar.d.ts +1 -1
- package/dist/PendingDataBottomBar.d.ts.map +1 -1
- package/dist/PendingDataBottomBar.js +2 -7
- package/dist/PendingDataBottomBar.js.map +1 -1
- package/dist/TableViewportUpdater.js +3 -29
- package/dist/TableViewportUpdater.js.map +1 -1
- package/dist/ToastBottomBar.d.ts +1 -1
- package/dist/ToastBottomBar.d.ts.map +1 -1
- package/dist/ToastBottomBar.js +2 -4
- package/dist/ToastBottomBar.js.map +1 -1
- package/dist/TreeTableViewportUpdater.js +0 -21
- package/dist/TreeTableViewportUpdater.js.map +1 -1
- package/dist/format-context-menus/CustomFormatAction.js +4 -25
- package/dist/format-context-menus/CustomFormatAction.js.map +1 -1
- package/dist/format-context-menus/DateTimeFormatContextMenu.js +0 -7
- package/dist/format-context-menus/DateTimeFormatContextMenu.js.map +1 -1
- package/dist/format-context-menus/DecimalFormatContextMenu.js +0 -9
- package/dist/format-context-menus/DecimalFormatContextMenu.js.map +1 -1
- package/dist/format-context-menus/FormatContextMenuUtils.js +3 -9
- package/dist/format-context-menus/FormatContextMenuUtils.js.map +1 -1
- package/dist/format-context-menus/IntegerFormatContextMenu.js +0 -8
- package/dist/format-context-menus/IntegerFormatContextMenu.js.map +1 -1
- package/dist/format-context-menus/index.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/key-handlers/ClearFilterKeyHandler.js +0 -8
- package/dist/key-handlers/ClearFilterKeyHandler.js.map +1 -1
- package/dist/key-handlers/CopyKeyHandler.js +1 -10
- package/dist/key-handlers/CopyKeyHandler.js.map +1 -1
- package/dist/key-handlers/ReverseKeyHandler.js +0 -11
- package/dist/key-handlers/ReverseKeyHandler.js.map +1 -1
- package/dist/key-handlers/index.js.map +1 -1
- package/dist/mousehandlers/IrisGridCellOverflowMouseHandler.js +2 -32
- package/dist/mousehandlers/IrisGridCellOverflowMouseHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.js +4 -34
- package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridColumnTooltipMouseHandler.js +0 -20
- package/dist/mousehandlers/IrisGridColumnTooltipMouseHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridContextMenuHandler.js +15 -105
- package/dist/mousehandlers/IrisGridContextMenuHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridDataSelectMouseHandler.js +0 -9
- package/dist/mousehandlers/IrisGridDataSelectMouseHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridFilterMouseHandler.js +0 -17
- package/dist/mousehandlers/IrisGridFilterMouseHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridSortMouseHandler.js +2 -15
- package/dist/mousehandlers/IrisGridSortMouseHandler.js.map +1 -1
- package/dist/mousehandlers/PendingMouseHandler.js +0 -6
- package/dist/mousehandlers/PendingMouseHandler.js.map +1 -1
- package/dist/mousehandlers/index.js.map +1 -1
- package/dist/sidebar/AdvancedSettings.js.map +1 -1
- package/dist/sidebar/AdvancedSettingsMenu.d.ts +4 -4
- package/dist/sidebar/AdvancedSettingsMenu.d.ts.map +1 -1
- package/dist/sidebar/AdvancedSettingsMenu.js +2 -6
- package/dist/sidebar/AdvancedSettingsMenu.js.map +1 -1
- package/dist/sidebar/AdvancedSettingsType.js +0 -2
- package/dist/sidebar/AdvancedSettingsType.js.map +1 -1
- package/dist/sidebar/ChartBuilder.js +2 -46
- package/dist/sidebar/ChartBuilder.js.map +1 -1
- package/dist/sidebar/CustomColumnBuilder.js +6 -58
- package/dist/sidebar/CustomColumnBuilder.js.map +1 -1
- package/dist/sidebar/CustomColumnInput.js +4 -15
- package/dist/sidebar/CustomColumnInput.js.map +1 -1
- package/dist/sidebar/InputEditor.js +5 -36
- package/dist/sidebar/InputEditor.js.map +1 -1
- package/dist/sidebar/OptionType.js +0 -2
- package/dist/sidebar/OptionType.js.map +1 -1
- package/dist/sidebar/RollupRows.js +9 -65
- package/dist/sidebar/RollupRows.js.map +1 -1
- package/dist/sidebar/SelectDistinctBuilder.js +0 -13
- package/dist/sidebar/SelectDistinctBuilder.js.map +1 -1
- package/dist/sidebar/TableCsvExporter.js +0 -52
- package/dist/sidebar/TableCsvExporter.js.map +1 -1
- package/dist/sidebar/TableSaver.js +10 -123
- package/dist/sidebar/TableSaver.js.map +1 -1
- package/dist/sidebar/VisibilityOrderingBuilder.js +37 -116
- package/dist/sidebar/VisibilityOrderingBuilder.js.map +1 -1
- package/dist/sidebar/aggregations/AggregationEdit.d.ts +1 -1
- package/dist/sidebar/aggregations/AggregationEdit.d.ts.map +1 -1
- package/dist/sidebar/aggregations/AggregationEdit.js +2 -14
- package/dist/sidebar/aggregations/AggregationEdit.js.map +1 -1
- package/dist/sidebar/aggregations/AggregationOperation.js +0 -2
- package/dist/sidebar/aggregations/AggregationOperation.js.map +1 -1
- package/dist/sidebar/aggregations/AggregationUtils.js +2 -5
- package/dist/sidebar/aggregations/AggregationUtils.js.map +1 -1
- package/dist/sidebar/aggregations/Aggregations.d.ts +1 -1
- package/dist/sidebar/aggregations/Aggregations.d.ts.map +1 -1
- package/dist/sidebar/aggregations/Aggregations.js +2 -12
- package/dist/sidebar/aggregations/Aggregations.js.map +1 -1
- package/dist/sidebar/conditional-formatting/ColumnFormatEditor.d.ts +1 -1
- package/dist/sidebar/conditional-formatting/ColumnFormatEditor.d.ts.map +1 -1
- package/dist/sidebar/conditional-formatting/ColumnFormatEditor.js +2 -16
- package/dist/sidebar/conditional-formatting/ColumnFormatEditor.js.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionEditor.d.ts +1 -1
- package/dist/sidebar/conditional-formatting/ConditionEditor.d.ts.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionEditor.js +2 -35
- package/dist/sidebar/conditional-formatting/ConditionEditor.js.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.d.ts +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.d.ts.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.js +2 -12
- package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.js.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormattingAPIUtils.js +0 -3
- package/dist/sidebar/conditional-formatting/ConditionalFormattingAPIUtils.js.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.d.ts +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.d.ts.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.js +16 -26
- package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.js.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.js +9 -172
- package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.js.map +1 -1
- package/dist/sidebar/conditional-formatting/RowFormatEditor.d.ts +1 -1
- package/dist/sidebar/conditional-formatting/RowFormatEditor.d.ts.map +1 -1
- package/dist/sidebar/conditional-formatting/RowFormatEditor.js +2 -16
- package/dist/sidebar/conditional-formatting/RowFormatEditor.js.map +1 -1
- package/dist/sidebar/conditional-formatting/StyleEditor.d.ts +1 -1
- package/dist/sidebar/conditional-formatting/StyleEditor.d.ts.map +1 -1
- package/dist/sidebar/conditional-formatting/StyleEditor.js +2 -12
- package/dist/sidebar/conditional-formatting/StyleEditor.js.map +1 -1
- package/dist/sidebar/icons/BarIcon.js +0 -3
- package/dist/sidebar/icons/BarIcon.js.map +1 -1
- package/dist/sidebar/icons/FormatColumnWhereIcon.js +2 -5
- package/dist/sidebar/icons/FormatColumnWhereIcon.js.map +1 -1
- package/dist/sidebar/icons/FormatRowWhereIcon.js +2 -5
- package/dist/sidebar/icons/FormatRowWhereIcon.js.map +1 -1
- package/dist/sidebar/icons/HistogramIcon.js +0 -3
- package/dist/sidebar/icons/HistogramIcon.js.map +1 -1
- package/dist/sidebar/icons/LineIcon.js +0 -3
- package/dist/sidebar/icons/LineIcon.js.map +1 -1
- package/dist/sidebar/icons/PieIcon.js +0 -3
- package/dist/sidebar/icons/PieIcon.js.map +1 -1
- package/dist/sidebar/icons/ScatterIcon.js +0 -3
- package/dist/sidebar/icons/ScatterIcon.js.map +1 -1
- package/dist/sidebar/icons/index.js.map +1 -1
- package/dist/sidebar/index.js.map +1 -1
- package/package.json +15 -15
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomColumnInput.js","names":["React","PureComponent","classNames","Draggable","FontAwesomeIcon","Button","Tooltip","vsTrash","vsGripper","InputEditor","CustomColumnInput","constructor","props","handleFormulaEditorContentChanged","bind","formulaValue","onChange","eventKey","undefined","replace","INPUT_TYPE","FORMULA","render","name","formula","onDeleteColumn","inputIndex","onTabInEditor","invalid","provided","snapshot","dragging","isDragging","innerRef","draggableProps","event","NAME","target","value","dragHandleProps","language"],"sources":["../../src/sidebar/CustomColumnInput.tsx"],"sourcesContent":["import React, { PureComponent, ReactElement } from 'react';\nimport classNames from 'classnames';\nimport { Draggable } from 'react-beautiful-dnd';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport { Button, Tooltip } from '@deephaven/components';\nimport { vsTrash, vsGripper } from '@deephaven/icons';\nimport InputEditor from './InputEditor';\nimport { CustomColumnKey } from './CustomColumnBuilder';\n\ninterface CustomColumnInputProps {\n eventKey: string;\n inputIndex: number;\n name: string;\n formula: string;\n onChange: (\n eventKey: string,\n inputType: CustomColumnKey,\n value: string\n ) => void;\n onDeleteColumn: (eventKey: string) => void;\n onTabInEditor: (editorIndex: number, shiftKey: boolean) => void;\n invalid: boolean;\n}\nclass CustomColumnInput extends PureComponent<\n CustomColumnInputProps,\n Record<string, never>\n> {\n static INPUT_TYPE = {\n NAME: 'name',\n FORMULA: 'formula',\n };\n\n static defaultProps = {\n name: '',\n inputIndex: 0,\n formula: '',\n onChange: (): void => undefined,\n onDeleteColumn: (): void => undefined,\n onTabInEditor: (): void => undefined,\n invalid: false,\n };\n\n constructor(props: CustomColumnInputProps) {\n super(props);\n this.handleFormulaEditorContentChanged = this.handleFormulaEditorContentChanged.bind(\n this\n );\n }\n\n handleFormulaEditorContentChanged(formulaValue?: string): void {\n const { onChange, eventKey } = this.props;\n if (formulaValue !== undefined && formulaValue !== '') {\n formulaValue.replace(/(\\r\\n|\\n|\\r)/gm, ''); // remove line break\n onChange(\n eventKey,\n CustomColumnInput.INPUT_TYPE.FORMULA as CustomColumnKey,\n formulaValue\n );\n }\n }\n\n render(): ReactElement {\n const {\n eventKey,\n name,\n formula,\n onChange,\n onDeleteColumn,\n inputIndex,\n onTabInEditor,\n invalid,\n } = this.props;\n return (\n <Draggable\n draggableId={eventKey}\n index={inputIndex}\n disableInteractiveElementBlocking\n >\n {(provided, snapshot) => (\n <div\n className={classNames('draggable-container', {\n dragging: snapshot.isDragging,\n })}\n ref={provided.innerRef}\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...provided.draggableProps}\n >\n <div className=\"custom-column-input-container\">\n <div className=\"d-flex flex-row pb-3 custom-column-name\">\n <input\n className={classNames('form-control custom-column-input', {\n 'is-invalid': invalid,\n })}\n placeholder=\"Column Name\"\n value={name}\n onChange={event => {\n onChange(\n eventKey,\n CustomColumnInput.INPUT_TYPE.NAME as CustomColumnKey,\n event.target.value\n );\n }}\n />\n <Button\n kind=\"ghost\"\n className=\"ml-1 px-2\"\n onClick={() => {\n onDeleteColumn(eventKey);\n }}\n icon={vsTrash}\n tooltip=\"Delete custom column\"\n />\n\n <button\n type=\"button\"\n className=\"btn btn-link btn-link-icon px-2 btn-drag-handle\"\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...provided.dragHandleProps}\n >\n <Tooltip>Drag column to re-order</Tooltip>\n <FontAwesomeIcon icon={vsGripper} />\n </button>\n </div>\n <InputEditor\n editorSettings={{ language: 'deephavenDb' }}\n editorIndex={inputIndex}\n value={formula}\n onContentChanged={this.handleFormulaEditorContentChanged}\n onTab={onTabInEditor}\n invalid={invalid}\n />\n </div>\n <hr />\n </div>\n )}\n </Draggable>\n );\n }\n}\n\nexport default CustomColumnInput;\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"CustomColumnInput.js","names":["React","PureComponent","classNames","Draggable","FontAwesomeIcon","Button","Tooltip","vsTrash","vsGripper","InputEditor","CustomColumnInput","constructor","props","handleFormulaEditorContentChanged","bind","formulaValue","onChange","eventKey","undefined","replace","INPUT_TYPE","FORMULA","render","name","formula","onDeleteColumn","inputIndex","onTabInEditor","invalid","provided","snapshot","dragging","isDragging","innerRef","draggableProps","event","NAME","target","value","dragHandleProps","language"],"sources":["../../src/sidebar/CustomColumnInput.tsx"],"sourcesContent":["import React, { PureComponent, ReactElement } from 'react';\nimport classNames from 'classnames';\nimport { Draggable } from 'react-beautiful-dnd';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport { Button, Tooltip } from '@deephaven/components';\nimport { vsTrash, vsGripper } from '@deephaven/icons';\nimport InputEditor from './InputEditor';\nimport { CustomColumnKey } from './CustomColumnBuilder';\n\ninterface CustomColumnInputProps {\n eventKey: string;\n inputIndex: number;\n name: string;\n formula: string;\n onChange: (\n eventKey: string,\n inputType: CustomColumnKey,\n value: string\n ) => void;\n onDeleteColumn: (eventKey: string) => void;\n onTabInEditor: (editorIndex: number, shiftKey: boolean) => void;\n invalid: boolean;\n}\nclass CustomColumnInput extends PureComponent<\n CustomColumnInputProps,\n Record<string, never>\n> {\n static INPUT_TYPE = {\n NAME: 'name',\n FORMULA: 'formula',\n };\n\n static defaultProps = {\n name: '',\n inputIndex: 0,\n formula: '',\n onChange: (): void => undefined,\n onDeleteColumn: (): void => undefined,\n onTabInEditor: (): void => undefined,\n invalid: false,\n };\n\n constructor(props: CustomColumnInputProps) {\n super(props);\n this.handleFormulaEditorContentChanged = this.handleFormulaEditorContentChanged.bind(\n this\n );\n }\n\n handleFormulaEditorContentChanged(formulaValue?: string): void {\n const { onChange, eventKey } = this.props;\n if (formulaValue !== undefined && formulaValue !== '') {\n formulaValue.replace(/(\\r\\n|\\n|\\r)/gm, ''); // remove line break\n onChange(\n eventKey,\n CustomColumnInput.INPUT_TYPE.FORMULA as CustomColumnKey,\n formulaValue\n );\n }\n }\n\n render(): ReactElement {\n const {\n eventKey,\n name,\n formula,\n onChange,\n onDeleteColumn,\n inputIndex,\n onTabInEditor,\n invalid,\n } = this.props;\n return (\n <Draggable\n draggableId={eventKey}\n index={inputIndex}\n disableInteractiveElementBlocking\n >\n {(provided, snapshot) => (\n <div\n className={classNames('draggable-container', {\n dragging: snapshot.isDragging,\n })}\n ref={provided.innerRef}\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...provided.draggableProps}\n >\n <div className=\"custom-column-input-container\">\n <div className=\"d-flex flex-row pb-3 custom-column-name\">\n <input\n className={classNames('form-control custom-column-input', {\n 'is-invalid': invalid,\n })}\n placeholder=\"Column Name\"\n value={name}\n onChange={event => {\n onChange(\n eventKey,\n CustomColumnInput.INPUT_TYPE.NAME as CustomColumnKey,\n event.target.value\n );\n }}\n />\n <Button\n kind=\"ghost\"\n className=\"ml-1 px-2\"\n onClick={() => {\n onDeleteColumn(eventKey);\n }}\n icon={vsTrash}\n tooltip=\"Delete custom column\"\n />\n\n <button\n type=\"button\"\n className=\"btn btn-link btn-link-icon px-2 btn-drag-handle\"\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...provided.dragHandleProps}\n >\n <Tooltip>Drag column to re-order</Tooltip>\n <FontAwesomeIcon icon={vsGripper} />\n </button>\n </div>\n <InputEditor\n editorSettings={{ language: 'deephavenDb' }}\n editorIndex={inputIndex}\n value={formula}\n onContentChanged={this.handleFormulaEditorContentChanged}\n onTab={onTabInEditor}\n invalid={invalid}\n />\n </div>\n <hr />\n </div>\n )}\n </Draggable>\n );\n }\n}\n\nexport default CustomColumnInput;\n"],"mappings":"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"}
|
|
@@ -1,25 +1,19 @@
|
|
|
1
1
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
|
-
|
|
3
2
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
4
|
-
|
|
5
3
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
|
-
|
|
7
4
|
import React, { Component } from 'react';
|
|
8
5
|
import * as monaco from 'monaco-editor';
|
|
9
6
|
import classNames from 'classnames';
|
|
10
7
|
import "./InputEditor.css";
|
|
11
|
-
|
|
12
8
|
/**
|
|
13
9
|
* A monaco editor that looks like an general input
|
|
14
10
|
*/
|
|
11
|
+
|
|
15
12
|
export default class InputEditor extends Component {
|
|
16
13
|
constructor(props) {
|
|
17
14
|
super(props);
|
|
18
|
-
|
|
19
15
|
_defineProperty(this, "editorContainer", void 0);
|
|
20
|
-
|
|
21
16
|
_defineProperty(this, "editor", void 0);
|
|
22
|
-
|
|
23
17
|
this.handleContentChanged = this.handleContentChanged.bind(this);
|
|
24
18
|
this.handleEditorFocus = this.handleEditorFocus.bind(this);
|
|
25
19
|
this.handleEditorBlur = this.handleEditorBlur.bind(this);
|
|
@@ -31,23 +25,18 @@ export default class InputEditor extends Component {
|
|
|
31
25
|
};
|
|
32
26
|
this.editorContainer = null;
|
|
33
27
|
}
|
|
34
|
-
|
|
35
28
|
componentDidMount() {
|
|
36
29
|
this.initEditor();
|
|
37
30
|
}
|
|
38
|
-
|
|
39
31
|
componentWillUnmount() {
|
|
40
32
|
this.destroyEditor();
|
|
41
33
|
}
|
|
42
|
-
|
|
43
34
|
initEditor() {
|
|
44
35
|
var _this$editor$getModel;
|
|
45
|
-
|
|
46
36
|
var {
|
|
47
37
|
value,
|
|
48
38
|
editorSettings
|
|
49
39
|
} = this.props;
|
|
50
|
-
|
|
51
40
|
var inputEditorSettings = _objectSpread({
|
|
52
41
|
copyWithSyntaxHighlighting: 'false',
|
|
53
42
|
fixedOverflowWidgets: true,
|
|
@@ -77,14 +66,13 @@ export default class InputEditor extends Component {
|
|
|
77
66
|
wordWrap: 'on',
|
|
78
67
|
automaticLayout: true
|
|
79
68
|
}, editorSettings);
|
|
80
|
-
|
|
81
69
|
if (!this.editorContainer) {
|
|
82
70
|
throw new Error('editorContainer is null');
|
|
83
71
|
}
|
|
84
|
-
|
|
85
72
|
this.editor = monaco.editor.create(this.editorContainer, inputEditorSettings);
|
|
86
|
-
this.editor.layout();
|
|
73
|
+
this.editor.layout();
|
|
87
74
|
|
|
75
|
+
// disable tab to spaces in this editor to improve tab navigation
|
|
88
76
|
(_this$editor$getModel = this.editor.getModel()) === null || _this$editor$getModel === void 0 ? void 0 : _this$editor$getModel.updateOptions({
|
|
89
77
|
tabSize: 0
|
|
90
78
|
});
|
|
@@ -92,78 +80,61 @@ export default class InputEditor extends Component {
|
|
|
92
80
|
this.editor.onDidFocusEditorText(this.handleEditorFocus);
|
|
93
81
|
this.editor.onDidBlurEditorText(this.handleEditorBlur);
|
|
94
82
|
}
|
|
95
|
-
|
|
96
83
|
destroyEditor() {
|
|
97
84
|
var _this$editor;
|
|
98
|
-
|
|
99
85
|
(_this$editor = this.editor) === null || _this$editor === void 0 ? void 0 : _this$editor.dispose();
|
|
100
86
|
this.editor = undefined;
|
|
101
87
|
}
|
|
102
|
-
|
|
103
88
|
handleContentChanged() {
|
|
104
89
|
var _this$editor2, _this$editor2$getMode;
|
|
105
|
-
|
|
106
90
|
var {
|
|
107
91
|
onContentChanged
|
|
108
92
|
} = this.props;
|
|
109
93
|
var value = (_this$editor2 = this.editor) === null || _this$editor2 === void 0 ? void 0 : (_this$editor2$getMode = _this$editor2.getModel()) === null || _this$editor2$getMode === void 0 ? void 0 : _this$editor2$getMode.getValue();
|
|
110
|
-
|
|
111
94
|
if (value !== '' && value !== undefined) {
|
|
112
95
|
this.setState({
|
|
113
96
|
isEditorEmpty: value.length === 0
|
|
114
97
|
});
|
|
115
98
|
}
|
|
116
|
-
|
|
117
99
|
onContentChanged(value);
|
|
118
100
|
}
|
|
119
|
-
|
|
120
101
|
handleEditorFocus() {
|
|
121
102
|
this.setState({
|
|
122
103
|
isEditorFocused: true
|
|
123
104
|
});
|
|
124
105
|
}
|
|
125
|
-
|
|
126
106
|
handleEditorBlur() {
|
|
127
107
|
var _this$editor3, _this$editor3$getMode;
|
|
128
|
-
|
|
129
108
|
var value = (_this$editor3 = this.editor) === null || _this$editor3 === void 0 ? void 0 : (_this$editor3$getMode = _this$editor3.getModel()) === null || _this$editor3$getMode === void 0 ? void 0 : _this$editor3$getMode.getValue();
|
|
130
|
-
|
|
131
109
|
if (value === undefined || value === '') {
|
|
132
110
|
throw new Error('value is undefined');
|
|
133
111
|
}
|
|
134
|
-
|
|
135
112
|
this.setState({
|
|
136
113
|
isEditorEmpty: value.length === 0,
|
|
137
114
|
isEditorFocused: false
|
|
138
115
|
});
|
|
139
|
-
}
|
|
140
|
-
|
|
116
|
+
}
|
|
141
117
|
|
|
118
|
+
// force editor to focus if clicked
|
|
142
119
|
handleContainerClick() {
|
|
143
120
|
var _this$editor4;
|
|
144
|
-
|
|
145
121
|
var {
|
|
146
122
|
isEditorFocused
|
|
147
123
|
} = this.state;
|
|
148
|
-
|
|
149
124
|
if (isEditorFocused) {
|
|
150
125
|
return;
|
|
151
126
|
}
|
|
152
|
-
|
|
153
127
|
(_this$editor4 = this.editor) === null || _this$editor4 === void 0 ? void 0 : _this$editor4.focus();
|
|
154
128
|
}
|
|
155
|
-
|
|
156
129
|
handleKeyDown(event) {
|
|
157
130
|
var {
|
|
158
131
|
onTab,
|
|
159
132
|
editorIndex
|
|
160
133
|
} = this.props;
|
|
161
|
-
|
|
162
134
|
if (event.key === 'Tab') {
|
|
163
135
|
onTab(editorIndex, event.shiftKey);
|
|
164
136
|
}
|
|
165
137
|
}
|
|
166
|
-
|
|
167
138
|
render() {
|
|
168
139
|
var {
|
|
169
140
|
value,
|
|
@@ -190,9 +161,7 @@ export default class InputEditor extends Component {
|
|
|
190
161
|
className: "editor-placeholder text-muted"
|
|
191
162
|
}, "Column Formula"));
|
|
192
163
|
}
|
|
193
|
-
|
|
194
164
|
}
|
|
195
|
-
|
|
196
165
|
_defineProperty(InputEditor, "defaultProps", {
|
|
197
166
|
value: '',
|
|
198
167
|
onContentChanged: () => undefined,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputEditor.js","names":["React","Component","monaco","classNames","InputEditor","constructor","props","handleContentChanged","bind","handleEditorFocus","handleEditorBlur","handleContainerClick","handleKeyDown","state","isEditorFocused","isEditorEmpty","editorContainer","componentDidMount","initEditor","componentWillUnmount","destroyEditor","value","editorSettings","inputEditorSettings","copyWithSyntaxHighlighting","fixedOverflowWidgets","folding","fontFamily","glyphMargin","language","lineDecorationsWidth","lineNumbers","minimap","enabled","renderLineHighlight","scrollbar","arrowSize","horizontal","horizontalScrollbarSize","scrollBeyondLastLine","padding","top","bottom","tabCompletion","useTabStops","wordWrap","automaticLayout","Error","editor","create","layout","getModel","updateOptions","tabSize","onDidChangeModelContent","onDidFocusEditorText","onDidBlurEditorText","dispose","undefined","onContentChanged","getValue","setState","length","focus","event","onTab","editorIndex","key","shiftKey","render","invalid","focused"],"sources":["../../src/sidebar/InputEditor.tsx"],"sourcesContent":["import React, { Component, ReactElement } from 'react';\nimport * as monaco from 'monaco-editor';\nimport classNames from 'classnames';\nimport './InputEditor.scss';\n\ninterface InputEditorProps {\n value: string;\n onContentChanged: (value?: string) => void;\n editorSettings: Partial<monaco.editor.IStandaloneEditorConstructionOptions>;\n editorIndex: number;\n onTab: (editorIndex: number, shiftKey: boolean) => void;\n invalid: boolean;\n}\n\ninterface InputEditorState {\n isEditorFocused: boolean;\n isEditorEmpty: boolean;\n}\n/**\n * A monaco editor that looks like an general input\n */\n\nexport default class InputEditor extends Component<\n InputEditorProps,\n InputEditorState\n> {\n static defaultProps = {\n value: '',\n onContentChanged: (): void => undefined,\n editorSettings: {},\n editorIndex: 0,\n onTab: (): void => undefined,\n invalid: false,\n };\n\n constructor(props: InputEditorProps) {\n super(props);\n\n this.handleContentChanged = this.handleContentChanged.bind(this);\n this.handleEditorFocus = this.handleEditorFocus.bind(this);\n this.handleEditorBlur = this.handleEditorBlur.bind(this);\n this.handleContainerClick = this.handleContainerClick.bind(this);\n this.handleKeyDown = this.handleKeyDown.bind(this);\n\n this.state = {\n isEditorFocused: false,\n isEditorEmpty: true,\n };\n this.editorContainer = null;\n }\n\n componentDidMount(): void {\n this.initEditor();\n }\n\n componentWillUnmount(): void {\n this.destroyEditor();\n }\n\n editorContainer: HTMLDivElement | null;\n\n editor?: monaco.editor.IStandaloneCodeEditor;\n\n initEditor(): void {\n const { value, editorSettings } = this.props;\n const inputEditorSettings = {\n copyWithSyntaxHighlighting: 'false',\n fixedOverflowWidgets: true,\n folding: false,\n fontFamily: 'Fira Mono',\n glyphMargin: false,\n language: 'groovyDB',\n lineDecorationsWidth: 8,\n lineNumbers: 'off',\n minimap: { enabled: false },\n renderLineHighlight: 'none',\n scrollbar: {\n arrowSize: 0,\n horizontal: 'hidden',\n horizontalScrollbarSize: 0,\n },\n scrollBeyondLastLine: false,\n padding: {\n top: 6,\n bottom: 6,\n },\n tabCompletion: 'off',\n useTabStops: true,\n value,\n wordWrap: 'on',\n automaticLayout: true,\n ...editorSettings,\n } as monaco.editor.IStandaloneEditorConstructionOptions;\n if (!this.editorContainer) {\n throw new Error('editorContainer is null');\n }\n this.editor = monaco.editor.create(\n this.editorContainer,\n inputEditorSettings\n );\n this.editor.layout();\n\n // disable tab to spaces in this editor to improve tab navigation\n this.editor.getModel()?.updateOptions({ tabSize: 0 });\n\n this.editor.onDidChangeModelContent(this.handleContentChanged);\n this.editor.onDidFocusEditorText(this.handleEditorFocus);\n this.editor.onDidBlurEditorText(this.handleEditorBlur);\n }\n\n destroyEditor(): void {\n this.editor?.dispose();\n this.editor = undefined;\n }\n\n handleContentChanged(): void {\n const { onContentChanged } = this.props;\n const value = this.editor?.getModel()?.getValue();\n if (value !== '' && value !== undefined) {\n this.setState({ isEditorEmpty: value.length === 0 });\n }\n onContentChanged(value);\n }\n\n handleEditorFocus(): void {\n this.setState({ isEditorFocused: true });\n }\n\n handleEditorBlur(): void {\n const value = this.editor?.getModel()?.getValue();\n if (value === undefined || value === '') {\n throw new Error('value is undefined');\n }\n this.setState({\n isEditorEmpty: value.length === 0,\n isEditorFocused: false,\n });\n }\n\n // force editor to focus if clicked\n handleContainerClick(): void {\n const { isEditorFocused } = this.state;\n if (isEditorFocused) {\n return;\n }\n this.editor?.focus();\n }\n\n handleKeyDown(event: React.KeyboardEvent<HTMLDivElement>): void {\n const { onTab, editorIndex } = this.props;\n if (event.key === 'Tab') {\n onTab(editorIndex, event.shiftKey);\n }\n }\n\n render(): ReactElement {\n const { value, invalid } = this.props;\n const { isEditorFocused, isEditorEmpty } = this.state;\n return (\n <div\n className={classNames('input-editor-wrapper', {\n focused: isEditorFocused,\n invalid,\n })}\n onKeyDown={this.handleKeyDown}\n role=\"presentation\"\n onClick={this.handleContainerClick}\n >\n <div\n className=\"editor-container\"\n ref={editorContainer => {\n this.editorContainer = editorContainer;\n }}\n />\n {isEditorEmpty && !value && (\n <div className=\"editor-placeholder text-muted\">Column Formula</div>\n )}\n </div>\n );\n }\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"InputEditor.js","names":["React","Component","monaco","classNames","InputEditor","constructor","props","handleContentChanged","bind","handleEditorFocus","handleEditorBlur","handleContainerClick","handleKeyDown","state","isEditorFocused","isEditorEmpty","editorContainer","componentDidMount","initEditor","componentWillUnmount","destroyEditor","value","editorSettings","inputEditorSettings","copyWithSyntaxHighlighting","fixedOverflowWidgets","folding","fontFamily","glyphMargin","language","lineDecorationsWidth","lineNumbers","minimap","enabled","renderLineHighlight","scrollbar","arrowSize","horizontal","horizontalScrollbarSize","scrollBeyondLastLine","padding","top","bottom","tabCompletion","useTabStops","wordWrap","automaticLayout","Error","editor","create","layout","getModel","updateOptions","tabSize","onDidChangeModelContent","onDidFocusEditorText","onDidBlurEditorText","dispose","undefined","onContentChanged","getValue","setState","length","focus","event","onTab","editorIndex","key","shiftKey","render","invalid","focused"],"sources":["../../src/sidebar/InputEditor.tsx"],"sourcesContent":["import React, { Component, ReactElement } from 'react';\nimport * as monaco from 'monaco-editor';\nimport classNames from 'classnames';\nimport './InputEditor.scss';\n\ninterface InputEditorProps {\n value: string;\n onContentChanged: (value?: string) => void;\n editorSettings: Partial<monaco.editor.IStandaloneEditorConstructionOptions>;\n editorIndex: number;\n onTab: (editorIndex: number, shiftKey: boolean) => void;\n invalid: boolean;\n}\n\ninterface InputEditorState {\n isEditorFocused: boolean;\n isEditorEmpty: boolean;\n}\n/**\n * A monaco editor that looks like an general input\n */\n\nexport default class InputEditor extends Component<\n InputEditorProps,\n InputEditorState\n> {\n static defaultProps = {\n value: '',\n onContentChanged: (): void => undefined,\n editorSettings: {},\n editorIndex: 0,\n onTab: (): void => undefined,\n invalid: false,\n };\n\n constructor(props: InputEditorProps) {\n super(props);\n\n this.handleContentChanged = this.handleContentChanged.bind(this);\n this.handleEditorFocus = this.handleEditorFocus.bind(this);\n this.handleEditorBlur = this.handleEditorBlur.bind(this);\n this.handleContainerClick = this.handleContainerClick.bind(this);\n this.handleKeyDown = this.handleKeyDown.bind(this);\n\n this.state = {\n isEditorFocused: false,\n isEditorEmpty: true,\n };\n this.editorContainer = null;\n }\n\n componentDidMount(): void {\n this.initEditor();\n }\n\n componentWillUnmount(): void {\n this.destroyEditor();\n }\n\n editorContainer: HTMLDivElement | null;\n\n editor?: monaco.editor.IStandaloneCodeEditor;\n\n initEditor(): void {\n const { value, editorSettings } = this.props;\n const inputEditorSettings = {\n copyWithSyntaxHighlighting: 'false',\n fixedOverflowWidgets: true,\n folding: false,\n fontFamily: 'Fira Mono',\n glyphMargin: false,\n language: 'groovyDB',\n lineDecorationsWidth: 8,\n lineNumbers: 'off',\n minimap: { enabled: false },\n renderLineHighlight: 'none',\n scrollbar: {\n arrowSize: 0,\n horizontal: 'hidden',\n horizontalScrollbarSize: 0,\n },\n scrollBeyondLastLine: false,\n padding: {\n top: 6,\n bottom: 6,\n },\n tabCompletion: 'off',\n useTabStops: true,\n value,\n wordWrap: 'on',\n automaticLayout: true,\n ...editorSettings,\n } as monaco.editor.IStandaloneEditorConstructionOptions;\n if (!this.editorContainer) {\n throw new Error('editorContainer is null');\n }\n this.editor = monaco.editor.create(\n this.editorContainer,\n inputEditorSettings\n );\n this.editor.layout();\n\n // disable tab to spaces in this editor to improve tab navigation\n this.editor.getModel()?.updateOptions({ tabSize: 0 });\n\n this.editor.onDidChangeModelContent(this.handleContentChanged);\n this.editor.onDidFocusEditorText(this.handleEditorFocus);\n this.editor.onDidBlurEditorText(this.handleEditorBlur);\n }\n\n destroyEditor(): void {\n this.editor?.dispose();\n this.editor = undefined;\n }\n\n handleContentChanged(): void {\n const { onContentChanged } = this.props;\n const value = this.editor?.getModel()?.getValue();\n if (value !== '' && value !== undefined) {\n this.setState({ isEditorEmpty: value.length === 0 });\n }\n onContentChanged(value);\n }\n\n handleEditorFocus(): void {\n this.setState({ isEditorFocused: true });\n }\n\n handleEditorBlur(): void {\n const value = this.editor?.getModel()?.getValue();\n if (value === undefined || value === '') {\n throw new Error('value is undefined');\n }\n this.setState({\n isEditorEmpty: value.length === 0,\n isEditorFocused: false,\n });\n }\n\n // force editor to focus if clicked\n handleContainerClick(): void {\n const { isEditorFocused } = this.state;\n if (isEditorFocused) {\n return;\n }\n this.editor?.focus();\n }\n\n handleKeyDown(event: React.KeyboardEvent<HTMLDivElement>): void {\n const { onTab, editorIndex } = this.props;\n if (event.key === 'Tab') {\n onTab(editorIndex, event.shiftKey);\n }\n }\n\n render(): ReactElement {\n const { value, invalid } = this.props;\n const { isEditorFocused, isEditorEmpty } = this.state;\n return (\n <div\n className={classNames('input-editor-wrapper', {\n focused: isEditorFocused,\n invalid,\n })}\n onKeyDown={this.handleKeyDown}\n role=\"presentation\"\n onClick={this.handleContainerClick}\n >\n <div\n className=\"editor-container\"\n ref={editorContainer => {\n this.editorContainer = editorContainer;\n }}\n />\n {isEditorEmpty && !value && (\n <div className=\"editor-placeholder text-muted\">Column Formula</div>\n )}\n </div>\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
var OptionType;
|
|
2
|
-
|
|
3
2
|
(function (OptionType) {
|
|
4
3
|
OptionType["ADVANCED_SETTINGS"] = "ADVANCED_SETTINGS";
|
|
5
4
|
OptionType["AGGREGATIONS"] = "AGGREGATIONS";
|
|
@@ -16,6 +15,5 @@ var OptionType;
|
|
|
16
15
|
OptionType["CONDITIONAL_FORMATTING_EDIT"] = "CONDITIONAL_FORMATTING_EDIT";
|
|
17
16
|
OptionType["GOTO"] = "GOTO";
|
|
18
17
|
})(OptionType || (OptionType = {}));
|
|
19
|
-
|
|
20
18
|
export default OptionType;
|
|
21
19
|
//# sourceMappingURL=OptionType.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OptionType.js","names":["OptionType"],"sources":["../../src/sidebar/OptionType.ts"],"sourcesContent":["enum OptionType {\n ADVANCED_SETTINGS = 'ADVANCED_SETTINGS',\n AGGREGATIONS = 'AGGREGATIONS',\n AGGREGATION_EDIT = 'AGGREGATIONS_EDIT',\n CHART_BUILDER = 'CHART_BUILDER',\n CUSTOM_COLUMN_BUILDER = 'CUSTOM_COLUMN_BUILDER',\n QUICK_FILTERS = 'QUICK_FILTERS',\n ROLLUP_ROWS = 'ROLLUP_ROWS',\n SEARCH_BAR = 'SEARCH_BAR',\n SELECT_DISTINCT = 'SELECT_DISTINCT',\n TABLE_EXPORTER = 'TABLE_EXPORTER',\n VISIBILITY_ORDERING_BUILDER = 'VISIBILITY_ORDERING_BUILDER',\n CONDITIONAL_FORMATTING = 'CONDITIONAL_FORMATTING',\n CONDITIONAL_FORMATTING_EDIT = 'CONDITIONAL_FORMATTING_EDIT',\n GOTO = 'GOTO',\n}\n\nexport default OptionType;\n"],"mappings":"IAAKA,
|
|
1
|
+
{"version":3,"file":"OptionType.js","names":["OptionType"],"sources":["../../src/sidebar/OptionType.ts"],"sourcesContent":["enum OptionType {\n ADVANCED_SETTINGS = 'ADVANCED_SETTINGS',\n AGGREGATIONS = 'AGGREGATIONS',\n AGGREGATION_EDIT = 'AGGREGATIONS_EDIT',\n CHART_BUILDER = 'CHART_BUILDER',\n CUSTOM_COLUMN_BUILDER = 'CUSTOM_COLUMN_BUILDER',\n QUICK_FILTERS = 'QUICK_FILTERS',\n ROLLUP_ROWS = 'ROLLUP_ROWS',\n SEARCH_BAR = 'SEARCH_BAR',\n SELECT_DISTINCT = 'SELECT_DISTINCT',\n TABLE_EXPORTER = 'TABLE_EXPORTER',\n VISIBILITY_ORDERING_BUILDER = 'VISIBILITY_ORDERING_BUILDER',\n CONDITIONAL_FORMATTING = 'CONDITIONAL_FORMATTING',\n CONDITIONAL_FORMATTING_EDIT = 'CONDITIONAL_FORMATTING_EDIT',\n GOTO = 'GOTO',\n}\n\nexport default OptionType;\n"],"mappings":"IAAKA,UAAU;AAAA,WAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;AAAA,GAAVA,UAAU,KAAVA,UAAU;AAiBf,eAAeA,UAAU"}
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
|
-
|
|
3
2
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
4
|
-
|
|
5
3
|
/* eslint-disable jsx-a11y/click-events-have-key-events */
|
|
6
4
|
import React, { Component } from 'react';
|
|
7
5
|
import classNames from 'classnames';
|
|
@@ -19,7 +17,6 @@ var log = Log.module('RollupRows');
|
|
|
19
17
|
var DEBOUNCE_SEARCH = 150;
|
|
20
18
|
var GROUPED_LIST_ID = 'grouped-rollup-rows';
|
|
21
19
|
var UNGROUPED_LIST_ID = 'ungrouped-rollup-rows';
|
|
22
|
-
|
|
23
20
|
class RollupRows extends Component {
|
|
24
21
|
static renderColumn(_ref) {
|
|
25
22
|
var {
|
|
@@ -36,72 +33,54 @@ class RollupRows extends Component {
|
|
|
36
33
|
className
|
|
37
34
|
});
|
|
38
35
|
}
|
|
39
|
-
|
|
40
36
|
static addGroupings(currentGroupings, newGroupings) {
|
|
41
37
|
var index = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : currentGroupings.length;
|
|
42
|
-
|
|
43
38
|
if (newGroupings == null || newGroupings.length === 0) {
|
|
44
39
|
return currentGroupings;
|
|
45
40
|
}
|
|
46
|
-
|
|
47
41
|
var insertIndex = index;
|
|
48
42
|
var groupings = currentGroupings.filter((grouping, i) => {
|
|
49
43
|
if (newGroupings.includes(grouping)) {
|
|
50
44
|
if (i < insertIndex) {
|
|
51
45
|
insertIndex -= 1;
|
|
52
46
|
}
|
|
53
|
-
|
|
54
47
|
return false;
|
|
55
48
|
}
|
|
56
|
-
|
|
57
49
|
return true;
|
|
58
50
|
});
|
|
59
51
|
groupings.splice(insertIndex, 0, ...newGroupings);
|
|
60
52
|
return groupings;
|
|
61
53
|
}
|
|
62
|
-
|
|
63
54
|
static isGroupable(column) {
|
|
64
55
|
return !TableUtils.isDecimalType(column.type);
|
|
65
56
|
}
|
|
66
|
-
|
|
67
57
|
constructor(props) {
|
|
68
58
|
super(props);
|
|
69
|
-
|
|
70
59
|
_defineProperty(this, "ungroupedList", void 0);
|
|
71
|
-
|
|
72
60
|
_defineProperty(this, "groupedList", void 0);
|
|
73
|
-
|
|
74
61
|
_defineProperty(this, "search", debounce(searchFilter => {
|
|
75
62
|
var columns = this.getSortedUngroupedColumns();
|
|
76
63
|
var selectedRanges = [];
|
|
77
64
|
var focusIndex = null;
|
|
78
|
-
|
|
79
65
|
for (var i = 0; i < columns.length; i += 1) {
|
|
80
66
|
var column = columns[i];
|
|
81
|
-
|
|
82
67
|
if (column.name.toLowerCase().includes(searchFilter.toLowerCase())) {
|
|
83
68
|
if (focusIndex == null) {
|
|
84
69
|
focusIndex = i;
|
|
85
70
|
}
|
|
86
|
-
|
|
87
71
|
selectedRanges.push([i, i]);
|
|
88
72
|
}
|
|
89
73
|
}
|
|
90
|
-
|
|
91
74
|
assertNotNull(focusIndex);
|
|
92
75
|
this.setState({
|
|
93
76
|
ungroupedSelectedRanges: selectedRanges
|
|
94
77
|
});
|
|
95
|
-
|
|
96
78
|
if (selectedRanges.length > 0 && this.ungroupedList.current) {
|
|
97
79
|
this.ungroupedList.current.scrollToItem(focusIndex);
|
|
98
80
|
}
|
|
99
81
|
}, DEBOUNCE_SEARCH));
|
|
100
|
-
|
|
101
82
|
_defineProperty(this, "getCachedUngroupedColumns", memoize((columns, groupedColumns) => columns.filter(column => RollupRows.isGroupable(column) && groupedColumns.find(name => name === column.name) == null)));
|
|
102
|
-
|
|
103
83
|
_defineProperty(this, "getCachedSortedColumns", memoize((columns, sort) => sort == null ? [...columns] : TableUtils.sortColumns(columns, sort === RollupRows.SORT.ASCENDING)));
|
|
104
|
-
|
|
105
84
|
this.handleDeleteClicked = this.handleDeleteClicked.bind(this);
|
|
106
85
|
this.handleSearchChange = this.handleSearchChange.bind(this);
|
|
107
86
|
this.handleUngroupedSelect = this.handleUngroupedSelect.bind(this);
|
|
@@ -135,7 +114,6 @@ class RollupRows extends Component {
|
|
|
135
114
|
sort: null
|
|
136
115
|
};
|
|
137
116
|
}
|
|
138
|
-
|
|
139
117
|
componentDidUpdate(prevProps, prevState) {
|
|
140
118
|
var {
|
|
141
119
|
config
|
|
@@ -145,7 +123,6 @@ class RollupRows extends Component {
|
|
|
145
123
|
showConstituents,
|
|
146
124
|
showNonAggregatedColumns
|
|
147
125
|
} = this.state;
|
|
148
|
-
|
|
149
126
|
if (config !== prevProps.config) {
|
|
150
127
|
this.updateFromConfig();
|
|
151
128
|
} else if (columns !== prevState.columns || showConstituents !== prevState.showConstituents || showNonAggregatedColumns !== prevState.showNonAggregatedColumns) {
|
|
@@ -154,26 +131,21 @@ class RollupRows extends Component {
|
|
|
154
131
|
}
|
|
155
132
|
}
|
|
156
133
|
}
|
|
157
|
-
|
|
158
134
|
componentWillUnmount() {
|
|
159
135
|
this.search.cancel();
|
|
160
136
|
}
|
|
161
|
-
|
|
162
137
|
handleSearchChange(event) {
|
|
163
138
|
var searchFilter = event.target.value;
|
|
164
139
|
this.setState({
|
|
165
140
|
searchFilter
|
|
166
141
|
});
|
|
167
|
-
|
|
168
142
|
if (!searchFilter) {
|
|
169
143
|
this.search.cancel();
|
|
170
144
|
this.resetSelection();
|
|
171
145
|
return;
|
|
172
146
|
}
|
|
173
|
-
|
|
174
147
|
this.search(searchFilter);
|
|
175
148
|
}
|
|
176
|
-
|
|
177
149
|
handleSortAscending() {
|
|
178
150
|
this.setState(_ref2 => {
|
|
179
151
|
var {
|
|
@@ -184,7 +156,6 @@ class RollupRows extends Component {
|
|
|
184
156
|
};
|
|
185
157
|
});
|
|
186
158
|
}
|
|
187
|
-
|
|
188
159
|
handleSortDescending() {
|
|
189
160
|
this.setState(_ref3 => {
|
|
190
161
|
var {
|
|
@@ -195,14 +166,12 @@ class RollupRows extends Component {
|
|
|
195
166
|
};
|
|
196
167
|
});
|
|
197
168
|
}
|
|
198
|
-
|
|
199
169
|
resetSelection() {
|
|
200
170
|
this.setState({
|
|
201
171
|
ungroupedSelectedRanges: [],
|
|
202
172
|
groupedSelectedRanges: []
|
|
203
173
|
});
|
|
204
174
|
}
|
|
205
|
-
|
|
206
175
|
handleDragStart(e) {
|
|
207
176
|
log.debug('handleDragStart', e);
|
|
208
177
|
document.documentElement.classList.add('drag-pointer-events-none');
|
|
@@ -210,7 +179,6 @@ class RollupRows extends Component {
|
|
|
210
179
|
dragSource: e.source
|
|
211
180
|
});
|
|
212
181
|
}
|
|
213
|
-
|
|
214
182
|
handleDragEnd(e) {
|
|
215
183
|
log.debug('handleDragEnd', e);
|
|
216
184
|
document.documentElement.classList.remove('drag-pointer-events-none');
|
|
@@ -221,13 +189,12 @@ class RollupRows extends Component {
|
|
|
221
189
|
destination,
|
|
222
190
|
source
|
|
223
191
|
} = e;
|
|
224
|
-
|
|
225
192
|
if (destination == null || source == null) {
|
|
226
193
|
return;
|
|
227
|
-
}
|
|
228
|
-
// it must have came from the grouped list. Remove those grouped columns.
|
|
229
|
-
|
|
194
|
+
}
|
|
230
195
|
|
|
196
|
+
// We don't allow dragging within the ungrouped list, so if we're dragging into the ungrouped list,
|
|
197
|
+
// it must have came from the grouped list. Remove those grouped columns.
|
|
231
198
|
if (destination.droppableId === UNGROUPED_LIST_ID) {
|
|
232
199
|
this.setState(_ref4 => {
|
|
233
200
|
var {
|
|
@@ -243,19 +210,17 @@ class RollupRows extends Component {
|
|
|
243
210
|
};
|
|
244
211
|
});
|
|
245
212
|
return;
|
|
246
|
-
}
|
|
247
|
-
|
|
213
|
+
}
|
|
248
214
|
|
|
215
|
+
// Otherwise, it must be dropping into the grouped list, so we just need to check the source
|
|
249
216
|
var isSameList = source.droppableId === GROUPED_LIST_ID;
|
|
250
217
|
var destinationIndex = destination.index;
|
|
251
|
-
|
|
252
218
|
if (isSameList && source.index < destination.index) {
|
|
253
219
|
// react-beautiful-dnd adjusts the index when dragging within a list already, however that only supports single selection
|
|
254
220
|
// We need to change it back to the index we actually want it to drop at before adjusting for the removed source index, as
|
|
255
221
|
// we adjust the index based on all the selected ranges, not just the source.index.
|
|
256
222
|
destinationIndex += 1;
|
|
257
223
|
}
|
|
258
|
-
|
|
259
224
|
this.setState(_ref5 => {
|
|
260
225
|
var {
|
|
261
226
|
columns,
|
|
@@ -265,8 +230,9 @@ class RollupRows extends Component {
|
|
|
265
230
|
var newColumns = [...columns];
|
|
266
231
|
var sourceItems = isSameList ? newColumns : this.getSortedUngroupedColumns().map(c => c.name);
|
|
267
232
|
var sourceRanges = isSameList ? groupedSelectedRanges : ungroupedSelectedRanges;
|
|
268
|
-
var draggedItems = DragUtils.reorder(sourceItems, sourceRanges, newColumns, destinationIndex);
|
|
233
|
+
var draggedItems = DragUtils.reorder(sourceItems, sourceRanges, newColumns, destinationIndex);
|
|
269
234
|
|
|
235
|
+
// Select the newly dropped items
|
|
270
236
|
var insertIndex = isSameList ? DragUtils.adjustDestinationIndex(destinationIndex, groupedSelectedRanges) : destinationIndex;
|
|
271
237
|
var newSelectedRanges = [[insertIndex, insertIndex + draggedItems.length - 1]];
|
|
272
238
|
return {
|
|
@@ -277,7 +243,6 @@ class RollupRows extends Component {
|
|
|
277
243
|
});
|
|
278
244
|
this.resetSelection();
|
|
279
245
|
}
|
|
280
|
-
|
|
281
246
|
handleUngroupedSelect(itemIndex) {
|
|
282
247
|
log.debug('handleUngroupedSelect');
|
|
283
248
|
this.setState(_ref6 => {
|
|
@@ -291,43 +256,36 @@ class RollupRows extends Component {
|
|
|
291
256
|
};
|
|
292
257
|
});
|
|
293
258
|
}
|
|
294
|
-
|
|
295
259
|
handleUngroupedSelectionChange(ungroupedSelectedRanges) {
|
|
296
260
|
log.debug2('handleUngroupedSelectionChange', ungroupedSelectedRanges);
|
|
297
261
|
this.setState(_ref7 => {
|
|
298
262
|
var {
|
|
299
263
|
ungroupedSelectedRanges: stateUngroupedSelectedRanges
|
|
300
264
|
} = _ref7;
|
|
301
|
-
|
|
302
265
|
if (ungroupedSelectedRanges === stateUngroupedSelectedRanges) {
|
|
303
266
|
return null;
|
|
304
267
|
}
|
|
305
|
-
|
|
306
268
|
return {
|
|
307
269
|
ungroupedSelectedRanges,
|
|
308
270
|
groupedSelectedRanges: []
|
|
309
271
|
};
|
|
310
272
|
});
|
|
311
273
|
}
|
|
312
|
-
|
|
313
274
|
handleGroupedSelectionChange(groupedSelectedRanges) {
|
|
314
275
|
log.debug2('handleGroupedSelectedRanges', groupedSelectedRanges);
|
|
315
276
|
this.setState(_ref8 => {
|
|
316
277
|
var {
|
|
317
278
|
groupedSelectedRanges: stateGroupedSelectedRanges
|
|
318
279
|
} = _ref8;
|
|
319
|
-
|
|
320
280
|
if (groupedSelectedRanges === stateGroupedSelectedRanges) {
|
|
321
281
|
return null;
|
|
322
282
|
}
|
|
323
|
-
|
|
324
283
|
return {
|
|
325
284
|
groupedSelectedRanges,
|
|
326
285
|
ungroupedSelectedRanges: []
|
|
327
286
|
};
|
|
328
287
|
});
|
|
329
288
|
}
|
|
330
|
-
|
|
331
289
|
handleDeleteClicked(index) {
|
|
332
290
|
this.setState(_ref9 => {
|
|
333
291
|
var {
|
|
@@ -340,7 +298,6 @@ class RollupRows extends Component {
|
|
|
340
298
|
};
|
|
341
299
|
});
|
|
342
300
|
}
|
|
343
|
-
|
|
344
301
|
handleShowConstituentsChange() {
|
|
345
302
|
this.setState(_ref10 => {
|
|
346
303
|
var {
|
|
@@ -351,7 +308,6 @@ class RollupRows extends Component {
|
|
|
351
308
|
};
|
|
352
309
|
});
|
|
353
310
|
}
|
|
354
|
-
|
|
355
311
|
handleShowNonAggregatedColumnsChange() {
|
|
356
312
|
this.setState(_ref11 => {
|
|
357
313
|
var {
|
|
@@ -362,7 +318,6 @@ class RollupRows extends Component {
|
|
|
362
318
|
};
|
|
363
319
|
});
|
|
364
320
|
}
|
|
365
|
-
|
|
366
321
|
updateFromConfig() {
|
|
367
322
|
var {
|
|
368
323
|
config
|
|
@@ -378,7 +333,6 @@ class RollupRows extends Component {
|
|
|
378
333
|
showNonAggregatedColumns
|
|
379
334
|
});
|
|
380
335
|
}
|
|
381
|
-
|
|
382
336
|
sendChange() {
|
|
383
337
|
var {
|
|
384
338
|
onChange
|
|
@@ -394,7 +348,6 @@ class RollupRows extends Component {
|
|
|
394
348
|
showNonAggregatedColumns
|
|
395
349
|
});
|
|
396
350
|
}
|
|
397
|
-
|
|
398
351
|
getUngroupedColumns() {
|
|
399
352
|
var {
|
|
400
353
|
model
|
|
@@ -407,7 +360,6 @@ class RollupRows extends Component {
|
|
|
407
360
|
} = model;
|
|
408
361
|
return this.getCachedUngroupedColumns(originalColumns, columns);
|
|
409
362
|
}
|
|
410
|
-
|
|
411
363
|
getSortedUngroupedColumns() {
|
|
412
364
|
var {
|
|
413
365
|
sort
|
|
@@ -415,7 +367,6 @@ class RollupRows extends Component {
|
|
|
415
367
|
var columns = this.getUngroupedColumns();
|
|
416
368
|
return this.getCachedSortedColumns(columns, sort);
|
|
417
369
|
}
|
|
418
|
-
|
|
419
370
|
renderGroupedItem(_ref12) {
|
|
420
371
|
var {
|
|
421
372
|
item,
|
|
@@ -439,7 +390,6 @@ class RollupRows extends Component {
|
|
|
439
390
|
icon: vsTrash
|
|
440
391
|
})));
|
|
441
392
|
}
|
|
442
|
-
|
|
443
393
|
render() {
|
|
444
394
|
var {
|
|
445
395
|
columns,
|
|
@@ -453,11 +403,9 @@ class RollupRows extends Component {
|
|
|
453
403
|
} = this.state;
|
|
454
404
|
var ungroupedColumns = this.getSortedUngroupedColumns();
|
|
455
405
|
var groupListHeight = columns.length * DraggableItemList.DEFAULT_ROW_HEIGHT;
|
|
456
|
-
|
|
457
406
|
if ((dragSource === null || dragSource === void 0 ? void 0 : dragSource.droppableId) === UNGROUPED_LIST_ID) {
|
|
458
407
|
groupListHeight += DraggableItemList.DEFAULT_ROW_HEIGHT;
|
|
459
408
|
}
|
|
460
|
-
|
|
461
409
|
var ungroupMaxListHeight = ungroupedColumns.length * DraggableItemList.DEFAULT_ROW_HEIGHT + 10;
|
|
462
410
|
var ungroupMinListHeight = Math.min(3 * DraggableItemList.DEFAULT_ROW_HEIGHT, ungroupMaxListHeight);
|
|
463
411
|
return /*#__PURE__*/React.createElement("div", {
|
|
@@ -481,8 +429,8 @@ class RollupRows extends Component {
|
|
|
481
429
|
'is-dragging-over': snapshot.isDraggingOver,
|
|
482
430
|
'is-dropping': snapshot.draggingOverWith
|
|
483
431
|
}),
|
|
484
|
-
ref: provided.innerRef
|
|
485
|
-
|
|
432
|
+
ref: provided.innerRef
|
|
433
|
+
// eslint-disable-next-line react/jsx-props-no-spreading
|
|
486
434
|
}, provided.droppableProps), "Create rollup by dragging columns here, from the available columns list below.")), columns.length > 0 && /*#__PURE__*/React.createElement(DraggableItemList, {
|
|
487
435
|
draggingItemClassName: "rollup-rows-dragging-grouped-item",
|
|
488
436
|
draggablePrefix: GROUPED_LIST_ID,
|
|
@@ -556,18 +504,14 @@ class RollupRows extends Component {
|
|
|
556
504
|
onChange: this.handleShowNonAggregatedColumnsChange
|
|
557
505
|
}, "Non-Aggregated Columns")))));
|
|
558
506
|
}
|
|
559
|
-
|
|
560
507
|
}
|
|
561
|
-
|
|
562
508
|
_defineProperty(RollupRows, "SORT", Object.freeze({
|
|
563
509
|
ASCENDING: 'ASC',
|
|
564
510
|
DESCENDING: 'DESC'
|
|
565
511
|
}));
|
|
566
|
-
|
|
567
512
|
_defineProperty(RollupRows, "defaultProps", {
|
|
568
513
|
config: null,
|
|
569
514
|
onChange: () => undefined
|
|
570
515
|
});
|
|
571
|
-
|
|
572
516
|
export default RollupRows;
|
|
573
517
|
//# sourceMappingURL=RollupRows.js.map
|