@ni/nimble-components 15.5.5 → 15.5.6

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,5 +1,5 @@
1
1
  import { FoundationElement } from '@microsoft/fast-foundation';
2
- import { WaferMapColorsScale, WaferMapColorsScaleMode, WaferMapDie, WaferMapOrientation, WaferMapQuadrant } from './types';
2
+ import { WaferMapColorScale, WaferMapColorScaleMode, WaferMapDie, WaferMapOrientation, WaferMapQuadrant } from './types';
3
3
  declare global {
4
4
  interface HTMLElementTagNameMap {
5
5
  'nimble-wafer-map': WaferMap;
@@ -14,9 +14,24 @@ export declare class WaferMap extends FoundationElement {
14
14
  maxCharacters: number;
15
15
  dieLabelsHidden: boolean;
16
16
  dieLabelsSuffix: string;
17
- colorsScaleMode: WaferMapColorsScaleMode;
17
+ colorScaleMode: WaferMapColorScaleMode;
18
18
  highlightedValues: string[];
19
19
  dies: WaferMapDie[];
20
- colorScale: WaferMapColorsScale;
21
- private readonly dataManager;
20
+ colorScale: WaferMapColorScale;
21
+ private renderQueued;
22
+ private dataManager;
23
+ /**
24
+ * @internal
25
+ */
26
+ render(): void;
27
+ private quadrantChanged;
28
+ private orientationChanged;
29
+ private maxCharactersChanged;
30
+ private dieLabelsHiddenChanged;
31
+ private dieLabelsSuffixChanged;
32
+ private colorScaleModeChanged;
33
+ private highlightedValuesChanged;
34
+ private diesChanged;
35
+ private colorScaleChanged;
36
+ private queueRender;
22
37
  }
@@ -1,9 +1,10 @@
1
1
  import { __decorate } from "tslib";
2
- import { attr, nullableNumberConverter, observable } from '@microsoft/fast-element';
2
+ import { attr, DOM, nullableNumberConverter, observable } from '@microsoft/fast-element';
3
3
  import { DesignSystem, FoundationElement } from '@microsoft/fast-foundation';
4
4
  import { template } from './template';
5
5
  import { styles } from './styles';
6
- import { WaferMapColorsScaleMode, WaferMapOrientation, WaferMapQuadrant } from './types';
6
+ import { WaferMapColorScaleMode, WaferMapOrientation, WaferMapQuadrant } from './types';
7
+ import { DataManager } from './modules/data-manager';
7
8
  /**
8
9
  * A nimble-styled WaferMap
9
10
  */
@@ -15,13 +16,54 @@ export class WaferMap extends FoundationElement {
15
16
  this.maxCharacters = 4;
16
17
  this.dieLabelsHidden = false;
17
18
  this.dieLabelsSuffix = '';
18
- this.colorsScaleMode = WaferMapColorsScaleMode.linear;
19
+ this.colorScaleMode = WaferMapColorScaleMode.linear;
19
20
  this.highlightedValues = [];
20
21
  this.dies = [];
21
22
  this.colorScale = {
22
23
  colors: [],
23
24
  values: []
24
25
  };
26
+ this.renderQueued = false;
27
+ }
28
+ /**
29
+ * @internal
30
+ */
31
+ render() {
32
+ this.renderQueued = false;
33
+ this.dataManager = new DataManager(this.dies, this.quadrant, { width: this.offsetWidth, height: this.offsetHeight }, this.colorScale, this.highlightedValues, this.colorScaleMode, this.dieLabelsHidden, this.dieLabelsSuffix, this.maxCharacters);
34
+ }
35
+ quadrantChanged() {
36
+ this.queueRender();
37
+ }
38
+ orientationChanged() {
39
+ this.queueRender();
40
+ }
41
+ maxCharactersChanged() {
42
+ this.queueRender();
43
+ }
44
+ dieLabelsHiddenChanged() {
45
+ this.queueRender();
46
+ }
47
+ dieLabelsSuffixChanged() {
48
+ this.queueRender();
49
+ }
50
+ colorScaleModeChanged() {
51
+ this.queueRender();
52
+ }
53
+ highlightedValuesChanged() {
54
+ this.queueRender();
55
+ }
56
+ diesChanged() {
57
+ this.queueRender();
58
+ }
59
+ colorScaleChanged() {
60
+ this.queueRender();
61
+ }
62
+ queueRender() {
63
+ if (!this.renderQueued) {
64
+ this.renderQueued = true;
65
+ DOM.queueUpdate(() => this.render());
66
+ }
25
67
  }
26
68
  }
27
69
  __decorate([
@@ -49,9 +91,9 @@ __decorate([
49
91
  ], WaferMap.prototype, "dieLabelsSuffix", void 0);
50
92
  __decorate([
51
93
  attr({
52
- attribute: 'colors-scale-mode'
94
+ attribute: 'color-scale-mode'
53
95
  })
54
- ], WaferMap.prototype, "colorsScaleMode", void 0);
96
+ ], WaferMap.prototype, "colorScaleMode", void 0);
55
97
  __decorate([
56
98
  observable
57
99
  ], WaferMap.prototype, "highlightedValues", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/wafer-map/index.ts"],"names":[],"mappings":";AAAA,OAAO,EACH,IAAI,EACJ,uBAAuB,EACvB,UAAU,EACb,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAEH,uBAAuB,EAEvB,mBAAmB,EACnB,gBAAgB,EACnB,MAAM,SAAS,CAAC;AASjB;;GAEG;AACH,MAAM,OAAO,QAAS,SAAQ,iBAAiB;IAA/C;;QAEW,aAAQ,GAAqB,gBAAgB,CAAC,OAAO,CAAC;QAGtD,gBAAW,GAAwB,mBAAmB,CAAC,GAAG,CAAC;QAM3D,kBAAa,GAAG,CAAC,CAAC;QAMlB,oBAAe,GAAG,KAAK,CAAC;QAKxB,oBAAe,GAAG,EAAE,CAAC;QAKrB,oBAAe,GAA4B,uBAAuB,CAAC,MAAM,CAAC;QAE9D,sBAAiB,GAAa,EAAE,CAAC;QACjC,SAAI,GAAkB,EAAE,CAAC;QACzB,eAAU,GAAwB;YACjD,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;SACb,CAAC;IAGN,CAAC;CAAA;AAnCG;IADC,IAAI;0CACwD;AAG7D;IADC,IAAI;6CAC6D;AAMlE;IAJC,IAAI,CAAC;QACF,SAAS,EAAE,gBAAgB;QAC3B,SAAS,EAAE,uBAAuB;KACrC,CAAC;+CACuB;AAMzB;IAJC,IAAI,CAAC;QACF,SAAS,EAAE,mBAAmB;QAC9B,IAAI,EAAE,SAAS;KAClB,CAAC;iDAC6B;AAK/B;IAHC,IAAI,CAAC;QACF,SAAS,EAAE,mBAAmB;KACjC,CAAC;iDAC0B;AAK5B;IAHC,IAAI,CAAC;QACF,SAAS,EAAE,mBAAmB;KACjC,CAAC;iDAC+E;AAErE;IAAX,UAAU;mDAAyC;AACxC;IAAX,UAAU;sCAAiC;AAChC;IAAX,UAAU;4CAGT;AAKN,MAAM,cAAc,GAAG,QAAQ,CAAC,OAAO,CAAC;IACpC,QAAQ,EAAE,WAAW;IACrB,QAAQ;IACR,MAAM;CACT,CAAC,CAAC;AAEH,YAAY,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/wafer-map/index.ts"],"names":[],"mappings":";AAAA,OAAO,EACH,IAAI,EACJ,GAAG,EACH,uBAAuB,EACvB,UAAU,EACb,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAEH,sBAAsB,EAEtB,mBAAmB,EACnB,gBAAgB,EACnB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAQrD;;GAEG;AACH,MAAM,OAAO,QAAS,SAAQ,iBAAiB;IAA/C;;QAEW,aAAQ,GAAqB,gBAAgB,CAAC,OAAO,CAAC;QAGtD,gBAAW,GAAwB,mBAAmB,CAAC,GAAG,CAAC;QAM3D,kBAAa,GAAG,CAAC,CAAC;QAMlB,oBAAe,GAAG,KAAK,CAAC;QAKxB,oBAAe,GAAG,EAAE,CAAC;QAKrB,mBAAc,GAA2B,sBAAsB,CAAC,MAAM,CAAC;QAE3D,sBAAiB,GAAa,EAAE,CAAC;QACjC,SAAI,GAAkB,EAAE,CAAC;QACzB,eAAU,GAAuB;YAChD,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;SACb,CAAC;QAEM,iBAAY,GAAG,KAAK,CAAC;IAiEjC,CAAC;IA7DG;;OAEG;IACI,MAAM;QACT,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAE1B,IAAI,CAAC,WAAW,GAAG,IAAI,WAAW,CAC9B,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,QAAQ,EACb,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,EACtD,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,aAAa,CACrB,CAAC;IACN,CAAC;IAEO,eAAe;QACnB,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAEO,kBAAkB;QACtB,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAEO,oBAAoB;QACxB,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAEO,sBAAsB;QAC1B,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAEO,sBAAsB;QAC1B,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAEO,qBAAqB;QACzB,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAEO,wBAAwB;QAC5B,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAEO,WAAW;QACf,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAEO,iBAAiB;QACrB,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAEO,WAAW;QACf,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACpB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YACzB,GAAG,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;SACxC;IACL,CAAC;CACJ;AAnGG;IADC,IAAI;0CACwD;AAG7D;IADC,IAAI;6CAC6D;AAMlE;IAJC,IAAI,CAAC;QACF,SAAS,EAAE,gBAAgB;QAC3B,SAAS,EAAE,uBAAuB;KACrC,CAAC;+CACuB;AAMzB;IAJC,IAAI,CAAC;QACF,SAAS,EAAE,mBAAmB;QAC9B,IAAI,EAAE,SAAS;KAClB,CAAC;iDAC6B;AAK/B;IAHC,IAAI,CAAC;QACF,SAAS,EAAE,mBAAmB;KACjC,CAAC;iDAC0B;AAK5B;IAHC,IAAI,CAAC;QACF,SAAS,EAAE,kBAAkB;KAChC,CAAC;gDAC4E;AAElE;IAAX,UAAU;mDAAyC;AACxC;IAAX,UAAU;sCAAiC;AAChC;IAAX,UAAU;4CAGT;AAqEN,MAAM,cAAc,GAAG,QAAQ,CAAC,OAAO,CAAC;IACpC,QAAQ,EAAE,WAAW;IACrB,QAAQ;IACR,MAAM;CACT,CAAC,CAAC;AAEH,YAAY,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { ScaleLinear } from 'd3-scale';
2
- import type { Dimensions, Margin, WaferMapQuadrant, DieRenderInfo, WaferMapColorsScale, WaferMapDie, WaferMapColorsScaleMode } from '../types';
2
+ import type { Dimensions, Margin, WaferMapQuadrant, DieRenderInfo, WaferMapColorScale, WaferMapDie, WaferMapColorScaleMode } from '../types';
3
3
  /**
4
4
  * Data Manager uses Computations and Prerendering modules in order and exposes the results
5
5
  */
@@ -18,5 +18,5 @@ export declare class DataManager {
18
18
  };
19
19
  private readonly computations;
20
20
  private readonly prerendering;
21
- constructor(dies: Readonly<Readonly<WaferMapDie>[]>, axisLocation: Readonly<WaferMapQuadrant>, canvasDimensions: Readonly<Dimensions>, colorsScale: Readonly<WaferMapColorsScale>, highlightedValues: Readonly<string[]>, colorsScaleMode: Readonly<WaferMapColorsScaleMode>, dieLabelsHidden: Readonly<boolean>, dieLabelsSuffix: Readonly<string>, maxCharacters: Readonly<number>);
21
+ constructor(dies: Readonly<Readonly<WaferMapDie>[]>, axisLocation: Readonly<WaferMapQuadrant>, canvasDimensions: Readonly<Dimensions>, colorScale: Readonly<WaferMapColorScale>, highlightedValues: Readonly<string[]>, colorScaleMode: Readonly<WaferMapColorScaleMode>, dieLabelsHidden: Readonly<boolean>, dieLabelsSuffix: Readonly<string>, maxCharacters: Readonly<number>);
22
22
  }
@@ -4,9 +4,9 @@ import { Prerendering } from './prerendering';
4
4
  * Data Manager uses Computations and Prerendering modules in order and exposes the results
5
5
  */
6
6
  export class DataManager {
7
- constructor(dies, axisLocation, canvasDimensions, colorsScale, highlightedValues, colorsScaleMode, dieLabelsHidden, dieLabelsSuffix, maxCharacters) {
7
+ constructor(dies, axisLocation, canvasDimensions, colorScale, highlightedValues, colorScaleMode, dieLabelsHidden, dieLabelsSuffix, maxCharacters) {
8
8
  this.computations = new Computations(dies, axisLocation, canvasDimensions);
9
- this.prerendering = new Prerendering(dies, colorsScale, highlightedValues, this.computations.horizontalScale, this.computations.verticalScale, colorsScaleMode, dieLabelsHidden, dieLabelsSuffix, maxCharacters, this.computations.dieDimensions, this.computations.margin);
9
+ this.prerendering = new Prerendering(dies, colorScale, highlightedValues, this.computations.horizontalScale, this.computations.verticalScale, colorScaleMode, dieLabelsHidden, dieLabelsSuffix, maxCharacters, this.computations.dieDimensions, this.computations.margin);
10
10
  }
11
11
  get containerDimensions() {
12
12
  return this.computations.containerDimensions;
@@ -1 +1 @@
1
- {"version":3,"file":"data-manager.js","sourceRoot":"","sources":["../../../../src/wafer-map/modules/data-manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAW9C;;GAEG;AACH,MAAM,OAAO,WAAW;IA2CpB,YACI,IAAuC,EACvC,YAAwC,EACxC,gBAAsC,EACtC,WAA0C,EAC1C,iBAAqC,EACrC,eAAkD,EAClD,eAAkC,EAClC,eAAiC,EACjC,aAA+B;QAE/B,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,CAChC,IAAI,EACJ,YAAY,EACZ,gBAAgB,CACnB,CAAC;QAEF,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,CAChC,IAAI,EACJ,WAAW,EACX,iBAAiB,EACjB,IAAI,CAAC,YAAY,CAAC,eAAe,EACjC,IAAI,CAAC,YAAY,CAAC,aAAa,EAC/B,eAAe,EACf,eAAe,EACf,eAAe,EACf,aAAa,EACb,IAAI,CAAC,YAAY,CAAC,aAAa,EAC/B,IAAI,CAAC,YAAY,CAAC,MAAM,CAC3B,CAAC;IACN,CAAC;IAxED,IAAW,mBAAmB;QAC1B,OAAO,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC;IACjD,CAAC;IAED,IAAW,aAAa;QACpB,OAAO,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC;IAC3C,CAAC;IAED,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;IACpC,CAAC;IAED,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;IACpC,CAAC;IAED,IAAW,eAAe;QACtB,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC;IAC7C,CAAC;IAED,IAAW,aAAa;QACpB,OAAO,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC;IAC3C,CAAC;IAED,IAAW,cAAc;QACrB,OAAO,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC;IAC5C,CAAC;IAED,IAAW,cAAc;QACrB,OAAO,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC;IAC5C,CAAC;IAED,IAAW,kBAAkB;QACzB,OAAO;YACH,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,KAAK,GAAG,CAAC;YAClD,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC;SACtD,CAAC;IACN,CAAC;CAoCJ"}
1
+ {"version":3,"file":"data-manager.js","sourceRoot":"","sources":["../../../../src/wafer-map/modules/data-manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAW9C;;GAEG;AACH,MAAM,OAAO,WAAW;IA2CpB,YACI,IAAuC,EACvC,YAAwC,EACxC,gBAAsC,EACtC,UAAwC,EACxC,iBAAqC,EACrC,cAAgD,EAChD,eAAkC,EAClC,eAAiC,EACjC,aAA+B;QAE/B,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,CAChC,IAAI,EACJ,YAAY,EACZ,gBAAgB,CACnB,CAAC;QAEF,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,CAChC,IAAI,EACJ,UAAU,EACV,iBAAiB,EACjB,IAAI,CAAC,YAAY,CAAC,eAAe,EACjC,IAAI,CAAC,YAAY,CAAC,aAAa,EAC/B,cAAc,EACd,eAAe,EACf,eAAe,EACf,aAAa,EACb,IAAI,CAAC,YAAY,CAAC,aAAa,EAC/B,IAAI,CAAC,YAAY,CAAC,MAAM,CAC3B,CAAC;IACN,CAAC;IAxED,IAAW,mBAAmB;QAC1B,OAAO,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC;IACjD,CAAC;IAED,IAAW,aAAa;QACpB,OAAO,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC;IAC3C,CAAC;IAED,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;IACpC,CAAC;IAED,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;IACpC,CAAC;IAED,IAAW,eAAe;QACtB,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC;IAC7C,CAAC;IAED,IAAW,aAAa;QACpB,OAAO,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC;IAC3C,CAAC;IAED,IAAW,cAAc;QACrB,OAAO,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC;IAC5C,CAAC;IAED,IAAW,cAAc;QACrB,OAAO,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC;IAC5C,CAAC;IAED,IAAW,kBAAkB;QACzB,OAAO;YACH,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,KAAK,GAAG,CAAC;YAClD,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC;SACtD,CAAC;IACN,CAAC;CAoCJ"}
@@ -1,20 +1,20 @@
1
1
  import { ScaleLinear, ScaleOrdinal } from 'd3-scale';
2
- import { WaferMapColorsScaleMode } from '../types';
3
- import type { Dimensions, Margin, DieRenderInfo, WaferMapDie, WaferMapColorsScale } from '../types';
2
+ import { WaferMapColorScaleMode } from '../types';
3
+ import type { Dimensions, Margin, DieRenderInfo, WaferMapDie, WaferMapColorScale } from '../types';
4
4
  /**
5
5
  * Prerendering prepares render-ready dies data to be used by the rendering module
6
6
  */
7
7
  export declare class Prerendering {
8
8
  readonly labelsFontSize: number;
9
9
  readonly diesRenderInfo: DieRenderInfo[];
10
- readonly colorScale: ScaleOrdinal<string, string> | ScaleLinear<string, string>;
10
+ readonly d3ColorScale: ScaleOrdinal<string, string> | ScaleLinear<string, string>;
11
11
  private readonly fontSizeFactor;
12
12
  private readonly nonHighlightedOpacity;
13
13
  private readonly emptyDieColor;
14
14
  private readonly nanDieColor;
15
- constructor(dies: Readonly<Readonly<WaferMapDie>[]>, colorsScale: Readonly<WaferMapColorsScale>, highlightedValues: Readonly<string[]>, horizontalScale: ScaleLinear<number, number>, verticalScale: ScaleLinear<number, number>, colorsScaleMode: Readonly<WaferMapColorsScaleMode>, dieLabelsHidden: Readonly<boolean>, dieLabelsSuffix: Readonly<string>, maxCharacters: Readonly<number>, dieDimensions: Readonly<Dimensions>, margin: Readonly<Margin>);
15
+ constructor(dies: Readonly<Readonly<WaferMapDie>[]>, colorScale: Readonly<WaferMapColorScale>, highlightedValues: Readonly<string[]>, horizontalScale: ScaleLinear<number, number>, verticalScale: ScaleLinear<number, number>, colorScaleMode: Readonly<WaferMapColorScaleMode>, dieLabelsHidden: Readonly<boolean>, dieLabelsSuffix: Readonly<string>, maxCharacters: Readonly<number>, dieDimensions: Readonly<Dimensions>, margin: Readonly<Margin>);
16
16
  private calculateLabelsFontSize;
17
- private createColorScale;
17
+ private createD3ColorScale;
18
18
  private dieHasData;
19
19
  private buildLabel;
20
20
  private calculateOpacity;
@@ -1,22 +1,22 @@
1
1
  import { scaleLinear, scaleOrdinal } from 'd3-scale';
2
- import { WaferMapColorsScaleMode } from '../types';
2
+ import { WaferMapColorScaleMode } from '../types';
3
3
  /**
4
4
  * Prerendering prepares render-ready dies data to be used by the rendering module
5
5
  */
6
6
  export class Prerendering {
7
- constructor(dies, colorsScale, highlightedValues, horizontalScale, verticalScale, colorsScaleMode, dieLabelsHidden, dieLabelsSuffix, maxCharacters, dieDimensions, margin) {
7
+ constructor(dies, colorScale, highlightedValues, horizontalScale, verticalScale, colorScaleMode, dieLabelsHidden, dieLabelsSuffix, maxCharacters, dieDimensions, margin) {
8
8
  this.fontSizeFactor = 0.8;
9
9
  this.nonHighlightedOpacity = 0.3;
10
10
  this.emptyDieColor = '#DADFEC';
11
11
  this.nanDieColor = '#7a7a7a';
12
- this.colorScale = this.createColorScale(colorsScale, colorsScaleMode);
12
+ this.d3ColorScale = this.createD3ColorScale(colorScale, colorScaleMode);
13
13
  this.labelsFontSize = this.calculateLabelsFontSize(dieDimensions, maxCharacters);
14
14
  this.diesRenderInfo = [];
15
15
  for (const die of dies) {
16
16
  this.diesRenderInfo.push({
17
17
  x: horizontalScale(die.x) + margin.right,
18
18
  y: verticalScale(die.y) + margin.top,
19
- fillStyle: this.calculateFillStyle(die, colorsScaleMode),
19
+ fillStyle: this.calculateFillStyle(die, colorScaleMode),
20
20
  opacity: this.calculateOpacity(die.value, highlightedValues),
21
21
  text: this.buildLabel(die.value, maxCharacters, dieLabelsHidden, dieLabelsSuffix)
22
22
  });
@@ -26,15 +26,15 @@ export class Prerendering {
26
26
  return Math.min(dieDimensions.height, (dieDimensions.width / (Math.max(2, maxCharacters) * 0.5))
27
27
  * this.fontSizeFactor);
28
28
  }
29
- createColorScale(colorsScale, colorsScaleMode) {
30
- if (this.isColorScaleLinear(colorsScaleMode)) {
29
+ createD3ColorScale(colorScale, colorScaleMode) {
30
+ if (this.isColorScaleLinear(colorScaleMode)) {
31
31
  return scaleLinear()
32
- .domain(colorsScale.values.map(item => +item))
33
- .range(colorsScale.colors);
32
+ .domain(colorScale.values.map(item => +item))
33
+ .range(colorScale.colors);
34
34
  }
35
35
  return scaleOrdinal()
36
- .domain(colorsScale.values)
37
- .range(colorsScale.colors);
36
+ .domain(colorScale.values)
37
+ .range(colorScale.colors);
38
38
  }
39
39
  dieHasData(dieData) {
40
40
  return dieData !== null && dieData !== undefined && dieData !== '';
@@ -55,24 +55,24 @@ export class Prerendering {
55
55
  ? this.nonHighlightedOpacity
56
56
  : 0;
57
57
  }
58
- isColorScaleLinear(colorsScaleMode) {
59
- return colorsScaleMode === WaferMapColorsScaleMode.linear;
58
+ isColorScaleLinear(colorScaleMode) {
59
+ return colorScaleMode === WaferMapColorScaleMode.linear;
60
60
  }
61
- isColorScaleOrdinal(colorsScaleMode) {
62
- return colorsScaleMode === WaferMapColorsScaleMode.ordinal;
61
+ isColorScaleOrdinal(colorScaleMode) {
62
+ return colorScaleMode === WaferMapColorScaleMode.ordinal;
63
63
  }
64
- calculateFillStyle(die, colorsScaleMode) {
64
+ calculateFillStyle(die, colorScaleMode) {
65
65
  if (!this.dieHasData(die.value)) {
66
66
  return this.emptyDieColor;
67
67
  }
68
68
  if (isNaN(+die.value)) {
69
69
  return this.nanDieColor;
70
70
  }
71
- if (this.isColorScaleLinear(colorsScaleMode)) {
72
- return this.colorScale(+die.value);
71
+ if (this.isColorScaleLinear(colorScaleMode)) {
72
+ return this.d3ColorScale(+die.value);
73
73
  }
74
- if (this.isColorScaleOrdinal(colorsScaleMode)) {
75
- return this.colorScale(die.value);
74
+ if (this.isColorScaleOrdinal(colorScaleMode)) {
75
+ return this.d3ColorScale(die.value);
76
76
  }
77
77
  return this.emptyDieColor;
78
78
  }
@@ -1 +1 @@
1
- {"version":3,"file":"prerendering.js","sourceRoot":"","sources":["../../../../src/wafer-map/modules/prerendering.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prerendering.js","sourceRoot":"","sources":["../../../../src/wafer-map/modules/prerendering.ts"],"names":[],"mappings":"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"}
@@ -12,17 +12,17 @@ export declare const WaferMapOrientation: {
12
12
  readonly right: "right";
13
13
  };
14
14
  export declare type WaferMapOrientation = typeof WaferMapOrientation[keyof typeof WaferMapOrientation];
15
- export declare const WaferMapColorsScaleMode: {
15
+ export declare const WaferMapColorScaleMode: {
16
16
  readonly linear: "linear";
17
17
  readonly ordinal: "ordinal";
18
18
  };
19
- export declare type WaferMapColorsScaleMode = typeof WaferMapColorsScaleMode[keyof typeof WaferMapColorsScaleMode];
19
+ export declare type WaferMapColorScaleMode = typeof WaferMapColorScaleMode[keyof typeof WaferMapColorScaleMode];
20
20
  export interface WaferMapDie {
21
21
  value: string;
22
22
  x: number;
23
23
  y: number;
24
24
  }
25
- export interface WaferMapColorsScale {
25
+ export interface WaferMapColorScale {
26
26
  colors: string[];
27
27
  values: string[];
28
28
  }
@@ -10,7 +10,7 @@ export const WaferMapOrientation = {
10
10
  left: 'left',
11
11
  right: 'right'
12
12
  };
13
- export const WaferMapColorsScaleMode = {
13
+ export const WaferMapColorScaleMode = {
14
14
  linear: 'linear',
15
15
  ordinal: 'ordinal'
16
16
  };
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/wafer-map/types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC5B,UAAU,EAAE,aAAa;IACzB,WAAW,EAAE,cAAc;IAC3B,OAAO,EAAE,UAAU;IACnB,QAAQ,EAAE,WAAW;CACf,CAAC;AAKX,MAAM,CAAC,MAAM,mBAAmB,GAAG;IAC/B,GAAG,EAAE,KAAK;IACV,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;CACR,CAAC;AAKX,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACnC,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;CACZ,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/wafer-map/types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC5B,UAAU,EAAE,aAAa;IACzB,WAAW,EAAE,cAAc;IAC3B,OAAO,EAAE,UAAU;IACnB,QAAQ,EAAE,WAAW;CACf,CAAC;AAKX,MAAM,CAAC,MAAM,mBAAmB,GAAG;IAC/B,GAAG,EAAE,KAAK;IACV,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;CACR,CAAC;AAKX,MAAM,CAAC,MAAM,sBAAsB,GAAG;IAClC,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;CACZ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ni/nimble-components",
3
- "version": "15.5.5",
3
+ "version": "15.5.6",
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",