@deephaven/grid 0.43.0 → 0.44.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/CellInputField.css +23 -0
- package/dist/CellInputField.css.map +1 -0
- package/dist/CellInputField.js +174 -0
- package/dist/CellInputField.js.map +1 -0
- package/dist/CellRenderer.js +64 -0
- package/dist/CellRenderer.js.map +1 -0
- package/dist/ColumnHeaderGroup.js +2 -0
- package/dist/ColumnHeaderGroup.js.map +1 -0
- package/dist/DataBarCellRenderer.js +404 -0
- package/dist/DataBarCellRenderer.js.map +1 -0
- package/dist/DataBarGridModel.js +27 -0
- package/dist/DataBarGridModel.js.map +1 -0
- package/dist/EditableGridModel.js +14 -0
- package/dist/EditableGridModel.js.map +1 -0
- package/dist/EventHandlerResult.js +2 -0
- package/dist/EventHandlerResult.js.map +1 -0
- package/dist/ExpandableGridModel.js +8 -0
- package/dist/ExpandableGridModel.js.map +1 -0
- package/dist/Grid.css +45 -0
- package/dist/Grid.css.map +1 -0
- package/dist/Grid.js +1947 -0
- package/dist/Grid.js.map +1 -0
- package/dist/GridAxisRange.js +17 -0
- package/dist/GridAxisRange.js.map +1 -0
- package/dist/GridColorUtils.js +146 -0
- package/dist/GridColorUtils.js.map +1 -0
- package/dist/GridMetricCalculator.js +1500 -0
- package/dist/GridMetricCalculator.js.map +1 -0
- package/dist/GridMetrics.js +2 -0
- package/dist/GridMetrics.js.map +1 -0
- package/dist/GridModel.js +193 -0
- package/dist/GridModel.js.map +1 -0
- package/dist/GridMouseHandler.js +57 -0
- package/dist/GridMouseHandler.js.map +1 -0
- package/dist/GridRange.js +684 -0
- package/dist/GridRange.js.map +1 -0
- package/dist/GridRenderer.js +2038 -0
- package/dist/GridRenderer.js.map +1 -0
- package/dist/GridRendererTypes.js +3 -0
- package/dist/GridRendererTypes.js.map +1 -0
- package/dist/GridTestUtils.js +16 -0
- package/dist/GridTestUtils.js.map +1 -0
- package/dist/GridTheme.js +100 -0
- package/dist/GridTheme.js.map +1 -0
- package/dist/GridUtils.js +1198 -0
- package/dist/GridUtils.js.map +1 -0
- package/dist/KeyHandler.js +36 -0
- package/dist/KeyHandler.js.map +1 -0
- package/dist/MockDataBarGridModel.js +119 -0
- package/dist/MockDataBarGridModel.js.map +1 -0
- package/dist/MockGridData.js +5 -0
- package/dist/MockGridData.js.map +1 -0
- package/dist/MockGridModel.js +122 -0
- package/dist/MockGridModel.js.map +1 -0
- package/dist/MockTreeGridModel.js +193 -0
- package/dist/MockTreeGridModel.js.map +1 -0
- package/dist/StaticDataGridModel.js +40 -0
- package/dist/StaticDataGridModel.js.map +1 -0
- package/dist/TextCellRenderer.js +210 -0
- package/dist/TextCellRenderer.js.map +1 -0
- package/dist/ThemeContext.js +4 -0
- package/dist/ThemeContext.js.map +1 -0
- package/dist/TokenBoxCellRenderer.js +4 -0
- package/dist/TokenBoxCellRenderer.js.map +1 -0
- package/dist/ViewportDataGridModel.js +43 -0
- package/dist/ViewportDataGridModel.js.map +1 -0
- package/dist/errors/AssertionError.js +11 -0
- package/dist/errors/AssertionError.js.map +1 -0
- package/dist/errors/PasteError.js +11 -0
- package/dist/errors/PasteError.js.map +1 -0
- package/dist/errors/assertIsDefined.js +8 -0
- package/dist/errors/assertIsDefined.js.map +1 -0
- package/dist/errors/index.js +4 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/index.js +32 -0
- package/dist/index.js.map +1 -0
- package/dist/key-handlers/EditKeyHandler.js +46 -0
- package/dist/key-handlers/EditKeyHandler.js.map +1 -0
- package/dist/key-handlers/PasteKeyHandler.js +124 -0
- package/dist/key-handlers/PasteKeyHandler.js.map +1 -0
- package/dist/key-handlers/SelectionKeyHandler.js +272 -0
- package/dist/key-handlers/SelectionKeyHandler.js.map +1 -0
- package/dist/key-handlers/TreeKeyHandler.js +45 -0
- package/dist/key-handlers/TreeKeyHandler.js.map +1 -0
- package/dist/key-handlers/index.js +5 -0
- package/dist/key-handlers/index.js.map +1 -0
- package/dist/memoizeClear.js +33 -0
- package/dist/memoizeClear.js.map +1 -0
- package/dist/mouse-handlers/EditMouseHandler.js +25 -0
- package/dist/mouse-handlers/EditMouseHandler.js.map +1 -0
- package/dist/mouse-handlers/GridColumnMoveMouseHandler.js +504 -0
- package/dist/mouse-handlers/GridColumnMoveMouseHandler.js.map +1 -0
- package/dist/mouse-handlers/GridColumnSeparatorMouseHandler.js +67 -0
- package/dist/mouse-handlers/GridColumnSeparatorMouseHandler.js.map +1 -0
- package/dist/mouse-handlers/GridHorizontalScrollBarMouseHandler.js +164 -0
- package/dist/mouse-handlers/GridHorizontalScrollBarMouseHandler.js.map +1 -0
- package/dist/mouse-handlers/GridRowMoveMouseHandler.js +139 -0
- package/dist/mouse-handlers/GridRowMoveMouseHandler.js.map +1 -0
- package/dist/mouse-handlers/GridRowSeparatorMouseHandler.js +54 -0
- package/dist/mouse-handlers/GridRowSeparatorMouseHandler.js.map +1 -0
- package/dist/mouse-handlers/GridRowTreeMouseHandler.js +58 -0
- package/dist/mouse-handlers/GridRowTreeMouseHandler.js.map +1 -0
- package/dist/mouse-handlers/GridScrollBarCornerMouseHandler.js +39 -0
- package/dist/mouse-handlers/GridScrollBarCornerMouseHandler.js.map +1 -0
- package/dist/mouse-handlers/GridSelectionMouseHandler.js +223 -0
- package/dist/mouse-handlers/GridSelectionMouseHandler.js.map +1 -0
- package/dist/mouse-handlers/GridSeparatorMouseHandler.js +213 -0
- package/dist/mouse-handlers/GridSeparatorMouseHandler.js.map +1 -0
- package/dist/mouse-handlers/GridTokenMouseHandler.js +161 -0
- package/dist/mouse-handlers/GridTokenMouseHandler.js.map +1 -0
- package/dist/mouse-handlers/GridVerticalScrollBarMouseHandler.js +165 -0
- package/dist/mouse-handlers/GridVerticalScrollBarMouseHandler.js.map +1 -0
- package/dist/mouse-handlers/index.js +13 -0
- package/dist/mouse-handlers/index.js.map +1 -0
- package/package.json +3 -3
|
@@ -0,0 +1,161 @@
|
|
|
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); }
|
|
4
|
+
/* eslint class-methods-use-this: "off" */
|
|
5
|
+
|
|
6
|
+
import { getOrThrow } from '@deephaven/utils';
|
|
7
|
+
import { isEditableGridModel } from "../EditableGridModel.js";
|
|
8
|
+
import GridMouseHandler from "../GridMouseHandler.js";
|
|
9
|
+
import GridRange from "../GridRange.js";
|
|
10
|
+
import GridUtils, { isLinkToken } from "../GridUtils.js";
|
|
11
|
+
import { isTokenBoxCellRenderer } from "../TokenBoxCellRenderer.js";
|
|
12
|
+
class GridTokenMouseHandler extends GridMouseHandler {
|
|
13
|
+
constructor() {
|
|
14
|
+
super(...arguments);
|
|
15
|
+
_defineProperty(this, "timeoutId", void 0);
|
|
16
|
+
_defineProperty(this, "isHold", false);
|
|
17
|
+
_defineProperty(this, "isDown", false);
|
|
18
|
+
_defineProperty(this, "currentLinkBox", void 0);
|
|
19
|
+
}
|
|
20
|
+
isHoveringLink(gridPoint, grid) {
|
|
21
|
+
var {
|
|
22
|
+
column,
|
|
23
|
+
row,
|
|
24
|
+
x,
|
|
25
|
+
y
|
|
26
|
+
} = gridPoint;
|
|
27
|
+
var {
|
|
28
|
+
renderer,
|
|
29
|
+
metrics,
|
|
30
|
+
props
|
|
31
|
+
} = grid;
|
|
32
|
+
var {
|
|
33
|
+
model
|
|
34
|
+
} = props;
|
|
35
|
+
if (column == null || row == null || metrics == null) {
|
|
36
|
+
this.currentLinkBox = undefined;
|
|
37
|
+
return false;
|
|
38
|
+
}
|
|
39
|
+
var {
|
|
40
|
+
modelRows,
|
|
41
|
+
modelColumns
|
|
42
|
+
} = metrics;
|
|
43
|
+
var modelRow = getOrThrow(modelRows, row);
|
|
44
|
+
var modelColumn = getOrThrow(modelColumns, column);
|
|
45
|
+
var renderType = model.renderTypeForCell(modelColumn, modelRow);
|
|
46
|
+
var cellRenderer = renderer.getCellRenderer(renderType);
|
|
47
|
+
if (!isTokenBoxCellRenderer(cellRenderer)) {
|
|
48
|
+
return false;
|
|
49
|
+
}
|
|
50
|
+
if (this.currentLinkBox != null) {
|
|
51
|
+
var {
|
|
52
|
+
x1: left,
|
|
53
|
+
y1: top,
|
|
54
|
+
x2: right,
|
|
55
|
+
y2: bottom
|
|
56
|
+
} = this.currentLinkBox;
|
|
57
|
+
if (x >= left && x <= right && y >= top && y <= bottom) {
|
|
58
|
+
return true;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
var renderState = grid.updateRenderState();
|
|
62
|
+
var tokensInCell = cellRenderer.getTokenBoxesForVisibleCell(column, row, renderState);
|
|
63
|
+
|
|
64
|
+
// Loop through each link and check if cursor is in bounds
|
|
65
|
+
for (var i = 0; i < tokensInCell.length; i += 1) {
|
|
66
|
+
if (isLinkToken(tokensInCell[i].token)) {
|
|
67
|
+
var translatedTokenBox = GridUtils.translateTokenBox(tokensInCell[i], metrics);
|
|
68
|
+
var {
|
|
69
|
+
x1: _left,
|
|
70
|
+
x2: _right,
|
|
71
|
+
y1: _top,
|
|
72
|
+
y2: _bottom
|
|
73
|
+
} = translatedTokenBox;
|
|
74
|
+
if (x >= _left && x <= _right && y >= _top && y <= _bottom) {
|
|
75
|
+
this.currentLinkBox = translatedTokenBox;
|
|
76
|
+
return true;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
// If this point is reached, that means the cursor was not hovering any of the links or there are no links
|
|
82
|
+
this.currentLinkBox = undefined;
|
|
83
|
+
return false;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Set the cursor to pointer when hovering over a link
|
|
88
|
+
* @param gridPoint Mouse position information
|
|
89
|
+
* @param grid The grid
|
|
90
|
+
* @returns False
|
|
91
|
+
*/
|
|
92
|
+
setCursor(gridPoint, grid) {
|
|
93
|
+
if (this.isHoveringLink(gridPoint, grid)) {
|
|
94
|
+
this.cursor = 'pointer';
|
|
95
|
+
} else {
|
|
96
|
+
this.cursor = null;
|
|
97
|
+
}
|
|
98
|
+
return false;
|
|
99
|
+
}
|
|
100
|
+
onMove(gridPoint, grid) {
|
|
101
|
+
return this.setCursor(gridPoint, grid);
|
|
102
|
+
}
|
|
103
|
+
onDown(gridPoint, grid, event) {
|
|
104
|
+
var isUserHoveringLink = this.isHoveringLink(gridPoint, grid);
|
|
105
|
+
|
|
106
|
+
// If a modifier key or shift is down, we don't want to handle it and set isDown to false so onUp won't handle it either
|
|
107
|
+
if (GridUtils.isModifierKeyDown(event) || event.shiftKey || !isUserHoveringLink) {
|
|
108
|
+
return false;
|
|
109
|
+
}
|
|
110
|
+
this.isDown = true;
|
|
111
|
+
if (this.timeoutId != null) {
|
|
112
|
+
clearTimeout(this.timeoutId);
|
|
113
|
+
}
|
|
114
|
+
this.isHold = false;
|
|
115
|
+
this.timeoutId = setTimeout(() => {
|
|
116
|
+
this.isHold = true;
|
|
117
|
+
var {
|
|
118
|
+
column,
|
|
119
|
+
row
|
|
120
|
+
} = gridPoint;
|
|
121
|
+
var {
|
|
122
|
+
model
|
|
123
|
+
} = grid.props;
|
|
124
|
+
|
|
125
|
+
// After 1 second, select the row and if it is an input table, start editing
|
|
126
|
+
grid.clearSelectedRanges();
|
|
127
|
+
grid.focus();
|
|
128
|
+
grid.moveCursorToPosition(column, row);
|
|
129
|
+
if (isEditableGridModel(model) && column != null && row != null && model.isEditableRange(GridRange.makeCell(column, row))) {
|
|
130
|
+
grid.startEditing(column, row);
|
|
131
|
+
}
|
|
132
|
+
}, GridTokenMouseHandler.HOLD_LENGTH);
|
|
133
|
+
return true;
|
|
134
|
+
}
|
|
135
|
+
onClick(gridPoint, grid) {
|
|
136
|
+
var isUserHoveringLink = this.isHoveringLink(gridPoint, grid);
|
|
137
|
+
if (!isUserHoveringLink || !this.isDown || this.currentLinkBox == null) {
|
|
138
|
+
this.isDown = false;
|
|
139
|
+
this.isHold = false;
|
|
140
|
+
return false;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
// User is hovering a link, isDown is true
|
|
144
|
+
// If isHold is true, then the select already happened so onUp shouldn't do anything
|
|
145
|
+
if (!this.isHold) {
|
|
146
|
+
var _this$currentLinkBox;
|
|
147
|
+
// Cancel the timeout and open a new tab with the link
|
|
148
|
+
if (this.timeoutId != null) {
|
|
149
|
+
clearTimeout(this.timeoutId);
|
|
150
|
+
}
|
|
151
|
+
this.timeoutId = undefined;
|
|
152
|
+
grid.props.onTokenClicked((_this$currentLinkBox = this.currentLinkBox) === null || _this$currentLinkBox === void 0 ? void 0 : _this$currentLinkBox.token);
|
|
153
|
+
}
|
|
154
|
+
this.isHold = false;
|
|
155
|
+
this.isDown = false;
|
|
156
|
+
return true;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
_defineProperty(GridTokenMouseHandler, "HOLD_LENGTH", 1000);
|
|
160
|
+
export default GridTokenMouseHandler;
|
|
161
|
+
//# sourceMappingURL=GridTokenMouseHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GridTokenMouseHandler.js","names":["getOrThrow","isEditableGridModel","GridMouseHandler","GridRange","GridUtils","isLinkToken","isTokenBoxCellRenderer","GridTokenMouseHandler","isHoveringLink","gridPoint","grid","column","row","x","y","renderer","metrics","props","model","currentLinkBox","undefined","modelRows","modelColumns","modelRow","modelColumn","renderType","renderTypeForCell","cellRenderer","getCellRenderer","x1","left","y1","top","x2","right","y2","bottom","renderState","updateRenderState","tokensInCell","getTokenBoxesForVisibleCell","i","length","token","translatedTokenBox","translateTokenBox","setCursor","cursor","onMove","onDown","event","isUserHoveringLink","isModifierKeyDown","shiftKey","isDown","timeoutId","clearTimeout","isHold","setTimeout","clearSelectedRanges","focus","moveCursorToPosition","isEditableRange","makeCell","startEditing","HOLD_LENGTH","onClick","onTokenClicked"],"sources":["../../src/mouse-handlers/GridTokenMouseHandler.ts"],"sourcesContent":["/* eslint class-methods-use-this: \"off\" */\n\nimport { getOrThrow } from '@deephaven/utils';\nimport { isEditableGridModel } from '../EditableGridModel';\nimport { EventHandlerResult } from '../EventHandlerResult';\nimport Grid from '../Grid';\nimport GridMouseHandler, { GridMouseEvent } from '../GridMouseHandler';\nimport GridRange from '../GridRange';\nimport GridUtils, { GridPoint, isLinkToken, TokenBox } from '../GridUtils';\nimport { isTokenBoxCellRenderer } from '../TokenBoxCellRenderer';\n\nclass GridTokenMouseHandler extends GridMouseHandler {\n timeoutId?: ReturnType<typeof setTimeout>;\n\n private isHold = false;\n\n private isDown = false;\n\n // Stores the current hovered token box if it exists with translated coordinates\n private currentLinkBox?: TokenBox;\n\n private static HOLD_LENGTH = 1000;\n\n isHoveringLink(gridPoint: GridPoint, grid: Grid): boolean {\n const { column, row, x, y } = gridPoint;\n const { renderer, metrics, props } = grid;\n const { model } = props;\n\n if (column == null || row == null || metrics == null) {\n this.currentLinkBox = undefined;\n return false;\n }\n\n const { modelRows, modelColumns } = metrics;\n const modelRow = getOrThrow(modelRows, row);\n const modelColumn = getOrThrow(modelColumns, column);\n\n const renderType = model.renderTypeForCell(modelColumn, modelRow);\n const cellRenderer = renderer.getCellRenderer(renderType);\n if (!isTokenBoxCellRenderer(cellRenderer)) {\n return false;\n }\n\n if (this.currentLinkBox != null) {\n const { x1: left, y1: top, x2: right, y2: bottom } = this.currentLinkBox;\n if (x >= left && x <= right && y >= top && y <= bottom) {\n return true;\n }\n }\n\n const renderState = grid.updateRenderState();\n\n const tokensInCell = cellRenderer.getTokenBoxesForVisibleCell(\n column,\n row,\n renderState\n );\n\n // Loop through each link and check if cursor is in bounds\n for (let i = 0; i < tokensInCell.length; i += 1) {\n if (isLinkToken(tokensInCell[i].token)) {\n const translatedTokenBox = GridUtils.translateTokenBox(\n tokensInCell[i],\n metrics\n );\n const { x1: left, x2: right, y1: top, y2: bottom } = translatedTokenBox;\n if (x >= left && x <= right && y >= top && y <= bottom) {\n this.currentLinkBox = translatedTokenBox;\n return true;\n }\n }\n }\n\n // If this point is reached, that means the cursor was not hovering any of the links or there are no links\n this.currentLinkBox = undefined;\n return false;\n }\n\n /**\n * Set the cursor to pointer when hovering over a link\n * @param gridPoint Mouse position information\n * @param grid The grid\n * @returns False\n */\n private setCursor(gridPoint: GridPoint, grid: Grid): EventHandlerResult {\n if (this.isHoveringLink(gridPoint, grid)) {\n this.cursor = 'pointer';\n } else {\n this.cursor = null;\n }\n return false;\n }\n\n onMove(gridPoint: GridPoint, grid: Grid): EventHandlerResult {\n return this.setCursor(gridPoint, grid);\n }\n\n onDown(\n gridPoint: GridPoint,\n grid: Grid,\n event: GridMouseEvent\n ): EventHandlerResult {\n const isUserHoveringLink = this.isHoveringLink(gridPoint, grid);\n\n // If a modifier key or shift is down, we don't want to handle it and set isDown to false so onUp won't handle it either\n if (\n GridUtils.isModifierKeyDown(event) ||\n event.shiftKey ||\n !isUserHoveringLink\n ) {\n return false;\n }\n\n this.isDown = true;\n\n if (this.timeoutId != null) {\n clearTimeout(this.timeoutId);\n }\n this.isHold = false;\n this.timeoutId = setTimeout(() => {\n this.isHold = true;\n const { column, row } = gridPoint;\n const { model } = grid.props;\n\n // After 1 second, select the row and if it is an input table, start editing\n grid.clearSelectedRanges();\n grid.focus();\n grid.moveCursorToPosition(column, row);\n if (\n isEditableGridModel(model) &&\n column != null &&\n row != null &&\n model.isEditableRange(GridRange.makeCell(column, row))\n ) {\n grid.startEditing(column, row);\n }\n }, GridTokenMouseHandler.HOLD_LENGTH);\n\n return true;\n }\n\n onClick(gridPoint: GridPoint, grid: Grid): EventHandlerResult {\n const isUserHoveringLink = this.isHoveringLink(gridPoint, grid);\n\n if (!isUserHoveringLink || !this.isDown || this.currentLinkBox == null) {\n this.isDown = false;\n this.isHold = false;\n return false;\n }\n\n // User is hovering a link, isDown is true\n // If isHold is true, then the select already happened so onUp shouldn't do anything\n if (!this.isHold) {\n // Cancel the timeout and open a new tab with the link\n if (this.timeoutId != null) {\n clearTimeout(this.timeoutId);\n }\n this.timeoutId = undefined;\n grid.props.onTokenClicked(this.currentLinkBox?.token);\n }\n\n this.isHold = false;\n this.isDown = false;\n\n return true;\n }\n}\n\nexport default GridTokenMouseHandler;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,165 @@
|
|
|
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); }
|
|
4
|
+
import clamp from 'lodash.clamp';
|
|
5
|
+
import GridMouseHandler from "../GridMouseHandler.js";
|
|
6
|
+
/* eslint class-methods-use-this: "off" */
|
|
7
|
+
class GridVerticalScrollBarMouseHandler extends GridMouseHandler {
|
|
8
|
+
constructor() {
|
|
9
|
+
super(...arguments);
|
|
10
|
+
_defineProperty(this, "dragOffset", void 0);
|
|
11
|
+
_defineProperty(this, "cursor", 'default');
|
|
12
|
+
}
|
|
13
|
+
static getTopWithOffsetFromRawTop(grid, rawTop) {
|
|
14
|
+
var theme = grid.getTheme();
|
|
15
|
+
var {
|
|
16
|
+
metrics,
|
|
17
|
+
metricCalculator
|
|
18
|
+
} = grid;
|
|
19
|
+
if (!metrics) throw new Error('metrics not set');
|
|
20
|
+
if (theme.scrollSnapToRow) {
|
|
21
|
+
var _top = Math.round(rawTop);
|
|
22
|
+
var _topOffset = 0;
|
|
23
|
+
return {
|
|
24
|
+
top: _top,
|
|
25
|
+
topOffset: _topOffset
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
var top = Math.floor(rawTop);
|
|
29
|
+
var topOffsetPercent = rawTop - top;
|
|
30
|
+
var rowHeight = metrics.allRowHeights.get(top);
|
|
31
|
+
if (rowHeight == null) {
|
|
32
|
+
var metricState = grid.getMetricState();
|
|
33
|
+
rowHeight = metricCalculator.getVisibleRowHeight(top, metricState);
|
|
34
|
+
}
|
|
35
|
+
var topOffset = rowHeight * topOffsetPercent;
|
|
36
|
+
return {
|
|
37
|
+
top,
|
|
38
|
+
topOffset
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
isInScrollBar(gridPoint, grid) {
|
|
42
|
+
var theme = grid.getTheme();
|
|
43
|
+
var {
|
|
44
|
+
scrollBarSize,
|
|
45
|
+
scrollBarHoverSize
|
|
46
|
+
} = theme;
|
|
47
|
+
var {
|
|
48
|
+
metrics
|
|
49
|
+
} = grid;
|
|
50
|
+
if (!metrics) throw new Error('metrics not set');
|
|
51
|
+
var {
|
|
52
|
+
x,
|
|
53
|
+
y
|
|
54
|
+
} = gridPoint;
|
|
55
|
+
var {
|
|
56
|
+
barTop,
|
|
57
|
+
barHeight,
|
|
58
|
+
width,
|
|
59
|
+
hasVerticalBar
|
|
60
|
+
} = metrics;
|
|
61
|
+
return hasVerticalBar && scrollBarSize > 0 && x >= width - scrollBarHoverSize && x < width && y > barTop && y < barTop + barHeight;
|
|
62
|
+
}
|
|
63
|
+
getTopWithOffset(gridPoint, grid) {
|
|
64
|
+
var _this$dragOffset;
|
|
65
|
+
var {
|
|
66
|
+
metrics
|
|
67
|
+
} = grid;
|
|
68
|
+
if (!metrics) throw new Error('metrics not set');
|
|
69
|
+
var {
|
|
70
|
+
y
|
|
71
|
+
} = gridPoint;
|
|
72
|
+
var {
|
|
73
|
+
barHeight,
|
|
74
|
+
handleHeight,
|
|
75
|
+
lastTop,
|
|
76
|
+
barTop,
|
|
77
|
+
rowCount,
|
|
78
|
+
scrollableContentHeight,
|
|
79
|
+
scrollableViewportHeight
|
|
80
|
+
} = metrics;
|
|
81
|
+
var mouseBarY = y - barTop;
|
|
82
|
+
var scrollPercent = clamp((mouseBarY - ((_this$dragOffset = this.dragOffset) !== null && _this$dragOffset !== void 0 ? _this$dragOffset : 0)) / (barHeight - handleHeight), 0, 1);
|
|
83
|
+
if (rowCount === 1) {
|
|
84
|
+
return {
|
|
85
|
+
top: 0,
|
|
86
|
+
topOffset: scrollPercent * (scrollableContentHeight - scrollableViewportHeight)
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
var rawTop = scrollPercent * lastTop;
|
|
90
|
+
return GridVerticalScrollBarMouseHandler.getTopWithOffsetFromRawTop(grid, rawTop);
|
|
91
|
+
}
|
|
92
|
+
onDown(gridPoint, grid) {
|
|
93
|
+
var {
|
|
94
|
+
metrics
|
|
95
|
+
} = grid;
|
|
96
|
+
if (!metrics) throw new Error('metrics not set');
|
|
97
|
+
var {
|
|
98
|
+
y
|
|
99
|
+
} = gridPoint;
|
|
100
|
+
var {
|
|
101
|
+
handleHeight,
|
|
102
|
+
barTop,
|
|
103
|
+
scrollY
|
|
104
|
+
} = metrics;
|
|
105
|
+
if (!this.isInScrollBar(gridPoint, grid)) {
|
|
106
|
+
return false;
|
|
107
|
+
}
|
|
108
|
+
var mouseBarY = y - barTop;
|
|
109
|
+
if (mouseBarY >= scrollY && mouseBarY <= scrollY + handleHeight) {
|
|
110
|
+
// Grabbed the vertical handle
|
|
111
|
+
this.dragOffset = mouseBarY - scrollY;
|
|
112
|
+
grid.setState({
|
|
113
|
+
isDraggingVerticalScrollBar: true
|
|
114
|
+
});
|
|
115
|
+
} else {
|
|
116
|
+
// clicked elsewhere in bar
|
|
117
|
+
this.dragOffset = 0;
|
|
118
|
+
var {
|
|
119
|
+
top: newTop,
|
|
120
|
+
topOffset: newTopOffset
|
|
121
|
+
} = this.getTopWithOffset(gridPoint, grid);
|
|
122
|
+
grid.setViewState({
|
|
123
|
+
top: newTop,
|
|
124
|
+
topOffset: newTopOffset,
|
|
125
|
+
isDraggingVerticalScrollBar: true,
|
|
126
|
+
isDragging: true
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
return true;
|
|
130
|
+
}
|
|
131
|
+
onMove(gridPoint, grid) {
|
|
132
|
+
return this.isInScrollBar(gridPoint, grid);
|
|
133
|
+
}
|
|
134
|
+
onDrag(gridPoint, grid) {
|
|
135
|
+
if (this.dragOffset != null) {
|
|
136
|
+
var {
|
|
137
|
+
top: newTop,
|
|
138
|
+
topOffset: newTopOffset
|
|
139
|
+
} = this.getTopWithOffset(gridPoint, grid);
|
|
140
|
+
grid.setViewState({
|
|
141
|
+
top: newTop,
|
|
142
|
+
topOffset: newTopOffset,
|
|
143
|
+
isDraggingVerticalScrollBar: true,
|
|
144
|
+
isDragging: true
|
|
145
|
+
});
|
|
146
|
+
return true;
|
|
147
|
+
}
|
|
148
|
+
return false;
|
|
149
|
+
}
|
|
150
|
+
onUp(gridPoint, grid) {
|
|
151
|
+
if (this.dragOffset !== undefined) {
|
|
152
|
+
this.dragOffset = undefined;
|
|
153
|
+
grid.setState({
|
|
154
|
+
isDraggingVerticalScrollBar: false,
|
|
155
|
+
isDragging: false
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
return this.isInScrollBar(gridPoint, grid);
|
|
159
|
+
}
|
|
160
|
+
onClick(gridPoint, grid) {
|
|
161
|
+
return this.isInScrollBar(gridPoint, grid);
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
export default GridVerticalScrollBarMouseHandler;
|
|
165
|
+
//# sourceMappingURL=GridVerticalScrollBarMouseHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GridVerticalScrollBarMouseHandler.js","names":["clamp","GridMouseHandler","GridVerticalScrollBarMouseHandler","getTopWithOffsetFromRawTop","grid","rawTop","theme","getTheme","metrics","metricCalculator","Error","scrollSnapToRow","top","Math","round","topOffset","floor","topOffsetPercent","rowHeight","allRowHeights","get","metricState","getMetricState","getVisibleRowHeight","isInScrollBar","gridPoint","scrollBarSize","scrollBarHoverSize","x","y","barTop","barHeight","width","hasVerticalBar","getTopWithOffset","handleHeight","lastTop","rowCount","scrollableContentHeight","scrollableViewportHeight","mouseBarY","scrollPercent","dragOffset","onDown","scrollY","setState","isDraggingVerticalScrollBar","newTop","newTopOffset","setViewState","isDragging","onMove","onDrag","onUp","undefined","onClick"],"sources":["../../src/mouse-handlers/GridVerticalScrollBarMouseHandler.ts"],"sourcesContent":["import clamp from 'lodash.clamp';\nimport { EventHandlerResult } from '../EventHandlerResult';\nimport Grid from '../Grid';\nimport { VisibleIndex } from '../GridMetrics';\nimport GridMouseHandler from '../GridMouseHandler';\nimport { GridPoint } from '../GridUtils';\n\n/* eslint class-methods-use-this: \"off\" */\nclass GridVerticalScrollBarMouseHandler extends GridMouseHandler {\n static getTopWithOffsetFromRawTop(\n grid: Grid,\n rawTop: number\n ): { top: VisibleIndex; topOffset: number } {\n const theme = grid.getTheme();\n const { metrics, metricCalculator } = grid;\n if (!metrics) throw new Error('metrics not set');\n\n if (theme.scrollSnapToRow) {\n const top = Math.round(rawTop);\n const topOffset = 0;\n\n return { top, topOffset };\n }\n const top = Math.floor(rawTop);\n const topOffsetPercent = rawTop - top;\n let rowHeight = metrics.allRowHeights.get(top);\n if (rowHeight == null) {\n const metricState = grid.getMetricState();\n rowHeight = metricCalculator.getVisibleRowHeight(top, metricState);\n }\n const topOffset = rowHeight * topOffsetPercent;\n\n return { top, topOffset };\n }\n\n private dragOffset?: number;\n\n // to trigger pointer event blocking\n cursor = 'default';\n\n isInScrollBar(gridPoint: GridPoint, grid: Grid): boolean {\n const theme = grid.getTheme();\n\n const { scrollBarSize, scrollBarHoverSize } = theme;\n const { metrics } = grid;\n if (!metrics) throw new Error('metrics not set');\n\n const { x, y } = gridPoint;\n const { barTop, barHeight, width, hasVerticalBar } = metrics;\n\n return (\n hasVerticalBar &&\n scrollBarSize > 0 &&\n x >= width - scrollBarHoverSize &&\n x < width &&\n y > barTop &&\n y < barTop + barHeight\n );\n }\n\n getTopWithOffset(\n gridPoint: GridPoint,\n grid: Grid\n ): { top: number; topOffset: number } {\n const { metrics } = grid;\n if (!metrics) throw new Error('metrics not set');\n\n const { y } = gridPoint;\n const {\n barHeight,\n handleHeight,\n lastTop,\n barTop,\n rowCount,\n scrollableContentHeight,\n scrollableViewportHeight,\n } = metrics;\n\n const mouseBarY = y - barTop;\n const scrollPercent = clamp(\n (mouseBarY - (this.dragOffset ?? 0)) / (barHeight - handleHeight),\n 0,\n 1\n );\n\n if (rowCount === 1) {\n return {\n top: 0,\n topOffset:\n scrollPercent * (scrollableContentHeight - scrollableViewportHeight),\n };\n }\n\n const rawTop = scrollPercent * lastTop;\n return GridVerticalScrollBarMouseHandler.getTopWithOffsetFromRawTop(\n grid,\n rawTop\n );\n }\n\n onDown(gridPoint: GridPoint, grid: Grid): EventHandlerResult {\n const { metrics } = grid;\n if (!metrics) throw new Error('metrics not set');\n\n const { y } = gridPoint;\n const { handleHeight, barTop, scrollY } = metrics;\n if (!this.isInScrollBar(gridPoint, grid)) {\n return false;\n }\n\n const mouseBarY = y - barTop;\n if (mouseBarY >= scrollY && mouseBarY <= scrollY + handleHeight) {\n // Grabbed the vertical handle\n this.dragOffset = mouseBarY - scrollY;\n grid.setState({ isDraggingVerticalScrollBar: true });\n } else {\n // clicked elsewhere in bar\n this.dragOffset = 0;\n\n const { top: newTop, topOffset: newTopOffset } = this.getTopWithOffset(\n gridPoint,\n grid\n );\n\n grid.setViewState({\n top: newTop,\n topOffset: newTopOffset,\n isDraggingVerticalScrollBar: true,\n isDragging: true,\n });\n }\n\n return true;\n }\n\n onMove(gridPoint: GridPoint, grid: Grid): EventHandlerResult {\n return this.isInScrollBar(gridPoint, grid);\n }\n\n onDrag(gridPoint: GridPoint, grid: Grid): EventHandlerResult {\n if (this.dragOffset != null) {\n const { top: newTop, topOffset: newTopOffset } = this.getTopWithOffset(\n gridPoint,\n grid\n );\n\n grid.setViewState({\n top: newTop,\n topOffset: newTopOffset,\n isDraggingVerticalScrollBar: true,\n isDragging: true,\n });\n return true;\n }\n return false;\n }\n\n onUp(gridPoint: GridPoint, grid: Grid): EventHandlerResult {\n if (this.dragOffset !== undefined) {\n this.dragOffset = undefined;\n grid.setState({ isDraggingVerticalScrollBar: false, isDragging: false });\n }\n\n return this.isInScrollBar(gridPoint, grid);\n }\n\n onClick(gridPoint: GridPoint, grid: Grid): EventHandlerResult {\n return this.isInScrollBar(gridPoint, grid);\n }\n}\n\nexport default GridVerticalScrollBarMouseHandler;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export { default as GridSelectionMouseHandler } from "./GridSelectionMouseHandler.js";
|
|
2
|
+
export { default as GridColumnMoveMouseHandler } from "./GridColumnMoveMouseHandler.js";
|
|
3
|
+
export { default as GridColumnSeparatorMouseHandler } from "./GridColumnSeparatorMouseHandler.js";
|
|
4
|
+
export { default as GridHorizontalScrollBarMouseHandler } from "./GridHorizontalScrollBarMouseHandler.js";
|
|
5
|
+
export { default as GridRowMoveMouseHandler } from "./GridRowMoveMouseHandler.js";
|
|
6
|
+
export { default as GridRowSeparatorMouseHandler } from "./GridRowSeparatorMouseHandler.js";
|
|
7
|
+
export { default as GridRowTreeMouseHandler } from "./GridRowTreeMouseHandler.js";
|
|
8
|
+
export { default as GridScrollBarCornerMouseHandler } from "./GridScrollBarCornerMouseHandler.js";
|
|
9
|
+
export { default as GridVerticalScrollBarMouseHandler } from "./GridVerticalScrollBarMouseHandler.js";
|
|
10
|
+
export { default as EditMouseHandler } from "./EditMouseHandler.js";
|
|
11
|
+
export { default as GridTokenMouseHandler } from "./GridTokenMouseHandler.js";
|
|
12
|
+
export * from "./GridSeparatorMouseHandler.js";
|
|
13
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["default","GridSelectionMouseHandler","GridColumnMoveMouseHandler","GridColumnSeparatorMouseHandler","GridHorizontalScrollBarMouseHandler","GridRowMoveMouseHandler","GridRowSeparatorMouseHandler","GridRowTreeMouseHandler","GridScrollBarCornerMouseHandler","GridVerticalScrollBarMouseHandler","EditMouseHandler","GridTokenMouseHandler"],"sources":["../../src/mouse-handlers/index.ts"],"sourcesContent":["export { default as GridSelectionMouseHandler } from './GridSelectionMouseHandler';\nexport { default as GridColumnMoveMouseHandler } from './GridColumnMoveMouseHandler';\nexport { default as GridColumnSeparatorMouseHandler } from './GridColumnSeparatorMouseHandler';\nexport { default as GridHorizontalScrollBarMouseHandler } from './GridHorizontalScrollBarMouseHandler';\nexport { default as GridRowMoveMouseHandler } from './GridRowMoveMouseHandler';\nexport { default as GridRowSeparatorMouseHandler } from './GridRowSeparatorMouseHandler';\nexport { default as GridRowTreeMouseHandler } from './GridRowTreeMouseHandler';\nexport { default as GridScrollBarCornerMouseHandler } from './GridScrollBarCornerMouseHandler';\nexport { default as GridVerticalScrollBarMouseHandler } from './GridVerticalScrollBarMouseHandler';\nexport { default as EditMouseHandler } from './EditMouseHandler';\nexport { default as GridTokenMouseHandler } from './GridTokenMouseHandler';\nexport * from './GridSeparatorMouseHandler';\n"],"mappings":"SAASA,OAAO,IAAIC,yBAAyB;AAAA,SACpCD,OAAO,IAAIE,0BAA0B;AAAA,SACrCF,OAAO,IAAIG,+BAA+B;AAAA,SAC1CH,OAAO,IAAII,mCAAmC;AAAA,SAC9CJ,OAAO,IAAIK,uBAAuB;AAAA,SAClCL,OAAO,IAAIM,4BAA4B;AAAA,SACvCN,OAAO,IAAIO,uBAAuB;AAAA,SAClCP,OAAO,IAAIQ,+BAA+B;AAAA,SAC1CR,OAAO,IAAIS,iCAAiC;AAAA,SAC5CT,OAAO,IAAIU,gBAAgB;AAAA,SAC3BV,OAAO,IAAIW,qBAAqB;AAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@deephaven/grid",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.44.0",
|
|
4
4
|
"description": "Deephaven React grid component",
|
|
5
5
|
"author": "Deephaven Data Labs LLC",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"*.css"
|
|
32
32
|
],
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@deephaven/utils": "^0.
|
|
34
|
+
"@deephaven/utils": "^0.44.0",
|
|
35
35
|
"classnames": "^2.3.1",
|
|
36
36
|
"color-convert": "^2.0.1",
|
|
37
37
|
"event-target-shim": "^6.0.2",
|
|
@@ -44,5 +44,5 @@
|
|
|
44
44
|
"publishConfig": {
|
|
45
45
|
"access": "public"
|
|
46
46
|
},
|
|
47
|
-
"gitHead": "
|
|
47
|
+
"gitHead": "ba13c9139b3b7a5f5d64d79069f1de9d4727eeb6"
|
|
48
48
|
}
|