@pokemontcgapi/sdk 0.1.2 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,9 +1,9 @@
1
- import { HttpClient, Page, type ClientOptions } from './client.js';
2
- import type { Artist, BatchResult, Card, CardInclude, CardListParams, CardSet, CatalogStatus, Health, IdentifyOptions, ListParams, Locale, SetListParams, VisionResponse } from './types.js';
1
+ import { HttpClient, Page, type ClientOptions, type ResponseInfo } from './client.js';
2
+ import type { Artist, BatchResult, Card, CardInclude, CardListParams, CardPrices, CardSet, CatalogStatus, ChangesParams, ChangesResponse, Health, HistoryParams, HistoryResponse, IdentifyOptions, ListParams, Locale, MoversParams, MoversResponse, PriceFilterParams, PriceSourceInfo, PricesResponse, SealedListParams, SealedPrices, SealedProduct, Series, SetListParams, StatsResponse, VisionResponse } from './types.js';
3
3
  export * from './errors.js';
4
4
  export * from './types.js';
5
5
  export { Page } from './client.js';
6
- export type { ClientOptions } from './client.js';
6
+ export type { ClientOptions, ResponseInfo } from './client.js';
7
7
  /**
8
8
  * Client di pokemontcgapi.com.
9
9
  *
@@ -28,9 +28,23 @@ export declare class PokemonTcgApi {
28
28
  readonly cards: CardsResource;
29
29
  readonly sets: SetsResource;
30
30
  readonly artists: ArtistsResource;
31
+ readonly series: SeriesResource;
32
+ readonly sealed: SealedResource;
33
+ readonly prices: PricesResource;
31
34
  readonly reference: ReferenceResource;
32
35
  readonly vision: VisionResource;
33
36
  constructor(options?: ClientOptions);
37
+ /**
38
+ * Gli header dell'ultima risposta: crediti scalati, quota rimasta e cio' che
39
+ * il piano ha trattenuto (`planWithheld`). Con richieste concorrenti e'
40
+ * l'ultima arrivata: per contarle tutte si usa `onResponse` nelle opzioni.
41
+ */
42
+ get lastResponse(): ResponseInfo | null;
43
+ /**
44
+ * Il feed incrementale: cosa e' cambiato dopo `since`. Si salva
45
+ * `meta.next_since` e lo si rimanda alla chiamata dopo.
46
+ */
47
+ changes(params?: ChangesParams): Promise<ChangesResponse>;
34
48
  /** Conteggi di catalogo e freschezza per fonte. */
35
49
  status(): Promise<CatalogStatus>;
36
50
  /** Liveness. Separato da `status()`: un ingest fermo non e' un servizio giu'. */
@@ -50,9 +64,9 @@ declare class CardsResource {
50
64
  /**
51
65
  * Fino a 100 id in una richiesta.
52
66
  *
53
- * La risposta porta `requested` e `found`: gli id che non esistono vengono
54
- * semplicemente omessi da `data`, non segnalati uno per uno. Confrontare i due
55
- * numeri e' l'unico modo di accorgersene, quindi il tipo li espone entrambi.
67
+ * La risposta porta `requested` e `found`, e quando qualcosa non si risolve
68
+ * anche `missing`: un elemento per id, con `suggested_id` dove l'id e' un
69
+ * alias storico di una carta che oggi sta in un altro set.
56
70
  */
57
71
  batch(ids: readonly string[], params?: {
58
72
  select?: readonly string[];
@@ -70,7 +84,9 @@ declare class SetsResource {
70
84
  */
71
85
  list(params?: SetListParams): Promise<Page<CardSet>>;
72
86
  /** Un set per codice, slug o id alternativo. */
73
- get(code: string): Promise<CardSet>;
87
+ get(code: string, params?: {
88
+ lang?: Locale;
89
+ }): Promise<CardSet>;
74
90
  /** Le carte di un set, in ordine di collezione. */
75
91
  cards(code: string, params?: CardListParams): Promise<Page<Card>>;
76
92
  }
@@ -80,6 +96,58 @@ declare class ArtistsResource {
80
96
  list(params?: ListParams): Promise<Page<Artist>>;
81
97
  get(slug: string): Promise<Artist>;
82
98
  }
99
+ declare class SeriesResource {
100
+ private readonly http;
101
+ constructor(http: HttpClient);
102
+ /** Le serie (Scarlet & Violet, Sword & Shield, ...) con il numero di set. */
103
+ list(params?: {
104
+ orderBy?: string;
105
+ limit?: number;
106
+ cursor?: string;
107
+ }): Promise<Page<Series>>;
108
+ }
109
+ /** Prodotti sigillati: booster box, ETB, tin, blister, collezioni. */
110
+ declare class SealedResource {
111
+ private readonly http;
112
+ constructor(http: HttpClient);
113
+ list(params?: SealedListParams): Promise<Page<SealedProduct>>;
114
+ get(id: string, params?: {
115
+ lang?: Locale;
116
+ }): Promise<SealedProduct>;
117
+ /** Prezzi correnti di un prodotto. 2 crediti. L'indice composito non copre i sigillati: `index` e' `null`. */
118
+ prices(id: string, params?: PriceFilterParams): Promise<PricesResponse<SealedPrices>>;
119
+ }
120
+ /**
121
+ * Le rotte prezzi dedicate.
122
+ *
123
+ * Ogni riga dice da dove viene (`source`), su cosa poggia (`basis`: venduto,
124
+ * richiesto, guida, derivato) e di che giorno e' (`as_of`). Le righe che il
125
+ * piano non copre mancano dal corpo: `client.lastResponse.planWithheld` dice
126
+ * quali.
127
+ */
128
+ declare class PricesResource {
129
+ private readonly http;
130
+ constructor(http: HttpClient);
131
+ /** Indice e quotazioni correnti di una carta. 2 crediti. */
132
+ card(id: string, params?: PriceFilterParams): Promise<PricesResponse<CardPrices>>;
133
+ /** Fino a 50 carte in una chiamata, 4 crediti ogni 25. */
134
+ current(ids: readonly string[], params?: PriceFilterParams): Promise<BatchResult<CardPrices>>;
135
+ /**
136
+ * Storia giornaliera. 5 crediti. La finestra dipende dal piano (7 giorni in
137
+ * prova, 30 su Developer, intera da Growth): chiederne una piu' larga da'
138
+ * `UpgradeRequiredError` con `permittedWindow`.
139
+ */
140
+ history(id: string, params?: HistoryParams): Promise<HistoryResponse>;
141
+ /** Minimo, massimo, mediana e variazione dell'indice su una finestra. 2 crediti. */
142
+ stats(id: string, params?: {
143
+ window?: string;
144
+ locale?: Locale | string;
145
+ }): Promise<StatsResponse>;
146
+ /** Le carte che si sono mosse di piu'. 3 crediti, dal piano Growth (`PlanRequiredError` sotto). */
147
+ movers(params?: MoversParams): Promise<MoversResponse>;
148
+ /** Le fonti, con il ritardo dichiarato di ciascuna. Gratuita. */
149
+ sources(): Promise<readonly PriceSourceInfo[]>;
150
+ }
83
151
  /**
84
152
  * I vocabolari, per popolare i filtri di una UI senza indovinare le stringhe.
85
153
  *
@@ -97,7 +165,13 @@ declare class ReferenceResource {
97
165
  private readonly http;
98
166
  constructor(http: HttpClient);
99
167
  private pending;
100
- private all;
168
+ /**
169
+ * Tutti i vocabolari in una volta: oltre ai quattro qui sotto, `locales`,
170
+ * `print_regions`, `conditions`, `printings`, `grading_companies`,
171
+ * `price_variants`, `price_bases`, `change_kinds` e gli altri che
172
+ * `/v1/reference` elenca.
173
+ */
174
+ all(): Promise<Record<string, readonly string[]>>;
101
175
  private list;
102
176
  types(): Promise<readonly string[]>;
103
177
  subtypes(): Promise<readonly string[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -26,6 +26,9 @@ export class PokemonTcgApi {
26
26
  cards;
27
27
  sets;
28
28
  artists;
29
+ series;
30
+ sealed;
31
+ prices;
29
32
  reference;
30
33
  vision;
31
34
  constructor(options = {}) {
@@ -33,9 +36,27 @@ export class PokemonTcgApi {
33
36
  this.cards = new CardsResource(this.http);
34
37
  this.sets = new SetsResource(this.http);
35
38
  this.artists = new ArtistsResource(this.http);
39
+ this.series = new SeriesResource(this.http);
40
+ this.sealed = new SealedResource(this.http);
41
+ this.prices = new PricesResource(this.http);
36
42
  this.reference = new ReferenceResource(this.http);
37
43
  this.vision = new VisionResource(this.http);
38
44
  }
45
+ /**
46
+ * Gli header dell'ultima risposta: crediti scalati, quota rimasta e cio' che
47
+ * il piano ha trattenuto (`planWithheld`). Con richieste concorrenti e'
48
+ * l'ultima arrivata: per contarle tutte si usa `onResponse` nelle opzioni.
49
+ */
50
+ get lastResponse() {
51
+ return this.http.lastResponse;
52
+ }
53
+ /**
54
+ * Il feed incrementale: cosa e' cambiato dopo `since`. Si salva
55
+ * `meta.next_since` e lo si rimanda alla chiamata dopo.
56
+ */
57
+ changes(params = {}) {
58
+ return this.http.get('/v1/changes', { ...params });
59
+ }
39
60
  /** Conteggi di catalogo e freschezza per fonte. */
40
61
  status() {
41
62
  return this.http.get('/v1/status');
@@ -62,9 +83,9 @@ class CardsResource {
62
83
  /**
63
84
  * Fino a 100 id in una richiesta.
64
85
  *
65
- * La risposta porta `requested` e `found`: gli id che non esistono vengono
66
- * semplicemente omessi da `data`, non segnalati uno per uno. Confrontare i due
67
- * numeri e' l'unico modo di accorgersene, quindi il tipo li espone entrambi.
86
+ * La risposta porta `requested` e `found`, e quando qualcosa non si risolve
87
+ * anche `missing`: un elemento per id, con `suggested_id` dove l'id e' un
88
+ * alias storico di una carta che oggi sta in un altro set.
68
89
  */
69
90
  batch(ids, params = {}) {
70
91
  if (ids.length === 0)
@@ -90,8 +111,8 @@ class SetsResource {
90
111
  return new Page(this.http, body);
91
112
  }
92
113
  /** Un set per codice, slug o id alternativo. */
93
- get(code) {
94
- return this.http.get(`/v1/sets/${encodeURIComponent(code)}`);
114
+ get(code, params = {}) {
115
+ return this.http.get(`/v1/sets/${encodeURIComponent(code)}`, { ...params });
95
116
  }
96
117
  /** Le carte di un set, in ordine di collezione. */
97
118
  async cards(code, params = {}) {
@@ -112,6 +133,83 @@ class ArtistsResource {
112
133
  return this.http.get(`/v1/artists/${encodeURIComponent(slug)}`);
113
134
  }
114
135
  }
136
+ class SeriesResource {
137
+ http;
138
+ constructor(http) {
139
+ this.http = http;
140
+ }
141
+ /** Le serie (Scarlet & Violet, Sword & Shield, ...) con il numero di set. */
142
+ async list(params = {}) {
143
+ const body = await this.http.get('/v1/series', { ...params });
144
+ return new Page(this.http, body);
145
+ }
146
+ }
147
+ /** Prodotti sigillati: booster box, ETB, tin, blister, collezioni. */
148
+ class SealedResource {
149
+ http;
150
+ constructor(http) {
151
+ this.http = http;
152
+ }
153
+ async list(params = {}) {
154
+ const body = await this.http.get('/v1/sealed', { ...params });
155
+ return new Page(this.http, body);
156
+ }
157
+ get(id, params = {}) {
158
+ return this.http.get(`/v1/sealed/${encodeURIComponent(id)}`, { ...params });
159
+ }
160
+ /** Prezzi correnti di un prodotto. 2 crediti. L'indice composito non copre i sigillati: `index` e' `null`. */
161
+ prices(id, params = {}) {
162
+ return this.http.get(`/v1/sealed/${encodeURIComponent(id)}/prices`, { ...params });
163
+ }
164
+ }
165
+ /**
166
+ * Le rotte prezzi dedicate.
167
+ *
168
+ * Ogni riga dice da dove viene (`source`), su cosa poggia (`basis`: venduto,
169
+ * richiesto, guida, derivato) e di che giorno e' (`as_of`). Le righe che il
170
+ * piano non copre mancano dal corpo: `client.lastResponse.planWithheld` dice
171
+ * quali.
172
+ */
173
+ class PricesResource {
174
+ http;
175
+ constructor(http) {
176
+ this.http = http;
177
+ }
178
+ /** Indice e quotazioni correnti di una carta. 2 crediti. */
179
+ card(id, params = {}) {
180
+ return this.http.get(`/v1/cards/${encodeURIComponent(id)}/prices`, { ...params });
181
+ }
182
+ /** Fino a 50 carte in una chiamata, 4 crediti ogni 25. */
183
+ current(ids, params = {}) {
184
+ if (ids.length === 0)
185
+ return Promise.resolve({ data: [], requested: 0, found: 0 });
186
+ if (ids.length > 50) {
187
+ throw new RangeError(`prices.current() accepts at most 50 ids, received ${ids.length}. Chunk the list.`);
188
+ }
189
+ return this.http.get('/v1/prices/current', { ids, ...params });
190
+ }
191
+ /**
192
+ * Storia giornaliera. 5 crediti. La finestra dipende dal piano (7 giorni in
193
+ * prova, 30 su Developer, intera da Growth): chiederne una piu' larga da'
194
+ * `UpgradeRequiredError` con `permittedWindow`.
195
+ */
196
+ history(id, params = {}) {
197
+ return this.http.get(`/v1/cards/${encodeURIComponent(id)}/prices/history`, { ...params });
198
+ }
199
+ /** Minimo, massimo, mediana e variazione dell'indice su una finestra. 2 crediti. */
200
+ stats(id, params = {}) {
201
+ return this.http.get(`/v1/cards/${encodeURIComponent(id)}/prices/stats`, { ...params });
202
+ }
203
+ /** Le carte che si sono mosse di piu'. 3 crediti, dal piano Growth (`PlanRequiredError` sotto). */
204
+ movers(params = {}) {
205
+ return this.http.get('/v1/prices/movers', { ...params });
206
+ }
207
+ /** Le fonti, con il ritardo dichiarato di ciascuna. Gratuita. */
208
+ async sources() {
209
+ const body = await this.http.get('/v1/prices/sources');
210
+ return body.data;
211
+ }
212
+ }
115
213
  /**
116
214
  * I vocabolari, per popolare i filtri di una UI senza indovinare le stringhe.
117
215
  *
@@ -131,6 +229,12 @@ class ReferenceResource {
131
229
  this.http = http;
132
230
  }
133
231
  pending = null;
232
+ /**
233
+ * Tutti i vocabolari in una volta: oltre ai quattro qui sotto, `locales`,
234
+ * `print_regions`, `conditions`, `printings`, `grading_companies`,
235
+ * `price_variants`, `price_bases`, `change_kinds` e gli altri che
236
+ * `/v1/reference` elenca.
237
+ */
134
238
  all() {
135
239
  // La promise, non il valore: due chiamate ravvicinate condividono una
136
240
  // richiesta sola invece di farne due e tenere l'ultima.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}