@deephaven/iris-grid 0.7.3-beta.4 → 0.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/IrisGrid.d.ts +18 -232
- package/dist/IrisGrid.d.ts.map +1 -1
- package/dist/IrisGrid.js +144 -45
- package/dist/IrisGrid.js.map +1 -1
- package/dist/IrisGridModel.d.ts +10 -0
- package/dist/IrisGridModel.d.ts.map +1 -1
- package/dist/IrisGridModel.js +18 -0
- package/dist/IrisGridModel.js.map +1 -1
- package/dist/IrisGridModelUpdater.d.ts.map +1 -1
- package/dist/IrisGridModelUpdater.js +8 -2
- package/dist/IrisGridModelUpdater.js.map +1 -1
- package/dist/IrisGridProxyModel.d.ts +12 -1
- package/dist/IrisGridProxyModel.d.ts.map +1 -1
- package/dist/IrisGridProxyModel.js +4 -8
- package/dist/IrisGridProxyModel.js.map +1 -1
- package/dist/IrisGridTableModel.d.ts +36 -3
- package/dist/IrisGridTableModel.d.ts.map +1 -1
- package/dist/IrisGridTableModel.js +100 -45
- package/dist/IrisGridTableModel.js.map +1 -1
- package/dist/IrisGridTreeTableModel.d.ts +1 -0
- package/dist/IrisGridTreeTableModel.d.ts.map +1 -1
- package/dist/IrisGridUtils.d.ts +2 -0
- package/dist/IrisGridUtils.d.ts.map +1 -1
- package/dist/IrisGridUtils.js +8 -4
- package/dist/IrisGridUtils.js.map +1 -1
- package/dist/key-handlers/ClearFilterKeyHandler.d.ts +2 -1
- package/dist/key-handlers/ClearFilterKeyHandler.d.ts.map +1 -1
- package/dist/key-handlers/ClearFilterKeyHandler.js +2 -2
- package/dist/key-handlers/ClearFilterKeyHandler.js.map +1 -1
- package/dist/key-handlers/CopyKeyHandler.d.ts +2 -1
- package/dist/key-handlers/CopyKeyHandler.d.ts.map +1 -1
- package/dist/key-handlers/CopyKeyHandler.js +2 -2
- package/dist/key-handlers/CopyKeyHandler.js.map +1 -1
- package/dist/key-handlers/ReverseKeyHandler.d.ts +2 -1
- package/dist/key-handlers/ReverseKeyHandler.d.ts.map +1 -1
- package/dist/key-handlers/ReverseKeyHandler.js +2 -2
- package/dist/key-handlers/ReverseKeyHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridContextMenuHandler.d.ts.map +1 -1
- package/dist/mousehandlers/IrisGridContextMenuHandler.js +52 -34
- package/dist/mousehandlers/IrisGridContextMenuHandler.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +11 -11
- package/dist/memoizeClear.d.ts +0 -4
- package/dist/memoizeClear.d.ts.map +0 -1
- package/dist/memoizeClear.js +0 -34
- package/dist/memoizeClear.js.map +0 -1
package/dist/IrisGrid.d.ts
CHANGED
|
@@ -111,7 +111,7 @@ export class IrisGrid extends React.Component<any, any, any> {
|
|
|
111
111
|
}[];
|
|
112
112
|
getAdvancedMenuOpenedHandler: ((column: any) => () => void) & memoize.Memoized<(column: any) => () => void>;
|
|
113
113
|
getCachedAdvancedFilterMenuActions: ((model: any, column: any, advancedFilterOptions: any, sortDirection: any, formatter: any) => JSX.Element) & memoize.Memoized<(model: any, column: any, advancedFilterOptions: any, sortDirection: any, formatter: any) => JSX.Element>;
|
|
114
|
-
getCachedOptionItems: ((isChartBuilderAvailable: any, isCustomColumnsAvailable: any, isRollupAvailable: any, isTotalsAvailable: any, isSelectDistinctAvailable: any, isExportAvailable: any, toggleFilterBarAction: any, toggleSearchBarAction: any, isFilterBarShown: any, showSearchBar: any) => ({
|
|
114
|
+
getCachedOptionItems: ((isChartBuilderAvailable: any, isCustomColumnsAvailable: any, isRollupAvailable: any, isTotalsAvailable: any, isSelectDistinctAvailable: any, isExportAvailable: any, toggleFilterBarAction: any, toggleSearchBarAction: any, isFilterBarShown: any, showSearchBar: any, canDownloadCsv: any) => ({
|
|
115
115
|
type: OptionType;
|
|
116
116
|
title: string;
|
|
117
117
|
icon: import("@fortawesome/fontawesome-common-types").IconDefinition;
|
|
@@ -125,7 +125,7 @@ export class IrisGrid extends React.Component<any, any, any> {
|
|
|
125
125
|
icon: import("@fortawesome/fontawesome-common-types").IconDefinition;
|
|
126
126
|
isOn: any;
|
|
127
127
|
onChange: any;
|
|
128
|
-
})[]) & memoize.Memoized<(isChartBuilderAvailable: any, isCustomColumnsAvailable: any, isRollupAvailable: any, isTotalsAvailable: any, isSelectDistinctAvailable: any, isExportAvailable: any, toggleFilterBarAction: any, toggleSearchBarAction: any, isFilterBarShown: any, showSearchBar: any) => ({
|
|
128
|
+
})[]) & memoize.Memoized<(isChartBuilderAvailable: any, isCustomColumnsAvailable: any, isRollupAvailable: any, isTotalsAvailable: any, isSelectDistinctAvailable: any, isExportAvailable: any, toggleFilterBarAction: any, toggleSearchBarAction: any, isFilterBarShown: any, showSearchBar: any, canDownloadCsv: any) => ({
|
|
129
129
|
type: OptionType;
|
|
130
130
|
title: string;
|
|
131
131
|
icon: import("@fortawesome/fontawesome-common-types").IconDefinition;
|
|
@@ -176,239 +176,11 @@ export class IrisGrid extends React.Component<any, any, any> {
|
|
|
176
176
|
rollupConfig: any;
|
|
177
177
|
}>;
|
|
178
178
|
getCachedFilter: ((customFilters: any, quickFilters: any, advancedFilters: any, partitionFilters: any, searchFilter: any) => any[]) & memoize.Memoized<(customFilters: any, quickFilters: any, advancedFilters: any, partitionFilters: any, searchFilter: any) => any[]>;
|
|
179
|
-
getCachedTheme: ((isEditable: any) =>
|
|
180
|
-
autoSelectRow: boolean;
|
|
181
|
-
backgroundColor: any;
|
|
182
|
-
font: any;
|
|
183
|
-
headerBackgroundColor: any;
|
|
184
|
-
headerColor: any;
|
|
185
|
-
headerSeparatorColor: any;
|
|
186
|
-
headerSeparatorHoverColor: any;
|
|
187
|
-
headerHiddenSeparatorHoverColor: any;
|
|
188
|
-
headerSortBarColor: any;
|
|
189
|
-
headerReverseBarColor: any;
|
|
190
|
-
headerBarCasingColor: any;
|
|
191
|
-
headerFont: any;
|
|
192
|
-
rowBackgroundColors: any;
|
|
193
|
-
rowHoverBackgroundColor: any;
|
|
194
|
-
selectionColor: any;
|
|
195
|
-
selectionOutlineColor: any;
|
|
196
|
-
selectionOutlineCasingColor: any;
|
|
197
|
-
selectedRowHoverBackgroundColor: any;
|
|
198
|
-
scrollBarBackgroundColor: any;
|
|
199
|
-
scrollBarHoverBackgroundColor: any;
|
|
200
|
-
scrollBarCasingColor: any;
|
|
201
|
-
scrollBarCornerColor: any;
|
|
202
|
-
scrollBarColor: any;
|
|
203
|
-
scrollBarHoverColor: any;
|
|
204
|
-
scrollBarActiveColor: any;
|
|
205
|
-
textColor: any;
|
|
206
|
-
positiveNumberColor: any;
|
|
207
|
-
negativeNumberColor: any;
|
|
208
|
-
zeroNumberColor: any;
|
|
209
|
-
dateColor: any;
|
|
210
|
-
pendingTextColor: any;
|
|
211
|
-
errorTextColor: any;
|
|
212
|
-
filterBarActiveBackgroundColor: any;
|
|
213
|
-
filterBarExpandedBackgroundColor: any;
|
|
214
|
-
filterBarExpandedActiveBackgroundColor: any;
|
|
215
|
-
filterBarExpandedActiveCellBackgroundColor: any;
|
|
216
|
-
filterBarSeparatorColor: any;
|
|
217
|
-
filterBarActiveColor: any;
|
|
218
|
-
filterBarErrorColor: any;
|
|
219
|
-
filterIconColor: any;
|
|
220
|
-
scrimColor: any;
|
|
221
|
-
contextMenuSortIconColor: any;
|
|
222
|
-
contextMenuReverseIconColor: any;
|
|
223
|
-
allowRowResize: boolean;
|
|
224
|
-
gridColumnColor: null;
|
|
225
|
-
gridRowColor: null;
|
|
226
|
-
groupedColumnDividerColor: any;
|
|
227
|
-
columnHoverBackgroundColor: null;
|
|
228
|
-
headerHorizontalPadding: number;
|
|
229
|
-
scrollBarSize: number;
|
|
230
|
-
scrollBarHoverSize: number;
|
|
231
|
-
minScrollHandleSize: number;
|
|
232
|
-
rowHeight: number;
|
|
233
|
-
columnWidth: number;
|
|
234
|
-
rowHeaderWidth: number;
|
|
235
|
-
rowFooterWidth: number;
|
|
236
|
-
columnHeaderHeight: number;
|
|
237
|
-
filterBarHeight: number;
|
|
238
|
-
filterBarCollapsedHeight: number;
|
|
239
|
-
sortHeaderBarHeight: number;
|
|
240
|
-
reverseHeaderBarHeight: number;
|
|
241
|
-
filterBarHorizontalPadding: number;
|
|
242
|
-
scrimBlurSize: number;
|
|
243
|
-
minScrimTransitionTime: number;
|
|
244
|
-
maxScrimTransitionTime: number;
|
|
245
|
-
scrollSnapToRow: boolean;
|
|
246
|
-
linkerColumnHoverBackgroundColor: any;
|
|
247
|
-
treeLineColor: any;
|
|
248
|
-
treeMarkerColor: any;
|
|
249
|
-
treeMarkerHoverColor: any;
|
|
250
|
-
floatingGridColumnColor: null;
|
|
251
|
-
floatingGridRowColor: any;
|
|
252
|
-
floatingRowBackgroundColors: any;
|
|
253
|
-
floatingDividerInnerColor: any;
|
|
254
|
-
floatingDividerOuterColor: any;
|
|
255
|
-
}) & memoize.Memoized<(isEditable: any) => {
|
|
256
|
-
autoSelectRow: boolean;
|
|
257
|
-
backgroundColor: any;
|
|
258
|
-
font: any;
|
|
259
|
-
headerBackgroundColor: any;
|
|
260
|
-
headerColor: any;
|
|
261
|
-
headerSeparatorColor: any;
|
|
262
|
-
headerSeparatorHoverColor: any;
|
|
263
|
-
headerHiddenSeparatorHoverColor: any;
|
|
264
|
-
headerSortBarColor: any;
|
|
265
|
-
headerReverseBarColor: any;
|
|
266
|
-
headerBarCasingColor: any;
|
|
267
|
-
headerFont: any;
|
|
268
|
-
rowBackgroundColors: any;
|
|
269
|
-
rowHoverBackgroundColor: any;
|
|
270
|
-
selectionColor: any;
|
|
271
|
-
selectionOutlineColor: any;
|
|
272
|
-
selectionOutlineCasingColor: any;
|
|
273
|
-
selectedRowHoverBackgroundColor: any;
|
|
274
|
-
scrollBarBackgroundColor: any;
|
|
275
|
-
scrollBarHoverBackgroundColor: any;
|
|
276
|
-
scrollBarCasingColor: any;
|
|
277
|
-
scrollBarCornerColor: any;
|
|
278
|
-
scrollBarColor: any;
|
|
279
|
-
scrollBarHoverColor: any;
|
|
280
|
-
scrollBarActiveColor: any;
|
|
281
|
-
textColor: any;
|
|
282
|
-
positiveNumberColor: any;
|
|
283
|
-
negativeNumberColor: any;
|
|
284
|
-
zeroNumberColor: any;
|
|
285
|
-
dateColor: any;
|
|
286
|
-
pendingTextColor: any;
|
|
287
|
-
errorTextColor: any;
|
|
288
|
-
filterBarActiveBackgroundColor: any;
|
|
289
|
-
filterBarExpandedBackgroundColor: any;
|
|
290
|
-
filterBarExpandedActiveBackgroundColor: any;
|
|
291
|
-
filterBarExpandedActiveCellBackgroundColor: any;
|
|
292
|
-
filterBarSeparatorColor: any;
|
|
293
|
-
filterBarActiveColor: any;
|
|
294
|
-
filterBarErrorColor: any;
|
|
295
|
-
filterIconColor: any;
|
|
296
|
-
scrimColor: any;
|
|
297
|
-
contextMenuSortIconColor: any;
|
|
298
|
-
contextMenuReverseIconColor: any;
|
|
299
|
-
allowRowResize: boolean;
|
|
300
|
-
gridColumnColor: null;
|
|
301
|
-
gridRowColor: null;
|
|
302
|
-
groupedColumnDividerColor: any;
|
|
303
|
-
columnHoverBackgroundColor: null;
|
|
304
|
-
headerHorizontalPadding: number;
|
|
305
|
-
scrollBarSize: number;
|
|
306
|
-
scrollBarHoverSize: number;
|
|
307
|
-
minScrollHandleSize: number;
|
|
308
|
-
rowHeight: number;
|
|
309
|
-
columnWidth: number;
|
|
310
|
-
rowHeaderWidth: number;
|
|
311
|
-
rowFooterWidth: number;
|
|
312
|
-
columnHeaderHeight: number;
|
|
313
|
-
filterBarHeight: number;
|
|
314
|
-
filterBarCollapsedHeight: number;
|
|
315
|
-
sortHeaderBarHeight: number;
|
|
316
|
-
reverseHeaderBarHeight: number;
|
|
317
|
-
filterBarHorizontalPadding: number;
|
|
318
|
-
scrimBlurSize: number;
|
|
319
|
-
minScrimTransitionTime: number;
|
|
320
|
-
maxScrimTransitionTime: number;
|
|
321
|
-
scrollSnapToRow: boolean;
|
|
322
|
-
linkerColumnHoverBackgroundColor: any;
|
|
323
|
-
treeLineColor: any;
|
|
324
|
-
treeMarkerColor: any;
|
|
325
|
-
treeMarkerHoverColor: any;
|
|
326
|
-
floatingGridColumnColor: null;
|
|
327
|
-
floatingGridRowColor: any;
|
|
328
|
-
floatingRowBackgroundColors: any;
|
|
329
|
-
floatingDividerInnerColor: any;
|
|
330
|
-
floatingDividerOuterColor: any;
|
|
331
|
-
}>;
|
|
179
|
+
getCachedTheme: ((theme: any, isEditable: any) => any) & memoize.Memoized<(theme: any, isEditable: any) => any>;
|
|
332
180
|
getValueForCell(columnIndex: any, rowIndex: any, rawValue?: boolean): any;
|
|
333
181
|
getModelColumn(columnIndex: any): any;
|
|
334
182
|
getModelRow(rowIndex: any): any;
|
|
335
|
-
getTheme():
|
|
336
|
-
autoSelectRow: boolean;
|
|
337
|
-
backgroundColor: any;
|
|
338
|
-
font: any;
|
|
339
|
-
headerBackgroundColor: any;
|
|
340
|
-
headerColor: any;
|
|
341
|
-
headerSeparatorColor: any;
|
|
342
|
-
headerSeparatorHoverColor: any;
|
|
343
|
-
headerHiddenSeparatorHoverColor: any;
|
|
344
|
-
headerSortBarColor: any;
|
|
345
|
-
headerReverseBarColor: any;
|
|
346
|
-
headerBarCasingColor: any;
|
|
347
|
-
headerFont: any;
|
|
348
|
-
rowBackgroundColors: any;
|
|
349
|
-
rowHoverBackgroundColor: any;
|
|
350
|
-
selectionColor: any;
|
|
351
|
-
selectionOutlineColor: any;
|
|
352
|
-
selectionOutlineCasingColor: any;
|
|
353
|
-
selectedRowHoverBackgroundColor: any;
|
|
354
|
-
scrollBarBackgroundColor: any;
|
|
355
|
-
scrollBarHoverBackgroundColor: any;
|
|
356
|
-
scrollBarCasingColor: any;
|
|
357
|
-
scrollBarCornerColor: any;
|
|
358
|
-
scrollBarColor: any;
|
|
359
|
-
scrollBarHoverColor: any;
|
|
360
|
-
scrollBarActiveColor: any;
|
|
361
|
-
textColor: any;
|
|
362
|
-
positiveNumberColor: any;
|
|
363
|
-
negativeNumberColor: any;
|
|
364
|
-
zeroNumberColor: any;
|
|
365
|
-
dateColor: any;
|
|
366
|
-
pendingTextColor: any;
|
|
367
|
-
errorTextColor: any;
|
|
368
|
-
filterBarActiveBackgroundColor: any;
|
|
369
|
-
filterBarExpandedBackgroundColor: any;
|
|
370
|
-
filterBarExpandedActiveBackgroundColor: any;
|
|
371
|
-
filterBarExpandedActiveCellBackgroundColor: any;
|
|
372
|
-
filterBarSeparatorColor: any;
|
|
373
|
-
filterBarActiveColor: any;
|
|
374
|
-
filterBarErrorColor: any;
|
|
375
|
-
filterIconColor: any;
|
|
376
|
-
scrimColor: any;
|
|
377
|
-
contextMenuSortIconColor: any;
|
|
378
|
-
contextMenuReverseIconColor: any;
|
|
379
|
-
allowRowResize: boolean;
|
|
380
|
-
gridColumnColor: null;
|
|
381
|
-
gridRowColor: null;
|
|
382
|
-
groupedColumnDividerColor: any;
|
|
383
|
-
columnHoverBackgroundColor: null;
|
|
384
|
-
headerHorizontalPadding: number;
|
|
385
|
-
scrollBarSize: number;
|
|
386
|
-
scrollBarHoverSize: number;
|
|
387
|
-
minScrollHandleSize: number;
|
|
388
|
-
rowHeight: number;
|
|
389
|
-
columnWidth: number;
|
|
390
|
-
rowHeaderWidth: number;
|
|
391
|
-
rowFooterWidth: number;
|
|
392
|
-
columnHeaderHeight: number;
|
|
393
|
-
filterBarHeight: number;
|
|
394
|
-
filterBarCollapsedHeight: number;
|
|
395
|
-
sortHeaderBarHeight: number;
|
|
396
|
-
reverseHeaderBarHeight: number;
|
|
397
|
-
filterBarHorizontalPadding: number;
|
|
398
|
-
scrimBlurSize: number;
|
|
399
|
-
minScrimTransitionTime: number;
|
|
400
|
-
maxScrimTransitionTime: number;
|
|
401
|
-
scrollSnapToRow: boolean;
|
|
402
|
-
linkerColumnHoverBackgroundColor: any;
|
|
403
|
-
treeLineColor: any;
|
|
404
|
-
treeMarkerColor: any;
|
|
405
|
-
treeMarkerHoverColor: any;
|
|
406
|
-
floatingGridColumnColor: null;
|
|
407
|
-
floatingGridRowColor: any;
|
|
408
|
-
floatingRowBackgroundColors: any;
|
|
409
|
-
floatingDividerInnerColor: any;
|
|
410
|
-
floatingDividerOuterColor: any;
|
|
411
|
-
};
|
|
183
|
+
getTheme(): any;
|
|
412
184
|
getVisibleColumn(modelIndex: any): number;
|
|
413
185
|
/**
|
|
414
186
|
* Applies the provided input filters as quick filters,
|
|
@@ -481,6 +253,8 @@ export class IrisGrid extends React.Component<any, any, any> {
|
|
|
481
253
|
stopListening(model: any): void;
|
|
482
254
|
focusFilterBar(column: any): void;
|
|
483
255
|
hideColumnByVisibleIndex(columnVisibleIndex: any): void;
|
|
256
|
+
freezeColumnByColumnName(columnName: any): void;
|
|
257
|
+
unFreezeColumnByColumnName(columnName: any): void;
|
|
484
258
|
handleTableLoadError(error: any): void;
|
|
485
259
|
showAllColumns(): void;
|
|
486
260
|
toggleSort(columnIndex: any, addToExisting: any): void;
|
|
@@ -590,6 +364,10 @@ export namespace IrisGrid {
|
|
|
590
364
|
const onContextMenu: PropTypes.Requireable<(...args: any[]) => any>;
|
|
591
365
|
const pendingDataMap: PropTypes.Requireable<Map<unknown, unknown>>;
|
|
592
366
|
const getDownloadWorker: PropTypes.Requireable<(...args: any[]) => any>;
|
|
367
|
+
const canCopy: PropTypes.Requireable<boolean>;
|
|
368
|
+
const canDownloadCsv: PropTypes.Requireable<boolean>;
|
|
369
|
+
const frozenColumns: PropTypes.Requireable<(string | null | undefined)[]>;
|
|
370
|
+
const theme: PropTypes.Requireable<PropTypes.InferProps<{}>>;
|
|
593
371
|
}
|
|
594
372
|
namespace defaultProps {
|
|
595
373
|
const children_1: null;
|
|
@@ -691,6 +469,14 @@ export namespace IrisGrid {
|
|
|
691
469
|
const formatter: never[];
|
|
692
470
|
}
|
|
693
471
|
export { settings_1 as settings };
|
|
472
|
+
const canCopy_1: boolean;
|
|
473
|
+
export { canCopy_1 as canCopy };
|
|
474
|
+
const canDownloadCsv_1: boolean;
|
|
475
|
+
export { canDownloadCsv_1 as canDownloadCsv };
|
|
476
|
+
const frozenColumns_1: null;
|
|
477
|
+
export { frozenColumns_1 as frozenColumns };
|
|
478
|
+
const theme_1: {};
|
|
479
|
+
export { theme_1 as theme };
|
|
694
480
|
}
|
|
695
481
|
}
|
|
696
482
|
export default IrisGrid;
|
package/dist/IrisGrid.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IrisGrid.d.ts","sourceRoot":"","sources":["../src/IrisGrid.jsx"],"names":[],"mappings":"AAiHA;IACE,2BAAyB;IAEzB,2BAAyB;IAEzB,mCAAiC;IAEjC,mEAOC;IAED,
|
|
1
|
+
{"version":3,"file":"IrisGrid.d.ts","sourceRoot":"","sources":["../src/IrisGrid.jsx"],"names":[],"mappings":"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"}
|
package/dist/IrisGrid.js
CHANGED
|
@@ -97,7 +97,7 @@ export class IrisGrid extends Component {
|
|
|
97
97
|
max: 50
|
|
98
98
|
}));
|
|
99
99
|
|
|
100
|
-
_defineProperty(this, "getCachedOptionItems", memoize((isChartBuilderAvailable, isCustomColumnsAvailable, isRollupAvailable, isTotalsAvailable, isSelectDistinctAvailable, isExportAvailable, toggleFilterBarAction, toggleSearchBarAction, isFilterBarShown, showSearchBar) => {
|
|
100
|
+
_defineProperty(this, "getCachedOptionItems", memoize((isChartBuilderAvailable, isCustomColumnsAvailable, isRollupAvailable, isTotalsAvailable, isSelectDistinctAvailable, isExportAvailable, toggleFilterBarAction, toggleSearchBarAction, isFilterBarShown, showSearchBar, canDownloadCsv) => {
|
|
101
101
|
var optionItems = [];
|
|
102
102
|
|
|
103
103
|
if (isChartBuilderAvailable) {
|
|
@@ -146,7 +146,7 @@ export class IrisGrid extends Component {
|
|
|
146
146
|
});
|
|
147
147
|
}
|
|
148
148
|
|
|
149
|
-
if (isExportAvailable) {
|
|
149
|
+
if (isExportAvailable && canDownloadCsv) {
|
|
150
150
|
optionItems.push({
|
|
151
151
|
type: OptionType.TABLE_EXPORTER,
|
|
152
152
|
title: 'Download CSV',
|
|
@@ -263,9 +263,9 @@ export class IrisGrid extends Component {
|
|
|
263
263
|
max: 1
|
|
264
264
|
}));
|
|
265
265
|
|
|
266
|
-
_defineProperty(this, "getCachedTheme", memoize(isEditable => _objectSpread(_objectSpread({}, IrisGridTheme), {}, {
|
|
266
|
+
_defineProperty(this, "getCachedTheme", memoize((theme, isEditable) => _objectSpread(_objectSpread({}, IrisGridTheme), {}, {
|
|
267
267
|
autoSelectRow: !isEditable
|
|
268
|
-
}), {
|
|
268
|
+
}, theme), {
|
|
269
269
|
max: 1
|
|
270
270
|
}));
|
|
271
271
|
|
|
@@ -385,8 +385,6 @@ export class IrisGrid extends Component {
|
|
|
385
385
|
shortcut: SHORTCUTS.INPUT_TABLE.COMMIT
|
|
386
386
|
};
|
|
387
387
|
this.contextActions = [this.toggleFilterBarAction, this.toggleSearchBarAction, this.discardAction, this.commitAction];
|
|
388
|
-
var keyHandlers = [new CopyKeyHandler(this), new ReverseKeyHandler(this), new ClearFilterKeyHandler(this)];
|
|
389
|
-
var mouseHandlers = [new IrisGridColumnSelectMouseHandler(this), new IrisGridColumnTooltipMouseHandler(this), new IrisGridSortMouseHandler(this), new IrisGridFilterMouseHandler(this), new IrisGridContextMenuHandler(this), new IrisGridDataSelectMouseHandler(this), new PendingMouseHandler(this)];
|
|
390
388
|
var {
|
|
391
389
|
aggregationSettings: _aggregationSettings,
|
|
392
390
|
customColumnFormatMap,
|
|
@@ -407,8 +405,17 @@ export class IrisGrid extends Component {
|
|
|
407
405
|
advancedFilters: _advancedFilters,
|
|
408
406
|
quickFilters: _quickFilters,
|
|
409
407
|
selectDistinctColumns,
|
|
410
|
-
pendingDataMap
|
|
408
|
+
pendingDataMap,
|
|
409
|
+
canCopy,
|
|
410
|
+
frozenColumns
|
|
411
411
|
} = props;
|
|
412
|
+
var keyHandlers = [new ReverseKeyHandler(this), new ClearFilterKeyHandler(this)];
|
|
413
|
+
|
|
414
|
+
if (canCopy) {
|
|
415
|
+
keyHandlers.push(new CopyKeyHandler(this));
|
|
416
|
+
}
|
|
417
|
+
|
|
418
|
+
var mouseHandlers = [new IrisGridColumnSelectMouseHandler(this), new IrisGridColumnTooltipMouseHandler(this), new IrisGridSortMouseHandler(this), new IrisGridFilterMouseHandler(this), new IrisGridContextMenuHandler(this), new IrisGridDataSelectMouseHandler(this), new PendingMouseHandler(this)];
|
|
412
419
|
var metricCalculator = new IrisGridMetricCalculator({
|
|
413
420
|
userColumnWidths: new Map(userColumnWidths),
|
|
414
421
|
userRowHeights: new Map(userRowHeights)
|
|
@@ -476,7 +483,8 @@ export class IrisGrid extends Component {
|
|
|
476
483
|
pendingDataErrors: new Map(),
|
|
477
484
|
pendingSavePromise: null,
|
|
478
485
|
pendingSaveError: null,
|
|
479
|
-
toastMessage: null
|
|
486
|
+
toastMessage: null,
|
|
487
|
+
frozenColumns
|
|
480
488
|
};
|
|
481
489
|
}
|
|
482
490
|
|
|
@@ -636,9 +644,10 @@ export class IrisGrid extends Component {
|
|
|
636
644
|
|
|
637
645
|
getTheme() {
|
|
638
646
|
var {
|
|
639
|
-
model
|
|
647
|
+
model,
|
|
648
|
+
theme
|
|
640
649
|
} = this.props;
|
|
641
|
-
return this.getCachedTheme(model.isEditable);
|
|
650
|
+
return this.getCachedTheme(theme, model.isEditable);
|
|
642
651
|
}
|
|
643
652
|
|
|
644
653
|
getVisibleColumn(modelIndex) {
|
|
@@ -1090,8 +1099,16 @@ export class IrisGrid extends Component {
|
|
|
1090
1099
|
|
|
1091
1100
|
copyCell(columnIndex, rowIndex) {
|
|
1092
1101
|
var rawValue = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
1093
|
-
var
|
|
1094
|
-
|
|
1102
|
+
var {
|
|
1103
|
+
canCopy
|
|
1104
|
+
} = this.props;
|
|
1105
|
+
|
|
1106
|
+
if (canCopy) {
|
|
1107
|
+
var value = this.getValueForCell(columnIndex, rowIndex, rawValue);
|
|
1108
|
+
ContextActionUtils.copyToClipboard(value).catch(e => log.error('Unable to copy cell', e));
|
|
1109
|
+
} else {
|
|
1110
|
+
log.error('Attempted to copyCell for user without copy permission.');
|
|
1111
|
+
}
|
|
1095
1112
|
}
|
|
1096
1113
|
/**
|
|
1097
1114
|
* Copy the provided ranges to the clipboard
|
|
@@ -1107,7 +1124,8 @@ export class IrisGrid extends Component {
|
|
|
1107
1124
|
var formatValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
|
|
1108
1125
|
var error = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
|
|
1109
1126
|
var {
|
|
1110
|
-
model
|
|
1127
|
+
model,
|
|
1128
|
+
canCopy
|
|
1111
1129
|
} = this.props;
|
|
1112
1130
|
var {
|
|
1113
1131
|
metricCalculator,
|
|
@@ -1116,17 +1134,22 @@ export class IrisGrid extends Component {
|
|
|
1116
1134
|
var {
|
|
1117
1135
|
userColumnWidths
|
|
1118
1136
|
} = metricCalculator;
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1137
|
+
|
|
1138
|
+
if (canCopy) {
|
|
1139
|
+
var copyOperation = {
|
|
1140
|
+
ranges: GridRange.boundedRanges(ranges, model.columnCount, model.rowCount),
|
|
1141
|
+
includeHeaders,
|
|
1142
|
+
formatValues,
|
|
1143
|
+
movedColumns,
|
|
1144
|
+
userColumnWidths,
|
|
1145
|
+
error
|
|
1146
|
+
};
|
|
1147
|
+
this.setState({
|
|
1148
|
+
copyOperation
|
|
1149
|
+
});
|
|
1150
|
+
} else {
|
|
1151
|
+
log.error('Attempted copyRanges for user without copy permission.');
|
|
1152
|
+
}
|
|
1130
1153
|
}
|
|
1131
1154
|
|
|
1132
1155
|
startLoading(loadingText) {
|
|
@@ -1294,6 +1317,54 @@ export class IrisGrid extends Component {
|
|
|
1294
1317
|
this.grid.forceUpdate();
|
|
1295
1318
|
}
|
|
1296
1319
|
|
|
1320
|
+
freezeColumnByColumnName(columnName) {
|
|
1321
|
+
var {
|
|
1322
|
+
frozenColumns
|
|
1323
|
+
} = this.state;
|
|
1324
|
+
var {
|
|
1325
|
+
model
|
|
1326
|
+
} = this.props;
|
|
1327
|
+
log.debug2('freezing column', columnName);
|
|
1328
|
+
var allFrozenColumns;
|
|
1329
|
+
|
|
1330
|
+
if (frozenColumns == null) {
|
|
1331
|
+
var _model$layoutHints$fr, _model$layoutHints;
|
|
1332
|
+
|
|
1333
|
+
allFrozenColumns = new Set((_model$layoutHints$fr = (_model$layoutHints = model.layoutHints) === null || _model$layoutHints === void 0 ? void 0 : _model$layoutHints.frozenColumns) !== null && _model$layoutHints$fr !== void 0 ? _model$layoutHints$fr : []);
|
|
1334
|
+
allFrozenColumns.add(columnName);
|
|
1335
|
+
} else {
|
|
1336
|
+
allFrozenColumns = new Set([...frozenColumns, columnName]);
|
|
1337
|
+
}
|
|
1338
|
+
|
|
1339
|
+
this.setState({
|
|
1340
|
+
frozenColumns: [...allFrozenColumns]
|
|
1341
|
+
});
|
|
1342
|
+
}
|
|
1343
|
+
|
|
1344
|
+
unFreezeColumnByColumnName(columnName) {
|
|
1345
|
+
var {
|
|
1346
|
+
frozenColumns
|
|
1347
|
+
} = this.state;
|
|
1348
|
+
var {
|
|
1349
|
+
model
|
|
1350
|
+
} = this.props;
|
|
1351
|
+
log.debug2('unfreezing column', columnName);
|
|
1352
|
+
var allFrozenColumns;
|
|
1353
|
+
|
|
1354
|
+
if (frozenColumns == null) {
|
|
1355
|
+
var _model$layoutHints$fr2, _model$layoutHints2;
|
|
1356
|
+
|
|
1357
|
+
allFrozenColumns = new Set((_model$layoutHints$fr2 = (_model$layoutHints2 = model.layoutHints) === null || _model$layoutHints2 === void 0 ? void 0 : _model$layoutHints2.frozenColumns) !== null && _model$layoutHints$fr2 !== void 0 ? _model$layoutHints$fr2 : []);
|
|
1358
|
+
allFrozenColumns.delete(columnName);
|
|
1359
|
+
} else {
|
|
1360
|
+
allFrozenColumns = new Set(frozenColumns.filter(col => col !== columnName));
|
|
1361
|
+
}
|
|
1362
|
+
|
|
1363
|
+
this.setState({
|
|
1364
|
+
frozenColumns: [...allFrozenColumns]
|
|
1365
|
+
});
|
|
1366
|
+
}
|
|
1367
|
+
|
|
1297
1368
|
handleColumnVisibilityChanged(modelIndexes, visibilityOption) {
|
|
1298
1369
|
var {
|
|
1299
1370
|
metricCalculator
|
|
@@ -2132,12 +2203,20 @@ export class IrisGrid extends Component {
|
|
|
2132
2203
|
}
|
|
2133
2204
|
|
|
2134
2205
|
handleDownloadTableStart() {
|
|
2135
|
-
|
|
2136
|
-
|
|
2137
|
-
|
|
2138
|
-
|
|
2139
|
-
|
|
2140
|
-
|
|
2206
|
+
var {
|
|
2207
|
+
canDownloadCsv
|
|
2208
|
+
} = this.props;
|
|
2209
|
+
|
|
2210
|
+
if (canDownloadCsv) {
|
|
2211
|
+
this.setState({
|
|
2212
|
+
isTableDownloading: true,
|
|
2213
|
+
tableDownloadProgress: 0,
|
|
2214
|
+
tableDownloadEstimatedTime: null,
|
|
2215
|
+
tableDownloadStatus: TableCsvExporter.DOWNLOAD_STATUS.INITIATING
|
|
2216
|
+
});
|
|
2217
|
+
} else {
|
|
2218
|
+
log.error('Attempted to handleDownloadTableStart for user without download CSV permission.');
|
|
2219
|
+
}
|
|
2141
2220
|
}
|
|
2142
2221
|
|
|
2143
2222
|
handleDownloadTable() {
|
|
@@ -2145,16 +2224,24 @@ export class IrisGrid extends Component {
|
|
|
2145
2224
|
args[_key] = arguments[_key];
|
|
2146
2225
|
}
|
|
2147
2226
|
|
|
2148
|
-
|
|
2149
|
-
|
|
2150
|
-
|
|
2151
|
-
this.tableSaver.startDownload(...args);
|
|
2152
|
-
}
|
|
2227
|
+
var {
|
|
2228
|
+
canDownloadCsv
|
|
2229
|
+
} = this.props;
|
|
2153
2230
|
|
|
2154
|
-
|
|
2155
|
-
|
|
2156
|
-
|
|
2157
|
-
|
|
2231
|
+
if (canDownloadCsv) {
|
|
2232
|
+
log.info('start table downloading', ...args);
|
|
2233
|
+
this.setState(() => {
|
|
2234
|
+
if (this.tableSaver) {
|
|
2235
|
+
this.tableSaver.startDownload(...args);
|
|
2236
|
+
}
|
|
2237
|
+
|
|
2238
|
+
return {
|
|
2239
|
+
tableDownloadStatus: TableCsvExporter.DOWNLOAD_STATUS.DOWNLOADING
|
|
2240
|
+
};
|
|
2241
|
+
});
|
|
2242
|
+
} else {
|
|
2243
|
+
log.error('Attempted to handleDownloadTable for user without download CSV permission.');
|
|
2244
|
+
}
|
|
2158
2245
|
}
|
|
2159
2246
|
|
|
2160
2247
|
handleCancelDownloadTable() {
|
|
@@ -2283,7 +2370,8 @@ export class IrisGrid extends Component {
|
|
|
2283
2370
|
onlyFetchVisibleColumns,
|
|
2284
2371
|
alwaysFetchColumns,
|
|
2285
2372
|
advancedSettings,
|
|
2286
|
-
onAdvancedSettingsChange
|
|
2373
|
+
onAdvancedSettingsChange,
|
|
2374
|
+
canDownloadCsv
|
|
2287
2375
|
} = this.props;
|
|
2288
2376
|
var {
|
|
2289
2377
|
metricCalculator,
|
|
@@ -2335,7 +2423,8 @@ export class IrisGrid extends Component {
|
|
|
2335
2423
|
pendingRowCount,
|
|
2336
2424
|
pendingDataErrors,
|
|
2337
2425
|
pendingDataMap,
|
|
2338
|
-
toastMessage
|
|
2426
|
+
toastMessage,
|
|
2427
|
+
frozenColumns
|
|
2339
2428
|
} = this.state;
|
|
2340
2429
|
|
|
2341
2430
|
if (!isReady) {
|
|
@@ -2709,7 +2798,7 @@ export class IrisGrid extends Component {
|
|
|
2709
2798
|
}
|
|
2710
2799
|
}
|
|
2711
2800
|
|
|
2712
|
-
var optionItems = this.getCachedOptionItems(model.isChartBuilderAvailable, model.isCustomColumnsAvailable, model.isRollupAvailable, model.isTotalsAvailable, model.isSelectDistinctAvailable, model.isExportAvailable, this.toggleFilterBarAction, this.toggleSearchBarAction, isFilterBarShown, showSearchBar);
|
|
2801
|
+
var optionItems = this.getCachedOptionItems(model.isChartBuilderAvailable, model.isCustomColumnsAvailable, model.isRollupAvailable, model.isTotalsAvailable, model.isSelectDistinctAvailable, model.isExportAvailable, this.toggleFilterBarAction, this.toggleSearchBarAction, isFilterBarShown, showSearchBar, canDownloadCsv);
|
|
2713
2802
|
var openOptionsStack = openOptions.map(option => {
|
|
2714
2803
|
switch (option.type) {
|
|
2715
2804
|
case OptionType.CHART_BUILDER:
|
|
@@ -2887,7 +2976,8 @@ export class IrisGrid extends Component {
|
|
|
2887
2976
|
totalsConfig: this.getModelTotalsConfig(model.columns, rollupConfig, aggregationSettings),
|
|
2888
2977
|
selectDistinctColumns: selectDistinctColumns,
|
|
2889
2978
|
pendingRowCount: pendingRowCount,
|
|
2890
|
-
pendingDataMap: pendingDataMap
|
|
2979
|
+
pendingDataMap: pendingDataMap,
|
|
2980
|
+
frozenColumns: frozenColumns
|
|
2891
2981
|
}), /*#__PURE__*/React.createElement("div", {
|
|
2892
2982
|
className: classNames('grid-settings-button', {
|
|
2893
2983
|
'is-menu-shown': isMenuShown
|
|
@@ -3043,7 +3133,12 @@ IrisGrid.propTypes = {
|
|
|
3043
3133
|
// eslint-disable-next-line react/no-unused-prop-types
|
|
3044
3134
|
onContextMenu: PropTypes.func,
|
|
3045
3135
|
pendingDataMap: PropTypes.instanceOf(Map),
|
|
3046
|
-
getDownloadWorker: PropTypes.func
|
|
3136
|
+
getDownloadWorker: PropTypes.func,
|
|
3137
|
+
canCopy: PropTypes.bool,
|
|
3138
|
+
canDownloadCsv: PropTypes.bool,
|
|
3139
|
+
frozenColumns: PropTypes.arrayOf(PropTypes.string),
|
|
3140
|
+
// Theme override for IrisGridTheme
|
|
3141
|
+
theme: PropTypes.shape({})
|
|
3047
3142
|
};
|
|
3048
3143
|
IrisGrid.defaultProps = {
|
|
3049
3144
|
children: null,
|
|
@@ -3099,7 +3194,11 @@ IrisGrid.defaultProps = {
|
|
|
3099
3194
|
showTimeZone: false,
|
|
3100
3195
|
showTSeparator: true,
|
|
3101
3196
|
formatter: []
|
|
3102
|
-
}
|
|
3197
|
+
},
|
|
3198
|
+
canCopy: true,
|
|
3199
|
+
canDownloadCsv: true,
|
|
3200
|
+
frozenColumns: null,
|
|
3201
|
+
theme: {}
|
|
3103
3202
|
};
|
|
3104
3203
|
export default IrisGrid;
|
|
3105
3204
|
//# sourceMappingURL=IrisGrid.js.map
|