@ni/nimble-components 18.0.1 → 18.0.2
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 +51 -43
- package/dist/all-components-bundle.js.map +1 -1
- package/dist/all-components-bundle.min.js +1975 -1971
- package/dist/all-components-bundle.min.js.map +1 -1
- package/dist/esm/table/components/row/index.d.ts +5 -1
- package/dist/esm/table/components/row/index.js +25 -17
- package/dist/esm/table/components/row/index.js.map +1 -1
- package/dist/esm/table/components/row/template.js +4 -4
- package/dist/esm/table/components/row/template.js.map +1 -1
- package/dist/esm/table/index.d.ts +7 -5
- package/dist/esm/table/index.js +22 -22
- package/dist/esm/table/index.js.map +1 -1
- package/dist/esm/table/template.js +1 -1
- package/dist/esm/table/template.js.map +1 -1
- package/dist/esm/table/types.d.ts +1 -1
- package/package.json +1 -1
|
@@ -6,6 +6,10 @@ declare global {
|
|
|
6
6
|
'nimble-table-row': TableRow;
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
|
+
export interface ColumnState {
|
|
10
|
+
column: TableColumn;
|
|
11
|
+
cellState: TableCellState;
|
|
12
|
+
}
|
|
9
13
|
/**
|
|
10
14
|
* A styled row that is used within the nimble-table.
|
|
11
15
|
* @internal
|
|
@@ -14,6 +18,6 @@ export declare class TableRow<TDataRecord extends TableDataRecord = TableDataRec
|
|
|
14
18
|
recordId?: string;
|
|
15
19
|
dataRecord?: TDataRecord;
|
|
16
20
|
columns: TableColumn[];
|
|
17
|
-
|
|
21
|
+
get columnStates(): ColumnState[];
|
|
18
22
|
private hasValidFieldNames;
|
|
19
23
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
|
-
import { attr, observable } from '@microsoft/fast-element';
|
|
2
|
+
import { attr, observable, volatile } from '@microsoft/fast-element';
|
|
3
3
|
import { DesignSystem, FoundationElement } from '@microsoft/fast-foundation';
|
|
4
4
|
import { styles } from './styles';
|
|
5
5
|
import { template } from './template';
|
|
@@ -12,22 +12,27 @@ export class TableRow extends FoundationElement {
|
|
|
12
12
|
super(...arguments);
|
|
13
13
|
this.columns = [];
|
|
14
14
|
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
15
|
+
get columnStates() {
|
|
16
|
+
return this.columns.map(column => {
|
|
17
|
+
const fieldNames = column.getDataRecordFieldNames();
|
|
18
|
+
let cellState;
|
|
19
|
+
if (this.hasValidFieldNames(fieldNames) && this.dataRecord) {
|
|
20
|
+
const cellDataValues = fieldNames.map(field => this.dataRecord[field]);
|
|
21
|
+
const cellRecord = Object.fromEntries(column.cellRecordFieldNames.map((k, i) => [
|
|
22
|
+
k,
|
|
23
|
+
cellDataValues[i]
|
|
24
|
+
]));
|
|
25
|
+
const columnConfig = column.getColumnConfig?.() ?? {};
|
|
26
|
+
cellState = {
|
|
27
|
+
cellRecord,
|
|
28
|
+
columnConfig
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
cellState = { cellRecord: {}, columnConfig: {} };
|
|
33
|
+
}
|
|
34
|
+
return { column, cellState };
|
|
35
|
+
});
|
|
31
36
|
}
|
|
32
37
|
hasValidFieldNames(keys) {
|
|
33
38
|
return keys.every(key => key !== undefined);
|
|
@@ -42,6 +47,9 @@ __decorate([
|
|
|
42
47
|
__decorate([
|
|
43
48
|
observable
|
|
44
49
|
], TableRow.prototype, "columns", void 0);
|
|
50
|
+
__decorate([
|
|
51
|
+
volatile
|
|
52
|
+
], TableRow.prototype, "columnStates", null);
|
|
45
53
|
const nimbleTableRow = TableRow.compose({
|
|
46
54
|
baseName: 'table-row',
|
|
47
55
|
template,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/table/components/row/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/table/components/row/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAmBtC;;;GAGG;AACH,MAAM,OAAO,QAEX,SAAQ,iBAAiB;IAF3B;;QAUW,YAAO,GAAkB,EAAE,CAAC;IAmCvC,CAAC;IAhCG,IAAW,YAAY;QACnB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;YAC7B,MAAM,UAAU,GAAG,MAAM,CAAC,uBAAuB,EAAE,CAAC;YACpD,IAAI,SAAyB,CAAC;YAC9B,IAAI,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE;gBACxD,MAAM,cAAc,GAAG,UAAU,CAAC,GAAG,CACjC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,UAAW,CAAC,KAAK,CAAC,CACnC,CAAC;gBACF,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CACjC,MAAM,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;oBACtC,CAAC;oBACD,cAAc,CAAC,CAAC,CAAC;iBACpB,CAAC,CACL,CAAC;gBACF,MAAM,YAAY,GAAG,MAAM,CAAC,eAAe,EAAE,EAAE,IAAI,EAAE,CAAC;gBACtD,SAAS,GAAG;oBACR,UAAU;oBACV,YAAY;iBACf,CAAC;aACL;iBAAM;gBACH,SAAS,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;aACpD;YAED,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,kBAAkB,CACtB,IAAoC;QAEpC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC;IAChD,CAAC;CACJ;AAzCG;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;0CACR;AAGzB;IADC,UAAU;4CACqB;AAGhC;IADC,UAAU;yCACwB;AAGnC;IADC,QAAQ;4CA0BR;AASL,MAAM,cAAc,GAAG,QAAQ,CAAC,OAAO,CAAC;IACpC,QAAQ,EAAE,WAAW;IACrB,QAAQ;IACR,MAAM;CACT,CAAC,CAAC;AAEH,YAAY,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC,CAAC"}
|
|
@@ -4,12 +4,12 @@ import { TableCell } from '../cell';
|
|
|
4
4
|
// prettier-ignore
|
|
5
5
|
export const template = html `
|
|
6
6
|
<template role="row">
|
|
7
|
-
${repeat(x => x.
|
|
7
|
+
${repeat(x => x.columnStates, html `
|
|
8
8
|
<${DesignSystem.tagFor(TableCell)}
|
|
9
9
|
class="cell"
|
|
10
|
-
:cellTemplate="${x => x.cellTemplate}"
|
|
11
|
-
:cellStyles="${x => x.cellStyles}"
|
|
12
|
-
:cellState="${
|
|
10
|
+
:cellTemplate="${x => x.column.cellTemplate}"
|
|
11
|
+
:cellStyles="${x => x.column.cellStyles}"
|
|
12
|
+
:cellState="${x => x.cellState}"
|
|
13
13
|
>
|
|
14
14
|
</${DesignSystem.tagFor(TableCell)}>
|
|
15
15
|
`)}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template.js","sourceRoot":"","sources":["../../../../../src/table/components/row/template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"template.js","sourceRoot":"","sources":["../../../../../src/table/components/row/template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,kBAAkB;AAClB,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAU;;UAE5B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,IAAI,CAAuB;eAClD,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC;;iCAEZ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY;+BAC5B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU;8BACzB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;;gBAE9B,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC;SACrC,CAAC;;CAET,CAAC"}
|
|
@@ -11,24 +11,26 @@ declare global {
|
|
|
11
11
|
*/
|
|
12
12
|
export declare class Table<TData extends TableRecord = TableRecord> extends FoundationElement {
|
|
13
13
|
idFieldName?: string | null;
|
|
14
|
-
data: TData[];
|
|
15
14
|
/**
|
|
16
15
|
* @internal
|
|
17
16
|
*/
|
|
18
17
|
tableData: TableRowState<TData>[];
|
|
19
18
|
readonly columns: TableColumn[];
|
|
19
|
+
/**
|
|
20
|
+
* @internal
|
|
21
|
+
*/
|
|
22
|
+
canRenderRows: boolean;
|
|
20
23
|
get validity(): TableValidity;
|
|
21
24
|
private readonly table;
|
|
22
25
|
private options;
|
|
23
|
-
private readonly tableInitialized;
|
|
24
26
|
private readonly tableValidator;
|
|
25
27
|
constructor();
|
|
28
|
+
setData(newData: readonly TData[]): void;
|
|
26
29
|
idFieldNameChanged(_prev: string | undefined, _next: string | undefined): void;
|
|
27
|
-
dataChanged(prev: TData[] | undefined, next: TData[] | undefined): void;
|
|
28
30
|
checkValidity(): boolean;
|
|
29
|
-
private
|
|
31
|
+
private setTableData;
|
|
30
32
|
private refreshRows;
|
|
31
33
|
private updateTableOptions;
|
|
32
34
|
private readonly update;
|
|
33
|
-
private
|
|
35
|
+
private generateTanStackColumns;
|
|
34
36
|
}
|
package/dist/esm/table/index.js
CHANGED
|
@@ -11,13 +11,15 @@ import { template } from './template';
|
|
|
11
11
|
export class Table extends FoundationElement {
|
|
12
12
|
constructor() {
|
|
13
13
|
super();
|
|
14
|
-
this.data = [];
|
|
15
14
|
/**
|
|
16
15
|
* @internal
|
|
17
16
|
*/
|
|
18
17
|
this.tableData = [];
|
|
19
18
|
this.columns = [];
|
|
20
|
-
|
|
19
|
+
/**
|
|
20
|
+
* @internal
|
|
21
|
+
*/
|
|
22
|
+
this.canRenderRows = true;
|
|
21
23
|
this.tableValidator = new TableValidator();
|
|
22
24
|
this.update = (state) => {
|
|
23
25
|
this.table.setOptions(prev => ({
|
|
@@ -42,35 +44,33 @@ export class Table extends FoundationElement {
|
|
|
42
44
|
autoResetAll: false
|
|
43
45
|
};
|
|
44
46
|
this.table = tanStackCreateTable(this.options);
|
|
45
|
-
this.tableInitialized = true;
|
|
46
47
|
}
|
|
47
48
|
get validity() {
|
|
48
49
|
return this.tableValidator.getValidity();
|
|
49
50
|
}
|
|
51
|
+
setData(newData) {
|
|
52
|
+
this.generateTanStackColumns(newData);
|
|
53
|
+
this.setTableData(newData);
|
|
54
|
+
}
|
|
50
55
|
idFieldNameChanged(_prev, _next) {
|
|
51
56
|
// Force TanStack to detect a data update because a row's ID is only
|
|
52
57
|
// generated when creating a new row model.
|
|
53
|
-
this.
|
|
54
|
-
}
|
|
55
|
-
dataChanged(prev, next) {
|
|
56
|
-
if ((!prev || prev.length === 0) && next && next.length > 0) {
|
|
57
|
-
this.generateColumns();
|
|
58
|
-
}
|
|
59
|
-
// Ignore any updates that occur prior to the TanStack table being initialized.
|
|
60
|
-
if (this.tableInitialized) {
|
|
61
|
-
this.trySetData(this.data);
|
|
62
|
-
}
|
|
58
|
+
this.setTableData(this.table.options.data);
|
|
63
59
|
}
|
|
64
60
|
checkValidity() {
|
|
65
61
|
return this.tableValidator.isValid();
|
|
66
62
|
}
|
|
67
|
-
|
|
68
|
-
const
|
|
63
|
+
setTableData(newData) {
|
|
64
|
+
const data = newData.map(record => {
|
|
65
|
+
return { ...record };
|
|
66
|
+
});
|
|
67
|
+
this.tableValidator.validateRecordIds(data, this.idFieldName);
|
|
68
|
+
this.canRenderRows = this.checkValidity();
|
|
69
69
|
const getRowIdFunction = this.idFieldName === null || this.idFieldName === undefined
|
|
70
70
|
? undefined
|
|
71
71
|
: (record) => record[this.idFieldName];
|
|
72
72
|
this.updateTableOptions({
|
|
73
|
-
data
|
|
73
|
+
data,
|
|
74
74
|
getRowId: getRowIdFunction
|
|
75
75
|
});
|
|
76
76
|
}
|
|
@@ -91,11 +91,11 @@ export class Table extends FoundationElement {
|
|
|
91
91
|
}
|
|
92
92
|
// Generate columns for TanStack that correspond to all the keys in TData because all operations,
|
|
93
93
|
// such as grouping and sorting, will be performed on the data's records, not the values rendered within a cell.
|
|
94
|
-
|
|
95
|
-
if (
|
|
94
|
+
generateTanStackColumns(data) {
|
|
95
|
+
if (data.length === 0) {
|
|
96
96
|
return;
|
|
97
97
|
}
|
|
98
|
-
const firstItem =
|
|
98
|
+
const firstItem = data[0];
|
|
99
99
|
const keys = Object.keys(firstItem);
|
|
100
100
|
const generatedColumns = keys.map(key => {
|
|
101
101
|
const columnDef = {
|
|
@@ -111,15 +111,15 @@ export class Table extends FoundationElement {
|
|
|
111
111
|
__decorate([
|
|
112
112
|
attr({ attribute: 'id-field-name' })
|
|
113
113
|
], Table.prototype, "idFieldName", void 0);
|
|
114
|
-
__decorate([
|
|
115
|
-
observable
|
|
116
|
-
], Table.prototype, "data", void 0);
|
|
117
114
|
__decorate([
|
|
118
115
|
observable
|
|
119
116
|
], Table.prototype, "tableData", void 0);
|
|
120
117
|
__decorate([
|
|
121
118
|
observable
|
|
122
119
|
], Table.prototype, "columns", void 0);
|
|
120
|
+
__decorate([
|
|
121
|
+
observable
|
|
122
|
+
], Table.prototype, "canRenderRows", void 0);
|
|
123
123
|
const nimbleTable = Table.compose({
|
|
124
124
|
baseName: 'table',
|
|
125
125
|
template,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/table/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC7E,OAAO,EAKH,WAAW,IAAI,mBAAmB,EAClC,eAAe,IAAI,uBAAuB,EAE7C,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAStC;;GAEG;AACH,MAAM,OAAO,KAEX,SAAQ,iBAAiB;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/table/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,7 +23,7 @@ export const template = html `
|
|
|
23
23
|
</div>
|
|
24
24
|
</div>
|
|
25
25
|
<div class="table-viewport" role="rowgroup">
|
|
26
|
-
${when(x => x.columns.length > 0, html `
|
|
26
|
+
${when(x => x.columns.length > 0 && x.canRenderRows, html `
|
|
27
27
|
${repeat(x => x.tableData, html `
|
|
28
28
|
<${DesignSystem.tagFor(TableRow)}
|
|
29
29
|
class="row"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template.js","sourceRoot":"","sources":["../../../src/table/template.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,IAAI,EACJ,MAAM,EACN,OAAO,EACP,IAAI,EACP,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAG1D,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,MAAM,aAAa,GAAG,GAAmB,EAAE;IACvC,MAAM,MAAM,GAAmB,CAC3B,KAAW,EACX,CAAS,EACT,EAAU,EACH,EAAE;QACT,OAAO,KAAK,YAAY,WAAW,CAAC;IACxC,CAAC,CAAC;IACF,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AAEF,kBAAkB;AAClB,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAO;;;;;sBAKb,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAa;2BACnC,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC;8BAC7B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW;4BACpB,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC;qBACvC,CAAC;;;;cAIR,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,IAAI,CAAO;
|
|
1
|
+
{"version":3,"file":"template.js","sourceRoot":"","sources":["../../../src/table/template.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,IAAI,EACJ,MAAM,EACN,OAAO,EACP,IAAI,EACP,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAG1D,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,MAAM,aAAa,GAAG,GAAmB,EAAE;IACvC,MAAM,MAAM,GAAmB,CAC3B,KAAW,EACX,CAAS,EACT,EAAU,EACH,EAAE;QACT,OAAO,KAAK,YAAY,WAAW,CAAC;IACxC,CAAC,CAAC;IACF,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AAEF,kBAAkB;AAClB,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAO;;;;;sBAKb,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAa;2BACnC,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC;8BAC7B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW;4BACpB,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC;qBACvC,CAAC;;;;cAIR,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,IAAI,CAAO;kBAC1D,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,CAAe;uBACvC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC;;qCAEf,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;uCACP,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM;oCAChB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAE,CAAC,CAAC,MAAgB,CAAC,OAAO;;wBAEjD,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC;iBACpC,CAAC;aACL,CAAC;;;gBAGE,OAAO,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,CAAC;;CAExE,CAAC"}
|
|
@@ -7,7 +7,7 @@ export declare type TableFieldName = string;
|
|
|
7
7
|
* TableFieldValue describes the type associated with values within
|
|
8
8
|
* a table's records.
|
|
9
9
|
*/
|
|
10
|
-
export declare type TableFieldValue = string | number | boolean |
|
|
10
|
+
export declare type TableFieldValue = string | number | boolean | null | undefined;
|
|
11
11
|
/**
|
|
12
12
|
* TableRecord describes the data structure that backs a single row in a table.
|
|
13
13
|
* It is made up of fields, which are key/value pairs that have a key of type
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ni/nimble-components",
|
|
3
|
-
"version": "18.0.
|
|
3
|
+
"version": "18.0.2",
|
|
4
4
|
"description": "Styled web components for the NI Nimble Design System",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"build": "npm run generate-icons && npm run build-components && npm run bundle-components && npm run generate-scss && npm run build-storybook",
|