@vuu-ui/vuu-table-types 2.1.15 → 2.1.17

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 (2) hide show
  1. package/index.d.ts +50 -7
  2. package/package.json +4 -4
package/index.d.ts CHANGED
@@ -131,6 +131,12 @@ export declare type TableRowClickHandlerInternal = (
131
131
 
132
132
  export interface TableCellRendererProps
133
133
  extends Omit<TableCellProps, "onDataEdited"> {
134
+ /**
135
+ * has the value of this edit control been changed during the current edit session.
136
+ * This can go from true to false if control is edited to revert a previous change
137
+ * during same session. It will be undefined if the control has not been edited.
138
+ */
139
+ editedDuringCurrentSession?: boolean;
134
140
  onEdit?: TableCellEditHandler;
135
141
  }
136
142
 
@@ -280,6 +286,9 @@ export interface ColumnDescriptor extends DataValueDescriptor {
280
286
  * This property can be used to disable this feature for a single column.
281
287
  */
282
288
  allowColumnHeaderMenu?: false;
289
+ /**
290
+ * Optional additional CSS className will be applied to column header and all table cells within column.
291
+ */
283
292
  className?: string;
284
293
  /**
285
294
  * Allows custom content to be rendered into the column header. This will be an identifier.
@@ -306,23 +315,58 @@ export interface ColumnDescriptor extends DataValueDescriptor {
306
315
  heading?: string[];
307
316
  hidden?: boolean;
308
317
  isSystemColumn?: boolean;
309
- locked?: boolean;
318
+ /**
319
+ * A 'locked' column remains in a fixed position within the columns list. It
320
+ * cannot be moved from this position by the user. Columns can only be locked
321
+ * to one or other end of the columns list , i.e a column can be locked to the end
322
+ * of the columns list or the begining. More than one column can be locked to
323
+ * either end. Note: this is different from 'pin' in that locked columns can be
324
+ * scrolled out of the viewport.
325
+ */
326
+ locked?: Exclude<PinLocation, "left"> | false;
310
327
  maxWidth?: number;
311
328
  minWidth?: number;
329
+ /**
330
+ * Pinned columns will 'stick' to the edge of the viewport, irrespective of their
331
+ * position within the columns list. Their position(s) will not change even when
332
+ * the viewport is scrolled horizontally. They can be pinned at the leading or
333
+ * trailing viewport edge. More than one column can be pinned to each edge.
334
+ */
312
335
  pin?: PinLocation | false;
313
- resizeable?: boolean;
314
336
 
315
337
  /**
316
- * Column and all cells will be rendered in selected state;
338
+ * A removeable column can be manually removed by user. The default value for this is true,
339
+ * and is determined at the table level. The default can be set to false with the table prop
340
+ * allowColumnRemoval. Whatever the table default, the removable prop on a column takes
341
+ * precedence. Note: removal by user is only possible if a ColumnMenu is configured with the
342
+ * appropriate menu item or the ColumnPicker is offered and allows column removal. The
343
+ * intended purpose of this prop is to exclude certain columns from manual removal by the user,
344
+ * even when removal is offered (via the menu or the columnPicker) for other columns.
317
345
  */
346
+ removeable?: boolean;
318
347
 
348
+ /**
349
+ * A resizeable column can be manually resized by user. The default value for this is true,
350
+ * and is determined at the table level. The default can be set to false with the table prop
351
+ * allowColumnResizing. Whatever the table default, the resizeable prop on a column takes
352
+ * precedence.
353
+ */
354
+ resizeable?: boolean;
355
+
356
+ /**
357
+ * Column and all cells will be rendered in selected state. This is different from row selection
358
+ * and used purely to visually highlight a row. No data is actually selected.
359
+ */
319
360
  selected?: boolean;
320
361
  sortable?: boolean;
321
362
  /**
322
- * 'client' columns will not receive data from dataSource.
363
+ * 'client' columns are not directly associated with a dataSource column.
364
+ * They are not validated against the dataSource to ensure data is included
365
+ * in subscription.
323
366
  * They can be used with a custom renderer, e.g to render
324
- * action buttons.
325
- * default is 'server'
367
+ * action buttons. They do have access to the dataRow, so a custom renderer
368
+ * can consume data from any column included in dataSource subscription.
369
+ * Default is 'server'
326
370
  */
327
371
  source?: "client" | "server";
328
372
 
@@ -363,7 +407,6 @@ export interface RuntimeColumnDescriptor extends ColumnDescriptor {
363
407
  isGroup?: boolean;
364
408
  isSystemColumn?: boolean;
365
409
  label: string;
366
- locked?: boolean;
367
410
  marginLeft?: number;
368
411
  moving?: boolean;
369
412
  /** used only when column is a child of GroupColumn */
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@vuu-ui/vuu-table-types",
3
- "version": "2.1.15",
3
+ "version": "2.1.17",
4
4
  "devDependencies": {
5
- "@vuu-ui/vuu-data-types": "2.1.15",
6
- "@vuu-ui/vuu-filter-types": "2.1.15",
7
- "@vuu-ui/vuu-protocol-types": "2.1.15"
5
+ "@vuu-ui/vuu-data-types": "2.1.17",
6
+ "@vuu-ui/vuu-filter-types": "2.1.17",
7
+ "@vuu-ui/vuu-protocol-types": "2.1.17"
8
8
  },
9
9
  "author": "heswell",
10
10
  "license": "Apache-2.0",