@ni/nimble-components 19.1.0 → 19.1.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.
@@ -1,6 +1,7 @@
1
1
  import { TableColumn } from '../base';
2
2
  import type { TableStringField } from '../../table/types';
3
3
  import type { AnchorAppearance } from '../../anchor/types';
4
+ import type { ColumnInternalsOptions } from '../base/models/column-internals';
4
5
  export declare type TableColumnAnchorCellRecord = TableStringField<'label' | 'href'>;
5
6
  export interface TableColumnAnchorColumnConfig {
6
7
  placeholder: string;
@@ -31,7 +32,7 @@ declare const TableColumnAnchor_base: (abstract new (...args: any[]) => {
31
32
  fractionalWidthChanged(): void;
32
33
  minPixelWidthChanged(): void;
33
34
  readonly columnInternals: import("../base/models/column-internals").ColumnInternals<unknown>;
34
- }) & ((abstract new (options: import("../base/models/column-internals").ColumnInternalsOptions) => TableColumn<TableColumnAnchorColumnConfig>) & {
35
+ }) & ((abstract new () => TableColumn<TableColumnAnchorColumnConfig>) & {
35
36
  compose<T extends import("@microsoft/fast-foundation").FoundationElementDefinition = import("@microsoft/fast-foundation").FoundationElementDefinition, K extends import("@microsoft/fast-element").Constructable<import("@microsoft/fast-foundation").FoundationElement> = import("@microsoft/fast-element").Constructable<import("@microsoft/fast-foundation").FoundationElement>>(this: K, elementDefinition: T): (overrideDefinition?: import("@microsoft/fast-foundation").OverrideFoundationElementDefinition<T> | undefined) => import("@microsoft/fast-foundation").FoundationElementRegistry<T, K>;
36
37
  from<TBase extends {
37
38
  new (): HTMLElement;
@@ -55,7 +56,7 @@ export declare class TableColumnAnchor extends TableColumnAnchor_base {
55
56
  target?: string;
56
57
  type?: string;
57
58
  download?: string;
58
- constructor();
59
+ protected getColumnInternalsOptions(): ColumnInternalsOptions;
59
60
  protected labelFieldNameChanged(): void;
60
61
  protected hrefFieldNameChanged(): void;
61
62
  protected placeholderChanged(): void;
@@ -14,14 +14,17 @@ import { tableColumnTextGroupHeaderTag } from '../text/group-header-view';
14
14
  */
15
15
  export class TableColumnAnchor extends mixinGroupableColumnAPI(mixinFractionalWidthColumnAPI((TableColumn))) {
16
16
  constructor() {
17
- super({
17
+ super(...arguments);
18
+ this.underlineHidden = false;
19
+ }
20
+ getColumnInternalsOptions() {
21
+ return {
18
22
  cellRecordFieldNames: ['label', 'href'],
19
23
  cellViewTag: tableColumnAnchorCellViewTag,
20
24
  groupHeaderViewTag: tableColumnTextGroupHeaderTag,
21
- delegatedEvents: ['click']
22
- });
23
- this.underlineHidden = false;
24
- this.columnInternals.sortOperation = TableColumnSortOperation.localeAwareCaseSensitive;
25
+ delegatedEvents: ['click'],
26
+ sortOperation: TableColumnSortOperation.localeAwareCaseSensitive
27
+ };
25
28
  }
26
29
  labelFieldNameChanged() {
27
30
  this.columnInternals.dataRecordFieldNames = [
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/anchor/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/anchor/index.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,17 @@
1
1
  import { FoundationElement } from '@microsoft/fast-foundation';
2
2
  import { TableColumnSortDirection } from '../../table/types';
3
- import { ColumnInternalsOptions, ColumnInternals } from './models/column-internals';
3
+ import { ColumnInternals, ColumnInternalsOptions } from './models/column-internals';
4
4
  import type { TableColumnValidity } from './types';
5
5
  /**
6
6
  * The base class for table columns
7
7
  */
8
8
  export declare abstract class TableColumn<TColumnConfig = unknown> extends FoundationElement {
9
+ /**
10
+ * @internal
11
+ *
12
+ * Column properties configurable by plugin authors
13
+ */
14
+ readonly columnInternals: ColumnInternals<TColumnConfig>;
9
15
  columnId?: string;
10
16
  actionMenuSlot?: string;
11
17
  actionMenuLabel?: string;
@@ -13,15 +19,9 @@ export declare abstract class TableColumn<TColumnConfig = unknown> extends Found
13
19
  sortIndex?: number | null;
14
20
  sortDirection: TableColumnSortDirection;
15
21
  sortingDisabled: boolean;
16
- /**
17
- * @internal
18
- *
19
- * Column properties configurable by plugin authors
20
- */
21
- readonly columnInternals: ColumnInternals<TColumnConfig>;
22
- constructor(options: ColumnInternalsOptions);
23
22
  checkValidity(): boolean;
24
23
  get validity(): TableColumnValidity;
24
+ protected abstract getColumnInternalsOptions(): ColumnInternalsOptions;
25
25
  protected sortDirectionChanged(): void;
26
26
  protected sortIndexChanged(): void;
27
27
  protected sortingDisabledChanged(): void;
@@ -7,17 +7,17 @@ import { ColumnInternals } from './models/column-internals';
7
7
  * The base class for table columns
8
8
  */
9
9
  export class TableColumn extends FoundationElement {
10
- constructor(options) {
11
- super();
10
+ constructor() {
11
+ super(...arguments);
12
+ /**
13
+ * @internal
14
+ *
15
+ * Column properties configurable by plugin authors
16
+ */
17
+ this.columnInternals = new ColumnInternals(this.getColumnInternalsOptions());
12
18
  this.columnHidden = false;
13
19
  this.sortDirection = TableColumnSortDirection.none;
14
20
  this.sortingDisabled = false;
15
- if (!options) {
16
- throw new Error('ColumnInternalsOptions must be provided to constructor');
17
- }
18
- this.columnInternals = new ColumnInternals(options);
19
- this.columnInternals.currentSortDirection = this.sortDirection;
20
- this.columnInternals.currentSortIndex = this.sortIndex;
21
21
  }
22
22
  checkValidity() {
23
23
  return this.columnInternals.validConfiguration;
@@ -36,16 +36,13 @@ export class TableColumn extends FoundationElement {
36
36
  }
37
37
  }
38
38
  sortingDisabledChanged() {
39
- // Ignore the default value sortingDisabled initialization from undefined to false (which runs before columnInternals is initialized)
40
- if (this.columnInternals) {
41
- if (this.sortingDisabled) {
42
- this.columnInternals.currentSortDirection = TableColumnSortDirection.none;
43
- this.columnInternals.currentSortIndex = undefined;
44
- }
45
- else {
46
- this.columnInternals.currentSortDirection = this.sortDirection;
47
- this.columnInternals.currentSortIndex = this.sortIndex;
48
- }
39
+ if (this.sortingDisabled) {
40
+ this.columnInternals.currentSortDirection = TableColumnSortDirection.none;
41
+ this.columnInternals.currentSortIndex = undefined;
42
+ }
43
+ else {
44
+ this.columnInternals.currentSortDirection = this.sortDirection;
45
+ this.columnInternals.currentSortIndex = this.sortIndex;
49
46
  }
50
47
  }
51
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/base/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAEH,eAAe,EAClB,MAAM,2BAA2B,CAAC;AAGnC;;GAEG;AACH,MAAM,OAAgB,WAEpB,SAAQ,iBAAiB;IA6BvB,YAAmB,OAA+B;QAC9C,KAAK,EAAE,CAAC;QAnBL,iBAAY,GAAG,KAAK,CAAC;QAMrB,kBAAa,GAA6B,wBAAwB,CAAC,IAAI,CAAC;QAGxE,oBAAe,GAAG,KAAK,CAAC;QAW3B,IAAI,CAAC,OAAO,EAAE;YACV,MAAM,IAAI,KAAK,CACX,wDAAwD,CAC3D,CAAC;SACL;QACD,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,CAAC,eAAe,CAAC,oBAAoB,GAAG,IAAI,CAAC,aAAa,CAAC;QAC/D,IAAI,CAAC,eAAe,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC;IAC3D,CAAC;IAEM,aAAa;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC;IACnD,CAAC;IAED,IAAW,QAAQ;QACf,OAAO,EAAE,CAAC;IACd,CAAC;IAES,oBAAoB;QAC1B,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACvB,IAAI,CAAC,eAAe,CAAC,oBAAoB,GAAG,IAAI,CAAC,aAAa,CAAC;SAClE;IACL,CAAC;IAES,gBAAgB;QACtB,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACvB,IAAI,CAAC,eAAe,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC;SAC1D;IACL,CAAC;IAES,sBAAsB;QAC5B,qIAAqI;QACrI,IAAI,IAAI,CAAC,eAAe,EAAE;YACtB,IAAI,IAAI,CAAC,eAAe,EAAE;gBACtB,IAAI,CAAC,eAAe,CAAC,oBAAoB,GAAG,wBAAwB,CAAC,IAAI,CAAC;gBAC1E,IAAI,CAAC,eAAe,CAAC,gBAAgB,GAAG,SAAS,CAAC;aACrD;iBAAM;gBACH,IAAI,CAAC,eAAe,CAAC,oBAAoB,GAAG,IAAI,CAAC,aAAa,CAAC;gBAC/D,IAAI,CAAC,eAAe,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC;aAC1D;SACJ;IACL,CAAC;CACJ;AAvEG;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;6CACR;AAGzB;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,kBAAkB,EAAE,CAAC;mDACT;AAG/B;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC;oDACT;AAGhC;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;iDAC1B;AAG5B;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,uBAAuB,EAAE,CAAC;8CACrC;AAGjC;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;kDACyC;AAG/E;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;oDAC1B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/base/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EACH,eAAe,EAElB,MAAM,2BAA2B,CAAC;AAGnC;;GAEG;AACH,MAAM,OAAgB,WAEpB,SAAQ,iBAAiB;IAF3B;;QAGI;;;;WAIG;QACa,oBAAe,GAAmC,IAAI,eAAe,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC,CAAC;QAYjH,iBAAY,GAAG,KAAK,CAAC;QAMrB,kBAAa,GAA6B,wBAAwB,CAAC,IAAI,CAAC;QAGxE,oBAAe,GAAG,KAAK,CAAC;IAiCnC,CAAC;IA/BU,aAAa;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC;IACnD,CAAC;IAED,IAAW,QAAQ;QACf,OAAO,EAAE,CAAC;IACd,CAAC;IAIS,oBAAoB;QAC1B,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACvB,IAAI,CAAC,eAAe,CAAC,oBAAoB,GAAG,IAAI,CAAC,aAAa,CAAC;SAClE;IACL,CAAC;IAES,gBAAgB;QACtB,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACvB,IAAI,CAAC,eAAe,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC;SAC1D;IACL,CAAC;IAES,sBAAsB;QAC5B,IAAI,IAAI,CAAC,eAAe,EAAE;YACtB,IAAI,CAAC,eAAe,CAAC,oBAAoB,GAAG,wBAAwB,CAAC,IAAI,CAAC;YAC1E,IAAI,CAAC,eAAe,CAAC,gBAAgB,GAAG,SAAS,CAAC;SACrD;aAAM;YACH,IAAI,CAAC,eAAe,CAAC,oBAAoB,GAAG,IAAI,CAAC,aAAa,CAAC;YAC/D,IAAI,CAAC,eAAe,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC;SAC1D;IACL,CAAC;CACJ;AAnDG;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;6CACR;AAGzB;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,kBAAkB,EAAE,CAAC;mDACT;AAG/B;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC;oDACT;AAGhC;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;iDAC1B;AAG5B;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,uBAAuB,EAAE,CAAC;8CACrC;AAGjC;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;kDACyC;AAG/E;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;oDAC1B"}
@@ -1,5 +1,5 @@
1
1
  import { ViewTemplate } from '@microsoft/fast-element';
2
- import type { TableColumnSortDirection, TableFieldName } from '../../../table/types';
2
+ import { TableColumnSortDirection, TableFieldName } from '../../../table/types';
3
3
  import type { TableCell } from '../../../table/components/cell';
4
4
  import { TableColumnSortOperation } from '../types';
5
5
  import type { TableGroupRow } from '../../../table/components/group-row';
@@ -23,6 +23,10 @@ export interface ColumnInternalsOptions {
23
23
  * The names of events that should be delegated from the cell view to the column.
24
24
  */
25
25
  readonly delegatedEvents: readonly string[];
26
+ /**
27
+ * The sort operation to use for the column (defaults to TableColumnSortOperation.basic)
28
+ */
29
+ readonly sortOperation?: TableColumnSortOperation;
26
30
  }
27
31
  /**
28
32
  * Internal column state configured by plugin authors
@@ -1,6 +1,7 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { uniqueId } from '@microsoft/fast-web-utilities';
3
3
  import { observable } from '@microsoft/fast-element';
4
+ import { TableColumnSortDirection } from '../../../table/types';
4
5
  import { TableColumnSortOperation, defaultFractionalWidth, defaultMinPixelWidth } from '../types';
5
6
  import { createGroupHeaderViewTemplate } from '../group-header-view/template';
6
7
  import { createCellViewTemplate } from '../cell-view/template';
@@ -45,10 +46,16 @@ export class ColumnInternals {
45
46
  * the resolved value of the fractionalWidth after updates programmatic or interactive updates.
46
47
  */
47
48
  this.currentFractionalWidth = defaultFractionalWidth;
49
+ /**
50
+ * @internal Do not write to this value directly. It is used by the Table in order to store
51
+ * the resolved value of the sortDirection after programmatic or interactive updates.
52
+ */
53
+ this.currentSortDirection = TableColumnSortDirection.none;
48
54
  this.cellRecordFieldNames = options.cellRecordFieldNames;
49
55
  this.cellViewTemplate = createCellViewTemplate(options.cellViewTag);
50
56
  this.groupHeaderViewTemplate = createGroupHeaderViewTemplate(options.groupHeaderViewTag);
51
57
  this.delegatedEvents = options.delegatedEvents;
58
+ this.sortOperation = options.sortOperation ?? TableColumnSortOperation.basic;
52
59
  }
53
60
  fractionalWidthChanged() {
54
61
  this.currentFractionalWidth = this.fractionalWidth;
@@ -1 +1 @@
1
- {"version":3,"file":"column-internals.js","sourceRoot":"","sources":["../../../../../src/table-column/base/models/column-internals.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACzD,OAAO,EAAgB,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAMnE,OAAO,EACH,wBAAwB,EACxB,sBAAsB,EACtB,oBAAoB,EACvB,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AA2B/D;;;GAGG;AACH,MAAM,OAAO,eAAe;IAsHxB,YAAmB,OAA+B;QAhHlD;;WAEG;QACa,aAAQ,GAAG,QAAQ,CAAC,mBAAmB,CAAC,CAAC;QAkBzD;;WAEG;QAEI,uBAAkB,GAAG,IAAI,CAAC;QAQjC;;WAEG;QAEI,kBAAa,GAA6B,wBAAwB,CAAC,KAAK,CAAC;QAEhF;;;WAGG;QAEI,yBAAoB,GAA4C,EAAE,CAAC;QAO1E;;WAEG;QAEI,qBAAgB,GAAG,KAAK,CAAC;QAgBhC;;;WAGG;QAEI,oBAAe,GAAG,sBAAsB,CAAC;QAEhD;;WAEG;QAEI,kBAAa,GAAG,oBAAoB,CAAC;QAE5C;;;WAGG;QAEI,2BAAsB,GAAG,sBAAsB,CAAC;QAwBnD,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC;QACzD,IAAI,CAAC,gBAAgB,GAAG,sBAAsB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACpE,IAAI,CAAC,uBAAuB,GAAG,6BAA6B,CACxD,OAAO,CAAC,kBAAkB,CAC7B,CAAC;QACF,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IACnD,CAAC;IAES,sBAAsB;QAC5B,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,eAAe,CAAC;IACvD,CAAC;IAES,iBAAiB;QACvB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC;IAC7C,CAAC;CACJ;AA7GG;IADC,UAAU;qDACyB;AAMpC;IADC,UAAU;2DACsB;AAMjC;IADC,UAAU;mEACwC;AAMnD;IADC,UAAU;sDACqE;AAOhF;IADC,UAAU;6DAC+D;AAW1E;IADC,UAAU;yDACqB;AAQhC;IADC,UAAU;mDACgB;AAM3B;IADC,UAAU;mDACgB;AAO3B;IADC,UAAU;wDACqC;AAMhD;IADC,UAAU;sDACiC;AAO5C;IADC,UAAU;+DAC4C;AAOvD;IADC,UAAU;0DACuB;AAOlC;IADC,UAAU;yDAC6B;AAOxC;IADC,UAAU;6DAC2C"}
1
+ {"version":3,"file":"column-internals.js","sourceRoot":"","sources":["../../../../../src/table-column/base/models/column-internals.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACzD,OAAO,EAAgB,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAkB,MAAM,sBAAsB,CAAC;AAEhF,OAAO,EACH,wBAAwB,EACxB,sBAAsB,EACtB,oBAAoB,EACvB,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAgC/D;;;GAGG;AACH,MAAM,OAAO,eAAe;IAsHxB,YAAmB,OAA+B;QAhHlD;;WAEG;QACa,aAAQ,GAAG,QAAQ,CAAC,mBAAmB,CAAC,CAAC;QAkBzD;;WAEG;QAEI,uBAAkB,GAAG,IAAI,CAAC;QAQjC;;WAEG;QAEI,kBAAa,GAA6B,wBAAwB,CAAC,KAAK,CAAC;QAEhF;;;WAGG;QAEI,yBAAoB,GAA4C,EAAE,CAAC;QAO1E;;WAEG;QAEI,qBAAgB,GAAG,KAAK,CAAC;QAgBhC;;;WAGG;QAEI,oBAAe,GAAG,sBAAsB,CAAC;QAEhD;;WAEG;QAEI,kBAAa,GAAG,oBAAoB,CAAC;QAE5C;;;WAGG;QAEI,2BAAsB,GAAG,sBAAsB,CAAC;QAgBvD;;;WAGG;QAEI,yBAAoB,GAA6B,wBAAwB,CAAC,IAAI,CAAC;QAGlF,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC;QACzD,IAAI,CAAC,gBAAgB,GAAG,sBAAsB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACpE,IAAI,CAAC,uBAAuB,GAAG,6BAA6B,CACxD,OAAO,CAAC,kBAAkB,CAC7B,CAAC;QACF,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;QAC/C,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,wBAAwB,CAAC,KAAK,CAAC;IACjF,CAAC;IAES,sBAAsB;QAC5B,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,eAAe,CAAC;IACvD,CAAC;IAES,iBAAiB;QACvB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC;IAC7C,CAAC;CACJ;AA9GG;IADC,UAAU;qDACyB;AAMpC;IADC,UAAU;2DACsB;AAMjC;IADC,UAAU;mEACwC;AAMnD;IADC,UAAU;sDACqE;AAOhF;IADC,UAAU;6DAC+D;AAW1E;IADC,UAAU;yDACqB;AAQhC;IADC,UAAU;mDACgB;AAM3B;IADC,UAAU;mDACgB;AAO3B;IADC,UAAU;wDACqC;AAMhD;IADC,UAAU;sDACiC;AAO5C;IADC,UAAU;+DAC4C;AAOvD;IADC,UAAU;0DACuB;AAOlC;IADC,UAAU;yDAC6B;AAOxC;IADC,UAAU;6DAC2E"}
@@ -1,6 +1,7 @@
1
1
  import type { TableStringField } from '../../table/types';
2
2
  import { TableColumnTextBase } from '../text-base';
3
3
  import { TableColumnWithPlaceholderColumnConfig } from '../base/types';
4
+ import type { ColumnInternalsOptions } from '../base/models/column-internals';
4
5
  export declare type TableColumnTextCellRecord = TableStringField<'value'>;
5
6
  export interface TableColumnTextColumnConfig extends TableColumnWithPlaceholderColumnConfig {
6
7
  }
@@ -13,6 +14,6 @@ declare global {
13
14
  * The table column for displaying string fields as text.
14
15
  */
15
16
  export declare class TableColumnText extends TableColumnTextBase {
16
- constructor();
17
+ protected getColumnInternalsOptions(): ColumnInternalsOptions;
17
18
  }
18
19
  export declare const tableColumnTextTag: string;
@@ -9,14 +9,14 @@ import { tableColumnTextCellViewTag } from './cell-view';
9
9
  * The table column for displaying string fields as text.
10
10
  */
11
11
  export class TableColumnText extends TableColumnTextBase {
12
- constructor() {
13
- super({
12
+ getColumnInternalsOptions() {
13
+ return {
14
14
  cellRecordFieldNames: ['value'],
15
15
  cellViewTag: tableColumnTextCellViewTag,
16
16
  groupHeaderViewTag: tableColumnTextGroupHeaderTag,
17
- delegatedEvents: []
18
- });
19
- this.columnInternals.sortOperation = TableColumnSortOperation.localeAwareCaseSensitive;
17
+ delegatedEvents: [],
18
+ sortOperation: TableColumnSortOperation.localeAwareCaseSensitive
19
+ };
20
20
  }
21
21
  }
22
22
  const nimbleTableColumnText = TableColumnText.compose({
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/text/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAEH,wBAAwB,EAC3B,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AACpE,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAazD;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,mBAAmB;IACpD;QACI,KAAK,CAAC;YACF,oBAAoB,EAAE,CAAC,OAAO,CAAC;YAC/B,WAAW,EAAE,0BAA0B;YACvC,kBAAkB,EAAE,6BAA6B;YACjD,eAAe,EAAE,EAAE;SACtB,CAAC,CAAC;QACH,IAAI,CAAC,eAAe,CAAC,aAAa,GAAG,wBAAwB,CAAC,wBAAwB,CAAC;IAC3F,CAAC;CACJ;AAED,MAAM,qBAAqB,GAAG,eAAe,CAAC,OAAO,CAAC;IAClD,QAAQ,EAAE,mBAAmB;IAC7B,QAAQ;IACR,MAAM;CACT,CAAC,CAAC;AAEH,YAAY,CAAC,WAAW,EAAE;KACrB,UAAU,CAAC,QAAQ,CAAC;KACpB,QAAQ,CAAC,qBAAqB,EAAE,CAAC,CAAC;AACvC,MAAM,CAAC,MAAM,kBAAkB,GAAG,YAAY,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/text/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAEH,wBAAwB,EAC3B,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AACpE,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAczD;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,mBAAmB;IACjC,yBAAyB;QACxC,OAAO;YACH,oBAAoB,EAAE,CAAC,OAAO,CAAC;YAC/B,WAAW,EAAE,0BAA0B;YACvC,kBAAkB,EAAE,6BAA6B;YACjD,eAAe,EAAE,EAAE;YACnB,aAAa,EAAE,wBAAwB,CAAC,wBAAwB;SACnE,CAAC;IACN,CAAC;CACJ;AAED,MAAM,qBAAqB,GAAG,eAAe,CAAC,OAAO,CAAC;IAClD,QAAQ,EAAE,mBAAmB;IAC7B,QAAQ;IACR,MAAM;CACT,CAAC,CAAC;AAEH,YAAY,CAAC,WAAW,EAAE;KACrB,UAAU,CAAC,QAAQ,CAAC;KACpB,QAAQ,CAAC,qBAAqB,EAAE,CAAC,CAAC;AACvC,MAAM,CAAC,MAAM,kBAAkB,GAAG,YAAY,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC"}
@@ -12,7 +12,7 @@ declare const TableColumnTextBase_base: (abstract new (...args: any[]) => {
12
12
  fractionalWidthChanged(): void;
13
13
  minPixelWidthChanged(): void;
14
14
  readonly columnInternals: import("../base/models/column-internals").ColumnInternals<unknown>;
15
- }) & ((abstract new (options: import("../base/models/column-internals").ColumnInternalsOptions) => TableColumn<TableColumnWithPlaceholderColumnConfig>) & {
15
+ }) & ((abstract new () => TableColumn<TableColumnWithPlaceholderColumnConfig>) & {
16
16
  compose<T extends import("@microsoft/fast-foundation").FoundationElementDefinition = import("@microsoft/fast-foundation").FoundationElementDefinition, K extends import("@microsoft/fast-element").Constructable<import("@microsoft/fast-foundation").FoundationElement> = import("@microsoft/fast-element").Constructable<import("@microsoft/fast-foundation").FoundationElement>>(this: K, elementDefinition: T): (overrideDefinition?: import("@microsoft/fast-foundation").OverrideFoundationElementDefinition<T> | undefined) => import("@microsoft/fast-foundation").FoundationElementRegistry<T, K>;
17
17
  from<TBase extends {
18
18
  new (): HTMLElement;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ni/nimble-components",
3
- "version": "19.1.0",
3
+ "version": "19.1.1",
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",