@deephaven/grid 0.53.1-beta.0 → 0.53.1-beta.4

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/Grid.css CHANGED
@@ -1,3 +1,14 @@
1
+ .grid-wrapper {
2
+ flex: 1 1 0;
3
+ max-width: 100%;
4
+ max-height: 100%;
5
+ min-width: 0;
6
+ min-height: 0;
7
+ position: relative;
8
+ font: sans-serif;
9
+ font-feature-settings: "tnum";
10
+ }
11
+
1
12
  .grid-canvas {
2
13
  display: block;
3
14
  }
package/dist/Grid.css.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../src/Grid.scss"],"names":[],"mappings":"AAAA;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE","file":"Grid.css","sourcesContent":[".grid-canvas {\n display: block;\n}\n.grid-canvas:focus {\n outline: none;\n}\n.grid-cursor-default {\n cursor: default;\n}\n.grid-cursor-move {\n cursor: grabbing;\n}\n.grid-cursor-not-allowed {\n cursor: not-allowed;\n}\n.grid-cursor-s-resize {\n cursor: s-resize;\n}\n.grid-cursor-row-resize {\n cursor: row-resize;\n}\n.grid-cursor-e-resize {\n cursor: e-resize;\n}\n.grid-cursor-col-resize {\n cursor: col-resize;\n}\n.grid-cursor-pointer {\n cursor: pointer;\n}\n.grid-block-events {\n pointer-events: none;\n}\n"]}
1
+ {"version":3,"sourceRoot":"","sources":["../src/Grid.scss"],"names":[],"mappings":"AAAA;EACE;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE","file":"Grid.css","sourcesContent":[".grid-wrapper {\n flex: 1 1 0;\n max-width: 100%;\n max-height: 100%;\n // min-width/height used to make sure grid shrinks properly when notification bars are added/resized\n min-width: 0;\n min-height: 0;\n position: relative;\n font: sans-serif;\n font-feature-settings: 'tnum';\n}\n\n.grid-canvas {\n display: block;\n}\n.grid-canvas:focus {\n outline: none;\n}\n.grid-cursor-default {\n cursor: default;\n}\n.grid-cursor-move {\n cursor: grabbing;\n}\n.grid-cursor-not-allowed {\n cursor: not-allowed;\n}\n.grid-cursor-s-resize {\n cursor: s-resize;\n}\n.grid-cursor-row-resize {\n cursor: row-resize;\n}\n.grid-cursor-e-resize {\n cursor: e-resize;\n}\n.grid-cursor-col-resize {\n cursor: col-resize;\n}\n.grid-cursor-pointer {\n cursor: pointer;\n}\n.grid-block-events {\n pointer-events: none;\n}\n"]}
package/dist/Grid.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import React, { PureComponent, ReactNode } from 'react';
1
+ import React, { PureComponent, ReactNode, RefObject } from 'react';
2
2
  import GridMetricCalculator, { GridMetricState } from './GridMetricCalculator';
3
3
  import GridModel from './GridModel';
4
4
  import GridMouseHandler, { GridMouseEvent, GridMouseHandlerFunctionName } from './GridMouseHandler';
@@ -13,6 +13,7 @@ import GridMetrics, { Coordinate, ModelIndex, MoveOperation, VisibleIndex } from
13
13
  import { DraggingColumn } from './mouse-handlers/GridColumnMoveMouseHandler';
14
14
  import { EditingCell, GridRenderState, EditingCellTextSelectionRange } from './GridRendererTypes';
15
15
  export type GridProps = typeof Grid.defaultProps & {
16
+ children?: ReactNode;
16
17
  canvasOptions?: CanvasRenderingContext2DSettings;
17
18
  isStickyBottom?: boolean;
18
19
  isStickyRight?: boolean;
@@ -202,6 +203,8 @@ declare class Grid extends PureComponent<GridProps, GridState> {
202
203
  metricCalculator: GridMetricCalculator;
203
204
  canvas: HTMLCanvasElement | null;
204
205
  canvasContext: CanvasRenderingContext2D | null;
206
+ canvasWrapper: RefObject<HTMLDivElement>;
207
+ resizeObserver: ResizeObserver;
205
208
  animationFrame: number | null;
206
209
  prevMetrics: GridMetrics | null;
207
210
  metrics: GridMetrics | null;
@@ -1 +1 @@
1
- {"version":3,"file":"Grid.d.ts","sourceRoot":"","sources":["../src/Grid.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Grid.d.ts","sourceRoot":"","sources":["../src/Grid.tsx"],"names":[],"mappings":"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"}
package/dist/Grid.js CHANGED
@@ -26,7 +26,6 @@ import { assertIsEditableGridModel, isEditableGridModel } from "./EditableGridMo
26
26
  import { assertIsDefined } from "./errors/index.js";
27
27
  import ThemeContext from "./ThemeContext.js";
28
28
  import { jsx as _jsx } from "react/jsx-runtime";
29
- import { Fragment as _Fragment } from "react/jsx-runtime";
30
29
  import { jsxs as _jsxs } from "react/jsx-runtime";
31
30
  /**
32
31
  * High performance, extendible, themeable grid component.
@@ -73,7 +72,9 @@ class Grid extends PureComponent {
73
72
  }
74
73
 
75
74
  // Need to disable react/sort-comp so I can put the fields here
76
- /* eslint-disable react/sort-comp */ // We draw the canvas on the next animation frame, keep track of the next one
75
+ /* eslint-disable react/sort-comp */ // The wrapper element for the canvas, used for sizing
76
+ // Listen for resizing of the element and update the canvas appropriately
77
+ // We draw the canvas on the next animation frame, keep track of the next one
77
78
  // Keep track of previous metrics and new metrics for comparison
78
79
  // Track the cursor that is currently added to the document
79
80
  // Add to document so that when dragging the cursor stays, even if mouse leaves the canvas
@@ -87,6 +88,8 @@ class Grid extends PureComponent {
87
88
  _defineProperty(this, "metricCalculator", void 0);
88
89
  _defineProperty(this, "canvas", void 0);
89
90
  _defineProperty(this, "canvasContext", void 0);
91
+ _defineProperty(this, "canvasWrapper", void 0);
92
+ _defineProperty(this, "resizeObserver", void 0);
90
93
  _defineProperty(this, "animationFrame", void 0);
91
94
  _defineProperty(this, "prevMetrics", void 0);
92
95
  _defineProperty(this, "metrics", void 0);
@@ -123,6 +126,8 @@ class Grid extends PureComponent {
123
126
  this.metricCalculator = metricCalculator || new GridMetricCalculator();
124
127
  this.canvas = null;
125
128
  this.canvasContext = null;
129
+ this.canvasWrapper = /*#__PURE__*/React.createRef();
130
+ this.resizeObserver = new window.ResizeObserver(this.handleResize);
126
131
  this.animationFrame = null;
127
132
  this.prevMetrics = null;
128
133
  this.metrics = null;
@@ -195,7 +200,9 @@ class Grid extends PureComponent {
195
200
  (_this$canvas = this.canvas) === null || _this$canvas === void 0 ? void 0 : _this$canvas.addEventListener('wheel', this.handleWheel, {
196
201
  passive: false
197
202
  });
198
- window.addEventListener('resize', this.handleResize);
203
+ if (this.canvasWrapper.current != null) {
204
+ this.resizeObserver.observe(this.canvasWrapper.current);
205
+ }
199
206
  this.updateCanvas();
200
207
 
201
208
  // apply on mount, so that it works with a static model
@@ -285,7 +292,7 @@ class Grid extends PureComponent {
285
292
  (_this$canvas2 = this.canvas) === null || _this$canvas2 === void 0 ? void 0 : _this$canvas2.removeEventListener('wheel', this.handleWheel);
286
293
  window.removeEventListener('mousemove', this.handleMouseDrag, true);
287
294
  window.removeEventListener('mouseup', this.handleMouseUp, true);
288
- window.removeEventListener('resize', this.handleResize);
295
+ this.resizeObserver.disconnect();
289
296
  this.stopDragTimer();
290
297
  }
291
298
  getTheme() {
@@ -531,17 +538,18 @@ class Grid extends PureComponent {
531
538
  updateCanvasScale() {
532
539
  var {
533
540
  canvas,
534
- canvasContext
541
+ canvasContext,
542
+ canvasWrapper
535
543
  } = this;
536
544
  if (!canvas) throw new Error('canvas not set');
537
545
  if (!canvasContext) throw new Error('canvasContext not set');
538
- if (!canvas.parentElement) throw new Error('Canvas has no parent element');
546
+ if (!canvasWrapper.current) throw new Error('canvasWrapper not set');
539
547
  var scale = Grid.getScale(canvasContext);
540
548
  // the parent wrapper has 100% width/height, and is used for determining size
541
549
  // we don't want to stretch the canvas to 100%, to avoid fractional pixels.
542
550
  // A wrapper element must be used for sizing, and canvas size must be
543
551
  // set manually to a floored value in css and a scaled value in width/height
544
- var rect = canvas.parentElement.getBoundingClientRect();
552
+ var rect = canvasWrapper.current.getBoundingClientRect();
545
553
  var width = Math.floor(rect.width);
546
554
  var height = Math.floor(rect.height);
547
555
  canvas.style.width = "".concat(width, "px");
@@ -1898,10 +1906,15 @@ class Grid extends PureComponent {
1898
1906
  return this.renderState;
1899
1907
  }
1900
1908
  render() {
1909
+ var {
1910
+ children
1911
+ } = this.props;
1901
1912
  var {
1902
1913
  cursor
1903
1914
  } = this.state;
1904
- return /*#__PURE__*/_jsxs(_Fragment, {
1915
+ return /*#__PURE__*/_jsxs("div", {
1916
+ className: "grid-wrapper",
1917
+ ref: this.canvasWrapper,
1905
1918
  children: [/*#__PURE__*/_jsx("canvas", {
1906
1919
  className: classNames('grid-canvas', Grid.getCursorClassName(cursor)),
1907
1920
  ref: canvas => {
@@ -1916,7 +1929,7 @@ class Grid extends PureComponent {
1916
1929
  onMouseLeave: this.handleMouseLeave,
1917
1930
  tabIndex: 0,
1918
1931
  children: "Your browser does not support HTML canvas. Update your browser?"
1919
- }), this.renderInputField()]
1932
+ }), this.renderInputField(), children]
1920
1933
  });
1921
1934
  }
1922
1935
  }