@gradio/client 0.11.0 → 0.12.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/CHANGELOG.md +6 -0
- package/dist/client.d.ts +0 -2
- package/dist/client.d.ts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -77
- package/dist/upload.d.ts +0 -4
- package/dist/upload.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/client.ts +7 -60
- package/src/index.ts +0 -1
- package/src/upload.ts +6 -63
package/CHANGELOG.md
CHANGED
@@ -1,5 +1,11 @@
|
|
1
1
|
# @gradio/client
|
2
2
|
|
3
|
+
## 0.12.0
|
4
|
+
|
5
|
+
### Features
|
6
|
+
|
7
|
+
- [#7183](https://github.com/gradio-app/gradio/pull/7183) [`49d9c48`](https://github.com/gradio-app/gradio/commit/49d9c48537aa706bf72628e3640389470138bdc6) - [WIP] Refactor file normalization to be in the backend and remove it from the frontend of each component. Thanks [@abidlabs](https://github.com/abidlabs)!
|
8
|
+
|
3
9
|
## 0.11.0
|
4
10
|
|
5
11
|
### Features
|
package/dist/client.d.ts
CHANGED
@@ -30,7 +30,6 @@ interface Client {
|
|
30
30
|
client: (app_reference: string, options: {
|
31
31
|
hf_token?: `hf_${string}`;
|
32
32
|
status_callback?: SpaceStatusCallback;
|
33
|
-
normalise_files?: boolean;
|
34
33
|
}) => Promise<client_return>;
|
35
34
|
handle_blob: (endpoint: string, data: unknown[], api_info: ApiInfo<JsApiData>, token?: `hf_${string}`) => Promise<unknown[]>;
|
36
35
|
}
|
@@ -38,7 +37,6 @@ export declare function api_factory(fetch_implementation: typeof fetch, EventSou
|
|
38
37
|
export declare const post_data: (url: string, body: unknown, token?: `hf_${string}`) => Promise<[PostResponse, number]>, upload_files: (root: string, files: File[], token?: `hf_${string}`, upload_id?: string) => Promise<UploadResponse>, client: (app_reference: string, options: {
|
39
38
|
hf_token?: `hf_${string}`;
|
40
39
|
status_callback?: SpaceStatusCallback;
|
41
|
-
normalise_files?: boolean;
|
42
40
|
}) => Promise<client_return>, handle_blob: (endpoint: string, data: unknown[], api_info: ApiInfo<JsApiData>, token?: `hf_${string}`) => Promise<unknown[]>;
|
43
41
|
interface ApiData {
|
44
42
|
label: string;
|
package/dist/client.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAIA,OAAO,EAQN,cAAc,EAGd,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EACX,SAAS,EACT,aAAa,EAIb,YAAY,EACZ,cAAc,EAGd,mBAAmB,EACnB,MAAM,YAAY,CAAC;AAIpB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC,KAAK,KAAK,GAAG,CAAC,CAAC,SAAS,SAAS,EAChC,SAAS,EAAE,CAAC,EACZ,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,KACtB,YAAY,CAAC;AAClB,KAAK,OAAO,GAAG,CACd,QAAQ,EAAE,MAAM,GAAG,MAAM,EACzB,IAAI,CAAC,EAAE,OAAO,EAAE,EAChB,UAAU,CAAC,EAAE,OAAO,KAChB,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtB,KAAK,aAAa,GAAG;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,CACP,QAAQ,EAAE,MAAM,GAAG,MAAM,EACzB,IAAI,CAAC,EAAE,OAAO,EAAE,EAChB,UAAU,CAAC,EAAE,OAAO,EACpB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,KACtB,YAAY,CAAC;IAClB,gBAAgB,EAAE,CACjB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,OAAO,EAAE,KACX,GAAG,CAAC;IACT,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;CACtD,CAAC;AAEF,KAAK,YAAY,GAAG;IACnB,EAAE,EAAE,KAAK,CAAC;IACV,GAAG,EAAE,KAAK,CAAC;IACX,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,OAAO,EAAE,MAAM,IAAI,CAAC;CACpB,CAAC;AAKF,eAAO,IAAI,QAAQ,KAAA,CAAC;AAEpB,wBAAsB,SAAS,CAC9B,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE;IACR,QAAQ,EAAE,MAAM,MAAM,EAAE,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,EAAE,mBAAmB,CAAC;IACrC,QAAQ,CAAC,EAAE,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB,GACC,OAAO,CAAC,aAAa,CAAC,CAmExB;AAED,UAAU,MAAM;IACf,SAAS,EAAE,CACV,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,OAAO,EACb,KAAK,CAAC,EAAE,MAAM,MAAM,EAAE,KAClB,OAAO,CAAC,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;IACrC,YAAY,EAAE,CACb,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,IAAI,EAAE,EACb,KAAK,CAAC,EAAE,MAAM,MAAM,EAAE,EACtB,SAAS,CAAC,EAAE,MAAM,KACd,OAAO,CAAC,cAAc,CAAC,CAAC;IAC7B,MAAM,EAAE,CACP,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE;QACR,QAAQ,CAAC,EAAE,MAAM,MAAM,EAAE,CAAC;QAC1B,eAAe,CAAC,EAAE,mBAAmB,CAAC;
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
@@ -1,4 +1,4 @@
|
|
1
1
|
export { client, post_data, upload_files, duplicate, api_factory } from "./client.js";
|
2
2
|
export type { SpaceStatus } from "./types.js";
|
3
|
-
export {
|
3
|
+
export { FileData, upload, get_fetchable_url_or_file, prepare_files } from "./upload.js";
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,MAAM,EACN,SAAS,EACT,YAAY,EACZ,SAAS,EACT,WAAW,EACX,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EACN,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,MAAM,EACN,SAAS,EACT,YAAY,EACZ,SAAS,EACT,WAAW,EACX,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EACN,QAAQ,EACR,MAAM,EACN,yBAAyB,EACzB,aAAa,EACb,MAAM,aAAa,CAAC"}
|
package/dist/index.js
CHANGED
@@ -216,38 +216,6 @@ function apply_diff(obj, diff) {
|
|
216
216
|
});
|
217
217
|
return obj;
|
218
218
|
}
|
219
|
-
function normalise_file(file, server_url, proxy_url) {
|
220
|
-
if (file == null) {
|
221
|
-
return null;
|
222
|
-
}
|
223
|
-
if (Array.isArray(file)) {
|
224
|
-
const normalized_file = [];
|
225
|
-
for (const x of file) {
|
226
|
-
if (x == null) {
|
227
|
-
normalized_file.push(null);
|
228
|
-
} else {
|
229
|
-
normalized_file.push(normalise_file(x, server_url, proxy_url));
|
230
|
-
}
|
231
|
-
}
|
232
|
-
return normalized_file;
|
233
|
-
}
|
234
|
-
if (file.is_stream) {
|
235
|
-
if (proxy_url == null) {
|
236
|
-
return new FileData({
|
237
|
-
...file,
|
238
|
-
url: server_url + "/stream/" + file.path
|
239
|
-
});
|
240
|
-
}
|
241
|
-
return new FileData({
|
242
|
-
...file,
|
243
|
-
url: "/proxy=" + proxy_url + "stream/" + file.path
|
244
|
-
});
|
245
|
-
}
|
246
|
-
return new FileData({
|
247
|
-
...file,
|
248
|
-
url: get_fetchable_url_or_file(file.path, server_url, proxy_url)
|
249
|
-
});
|
250
|
-
}
|
251
219
|
function is_url(str) {
|
252
220
|
try {
|
253
221
|
const url = new URL(str);
|
@@ -277,8 +245,12 @@ async function upload(file_data, root, upload_id, upload_fn = upload_files) {
|
|
277
245
|
} else {
|
278
246
|
if (response.files) {
|
279
247
|
return response.files.map((f, i) => {
|
280
|
-
const file = new FileData({
|
281
|
-
|
248
|
+
const file = new FileData({
|
249
|
+
...file_data[i],
|
250
|
+
path: f,
|
251
|
+
url: root + "/file=" + f
|
252
|
+
});
|
253
|
+
return file;
|
282
254
|
});
|
283
255
|
}
|
284
256
|
return [];
|
@@ -427,16 +399,15 @@ function api_factory(fetch_implementation, EventSource_factory) {
|
|
427
399
|
}
|
428
400
|
return { files: uploadResponses };
|
429
401
|
}
|
430
|
-
async function client2(app_reference, options = {
|
402
|
+
async function client2(app_reference, options = {}) {
|
431
403
|
return new Promise(async (res) => {
|
432
|
-
const { status_callback, hf_token
|
404
|
+
const { status_callback, hf_token } = options;
|
433
405
|
const return_obj = {
|
434
406
|
predict,
|
435
407
|
submit,
|
436
408
|
view_api,
|
437
409
|
component_server
|
438
410
|
};
|
439
|
-
const transform_files = normalise_files ?? true;
|
440
411
|
if ((typeof window === "undefined" || !("WebSocket" in window)) && !global.Websocket) {
|
441
412
|
const ws = await import("./wrapper-6f348d45.js");
|
442
413
|
NodeBlob = (await import("node:buffer")).Blob;
|
@@ -618,12 +589,7 @@ function api_factory(fetch_implementation, EventSource_factory) {
|
|
618
589
|
},
|
619
590
|
hf_token
|
620
591
|
).then(([output, status_code]) => {
|
621
|
-
const data2 =
|
622
|
-
output.data,
|
623
|
-
api_info,
|
624
|
-
config.root,
|
625
|
-
config.root_url
|
626
|
-
) : output.data;
|
592
|
+
const data2 = output.data;
|
627
593
|
if (status_code == 200) {
|
628
594
|
fire_event({
|
629
595
|
type: "data",
|
@@ -743,12 +709,7 @@ function api_factory(fetch_implementation, EventSource_factory) {
|
|
743
709
|
fire_event({
|
744
710
|
type: "data",
|
745
711
|
time: /* @__PURE__ */ new Date(),
|
746
|
-
data:
|
747
|
-
data2.data,
|
748
|
-
api_info,
|
749
|
-
config.root,
|
750
|
-
config.root_url
|
751
|
-
) : data2.data,
|
712
|
+
data: data2.data,
|
752
713
|
endpoint: _endpoint,
|
753
714
|
fn_index
|
754
715
|
});
|
@@ -854,12 +815,7 @@ function api_factory(fetch_implementation, EventSource_factory) {
|
|
854
815
|
fire_event({
|
855
816
|
type: "data",
|
856
817
|
time: /* @__PURE__ */ new Date(),
|
857
|
-
data:
|
858
|
-
data2.data,
|
859
|
-
api_info,
|
860
|
-
config.root,
|
861
|
-
config.root_url
|
862
|
-
) : data2.data,
|
818
|
+
data: data2.data,
|
863
819
|
endpoint: _endpoint,
|
864
820
|
fn_index
|
865
821
|
});
|
@@ -973,12 +929,7 @@ function api_factory(fetch_implementation, EventSource_factory) {
|
|
973
929
|
fire_event({
|
974
930
|
type: "data",
|
975
931
|
time: /* @__PURE__ */ new Date(),
|
976
|
-
data:
|
977
|
-
data2.data,
|
978
|
-
api_info,
|
979
|
-
config.root,
|
980
|
-
config.root_url
|
981
|
-
) : data2.data,
|
932
|
+
data: data2.data,
|
982
933
|
endpoint: _endpoint,
|
983
934
|
fn_index
|
984
935
|
});
|
@@ -1279,21 +1230,6 @@ const { post_data, upload_files, client, handle_blob } = api_factory(
|
|
1279
1230
|
fetch,
|
1280
1231
|
(...args) => new EventSource(...args)
|
1281
1232
|
);
|
1282
|
-
function transform_output(data, api_info, root_url, remote_url) {
|
1283
|
-
return data.map((d, i) => {
|
1284
|
-
var _a, _b, _c, _d;
|
1285
|
-
if (((_b = (_a = api_info == null ? void 0 : api_info.returns) == null ? void 0 : _a[i]) == null ? void 0 : _b.component) === "File") {
|
1286
|
-
return normalise_file(d, root_url, remote_url);
|
1287
|
-
} else if (((_d = (_c = api_info == null ? void 0 : api_info.returns) == null ? void 0 : _c[i]) == null ? void 0 : _d.component) === "Gallery") {
|
1288
|
-
return d.map((img) => {
|
1289
|
-
return Array.isArray(img) ? [normalise_file(img[0], root_url, remote_url), img[1]] : [normalise_file(img, root_url, remote_url), null];
|
1290
|
-
});
|
1291
|
-
} else if (typeof d === "object" && d.path) {
|
1292
|
-
return normalise_file(d, root_url, remote_url);
|
1293
|
-
}
|
1294
|
-
return d;
|
1295
|
-
});
|
1296
|
-
}
|
1297
1233
|
function get_type(type, component, serializer, signature_type) {
|
1298
1234
|
switch (type.type) {
|
1299
1235
|
case "string":
|
@@ -1655,7 +1591,6 @@ export {
|
|
1655
1591
|
client,
|
1656
1592
|
duplicate,
|
1657
1593
|
get_fetchable_url_or_file,
|
1658
|
-
normalise_file,
|
1659
1594
|
post_data,
|
1660
1595
|
prepare_files,
|
1661
1596
|
upload,
|
package/dist/upload.d.ts
CHANGED
@@ -1,8 +1,4 @@
|
|
1
1
|
import { upload_files } from "./client";
|
2
|
-
export declare function normalise_file(file: FileData | null, server_url: string, proxy_url: string | null): FileData | null;
|
3
|
-
export declare function normalise_file(file: FileData[] | null, server_url: string, proxy_url: string | null): FileData[] | null;
|
4
|
-
export declare function normalise_file(file: FileData[] | FileData | null, server_url: string, // root: string,
|
5
|
-
proxy_url: string | null): FileData[] | FileData | null;
|
6
2
|
export declare function get_fetchable_url_or_file(path: string | null, server_url: string, proxy_url: string | null): string;
|
7
3
|
export declare function upload(file_data: FileData[], root: string, upload_id?: string, upload_fn?: typeof upload_files): Promise<(FileData | null)[] | null>;
|
8
4
|
export declare function prepare_files(files: File[], is_stream?: boolean): Promise<FileData[]>;
|
package/dist/upload.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../src/upload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;
|
1
|
+
{"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../src/upload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAWxC,wBAAgB,yBAAyB,CACxC,IAAI,EAAE,MAAM,GAAG,IAAI,EACnB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAAG,IAAI,GACtB,MAAM,CAUR;AAED,wBAAsB,MAAM,CAC3B,SAAS,EAAE,QAAQ,EAAE,EACrB,IAAI,EAAE,MAAM,EACZ,SAAS,CAAC,EAAE,MAAM,EAClB,SAAS,GAAE,OAAO,YAA2B,GAC3C,OAAO,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,CA2BrC;AAED,wBAAsB,aAAa,CAClC,KAAK,EAAE,IAAI,EAAE,EACb,SAAS,CAAC,EAAE,OAAO,GACjB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAYrB;AAED,qBAAa,QAAQ;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;gBAEN,EACX,IAAI,EACJ,GAAG,EACH,SAAS,EACT,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,SAAS,EACT,QAAQ,EACR,EAAE;QACF,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,IAAI,CAAC;QACZ,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;KAClB;CAUD"}
|
package/package.json
CHANGED
package/src/client.ts
CHANGED
@@ -28,7 +28,7 @@ import type {
|
|
28
28
|
SpaceStatusCallback
|
29
29
|
} from "./types.js";
|
30
30
|
|
31
|
-
import { FileData
|
31
|
+
import { FileData } from "./upload";
|
32
32
|
|
33
33
|
import type { Config } from "./types.js";
|
34
34
|
|
@@ -166,7 +166,6 @@ interface Client {
|
|
166
166
|
options: {
|
167
167
|
hf_token?: `hf_${string}`;
|
168
168
|
status_callback?: SpaceStatusCallback;
|
169
|
-
normalise_files?: boolean;
|
170
169
|
}
|
171
170
|
) => Promise<client_return>;
|
172
171
|
handle_blob: (
|
@@ -259,11 +258,10 @@ export function api_factory(
|
|
259
258
|
options: {
|
260
259
|
hf_token?: `hf_${string}`;
|
261
260
|
status_callback?: SpaceStatusCallback;
|
262
|
-
|
263
|
-
} = { normalise_files: true }
|
261
|
+
} = {}
|
264
262
|
): Promise<client_return> {
|
265
263
|
return new Promise(async (res) => {
|
266
|
-
const { status_callback, hf_token
|
264
|
+
const { status_callback, hf_token } = options;
|
267
265
|
const return_obj = {
|
268
266
|
predict,
|
269
267
|
submit,
|
@@ -271,7 +269,6 @@ export function api_factory(
|
|
271
269
|
component_server
|
272
270
|
};
|
273
271
|
|
274
|
-
const transform_files = normalise_files ?? true;
|
275
272
|
if (
|
276
273
|
(typeof window === "undefined" || !("WebSocket" in window)) &&
|
277
274
|
!global.Websocket
|
@@ -493,14 +490,7 @@ export function api_factory(
|
|
493
490
|
hf_token
|
494
491
|
)
|
495
492
|
.then(([output, status_code]) => {
|
496
|
-
const data =
|
497
|
-
? transform_output(
|
498
|
-
output.data,
|
499
|
-
api_info,
|
500
|
-
config.root,
|
501
|
-
config.root_url
|
502
|
-
)
|
503
|
-
: output.data;
|
493
|
+
const data = output.data;
|
504
494
|
if (status_code == 200) {
|
505
495
|
fire_event({
|
506
496
|
type: "data",
|
@@ -628,14 +618,7 @@ export function api_factory(
|
|
628
618
|
fire_event({
|
629
619
|
type: "data",
|
630
620
|
time: new Date(),
|
631
|
-
data:
|
632
|
-
? transform_output(
|
633
|
-
data.data,
|
634
|
-
api_info,
|
635
|
-
config.root,
|
636
|
-
config.root_url
|
637
|
-
)
|
638
|
-
: data.data,
|
621
|
+
data: data.data,
|
639
622
|
endpoint: _endpoint,
|
640
623
|
fn_index
|
641
624
|
});
|
@@ -750,14 +733,7 @@ export function api_factory(
|
|
750
733
|
fire_event({
|
751
734
|
type: "data",
|
752
735
|
time: new Date(),
|
753
|
-
data:
|
754
|
-
? transform_output(
|
755
|
-
data.data,
|
756
|
-
api_info,
|
757
|
-
config.root,
|
758
|
-
config.root_url
|
759
|
-
)
|
760
|
-
: data.data,
|
736
|
+
data: data.data,
|
761
737
|
endpoint: _endpoint,
|
762
738
|
fn_index
|
763
739
|
});
|
@@ -878,14 +854,7 @@ export function api_factory(
|
|
878
854
|
fire_event({
|
879
855
|
type: "data",
|
880
856
|
time: new Date(),
|
881
|
-
data:
|
882
|
-
? transform_output(
|
883
|
-
data.data,
|
884
|
-
api_info,
|
885
|
-
config.root,
|
886
|
-
config.root_url
|
887
|
-
)
|
888
|
-
: data.data,
|
857
|
+
data: data.data,
|
889
858
|
endpoint: _endpoint,
|
890
859
|
fn_index
|
891
860
|
});
|
@@ -1244,28 +1213,6 @@ export const { post_data, upload_files, client, handle_blob } = api_factory(
|
|
1244
1213
|
(...args) => new EventSource(...args)
|
1245
1214
|
);
|
1246
1215
|
|
1247
|
-
function transform_output(
|
1248
|
-
data: any[],
|
1249
|
-
api_info: any,
|
1250
|
-
root_url: string,
|
1251
|
-
remote_url?: string
|
1252
|
-
): unknown[] {
|
1253
|
-
return data.map((d, i) => {
|
1254
|
-
if (api_info?.returns?.[i]?.component === "File") {
|
1255
|
-
return normalise_file(d, root_url, remote_url);
|
1256
|
-
} else if (api_info?.returns?.[i]?.component === "Gallery") {
|
1257
|
-
return d.map((img) => {
|
1258
|
-
return Array.isArray(img)
|
1259
|
-
? [normalise_file(img[0], root_url, remote_url), img[1]]
|
1260
|
-
: [normalise_file(img, root_url, remote_url), null];
|
1261
|
-
});
|
1262
|
-
} else if (typeof d === "object" && d.path) {
|
1263
|
-
return normalise_file(d, root_url, remote_url);
|
1264
|
-
}
|
1265
|
-
return d;
|
1266
|
-
});
|
1267
|
-
}
|
1268
|
-
|
1269
1216
|
interface ApiData {
|
1270
1217
|
label: string;
|
1271
1218
|
type: {
|
package/src/index.ts
CHANGED
package/src/upload.ts
CHANGED
@@ -1,65 +1,5 @@
|
|
1
1
|
import { upload_files } from "./client";
|
2
2
|
|
3
|
-
export function normalise_file(
|
4
|
-
file: FileData | null,
|
5
|
-
server_url: string,
|
6
|
-
proxy_url: string | null
|
7
|
-
): FileData | null;
|
8
|
-
|
9
|
-
export function normalise_file(
|
10
|
-
file: FileData[] | null,
|
11
|
-
server_url: string,
|
12
|
-
proxy_url: string | null
|
13
|
-
): FileData[] | null;
|
14
|
-
|
15
|
-
export function normalise_file(
|
16
|
-
file: FileData[] | FileData | null,
|
17
|
-
server_url: string, // root: string,
|
18
|
-
proxy_url: string | null // root_url: string | null
|
19
|
-
): FileData[] | FileData | null;
|
20
|
-
|
21
|
-
export function normalise_file(
|
22
|
-
file: FileData[] | FileData | null,
|
23
|
-
server_url: string, // root: string,
|
24
|
-
proxy_url: string | null // root_url: string | null
|
25
|
-
): FileData[] | FileData | null {
|
26
|
-
if (file == null) {
|
27
|
-
return null;
|
28
|
-
}
|
29
|
-
|
30
|
-
if (Array.isArray(file)) {
|
31
|
-
const normalized_file: (FileData | null)[] = [];
|
32
|
-
|
33
|
-
for (const x of file) {
|
34
|
-
if (x == null) {
|
35
|
-
normalized_file.push(null);
|
36
|
-
} else {
|
37
|
-
normalized_file.push(normalise_file(x, server_url, proxy_url));
|
38
|
-
}
|
39
|
-
}
|
40
|
-
|
41
|
-
return normalized_file as FileData[];
|
42
|
-
}
|
43
|
-
|
44
|
-
if (file.is_stream) {
|
45
|
-
if (proxy_url == null) {
|
46
|
-
return new FileData({
|
47
|
-
...file,
|
48
|
-
url: server_url + "/stream/" + file.path
|
49
|
-
});
|
50
|
-
}
|
51
|
-
return new FileData({
|
52
|
-
...file,
|
53
|
-
url: "/proxy=" + proxy_url + "stream/" + file.path
|
54
|
-
});
|
55
|
-
}
|
56
|
-
|
57
|
-
return new FileData({
|
58
|
-
...file,
|
59
|
-
url: get_fetchable_url_or_file(file.path, server_url, proxy_url)
|
60
|
-
});
|
61
|
-
}
|
62
|
-
|
63
3
|
function is_url(str: string): boolean {
|
64
4
|
try {
|
65
5
|
const url = new URL(str);
|
@@ -103,9 +43,12 @@ export async function upload(
|
|
103
43
|
} else {
|
104
44
|
if (response.files) {
|
105
45
|
return response.files.map((f, i) => {
|
106
|
-
const file = new FileData({
|
107
|
-
|
108
|
-
|
46
|
+
const file = new FileData({
|
47
|
+
...file_data[i],
|
48
|
+
path: f,
|
49
|
+
url: root + "/file=" + f
|
50
|
+
});
|
51
|
+
return file;
|
109
52
|
});
|
110
53
|
}
|
111
54
|
|