@gradio/client 0.19.4 → 0.20.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 +14 -0
- package/README.md +8 -1
- package/dist/client.d.ts +4 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/constants.d.ts +4 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/helpers/api_info.d.ts +1 -0
- package/dist/helpers/api_info.d.ts.map +1 -1
- package/dist/helpers/data.d.ts.map +1 -1
- package/dist/helpers/init_helpers.d.ts +4 -1
- package/dist/helpers/init_helpers.d.ts.map +1 -1
- package/dist/index.js +229 -61
- package/dist/test/handlers.d.ts.map +1 -1
- package/dist/test/test_data.d.ts.map +1 -1
- package/dist/types.d.ts +6 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/duplicate.d.ts.map +1 -1
- package/dist/utils/post_data.d.ts.map +1 -1
- package/dist/utils/predict.d.ts.map +1 -1
- package/dist/utils/submit.d.ts.map +1 -1
- package/dist/utils/upload_files.d.ts.map +1 -1
- package/dist/utils/view_api.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/client.ts +70 -28
- package/src/constants.ts +5 -0
- package/src/helpers/api_info.ts +44 -17
- package/src/helpers/data.ts +3 -2
- package/src/helpers/init_helpers.ts +98 -9
- package/src/test/api_info.test.ts +69 -4
- package/src/test/data.test.ts +4 -4
- package/src/test/handlers.ts +249 -2
- package/src/test/init.test.ts +2 -2
- package/src/test/init_helpers.test.ts +53 -1
- package/src/test/test_data.ts +3 -0
- package/src/types.ts +6 -0
- package/src/utils/duplicate.ts +27 -2
- package/src/utils/post_data.ts +2 -1
- package/src/utils/predict.ts +4 -2
- package/src/utils/submit.ts +37 -8
- package/src/utils/upload_files.ts +2 -1
- package/src/utils/view_api.ts +7 -4
package/dist/index.js
CHANGED
@@ -10,7 +10,9 @@ function semiver(a, b, bool) {
|
|
10
10
|
b = b.split(".");
|
11
11
|
return fn(a[0], b[0]) || fn(a[1], b[1]) || (b[2] = b.slice(2).join("."), bool = /[.-]/.test(a[2] = a.slice(2).join(".")), bool == /[.-]/.test(b[2]) ? fn(a[2], b[2]) : bool ? -1 : 1);
|
12
12
|
}
|
13
|
+
const HOST_URL = "host";
|
13
14
|
const UPLOAD_URL = "upload";
|
15
|
+
const LOGIN_URL = "login";
|
14
16
|
const CONFIG_URL = "config";
|
15
17
|
const API_INFO_URL = "info";
|
16
18
|
const RUNTIME_URL = "runtime";
|
@@ -22,17 +24,22 @@ const CONFIG_ERROR_MSG = "Could not resolve app config. ";
|
|
22
24
|
const SPACE_STATUS_ERROR_MSG = "Could not get space status. ";
|
23
25
|
const API_INFO_ERROR_MSG = "Could not get API info. ";
|
24
26
|
const SPACE_METADATA_ERROR_MSG = "Space metadata could not be loaded. ";
|
27
|
+
const INVALID_URL_MSG = "Invalid URL. A full URL path is required.";
|
28
|
+
const UNAUTHORIZED_MSG = "Not authorized to access this space. ";
|
29
|
+
const INVALID_CREDENTIALS_MSG = "Invalid credentials. Could not login. ";
|
30
|
+
const MISSING_CREDENTIALS_MSG = "Login credentials are required to access this space.";
|
25
31
|
function resolve_root(base_url, root_path, prioritize_base) {
|
26
32
|
if (root_path.startsWith("http://") || root_path.startsWith("https://")) {
|
27
33
|
return prioritize_base ? base_url : root_path;
|
28
34
|
}
|
29
35
|
return base_url + root_path;
|
30
36
|
}
|
31
|
-
async function get_jwt(space, token) {
|
37
|
+
async function get_jwt(space, token, cookies) {
|
32
38
|
try {
|
33
39
|
const r = await fetch(`https://huggingface.co/api/spaces/${space}/jwt`, {
|
34
40
|
headers: {
|
35
|
-
Authorization: `Bearer ${token}
|
41
|
+
Authorization: `Bearer ${token}`,
|
42
|
+
...cookies ? { Cookie: cookies } : {}
|
36
43
|
}
|
37
44
|
});
|
38
45
|
const jwt = (await r.json()).token;
|
@@ -43,9 +50,9 @@ async function get_jwt(space, token) {
|
|
43
50
|
}
|
44
51
|
function map_names_to_ids(fns) {
|
45
52
|
let apis = {};
|
46
|
-
fns.forEach(({ api_name }
|
53
|
+
fns.forEach(({ api_name, id }) => {
|
47
54
|
if (api_name)
|
48
|
-
apis[api_name] =
|
55
|
+
apis[api_name] = id;
|
49
56
|
});
|
50
57
|
return apis;
|
51
58
|
}
|
@@ -59,22 +66,74 @@ async function resolve_config(endpoint) {
|
|
59
66
|
config.root = config_root;
|
60
67
|
return { ...config, path };
|
61
68
|
} else if (endpoint) {
|
62
|
-
const
|
63
|
-
|
69
|
+
const config_url = join_urls(endpoint, CONFIG_URL);
|
70
|
+
const response = await this.fetch(config_url, {
|
71
|
+
headers,
|
72
|
+
credentials: "include"
|
64
73
|
});
|
74
|
+
if ((response == null ? void 0 : response.status) === 401 && !this.options.auth) {
|
75
|
+
throw new Error(MISSING_CREDENTIALS_MSG);
|
76
|
+
} else if ((response == null ? void 0 : response.status) === 401 && this.options.auth) {
|
77
|
+
throw new Error(INVALID_CREDENTIALS_MSG);
|
78
|
+
}
|
65
79
|
if ((response == null ? void 0 : response.status) === 200) {
|
66
80
|
let config = await response.json();
|
67
81
|
config.path = config.path ?? "";
|
68
82
|
config.root = endpoint;
|
69
83
|
return config;
|
84
|
+
} else if ((response == null ? void 0 : response.status) === 401) {
|
85
|
+
throw new Error(UNAUTHORIZED_MSG);
|
70
86
|
}
|
71
87
|
throw new Error(CONFIG_ERROR_MSG);
|
72
88
|
}
|
73
89
|
throw new Error(CONFIG_ERROR_MSG);
|
74
90
|
}
|
91
|
+
async function resolve_cookies() {
|
92
|
+
const { http_protocol, host } = await process_endpoint(
|
93
|
+
this.app_reference,
|
94
|
+
this.options.hf_token
|
95
|
+
);
|
96
|
+
try {
|
97
|
+
if (this.options.auth) {
|
98
|
+
const cookie_header = await get_cookie_header(
|
99
|
+
http_protocol,
|
100
|
+
host,
|
101
|
+
this.options.auth,
|
102
|
+
this.fetch,
|
103
|
+
this.options.hf_token
|
104
|
+
);
|
105
|
+
if (cookie_header)
|
106
|
+
this.set_cookies(cookie_header);
|
107
|
+
}
|
108
|
+
} catch (e) {
|
109
|
+
throw Error(e.message);
|
110
|
+
}
|
111
|
+
}
|
112
|
+
async function get_cookie_header(http_protocol, host, auth, _fetch, hf_token) {
|
113
|
+
const formData = new FormData();
|
114
|
+
formData.append("username", auth == null ? void 0 : auth[0]);
|
115
|
+
formData.append("password", auth == null ? void 0 : auth[1]);
|
116
|
+
let headers = {};
|
117
|
+
if (hf_token) {
|
118
|
+
headers.Authorization = `Bearer ${hf_token}`;
|
119
|
+
}
|
120
|
+
const res = await _fetch(`${http_protocol}//${host}/${LOGIN_URL}`, {
|
121
|
+
headers,
|
122
|
+
method: "POST",
|
123
|
+
body: formData,
|
124
|
+
credentials: "include"
|
125
|
+
});
|
126
|
+
if (res.status === 200) {
|
127
|
+
return res.headers.get("set-cookie");
|
128
|
+
} else if (res.status === 401) {
|
129
|
+
throw new Error(INVALID_CREDENTIALS_MSG);
|
130
|
+
} else {
|
131
|
+
throw new Error(SPACE_METADATA_ERROR_MSG);
|
132
|
+
}
|
133
|
+
}
|
75
134
|
function determine_protocol(endpoint) {
|
76
135
|
if (endpoint.startsWith("http")) {
|
77
|
-
const { protocol, host } = new URL(endpoint);
|
136
|
+
const { protocol, host, pathname } = new URL(endpoint);
|
78
137
|
if (host.endsWith("hf.space")) {
|
79
138
|
return {
|
80
139
|
ws_protocol: "wss",
|
@@ -85,7 +144,7 @@ function determine_protocol(endpoint) {
|
|
85
144
|
return {
|
86
145
|
ws_protocol: protocol === "https:" ? "wss" : "ws",
|
87
146
|
http_protocol: protocol,
|
88
|
-
host
|
147
|
+
host: host + (pathname !== "/" ? pathname : "")
|
89
148
|
};
|
90
149
|
} else if (endpoint.startsWith("file:")) {
|
91
150
|
return {
|
@@ -101,18 +160,29 @@ function determine_protocol(endpoint) {
|
|
101
160
|
host: endpoint
|
102
161
|
};
|
103
162
|
}
|
104
|
-
const
|
163
|
+
const parse_and_set_cookies = (cookie_header) => {
|
164
|
+
let cookies = [];
|
165
|
+
const parts = cookie_header.split(/,(?=\s*[^\s=;]+=[^\s=;]+)/);
|
166
|
+
parts.forEach((cookie) => {
|
167
|
+
const [cookie_name, cookie_value] = cookie.split(";")[0].split("=");
|
168
|
+
if (cookie_name && cookie_value) {
|
169
|
+
cookies.push(`${cookie_name.trim()}=${cookie_value.trim()}`);
|
170
|
+
}
|
171
|
+
});
|
172
|
+
return cookies;
|
173
|
+
};
|
174
|
+
const RE_SPACE_NAME = /^[a-zA-Z0-9_\-\.]+\/[a-zA-Z0-9_\-\.]+$/;
|
105
175
|
const RE_SPACE_DOMAIN = /.*hf\.space\/{0,1}$/;
|
106
176
|
async function process_endpoint(app_reference, hf_token) {
|
107
177
|
const headers = {};
|
108
178
|
if (hf_token) {
|
109
179
|
headers.Authorization = `Bearer ${hf_token}`;
|
110
180
|
}
|
111
|
-
const _app_reference = app_reference.trim();
|
181
|
+
const _app_reference = app_reference.trim().replace(/\/$/, "");
|
112
182
|
if (RE_SPACE_NAME.test(_app_reference)) {
|
113
183
|
try {
|
114
184
|
const res = await fetch(
|
115
|
-
`https://huggingface.co/api/spaces/${_app_reference}
|
185
|
+
`https://huggingface.co/api/spaces/${_app_reference}/${HOST_URL}`,
|
116
186
|
{ headers }
|
117
187
|
);
|
118
188
|
const _host = (await res.json()).host;
|
@@ -121,9 +191,7 @@ async function process_endpoint(app_reference, hf_token) {
|
|
121
191
|
...determine_protocol(_host)
|
122
192
|
};
|
123
193
|
} catch (e) {
|
124
|
-
throw new Error(
|
125
|
-
"Space metadata could not be loaded. " + e.message
|
126
|
-
);
|
194
|
+
throw new Error(SPACE_METADATA_ERROR_MSG);
|
127
195
|
}
|
128
196
|
}
|
129
197
|
if (RE_SPACE_DOMAIN.test(_app_reference)) {
|
@@ -140,6 +208,17 @@ async function process_endpoint(app_reference, hf_token) {
|
|
140
208
|
...determine_protocol(_app_reference)
|
141
209
|
};
|
142
210
|
}
|
211
|
+
const join_urls = (...urls) => {
|
212
|
+
try {
|
213
|
+
return urls.reduce((base_url, part) => {
|
214
|
+
base_url = base_url.replace(/\/+$/, "");
|
215
|
+
part = part.replace(/^\/+/, "");
|
216
|
+
return new URL(part, base_url + "/").toString();
|
217
|
+
});
|
218
|
+
} catch (e) {
|
219
|
+
throw new Error(INVALID_URL_MSG);
|
220
|
+
}
|
221
|
+
};
|
143
222
|
function transform_api_info(api_info, config, api_map) {
|
144
223
|
const transformed_info = {
|
145
224
|
named_endpoints: {},
|
@@ -150,13 +229,13 @@ function transform_api_info(api_info, config, api_map) {
|
|
150
229
|
transformed_info[category] = {};
|
151
230
|
Object.entries(api_info[category]).forEach(
|
152
231
|
([endpoint, { parameters, returns }]) => {
|
153
|
-
var _a, _b;
|
154
|
-
const dependencyIndex = config.dependencies.
|
232
|
+
var _a, _b, _c, _d;
|
233
|
+
const dependencyIndex = ((_a = config.dependencies.find(
|
155
234
|
(dep) => dep.api_name === endpoint || dep.api_name === endpoint.replace("/", "")
|
156
|
-
) || api_map[endpoint.replace("/", "")] || -1;
|
157
|
-
const dependencyTypes = dependencyIndex !== -1 ? config.dependencies
|
158
|
-
if (dependencyIndex !== -1 && ((
|
159
|
-
const components = config.dependencies
|
235
|
+
)) == null ? void 0 : _a.id) || api_map[endpoint.replace("/", "")] || -1;
|
236
|
+
const dependencyTypes = dependencyIndex !== -1 ? (_b = config.dependencies.find((dep) => dep.id == dependencyIndex)) == null ? void 0 : _b.types : { continuous: false, generator: false };
|
237
|
+
if (dependencyIndex !== -1 && ((_d = (_c = config.dependencies.find((dep) => dep.id == dependencyIndex)) == null ? void 0 : _c.inputs) == null ? void 0 : _d.length) !== parameters.length) {
|
238
|
+
const components = config.dependencies.find((dep) => dep.id == dependencyIndex).inputs.map(
|
160
239
|
(input) => {
|
161
240
|
var _a2;
|
162
241
|
return (_a2 = config.components.find((c) => c.id === input)) == null ? void 0 : _a2.type;
|
@@ -177,6 +256,7 @@ function transform_api_info(api_info, config, api_map) {
|
|
177
256
|
}
|
178
257
|
});
|
179
258
|
} catch (e) {
|
259
|
+
console.error(e);
|
180
260
|
}
|
181
261
|
}
|
182
262
|
const transform_type = (data, component, serializer, signature_type) => ({
|
@@ -324,7 +404,8 @@ function handle_message(data, last_status) {
|
|
324
404
|
message: !data.success ? data.output.error : void 0,
|
325
405
|
stage: data.success ? "complete" : "error",
|
326
406
|
code: data.code,
|
327
|
-
progress_data: data.progress_data
|
407
|
+
progress_data: data.progress_data,
|
408
|
+
changed_state_ids: data.success ? data.output.changed_state_ids : void 0
|
328
409
|
},
|
329
410
|
data: data.success ? data.output : null
|
330
411
|
};
|
@@ -404,11 +485,14 @@ async function view_api() {
|
|
404
485
|
serialize: false,
|
405
486
|
config: JSON.stringify(config)
|
406
487
|
}),
|
407
|
-
headers
|
488
|
+
headers,
|
489
|
+
credentials: "include"
|
408
490
|
});
|
409
491
|
} else {
|
410
|
-
|
411
|
-
|
492
|
+
const url = join_urls(config.root, API_INFO_URL);
|
493
|
+
response = await this.fetch(url, {
|
494
|
+
headers,
|
495
|
+
credentials: "include"
|
412
496
|
});
|
413
497
|
}
|
414
498
|
if (!response.ok) {
|
@@ -446,7 +530,8 @@ async function upload_files(root_url, files, upload_id) {
|
|
446
530
|
response = await this.fetch(upload_url, {
|
447
531
|
method: "POST",
|
448
532
|
body: formData,
|
449
|
-
headers
|
533
|
+
headers,
|
534
|
+
credentials: "include"
|
450
535
|
});
|
451
536
|
} catch (e) {
|
452
537
|
throw new Error(BROKEN_CONNECTION_MSG + e.message);
|
@@ -603,8 +688,9 @@ async function walk_and_store_blobs(data, type = void 0, path = [], root = false
|
|
603
688
|
}
|
604
689
|
function skip_queue(id, config) {
|
605
690
|
var _a, _b;
|
606
|
-
|
607
|
-
|
691
|
+
let fn_queue = (_b = (_a = config == null ? void 0 : config.dependencies) == null ? void 0 : _a.find((dep) => dep.id == id)) == null ? void 0 : _b.queue;
|
692
|
+
if (fn_queue != null) {
|
693
|
+
return !fn_queue;
|
608
694
|
}
|
609
695
|
return !config.enable_queue;
|
610
696
|
}
|
@@ -660,7 +746,8 @@ async function post_data(url, body, additional_headers) {
|
|
660
746
|
var response = await this.fetch(url, {
|
661
747
|
method: "POST",
|
662
748
|
body: JSON.stringify(body),
|
663
|
-
headers: { ...headers, ...additional_headers }
|
749
|
+
headers: { ...headers, ...additional_headers },
|
750
|
+
credentials: "include"
|
664
751
|
});
|
665
752
|
} catch (e) {
|
666
753
|
return [{ error: BROKEN_CONNECTION_MSG }, 500];
|
@@ -684,10 +771,12 @@ async function predict(endpoint, data) {
|
|
684
771
|
throw new Error("Could not resolve app config");
|
685
772
|
}
|
686
773
|
if (typeof endpoint === "number") {
|
687
|
-
dependency = this.config.dependencies
|
774
|
+
dependency = this.config.dependencies.find((dep) => dep.id == endpoint);
|
688
775
|
} else {
|
689
776
|
const trimmed_endpoint = endpoint.replace(/^\//, "");
|
690
|
-
dependency = this.config.dependencies
|
777
|
+
dependency = this.config.dependencies.find(
|
778
|
+
(dep) => dep.id == this.api_map[trimmed_endpoint]
|
779
|
+
);
|
691
780
|
}
|
692
781
|
if (dependency == null ? void 0 : dependency.types.continuous) {
|
693
782
|
throw new Error(
|
@@ -875,15 +964,31 @@ const hardware_types = [
|
|
875
964
|
"h100x8"
|
876
965
|
];
|
877
966
|
async function duplicate(app_reference, options) {
|
878
|
-
const { hf_token, private: _private, hardware, timeout } = options;
|
967
|
+
const { hf_token, private: _private, hardware, timeout, auth } = options;
|
879
968
|
if (hardware && !hardware_types.includes(hardware)) {
|
880
969
|
throw new Error(
|
881
970
|
`Invalid hardware type provided. Valid types are: ${hardware_types.map((v) => `"${v}"`).join(",")}.`
|
882
971
|
);
|
883
972
|
}
|
973
|
+
const { http_protocol, host } = await process_endpoint(
|
974
|
+
app_reference,
|
975
|
+
hf_token
|
976
|
+
);
|
977
|
+
let cookies = null;
|
978
|
+
if (auth) {
|
979
|
+
const cookie_header = await get_cookie_header(
|
980
|
+
http_protocol,
|
981
|
+
host,
|
982
|
+
auth,
|
983
|
+
fetch
|
984
|
+
);
|
985
|
+
if (cookie_header)
|
986
|
+
cookies = parse_and_set_cookies(cookie_header);
|
987
|
+
}
|
884
988
|
const headers = {
|
885
989
|
Authorization: `Bearer ${hf_token}`,
|
886
|
-
"Content-Type": "application/json"
|
990
|
+
"Content-Type": "application/json",
|
991
|
+
...cookies ? { Cookie: cookies.join("; ") } : {}
|
887
992
|
};
|
888
993
|
const user = (await (await fetch(`https://huggingface.co/api/whoami-v2`, {
|
889
994
|
headers
|
@@ -1184,6 +1289,34 @@ function submit(endpoint, data, event_data, trigger_id) {
|
|
1184
1289
|
);
|
1185
1290
|
}
|
1186
1291
|
}
|
1292
|
+
const resolve_heartbeat = async (config2) => {
|
1293
|
+
await this._resolve_hearbeat(config2);
|
1294
|
+
};
|
1295
|
+
async function handle_render_config(render_config) {
|
1296
|
+
if (!config)
|
1297
|
+
return;
|
1298
|
+
let render_id = render_config.render_id;
|
1299
|
+
config.components = [
|
1300
|
+
...config.components.filter((c) => c.props.rendered_in !== render_id),
|
1301
|
+
...render_config.components
|
1302
|
+
];
|
1303
|
+
config.dependencies = [
|
1304
|
+
...config.dependencies.filter((d) => d.rendered_in !== render_id),
|
1305
|
+
...render_config.dependencies
|
1306
|
+
];
|
1307
|
+
const any_state = config.components.some((c) => c.type === "state");
|
1308
|
+
const any_unload = config.dependencies.some(
|
1309
|
+
(d) => d.targets.some((t) => t[1] === "unload")
|
1310
|
+
);
|
1311
|
+
config.connect_heartbeat = any_state || any_unload;
|
1312
|
+
await resolve_heartbeat(config);
|
1313
|
+
fire_event({
|
1314
|
+
type: "render",
|
1315
|
+
data: render_config,
|
1316
|
+
endpoint: _endpoint,
|
1317
|
+
fn_index
|
1318
|
+
});
|
1319
|
+
}
|
1187
1320
|
this.handle_blob(config.root, resolved_data, endpoint_info).then(
|
1188
1321
|
async (_payload) => {
|
1189
1322
|
var _a;
|
@@ -1220,6 +1353,9 @@ function submit(endpoint, data, event_data, trigger_id) {
|
|
1220
1353
|
event_data,
|
1221
1354
|
trigger_id
|
1222
1355
|
});
|
1356
|
+
if (output.render_config) {
|
1357
|
+
handle_render_config(output.render_config);
|
1358
|
+
}
|
1223
1359
|
fire_event({
|
1224
1360
|
type: "status",
|
1225
1361
|
endpoint: _endpoint,
|
@@ -1581,12 +1717,7 @@ function submit(endpoint, data, event_data, trigger_id) {
|
|
1581
1717
|
fn_index
|
1582
1718
|
});
|
1583
1719
|
if (data2.render_config) {
|
1584
|
-
|
1585
|
-
type: "render",
|
1586
|
-
data: data2.render_config,
|
1587
|
-
endpoint: _endpoint,
|
1588
|
-
fn_index
|
1589
|
-
});
|
1720
|
+
await handle_render_config(data2.render_config);
|
1590
1721
|
}
|
1591
1722
|
if (complete) {
|
1592
1723
|
fire_event({
|
@@ -1654,12 +1785,14 @@ function get_endpoint_info(api_info, endpoint, api_map, config) {
|
|
1654
1785
|
if (typeof endpoint === "number") {
|
1655
1786
|
fn_index = endpoint;
|
1656
1787
|
endpoint_info = api_info.unnamed_endpoints[fn_index];
|
1657
|
-
dependency = config.dependencies
|
1788
|
+
dependency = config.dependencies.find((dep) => dep.id == endpoint);
|
1658
1789
|
} else {
|
1659
1790
|
const trimmed_endpoint = endpoint.replace(/^\//, "");
|
1660
1791
|
fn_index = api_map[trimmed_endpoint];
|
1661
1792
|
endpoint_info = api_info.named_endpoints[endpoint.trim()];
|
1662
|
-
dependency = config.dependencies
|
1793
|
+
dependency = config.dependencies.find(
|
1794
|
+
(dep) => dep.id == api_map[trimmed_endpoint]
|
1795
|
+
);
|
1663
1796
|
}
|
1664
1797
|
if (typeof fn_index !== "number") {
|
1665
1798
|
throw new Error(
|
@@ -1683,6 +1816,7 @@ class Client {
|
|
1683
1816
|
__publicField(this, "session_hash", Math.random().toString(36).substring(2));
|
1684
1817
|
__publicField(this, "jwt", false);
|
1685
1818
|
__publicField(this, "last_status", {});
|
1819
|
+
__publicField(this, "cookies", null);
|
1686
1820
|
// streaming
|
1687
1821
|
__publicField(this, "stream_status", { open: false });
|
1688
1822
|
__publicField(this, "pending_stream_messages", {});
|
@@ -1699,6 +1833,7 @@ class Client {
|
|
1699
1833
|
__publicField(this, "predict");
|
1700
1834
|
__publicField(this, "open_stream");
|
1701
1835
|
__publicField(this, "resolve_config");
|
1836
|
+
__publicField(this, "resolve_cookies");
|
1702
1837
|
this.app_reference = app_reference;
|
1703
1838
|
this.options = options;
|
1704
1839
|
this.view_api = view_api.bind(this);
|
@@ -1709,10 +1844,15 @@ class Client {
|
|
1709
1844
|
this.predict = predict.bind(this);
|
1710
1845
|
this.open_stream = open_stream.bind(this);
|
1711
1846
|
this.resolve_config = resolve_config.bind(this);
|
1847
|
+
this.resolve_cookies = resolve_cookies.bind(this);
|
1712
1848
|
this.upload = upload.bind(this);
|
1713
1849
|
}
|
1714
1850
|
fetch(input, init) {
|
1715
|
-
|
1851
|
+
const headers = new Headers((init == null ? void 0 : init.headers) || {});
|
1852
|
+
if (this && this.cookies) {
|
1853
|
+
headers.append("Cookie", this.cookies);
|
1854
|
+
}
|
1855
|
+
return fetch(input, { ...init, headers });
|
1716
1856
|
}
|
1717
1857
|
async stream(url) {
|
1718
1858
|
if (typeof window === "undefined" || typeof EventSource === "undefined") {
|
@@ -1735,27 +1875,48 @@ class Client {
|
|
1735
1875
|
global.WebSocket = ws.WebSocket;
|
1736
1876
|
}
|
1737
1877
|
try {
|
1738
|
-
|
1739
|
-
this.
|
1740
|
-
|
1741
|
-
|
1742
|
-
}
|
1743
|
-
|
1744
|
-
const heartbeat_url = new URL(
|
1745
|
-
`${this.config.root}/heartbeat/${this.session_hash}`
|
1746
|
-
);
|
1747
|
-
if (this.jwt) {
|
1748
|
-
heartbeat_url.searchParams.set("__sign", this.jwt);
|
1749
|
-
}
|
1750
|
-
this.heartbeat_event = await this.stream(heartbeat_url);
|
1751
|
-
}
|
1752
|
-
});
|
1878
|
+
if (this.options.auth) {
|
1879
|
+
await this.resolve_cookies();
|
1880
|
+
}
|
1881
|
+
await this._resolve_config().then(
|
1882
|
+
({ config }) => this._resolve_hearbeat(config)
|
1883
|
+
);
|
1753
1884
|
} catch (e) {
|
1754
|
-
throw Error(
|
1885
|
+
throw Error(e);
|
1755
1886
|
}
|
1756
1887
|
this.api_info = await this.view_api();
|
1757
1888
|
this.api_map = map_names_to_ids(((_a = this.config) == null ? void 0 : _a.dependencies) || []);
|
1758
1889
|
}
|
1890
|
+
async _resolve_hearbeat(_config) {
|
1891
|
+
var _a;
|
1892
|
+
if (_config) {
|
1893
|
+
this.config = _config;
|
1894
|
+
if (this.config && this.config.connect_heartbeat) {
|
1895
|
+
if (this.config.space_id && this.options.hf_token) {
|
1896
|
+
this.jwt = await get_jwt(
|
1897
|
+
this.config.space_id,
|
1898
|
+
this.options.hf_token,
|
1899
|
+
this.cookies
|
1900
|
+
);
|
1901
|
+
}
|
1902
|
+
}
|
1903
|
+
}
|
1904
|
+
if (_config.space_id && this.options.hf_token) {
|
1905
|
+
this.jwt = await get_jwt(_config.space_id, this.options.hf_token);
|
1906
|
+
}
|
1907
|
+
if (this.config && this.config.connect_heartbeat) {
|
1908
|
+
const heartbeat_url = new URL(
|
1909
|
+
`${this.config.root}/heartbeat/${this.session_hash}`
|
1910
|
+
);
|
1911
|
+
if (this.jwt) {
|
1912
|
+
heartbeat_url.searchParams.set("__sign", this.jwt);
|
1913
|
+
}
|
1914
|
+
if (!this.heartbeat_event)
|
1915
|
+
this.heartbeat_event = await this.stream(heartbeat_url);
|
1916
|
+
} else {
|
1917
|
+
(_a = this.heartbeat_event) == null ? void 0 : _a.close();
|
1918
|
+
}
|
1919
|
+
}
|
1759
1920
|
static async connect(app_reference, options = {}) {
|
1760
1921
|
const client2 = new this(app_reference, options);
|
1761
1922
|
await client2.init();
|
@@ -1782,8 +1943,7 @@ class Client {
|
|
1782
1943
|
}
|
1783
1944
|
return this.config_success(config);
|
1784
1945
|
} catch (e) {
|
1785
|
-
|
1786
|
-
if (space_id) {
|
1946
|
+
if (space_id && status_callback) {
|
1787
1947
|
check_space_status(
|
1788
1948
|
space_id,
|
1789
1949
|
RE_SPACE_NAME.test(space_id) ? "space_name" : "subdomain",
|
@@ -1797,6 +1957,7 @@ class Client {
|
|
1797
1957
|
load_status: "error",
|
1798
1958
|
detail: "NOT_FOUND"
|
1799
1959
|
});
|
1960
|
+
throw Error(e);
|
1800
1961
|
}
|
1801
1962
|
}
|
1802
1963
|
}
|
@@ -1818,6 +1979,9 @@ class Client {
|
|
1818
1979
|
return this.prepare_return_obj();
|
1819
1980
|
}
|
1820
1981
|
async handle_space_success(status) {
|
1982
|
+
if (!this) {
|
1983
|
+
throw new Error(CONFIG_ERROR_MSG);
|
1984
|
+
}
|
1821
1985
|
const { status_callback } = this.options;
|
1822
1986
|
if (status_callback)
|
1823
1987
|
status_callback(status);
|
@@ -1830,7 +1994,6 @@ class Client {
|
|
1830
1994
|
const _config = await this.config_success(this.config);
|
1831
1995
|
return _config;
|
1832
1996
|
} catch (e) {
|
1833
|
-
console.error(e);
|
1834
1997
|
if (status_callback) {
|
1835
1998
|
status_callback({
|
1836
1999
|
status: "error",
|
@@ -1839,6 +2002,7 @@ class Client {
|
|
1839
2002
|
detail: "NOT_FOUND"
|
1840
2003
|
});
|
1841
2004
|
}
|
2005
|
+
throw e;
|
1842
2006
|
}
|
1843
2007
|
}
|
1844
2008
|
}
|
@@ -1889,7 +2053,8 @@ class Client {
|
|
1889
2053
|
const response = await this.fetch(`${root_url}/component_server/`, {
|
1890
2054
|
method: "POST",
|
1891
2055
|
body,
|
1892
|
-
headers
|
2056
|
+
headers,
|
2057
|
+
credentials: "include"
|
1893
2058
|
});
|
1894
2059
|
if (!response.ok) {
|
1895
2060
|
throw new Error(
|
@@ -1902,6 +2067,9 @@ class Client {
|
|
1902
2067
|
console.warn(e);
|
1903
2068
|
}
|
1904
2069
|
}
|
2070
|
+
set_cookies(raw_cookies) {
|
2071
|
+
this.cookies = parse_and_set_cookies(raw_cookies).join("; ");
|
2072
|
+
}
|
1905
2073
|
prepare_return_obj() {
|
1906
2074
|
return {
|
1907
2075
|
config: this.config,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/test/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,cAAc,EAAE,MAAM,KAAK,CAAC;
|
1
|
+
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/test/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,cAAc,EAAE,MAAM,KAAK,CAAC;AA4CzD,eAAO,MAAM,QAAQ,EAAE,cAAc,EAgoBpC,CAAC"}
|
@@ -1 +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,
|
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,MA+V7B,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
@@ -108,6 +108,7 @@ export interface Config {
|
|
108
108
|
max_file_size?: number;
|
109
109
|
}
|
110
110
|
export interface Dependency {
|
111
|
+
id: number;
|
111
112
|
targets: [number, string][];
|
112
113
|
inputs: number[];
|
113
114
|
outputs: number[];
|
@@ -133,6 +134,7 @@ export interface Dependency {
|
|
133
134
|
final_event: Payload | null;
|
134
135
|
show_api: boolean;
|
135
136
|
zerogpu?: boolean;
|
137
|
+
rendered_in: number | null;
|
136
138
|
}
|
137
139
|
export interface DependencyTypes {
|
138
140
|
continuous: boolean;
|
@@ -161,6 +163,7 @@ export interface DuplicateOptions extends ClientOptions {
|
|
161
163
|
export interface ClientOptions {
|
162
164
|
hf_token?: `hf_${string}`;
|
163
165
|
status_callback?: SpaceStatusCallback | null;
|
166
|
+
auth?: [string, string] | null;
|
164
167
|
}
|
165
168
|
export interface FileData {
|
166
169
|
name: string;
|
@@ -199,6 +202,8 @@ export interface RenderMessage {
|
|
199
202
|
data: {
|
200
203
|
components: any[];
|
201
204
|
layout: any;
|
205
|
+
dependencies: Dependency[];
|
206
|
+
render_id: number;
|
202
207
|
};
|
203
208
|
}
|
204
209
|
export interface Status {
|
@@ -219,6 +224,7 @@ export interface Status {
|
|
219
224
|
desc: string | null;
|
220
225
|
}[];
|
221
226
|
time?: Date;
|
227
|
+
changed_state_ids?: number[];
|
222
228
|
}
|
223
229
|
export {};
|
224
230
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
@@ -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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"}
|
@@ -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;
|
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;AAQnC,wBAAsB,SAAS,CAC9B,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,gBAAgB,GACvB,OAAO,CAAC,MAAM,CAAC,CAuGjB"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"post_data.d.ts","sourceRoot":"","sources":["../../src/utils/post_data.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC;AAE5B,wBAAsB,SAAS,CAC9B,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,OAAO,EACb,kBAAkB,CAAC,EAAE,GAAG,GACtB,OAAO,CAAC,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,
|
1
|
+
{"version":3,"file":"post_data.d.ts","sourceRoot":"","sources":["../../src/utils/post_data.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC;AAE5B,wBAAsB,SAAS,CAC9B,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,OAAO,EACb,kBAAkB,CAAC,EAAE,GAAG,GACtB,OAAO,CAAC,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CA4BjC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"predict.d.ts","sourceRoot":"","sources":["../../src/utils/predict.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,KAAK,EAAc,YAAY,EAAE,MAAM,UAAU,CAAC;AAEzD,wBAAsB,OAAO,CAC5B,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GAAG,MAAM,EACzB,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACvC,OAAO,CAAC,YAAY,CAAC,
|
1
|
+
{"version":3,"file":"predict.d.ts","sourceRoot":"","sources":["../../src/utils/predict.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,KAAK,EAAc,YAAY,EAAE,MAAM,UAAU,CAAC;AAEzD,wBAAsB,OAAO,CAC5B,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GAAG,MAAM,EACzB,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACvC,OAAO,CAAC,YAAY,CAAC,CAkDvB"}
|
@@ -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;AAYlB,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,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,UAAU,CAAC,EAAE,OAAO,EACpB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,GACxB,YAAY,
|
1
|
+
{"version":3,"file":"submit.d.ts","sourceRoot":"","sources":["../../src/utils/submit.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAKX,YAAY,EAQZ,MAAM,UAAU,CAAC;AAYlB,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,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,UAAU,CAAC,EAAE,OAAO,EACpB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,GACxB,YAAY,CAkqBd"}
|
@@ -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,
|
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,CA0CzB"}
|