mirror of
https://github.com/flutter/samples.git
synced 2025-11-08 22:09:06 +00:00
Add thumbnail images to VSI (#415)
* add thumbnail image generation improves page load from 41.7 MB to 7.6 MB * remove filesCreated set - thumbnails for each image are generated. * set package:image version in pubspec * Update grind.dart
This commit is contained in:
@@ -7,6 +7,7 @@ library data;
|
||||
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
import 'package:samples_index/src/util.dart' as util;
|
||||
import 'package:path/path.dart' as path;
|
||||
|
||||
part 'data.g.dart';
|
||||
|
||||
@@ -103,6 +104,13 @@ class Sample {
|
||||
|
||||
Map<String, dynamic> toJson() => _$SampleToJson(this);
|
||||
|
||||
String get thumbnail {
|
||||
var screenshotUrl = screenshots.first.url;
|
||||
var prefix = path.dirname(screenshotUrl);
|
||||
var filename = path.basenameWithoutExtension(screenshotUrl);
|
||||
return path.join(prefix, filename + '_thumb.png');
|
||||
}
|
||||
|
||||
String get searchAttributes {
|
||||
var buf = StringBuffer();
|
||||
buf.write(name.toLowerCase());
|
||||
|
||||
@@ -136,7 +136,7 @@ String _indexCards(List<Sample> samples) => samples.map(_indexCard).join();
|
||||
String _indexCard(Sample sample) => '''
|
||||
<div class="mdc-card demo-card mdc-elevation--z0" search-attrs="${_escapeAttribute(sample.searchAttributes)}">
|
||||
<div class="mdc-card__primary-action demo-card__primary-action" tabindex="0" href="${sample.filename}.html">
|
||||
<div class="mdc-card__media mdc-card__media--16-9 demo-card__media" style="${_backgroundImage(sample.screenshots.first.url)}"></div>
|
||||
<div class="mdc-card__media mdc-card__media--16-9 demo-card__media" style="${_backgroundImage(sample.thumbnail)}"></div>
|
||||
<div class="demo-card__label type-label">${_escapeElement(sample.type)}</div>
|
||||
<div class="demo-card__primary">
|
||||
<h2 class="demo-card__title mdc-typography mdc-typography--headline6">${_escapeElement(sample.name)}</h2>
|
||||
|
||||
Reference in New Issue
Block a user