@ni/nimble-components 18.10.3 → 18.10.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/all-components-bundle.js +762 -168
- package/dist/all-components-bundle.js.map +1 -1
- package/dist/all-components-bundle.min.js +3184 -3028
- 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 +2 -0
- package/dist/esm/table/components/row/index.js +13 -5
- package/dist/esm/table/components/row/index.js.map +1 -1
- package/dist/esm/table/components/row/template.js +1 -0
- package/dist/esm/table/components/row/template.js.map +1 -1
- package/dist/esm/table/index.d.ts +14 -0
- package/dist/esm/table/index.js +84 -4
- package/dist/esm/table/index.js.map +1 -1
- package/dist/esm/table/models/table-validator.d.ts +3 -0
- package/dist/esm/table/models/table-validator.js +12 -9
- package/dist/esm/table/models/table-validator.js.map +1 -1
- package/dist/esm/table/models/update-tracker.d.ts +1 -0
- package/dist/esm/table/models/update-tracker.js +10 -1
- 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/template.js +33 -17
- package/dist/esm/table/template.js.map +1 -1
- package/dist/esm/table/types.d.ts +1 -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
|
@@ -10,9 +10,12 @@ export declare class TableValidator<TData extends TableRecord> {
|
|
|
10
10
|
private duplicateColumnId;
|
|
11
11
|
private missingColumnId;
|
|
12
12
|
private duplicateSortIndex;
|
|
13
|
+
private duplicateGroupIndex;
|
|
13
14
|
getValidity(): TableValidity;
|
|
14
15
|
isValid(): boolean;
|
|
15
16
|
validateRecordIds(data: TData[], idFieldName: string | undefined): boolean;
|
|
16
17
|
validateColumnIds(columnIds: (string | undefined)[]): boolean;
|
|
17
18
|
validateColumnSortIndices(sortIndices: number[]): boolean;
|
|
19
|
+
validateColumnGroupIndices(groupIndices: number[]): boolean;
|
|
20
|
+
private validateIndicesAreUnique;
|
|
18
21
|
}
|
|
@@ -10,6 +10,7 @@ export class TableValidator {
|
|
|
10
10
|
this.duplicateColumnId = false;
|
|
11
11
|
this.missingColumnId = false;
|
|
12
12
|
this.duplicateSortIndex = false;
|
|
13
|
+
this.duplicateGroupIndex = false;
|
|
13
14
|
}
|
|
14
15
|
getValidity() {
|
|
15
16
|
return {
|
|
@@ -18,7 +19,8 @@ export class TableValidator {
|
|
|
18
19
|
invalidRecordId: this.invalidRecordId,
|
|
19
20
|
duplicateColumnId: this.duplicateColumnId,
|
|
20
21
|
missingColumnId: this.missingColumnId,
|
|
21
|
-
duplicateSortIndex: this.duplicateSortIndex
|
|
22
|
+
duplicateSortIndex: this.duplicateSortIndex,
|
|
23
|
+
duplicateGroupIndex: this.duplicateGroupIndex
|
|
22
24
|
};
|
|
23
25
|
}
|
|
24
26
|
isValid() {
|
|
@@ -73,15 +75,16 @@ export class TableValidator {
|
|
|
73
75
|
return !this.missingColumnId && !this.duplicateColumnId;
|
|
74
76
|
}
|
|
75
77
|
validateColumnSortIndices(sortIndices) {
|
|
76
|
-
this.duplicateSortIndex =
|
|
77
|
-
const sortIndexSet = new Set();
|
|
78
|
-
for (const sortIndex of sortIndices) {
|
|
79
|
-
if (sortIndexSet.has(sortIndex)) {
|
|
80
|
-
this.duplicateSortIndex = true;
|
|
81
|
-
}
|
|
82
|
-
sortIndexSet.add(sortIndex);
|
|
83
|
-
}
|
|
78
|
+
this.duplicateSortIndex = !this.validateIndicesAreUnique(sortIndices);
|
|
84
79
|
return !this.duplicateSortIndex;
|
|
85
80
|
}
|
|
81
|
+
validateColumnGroupIndices(groupIndices) {
|
|
82
|
+
this.duplicateGroupIndex = !this.validateIndicesAreUnique(groupIndices);
|
|
83
|
+
return !this.duplicateGroupIndex;
|
|
84
|
+
}
|
|
85
|
+
validateIndicesAreUnique(indices) {
|
|
86
|
+
const numberSet = new Set(indices);
|
|
87
|
+
return numberSet.size === indices.length;
|
|
88
|
+
}
|
|
86
89
|
}
|
|
87
90
|
//# sourceMappingURL=table-validator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-validator.js","sourceRoot":"","sources":["../../../../src/table/models/table-validator.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,OAAO,cAAc;IAA3B;QACY,sBAAiB,GAAG,KAAK,CAAC;QAC1B,oBAAe,GAAG,KAAK,CAAC;QACxB,oBAAe,GAAG,KAAK,CAAC;QACxB,sBAAiB,GAAG,KAAK,CAAC;QAC1B,oBAAe,GAAG,KAAK,CAAC;QACxB,uBAAkB,GAAG,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"table-validator.js","sourceRoot":"","sources":["../../../../src/table/models/table-validator.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,7 @@ export declare class UpdateTracker<TData extends TableRecord> {
|
|
|
10
10
|
private updateQueued;
|
|
11
11
|
constructor(table: Table<TData>);
|
|
12
12
|
get updateRowIds(): boolean;
|
|
13
|
+
get updateGroupRows(): boolean;
|
|
13
14
|
get updateColumnIds(): boolean;
|
|
14
15
|
get updateColumnSort(): boolean;
|
|
15
16
|
get updateColumnWidths(): boolean;
|
|
@@ -15,6 +15,7 @@ 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,
|
|
@@ -27,6 +28,9 @@ export class UpdateTracker {
|
|
|
27
28
|
get updateRowIds() {
|
|
28
29
|
return this.requiredUpdates.rowIds;
|
|
29
30
|
}
|
|
31
|
+
get updateGroupRows() {
|
|
32
|
+
return this.requiredUpdates.groupRows;
|
|
33
|
+
}
|
|
30
34
|
get updateColumnIds() {
|
|
31
35
|
return this.requiredUpdates.columnIds;
|
|
32
36
|
}
|
|
@@ -45,7 +49,8 @@ export class UpdateTracker {
|
|
|
45
49
|
get requiresTanStackUpdate() {
|
|
46
50
|
return (this.requiredUpdates.rowIds
|
|
47
51
|
|| this.requiredUpdates.columnSort
|
|
48
|
-
|| this.requiredUpdates.columnDefinition
|
|
52
|
+
|| this.requiredUpdates.columnDefinition
|
|
53
|
+
|| this.requiredUpdates.groupRows);
|
|
49
54
|
}
|
|
50
55
|
get requiresTanStackDataReset() {
|
|
51
56
|
return (this.requiredUpdates.rowIds || this.requiredUpdates.columnDefinition);
|
|
@@ -70,6 +75,9 @@ export class UpdateTracker {
|
|
|
70
75
|
else if (isColumnProperty(changedColumnProperty, 'actionMenuSlot')) {
|
|
71
76
|
this.requiredUpdates.actionMenuSlots = true;
|
|
72
77
|
}
|
|
78
|
+
else if (isColumnProperty(changedColumnProperty, 'internalGroupIndex', 'internalGroupingDisabled')) {
|
|
79
|
+
this.requiredUpdates.groupRows = true;
|
|
80
|
+
}
|
|
73
81
|
this.queueUpdate();
|
|
74
82
|
}
|
|
75
83
|
trackColumnInstancesChanged() {
|
|
@@ -78,6 +86,7 @@ export class UpdateTracker {
|
|
|
78
86
|
this.requiredUpdates.columnSort = true;
|
|
79
87
|
this.requiredUpdates.columnWidths = true;
|
|
80
88
|
this.requiredUpdates.actionMenuSlots = true;
|
|
89
|
+
this.requiredUpdates.groupRows = true;
|
|
81
90
|
this.queueUpdate();
|
|
82
91
|
}
|
|
83
92
|
trackIdFieldNameChanged() {
|
|
@@ -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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"}
|
|
@@ -2,6 +2,7 @@ import { children, elements, html, ref, repeat, when } from '@microsoft/fast-ele
|
|
|
2
2
|
import { tableHeaderTag } from './components/header';
|
|
3
3
|
import { tableRowTag } from './components/row';
|
|
4
4
|
import { TableColumnSortDirection } from './types';
|
|
5
|
+
import { tableGroupRowTag } from './components/group-row';
|
|
5
6
|
// prettier-ignore
|
|
6
7
|
export const template = html `
|
|
7
8
|
<template role="table" ${children({ property: 'childItems', filter: elements() })}>
|
|
@@ -34,23 +35,38 @@ 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
|
+
:dataRecord="${(x, c) => c.parent.tableData[x.index]?.record}"
|
|
55
|
+
:columns="${(_, c) => c.parent.columns}"
|
|
56
|
+
:nestingLevel="${(x, c) => c.parent.tableData[x.index]?.nestingLevel}"
|
|
57
|
+
@row-action-menu-beforetoggle="${(_, c) => c.parent.onRowActionMenuBeforeToggle(c.event)}"
|
|
58
|
+
@row-action-menu-toggle="${(_, c) => c.parent.onRowActionMenuToggle(c.event)}"
|
|
59
|
+
>
|
|
60
|
+
${when((x, c) => c.parent.openActionMenuRecordId === c.parent.tableData[x.index]?.id, html `
|
|
61
|
+
${repeat((_, c) => c.parent.actionMenuSlots, html `
|
|
62
|
+
<slot
|
|
63
|
+
name="${x => x}"
|
|
64
|
+
slot="${x => `row-action-menu-${x}`}">
|
|
65
|
+
</slot>
|
|
66
|
+
`)}
|
|
67
|
+
`)}
|
|
68
|
+
</${tableRowTag}>
|
|
69
|
+
`)}
|
|
54
70
|
`)}
|
|
55
71
|
`)}
|
|
56
72
|
</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,EAC3B,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"template.js","sourceRoot":"","sources":["../../../src/table/template.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,6 +26,7 @@ export interface TableValidity {
|
|
|
26
26
|
readonly duplicateColumnId: boolean;
|
|
27
27
|
readonly missingColumnId: boolean;
|
|
28
28
|
readonly duplicateSortIndex: boolean;
|
|
29
|
+
readonly duplicateGroupIndex: boolean;
|
|
29
30
|
}
|
|
30
31
|
export interface TableActionMenuToggleEventDetail {
|
|
31
32
|
newState: boolean;
|
|
@@ -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":"AA0CA;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACpC,IAAI,EAAE,SAAS;IACf,SAAS,EAAE,WAAW;IACtB,UAAU,EAAE,YAAY;CAClB,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;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { observable, volatile } from '@microsoft/fast-element';
|
|
3
|
+
import { DesignSystem } from '@microsoft/fast-foundation';
|
|
4
|
+
import { TableGroupHeaderView } from '../../base/group-header-view';
|
|
5
|
+
import { template } from './template';
|
|
6
|
+
import { styles } from './styles';
|
|
7
|
+
/**
|
|
8
|
+
* The custom element used to render a group row header for a group representing rows
|
|
9
|
+
* grouped by a TableColumnText column.
|
|
10
|
+
*/
|
|
11
|
+
export class TableColumnTextGroupHeaderView extends TableGroupHeaderView {
|
|
12
|
+
constructor() {
|
|
13
|
+
super(...arguments);
|
|
14
|
+
/** @internal */
|
|
15
|
+
this.isValidContentAndHasOverflow = false;
|
|
16
|
+
}
|
|
17
|
+
get content() {
|
|
18
|
+
return typeof this.groupHeaderValue === 'string'
|
|
19
|
+
? this.groupHeaderValue
|
|
20
|
+
: this.columnConfig?.placeholder ?? '';
|
|
21
|
+
}
|
|
22
|
+
updateTitleOverflow() {
|
|
23
|
+
this.isValidContentAndHasOverflow = this.textSpan.offsetWidth < this.textSpan.scrollWidth;
|
|
24
|
+
}
|
|
25
|
+
clearTitleOverflow() {
|
|
26
|
+
this.isValidContentAndHasOverflow = false;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
__decorate([
|
|
30
|
+
observable
|
|
31
|
+
], TableColumnTextGroupHeaderView.prototype, "columnConfig", void 0);
|
|
32
|
+
__decorate([
|
|
33
|
+
observable
|
|
34
|
+
], TableColumnTextGroupHeaderView.prototype, "isValidContentAndHasOverflow", void 0);
|
|
35
|
+
__decorate([
|
|
36
|
+
volatile
|
|
37
|
+
], TableColumnTextGroupHeaderView.prototype, "content", null);
|
|
38
|
+
const tableColumnTextGroupHeaderView = TableColumnTextGroupHeaderView.compose({
|
|
39
|
+
baseName: 'table-column-text-group-header',
|
|
40
|
+
template,
|
|
41
|
+
styles
|
|
42
|
+
});
|
|
43
|
+
DesignSystem.getOrCreate()
|
|
44
|
+
.withPrefix('nimble')
|
|
45
|
+
.register(tableColumnTextGroupHeaderView());
|
|
46
|
+
export const tableColumnTextGroupHeaderTag = DesignSystem.tagFor(TableColumnTextGroupHeaderView);
|
|
47
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/table-column/text/group-header-view/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAOlC;;;GAGG;AACH,MAAM,OAAO,8BAA+B,SAAQ,oBAGnD;IAHD;;QAUI,gBAAgB;QAET,iCAA4B,GAAG,KAAK,CAAC;IAgBhD,CAAC;IAbG,IAAW,OAAO;QACd,OAAO,OAAO,IAAI,CAAC,gBAAgB,KAAK,QAAQ;YAC5C,CAAC,CAAC,IAAI,CAAC,gBAAgB;YACvB,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,IAAI,EAAE,CAAC;IAC/C,CAAC;IAEM,mBAAmB;QACtB,IAAI,CAAC,4BAA4B,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;IAC9F,CAAC;IAEM,kBAAkB;QACrB,IAAI,CAAC,4BAA4B,GAAG,KAAK,CAAC;IAC9C,CAAC;CACJ;AAvBG;IADC,UAAU;oEACgD;AAO3D;IADC,UAAU;oFACiC;AAG5C;IADC,QAAQ;6DAKR;AAWL,MAAM,8BAA8B,GAAG,8BAA8B,CAAC,OAAO,CAAC;IAC1E,QAAQ,EAAE,gCAAgC;IAC1C,QAAQ;IACR,MAAM;CACT,CAAC,CAAC;AACH,YAAY,CAAC,WAAW,EAAE;KACrB,UAAU,CAAC,QAAQ,CAAC;KACpB,QAAQ,CAAC,8BAA8B,EAAE,CAAC,CAAC;AAChD,MAAM,CAAC,MAAM,6BAA6B,GAAG,YAAY,CAAC,MAAM,CAC5D,8BAA8B,CACjC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const styles: import("@microsoft/fast-element").ElementStyles;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { css } from '@microsoft/fast-element';
|
|
2
|
+
import { bodyFont, bodyFontColor, controlLabelFontColor } from '../../../theme-provider/design-tokens';
|
|
3
|
+
export const styles = css `
|
|
4
|
+
span {
|
|
5
|
+
font: ${bodyFont};
|
|
6
|
+
color: ${bodyFontColor};
|
|
7
|
+
white-space: nowrap;
|
|
8
|
+
overflow: hidden;
|
|
9
|
+
text-overflow: ellipsis;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.placeholder {
|
|
13
|
+
color: ${controlLabelFontColor};
|
|
14
|
+
}
|
|
15
|
+
`;
|
|
16
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../../../src/table-column/text/group-header-view/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EACH,QAAQ,EACR,aAAa,EACb,qBAAqB,EACxB,MAAM,uCAAuC,CAAC;AAE/C,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;gBAET,QAAQ;iBACP,aAAa;;;;;;;iBAOb,qBAAqB;;CAErC,CAAC"}
|