@ni/nimble-components 20.0.1 → 20.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/all-components-bundle.js +290 -112
- package/dist/all-components-bundle.js.map +1 -1
- package/dist/all-components-bundle.min.js +1501 -1500
- package/dist/all-components-bundle.min.js.map +1 -1
- package/dist/esm/anchor-tabs/index.d.ts +1 -0
- package/dist/esm/anchor-tabs/index.js +5 -2
- package/dist/esm/anchor-tabs/index.js.map +1 -1
- package/dist/esm/src/anchor-tabs/index.d.ts +1 -0
- package/dist/esm/src/wafer-map/index.d.ts +16 -9
- package/dist/esm/src/wafer-map/modules/computations.d.ts +19 -8
- package/dist/esm/src/wafer-map/modules/data-manager.d.ts +8 -1
- package/dist/esm/src/wafer-map/modules/event-coordinator.d.ts +1 -1
- package/dist/esm/src/wafer-map/modules/hover-handler.d.ts +1 -1
- package/dist/esm/src/wafer-map/modules/prerendering.d.ts +13 -6
- package/dist/esm/src/wafer-map/modules/rendering.d.ts +3 -3
- package/dist/esm/src/wafer-map/modules/wafer-map-update-tracker.d.ts +24 -0
- package/dist/esm/src/wafer-map/modules/zoom-handler.d.ts +2 -2
- package/dist/esm/wafer-map/index.d.ts +16 -9
- package/dist/esm/wafer-map/index.js +67 -41
- package/dist/esm/wafer-map/index.js.map +1 -1
- package/dist/esm/wafer-map/modules/computations.d.ts +19 -8
- package/dist/esm/wafer-map/modules/computations.js +44 -12
- package/dist/esm/wafer-map/modules/computations.js.map +1 -1
- package/dist/esm/wafer-map/modules/data-manager.d.ts +8 -1
- package/dist/esm/wafer-map/modules/data-manager.js +24 -2
- package/dist/esm/wafer-map/modules/data-manager.js.map +1 -1
- package/dist/esm/wafer-map/modules/event-coordinator.d.ts +1 -1
- package/dist/esm/wafer-map/modules/event-coordinator.js +8 -8
- package/dist/esm/wafer-map/modules/event-coordinator.js.map +1 -1
- package/dist/esm/wafer-map/modules/hover-handler.d.ts +1 -1
- package/dist/esm/wafer-map/modules/hover-handler.js +9 -9
- package/dist/esm/wafer-map/modules/hover-handler.js.map +1 -1
- package/dist/esm/wafer-map/modules/prerendering.d.ts +13 -6
- package/dist/esm/wafer-map/modules/prerendering.js +29 -8
- package/dist/esm/wafer-map/modules/prerendering.js.map +1 -1
- package/dist/esm/wafer-map/modules/rendering.d.ts +3 -3
- package/dist/esm/wafer-map/modules/rendering.js +15 -13
- package/dist/esm/wafer-map/modules/rendering.js.map +1 -1
- package/dist/esm/wafer-map/modules/wafer-map-update-tracker.d.ts +24 -0
- package/dist/esm/wafer-map/modules/wafer-map-update-tracker.js +77 -0
- package/dist/esm/wafer-map/modules/wafer-map-update-tracker.js.map +1 -0
- package/dist/esm/wafer-map/modules/zoom-handler.d.ts +2 -2
- package/dist/esm/wafer-map/modules/zoom-handler.js +13 -15
- package/dist/esm/wafer-map/modules/zoom-handler.js.map +1 -1
- package/package.json +1 -1
|
@@ -45,6 +45,7 @@ export declare class AnchorTabs extends FoundationElement {
|
|
|
45
45
|
*/
|
|
46
46
|
connectedCallback(): void;
|
|
47
47
|
private readonly isDisabledElement;
|
|
48
|
+
private readonly isHiddenElement;
|
|
48
49
|
private readonly isFocusableElement;
|
|
49
50
|
private readonly setTabs;
|
|
50
51
|
private getTabIds;
|
|
@@ -24,8 +24,11 @@ export class AnchorTabs extends FoundationElement {
|
|
|
24
24
|
this.isDisabledElement = (el) => {
|
|
25
25
|
return el.getAttribute('aria-disabled') === 'true';
|
|
26
26
|
};
|
|
27
|
+
this.isHiddenElement = (el) => {
|
|
28
|
+
return el.hasAttribute('hidden');
|
|
29
|
+
};
|
|
27
30
|
this.isFocusableElement = (el) => {
|
|
28
|
-
return !this.isDisabledElement(el);
|
|
31
|
+
return !this.isDisabledElement(el) && !this.isHiddenElement(el);
|
|
29
32
|
};
|
|
30
33
|
this.setTabs = () => {
|
|
31
34
|
const gridHorizontalProperty = 'gridColumn';
|
|
@@ -184,7 +187,7 @@ export class AnchorTabs extends FoundationElement {
|
|
|
184
187
|
});
|
|
185
188
|
}
|
|
186
189
|
focusFirstOrLast(focusLast) {
|
|
187
|
-
const focusableTabs = this.tabs.filter(t =>
|
|
190
|
+
const focusableTabs = this.tabs.filter(t => this.isFocusableElement(t));
|
|
188
191
|
const focusableIndex = focusLast ? focusableTabs.length - 1 : 0;
|
|
189
192
|
const index = this.tabs.indexOf(focusableTabs[focusableIndex]);
|
|
190
193
|
if (index > -1) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/anchor-tabs/index.ts"],"names":[],"mappings":";AAAA,YAAY;AACZ,2IAA2I;AAC3I,iFAAiF;AACjF,2BAA2B;AAC3B,2EAA2E;AAC3E,gGAAgG;AAChG,6CAA6C;AAC7C,iDAAiD;AACjD,yBAAyB;AACzB,iCAAiC;AACjC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EACH,YAAY,EACZ,aAAa,EACb,MAAM,EACN,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,QAAQ,EACX,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACH,YAAY,EACZ,QAAQ,EACR,WAAW,EAGX,iBAAiB,EACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAWtC;;GAEG;AACH,MAAM,OAAO,UAAW,SAAQ,iBAAiB;IAAjD;;QA6BY,WAAM,GAAa,EAAE,CAAC;QA8Bb,sBAAiB,GAAG,CAAC,EAAW,EAAqB,EAAE;YACpE,OAAO,EAAE,CAAC,YAAY,CAAC,eAAe,CAAC,KAAK,MAAM,CAAC;QACvD,CAAC,CAAC;QAEe,uBAAkB,GAAG,CAAC,EAAW,EAAqB,EAAE;YACrE,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/anchor-tabs/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -45,6 +45,7 @@ export declare class AnchorTabs extends FoundationElement {
|
|
|
45
45
|
*/
|
|
46
46
|
connectedCallback(): void;
|
|
47
47
|
private readonly isDisabledElement;
|
|
48
|
+
private readonly isHiddenElement;
|
|
48
49
|
private readonly isFocusableElement;
|
|
49
50
|
private readonly setTabs;
|
|
50
51
|
private getTabIds;
|
|
@@ -3,6 +3,7 @@ import { ZoomTransform } from 'd3-zoom';
|
|
|
3
3
|
import { DataManager } from './modules/data-manager';
|
|
4
4
|
import { RenderingModule } from './modules/rendering';
|
|
5
5
|
import { HoverDieOpacity, WaferMapColorScale, WaferMapColorScaleMode, WaferMapDie, WaferMapOrientation, WaferMapQuadrant } from './types';
|
|
6
|
+
import { WaferMapUpdateTracker } from './modules/wafer-map-update-tracker';
|
|
6
7
|
declare global {
|
|
7
8
|
interface HTMLElementTagNameMap {
|
|
8
9
|
'nimble-wafer-map': WaferMap;
|
|
@@ -12,6 +13,11 @@ declare global {
|
|
|
12
13
|
* A nimble-styled WaferMap
|
|
13
14
|
*/
|
|
14
15
|
export declare class WaferMap extends FoundationElement {
|
|
16
|
+
/**
|
|
17
|
+
* @internal
|
|
18
|
+
* needs to be initialized before the properties trigger changes
|
|
19
|
+
*/
|
|
20
|
+
readonly waferMapUpdateTracker: WaferMapUpdateTracker;
|
|
15
21
|
quadrant: WaferMapQuadrant;
|
|
16
22
|
orientation: WaferMapOrientation;
|
|
17
23
|
maxCharacters: number;
|
|
@@ -33,11 +39,11 @@ export declare class WaferMap extends FoundationElement {
|
|
|
33
39
|
/**
|
|
34
40
|
* @internal
|
|
35
41
|
*/
|
|
36
|
-
dataManager
|
|
42
|
+
readonly dataManager: DataManager;
|
|
37
43
|
/**
|
|
38
44
|
* @internal
|
|
39
45
|
*/
|
|
40
|
-
renderer
|
|
46
|
+
readonly renderer: RenderingModule;
|
|
41
47
|
/**
|
|
42
48
|
* @internal
|
|
43
49
|
*/
|
|
@@ -77,20 +83,21 @@ export declare class WaferMap extends FoundationElement {
|
|
|
77
83
|
highlightedValues: string[];
|
|
78
84
|
dies: WaferMapDie[];
|
|
79
85
|
colorScale: WaferMapColorScale;
|
|
80
|
-
private eventCoordinator
|
|
81
|
-
private resizeObserver
|
|
86
|
+
private readonly eventCoordinator;
|
|
87
|
+
private readonly resizeObserver;
|
|
82
88
|
connectedCallback(): void;
|
|
83
89
|
disconnectedCallback(): void;
|
|
84
90
|
/**
|
|
85
91
|
* @internal
|
|
92
|
+
* Update function called when an update is queued.
|
|
93
|
+
* It will check which updates are needed based on which properties have changed.
|
|
94
|
+
* Each update represents a different starting point of the same sequential update flow.
|
|
95
|
+
* The updates snowball one after the other, this function only choses the 'altitude'.
|
|
96
|
+
* The hover does not require an event update, but it's also the last update in the sequence.
|
|
86
97
|
*/
|
|
87
|
-
|
|
88
|
-
private queueRender;
|
|
89
|
-
private queueRenderHover;
|
|
90
|
-
private initializeInternalModules;
|
|
98
|
+
update(): void;
|
|
91
99
|
private createResizeObserver;
|
|
92
100
|
private quadrantChanged;
|
|
93
|
-
private orientationChanged;
|
|
94
101
|
private maxCharactersChanged;
|
|
95
102
|
private dieLabelsHiddenChanged;
|
|
96
103
|
private dieLabelsSuffixChanged;
|
|
@@ -5,17 +5,28 @@ import { Dimensions, Margin } from '../types';
|
|
|
5
5
|
* Computations calculates and stores different measures which are used in the Wafermap
|
|
6
6
|
*/
|
|
7
7
|
export declare class Computations {
|
|
8
|
-
readonly
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
8
|
+
private readonly wafermap;
|
|
9
|
+
get containerDimensions(): Dimensions;
|
|
10
|
+
get dieDimensions(): Dimensions;
|
|
11
|
+
get radius(): number;
|
|
12
|
+
get margin(): Margin;
|
|
13
|
+
get horizontalScale(): ScaleBand<number>;
|
|
14
|
+
get verticalScale(): ScaleBand<number>;
|
|
15
|
+
get invertedHorizontalScale(): ScaleQuantile<number, number>;
|
|
16
|
+
get invertedVerticalScale(): ScaleQuantile<number, number>;
|
|
17
|
+
private _containerDimensions;
|
|
18
|
+
private _dieDimensions;
|
|
19
|
+
private _radius;
|
|
20
|
+
private _margin;
|
|
21
|
+
private _horizontalScale;
|
|
22
|
+
private _verticalScale;
|
|
23
|
+
private _invertedHorizontalScale;
|
|
24
|
+
private _invertedVerticalScale;
|
|
16
25
|
private readonly defaultPadding;
|
|
17
26
|
private readonly baseMarginPercentage;
|
|
18
27
|
constructor(wafermap: WaferMap);
|
|
28
|
+
updateContainerDimensions(): void;
|
|
29
|
+
updateScales(): void;
|
|
19
30
|
private calculateGridDimensions;
|
|
20
31
|
private calculateContainerDimensions;
|
|
21
32
|
private createHorizontalScale;
|
|
@@ -5,6 +5,7 @@ import type { Dimensions, Margin, DieRenderInfo, WaferMapDie, PointCoordinates }
|
|
|
5
5
|
* Data Manager uses Computations and Prerendering modules in order and exposes the results
|
|
6
6
|
*/
|
|
7
7
|
export declare class DataManager {
|
|
8
|
+
private readonly wafermap;
|
|
8
9
|
get containerDimensions(): Dimensions;
|
|
9
10
|
get dieDimensions(): Dimensions;
|
|
10
11
|
get radius(): number;
|
|
@@ -15,9 +16,15 @@ export declare class DataManager {
|
|
|
15
16
|
get invertedVerticalScale(): ScaleQuantile<number, number>;
|
|
16
17
|
get labelsFontSize(): number;
|
|
17
18
|
get diesRenderInfo(): DieRenderInfo[];
|
|
19
|
+
get data(): Map<string, WaferMapDie>;
|
|
18
20
|
private readonly computations;
|
|
19
21
|
private readonly prerendering;
|
|
20
|
-
private
|
|
22
|
+
private dataMap;
|
|
21
23
|
constructor(wafermap: WaferMap);
|
|
24
|
+
updateContainerDimensions(): void;
|
|
25
|
+
updateScales(): void;
|
|
26
|
+
updateLabelsFontSize(): void;
|
|
27
|
+
updateDiesRenderInfo(): void;
|
|
22
28
|
getWaferMapDie(point: PointCoordinates): WaferMapDie | undefined;
|
|
29
|
+
private updateDataMap;
|
|
23
30
|
}
|
|
@@ -11,9 +11,9 @@ export declare class EventCoordinator {
|
|
|
11
11
|
private readonly zoomHandler;
|
|
12
12
|
private readonly hoverHandler;
|
|
13
13
|
constructor(wafermap: WaferMap);
|
|
14
|
+
attachEvents(): void;
|
|
14
15
|
detachEvents(): void;
|
|
15
16
|
private readonly onWheelMove;
|
|
16
17
|
private readonly onMouseMove;
|
|
17
18
|
private readonly onMouseOut;
|
|
18
|
-
private attachEvents;
|
|
19
19
|
}
|
|
@@ -1,18 +1,25 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import type {
|
|
1
|
+
import { ScaleLinear, ScaleOrdinal } from 'd3-scale';
|
|
2
|
+
import type { DieRenderInfo } from '../types';
|
|
3
3
|
import type { WaferMap } from '..';
|
|
4
|
+
import type { DataManager } from './data-manager';
|
|
4
5
|
/**
|
|
5
6
|
* Prerendering prepares render-ready dies data to be used by the rendering module
|
|
6
7
|
*/
|
|
7
8
|
export declare class Prerendering {
|
|
8
|
-
readonly
|
|
9
|
-
readonly
|
|
10
|
-
|
|
9
|
+
private readonly wafermap;
|
|
10
|
+
private readonly dataManager;
|
|
11
|
+
get labelsFontSize(): number;
|
|
12
|
+
get diesRenderInfo(): DieRenderInfo[];
|
|
13
|
+
d3ColorScale: ScaleOrdinal<string, string> | ScaleLinear<string, string>;
|
|
14
|
+
private _labelsFontSize;
|
|
15
|
+
private _diesRenderInfo;
|
|
11
16
|
private readonly fontSizeFactor;
|
|
12
17
|
private readonly nonHighlightedOpacity;
|
|
13
18
|
private readonly emptyDieColor;
|
|
14
19
|
private readonly nanDieColor;
|
|
15
|
-
constructor(wafermap: WaferMap,
|
|
20
|
+
constructor(wafermap: WaferMap, dataManager: Readonly<DataManager>);
|
|
21
|
+
updateLabelsFontSize(): void;
|
|
22
|
+
updateDiesRenderInfo(): void;
|
|
16
23
|
private calculateLabelsFontSize;
|
|
17
24
|
private createD3ColorScale;
|
|
18
25
|
private dieHasData;
|
|
@@ -4,13 +4,13 @@ import type { WaferMap } from '..';
|
|
|
4
4
|
*/
|
|
5
5
|
export declare class RenderingModule {
|
|
6
6
|
private readonly wafermap;
|
|
7
|
-
private
|
|
8
|
-
private readonly
|
|
9
|
-
private readonly labelFontSize;
|
|
7
|
+
private dies;
|
|
8
|
+
private readonly minDieDim;
|
|
10
9
|
constructor(wafermap: WaferMap);
|
|
11
10
|
drawWafer(): void;
|
|
12
11
|
renderHover(): void;
|
|
13
12
|
private calculateHoverTransform;
|
|
13
|
+
private sortDies;
|
|
14
14
|
private renderDies;
|
|
15
15
|
private renderText;
|
|
16
16
|
private clearCanvas;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { WaferMap } from '..';
|
|
2
|
+
import { UpdateTracker } from '../../utilities/models/update-tracker';
|
|
3
|
+
declare const trackedItems: readonly ["canvasWidth", "canvasHeight", "quadrant", "dies", "maxCharacters", "colorScale", "colorScaleMode", "highlightedValues", "dieLabelsHidden", "dieLabelsSuffix", "transform", "hoverDie"];
|
|
4
|
+
/**
|
|
5
|
+
* Helper class to track what updates are needed to the wafer based on configuration
|
|
6
|
+
* changes.
|
|
7
|
+
*/
|
|
8
|
+
export declare class WaferMapUpdateTracker extends UpdateTracker<typeof trackedItems> {
|
|
9
|
+
private readonly wafermap;
|
|
10
|
+
private updateQueued;
|
|
11
|
+
constructor(wafermap: WaferMap);
|
|
12
|
+
get requiresEventsUpdate(): boolean;
|
|
13
|
+
get requiresContainerDimensionsUpdate(): boolean;
|
|
14
|
+
get requiresScalesUpdate(): boolean;
|
|
15
|
+
get requiresLabelsFontSizeUpdate(): boolean;
|
|
16
|
+
get requiresDiesRenderInfoUpdate(): boolean;
|
|
17
|
+
get requiresRenderHoverUpdate(): boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Queues an update using the DOM and until the update is run no other updates are queued.
|
|
20
|
+
* After the update is finished, all the tracked items are reset.
|
|
21
|
+
*/
|
|
22
|
+
queueUpdate(): void;
|
|
23
|
+
}
|
|
24
|
+
export {};
|
|
@@ -8,9 +8,9 @@ export declare class ZoomHandler {
|
|
|
8
8
|
private readonly minScale;
|
|
9
9
|
private readonly minExtentPoint;
|
|
10
10
|
private readonly extentPadding;
|
|
11
|
-
private
|
|
11
|
+
private zoomBehavior;
|
|
12
12
|
constructor(wafermap: WaferMap);
|
|
13
|
+
createZoomBehavior(): void;
|
|
13
14
|
private rescale;
|
|
14
|
-
private createZoomBehavior;
|
|
15
15
|
private getZoomMax;
|
|
16
16
|
}
|
|
@@ -3,6 +3,7 @@ import { ZoomTransform } from 'd3-zoom';
|
|
|
3
3
|
import { DataManager } from './modules/data-manager';
|
|
4
4
|
import { RenderingModule } from './modules/rendering';
|
|
5
5
|
import { HoverDieOpacity, WaferMapColorScale, WaferMapColorScaleMode, WaferMapDie, WaferMapOrientation, WaferMapQuadrant } from './types';
|
|
6
|
+
import { WaferMapUpdateTracker } from './modules/wafer-map-update-tracker';
|
|
6
7
|
declare global {
|
|
7
8
|
interface HTMLElementTagNameMap {
|
|
8
9
|
'nimble-wafer-map': WaferMap;
|
|
@@ -12,6 +13,11 @@ declare global {
|
|
|
12
13
|
* A nimble-styled WaferMap
|
|
13
14
|
*/
|
|
14
15
|
export declare class WaferMap extends FoundationElement {
|
|
16
|
+
/**
|
|
17
|
+
* @internal
|
|
18
|
+
* needs to be initialized before the properties trigger changes
|
|
19
|
+
*/
|
|
20
|
+
readonly waferMapUpdateTracker: WaferMapUpdateTracker;
|
|
15
21
|
quadrant: WaferMapQuadrant;
|
|
16
22
|
orientation: WaferMapOrientation;
|
|
17
23
|
maxCharacters: number;
|
|
@@ -33,11 +39,11 @@ export declare class WaferMap extends FoundationElement {
|
|
|
33
39
|
/**
|
|
34
40
|
* @internal
|
|
35
41
|
*/
|
|
36
|
-
dataManager
|
|
42
|
+
readonly dataManager: DataManager;
|
|
37
43
|
/**
|
|
38
44
|
* @internal
|
|
39
45
|
*/
|
|
40
|
-
renderer
|
|
46
|
+
readonly renderer: RenderingModule;
|
|
41
47
|
/**
|
|
42
48
|
* @internal
|
|
43
49
|
*/
|
|
@@ -77,20 +83,21 @@ export declare class WaferMap extends FoundationElement {
|
|
|
77
83
|
highlightedValues: string[];
|
|
78
84
|
dies: WaferMapDie[];
|
|
79
85
|
colorScale: WaferMapColorScale;
|
|
80
|
-
private eventCoordinator
|
|
81
|
-
private resizeObserver
|
|
86
|
+
private readonly eventCoordinator;
|
|
87
|
+
private readonly resizeObserver;
|
|
82
88
|
connectedCallback(): void;
|
|
83
89
|
disconnectedCallback(): void;
|
|
84
90
|
/**
|
|
85
91
|
* @internal
|
|
92
|
+
* Update function called when an update is queued.
|
|
93
|
+
* It will check which updates are needed based on which properties have changed.
|
|
94
|
+
* Each update represents a different starting point of the same sequential update flow.
|
|
95
|
+
* The updates snowball one after the other, this function only choses the 'altitude'.
|
|
96
|
+
* The hover does not require an event update, but it's also the last update in the sequence.
|
|
86
97
|
*/
|
|
87
|
-
|
|
88
|
-
private queueRender;
|
|
89
|
-
private queueRenderHover;
|
|
90
|
-
private initializeInternalModules;
|
|
98
|
+
update(): void;
|
|
91
99
|
private createResizeObserver;
|
|
92
100
|
private quadrantChanged;
|
|
93
|
-
private orientationChanged;
|
|
94
101
|
private maxCharactersChanged;
|
|
95
102
|
private dieLabelsHiddenChanged;
|
|
96
103
|
private dieLabelsSuffixChanged;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
|
-
import { attr,
|
|
2
|
+
import { attr, nullableNumberConverter, observable } from '@microsoft/fast-element';
|
|
3
3
|
import { DesignSystem, FoundationElement } from '@microsoft/fast-foundation';
|
|
4
4
|
import { zoomIdentity } from 'd3-zoom';
|
|
5
5
|
import { template } from './template';
|
|
@@ -8,18 +8,32 @@ import { DataManager } from './modules/data-manager';
|
|
|
8
8
|
import { RenderingModule } from './modules/rendering';
|
|
9
9
|
import { EventCoordinator } from './modules/event-coordinator';
|
|
10
10
|
import { HoverDieOpacity, WaferMapColorScaleMode, WaferMapOrientation, WaferMapQuadrant } from './types';
|
|
11
|
+
import { WaferMapUpdateTracker } from './modules/wafer-map-update-tracker';
|
|
11
12
|
/**
|
|
12
13
|
* A nimble-styled WaferMap
|
|
13
14
|
*/
|
|
14
15
|
export class WaferMap extends FoundationElement {
|
|
15
16
|
constructor() {
|
|
16
17
|
super(...arguments);
|
|
18
|
+
/**
|
|
19
|
+
* @internal
|
|
20
|
+
* needs to be initialized before the properties trigger changes
|
|
21
|
+
*/
|
|
22
|
+
this.waferMapUpdateTracker = new WaferMapUpdateTracker(this);
|
|
17
23
|
this.quadrant = WaferMapQuadrant.topLeft;
|
|
18
24
|
this.orientation = WaferMapOrientation.top;
|
|
19
25
|
this.maxCharacters = 4;
|
|
20
26
|
this.dieLabelsHidden = false;
|
|
21
27
|
this.dieLabelsSuffix = '';
|
|
22
28
|
this.colorScaleMode = WaferMapColorScaleMode.linear;
|
|
29
|
+
/**
|
|
30
|
+
* @internal
|
|
31
|
+
*/
|
|
32
|
+
this.dataManager = new DataManager(this);
|
|
33
|
+
/**
|
|
34
|
+
* @internal
|
|
35
|
+
*/
|
|
36
|
+
this.renderer = new RenderingModule(this);
|
|
23
37
|
/**
|
|
24
38
|
* @internal
|
|
25
39
|
*/
|
|
@@ -50,13 +64,16 @@ export class WaferMap extends FoundationElement {
|
|
|
50
64
|
colors: [],
|
|
51
65
|
values: []
|
|
52
66
|
};
|
|
67
|
+
this.eventCoordinator = new EventCoordinator(this);
|
|
68
|
+
this.resizeObserver = this.createResizeObserver();
|
|
53
69
|
}
|
|
54
70
|
connectedCallback() {
|
|
55
71
|
super.connectedCallback();
|
|
56
72
|
this.canvasContext = this.canvas.getContext('2d', {
|
|
57
73
|
willReadFrequently: true
|
|
58
74
|
});
|
|
59
|
-
this.resizeObserver
|
|
75
|
+
this.resizeObserver.observe(this);
|
|
76
|
+
this.waferMapUpdateTracker.trackAll();
|
|
60
77
|
}
|
|
61
78
|
disconnectedCallback() {
|
|
62
79
|
super.disconnectedCallback();
|
|
@@ -64,33 +81,34 @@ export class WaferMap extends FoundationElement {
|
|
|
64
81
|
}
|
|
65
82
|
/**
|
|
66
83
|
* @internal
|
|
84
|
+
* Update function called when an update is queued.
|
|
85
|
+
* It will check which updates are needed based on which properties have changed.
|
|
86
|
+
* Each update represents a different starting point of the same sequential update flow.
|
|
87
|
+
* The updates snowball one after the other, this function only choses the 'altitude'.
|
|
88
|
+
* The hover does not require an event update, but it's also the last update in the sequence.
|
|
67
89
|
*/
|
|
68
|
-
|
|
69
|
-
this.
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
90
|
+
update() {
|
|
91
|
+
if (this.waferMapUpdateTracker.requiresEventsUpdate) {
|
|
92
|
+
this.eventCoordinator.detachEvents();
|
|
93
|
+
if (this.waferMapUpdateTracker.requiresContainerDimensionsUpdate) {
|
|
94
|
+
this.dataManager.updateContainerDimensions();
|
|
95
|
+
}
|
|
96
|
+
else if (this.waferMapUpdateTracker.requiresScalesUpdate) {
|
|
97
|
+
this.dataManager.updateScales();
|
|
98
|
+
}
|
|
99
|
+
else if (this.waferMapUpdateTracker.requiresLabelsFontSizeUpdate) {
|
|
100
|
+
this.dataManager.updateLabelsFontSize();
|
|
101
|
+
}
|
|
102
|
+
else if (this.waferMapUpdateTracker.requiresDiesRenderInfoUpdate) {
|
|
103
|
+
this.dataManager.updateDiesRenderInfo();
|
|
104
|
+
}
|
|
105
|
+
this.renderer.drawWafer();
|
|
106
|
+
this.eventCoordinator.attachEvents();
|
|
76
107
|
}
|
|
77
|
-
if (
|
|
78
|
-
this.
|
|
79
|
-
DOM.queueUpdate(() => this.render());
|
|
108
|
+
else if (this.waferMapUpdateTracker.requiresRenderHoverUpdate) {
|
|
109
|
+
this.renderer.renderHover();
|
|
80
110
|
}
|
|
81
111
|
}
|
|
82
|
-
queueRenderHover() {
|
|
83
|
-
if (!this.$fastController.isConnected) {
|
|
84
|
-
return;
|
|
85
|
-
}
|
|
86
|
-
DOM.queueUpdate(() => this.renderer?.renderHover());
|
|
87
|
-
}
|
|
88
|
-
initializeInternalModules() {
|
|
89
|
-
this.eventCoordinator?.detachEvents();
|
|
90
|
-
this.dataManager = new DataManager(this);
|
|
91
|
-
this.renderer = new RenderingModule(this);
|
|
92
|
-
this.eventCoordinator = new EventCoordinator(this);
|
|
93
|
-
}
|
|
94
112
|
createResizeObserver() {
|
|
95
113
|
const resizeObserver = new ResizeObserver(entries => {
|
|
96
114
|
const entry = entries[0];
|
|
@@ -105,48 +123,56 @@ export class WaferMap extends FoundationElement {
|
|
|
105
123
|
this.canvasWidth = width;
|
|
106
124
|
this.canvasHeight = height;
|
|
107
125
|
});
|
|
108
|
-
resizeObserver.observe(this);
|
|
109
126
|
return resizeObserver;
|
|
110
127
|
}
|
|
111
128
|
quadrantChanged() {
|
|
112
|
-
this.
|
|
113
|
-
|
|
114
|
-
orientationChanged() {
|
|
115
|
-
this.queueRender();
|
|
129
|
+
this.waferMapUpdateTracker.track('quadrant');
|
|
130
|
+
this.waferMapUpdateTracker.queueUpdate();
|
|
116
131
|
}
|
|
117
132
|
maxCharactersChanged() {
|
|
118
|
-
this.
|
|
133
|
+
this.waferMapUpdateTracker.track('maxCharacters');
|
|
134
|
+
this.waferMapUpdateTracker.queueUpdate();
|
|
119
135
|
}
|
|
120
136
|
dieLabelsHiddenChanged() {
|
|
121
|
-
this.
|
|
137
|
+
this.waferMapUpdateTracker.track('dieLabelsHidden');
|
|
138
|
+
this.waferMapUpdateTracker.queueUpdate();
|
|
122
139
|
}
|
|
123
140
|
dieLabelsSuffixChanged() {
|
|
124
|
-
this.
|
|
141
|
+
this.waferMapUpdateTracker.track('dieLabelsSuffix');
|
|
142
|
+
this.waferMapUpdateTracker.queueUpdate();
|
|
125
143
|
}
|
|
126
144
|
colorScaleModeChanged() {
|
|
127
|
-
this.
|
|
145
|
+
this.waferMapUpdateTracker.track('colorScaleMode');
|
|
146
|
+
this.waferMapUpdateTracker.queueUpdate();
|
|
128
147
|
}
|
|
129
148
|
highlightedValuesChanged() {
|
|
130
|
-
this.
|
|
149
|
+
this.waferMapUpdateTracker.track('highlightedValues');
|
|
150
|
+
this.waferMapUpdateTracker.queueUpdate();
|
|
131
151
|
}
|
|
132
152
|
diesChanged() {
|
|
133
|
-
this.
|
|
153
|
+
this.waferMapUpdateTracker.track('dies');
|
|
154
|
+
this.waferMapUpdateTracker.queueUpdate();
|
|
134
155
|
}
|
|
135
156
|
colorScaleChanged() {
|
|
136
|
-
this.
|
|
157
|
+
this.waferMapUpdateTracker.track('colorScale');
|
|
158
|
+
this.waferMapUpdateTracker.queueUpdate();
|
|
137
159
|
}
|
|
138
160
|
transformChanged() {
|
|
139
|
-
this.
|
|
161
|
+
this.waferMapUpdateTracker.track('transform');
|
|
162
|
+
this.waferMapUpdateTracker.queueUpdate();
|
|
140
163
|
}
|
|
141
164
|
canvasWidthChanged() {
|
|
142
|
-
this.
|
|
165
|
+
this.waferMapUpdateTracker.track('canvasWidth');
|
|
166
|
+
this.waferMapUpdateTracker.queueUpdate();
|
|
143
167
|
}
|
|
144
168
|
canvasHeightChanged() {
|
|
145
|
-
this.
|
|
169
|
+
this.waferMapUpdateTracker.track('canvasHeight');
|
|
170
|
+
this.waferMapUpdateTracker.queueUpdate();
|
|
146
171
|
}
|
|
147
172
|
hoverDieChanged() {
|
|
148
173
|
this.$emit('die-hover', { currentDie: this.hoverDie });
|
|
149
|
-
this.
|
|
174
|
+
this.waferMapUpdateTracker.track('hoverDie');
|
|
175
|
+
this.waferMapUpdateTracker.queueUpdate();
|
|
150
176
|
}
|
|
151
177
|
}
|
|
152
178
|
__decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/wafer-map/index.ts"],"names":[],"mappings":";AAAA,OAAO,EACH,IAAI,EACJ,
|
|
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,YAAY,EAAiB,MAAM,SAAS,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EACH,eAAe,EAEf,sBAAsB,EAEtB,mBAAmB,EACnB,gBAAgB,EACnB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAQ3E;;GAEG;AACH,MAAM,OAAO,QAAS,SAAQ,iBAAiB;IAA/C;;QACI;;;WAGG;QACa,0BAAqB,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAGjE,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;QAiB9E;;WAEG;QACa,gBAAW,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;QACpD;;WAEG;QACa,aAAQ,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QAErD;;WAEG;QACI,iBAAY,GAAG,KAAK,CAAC;QAY5B;;WAEG;QACgB,cAAS,GAAkB,YAAY,CAAC;QAE3D;;WAEG;QACgB,mBAAc,GAAG,EAAE,CAAC;QAEvC;;WAEG;QACgB,iBAAY,GAAoB,eAAe,CAAC,IAAI,CAAC;QAExE;;WAEG;QACgB,eAAU,GAAG,CAAC,CAAC;QAElC;;WAEG;QACgB,gBAAW,GAAG,CAAC,CAAC;QAOhB,sBAAiB,GAAa,EAAE,CAAC;QACjC,SAAI,GAAkB,EAAE,CAAC;QACzB,eAAU,GAAuB;YAChD,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;SACb,CAAC;QAEe,qBAAgB,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC9C,mBAAc,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;IA4HlE,CAAC;IA1HmB,iBAAiB;QAC7B,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE;YAC9C,kBAAkB,EAAE,IAAI;SAC3B,CAAE,CAAC;QACJ,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,CAAC;IAC1C,CAAC;IAEe,oBAAoB;QAChC,KAAK,CAAC,oBAAoB,EAAE,CAAC;QAC7B,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;OAOG;IACI,MAAM;QACT,IAAI,IAAI,CAAC,qBAAqB,CAAC,oBAAoB,EAAE;YACjD,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;YACrC,IAAI,IAAI,CAAC,qBAAqB,CAAC,iCAAiC,EAAE;gBAC9D,IAAI,CAAC,WAAW,CAAC,yBAAyB,EAAE,CAAC;aAChD;iBAAM,IAAI,IAAI,CAAC,qBAAqB,CAAC,oBAAoB,EAAE;gBACxD,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;aACnC;iBAAM,IACH,IAAI,CAAC,qBAAqB,CAAC,4BAA4B,EACzD;gBACE,IAAI,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAC;aAC3C;iBAAM,IACH,IAAI,CAAC,qBAAqB,CAAC,4BAA4B,EACzD;gBACE,IAAI,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAC;aAC3C;YACD,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;SACxC;aAAM,IAAI,IAAI,CAAC,qBAAqB,CAAC,yBAAyB,EAAE;YAC7D,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;SAC/B;IACL,CAAC;IAEO,oBAAoB;QACxB,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,EAAE;YAChD,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YACzB,IAAI,KAAK,KAAK,SAAS,EAAE;gBACrB,OAAO;aACV;YACD,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,WAAW,CAAC;YAC5C,kFAAkF;YAClF,wEAAwE;YACxE,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;YAC1B,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;YAC5B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YACzB,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,OAAO,cAAc,CAAC;IAC1B,CAAC;IAEO,eAAe;QACnB,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,CAAC;IAC7C,CAAC;IAEO,oBAAoB;QACxB,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAClD,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,CAAC;IAC7C,CAAC;IAEO,sBAAsB;QAC1B,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACpD,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,CAAC;IAC7C,CAAC;IAEO,sBAAsB;QAC1B,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACpD,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,CAAC;IAC7C,CAAC;IAEO,qBAAqB;QACzB,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QACnD,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,CAAC;IAC7C,CAAC;IAEO,wBAAwB;QAC5B,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACtD,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,CAAC;IAC7C,CAAC;IAEO,WAAW;QACf,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,CAAC;IAC7C,CAAC;IAEO,iBAAiB;QACrB,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAC/C,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,CAAC;IAC7C,CAAC;IAEO,gBAAgB;QACpB,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC9C,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,CAAC;IAC7C,CAAC;IAEO,kBAAkB;QACtB,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAChD,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,CAAC;IAC7C,CAAC;IAEO,mBAAmB;QACvB,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACjD,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,CAAC;IAC7C,CAAC;IAEO,eAAe;QACnB,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,CAAC;IAC7C,CAAC;CACJ;AApOG;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;AAkClE;IAAX,UAAU;6CAA6B;AAK5B;IAAX,UAAU;8CAA8B;AAK7B;IAAX,UAAU;2CAAgD;AAK/C;IAAX,UAAU;gDAA4B;AAK3B;IAAX,UAAU;8CAA6D;AAK5D;IAAX,UAAU;4CAAuB;AAKtB;IAAX,UAAU;6CAAwB;AAKvB;IAAX,UAAU;0CAA0C;AAEzC;IAAX,UAAU;mDAAyC;AACxC;IAAX,UAAU;sCAAiC;AAChC;IAAX,UAAU;4CAGT;AAiIN,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;AAC3E,MAAM,CAAC,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC"}
|
|
@@ -5,17 +5,28 @@ import { Dimensions, Margin } from '../types';
|
|
|
5
5
|
* Computations calculates and stores different measures which are used in the Wafermap
|
|
6
6
|
*/
|
|
7
7
|
export declare class Computations {
|
|
8
|
-
readonly
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
8
|
+
private readonly wafermap;
|
|
9
|
+
get containerDimensions(): Dimensions;
|
|
10
|
+
get dieDimensions(): Dimensions;
|
|
11
|
+
get radius(): number;
|
|
12
|
+
get margin(): Margin;
|
|
13
|
+
get horizontalScale(): ScaleBand<number>;
|
|
14
|
+
get verticalScale(): ScaleBand<number>;
|
|
15
|
+
get invertedHorizontalScale(): ScaleQuantile<number, number>;
|
|
16
|
+
get invertedVerticalScale(): ScaleQuantile<number, number>;
|
|
17
|
+
private _containerDimensions;
|
|
18
|
+
private _dieDimensions;
|
|
19
|
+
private _radius;
|
|
20
|
+
private _margin;
|
|
21
|
+
private _horizontalScale;
|
|
22
|
+
private _verticalScale;
|
|
23
|
+
private _invertedHorizontalScale;
|
|
24
|
+
private _invertedVerticalScale;
|
|
16
25
|
private readonly defaultPadding;
|
|
17
26
|
private readonly baseMarginPercentage;
|
|
18
27
|
constructor(wafermap: WaferMap);
|
|
28
|
+
updateContainerDimensions(): void;
|
|
29
|
+
updateScales(): void;
|
|
19
30
|
private calculateGridDimensions;
|
|
20
31
|
private calculateContainerDimensions;
|
|
21
32
|
private createHorizontalScale;
|