Le SDK TypeScript
Installation
Section intitulée « Installation »npm i @tcgdex/sdk
bun i @tcgdex/sdk
yarn add @tcgdex/sdk
pnpm add @tcgdex/sdk
Utilisation de base
Section intitulée « Utilisation de base »// Importer le SDK en ESM/TypeScriptimport TCGdex from '@tcgdex/sdk'
// Instancier le SDK avec votre langue préféréeconst tcgdex = new TCGdex('en');
// Utiliser dans un contexte asynchrone(async () => { // Récupérer Furret du set Darkness Ablaze const card = await tcgdex.card.get('swsh3-136'); console.log(card.name); // "Furret"})();
Récupération des données
Section intitulée « Récupération des données »Le SDK fournit des points d’accès dédiés pour les types de données courants :
// Obtenir une carte spécifiqueconst card = await tcgdex.card.get('swsh3-136');
// Obtenir un set spécifiqueconst set = await tcgdex.set.get('swsh3');
// Obtenir une série spécifiqueconst serie = await tcgdex.serie.get('swsh');
// Obtenir une liste de toutes les cartesconst allCards = await tcgdex.card.list();
Obtenir des données aléatoires
Section intitulée « Obtenir des données aléatoires »Vous pouvez également récupérer des cartes, des sets ou des séries aléatoires :
// Obtenir une carte aléatoireconst randomCard = await tcgdex.random.card();
// Obtenir un set aléatoireconst randomSet = await tcgdex.random.set();
// Obtenir une série aléatoireconst randomSerie = await tcgdex.random.serie();
Requêtes avancées
Section intitulée « Requêtes avancées »Le SDK fournit un système de requêtes puissant pour filtrer les données :
import TCGdex, { Query } from '@tcgdex/sdk';
const tcgdex = new TCGdex('en');
// Créer une requête pour trouver les cartes Pikachu avec HP entre 60 et 70const pikachuCards = await tcgdex.card.list( Query.create() .equal('name', 'Pikachu') // Correspondance exacte du nom .greaterOrEqualThan('hp', 60) // HP >= 60 .lesserThan('hp', 70) // HP < 70 .sort('localId', 'ASC') // Trier par ID ascendant);
// Trouver les cartes contenant "5" dans leur ID mais pas "tg"const filteredCards = await tcgdex.card.list( Query.create() .contains('localId', '5') // L'ID contient "5" .not.contains('localId', 'tg') // L'ID ne contient pas "tg");
// Exemple de pagination - obtenir la page 3 avec 2 éléments par pageconst paginatedCards = await tcgdex.card.list( Query.create() .paginate(3, 2));
Relations entre objets
Section intitulée « Relations entre objets »Le SDK facilite la navigation entre les relations d’objets :
// Obtenir une carte puis récupérer son setconst card = await tcgdex.card.get('swsh3-136');const set = await card.getSet();
// Obtenir un set puis récupérer sa sérieconst set = await tcgdex.set.get('swsh3');const serie = await set.getSerie();
// Obtenir une carte à partir de la liste de cartes d'un setconst set = await tcgdex.set.get('swsh3');const firstCardResume = set.cards[0];const fullCard = await firstCardResume.getCard();
Filtrer par attributs
Section intitulée « Filtrer par attributs »Trouvez des cartes par attributs spécifiques :
// Obtenir toutes les cartes de type feuconst fireType = await tcgdex.type.get('fire');
// Obtenir toutes les cartes avec un HP spécifiqueconst hp90Cards = await tcgdex.hp.get('90');
// Obtenir toutes les cartes d'un illustrateur spécifiqueconst illustratorCards = await tcgdex.illustrator.get('TOKIYA');
// Obtenir toutes les cartes avec une rareté spécifiqueconst rareCards = await tcgdex.rarity.get('rare');
Options de configuration
Section intitulée « Options de configuration »Le SDK fournit plusieurs options de configuration :
// Créer le SDK avec une langue spécifiqueconst tcgdex = new TCGdex('fr'); // Français
// Changer la langue après l'initialisationtcgdex.setLang('en'); // Passer à l'anglais
// Définir un point d'entrée API personnalisétcgdex.setEndpoint('https://custom-api.example.com/v2');
// Configurer la mise en cachetcgdex.setCacheTTL(3600); // Définir la durée du cache à 1 heure
Images des cartes
Section intitulée « Images des cartes »Accédez facilement aux images des cartes :
const card = await tcgdex.card.get('swsh3-136');
// Obtenir l'URL de l'image PNG haute qualitéconst highQualityPng = card.getImageURL('high', 'png');
// Obtenir l'URL de l'image WEBP basse qualité pour les performancesconst lowQualityWebp = card.getImageURL('low', 'webp');
Ressources connexes
Section intitulée « Ressources connexes »- Consultez la documentation complète de l’API REST pour tous les points d’entrée disponibles
- Code source sur GitHub
- Package NPM
- Communauté Discord