@gradio/client 0.17.0 → 0.18.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.
Files changed (62) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/client.d.ts +15 -4
  3. package/dist/client.d.ts.map +1 -1
  4. package/dist/constants.d.ts +8 -2
  5. package/dist/constants.d.ts.map +1 -1
  6. package/dist/helpers/data.d.ts +2 -2
  7. package/dist/helpers/data.d.ts.map +1 -1
  8. package/dist/helpers/init_helpers.d.ts.map +1 -1
  9. package/dist/helpers/spaces.d.ts.map +1 -1
  10. package/dist/index.d.ts +1 -1
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +219 -176
  13. package/dist/test/handlers.d.ts +3 -0
  14. package/dist/test/handlers.d.ts.map +1 -0
  15. package/dist/test/mock_eventsource.d.ts +2 -0
  16. package/dist/test/mock_eventsource.d.ts.map +1 -0
  17. package/dist/test/server.d.ts +2 -0
  18. package/dist/test/server.d.ts.map +1 -0
  19. package/dist/test/test_data.d.ts +76 -0
  20. package/dist/test/test_data.d.ts.map +1 -0
  21. package/dist/types.d.ts +4 -3
  22. package/dist/types.d.ts.map +1 -1
  23. package/dist/upload.d.ts +2 -2
  24. package/dist/upload.d.ts.map +1 -1
  25. package/dist/utils/duplicate.d.ts.map +1 -1
  26. package/dist/utils/stream.d.ts +1 -1
  27. package/dist/utils/stream.d.ts.map +1 -1
  28. package/dist/utils/submit.d.ts.map +1 -1
  29. package/dist/utils/upload_files.d.ts.map +1 -1
  30. package/dist/utils/view_api.d.ts.map +1 -1
  31. package/package.json +8 -2
  32. package/src/client.ts +50 -24
  33. package/src/constants.ts +9 -2
  34. package/src/helpers/api_info.ts +4 -4
  35. package/src/helpers/data.ts +46 -28
  36. package/src/helpers/init_helpers.ts +7 -11
  37. package/src/helpers/spaces.ts +8 -3
  38. package/src/index.ts +1 -1
  39. package/src/test/api_info.test.ts +456 -0
  40. package/src/test/data.test.ts +281 -0
  41. package/src/test/handlers.ts +438 -0
  42. package/src/test/init.test.ts +139 -0
  43. package/src/test/init_helpers.test.ts +94 -0
  44. package/src/test/mock_eventsource.ts +11 -0
  45. package/src/test/post_data.test.ts +45 -0
  46. package/src/test/server.ts +6 -0
  47. package/src/test/spaces.test.ts +145 -0
  48. package/src/test/stream.test.ts +67 -0
  49. package/src/test/test_data.ts +557 -0
  50. package/src/test/upload_files.test.ts +42 -0
  51. package/src/test/view_api.test.ts +53 -0
  52. package/src/types.ts +4 -3
  53. package/src/upload.ts +4 -8
  54. package/src/utils/duplicate.ts +20 -3
  55. package/src/utils/handle_blob.ts +1 -1
  56. package/src/utils/post_data.ts +1 -1
  57. package/src/utils/stream.ts +29 -20
  58. package/src/utils/submit.ts +23 -15
  59. package/src/utils/upload_files.ts +11 -6
  60. package/src/utils/view_api.ts +4 -7
  61. package/vite.config.js +7 -0
  62. package/src/utils/client.node-test.ts +0 -173
@@ -0,0 +1,3 @@
1
+ import { RequestHandler } from "msw";
2
+ export declare const handlers: RequestHandler[];
3
+ //# sourceMappingURL=handlers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/test/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,cAAc,EAAE,MAAM,KAAK,CAAC;AAmCzD,eAAO,MAAM,QAAQ,EAAE,cAAc,EAkZpC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=mock_eventsource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock_eventsource.d.ts","sourceRoot":"","sources":["../../src/test/mock_eventsource.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export declare function initialise_server(): any;
2
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/test/server.ts"],"names":[],"mappings":"AAGA,wBAAgB,iBAAiB,IAAI,GAAG,CAEvC"}
@@ -0,0 +1,76 @@
1
+ import { ApiData, ApiInfo, Config, EndpointInfo } from "../types";
2
+ export declare const runtime_response: {
3
+ stage: string;
4
+ hardware: {
5
+ current: string;
6
+ requested: string;
7
+ };
8
+ storage: {
9
+ current: null;
10
+ requested: null;
11
+ };
12
+ gcTimeout: number;
13
+ replicas: {
14
+ current: number;
15
+ requested: number;
16
+ };
17
+ devMode: boolean;
18
+ domains: {
19
+ domain: string;
20
+ isCustom: boolean;
21
+ stage: string;
22
+ }[];
23
+ };
24
+ export declare const transformed_api_info: ApiInfo<ApiData>;
25
+ export declare const response_api_info: ApiInfo<ApiData>;
26
+ export declare const config_response: Config;
27
+ export declare const whoami_response: {
28
+ type: string;
29
+ id: string;
30
+ name: string;
31
+ fullname: string;
32
+ email: string;
33
+ emailVerified: boolean;
34
+ canPay: boolean;
35
+ periodEnd: number;
36
+ isPro: boolean;
37
+ avatarUrl: string;
38
+ orgs: never[];
39
+ auth: {
40
+ type: string;
41
+ accessToken: {
42
+ displayName: string;
43
+ role: string;
44
+ };
45
+ };
46
+ };
47
+ export declare const duplicate_response: {
48
+ url: string;
49
+ };
50
+ export declare const hardware_sleeptime_response: {
51
+ stage: string;
52
+ hardware: {
53
+ current: string;
54
+ requested: string;
55
+ };
56
+ storage: null;
57
+ gcTimeout: number;
58
+ replicas: {
59
+ current: number;
60
+ requested: number;
61
+ };
62
+ devMode: boolean;
63
+ domains: {
64
+ domain: string;
65
+ isCustom: boolean;
66
+ stage: string;
67
+ }[];
68
+ };
69
+ export declare const endpoint_info: EndpointInfo<ApiData>;
70
+ export declare const discussions_response: {
71
+ discussions: never[];
72
+ count: number;
73
+ start: number;
74
+ numClosedDiscussions: number;
75
+ };
76
+ //# sourceMappingURL=test_data.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test_data.d.ts","sourceRoot":"","sources":["../../src/test/test_data.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAElE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;CAuB5B,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,OAAO,CAAC,OAAO,CA6CjD,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,OAAO,CAAC,OAAO,CAiC9C,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,MA4V7B,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;CAmB3B,CAAC;AAEF,eAAO,MAAM,kBAAkB;;CAE9B,CAAC;AAEF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;CAoBvC,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,YAAY,CAAC,OAAO,CA0C/C,CAAC;AAEF,eAAO,MAAM,oBAAoB;;;;;CAKhC,CAAC"}
package/dist/types.d.ts CHANGED
@@ -38,9 +38,9 @@ export interface ApiInfo<T extends ApiData | JsApiData> {
38
38
  export interface BlobRef {
39
39
  path: string[];
40
40
  type: string | undefined;
41
- blob: Blob | false;
41
+ blob: Blob | File | false;
42
42
  }
43
- export type ParamType = string | Buffer | Record<string, any> | any[];
43
+ export type DataType = string | Buffer | Record<string, any> | any[];
44
44
  type event = <K extends EventType>(eventType: K, listener: EventListener<K>) => SubmitReturn;
45
45
  type predict = (endpoint: string | number, data?: unknown[], event_data?: unknown) => Promise<unknown>;
46
46
  export type client_return = {
@@ -48,7 +48,7 @@ export type client_return = {
48
48
  predict: predict;
49
49
  submit: (endpoint: string | number, data: unknown[], event_data?: unknown, trigger_id?: number | null) => SubmitReturn;
50
50
  component_server: (component_id: number, fn_name: string, data: unknown[]) => any;
51
- view_api: (fetch_implementation: typeof fetch) => Promise<ApiInfo<JsApiData>>;
51
+ view_api: (_fetch: typeof fetch) => Promise<ApiInfo<JsApiData>>;
52
52
  };
53
53
  export type SubmitReturn = {
54
54
  on: event;
@@ -74,6 +74,7 @@ export type SpaceStatusCallback = (a: SpaceStatus) => void;
74
74
  export interface Config {
75
75
  auth_required: boolean;
76
76
  analytics_enabled: boolean;
77
+ connect_heartbeat: boolean;
77
78
  auth_message: string;
78
79
  components: any[];
79
80
  css: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/upload.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import type { UploadResponse } from "./types";
2
- export declare function upload(file_data: FileData[], root_url: string, upload_id?: string, max_file_size?: number, upload_fn?: (root_url: string, files: (Blob | File)[], upload_id?: string) => Promise<UploadResponse>): Promise<(FileData | null)[] | null>;
1
+ import type { Client } from "./client";
2
+ export declare function upload(this: Client, file_data: FileData[], root_url: string, upload_id?: string, max_file_size?: number): Promise<(FileData | null)[] | null>;
3
3
  export declare function prepare_files(files: File[], is_stream?: boolean): Promise<FileData[]>;
4
4
  export declare class FileData {
5
5
  path: string;
@@ -1 +1 @@
1
- {"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../src/upload.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAG9C,wBAAsB,MAAM,CAC3B,SAAS,EAAE,QAAQ,EAAE,EACrB,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,MAAM,EACtB,SAAS,GAAE,CACV,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,EACtB,SAAS,CAAC,EAAE,MAAM,KACd,OAAO,CAAC,cAAc,CAAgB,GACzC,OAAO,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,CAsCrC;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;IAClB,QAAQ,CAAC,IAAI;;MAAgC;gBAEjC,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"}
1
+ {"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../src/upload.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEvC,wBAAsB,MAAM,CAC3B,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,QAAQ,EAAE,EACrB,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,CAsCrC;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;IAClB,QAAQ,CAAC,IAAI;;MAAgC;gBAEjC,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"}
@@ -1 +1 @@
1
- {"version":3,"file":"duplicate.d.ts","sourceRoot":"","sources":["../../src/utils/duplicate.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,wBAAsB,SAAS,CAC9B,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,gBAAgB,GACvB,OAAO,CAAC,MAAM,CAAC,CA2EjB"}
1
+ {"version":3,"file":"duplicate.d.ts","sourceRoot":"","sources":["../../src/utils/duplicate.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAGnC,wBAAsB,SAAS,CAC9B,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,gBAAgB,GACvB,OAAO,CAAC,MAAM,CAAC,CAmFjB"}
@@ -2,7 +2,7 @@ import type { Client } from "../client";
2
2
  export declare function open_stream(this: Client): void;
3
3
  export declare function close_stream(stream_status: {
4
4
  open: boolean;
5
- }, event_source: EventSource | null): void;
5
+ }, stream: EventSource | null): void;
6
6
  export declare function apply_diff_stream(pending_diff_streams: Record<string, any[][]>, event_id: string, data: any): void;
7
7
  export declare function apply_diff(obj: any, diff: [string, (number | string)[], any][]): any;
8
8
  //# sourceMappingURL=stream.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../src/utils/stream.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAExC,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAyE9C;AAED,wBAAgB,YAAY,CAC3B,aAAa,EAAE;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,EAChC,YAAY,EAAE,WAAW,GAAG,IAAI,GAC9B,IAAI,CAKN;AAED,wBAAgB,iBAAiB,CAChC,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,EAC7C,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,GAAG,GACP,IAAI,CAcN;AAED,wBAAgB,UAAU,CACzB,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,GACxC,GAAG,CAML"}
1
+ {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../src/utils/stream.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAExC,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAkF9C;AAED,wBAAgB,YAAY,CAC3B,aAAa,EAAE;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,EAChC,MAAM,EAAE,WAAW,GAAG,IAAI,GACxB,IAAI,CAKN;AAED,wBAAgB,iBAAiB,CAChC,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,EAC7C,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,GAAG,GACP,IAAI,CAcN;AAED,wBAAgB,UAAU,CACzB,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,GACxC,GAAG,CAML"}
@@ -1 +1 @@
1
- {"version":3,"file":"submit.d.ts","sourceRoot":"","sources":["../../src/utils/submit.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAKX,YAAY,EAQZ,MAAM,UAAU,CAAC;AAOlB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,wBAAgB,MAAM,CACrB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GAAG,MAAM,EACzB,IAAI,EAAE,OAAO,EAAE,EACf,UAAU,CAAC,EAAE,OAAO,EACpB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,GACxB,YAAY,CAinBd"}
1
+ {"version":3,"file":"submit.d.ts","sourceRoot":"","sources":["../../src/utils/submit.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAKX,YAAY,EAQZ,MAAM,UAAU,CAAC;AAOlB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,wBAAgB,MAAM,CACrB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GAAG,MAAM,EACzB,IAAI,EAAE,OAAO,EAAE,EACf,UAAU,CAAC,EAAE,OAAO,EACpB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,GACxB,YAAY,CAynBd"}
@@ -1 +1 @@
1
- {"version":3,"file":"upload_files.d.ts","sourceRoot":"","sources":["../../src/utils/upload_files.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC;AAEjC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/C,wBAAsB,YAAY,CACjC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,EACtB,SAAS,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,cAAc,CAAC,CAoCzB"}
1
+ {"version":3,"file":"upload_files.d.ts","sourceRoot":"","sources":["../../src/utils/upload_files.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC;AAEjC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/C,wBAAsB,YAAY,CACjC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,EACtB,SAAS,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,cAAc,CAAC,CAyCzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"view_api.d.ts","sourceRoot":"","sources":["../../src/utils/view_api.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAInC,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CA8DzD"}
1
+ {"version":3,"file":"view_api.d.ts","sourceRoot":"","sources":["../../src/utils/view_api.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAInC,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CA2DzD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gradio/client",
3
- "version": "0.17.0",
3
+ "version": "0.18.0",
4
4
  "description": "Gradio API client",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -13,7 +13,10 @@
13
13
  "./package.json": "./package.json"
14
14
  },
15
15
  "dependencies": {
16
+ "@types/eventsource": "^1.1.15",
16
17
  "bufferutil": "^4.0.7",
18
+ "eventsource": "^2.0.2",
19
+ "msw": "^2.2.1",
17
20
  "semiver": "^1.1.0",
18
21
  "typescript": "^5.0.0",
19
22
  "ws": "^8.13.0"
@@ -29,6 +32,9 @@
29
32
  "scripts": {
30
33
  "bundle": "vite build --ssr",
31
34
  "generate_types": "tsc",
32
- "build": "pnpm bundle && pnpm generate_types"
35
+ "build": "pnpm bundle && pnpm generate_types",
36
+ "test": "pnpm test:client && pnpm test:client:node",
37
+ "test:client": "vitest run -c vite.config.js",
38
+ "test:client:node": "TEST_MODE=node vitest run -c vite.config.js"
33
39
  }
34
40
  }
package/src/client.ts CHANGED
@@ -14,6 +14,7 @@ import type {
14
14
  } from "./types";
15
15
  import { view_api } from "./utils/view_api";
16
16
  import { upload_files } from "./utils/upload_files";
17
+ import { upload, FileData } from "./upload";
17
18
  import { handle_blob } from "./utils/handle_blob";
18
19
  import { post_data } from "./utils/post_data";
19
20
  import { predict } from "./utils/predict";
@@ -27,6 +28,7 @@ import {
27
28
  } from "./helpers/init_helpers";
28
29
  import { check_space_status } from "./helpers/spaces";
29
30
  import { open_stream } from "./utils/stream";
31
+ import { API_INFO_ERROR_MSG, CONFIG_ERROR_MSG } from "./constants";
30
32
 
31
33
  export class NodeBlob extends Blob {
32
34
  constructor(blobParts?: BlobPart[], options?: BlobPropertyBag) {
@@ -49,22 +51,27 @@ export class Client {
49
51
  stream_status = { open: false };
50
52
  pending_stream_messages: Record<string, any[][]> = {};
51
53
  pending_diff_streams: Record<string, any[][]> = {};
52
- event_callbacks: Record<string, () => Promise<void>> = {};
54
+ event_callbacks: Record<string, (data?: unknown) => Promise<void>> = {};
53
55
  unclosed_events: Set<string> = new Set();
54
56
  heartbeat_event: EventSource | null = null;
55
57
 
56
- fetch_implementation(
57
- input: RequestInfo | URL,
58
- init?: RequestInit
59
- ): Promise<Response> {
58
+ fetch(input: RequestInfo | URL, init?: RequestInit): Promise<Response> {
60
59
  return fetch(input, init);
61
60
  }
62
61
 
63
- eventSource_factory(url: URL): EventSource | null {
64
- if (typeof window !== undefined && typeof EventSource !== "undefined") {
62
+ stream_factory(url: URL): EventSource | null {
63
+ if (typeof window === "undefined" || typeof EventSource === "undefined") {
64
+ import("eventsource")
65
+ .then((EventSourceModule) => {
66
+ return new EventSourceModule.default(url.toString());
67
+ })
68
+ .catch((error) =>
69
+ console.error("Failed to load EventSource module:", error)
70
+ );
71
+ } else {
65
72
  return new EventSource(url.toString());
66
73
  }
67
- return null; // todo: polyfill eventsource for node envs
74
+ return null;
68
75
  }
69
76
 
70
77
  view_api: () => Promise<ApiInfo<JsApiData>>;
@@ -73,6 +80,12 @@ export class Client {
73
80
  files: (Blob | File)[],
74
81
  upload_id?: string
75
82
  ) => Promise<UploadResponse>;
83
+ upload: (
84
+ file_data: FileData[],
85
+ root_url: string,
86
+ upload_id?: string,
87
+ max_file_size?: number
88
+ ) => Promise<(FileData | null)[] | null>;
76
89
  handle_blob: (
77
90
  endpoint: string,
78
91
  data: unknown[],
@@ -95,7 +108,7 @@ export class Client {
95
108
  event_data?: unknown
96
109
  ) => Promise<unknown>;
97
110
  open_stream: () => void;
98
- resolve_config: (endpoint: string) => Promise<Config | undefined>;
111
+ private resolve_config: (endpoint: string) => Promise<Config | undefined>;
99
112
  constructor(app_reference: string, options: ClientOptions = {}) {
100
113
  this.app_reference = app_reference;
101
114
  this.options = options;
@@ -108,6 +121,7 @@ export class Client {
108
121
  this.predict = predict.bind(this);
109
122
  this.open_stream = open_stream.bind(this);
110
123
  this.resolve_config = resolve_config.bind(this);
124
+ this.upload = upload.bind(this);
111
125
  }
112
126
 
113
127
  private async init(): Promise<void> {
@@ -125,12 +139,12 @@ export class Client {
125
139
  await this._resolve_config().then(async ({ config }) => {
126
140
  if (config) {
127
141
  this.config = config;
128
- if (this.config) {
142
+ if (this.config && this.config.connect_heartbeat) {
129
143
  // connect to the heartbeat endpoint via GET request
130
144
  const heartbeat_url = new URL(
131
145
  `${this.config.root}/heartbeat/${this.session_hash}`
132
146
  );
133
- this.heartbeat_event = this.eventSource_factory(heartbeat_url); // Just connect to the endpoint without parsing the response. Ref: https://github.com/gradio-app/gradio/pull/7974#discussion_r1557717540
147
+ this.heartbeat_event = this.stream_factory(heartbeat_url); // Just connect to the endpoint without parsing the response. Ref: https://github.com/gradio-app/gradio/pull/7974#discussion_r1557717540
134
148
 
135
149
  if (this.config.space_id && this.options.hf_token) {
136
150
  this.jwt = await get_jwt(
@@ -142,7 +156,7 @@ export class Client {
142
156
  }
143
157
  });
144
158
  } catch (e) {
145
- throw Error(`Could not resolve config: ${e}`);
159
+ throw Error(CONFIG_ERROR_MSG + (e as Error).message);
146
160
  }
147
161
 
148
162
  this.api_info = await this.view_api();
@@ -182,7 +196,7 @@ export class Client {
182
196
  config = await this.resolve_config(`${http_protocol}//${host}`);
183
197
 
184
198
  if (!config) {
185
- throw new Error("Could not resolve app config");
199
+ throw new Error(CONFIG_ERROR_MSG);
186
200
  }
187
201
 
188
202
  return this.config_success(config);
@@ -224,7 +238,7 @@ export class Client {
224
238
  try {
225
239
  this.api_info = await this.view_api();
226
240
  } catch (e) {
227
- console.error(`Could not get API details: ${(e as Error).message}`);
241
+ console.error(API_INFO_ERROR_MSG + (e as Error).message);
228
242
  }
229
243
 
230
244
  return this.prepare_return_obj();
@@ -237,7 +251,7 @@ export class Client {
237
251
  try {
238
252
  this.config = await this._resolve_config();
239
253
  if (!this.config) {
240
- throw new Error("Could not resolve app config");
254
+ throw new Error(CONFIG_ERROR_MSG);
241
255
  }
242
256
 
243
257
  const _config = await this.config_success(this.config);
@@ -263,7 +277,7 @@ export class Client {
263
277
  data: unknown[] | { binary: boolean; data: Record<string, any> }
264
278
  ): Promise<unknown> {
265
279
  if (!this.config) {
266
- throw new Error("Could not resolve app config");
280
+ throw new Error(CONFIG_ERROR_MSG);
267
281
  }
268
282
 
269
283
  const headers: {
@@ -315,14 +329,11 @@ export class Client {
315
329
  }
316
330
 
317
331
  try {
318
- const response = await this.fetch_implementation(
319
- `${root_url}/component_server/`,
320
- {
321
- method: "POST",
322
- body: body,
323
- headers
324
- }
325
- );
332
+ const response = await this.fetch(`${root_url}/component_server/`, {
333
+ method: "POST",
334
+ body: body,
335
+ headers
336
+ });
326
337
 
327
338
  if (!response.ok) {
328
339
  throw new Error(
@@ -363,4 +374,19 @@ export async function client(
363
374
  return await Client.connect(app_reference, options);
364
375
  }
365
376
 
377
+ /**
378
+ * @deprecated This method will be removed in v1.0. Use `Client.duplicate()` instead.
379
+ * Creates a duplicate of a space and returns a client instance for the duplicated space.
380
+ *
381
+ * @param {string} app_reference - The reference or URL to a Gradio space or app to duplicate.
382
+ * @param {DuplicateOptions} options - Configuration options for the client.
383
+ * @returns {Promise<Client>} A promise that resolves to a `Client` instance.
384
+ */
385
+ export async function duplicate_space(
386
+ app_reference: string,
387
+ options: DuplicateOptions
388
+ ): Promise<Client> {
389
+ return await Client.duplicate(app_reference, options);
390
+ }
391
+
366
392
  export type ClientInstance = Client;
package/src/constants.ts CHANGED
@@ -9,6 +9,8 @@ export const UPLOAD_URL = "upload";
9
9
  export const LOGIN_URL = "login";
10
10
  export const CONFIG_URL = "config";
11
11
  export const API_INFO_URL = "info";
12
+ export const RUNTIME_URL = "runtime";
13
+ export const SLEEPTIME_URL = "sleeptime";
12
14
  export const RAW_API_INFO_URL = "info?serialize=False";
13
15
  export const SPACE_FETCHER_URL =
14
16
  "https://gradio-space-api-fetcher-v2.hf.space/api";
@@ -16,5 +18,10 @@ export const RESET_URL = "reset";
16
18
  export const SPACE_URL = "https://hf.space/{}";
17
19
 
18
20
  // messages
19
- export const QUEUE_FULL_MSG = "This application is too busy. Keep trying!";
20
- export const BROKEN_CONNECTION_MSG = "Connection errored out.";
21
+ export const QUEUE_FULL_MSG =
22
+ "This application is currently busy. Please try again. ";
23
+ export const BROKEN_CONNECTION_MSG = "Connection errored out. ";
24
+ export const CONFIG_ERROR_MSG = "Could not resolve app config. ";
25
+ export const SPACE_STATUS_ERROR_MSG = "Could not get space status. ";
26
+ export const API_INFO_ERROR_MSG = "Could not get API info. ";
27
+ export const SPACE_METADATA_ERROR_MSG = "Space metadata could not be loaded. ";
@@ -29,16 +29,16 @@ export async function process_endpoint(
29
29
  { headers }
30
30
  );
31
31
 
32
- if (res.status !== 200)
33
- throw new Error("Space metadata could not be loaded.");
34
32
  const _host = (await res.json()).host;
35
33
 
36
34
  return {
37
35
  space_id: app_reference,
38
36
  ...determine_protocol(_host)
39
37
  };
40
- } catch (e: any) {
41
- throw new Error("Space metadata could not be loaded." + e.message);
38
+ } catch (e) {
39
+ throw new Error(
40
+ "Space metadata could not be loaded. " + (e as Error).message
41
+ );
42
42
  }
43
43
  }
44
44
 
@@ -5,7 +5,7 @@ import type {
5
5
  Config,
6
6
  EndpointInfo,
7
7
  JsApiData,
8
- ParamType
8
+ DataType
9
9
  } from "../types";
10
10
 
11
11
  export function update_object(
@@ -31,22 +31,22 @@ export function update_object(
31
31
  }
32
32
 
33
33
  export async function walk_and_store_blobs(
34
- param: ParamType,
34
+ data: DataType,
35
35
  type: string | undefined = undefined,
36
36
  path: string[] = [],
37
37
  root = false,
38
38
  endpoint_info: EndpointInfo<ApiData | JsApiData> | undefined = undefined
39
39
  ): Promise<BlobRef[]> {
40
- if (Array.isArray(param)) {
40
+ if (Array.isArray(data)) {
41
41
  let blob_refs: BlobRef[] = [];
42
42
 
43
43
  await Promise.all(
44
- param.map(async (item) => {
44
+ data.map(async (item) => {
45
45
  let new_path = path.slice();
46
46
  new_path.push(item);
47
47
 
48
48
  const array_refs = await walk_and_store_blobs(
49
- param[item],
49
+ data[item],
50
50
  root ? endpoint_info?.parameters[item]?.component || undefined : type,
51
51
  new_path,
52
52
  false,
@@ -58,44 +58,62 @@ export async function walk_and_store_blobs(
58
58
  );
59
59
 
60
60
  return blob_refs;
61
- } else if (globalThis.Buffer && param instanceof globalThis.Buffer) {
61
+ } else if (
62
+ (globalThis.Buffer && data instanceof globalThis.Buffer) ||
63
+ data instanceof Blob
64
+ ) {
62
65
  const is_image = type === "Image";
63
66
  return [
64
67
  {
65
68
  path: path,
66
- blob: is_image ? false : new NodeBlob([param]),
69
+ blob: is_image ? false : new NodeBlob([data]),
67
70
  type
68
71
  }
69
72
  ];
70
- } else if (typeof param === "object") {
73
+ } else if (typeof data === "object" && data !== null) {
71
74
  let blob_refs: BlobRef[] = [];
72
- for (let key in param) {
73
- if (param.hasOwnProperty(key)) {
74
- let new_path = path.slice();
75
- new_path.push(key);
76
- blob_refs = blob_refs.concat(
77
- await walk_and_store_blobs(
78
- // @ts-ignore
79
- param[key],
80
- undefined,
81
- new_path,
82
- false,
83
- endpoint_info
84
- )
85
- );
86
- }
75
+ for (const key of Object.keys(data) as (keyof typeof data)[]) {
76
+ const new_path = [...path, key];
77
+ const value = data[key];
78
+
79
+ blob_refs = blob_refs.concat(
80
+ await walk_and_store_blobs(
81
+ value,
82
+ undefined,
83
+ new_path,
84
+ false,
85
+ endpoint_info
86
+ )
87
+ );
88
+ }
89
+
90
+ if (
91
+ !blob_refs.length &&
92
+ !(
93
+ data instanceof Blob ||
94
+ data instanceof ArrayBuffer ||
95
+ data instanceof Uint8Array
96
+ )
97
+ ) {
98
+ return [
99
+ {
100
+ path: path,
101
+ blob: new NodeBlob([JSON.stringify(data)]),
102
+ type: typeof data
103
+ }
104
+ ];
87
105
  }
88
106
  return blob_refs;
89
107
  }
108
+
90
109
  return [];
91
110
  }
92
111
 
93
112
  export function skip_queue(id: number, config: Config): boolean {
94
- return (
95
- !(config?.dependencies?.[id]?.queue === null
96
- ? config.enable_queue
97
- : config?.dependencies?.[id]?.queue) || false
98
- );
113
+ if (config?.dependencies?.[id]?.queue !== null) {
114
+ return !config.dependencies[id].queue;
115
+ }
116
+ return !config.enable_queue;
99
117
  }
100
118
 
101
119
  // todo: add jsdoc for this function
@@ -1,5 +1,5 @@
1
1
  import type { Config } from "../types";
2
- import { CONFIG_URL } from "../constants";
2
+ import { CONFIG_ERROR_MSG, CONFIG_URL } from "../constants";
3
3
  import { Client } from "..";
4
4
 
5
5
  /**
@@ -38,7 +38,6 @@ export async function get_jwt(
38
38
 
39
39
  return jwt || false;
40
40
  } catch (e) {
41
- console.error(e);
42
41
  return false;
43
42
  }
44
43
  }
@@ -74,14 +73,11 @@ export async function resolve_config(
74
73
  const config = window.gradio_config;
75
74
  let config_root = resolve_root(endpoint, config.root, false);
76
75
  config.root = config_root;
77
- return { ...config, path };
76
+ return { ...config, path } as Config;
78
77
  } else if (endpoint) {
79
- const response = await this.fetch_implementation(
80
- `${endpoint}/${CONFIG_URL}`,
81
- {
82
- headers
83
- }
84
- );
78
+ const response = await this.fetch(`${endpoint}/${CONFIG_URL}`, {
79
+ headers
80
+ });
85
81
 
86
82
  if (response?.status === 200) {
87
83
  let config = await response.json();
@@ -89,10 +85,10 @@ export async function resolve_config(
89
85
  config.root = endpoint;
90
86
  return config;
91
87
  }
92
- throw new Error("Could not get config.");
88
+ throw new Error(CONFIG_ERROR_MSG);
93
89
  }
94
90
 
95
- throw new Error("No config or app endpoint found");
91
+ throw new Error(CONFIG_ERROR_MSG);
96
92
  }
97
93
 
98
94
  export function determine_protocol(endpoint: string): {