blob: ceb6851ab40ce4e73dbb6eaf326382b51e1967ac [file] [log] [blame]
<!--
~ Licensed to the Apache Software Foundation (ASF) under one or more
~ contributor license agreements. See the NOTICE file distributed with
~ this work for additional information regarding copyright ownership.
~ The ASF licenses this file to You under the Apache License, Version 2.0
~ (the "License"); you may not use this file except in compliance with
~ the License. You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
~
-->
<div data-cy="sp-connect-adapter-success-live-preview">
<p *ngIf="showTitle">Here is a preview of your data:</p>
<table mat-table [dataSource]="runtimeInfo">
<ng-container matColumnDef="runtimeName">
<th mat-header-cell *matHeaderCellDef>
<strong>Runtime Name</strong>
</th>
<td mat-cell *matCellDef="let element">
<div class="runtime-name">{{ element.runtimeName }}</div>
</td>
</ng-container>
<ng-container matColumnDef="label">
<th mat-header-cell *matHeaderCellDef>
<strong>Field Name</strong>
</th>
<td mat-cell *matCellDef="let element">
{{ element.label }}
</td>
</ng-container>
<ng-container matColumnDef="description">
<th mat-header-cell *matHeaderCellDef>
<strong>Description</strong>
</th>
<td mat-cell *matCellDef="let element">
{{ element.description }}
</td>
</ng-container>
<ng-container matColumnDef="runtimeType">
<th mat-header-cell *matHeaderCellDef><strong>Type</strong></th>
<td mat-cell *matCellDef="let element">
{{ element.runtimeType }}
</td>
</ng-container>
<ng-container matColumnDef="value">
<th mat-header-cell *matHeaderCellDef><strong>Value</strong></th>
<td mat-cell *matCellDef="let element" style="width: 200px">
@if (element.value === undefined) {
<div
data-cy="live-preview-table-no-data"
class="value no-data"
>
no data
</div>
} @else {
<ng-container *ngIf="element.isImage">
<img
src="data:image/png;base64,{{ element.value }}"
style="max-width: 150px"
/>
</ng-container>
<ng-container *ngIf="element.isTimestamp">
<div
class="value"
[class.value-changed]="element.valueChanged"
>
{{ element.value | date: 'yyyy-MM-dd HH:mm:ss ' }}
</div>
</ng-container>
<ng-container *ngIf="element.hasNoDomainProperty">
<div
[attr.data-cy]="
'live-preview-value-' + element.runtimeName
"
class="value"
[class.value-changed]="element.valueChanged"
>
{{ element.value }}
</div>
</ng-container>
}
</td>
</ng-container>
<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
<tr mat-row *matRowDef="let row; columns: displayedColumns"></tr>
</table>
</div>