Initial public commit

This commit is contained in:
Shawn
2022-08-29 20:38:28 -06:00
commit a1e1aa156f
708 changed files with 21643 additions and 0 deletions
.github
.gitignore.metadata
.vscode
LICENSEREADME.mdanalysis_options.yaml
android
assets
fonts
images
_common
2.0x
3.0x
adjust-search.pngapp-logo-plain.pngapp-logo.pngarrow-indicator.pngcloud-white.pngcloud-white.svgcompass-full.svgcompass-simple.svgconstruction.pnggeography.pnghistory.png
icons
intro-camel.jpgintro-mask-1.pngintro-mask-2.pngintro-mask-3.pngintro-petra.jpgintro-statue.jpglocation-pin.pngparticle-21x23.pngribbon-end.pngsearch-map.pngtab-artifacts-active.pngtab-artifacts.pngtab-bubble-bar.pngtab-bubble.pngtab-editorial-active.pngtab-editorial.pngtab-photos-active.pngtab-photos.pngtab-timeline-active.pngtab-timeline.png
texture
chichen_itza
christ_the_redeemer
collectibles
colosseum
great_wall_of_china
machu_picchu
petra
pyramids
taj_mahal
marketing
flutter_native_splash.yaml
ios
l10n.yaml
lib
_tools
assets.dartcommon_libs.dart
l10n
logic
main.dartrouter.dart
styles
ui
app_scaffold.dart
common
screens
wonder_illustrations
pubspec.lockpubspec.yaml
py
release_notes.txt
tools

@ -0,0 +1,23 @@
import 'dart:collection';
import 'package:wonders/common_libs.dart';
import 'package:wonders/logic/common/string_utils.dart';
import 'package:wonders/logic/data/artifact_data.dart';
import 'package:wonders/logic/met_api_service.dart';
import 'package:wonders/logic/common/http_client.dart';
class MetAPILogic {
final HashMap<String, ArtifactData?> _artifactCache = HashMap();
MetAPIService get service => GetIt.I.get<MetAPIService>();
/// Returns artifact data by ID. Returns null if artifact cannot be found. */
Future<ArtifactData?> getArtifactByID(String id) async {
if (_artifactCache.containsKey(id)) return _artifactCache[id];
ServiceResult<ArtifactData?> result = (await service.getObjectByID(id));
if (!result.success) throw StringUtils.supplant($strings.artifactDetailsErrorNotFound, {'{artifactId}': id});
ArtifactData? artifact = result.content;
return _artifactCache[id] = artifact;
}
}