tsarr 2.8.0 → 2.9.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/README.md +7 -5
- package/dist/cli/commands/bazarr.d.ts +2 -0
- package/dist/cli/commands/bazarr.d.ts.map +1 -1
- package/dist/cli/commands/config.d.ts.map +1 -1
- package/dist/cli/commands/lidarr.d.ts +2 -0
- package/dist/cli/commands/lidarr.d.ts.map +1 -1
- package/dist/cli/commands/radarr.d.ts.map +1 -1
- package/dist/cli/commands/readarr.d.ts +2 -0
- package/dist/cli/commands/readarr.d.ts.map +1 -1
- package/dist/cli/commands/sonarr.d.ts.map +1 -1
- package/dist/cli/index.js +2722 -3054
- package/dist/clients/base.d.ts +131 -0
- package/dist/clients/base.d.ts.map +1 -0
- package/dist/clients/bazarr.d.ts +0 -1
- package/dist/clients/bazarr.d.ts.map +1 -1
- package/dist/clients/bazarr.js +8 -3
- package/dist/clients/lidarr.d.ts +25 -683
- package/dist/clients/lidarr.d.ts.map +1 -1
- package/dist/clients/lidarr.js +227 -197
- package/dist/clients/prowlarr.d.ts +26 -640
- package/dist/clients/prowlarr.d.ts.map +1 -1
- package/dist/clients/prowlarr.js +235 -176
- package/dist/clients/qbittorrent.d.ts +1 -17
- package/dist/clients/qbittorrent.d.ts.map +1 -1
- package/dist/clients/qbittorrent.js +8 -2
- package/dist/clients/radarr.d.ts +5 -659
- package/dist/clients/radarr.d.ts.map +1 -1
- package/dist/clients/radarr.js +227 -165
- package/dist/clients/readarr.d.ts +5 -637
- package/dist/clients/readarr.d.ts.map +1 -1
- package/dist/clients/readarr.js +227 -165
- package/dist/clients/seerr.d.ts +0 -1
- package/dist/clients/seerr.d.ts.map +1 -1
- package/dist/clients/seerr.js +8 -3
- package/dist/clients/sonarr.d.ts +182 -774
- package/dist/clients/sonarr.d.ts.map +1 -1
- package/dist/clients/sonarr.js +250 -158
- package/dist/core/client.d.ts +1 -0
- package/dist/core/client.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/tsarr-2.9.1.tgz +0 -0
- package/package.json +2 -4
- package/dist/tsarr-2.8.0.tgz +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"readarr.d.ts","sourceRoot":"","sources":["../../src/clients/readarr.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"readarr.d.ts","sourceRoot":"","sources":["../../src/clients/readarr.ts"],"names":[],"mappings":"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"}
|
package/dist/clients/readarr.js
CHANGED
|
@@ -27,6 +27,7 @@ class ConnectionError extends TsarrError {
|
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
// src/core/client.ts
|
|
30
|
+
var DEFAULT_TIMEOUT_MS = 30000;
|
|
30
31
|
function createServarrClient(config) {
|
|
31
32
|
if (!config.apiKey) {
|
|
32
33
|
throw new ApiKeyError;
|
|
@@ -38,6 +39,7 @@ function createServarrClient(config) {
|
|
|
38
39
|
...config,
|
|
39
40
|
baseUrl: config.baseUrl.replace(/\/$/, "")
|
|
40
41
|
};
|
|
42
|
+
const timeoutMs = validatedConfig.timeout ?? DEFAULT_TIMEOUT_MS;
|
|
41
43
|
return {
|
|
42
44
|
config: validatedConfig,
|
|
43
45
|
getHeaders: () => ({
|
|
@@ -45,10 +47,180 @@ function createServarrClient(config) {
|
|
|
45
47
|
"Content-Type": "application/json",
|
|
46
48
|
...validatedConfig.headers
|
|
47
49
|
}),
|
|
48
|
-
getBaseUrl: () => validatedConfig.baseUrl
|
|
50
|
+
getBaseUrl: () => validatedConfig.baseUrl,
|
|
51
|
+
getTimeout: () => timeoutMs
|
|
49
52
|
};
|
|
50
53
|
}
|
|
51
54
|
|
|
55
|
+
// src/clients/base.ts
|
|
56
|
+
class ServarrBaseClient {
|
|
57
|
+
clientConfig;
|
|
58
|
+
constructor(config) {
|
|
59
|
+
this.clientConfig = createServarrClient(config);
|
|
60
|
+
this.configureRawClient();
|
|
61
|
+
}
|
|
62
|
+
getClientConfig() {
|
|
63
|
+
return {
|
|
64
|
+
baseUrl: this.clientConfig.getBaseUrl(),
|
|
65
|
+
headers: this.clientConfig.getHeaders(),
|
|
66
|
+
signal: AbortSignal.timeout(this.clientConfig.getTimeout())
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
async getSystemStatus() {
|
|
70
|
+
return this.ops.getSystemStatus();
|
|
71
|
+
}
|
|
72
|
+
async getHealth() {
|
|
73
|
+
return this.ops.getHealth();
|
|
74
|
+
}
|
|
75
|
+
async getTags() {
|
|
76
|
+
return this.ops.getTags();
|
|
77
|
+
}
|
|
78
|
+
async addTag(tag) {
|
|
79
|
+
return this.ops.createTag({ body: tag });
|
|
80
|
+
}
|
|
81
|
+
async getTag(id) {
|
|
82
|
+
return this.ops.getTagById({ path: { id } });
|
|
83
|
+
}
|
|
84
|
+
async updateTag(id, tag) {
|
|
85
|
+
return this.ops.updateTagById({ path: { id: String(id) }, body: tag });
|
|
86
|
+
}
|
|
87
|
+
async deleteTag(id) {
|
|
88
|
+
return this.ops.deleteTagById({ path: { id } });
|
|
89
|
+
}
|
|
90
|
+
async getTagDetails() {
|
|
91
|
+
return this.ops.getTagDetails();
|
|
92
|
+
}
|
|
93
|
+
async getTagDetailById(id) {
|
|
94
|
+
return this.ops.getTagDetailById({ path: { id } });
|
|
95
|
+
}
|
|
96
|
+
async getNotifications() {
|
|
97
|
+
return this.ops.getNotifications();
|
|
98
|
+
}
|
|
99
|
+
async getNotification(id) {
|
|
100
|
+
return this.ops.getNotificationById({ path: { id } });
|
|
101
|
+
}
|
|
102
|
+
async addNotification(notification) {
|
|
103
|
+
return this.ops.createNotification({ body: notification });
|
|
104
|
+
}
|
|
105
|
+
async updateNotification(id, notification) {
|
|
106
|
+
return this.ops.updateNotificationById({ path: { id: String(id) }, body: notification });
|
|
107
|
+
}
|
|
108
|
+
async deleteNotification(id) {
|
|
109
|
+
return this.ops.deleteNotificationById({ path: { id } });
|
|
110
|
+
}
|
|
111
|
+
async getNotificationSchema() {
|
|
112
|
+
return this.ops.getNotificationSchema();
|
|
113
|
+
}
|
|
114
|
+
async testNotification(notification) {
|
|
115
|
+
return this.ops.testNotification({ body: notification });
|
|
116
|
+
}
|
|
117
|
+
async testAllNotifications() {
|
|
118
|
+
return this.ops.testAllNotifications();
|
|
119
|
+
}
|
|
120
|
+
async getDownloadClients() {
|
|
121
|
+
return this.ops.getDownloadClients();
|
|
122
|
+
}
|
|
123
|
+
async getDownloadClient(id) {
|
|
124
|
+
return this.ops.getDownloadClientById({ path: { id } });
|
|
125
|
+
}
|
|
126
|
+
async addDownloadClient(client) {
|
|
127
|
+
return this.ops.createDownloadClient({ body: client });
|
|
128
|
+
}
|
|
129
|
+
async updateDownloadClient(id, client) {
|
|
130
|
+
return this.ops.updateDownloadClientById({ path: { id: String(id) }, body: client });
|
|
131
|
+
}
|
|
132
|
+
async deleteDownloadClient(id) {
|
|
133
|
+
return this.ops.deleteDownloadClientById({ path: { id } });
|
|
134
|
+
}
|
|
135
|
+
async getDownloadClientSchema() {
|
|
136
|
+
return this.ops.getDownloadClientSchema();
|
|
137
|
+
}
|
|
138
|
+
async testDownloadClient(client) {
|
|
139
|
+
return this.ops.testDownloadClient({ body: client });
|
|
140
|
+
}
|
|
141
|
+
async testAllDownloadClients() {
|
|
142
|
+
return this.ops.testAllDownloadClients();
|
|
143
|
+
}
|
|
144
|
+
async getIndexers() {
|
|
145
|
+
return this.ops.getIndexers();
|
|
146
|
+
}
|
|
147
|
+
async getIndexer(id) {
|
|
148
|
+
return this.ops.getIndexerById({ path: { id } });
|
|
149
|
+
}
|
|
150
|
+
async addIndexer(indexer) {
|
|
151
|
+
return this.ops.createIndexer({ body: indexer });
|
|
152
|
+
}
|
|
153
|
+
async updateIndexer(id, indexer) {
|
|
154
|
+
return this.ops.updateIndexerById({ path: { id: String(id) }, body: indexer });
|
|
155
|
+
}
|
|
156
|
+
async deleteIndexer(id) {
|
|
157
|
+
return this.ops.deleteIndexerById({ path: { id } });
|
|
158
|
+
}
|
|
159
|
+
async getIndexerSchema() {
|
|
160
|
+
return this.ops.getIndexerSchema();
|
|
161
|
+
}
|
|
162
|
+
async testIndexer(indexer) {
|
|
163
|
+
return this.ops.testIndexer({ body: indexer });
|
|
164
|
+
}
|
|
165
|
+
async testAllIndexers() {
|
|
166
|
+
return this.ops.testAllIndexers();
|
|
167
|
+
}
|
|
168
|
+
async restartSystem() {
|
|
169
|
+
return this.ops.restartSystem();
|
|
170
|
+
}
|
|
171
|
+
async shutdownSystem() {
|
|
172
|
+
return this.ops.shutdownSystem();
|
|
173
|
+
}
|
|
174
|
+
async getSystemBackups() {
|
|
175
|
+
return this.ops.getBackups();
|
|
176
|
+
}
|
|
177
|
+
async deleteSystemBackup(id) {
|
|
178
|
+
return this.ops.deleteBackup({ path: { id } });
|
|
179
|
+
}
|
|
180
|
+
async restoreSystemBackup(id) {
|
|
181
|
+
return this.ops.restoreBackup({ path: { id } });
|
|
182
|
+
}
|
|
183
|
+
async uploadSystemBackup() {
|
|
184
|
+
return this.ops.uploadBackup();
|
|
185
|
+
}
|
|
186
|
+
async getLogFiles() {
|
|
187
|
+
return this.ops.getLogFiles();
|
|
188
|
+
}
|
|
189
|
+
async getLogFileByName(filename) {
|
|
190
|
+
return this.ops.getLogFileByName({ path: { filename } });
|
|
191
|
+
}
|
|
192
|
+
async runCommand(command) {
|
|
193
|
+
return this.ops.runCommand({ body: command });
|
|
194
|
+
}
|
|
195
|
+
async getCommands() {
|
|
196
|
+
return this.ops.getCommands();
|
|
197
|
+
}
|
|
198
|
+
async getHostConfig() {
|
|
199
|
+
return this.ops.getHostConfig();
|
|
200
|
+
}
|
|
201
|
+
async getHostConfigById(id) {
|
|
202
|
+
return this.ops.getHostConfigById({ path: { id } });
|
|
203
|
+
}
|
|
204
|
+
async updateHostConfig(id, config) {
|
|
205
|
+
return this.ops.updateHostConfig({ path: { id: String(id) }, body: config });
|
|
206
|
+
}
|
|
207
|
+
async getUiConfig() {
|
|
208
|
+
return this.ops.getUiConfig();
|
|
209
|
+
}
|
|
210
|
+
async getUiConfigById(id) {
|
|
211
|
+
return this.ops.getUiConfigById({ path: { id } });
|
|
212
|
+
}
|
|
213
|
+
async updateUiConfig(id, config) {
|
|
214
|
+
return this.ops.updateUiConfig({ path: { id: String(id) }, body: config });
|
|
215
|
+
}
|
|
216
|
+
updateConfig(newConfig) {
|
|
217
|
+
const updatedConfig = { ...this.clientConfig.config, ...newConfig };
|
|
218
|
+
this.clientConfig = createServarrClient(updatedConfig);
|
|
219
|
+
this.configureRawClient();
|
|
220
|
+
return this.clientConfig.config;
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
|
|
52
224
|
// src/generated/readarr/core/bodySerializer.gen.ts
|
|
53
225
|
var jsonBodySerializer = {
|
|
54
226
|
bodySerializer: (body) => JSON.stringify(body, (_key, value) => typeof value === "bigint" ? value.toString() : value)
|
|
@@ -2093,20 +2265,60 @@ var getApiV1ConfigUi = (options) => (options?.client ?? client).get({
|
|
|
2093
2265
|
...options
|
|
2094
2266
|
});
|
|
2095
2267
|
// src/clients/readarr.ts
|
|
2096
|
-
class ReadarrClient {
|
|
2097
|
-
|
|
2098
|
-
|
|
2099
|
-
|
|
2100
|
-
|
|
2101
|
-
|
|
2102
|
-
|
|
2103
|
-
|
|
2104
|
-
|
|
2105
|
-
|
|
2106
|
-
|
|
2107
|
-
|
|
2108
|
-
|
|
2109
|
-
|
|
2268
|
+
class ReadarrClient extends ServarrBaseClient {
|
|
2269
|
+
ops = {
|
|
2270
|
+
getSystemStatus: getApiV1SystemStatus,
|
|
2271
|
+
getHealth: getApiV1Health,
|
|
2272
|
+
getTags: getApiV1Tag,
|
|
2273
|
+
createTag: postApiV1Tag,
|
|
2274
|
+
getTagById: getApiV1TagById,
|
|
2275
|
+
updateTagById: putApiV1TagById,
|
|
2276
|
+
deleteTagById: deleteApiV1TagById,
|
|
2277
|
+
getTagDetails: getApiV1TagDetail,
|
|
2278
|
+
getTagDetailById: getApiV1TagDetailById,
|
|
2279
|
+
getNotifications: getApiV1Notification,
|
|
2280
|
+
createNotification: postApiV1Notification,
|
|
2281
|
+
getNotificationById: getApiV1NotificationById,
|
|
2282
|
+
updateNotificationById: putApiV1NotificationById,
|
|
2283
|
+
deleteNotificationById: deleteApiV1NotificationById,
|
|
2284
|
+
getNotificationSchema: getApiV1NotificationSchema,
|
|
2285
|
+
testNotification: postApiV1NotificationTest,
|
|
2286
|
+
testAllNotifications: postApiV1NotificationTestall,
|
|
2287
|
+
getDownloadClients: getApiV1Downloadclient,
|
|
2288
|
+
createDownloadClient: postApiV1Downloadclient,
|
|
2289
|
+
getDownloadClientById: getApiV1DownloadclientById,
|
|
2290
|
+
updateDownloadClientById: putApiV1DownloadclientById,
|
|
2291
|
+
deleteDownloadClientById: deleteApiV1DownloadclientById,
|
|
2292
|
+
getDownloadClientSchema: getApiV1DownloadclientSchema,
|
|
2293
|
+
testDownloadClient: postApiV1DownloadclientTest,
|
|
2294
|
+
testAllDownloadClients: postApiV1DownloadclientTestall,
|
|
2295
|
+
getIndexers: getApiV1Indexer,
|
|
2296
|
+
createIndexer: postApiV1Indexer,
|
|
2297
|
+
getIndexerById: getApiV1IndexerById,
|
|
2298
|
+
updateIndexerById: putApiV1IndexerById,
|
|
2299
|
+
deleteIndexerById: deleteApiV1IndexerById,
|
|
2300
|
+
getIndexerSchema: getApiV1IndexerSchema,
|
|
2301
|
+
testIndexer: postApiV1IndexerTest,
|
|
2302
|
+
testAllIndexers: postApiV1IndexerTestall,
|
|
2303
|
+
restartSystem: postApiV1SystemRestart,
|
|
2304
|
+
shutdownSystem: postApiV1SystemShutdown,
|
|
2305
|
+
getBackups: getApiV1SystemBackup,
|
|
2306
|
+
deleteBackup: deleteApiV1SystemBackupById,
|
|
2307
|
+
restoreBackup: postApiV1SystemBackupRestoreById,
|
|
2308
|
+
uploadBackup: postApiV1SystemBackupRestoreUpload,
|
|
2309
|
+
getLogFiles: getApiV1LogFile,
|
|
2310
|
+
getLogFileByName: getApiV1LogFileByFilename,
|
|
2311
|
+
runCommand: postApiV1Command,
|
|
2312
|
+
getCommands: getApiV1Command,
|
|
2313
|
+
getHostConfig: getApiV1ConfigHost,
|
|
2314
|
+
getHostConfigById: getApiV1ConfigHostById,
|
|
2315
|
+
updateHostConfig: putApiV1ConfigHostById,
|
|
2316
|
+
getUiConfig: getApiV1ConfigUi,
|
|
2317
|
+
getUiConfigById: getApiV1ConfigUiById,
|
|
2318
|
+
updateUiConfig: putApiV1ConfigUiById
|
|
2319
|
+
};
|
|
2320
|
+
configureRawClient() {
|
|
2321
|
+
client.setConfig(this.getClientConfig());
|
|
2110
2322
|
}
|
|
2111
2323
|
async getAuthors() {
|
|
2112
2324
|
return getApiV1Author();
|
|
@@ -2132,12 +2344,6 @@ class ReadarrClient {
|
|
|
2132
2344
|
async searchAuthors(term) {
|
|
2133
2345
|
return getApiV1AuthorLookup({ query: { term } });
|
|
2134
2346
|
}
|
|
2135
|
-
async runCommand(command) {
|
|
2136
|
-
return postApiV1Command({ body: command });
|
|
2137
|
-
}
|
|
2138
|
-
async getCommands() {
|
|
2139
|
-
return getApiV1Command();
|
|
2140
|
-
}
|
|
2141
2347
|
async getRootFolders() {
|
|
2142
2348
|
return getApiV1Rootfolder();
|
|
2143
2349
|
}
|
|
@@ -2149,15 +2355,6 @@ class ReadarrClient {
|
|
|
2149
2355
|
async deleteRootFolder(id) {
|
|
2150
2356
|
return deleteApiV1RootfolderById({ path: { id } });
|
|
2151
2357
|
}
|
|
2152
|
-
async getHostConfig() {
|
|
2153
|
-
return getApiV1ConfigHost();
|
|
2154
|
-
}
|
|
2155
|
-
async getHostConfigById(id) {
|
|
2156
|
-
return getApiV1ConfigHostById({ path: { id } });
|
|
2157
|
-
}
|
|
2158
|
-
async updateHostConfig(id, config) {
|
|
2159
|
-
return putApiV1ConfigHostById({ path: { id: String(id) }, body: config });
|
|
2160
|
-
}
|
|
2161
2358
|
async getNamingConfig() {
|
|
2162
2359
|
return getApiV1ConfigNaming();
|
|
2163
2360
|
}
|
|
@@ -2179,15 +2376,6 @@ class ReadarrClient {
|
|
|
2179
2376
|
async updateMediaManagementConfig(id, config) {
|
|
2180
2377
|
return putApiV1ConfigMediamanagementById({ path: { id: String(id) }, body: config });
|
|
2181
2378
|
}
|
|
2182
|
-
async getUiConfig() {
|
|
2183
|
-
return getApiV1ConfigUi();
|
|
2184
|
-
}
|
|
2185
|
-
async getUiConfigById(id) {
|
|
2186
|
-
return getApiV1ConfigUiById({ path: { id } });
|
|
2187
|
-
}
|
|
2188
|
-
async updateUiConfig(id, config) {
|
|
2189
|
-
return putApiV1ConfigUiById({ path: { id: String(id) }, body: config });
|
|
2190
|
-
}
|
|
2191
2379
|
async getDevelopmentConfig() {
|
|
2192
2380
|
return getApiV1ConfigDevelopment();
|
|
2193
2381
|
}
|
|
@@ -2209,57 +2397,12 @@ class ReadarrClient {
|
|
|
2209
2397
|
body: config
|
|
2210
2398
|
});
|
|
2211
2399
|
}
|
|
2212
|
-
async restartSystem() {
|
|
2213
|
-
return postApiV1SystemRestart();
|
|
2214
|
-
}
|
|
2215
|
-
async shutdownSystem() {
|
|
2216
|
-
return postApiV1SystemShutdown();
|
|
2217
|
-
}
|
|
2218
|
-
async getSystemBackups() {
|
|
2219
|
-
return getApiV1SystemBackup();
|
|
2220
|
-
}
|
|
2221
|
-
async deleteSystemBackup(id) {
|
|
2222
|
-
return deleteApiV1SystemBackupById({ path: { id } });
|
|
2223
|
-
}
|
|
2224
|
-
async restoreSystemBackup(id) {
|
|
2225
|
-
return postApiV1SystemBackupRestoreById({ path: { id } });
|
|
2226
|
-
}
|
|
2227
|
-
async uploadSystemBackup() {
|
|
2228
|
-
return postApiV1SystemBackupRestoreUpload();
|
|
2229
|
-
}
|
|
2230
2400
|
async getSystemLogs() {
|
|
2231
2401
|
return getApiV1Log();
|
|
2232
2402
|
}
|
|
2233
|
-
async getLogFiles() {
|
|
2234
|
-
return getApiV1LogFile();
|
|
2235
|
-
}
|
|
2236
|
-
async getLogFileByName(filename) {
|
|
2237
|
-
return getApiV1LogFileByFilename({ path: { filename } });
|
|
2238
|
-
}
|
|
2239
2403
|
async getDiskSpace() {
|
|
2240
2404
|
return getApiV1Diskspace();
|
|
2241
2405
|
}
|
|
2242
|
-
async getTags() {
|
|
2243
|
-
return getApiV1Tag();
|
|
2244
|
-
}
|
|
2245
|
-
async addTag(tag) {
|
|
2246
|
-
return postApiV1Tag({ body: tag });
|
|
2247
|
-
}
|
|
2248
|
-
async getTag(id) {
|
|
2249
|
-
return getApiV1TagById({ path: { id } });
|
|
2250
|
-
}
|
|
2251
|
-
async updateTag(id, tag) {
|
|
2252
|
-
return putApiV1TagById({ path: { id: String(id) }, body: tag });
|
|
2253
|
-
}
|
|
2254
|
-
async deleteTag(id) {
|
|
2255
|
-
return deleteApiV1TagById({ path: { id } });
|
|
2256
|
-
}
|
|
2257
|
-
async getTagDetails() {
|
|
2258
|
-
return getApiV1TagDetail();
|
|
2259
|
-
}
|
|
2260
|
-
async getTagDetailById(id) {
|
|
2261
|
-
return getApiV1TagDetailById({ path: { id } });
|
|
2262
|
-
}
|
|
2263
2406
|
async addBook(book) {
|
|
2264
2407
|
return postApiV1Book({ body: book });
|
|
2265
2408
|
}
|
|
@@ -2355,54 +2498,6 @@ class ReadarrClient {
|
|
|
2355
2498
|
async getCustomFormatSchema() {
|
|
2356
2499
|
return getApiV1CustomformatSchema();
|
|
2357
2500
|
}
|
|
2358
|
-
async getDownloadClients() {
|
|
2359
|
-
return getApiV1Downloadclient();
|
|
2360
|
-
}
|
|
2361
|
-
async getDownloadClient(id) {
|
|
2362
|
-
return getApiV1DownloadclientById({ path: { id } });
|
|
2363
|
-
}
|
|
2364
|
-
async addDownloadClient(client2) {
|
|
2365
|
-
return postApiV1Downloadclient({ body: client2 });
|
|
2366
|
-
}
|
|
2367
|
-
async updateDownloadClient(id, client2) {
|
|
2368
|
-
return putApiV1DownloadclientById({ path: { id: String(id) }, body: client2 });
|
|
2369
|
-
}
|
|
2370
|
-
async deleteDownloadClient(id) {
|
|
2371
|
-
return deleteApiV1DownloadclientById({ path: { id } });
|
|
2372
|
-
}
|
|
2373
|
-
async getDownloadClientSchema() {
|
|
2374
|
-
return getApiV1DownloadclientSchema();
|
|
2375
|
-
}
|
|
2376
|
-
async testDownloadClient(client2) {
|
|
2377
|
-
return postApiV1DownloadclientTest({ body: client2 });
|
|
2378
|
-
}
|
|
2379
|
-
async testAllDownloadClients() {
|
|
2380
|
-
return postApiV1DownloadclientTestall();
|
|
2381
|
-
}
|
|
2382
|
-
async getIndexers() {
|
|
2383
|
-
return getApiV1Indexer();
|
|
2384
|
-
}
|
|
2385
|
-
async getIndexer(id) {
|
|
2386
|
-
return getApiV1IndexerById({ path: { id } });
|
|
2387
|
-
}
|
|
2388
|
-
async addIndexer(indexer) {
|
|
2389
|
-
return postApiV1Indexer({ body: indexer });
|
|
2390
|
-
}
|
|
2391
|
-
async updateIndexer(id, indexer) {
|
|
2392
|
-
return putApiV1IndexerById({ path: { id: String(id) }, body: indexer });
|
|
2393
|
-
}
|
|
2394
|
-
async deleteIndexer(id) {
|
|
2395
|
-
return deleteApiV1IndexerById({ path: { id } });
|
|
2396
|
-
}
|
|
2397
|
-
async getIndexerSchema() {
|
|
2398
|
-
return getApiV1IndexerSchema();
|
|
2399
|
-
}
|
|
2400
|
-
async testIndexer(indexer) {
|
|
2401
|
-
return postApiV1IndexerTest({ body: indexer });
|
|
2402
|
-
}
|
|
2403
|
-
async testAllIndexers() {
|
|
2404
|
-
return postApiV1IndexerTestall();
|
|
2405
|
-
}
|
|
2406
2501
|
async getImportLists() {
|
|
2407
2502
|
return getApiV1Importlist();
|
|
2408
2503
|
}
|
|
@@ -2427,30 +2522,6 @@ class ReadarrClient {
|
|
|
2427
2522
|
async testAllImportLists() {
|
|
2428
2523
|
return postApiV1ImportlistTestall();
|
|
2429
2524
|
}
|
|
2430
|
-
async getNotifications() {
|
|
2431
|
-
return getApiV1Notification();
|
|
2432
|
-
}
|
|
2433
|
-
async getNotification(id) {
|
|
2434
|
-
return getApiV1NotificationById({ path: { id } });
|
|
2435
|
-
}
|
|
2436
|
-
async addNotification(notification) {
|
|
2437
|
-
return postApiV1Notification({ body: notification });
|
|
2438
|
-
}
|
|
2439
|
-
async updateNotification(id, notification) {
|
|
2440
|
-
return putApiV1NotificationById({ path: { id: String(id) }, body: notification });
|
|
2441
|
-
}
|
|
2442
|
-
async deleteNotification(id) {
|
|
2443
|
-
return deleteApiV1NotificationById({ path: { id } });
|
|
2444
|
-
}
|
|
2445
|
-
async getNotificationSchema() {
|
|
2446
|
-
return getApiV1NotificationSchema();
|
|
2447
|
-
}
|
|
2448
|
-
async testNotification(notification) {
|
|
2449
|
-
return postApiV1NotificationTest({ body: notification });
|
|
2450
|
-
}
|
|
2451
|
-
async testAllNotifications() {
|
|
2452
|
-
return postApiV1NotificationTestall();
|
|
2453
|
-
}
|
|
2454
2525
|
async getHistory(page, pageSize, sortKey, sortDirection, authorId, downloadId) {
|
|
2455
2526
|
const query = {};
|
|
2456
2527
|
if (page !== undefined)
|
|
@@ -2583,15 +2654,6 @@ class ReadarrClient {
|
|
|
2583
2654
|
query.monitored = monitored;
|
|
2584
2655
|
return getApiV1WantedCutoff(Object.keys(query).length > 0 ? { query } : {});
|
|
2585
2656
|
}
|
|
2586
|
-
updateConfig(newConfig) {
|
|
2587
|
-
const updatedConfig = { ...this.clientConfig.config, ...newConfig };
|
|
2588
|
-
this.clientConfig = createServarrClient(updatedConfig);
|
|
2589
|
-
client.setConfig({
|
|
2590
|
-
baseUrl: this.clientConfig.getBaseUrl(),
|
|
2591
|
-
headers: this.clientConfig.getHeaders()
|
|
2592
|
-
});
|
|
2593
|
-
return this.clientConfig.config;
|
|
2594
|
-
}
|
|
2595
2657
|
}
|
|
2596
2658
|
export {
|
|
2597
2659
|
ReadarrClient
|
package/dist/clients/seerr.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seerr.d.ts","sourceRoot":"","sources":["../../src/clients/seerr.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEzD,OAAO,KAAK,QAAQ,MAAM,0BAA0B,CAAC;AACrD,OAAO,KAAK,EACV,cAAc,EAGd,YAAY,EACb,MAAM,8BAA8B,CAAC;AAEtC,KAAK,aAAa,GAAG,WAAW,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;AAEpE;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,YAAY,CAAyC;gBAEjD,MAAM,EAAE,mBAAmB;
|
|
1
|
+
{"version":3,"file":"seerr.d.ts","sourceRoot":"","sources":["../../src/clients/seerr.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEzD,OAAO,KAAK,QAAQ,MAAM,0BAA0B,CAAC;AACrD,OAAO,KAAK,EACV,cAAc,EAGd,YAAY,EACb,MAAM,8BAA8B,CAAC;AAEtC,KAAK,aAAa,GAAG,WAAW,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;AAEpE;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,YAAY,CAAyC;gBAEjD,MAAM,EAAE,mBAAmB;IAejC,eAAe;;;;;;;;;;;;;;;;IAMf,WAAW,CAAC,OAAO,CAAC,EAAE;QAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,aAAa,CAAC;QACvB,IAAI,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;QAC5B,aAAa,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;KAChC;;;;;;;;;;;;;IAWK,cAAc,CAAC,SAAS,EAAE,MAAM;;;;;;;;;;IAIhC,eAAe;;;;;;;;;;;;;;;;;;;;IAIf,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAOxD,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IASxD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;IAUtD,QAAQ,CAAC,OAAO,CAAC,EAAE;QACvB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,aAAa,CAAC;KAC3D;;;;;;;;;;;;;IASK,WAAW,CAAC,MAAM,EAAE,MAAM;;;;;;;;;;IAM1B,QAAQ,CAAC,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;;;;IASzD,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,mBAAmB,CAAC;;;;;;CAcrD;AAGD,cAAc,kBAAkB,CAAC"}
|
package/dist/clients/seerr.js
CHANGED
|
@@ -27,6 +27,7 @@ class ConnectionError extends TsarrError {
|
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
// src/core/client.ts
|
|
30
|
+
var DEFAULT_TIMEOUT_MS = 30000;
|
|
30
31
|
function createServarrClient(config) {
|
|
31
32
|
if (!config.apiKey) {
|
|
32
33
|
throw new ApiKeyError;
|
|
@@ -38,6 +39,7 @@ function createServarrClient(config) {
|
|
|
38
39
|
...config,
|
|
39
40
|
baseUrl: config.baseUrl.replace(/\/$/, "")
|
|
40
41
|
};
|
|
42
|
+
const timeoutMs = validatedConfig.timeout ?? DEFAULT_TIMEOUT_MS;
|
|
41
43
|
return {
|
|
42
44
|
config: validatedConfig,
|
|
43
45
|
getHeaders: () => ({
|
|
@@ -45,7 +47,8 @@ function createServarrClient(config) {
|
|
|
45
47
|
"Content-Type": "application/json",
|
|
46
48
|
...validatedConfig.headers
|
|
47
49
|
}),
|
|
48
|
-
getBaseUrl: () => validatedConfig.baseUrl
|
|
50
|
+
getBaseUrl: () => validatedConfig.baseUrl,
|
|
51
|
+
getTimeout: () => timeoutMs
|
|
49
52
|
};
|
|
50
53
|
}
|
|
51
54
|
// src/generated/seerr/core/serverSentEvents.gen.ts
|
|
@@ -924,7 +927,8 @@ class SeerrClient {
|
|
|
924
927
|
headers: {
|
|
925
928
|
"X-Api-Key": this.clientConfig.config.apiKey,
|
|
926
929
|
...this.clientConfig.config.headers ?? {}
|
|
927
|
-
}
|
|
930
|
+
},
|
|
931
|
+
signal: AbortSignal.timeout(this.clientConfig.getTimeout())
|
|
928
932
|
});
|
|
929
933
|
}
|
|
930
934
|
async getSystemStatus() {
|
|
@@ -999,7 +1003,8 @@ class SeerrClient {
|
|
|
999
1003
|
headers: {
|
|
1000
1004
|
"X-Api-Key": this.clientConfig.config.apiKey,
|
|
1001
1005
|
...this.clientConfig.config.headers ?? {}
|
|
1002
|
-
}
|
|
1006
|
+
},
|
|
1007
|
+
signal: AbortSignal.timeout(this.clientConfig.getTimeout())
|
|
1003
1008
|
});
|
|
1004
1009
|
return this.clientConfig.config;
|
|
1005
1010
|
}
|