in source/webapp/src/lib/js/videoPreview.js [538:604]
async domCreateCarouselSlideSummary(card, active = '') {
const items = [];
let data;
let keys;
const svg = BasePreview.createSvgImage('Summary', {
height: 800,
});
data = card.getVideoAnalysis();
keys = Object.keys(data || {});
while (keys.length) {
const key = keys.shift();
const elapsed = BasePreview.readableDuration(data[key].endTime - data[key].startTime);
const url = VideoCard.signedUrl(SO0050.Proxy.Bucket, data[key].output);
items.push(BasePreview.carouselLead(`${BasePreview.capitalize(key)} (Rekogntion)`));
items.push('<dl class="row text-left">');
items.push(`<dt class="col-sm-3">Elapsed</dt><dd class="col-sm-9">${elapsed}</dd>`);
items.push(`<dt class="col-sm-3">Job Id</dt><dd class="col-sm-9">${data[key].id || '--'}</dd>`);
items.push(`<dt class="col-sm-3">JSON File</dt><dd class="col-sm-9"><a href="${url}">download here</a></dd>`);
items.push('</dl>');
}
data = card.getComprehendAnalysis();
keys = Object.keys(data || {});
while (keys.length) {
const key = keys.shift();
const elapsed = BasePreview.readableDuration(data[key].endTime - data[key].startTime);
const url = VideoCard.signedUrl(SO0050.Proxy.Bucket, data[key].output);
items.push(BasePreview.carouselLead(`${BasePreview.capitalize(key)} (Comprehend)`));
items.push('<dl class="row text-left">');
items.push(`<dt class="col-sm-3">Elapsed</dt><dd class="col-sm-9">${elapsed}</dd>`);
items.push(`<dt class="col-sm-3">Job Id</dt><dd class="col-sm-9">${data[key].id || '--'}</dd>`);
items.push(`<dt class="col-sm-3">JSON File</dt><dd class="col-sm-9"><a href="${url}">download here</a></dd>`);
items.push('</dl>');
}
data = card.getTranscribeAnalysis();
if ((data || {}).name) {
const elapsed = BasePreview.readableDuration(data.endTime - data.startTime);
const url = VideoCard.signedUrl(SO0050.Proxy.Bucket, data.output);
items.push(BasePreview.carouselLead('Transcription (Transcribe)'));
items.push('<dl class="row text-left">');
items.push(`<dt class="col-sm-3">Elapsed</dt><dd class="col-sm-9">${elapsed}</dd>`);
items.push(`<dt class="col-sm-3">Job Id</dt><dd class="col-sm-9">${data.name || '--'}</dd>`);
items.push(`<dt class="col-sm-3">Text File</dt><dd class="col-sm-9"><a href="${url}">download here</a></dd>`);
items.push('</dl>');
}
if (!items.length) {
items.push('No data');
}
const element = `
<div class="carousel-item ${active}" id="carousel-summary">
<img class="d-block w-100" src="${svg}" alt="Summary">
<div class="carousel-content d-none d-md-block">
<div class="container">
${items.join('\n')}
</div>
<div class="mb-5"></div>
</div>
</div>
`;
return element;
}