tsarr 1.2.0 → 1.3.0
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 +1 -1
- package/dist/clients/lidarr.d.ts +10 -10
- package/dist/clients/lidarr.d.ts.map +1 -1
- package/dist/clients/lidarr.js +1183 -246
- package/dist/clients/prowlarr.d.ts +5 -5
- package/dist/clients/prowlarr.d.ts.map +1 -1
- package/dist/clients/prowlarr.js +825 -177
- package/dist/clients/radarr.d.ts +23 -23
- package/dist/clients/radarr.d.ts.map +1 -1
- package/dist/clients/radarr.js +1817 -347
- package/dist/clients/readarr.d.ts +5 -5
- package/dist/clients/readarr.d.ts.map +1 -1
- package/dist/clients/readarr.js +877 -192
- package/dist/clients/sonarr.d.ts +9 -9
- package/dist/clients/sonarr.d.ts.map +1 -1
- package/dist/clients/sonarr.js +847 -184
- package/dist/core/response.d.ts +1 -1
- package/dist/core/response.d.ts.map +1 -1
- package/dist/generated/lidarr/client/client.gen.d.ts +3 -0
- package/dist/generated/lidarr/client/client.gen.d.ts.map +1 -0
- package/dist/generated/lidarr/client/index.d.ts +8 -0
- package/dist/generated/lidarr/client/index.d.ts.map +1 -0
- package/dist/generated/lidarr/client/types.gen.d.ts +125 -0
- package/dist/generated/lidarr/client/types.gen.d.ts.map +1 -0
- package/dist/generated/lidarr/client/utils.gen.d.ts +39 -0
- package/dist/generated/lidarr/client/utils.gen.d.ts.map +1 -0
- package/dist/generated/lidarr/client.gen.d.ts +13 -0
- package/dist/generated/lidarr/client.gen.d.ts.map +1 -0
- package/dist/generated/lidarr/core/auth.gen.d.ts +19 -0
- package/dist/generated/lidarr/core/auth.gen.d.ts.map +1 -0
- package/dist/generated/lidarr/core/bodySerializer.gen.d.ts +18 -0
- package/dist/generated/lidarr/core/bodySerializer.gen.d.ts.map +1 -0
- package/dist/generated/lidarr/core/params.gen.d.ts +34 -0
- package/dist/generated/lidarr/core/params.gen.d.ts.map +1 -0
- package/dist/generated/lidarr/core/pathSerializer.gen.d.ts +34 -0
- package/dist/generated/lidarr/core/pathSerializer.gen.d.ts.map +1 -0
- package/dist/generated/lidarr/core/serverSentEvents.gen.d.ts +72 -0
- package/dist/generated/lidarr/core/serverSentEvents.gen.d.ts.map +1 -0
- package/dist/generated/lidarr/core/types.gen.d.ts +79 -0
- package/dist/generated/lidarr/core/types.gen.d.ts.map +1 -0
- package/dist/generated/lidarr/core/utils.gen.d.ts +15 -0
- package/dist/generated/lidarr/core/utils.gen.d.ts.map +1 -0
- package/dist/generated/lidarr/index.d.ts +1 -2
- package/dist/generated/lidarr/index.d.ts.map +1 -1
- package/dist/generated/lidarr/sdk.gen.d.ts +252 -0
- package/dist/generated/lidarr/sdk.gen.d.ts.map +1 -0
- package/dist/generated/lidarr/types.gen.d.ts +3117 -1056
- package/dist/generated/lidarr/types.gen.d.ts.map +1 -1
- package/dist/generated/prowlarr/client/client.gen.d.ts +3 -0
- package/dist/generated/prowlarr/client/client.gen.d.ts.map +1 -0
- package/dist/generated/prowlarr/client/index.d.ts +8 -0
- package/dist/generated/prowlarr/client/index.d.ts.map +1 -0
- package/dist/generated/prowlarr/client/types.gen.d.ts +125 -0
- package/dist/generated/prowlarr/client/types.gen.d.ts.map +1 -0
- package/dist/generated/prowlarr/client/utils.gen.d.ts +39 -0
- package/dist/generated/prowlarr/client/utils.gen.d.ts.map +1 -0
- package/dist/generated/prowlarr/client.gen.d.ts +13 -0
- package/dist/generated/prowlarr/client.gen.d.ts.map +1 -0
- package/dist/generated/prowlarr/core/auth.gen.d.ts +19 -0
- package/dist/generated/prowlarr/core/auth.gen.d.ts.map +1 -0
- package/dist/generated/prowlarr/core/bodySerializer.gen.d.ts +18 -0
- package/dist/generated/prowlarr/core/bodySerializer.gen.d.ts.map +1 -0
- package/dist/generated/prowlarr/core/params.gen.d.ts +34 -0
- package/dist/generated/prowlarr/core/params.gen.d.ts.map +1 -0
- package/dist/generated/prowlarr/core/pathSerializer.gen.d.ts +34 -0
- package/dist/generated/prowlarr/core/pathSerializer.gen.d.ts.map +1 -0
- package/dist/generated/prowlarr/core/serverSentEvents.gen.d.ts +72 -0
- package/dist/generated/prowlarr/core/serverSentEvents.gen.d.ts.map +1 -0
- package/dist/generated/prowlarr/core/types.gen.d.ts +79 -0
- package/dist/generated/prowlarr/core/types.gen.d.ts.map +1 -0
- package/dist/generated/prowlarr/core/utils.gen.d.ts +15 -0
- package/dist/generated/prowlarr/core/utils.gen.d.ts.map +1 -0
- package/dist/generated/prowlarr/index.d.ts +1 -2
- package/dist/generated/prowlarr/index.d.ts.map +1 -1
- package/dist/generated/prowlarr/sdk.gen.d.ts +145 -0
- package/dist/generated/prowlarr/sdk.gen.d.ts.map +1 -0
- package/dist/generated/prowlarr/types.gen.d.ts +1747 -592
- package/dist/generated/prowlarr/types.gen.d.ts.map +1 -1
- package/dist/generated/radarr/client/client.gen.d.ts +3 -0
- package/dist/generated/radarr/client/client.gen.d.ts.map +1 -0
- package/dist/generated/radarr/client/index.d.ts +8 -0
- package/dist/generated/radarr/client/index.d.ts.map +1 -0
- package/dist/generated/radarr/client/types.gen.d.ts +125 -0
- package/dist/generated/radarr/client/types.gen.d.ts.map +1 -0
- package/dist/generated/radarr/client/utils.gen.d.ts +39 -0
- package/dist/generated/radarr/client/utils.gen.d.ts.map +1 -0
- package/dist/generated/radarr/client.gen.d.ts +13 -0
- package/dist/generated/radarr/client.gen.d.ts.map +1 -0
- package/dist/generated/radarr/core/auth.gen.d.ts +19 -0
- package/dist/generated/radarr/core/auth.gen.d.ts.map +1 -0
- package/dist/generated/radarr/core/bodySerializer.gen.d.ts +18 -0
- package/dist/generated/radarr/core/bodySerializer.gen.d.ts.map +1 -0
- package/dist/generated/radarr/core/params.gen.d.ts +34 -0
- package/dist/generated/radarr/core/params.gen.d.ts.map +1 -0
- package/dist/generated/radarr/core/pathSerializer.gen.d.ts +34 -0
- package/dist/generated/radarr/core/pathSerializer.gen.d.ts.map +1 -0
- package/dist/generated/radarr/core/serverSentEvents.gen.d.ts +72 -0
- package/dist/generated/radarr/core/serverSentEvents.gen.d.ts.map +1 -0
- package/dist/generated/radarr/core/types.gen.d.ts +79 -0
- package/dist/generated/radarr/core/types.gen.d.ts.map +1 -0
- package/dist/generated/radarr/core/utils.gen.d.ts +15 -0
- package/dist/generated/radarr/core/utils.gen.d.ts.map +1 -0
- package/dist/generated/radarr/index.d.ts +1 -2
- package/dist/generated/radarr/index.d.ts.map +1 -1
- package/dist/generated/radarr/sdk.gen.d.ts +260 -0
- package/dist/generated/radarr/sdk.gen.d.ts.map +1 -0
- package/dist/generated/radarr/types.gen.d.ts +3066 -1064
- package/dist/generated/radarr/types.gen.d.ts.map +1 -1
- package/dist/generated/readarr/client/client.gen.d.ts +3 -0
- package/dist/generated/readarr/client/client.gen.d.ts.map +1 -0
- package/dist/generated/readarr/client/index.d.ts +8 -0
- package/dist/generated/readarr/client/index.d.ts.map +1 -0
- package/dist/generated/readarr/client/types.gen.d.ts +125 -0
- package/dist/generated/readarr/client/types.gen.d.ts.map +1 -0
- package/dist/generated/readarr/client/utils.gen.d.ts +39 -0
- package/dist/generated/readarr/client/utils.gen.d.ts.map +1 -0
- package/dist/generated/readarr/client.gen.d.ts +13 -0
- package/dist/generated/readarr/client.gen.d.ts.map +1 -0
- package/dist/generated/readarr/core/auth.gen.d.ts +19 -0
- package/dist/generated/readarr/core/auth.gen.d.ts.map +1 -0
- package/dist/generated/readarr/core/bodySerializer.gen.d.ts +18 -0
- package/dist/generated/readarr/core/bodySerializer.gen.d.ts.map +1 -0
- package/dist/generated/readarr/core/params.gen.d.ts +34 -0
- package/dist/generated/readarr/core/params.gen.d.ts.map +1 -0
- package/dist/generated/readarr/core/pathSerializer.gen.d.ts +34 -0
- package/dist/generated/readarr/core/pathSerializer.gen.d.ts.map +1 -0
- package/dist/generated/readarr/core/serverSentEvents.gen.d.ts +72 -0
- package/dist/generated/readarr/core/serverSentEvents.gen.d.ts.map +1 -0
- package/dist/generated/readarr/core/types.gen.d.ts +79 -0
- package/dist/generated/readarr/core/types.gen.d.ts.map +1 -0
- package/dist/generated/readarr/core/utils.gen.d.ts +15 -0
- package/dist/generated/readarr/core/utils.gen.d.ts.map +1 -0
- package/dist/generated/readarr/index.d.ts +1 -2
- package/dist/generated/readarr/index.d.ts.map +1 -1
- package/dist/generated/readarr/sdk.gen.d.ts +250 -0
- package/dist/generated/readarr/sdk.gen.d.ts.map +1 -0
- package/dist/generated/readarr/types.gen.d.ts +3219 -1142
- package/dist/generated/readarr/types.gen.d.ts.map +1 -1
- package/dist/generated/sonarr/client/client.gen.d.ts +3 -0
- package/dist/generated/sonarr/client/client.gen.d.ts.map +1 -0
- package/dist/generated/sonarr/client/index.d.ts +8 -0
- package/dist/generated/sonarr/client/index.d.ts.map +1 -0
- package/dist/generated/sonarr/client/types.gen.d.ts +125 -0
- package/dist/generated/sonarr/client/types.gen.d.ts.map +1 -0
- package/dist/generated/sonarr/client/utils.gen.d.ts +39 -0
- package/dist/generated/sonarr/client/utils.gen.d.ts.map +1 -0
- package/dist/generated/sonarr/client.gen.d.ts +13 -0
- package/dist/generated/sonarr/client.gen.d.ts.map +1 -0
- package/dist/generated/sonarr/core/auth.gen.d.ts +19 -0
- package/dist/generated/sonarr/core/auth.gen.d.ts.map +1 -0
- package/dist/generated/sonarr/core/bodySerializer.gen.d.ts +18 -0
- package/dist/generated/sonarr/core/bodySerializer.gen.d.ts.map +1 -0
- package/dist/generated/sonarr/core/params.gen.d.ts +34 -0
- package/dist/generated/sonarr/core/params.gen.d.ts.map +1 -0
- package/dist/generated/sonarr/core/pathSerializer.gen.d.ts +34 -0
- package/dist/generated/sonarr/core/pathSerializer.gen.d.ts.map +1 -0
- package/dist/generated/sonarr/core/serverSentEvents.gen.d.ts +72 -0
- package/dist/generated/sonarr/core/serverSentEvents.gen.d.ts.map +1 -0
- package/dist/generated/sonarr/core/types.gen.d.ts +79 -0
- package/dist/generated/sonarr/core/types.gen.d.ts.map +1 -0
- package/dist/generated/sonarr/core/utils.gen.d.ts +15 -0
- package/dist/generated/sonarr/core/utils.gen.d.ts.map +1 -0
- package/dist/generated/sonarr/index.d.ts +1 -2
- package/dist/generated/sonarr/index.d.ts.map +1 -1
- package/dist/generated/sonarr/sdk.gen.d.ts +37 -0
- package/dist/generated/sonarr/sdk.gen.d.ts.map +1 -0
- package/dist/generated/sonarr/types.gen.d.ts +349 -107
- package/dist/generated/sonarr/types.gen.d.ts.map +1 -1
- package/dist/index.d.ts +8 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +21 -1
- package/dist/tsarr-1.3.0.tgz +0 -0
- package/package.json +40 -43
- package/dist/generated/lidarr/schemas.gen.d.ts +0 -4584
- package/dist/generated/lidarr/schemas.gen.d.ts.map +0 -1
- package/dist/generated/lidarr/services.gen.d.ts +0 -242
- package/dist/generated/lidarr/services.gen.d.ts.map +0 -1
- package/dist/generated/prowlarr/schemas.gen.d.ts +0 -2151
- package/dist/generated/prowlarr/schemas.gen.d.ts.map +0 -1
- package/dist/generated/prowlarr/services.gen.d.ts +0 -135
- package/dist/generated/prowlarr/services.gen.d.ts.map +0 -1
- package/dist/generated/radarr/schemas.gen.d.ts +0 -4402
- package/dist/generated/radarr/schemas.gen.d.ts.map +0 -1
- package/dist/generated/radarr/services.gen.d.ts +0 -250
- package/dist/generated/radarr/services.gen.d.ts.map +0 -1
- package/dist/generated/readarr/schemas.gen.d.ts +0 -5250
- package/dist/generated/readarr/schemas.gen.d.ts.map +0 -1
- package/dist/generated/readarr/services.gen.d.ts +0 -240
- package/dist/generated/readarr/services.gen.d.ts.map +0 -1
- package/dist/generated/sonarr/schemas.gen.d.ts +0 -612
- package/dist/generated/sonarr/schemas.gen.d.ts.map +0 -1
- package/dist/generated/sonarr/services.gen.d.ts +0 -27
- package/dist/generated/sonarr/services.gen.d.ts.map +0 -1
- package/dist/tsarr-1.2.0.tgz +0 -0
package/dist/clients/prowlarr.js
CHANGED
|
@@ -49,17 +49,162 @@ function createServarrClient(config) {
|
|
|
49
49
|
};
|
|
50
50
|
}
|
|
51
51
|
|
|
52
|
-
//
|
|
53
|
-
var
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
52
|
+
// src/generated/prowlarr/core/bodySerializer.gen.ts
|
|
53
|
+
var jsonBodySerializer = {
|
|
54
|
+
bodySerializer: (body) => JSON.stringify(body, (_key, value) => typeof value === "bigint" ? value.toString() : value)
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
// src/generated/prowlarr/core/serverSentEvents.gen.ts
|
|
58
|
+
var createSseClient = ({
|
|
59
|
+
onRequest,
|
|
60
|
+
onSseError,
|
|
61
|
+
onSseEvent,
|
|
62
|
+
responseTransformer,
|
|
63
|
+
responseValidator,
|
|
64
|
+
sseDefaultRetryDelay,
|
|
65
|
+
sseMaxRetryAttempts,
|
|
66
|
+
sseMaxRetryDelay,
|
|
67
|
+
sseSleepFn,
|
|
68
|
+
url,
|
|
69
|
+
...options
|
|
70
|
+
}) => {
|
|
71
|
+
let lastEventId;
|
|
72
|
+
const sleep = sseSleepFn ?? ((ms) => new Promise((resolve) => setTimeout(resolve, ms)));
|
|
73
|
+
const createStream = async function* () {
|
|
74
|
+
let retryDelay = sseDefaultRetryDelay ?? 3000;
|
|
75
|
+
let attempt = 0;
|
|
76
|
+
const signal = options.signal ?? new AbortController().signal;
|
|
77
|
+
while (true) {
|
|
78
|
+
if (signal.aborted)
|
|
79
|
+
break;
|
|
80
|
+
attempt++;
|
|
81
|
+
const headers = options.headers instanceof Headers ? options.headers : new Headers(options.headers);
|
|
82
|
+
if (lastEventId !== undefined) {
|
|
83
|
+
headers.set("Last-Event-ID", lastEventId);
|
|
84
|
+
}
|
|
85
|
+
try {
|
|
86
|
+
const requestInit = {
|
|
87
|
+
redirect: "follow",
|
|
88
|
+
...options,
|
|
89
|
+
body: options.serializedBody,
|
|
90
|
+
headers,
|
|
91
|
+
signal
|
|
92
|
+
};
|
|
93
|
+
let request = new Request(url, requestInit);
|
|
94
|
+
if (onRequest) {
|
|
95
|
+
request = await onRequest(url, requestInit);
|
|
96
|
+
}
|
|
97
|
+
const _fetch = options.fetch ?? globalThis.fetch;
|
|
98
|
+
const response = await _fetch(request);
|
|
99
|
+
if (!response.ok)
|
|
100
|
+
throw new Error(`SSE failed: ${response.status} ${response.statusText}`);
|
|
101
|
+
if (!response.body)
|
|
102
|
+
throw new Error("No body in SSE response");
|
|
103
|
+
const reader = response.body.pipeThrough(new TextDecoderStream).getReader();
|
|
104
|
+
let buffer = "";
|
|
105
|
+
const abortHandler = () => {
|
|
106
|
+
try {
|
|
107
|
+
reader.cancel();
|
|
108
|
+
} catch {}
|
|
109
|
+
};
|
|
110
|
+
signal.addEventListener("abort", abortHandler);
|
|
111
|
+
try {
|
|
112
|
+
while (true) {
|
|
113
|
+
const { done, value } = await reader.read();
|
|
114
|
+
if (done)
|
|
115
|
+
break;
|
|
116
|
+
buffer += value;
|
|
117
|
+
const chunks = buffer.split(`
|
|
118
|
+
|
|
119
|
+
`);
|
|
120
|
+
buffer = chunks.pop() ?? "";
|
|
121
|
+
for (const chunk of chunks) {
|
|
122
|
+
const lines = chunk.split(`
|
|
123
|
+
`);
|
|
124
|
+
const dataLines = [];
|
|
125
|
+
let eventName;
|
|
126
|
+
for (const line of lines) {
|
|
127
|
+
if (line.startsWith("data:")) {
|
|
128
|
+
dataLines.push(line.replace(/^data:\s*/, ""));
|
|
129
|
+
} else if (line.startsWith("event:")) {
|
|
130
|
+
eventName = line.replace(/^event:\s*/, "");
|
|
131
|
+
} else if (line.startsWith("id:")) {
|
|
132
|
+
lastEventId = line.replace(/^id:\s*/, "");
|
|
133
|
+
} else if (line.startsWith("retry:")) {
|
|
134
|
+
const parsed = Number.parseInt(line.replace(/^retry:\s*/, ""), 10);
|
|
135
|
+
if (!Number.isNaN(parsed)) {
|
|
136
|
+
retryDelay = parsed;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
let data;
|
|
141
|
+
let parsedJson = false;
|
|
142
|
+
if (dataLines.length) {
|
|
143
|
+
const rawData = dataLines.join(`
|
|
144
|
+
`);
|
|
145
|
+
try {
|
|
146
|
+
data = JSON.parse(rawData);
|
|
147
|
+
parsedJson = true;
|
|
148
|
+
} catch {
|
|
149
|
+
data = rawData;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
if (parsedJson) {
|
|
153
|
+
if (responseValidator) {
|
|
154
|
+
await responseValidator(data);
|
|
155
|
+
}
|
|
156
|
+
if (responseTransformer) {
|
|
157
|
+
data = await responseTransformer(data);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
onSseEvent?.({
|
|
161
|
+
data,
|
|
162
|
+
event: eventName,
|
|
163
|
+
id: lastEventId,
|
|
164
|
+
retry: retryDelay
|
|
165
|
+
});
|
|
166
|
+
if (dataLines.length) {
|
|
167
|
+
yield data;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
} finally {
|
|
172
|
+
signal.removeEventListener("abort", abortHandler);
|
|
173
|
+
reader.releaseLock();
|
|
174
|
+
}
|
|
175
|
+
break;
|
|
176
|
+
} catch (error) {
|
|
177
|
+
onSseError?.(error);
|
|
178
|
+
if (sseMaxRetryAttempts !== undefined && attempt >= sseMaxRetryAttempts) {
|
|
179
|
+
break;
|
|
180
|
+
}
|
|
181
|
+
const backoff = Math.min(retryDelay * 2 ** (attempt - 1), sseMaxRetryDelay ?? 30000);
|
|
182
|
+
await sleep(backoff);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
};
|
|
186
|
+
const stream = createStream();
|
|
187
|
+
return { stream };
|
|
188
|
+
};
|
|
189
|
+
|
|
190
|
+
// src/generated/prowlarr/core/auth.gen.ts
|
|
191
|
+
var getAuthToken = async (auth, callback) => {
|
|
192
|
+
const token = typeof callback === "function" ? await callback(auth) : callback;
|
|
193
|
+
if (!token) {
|
|
194
|
+
return;
|
|
195
|
+
}
|
|
196
|
+
if (auth.scheme === "bearer") {
|
|
197
|
+
return `Bearer ${token}`;
|
|
198
|
+
}
|
|
199
|
+
if (auth.scheme === "basic") {
|
|
200
|
+
return `Basic ${btoa(token)}`;
|
|
201
|
+
}
|
|
202
|
+
return token;
|
|
60
203
|
};
|
|
61
|
-
|
|
62
|
-
|
|
204
|
+
|
|
205
|
+
// src/generated/prowlarr/core/pathSerializer.gen.ts
|
|
206
|
+
var separatorArrayExplode = (style) => {
|
|
207
|
+
switch (style) {
|
|
63
208
|
case "label":
|
|
64
209
|
return ".";
|
|
65
210
|
case "matrix":
|
|
@@ -70,8 +215,8 @@ var U = (i) => {
|
|
|
70
215
|
return "&";
|
|
71
216
|
}
|
|
72
217
|
};
|
|
73
|
-
var
|
|
74
|
-
switch (
|
|
218
|
+
var separatorArrayNoExplode = (style) => {
|
|
219
|
+
switch (style) {
|
|
75
220
|
case "form":
|
|
76
221
|
return ",";
|
|
77
222
|
case "pipeDelimited":
|
|
@@ -82,8 +227,8 @@ var $ = (i) => {
|
|
|
82
227
|
return ",";
|
|
83
228
|
}
|
|
84
229
|
};
|
|
85
|
-
var
|
|
86
|
-
switch (
|
|
230
|
+
var separatorObjectExplode = (style) => {
|
|
231
|
+
switch (style) {
|
|
87
232
|
case "label":
|
|
88
233
|
return ".";
|
|
89
234
|
case "matrix":
|
|
@@ -94,132 +239,317 @@ var D = (i) => {
|
|
|
94
239
|
return "&";
|
|
95
240
|
}
|
|
96
241
|
};
|
|
97
|
-
var
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
242
|
+
var serializeArrayParam = ({
|
|
243
|
+
allowReserved,
|
|
244
|
+
explode,
|
|
245
|
+
name,
|
|
246
|
+
style,
|
|
247
|
+
value
|
|
248
|
+
}) => {
|
|
249
|
+
if (!explode) {
|
|
250
|
+
const joinedValues2 = (allowReserved ? value : value.map((v) => encodeURIComponent(v))).join(separatorArrayNoExplode(style));
|
|
251
|
+
switch (style) {
|
|
101
252
|
case "label":
|
|
102
|
-
return `.${
|
|
253
|
+
return `.${joinedValues2}`;
|
|
103
254
|
case "matrix":
|
|
104
|
-
return `;${
|
|
255
|
+
return `;${name}=${joinedValues2}`;
|
|
105
256
|
case "simple":
|
|
106
|
-
return
|
|
257
|
+
return joinedValues2;
|
|
107
258
|
default:
|
|
108
|
-
return `${
|
|
259
|
+
return `${name}=${joinedValues2}`;
|
|
109
260
|
}
|
|
110
261
|
}
|
|
111
|
-
|
|
112
|
-
|
|
262
|
+
const separator = separatorArrayExplode(style);
|
|
263
|
+
const joinedValues = value.map((v) => {
|
|
264
|
+
if (style === "label" || style === "simple") {
|
|
265
|
+
return allowReserved ? v : encodeURIComponent(v);
|
|
266
|
+
}
|
|
267
|
+
return serializePrimitiveParam({
|
|
268
|
+
allowReserved,
|
|
269
|
+
name,
|
|
270
|
+
value: v
|
|
271
|
+
});
|
|
272
|
+
}).join(separator);
|
|
273
|
+
return style === "label" || style === "matrix" ? separator + joinedValues : joinedValues;
|
|
274
|
+
};
|
|
275
|
+
var serializePrimitiveParam = ({
|
|
276
|
+
allowReserved,
|
|
277
|
+
name,
|
|
278
|
+
value
|
|
279
|
+
}) => {
|
|
280
|
+
if (value === undefined || value === null) {
|
|
281
|
+
return "";
|
|
282
|
+
}
|
|
283
|
+
if (typeof value === "object") {
|
|
284
|
+
throw new Error("Deeply-nested arrays/objects aren’t supported. Provide your own `querySerializer()` to handle these.");
|
|
285
|
+
}
|
|
286
|
+
return `${name}=${allowReserved ? value : encodeURIComponent(value)}`;
|
|
113
287
|
};
|
|
114
|
-
var
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
288
|
+
var serializeObjectParam = ({
|
|
289
|
+
allowReserved,
|
|
290
|
+
explode,
|
|
291
|
+
name,
|
|
292
|
+
style,
|
|
293
|
+
value,
|
|
294
|
+
valueOnly
|
|
295
|
+
}) => {
|
|
296
|
+
if (value instanceof Date) {
|
|
297
|
+
return valueOnly ? value.toISOString() : `${name}=${value.toISOString()}`;
|
|
298
|
+
}
|
|
299
|
+
if (style !== "deepObject" && !explode) {
|
|
300
|
+
let values = [];
|
|
301
|
+
Object.entries(value).forEach(([key, v]) => {
|
|
302
|
+
values = [
|
|
303
|
+
...values,
|
|
304
|
+
key,
|
|
305
|
+
allowReserved ? v : encodeURIComponent(v)
|
|
306
|
+
];
|
|
121
307
|
});
|
|
122
|
-
|
|
123
|
-
switch (
|
|
308
|
+
const joinedValues2 = values.join(",");
|
|
309
|
+
switch (style) {
|
|
124
310
|
case "form":
|
|
125
|
-
return `${
|
|
311
|
+
return `${name}=${joinedValues2}`;
|
|
126
312
|
case "label":
|
|
127
|
-
return `.${
|
|
313
|
+
return `.${joinedValues2}`;
|
|
128
314
|
case "matrix":
|
|
129
|
-
return `;${
|
|
315
|
+
return `;${name}=${joinedValues2}`;
|
|
130
316
|
default:
|
|
131
|
-
return
|
|
317
|
+
return joinedValues2;
|
|
132
318
|
}
|
|
133
319
|
}
|
|
134
|
-
|
|
135
|
-
|
|
320
|
+
const separator = separatorObjectExplode(style);
|
|
321
|
+
const joinedValues = Object.entries(value).map(([key, v]) => serializePrimitiveParam({
|
|
322
|
+
allowReserved,
|
|
323
|
+
name: style === "deepObject" ? `${name}[${key}]` : key,
|
|
324
|
+
value: v
|
|
325
|
+
})).join(separator);
|
|
326
|
+
return style === "label" || style === "matrix" ? separator + joinedValues : joinedValues;
|
|
136
327
|
};
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
328
|
+
|
|
329
|
+
// src/generated/prowlarr/core/utils.gen.ts
|
|
330
|
+
var PATH_PARAM_RE = /\{[^{}]+\}/g;
|
|
331
|
+
var defaultPathSerializer = ({ path, url: _url }) => {
|
|
332
|
+
let url = _url;
|
|
333
|
+
const matches = _url.match(PATH_PARAM_RE);
|
|
334
|
+
if (matches) {
|
|
335
|
+
for (const match of matches) {
|
|
336
|
+
let explode = false;
|
|
337
|
+
let name = match.substring(1, match.length - 1);
|
|
338
|
+
let style = "simple";
|
|
339
|
+
if (name.endsWith("*")) {
|
|
340
|
+
explode = true;
|
|
341
|
+
name = name.substring(0, name.length - 1);
|
|
342
|
+
}
|
|
343
|
+
if (name.startsWith(".")) {
|
|
344
|
+
name = name.substring(1);
|
|
345
|
+
style = "label";
|
|
346
|
+
} else if (name.startsWith(";")) {
|
|
347
|
+
name = name.substring(1);
|
|
348
|
+
style = "matrix";
|
|
349
|
+
}
|
|
350
|
+
const value = path[name];
|
|
351
|
+
if (value === undefined || value === null) {
|
|
145
352
|
continue;
|
|
146
|
-
|
|
147
|
-
|
|
353
|
+
}
|
|
354
|
+
if (Array.isArray(value)) {
|
|
355
|
+
url = url.replace(match, serializeArrayParam({ explode, name, style, value }));
|
|
148
356
|
continue;
|
|
149
357
|
}
|
|
150
|
-
if (typeof
|
|
151
|
-
|
|
358
|
+
if (typeof value === "object") {
|
|
359
|
+
url = url.replace(match, serializeObjectParam({
|
|
360
|
+
explode,
|
|
361
|
+
name,
|
|
362
|
+
style,
|
|
363
|
+
value,
|
|
364
|
+
valueOnly: true
|
|
365
|
+
}));
|
|
152
366
|
continue;
|
|
153
367
|
}
|
|
154
|
-
if (
|
|
155
|
-
|
|
368
|
+
if (style === "matrix") {
|
|
369
|
+
url = url.replace(match, `;${serializePrimitiveParam({
|
|
370
|
+
name,
|
|
371
|
+
value
|
|
372
|
+
})}`);
|
|
156
373
|
continue;
|
|
157
374
|
}
|
|
158
|
-
|
|
159
|
-
|
|
375
|
+
const replaceValue = encodeURIComponent(style === "label" ? `.${value}` : value);
|
|
376
|
+
url = url.replace(match, replaceValue);
|
|
160
377
|
}
|
|
161
|
-
|
|
378
|
+
}
|
|
379
|
+
return url;
|
|
380
|
+
};
|
|
381
|
+
var getUrl = ({
|
|
382
|
+
baseUrl,
|
|
383
|
+
path,
|
|
384
|
+
query,
|
|
385
|
+
querySerializer,
|
|
386
|
+
url: _url
|
|
387
|
+
}) => {
|
|
388
|
+
const pathUrl = _url.startsWith("/") ? _url : `/${_url}`;
|
|
389
|
+
let url = (baseUrl ?? "") + pathUrl;
|
|
390
|
+
if (path) {
|
|
391
|
+
url = defaultPathSerializer({ path, url });
|
|
392
|
+
}
|
|
393
|
+
let search = query ? querySerializer(query) : "";
|
|
394
|
+
if (search.startsWith("?")) {
|
|
395
|
+
search = search.substring(1);
|
|
396
|
+
}
|
|
397
|
+
if (search) {
|
|
398
|
+
url += `?${search}`;
|
|
399
|
+
}
|
|
400
|
+
return url;
|
|
162
401
|
};
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
402
|
+
|
|
403
|
+
// src/generated/prowlarr/client/utils.gen.ts
|
|
404
|
+
var createQuerySerializer = ({
|
|
405
|
+
allowReserved,
|
|
406
|
+
array,
|
|
407
|
+
object
|
|
408
|
+
} = {}) => {
|
|
409
|
+
const querySerializer = (queryParams) => {
|
|
410
|
+
const search = [];
|
|
411
|
+
if (queryParams && typeof queryParams === "object") {
|
|
412
|
+
for (const name in queryParams) {
|
|
413
|
+
const value = queryParams[name];
|
|
414
|
+
if (value === undefined || value === null) {
|
|
171
415
|
continue;
|
|
172
416
|
}
|
|
173
|
-
if (
|
|
174
|
-
|
|
175
|
-
|
|
417
|
+
if (Array.isArray(value)) {
|
|
418
|
+
const serializedArray = serializeArrayParam({
|
|
419
|
+
allowReserved,
|
|
420
|
+
explode: true,
|
|
421
|
+
name,
|
|
422
|
+
style: "form",
|
|
423
|
+
value,
|
|
424
|
+
...array
|
|
425
|
+
});
|
|
426
|
+
if (serializedArray)
|
|
427
|
+
search.push(serializedArray);
|
|
428
|
+
} else if (typeof value === "object") {
|
|
429
|
+
const serializedObject = serializeObjectParam({
|
|
430
|
+
allowReserved,
|
|
431
|
+
explode: true,
|
|
432
|
+
name,
|
|
433
|
+
style: "deepObject",
|
|
434
|
+
value,
|
|
435
|
+
...object
|
|
436
|
+
});
|
|
437
|
+
if (serializedObject)
|
|
438
|
+
search.push(serializedObject);
|
|
439
|
+
} else {
|
|
440
|
+
const serializedPrimitive = serializePrimitiveParam({
|
|
441
|
+
allowReserved,
|
|
442
|
+
name,
|
|
443
|
+
value
|
|
444
|
+
});
|
|
445
|
+
if (serializedPrimitive)
|
|
446
|
+
search.push(serializedPrimitive);
|
|
176
447
|
}
|
|
177
|
-
s = [...s, h({ allowReserved: i, name: t, value: r })];
|
|
178
448
|
}
|
|
179
449
|
}
|
|
180
|
-
|
|
450
|
+
return search.join("&");
|
|
451
|
+
};
|
|
452
|
+
return querySerializer;
|
|
181
453
|
};
|
|
182
|
-
var
|
|
183
|
-
if (!
|
|
454
|
+
var getParseAs = (contentType) => {
|
|
455
|
+
if (!contentType) {
|
|
456
|
+
return "stream";
|
|
457
|
+
}
|
|
458
|
+
const cleanContent = contentType.split(";")[0]?.trim();
|
|
459
|
+
if (!cleanContent) {
|
|
184
460
|
return;
|
|
185
|
-
|
|
186
|
-
if (
|
|
461
|
+
}
|
|
462
|
+
if (cleanContent.startsWith("application/json") || cleanContent.endsWith("+json")) {
|
|
187
463
|
return "json";
|
|
188
|
-
|
|
464
|
+
}
|
|
465
|
+
if (cleanContent === "multipart/form-data") {
|
|
189
466
|
return "formData";
|
|
190
|
-
|
|
467
|
+
}
|
|
468
|
+
if (["application/", "audio/", "image/", "video/"].some((type) => cleanContent.startsWith(type))) {
|
|
191
469
|
return "blob";
|
|
192
|
-
|
|
470
|
+
}
|
|
471
|
+
if (cleanContent.startsWith("text/")) {
|
|
193
472
|
return "text";
|
|
473
|
+
}
|
|
474
|
+
return;
|
|
475
|
+
};
|
|
476
|
+
var checkForExistence = (options, name) => {
|
|
477
|
+
if (!name) {
|
|
478
|
+
return false;
|
|
479
|
+
}
|
|
480
|
+
if (options.headers.has(name) || options.query?.[name] || options.headers.get("Cookie")?.includes(`${name}=`)) {
|
|
481
|
+
return true;
|
|
482
|
+
}
|
|
483
|
+
return false;
|
|
194
484
|
};
|
|
195
|
-
var
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
485
|
+
var setAuthParams = async ({
|
|
486
|
+
security,
|
|
487
|
+
...options
|
|
488
|
+
}) => {
|
|
489
|
+
for (const auth of security) {
|
|
490
|
+
if (checkForExistence(options, auth.name)) {
|
|
491
|
+
continue;
|
|
492
|
+
}
|
|
493
|
+
const token = await getAuthToken(auth, options.auth);
|
|
494
|
+
if (!token) {
|
|
495
|
+
continue;
|
|
496
|
+
}
|
|
497
|
+
const name = auth.name ?? "Authorization";
|
|
498
|
+
switch (auth.in) {
|
|
499
|
+
case "query":
|
|
500
|
+
if (!options.query) {
|
|
501
|
+
options.query = {};
|
|
502
|
+
}
|
|
503
|
+
options.query[name] = token;
|
|
504
|
+
break;
|
|
505
|
+
case "cookie":
|
|
506
|
+
options.headers.append("Cookie", `${name}=${token}`);
|
|
507
|
+
break;
|
|
508
|
+
case "header":
|
|
509
|
+
default:
|
|
510
|
+
options.headers.set(name, token);
|
|
511
|
+
break;
|
|
512
|
+
}
|
|
513
|
+
}
|
|
200
514
|
};
|
|
201
|
-
var
|
|
202
|
-
|
|
203
|
-
|
|
515
|
+
var buildUrl = (options) => getUrl({
|
|
516
|
+
baseUrl: options.baseUrl,
|
|
517
|
+
path: options.path,
|
|
518
|
+
query: options.query,
|
|
519
|
+
querySerializer: typeof options.querySerializer === "function" ? options.querySerializer : createQuerySerializer(options.querySerializer),
|
|
520
|
+
url: options.url
|
|
521
|
+
});
|
|
522
|
+
var mergeConfigs = (a, b) => {
|
|
523
|
+
const config = { ...a, ...b };
|
|
524
|
+
if (config.baseUrl?.endsWith("/")) {
|
|
525
|
+
config.baseUrl = config.baseUrl.substring(0, config.baseUrl.length - 1);
|
|
526
|
+
}
|
|
527
|
+
config.headers = mergeHeaders(a.headers, b.headers);
|
|
528
|
+
return config;
|
|
204
529
|
};
|
|
205
|
-
var
|
|
206
|
-
|
|
207
|
-
for (
|
|
208
|
-
if (!
|
|
530
|
+
var mergeHeaders = (...headers) => {
|
|
531
|
+
const mergedHeaders = new Headers;
|
|
532
|
+
for (const header of headers) {
|
|
533
|
+
if (!header || typeof header !== "object") {
|
|
209
534
|
continue;
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
535
|
+
}
|
|
536
|
+
const iterator = header instanceof Headers ? header.entries() : Object.entries(header);
|
|
537
|
+
for (const [key, value] of iterator) {
|
|
538
|
+
if (value === null) {
|
|
539
|
+
mergedHeaders.delete(key);
|
|
540
|
+
} else if (Array.isArray(value)) {
|
|
541
|
+
for (const v of value) {
|
|
542
|
+
mergedHeaders.append(key, v);
|
|
543
|
+
}
|
|
544
|
+
} else if (value !== undefined) {
|
|
545
|
+
mergedHeaders.set(key, typeof value === "object" ? JSON.stringify(value) : value);
|
|
546
|
+
}
|
|
547
|
+
}
|
|
548
|
+
}
|
|
549
|
+
return mergedHeaders;
|
|
221
550
|
};
|
|
222
|
-
|
|
551
|
+
|
|
552
|
+
class Interceptors {
|
|
223
553
|
_fns;
|
|
224
554
|
constructor() {
|
|
225
555
|
this._fns = [];
|
|
@@ -227,121 +557,447 @@ var y = class {
|
|
|
227
557
|
clear() {
|
|
228
558
|
this._fns = [];
|
|
229
559
|
}
|
|
230
|
-
|
|
231
|
-
|
|
560
|
+
getInterceptorIndex(id) {
|
|
561
|
+
if (typeof id === "number") {
|
|
562
|
+
return this._fns[id] ? id : -1;
|
|
563
|
+
} else {
|
|
564
|
+
return this._fns.indexOf(id);
|
|
565
|
+
}
|
|
566
|
+
}
|
|
567
|
+
exists(id) {
|
|
568
|
+
const index = this.getInterceptorIndex(id);
|
|
569
|
+
return !!this._fns[index];
|
|
570
|
+
}
|
|
571
|
+
eject(id) {
|
|
572
|
+
const index = this.getInterceptorIndex(id);
|
|
573
|
+
if (this._fns[index]) {
|
|
574
|
+
this._fns[index] = null;
|
|
575
|
+
}
|
|
232
576
|
}
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
577
|
+
update(id, fn) {
|
|
578
|
+
const index = this.getInterceptorIndex(id);
|
|
579
|
+
if (this._fns[index]) {
|
|
580
|
+
this._fns[index] = fn;
|
|
581
|
+
return id;
|
|
582
|
+
} else {
|
|
583
|
+
return false;
|
|
584
|
+
}
|
|
236
585
|
}
|
|
237
|
-
use(
|
|
238
|
-
this._fns = [...this._fns,
|
|
586
|
+
use(fn) {
|
|
587
|
+
this._fns = [...this._fns, fn];
|
|
588
|
+
return this._fns.length - 1;
|
|
239
589
|
}
|
|
590
|
+
}
|
|
591
|
+
var createInterceptors = () => ({
|
|
592
|
+
error: new Interceptors,
|
|
593
|
+
request: new Interceptors,
|
|
594
|
+
response: new Interceptors
|
|
595
|
+
});
|
|
596
|
+
var defaultQuerySerializer = createQuerySerializer({
|
|
597
|
+
allowReserved: false,
|
|
598
|
+
array: {
|
|
599
|
+
explode: true,
|
|
600
|
+
style: "form"
|
|
601
|
+
},
|
|
602
|
+
object: {
|
|
603
|
+
explode: true,
|
|
604
|
+
style: "deepObject"
|
|
605
|
+
}
|
|
606
|
+
});
|
|
607
|
+
var defaultHeaders = {
|
|
608
|
+
"Content-Type": "application/json"
|
|
240
609
|
};
|
|
241
|
-
var
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
610
|
+
var createConfig = (override = {}) => ({
|
|
611
|
+
...jsonBodySerializer,
|
|
612
|
+
headers: defaultHeaders,
|
|
613
|
+
parseAs: "auto",
|
|
614
|
+
querySerializer: defaultQuerySerializer,
|
|
615
|
+
...override
|
|
616
|
+
});
|
|
617
|
+
|
|
618
|
+
// src/generated/prowlarr/client/client.gen.ts
|
|
619
|
+
var createClient = (config = {}) => {
|
|
620
|
+
let _config = mergeConfigs(createConfig(), config);
|
|
621
|
+
const getConfig = () => ({ ..._config });
|
|
622
|
+
const setConfig = (config2) => {
|
|
623
|
+
_config = mergeConfigs(_config, config2);
|
|
624
|
+
return getConfig();
|
|
625
|
+
};
|
|
626
|
+
const interceptors = createInterceptors();
|
|
627
|
+
const beforeRequest = async (options) => {
|
|
628
|
+
const opts = {
|
|
629
|
+
..._config,
|
|
630
|
+
...options,
|
|
631
|
+
fetch: options.fetch ?? _config.fetch ?? globalThis.fetch,
|
|
632
|
+
headers: mergeHeaders(_config.headers, options.headers),
|
|
633
|
+
serializedBody: undefined
|
|
634
|
+
};
|
|
635
|
+
if (opts.security) {
|
|
636
|
+
await setAuthParams({
|
|
637
|
+
...opts,
|
|
638
|
+
security: opts.security
|
|
639
|
+
});
|
|
640
|
+
}
|
|
641
|
+
if (opts.requestValidator) {
|
|
642
|
+
await opts.requestValidator(opts);
|
|
643
|
+
}
|
|
644
|
+
if (opts.body && opts.bodySerializer) {
|
|
645
|
+
opts.serializedBody = opts.bodySerializer(opts.body);
|
|
646
|
+
}
|
|
647
|
+
if (opts.serializedBody === undefined || opts.serializedBody === "") {
|
|
648
|
+
opts.headers.delete("Content-Type");
|
|
649
|
+
}
|
|
650
|
+
const url = buildUrl(opts);
|
|
651
|
+
return { opts, url };
|
|
652
|
+
};
|
|
653
|
+
const request = async (options) => {
|
|
654
|
+
const { opts, url } = await beforeRequest(options);
|
|
655
|
+
const requestInit = {
|
|
656
|
+
redirect: "follow",
|
|
657
|
+
...opts,
|
|
658
|
+
body: opts.serializedBody
|
|
659
|
+
};
|
|
660
|
+
let request2 = new Request(url, requestInit);
|
|
661
|
+
for (const fn of interceptors.request._fns) {
|
|
662
|
+
if (fn) {
|
|
663
|
+
request2 = await fn(request2, opts);
|
|
664
|
+
}
|
|
665
|
+
}
|
|
666
|
+
const _fetch = opts.fetch;
|
|
667
|
+
let response = await _fetch(request2);
|
|
668
|
+
for (const fn of interceptors.response._fns) {
|
|
669
|
+
if (fn) {
|
|
670
|
+
response = await fn(response, request2, opts);
|
|
671
|
+
}
|
|
672
|
+
}
|
|
673
|
+
const result = {
|
|
674
|
+
request: request2,
|
|
675
|
+
response
|
|
676
|
+
};
|
|
677
|
+
if (response.ok) {
|
|
678
|
+
const parseAs = (opts.parseAs === "auto" ? getParseAs(response.headers.get("Content-Type")) : opts.parseAs) ?? "json";
|
|
679
|
+
if (response.status === 204 || response.headers.get("Content-Length") === "0") {
|
|
680
|
+
let emptyData;
|
|
681
|
+
switch (parseAs) {
|
|
682
|
+
case "arrayBuffer":
|
|
683
|
+
case "blob":
|
|
684
|
+
case "text":
|
|
685
|
+
emptyData = await response[parseAs]();
|
|
686
|
+
break;
|
|
687
|
+
case "formData":
|
|
688
|
+
emptyData = new FormData;
|
|
689
|
+
break;
|
|
690
|
+
case "stream":
|
|
691
|
+
emptyData = response.body;
|
|
692
|
+
break;
|
|
693
|
+
case "json":
|
|
694
|
+
default:
|
|
695
|
+
emptyData = {};
|
|
696
|
+
break;
|
|
697
|
+
}
|
|
698
|
+
return opts.responseStyle === "data" ? emptyData : {
|
|
699
|
+
data: emptyData,
|
|
700
|
+
...result
|
|
701
|
+
};
|
|
702
|
+
}
|
|
703
|
+
let data;
|
|
704
|
+
switch (parseAs) {
|
|
705
|
+
case "arrayBuffer":
|
|
706
|
+
case "blob":
|
|
707
|
+
case "formData":
|
|
708
|
+
case "json":
|
|
709
|
+
case "text":
|
|
710
|
+
data = await response[parseAs]();
|
|
711
|
+
break;
|
|
712
|
+
case "stream":
|
|
713
|
+
return opts.responseStyle === "data" ? response.body : {
|
|
714
|
+
data: response.body,
|
|
715
|
+
...result
|
|
716
|
+
};
|
|
717
|
+
}
|
|
718
|
+
if (parseAs === "json") {
|
|
719
|
+
if (opts.responseValidator) {
|
|
720
|
+
await opts.responseValidator(data);
|
|
721
|
+
}
|
|
722
|
+
if (opts.responseTransformer) {
|
|
723
|
+
data = await opts.responseTransformer(data);
|
|
724
|
+
}
|
|
725
|
+
}
|
|
726
|
+
return opts.responseStyle === "data" ? data : {
|
|
727
|
+
data,
|
|
728
|
+
...result
|
|
729
|
+
};
|
|
264
730
|
}
|
|
265
|
-
|
|
731
|
+
const textError = await response.text();
|
|
732
|
+
let jsonError;
|
|
266
733
|
try {
|
|
267
|
-
|
|
734
|
+
jsonError = JSON.parse(textError);
|
|
268
735
|
} catch {}
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
736
|
+
const error = jsonError ?? textError;
|
|
737
|
+
let finalError = error;
|
|
738
|
+
for (const fn of interceptors.error._fns) {
|
|
739
|
+
if (fn) {
|
|
740
|
+
finalError = await fn(error, response, request2, opts);
|
|
741
|
+
}
|
|
742
|
+
}
|
|
743
|
+
finalError = finalError || {};
|
|
744
|
+
if (opts.throwOnError) {
|
|
745
|
+
throw finalError;
|
|
746
|
+
}
|
|
747
|
+
return opts.responseStyle === "data" ? undefined : {
|
|
748
|
+
error: finalError,
|
|
749
|
+
...result
|
|
750
|
+
};
|
|
751
|
+
};
|
|
752
|
+
const makeMethodFn = (method) => (options) => request({ ...options, method });
|
|
753
|
+
const makeSseFn = (method) => async (options) => {
|
|
754
|
+
const { opts, url } = await beforeRequest(options);
|
|
755
|
+
return createSseClient({
|
|
756
|
+
...opts,
|
|
757
|
+
body: opts.body,
|
|
758
|
+
headers: opts.headers,
|
|
759
|
+
method,
|
|
760
|
+
onRequest: async (url2, init) => {
|
|
761
|
+
let request2 = new Request(url2, init);
|
|
762
|
+
for (const fn of interceptors.request._fns) {
|
|
763
|
+
if (fn) {
|
|
764
|
+
request2 = await fn(request2, opts);
|
|
765
|
+
}
|
|
766
|
+
}
|
|
767
|
+
return request2;
|
|
768
|
+
},
|
|
769
|
+
url
|
|
770
|
+
});
|
|
771
|
+
};
|
|
772
|
+
return {
|
|
773
|
+
buildUrl,
|
|
774
|
+
connect: makeMethodFn("CONNECT"),
|
|
775
|
+
delete: makeMethodFn("DELETE"),
|
|
776
|
+
get: makeMethodFn("GET"),
|
|
777
|
+
getConfig,
|
|
778
|
+
head: makeMethodFn("HEAD"),
|
|
779
|
+
interceptors,
|
|
780
|
+
options: makeMethodFn("OPTIONS"),
|
|
781
|
+
patch: makeMethodFn("PATCH"),
|
|
782
|
+
post: makeMethodFn("POST"),
|
|
783
|
+
put: makeMethodFn("PUT"),
|
|
784
|
+
request,
|
|
785
|
+
setConfig,
|
|
786
|
+
sse: {
|
|
787
|
+
connect: makeSseFn("CONNECT"),
|
|
788
|
+
delete: makeSseFn("DELETE"),
|
|
789
|
+
get: makeSseFn("GET"),
|
|
790
|
+
head: makeSseFn("HEAD"),
|
|
791
|
+
options: makeSseFn("OPTIONS"),
|
|
792
|
+
patch: makeSseFn("PATCH"),
|
|
793
|
+
post: makeSseFn("POST"),
|
|
794
|
+
put: makeSseFn("PUT"),
|
|
795
|
+
trace: makeSseFn("TRACE")
|
|
796
|
+
},
|
|
797
|
+
trace: makeMethodFn("TRACE")
|
|
275
798
|
};
|
|
276
|
-
return { connect: (t) => s({ ...t, method: "CONNECT" }), delete: (t) => s({ ...t, method: "DELETE" }), get: (t) => s({ ...t, method: "GET" }), getConfig: e, head: (t) => s({ ...t, method: "HEAD" }), interceptors: o, options: (t) => s({ ...t, method: "OPTIONS" }), patch: (t) => s({ ...t, method: "PATCH" }), post: (t) => s({ ...t, method: "POST" }), put: (t) => s({ ...t, method: "PUT" }), request: s, setConfig: a, trace: (t) => s({ ...t, method: "TRACE" }) };
|
|
277
799
|
};
|
|
800
|
+
// src/generated/prowlarr/client.gen.ts
|
|
801
|
+
var client = createClient(createConfig());
|
|
278
802
|
|
|
279
|
-
// src/generated/prowlarr/
|
|
280
|
-
var client = J(x());
|
|
803
|
+
// src/generated/prowlarr/sdk.gen.ts
|
|
281
804
|
var getApiV1Applications = (options) => {
|
|
282
805
|
return (options?.client ?? client).get({
|
|
283
|
-
|
|
284
|
-
|
|
806
|
+
security: [
|
|
807
|
+
{
|
|
808
|
+
name: "X-Api-Key",
|
|
809
|
+
type: "apiKey"
|
|
810
|
+
},
|
|
811
|
+
{
|
|
812
|
+
in: "query",
|
|
813
|
+
name: "apikey",
|
|
814
|
+
type: "apiKey"
|
|
815
|
+
}
|
|
816
|
+
],
|
|
817
|
+
url: "/api/v1/applications",
|
|
818
|
+
...options
|
|
819
|
+
});
|
|
820
|
+
};
|
|
821
|
+
var getApiV1Command = (options) => {
|
|
822
|
+
return (options?.client ?? client).get({
|
|
823
|
+
security: [
|
|
824
|
+
{
|
|
825
|
+
name: "X-Api-Key",
|
|
826
|
+
type: "apiKey"
|
|
827
|
+
},
|
|
828
|
+
{
|
|
829
|
+
in: "query",
|
|
830
|
+
name: "apikey",
|
|
831
|
+
type: "apiKey"
|
|
832
|
+
}
|
|
833
|
+
],
|
|
834
|
+
url: "/api/v1/command",
|
|
835
|
+
...options
|
|
285
836
|
});
|
|
286
837
|
};
|
|
287
838
|
var postApiV1Command = (options) => {
|
|
288
839
|
return (options?.client ?? client).post({
|
|
840
|
+
security: [
|
|
841
|
+
{
|
|
842
|
+
name: "X-Api-Key",
|
|
843
|
+
type: "apiKey"
|
|
844
|
+
},
|
|
845
|
+
{
|
|
846
|
+
in: "query",
|
|
847
|
+
name: "apikey",
|
|
848
|
+
type: "apiKey"
|
|
849
|
+
}
|
|
850
|
+
],
|
|
851
|
+
url: "/api/v1/command",
|
|
289
852
|
...options,
|
|
290
|
-
|
|
853
|
+
headers: {
|
|
854
|
+
"Content-Type": "application/json",
|
|
855
|
+
...options?.headers
|
|
856
|
+
}
|
|
291
857
|
});
|
|
292
858
|
};
|
|
293
|
-
var
|
|
859
|
+
var getApiV1Health = (options) => {
|
|
294
860
|
return (options?.client ?? client).get({
|
|
295
|
-
|
|
296
|
-
|
|
861
|
+
security: [
|
|
862
|
+
{
|
|
863
|
+
name: "X-Api-Key",
|
|
864
|
+
type: "apiKey"
|
|
865
|
+
},
|
|
866
|
+
{
|
|
867
|
+
in: "query",
|
|
868
|
+
name: "apikey",
|
|
869
|
+
type: "apiKey"
|
|
870
|
+
}
|
|
871
|
+
],
|
|
872
|
+
url: "/api/v1/health",
|
|
873
|
+
...options
|
|
297
874
|
});
|
|
298
875
|
};
|
|
299
|
-
var
|
|
300
|
-
return (options
|
|
301
|
-
|
|
302
|
-
|
|
876
|
+
var deleteApiV1IndexerById = (options) => {
|
|
877
|
+
return (options.client ?? client).delete({
|
|
878
|
+
security: [
|
|
879
|
+
{
|
|
880
|
+
name: "X-Api-Key",
|
|
881
|
+
type: "apiKey"
|
|
882
|
+
},
|
|
883
|
+
{
|
|
884
|
+
in: "query",
|
|
885
|
+
name: "apikey",
|
|
886
|
+
type: "apiKey"
|
|
887
|
+
}
|
|
888
|
+
],
|
|
889
|
+
url: "/api/v1/indexer/{id}",
|
|
890
|
+
...options
|
|
303
891
|
});
|
|
304
892
|
};
|
|
305
893
|
var getApiV1IndexerById = (options) => {
|
|
306
|
-
return (options
|
|
307
|
-
|
|
308
|
-
|
|
894
|
+
return (options.client ?? client).get({
|
|
895
|
+
security: [
|
|
896
|
+
{
|
|
897
|
+
name: "X-Api-Key",
|
|
898
|
+
type: "apiKey"
|
|
899
|
+
},
|
|
900
|
+
{
|
|
901
|
+
in: "query",
|
|
902
|
+
name: "apikey",
|
|
903
|
+
type: "apiKey"
|
|
904
|
+
}
|
|
905
|
+
],
|
|
906
|
+
url: "/api/v1/indexer/{id}",
|
|
907
|
+
...options
|
|
309
908
|
});
|
|
310
909
|
};
|
|
311
910
|
var putApiV1IndexerById = (options) => {
|
|
312
|
-
return (options
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
911
|
+
return (options.client ?? client).put({
|
|
912
|
+
security: [
|
|
913
|
+
{
|
|
914
|
+
name: "X-Api-Key",
|
|
915
|
+
type: "apiKey"
|
|
916
|
+
},
|
|
917
|
+
{
|
|
918
|
+
in: "query",
|
|
919
|
+
name: "apikey",
|
|
920
|
+
type: "apiKey"
|
|
921
|
+
}
|
|
922
|
+
],
|
|
923
|
+
url: "/api/v1/indexer/{id}",
|
|
319
924
|
...options,
|
|
320
|
-
|
|
925
|
+
headers: {
|
|
926
|
+
"Content-Type": "application/json",
|
|
927
|
+
...options.headers
|
|
928
|
+
}
|
|
321
929
|
});
|
|
322
930
|
};
|
|
323
931
|
var getApiV1Indexer = (options) => {
|
|
324
932
|
return (options?.client ?? client).get({
|
|
325
|
-
|
|
326
|
-
|
|
933
|
+
security: [
|
|
934
|
+
{
|
|
935
|
+
name: "X-Api-Key",
|
|
936
|
+
type: "apiKey"
|
|
937
|
+
},
|
|
938
|
+
{
|
|
939
|
+
in: "query",
|
|
940
|
+
name: "apikey",
|
|
941
|
+
type: "apiKey"
|
|
942
|
+
}
|
|
943
|
+
],
|
|
944
|
+
url: "/api/v1/indexer",
|
|
945
|
+
...options
|
|
327
946
|
});
|
|
328
947
|
};
|
|
329
948
|
var postApiV1Indexer = (options) => {
|
|
330
949
|
return (options?.client ?? client).post({
|
|
950
|
+
security: [
|
|
951
|
+
{
|
|
952
|
+
name: "X-Api-Key",
|
|
953
|
+
type: "apiKey"
|
|
954
|
+
},
|
|
955
|
+
{
|
|
956
|
+
in: "query",
|
|
957
|
+
name: "apikey",
|
|
958
|
+
type: "apiKey"
|
|
959
|
+
}
|
|
960
|
+
],
|
|
961
|
+
url: "/api/v1/indexer",
|
|
331
962
|
...options,
|
|
332
|
-
|
|
963
|
+
headers: {
|
|
964
|
+
"Content-Type": "application/json",
|
|
965
|
+
...options?.headers
|
|
966
|
+
}
|
|
333
967
|
});
|
|
334
968
|
};
|
|
335
969
|
var getApiV1Search = (options) => {
|
|
336
970
|
return (options?.client ?? client).get({
|
|
337
|
-
|
|
338
|
-
|
|
971
|
+
security: [
|
|
972
|
+
{
|
|
973
|
+
name: "X-Api-Key",
|
|
974
|
+
type: "apiKey"
|
|
975
|
+
},
|
|
976
|
+
{
|
|
977
|
+
in: "query",
|
|
978
|
+
name: "apikey",
|
|
979
|
+
type: "apiKey"
|
|
980
|
+
}
|
|
981
|
+
],
|
|
982
|
+
url: "/api/v1/search",
|
|
983
|
+
...options
|
|
339
984
|
});
|
|
340
985
|
};
|
|
341
986
|
var getApiV1SystemStatus = (options) => {
|
|
342
987
|
return (options?.client ?? client).get({
|
|
343
|
-
|
|
344
|
-
|
|
988
|
+
security: [
|
|
989
|
+
{
|
|
990
|
+
name: "X-Api-Key",
|
|
991
|
+
type: "apiKey"
|
|
992
|
+
},
|
|
993
|
+
{
|
|
994
|
+
in: "query",
|
|
995
|
+
name: "apikey",
|
|
996
|
+
type: "apiKey"
|
|
997
|
+
}
|
|
998
|
+
],
|
|
999
|
+
url: "/api/v1/system/status",
|
|
1000
|
+
...options
|
|
345
1001
|
});
|
|
346
1002
|
};
|
|
347
1003
|
|
|
@@ -350,10 +1006,6 @@ class ProwlarrClient {
|
|
|
350
1006
|
clientConfig;
|
|
351
1007
|
constructor(config) {
|
|
352
1008
|
this.clientConfig = createServarrClient(config);
|
|
353
|
-
client.setConfig({
|
|
354
|
-
baseUrl: this.clientConfig.getBaseUrl(),
|
|
355
|
-
headers: this.clientConfig.getHeaders()
|
|
356
|
-
});
|
|
357
1009
|
}
|
|
358
1010
|
async getSystemStatus() {
|
|
359
1011
|
return getApiV1SystemStatus();
|
|
@@ -396,10 +1048,6 @@ class ProwlarrClient {
|
|
|
396
1048
|
updateConfig(newConfig) {
|
|
397
1049
|
const updatedConfig = { ...this.clientConfig.config, ...newConfig };
|
|
398
1050
|
this.clientConfig = createServarrClient(updatedConfig);
|
|
399
|
-
client.setConfig({
|
|
400
|
-
baseUrl: this.clientConfig.getBaseUrl(),
|
|
401
|
-
headers: this.clientConfig.getHeaders()
|
|
402
|
-
});
|
|
403
1051
|
return this.clientConfig.config;
|
|
404
1052
|
}
|
|
405
1053
|
}
|