vastgrid 0.1.1 → 0.2.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.
Files changed (312) hide show
  1. package/README.md +175 -13
  2. package/dist/canvas/geometry.d.ts +92 -0
  3. package/dist/canvas/geometry.d.ts.map +1 -0
  4. package/dist/canvas/geometry.js +197 -0
  5. package/dist/canvas/geometry.js.map +1 -0
  6. package/dist/canvas/grid-canvas.d.ts +161 -0
  7. package/dist/canvas/grid-canvas.d.ts.map +1 -0
  8. package/dist/canvas/grid-canvas.js +1146 -0
  9. package/dist/canvas/grid-canvas.js.map +1 -0
  10. package/dist/canvas/hooks.d.ts +61 -0
  11. package/dist/canvas/hooks.d.ts.map +1 -0
  12. package/dist/canvas/hooks.js +2 -0
  13. package/dist/canvas/hooks.js.map +1 -0
  14. package/dist/canvas/keys.d.ts +26 -0
  15. package/dist/canvas/keys.d.ts.map +1 -0
  16. package/dist/canvas/keys.js +133 -0
  17. package/dist/canvas/keys.js.map +1 -0
  18. package/dist/canvas/layout.d.ts +26 -0
  19. package/dist/canvas/layout.d.ts.map +1 -0
  20. package/dist/canvas/layout.js +73 -0
  21. package/dist/canvas/layout.js.map +1 -0
  22. package/dist/canvas/scroll.d.ts +31 -0
  23. package/dist/canvas/scroll.d.ts.map +1 -0
  24. package/dist/canvas/scroll.js +111 -0
  25. package/dist/canvas/scroll.js.map +1 -0
  26. package/dist/canvas/text.d.ts +23 -0
  27. package/dist/canvas/text.d.ts.map +1 -0
  28. package/dist/canvas/text.js +142 -0
  29. package/dist/canvas/text.js.map +1 -0
  30. package/dist/{theme.d.ts → canvas/theme.d.ts} +8 -0
  31. package/dist/canvas/theme.d.ts.map +1 -0
  32. package/dist/canvas/theme.js +62 -0
  33. package/dist/canvas/theme.js.map +1 -0
  34. package/dist/core/cache.d.ts +48 -0
  35. package/dist/core/cache.d.ts.map +1 -0
  36. package/dist/core/cache.js +222 -0
  37. package/dist/core/cache.js.map +1 -0
  38. package/dist/core/checked.d.ts +20 -0
  39. package/dist/core/checked.d.ts.map +1 -0
  40. package/dist/core/checked.js +61 -0
  41. package/dist/core/checked.js.map +1 -0
  42. package/dist/core/client.d.ts +33 -0
  43. package/dist/core/client.d.ts.map +1 -0
  44. package/dist/core/client.js +103 -0
  45. package/dist/core/client.js.map +1 -0
  46. package/dist/core/conditions.d.ts +48 -0
  47. package/dist/core/conditions.d.ts.map +1 -0
  48. package/dist/core/conditions.js +105 -0
  49. package/dist/core/conditions.js.map +1 -0
  50. package/dist/core/evaluate.d.ts +20 -0
  51. package/dist/core/evaluate.d.ts.map +1 -0
  52. package/dist/core/evaluate.js +210 -0
  53. package/dist/core/evaluate.js.map +1 -0
  54. package/dist/core/filters.d.ts +51 -0
  55. package/dist/core/filters.d.ts.map +1 -0
  56. package/dist/core/filters.js +303 -0
  57. package/dist/core/filters.js.map +1 -0
  58. package/dist/core/format.d.ts +14 -0
  59. package/dist/core/format.d.ts.map +1 -0
  60. package/dist/core/format.js +303 -0
  61. package/dist/core/format.js.map +1 -0
  62. package/dist/core/measures.d.ts +26 -0
  63. package/dist/core/measures.d.ts.map +1 -0
  64. package/dist/core/measures.js +105 -0
  65. package/dist/core/measures.js.map +1 -0
  66. package/dist/core/request-ids.d.ts +20 -0
  67. package/dist/core/request-ids.d.ts.map +1 -0
  68. package/dist/core/request-ids.js +55 -0
  69. package/dist/core/request-ids.js.map +1 -0
  70. package/dist/core/rows.d.ts +79 -0
  71. package/dist/core/rows.d.ts.map +1 -0
  72. package/dist/core/rows.js +173 -0
  73. package/dist/core/rows.js.map +1 -0
  74. package/dist/core/store.d.ts +233 -0
  75. package/dist/core/store.d.ts.map +1 -0
  76. package/dist/core/store.js +1162 -0
  77. package/dist/core/store.js.map +1 -0
  78. package/dist/core/totals.d.ts +24 -0
  79. package/dist/core/totals.d.ts.map +1 -0
  80. package/dist/core/totals.js +49 -0
  81. package/dist/core/totals.js.map +1 -0
  82. package/dist/core/trace.d.ts +7 -0
  83. package/dist/core/trace.d.ts.map +1 -0
  84. package/dist/core/trace.js +26 -0
  85. package/dist/core/trace.js.map +1 -0
  86. package/dist/core/transports.d.ts +50 -0
  87. package/dist/core/transports.d.ts.map +1 -0
  88. package/dist/core/transports.js +160 -0
  89. package/dist/core/transports.js.map +1 -0
  90. package/dist/core/types.d.ts +150 -0
  91. package/dist/core/types.d.ts.map +1 -0
  92. package/dist/core/types.js +45 -0
  93. package/dist/core/types.js.map +1 -0
  94. package/dist/core.d.ts +12 -0
  95. package/dist/core.d.ts.map +1 -0
  96. package/dist/core.js +11 -0
  97. package/dist/core.js.map +1 -0
  98. package/dist/index.d.ts +15 -6
  99. package/dist/index.d.ts.map +1 -1
  100. package/dist/index.js +13 -7
  101. package/dist/index.js.map +1 -1
  102. package/dist/react/accessible-rows.d.ts +13 -0
  103. package/dist/react/accessible-rows.d.ts.map +1 -0
  104. package/dist/react/accessible-rows.js +320 -0
  105. package/dist/react/accessible-rows.js.map +1 -0
  106. package/dist/react/cell-editor.d.ts +22 -0
  107. package/dist/react/cell-editor.d.ts.map +1 -0
  108. package/dist/react/cell-editor.js +431 -0
  109. package/dist/react/cell-editor.js.map +1 -0
  110. package/dist/react/cell-menu.d.ts +18 -0
  111. package/dist/react/cell-menu.d.ts.map +1 -0
  112. package/dist/react/cell-menu.js +299 -0
  113. package/dist/react/cell-menu.js.map +1 -0
  114. package/dist/react/column-menu.d.ts +16 -0
  115. package/dist/react/column-menu.d.ts.map +1 -0
  116. package/dist/react/column-menu.js +1311 -0
  117. package/dist/react/column-menu.js.map +1 -0
  118. package/dist/react/columns-menu.d.ts +7 -0
  119. package/dist/react/columns-menu.d.ts.map +1 -0
  120. package/dist/react/columns-menu.js +249 -0
  121. package/dist/react/columns-menu.js.map +1 -0
  122. package/dist/react/conditions-menu.d.ts +10 -0
  123. package/dist/react/conditions-menu.d.ts.map +1 -0
  124. package/dist/react/conditions-menu.js +795 -0
  125. package/dist/react/conditions-menu.js.map +1 -0
  126. package/dist/react/context.d.ts +29 -0
  127. package/dist/react/context.d.ts.map +1 -0
  128. package/dist/react/context.js +18 -0
  129. package/dist/react/context.js.map +1 -0
  130. package/dist/react/data-grid.d.ts +79 -0
  131. package/dist/react/data-grid.d.ts.map +1 -0
  132. package/dist/react/data-grid.js +653 -0
  133. package/dist/react/data-grid.js.map +1 -0
  134. package/dist/react/detail-panel.d.ts +22 -0
  135. package/dist/react/detail-panel.d.ts.map +1 -0
  136. package/dist/react/detail-panel.js +242 -0
  137. package/dist/react/detail-panel.js.map +1 -0
  138. package/dist/react/export-menu.d.ts +11 -0
  139. package/dist/react/export-menu.d.ts.map +1 -0
  140. package/dist/react/export-menu.js +304 -0
  141. package/dist/react/export-menu.js.map +1 -0
  142. package/dist/react/find-bar.d.ts +11 -0
  143. package/dist/react/find-bar.d.ts.map +1 -0
  144. package/dist/react/find-bar.js +303 -0
  145. package/dist/react/find-bar.js.map +1 -0
  146. package/dist/react/format-form.d.ts +12 -0
  147. package/dist/react/format-form.d.ts.map +1 -0
  148. package/dist/react/format-form.js +863 -0
  149. package/dist/react/format-form.js.map +1 -0
  150. package/dist/react/formula-menu.d.ts +6 -0
  151. package/dist/react/formula-menu.d.ts.map +1 -0
  152. package/dist/react/formula-menu.js +343 -0
  153. package/dist/react/formula-menu.js.map +1 -0
  154. package/dist/react/grid-body.d.ts +33 -0
  155. package/dist/react/grid-body.d.ts.map +1 -0
  156. package/dist/react/grid-body.js +1389 -0
  157. package/dist/react/grid-body.js.map +1 -0
  158. package/dist/react/group-menu.d.ts +7 -0
  159. package/dist/react/group-menu.d.ts.map +1 -0
  160. package/dist/react/group-menu.js +508 -0
  161. package/dist/react/group-menu.js.map +1 -0
  162. package/dist/react/hooks.d.ts +33 -0
  163. package/dist/react/hooks.d.ts.map +1 -0
  164. package/dist/react/hooks.js +161 -0
  165. package/dist/react/hooks.js.map +1 -0
  166. package/dist/react/messages.d.ts +180 -0
  167. package/dist/react/messages.d.ts.map +1 -0
  168. package/dist/react/messages.js +414 -0
  169. package/dist/react/messages.js.map +1 -0
  170. package/dist/react/save.d.ts +9 -0
  171. package/dist/react/save.d.ts.map +1 -0
  172. package/dist/react/save.js +102 -0
  173. package/dist/react/save.js.map +1 -0
  174. package/dist/react/static-rows.d.ts +9 -0
  175. package/dist/react/static-rows.d.ts.map +1 -0
  176. package/dist/react/static-rows.js +176 -0
  177. package/dist/react/static-rows.js.map +1 -0
  178. package/dist/react/status-bar.d.ts +12 -0
  179. package/dist/react/status-bar.d.ts.map +1 -0
  180. package/dist/react/status-bar.js +413 -0
  181. package/dist/react/status-bar.js.map +1 -0
  182. package/dist/react/toolbar-popover.d.ts +14 -0
  183. package/dist/react/toolbar-popover.d.ts.map +1 -0
  184. package/dist/react/toolbar-popover.js +143 -0
  185. package/dist/react/toolbar-popover.js.map +1 -0
  186. package/dist/react/toolbar.d.ts +13 -0
  187. package/dist/react/toolbar.d.ts.map +1 -0
  188. package/dist/react/toolbar.js +344 -0
  189. package/dist/react/toolbar.js.map +1 -0
  190. package/dist/server.d.ts +22 -0
  191. package/dist/server.d.ts.map +1 -0
  192. package/dist/server.js +45 -0
  193. package/dist/server.js.map +1 -0
  194. package/dist/styles.css +496 -316
  195. package/package.json +42 -17
  196. package/src/canvas/geometry.ts +197 -0
  197. package/src/canvas/grid-canvas.ts +1222 -0
  198. package/src/canvas/hooks.ts +61 -0
  199. package/src/canvas/keys.ts +96 -0
  200. package/src/canvas/layout.ts +77 -0
  201. package/src/canvas/scroll.ts +120 -0
  202. package/src/canvas/text.ts +155 -0
  203. package/src/{theme.ts → canvas/theme.ts} +14 -1
  204. package/src/core/cache.ts +247 -0
  205. package/src/core/checked.ts +64 -0
  206. package/src/core/client.ts +103 -0
  207. package/src/core/conditions.ts +89 -0
  208. package/src/core/evaluate.ts +221 -0
  209. package/src/core/filters.ts +268 -0
  210. package/src/core/format.ts +309 -0
  211. package/src/core/measures.ts +99 -0
  212. package/src/core/request-ids.ts +54 -0
  213. package/src/core/rows.ts +213 -0
  214. package/src/core/store.ts +1122 -0
  215. package/src/core/totals.ts +59 -0
  216. package/src/core/trace.ts +44 -0
  217. package/src/core/transports.ts +177 -0
  218. package/src/core/types.ts +168 -0
  219. package/src/core.ts +39 -0
  220. package/src/index.ts +24 -12
  221. package/src/react/accessible-rows.tsx +242 -0
  222. package/src/react/cell-editor.tsx +216 -0
  223. package/src/react/cell-menu.tsx +166 -0
  224. package/src/react/column-menu.tsx +619 -0
  225. package/src/react/columns-menu.tsx +116 -0
  226. package/src/react/conditions-menu.tsx +289 -0
  227. package/src/react/context.ts +33 -0
  228. package/src/react/data-grid.tsx +286 -0
  229. package/src/react/detail-panel.tsx +92 -0
  230. package/src/react/export-menu.tsx +112 -0
  231. package/src/react/find-bar.tsx +112 -0
  232. package/src/react/format-form.tsx +421 -0
  233. package/src/react/formula-menu.tsx +163 -0
  234. package/src/react/grid-body.tsx +744 -0
  235. package/src/react/group-menu.tsx +214 -0
  236. package/src/react/hooks.ts +104 -0
  237. package/src/react/messages.ts +556 -0
  238. package/src/react/save.ts +42 -0
  239. package/src/react/static-rows.tsx +59 -0
  240. package/src/react/status-bar.tsx +175 -0
  241. package/src/react/toolbar-popover.tsx +69 -0
  242. package/src/react/toolbar.tsx +152 -0
  243. package/src/server.ts +58 -0
  244. package/src/styles.css +496 -316
  245. package/dist/components/bars.d.ts +0 -14
  246. package/dist/components/bars.d.ts.map +0 -1
  247. package/dist/components/bars.js +0 -68
  248. package/dist/components/bars.js.map +0 -1
  249. package/dist/components/cell-inspector.d.ts +0 -11
  250. package/dist/components/cell-inspector.d.ts.map +0 -1
  251. package/dist/components/cell-inspector.js +0 -37
  252. package/dist/components/cell-inspector.js.map +0 -1
  253. package/dist/components/columns-panel.d.ts +0 -12
  254. package/dist/components/columns-panel.d.ts.map +0 -1
  255. package/dist/components/columns-panel.js +0 -11
  256. package/dist/components/columns-panel.js.map +0 -1
  257. package/dist/components/filter-panel.d.ts +0 -22
  258. package/dist/components/filter-panel.d.ts.map +0 -1
  259. package/dist/components/filter-panel.js +0 -169
  260. package/dist/components/filter-panel.js.map +0 -1
  261. package/dist/components/find-bar.d.ts +0 -9
  262. package/dist/components/find-bar.d.ts.map +0 -1
  263. package/dist/components/find-bar.js +0 -46
  264. package/dist/components/find-bar.js.map +0 -1
  265. package/dist/components/popover.d.ts +0 -38
  266. package/dist/components/popover.d.ts.map +0 -1
  267. package/dist/components/popover.js +0 -104
  268. package/dist/components/popover.js.map +0 -1
  269. package/dist/components/stats-panel.d.ts +0 -12
  270. package/dist/components/stats-panel.d.ts.map +0 -1
  271. package/dist/components/stats-panel.js +0 -40
  272. package/dist/components/stats-panel.js.map +0 -1
  273. package/dist/controller.d.ts +0 -227
  274. package/dist/controller.d.ts.map +0 -1
  275. package/dist/controller.js +0 -845
  276. package/dist/controller.js.map +0 -1
  277. package/dist/data-grid.d.ts +0 -51
  278. package/dist/data-grid.d.ts.map +0 -1
  279. package/dist/data-grid.js +0 -704
  280. package/dist/data-grid.js.map +0 -1
  281. package/dist/labels.d.ts +0 -9
  282. package/dist/labels.d.ts.map +0 -1
  283. package/dist/labels.js +0 -38
  284. package/dist/labels.js.map +0 -1
  285. package/dist/messages.d.ts +0 -99
  286. package/dist/messages.d.ts.map +0 -1
  287. package/dist/messages.js +0 -276
  288. package/dist/messages.js.map +0 -1
  289. package/dist/renderer.d.ts +0 -52
  290. package/dist/renderer.d.ts.map +0 -1
  291. package/dist/renderer.js +0 -522
  292. package/dist/renderer.js.map +0 -1
  293. package/dist/text.d.ts +0 -14
  294. package/dist/text.d.ts.map +0 -1
  295. package/dist/text.js +0 -63
  296. package/dist/text.js.map +0 -1
  297. package/dist/theme.d.ts.map +0 -1
  298. package/dist/theme.js +0 -54
  299. package/dist/theme.js.map +0 -1
  300. package/src/components/bars.tsx +0 -180
  301. package/src/components/cell-inspector.tsx +0 -70
  302. package/src/components/columns-panel.tsx +0 -59
  303. package/src/components/filter-panel.tsx +0 -293
  304. package/src/components/find-bar.tsx +0 -104
  305. package/src/components/popover.tsx +0 -194
  306. package/src/components/stats-panel.tsx +0 -153
  307. package/src/controller.ts +0 -945
  308. package/src/data-grid.tsx +0 -1035
  309. package/src/labels.ts +0 -46
  310. package/src/messages.ts +0 -390
  311. package/src/renderer.ts +0 -535
  312. package/src/text.ts +0 -55
@@ -0,0 +1,161 @@
1
+ import { type Column, type JsonValue } from "vastgrid-spec";
2
+ import type { GridStore } from "../core/store.js";
3
+ import { Geometry } from "./geometry.js";
4
+ import type { CellAction, CellHooks, CellStyle, ColumnGroup, GridCell } from "./hooks.js";
5
+ /** The rows on screen once scrolling pauses, for the accessibility rows. */
6
+ export interface Settled {
7
+ top: number;
8
+ rows: number;
9
+ /** The first and last display positions on screen. */
10
+ left: number;
11
+ right: number;
12
+ version: number;
13
+ }
14
+ export interface CanvasElements {
15
+ root: HTMLElement;
16
+ canvas: HTMLCanvasElement;
17
+ scroller: HTMLElement;
18
+ sizer: HTMLElement;
19
+ }
20
+ export interface CanvasOptions {
21
+ rowHeight?: number;
22
+ headerHeight?: number;
23
+ groupHeaderHeight?: number;
24
+ }
25
+ /**
26
+ * Draws the view on screen of a store onto a canvas and scrolls it, without React (§1 and §6 of react.md):
27
+ * cells, headers, row numbers, the selection and the columns pinned at each side, at most once per frame and only
28
+ * what is on screen. It tells the store which rows it shows, so that the store reads them.
29
+ */
30
+ export declare class GridCanvas {
31
+ private options;
32
+ readonly geometry: Geometry;
33
+ /** Where dragged columns would go, while a header is dragged. */
34
+ private dropX;
35
+ private wrapLines;
36
+ private hooks;
37
+ private groups;
38
+ /** The row height of the theme or the props; rows are taller while a column wraps. */
39
+ private baseRowHeight;
40
+ private locale;
41
+ /** By column name: the text of its values by its format, and its style rules (§5.1). */
42
+ private formatters;
43
+ private rules;
44
+ /** Columns that the style rules read besides those on screen. */
45
+ private ruleColumns;
46
+ private store;
47
+ private elements;
48
+ private context;
49
+ private theme;
50
+ private cellText;
51
+ private headerText;
52
+ private ratio;
53
+ private frame;
54
+ private snapshot;
55
+ private columns;
56
+ private index;
57
+ private readonly measured;
58
+ private resizing;
59
+ private texts;
60
+ private textsView;
61
+ private settleTimer;
62
+ private settled;
63
+ private readonly settledListeners;
64
+ private scrolling;
65
+ private lastActive;
66
+ private lastScroll;
67
+ private lastView;
68
+ private durations;
69
+ private readonly frameListeners;
70
+ constructor(options?: CanvasOptions);
71
+ /** Shows where dragged columns would go, a line at `x`, or nothing. */
72
+ previewDrop(x: number | null): void;
73
+ /** Shows a column at a width while it is dragged, before the command that sets it. */
74
+ previewWidth(column: number, width: number | null): void;
75
+ /** Text, colors, drawing and actions of cells from the host (§5.1: they win over the document). */
76
+ setHooks(hooks: CellHooks): void;
77
+ /** Groups of columns in header rows above the names, each `groupHeight` pixels high (or the CSS's). */
78
+ setColumnGroups(groups: readonly ColumnGroup[] | undefined, groupHeight: number | undefined): void;
79
+ /** How many lines rows have while a displayed column wraps its text. */
80
+ setWrapLines(lines: number | undefined): void;
81
+ /** Shows a check box for each row in the gutter, and one for every row in the corner. */
82
+ setCheckboxes(on: boolean): void;
83
+ /** The language that formats show numbers and dates in (§5.1). */
84
+ setLocale(locale: string | undefined): void;
85
+ /** The row height for displayed columns: room for `WRAP_LINES` lines when one of them wraps. */
86
+ private wrappedHeight;
87
+ /** Row and header heights given as props, instead of the CSS custom properties. */
88
+ setSizes(rowHeight: number | undefined, headerHeight: number | undefined): void;
89
+ /** Draws `store` into the elements and follows both; gives the function that stops it. */
90
+ attach(elements: CanvasElements, store: GridStore): () => void;
91
+ /** Reads the theme again, after the grid's class or style changed. */
92
+ refreshTheme(): void;
93
+ private onState;
94
+ private onRows;
95
+ /** The columns and their widths for the displayed columns of the snapshot. */
96
+ relayout(): void;
97
+ /** Fits the columns without a width to the values on screen, growing them only. */
98
+ private measure;
99
+ private onScroll;
100
+ private updateViewport;
101
+ /** Scrolls so that a row is at the top, or just visible. */
102
+ scrollToRow(row: number, place: "top" | "nearest"): void;
103
+ /** Scrolls so that a cell is on screen. */
104
+ reveal(row: number, column: number): void;
105
+ /** Puts the place on screen in the session (§5.2) once scrolling pauses. */
106
+ private reportScroll;
107
+ getSettled: () => Settled;
108
+ subscribeSettled: (listener: () => void) => (() => void);
109
+ private bumpSettled;
110
+ /** The text of a cell as the grid shows it: the value's text form (§2.4). */
111
+ text(row: number, column: Column, value: JsonValue): string;
112
+ /** Follows the frames the canvas draws, for what is placed over it (the cell editor). */
113
+ subscribeFrames: (listener: () => void) => (() => void);
114
+ schedule(): void;
115
+ /** Draws now, as layout effects do before the browser paints. */
116
+ draw(): void;
117
+ /** Durations of the recent frames in milliseconds, for the bench. */
118
+ frameTimes(): readonly number[];
119
+ private resizeCanvas;
120
+ /** A position for a line one device pixel wide. */
121
+ private snap;
122
+ private paint;
123
+ private clipped;
124
+ private drawCells;
125
+ private drawLines;
126
+ /** The selected ranges (§5.2) and the active cell, within the display positions `[from, to]`. */
127
+ private drawSelection;
128
+ private drawHeaders;
129
+ /** The columns of a group header: the run of display positions next to `column` in the same group. */
130
+ groupSpan(column: number, level: number): [number, number] | null;
131
+ /** The names of a column's groups, from the outermost, for screen readers. */
132
+ groupNames(column: number): string[];
133
+ /**
134
+ * The rows of groups over display positions `[from, to]` of one region: each group over the run of its columns
135
+ * that are next to each other there, so a group whose columns were moved apart, hidden or pinned is split, and
136
+ * each part shows its name.
137
+ */
138
+ private drawGroups;
139
+ private drawGutter;
140
+ /** The colors of a cell: the host's `cellStyle`, or else the column's style rules. */
141
+ private cellStyleOf;
142
+ /** What a cell does, by the host's `cellAction`. */
143
+ private actionOf;
144
+ /** The action of a cell at a display position, while its value is read; null for plain cells. */
145
+ actionAt(row: number, columnIndex: number): {
146
+ action: CellAction;
147
+ cell: GridCell;
148
+ } | null;
149
+ /** The style rule that colors a cell: the first whose `when` is true for its row (§5.1); undefined for none. */
150
+ styleOf(row: number, name: string): CellStyle | undefined;
151
+ /** A check box in the gutter, centered at `middle`: checked, not checked, or unknown (a dash). */
152
+ private drawCheck;
153
+ /** The text of a column's total; undefined while it is read. */
154
+ private totalText;
155
+ /**
156
+ * The totals row, at the bottom: each displayed column's total (§5.1), in the column's format and alignment, a
157
+ * placeholder while it is read, and Σ in the gutter.
158
+ */
159
+ private drawTotals;
160
+ }
161
+ //# sourceMappingURL=grid-canvas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grid-canvas.d.ts","sourceRoot":"","sources":["../../src/canvas/grid-canvas.ts"],"names":[],"mappings":"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"}