@ni/nimble-components 20.1.5 → 20.1.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.
- package/dist/all-components-bundle.js +70 -36
- package/dist/all-components-bundle.js.map +1 -1
- package/dist/all-components-bundle.min.js +332 -328
- package/dist/all-components-bundle.min.js.map +1 -1
- package/dist/esm/src/wafer-map/modules/rendering.d.ts +2 -1
- package/dist/esm/src/wafer-map/modules/wafer-map-update-tracker.d.ts +1 -0
- package/dist/esm/wafer-map/index.js +7 -1
- package/dist/esm/wafer-map/index.js.map +1 -1
- package/dist/esm/wafer-map/modules/rendering.d.ts +2 -1
- package/dist/esm/wafer-map/modules/rendering.js +59 -34
- package/dist/esm/wafer-map/modules/rendering.js.map +1 -1
- package/dist/esm/wafer-map/modules/wafer-map-update-tracker.d.ts +1 -0
- package/dist/esm/wafer-map/modules/wafer-map-update-tracker.js +3 -0
- package/dist/esm/wafer-map/modules/wafer-map-update-tracker.js.map +1 -1
- package/package.json +1 -1
|
@@ -16288,7 +16288,7 @@
|
|
|
16288
16288
|
|
|
16289
16289
|
/**
|
|
16290
16290
|
* Do not edit directly
|
|
16291
|
-
* Generated on
|
|
16291
|
+
* Generated on Sat, 12 Aug 2023 08:17:41 GMT
|
|
16292
16292
|
*/
|
|
16293
16293
|
|
|
16294
16294
|
const Information100DarkUi = "#a46eff";
|
|
@@ -55044,11 +55044,22 @@
|
|
|
55044
55044
|
this.wafermap = wafermap;
|
|
55045
55045
|
this.minDieDim = 50;
|
|
55046
55046
|
}
|
|
55047
|
+
updateSortedDiesAndDrawWafer() {
|
|
55048
|
+
this.dies = this.wafermap.dataManager.diesRenderInfo.sort((a, b) => {
|
|
55049
|
+
if (a.fillStyle > b.fillStyle) {
|
|
55050
|
+
return 1;
|
|
55051
|
+
}
|
|
55052
|
+
if (b.fillStyle > a.fillStyle) {
|
|
55053
|
+
return -1;
|
|
55054
|
+
}
|
|
55055
|
+
return 0;
|
|
55056
|
+
});
|
|
55057
|
+
this.drawWafer();
|
|
55058
|
+
}
|
|
55047
55059
|
drawWafer() {
|
|
55048
55060
|
this.wafermap.canvasContext.save();
|
|
55049
55061
|
this.clearCanvas();
|
|
55050
55062
|
this.scaleCanvas();
|
|
55051
|
-
this.sortDies();
|
|
55052
55063
|
this.renderDies();
|
|
55053
55064
|
this.renderText();
|
|
55054
55065
|
this.wafermap.canvasContext.restore();
|
|
@@ -55076,56 +55087,70 @@
|
|
|
55076
55087
|
}
|
|
55077
55088
|
return '';
|
|
55078
55089
|
}
|
|
55079
|
-
sortDies() {
|
|
55080
|
-
this.dies = this.wafermap.dataManager.diesRenderInfo.sort((a, b) => {
|
|
55081
|
-
if (a.fillStyle > b.fillStyle) {
|
|
55082
|
-
return 1;
|
|
55083
|
-
}
|
|
55084
|
-
if (b.fillStyle > a.fillStyle) {
|
|
55085
|
-
return -1;
|
|
55086
|
-
}
|
|
55087
|
-
return 0;
|
|
55088
|
-
});
|
|
55089
|
-
}
|
|
55090
55090
|
renderDies() {
|
|
55091
|
-
|
|
55091
|
+
const context = this.wafermap.canvasContext;
|
|
55092
|
+
const dieWidth = this.wafermap.dataManager.dieDimensions.width;
|
|
55093
|
+
const dieHeight = this.wafermap.dataManager.dieDimensions.height;
|
|
55094
|
+
const transformedCanvasMinPoint = this.wafermap.transform.invert([
|
|
55095
|
+
0, 0
|
|
55096
|
+
]);
|
|
55097
|
+
const transformedCanvasMaxPoint = this.wafermap.transform.invert([
|
|
55098
|
+
this.wafermap.canvas.width,
|
|
55099
|
+
this.wafermap.canvas.height
|
|
55100
|
+
]);
|
|
55101
|
+
transformedCanvasMinPoint[0] -= dieWidth;
|
|
55102
|
+
transformedCanvasMinPoint[1] -= dieHeight;
|
|
55092
55103
|
for (const die of this.dies) {
|
|
55093
|
-
if (
|
|
55094
|
-
|
|
55104
|
+
if (this.isDieVisible(die, transformedCanvasMinPoint, transformedCanvasMaxPoint)) {
|
|
55105
|
+
context.fillStyle = die.fillStyle;
|
|
55106
|
+
context.fillRect(die.x, die.y, dieWidth, dieHeight);
|
|
55095
55107
|
}
|
|
55096
|
-
if (prev && die.fillStyle !== prev.fillStyle && die.fillStyle) {
|
|
55097
|
-
this.wafermap.canvasContext.fillStyle = die.fillStyle;
|
|
55098
|
-
}
|
|
55099
|
-
this.wafermap.canvasContext.fillRect(die.x, die.y, this.wafermap.dataManager.dieDimensions.width, this.wafermap.dataManager.dieDimensions.height);
|
|
55100
|
-
prev = die;
|
|
55101
55108
|
}
|
|
55102
55109
|
}
|
|
55103
55110
|
renderText() {
|
|
55104
|
-
|
|
55105
|
-
|
|
55106
|
-
|
|
55107
|
-
const
|
|
55108
|
-
this.wafermap.
|
|
55109
|
-
this.wafermap.
|
|
55110
|
-
this.wafermap.canvasContext.textAlign = 'center';
|
|
55111
|
-
this.wafermap.canvasContext.lineCap = 'butt';
|
|
55112
|
-
const approxTextHeight = this.wafermap.canvasContext.measureText('M');
|
|
55113
|
-
const dieDimensions = this.wafermap.dataManager.dieDimensions;
|
|
55111
|
+
if (this.wafermap.dieLabelsHidden) {
|
|
55112
|
+
return;
|
|
55113
|
+
}
|
|
55114
|
+
const dieWidth = this.wafermap.dataManager.dieDimensions.width;
|
|
55115
|
+
const dieHeight = this.wafermap.dataManager.dieDimensions.height;
|
|
55116
|
+
const dieSize = dieWidth * dieHeight * (this.wafermap.transform.k || 1);
|
|
55114
55117
|
if (dieSize >= this.minDieDim) {
|
|
55118
|
+
const fontsize = this.wafermap.dataManager.labelsFontSize;
|
|
55119
|
+
const context = this.wafermap.canvasContext;
|
|
55120
|
+
context.font = `${fontsize.toString()}px sans-serif`;
|
|
55121
|
+
context.fillStyle = '#ffffff';
|
|
55122
|
+
context.textAlign = 'center';
|
|
55123
|
+
context.lineCap = 'butt';
|
|
55124
|
+
const approximateTextHeight = context.measureText('M');
|
|
55125
|
+
const transformedCanvasMinPoint = this.wafermap.transform.invert([
|
|
55126
|
+
0, 0
|
|
55127
|
+
]);
|
|
55128
|
+
const transformedCanvasMaxPoint = this.wafermap.transform.invert([
|
|
55129
|
+
this.wafermap.canvas.width,
|
|
55130
|
+
this.wafermap.canvas.height
|
|
55131
|
+
]);
|
|
55132
|
+
transformedCanvasMinPoint[0] -= dieWidth;
|
|
55133
|
+
transformedCanvasMinPoint[1] -= dieHeight;
|
|
55115
55134
|
for (const die of this.dies) {
|
|
55116
|
-
this.
|
|
55117
|
-
+
|
|
55118
|
-
|
|
55135
|
+
if (this.isDieVisible(die, transformedCanvasMinPoint, transformedCanvasMaxPoint)) {
|
|
55136
|
+
context.fillText(die.text, die.x + dieWidth / 2, die.y + dieHeight / 2 + approximateTextHeight.width / 2, dieWidth - (dieWidth / 100) * 20);
|
|
55137
|
+
}
|
|
55119
55138
|
}
|
|
55120
55139
|
}
|
|
55121
55140
|
}
|
|
55122
55141
|
clearCanvas() {
|
|
55123
|
-
this.wafermap.canvasContext.clearRect(0, 0, this.wafermap.
|
|
55142
|
+
this.wafermap.canvasContext.clearRect(0, 0, this.wafermap.canvas.width, this.wafermap.canvas.height);
|
|
55124
55143
|
}
|
|
55125
55144
|
scaleCanvas() {
|
|
55126
55145
|
this.wafermap.canvasContext.translate(this.wafermap.transform.x, this.wafermap.transform.y);
|
|
55127
55146
|
this.wafermap.canvasContext.scale(this.wafermap.transform.k, this.wafermap.transform.k);
|
|
55128
55147
|
}
|
|
55148
|
+
isDieVisible(die, minPoint, maxPoint) {
|
|
55149
|
+
return (die.x >= minPoint[0]
|
|
55150
|
+
&& die.x < maxPoint[0]
|
|
55151
|
+
&& die.y >= minPoint[1]
|
|
55152
|
+
&& die.y < maxPoint[1]);
|
|
55153
|
+
}
|
|
55129
55154
|
}
|
|
55130
55155
|
|
|
55131
55156
|
/**
|
|
@@ -55322,6 +55347,9 @@
|
|
|
55322
55347
|
|| this.isTracked('dieLabelsHidden')
|
|
55323
55348
|
|| this.isTracked('dieLabelsSuffix'));
|
|
55324
55349
|
}
|
|
55350
|
+
get requiresDrawnWaferUpdate() {
|
|
55351
|
+
return this.isTracked('transform');
|
|
55352
|
+
}
|
|
55325
55353
|
get requiresRenderHoverUpdate() {
|
|
55326
55354
|
return this.isTracked('hoverDie');
|
|
55327
55355
|
}
|
|
@@ -55427,17 +55455,23 @@
|
|
|
55427
55455
|
this.eventCoordinator.detachEvents();
|
|
55428
55456
|
if (this.waferMapUpdateTracker.requiresContainerDimensionsUpdate) {
|
|
55429
55457
|
this.dataManager.updateContainerDimensions();
|
|
55458
|
+
this.renderer.updateSortedDiesAndDrawWafer();
|
|
55430
55459
|
}
|
|
55431
55460
|
else if (this.waferMapUpdateTracker.requiresScalesUpdate) {
|
|
55432
55461
|
this.dataManager.updateScales();
|
|
55462
|
+
this.renderer.updateSortedDiesAndDrawWafer();
|
|
55433
55463
|
}
|
|
55434
55464
|
else if (this.waferMapUpdateTracker.requiresLabelsFontSizeUpdate) {
|
|
55435
55465
|
this.dataManager.updateLabelsFontSize();
|
|
55466
|
+
this.renderer.updateSortedDiesAndDrawWafer();
|
|
55436
55467
|
}
|
|
55437
55468
|
else if (this.waferMapUpdateTracker.requiresDiesRenderInfoUpdate) {
|
|
55438
55469
|
this.dataManager.updateDiesRenderInfo();
|
|
55470
|
+
this.renderer.updateSortedDiesAndDrawWafer();
|
|
55471
|
+
}
|
|
55472
|
+
else if (this.waferMapUpdateTracker.requiresDrawnWaferUpdate) {
|
|
55473
|
+
this.renderer.drawWafer();
|
|
55439
55474
|
}
|
|
55440
|
-
this.renderer.drawWafer();
|
|
55441
55475
|
this.eventCoordinator.attachEvents();
|
|
55442
55476
|
}
|
|
55443
55477
|
else if (this.waferMapUpdateTracker.requiresRenderHoverUpdate) {
|