Das JavaScript SDK
Installation
Abschnitt betitelt „Installation“npm i @tcgdex/sdk
bun i @tcgdex/sdk
yarn add @tcgdex/sdk
pnpm add @tcgdex/sdk
<script src="https://cdn.jsdelivr.net/npm/@tcgdex/sdk@2/dist/tcgdex.browser.js"></script>
Grundlegende Verwendung
Abschnitt betitelt „Grundlegende Verwendung“// SDK in ESM/TypeScript importierenimport TCGdex from '@tcgdex/sdk'
// ODER SDK in CommonJS importierenconst TCGdex = require('@tcgdex/sdk').default
// SDK mit Ihrer bevorzugten Sprache initialisierenconst 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"})();
<script src="https://cdn.jsdelivr.net/npm/@tcgdex/sdk@2/dist/tcgdex.browser.js"></script><script> // SDK initialisieren const 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" })();</script>
Daten abrufen
Abschnitt betitelt „Daten abrufen“Das SDK bietet spezielle 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 zum Filtern von Daten:
import TCGdex, { Query } from '@tcgdex/sdk';
const tcgdex = new TCGdex('en');
// Eine Abfrage erstellen, um Pikachu-Karten mit HP zwischen 60 und 70 zu findenconst pikachuCards = await tcgdex.card.list( Query.create() .equal('name', 'Pikachu') // Exakter Name .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));
Objekt-Beziehungen
Abschnitt betitelt „Objekt-Beziehungen“Das SDK erleichtert die Navigation zwischen verknüpften Objekten:
// Eine Karte abrufen und dann ihr Set abrufenconst card = await tcgdex.card.get('swsh3-136');const set = await card.getSet();
// Ein Set abrufen und dann seine 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 Konfigurationsmöglichkeiten:
// SDK mit einer bestimmten Sprache erstellenconst tcgdex = new TCGdex('fr'); // Französisch
// Sprache nach der Initialisierung änderntcgdex.setLang('en'); // Zu Englisch wechseln
// Benutzerdefinierten API-Endpunkt festlegentcgdex.setEndpoint('https://custom-api.example.com/v2');
// Caching konfigurierentcgdex.setCacheTTL(3600); // Cache-Dauer auf 1 Stunde setzen
Karten-Bilder
Abschnitt betitelt „Karten-Bilder“Einfacher Zugriff auf Kartenbilder:
const card = await tcgdex.card.get('swsh3-136');
// URL für hochqualitatives PNG-Bild abrufenconst highQualityPng = card.getImageURL('high', 'png');
// URL für WEBP-Bild mit niedriger Qualität für bessere Performance abrufenconst lowQualityWebp = card.getImageURL('low', 'webp');