Das TypeScript SDK
Installation
Abschnitt betitelt „Installation“npm i @tcgdex/sdk
bun i @tcgdex/sdk
yarn add @tcgdex/sdk
pnpm add @tcgdex/sdk
Grundlegende Verwendung
Abschnitt betitelt „Grundlegende Verwendung“// SDK in ESM/TypeScript importierenimport TCGdex from '@tcgdex/sdk'
// SDK mit Ihrer bevorzugten Sprache instanziierenconst tcgdex = new TCGdex('en');
// In einem asynchronen Kontext verwenden(async () => { // Furret aus dem Darkness Ablaze Set abrufen const card = await tcgdex.card.get('swsh3-136'); console.log(card.name); // "Furret"})();
Daten abrufen
Abschnitt betitelt „Daten abrufen“Das SDK bietet dedizierte Endpunkte für gängige Datentypen:
// Eine bestimmte Karte abrufenconst card = await tcgdex.card.get('swsh3-136');
// Ein bestimmtes Set abrufenconst set = await tcgdex.set.get('swsh3');
// Eine bestimmte Serie abrufenconst serie = await tcgdex.serie.get('swsh');
// Eine Liste aller Karten abrufenconst allCards = await tcgdex.card.list();
Zufällige Daten abrufen
Abschnitt betitelt „Zufällige Daten abrufen“Sie können auch zufällige Karten, Sets oder Serien abrufen:
// Eine zufällige Karte abrufenconst randomCard = await tcgdex.random.card();
// Ein zufälliges Set abrufenconst randomSet = await tcgdex.random.set();
// Eine zufällige Serie abrufenconst randomSerie = await tcgdex.random.serie();
Erweiterte Abfragen
Abschnitt betitelt „Erweiterte Abfragen“Das SDK bietet ein leistungsstarkes Abfragesystem zur Filterung von Daten:
import TCGdex, { Query } from '@tcgdex/sdk';
const tcgdex = new TCGdex('en');
// Abfrage erstellen, um Pikachu-Karten mit HP zwischen 60 und 70 zu findenconst pikachuCards = await tcgdex.card.list( Query.create() .equal('name', 'Pikachu') // Exakter Namensabgleich .greaterOrEqualThan('hp', 60) // HP >= 60 .lesserThan('hp', 70) // HP < 70 .sort('localId', 'ASC') // Nach ID aufsteigend sortieren);
// Karten finden, die "5" in ihrer ID enthalten, aber nicht "tg"const filteredCards = await tcgdex.card.list( Query.create() .contains('localId', '5') // ID enthält "5" .not.contains('localId', 'tg') // ID enthält nicht "tg");
// Paginierungsbeispiel - Seite 3 mit 2 Elementen pro Seite abrufenconst paginatedCards = await tcgdex.card.list( Query.create() .paginate(3, 2));
Objektbeziehungen
Abschnitt betitelt „Objektbeziehungen“Das SDK erleichtert die Navigation zwischen Objektbeziehungen:
// Eine Karte abrufen und dann das zugehörige Set abrufenconst card = await tcgdex.card.get('swsh3-136');const set = await card.getSet();
// Ein Set abrufen und dann die zugehörige Serie abrufenconst set = await tcgdex.set.get('swsh3');const serie = await set.getSerie();
// Eine Karte aus der Kartenliste eines Sets abrufenconst set = await tcgdex.set.get('swsh3');const firstCardResume = set.cards[0];const fullCard = await firstCardResume.getCard();
Filtern nach Attributen
Abschnitt betitelt „Filtern nach Attributen“Finden Sie Karten nach bestimmten Attributen:
// Alle Feuer-Typ-Karten abrufenconst fireType = await tcgdex.type.get('fire');
// Alle Karten mit bestimmten HP abrufenconst hp90Cards = await tcgdex.hp.get('90');
// Alle Karten eines bestimmten Illustrators abrufenconst illustratorCards = await tcgdex.illustrator.get('TOKIYA');
// Alle Karten mit einer bestimmten Seltenheit abrufenconst rareCards = await tcgdex.rarity.get('rare');
Konfigurationsoptionen
Abschnitt betitelt „Konfigurationsoptionen“Das SDK bietet verschiedene Konfigurationsoptionen:
// SDK mit einer bestimmten Sprache erstellenconst tcgdex = new TCGdex('fr'); // Französisch
// Sprache nach der Initialisierung änderntcgdex.setLang('en'); // Zu Englisch wechseln
// Einen benutzerdefinierten API-Endpunkt festlegentcgdex.setEndpoint('https://custom-api.example.com/v2');
// Caching konfigurierentcgdex.setCacheTTL(3600); // Cache-Dauer auf 1 Stunde setzen
Kartenbilder
Abschnitt betitelt „Kartenbilder“Greifen Sie einfach auf Kartenbilder zu:
const card = await tcgdex.card.get('swsh3-136');
// URL für hochqualitatives PNG-Bild abrufenconst highQualityPng = card.getImageURL('high', 'png');
// URL für niedrigqualitatives WEBP-Bild für bessere Performance abrufenconst lowQualityWebp = card.getImageURL('low', 'webp');
Verwandte Ressourcen
Abschnitt betitelt „Verwandte Ressourcen“- Vollständige REST-API-Dokumentation prüfen für alle verfügbaren Endpunkte
- Quellcode auf GitHub
- NPM-Paket
- Discord-Community