@ni/nimble-components 20.1.12 → 20.1.14

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 (88) hide show
  1. package/dist/all-components-bundle.js +9428 -8551
  2. package/dist/all-components-bundle.js.map +1 -1
  3. package/dist/all-components-bundle.min.js +2484 -2342
  4. package/dist/all-components-bundle.min.js.map +1 -1
  5. package/dist/esm/all-components.d.ts +3 -0
  6. package/dist/esm/all-components.js +3 -0
  7. package/dist/esm/all-components.js.map +1 -1
  8. package/dist/esm/mapping/icon/index.d.ts +25 -0
  9. package/dist/esm/mapping/icon/index.js +67 -0
  10. package/dist/esm/mapping/icon/index.js.map +1 -0
  11. package/dist/esm/mapping/spinner/index.d.ts +14 -0
  12. package/dist/esm/mapping/spinner/index.js +17 -0
  13. package/dist/esm/mapping/spinner/index.js.map +1 -0
  14. package/dist/esm/rich-text-editor/index.d.ts +24 -1
  15. package/dist/esm/rich-text-editor/index.js +100 -1
  16. package/dist/esm/rich-text-editor/index.js.map +1 -1
  17. package/dist/esm/rich-text-editor/styles.js +4 -0
  18. package/dist/esm/rich-text-editor/styles.js.map +1 -1
  19. package/dist/esm/rich-text-editor/template.js +1 -5
  20. package/dist/esm/rich-text-editor/template.js.map +1 -1
  21. package/dist/esm/rich-text-editor/testing/rich-text-editor.pageobject.d.ts +11 -10
  22. package/dist/esm/rich-text-editor/testing/rich-text-editor.pageobject.js +20 -20
  23. package/dist/esm/rich-text-editor/testing/rich-text-editor.pageobject.js.map +1 -1
  24. package/dist/esm/spinner/styles.js +4 -2
  25. package/dist/esm/spinner/styles.js.map +1 -1
  26. package/dist/esm/src/all-components.d.ts +3 -0
  27. package/dist/esm/src/mapping/icon/index.d.ts +25 -0
  28. package/dist/esm/src/mapping/spinner/index.d.ts +14 -0
  29. package/dist/esm/src/rich-text-editor/index.d.ts +24 -1
  30. package/dist/esm/src/rich-text-editor/testing/rich-text-editor.pageobject.d.ts +11 -10
  31. package/dist/esm/src/table/testing/table.pageobject.d.ts +3 -0
  32. package/dist/esm/src/table-column/enum-base/index.d.ts +0 -1
  33. package/dist/esm/src/table-column/enum-base/models/mapping-config.d.ts +2 -2
  34. package/dist/esm/src/table-column/enum-base/models/mapping-icon-config.d.ts +15 -0
  35. package/dist/esm/src/table-column/enum-base/models/mapping-spinner-config.d.ts +7 -0
  36. package/dist/esm/src/table-column/enum-text/models/table-column-enum-text-validator.d.ts +1 -2
  37. package/dist/esm/src/table-column/icon/cell-view/index.d.ts +23 -0
  38. package/dist/esm/src/table-column/icon/cell-view/template.d.ts +2 -0
  39. package/dist/esm/src/table-column/icon/group-header-view/index.d.ts +23 -0
  40. package/dist/esm/src/table-column/icon/group-header-view/styles.d.ts +1 -0
  41. package/dist/esm/src/table-column/icon/group-header-view/template.d.ts +2 -0
  42. package/dist/esm/src/table-column/icon/index.d.ts +43 -0
  43. package/dist/esm/src/table-column/icon/models/table-column-icon-validator.d.ts +14 -0
  44. package/dist/esm/table/testing/table.pageobject.d.ts +3 -0
  45. package/dist/esm/table/testing/table.pageobject.js +17 -0
  46. package/dist/esm/table/testing/table.pageobject.js.map +1 -1
  47. package/dist/esm/table-column/enum-base/index.d.ts +0 -1
  48. package/dist/esm/table-column/enum-base/index.js +0 -1
  49. package/dist/esm/table-column/enum-base/index.js.map +1 -1
  50. package/dist/esm/table-column/enum-base/models/mapping-config.d.ts +2 -2
  51. package/dist/esm/table-column/enum-base/models/mapping-config.js.map +1 -1
  52. package/dist/esm/table-column/enum-base/models/mapping-icon-config.d.ts +15 -0
  53. package/dist/esm/table-column/enum-base/models/mapping-icon-config.js +21 -0
  54. package/dist/esm/table-column/enum-base/models/mapping-icon-config.js.map +1 -0
  55. package/dist/esm/table-column/enum-base/models/mapping-spinner-config.d.ts +7 -0
  56. package/dist/esm/table-column/enum-base/models/mapping-spinner-config.js +10 -0
  57. package/dist/esm/table-column/enum-base/models/mapping-spinner-config.js.map +1 -0
  58. package/dist/esm/table-column/enum-text/cell-view/index.js +3 -1
  59. package/dist/esm/table-column/enum-text/cell-view/index.js.map +1 -1
  60. package/dist/esm/table-column/enum-text/group-header-view/index.js +3 -1
  61. package/dist/esm/table-column/enum-text/group-header-view/index.js.map +1 -1
  62. package/dist/esm/table-column/enum-text/index.js +1 -3
  63. package/dist/esm/table-column/enum-text/index.js.map +1 -1
  64. package/dist/esm/table-column/enum-text/models/table-column-enum-text-validator.d.ts +1 -2
  65. package/dist/esm/table-column/enum-text/models/table-column-enum-text-validator.js +3 -2
  66. package/dist/esm/table-column/enum-text/models/table-column-enum-text-validator.js.map +1 -1
  67. package/dist/esm/table-column/icon/cell-view/index.d.ts +23 -0
  68. package/dist/esm/table-column/icon/cell-view/index.js +58 -0
  69. package/dist/esm/table-column/icon/cell-view/index.js.map +1 -0
  70. package/dist/esm/table-column/icon/cell-view/template.d.ts +2 -0
  71. package/dist/esm/table-column/icon/cell-view/template.js +13 -0
  72. package/dist/esm/table-column/icon/cell-view/template.js.map +1 -0
  73. package/dist/esm/table-column/icon/group-header-view/index.d.ts +23 -0
  74. package/dist/esm/table-column/icon/group-header-view/index.js +57 -0
  75. package/dist/esm/table-column/icon/group-header-view/index.js.map +1 -0
  76. package/dist/esm/table-column/icon/group-header-view/styles.d.ts +1 -0
  77. package/dist/esm/table-column/icon/group-header-view/styles.js +25 -0
  78. package/dist/esm/table-column/icon/group-header-view/styles.js.map +1 -0
  79. package/dist/esm/table-column/icon/group-header-view/template.d.ts +2 -0
  80. package/dist/esm/table-column/icon/group-header-view/template.js +24 -0
  81. package/dist/esm/table-column/icon/group-header-view/template.js.map +1 -0
  82. package/dist/esm/table-column/icon/index.d.ts +43 -0
  83. package/dist/esm/table-column/icon/index.js +63 -0
  84. package/dist/esm/table-column/icon/index.js.map +1 -0
  85. package/dist/esm/table-column/icon/models/table-column-icon-validator.d.ts +14 -0
  86. package/dist/esm/table-column/icon/models/table-column-icon-validator.js +30 -0
  87. package/dist/esm/table-column/icon/models/table-column-icon-validator.js.map +1 -0
  88. package/package.json +1 -1
@@ -15,9 +15,7 @@ import { MappingTextConfig } from '../enum-base/models/mapping-text-config';
15
15
  */
16
16
  export class TableColumnEnumText extends mixinGroupableColumnAPI(mixinFractionalWidthColumnAPI((TableColumnEnumBase))) {
17
17
  createValidator() {
18
- return new TableColumnEnumTextValidator(this.columnInternals, [
19
- MappingText
20
- ]);
18
+ return new TableColumnEnumTextValidator(this.columnInternals);
21
19
  }
22
20
  get validity() {
23
21
  return this.validator.getValidity();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/enum-text/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAEH,mBAAmB,EAEtB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAuB,MAAM,eAAe,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,4BAA4B,EAAE,MAAM,2CAA2C,CAAC;AAEzF,OAAO,EAAE,8BAA8B,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,qCAAqC,EAAE,MAAM,qBAAqB,CAAC;AAG5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAQ5E;;GAEG;AACH,MAAM,OAAO,mBAAoB,SAAQ,uBAAuB,CAC5D,6BAA6B,CACzB,CAAA,mBAGC,CAAA,CACJ,CACJ;IACmB,eAAe;QAC3B,OAAO,IAAI,4BAA4B,CAAC,IAAI,CAAC,eAAe,EAAE;YAC1D,WAAW;SACd,CAAC,CAAC;IACP,CAAC;IAED,IAAoB,QAAQ;QACxB,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;IACxC,CAAC;IAEkB,yBAAyB;QACxC,OAAO;YACH,oBAAoB,EAAE,CAAC,OAAO,CAAC;YAC/B,WAAW,EAAE,8BAA8B;YAC3C,kBAAkB,EAAE,qCAAqC;YACzD,eAAe,EAAE,EAAE;YACnB,aAAa,EAAE,wBAAwB,CAAC,KAAK;SAChD,CAAC;IACN,CAAC;IAEkB,kBAAkB,CACjC,cAA8B;QAE9B,OAAO;YACH,cAAc;SACjB,CAAC;IACN,CAAC;IAES,mBAAmB,CAAC,OAAgB;QAC1C,IAAI,OAAO,YAAY,WAAW,EAAE;YAChC,OAAO,IAAI,iBAAiB,CAAC,OAAO,CAAC,IAAK,CAAC,CAAC;SAC/C;QACD,+EAA+E;QAC/E,mEAAmE;QACnE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAC3C,CAAC;CACJ;AAED,MAAM,yBAAyB,GAAG,mBAAmB,CAAC,OAAO,CAAC;IAC1D,QAAQ,EAAE,wBAAwB;IAClC,QAAQ;IACR,MAAM;CACT,CAAC,CAAC;AAEH,YAAY,CAAC,WAAW,EAAE;KACrB,UAAU,CAAC,QAAQ,CAAC;KACpB,QAAQ,CAAC,yBAAyB,EAAE,CAAC,CAAC;AAC3C,MAAM,CAAC,MAAM,sBAAsB,GAAG,YAAY,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/enum-text/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAEH,mBAAmB,EAEtB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAuB,MAAM,eAAe,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,4BAA4B,EAAE,MAAM,2CAA2C,CAAC;AAEzF,OAAO,EAAE,8BAA8B,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,qCAAqC,EAAE,MAAM,qBAAqB,CAAC;AAG5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAQ5E;;GAEG;AACH,MAAM,OAAO,mBAAoB,SAAQ,uBAAuB,CAC5D,6BAA6B,CACzB,CAAA,mBAGC,CAAA,CACJ,CACJ;IACmB,eAAe;QAC3B,OAAO,IAAI,4BAA4B,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAClE,CAAC;IAED,IAAoB,QAAQ;QACxB,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;IACxC,CAAC;IAEkB,yBAAyB;QACxC,OAAO;YACH,oBAAoB,EAAE,CAAC,OAAO,CAAC;YAC/B,WAAW,EAAE,8BAA8B;YAC3C,kBAAkB,EAAE,qCAAqC;YACzD,eAAe,EAAE,EAAE;YACnB,aAAa,EAAE,wBAAwB,CAAC,KAAK;SAChD,CAAC;IACN,CAAC;IAEkB,kBAAkB,CACjC,cAA8B;QAE9B,OAAO;YACH,cAAc;SACjB,CAAC;IACN,CAAC;IAES,mBAAmB,CAAC,OAAgB;QAC1C,IAAI,OAAO,YAAY,WAAW,EAAE;YAChC,OAAO,IAAI,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SAC9C;QACD,+EAA+E;QAC/E,mEAAmE;QACnE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAC3C,CAAC;CACJ;AAED,MAAM,yBAAyB,GAAG,mBAAmB,CAAC,OAAO,CAAC;IAC1D,QAAQ,EAAE,wBAAwB;IAClC,QAAQ;IACR,MAAM;CACT,CAAC,CAAC;AAEH,YAAY,CAAC,WAAW,EAAE;KACrB,UAAU,CAAC,QAAQ,CAAC;KACpB,QAAQ,CAAC,yBAAyB,EAAE,CAAC,CAAC;AAC3C,MAAM,CAAC,MAAM,sBAAsB,GAAG,YAAY,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC"}
@@ -1,4 +1,3 @@
1
- import type { Mapping } from '../../../mapping/base';
2
1
  import type { ColumnInternals } from '../../base/models/column-internals';
3
2
  import { TableColumnEnumBaseValidator } from '../../enum-base/models/table-column-enum-base-validator';
4
3
  declare const enumTextValidityFlagNames: readonly ["invalidMappingKeyValueForType", "unsupportedMappingType", "duplicateMappingKey", "missingKeyValue", "missingTextValue"];
@@ -6,6 +5,6 @@ declare const enumTextValidityFlagNames: readonly ["invalidMappingKeyValueForTyp
6
5
  * Validator for TableColumnEnumText
7
6
  */
8
7
  export declare class TableColumnEnumTextValidator extends TableColumnEnumBaseValidator<typeof enumTextValidityFlagNames> {
9
- constructor(columnInternals: ColumnInternals<unknown>, supportedMappingElements: readonly (typeof Mapping)[]);
8
+ constructor(columnInternals: ColumnInternals<unknown>);
10
9
  }
11
10
  export {};
@@ -1,11 +1,12 @@
1
+ import { MappingText } from '../../../mapping/text';
1
2
  import { TableColumnEnumBaseValidator, enumBaseValidityFlagNames } from '../../enum-base/models/table-column-enum-base-validator';
2
3
  const enumTextValidityFlagNames = [...enumBaseValidityFlagNames];
3
4
  /**
4
5
  * Validator for TableColumnEnumText
5
6
  */
6
7
  export class TableColumnEnumTextValidator extends TableColumnEnumBaseValidator {
7
- constructor(columnInternals, supportedMappingElements) {
8
- super(columnInternals, enumTextValidityFlagNames, supportedMappingElements);
8
+ constructor(columnInternals) {
9
+ super(columnInternals, enumTextValidityFlagNames, [MappingText]);
9
10
  }
10
11
  }
11
12
  //# sourceMappingURL=table-column-enum-text-validator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"table-column-enum-text-validator.js","sourceRoot":"","sources":["../../../../../src/table-column/enum-text/models/table-column-enum-text-validator.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,4BAA4B,EAC5B,yBAAyB,EAC5B,MAAM,yDAAyD,CAAC;AAEjE,MAAM,yBAAyB,GAAG,CAAC,GAAG,yBAAyB,CAAU,CAAC;AAE1E;;GAEG;AACH,MAAM,OAAO,4BAA6B,SAAQ,4BAEjD;IACG,YACI,eAAyC,EACzC,wBAAqD;QAErD,KAAK,CACD,eAAe,EACf,yBAAyB,EACzB,wBAAwB,CAC3B,CAAC;IACN,CAAC;CACJ"}
1
+ {"version":3,"file":"table-column-enum-text-validator.js","sourceRoot":"","sources":["../../../../../src/table-column/enum-text/models/table-column-enum-text-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,EACH,4BAA4B,EAC5B,yBAAyB,EAC5B,MAAM,yDAAyD,CAAC;AAEjE,MAAM,yBAAyB,GAAG,CAAC,GAAG,yBAAyB,CAAU,CAAC;AAE1E;;GAEG;AACH,MAAM,OAAO,4BAA6B,SAAQ,4BAEjD;IACG,YAAmB,eAAyC;QACxD,KAAK,CAAC,eAAe,EAAE,yBAAyB,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IACrE,CAAC;CACJ"}
@@ -0,0 +1,23 @@
1
+ import { ViewTemplate } from '@microsoft/fast-element';
2
+ import { TableCellView } from '../../base/cell-view';
3
+ import type { TableColumnEnumCellRecord, TableColumnEnumColumnConfig } from '../../enum-base';
4
+ import { IconView } from '../../enum-base/models/mapping-icon-config';
5
+ import type { IconSeverity } from '../../../icon-base/types';
6
+ declare global {
7
+ interface HTMLElementTagNameMap {
8
+ 'nimble-table-column-icon-cell-view': TableColumnIconCellView;
9
+ }
10
+ }
11
+ /**
12
+ * The cell view for the icon column
13
+ */
14
+ export declare class TableColumnIconCellView extends TableCellView<TableColumnEnumCellRecord, TableColumnEnumColumnConfig> implements IconView {
15
+ severity: IconSeverity;
16
+ text?: string;
17
+ iconTemplate?: ViewTemplate<IconView>;
18
+ visual?: 'spinner' | 'icon';
19
+ private columnConfigChanged;
20
+ private cellRecordChanged;
21
+ private updateState;
22
+ }
23
+ export declare const tableColumnIconCellViewTag: string;
@@ -0,0 +1,58 @@
1
+ import { __decorate } from "tslib";
2
+ import { DesignSystem } from '@microsoft/fast-foundation';
3
+ import { observable } from '@microsoft/fast-element';
4
+ import { TableCellView } from '../../base/cell-view';
5
+ import { template } from './template';
6
+ import { MappingIconConfig } from '../../enum-base/models/mapping-icon-config';
7
+ import { MappingSpinnerConfig } from '../../enum-base/models/mapping-spinner-config';
8
+ /**
9
+ * The cell view for the icon column
10
+ */
11
+ export class TableColumnIconCellView extends TableCellView {
12
+ columnConfigChanged() {
13
+ this.updateState();
14
+ }
15
+ cellRecordChanged() {
16
+ this.updateState();
17
+ }
18
+ updateState() {
19
+ this.visual = undefined;
20
+ if (!this.columnConfig || !this.cellRecord) {
21
+ return;
22
+ }
23
+ const value = this.cellRecord.value;
24
+ if (value === undefined || value === null) {
25
+ return;
26
+ }
27
+ const mappingConfig = this.columnConfig.mappingConfigs.get(value);
28
+ if (mappingConfig instanceof MappingIconConfig) {
29
+ this.visual = 'icon';
30
+ this.severity = mappingConfig.severity;
31
+ this.text = mappingConfig.text;
32
+ this.iconTemplate = mappingConfig.iconTemplate;
33
+ }
34
+ else if (mappingConfig instanceof MappingSpinnerConfig) {
35
+ this.visual = 'spinner';
36
+ this.text = mappingConfig.text;
37
+ }
38
+ }
39
+ }
40
+ __decorate([
41
+ observable
42
+ ], TableColumnIconCellView.prototype, "severity", void 0);
43
+ __decorate([
44
+ observable
45
+ ], TableColumnIconCellView.prototype, "text", void 0);
46
+ __decorate([
47
+ observable
48
+ ], TableColumnIconCellView.prototype, "iconTemplate", void 0);
49
+ __decorate([
50
+ observable
51
+ ], TableColumnIconCellView.prototype, "visual", void 0);
52
+ const iconCellView = TableColumnIconCellView.compose({
53
+ baseName: 'table-column-icon-cell-view',
54
+ template
55
+ });
56
+ DesignSystem.getOrCreate().withPrefix('nimble').register(iconCellView());
57
+ export const tableColumnIconCellViewTag = DesignSystem.tagFor(TableColumnIconCellView);
58
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/table-column/icon/cell-view/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAgB,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAKtC,OAAO,EAEH,iBAAiB,EACpB,MAAM,4CAA4C,CAAC;AAEpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAC;AAQrF;;GAEG;AACH,MAAM,OAAO,uBACT,SAAQ,aAGP;IAcO,mBAAmB;QACvB,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAEO,iBAAiB;QACrB,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAEO,WAAW;QACf,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACxC,OAAO;SACV;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;QACpC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;YACvC,OAAO;SACV;QACD,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAClE,IAAI,aAAa,YAAY,iBAAiB,EAAE;YAC5C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;YACrB,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC;YACvC,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC;YAC/B,IAAI,CAAC,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC;SAClD;aAAM,IAAI,aAAa,YAAY,oBAAoB,EAAE;YACtD,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC;SAClC;IACL,CAAC;CACJ;AAvCG;IADC,UAAU;yDACmB;AAG9B;IADC,UAAU;qDACU;AAGrB;IADC,UAAU;6DACkC;AAG7C;IADC,UAAU;uDACwB;AAgCvC,MAAM,YAAY,GAAG,uBAAuB,CAAC,OAAO,CAAC;IACjD,QAAQ,EAAE,6BAA6B;IACvC,QAAQ;CACX,CAAC,CAAC;AACH,YAAY,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC;AACzE,MAAM,CAAC,MAAM,0BAA0B,GAAG,YAAY,CAAC,MAAM,CACzD,uBAAuB,CAC1B,CAAC"}
@@ -0,0 +1,2 @@
1
+ import type { TableColumnIconCellView } from '.';
2
+ export declare const template: import("@microsoft/fast-element").ViewTemplate<TableColumnIconCellView, any>;
@@ -0,0 +1,13 @@
1
+ import { html, when } from '@microsoft/fast-element';
2
+ import { spinnerTag } from '../../../spinner';
3
+ export const template = html `
4
+ ${when(x => x.visual === 'icon', x => x.iconTemplate)}
5
+ ${when(x => x.visual === 'spinner', html `
6
+ <${spinnerTag}
7
+ title="${x => x.text}"
8
+ aria-label="${x => x.text}"
9
+ class="no-shrink">
10
+ </${spinnerTag}>
11
+ `)}
12
+ `;
13
+ //# sourceMappingURL=template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"template.js","sourceRoot":"","sources":["../../../../../src/table-column/icon/cell-view/template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAyB;MAC/C,IAAI,CACF,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,EACxB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAa,CACvB;MACC,IAAI,CACF,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,EAC3B,IAAI,CAAyB;WAC1B,UAAU;qBACA,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;0BACN,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;;YAEzB,UAAU;KACjB,CACA;CACJ,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { ViewTemplate } from '@microsoft/fast-element';
2
+ import type { TableColumnEnumColumnConfig } from '../../enum-base';
3
+ import type { TableFieldValue } from '../../../table/types';
4
+ import { TableColumnTextGroupHeaderViewBase } from '../../text-base/group-header-view';
5
+ import type { IconSeverity } from '../../../icon-base/types';
6
+ import { type IconView } from '../../enum-base/models/mapping-icon-config';
7
+ declare global {
8
+ interface HTMLElementTagNameMap {
9
+ 'nimble-table-column-icon-group-header-view': TableColumnIconGroupHeaderView;
10
+ }
11
+ }
12
+ /**
13
+ * The group header view for the icon column
14
+ */
15
+ export declare class TableColumnIconGroupHeaderView extends TableColumnTextGroupHeaderViewBase<TableFieldValue, TableColumnEnumColumnConfig> implements IconView {
16
+ severity: IconSeverity;
17
+ iconTemplate?: ViewTemplate<IconView>;
18
+ visual?: 'spinner' | 'icon';
19
+ private columnConfigChanged;
20
+ private groupHeaderValueChanged;
21
+ private updateState;
22
+ }
23
+ export declare const tableColumnIconGroupHeaderViewTag: string;
@@ -0,0 +1,57 @@
1
+ import { __decorate } from "tslib";
2
+ import { DesignSystem } from '@microsoft/fast-foundation';
3
+ import { observable } from '@microsoft/fast-element';
4
+ import { styles } from './styles';
5
+ import { template } from './template';
6
+ import { TableColumnTextGroupHeaderViewBase } from '../../text-base/group-header-view';
7
+ import { MappingIconConfig } from '../../enum-base/models/mapping-icon-config';
8
+ import { MappingSpinnerConfig } from '../../enum-base/models/mapping-spinner-config';
9
+ /**
10
+ * The group header view for the icon column
11
+ */
12
+ export class TableColumnIconGroupHeaderView extends TableColumnTextGroupHeaderViewBase {
13
+ columnConfigChanged() {
14
+ this.updateState();
15
+ }
16
+ groupHeaderValueChanged() {
17
+ this.updateState();
18
+ }
19
+ updateState() {
20
+ this.visual = undefined;
21
+ if (!this.columnConfig) {
22
+ return;
23
+ }
24
+ const value = this.groupHeaderValue;
25
+ if (value === undefined || value === null) {
26
+ return;
27
+ }
28
+ const mappingConfig = this.columnConfig.mappingConfigs.get(value);
29
+ if (mappingConfig instanceof MappingIconConfig) {
30
+ this.visual = 'icon';
31
+ this.severity = mappingConfig.severity;
32
+ this.text = mappingConfig.text ?? '';
33
+ this.iconTemplate = mappingConfig.iconTemplate;
34
+ }
35
+ else if (mappingConfig instanceof MappingSpinnerConfig) {
36
+ this.visual = 'spinner';
37
+ this.text = mappingConfig.text ?? '';
38
+ }
39
+ }
40
+ }
41
+ __decorate([
42
+ observable
43
+ ], TableColumnIconGroupHeaderView.prototype, "severity", void 0);
44
+ __decorate([
45
+ observable
46
+ ], TableColumnIconGroupHeaderView.prototype, "iconTemplate", void 0);
47
+ __decorate([
48
+ observable
49
+ ], TableColumnIconGroupHeaderView.prototype, "visual", void 0);
50
+ const iconGroupHeaderView = TableColumnIconGroupHeaderView.compose({
51
+ baseName: 'table-column-icon-group-header-view',
52
+ template,
53
+ styles
54
+ });
55
+ DesignSystem.getOrCreate().withPrefix('nimble').register(iconGroupHeaderView());
56
+ export const tableColumnIconGroupHeaderViewTag = DesignSystem.tagFor(TableColumnIconGroupHeaderView);
57
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/table-column/icon/group-header-view/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAgB,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,OAAO,EAAE,kCAAkC,EAAE,MAAM,mCAAmC,CAAC;AAEvF,OAAO,EACH,iBAAiB,EAEpB,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAC;AAQrF;;GAEG;AACH,MAAM,OAAO,8BACT,SAAQ,kCAGP;IAWO,mBAAmB;QACvB,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAEO,uBAAuB;QAC3B,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAEO,WAAW;QACf,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACpB,OAAO;SACV;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACpC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;YACvC,OAAO;SACV;QACD,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAClE,IAAI,aAAa,YAAY,iBAAiB,EAAE;YAC5C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;YACrB,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC;YACvC,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,IAAI,IAAI,EAAE,CAAC;YACrC,IAAI,CAAC,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC;SAClD;aAAM,IAAI,aAAa,YAAY,oBAAoB,EAAE;YACtD,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,IAAI,IAAI,EAAE,CAAC;SACxC;IACL,CAAC;CACJ;AApCG;IADC,UAAU;gEACmB;AAG9B;IADC,UAAU;oEACkC;AAG7C;IADC,UAAU;8DACwB;AAgCvC,MAAM,mBAAmB,GAAG,8BAA8B,CAAC,OAAO,CAAC;IAC/D,QAAQ,EAAE,qCAAqC;IAC/C,QAAQ;IACR,MAAM;CACT,CAAC,CAAC;AACH,YAAY,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,mBAAmB,EAAE,CAAC,CAAC;AAChF,MAAM,CAAC,MAAM,iCAAiC,GAAG,YAAY,CAAC,MAAM,CAChE,8BAA8B,CACjC,CAAC"}
@@ -0,0 +1 @@
1
+ export declare const styles: import("@microsoft/fast-element").ElementStyles;
@@ -0,0 +1,25 @@
1
+ import { css } from '@microsoft/fast-element';
2
+ import { display } from '@microsoft/fast-foundation';
3
+ import { bodyFont, bodyFontColor, smallPadding } from '../../../theme-provider/design-tokens';
4
+ export const styles = css `
5
+ ${display('inline-flex')}
6
+
7
+ :host {
8
+ gap: ${smallPadding};
9
+ align-items: center;
10
+ }
11
+
12
+ .no-shrink {
13
+ flex-shrink: 0;
14
+ }
15
+
16
+ span {
17
+ flex-shrink: 1;
18
+ font: ${bodyFont};
19
+ color: ${bodyFontColor};
20
+ white-space: nowrap;
21
+ overflow: hidden;
22
+ text-overflow: ellipsis;
23
+ }
24
+ `;
25
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../../../src/table-column/icon/group-header-view/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACrD,OAAO,EACH,QAAQ,EACR,aAAa,EACb,YAAY,EACf,MAAM,uCAAuC,CAAC;AAE/C,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;MACnB,OAAO,CAAC,aAAa,CAAC;;;eAGb,YAAY;;;;;;;;;;gBAUX,QAAQ;iBACP,aAAa;;;;;CAK7B,CAAC"}
@@ -0,0 +1,2 @@
1
+ import type { TableColumnIconGroupHeaderView } from '.';
2
+ export declare const template: import("@microsoft/fast-element").ViewTemplate<TableColumnIconGroupHeaderView, any>;
@@ -0,0 +1,24 @@
1
+ import { html, when } from '@microsoft/fast-element';
2
+ import { spinnerTag } from '../../../spinner';
3
+ import { overflow } from '../../../utilities/directive/overflow';
4
+ // prettier-ignore
5
+ export const template = html `
6
+ ${when(x => x.visual === 'icon', html `
7
+ ${x => x.iconTemplate}
8
+ <span
9
+ ${overflow('hasOverflow')}
10
+ title="${x => (x.hasOverflow && x.text ? x.text : null)}"
11
+ >${x => x.text}</span>`)}
12
+ ${when(x => x.visual === 'spinner', html `
13
+ <${spinnerTag}
14
+ title="${x => x.text}"
15
+ aria-label="${x => x.text}"
16
+ class="no-shrink">
17
+ </${spinnerTag}>
18
+ <span
19
+ ${overflow('hasOverflow')}
20
+ title="${x => (x.hasOverflow && x.text ? x.text : null)}"
21
+ >${x => x.text}</span>
22
+ `)}
23
+ `;
24
+ //# sourceMappingURL=template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"template.js","sourceRoot":"","sources":["../../../../../src/table-column/icon/group-header-view/template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAGrD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,uCAAuC,CAAC;AAEjE,kBAAkB;AAClB,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAgC;MACtD,IAAI,CACF,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,EACxB,IAAI,CAAgC;cAC9B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAa;;kBAEhB,QAAQ,CAAC,aAAa,CAAC;yBAChB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;eACxD,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,SAAS,CAC9B;MACC,IAAI,CACF,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,EAC3B,IAAI,CAAgC;WACjC,UAAU;qBACA,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;0BACN,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;;YAEzB,UAAU;;cAER,QAAQ,CAAC,aAAa,CAAC;qBAChB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;WACxD,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;KACjB,CACA;CACJ,CAAC"}
@@ -0,0 +1,43 @@
1
+ import { MappingConfigs, TableColumnEnumBase, TableColumnEnumColumnConfig } from '../enum-base';
2
+ import { TableColumnValidity } from '../base/types';
3
+ import { TableColumnIconValidator } from './models/table-column-icon-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-icon': TableColumnIcon;
10
+ }
11
+ }
12
+ declare const TableColumnIcon_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, TableColumnIconValidator>) & {
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 icons / spinners
34
+ */
35
+ export declare class TableColumnIcon extends TableColumnIcon_base {
36
+ createValidator(): TableColumnIconValidator;
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 tableColumnIconTag: string;
43
+ export {};
@@ -0,0 +1,63 @@
1
+ import { DesignSystem } from '@microsoft/fast-foundation';
2
+ import { TableColumnEnumBase } from '../enum-base';
3
+ import { styles } from '../enum-base/styles';
4
+ import { template } from '../enum-base/template';
5
+ import { TableColumnSortOperation } from '../base/types';
6
+ import { mixinGroupableColumnAPI } from '../mixins/groupable-column';
7
+ import { mixinFractionalWidthColumnAPI } from '../mixins/fractional-width-column';
8
+ import { MappingSpinner } from '../../mapping/spinner';
9
+ import { MappingIcon } from '../../mapping/icon';
10
+ import { TableColumnIconValidator } from './models/table-column-icon-validator';
11
+ import { tableColumnIconGroupHeaderViewTag } from './group-header-view';
12
+ import { tableColumnIconCellViewTag } from './cell-view';
13
+ import { MappingIconConfig } from '../enum-base/models/mapping-icon-config';
14
+ import { MappingSpinnerConfig } from '../enum-base/models/mapping-spinner-config';
15
+ /**
16
+ * Table column that maps values to icons / spinners
17
+ */
18
+ export class TableColumnIcon extends mixinGroupableColumnAPI(mixinFractionalWidthColumnAPI((TableColumnEnumBase))) {
19
+ createValidator() {
20
+ return new TableColumnIconValidator(this.columnInternals);
21
+ }
22
+ get validity() {
23
+ return this.validator.getValidity();
24
+ }
25
+ getColumnInternalsOptions() {
26
+ return {
27
+ cellRecordFieldNames: ['value'],
28
+ cellViewTag: tableColumnIconCellViewTag,
29
+ groupHeaderViewTag: tableColumnIconGroupHeaderViewTag,
30
+ delegatedEvents: [],
31
+ sortOperation: TableColumnSortOperation.basic
32
+ };
33
+ }
34
+ createColumnConfig(mappingConfigs) {
35
+ return {
36
+ mappingConfigs
37
+ };
38
+ }
39
+ createMappingConfig(mapping) {
40
+ if (mapping instanceof MappingIcon) {
41
+ if (!mapping.resolvedIcon) {
42
+ throw Error('Unresolved icon');
43
+ }
44
+ return new MappingIconConfig(mapping.resolvedIcon, mapping.severity, mapping.text);
45
+ }
46
+ if (mapping instanceof MappingSpinner) {
47
+ return new MappingSpinnerConfig(mapping.text);
48
+ }
49
+ // Getting here would indicate a programming error, b/c validation will prevent
50
+ // this function from running when there is an unsupported mapping.
51
+ throw new Error('Unsupported mapping');
52
+ }
53
+ }
54
+ const nimbleTableColumnIcon = TableColumnIcon.compose({
55
+ baseName: 'table-column-icon',
56
+ template,
57
+ styles
58
+ });
59
+ DesignSystem.getOrCreate()
60
+ .withPrefix('nimble')
61
+ .register(nimbleTableColumnIcon());
62
+ export const tableColumnIconTag = DesignSystem.tagFor(TableColumnIcon);
63
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/table-column/icon/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAEH,mBAAmB,EAEtB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAuB,MAAM,eAAe,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAEhF,OAAO,EAAE,iCAAiC,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAGzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAQlF;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,uBAAuB,CACxD,6BAA6B,CACzB,CAAA,mBAGC,CAAA,CACJ,CACJ;IACmB,eAAe;QAC3B,OAAO,IAAI,wBAAwB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC9D,CAAC;IAED,IAAoB,QAAQ;QACxB,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;IACxC,CAAC;IAEkB,yBAAyB;QACxC,OAAO;YACH,oBAAoB,EAAE,CAAC,OAAO,CAAC;YAC/B,WAAW,EAAE,0BAA0B;YACvC,kBAAkB,EAAE,iCAAiC;YACrD,eAAe,EAAE,EAAE;YACnB,aAAa,EAAE,wBAAwB,CAAC,KAAK;SAChD,CAAC;IACN,CAAC;IAEkB,kBAAkB,CACjC,cAA8B;QAE9B,OAAO;YACH,cAAc;SACjB,CAAC;IACN,CAAC;IAES,mBAAmB,CAAC,OAAgB;QAC1C,IAAI,OAAO,YAAY,WAAW,EAAE;YAChC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE;gBACvB,MAAM,KAAK,CAAC,iBAAiB,CAAC,CAAC;aAClC;YACD,OAAO,IAAI,iBAAiB,CACxB,OAAO,CAAC,YAAY,EACpB,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,IAAI,CACf,CAAC;SACL;QACD,IAAI,OAAO,YAAY,cAAc,EAAE;YACnC,OAAO,IAAI,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SACjD;QACD,+EAA+E;QAC/E,mEAAmE;QACnE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAC3C,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"}
@@ -0,0 +1,14 @@
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
+ import type { MappingKeyType } from '../../enum-base/types';
5
+ declare const iconValidityFlagNames: readonly ["invalidMappingKeyValueForType", "unsupportedMappingType", "duplicateMappingKey", "missingKeyValue", "missingTextValue", "invalidIconName"];
6
+ /**
7
+ * Validator for TableColumnIcon
8
+ */
9
+ export declare class TableColumnIconValidator extends TableColumnEnumBaseValidator<typeof iconValidityFlagNames> {
10
+ constructor(columnInternals: ColumnInternals<unknown>);
11
+ validate(mappings: Mapping[], keyType: MappingKeyType): void;
12
+ private validateIconNames;
13
+ }
14
+ export {};
@@ -0,0 +1,30 @@
1
+ import { MappingIcon } from '../../../mapping/icon';
2
+ import { MappingSpinner } from '../../../mapping/spinner';
3
+ import { TableColumnEnumBaseValidator, enumBaseValidityFlagNames } from '../../enum-base/models/table-column-enum-base-validator';
4
+ const iconValidityFlagNames = [
5
+ ...enumBaseValidityFlagNames,
6
+ 'invalidIconName'
7
+ ];
8
+ /**
9
+ * Validator for TableColumnIcon
10
+ */
11
+ export class TableColumnIconValidator extends TableColumnEnumBaseValidator {
12
+ constructor(columnInternals) {
13
+ super(columnInternals, iconValidityFlagNames, [
14
+ MappingIcon,
15
+ MappingSpinner
16
+ ]);
17
+ }
18
+ validate(mappings, keyType) {
19
+ super.validate(mappings, keyType);
20
+ this.validateIconNames(mappings);
21
+ }
22
+ validateIconNames(mappings) {
23
+ const isMappingIcon = (mapping) => mapping instanceof MappingIcon;
24
+ const invalid = mappings
25
+ .filter(isMappingIcon)
26
+ .some(mappingIcon => mappingIcon.resolvedIcon === undefined);
27
+ this.setConditionValue('invalidIconName', invalid);
28
+ }
29
+ }
30
+ //# sourceMappingURL=table-column-icon-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"table-column-icon-validator.js","sourceRoot":"","sources":["../../../../../src/table-column/icon/models/table-column-icon-validator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EACH,4BAA4B,EAC5B,yBAAyB,EAC5B,MAAM,yDAAyD,CAAC;AAGjE,MAAM,qBAAqB,GAAG;IAC1B,GAAG,yBAAyB;IAC5B,iBAAiB;CACX,CAAC;AAEX;;GAEG;AACH,MAAM,OAAO,wBAAyB,SAAQ,4BAE7C;IACG,YAAmB,eAAyC;QACxD,KAAK,CAAC,eAAe,EAAE,qBAAqB,EAAE;YAC1C,WAAW;YACX,cAAc;SACjB,CAAC,CAAC;IACP,CAAC;IAEe,QAAQ,CACpB,QAAmB,EACnB,OAAuB;QAEvB,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAClC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAEO,iBAAiB,CAAC,QAAmB;QACzC,MAAM,aAAa,GAAG,CAAC,OAAgB,EAA0B,EAAE,CAAC,OAAO,YAAY,WAAW,CAAC;QACnG,MAAM,OAAO,GAAG,QAAQ;aACnB,MAAM,CAAC,aAAa,CAAC;aACrB,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC;QACjE,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;CACJ"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ni/nimble-components",
3
- "version": "20.1.12",
3
+ "version": "20.1.14",
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",