PageSourceSearch

https://drvikasgaur-mental-well-being-checker.hf.space/assets/Index-CKhTNXyI.js

js drvikasgaur-mental-well-being-checker.hf.space collected 2026-10-04 16:50:58 UTC 19,562 bytes, 612 lines download raw bytes

1import { p as prop, t as remove_input_defaults, b as set_class, k as each, u as index, i as if_block, a as set_attribute, g as spread_props, r as rest_props } from './i18n-dpAHICcw.js';
2import { a as append, f as from_svg, ak as delegate, R as push, t as template_effect, T as pop, W as from_html, u as state, v as proxy, x as set, w as get, y as user_effect, X as sibling, a0 as set_text, a5 as user_derived, V as child, a6 as comment, S as first_child, Y as reset } from './index-CDZuCcOm.js';
3import { k as key } from './key-BkIRB637.js';
4import { G as Gradio } from './utils.svelte-CyWLYi-B.js';
5import './ScrollFade.svelte_svelte_type_style_lang-DUvCSfRk.js';
6import { F as File } from './File-BaXTooE5.js';
7import { B as Block } from './Block-DntE23uJ.js';
8import './MarkdownCode.svelte_svelte_type_style_lang-GeNUGzep.js';
9import { B as BlockLabel } from './BlockLabel-D4yjUUAn.js';
10import { I as IconButtonWrapper } from './IconButtonWrapper-KjCt2Pl8.js';
11import { a as bind_checked } from './input-UUW65DyE.js';
12import { S as Static } from './index-DyDpuTN9.js';
13import './StreamingBar.svelte_svelte_type_style_lang-BxBb9ZZb.js';
14import './clone-dZfS06Ds.js';
15import './snippet-DVkMfmSq.js';
16import './prism-python-C_fanlsZ.js';
17import './Clear-tvJMRS4J.js';
18import './html-h_YSgefI.js';
19
20var root$3 = from_svg(`<svg width="100%" height="100%" viewBox="0 0 14 17" version="1.1" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;"><g transform="matrix(1,0,0,1,-10.6667,-7.73588)"><path d="M12.7,24.033C12.256,24.322 11.806,24.339 11.351,24.084C10.896,23.829 10.668,23.434 10.667,22.9L10.667,9.1C10.667,8.567 10.895,8.172 11.351,7.916C11.807,7.66 12.256,7.677 12.7,7.967L23.567,14.867C23.967,15.133 24.167,15.511 24.167,16C24.167,16.489 23.967,16.867 23.567,17.133L12.7,24.033Z" style="fill:currentColor;fill-rule:nonzero;"></path></g></svg>`);
21
22function ArrowIcon($$anchor) {
23	var svg = root$3();
24
25	append($$anchor, svg);
26}
27
28var root$2 = from_html(`<input type="checkbox"/>`);
29
30function Checkbox($$anchor, $$props) {
31	push($$props, true);
32
33	let value = prop($$props, 'value', 15);
34	var input = root$2();
35
36	remove_input_defaults(input);
37	input.__input = () => $$props.onchange?.(!value());
38
39	let classes;
40
41	template_effect(() => {
42		input.disabled = $$props.disabled;
43		classes = set_class(input, 1, 'svelte-3g0mcl', null, classes, { disabled: $$props.disabled && !value() });
44	});
45
46	bind_checked(input, value);
47	append($$anchor, input);
48	pop();
49}
50
51delegate(['input']);
52
53const FileIcon = "data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='32'%20height='32'%20viewBox='0%200%2024%2024'%3e%3cpath%20fill='%23888888'%20d='M6%202c-1.1%200-1.99.9-1.99%202L4%2020c0%201.1.89%202%201.99%202H18c1.1%200%202-.9%202-2V8l-6-6H6zm7%207V3.5L18.5%209H13z'/%3e%3c/svg%3e";
54
55const FolderIcon = "data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'%20standalone='no'?%3e%3csvg%20viewBox='0%200%2032%2032'%20version='1.1'%20id='svg7'%20sodipodi:docname='light-folder-new.svg'%20inkscape:version='1.3.2%20(091e20e,%202023-11-25)'%20xmlns:inkscape='http://www.inkscape.org/namespaces/inkscape'%20xmlns:sodipodi='http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:svg='http://www.w3.org/2000/svg'%3e%3csodipodi:namedview%20id='namedview7'%20pagecolor='%23ffffff'%20bordercolor='%23000000'%20borderopacity='0.25'%20inkscape:showpageshadow='2'%20inkscape:pageopacity='0.0'%20inkscape:pagecheckerboard='0'%20inkscape:deskcolor='%23d1d1d1'%20inkscape:zoom='7.375'%20inkscape:cx='15.932203'%20inkscape:cy='16'%20inkscape:window-width='1312'%20inkscape:window-height='529'%20inkscape:window-x='0'%20inkscape:window-y='38'%20inkscape:window-maximized='0'%20inkscape:current-layer='svg7'
55%20/%3e%3cdefs%20id='defs6'%3e%3cclipPath%20id='clipPath1'%3e%3cpath%20d='m69.63%2012.145h-.052c-22.727-.292-46.47%204.077-46.709%204.122-2.424.451-4.946%202.974-5.397%205.397-.044.237-4.414%2023.983-4.122%2046.71-.292%2022.777%204.078%2046.523%204.122%2046.761.451%202.423%202.974%204.945%205.398%205.398.237.044%2023.982%204.413%2046.709%204.121%2022.779.292%2046.524-4.077%2046.761-4.121%202.423-.452%204.946-2.976%205.398-5.399.044-.236%204.413-23.981%204.121-46.709.292-22.777-4.077-46.523-4.121-46.761-.453-2.423-2.976-4.946-5.398-5.397-.238-.045-23.984-4.414-46.71-4.122'%20id='path1'%20/%3e%3c/clipPath%3e%3clinearGradient%20gradientUnits='userSpaceOnUse'%20y2='352.98'%20x2='-601.15'%20y1='663.95'%20x1='-591.02'%20id='2'%3e%3cstop%20stop-color='%23a0a0a0'%20id='stop1'%20/%3e%3cstop%20offset='1'%20stop-color='%23aaa'%20id='stop2'%20/%3e%3c/linearGradient%3e%3clinearGradient%20gradientUnits='userSpaceOnUse'%20y2='354.29'%20x2='-704.05'%20y1='647.77'%20x1='-701.19'%20id='1'%3e%3cstop%20stop-color='%23acabab'%20id='stop3'%20/%3e%3cstop%20offset='1'%20stop-color='%23d4d4d4'%20id='stop4'%20/%3e%3c/linearGradient%3e%3clinearGradient%20id='0'%20x1='59.12'%20y1='-19.888'%20x2='59.15'%20y2='-37.783'%20gradientUnits='userSpaceOnUse'%20gradientTransform='matrix(4.17478%200%200%204.16765-1069.7%20447.73)'%3e%3cstop%20stop-color='%23a0a0a0'%20id='stop5'%20/%3e%3cstop%20offset='1'%20stop-color='%23bdbdbd'%20id='stop6'%20/%3e%3c/linearGradient%3e%3c/defs%3e%3cg%20transform='matrix(.07089%200%200%20.07017%2023.295-40.67)'%20fill='%2360aae5'%20id='g7'%20style='fill:%23888888;fill-opacity:1'%3e%3cpath%20transform='matrix(.7872%200%200%20.79524%20415.34%20430.11)'%20d='m-884.1%20294.78c-4.626%200-8.349%203.718-8.349%208.335v161.41l468.19%201v-121.2c0-4.618-3.724-8.335-8.35-8.335h-272.65c-8.51.751-9.607-.377-13.812-5.981-5.964-7.968-14.969-21.443-20.84-29.21-4.712-6.805-5.477-6.02-13.292-6.02z'%20fill='url(%230)'%20color='%23000'%20id='path6'%20style='fill:%23888888;fill-opacity:1'%20/%3e%3crect%20transform='matrix(.7872%200%200%20.79524%20415.34%20430.11)'%20y='356.85'%20x='-890.28'%20height='295.13'%20width='463.85'%20fill='url(%231)'%20stroke='url(%231)'%20stroke-width='2.378'%20rx='9.63'%20id='rect6'%20style='fill:%23888888;fill-opacity:1'%20/%3e%3crect%20width='463.85'%20height='295.13'%20x='-890.28'%20y='356.85'%20transform='matrix(.7872%200%200%20.79524%20415.34%20430.11)'%20fill='none'%20stroke='url(%232)'%20stroke-linejoin='round'%20stroke-linecap='round'%20stroke-width='5.376'%20rx='9.63'%20id='rect7'%20style='fill:%23888888;fill-opacity:1'%20/%3e%3c/g%3e%3c/svg%3e";
56
57var root_3 = from_html(`<span class="no-checkbox svelte-6im0c4" aria-hidden="true"></span>`);
58var root_5 = from_html(`<span role="button" aria-label="expand directory" tabindex="0"><!></span>`);
59var root_6 = from_html(`<span class="file-icon svelte-6im0c4"><img alt="file icon" class="svelte-6im0c4"/></span>`);
60var root_1$1 = from_html(`<li class="svelte-6im0c4"><span><!> <!> <span class="item-name svelte-6im0c4"> </span></span> <!></li>`);
61var root$1 = from_html(`<ul></ul>`);
62
63function FileTree($$anchor, $$props) {
64	push($$props, true);
65
66	let path = prop($$props, 'path', 19, () => []),
67		index_path = prop($$props, 'index_path', 19, () => []),
68		selected_files = prop($$props, 'selected_files', 19, () => []),
69		selected_folders = prop($$props, 'selected_folders', 19, () => []),
70		is_selected_entirely = prop($$props, 'is_selected_entirely', 3, false),
71		selectable = prop($$props, 'selectable', 3, false),
72		file_count = prop($$props, 'file_count', 3, "multiple");
73
74	let content = state(proxy([]));
75	let opened_folders = state(proxy([]));
76
77	const toggle_open_folder = (i) => {
78		if (get(opened_folders).includes(i)) {
79			set(opened_folders, get(opened_folders).filter((x) => x !== i), true);
80		} else {
81			set(opened_folders, [...get(opened_folders), i], true);
82		}
83	};
84
85	const open_folder = (i) => {
86		if (!get(opened_folders).includes(i)) {
87			set(opened_folders, [...get(opened_folders), i], true);
88		}
89	};
90
91	(async () => {
92		set(content, await $$props.ls_fn(path()), true);
93
94		if ($$props.valid_for_selection) {
95			set(content, [{ name: ".", type: "file" }, ...get(content)], true);
96		}
97
98		set(opened_folders, get(content).map((x, i) => x.type === "folder" && (is_selected_entirely() || selected_files().some((y) => y[0] === x.name)) ? i : null).filter((x) => x !== null), true);
99	})();
100
101	user_effect(() => {
102		if (is_selected_entirely()) {
103			get(content).forEach((x) => {
104				$$props.oncheck?.({ path: [...path(), x.name], checked: true, type: x.type });
105			});
106		}
107	});
108
109	function handle_select(full_index_path, item_path, _type) {
110		$$props.onselect?.({
111			index: full_index_path,
112			value: item_path.join("/"),
113			selected: true
114		});
115	}
116
117	var ul = root$1();
118	let classes;
119
120	each(ul, 21, () => get(content), index, ($$anchor, $$item, i) => {
121		let type = () => get($$item).type;
122		let name = () => get($$item).name;
123		let valid = () => get($$item).valid;
124		const is_selected = user_derived(() => (type() === "file" ? selected_files() : selected_folders()).some((x) => x[0] === name() && x.length === 1));
125		var li = root_1$1();
126		var span = child(li);
127		let classes_1;
128
129		span.__click = (e) => {
130			e.stopPropagation();
131
132			if (selectable()) {
133				handle_select([...index_path(), i], [...path(), name()], type());
134			}
135		};
136
137		span.__keydown = (e) => {
138			if (selectable() && (e.key === " " || e.key === "Enter")) {
139				handle_select([...index_path(), i], [...path(), name()], type());
140			}
141		};
142
143		var node = child(span);
144
145		{
146			var consequent_1 = ($$anchor) => {
147				var fragment = comment();
148				var node_1 = first_child(fragment);
149
150				{
151					var consequent = ($$anchor) => {
152						var span_1 = root_3();
153
154						append($$anchor, span_1);
155					};
156
157					var alternate = ($$anchor) => {
158						Checkbox($$anchor, {
159							disabled: false,
160							get value() {
161								return get(is_selected);
162							},
163
164							onchange: (checked) => {
165								$$props.oncheck?.({ path: [...path(), name()], checked, type: type() });
166
167								if (selectable()) {
168									handle_select([...index_path(), i], [...path(), name()], type());
169								}
170
171								if (type() === "folder" && checked) {
172									open_folder(i);
173								}
174							}
175						});
176					};
177
178					if_block(node_1, ($$render) => {
179						if (type() === "folder" && file_count() === "single") $$render(consequent); else $$render(alternate, false);
180					});
181				}
182
183				append($$anchor, fragment);
184			};
185
186			if_block(node, ($$render) => {
187				if ($$props.interactive) $$render(consequent_1);
188			});
189		}
190
191		var node_2 = sibling(node, 2);
192
193		{
194			var consequent_2 = ($$anchor) => {
195				var span_2 = root_5();
196				let classes_2;
197
198				span_2.__click = (e) => {
199					e.stopPropagation();
200					toggle_open_folder(i);
201				};
202
203				span_2.__keydown = (e) => {
204					if (e.key === " " || e.key === "Enter") {
205						toggle_open_folder(i);
206					}
207				};
208
209				var node_3 = child(span_2);
210
211				ArrowIcon(node_3);
212				reset(span_2);
213				template_effect(($0) => classes_2 = set_class(span_2, 1, 'icon svelte-6im0c4', null, classes_2, $0), [() => ({ hidden: !get(opened_folders).includes(i) })]);
214				append($$anchor, span_2);
215			};
216
217			var alternate_1 = ($$anchor) => {
218				var span_3 = root_6();
219				var img = child(span_3);
220
221				reset(span_3);
222				template_effect(() => set_attribute(img, 'src', name() === "." ? FolderIcon : FileIcon));
223				append($$anchor, span_3);
224			};
225
226			if_block(node_2, ($$render) => {
227				if (type() === "folder") $$render(consequent_2); else $$render(alternate_1, false);
228			});
229		}
230
231		var span_4 = sibling(node_2, 2);
232		var text = child(span_4, true);
233
234		reset(span_4);
235		reset(span);
236
237		var node_4 = sibling(span, 2);
238
239		{
240			var consequent_3 = ($$anchor) => {
241				{
242					let $0 = user_derived(() => [...path(), name()]);
243					let $1 = user_derived(() => [...index_path(), i]);
244					let $2 = user_derived(() => selected_files().filter((x) => x[0] === name()).map((x) => x.slice(1)));
245					let $3 = user_derived(() => selected_folders().filter((x) => x[0] === name()).map((x) => x.slice(1)));
246					let $4 = user_derived(() => selected_folders().some((x) => x[0] === name() && x.length === 1));
247					let $5 = user_derived(() => valid() ?? false);
248
249					FileTree($$anchor, {
250						get path() {
251							return get($0);
252						},
253
254						get index_path() {
255							return get($1);
256						},
257
258						get selected_files() {
259							return get($2);
260						},
261
262						get selected_folders() {
263							return get($3);
264						},
265
266						get is_selected_entirely() {
267							return get($4);
268						},
269
270						get interactive() {
271							return $$props.interactive;
272						},
273
274						get selectable() {
275							return selectable();
276						},
277
278						get ls_fn() {
279							return $$props.ls_fn;
280						},
281
282						get file_count() {
283							return file_count();
284						},
285
286						get valid_for_selection() {
287							return get($5);
288						},
289
290						get oncheck() {
291							return $$props.oncheck;
292						},
293
294						get onselect() {
295							return $$props.onselect;
296						}
297					});
298				}
299			};
300
301			if_block(node_4, ($$render) => {
302				if (type() === "folder" && get(opened_folders).includes(i)) $$render(consequent_3);
303			});
304		}
305
306		reset(li);
307
308		template_effect(() => {
309			classes_1 = set_class(span, 1, 'wrap svelte-6im0c4', null, classes_1, {
310				selected: !$$props.interactive && get(is_selected),
311				selectable: selectable()
312			});
313
314			set_attribute(span, 'role', selectable() ? "button" : undefined);
315			set_attribute(span, 'tabindex', selectable() ? 0 : undefined);
316			set_text(text, name());
317		});
318
319		append($$anchor, li);
320	});
321
322	reset(ul);
323
324	template_effect(() => classes = set_class(ul, 1, 'svelte-6im0c4', null, classes, {
325		'no-checkboxes': !$$props.interactive,
326		root: path().length === 0
327	}));
328
329	append($$anchor, ul);
330	pop();
331}
332
333delegate(['click', 'keydown']);
334
335var root = from_html(`<div class="file-wrap svelte-1gs1iku"><!></div>`);
336
337function DirectoryExplorer($$anchor, $$props) {
338	push($$props, true);
339
340	let file_count = prop($$props, 'file_count', 3, "multiple"),
341		value = prop($$props, 'value', 15),
342		selectable = prop($$props, 'selectable', 3, false);
343
344	let selected_folders = state(proxy([]));
345
346	const paths_equal = (path, path_2) => {
347		return path.join("/") === path_2.join("/");
348	};
349
350	const path_in_set = (path, set) => {
351		return set.some((x) => paths_equal(x, path));
352	};
353
354	const path_inside = (path, path_2) => {
355		return path.join("/").startsWith(path_2.join("/"));
356	};
357
358	var div = root();
359	var node = child(div);
360
361	FileTree(node, {
362		path: [],
363		get selected_files() {
364			return value();
365		},
366
367		get selected_folders() {
368			return get(selected_folders);
369		},
370
371		get interactive() {
372			return $$props.interactive;
373		},
374
375		get selectable() {
376			return selectable();
377		},
378
379		get ls_fn() {
380			return $$props.ls_fn;
381		},
382
383		get file_count() {
384			return file_count();
385		},
386		valid_for_selection: false,
387		oncheck: (detail) => {
388			const { path, checked, type } = detail;
389
390			if (checked) {
391				if (file_count() === "single") {
392					value([path]);
393				} else if (type === "folder") {
394					if (!path_in_set(path, get(selected_folders))) {
395						set(selected_folders, [...get(selected_folders), path], true);
396					}
397				} else {
398					if (!path_in_set(path, value())) {
399						value([...value(), path]);
400					}
401				}
402			} else {
403				set(
404					selected_folders,
405					get(selected_folders).filter((folder) => !path_inside(path, folder)), // deselect all parent folders
406					true
407				);
408
409				if (type === "folder") {
410					set(
411						selected_folders,
412						get(selected_folders).filter((folder) => !path_inside(folder, path)), // deselect all children folders
413						true
414					);
415
416					value(value().filter((file) => !path_inside(file, path)) // deselect all children files
417					);
418				} else {
419					value(value().filter((x) => !paths_equal(x, path)));
420				}
421			}
422
423			$$props.oninput?.();
424		},
425
426		get onselect() {
427			return $$props.onselect;
428		}
429	});
430
431	reset(div);
432	append($$anchor, div);
433	pop();
434}
435
436var root_1 = from_html(`<!> <!> <!> <!>`, 1);
437
438function Index($$anchor, $$props) {
439	push($$props, true);
440
441	const props = rest_props($$props, ['$$slots', '$$events', '$$legacy']);
442	const gradio = new Gradio(props, { value: [] });
443	let old_value = state(proxy(gradio.props.value));
444
445	let rerender_key = user_derived(() => [
446		gradio.props.root_dir,
447		gradio.props.glob,
448		gradio.props.ignore_glob
449	]);
450
451	// Reset value when rerender_key changes
452	// svelte-ignore state_referenced_locally
453	let old_rerender_key = state(proxy(get(rerender_key)));
454
455	user_effect(() => {
456		if (JSON.stringify(get(old_rerender_key)) != JSON.stringify(get(rerender_key)) && get(old_value) == gradio.props.value) {
457			set(old_rerender_key, get(rerender_key), true);
458			gradio.props.value = [];
459		}
460	});
461
462	user_effect(() => {
463		if (get(old_value) != gradio.props.value) {
464			set(old_value, gradio.props.value, true);
465			gradio.dispatch("change");
466		}
467	});
468
469	{
470		let $0 = user_derived(() => gradio.props.value === null ? "dashed" : "solid");
471
472		Block($$anchor, {
473			get visible() {
474				return gradio.shared.visible;
475			},
476
477			get variant() {
478				return get($0);
479			},
480			border_mode: "base",
481			padding: false,
482			get elem_id() {
483				return gradio.shared.elem_id;
484			},
485
486			get elem_classes() {
487				return gradio.shared.elem_classes;
488			},
489
490			get container() {
491				return gradio.shared.container;
492			},
493
494			get scale() {
495				return gradio.shared.scale;
496			},
497
498			get min_width() {
499				return gradio.shared.min_width;
500			},
501			allow_overflow: true,
502			overflow_behavior: 'auto',
503			get height() {
504				return gradio.props.height;
505			},
506
507			get max_height() {
508				return gradio.props.max_height;
509			},
510
511			get min_height() {
512				return gradio.props.min_height;
513			},
514
515			children: ($$anchor, $$slotProps) => {
516				var fragment_1 = root_1();
517				var node = first_child(fragment_1);
518
519				Static(node, spread_props(() => gradio.shared.loading_status, {
520					get autoscroll() {
521						return gradio.shared.autoscroll;
522					},
523
524					get i18n() {
525						return gradio.i18n;
526					},
527					on_clear_status: () => gradio.dispatch("clear_status", gradio.shared.loading_status)
528				}));
529
530				var node_1 = sibling(node, 2);
531
532				{
533					var consequent = ($$anchor) => {
534						IconButtonWrapper($$anchor, {
535							get buttons() {
536								return gradio.props.buttons;
537							},
538
539							on_custom_button_click: (id) => {
540								gradio.dispatch("custom_button_click", { id });
541							}
542						});
543					};
544
545					if_block(node_1, ($$render) => {
546						if (gradio.shared.show_label && gradio.props.buttons && gradio.props.buttons.length > 0) $$render(consequent);
547					});
548				}
549
550				var node_2 = sibling(node_1, 2);
551
552				{
553					let $0 = user_derived(() => gradio.shared.label || "FileExplorer");
554
555					BlockLabel(node_2, {
556						get show_label() {
557							return gradio.shared.show_label;
558						},
559
560						get Icon() {
561							return File;
562						},
563
564						get label() {
565							return get($0);
566						},
567						float: false
568					});
569				}
570
571				var node_3 = sibling(node_2, 2);
572
573				key(node_3, () => get(rerender_key), ($$anchor) => {
574					DirectoryExplorer($$anchor, {
575						get file_count() {
576							return gradio.props.file_count;
577						},
578
579						get interactive() {
580							return gradio.shared.interactive;
581						},
582
583						get selectable() {
584							return gradio.props._selectable;
585						},
586
587						get ls_fn() {
588							return gradio.shared.server.ls;
589						},
590						oninput: () => gradio.dispatch("input"),
591						onselect: (detail) => gradio.dispatch("select", detail),
592						get value() {
593							return gradio.props.value;
594						},
595
596						set value($$value) {
597							gradio.props.value = $$value;
598						}
599					});
600				});
601
602				append($$anchor, fragment_1);
603			},
604			$$slots: { default: true }
605		});
606	}
607
608	pop();
609}
610
611export { Index as default };
612//# sourceMappingURL=Index-CKhTNXyI.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.