Skip to content

Commit cd3fa72

Browse files
authored
Revert "Linked Time: Removed old customVisTemplate that is no longer used" (#6060)
This reverts commit b08e2f8. * Motivation for features / changes I was wrong. This template is still used to shade out the area outside of a range selection.
1 parent 47c1b57 commit cd3fa72

File tree

3 files changed

+59
-0
lines changed

3 files changed

+59
-0
lines changed

tensorboard/webapp/metrics/views/card_renderer/scalar_card_component.ng.html

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@
113113
[useDarkMode]="useDarkMode"
114114
(onViewBoxOverridden)="isViewBoxOverridden = $event"
115115
(viewBoxChanged)="onLineChartZoom.emit($event)"
116+
[customVisTemplate]="lineChartCustomVis"
116117
[customChartOverlayTemplate]="lineChartCustomXAxisVis"
117118
></line-chart>
118119
<ng-template
@@ -181,6 +182,45 @@
181182
</scalar-card-data-table>
182183
</div>
183184
</ng-container>
185+
<ng-template
186+
#lineChartCustomVis
187+
let-viewExtent="viewExtent"
188+
let-domDim="domDimension"
189+
let-xScale="xScale"
190+
>
191+
<ng-container *ngIf="stepOrLinkedTimeSelection">
192+
<div
193+
[ngClass]="{
194+
'out-of-selected-time': true,
195+
start: true,
196+
range: !!stepOrLinkedTimeSelection.end?.step
197+
}"
198+
[style.right]="
199+
xScale.forward(
200+
viewExtent.x,
201+
[domDim.width, 0],
202+
stepOrLinkedTimeSelection.start.step
203+
) + 'px'
204+
"
205+
></div>
206+
<div
207+
*ngIf="stepOrLinkedTimeSelection.end?.step"
208+
[ngClass]="{
209+
'out-of-selected-time': true,
210+
end: true,
211+
range: true
212+
}"
213+
[style.left]="
214+
xScale.forward(
215+
viewExtent.x,
216+
[0, domDim.width],
217+
stepOrLinkedTimeSelection.end?.step
218+
) + 'px'
219+
"
220+
></div>
221+
</ng-container>
222+
</ng-template>
223+
184224
<ng-template
185225
#lineChartCustomXAxisVis
186226
let-viewExtent="viewExtent"

tensorboard/webapp/widgets/line_chart_v2/line_chart_component.ng.html

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,17 @@
5454
(onViewExtentReset)="viewBoxReset()"
5555
(onInteractionStateChange)="onInteractionStateChange($event)"
5656
></line-chart-interactive-view>
57+
<div *ngIf="customVisTemplate" class="custom-vis">
58+
<ng-container
59+
[ngTemplateOutlet]="customVisTemplate"
60+
[ngTemplateOutletContext]="{
61+
xScale: xScale,
62+
yScale: yScale,
63+
domDimension: domDimensions.main,
64+
viewExtent: viewBox
65+
}"
66+
></ng-container>
67+
</div>
5768
</div>
5869
<div class="y-axis" #yAxis>
5970
<line-chart-axis

tensorboard/webapp/widgets/line_chart_v2/line_chart_component.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,14 @@ export class LineChartComponent
9292
@ViewChild('chartEl', {static: false, read: ElementRef})
9393
private chartEl?: ElementRef<HTMLCanvasElement | SVGElement>;
9494

95+
/**
96+
* Optional ngTemplate that renders on top of line chart (not axis). This
97+
* template is rendered on top of interactive layer and can mask other
98+
* contents. Do note that this component may not intercept pointer-events.
99+
*/
100+
@Input()
101+
customVisTemplate?: TemplateRef<TemplateContext>;
102+
95103
@Input()
96104
customChartOverlayTemplate?: TemplateRef<
97105
TemplateContext & {formatter: Formatter}

0 commit comments

Comments
 (0)