@verbatims/sdk 1.5.0 → 1.6.1

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
@@ -5,11 +5,12 @@ import { ReferencesResource } from './resources/references';
5
5
  import { TagsResource } from './resources/tags';
6
6
  import { CollectionsResource } from './resources/collections';
7
7
  import { SearchResource } from './resources/search';
8
+ import { ThemesResource } from './resources/themes';
8
9
  export type { ClientOptions } from './client';
9
10
  export { paginate } from './pagination';
10
11
  export type { PageFetcher } from './pagination';
11
12
  export { VerbatimsError, NotFoundError, RateLimitError, ValidationError, AuthError, ForbiddenError, } from './errors';
12
- export type { QuoteWithRelations, Author, QuoteReference, PaginationMeta, ApiResponse, ListQuotesParams, ListAuthorsParams, ListReferencesParams, SearchParams, CreateQuoteData, UpdateQuoteData, CreateAuthorData, UpdateAuthorData, CreateReferenceData, UpdateReferenceData, CreateCollectionData, } from './types';
13
+ export type { QuoteWithRelations, Author, QuoteReference, PaginationMeta, ApiResponse, ListQuotesParams, ListAuthorsParams, ListReferencesParams, SearchParams, CreateQuoteData, UpdateQuoteData, CreateAuthorData, UpdateAuthorData, CreateReferenceData, UpdateReferenceData, CreateCollectionData, Theme, ThemeFilter, ThemeTranslation, ThemeSuggestion, ThemeFeed, ThemeFeedQuote, ThemeFeedAuthor, ThemeFeedReference, ThemeWithDetails, ListThemesParams, CreateThemeData, UpdateThemeData, AddFilterData, FilterSuggestion, FilterRecommendationsData, FilterRecommendation, ThemeNameSuggestion, ThemeSuggestionItem, ActiveThemeParams, FeedParams, ThemeSuggestionsQuery, } from './types';
13
14
  export declare class VerbatimsClient extends BaseClient {
14
15
  quotes: QuotesResource;
15
16
  authors: AuthorsResource;
@@ -17,6 +18,7 @@ export declare class VerbatimsClient extends BaseClient {
17
18
  tags: TagsResource;
18
19
  collections: CollectionsResource;
19
20
  search: SearchResource;
21
+ themes: ThemesResource;
20
22
  constructor(apiKey: string, opts?: ConstructorParameters<typeof BaseClient>[1]);
21
23
  }
22
24
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,IAAI,UAAU,EAAE,MAAM,UAAU,CAAA;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEnD,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACvC,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAE/C,OAAO,EACL,cAAc,EACd,aAAa,EACb,cAAc,EACd,eAAe,EACf,SAAS,EACT,cAAc,GACf,MAAM,UAAU,CAAA;AAEjB,YAAY,EACV,kBAAkB,EAClB,MAAM,EACN,cAAc,EACd,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACZ,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,SAAS,CAAA;AAEhB,qBAAa,eAAgB,SAAQ,UAAU;IAC7C,MAAM,EAAE,cAAc,CAAA;IACtB,OAAO,EAAE,eAAe,CAAA;IACxB,UAAU,EAAE,kBAAkB,CAAA;IAC9B,IAAI,EAAE,YAAY,CAAA;IAClB,WAAW,EAAE,mBAAmB,CAAA;IAChC,MAAM,EAAE,cAAc,CAAA;gBAEV,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,qBAAqB,CAAC,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;CAS/E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,IAAI,UAAU,EAAE,MAAM,UAAU,CAAA;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEnD,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACvC,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAE/C,OAAO,EACL,cAAc,EACd,aAAa,EACb,cAAc,EACd,eAAe,EACf,SAAS,EACT,cAAc,GACf,MAAM,UAAU,CAAA;AAEjB,YAAY,EACV,kBAAkB,EAClB,MAAM,EACN,cAAc,EACd,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACZ,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,KAAK,EACL,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,SAAS,EACT,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,yBAAyB,EACzB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,UAAU,EACV,qBAAqB,GACtB,MAAM,SAAS,CAAA;AAEhB,qBAAa,eAAgB,SAAQ,UAAU;IAC7C,MAAM,EAAE,cAAc,CAAA;IACtB,OAAO,EAAE,eAAe,CAAA;IACxB,UAAU,EAAE,kBAAkB,CAAA;IAC9B,IAAI,EAAE,YAAY,CAAA;IAClB,WAAW,EAAE,mBAAmB,CAAA;IAChC,MAAM,EAAE,cAAc,CAAA;IACtB,MAAM,EAAE,cAAc,CAAA;gBAEV,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,qBAAqB,CAAC,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;CAU/E"}
package/dist/index.js CHANGED
@@ -5,6 +5,7 @@ import { ReferencesResource } from './resources/references';
5
5
  import { TagsResource } from './resources/tags';
6
6
  import { CollectionsResource } from './resources/collections';
7
7
  import { SearchResource } from './resources/search';
8
+ import { ThemesResource } from './resources/themes';
8
9
  export { paginate } from './pagination';
9
10
  export { VerbatimsError, NotFoundError, RateLimitError, ValidationError, AuthError, ForbiddenError, } from './errors';
10
11
  export class VerbatimsClient extends BaseClient {
@@ -14,6 +15,7 @@ export class VerbatimsClient extends BaseClient {
14
15
  tags;
15
16
  collections;
16
17
  search;
18
+ themes;
17
19
  constructor(apiKey, opts) {
18
20
  super(apiKey, opts);
19
21
  this.quotes = new QuotesResource(this);
@@ -22,6 +24,7 @@ export class VerbatimsClient extends BaseClient {
22
24
  this.tags = new TagsResource(this);
23
25
  this.collections = new CollectionsResource(this);
24
26
  this.search = new SearchResource(this);
27
+ this.themes = new ThemesResource(this);
25
28
  }
26
29
  }
27
30
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,IAAI,UAAU,EAAE,MAAM,UAAU,CAAA;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAGnD,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAGvC,OAAO,EACL,cAAc,EACd,aAAa,EACb,cAAc,EACd,eAAe,EACf,SAAS,EACT,cAAc,GACf,MAAM,UAAU,CAAA;AAqBjB,MAAM,OAAO,eAAgB,SAAQ,UAAU;IAC7C,MAAM,CAAgB;IACtB,OAAO,CAAiB;IACxB,UAAU,CAAoB;IAC9B,IAAI,CAAc;IAClB,WAAW,CAAqB;IAChC,MAAM,CAAgB;IAEtB,YAAY,MAAc,EAAE,IAAkD;QAC5E,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QACnB,IAAI,CAAC,MAAM,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,CAAA;QACtC,IAAI,CAAC,OAAO,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAA;QACxC,IAAI,CAAC,UAAU,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAA;QAC9C,IAAI,CAAC,IAAI,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,CAAA;QAClC,IAAI,CAAC,WAAW,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAA;QAChD,IAAI,CAAC,MAAM,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,CAAA;IACxC,CAAC;CACF"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,IAAI,UAAU,EAAE,MAAM,UAAU,CAAA;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAGnD,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAGvC,OAAO,EACL,cAAc,EACd,aAAa,EACb,cAAc,EACd,eAAe,EACf,SAAS,EACT,cAAc,GACf,MAAM,UAAU,CAAA;AA0CjB,MAAM,OAAO,eAAgB,SAAQ,UAAU;IAC7C,MAAM,CAAgB;IACtB,OAAO,CAAiB;IACxB,UAAU,CAAoB;IAC9B,IAAI,CAAc;IAClB,WAAW,CAAqB;IAChC,MAAM,CAAgB;IACtB,MAAM,CAAgB;IAEtB,YAAY,MAAc,EAAE,IAAkD;QAC5E,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QACnB,IAAI,CAAC,MAAM,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,CAAA;QACtC,IAAI,CAAC,OAAO,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAA;QACxC,IAAI,CAAC,UAAU,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAA;QAC9C,IAAI,CAAC,IAAI,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,CAAA;QAClC,IAAI,CAAC,WAAW,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAA;QAChD,IAAI,CAAC,MAAM,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,CAAA;QACtC,IAAI,CAAC,MAAM,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,CAAA;IACxC,CAAC;CACF"}
@@ -4,4 +4,5 @@ export { ReferencesResource } from './references';
4
4
  export { TagsResource } from './tags';
5
5
  export { CollectionsResource } from './collections';
6
6
  export { SearchResource } from './search';
7
+ export { ThemesResource } from './themes';
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA"}
@@ -4,4 +4,5 @@ export { ReferencesResource } from './references';
4
4
  export { TagsResource } from './tags';
5
5
  export { CollectionsResource } from './collections';
6
6
  export { SearchResource } from './search';
7
+ export { ThemesResource } from './themes';
7
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA"}
@@ -0,0 +1,469 @@
1
+ import { z } from 'zod/v4';
2
+ import type { VerbatimsClient } from '../client';
3
+ import type { ListThemesParams, CreateThemeData, UpdateThemeData, AddFilterData, FilterRecommendationsData, ActiveThemeParams, FeedParams, ThemeSuggestionsQuery } from '../types';
4
+ declare const themeSchema: z.ZodObject<{
5
+ id: z.ZodNumber;
6
+ slug: z.ZodString;
7
+ name: z.ZodString;
8
+ description: z.ZodNullable<z.ZodString>;
9
+ language: z.ZodNullable<z.ZodString>;
10
+ isActive: z.ZodBoolean;
11
+ isDefault: z.ZodBoolean;
12
+ scheduledStart: z.ZodNullable<z.ZodString>;
13
+ scheduledEnd: z.ZodNullable<z.ZodString>;
14
+ priority: z.ZodNumber;
15
+ config: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
16
+ createdAt: z.ZodString;
17
+ updatedAt: z.ZodString;
18
+ filters_count: z.ZodNumber;
19
+ pending_suggestions_count: z.ZodOptional<z.ZodNumber>;
20
+ }, z.core.$strip>;
21
+ type ThemeItem = z.infer<typeof themeSchema>;
22
+ export declare class ThemesResource {
23
+ private client;
24
+ constructor(client: VerbatimsClient);
25
+ getActive(params?: ActiveThemeParams): Promise<{
26
+ success: true;
27
+ data?: {
28
+ id: number;
29
+ slug: string;
30
+ name: string;
31
+ description: string | null;
32
+ language: string | null;
33
+ isActive: boolean;
34
+ isDefault: boolean;
35
+ scheduledStart: string | null;
36
+ scheduledEnd: string | null;
37
+ priority: number;
38
+ config: Record<string, unknown> | null;
39
+ createdAt: string;
40
+ updatedAt: string;
41
+ filters_count: number;
42
+ pending_suggestions_count?: number | undefined;
43
+ } | null | undefined;
44
+ message?: string | undefined;
45
+ pagination?: {
46
+ page: number;
47
+ limit: number;
48
+ total: number;
49
+ totalPages: number;
50
+ hasMore: boolean;
51
+ } | undefined;
52
+ }>;
53
+ getFeed(slug: string, params?: FeedParams): Promise<{
54
+ success: true;
55
+ data?: {
56
+ theme: {
57
+ id: number;
58
+ slug: string;
59
+ name: string;
60
+ description: string | null;
61
+ language: string | null;
62
+ isActive: boolean;
63
+ isDefault: boolean;
64
+ scheduledStart: string | null;
65
+ scheduledEnd: string | null;
66
+ priority: number;
67
+ config: Record<string, unknown> | null;
68
+ createdAt: string;
69
+ updatedAt: string;
70
+ filters_count: number;
71
+ pending_suggestions_count?: number | undefined;
72
+ };
73
+ quotes: {
74
+ id: number;
75
+ name: string;
76
+ language: string;
77
+ created_at: string;
78
+ views_count: number;
79
+ likes_count: number;
80
+ updated_at: string;
81
+ author?: {
82
+ id: number;
83
+ name: string;
84
+ } | undefined;
85
+ reference?: {
86
+ id: number;
87
+ name: string;
88
+ } | undefined;
89
+ }[];
90
+ authors: {
91
+ id: number;
92
+ name: string;
93
+ job: string;
94
+ description: string;
95
+ image_url: string;
96
+ likes_count: number;
97
+ }[];
98
+ references: {
99
+ id: number;
100
+ name: string;
101
+ description: string;
102
+ primary_type: string;
103
+ image_url: string;
104
+ likes_count: number;
105
+ }[];
106
+ total: number;
107
+ } | null | undefined;
108
+ message?: string | undefined;
109
+ pagination?: {
110
+ page: number;
111
+ limit: number;
112
+ total: number;
113
+ totalPages: number;
114
+ hasMore: boolean;
115
+ } | undefined;
116
+ }>;
117
+ list(params?: ListThemesParams): Promise<{
118
+ success: true;
119
+ data?: {
120
+ id: number;
121
+ slug: string;
122
+ name: string;
123
+ description: string | null;
124
+ language: string | null;
125
+ isActive: boolean;
126
+ isDefault: boolean;
127
+ scheduledStart: string | null;
128
+ scheduledEnd: string | null;
129
+ priority: number;
130
+ config: Record<string, unknown> | null;
131
+ createdAt: string;
132
+ updatedAt: string;
133
+ filters_count: number;
134
+ pending_suggestions_count?: number | undefined;
135
+ }[] | undefined;
136
+ message?: string | undefined;
137
+ pagination?: {
138
+ page: number;
139
+ limit: number;
140
+ total: number;
141
+ totalPages: number;
142
+ hasMore: boolean;
143
+ } | undefined;
144
+ }>;
145
+ paginate(params?: ListThemesParams): AsyncGenerator<ThemeItem>;
146
+ get(id: number): Promise<{
147
+ success: true;
148
+ data?: ({
149
+ id: number;
150
+ slug: string;
151
+ name: string;
152
+ description: string | null;
153
+ language: string | null;
154
+ isActive: boolean;
155
+ isDefault: boolean;
156
+ scheduledStart: string | null;
157
+ scheduledEnd: string | null;
158
+ priority: number;
159
+ config: Record<string, unknown> | null;
160
+ createdAt: string;
161
+ updatedAt: string;
162
+ filters_count: number;
163
+ pending_suggestions_count?: number | undefined;
164
+ } & {
165
+ filters: {
166
+ id: number;
167
+ themeId: number;
168
+ type: string;
169
+ value: string;
170
+ matchMode: "any" | "all";
171
+ }[];
172
+ translations: {
173
+ id: number;
174
+ themeId: number;
175
+ language: string;
176
+ name: string;
177
+ description: string | null;
178
+ }[];
179
+ }) | undefined;
180
+ message?: string | undefined;
181
+ pagination?: {
182
+ page: number;
183
+ limit: number;
184
+ total: number;
185
+ totalPages: number;
186
+ hasMore: boolean;
187
+ } | undefined;
188
+ }>;
189
+ create(data: CreateThemeData): Promise<{
190
+ success: true;
191
+ data?: {
192
+ id: number;
193
+ slug: string;
194
+ name: string;
195
+ description: string | null;
196
+ language: string | null;
197
+ isActive: boolean;
198
+ isDefault: boolean;
199
+ scheduledStart: string | null;
200
+ scheduledEnd: string | null;
201
+ priority: number;
202
+ config: Record<string, unknown> | null;
203
+ createdAt: string;
204
+ updatedAt: string;
205
+ filters_count: number;
206
+ pending_suggestions_count?: number | undefined;
207
+ } | undefined;
208
+ message?: string | undefined;
209
+ pagination?: {
210
+ page: number;
211
+ limit: number;
212
+ total: number;
213
+ totalPages: number;
214
+ hasMore: boolean;
215
+ } | undefined;
216
+ }>;
217
+ update(id: number, data: UpdateThemeData): Promise<{
218
+ success: true;
219
+ data?: {
220
+ id: number;
221
+ slug: string;
222
+ name: string;
223
+ description: string | null;
224
+ language: string | null;
225
+ isActive: boolean;
226
+ isDefault: boolean;
227
+ scheduledStart: string | null;
228
+ scheduledEnd: string | null;
229
+ priority: number;
230
+ config: Record<string, unknown> | null;
231
+ createdAt: string;
232
+ updatedAt: string;
233
+ filters_count: number;
234
+ pending_suggestions_count?: number | undefined;
235
+ } | undefined;
236
+ message?: string | undefined;
237
+ pagination?: {
238
+ page: number;
239
+ limit: number;
240
+ total: number;
241
+ totalPages: number;
242
+ hasMore: boolean;
243
+ } | undefined;
244
+ }>;
245
+ delete(id: number): Promise<{
246
+ success: true;
247
+ data?: undefined;
248
+ message?: string | undefined;
249
+ pagination?: {
250
+ page: number;
251
+ limit: number;
252
+ total: number;
253
+ totalPages: number;
254
+ hasMore: boolean;
255
+ } | undefined;
256
+ }>;
257
+ activate(id: number, isActive: boolean): Promise<{
258
+ success: true;
259
+ data?: {
260
+ id: number;
261
+ slug: string;
262
+ name: string;
263
+ description: string | null;
264
+ language: string | null;
265
+ isActive: boolean;
266
+ isDefault: boolean;
267
+ scheduledStart: string | null;
268
+ scheduledEnd: string | null;
269
+ priority: number;
270
+ config: Record<string, unknown> | null;
271
+ createdAt: string;
272
+ updatedAt: string;
273
+ filters_count: number;
274
+ pending_suggestions_count?: number | undefined;
275
+ } | undefined;
276
+ message?: string | undefined;
277
+ pagination?: {
278
+ page: number;
279
+ limit: number;
280
+ total: number;
281
+ totalPages: number;
282
+ hasMore: boolean;
283
+ } | undefined;
284
+ }>;
285
+ setDefault(id: number, isDefault: boolean): Promise<{
286
+ success: true;
287
+ data?: {
288
+ id: number;
289
+ slug: string;
290
+ name: string;
291
+ description: string | null;
292
+ language: string | null;
293
+ isActive: boolean;
294
+ isDefault: boolean;
295
+ scheduledStart: string | null;
296
+ scheduledEnd: string | null;
297
+ priority: number;
298
+ config: Record<string, unknown> | null;
299
+ createdAt: string;
300
+ updatedAt: string;
301
+ filters_count: number;
302
+ pending_suggestions_count?: number | undefined;
303
+ } | undefined;
304
+ message?: string | undefined;
305
+ pagination?: {
306
+ page: number;
307
+ limit: number;
308
+ total: number;
309
+ totalPages: number;
310
+ hasMore: boolean;
311
+ } | undefined;
312
+ }>;
313
+ addFilter(id: number, data: AddFilterData): Promise<{
314
+ success: true;
315
+ data?: {
316
+ id: number;
317
+ themeId: number;
318
+ type: string;
319
+ value: string;
320
+ matchMode: "any" | "all";
321
+ } | undefined;
322
+ message?: string | undefined;
323
+ pagination?: {
324
+ page: number;
325
+ limit: number;
326
+ total: number;
327
+ totalPages: number;
328
+ hasMore: boolean;
329
+ } | undefined;
330
+ }>;
331
+ removeFilter(id: number, filterId: number): Promise<{
332
+ success: true;
333
+ data?: undefined;
334
+ message?: string | undefined;
335
+ pagination?: {
336
+ page: number;
337
+ limit: number;
338
+ total: number;
339
+ totalPages: number;
340
+ hasMore: boolean;
341
+ } | undefined;
342
+ }>;
343
+ listSuggestions(id: number): Promise<{
344
+ success: true;
345
+ data?: {
346
+ id: number;
347
+ themeId: number;
348
+ enrichmentJobId: number | null;
349
+ type: "tag" | "author" | "reference";
350
+ suggestedValue: string;
351
+ context: string | null;
352
+ status: "pending" | "accepted" | "rejected";
353
+ createdBy: number | null;
354
+ reviewedBy: number | null;
355
+ reviewedAt: string | null;
356
+ createdAt: string;
357
+ updatedAt: string;
358
+ }[] | undefined;
359
+ message?: string | undefined;
360
+ pagination?: {
361
+ page: number;
362
+ limit: number;
363
+ total: number;
364
+ totalPages: number;
365
+ hasMore: boolean;
366
+ } | undefined;
367
+ }>;
368
+ reviewSuggestion(id: number, suggestionId: number, action: 'accepted' | 'rejected'): Promise<{
369
+ success: true;
370
+ data?: {
371
+ id: number;
372
+ themeId: number;
373
+ enrichmentJobId: number | null;
374
+ type: "tag" | "author" | "reference";
375
+ suggestedValue: string;
376
+ context: string | null;
377
+ status: "pending" | "accepted" | "rejected";
378
+ createdBy: number | null;
379
+ reviewedBy: number | null;
380
+ reviewedAt: string | null;
381
+ createdAt: string;
382
+ updatedAt: string;
383
+ } | undefined;
384
+ message?: string | undefined;
385
+ pagination?: {
386
+ page: number;
387
+ limit: number;
388
+ total: number;
389
+ totalPages: number;
390
+ hasMore: boolean;
391
+ } | undefined;
392
+ }>;
393
+ filterSuggestions(params: {
394
+ q: string;
395
+ type: string;
396
+ }): Promise<{
397
+ success: true;
398
+ data?: {
399
+ label: string;
400
+ value: string;
401
+ }[] | undefined;
402
+ message?: string | undefined;
403
+ pagination?: {
404
+ page: number;
405
+ limit: number;
406
+ total: number;
407
+ totalPages: number;
408
+ hasMore: boolean;
409
+ } | undefined;
410
+ }>;
411
+ filterRecommendations(data: FilterRecommendationsData): Promise<{
412
+ success: true;
413
+ data?: {
414
+ type: string;
415
+ value: string;
416
+ label: string;
417
+ }[] | undefined;
418
+ message?: string | undefined;
419
+ pagination?: {
420
+ page: number;
421
+ limit: number;
422
+ total: number;
423
+ totalPages: number;
424
+ hasMore: boolean;
425
+ } | undefined;
426
+ }>;
427
+ suggestName(name: string): Promise<{
428
+ success: true;
429
+ data?: {
430
+ name: string;
431
+ slug: string;
432
+ description: string;
433
+ } | undefined;
434
+ message?: string | undefined;
435
+ pagination?: {
436
+ page: number;
437
+ limit: number;
438
+ total: number;
439
+ totalPages: number;
440
+ hasMore: boolean;
441
+ } | undefined;
442
+ }>;
443
+ suggestions(params?: ThemeSuggestionsQuery): Promise<{
444
+ success: true;
445
+ data?: {
446
+ type: "tag" | "author" | "reference";
447
+ name: string;
448
+ slug: string;
449
+ description: string;
450
+ color_primary: string;
451
+ color_secondary: string;
452
+ filters: {
453
+ type: string;
454
+ value: string;
455
+ match_mode: "any";
456
+ }[];
457
+ }[] | undefined;
458
+ message?: string | undefined;
459
+ pagination?: {
460
+ page: number;
461
+ limit: number;
462
+ total: number;
463
+ totalPages: number;
464
+ hasMore: boolean;
465
+ } | undefined;
466
+ }>;
467
+ }
468
+ export {};
469
+ //# sourceMappingURL=themes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"themes.d.ts","sourceRoot":"","sources":["../../src/resources/themes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAC1B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAGhD,OAAO,KAAK,EAMV,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,aAAa,EAEb,yBAAyB,EAIzB,iBAAiB,EACjB,UAAU,EACV,qBAAqB,EACtB,MAAM,UAAU,CAAA;AAEjB,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;iBAgBf,CAAA;AA4DF,KAAK,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAA;AAE5C,qBAAa,cAAc;IACb,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,eAAe;IAErC,SAAS,CAAC,MAAM,CAAC,EAAE,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAIpC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAIzC,IAAI,CAAC,MAAM,CAAC,EAAE,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAIpC,QAAQ,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,cAAc,CAAC,SAAS,CAAC;IASxD,GAAG,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAad,MAAM,CAAC,IAAI,EAAE,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAI5B,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAIxC,MAAM,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;IAIjB,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAItC,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAIzC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa;;;;;;;;;;;;;;;;;;IAIzC,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;;;;;;;;;;;;IAIzC,eAAe,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;IAI1B,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;IAIlF,iBAAiB,CAAC,MAAM,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;;;;;;IAOrD,qBAAqB,CAAC,IAAI,EAAE,yBAAyB;;;;;;;;;;;;;;;;IAQrD,WAAW,CAAC,IAAI,EAAE,MAAM;;;;;;;;;;;;;;;;IAQxB,WAAW,CAAC,MAAM,CAAC,EAAE,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;CAejD"}