@ni/nimble-components 18.10.3 → 18.10.5
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/all-components-bundle.js +996 -192
- package/dist/all-components-bundle.js.map +1 -1
- package/dist/all-components-bundle.min.js +3280 -3087
- package/dist/all-components-bundle.min.js.map +1 -1
- package/dist/esm/table/components/cell/index.d.ts +1 -0
- package/dist/esm/table/components/cell/index.js +4 -0
- package/dist/esm/table/components/cell/index.js.map +1 -1
- package/dist/esm/table/components/cell/styles.js +8 -0
- package/dist/esm/table/components/cell/styles.js.map +1 -1
- package/dist/esm/table/components/cell/template.js +1 -1
- package/dist/esm/table/components/cell/template.js.map +1 -1
- package/dist/esm/table/components/group-row/index.d.ts +29 -0
- package/dist/esm/table/components/group-row/index.js +61 -0
- package/dist/esm/table/components/group-row/index.js.map +1 -0
- package/dist/esm/table/components/group-row/styles.d.ts +1 -0
- package/dist/esm/table/components/group-row/styles.js +64 -0
- package/dist/esm/table/components/group-row/styles.js.map +1 -0
- package/dist/esm/table/components/group-row/template.d.ts +2 -0
- package/dist/esm/table/components/group-row/template.js +23 -0
- package/dist/esm/table/components/group-row/template.js.map +1 -0
- package/dist/esm/table/components/row/index.d.ts +5 -0
- package/dist/esm/table/components/row/index.js +30 -5
- package/dist/esm/table/components/row/index.js.map +1 -1
- package/dist/esm/table/components/row/styles.js +4 -0
- package/dist/esm/table/components/row/styles.js.map +1 -1
- package/dist/esm/table/components/row/template.js +2 -1
- package/dist/esm/table/components/row/template.js.map +1 -1
- package/dist/esm/table/index.d.ts +31 -3
- package/dist/esm/table/index.js +223 -22
- package/dist/esm/table/index.js.map +1 -1
- package/dist/esm/table/models/table-validator.d.ts +9 -1
- package/dist/esm/table/models/table-validator.js +37 -12
- package/dist/esm/table/models/table-validator.js.map +1 -1
- package/dist/esm/table/models/update-tracker.d.ts +4 -0
- package/dist/esm/table/models/update-tracker.js +23 -2
- package/dist/esm/table/models/update-tracker.js.map +1 -1
- package/dist/esm/table/models/virtualizer.d.ts +3 -1
- package/dist/esm/table/models/virtualizer.js +3 -2
- package/dist/esm/table/models/virtualizer.js.map +1 -1
- package/dist/esm/table/styles.js +19 -3
- package/dist/esm/table/styles.js.map +1 -1
- package/dist/esm/table/template.js +38 -19
- package/dist/esm/table/template.js.map +1 -1
- package/dist/esm/table/types.d.ts +26 -0
- package/dist/esm/table/types.js +16 -0
- package/dist/esm/table/types.js.map +1 -1
- package/dist/esm/table-column/base/group-header-view/index.d.ts +14 -0
- package/dist/esm/table-column/base/group-header-view/index.js +17 -0
- package/dist/esm/table-column/base/group-header-view/index.js.map +1 -0
- package/dist/esm/table-column/base/group-header-view/template.d.ts +3 -0
- package/dist/esm/table-column/base/group-header-view/template.js +10 -0
- package/dist/esm/table-column/base/group-header-view/template.js.map +1 -0
- package/dist/esm/table-column/base/index.d.ts +25 -0
- package/dist/esm/table-column/base/index.js +23 -0
- package/dist/esm/table-column/base/index.js.map +1 -1
- package/dist/esm/table-column/mixins/groupable-column.d.ts +12 -0
- package/dist/esm/table-column/mixins/groupable-column.js +35 -0
- package/dist/esm/table-column/mixins/groupable-column.js.map +1 -0
- package/dist/esm/table-column/text/group-header-view/index.d.ts +22 -0
- package/dist/esm/table-column/text/group-header-view/index.js +47 -0
- package/dist/esm/table-column/text/group-header-view/index.js.map +1 -0
- package/dist/esm/table-column/text/group-header-view/styles.d.ts +1 -0
- package/dist/esm/table-column/text/group-header-view/styles.js +16 -0
- package/dist/esm/table-column/text/group-header-view/styles.js.map +1 -0
- package/dist/esm/table-column/text/group-header-view/template.d.ts +2 -0
- package/dist/esm/table-column/text/group-header-view/template.js +15 -0
- package/dist/esm/table-column/text/group-header-view/template.js.map +1 -0
- package/dist/esm/table-column/text/index.d.ts +9 -1
- package/dist/esm/table-column/text/index.js +7 -1
- package/dist/esm/table-column/text/index.js.map +1 -1
- package/dist/esm/tree-item/styles.js +2 -2
- package/dist/esm/tree-item/styles.js.map +1 -1
- package/package.json +1 -1
|
@@ -15,11 +15,13 @@ export class UpdateTracker {
|
|
|
15
15
|
constructor(table) {
|
|
16
16
|
this.requiredUpdates = {
|
|
17
17
|
rowIds: false,
|
|
18
|
+
groupRows: false,
|
|
18
19
|
columnIds: false,
|
|
19
20
|
columnSort: false,
|
|
20
21
|
columnWidths: false,
|
|
21
22
|
columnDefinition: false,
|
|
22
|
-
actionMenuSlots: false
|
|
23
|
+
actionMenuSlots: false,
|
|
24
|
+
selectionMode: false
|
|
23
25
|
};
|
|
24
26
|
this.updateQueued = false;
|
|
25
27
|
this.table = table;
|
|
@@ -27,6 +29,9 @@ export class UpdateTracker {
|
|
|
27
29
|
get updateRowIds() {
|
|
28
30
|
return this.requiredUpdates.rowIds;
|
|
29
31
|
}
|
|
32
|
+
get updateGroupRows() {
|
|
33
|
+
return this.requiredUpdates.groupRows;
|
|
34
|
+
}
|
|
30
35
|
get updateColumnIds() {
|
|
31
36
|
return this.requiredUpdates.columnIds;
|
|
32
37
|
}
|
|
@@ -42,10 +47,15 @@ export class UpdateTracker {
|
|
|
42
47
|
get updateActionMenuSlots() {
|
|
43
48
|
return this.requiredUpdates.actionMenuSlots;
|
|
44
49
|
}
|
|
50
|
+
get updateSelectionMode() {
|
|
51
|
+
return this.requiredUpdates.selectionMode;
|
|
52
|
+
}
|
|
45
53
|
get requiresTanStackUpdate() {
|
|
46
54
|
return (this.requiredUpdates.rowIds
|
|
47
55
|
|| this.requiredUpdates.columnSort
|
|
48
|
-
|| this.requiredUpdates.columnDefinition
|
|
56
|
+
|| this.requiredUpdates.columnDefinition
|
|
57
|
+
|| this.requiredUpdates.groupRows
|
|
58
|
+
|| this.requiredUpdates.selectionMode);
|
|
49
59
|
}
|
|
50
60
|
get requiresTanStackDataReset() {
|
|
51
61
|
return (this.requiredUpdates.rowIds || this.requiredUpdates.columnDefinition);
|
|
@@ -54,6 +64,9 @@ export class UpdateTracker {
|
|
|
54
64
|
this.setAllKeys(true);
|
|
55
65
|
this.queueUpdate();
|
|
56
66
|
}
|
|
67
|
+
get hasPendingUpdates() {
|
|
68
|
+
return this.updateQueued;
|
|
69
|
+
}
|
|
57
70
|
trackColumnPropertyChanged(changedColumnProperty) {
|
|
58
71
|
if (isColumnProperty(changedColumnProperty, 'columnId')) {
|
|
59
72
|
this.requiredUpdates.columnIds = true;
|
|
@@ -70,6 +83,9 @@ export class UpdateTracker {
|
|
|
70
83
|
else if (isColumnProperty(changedColumnProperty, 'actionMenuSlot')) {
|
|
71
84
|
this.requiredUpdates.actionMenuSlots = true;
|
|
72
85
|
}
|
|
86
|
+
else if (isColumnProperty(changedColumnProperty, 'internalGroupIndex', 'internalGroupingDisabled')) {
|
|
87
|
+
this.requiredUpdates.groupRows = true;
|
|
88
|
+
}
|
|
73
89
|
this.queueUpdate();
|
|
74
90
|
}
|
|
75
91
|
trackColumnInstancesChanged() {
|
|
@@ -78,12 +94,17 @@ export class UpdateTracker {
|
|
|
78
94
|
this.requiredUpdates.columnSort = true;
|
|
79
95
|
this.requiredUpdates.columnWidths = true;
|
|
80
96
|
this.requiredUpdates.actionMenuSlots = true;
|
|
97
|
+
this.requiredUpdates.groupRows = true;
|
|
81
98
|
this.queueUpdate();
|
|
82
99
|
}
|
|
83
100
|
trackIdFieldNameChanged() {
|
|
84
101
|
this.requiredUpdates.rowIds = true;
|
|
85
102
|
this.queueUpdate();
|
|
86
103
|
}
|
|
104
|
+
trackSelectionModeChanged() {
|
|
105
|
+
this.requiredUpdates.selectionMode = true;
|
|
106
|
+
this.queueUpdate();
|
|
107
|
+
}
|
|
87
108
|
setAllKeys(value) {
|
|
88
109
|
Object.keys(this.requiredUpdates).forEach(key => {
|
|
89
110
|
this.requiredUpdates[key] = value;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-tracker.js","sourceRoot":"","sources":["../../../../src/table/models/update-tracker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"update-tracker.js","sourceRoot":"","sources":["../../../../src/table/models/update-tracker.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { Table as TanStackTable } from '@tanstack/table-core';
|
|
1
2
|
import { VirtualItem } from '@tanstack/virtual-core';
|
|
2
3
|
import type { Table } from '..';
|
|
3
4
|
import type { TableRecord } from '../types';
|
|
@@ -12,9 +13,10 @@ export declare class Virtualizer<TData extends TableRecord = TableRecord> {
|
|
|
12
13
|
headerContainerMarginRight: number;
|
|
13
14
|
rowContainerYOffset: number;
|
|
14
15
|
private readonly table;
|
|
16
|
+
private readonly tanStackTable;
|
|
15
17
|
private readonly viewportResizeObserver;
|
|
16
18
|
private virtualizer?;
|
|
17
|
-
constructor(table: Table<TData>);
|
|
19
|
+
constructor(table: Table<TData>, tanStackTable: TanStackTable<TData>);
|
|
18
20
|
connectedCallback(): void;
|
|
19
21
|
disconnectedCallback(): void;
|
|
20
22
|
dataChanged(): void;
|
|
@@ -9,12 +9,13 @@ import { TableCellView } from '../../table-column/base/cell-view';
|
|
|
9
9
|
* @internal
|
|
10
10
|
*/
|
|
11
11
|
export class Virtualizer {
|
|
12
|
-
constructor(table) {
|
|
12
|
+
constructor(table, tanStackTable) {
|
|
13
13
|
this.visibleItems = [];
|
|
14
14
|
this.allRowsHeight = 0;
|
|
15
15
|
this.headerContainerMarginRight = 0;
|
|
16
16
|
this.rowContainerYOffset = 0;
|
|
17
17
|
this.table = table;
|
|
18
|
+
this.tanStackTable = tanStackTable;
|
|
18
19
|
this.viewportResizeObserver = new ResizeObserver(entries => {
|
|
19
20
|
const borderBoxSize = entries[0]?.borderBoxSize[0];
|
|
20
21
|
if (borderBoxSize) {
|
|
@@ -52,7 +53,7 @@ export class Virtualizer {
|
|
|
52
53
|
const rowHeight = parseFloat(controlHeight.getValueFor(this.table))
|
|
53
54
|
+ 2 * parseFloat(borderWidth.getValueFor(this.table));
|
|
54
55
|
return {
|
|
55
|
-
count: this.
|
|
56
|
+
count: this.tanStackTable.getRowModel().rows.length,
|
|
56
57
|
getScrollElement: () => {
|
|
57
58
|
return this.table.viewport;
|
|
58
59
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"virtualizer.js","sourceRoot":"","sources":["../../../../src/table/models/virtualizer.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"virtualizer.js","sourceRoot":"","sources":["../../../../src/table/models/virtualizer.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/table/styles.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { css } from '@microsoft/fast-element';
|
|
2
2
|
import { display } from '@microsoft/fast-foundation';
|
|
3
3
|
import { White } from '@ni/nimble-tokens/dist/styledictionary/js/tokens';
|
|
4
|
-
import { applicationBackgroundColor, bodyFont, bodyFontColor, fillHoverColor } from '../theme-provider/design-tokens';
|
|
4
|
+
import { applicationBackgroundColor, bodyFont, bodyFontColor, fillHoverColor, fillHoverSelectedColor, fillSelectedColor } from '../theme-provider/design-tokens';
|
|
5
5
|
import { Theme } from '../theme-provider/types';
|
|
6
6
|
import { hexToRgbaCssColor } from '../utilities/style/colors';
|
|
7
7
|
import { themeBehavior } from '../utilities/style/theme';
|
|
@@ -79,9 +79,17 @@ export const styles = css `
|
|
|
79
79
|
pointer-events: none;
|
|
80
80
|
}
|
|
81
81
|
|
|
82
|
-
.row:hover::before {
|
|
82
|
+
:host([selection-mode='single']) .row:hover::before {
|
|
83
83
|
background: ${fillHoverColor};
|
|
84
84
|
}
|
|
85
|
+
|
|
86
|
+
:host([selection-mode='single']) .row[selected]::before {
|
|
87
|
+
background: ${fillSelectedColor};
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
:host([selection-mode='single']) .row[selected]:hover::before {
|
|
91
|
+
background: ${fillHoverSelectedColor};
|
|
92
|
+
}
|
|
85
93
|
`.withBehaviors(themeBehavior(Theme.color, css `
|
|
86
94
|
.header-row::before {
|
|
87
95
|
content: '';
|
|
@@ -96,8 +104,16 @@ export const styles = css `
|
|
|
96
104
|
background: ${fillHoverColor};
|
|
97
105
|
}
|
|
98
106
|
|
|
99
|
-
.row:hover::before {
|
|
107
|
+
:host([selection-mode='single']) .row:hover::before {
|
|
100
108
|
background: ${hexToRgbaCssColor(White, 0.15)};
|
|
101
109
|
}
|
|
110
|
+
|
|
111
|
+
:host([selection-mode='single']) .row[selected]::before {
|
|
112
|
+
background: ${hexToRgbaCssColor(White, 0.25)};
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
:host([selection-mode='single']) .row[selected]:hover::before {
|
|
116
|
+
background: ${hexToRgbaCssColor(White, 0.2)};
|
|
117
|
+
}
|
|
102
118
|
`));
|
|
103
119
|
//# sourceMappingURL=styles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/table/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,kDAAkD,CAAC;AACzE,OAAO,EACH,0BAA0B,EAC1B,QAAQ,EACR,aAAa,EACb,cAAc,
|
|
1
|
+
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/table/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,kDAAkD,CAAC;AACzE,OAAO,EACH,0BAA0B,EAC1B,QAAQ,EACR,aAAa,EACb,cAAc,EACd,sBAAsB,EACtB,iBAAiB,EACpB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;MACnB,OAAO,CAAC,MAAM,CAAC;;;;;;;;;;;gBAWL,QAAQ;iBACP,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBA+BR,0BAA0B;;;;;;;;;;;;;;;;;sBAiB1B,0BAA0B;;;;;;;;;;;;;;sBAc1B,cAAc;;;;sBAId,iBAAiB;;;;sBAIjB,sBAAsB;;CAE3C,CAAC,aAAa,CACX,aAAa,CACT,KAAK,CAAC,KAAK,EACX,GAAG,CAAA;;;;;;8BAMmB,cAAc;;;;;8BAKd,cAAc;;;;8BAId,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC;;;;8BAI9B,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC;;;;8BAI9B,iBAAiB,CAAC,KAAK,EAAE,GAAG,CAAC;;SAElD,CACJ,CACJ,CAAC"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { children, elements, html, ref, repeat, when } from '@microsoft/fast-element';
|
|
2
2
|
import { tableHeaderTag } from './components/header';
|
|
3
3
|
import { tableRowTag } from './components/row';
|
|
4
|
-
import { TableColumnSortDirection } from './types';
|
|
4
|
+
import { TableColumnSortDirection, TableRowSelectionMode, TableRowSelectionState } from './types';
|
|
5
|
+
import { tableGroupRowTag } from './components/group-row';
|
|
5
6
|
// prettier-ignore
|
|
6
7
|
export const template = html `
|
|
7
|
-
<template role="
|
|
8
|
+
<template role="grid" ${children({ property: 'childItems', filter: elements() })}>
|
|
8
9
|
<div class="table-container" style="
|
|
9
10
|
--ni-private-table-scroll-x: -${x => x.scrollX}px;
|
|
10
11
|
--ni-private-table-header-scrollbar-spacer-width: ${x => x.virtualizer.headerContainerMarginRight}px;
|
|
@@ -34,23 +35,41 @@ export const template = html `
|
|
|
34
35
|
role="rowgroup">
|
|
35
36
|
${when(x => x.columns.length > 0 && x.canRenderRows, html `
|
|
36
37
|
${repeat(x => x.virtualizer.visibleItems, html `
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
38
|
+
${when((x, c) => c.parent.tableData[x.index]?.isGrouped, html `
|
|
39
|
+
<${tableGroupRowTag}
|
|
40
|
+
class="group-row"
|
|
41
|
+
:groupRowValue="${(x, c) => c.parent.tableData[x.index]?.groupRowValue}"
|
|
42
|
+
?expanded="${(x, c) => c.parent.tableData[x.index]?.isExpanded}"
|
|
43
|
+
:nestingLevel="${(x, c) => c.parent.tableData[x.index]?.nestingLevel}"
|
|
44
|
+
:leafItemCount="${(x, c) => c.parent.tableData[x.index]?.leafItemCount}"
|
|
45
|
+
:groupColumn="${(x, c) => c.parent.tableData[x.index]?.groupColumn}"
|
|
46
|
+
@group-expand-toggle="${(x, c) => c.parent.handleGroupRowExpanded(x.index, c.event)}"
|
|
47
|
+
>
|
|
48
|
+
</${tableGroupRowTag}>
|
|
49
|
+
`)}
|
|
50
|
+
${when((x, c) => !c.parent.tableData[x.index]?.isGrouped, html `
|
|
51
|
+
<${tableRowTag}
|
|
52
|
+
class="row"
|
|
53
|
+
record-id="${(x, c) => c.parent.tableData[x.index]?.id}"
|
|
54
|
+
?selectable="${(_, c) => c.parent.selectionMode !== TableRowSelectionMode.none}"
|
|
55
|
+
?selected="${(x, c) => c.parent.tableData[x.index]?.selectionState === TableRowSelectionState.selected}"
|
|
56
|
+
:dataRecord="${(x, c) => c.parent.tableData[x.index]?.record}"
|
|
57
|
+
:columns="${(_, c) => c.parent.columns}"
|
|
58
|
+
:nestingLevel="${(x, c) => c.parent.tableData[x.index]?.nestingLevel}"
|
|
59
|
+
@click="${async (x, c) => c.parent.onRowClick(x.index)}"
|
|
60
|
+
@row-action-menu-beforetoggle="${(_, c) => c.parent.onRowActionMenuBeforeToggle(c.event)}"
|
|
61
|
+
@row-action-menu-toggle="${(_, c) => c.parent.onRowActionMenuToggle(c.event)}"
|
|
62
|
+
>
|
|
63
|
+
${when((x, c) => c.parent.openActionMenuRecordId === c.parent.tableData[x.index]?.id, html `
|
|
64
|
+
${repeat((_, c) => c.parent.actionMenuSlots, html `
|
|
65
|
+
<slot
|
|
66
|
+
name="${x => x}"
|
|
67
|
+
slot="${x => `row-action-menu-${x}`}">
|
|
68
|
+
</slot>
|
|
69
|
+
`)}
|
|
70
|
+
`)}
|
|
71
|
+
</${tableRowTag}>
|
|
72
|
+
`)}
|
|
54
73
|
`)}
|
|
55
74
|
`)}
|
|
56
75
|
</div>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template.js","sourceRoot":"","sources":["../../../src/table/template.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,GAAG,EACH,MAAM,EACN,IAAI,EACP,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAEH,wBAAwB,
|
|
1
|
+
{"version":3,"file":"template.js","sourceRoot":"","sources":["../../../src/table/template.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,6 +26,8 @@ export interface TableValidity {
|
|
|
26
26
|
readonly duplicateColumnId: boolean;
|
|
27
27
|
readonly missingColumnId: boolean;
|
|
28
28
|
readonly duplicateSortIndex: boolean;
|
|
29
|
+
readonly duplicateGroupIndex: boolean;
|
|
30
|
+
readonly idFieldNameNotConfigured: boolean;
|
|
29
31
|
}
|
|
30
32
|
export interface TableActionMenuToggleEventDetail {
|
|
31
33
|
newState: boolean;
|
|
@@ -42,3 +44,27 @@ export declare const TableColumnSortDirection: {
|
|
|
42
44
|
readonly descending: "descending";
|
|
43
45
|
};
|
|
44
46
|
export declare type TableColumnSortDirection = (typeof TableColumnSortDirection)[keyof typeof TableColumnSortDirection];
|
|
47
|
+
/**
|
|
48
|
+
* The selection modes of rows in the table.
|
|
49
|
+
*/
|
|
50
|
+
export declare const TableRowSelectionMode: {
|
|
51
|
+
readonly none: undefined;
|
|
52
|
+
readonly single: "single";
|
|
53
|
+
};
|
|
54
|
+
export declare type TableRowSelectionMode = (typeof TableRowSelectionMode)[keyof typeof TableRowSelectionMode];
|
|
55
|
+
/**
|
|
56
|
+
* @internal
|
|
57
|
+
*
|
|
58
|
+
* The possible selection states that the table or a table row can be in.
|
|
59
|
+
*/
|
|
60
|
+
export declare const TableRowSelectionState: {
|
|
61
|
+
readonly notSelected: "notSelected";
|
|
62
|
+
readonly selected: "selected";
|
|
63
|
+
};
|
|
64
|
+
export declare type TableRowSelectionState = (typeof TableRowSelectionState)[keyof typeof TableRowSelectionState];
|
|
65
|
+
/**
|
|
66
|
+
* Event detail type for row selection events in the table.
|
|
67
|
+
*/
|
|
68
|
+
export interface TableRowSelectionEventDetail {
|
|
69
|
+
selectedRecordIds: string[];
|
|
70
|
+
}
|
package/dist/esm/table/types.js
CHANGED
|
@@ -6,4 +6,20 @@ export const TableColumnSortDirection = {
|
|
|
6
6
|
ascending: 'ascending',
|
|
7
7
|
descending: 'descending'
|
|
8
8
|
};
|
|
9
|
+
/**
|
|
10
|
+
* The selection modes of rows in the table.
|
|
11
|
+
*/
|
|
12
|
+
export const TableRowSelectionMode = {
|
|
13
|
+
none: undefined,
|
|
14
|
+
single: 'single'
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* @internal
|
|
18
|
+
*
|
|
19
|
+
* The possible selection states that the table or a table row can be in.
|
|
20
|
+
*/
|
|
21
|
+
export const TableRowSelectionState = {
|
|
22
|
+
notSelected: 'notSelected',
|
|
23
|
+
selected: 'selected'
|
|
24
|
+
};
|
|
9
25
|
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/table/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/table/types.ts"],"names":[],"mappings":"AA2CA;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACpC,IAAI,EAAE,SAAS;IACf,SAAS,EAAE,WAAW;IACtB,UAAU,EAAE,YAAY;CAClB,CAAC;AAIX;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACjC,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,QAAQ;CACV,CAAC;AAIX;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG;IAClC,WAAW,EAAE,aAAa;IAC1B,QAAQ,EAAE,UAAU;CACd,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { FoundationElement } from '@microsoft/fast-foundation';
|
|
2
|
+
export interface TableGroupHeaderState<TGroupValue = unknown, TColumnConfig = unknown> {
|
|
3
|
+
groupHeaderValue: TGroupValue;
|
|
4
|
+
columnConfig?: TColumnConfig;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* The base class for group header views, which are displayed in a TableGroupRow.
|
|
8
|
+
* A TableColumn that uses the GroupableColumn mixin must provide a TableGroupHeaderView
|
|
9
|
+
* type (linked via TableColumn.groupHeaderViewTag).
|
|
10
|
+
*/
|
|
11
|
+
export declare abstract class TableGroupHeaderView<TGroupValue = unknown, TColumnConfig = unknown> extends FoundationElement implements TableGroupHeaderState<TGroupValue, TColumnConfig> {
|
|
12
|
+
groupHeaderValue: TGroupValue;
|
|
13
|
+
columnConfig?: TColumnConfig;
|
|
14
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { observable } from '@microsoft/fast-element';
|
|
3
|
+
import { FoundationElement } from '@microsoft/fast-foundation';
|
|
4
|
+
/**
|
|
5
|
+
* The base class for group header views, which are displayed in a TableGroupRow.
|
|
6
|
+
* A TableColumn that uses the GroupableColumn mixin must provide a TableGroupHeaderView
|
|
7
|
+
* type (linked via TableColumn.groupHeaderViewTag).
|
|
8
|
+
*/
|
|
9
|
+
export class TableGroupHeaderView extends FoundationElement {
|
|
10
|
+
}
|
|
11
|
+
__decorate([
|
|
12
|
+
observable
|
|
13
|
+
], TableGroupHeaderView.prototype, "groupHeaderValue", void 0);
|
|
14
|
+
__decorate([
|
|
15
|
+
observable
|
|
16
|
+
], TableGroupHeaderView.prototype, "columnConfig", void 0);
|
|
17
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/table-column/base/group-header-view/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAU/D;;;;GAIG;AACH,MAAM,OAAgB,oBAIlB,SAAQ,iBAAiB;CAO5B;AAJG;IADC,UAAU;8DAC2B;AAGtC;IADC,UAAU;0DACyB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { html } from '@microsoft/fast-element';
|
|
2
|
+
export const createGroupHeaderViewTemplate = (groupHeaderViewTag) => html `
|
|
3
|
+
<${groupHeaderViewTag}
|
|
4
|
+
:groupHeaderValue="${x => x.groupRowValue}"
|
|
5
|
+
:columnConfig="${x => x.groupColumn?.columnConfig}"
|
|
6
|
+
class="group-header-value"
|
|
7
|
+
>
|
|
8
|
+
</${groupHeaderViewTag}>
|
|
9
|
+
`;
|
|
10
|
+
//# sourceMappingURL=template.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"template.js","sourceRoot":"","sources":["../../../../../src/table-column/base/group-header-view/template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAgB,MAAM,yBAAyB,CAAC;AAG7D,MAAM,CAAC,MAAM,6BAA6B,GAAG,CACzC,kBAA0B,EACC,EAAE,CAAC,IAAI,CAAe;WAC1C,kBAAkB;iCACI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa;6BACxB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,YAAY;;;YAGjD,kBAAkB;KACzB,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ViewTemplate } from '@microsoft/fast-element';
|
|
2
2
|
import { FoundationElement } from '@microsoft/fast-foundation';
|
|
3
|
+
import type { TableGroupRow } from '../../table/components/group-row';
|
|
3
4
|
import type { TableCell } from '../../table/components/cell';
|
|
4
5
|
import { TableColumnSortDirection, TableFieldName } from '../../table/types';
|
|
5
6
|
import { TableColumnSortOperation } from './types';
|
|
@@ -43,6 +44,29 @@ export declare abstract class TableColumn<TColumnConfig = unknown> extends Found
|
|
|
43
44
|
internalMinPixelWidth: number;
|
|
44
45
|
/**
|
|
45
46
|
* @internal
|
|
47
|
+
* Whether or not this column can be used to group rows by
|
|
48
|
+
*/
|
|
49
|
+
internalGroupingDisabled: boolean;
|
|
50
|
+
/**
|
|
51
|
+
* @internal
|
|
52
|
+
* Specifies the grouping precedence of the column within the set of all columns participating in grouping.
|
|
53
|
+
* Columns are rendered in the grouping tree from lowest group-index as the tree root to highest
|
|
54
|
+
* group-index as tree leaves.
|
|
55
|
+
*/
|
|
56
|
+
internalGroupIndex?: number;
|
|
57
|
+
/**
|
|
58
|
+
* The tag to use to render the group header content for a column.
|
|
59
|
+
* The element this tag refers to must derive from TableGroupHeaderView.
|
|
60
|
+
*/
|
|
61
|
+
abstract readonly groupHeaderViewTag?: string;
|
|
62
|
+
/**
|
|
63
|
+
* @internal
|
|
64
|
+
*/
|
|
65
|
+
internalGroupHeaderViewTemplate?: ViewTemplate<TableGroupRow>;
|
|
66
|
+
/**
|
|
67
|
+
* @internal
|
|
68
|
+
*
|
|
69
|
+
* The template to use to render the cell content for the column
|
|
46
70
|
* The tag (element name) of the custom element that renders the cell content for the column.
|
|
47
71
|
* That element should derive from TableCellView<TCellRecord, TColumnConfig>.
|
|
48
72
|
*/
|
|
@@ -94,4 +118,5 @@ export declare abstract class TableColumn<TColumnConfig = unknown> extends Found
|
|
|
94
118
|
protected cellViewTagChanged(): void;
|
|
95
119
|
protected internalFractionalWidthChanged(): void;
|
|
96
120
|
protected internalPixelWidthChanged(): void;
|
|
121
|
+
protected groupHeaderViewTagChanged(): void;
|
|
97
122
|
}
|
|
@@ -2,6 +2,7 @@ import { __decorate } from "tslib";
|
|
|
2
2
|
import { attr, nullableNumberConverter, observable } from '@microsoft/fast-element';
|
|
3
3
|
import { FoundationElement } from '@microsoft/fast-foundation';
|
|
4
4
|
import { uniqueId } from '@microsoft/fast-web-utilities';
|
|
5
|
+
import { createGroupHeaderViewTemplate } from './group-header-view/template';
|
|
5
6
|
import { createCellViewTemplate } from '../../table/components/cell/template';
|
|
6
7
|
import { TableColumnSortDirection } from '../../table/types';
|
|
7
8
|
import { defaultFractionalWidth, defaultMinPixelWidth, TableColumnSortOperation } from './types';
|
|
@@ -30,6 +31,11 @@ export class TableColumn extends FoundationElement {
|
|
|
30
31
|
* The minimum size in pixels according to the design doc
|
|
31
32
|
*/
|
|
32
33
|
this.internalMinPixelWidth = defaultMinPixelWidth;
|
|
34
|
+
/**
|
|
35
|
+
* @internal
|
|
36
|
+
* Whether or not this column can be used to group rows by
|
|
37
|
+
*/
|
|
38
|
+
this.internalGroupingDisabled = false;
|
|
33
39
|
/**
|
|
34
40
|
* @internal
|
|
35
41
|
*
|
|
@@ -63,6 +69,11 @@ export class TableColumn extends FoundationElement {
|
|
|
63
69
|
internalPixelWidthChanged() {
|
|
64
70
|
this.currentPixelWidth = this.internalPixelWidth;
|
|
65
71
|
}
|
|
72
|
+
groupHeaderViewTagChanged() {
|
|
73
|
+
this.internalGroupHeaderViewTemplate = this.groupHeaderViewTag
|
|
74
|
+
? createGroupHeaderViewTemplate(this.groupHeaderViewTag)
|
|
75
|
+
: undefined;
|
|
76
|
+
}
|
|
66
77
|
}
|
|
67
78
|
__decorate([
|
|
68
79
|
attr({ attribute: 'column-id' })
|
|
@@ -97,6 +108,18 @@ __decorate([
|
|
|
97
108
|
__decorate([
|
|
98
109
|
observable
|
|
99
110
|
], TableColumn.prototype, "internalMinPixelWidth", void 0);
|
|
111
|
+
__decorate([
|
|
112
|
+
observable
|
|
113
|
+
], TableColumn.prototype, "internalGroupingDisabled", void 0);
|
|
114
|
+
__decorate([
|
|
115
|
+
observable
|
|
116
|
+
], TableColumn.prototype, "internalGroupIndex", void 0);
|
|
117
|
+
__decorate([
|
|
118
|
+
observable
|
|
119
|
+
], TableColumn.prototype, "groupHeaderViewTag", void 0);
|
|
120
|
+
__decorate([
|
|
121
|
+
observable
|
|
122
|
+
], TableColumn.prototype, "internalGroupHeaderViewTemplate", void 0);
|
|
100
123
|
__decorate([
|
|
101
124
|
observable
|
|
102
125
|
], TableColumn.prototype, "cellViewTag", void 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/base/index.ts"],"names":[],"mappings":";AAAA,OAAO,EACH,IAAI,EACJ,uBAAuB,EACvB,UAAU,EAEb,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/base/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { TableColumn } from '../base';
|
|
2
|
+
declare type GroupableTableColumn = Pick<TableColumn, 'internalGroupingDisabled' | 'internalGroupIndex'>;
|
|
3
|
+
declare type GroupableTableColumnConstructor = abstract new (...args: any[]) => GroupableTableColumn;
|
|
4
|
+
export declare function mixinGroupableColumnAPI<TBase extends GroupableTableColumnConstructor>(base: TBase): (abstract new (...args: any[]) => {
|
|
5
|
+
groupingDisabled: boolean;
|
|
6
|
+
groupIndex?: number | null | undefined;
|
|
7
|
+
groupingDisabledChanged(): void;
|
|
8
|
+
groupIndexChanged(): void;
|
|
9
|
+
internalGroupingDisabled: boolean;
|
|
10
|
+
internalGroupIndex?: number | undefined;
|
|
11
|
+
}) & TBase;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { attr, nullableNumberConverter } from '@microsoft/fast-element';
|
|
2
|
+
// As the returned class is internal to the function, we can't write a signature that uses is directly, so rely on inference
|
|
3
|
+
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/explicit-function-return-type
|
|
4
|
+
export function mixinGroupableColumnAPI(base) {
|
|
5
|
+
/**
|
|
6
|
+
* The Mixin that provides a concrete column with the API to allow grouping
|
|
7
|
+
* by the values in that column.
|
|
8
|
+
*/
|
|
9
|
+
class GroupableColumn extends base {
|
|
10
|
+
constructor() {
|
|
11
|
+
super(...arguments);
|
|
12
|
+
this.groupingDisabled = false;
|
|
13
|
+
this.groupIndex = null;
|
|
14
|
+
}
|
|
15
|
+
groupingDisabledChanged() {
|
|
16
|
+
this.internalGroupingDisabled = this.groupingDisabled;
|
|
17
|
+
}
|
|
18
|
+
groupIndexChanged() {
|
|
19
|
+
if (typeof this.groupIndex === 'number') {
|
|
20
|
+
this.internalGroupIndex = this.groupIndex;
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
this.internalGroupIndex = undefined;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
attr({ attribute: 'grouping-disabled', mode: 'boolean' })(
|
|
28
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
|
|
29
|
+
GroupableColumn.prototype, 'groupingDisabled');
|
|
30
|
+
attr({ attribute: 'group-index', converter: nullableNumberConverter })(
|
|
31
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
|
|
32
|
+
GroupableColumn.prototype, 'groupIndex');
|
|
33
|
+
return GroupableColumn;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=groupable-column.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"groupable-column.js","sourceRoot":"","sources":["../../../../src/table-column/mixins/groupable-column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAYxE,4HAA4H;AAC5H,+HAA+H;AAC/H,MAAM,UAAU,uBAAuB,CAErC,IAAW;IACT;;;OAGG;IACH,MAAe,eAAgB,SAAQ,IAAI;QAA3C;;YACW,qBAAgB,GAAG,KAAK,CAAC;YAEzB,eAAU,GAAmB,IAAI,CAAC;QAa7C,CAAC;QAXU,uBAAuB;YAC1B,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC1D,CAAC;QAEM,iBAAiB;YACpB,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE;gBACrC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,UAAU,CAAC;aAC7C;iBAAM;gBACH,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;aACvC;QACL,CAAC;KACJ;IACD,IAAI,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;IACrD,iEAAiE;IACjE,eAAe,CAAC,SAAS,EACzB,kBAAkB,CACrB,CAAC;IACF,IAAI,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,uBAAuB,EAAE,CAAC;IAClE,iEAAiE;IACjE,eAAe,CAAC,SAAS,EACzB,YAAY,CACf,CAAC;IAEF,OAAO,eAAe,CAAC;AAC3B,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { TableColumnTextColumnConfig } from '..';
|
|
2
|
+
import { TableGroupHeaderView } from '../../base/group-header-view';
|
|
3
|
+
declare global {
|
|
4
|
+
interface HTMLElementTagNameMap {
|
|
5
|
+
'nimble-table-column-text-group-header': TableColumnTextGroupHeaderView;
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* The custom element used to render a group row header for a group representing rows
|
|
10
|
+
* grouped by a TableColumnText column.
|
|
11
|
+
*/
|
|
12
|
+
export declare class TableColumnTextGroupHeaderView extends TableGroupHeaderView<string | null | undefined, TableColumnTextColumnConfig> {
|
|
13
|
+
columnConfig?: TableColumnTextColumnConfig;
|
|
14
|
+
/** @internal */
|
|
15
|
+
textSpan: HTMLElement;
|
|
16
|
+
/** @internal */
|
|
17
|
+
isValidContentAndHasOverflow: boolean;
|
|
18
|
+
get content(): string;
|
|
19
|
+
updateTitleOverflow(): void;
|
|
20
|
+
clearTitleOverflow(): void;
|
|
21
|
+
}
|
|
22
|
+
export declare const tableColumnTextGroupHeaderTag: string;
|