@chanomhub/sdk 1.2.6 → 1.2.8

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.
Files changed (41) hide show
  1. package/dist/index.d.ts +3 -1
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +2 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/repositories/articleRepository.d.ts +13 -13
  6. package/dist/repositories/articleRepository.d.ts.map +1 -1
  7. package/dist/repositories/articleRepository.js +89 -45
  8. package/dist/repositories/articleRepository.js.map +1 -1
  9. package/dist/repositories/index.d.ts +1 -0
  10. package/dist/repositories/index.d.ts.map +1 -1
  11. package/dist/repositories/index.js +3 -1
  12. package/dist/repositories/index.js.map +1 -1
  13. package/dist/repositories/modsRepository.d.ts +21 -0
  14. package/dist/repositories/modsRepository.d.ts.map +1 -0
  15. package/dist/repositories/modsRepository.js +32 -0
  16. package/dist/repositories/modsRepository.js.map +1 -0
  17. package/dist/repositories/modsRepository.temp.d.ts +20 -0
  18. package/dist/repositories/modsRepository.temp.d.ts.map +1 -0
  19. package/dist/repositories/modsRepository.temp.js +44 -0
  20. package/dist/repositories/modsRepository.temp.js.map +1 -0
  21. package/dist/types/article.d.ts +14 -1
  22. package/dist/types/article.d.ts.map +1 -1
  23. package/dist/types/common.d.ts +10 -0
  24. package/dist/types/common.d.ts.map +1 -1
  25. package/dist/types/index.d.ts +1 -0
  26. package/dist/types/index.d.ts.map +1 -1
  27. package/dist/types/index.js +1 -0
  28. package/dist/types/index.js.map +1 -1
  29. package/dist/types/mod.d.ts +31 -0
  30. package/dist/types/mod.d.ts.map +1 -0
  31. package/dist/types/mod.js +6 -0
  32. package/dist/types/mod.js.map +1 -0
  33. package/dist/utils/fields.d.ts +9 -0
  34. package/dist/utils/fields.d.ts.map +1 -1
  35. package/dist/utils/fields.js +59 -12
  36. package/dist/utils/fields.js.map +1 -1
  37. package/dist/verify_refactor.d.ts +3 -0
  38. package/dist/verify_refactor.d.ts.map +1 -0
  39. package/dist/verify_refactor.js +30 -0
  40. package/dist/verify_refactor.js.map +1 -0
  41. package/package.json +1 -1
package/dist/index.d.ts CHANGED
@@ -31,7 +31,7 @@
31
31
  * ```
32
32
  */
33
33
  import { type GraphQLFetcher } from './client';
34
- import { type ArticleRepository, type FavoritesRepository, type UsersRepository, type SearchRepository, type AuthRepository, type DownloadsRepository, type SubscriptionsRepository } from './repositories';
34
+ import { type ArticleRepository, type FavoritesRepository, type UsersRepository, type SearchRepository, type AuthRepository, type DownloadsRepository, type SubscriptionsRepository, type ModsRepository } from './repositories';
35
35
  import { type ChanomhubConfig } from './config';
36
36
  export * from './types';
37
37
  export * from './config';
@@ -53,6 +53,8 @@ export interface ChanomhubClient {
53
53
  downloads: DownloadsRepository;
54
54
  /** Subscriptions operations */
55
55
  subscriptions: SubscriptionsRepository;
56
+ /** Mods operations */
57
+ mods: ModsRepository;
56
58
  /** Raw GraphQL fetcher for custom queries */
57
59
  graphql: GraphQLFetcher;
58
60
  /** SDK configuration */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,EAAyC,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AACtF,OAAO,EAQH,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC/B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAkB,KAAK,eAAe,EAAE,MAAM,UAAU,CAAC;AAGhE,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE3F,qCAAqC;AACrC,MAAM,WAAW,eAAe;IAC5B,yBAAyB;IACzB,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,2BAA2B;IAC3B,SAAS,EAAE,mBAAmB,CAAC;IAC/B,8BAA8B;IAC9B,KAAK,EAAE,eAAe,CAAC;IACvB,wBAAwB;IACxB,MAAM,EAAE,gBAAgB,CAAC;IACzB,qEAAqE;IACrE,IAAI,EAAE,cAAc,CAAC;IACrB,sCAAsC;IACtC,SAAS,EAAE,mBAAmB,CAAC;IAC/B,+BAA+B;IAC/B,aAAa,EAAE,uBAAuB,CAAC;IACvC,6CAA6C;IAC7C,OAAO,EAAE,cAAc,CAAC;IACxB,wBAAwB;IACxB,MAAM,EAAE,eAAe,CAAC;CAC3B;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,GAAE,OAAO,CAAC,eAAe,CAAM,GAAG,eAAe,CA2B5F;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACrC,KAAK,EAAE,MAAM,EACb,MAAM,GAAE,OAAO,CAAC,eAAe,CAAM,GACtC,eAAe,CAMjB;AAGD,eAAe,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,EAAyC,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AACtF,OAAO,EASH,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC5B,KAAK,cAAc,EACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAkB,KAAK,eAAe,EAAE,MAAM,UAAU,CAAC;AAGhE,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE3F,qCAAqC;AACrC,MAAM,WAAW,eAAe;IAC5B,yBAAyB;IACzB,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,2BAA2B;IAC3B,SAAS,EAAE,mBAAmB,CAAC;IAC/B,8BAA8B;IAC9B,KAAK,EAAE,eAAe,CAAC;IACvB,wBAAwB;IACxB,MAAM,EAAE,gBAAgB,CAAC;IACzB,qEAAqE;IACrE,IAAI,EAAE,cAAc,CAAC;IACrB,sCAAsC;IACtC,SAAS,EAAE,mBAAmB,CAAC;IAC/B,+BAA+B;IAC/B,aAAa,EAAE,uBAAuB,CAAC;IACvC,sBAAsB;IACtB,IAAI,EAAE,cAAc,CAAC;IACrB,6CAA6C;IAC7C,OAAO,EAAE,cAAc,CAAC;IACxB,wBAAwB;IACxB,MAAM,EAAE,eAAe,CAAC;CAC3B;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,GAAE,OAAO,CAAC,eAAe,CAAM,GAAG,eAAe,CA6B5F;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACrC,KAAK,EAAE,MAAM,EACb,MAAM,GAAE,OAAO,CAAC,eAAe,CAAM,GACtC,eAAe,CAMjB;AAGD,eAAe,qBAAqB,CAAC"}
package/dist/index.js CHANGED
@@ -96,6 +96,7 @@ function createChanomhubClient(config = {}) {
96
96
  const auth = (0, repositories_1.createAuthRepository)(rest, fullConfig);
97
97
  const downloads = (0, repositories_1.createDownloadsRepository)(rest, fullConfig);
98
98
  const subscriptions = (0, repositories_1.createSubscriptionsRepository)(rest, fullConfig);
99
+ const mods = (0, repositories_1.createModsRepository)(rest, fullConfig);
99
100
  return {
100
101
  articles,
101
102
  favorites,
@@ -104,6 +105,7 @@ function createChanomhubClient(config = {}) {
104
105
  auth,
105
106
  downloads,
106
107
  subscriptions,
108
+ mods,
107
109
  graphql,
108
110
  config: fullConfig,
109
111
  };
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;;;;;;;;;;;;;;;;;AAuEH,sDA2BC;AAUD,8DASC;AAnHD,qCAAsF;AACtF,iDAewB;AACxB,qCAAgE;AAEhE,kBAAkB;AAClB,0CAAwB;AACxB,2CAAyB;AACzB,2CAAyB;AACzB,kDAA2F;AAAlF,2GAAA,eAAe,OAAA;AAAE,0GAAA,cAAc,OAAA;AAAE,6GAAA,iBAAiB,OAAA;AAwB3D;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAgB,qBAAqB,CAAC,SAAmC,EAAE;IACvE,MAAM,UAAU,GAAoB;QAChC,GAAG,uBAAc;QACjB,GAAG,MAAM;KACZ,CAAC;IAEF,MAAM,OAAO,GAAG,IAAA,4BAAmB,EAAC,UAAU,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,IAAA,yBAAgB,EAAC,UAAU,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,IAAA,sCAAuB,EAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,IAAA,wCAAyB,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,IAAA,oCAAqB,EAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,IAAA,qCAAsB,EAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,IAAA,mCAAoB,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,IAAA,wCAAyB,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC9D,MAAM,aAAa,GAAG,IAAA,4CAA6B,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAEtE,OAAO;QACH,QAAQ;QACR,SAAS;QACT,KAAK;QACL,MAAM;QACN,IAAI;QACJ,SAAS;QACT,aAAa;QACb,OAAO;QACP,MAAM,EAAE,UAAU;KACrB,CAAC;AACN,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,yBAAyB,CACrC,KAAa,EACb,SAAmC,EAAE;IAErC,OAAO,qBAAqB,CAAC;QACzB,GAAG,MAAM;QACT,KAAK;QACL,mBAAmB,EAAE,CAAC,EAAE,2CAA2C;KACtE,CAAC,CAAC;AACP,CAAC;AAED,iBAAiB;AACjB,kBAAe,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;;;;;;;;;;;;;;;;;AA2EH,sDA6BC;AAUD,8DASC;AAzHD,qCAAsF;AACtF,iDAiBwB;AACxB,qCAAgE;AAEhE,kBAAkB;AAClB,0CAAwB;AACxB,2CAAyB;AACzB,2CAAyB;AACzB,kDAA2F;AAAlF,2GAAA,eAAe,OAAA;AAAE,0GAAA,cAAc,OAAA;AAAE,6GAAA,iBAAiB,OAAA;AA0B3D;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAgB,qBAAqB,CAAC,SAAmC,EAAE;IACvE,MAAM,UAAU,GAAoB;QAChC,GAAG,uBAAc;QACjB,GAAG,MAAM;KACZ,CAAC;IAEF,MAAM,OAAO,GAAG,IAAA,4BAAmB,EAAC,UAAU,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,IAAA,yBAAgB,EAAC,UAAU,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,IAAA,sCAAuB,EAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,IAAA,wCAAyB,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,IAAA,oCAAqB,EAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,IAAA,qCAAsB,EAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,IAAA,mCAAoB,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,IAAA,wCAAyB,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC9D,MAAM,aAAa,GAAG,IAAA,4CAA6B,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACtE,MAAM,IAAI,GAAG,IAAA,mCAAoB,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAEpD,OAAO;QACH,QAAQ;QACR,SAAS;QACT,KAAK;QACL,MAAM;QACN,IAAI;QACJ,SAAS;QACT,aAAa;QACb,IAAI;QACJ,OAAO;QACP,MAAM,EAAE,UAAU;KACrB,CAAC;AACN,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,yBAAyB,CACrC,KAAa,EACb,SAAmC,EAAE;IAErC,OAAO,qBAAqB,CAAC;QACzB,GAAG,MAAM;QACT,KAAK;QACL,mBAAmB,EAAE,CAAC,EAAE,2CAA2C;KACtE,CAAC,CAAC;AACP,CAAC;AAED,iBAAiB;AACjB,kBAAe,qBAAqB,CAAC"}
@@ -2,29 +2,23 @@
2
2
  * Chanomhub SDK - Article Repository
3
3
  */
4
4
  import type { GraphQLFetcher, RestFetcher } from '../client';
5
- import type { Article, ArticleListItem, ArticleListOptions, ArticleWithDownloads, NewArticleDTO, UpdateArticleDTO, Revision, RevisionDetail, CompareResult } from '../types/article';
6
- import type { PaginatedResponse } from '../types/common';
5
+ import type { Article, ArticleListItem, ArticleListOptions, ArticleQueryOptions, ArticleWithDownloads, NewArticleDTO, UpdateArticleDTO, Revision, RevisionDetail, CompareResult } from '../types/article';
6
+ import type { Mod, ModListOptions, PaginatedResponse } from '../types/common';
7
7
  export interface ArticleRepository {
8
8
  /** Get list of articles */
9
9
  getAll(options?: ArticleListOptions): Promise<ArticleListItem[]>;
10
10
  /** Get paginated list of articles with total count */
11
11
  getAllPaginated(options?: ArticleListOptions): Promise<PaginatedResponse<ArticleListItem>>;
12
12
  /** Get articles by tag */
13
- getByTag(tag: string, options?: {
14
- limit?: number;
15
- }): Promise<ArticleListItem[]>;
13
+ getByTag(tag: string, options?: ArticleQueryOptions): Promise<ArticleListItem[]>;
16
14
  /** Get articles by platform */
17
- getByPlatform(platform: string, options?: {
18
- limit?: number;
19
- }): Promise<ArticleListItem[]>;
15
+ getByPlatform(platform: string, options?: ArticleQueryOptions): Promise<ArticleListItem[]>;
20
16
  /** Get articles by category */
21
- getByCategory(category: string, options?: {
22
- limit?: number;
23
- }): Promise<ArticleListItem[]>;
17
+ getByCategory(category: string, options?: ArticleQueryOptions): Promise<ArticleListItem[]>;
24
18
  /** Get single article by slug */
25
- getBySlug(slug: string, language?: string): Promise<Article | null>;
19
+ getBySlug(slug: string, options?: ArticleQueryOptions): Promise<Article | null>;
26
20
  /** Get article with downloads */
27
- getWithDownloads(slug: string, language?: string): Promise<ArticleWithDownloads>;
21
+ getWithDownloads(slug: string, options?: ArticleQueryOptions): Promise<ArticleWithDownloads>;
28
22
  /** Get all available tags */
29
23
  getTags(): Promise<string[]>;
30
24
  /** Get all available categories */
@@ -43,6 +37,12 @@ export interface ArticleRepository {
43
37
  getRevision(slug: string, version: number): Promise<RevisionDetail>;
44
38
  /** Compare two versions */
45
39
  compareVersions(slug: string, v1: number, v2: number): Promise<CompareResult>;
40
+ /** Get article with versions */
41
+ getWithVersions(slug: string): Promise<Article | null>;
42
+ /** Get article by version */
43
+ getByVersion(slug: string, version: string): Promise<Article | null>;
44
+ /** Get mods for an article */
45
+ getMods(articleId: number, options?: ModListOptions): Promise<Mod[]>;
46
46
  /** Restore article to a specific version */
47
47
  restoreRevision(slug: string, version: number): Promise<RevisionDetail>;
48
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"articleRepository.d.ts","sourceRoot":"","sources":["../../repositories/articleRepository.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7D,OAAO,KAAK,EACR,OAAO,EACP,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,aAAa,EACb,gBAAgB,EAChB,QAAQ,EACR,cAAc,EACd,aAAa,EAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGzD,MAAM,WAAW,iBAAiB;IAC9B,2BAA2B;IAC3B,MAAM,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAEjE,sDAAsD;IACtD,eAAe,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC,CAAC;IAE3F,0BAA0B;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAEhF,+BAA+B;IAC/B,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAE1F,+BAA+B;IAC/B,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAE1F,iCAAiC;IACjC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IAEpE,iCAAiC;IACjC,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAEjF,6BAA6B;IAC7B,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAE7B,mCAAmC;IACnC,aAAa,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAEnC,kCAAkC;IAClC,YAAY,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAElC,2BAA2B;IAC3B,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE9C,wBAAwB;IACxB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE/D,wBAAwB;IACxB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpC,mCAAmC;IACnC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEjE,oCAAoC;IACpC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAEpE,2BAA2B;IAC3B,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAE9E,4CAA4C;IAC5C,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CAC3E;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACnC,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,WAAW,GAClB,iBAAiB,CAydnB"}
1
+ {"version":3,"file":"articleRepository.d.ts","sourceRoot":"","sources":["../../repositories/articleRepository.ts"],"names":[],"mappings":"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"}
@@ -161,11 +161,11 @@ function createArticleRepository(fetcher, rest) {
161
161
  };
162
162
  }
163
163
  async function getByTag(tag, options = {}) {
164
- const { limit = 50 } = options;
164
+ const { preset = 'standard', fields, limit = 50, offset = 0 } = options;
165
165
  const query = `query GetArticlesByTag($tag: String!) {
166
166
  public {
167
- articles(filter: { tag: $tag }, status: PUBLISHED, limit: ${limit}) {
168
- ${(0, fields_1.buildFieldsQuery)()}
167
+ articles(filter: { tag: $tag }, status: PUBLISHED, limit: ${limit}, offset: ${offset}) {
168
+ ${(0, fields_1.buildFieldsQuery)({ preset, fields })}
169
169
  }
170
170
  }
171
171
  }`;
@@ -179,11 +179,11 @@ function createArticleRepository(fetcher, rest) {
179
179
  return data.public.articles || [];
180
180
  }
181
181
  async function getByPlatform(platform, options = {}) {
182
- const { limit = 50 } = options;
182
+ const { preset = 'standard', fields, limit = 50, offset = 0 } = options;
183
183
  const query = `query GetArticlesByPlatform($platform: String!) {
184
184
  public {
185
- articles(filter: { platform: $platform }, status: PUBLISHED, limit: ${limit}) {
186
- ${(0, fields_1.buildFieldsQuery)()}
185
+ articles(filter: { platform: $platform }, status: PUBLISHED, limit: ${limit}, offset: ${offset}) {
186
+ ${(0, fields_1.buildFieldsQuery)({ preset, fields })}
187
187
  }
188
188
  }
189
189
  }`;
@@ -197,11 +197,11 @@ function createArticleRepository(fetcher, rest) {
197
197
  return data.public.articles || [];
198
198
  }
199
199
  async function getByCategory(category, options = {}) {
200
- const { limit = 50 } = options;
200
+ const { preset = 'standard', fields, limit = 50, offset = 0 } = options;
201
201
  const query = `query GetArticlesByCategory($category: String!) {
202
202
  public {
203
- articles(filter: { category: $category }, status: PUBLISHED, limit: ${limit}) {
204
- ${(0, fields_1.buildFieldsQuery)()}
203
+ articles(filter: { category: $category }, status: PUBLISHED, limit: ${limit}, offset: ${offset}) {
204
+ ${(0, fields_1.buildFieldsQuery)({ preset, fields })}
205
205
  }
206
206
  }
207
207
  }`;
@@ -214,15 +214,16 @@ function createArticleRepository(fetcher, rest) {
214
214
  }
215
215
  return data.public.articles || [];
216
216
  }
217
- async function getBySlug(slug, language) {
218
- const query = `query GetArticleBySlug($slug: String!, $language: String) {
217
+ async function getBySlug(slug, options = {}) {
218
+ const { language, version, preset = 'full', fields } = options;
219
+ const query = `query GetArticleBySlug($slug: String!, $language: String, $version: String) {
219
220
  public {
220
- article(slug: $slug, language: $language) {
221
- ${(0, fields_1.buildFieldsQuery)({ preset: 'full' })}
221
+ article(slug: $slug, language: $language, version: $version) {
222
+ ${(0, fields_1.buildFieldsQuery)({ preset, fields })}
222
223
  }
223
224
  }
224
225
  }`;
225
- const { data, errors } = await fetcher(query, { slug, language }, {
226
+ const { data, errors } = await fetcher(query, { slug, language, version }, {
226
227
  operationName: 'GetArticleBySlug',
227
228
  });
228
229
  if (errors || !data) {
@@ -231,48 +232,88 @@ function createArticleRepository(fetcher, rest) {
231
232
  }
232
233
  return data.public.article || null;
233
234
  }
234
- async function getWithDownloads(slug, language) {
235
- const query = `query GetArticleWithDownloads($slug: String!, $language: String, $downloadsArticleId: Int!) {
236
- public {
237
- article(slug: $slug, language: $language) {
238
- ${(0, fields_1.buildFieldsQuery)({ preset: 'full' })}
239
- }
240
- downloads(articleId: $downloadsArticleId) {
241
- id
242
- name
243
- url
244
- isActive
245
- vipOnly
235
+ async function getWithDownloads(slug, options = {}) {
236
+ const { language, version, preset = 'full', fields } = options;
237
+ // Ensure downloadLinks and officialDownloadSources are in fields if not using preset='full' or if overriding
238
+ // But if fields is undefined, preset='full' (default) already includes them?
239
+ // No, 'full' preset in fields.ts has 'images', 'creators' etc. but I didn't verify if it has downloadLinks.
240
+ // I added 'downloadLinks', 'versions', 'officialDownloadSources' to ArticleField but NOT to FIELD_PRESETS.full.
241
+ // So I must explicitly add them or modify FIELD_PRESETS.full in fields.ts (which would affect everyone).
242
+ // Safest is to explicitly request them here.
243
+ let queryFields = fields;
244
+ if (!fields) {
245
+ // Start with preset fields
246
+ // NOTE: We can't easily access FIELD_PRESETS here without importing it.
247
+ // Better to rely on buildFieldsQuery handling.
248
+ // If I just pass fields=['downloadLinks', 'officialDownloadSources'], I lose all other fields.
249
+ // So if fields is empty, I assume preset='full' and merge?
250
+ // Or I just request `article { ...fields, downloadLinks, officialDownloadSources }` in the query construction.
246
251
  }
247
- officialDownloadSources(articleId: $downloadsArticleId) {
248
- id
249
- name
250
- url
251
- status
252
+ // Simplest strategy: Request the article with provided options, AND explicit download fields.
253
+ // But buildFieldsQuery builds the string.
254
+ // We can append fields to the query string constructed by buildFieldsQuery if we want to force them.
255
+ // OR we just use getBySlug and if fields are missing, that's caller's problem?
256
+ // No, getWithDownloads implies getting downloads.
257
+ const fieldsQuery = (0, fields_1.buildFieldsQuery)({ preset, fields });
258
+ // Check if downloadLinks are already in fieldsQuery? Hard to check string.
259
+ // We can just append them if we are willing to risk duplications (GraphQL ignores dupes usually).
260
+ // Or better: construct a specialized query.
261
+ const query = `query GetArticleWithDownloads($slug: String!, $language: String, $version: String) {
262
+ public {
263
+ article(slug: $slug, language: $language, version: $version) {
264
+ ${fieldsQuery}
265
+ downloadLinks {
266
+ id
267
+ url
268
+ vipOnly
269
+ }
270
+ officialDownloadSources {
271
+ id
272
+ name
273
+ url
274
+ status
275
+ }
252
276
  }
253
277
  }
254
278
  }`;
255
- // First get article to get its ID
256
- const articleResult = await getBySlug(slug, language);
257
- if (!articleResult) {
258
- return { article: null, downloads: null };
259
- }
260
- const { data, errors } = await fetcher(query, { slug, language, downloadsArticleId: Number(articleResult.id) }, { operationName: 'GetArticleWithDownloads' });
279
+ const { data, errors } = await fetcher(query, { slug, language, version }, { operationName: 'GetArticleWithDownloads' });
261
280
  if (errors || !data) {
262
281
  console.error('Failed to fetch article with downloads:', errors);
263
- return { article: articleResult, downloads: null };
282
+ return { article: null, downloads: null };
264
283
  }
265
- // Combine data
266
- if (data.public.article) {
267
- data.public.article.downloads = data.public.downloads || [];
268
- data.public.article.officialDownloadSources =
269
- data.public.officialDownloadSources || [];
284
+ const article = data.public.article;
285
+ if (!article) {
286
+ return { article: null, downloads: null };
270
287
  }
271
288
  return {
272
- article: data.public.article || articleResult,
273
- downloads: data.public.downloads || null,
289
+ article,
290
+ downloads: article.downloadLinks || [],
274
291
  };
275
292
  }
293
+ async function getWithVersions(slug) {
294
+ return getBySlug(slug, { fields: ['id', 'title', 'slug', 'versions'] });
295
+ }
296
+ async function getByVersion(slug, version) {
297
+ return getBySlug(slug, {
298
+ version,
299
+ fields: ['id', 'title', 'downloadLinks', 'mods']
300
+ });
301
+ }
302
+ async function getMods(articleId, options = {}) {
303
+ const query = `query GetArticleMods($articleId: Int!) {
304
+ public {
305
+ mods(articleId: $articleId) {
306
+ ${(0, fields_1.buildModFieldsQuery)(options)}
307
+ }
308
+ }
309
+ }`;
310
+ const { data, errors } = await fetcher(query, { articleId }, { operationName: 'GetArticleMods' });
311
+ if (errors || !data) {
312
+ console.error('Failed to fetch article mods:', errors);
313
+ return [];
314
+ }
315
+ return data.public.mods || [];
316
+ }
276
317
  async function getTags() {
277
318
  const query = `query GetTags {
278
319
  system {
@@ -320,6 +361,9 @@ function createArticleRepository(fetcher, rest) {
320
361
  getByCategory,
321
362
  getBySlug,
322
363
  getWithDownloads,
364
+ getWithVersions,
365
+ getByVersion,
366
+ getMods,
323
367
  getTags,
324
368
  getCategories,
325
369
  getPlatforms,
@@ -1 +1 @@
1
- {"version":3,"file":"articleRepository.js","sourceRoot":"","sources":["../../repositories/articleRepository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"articleRepository.js","sourceRoot":"","sources":["../../repositories/articleRepository.ts"],"names":[],"mappings":"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"}
@@ -8,4 +8,5 @@ export { createSearchRepository, type SearchRepository, type SearchOptions, } fr
8
8
  export { createAuthRepository, type AuthRepository } from './authRepository';
9
9
  export { createDownloadsRepository, type DownloadsRepository } from './downloadsRepository';
10
10
  export { createSubscriptionsRepository, type SubscriptionsRepository, } from './subscriptionsRepository';
11
+ export { createModsRepository, type ModsRepository } from './modsRepository';
11
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../repositories/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,uBAAuB,EAAE,KAAK,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACtF,OAAO,EACH,yBAAyB,EACzB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,GACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAChF,OAAO,EACH,sBAAsB,EACtB,KAAK,gBAAgB,EACrB,KAAK,aAAa,GACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,oBAAoB,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,yBAAyB,EAAE,KAAK,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5F,OAAO,EACH,6BAA6B,EAC7B,KAAK,uBAAuB,GAC/B,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../repositories/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,uBAAuB,EAAE,KAAK,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACtF,OAAO,EACH,yBAAyB,EACzB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,GACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAChF,OAAO,EACH,sBAAsB,EACtB,KAAK,gBAAgB,EACrB,KAAK,aAAa,GACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,oBAAoB,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,yBAAyB,EAAE,KAAK,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5F,OAAO,EACH,6BAA6B,EAC7B,KAAK,uBAAuB,GAC/B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,oBAAoB,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC"}
@@ -3,7 +3,7 @@
3
3
  * Chanomhub SDK - Repositories Index
4
4
  */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.createSubscriptionsRepository = exports.createDownloadsRepository = exports.createAuthRepository = exports.createSearchRepository = exports.createUsersRepository = exports.createFavoritesRepository = exports.createArticleRepository = void 0;
6
+ exports.createModsRepository = exports.createSubscriptionsRepository = exports.createDownloadsRepository = exports.createAuthRepository = exports.createSearchRepository = exports.createUsersRepository = exports.createFavoritesRepository = exports.createArticleRepository = void 0;
7
7
  var articleRepository_1 = require("./articleRepository");
8
8
  Object.defineProperty(exports, "createArticleRepository", { enumerable: true, get: function () { return articleRepository_1.createArticleRepository; } });
9
9
  var favoritesRepository_1 = require("./favoritesRepository");
@@ -18,4 +18,6 @@ var downloadsRepository_1 = require("./downloadsRepository");
18
18
  Object.defineProperty(exports, "createDownloadsRepository", { enumerable: true, get: function () { return downloadsRepository_1.createDownloadsRepository; } });
19
19
  var subscriptionsRepository_1 = require("./subscriptionsRepository");
20
20
  Object.defineProperty(exports, "createSubscriptionsRepository", { enumerable: true, get: function () { return subscriptionsRepository_1.createSubscriptionsRepository; } });
21
+ var modsRepository_1 = require("./modsRepository");
22
+ Object.defineProperty(exports, "createModsRepository", { enumerable: true, get: function () { return modsRepository_1.createModsRepository; } });
21
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../repositories/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,yDAAsF;AAA7E,4HAAA,uBAAuB,OAAA;AAChC,6DAI+B;AAH3B,gIAAA,yBAAyB,OAAA;AAI7B,qDAAgF;AAAvE,wHAAA,qBAAqB,OAAA;AAC9B,uDAI4B;AAHxB,0HAAA,sBAAsB,OAAA;AAI1B,mDAA6E;AAApE,sHAAA,oBAAoB,OAAA;AAC7B,6DAA4F;AAAnF,gIAAA,yBAAyB,OAAA;AAClC,qEAGmC;AAF/B,wIAAA,6BAA6B,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../repositories/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,yDAAsF;AAA7E,4HAAA,uBAAuB,OAAA;AAChC,6DAI+B;AAH3B,gIAAA,yBAAyB,OAAA;AAI7B,qDAAgF;AAAvE,wHAAA,qBAAqB,OAAA;AAC9B,uDAI4B;AAHxB,0HAAA,sBAAsB,OAAA;AAI1B,mDAA6E;AAApE,sHAAA,oBAAoB,OAAA;AAC7B,6DAA4F;AAAnF,gIAAA,yBAAyB,OAAA;AAClC,qEAGmC;AAF/B,wIAAA,6BAA6B,OAAA;AAGjC,mDAA6E;AAApE,sHAAA,oBAAoB,OAAA"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Chanomhub SDK - Mods Repository
3
+ */
4
+ import type { RestFetcher } from '../client';
5
+ import type { ChanomhubConfig } from '../config';
6
+ import type { Mod } from '../types/common';
7
+ import type { CreateModDTO } from '../types/mod';
8
+ export interface ModsRepository {
9
+ /**
10
+ * Create a new mod for an article
11
+ * @param slug - Article slug
12
+ * @param data - Mod data
13
+ * @returns Created mod
14
+ */
15
+ create(slug: string, data: CreateModDTO): Promise<Mod>;
16
+ }
17
+ /**
18
+ * Creates a mods repository with the given REST client
19
+ */
20
+ export declare function createModsRepository(fetcher: RestFetcher, config: ChanomhubConfig): ModsRepository;
21
+ //# sourceMappingURL=modsRepository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modsRepository.d.ts","sourceRoot":"","sources":["../../repositories/modsRepository.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAGjD,MAAM,WAAW,cAAc;IAC3B;;;;;OAKG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;CAC1D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAChC,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,eAAe,GACxB,cAAc,CA8BhB"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ /**
3
+ * Chanomhub SDK - Mods Repository
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createModsRepository = createModsRepository;
7
+ const errors_1 = require("../errors");
8
+ /**
9
+ * Creates a mods repository with the given REST client
10
+ */
11
+ function createModsRepository(fetcher, config) {
12
+ function requireAuth() {
13
+ if (!config.token) {
14
+ throw new errors_1.AuthenticationError('Authentication required for mods management. Use createAuthenticatedClient() or provide a token.');
15
+ }
16
+ }
17
+ async function create(slug, data) {
18
+ requireAuth();
19
+ const { data: response, error } = await fetcher(`/api/mods/article/${slug}`, {
20
+ method: 'POST',
21
+ body: data,
22
+ });
23
+ if (error || !response) {
24
+ throw new Error(error || 'Failed to create mod');
25
+ }
26
+ return response.mod;
27
+ }
28
+ return {
29
+ create,
30
+ };
31
+ }
32
+ //# sourceMappingURL=modsRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modsRepository.js","sourceRoot":"","sources":["../../repositories/modsRepository.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAqBH,oDAiCC;AAhDD,sCAAgD;AAYhD;;GAEG;AACH,SAAgB,oBAAoB,CAChC,OAAoB,EACpB,MAAuB;IAEvB,SAAS,WAAW;QAChB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,4BAAmB,CACzB,kGAAkG,CACrG,CAAC;QACN,CAAC;IACL,CAAC;IAED,KAAK,UAAU,MAAM,CAAC,IAAY,EAAE,IAAkB;QAClD,WAAW,EAAE,CAAC;QAEd,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,OAAO,CAC3C,qBAAqB,IAAI,EAAE,EAC3B;YACI,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAA0C;SACnD,CACJ,CAAC;QAEF,IAAI,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,KAAK,IAAI,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,OAAO,QAAQ,CAAC,GAAG,CAAC;IACxB,CAAC;IAED,OAAO;QACH,MAAM;KACT,CAAC;AACN,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Chanomhub SDK - Mods Repository
3
+ */
4
+ import type { RestFetcher } from '../client';
5
+ import type { ChanomhubConfig } from '../config';
6
+ import type { Mod } from '../types/common';
7
+ import type { CreateModDTO } from '../types/mod';
8
+ export interface ModsRepository {
9
+ /**
10
+ * Create a new mod
11
+ * @param data - Mod data
12
+ * @returns Created mod
13
+ */
14
+ create(data: CreateModDTO): Promise<Mod>;
15
+ }
16
+ /**
17
+ * Creates a mods repository with the given REST client
18
+ */
19
+ export declare function createModsRepository(fetcher: RestFetcher, config: ChanomhubConfig): ModsRepository;
20
+ //# sourceMappingURL=modsRepository.temp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modsRepository.temp.d.ts","sourceRoot":"","sources":["../../repositories/modsRepository.temp.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAGjD,MAAM,WAAW,cAAc;IAC3B;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;CAC5C;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAChC,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,eAAe,GACxB,cAAc,CAuChB"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ /**
3
+ * Chanomhub SDK - Mods Repository
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createModsRepository = createModsRepository;
7
+ const errors_1 = require("../errors");
8
+ /**
9
+ * Creates a mods repository with the given REST client
10
+ */
11
+ function createModsRepository(fetcher, config) {
12
+ function requireAuth() {
13
+ if (!config.token) {
14
+ throw new errors_1.AuthenticationError('Authentication required for mods management. Use createAuthenticatedClient() or provide a token.');
15
+ }
16
+ }
17
+ async function create(data) {
18
+ requireAuth();
19
+ // The endpoint is /api/mods/article/:slug but the DTO has articleId.
20
+ // Wait, the frontend code used: /api/mods/article/${slug}
21
+ // But the DTO in frontend has articleId: number.
22
+ // The Articles API usually takes slug or ID.
23
+ // Let's check how we can get slug if we only have ID, OR if there is an endpoint that takes ID.
24
+ // If the SDK structure follows the existing pattern, maybe we should ask for slug in create() arguments?
25
+ // The frontend `AddModDialog` has `slug` available.
26
+ // So `create(slug: string, data: CreateModDTO)` would be better.
27
+ // But let's look at `data`.
28
+ // Actually, looking at existing repositories, `create` usually takes just DTO.
29
+ // But if the route depends on slug, we need it.
30
+ // Let's assume we change signature to `create(slug: string, data: CreateModDTO)`.
31
+ throw new Error("Method not implemented correctly yet - checking path requirements");
32
+ }
33
+ return {
34
+ create: async (data) => {
35
+ // We need slug to call /api/mods/article/:slug
36
+ // If CreateModDTO doesn't have slug, we are in trouble unless we change the API or the DTO.
37
+ // The frontend passes `slug` to `AddModDialog`.
38
+ // So I should probably include `slug` in `CreateModDTO` or as an argument.
39
+ // Let's modify the interface to accept slug.
40
+ throw new Error("Invalid usage. See updated implementation below.");
41
+ }
42
+ };
43
+ }
44
+ //# sourceMappingURL=modsRepository.temp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modsRepository.temp.js","sourceRoot":"","sources":["../../repositories/modsRepository.temp.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAoBH,oDA0CC;AAxDD,sCAAgD;AAWhD;;GAEG;AACH,SAAgB,oBAAoB,CAChC,OAAoB,EACpB,MAAuB;IAEvB,SAAS,WAAW;QAChB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,4BAAmB,CACzB,kGAAkG,CACrG,CAAC;QACN,CAAC;IACL,CAAC;IAED,KAAK,UAAU,MAAM,CAAC,IAAkB;QACpC,WAAW,EAAE,CAAC;QAEd,qEAAqE;QACrE,0DAA0D;QAC1D,iDAAiD;QACjD,8CAA8C;QAC9C,gGAAgG;QAChG,yGAAyG;QACzG,oDAAoD;QACpD,iEAAiE;QACjE,4BAA4B;QAE5B,+EAA+E;QAC/E,gDAAgD;QAChD,kFAAkF;QAElF,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;IACzF,CAAC;IAED,OAAO;QACH,MAAM,EAAE,KAAK,EAAE,IAAkB,EAAE,EAAE;YACjC,+CAA+C;YAC/C,4FAA4F;YAC5F,gDAAgD;YAChD,2EAA2E;YAC3E,6CAA6C;YAC7C,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACxE,CAAC;KACJ,CAAC;AACN,CAAC"}
@@ -13,7 +13,7 @@ export type ArticlePreset = 'minimal' | 'standard' | 'full';
13
13
  /**
14
14
  * Available fields for custom selection
15
15
  */
16
- export type ArticleField = 'id' | 'title' | 'slug' | 'description' | 'body' | 'ver' | 'mainImage' | 'coverImage' | 'backgroundImage' | 'author' | 'tags' | 'platforms' | 'categories' | 'creators' | 'engine' | 'images' | 'mods' | 'favoritesCount' | 'favorited' | 'createdAt' | 'updatedAt' | 'status' | 'sequentialCode';
16
+ export type ArticleField = 'id' | 'title' | 'slug' | 'description' | 'body' | 'ver' | 'mainImage' | 'coverImage' | 'backgroundImage' | 'author' | 'tags' | 'platforms' | 'categories' | 'creators' | 'engine' | 'images' | 'mods' | 'favoritesCount' | 'favorited' | 'createdAt' | 'updatedAt' | 'status' | 'sequentialCode' | 'versions' | 'downloadLinks' | 'officialDownloadSources' | 'version';
17
17
  /** Full Article type */
18
18
  export interface Article {
19
19
  id: number;
@@ -43,6 +43,8 @@ export interface Article {
43
43
  sequentialCode: string | null;
44
44
  downloads?: Download[];
45
45
  mods: Mod[];
46
+ versions?: string[];
47
+ downloadLinks?: Download[];
46
48
  officialDownloadSources?: OfficialDownloadSource[];
47
49
  version?: string;
48
50
  }
@@ -184,4 +186,15 @@ export interface CompareResult {
184
186
  bodyDiff?: string;
185
187
  parsedBodyDiff?: DiffLine[];
186
188
  }
189
+ /** Options for single article queries */
190
+ export interface ArticleQueryOptions {
191
+ language?: string;
192
+ version?: string;
193
+ /** Field preset level (default: 'full') */
194
+ preset?: ArticlePreset;
195
+ /** Custom field selection (overrides preset) */
196
+ fields?: ArticleField[];
197
+ limit?: number;
198
+ offset?: number;
199
+ }
187
200
  //# sourceMappingURL=article.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"article.d.ts","sourceRoot":"","sources":["../../types/article.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"article.d.ts","sourceRoot":"","sources":["../../types/article.ts"],"names":[],"mappings":"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"}
@@ -55,6 +55,7 @@ export interface OfficialDownloadSource {
55
55
  }
56
56
  /** Mod type */
57
57
  export interface Mod {
58
+ id: number;
58
59
  name: string;
59
60
  description: string;
60
61
  creditTo: string;
@@ -63,6 +64,10 @@ export interface Mod {
63
64
  status: string;
64
65
  categories: NamedEntity[];
65
66
  images: ImageObject[];
67
+ creator: {
68
+ name: string;
69
+ image: string | null;
70
+ };
66
71
  }
67
72
  /** Named entity (tag, category, platform, etc.) */
68
73
  export interface NamedEntity {
@@ -74,4 +79,9 @@ export interface ImageObject {
74
79
  id?: string;
75
80
  url: string;
76
81
  }
82
+ /** Mod fields for selection */
83
+ export type ModField = 'id' | 'name' | 'description' | 'creditTo' | 'downloadLink' | 'version' | 'status' | 'categories' | 'images' | 'creator';
84
+ export interface ModListOptions {
85
+ fields?: ModField[];
86
+ }
77
87
  //# sourceMappingURL=common.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../types/common.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,yBAAyB;AACzB,MAAM,WAAW,WAAW;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,iCAAiC;AACjC,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAChC,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,+BAA+B;AAC/B,MAAM,WAAW,eAAe,CAAC,CAAC;IAC9B,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;IACf,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;CACxD;AAED,kBAAkB;AAClB,MAAM,WAAW,MAAM;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,mBAAmB;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,mCAAmC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gBAAgB,CAAC,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC/D;AAED,yBAAyB;AACzB,MAAM,WAAW,QAAQ;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,+BAA+B;AAC/B,MAAM,WAAW,sBAAsB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,eAAe;AACf,MAAM,WAAW,GAAG;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,WAAW,EAAE,CAAC;IAC1B,MAAM,EAAE,WAAW,EAAE,CAAC;CACzB;AAED,mDAAmD;AACnD,MAAM,WAAW,WAAW;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,mBAAmB;AACnB,MAAM,WAAW,WAAW;IACxB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACf"}
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../types/common.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,yBAAyB;AACzB,MAAM,WAAW,WAAW;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,iCAAiC;AACjC,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAChC,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,+BAA+B;AAC/B,MAAM,WAAW,eAAe,CAAC,CAAC;IAC9B,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;IACf,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;CACxD;AAED,kBAAkB;AAClB,MAAM,WAAW,MAAM;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,mBAAmB;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,mCAAmC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gBAAgB,CAAC,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC/D;AAED,yBAAyB;AACzB,MAAM,WAAW,QAAQ;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,+BAA+B;AAC/B,MAAM,WAAW,sBAAsB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,eAAe;AACf,MAAM,WAAW,GAAG;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,WAAW,EAAE,CAAC;IAC1B,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,OAAO,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;KACxB,CAAC;CACL;AACD,mDAAmD;AACnD,MAAM,WAAW,WAAW;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,mBAAmB;AACnB,MAAM,WAAW,WAAW;IACxB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACf;AAED,+BAA+B;AAC/B,MAAM,MAAM,QAAQ,GACd,IAAI,GACJ,MAAM,GACN,aAAa,GACb,UAAU,GACV,cAAc,GACd,SAAS,GACT,QAAQ,GACR,YAAY,GACZ,QAAQ,GACR,SAAS,CAAC;AAEhB,MAAM,WAAW,cAAc;IAC3B,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC;CACvB"}
@@ -8,4 +8,5 @@ export type { SocialMediaLink } from './user';
8
8
  export * from './auth';
9
9
  export * from './download';
10
10
  export * from './subscription';
11
+ export * from './mod';
11
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,YAAY,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAC9C,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,YAAY,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAC9C,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,OAAO,CAAC"}
@@ -23,4 +23,5 @@ __exportStar(require("./user"), exports);
23
23
  __exportStar(require("./auth"), exports);
24
24
  __exportStar(require("./download"), exports);
25
25
  __exportStar(require("./subscription"), exports);
26
+ __exportStar(require("./mod"), exports);
26
27
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../types/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;AAEH,2CAAyB;AACzB,4CAA0B;AAC1B,yCAAuB;AAEvB,yCAAuB;AACvB,6CAA2B;AAC3B,iDAA+B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../types/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;AAEH,2CAAyB;AACzB,4CAA0B;AAC1B,yCAAuB;AAEvB,yCAAuB;AACvB,6CAA2B;AAC3B,iDAA+B;AAC/B,wCAAsB"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Chanomhub SDK - Mod Types
3
+ */
4
+ import type { Mod } from './common';
5
+ /** DTO for creating a new mod */
6
+ export interface CreateModDTO {
7
+ name: string;
8
+ version: string;
9
+ articleId: number;
10
+ articleVersion: number;
11
+ type: string;
12
+ description: string;
13
+ downloadLink?: string;
14
+ creditTo?: string;
15
+ categories?: string[];
16
+ tags?: string[];
17
+ images?: any;
18
+ }
19
+ /** DTO for updating a mod */
20
+ export interface UpdateModDTO {
21
+ name?: string;
22
+ version?: string;
23
+ type?: string;
24
+ description?: string;
25
+ downloadLink?: string;
26
+ creditTo?: string;
27
+ categories?: string[];
28
+ tags?: string[];
29
+ }
30
+ export { Mod };
31
+ //# sourceMappingURL=mod.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../types/mod.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAEpC,iCAAiC;AACjC,MAAM,WAAW,YAAY;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,CAAC,EAAE,GAAG,CAAC;CAChB;AAED,6BAA6B;AAC7B,MAAM,WAAW,YAAY;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,OAAO,EAAE,GAAG,EAAE,CAAC"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ /**
3
+ * Chanomhub SDK - Mod Types
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ //# sourceMappingURL=mod.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mod.js","sourceRoot":"","sources":["../../types/mod.ts"],"names":[],"mappings":";AAAA;;GAEG"}
@@ -3,6 +3,7 @@
3
3
  * Used by articleRepository and searchRepository
4
4
  */
5
5
  import type { ArticlePreset, ArticleField } from '../types/article';
6
+ import type { ModField, ModListOptions } from '../types/common';
6
7
  /**
7
8
  * Field definitions for each preset level
8
9
  */
@@ -21,4 +22,12 @@ export interface FieldQueryOptions {
21
22
  * Builds GraphQL fields query from preset or custom fields
22
23
  */
23
24
  export declare function buildFieldsQuery(options?: FieldQueryOptions): string;
25
+ /**
26
+ * GraphQL mod field mappings
27
+ */
28
+ export declare const FIELD_MAPPINGS_MOD: Record<ModField, string>;
29
+ /**
30
+ * Builds GraphQL mod fields query
31
+ */
32
+ export declare function buildModFieldsQuery(options?: ModListOptions): string;
24
33
  //# sourceMappingURL=fields.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../utils/fields.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEpE;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,YAAY,EAAE,CAgD/D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CA8DvD,CAAC;AAEF,MAAM,WAAW,iBAAiB;IAC9B,+CAA+C;IAC/C,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,gDAAgD;IAChD,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC;CAC3B;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,iBAAsB,GAAG,MAAM,CAQxE"}
1
+ {"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../utils/fields.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAuB,MAAM,kBAAkB,CAAC;AACzF,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,YAAY,EAAE,CAgD/D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CA+DvD,CAAC;AAEF,MAAM,WAAW,iBAAiB;IAChC,+CAA+C;IAC/C,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,gDAAgD;IAChD,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,iBAAsB,GAAG,MAAM,CAQxE;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAoBvD,CAAC;AAEF;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,cAAmB,GAAG,MAAM,CAoBxE"}
@@ -4,8 +4,9 @@
4
4
  * Used by articleRepository and searchRepository
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.FIELD_MAPPINGS = exports.FIELD_PRESETS = void 0;
7
+ exports.FIELD_MAPPINGS_MOD = exports.FIELD_MAPPINGS = exports.FIELD_PRESETS = void 0;
8
8
  exports.buildFieldsQuery = buildFieldsQuery;
9
+ exports.buildModFieldsQuery = buildModFieldsQuery;
9
10
  /**
10
11
  * Field definitions for each preset level
11
12
  */
@@ -109,20 +110,21 @@ exports.FIELD_MAPPINGS = {
109
110
  mods: `mods {
110
111
  id
111
112
  name
112
- description
113
- creditTo
114
- downloadLink
115
113
  version
114
+ }`,
115
+ versions: 'versions',
116
+ downloadLinks: `downloadLinks {
117
+ id
118
+ url
119
+ vipOnly
120
+ }`,
121
+ officialDownloadSources: `officialDownloadSources {
122
+ id
123
+ name
124
+ url
116
125
  status
117
- categories {
118
- id
119
- name
120
- }
121
- images {
122
- id
123
- url
124
- }
125
126
  }`,
127
+ version: 'version',
126
128
  };
127
129
  /**
128
130
  * Builds GraphQL fields query from preset or custom fields
@@ -135,4 +137,49 @@ function buildFieldsQuery(options = {}) {
135
137
  .filter(Boolean)
136
138
  .join('\n ');
137
139
  }
140
+ /**
141
+ * GraphQL mod field mappings
142
+ */
143
+ exports.FIELD_MAPPINGS_MOD = {
144
+ id: 'id',
145
+ name: 'name',
146
+ description: 'description',
147
+ creditTo: 'creditTo',
148
+ downloadLink: 'downloadLink',
149
+ version: 'version',
150
+ status: 'status',
151
+ categories: `categories {
152
+ id
153
+ name
154
+ }`,
155
+ images: `images {
156
+ id
157
+ url
158
+ }`,
159
+ creator: `creator {
160
+ name
161
+ image
162
+ }`,
163
+ };
164
+ /**
165
+ * Builds GraphQL mod fields query
166
+ */
167
+ function buildModFieldsQuery(options = {}) {
168
+ const { fields } = options;
169
+ // Default fields if none provided (all except creator to be safe, or just all?)
170
+ // User complaint was "always gets creator". So let's default to all, but allow overriding.
171
+ // If fields is undefined, we return default set.
172
+ const defaultFields = [
173
+ 'id',
174
+ 'name',
175
+ 'version',
176
+ 'downloadLink',
177
+ 'creator' // Default includes creator to match previous behavior unless specified
178
+ ];
179
+ const selectedFields = fields !== null && fields !== void 0 ? fields : defaultFields;
180
+ return selectedFields
181
+ .map((field) => exports.FIELD_MAPPINGS_MOD[field])
182
+ .filter(Boolean)
183
+ .join('\n ');
184
+ }
138
185
  //# sourceMappingURL=fields.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fields.js","sourceRoot":"","sources":["../../utils/fields.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAsIH,4CAQC;AA1ID;;GAEG;AACU,QAAA,aAAa,GAA0C;IAChE,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC;IAC7C,QAAQ,EAAE;QACN,IAAI;QACJ,OAAO;QACP,MAAM;QACN,aAAa;QACb,KAAK;QACL,WAAW;QACX,YAAY;QACZ,QAAQ;QACR,MAAM;QACN,WAAW;QACX,YAAY;QACZ,UAAU;QACV,QAAQ;QACR,gBAAgB;QAChB,WAAW;QACX,WAAW;QACX,WAAW;QACX,QAAQ;QACR,gBAAgB;QAChB,QAAQ;KACX;IACD,IAAI,EAAE;QACF,IAAI;QACJ,OAAO;QACP,MAAM;QACN,aAAa;QACb,MAAM;QACN,KAAK;QACL,WAAW;QACX,YAAY;QACZ,iBAAiB;QACjB,QAAQ;QACR,MAAM;QACN,WAAW;QACX,YAAY;QACZ,UAAU;QACV,QAAQ;QACR,QAAQ;QACR,gBAAgB;QAChB,WAAW;QACX,WAAW;QACX,WAAW;QACX,QAAQ;QACR,gBAAgB;KACnB;CACJ,CAAC;AAEF;;GAEG;AACU,QAAA,cAAc,GAAiC;IACxD,EAAE,EAAE,IAAI;IACR,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,aAAa;IAC1B,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;IACV,SAAS,EAAE,WAAW;IACtB,UAAU,EAAE,YAAY;IACxB,eAAe,EAAE,iBAAiB;IAClC,SAAS,EAAE,WAAW;IACtB,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,QAAQ;IAChB,cAAc,EAAE,gBAAgB;IAChC,cAAc,EAAE,gBAAgB;IAChC,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE;;;IAGR;IACA,MAAM,EAAE;;;;IAIR;IACA,QAAQ,EAAE;;;IAGV;IACA,IAAI,EAAE;;;IAGN;IACA,SAAS,EAAE;;;IAGX;IACA,UAAU,EAAE;;;IAGZ;IACA,MAAM,EAAE;;;IAGR;IACA,IAAI,EAAE;;;;;;;;;;;;;;;;IAgBN;CACH,CAAC;AASF;;GAEG;AACH,SAAgB,gBAAgB,CAAC,UAA6B,EAAE;IAC5D,MAAM,EAAE,MAAM,GAAG,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAChD,MAAM,cAAc,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,qBAAa,CAAC,MAAM,CAAC,CAAC;IAEvD,OAAO,cAAc;SAChB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,sBAAc,CAAC,KAAK,CAAC,CAAC;SACrC,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,MAAM,CAAC,CAAC;AACtB,CAAC"}
1
+ {"version":3,"file":"fields.js","sourceRoot":"","sources":["../../utils/fields.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { ArticleRepository } from './repositories/articleRepository';
2
+ export declare function verifyUsage(repo: ArticleRepository): Promise<void>;
3
+ //# sourceMappingURL=verify_refactor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify_refactor.d.ts","sourceRoot":"","sources":["../verify_refactor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAO1E,wBAAsB,WAAW,CAAC,IAAI,EAAE,iBAAiB,iBA2BxD"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.verifyUsage = verifyUsage;
4
+ // This file is just to verify that the types and signatures are correct.
5
+ // It is not meant to be executed against a backend.
6
+ async function verifyUsage(repo) {
7
+ // 1. getByTag with options
8
+ await repo.getByTag('some-tag', {
9
+ preset: 'minimal',
10
+ fields: ['id', 'title']
11
+ });
12
+ // 2. getBySlug with version and custom fields
13
+ await repo.getBySlug('some-slug', {
14
+ language: 'en',
15
+ version: '1.0',
16
+ fields: ['id', 'title', 'versions', 'downloadLinks']
17
+ });
18
+ // 3. getWithDownloads with custom fields
19
+ // Should support options
20
+ await repo.getWithDownloads('some-slug', {
21
+ fields: ['id', 'downloadLinks', 'officialDownloadSources']
22
+ });
23
+ // 4. getMods with options (excluding creator)
24
+ const modListOptions = {
25
+ fields: ['id', 'name', 'version', 'downloadLink']
26
+ };
27
+ await repo.getMods(123, modListOptions);
28
+ console.log('Type checks passed!');
29
+ }
30
+ //# sourceMappingURL=verify_refactor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify_refactor.js","sourceRoot":"","sources":["../verify_refactor.ts"],"names":[],"mappings":";;AAQA,kCA2BC;AA9BD,yEAAyE;AACzE,oDAAoD;AAE7C,KAAK,UAAU,WAAW,CAAC,IAAuB;IACrD,2BAA2B;IAC3B,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;QAC5B,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC;KAC1B,CAAC,CAAC;IAEH,8CAA8C;IAC9C,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE;QAC9B,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,eAAe,CAAC;KACvD,CAAC,CAAC;IAEH,yCAAyC;IACzC,yBAAyB;IACzB,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE;QACrC,MAAM,EAAE,CAAC,IAAI,EAAE,eAAe,EAAE,yBAAyB,CAAC;KAC7D,CAAC,CAAC;IAEH,8CAA8C;IAC9C,MAAM,cAAc,GAAmB;QACnC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,CAAC;KACpD,CAAC;IACF,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;IAExC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;AACvC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chanomhub/sdk",
3
- "version": "1.2.6",
3
+ "version": "1.2.8",
4
4
  "description": "ChanomHub SDK",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",