@ni/nimble-components 20.1.1 → 20.1.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.
Files changed (96) hide show
  1. package/dist/all-components-bundle.js +551 -175
  2. package/dist/all-components-bundle.js.map +1 -1
  3. package/dist/all-components-bundle.min.js +1532 -1493
  4. package/dist/all-components-bundle.min.js.map +1 -1
  5. package/dist/esm/all-components.d.ts +2 -0
  6. package/dist/esm/all-components.js +2 -0
  7. package/dist/esm/all-components.js.map +1 -1
  8. package/dist/esm/mapping/base/index.d.ts +18 -0
  9. package/dist/esm/mapping/base/index.js +15 -0
  10. package/dist/esm/mapping/base/index.js.map +1 -0
  11. package/dist/esm/mapping/base/template.d.ts +1 -0
  12. package/dist/esm/mapping/base/template.js +3 -0
  13. package/dist/esm/mapping/base/template.js.map +1 -0
  14. package/dist/esm/mapping/base/types.d.ts +1 -0
  15. package/dist/esm/mapping/base/types.js +2 -0
  16. package/dist/esm/mapping/base/types.js.map +1 -0
  17. package/dist/esm/mapping/text/index.d.ts +14 -0
  18. package/dist/esm/mapping/text/index.js +17 -0
  19. package/dist/esm/mapping/text/index.js.map +1 -0
  20. package/dist/esm/src/all-components.d.ts +2 -0
  21. package/dist/esm/src/mapping/base/index.d.ts +18 -0
  22. package/dist/esm/src/mapping/base/template.d.ts +1 -0
  23. package/dist/esm/src/mapping/base/types.d.ts +1 -0
  24. package/dist/esm/src/mapping/text/index.d.ts +14 -0
  25. package/dist/esm/src/table/types.d.ts +8 -0
  26. package/dist/esm/src/table-column/base/index.d.ts +1 -0
  27. package/dist/esm/src/table-column/date-text/group-header-view/index.d.ts +1 -1
  28. package/dist/esm/src/table-column/enum-base/index.d.ts +50 -0
  29. package/dist/esm/src/table-column/enum-base/models/mapping-config.d.ts +7 -0
  30. package/dist/esm/src/table-column/enum-base/models/mapping-key-resolver.d.ts +8 -0
  31. package/dist/esm/src/table-column/enum-base/models/mapping-text-config.d.ts +6 -0
  32. package/dist/esm/src/table-column/enum-base/models/table-column-enum-base-validator.d.ts +18 -0
  33. package/dist/esm/src/table-column/enum-base/styles.d.ts +1 -0
  34. package/dist/esm/src/table-column/enum-base/template.d.ts +3 -0
  35. package/dist/esm/src/table-column/enum-base/types.d.ts +10 -0
  36. package/dist/esm/src/table-column/enum-text/cell-view/index.d.ts +16 -0
  37. package/dist/esm/src/table-column/enum-text/group-header-view/index.d.ts +17 -0
  38. package/dist/esm/src/table-column/enum-text/index.d.ts +43 -0
  39. package/dist/esm/src/table-column/enum-text/models/table-column-enum-text-validator.d.ts +11 -0
  40. package/dist/esm/src/table-column/text/group-header-view/index.d.ts +1 -1
  41. package/dist/esm/table/types.d.ts +8 -0
  42. package/dist/esm/table/types.js.map +1 -1
  43. package/dist/esm/table-column/anchor/index.js +2 -2
  44. package/dist/esm/table-column/anchor/index.js.map +1 -1
  45. package/dist/esm/table-column/base/index.d.ts +1 -0
  46. package/dist/esm/table-column/base/index.js +5 -0
  47. package/dist/esm/table-column/base/index.js.map +1 -1
  48. package/dist/esm/table-column/base/template.js +9 -11
  49. package/dist/esm/table-column/base/template.js.map +1 -1
  50. package/dist/esm/table-column/date-text/group-header-view/index.d.ts +1 -1
  51. package/dist/esm/table-column/date-text/group-header-view/index.js +2 -2
  52. package/dist/esm/table-column/date-text/group-header-view/index.js.map +1 -1
  53. package/dist/esm/table-column/date-text/index.js +2 -2
  54. package/dist/esm/table-column/date-text/index.js.map +1 -1
  55. package/dist/esm/table-column/enum-base/index.d.ts +50 -0
  56. package/dist/esm/table-column/enum-base/index.js +90 -0
  57. package/dist/esm/table-column/enum-base/index.js.map +1 -0
  58. package/dist/esm/table-column/enum-base/models/mapping-config.d.ts +7 -0
  59. package/dist/esm/table-column/enum-base/models/mapping-config.js +9 -0
  60. package/dist/esm/table-column/enum-base/models/mapping-config.js.map +1 -0
  61. package/dist/esm/table-column/enum-base/models/mapping-key-resolver.d.ts +8 -0
  62. package/dist/esm/table-column/enum-base/models/mapping-key-resolver.js +23 -0
  63. package/dist/esm/table-column/enum-base/models/mapping-key-resolver.js.map +1 -0
  64. package/dist/esm/table-column/enum-base/models/mapping-text-config.d.ts +6 -0
  65. package/dist/esm/table-column/enum-base/models/mapping-text-config.js +7 -0
  66. package/dist/esm/table-column/enum-base/models/mapping-text-config.js.map +1 -0
  67. package/dist/esm/table-column/enum-base/models/table-column-enum-base-validator.d.ts +18 -0
  68. package/dist/esm/table-column/enum-base/models/table-column-enum-base-validator.js +53 -0
  69. package/dist/esm/table-column/enum-base/models/table-column-enum-base-validator.js.map +1 -0
  70. package/dist/esm/table-column/enum-base/styles.d.ts +1 -0
  71. package/dist/esm/table-column/enum-base/styles.js +10 -0
  72. package/dist/esm/table-column/enum-base/styles.js.map +1 -0
  73. package/dist/esm/table-column/enum-base/template.d.ts +3 -0
  74. package/dist/esm/table-column/enum-base/template.js +4 -0
  75. package/dist/esm/table-column/enum-base/template.js.map +1 -0
  76. package/dist/esm/table-column/enum-base/types.d.ts +10 -0
  77. package/dist/esm/table-column/enum-base/types.js +10 -0
  78. package/dist/esm/table-column/enum-base/types.js.map +1 -0
  79. package/dist/esm/table-column/enum-text/cell-view/index.d.ts +16 -0
  80. package/dist/esm/table-column/enum-text/cell-view/index.js +33 -0
  81. package/dist/esm/table-column/enum-text/cell-view/index.js.map +1 -0
  82. package/dist/esm/table-column/enum-text/group-header-view/index.d.ts +17 -0
  83. package/dist/esm/table-column/enum-text/group-header-view/index.js +35 -0
  84. package/dist/esm/table-column/enum-text/group-header-view/index.js.map +1 -0
  85. package/dist/esm/table-column/enum-text/index.d.ts +43 -0
  86. package/dist/esm/table-column/enum-text/index.js +57 -0
  87. package/dist/esm/table-column/enum-text/index.js.map +1 -0
  88. package/dist/esm/table-column/enum-text/models/table-column-enum-text-validator.d.ts +11 -0
  89. package/dist/esm/table-column/enum-text/models/table-column-enum-text-validator.js +11 -0
  90. package/dist/esm/table-column/enum-text/models/table-column-enum-text-validator.js.map +1 -0
  91. package/dist/esm/table-column/text/group-header-view/index.d.ts +1 -1
  92. package/dist/esm/table-column/text/group-header-view/index.js +2 -2
  93. package/dist/esm/table-column/text/group-header-view/index.js.map +1 -1
  94. package/dist/esm/table-column/text/index.js +2 -2
  95. package/dist/esm/table-column/text/index.js.map +1 -1
  96. package/package.json +1 -1
@@ -23,6 +23,7 @@ import './icons/all-icons';
23
23
  import './label-provider/core';
24
24
  import './label-provider/table';
25
25
  import './list-option';
26
+ import './mapping/text';
26
27
  import './menu';
27
28
  import './menu-button';
28
29
  import './menu-item';
@@ -38,6 +39,7 @@ import './tab';
38
39
  import './tab-panel';
39
40
  import './table';
40
41
  import './table-column/anchor';
42
+ import './table-column/enum-text';
41
43
  import './table-column/text';
42
44
  import './tabs';
43
45
  import './tabs-toolbar';
@@ -23,6 +23,7 @@ import './icons/all-icons';
23
23
  import './label-provider/core';
24
24
  import './label-provider/table';
25
25
  import './list-option';
26
+ import './mapping/text';
26
27
  import './menu';
27
28
  import './menu-button';
28
29
  import './menu-item';
@@ -38,6 +39,7 @@ import './tab';
38
39
  import './tab-panel';
39
40
  import './table';
40
41
  import './table-column/anchor';
42
+ import './table-column/enum-text';
41
43
  import './table-column/text';
42
44
  import './tabs';
43
45
  import './tabs-toolbar';
@@ -1 +1 @@
1
- {"version":3,"file":"all-components.js","sourceRoot":"","sources":["../../src/all-components.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,UAAU,CAAC;AAClB,OAAO,iBAAiB,CAAC;AACzB,OAAO,oBAAoB,CAAC;AAC5B,OAAO,cAAc,CAAC;AACtB,OAAO,eAAe,CAAC;AACvB,OAAO,oBAAoB,CAAC;AAC5B,OAAO,mBAAmB,CAAC;AAC3B,OAAO,UAAU,CAAC;AAClB,OAAO,cAAc,CAAC;AACtB,OAAO,mBAAmB,CAAC;AAC3B,OAAO,UAAU,CAAC;AAClB,OAAO,eAAe,CAAC;AACvB,OAAO,YAAY,CAAC;AACpB,OAAO,YAAY,CAAC;AACpB,OAAO,UAAU,CAAC;AAClB,OAAO,UAAU,CAAC;AAClB,OAAO,mBAAmB,CAAC;AAC3B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,wBAAwB,CAAC;AAChC,OAAO,eAAe,CAAC;AACvB,OAAO,QAAQ,CAAC;AAChB,OAAO,eAAe,CAAC;AACvB,OAAO,aAAa,CAAC;AACrB,OAAO,gBAAgB,CAAC;AACxB,OAAO,SAAS,CAAC;AACjB,OAAO,eAAe,CAAC;AACvB,OAAO,oBAAoB,CAAC;AAC5B,OAAO,oBAAoB,CAAC;AAC5B,OAAO,UAAU,CAAC;AAClB,OAAO,WAAW,CAAC;AACnB,OAAO,UAAU,CAAC;AAClB,OAAO,OAAO,CAAC;AACf,OAAO,aAAa,CAAC;AACrB,OAAO,SAAS,CAAC;AACjB,OAAO,uBAAuB,CAAC;AAC/B,OAAO,qBAAqB,CAAC;AAC7B,OAAO,QAAQ,CAAC;AAChB,OAAO,gBAAgB,CAAC;AACxB,OAAO,aAAa,CAAC;AACrB,OAAO,cAAc,CAAC;AACtB,OAAO,kBAAkB,CAAC;AAC1B,OAAO,iBAAiB,CAAC;AACzB,OAAO,WAAW,CAAC;AACnB,OAAO,WAAW,CAAC;AACnB,OAAO,aAAa,CAAC;AACrB,OAAO,aAAa,CAAC;AACrB,OAAO,aAAa,CAAC"}
1
+ {"version":3,"file":"all-components.js","sourceRoot":"","sources":["../../src/all-components.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,UAAU,CAAC;AAClB,OAAO,iBAAiB,CAAC;AACzB,OAAO,oBAAoB,CAAC;AAC5B,OAAO,cAAc,CAAC;AACtB,OAAO,eAAe,CAAC;AACvB,OAAO,oBAAoB,CAAC;AAC5B,OAAO,mBAAmB,CAAC;AAC3B,OAAO,UAAU,CAAC;AAClB,OAAO,cAAc,CAAC;AACtB,OAAO,mBAAmB,CAAC;AAC3B,OAAO,UAAU,CAAC;AAClB,OAAO,eAAe,CAAC;AACvB,OAAO,YAAY,CAAC;AACpB,OAAO,YAAY,CAAC;AACpB,OAAO,UAAU,CAAC;AAClB,OAAO,UAAU,CAAC;AAClB,OAAO,mBAAmB,CAAC;AAC3B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,wBAAwB,CAAC;AAChC,OAAO,eAAe,CAAC;AACvB,OAAO,gBAAgB,CAAC;AACxB,OAAO,QAAQ,CAAC;AAChB,OAAO,eAAe,CAAC;AACvB,OAAO,aAAa,CAAC;AACrB,OAAO,gBAAgB,CAAC;AACxB,OAAO,SAAS,CAAC;AACjB,OAAO,eAAe,CAAC;AACvB,OAAO,oBAAoB,CAAC;AAC5B,OAAO,oBAAoB,CAAC;AAC5B,OAAO,UAAU,CAAC;AAClB,OAAO,WAAW,CAAC;AACnB,OAAO,UAAU,CAAC;AAClB,OAAO,OAAO,CAAC;AACf,OAAO,aAAa,CAAC;AACrB,OAAO,SAAS,CAAC;AACjB,OAAO,uBAAuB,CAAC;AAC/B,OAAO,0BAA0B,CAAC;AAClC,OAAO,qBAAqB,CAAC;AAC7B,OAAO,QAAQ,CAAC;AAChB,OAAO,gBAAgB,CAAC;AACxB,OAAO,aAAa,CAAC;AACrB,OAAO,cAAc,CAAC;AACtB,OAAO,kBAAkB,CAAC;AAC1B,OAAO,iBAAiB,CAAC;AACzB,OAAO,WAAW,CAAC;AACnB,OAAO,WAAW,CAAC;AACnB,OAAO,aAAa,CAAC;AACrB,OAAO,aAAa,CAAC;AACrB,OAAO,aAAa,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { FoundationElement } from '@microsoft/fast-foundation';
2
+ import type { MappingKey } from './types';
3
+ /**
4
+ * Base class for mapping configuration elements
5
+ */
6
+ export declare abstract class Mapping extends FoundationElement {
7
+ /**
8
+ * The data value that is mapped to another representation
9
+ */
10
+ key?: MappingKey;
11
+ /**
12
+ * In the case of a mapping that maps to text, this is that mapped text.
13
+ * For mappings to non-textual representations, this is a string that can
14
+ * be displayed in contexts such as group headers or tooltips and used as
15
+ * an accessible label.
16
+ */
17
+ text?: string;
18
+ }
@@ -0,0 +1,15 @@
1
+ import { __decorate } from "tslib";
2
+ import { attr } from '@microsoft/fast-element';
3
+ import { FoundationElement } from '@microsoft/fast-foundation';
4
+ /**
5
+ * Base class for mapping configuration elements
6
+ */
7
+ export class Mapping extends FoundationElement {
8
+ }
9
+ __decorate([
10
+ attr()
11
+ ], Mapping.prototype, "key", void 0);
12
+ __decorate([
13
+ attr()
14
+ ], Mapping.prototype, "text", void 0);
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mapping/base/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAG/D;;GAEG;AACH,MAAM,OAAgB,OAAQ,SAAQ,iBAAiB;CAetD;AAVG;IADC,IAAI,EAAE;oCACiB;AASxB;IADC,IAAI,EAAE;qCACc"}
@@ -0,0 +1 @@
1
+ export declare const template: import("@microsoft/fast-element").ViewTemplate<any, any>;
@@ -0,0 +1,3 @@
1
+ import { html } from '@microsoft/fast-element';
2
+ export const template = html `<template slot="mapping"></template>`;
3
+ //# sourceMappingURL=template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"template.js","sourceRoot":"","sources":["../../../../src/mapping/base/template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAE/C,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAA,sCAAsC,CAAC"}
@@ -0,0 +1 @@
1
+ export declare type MappingKey = string | number | boolean;
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/mapping/base/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,14 @@
1
+ import { Mapping } from '../base';
2
+ declare global {
3
+ interface HTMLElementTagNameMap {
4
+ 'nimble-mapping-text': MappingText;
5
+ }
6
+ }
7
+ /**
8
+ * Defines a mapping from one data value ('key' property) to display text ('text' property).
9
+ * One or more may be added as children of a nimble-table-column-enum-text element to define
10
+ * how a specific data value should be displayed as text in that column's cells.
11
+ */
12
+ export declare class MappingText extends Mapping {
13
+ }
14
+ export declare const mappingTextTag: string;
@@ -0,0 +1,17 @@
1
+ import { DesignSystem } from '@microsoft/fast-foundation';
2
+ import { Mapping } from '../base';
3
+ import { template } from '../base/template';
4
+ /**
5
+ * Defines a mapping from one data value ('key' property) to display text ('text' property).
6
+ * One or more may be added as children of a nimble-table-column-enum-text element to define
7
+ * how a specific data value should be displayed as text in that column's cells.
8
+ */
9
+ export class MappingText extends Mapping {
10
+ }
11
+ const textMapping = MappingText.compose({
12
+ baseName: 'mapping-text',
13
+ template
14
+ });
15
+ DesignSystem.getOrCreate().withPrefix('nimble').register(textMapping());
16
+ export const mappingTextTag = DesignSystem.tagFor(MappingText);
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mapping/text/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAQ5C;;;;GAIG;AACH,MAAM,OAAO,WAAY,SAAQ,OAAO;CAAG;AAE3C,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC;IACpC,QAAQ,EAAE,cAAc;IACxB,QAAQ;CACX,CAAC,CAAC;AACH,YAAY,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;AACxE,MAAM,CAAC,MAAM,cAAc,GAAG,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC"}
@@ -23,6 +23,7 @@ import './icons/all-icons';
23
23
  import './label-provider/core';
24
24
  import './label-provider/table';
25
25
  import './list-option';
26
+ import './mapping/text';
26
27
  import './menu';
27
28
  import './menu-button';
28
29
  import './menu-item';
@@ -38,6 +39,7 @@ import './tab';
38
39
  import './tab-panel';
39
40
  import './table';
40
41
  import './table-column/anchor';
42
+ import './table-column/enum-text';
41
43
  import './table-column/text';
42
44
  import './tabs';
43
45
  import './tabs-toolbar';
@@ -0,0 +1,18 @@
1
+ import { FoundationElement } from '@microsoft/fast-foundation';
2
+ import type { MappingKey } from './types';
3
+ /**
4
+ * Base class for mapping configuration elements
5
+ */
6
+ export declare abstract class Mapping extends FoundationElement {
7
+ /**
8
+ * The data value that is mapped to another representation
9
+ */
10
+ key?: MappingKey;
11
+ /**
12
+ * In the case of a mapping that maps to text, this is that mapped text.
13
+ * For mappings to non-textual representations, this is a string that can
14
+ * be displayed in contexts such as group headers or tooltips and used as
15
+ * an accessible label.
16
+ */
17
+ text?: string;
18
+ }
@@ -0,0 +1 @@
1
+ export declare const template: import("@microsoft/fast-element").ViewTemplate<any, any>;
@@ -0,0 +1 @@
1
+ export declare type MappingKey = string | number | boolean;
@@ -0,0 +1,14 @@
1
+ import { Mapping } from '../base';
2
+ declare global {
3
+ interface HTMLElementTagNameMap {
4
+ 'nimble-mapping-text': MappingText;
5
+ }
6
+ }
7
+ /**
8
+ * Defines a mapping from one data value ('key' property) to display text ('text' property).
9
+ * One or more may be added as children of a nimble-table-column-enum-text element to define
10
+ * how a specific data value should be displayed as text in that column's cells.
11
+ */
12
+ export declare class MappingText extends Mapping {
13
+ }
14
+ export declare const mappingTextTag: string;
@@ -14,6 +14,11 @@ export declare type TableFieldValue = string | number | boolean | null | undefin
14
14
  * a table's string records.
15
15
  */
16
16
  export declare type TableStringFieldValue = string | null | undefined;
17
+ /**
18
+ * TableBooleanFieldValue describes the type associated with values within
19
+ * a table's boolean records.
20
+ */
21
+ export declare type TableBooleanFieldValue = boolean | null | undefined;
17
22
  /**
18
23
  * TableNumberFieldValue describes the type associated with values within
19
24
  * a table's number records.
@@ -30,6 +35,9 @@ export interface TableRecord {
30
35
  export declare type TableStringField<FieldName extends TableFieldName> = {
31
36
  [name in FieldName]: TableStringFieldValue;
32
37
  };
38
+ export declare type TableBooleanField<FieldName extends TableFieldName> = {
39
+ [name in FieldName]: TableBooleanFieldValue;
40
+ };
33
41
  export declare type TableNumberField<FieldName extends TableFieldName> = {
34
42
  [name in FieldName]: TableNumberFieldValue;
35
43
  };
@@ -27,6 +27,7 @@ export declare abstract class TableColumn<TColumnConfig = unknown> extends Found
27
27
  get validity(): TableColumnValidity;
28
28
  /** @internal */
29
29
  get headerTextContent(): string;
30
+ connectedCallback(): void;
30
31
  protected abstract getColumnInternalsOptions(): ColumnInternalsOptions;
31
32
  protected sortDirectionChanged(): void;
32
33
  protected sortIndexChanged(): void;
@@ -14,4 +14,4 @@ export declare class TableColumnDateTextGroupHeaderView extends TableColumnTextG
14
14
  private groupHeaderValueChanged;
15
15
  private updateText;
16
16
  }
17
- export declare const tableColumnDateTextGroupHeaderTag: string;
17
+ export declare const tableColumnDateTextGroupHeaderViewTag: string;
@@ -0,0 +1,50 @@
1
+ import { Notifier, Subscriber } from '@microsoft/fast-element';
2
+ import type { TableStringField, TableBooleanField, TableNumberField } from '../../table/types';
3
+ import { TableColumn } from '../base';
4
+ import { Mapping } from '../../mapping/base';
5
+ import type { MappingKeyType } from './types';
6
+ import type { MappingConfig } from './models/mapping-config';
7
+ import type { MappingKey } from '../../mapping/base/types';
8
+ import type { TableColumnEnumBaseValidator } from './models/table-column-enum-base-validator';
9
+ export declare type TableColumnEnumCellRecord = TableStringField<'value'> | TableBooleanField<'value'> | TableNumberField<'value'>;
10
+ export declare type MappingConfigs = Map<MappingKey, MappingConfig>;
11
+ export interface TableColumnEnumColumnConfig {
12
+ mappingConfigs: MappingConfigs;
13
+ }
14
+ /**
15
+ * Base class for table columns that map values to content (e.g. nimble-table-column-enum-text and nimble-table-column-icon)
16
+ */
17
+ export declare abstract class TableColumnEnumBase<TColumnConfig extends TableColumnEnumColumnConfig, TEnumValidator extends TableColumnEnumBaseValidator<[]>> extends TableColumn<TColumnConfig> implements Subscriber {
18
+ /** @internal */
19
+ validator: TEnumValidator;
20
+ /** @internal */
21
+ mappingNotifiers: Notifier[];
22
+ /** @internal */
23
+ mappings: Mapping[];
24
+ fieldName?: string;
25
+ keyType: MappingKeyType;
26
+ /**
27
+ * @internal
28
+ *
29
+ * Triggers a request to update the columnConfig when any observable property on
30
+ * a mapping is updated.
31
+ */
32
+ handleChange(source: unknown, args: unknown): void;
33
+ abstract createValidator(): TEnumValidator;
34
+ /**
35
+ * Implementations should throw an error if an invalid Mapping is passed.
36
+ */
37
+ protected abstract createMappingConfig(mapping: Mapping): MappingConfig;
38
+ protected abstract createColumnConfig(mappingConfigs: MappingConfigs): TColumnConfig;
39
+ /**
40
+ * Called when any Mapping related state has changed.
41
+ * Implementations should run validation before updating the column config.
42
+ */
43
+ private updateColumnConfig;
44
+ private getMappingConfigs;
45
+ private fieldNameChanged;
46
+ private mappingsChanged;
47
+ private keyTypeChanged;
48
+ private removeMappingObservers;
49
+ private observeMappings;
50
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Common state shared across Mapping Config
3
+ */
4
+ export declare abstract class MappingConfig {
5
+ readonly text: string;
6
+ constructor(text: string);
7
+ }
@@ -0,0 +1,8 @@
1
+ import type { MappingKey } from '../../../mapping/base/types';
2
+ import type { MappingKeyType } from '../types';
3
+ /**
4
+ * Converts a Mapping key (which is a string when configured in HTML) to the
5
+ * given keyType. The converted value can then be used to compare against
6
+ * values in the table data.
7
+ */
8
+ export declare const resolveKeyWithType: (key: MappingKey | undefined, keyType: MappingKeyType) => MappingKey | undefined;
@@ -0,0 +1,6 @@
1
+ import { MappingConfig } from './mapping-config';
2
+ /**
3
+ * Mapping configuration corresponding to a text mapping
4
+ */
5
+ export declare class MappingTextConfig extends MappingConfig {
6
+ }
@@ -0,0 +1,18 @@
1
+ import { ColumnValidator } from '../../base/models/column-validator';
2
+ import type { ColumnInternals } from '../../base/models/column-internals';
3
+ import type { Mapping } from '../../../mapping/base';
4
+ import type { MappingKeyType } from '../types';
5
+ export declare const enumBaseValidityFlagNames: readonly ["invalidMappingKeyValueForType", "unsupportedMappingType", "duplicateMappingKey", "missingKeyValue", "missingTextValue"];
6
+ /**
7
+ * Validator for TableColumnEnumText. Implementations MUST include enumBaseValidityFlagNames in validity flag names set.
8
+ */
9
+ export declare abstract class TableColumnEnumBaseValidator<ValidityFlagNames extends readonly string[]> extends ColumnValidator<typeof enumBaseValidityFlagNames | ValidityFlagNames> {
10
+ private readonly supportedMappingElements;
11
+ constructor(columnInternals: ColumnInternals<unknown>, configValidityKeys: ValidityFlagNames, supportedMappingElements: readonly (typeof Mapping)[]);
12
+ validate(mappings: Mapping[], keyType: MappingKeyType): void;
13
+ private validateKeyValuesForType;
14
+ private validateMappingTypes;
15
+ private validateUniqueKeys;
16
+ private validateNoMissingKeys;
17
+ private validateNoMissingText;
18
+ }
@@ -0,0 +1 @@
1
+ export declare const styles: import("@microsoft/fast-element").ElementStyles;
@@ -0,0 +1,3 @@
1
+ import type { TableColumnEnumBase, TableColumnEnumColumnConfig } from '.';
2
+ import type { TableColumnEnumBaseValidator } from './models/table-column-enum-base-validator';
3
+ export declare const template: import("@microsoft/fast-element").ViewTemplate<TableColumnEnumBase<TableColumnEnumColumnConfig, TableColumnEnumBaseValidator<[]>>, any>;
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Input data types for mapping-based columns (i.e. enum text and icon)
3
+ * @public
4
+ */
5
+ export declare const MappingKeyType: {
6
+ readonly string: "string";
7
+ readonly number: "number";
8
+ readonly boolean: "boolean";
9
+ };
10
+ export declare type MappingKeyType = (typeof MappingKeyType)[keyof typeof MappingKeyType];
@@ -0,0 +1,16 @@
1
+ import type { TableColumnEnumCellRecord, TableColumnEnumColumnConfig } from '../../enum-base';
2
+ import { TableColumnTextCellViewBase } from '../../text-base/cell-view';
3
+ declare global {
4
+ interface HTMLElementTagNameMap {
5
+ 'nimble-table-column-enum-text-cell-view': TableColumnEnumTextCellView;
6
+ }
7
+ }
8
+ /**
9
+ * A cell view for displaying mapped text
10
+ */
11
+ export declare class TableColumnEnumTextCellView extends TableColumnTextCellViewBase<TableColumnEnumCellRecord, TableColumnEnumColumnConfig> {
12
+ private columnConfigChanged;
13
+ private cellRecordChanged;
14
+ private updateText;
15
+ }
16
+ export declare const tableColumnEnumTextCellViewTag: string;
@@ -0,0 +1,17 @@
1
+ import type { TableColumnEnumColumnConfig } from '../../enum-base';
2
+ import { TableColumnTextGroupHeaderViewBase } from '../../text-base/group-header-view';
3
+ import type { TableFieldValue } from '../../../table/types';
4
+ declare global {
5
+ interface HTMLElementTagNameMap {
6
+ 'nimble-table-column-enum-text-group-header-view': TableColumnEnumTextGroupHeaderView;
7
+ }
8
+ }
9
+ /**
10
+ * A group header view for enum columns
11
+ */
12
+ export declare class TableColumnEnumTextGroupHeaderView extends TableColumnTextGroupHeaderViewBase<TableFieldValue, TableColumnEnumColumnConfig> {
13
+ private columnConfigChanged;
14
+ private groupHeaderValueChanged;
15
+ private updateText;
16
+ }
17
+ export declare const tableColumnEnumTextGroupHeaderViewTag: string;
@@ -0,0 +1,43 @@
1
+ import { MappingConfigs, TableColumnEnumBase, TableColumnEnumColumnConfig } from '../enum-base';
2
+ import { TableColumnValidity } from '../base/types';
3
+ import { TableColumnEnumTextValidator } from './models/table-column-enum-text-validator';
4
+ import type { ColumnInternalsOptions } from '../base/models/column-internals';
5
+ import type { Mapping } from '../../mapping/base';
6
+ import type { MappingConfig } from '../enum-base/models/mapping-config';
7
+ declare global {
8
+ interface HTMLElementTagNameMap {
9
+ 'nimble-table-column-enum-text': TableColumnEnumText;
10
+ }
11
+ }
12
+ declare const TableColumnEnumText_base: (abstract new (...args: any[]) => {
13
+ groupingDisabled: boolean;
14
+ groupIndex?: number | null | undefined;
15
+ groupingDisabledChanged(): void;
16
+ groupIndexChanged(): void;
17
+ readonly columnInternals: import("../base/models/column-internals").ColumnInternals<unknown>;
18
+ }) & (abstract new (...args: any[]) => {
19
+ fractionalWidth?: number | null | undefined;
20
+ minPixelWidth?: number | null | undefined;
21
+ fractionalWidthChanged(): void;
22
+ minPixelWidthChanged(): void;
23
+ readonly columnInternals: import("../base/models/column-internals").ColumnInternals<unknown>;
24
+ }) & ((abstract new () => TableColumnEnumBase<TableColumnEnumColumnConfig, TableColumnEnumTextValidator>) & {
25
+ 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>;
26
+ from<TBase extends {
27
+ new (): HTMLElement;
28
+ prototype: HTMLElement;
29
+ }>(BaseType: TBase): new () => InstanceType<TBase> & import("@microsoft/fast-element").FASTElement;
30
+ define<TType extends Function>(type: TType, nameOrDef?: string | import("@microsoft/fast-element").PartialFASTElementDefinition | undefined): TType;
31
+ });
32
+ /**
33
+ * Table column that maps values to strings
34
+ */
35
+ export declare class TableColumnEnumText extends TableColumnEnumText_base {
36
+ createValidator(): TableColumnEnumTextValidator;
37
+ get validity(): TableColumnValidity;
38
+ protected getColumnInternalsOptions(): ColumnInternalsOptions;
39
+ protected createColumnConfig(mappingConfigs: MappingConfigs): TableColumnEnumColumnConfig;
40
+ protected createMappingConfig(mapping: Mapping): MappingConfig;
41
+ }
42
+ export declare const tableColumnEnumTextTag: string;
43
+ export {};
@@ -0,0 +1,11 @@
1
+ import type { Mapping } from '../../../mapping/base';
2
+ import type { ColumnInternals } from '../../base/models/column-internals';
3
+ import { TableColumnEnumBaseValidator } from '../../enum-base/models/table-column-enum-base-validator';
4
+ declare const enumTextValidityFlagNames: readonly ["invalidMappingKeyValueForType", "unsupportedMappingType", "duplicateMappingKey", "missingKeyValue", "missingTextValue"];
5
+ /**
6
+ * Validator for TableColumnEnumText
7
+ */
8
+ export declare class TableColumnEnumTextValidator extends TableColumnEnumBaseValidator<typeof enumTextValidityFlagNames> {
9
+ constructor(columnInternals: ColumnInternals<unknown>, supportedMappingElements: readonly (typeof Mapping)[]);
10
+ }
11
+ export {};
@@ -12,4 +12,4 @@ declare global {
12
12
  export declare class TableColumnTextGroupHeaderView extends TableColumnTextGroupHeaderViewBase<TableStringFieldValue, TableColumnTextColumnConfig> {
13
13
  private groupHeaderValueChanged;
14
14
  }
15
- export declare const tableColumnTextGroupHeaderTag: string;
15
+ export declare const tableColumnTextGroupHeaderViewTag: string;
@@ -14,6 +14,11 @@ export declare type TableFieldValue = string | number | boolean | null | undefin
14
14
  * a table's string records.
15
15
  */
16
16
  export declare type TableStringFieldValue = string | null | undefined;
17
+ /**
18
+ * TableBooleanFieldValue describes the type associated with values within
19
+ * a table's boolean records.
20
+ */
21
+ export declare type TableBooleanFieldValue = boolean | null | undefined;
17
22
  /**
18
23
  * TableNumberFieldValue describes the type associated with values within
19
24
  * a table's number records.
@@ -30,6 +35,9 @@ export interface TableRecord {
30
35
  export declare type TableStringField<FieldName extends TableFieldName> = {
31
36
  [name in FieldName]: TableStringFieldValue;
32
37
  };
38
+ export declare type TableBooleanField<FieldName extends TableFieldName> = {
39
+ [name in FieldName]: TableBooleanFieldValue;
40
+ };
33
41
  export declare type TableNumberField<FieldName extends TableFieldName> = {
34
42
  [name in FieldName]: TableNumberFieldValue;
35
43
  };
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/table/types.ts"],"names":[],"mappings":"AAkEA;;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;IAChB,QAAQ,EAAE,UAAU;CACd,CAAC;AAIX;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG;IAClC,WAAW,EAAE,aAAa;IAC1B,QAAQ,EAAE,UAAU;IACpB,iBAAiB,EAAE,mBAAmB;CAChC,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/table/types.ts"],"names":[],"mappings":"AA4EA;;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;IAChB,QAAQ,EAAE,UAAU;CACd,CAAC;AAIX;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG;IAClC,WAAW,EAAE,aAAa;IAC1B,QAAQ,EAAE,UAAU;IACpB,iBAAiB,EAAE,mBAAmB;CAChC,CAAC"}
@@ -8,7 +8,7 @@ import { TableColumnSortOperation } from '../base/types';
8
8
  import { mixinFractionalWidthColumnAPI } from '../mixins/fractional-width-column';
9
9
  import { mixinGroupableColumnAPI } from '../mixins/groupable-column';
10
10
  import { tableColumnAnchorCellViewTag } from './cell-view';
11
- import { tableColumnTextGroupHeaderTag } from '../text/group-header-view';
11
+ import { tableColumnTextGroupHeaderViewTag } from '../text/group-header-view';
12
12
  /**
13
13
  * A table column for displaying links.
14
14
  */
@@ -21,7 +21,7 @@ export class TableColumnAnchor extends mixinGroupableColumnAPI(mixinFractionalWi
21
21
  return {
22
22
  cellRecordFieldNames: ['label', 'href'],
23
23
  cellViewTag: tableColumnAnchorCellViewTag,
24
- groupHeaderViewTag: tableColumnTextGroupHeaderTag,
24
+ groupHeaderViewTag: tableColumnTextGroupHeaderViewTag,
25
25
  delegatedEvents: ['click'],
26
26
  sortOperation: TableColumnSortOperation.localeAwareCaseSensitive
27
27
  };
@@ -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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"}
@@ -27,6 +27,7 @@ export declare abstract class TableColumn<TColumnConfig = unknown> extends Found
27
27
  get validity(): TableColumnValidity;
28
28
  /** @internal */
29
29
  get headerTextContent(): string;
30
+ connectedCallback(): void;
30
31
  protected abstract getColumnInternalsOptions(): ColumnInternalsOptions;
31
32
  protected sortDirectionChanged(): void;
32
33
  protected sortIndexChanged(): void;
@@ -34,6 +34,11 @@ export class TableColumn extends FoundationElement {
34
34
  .map(node => node.textContent?.trim())
35
35
  .join(' ');
36
36
  }
37
+ connectedCallback() {
38
+ super.connectedCallback();
39
+ // Done here to enforce consistency across headers as they may have custom templates
40
+ this.setAttribute('slot', this.columnInternals.uniqueId);
41
+ }
37
42
  sortDirectionChanged() {
38
43
  if (!this.sortingDisabled) {
39
44
  this.columnInternals.currentSortDirection = this.sortDirection;
@@ -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,EACb,MAAM,yBAAyB,CAAC;AACjC,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;QAE/B,gBAAgB;QAET,gBAAW,GAAG,KAAK,CAAC;IA4C/B,CAAC;IAvCU,aAAa;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC;IACnD,CAAC;IAED,IAAW,QAAQ;QACf,OAAO,EAAE,CAAC;IACd,CAAC;IAED,gBAAgB;IAChB,IAAW,iBAAiB;QACxB,OAAO,IAAI,CAAC,WAAW;aAClB,aAAa,EAAE;aACf,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;aACrC,IAAI,CAAC,GAAG,CAAC,CAAC;IACnB,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;AAlEG;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;AAI/B;IADC,UAAU;gDACgB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/base/index.ts"],"names":[],"mappings":";AAAA,OAAO,EACH,IAAI,EACJ,uBAAuB,EACvB,UAAU,EACb,MAAM,yBAAyB,CAAC;AACjC,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;QAE/B,gBAAgB;QAET,gBAAW,GAAG,KAAK,CAAC;IAmD/B,CAAC;IA9CU,aAAa;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC;IACnD,CAAC;IAED,IAAW,QAAQ;QACf,OAAO,EAAE,CAAC;IACd,CAAC;IAED,gBAAgB;IAChB,IAAW,iBAAiB;QACxB,OAAO,IAAI,CAAC,WAAW;aAClB,aAAa,EAAE;aACf,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;aACrC,IAAI,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;IAEe,iBAAiB;QAC7B,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAE1B,oFAAoF;QACpF,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC7D,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;AAzEG;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;AAI/B;IADC,UAAU;gDACgB"}
@@ -1,15 +1,13 @@
1
1
  import { html, ref } from '@microsoft/fast-element';
2
2
  import { overflow } from '../../utilities/directive/overflow';
3
+ // Avoiding a wrapping <template> and be careful about starting and ending whitspace
4
+ // so the template can be composed into other column header templates
3
5
  // prettier-ignore
4
- export const template = html `
5
- <template slot="${x => x.columnInternals.uniqueId}">
6
- <span
7
- ${overflow('hasOverflow')}
8
- class="header-content"
9
- title=${x => (x.hasOverflow && x.headerTextContent ? x.headerTextContent : null)}
10
- >
11
- <slot ${ref('contentSlot')}></slot>
12
- </span>
13
- </template>
14
- `;
6
+ export const template = html `<span
7
+ ${overflow('hasOverflow')}
8
+ class="header-content"
9
+ title=${x => (x.hasOverflow && x.headerTextContent ? x.headerTextContent : null)}
10
+ >
11
+ <slot ${ref('contentSlot')}></slot>
12
+ </span>`;
15
13
  //# sourceMappingURL=template.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"template.js","sourceRoot":"","sources":["../../../../src/table-column/base/template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAEpD,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAE9D,kBAAkB;AAClB,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAa;sBACnB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ;;cAEvC,QAAQ,CAAC,aAAa,CAAC;;oBAEjB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC;;oBAExE,GAAG,CAAC,aAAa,CAAC;;;CAGrC,CAAC"}
1
+ {"version":3,"file":"template.js","sourceRoot":"","sources":["../../../../src/table-column/base/template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAEpD,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAE9D,oFAAoF;AACpF,qEAAqE;AACrE,kBAAkB;AAClB,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAa;MACnC,QAAQ,CAAC,aAAa,CAAC;;YAEjB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC;;YAExE,GAAG,CAAC,aAAa,CAAC;QACtB,CAAC"}
@@ -14,4 +14,4 @@ export declare class TableColumnDateTextGroupHeaderView extends TableColumnTextG
14
14
  private groupHeaderValueChanged;
15
15
  private updateText;
16
16
  }
17
- export declare const tableColumnDateTextGroupHeaderTag: string;
17
+ export declare const tableColumnDateTextGroupHeaderViewTag: string;
@@ -23,12 +23,12 @@ export class TableColumnDateTextGroupHeaderView extends TableColumnTextGroupHead
23
23
  }
24
24
  }
25
25
  const tableColumnDateTextGroupHeaderView = TableColumnDateTextGroupHeaderView.compose({
26
- baseName: 'table-column-date-text-group-header',
26
+ baseName: 'table-column-date-text-group-header-view',
27
27
  template,
28
28
  styles
29
29
  });
30
30
  DesignSystem.getOrCreate()
31
31
  .withPrefix('nimble')
32
32
  .register(tableColumnDateTextGroupHeaderView());
33
- export const tableColumnDateTextGroupHeaderTag = DesignSystem.tagFor(TableColumnDateTextGroupHeaderView);
33
+ export const tableColumnDateTextGroupHeaderViewTag = DesignSystem.tagFor(TableColumnDateTextGroupHeaderView);
34
34
  //# sourceMappingURL=index.js.map