Update artifact related data classes to use the self-hosted url

This commit is contained in:
Shawn 2023-10-03 14:11:59 -06:00
parent 27613c6922
commit 5065002bce
3 changed files with 21 additions and 105 deletions

View File

@ -14,6 +14,8 @@ class ArtifactData {
required this.objectBeginYear,
required this.objectEndYear,
});
static const String baseSelfHostedImagePath = 'https://www.wonderous.info/met/';
final String objectId; // Artifact ID, used to identify through MET server calls.
final String title; // Artifact title / name
final String image; // Artifact primary image URL (can have multiple)
@ -28,4 +30,12 @@ class ArtifactData {
final String dimension; // Width and height of physical artifact
final String classification; // Type of artifact
final String culture; // Culture of artifact
String get selfHostedImageUrl => getSelfHostedImageUrl(objectId);
String get selfHostedImageUrlSmall => getSelfHostedImageUrlSmall(objectId);
String get selfHostedImageUrlMedium => getSelfHostedImageUrlMedium(objectId);
static String getSelfHostedImageUrl(String id) => '$baseSelfHostedImagePath$id.jpg';
static String getSelfHostedImageUrlSmall(String id) => '$baseSelfHostedImagePath${id}_600.jpg';
static String getSelfHostedImageUrlMedium(String id) => '$baseSelfHostedImagePath${id}_2000.jpg';
}

View File

@ -1,10 +1,9 @@
import 'package:wonders/common_libs.dart';
import 'package:wonders/logic/data/artifact_data.dart';
class HighlightData {
HighlightData({
required this.title,
required this.imageUrl,
required this.imageUrlSmall,
required this.culture,
required this.artifactId,
required this.wonder,
@ -17,8 +16,6 @@ class HighlightData {
static List<HighlightData> get all => _highlights;
final String title;
final String imageUrl;
final String imageUrlSmall;
final String culture;
final String date;
@ -29,6 +26,9 @@ class HighlightData {
String get id => artifactId;
String get subtitle => wondersLogic.getData(wonder).artifactCulture;
String get imageUrl => ArtifactData.getSelfHostedImageUrl(artifactId);
String get imageUrlSmall => ArtifactData.getSelfHostedImageUrlSmall(artifactId);
}
// Note: look up a human readable page with:
@ -41,8 +41,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.chichenItza,
artifactId: '503940',
culture: 'Mayan',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/mi/web-large/DT4624a.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/mi/original/DT4624a.jpg',
date: '7th9th century',
),
HighlightData(
@ -50,8 +48,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.chichenItza,
artifactId: '312595',
culture: 'Maya',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/ao/web-large/DP-12659-001.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/ao/original/DP-12659-001.jpg',
date: '6th9th century',
),
HighlightData(
@ -59,8 +55,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.chichenItza,
artifactId: '310551',
culture: 'Maya',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/ao/web-large/DP102949.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/ao/original/DP102949.jpg',
date: 'mid-7th9th century',
),
HighlightData(
@ -68,8 +62,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.chichenItza,
artifactId: '316304',
culture: 'Maya',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/ao/web-large/DP219258.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/ao/original/DP219258.jpg',
date: '9th10th century',
),
HighlightData(
@ -77,8 +69,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.chichenItza,
artifactId: '313151',
culture: 'Maya',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/ao/web-large/1979.206.953_a.JPG',
imageUrl: 'https://images.metmuseum.org/CRDImages/ao/original/1979.206.953_a.JPG',
date: '7th8th century',
),
HighlightData(
@ -86,8 +76,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.chichenItza,
artifactId: '310480',
culture: 'Maya',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/ao/web-large/DP102948.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/ao/original/DP102948.jpg',
date: '10th11th century',
),
@ -97,8 +85,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.christRedeemer,
artifactId: '764815',
culture: '',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/ph/web-large/DP-15801-131.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/ph/original/DP-15801-131.jpg',
date: '186466',
),
HighlightData(
@ -106,8 +92,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.christRedeemer,
artifactId: '502019',
culture: 'Native American (Brazilian)',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/mi/web-large/midp89.4.1453.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/mi/original/midp89.4.1453.jpg',
date: '19th century',
),
HighlightData(
@ -115,8 +99,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.christRedeemer,
artifactId: '764814',
culture: '',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/ph/web-large/DP-15801-129.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/ph/original/DP-15801-129.jpg',
date: '186466',
),
HighlightData(
@ -124,8 +106,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.christRedeemer,
artifactId: '764816',
culture: '',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/ph/web-large/DP-15801-133.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/ph/original/DP-15801-133.jpg',
date: '186466',
),
HighlightData(
@ -133,8 +113,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.christRedeemer,
artifactId: '501319',
culture: 'African American (Brazil - Afro-Brazilian?)',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/mi/web-large/midp89.4.703.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/mi/original/midp89.4.703.jpg',
date: 'late 19th century',
),
@ -144,8 +122,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.colosseum,
artifactId: '251350',
culture: 'Roman',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/gr/web-large/DP331280.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/gr/original/DP331280.jpg',
date: 'A.D. 150175',
),
HighlightData(
@ -153,8 +129,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.colosseum,
artifactId: '255960',
culture: 'Roman',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/gr/web-large/DP145605.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/gr/original/DP145605.jpg',
date: '4th century A.D.',
),
HighlightData(
@ -162,8 +136,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.colosseum,
artifactId: '247993',
culture: 'Roman',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/gr/web-large/DP337220.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/gr/original/DP337220.jpg',
date: 'ca. A.D. 1437',
),
HighlightData(
@ -171,8 +143,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.colosseum,
artifactId: '250464',
culture: 'Roman',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/gr/web-large/DP105842.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/gr/original/DP105842.jpg',
date: 'late 2ndearly 3rd century A.D.',
),
HighlightData(
@ -180,8 +150,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.colosseum,
artifactId: '251476',
culture: 'Roman',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/gr/web-large/DP357289.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/gr/original/DP357289.jpg',
date: '1st2nd century A.D.',
),
HighlightData(
@ -189,8 +157,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.colosseum,
artifactId: '255960',
culture: 'Roman',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/gr/web-large/DP145605.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/gr/original/DP145605.jpg',
date: '4th century A.D.',
),
@ -200,8 +166,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.greatWall,
artifactId: '79091',
culture: 'French',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/ci/web-large/DT2183.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/ci/original/DT2183.jpg',
date: 'second half 16th century',
),
HighlightData(
@ -209,8 +173,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.greatWall,
artifactId: '781812',
culture: 'China',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/as/web-large/DP-17100-001.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/as/original/DP-17100-001.jpg',
date: 'early 17th century',
),
HighlightData(
@ -218,8 +180,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.greatWall,
artifactId: '40213',
culture: 'China',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/as/web-large/DP704217.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/as/original/DP704217.jpg',
date: 'early 15th century',
),
HighlightData(
@ -227,8 +187,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.greatWall,
artifactId: '40765',
culture: 'China',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/as/web-large/DP229015.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/as/original/DP229015.jpg',
date: '15th century',
),
HighlightData(
@ -236,8 +194,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.greatWall,
artifactId: '57612',
culture: 'China',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/as/web-large/DP164061.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/as/original/DP164061.jpg',
date: '',
),
HighlightData(
@ -245,8 +201,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.greatWall,
artifactId: '666573',
culture: 'China',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/as/web-large/DP356342.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/as/original/DP356342.jpg',
date: 'early 15th century',
),
@ -256,8 +210,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.machuPicchu,
artifactId: '313295',
culture: 'Inca',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/ao/web-large/DP-27120-001.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/ao/original/DP-27120-001.jpg',
date: '14thearly 16th century',
),
HighlightData(
@ -265,8 +217,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.machuPicchu,
artifactId: '316926',
culture: 'Inca',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/ao/web-large/DP158704.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/ao/original/DP158704.jpg',
date: '15thearly 16th century',
),
HighlightData(
@ -274,8 +224,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.machuPicchu,
artifactId: '309944',
culture: 'Inca',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/ao/web-large/DP-13440-023.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/ao/original/DP-13440-023.jpg',
date: '14001533',
),
HighlightData(
@ -283,8 +231,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.machuPicchu,
artifactId: '309436',
culture: 'Moche',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/ao/web-large/67.92.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/ao/original/67.92.jpg',
date: '4th7th century',
),
HighlightData(
@ -292,8 +238,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.machuPicchu,
artifactId: '309960',
culture: 'Inca',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/ao/web-large/DP-13440-031.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/ao/original/DP-13440-031.jpg',
date: '14001533',
),
HighlightData(
@ -301,8 +245,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.machuPicchu,
artifactId: '316873',
culture: 'Aztec',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/ao/web-large/DP341942.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/ao/original/DP341942.jpg',
date: '14001521',
),
@ -312,8 +254,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.petra,
artifactId: '325900',
culture: 'Nabataean',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/an/web-large/ME67_246_19.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/an/original/ME67_246_19.jpg',
date: 'ca. 1st century A.D.',
),
HighlightData(
@ -321,8 +261,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.petra,
artifactId: '325902',
culture: 'Nabataean',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/an/web-large/ME67_246_21.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/an/original/ME67_246_21.jpg',
date: 'ca. 1st century A.D.',
),
HighlightData(
@ -330,8 +268,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.petra,
artifactId: '325919',
culture: 'Nabataean',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/an/web-large/ME67_246_38.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/an/original/ME67_246_38.jpg',
date: 'ca. 1st century A.D.',
),
HighlightData(
@ -339,8 +275,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.petra,
artifactId: '325884',
culture: 'Nabataean',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/an/web-large/ME67_246_3.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/an/original/ME67_246_3.jpg',
date: 'ca. 1st century A.D.',
),
HighlightData(
@ -348,8 +282,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.petra,
artifactId: '325887',
culture: 'Nabataean',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/an/web-large/ME67_246_6.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/an/original/ME67_246_6.jpg',
date: 'ca. 1st century A.D.',
),
HighlightData(
@ -357,8 +289,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.petra,
artifactId: '325891',
culture: 'Nabataean',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/an/web-large/ME67_246_10.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/an/original/ME67_246_10.jpg',
date: 'ca. 1st century A.D.',
),
@ -368,8 +298,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.pyramidsGiza,
artifactId: '543864',
culture: '',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/eg/web-large/DP330260.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/eg/original/DP330260.jpg',
date: 'ca. 19191885 B.C.',
),
HighlightData(
@ -377,8 +305,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.pyramidsGiza,
artifactId: '546488',
culture: '',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/eg/web-large/LC-34_1_183_EGDP033257.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/eg/original/LC-34_1_183_EGDP033257.jpg',
date: 'ca. 19811640 B.C.',
),
HighlightData(
@ -386,8 +312,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.pyramidsGiza,
artifactId: '557137',
culture: '',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/eg/web-large/15.3.205_EGDP015425.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/eg/original/15.3.205_EGDP015425.jpg',
date: 'ca. 18501640 B.C.',
),
HighlightData(
@ -395,8 +319,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.pyramidsGiza,
artifactId: '543900',
culture: '',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/eg/web-large/DP240451.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/eg/original/DP240451.jpg',
date: 'ca. 24202389 B.C. or later',
),
HighlightData(
@ -404,8 +326,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.pyramidsGiza,
artifactId: '543935',
culture: '',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/eg/web-large/DP109397.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/eg/original/DP109397.jpg',
date: 'ca. 24902472 B.C.',
),
HighlightData(
@ -413,8 +333,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.pyramidsGiza,
artifactId: '544782',
culture: '',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/eg/web-large/DP225343.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/eg/original/DP225343.jpg',
date: 'ca. 13361327 B.C.',
),
@ -424,8 +342,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.tajMahal,
artifactId: '453341',
culture: '',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/is/web-large/DP240307.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/is/original/DP240307.jpg',
date: 'mid-17th century',
),
HighlightData(
@ -433,8 +349,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.tajMahal,
artifactId: '453243',
culture: '',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/is/web-large/DP214317.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/is/original/DP214317.jpg',
date: 'late 17th century',
),
HighlightData(
@ -442,8 +356,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.tajMahal,
artifactId: '73309',
culture: 'India (Gujarat)',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/as/web-large/DP138506.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/as/original/DP138506.jpg',
date: 'mid-16th17th century',
),
HighlightData(
@ -451,8 +363,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.tajMahal,
artifactId: '24932',
culture: 'Indian, Mughal',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/aa/web-large/1988.147_007mar2015.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/aa/original/1988.147_007mar2015.jpg',
date: '18th century',
),
HighlightData(
@ -460,8 +370,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.tajMahal,
artifactId: '56230',
culture: 'India',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/as/web-large/DP-14153-029.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/as/original/DP-14153-029.jpg',
date: '18th19th century',
),
HighlightData(
@ -469,8 +377,6 @@ List<HighlightData> _highlights = [
wonder: WonderType.tajMahal,
artifactId: '35633',
culture: 'Indian',
imageUrlSmall: 'https://images.metmuseum.org/CRDImages/aa/web-large/DP219616.jpg',
imageUrl: 'https://images.metmuseum.org/CRDImages/aa/original/DP219616.jpg',
date: 'dated A.H. 1042/A.D. 163233',
),
];

View File

@ -1,17 +1,17 @@
import 'package:wonders/logic/data/artifact_data.dart';
class SearchData {
static const String baseImagePath = 'https://images.metmuseum.org/CRDImages/';
static const missingIds = [313256, 327544, 327596, 545776, 38549, 38578, 38473, 38598, 38153, 38203, 64486, 64487];
const SearchData(this.year, this.id, this.title, this.keywords, this.imagePath, [this.aspectRatio = 0]);
const SearchData(this.year, this.id, this.title, this.keywords, [this.aspectRatio = 0]);
final int year;
final int id;
final String imagePath;
final String keywords;
final String title;
final double aspectRatio;
String get imageUrl => baseImagePath + imagePath;
String get imageUrl => ArtifactData.getSelfHostedImageUrl('$id');
String get imageUrlSmall => ArtifactData.getSelfHostedImageUrlSmall('$id');
// used by the search helper tool:
String write() =>
"SearchData($year, $id, '$title', '$keywords', '$imagePath'${aspectRatio == 0 ? '' : ', ${aspectRatio.toStringAsFixed(2)}'})";
String write() => "SearchData($year, $id, '$title', '$keywords')";
}