1import { w as writable, S as Static } from './Index-2cec2c56.js'; 2import { F as File } from './File-e96cd7d6.js'; 3import { B as Block } from './Button-05bf7cea.js'; 4import { B as BlockLabel } from './BlockLabel-09bb0248.js'; 5import { d as dequal } from './index-f38d9616.js'; 6import { E as Empty } from './Empty-2eeff83e.js'; 7import './index-5550136d.js'; 8import './svelte/svelte.js'; 9 10/* home/runner/work/gradio/gradio/js/fileexplorer/shared/ArrowIcon.svelte generated by Svelte v4.2.2 */ 11const { 12 SvelteComponent: SvelteComponent$4, 13 append: append$1, 14 attr: attr$3, 15 detach: detach$4, 16 init: init$4, 17 insert: insert$4, 18 noop: noop$2, 19 safe_not_equal: safe_not_equal$4, 20 set_style, 21 svg_element 22} = window.__gradio__svelte__internal; 23function create_fragment$4(ctx) { 24 let svg; 25 let g; 26 let path; 27 28 return { 29 c() { 30 svg = svg_element("svg"); 31 g = svg_element("g"); 32 path = svg_element("path"); 33 attr$3(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"); 34 set_style(path, "fill", "currentColor"); 35 set_style(path, "fill-rule", "nonzero"); 36 attr$3(g, "transform", "matrix(1,0,0,1,-10.6667,-7.73588)"); 37 attr$3(svg, "width", "100%"); 38 attr$3(svg, "height", "100%"); 39 attr$3(svg, "viewBox", "0 0 14 17"); 40 attr$3(svg, "version", "1.1"); 41 set_style(svg, "fill-rule", "evenodd"); 42 set_style(svg, "clip-rule", "evenodd"); 43 set_style(svg, "stroke-linejoin", "round"); 44 set_style(svg, "stroke-miterlimit", "2"); 45 }, 46 m(target, anchor) { 47 insert$4(target, svg, anchor); 48 append$1(svg, g); 49 append$1(g, path); 50 }, 51 p: noop$2, 52 i: noop$2, 53 o: noop$2, 54 d(detaching) { 55 if (detaching) { 56 detach$4(svg); 57 } 58 } 59 }; 60} 61 62class ArrowIcon extends SvelteComponent$4 { 63 constructor(options) { 64 super(); 65 init$4(this, options, null, create_fragment$4, safe_not_equal$4, {}); 66 } 67} 68 69const Checkbox_svelte_svelte_type_style_lang = ''; 70 71/* home/runner/work/gradio/gradio/js/fileexplorer/shared/Checkbox.svelte generated by Svelte v4.2.2 */ 72const { 73 SvelteComponent: SvelteComponent$3, 74 attr: attr$2, 75 detach: detach$3, 76 element: element$2, 77 init: init$3, 78 insert: insert$3, 79 listen: listen$1, 80 noop: noop$1, 81 run_all: run_all$1, 82 safe_not_equal: safe_not_equal$3, 83 toggle_class: toggle_class$1 84} = window.__gradio__svelte__internal; 85const { createEventDispatcher: createEventDispatcher$2 } = window.__gradio__svelte__internal; 86function create_fragment$3(ctx) { 87 let input; 88 let mounted; 89 let dispose; 90 91 return { 92 c() { 93 input = element$2("input"); 94 attr$2(input, "type", "checkbox"); 95 input.disabled = /*disabled*/ ctx[1]; 96 attr$2(input, "class", "svelte-8ywr9r"); 97 toggle_class$1(input, "disabled", /*disabled*/ ctx[1] && !/*value*/ ctx[0]); 98 }, 99 m(target, anchor) { 100 insert$3(target, input, anchor); 101 input.checked = /*value*/ ctx[0]; 102 103 if (!mounted) { 104 dispose = [ 105 listen$1(input, "change", /*input_change_handler*/ ctx[3]), 106 listen$1(input, "click", /*click_handler*/ ctx[4]), 107 listen$1(input, "keydown", /*keydown_handler*/ ctx[5]) 108 ]; 109 110 mounted = true; 111 } 112 }, 113 p(ctx, [dirty]) { 114 if (dirty & /*disabled*/ 2) { 115 input.disabled = /*disabled*/ ctx[1]; 116 } 117 118 if (dirty & /*value*/ 1) { 119 input.checked = /*value*/ ctx[0]; 120 } 121 122 if (dirty & /*disabled, value*/ 3) { 123 toggle_class$1(input, "disabled", /*disabled*/ ctx[1] && !/*value*/ ctx[0]); 124 } 125 }, 126 i: noop$1, 127 o: noop$1, 128 d(detaching) { 129 if (detaching) { 130 detach$3(input); 131 } 132 133 mounted = false; 134 run_all$1(dispose); 135 } 136 }; 137} 138 139function instance$3($$self, $$props, $$invalidate) { 140 let { value } = $$props; 141 let { disabled } = $$props; 142 const dispatch = createEventDispatcher$2(); 143 144 function input_change_handler() { 145 value = this.checked; 146 $$invalidate(0, value); 147 } 148 149 const click_handler = () => dispatch("change", value); 150 const keydown_handler = ({ key }) => (key === " " || key === "Enter") && dispatch("change", value); 151 152 $$self.$$set = $$props => {
153 if ('value' in $$props) $$invalidate(0, value = $$props.value); 154 if ('disabled' in $$props) $$invalidate(1, disabled = $$props.disabled); 155 }; 156 157 return [ 158 value, 159 disabled, 160 dispatch, 161 input_change_handler, 162 click_handler, 163 keydown_handler 164 ]; 165} 166 167class Checkbox extends SvelteComponent$3 { 168 constructor(options) { 169 super(); 170 init$3(this, options, instance$3, create_fragment$3, safe_not_equal$3, { value: 0, disabled: 1 }); 171 } 172} 173 174const FileIcon = ""+new URL('light-file-0e72c1e1.svg', import.meta.url).href+""; 175 176const FileTree_svelte_svelte_type_style_lang = ''; 177 178/* home/runner/work/gradio/gradio/js/fileexplorer/shared/FileTree.svelte generated by Svelte v4.2.2 */ 179const { 180 SvelteComponent: SvelteComponent$2, 181 add_flush_callback: add_flush_callback$1, 182 append, 183 attr: attr$1, 184 bind: bind$1, 185 binding_callbacks: binding_callbacks$1, 186 bubble, 187 check_outros: check_outros$1, 188 create_component: create_component$2, 189 destroy_component: destroy_component$2, 190 destroy_each, 191 detach: detach$2, 192 element: element$1, 193 ensure_array_like, 194 group_outros: group_outros$1, 195 init: init$2, 196 insert: insert$2, 197 listen, 198 mount_component: mount_component$2, 199 noop, 200 run_all, 201 safe_not_equal: safe_not_equal$2, 202 set_data, 203 space: space$1, 204 stop_propagation, 205 text, 206 toggle_class, 207 transition_in: transition_in$2, 208 transition_out: transition_out$2 209} = window.__gradio__svelte__internal; 210const { createEventDispatcher: createEventDispatcher$1, tick } = window.__gradio__svelte__internal; 211function get_each_context(ctx, list, i) { 212 const child_ctx = ctx.slice(); 213 child_ctx[12] = list[i].type; 214 child_ctx[13] = list[i].path; 215 child_ctx[14] = list[i].children; 216 child_ctx[15] = list[i].children_visible; 217 child_ctx[16] = list[i].checked; 218 child_ctx[17] = list; 219 child_ctx[18] = i; 220 return child_ctx; 221} 222 223// (45:4) {:else} 224function create_else_block$1(ctx) { 225 let span; 226 227 return { 228 c() { 229 span = element$1("span"); 230 span.innerHTML = `<img src="${FileIcon}" alt="file icon" class="svelte-hyugph"/>`; 231 attr$1(span, "class", "file-icon svelte-hyugph"); 232 }, 233 m(target, anchor) { 234 insert$2(target, span, anchor); 235 }, 236 p: noop, 237 i: noop, 238 o: noop, 239 d(detaching) { 240 if (detaching) { 241 detach$2(span); 242 } 243 } 244 }; 245} 246 247// (31:4) {#if type === "folder"} 248function create_if_block_1(ctx) { 249 let span; 250 let arrow; 251 let current; 252 let mounted; 253 let dispose; 254 arrow = new ArrowIcon({}); 255 256 function click_handler() { 257 return /*click_handler*/ ctx[8](/*i*/ ctx[18]); 258 } 259 260 function keydown_handler(...args) { 261 return /*keydown_handler*/ ctx[9](/*i*/ ctx[18], ...args); 262 } 263 264 return { 265 c() { 266 span = element$1("span"); 267 create_component$2(arrow.$$.fragment); 268 attr$1(span, "class", "icon svelte-hyugph"); 269 attr$1(span, "role", "button"); 270 attr$1(span, "aria-label", "expand directory"); 271 attr$1(span, "tabindex", "0"); 272 toggle_class(span, "hidden", !/*tree*/ ctx[0][/*i*/ ctx[18]].children_visible); 273 }, 274 m(target, anchor) { 275 insert$2(target, span, anchor); 276 mount_component$2(arrow, span, null); 277 current = true; 278 279 if (!mounted) { 280 dispose = [ 281 listen(span, "click", stop_propagation(click_handler)), 282 listen(span, "keydown", keydown_handler) 283 ]; 284 285 mounted = true; 286 } 287 }, 288 p(new_ctx, dirty) { 289 ctx = new_ctx; 290 291 if (!current || dirty & /*tree*/ 1) { 292 toggle_class(span, "hidden", !/*tree*/ ctx[0][/*i*/ ctx[18]].children_visible); 293 } 294 }, 295 i(local) { 296 if (current) return; 297 transition_in$2(arrow.$$.fragment, local); 298 current = true; 299 }, 300 o(local) { 301 transition_out$2(arrow.$$.fragment, local); 302 current = false; 303 }, 304 d(detaching) { 305 if (detaching) { 306 detach$2(span); 307 } 308 309 destroy_component$2(arrow); 310 mounted = false; 311 run_all(dispose); 312 } 313 }; 314} 315 316// (52:3) {#if children && children_visible} 317function create_if_block$1(ctx) { 318 let filetree; 319 let current; 320 321 filetree = new FileTree({ 322 props: { 323 tree: /*children*/ ctx[14], 324 icons: /*icons*/ ctx[2], 325 node_indices: [.../*node_indices*/ ctx[3], /*i*/ ctx[18]], 326 interactive: /*interactive*/ ctx[1], 327 file_count: /*file_count*/ ctx[4] 328 } 329 }); 330 331 filetree.$on("check", /*check_handler*/ ctx[10]); 332 333 return { 334 c() { 335 create_component$2(filetree.$$.fragment); 336 }, 337 m(target, anchor) { 338 mount_component$2(filetree, target, anchor); 339 current = true; 340 }, 341 p(ctx, dirty) { 342 const filetree_changes = {};
343 if (dirty & /*tree*/ 1) filetree_changes.tree = /*children*/ ctx[14]; 344 if (dirty & /*icons*/ 4) filetree_changes.icons = /*icons*/ ctx[2]; 345 if (dirty & /*node_indices*/ 8) filetree_changes.node_indices = [.../*node_indices*/ ctx[3], /*i*/ ctx[18]]; 346 if (dirty & /*interactive*/ 2) filetree_changes.interactive = /*interactive*/ ctx[1]; 347 if (dirty & /*file_count*/ 16) filetree_changes.file_count = /*file_count*/ ctx[4]; 348 filetree.$set(filetree_changes); 349 }, 350 i(local) { 351 if (current) return; 352 transition_in$2(filetree.$$.fragment, local); 353 current = true; 354 }, 355 o(local) { 356 transition_out$2(filetree.$$.fragment, local); 357 current = false; 358 }, 359 d(detaching) { 360 destroy_component$2(filetree, detaching); 361 } 362 }; 363} 364 365// (21:1) {#each tree as { type, path, children, children_visible, checked } 366function create_each_block(ctx) { 367 let li; 368 let span; 369 let checkbox; 370 let updating_value; 371 let t0; 372 let current_block_type_index; 373 let if_block0; 374 let t1; 375 let t2_value = /*path*/ ctx[13] + ""; 376 let t2; 377 let t3; 378 let t4; 379 let current; 380 381 function checkbox_value_binding(value) { 382 /*checkbox_value_binding*/ ctx[6](value, /*checked*/ ctx[16], /*each_value*/ ctx[17], /*i*/ ctx[18]); 383 } 384 385 function change_handler() { 386 return /*change_handler*/ ctx[7](/*i*/ ctx[18]); 387 } 388 389 let checkbox_props = { 390 disabled: !/*interactive*/ ctx[1] || /*type*/ ctx[12] === "folder" && /*file_count*/ ctx[4] === "single" 391 }; 392 393 if (/*checked*/ ctx[16] !== void 0) { 394 checkbox_props.value = /*checked*/ ctx[16]; 395 } 396 397 checkbox = new Checkbox({ props: checkbox_props }); 398 binding_callbacks$1.push(() => bind$1(checkbox, 'value', checkbox_value_binding)); 399 checkbox.$on("change", change_handler); 400 const if_block_creators = [create_if_block_1, create_else_block$1]; 401 const if_blocks = []; 402 403 function select_block_type(ctx, dirty) { 404 if (/*type*/ ctx[12] === "folder") return 0; 405 return 1; 406 } 407 408 current_block_type_index = select_block_type(ctx); 409 if_block0 = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx); 410 let if_block1 = /*children*/ ctx[14] && /*children_visible*/ ctx[15] && create_if_block$1(ctx); 411 412 return { 413 c() { 414 li = element$1("li"); 415 span = element$1("span"); 416 create_component$2(checkbox.$$.fragment); 417 t0 = space$1(); 418 if_block0.c(); 419 t1 = space$1(); 420 t2 = text(t2_value); 421 t3 = space$1(); 422 if (if_block1) if_block1.c(); 423 t4 = space$1(); 424 attr$1(span, "class", "wrap svelte-hyugph"); 425 attr$1(li, "class", "svelte-hyugph"); 426 }, 427 m(target, anchor) { 428 insert$2(target, li, anchor); 429 append(li, span); 430 mount_component$2(checkbox, span, null); 431 append(span, t0); 432 if_blocks[current_block_type_index].m(span, null); 433 append(span, t1); 434 append(span, t2); 435 append(li, t3); 436 if (if_block1) if_block1.m(li, null); 437 append(li, t4); 438 current = true; 439 }, 440 p(new_ctx, dirty) { 441 ctx = new_ctx; 442 const checkbox_changes = {}; 443 if (dirty & /*interactive, tree, file_count*/ 19) checkbox_changes.disabled = !/*interactive*/ ctx[1] || /*type*/ ctx[12] === "folder" && /*file_count*/ ctx[4] === "single"; 444 445 if (!updating_value && dirty & /*tree*/ 1) { 446 updating_value = true; 447 checkbox_changes.value = /*checked*/ ctx[16]; 448 add_flush_callback$1(() => updating_value = false); 449 } 450 451 checkbox.$set(checkbox_changes); 452 let previous_block_index = current_block_type_index; 453 current_block_type_index = select_block_type(ctx); 454 455 if (current_block_type_index === previous_block_index) { 456 if_blocks[current_block_type_index].p(ctx, dirty); 457 } else { 458 group_outros$1(); 459 460 transition_out$2(if_blocks[previous_block_index], 1, 1, () => { 461 if_blocks[previous_block_index] = null; 462 }); 463 464 check_outros$1(); 465 if_block0 = if_blocks[current_block_type_index]; 466 467 if (!if_block0) { 468 if_block0 = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx); 469 if_block0.c(); 470 } else { 471 if_block0.p(ctx, dirty); 472 } 473 474 transition_in$2(if_block0, 1); 475 if_block0.m(span, t1); 476 } 477 478 if ((!current || dirty & /*tree*/ 1) && t2_value !== (t2_value = /*path*/ ctx[13] + "")) set_data(t2, t2_value); 479 480 if (/*children*/ ctx[14] && /*children_visible*/ ctx[15]) { 481 if (if_block1) { 482 if_block1.p(ctx, dirty); 483
484 if (dirty & /*tree*/ 1) { 485 transition_in$2(if_block1, 1); 486 } 487 } else { 488 if_block1 = create_if_block$1(ctx); 489 if_block1.c(); 490 transition_in$2(if_block1, 1); 491 if_block1.m(li, t4); 492 } 493 } else if (if_block1) { 494 group_outros$1(); 495 496 transition_out$2(if_block1, 1, 1, () => { 497 if_block1 = null; 498 }); 499 500 check_outros$1(); 501 } 502 }, 503 i(local) { 504 if (current) return; 505 transition_in$2(checkbox.$$.fragment, local); 506 transition_in$2(if_block0); 507 transition_in$2(if_block1); 508 current = true; 509 }, 510 o(local) { 511 transition_out$2(checkbox.$$.fragment, local); 512 transition_out$2(if_block0); 513 transition_out$2(if_block1); 514 current = false; 515 }, 516 d(detaching) { 517 if (detaching) { 518 detach$2(li); 519 } 520 521 destroy_component$2(checkbox); 522 if_blocks[current_block_type_index].d(); 523 if (if_block1) if_block1.d(); 524 } 525 }; 526} 527 528function create_fragment$2(ctx) { 529 let ul; 530 let current; 531 let each_value = ensure_array_like(/*tree*/ ctx[0]); 532 let each_blocks = []; 533 534 for (let i = 0; i < each_value.length; i += 1) { 535 each_blocks[i] = create_each_block(get_each_context(ctx, each_value, i)); 536 } 537 538 const out = i => transition_out$2(each_blocks[i], 1, 1, () => { 539 each_blocks[i] = null; 540 }); 541 542 return { 543 c() { 544 ul = element$1("ul"); 545 546 for (let i = 0; i < each_blocks.length; i += 1) { 547 each_blocks[i].c(); 548 } 549 550 attr$1(ul, "class", "svelte-hyugph"); 551 }, 552 m(target, anchor) { 553 insert$2(target, ul, anchor); 554 555 for (let i = 0; i < each_blocks.length; i += 1) { 556 if (each_blocks[i]) { 557 each_blocks[i].m(ul, null); 558 } 559 } 560 561 current = true; 562 }, 563 p(ctx, [dirty]) { 564 if (dirty & /*tree, icons, node_indices, interactive, file_count, dispatch_change*/ 63) { 565 each_value = ensure_array_like(/*tree*/ ctx[0]); 566 let i; 567 568 for (i = 0; i < each_value.length; i += 1) { 569 const child_ctx = get_each_context(ctx, each_value, i); 570 571 if (each_blocks[i]) { 572 each_blocks[i].p(child_ctx, dirty); 573 transition_in$2(each_blocks[i], 1); 574 } else { 575 each_blocks[i] = create_each_block(child_ctx); 576 each_blocks[i].c(); 577 transition_in$2(each_blocks[i], 1); 578 each_blocks[i].m(ul, null); 579 } 580 } 581 582 group_outros$1(); 583 584 for (i = each_value.length; i < each_blocks.length; i += 1) { 585 out(i); 586 } 587 588 check_outros$1(); 589 } 590 }, 591 i(local) { 592 if (current) return; 593 594 for (let i = 0; i < each_value.length; i += 1) { 595 transition_in$2(each_blocks[i]); 596 } 597 598 current = true; 599 }, 600 o(local) {
601 each_blocks = each_blocks.filter(Boolean); 602 603 for (let i = 0; i < each_blocks.length; i += 1) { 604 transition_out$2(each_blocks[i]); 605 } 606 607 current = false; 608 }, 609 d(detaching) { 610 if (detaching) { 611 detach$2(ul); 612 } 613 614 destroy_each(each_blocks, detaching); 615 } 616 }; 617} 618 619function instance$2($$self, $$props, $$invalidate) { 620 let { interactive } = $$props; 621 let { tree = [] } = $$props; 622 let { icons = {} } = $$props; 623 let { node_indices = [] } = $$props; 624 let { file_count = "multiple" } = $$props; 625 const dispatch = createEventDispatcher$1(); 626 627 async function dispatch_change(i) { 628 await tick(); 629 630 dispatch("check", { 631 node_indices: [...node_indices, i], 632 checked: !tree[i].checked 633 }); 634 } 635 636 function checkbox_value_binding(value, checked, each_value, i) { 637 each_value[i].checked = value; 638 $$invalidate(0, tree); 639 } 640 641 const change_handler = i => dispatch_change(i); 642 const click_handler = i => $$invalidate(0, tree[i].children_visible = !tree[i].children_visible, tree); 643 const keydown_handler = (i, { key }) => (key === " " || key === "Enter") && $$invalidate(0, tree[i].children_visible = !tree[i].children_visible, tree); 644 645 function check_handler(event) { 646 bubble.call(this, $$self, event); 647 } 648 649 $$self.$$set = $$props => {
650 if ('interactive' in $$props) $$invalidate(1, interactive = $$props.interactive); 651 if ('tree' in $$props) $$invalidate(0, tree = $$props.tree); 652 if ('icons' in $$props) $$invalidate(2, icons = $$props.icons); 653 if ('node_indices' in $$props) $$invalidate(3, node_indices = $$props.node_indices); 654 if ('file_count' in $$props) $$invalidate(4, file_count = $$props.file_count); 655 }; 656 657 return [ 658 tree, 659 interactive, 660 icons, 661 node_indices, 662 file_count, 663 dispatch_change, 664 checkbox_value_binding, 665 change_handler, 666 click_handler, 667 keydown_handler, 668 check_handler 669 ]; 670} 671 672class FileTree extends SvelteComponent$2 { 673 constructor(options) { 674 super(); 675 676 init$2(this, options, instance$2, create_fragment$2, safe_not_equal$2, { 677 interactive: 1, 678 tree: 0, 679 icons: 2, 680 node_indices: 3, 681 file_count: 4 682 }); 683 } 684} 685 686const make_fs_store = () => { 687 const { subscribe, set, update } = writable(null); 688 let root = { 689 type: "folder", 690 path: "", 691 checked: false, 692 children_visible: false, 693 parent: null 694 }; 695 function create_fs_graph(serialised_node) { 696 root.children = process_tree(serialised_node); 697 set(root.children); 698 } 699 let old_checked_paths = []; 700 function set_checked_from_paths(checked_paths) { 701 if (dequal(checked_paths, old_checked_paths)) { 702 return checked_paths; 703 } 704 old_checked_paths = checked_paths; 705 check_node_and_children(root.children, false, []); 706 const new_checked_paths = []; 707 const seen_nodes = /* @__PURE__ */ new Set(); 708 for (let i = 0; i < checked_paths.length; i++) { 709 let _node = root; 710 let _path = []; 711 for (let j = 0; j < checked_paths[i].length; j++) { 712 if (!_node?.children) { 713 continue; 714 } 715 _path.push(checked_paths[i][j]); 716 _node = _node.children.find((v) => v.path === checked_paths[i][j]); 717 } 718 if (!_node) { 719 continue; 720 } 721 _node.checked = true; 722 ensure_visible(_node); 723 const nodes = check_node_and_children(_node.children, true, [_node]); 724 check_parent(_node); 725 nodes.forEach((node) => { 726 const path = get_full_path(node); 727 if (seen_nodes.has(path.join("/"))) { 728 return; 729 } 730 if (node.type === "file") { 731 new_checked_paths.push(path); 732 } 733 seen_nodes.add(path.join("/")); 734 }); 735 } 736 set(root.children); 737 return new_checked_paths; 738 } 739 function set_checked(indices, checked, checked_paths, file_count) { 740 let _node = root; 741 if (file_count === "single") { 742 check_node_and_children(root.children, false, []); 743 set(root.children); 744 } 745 for (let i = 0; i < indices.length; i++) { 746 _node = _node.children[indices[i]]; 747 } 748 _node.checked = checked; 749 const nodes = check_node_and_children(_node.children, checked, [_node]); 750 let new_checked_paths = new Map(checked_paths.map((v) => [v.join("/"), v])); 751 for (let i = 0; i < nodes.length; i++) { 752 const _path = get_full_path(nodes[i]); 753 if (!checked) { 754 new_checked_paths.delete(_path.join("/")); 755 } else if (checked) { 756 if (file_count === "single") { 757 new_checked_paths = /* @__PURE__ */ new Map(); 758 } 759 if (nodes[i].type === "file") { 760 new_checked_paths.set(_path.join("/"), _path); 761 } 762 } 763 } 764 check_parent(_node); 765 set(root.children); 766 old_checked_paths = Array.from(new_checked_paths).map((v) => v[1]); 767 return old_checked_paths; 768 } 769 return { 770 subscribe, 771 create_fs_graph, 772 set_checked, 773 set_checked_from_paths 774 }; 775}; 776function ensure_visible(node) { 777 if (node.parent) { 778 node.parent.children_visible = true; 779 ensure_visible(node.parent); 780 } 781} 782function process_tree(node, depth = 0, path_segments = [], parent = null) { 783 const folders = []; 784 const files = []; 785 for (let i = 0; i < node.length; i++) { 786 let n = node[i]; 787 if (n.type === "file") { 788 let index = files.findIndex( 789 (v) => v.path.toLocaleLowerCase() >= n.path.toLocaleLowerCase() 790 ); 791 const _node = { 792 children: void 0, 793 type: "file", 794 path: n.path,
795 checked: false, 796 children_visible: false, 797 parent 798 }; 799 files.splice(index === -1 ? files.length : index, 0, _node); 800 } else { 801 let index = folders.findIndex( 802 (v) => v.path.toLocaleLowerCase() >= n.path.toLocaleLowerCase() 803 ); 804 const _node = { 805 type: "folder", 806 path: n.path, 807 checked: false, 808 children_visible: false, 809 parent 810 }; 811 const children = process_tree( 812 n.children, 813 depth + 1, 814 [...path_segments, n.path], 815 _node 816 ); 817 _node.children = children; 818 folders.splice(index === -1 ? folders.length : index, 0, _node); 819 } 820 } 821 const last = files[files.length - 1] || folders[folders.length - 1]; 822 for (let i = 0; i < folders.length; i++) { 823 folders[i].last = last; 824 folders[i].previous = folders[i - 1] || null; 825 } 826 for (let i = 0; i < files.length; i++) { 827 if (i === 0) { 828 files[i].previous = folders[folders.length - 1] || null; 829 } else { 830 files[i].previous = files[i - 1] || null; 831 } 832 files[i].last = last; 833 } 834 return Array().concat(folders, files); 835} 836function get_full_path(node, path = []) { 837 const new_path = [node.path, ...path]; 838 if (node.parent) { 839 return get_full_path(node.parent, new_path); 840 } 841 return new_path; 842} 843function check_node_and_children(node, checked, checked_nodes) { 844 if (node === null || node === void 0) 845 return checked_nodes; 846 for (let i = 0; i < node.length; i++) { 847 node[i].checked = checked; 848 checked_nodes.push(node[i]); 849 if (checked) 850 ensure_visible(node[i]); 851 checked_nodes.concat( 852 check_node_and_children(node[i].children, checked, checked_nodes) 853 ); 854 } 855 return checked_nodes; 856} 857function check_parent(node) { 858 if (node === null || node === void 0 || !node.parent) 859 return; 860 let _node = node.last; 861 let nodes_checked = []; 862 while (_node) { 863 nodes_checked.push(_node.checked); 864 _node = _node.previous; 865 } 866 if (nodes_checked.every((v) => v === true)) { 867 node.parent.checked = true; 868 check_parent(node?.parent); 869 } else if (nodes_checked.some((v) => v === false)) { 870 node.parent.checked = false; 871 check_parent(node?.parent); 872 } 873} 874 875const DirectoryExplorer_svelte_svelte_type_style_lang = ''; 876 877/* home/runner/work/gradio/gradio/js/fileexplorer/shared/DirectoryExplorer.svelte generated by Svelte v4.2.2 */ 878const { 879 SvelteComponent: SvelteComponent$1, 880 attr, 881 check_outros, 882 component_subscribe, 883 create_component: create_component$1, 884 destroy_component: destroy_component$1, 885 detach: detach$1, 886 element, 887 empty, 888 group_outros, 889 init: init$1, 890 insert: insert$1, 891 mount_component: mount_component$1, 892 safe_not_equal: safe_not_equal$1, 893 transition_in: transition_in$1, 894 transition_out: transition_out$1 895} = window.__gradio__svelte__internal; 896const { createEventDispatcher } = window.__gradio__svelte__internal; 897function create_else_block(ctx) { 898 let empty_1; 899 let current; 900 901 empty_1 = new Empty({ 902 props: { 903 size: "large", 904 $$slots: { default: [create_default_slot$1] }, 905 $$scope: { ctx } 906 } 907 }); 908 909 return { 910 c() { 911 create_component$1(empty_1.$$.fragment); 912 }, 913 m(target, anchor) { 914 mount_component$1(empty_1, target, anchor); 915 current = true; 916 }, 917 p(ctx, dirty) { 918 const empty_1_changes = {}; 919 920 if (dirty & /*$$scope*/ 2048) { 921 empty_1_changes.$$scope = { dirty, ctx }; 922 } 923 924 empty_1.$set(empty_1_changes); 925 }, 926 i(local) { 927 if (current) return; 928 transition_in$1(empty_1.$$.fragment, local); 929 current = true; 930 }, 931 o(local) { 932 transition_out$1(empty_1.$$.fragment, local); 933 current = false; 934 }, 935 d(detaching) { 936 destroy_component$1(empty_1, detaching); 937 } 938 }; 939} 940 941// (35:0) {#if $tree && $tree.length} 942function create_if_block(ctx) { 943 let div; 944 let filetree; 945 let current; 946 947 filetree = new FileTree({ 948 props: { 949 tree: /*$tree*/ ctx[2], 950 interactive: /*interactive*/ ctx[0], 951 file_count: /*file_count*/ ctx[1] 952 } 953 }); 954 955 filetree.$on("check", /*check_handler*/ ctx[7]); 956 957 return { 958 c() { 959 div = element("div"); 960 create_component$1(filetree.$$.fragment); 961 attr(div, "class", "file-wrap svelte-dicskc"); 962 }, 963 m(target, anchor) { 964 insert$1(target, div, anchor);
965 mount_component$1(filetree, div, null); 966 current = true; 967 }, 968 p(ctx, dirty) { 969 const filetree_changes = {}; 970 if (dirty & /*$tree*/ 4) filetree_changes.tree = /*$tree*/ ctx[2]; 971 if (dirty & /*interactive*/ 1) filetree_changes.interactive = /*interactive*/ ctx[0]; 972 if (dirty & /*file_count*/ 2) filetree_changes.file_count = /*file_count*/ ctx[1]; 973 filetree.$set(filetree_changes); 974 }, 975 i(local) { 976 if (current) return; 977 transition_in$1(filetree.$$.fragment, local); 978 current = true; 979 }, 980 o(local) { 981 transition_out$1(filetree.$$.fragment, local); 982 current = false; 983 }, 984 d(detaching) { 985 if (detaching) { 986 detach$1(div); 987 } 988 989 destroy_component$1(filetree); 990 } 991 }; 992} 993 994// (45:1) <Empty size="large"> 995function create_default_slot$1(ctx) { 996 let file; 997 let current; 998 file = new File({}); 999 1000 return { 1001 c() { 1002 create_component$1(file.$$.fragment); 1003 }, 1004 m(target, anchor) { 1005 mount_component$1(file, target, anchor); 1006 current = true; 1007 }, 1008 i(local) { 1009 if (current) return; 1010 transition_in$1(file.$$.fragment, local); 1011 current = true; 1012 }, 1013 o(local) { 1014 transition_out$1(file.$$.fragment, local); 1015 current = false; 1016 }, 1017 d(detaching) { 1018 destroy_component$1(file, detaching); 1019 } 1020 }; 1021} 1022 1023function create_fragment$1(ctx) { 1024 let current_block_type_index; 1025 let if_block; 1026 let if_block_anchor; 1027 let current; 1028 const if_block_creators = [create_if_block, create_else_block]; 1029 const if_blocks = []; 1030 1031 function select_block_type(ctx, dirty) { 1032 if (/*$tree*/ ctx[2] && /*$tree*/ ctx[2].length) return 0; 1033 return 1; 1034 } 1035 1036 current_block_type_index = select_block_type(ctx); 1037 if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx); 1038 1039 return { 1040 c() { 1041 if_block.c(); 1042 if_block_anchor = empty(); 1043 }, 1044 m(target, anchor) { 1045 if_blocks[current_block_type_index].m(target, anchor); 1046 insert$1(target, if_block_anchor, anchor); 1047 current = true; 1048 }, 1049 p(ctx, [dirty]) { 1050 let previous_block_index = current_block_type_index; 1051 current_block_type_index = select_block_type(ctx); 1052 1053 if (current_block_type_index === previous_block_index) { 1054 if_blocks[current_block_type_index].p(ctx, dirty); 1055 } else { 1056 group_outros(); 1057 1058 transition_out$1(if_blocks[previous_block_index], 1, 1, () => { 1059 if_blocks[previous_block_index] = null; 1060 }); 1061 1062 check_outros(); 1063 if_block = if_blocks[current_block_type_index]; 1064 1065 if (!if_block) { 1066 if_block = if_blocks[current_block_type_index] = if_block_creators[current_block_type_index](ctx); 1067 if_block.c(); 1068 } else { 1069 if_block.p(ctx, dirty); 1070 } 1071 1072 transition_in$1(if_block, 1); 1073 if_block.m(if_block_anchor.parentNode, if_block_anchor); 1074 } 1075 }, 1076 i(local) { 1077 if (current) return; 1078 transition_in$1(if_block); 1079 current = true; 1080 }, 1081 o(local) { 1082 transition_out$1(if_block); 1083 current = false; 1084 }, 1085 d(detaching) { 1086 if (detaching) { 1087 detach$1(if_block_anchor); 1088 } 1089 1090 if_blocks[current_block_type_index].d(detaching); 1091 } 1092 }; 1093} 1094 1095function instance$1($$self, $$props, $$invalidate) { 1096 let $tree; 1097 let { interactive } = $$props; 1098 let { server } = $$props; 1099 let { file_count = "multiple" } = $$props; 1100 let { value = [] } = $$props; 1101 const dispatch = createEventDispatcher(); 1102 const tree = make_fs_store(); 1103 component_subscribe($$self, tree, value => $$invalidate(2, $tree = value)); 1104 1105 server.ls().then(v => { 1106 tree.create_fs_graph(v); 1107 }); 1108 1109 function set_checked_from_paths() { 1110 $$invalidate(5, value = file_count === "single" ? [value[0] || []] : value); 1111 $$invalidate(5, value = tree.set_checked_from_paths(value)); 1112 1113 if (!dequal(value, old_value)) { 1114 old_value = value; 1115 dispatch("change", value); 1116 } 1117 } 1118 1119 let old_value = []; 1120 1121 function handle_select({ node_indices, checked }) { 1122 $$invalidate(5, value = tree.set_checked(node_indices, checked, value, file_count)); 1123 1124 if (!dequal(value, old_value)) { 1125 old_value = value; 1126 dispatch("change", value); 1127 } 1128 } 1129 1130 const check_handler = ({ detail }) => handle_select(detail); 1131 1132 $$self.$$set = $$props => {
1133 if ('interactive' in $$props) $$invalidate(0, interactive = $$props.interactive); 1134 if ('server' in $$props) $$invalidate(6, server = $$props.server); 1135 if ('file_count' in $$props) $$invalidate(1, file_count = $$props.file_count); 1136 if ('value' in $$props) $$invalidate(5, value = $$props.value); 1137 }; 1138 1139 $$self.$$.update = () => { 1140 if ($$self.$$.dirty & /*value, $tree*/ 36) { 1141 value.length && $tree && set_checked_from_paths(); 1142 } 1143 }; 1144 1145 return [ 1146 interactive, 1147 file_count, 1148 $tree, 1149 tree, 1150 handle_select, 1151 value, 1152 server, 1153 check_handler 1154 ]; 1155} 1156 1157class DirectoryExplorer extends SvelteComponent$1 { 1158 constructor(options) { 1159 super(); 1160 1161 init$1(this, options, instance$1, create_fragment$1, safe_not_equal$1, { 1162 interactive: 0, 1163 server: 6, 1164 file_count: 1, 1165 value: 5 1166 }); 1167 } 1168} 1169 1170/* home/runner/work/gradio/gradio/js/fileexplorer/Index.svelte generated by Svelte v4.2.2 */ 1171const { 1172 SvelteComponent, 1173 add_flush_callback, 1174 assign, 1175 bind, 1176 binding_callbacks, 1177 create_component, 1178 destroy_component, 1179 detach, 1180 flush, 1181 get_spread_object, 1182 get_spread_update, 1183 init, 1184 insert, 1185 mount_component, 1186 safe_not_equal, 1187 space, 1188 transition_in, 1189 transition_out 1190} = window.__gradio__svelte__internal; 1191function create_default_slot(ctx) { 1192 let statustracker; 1193 let t0; 1194 let blocklabel; 1195 let t1; 1196 let directoryexplorer; 1197 let updating_value; 1198 let current; 1199 1200 const statustracker_spread_levels = [ 1201 /*loading_status*/ ctx[8], 1202 { 1203 autoscroll: /*gradio*/ ctx[12].autoscroll 1204 }, 1205 { i18n: /*gradio*/ ctx[12].i18n } 1206 ]; 1207 1208 let statustracker_props = {}; 1209 1210 for (let i = 0; i < statustracker_spread_levels.length; i += 1) { 1211 statustracker_props = assign(statustracker_props, statustracker_spread_levels[i]); 1212 } 1213 1214 statustracker = new Static({ props: statustracker_props }); 1215 1216 blocklabel = new BlockLabel({ 1217 props: { 1218 show_label: /*show_label*/ ctx[5], 1219 Icon: File, 1220 label: /*label*/ ctx[4] || "FileExplorer", 1221 float: false 1222 } 1223 }); 1224 1225 function directoryexplorer_value_binding(value) { 1226 /*directoryexplorer_value_binding*/ ctx[15](value); 1227 } 1228 1229 let directoryexplorer_props = { 1230 file_count: /*file_count*/ ctx[7], 1231 server: /*server*/ ctx[13], 1232 interactive: /*interactive*/ ctx[14] 1233 }; 1234 1235 if (/*value*/ ctx[0] !== void 0) { 1236 directoryexplorer_props.value = /*value*/ ctx[0]; 1237 } 1238 1239 directoryexplorer = new DirectoryExplorer({ props: directoryexplorer_props }); 1240 binding_callbacks.push(() => bind(directoryexplorer, 'value', directoryexplorer_value_binding)); 1241 directoryexplorer.$on("change", /*change_handler*/ ctx[16]); 1242 1243 return { 1244 c() { 1245 create_component(statustracker.$$.fragment); 1246 t0 = space(); 1247 create_component(blocklabel.$$.fragment); 1248 t1 = space(); 1249 create_component(directoryexplorer.$$.fragment); 1250 }, 1251 m(target, anchor) { 1252 mount_component(statustracker, target, anchor); 1253 insert(target, t0, anchor); 1254 mount_component(blocklabel, target, anchor); 1255 insert(target, t1, anchor); 1256 mount_component(directoryexplorer, target, anchor); 1257 current = true; 1258 }, 1259 p(ctx, dirty) { 1260 const statustracker_changes = (dirty & /*loading_status, gradio*/ 4352) 1261 ? get_spread_update(statustracker_spread_levels, [ 1262 dirty & /*loading_status*/ 256 && get_spread_object(/*loading_status*/ ctx[8]), 1263 dirty & /*gradio*/ 4096 && { 1264 autoscroll: /*gradio*/ ctx[12].autoscroll 1265 }, 1266 dirty & /*gradio*/ 4096 && { i18n: /*gradio*/ ctx[12].i18n } 1267 ]) 1268 : {}; 1269 1270 statustracker.$set(statustracker_changes); 1271 const blocklabel_changes = {}; 1272 if (dirty & /*show_label*/ 32) blocklabel_changes.show_label = /*show_label*/ ctx[5]; 1273 if (dirty & /*label*/ 16) blocklabel_changes.label = /*label*/ ctx[4] || "FileExplorer"; 1274 blocklabel.$set(blocklabel_changes); 1275 const directoryexplorer_changes = {}; 1276 if (dirty & /*file_count*/ 128) directoryexplorer_changes.file_count = /*file_count*/ ctx[7]; 1277 if (dirty & /*server*/ 8192) directoryexplorer_changes.server = /*server*/ ctx[13]; 1278 if (dirty & /*interactive*/ 16384) directoryexplorer_changes.interactive = /*interactive*/ ctx[14]; 1279 1280 if (!updating_value && dirty & /*value*/ 1) { 1281 updating_value = true; 1282 directoryexplorer_changes.value = /*value*/ ctx[0]; 1283 add_flush_callback(() => updating_value = false); 1284 } 1285 1286 directoryexplorer.$set(directoryexplorer_changes); 1287 }, 1288 i(local) { 1289 if (current) return; 1290 transition_in(statustracker.$$.fragment, local); 1291 transition_in(blocklabel.$$.fragment, local); 1292 transition_in(directoryexplorer.$$.fragment, local); 1293 current = true; 1294 }, 1295 o(local) { 1296 transition_out(statustracker.$$.fragment, local); 1297 transition_out(blocklabel.$$.fragment, local); 1298 transition_out(directoryexplorer.$$.fragment, local); 1299 current = false;
1300 }, 1301 d(detaching) { 1302 if (detaching) { 1303 detach(t0); 1304 detach(t1); 1305 } 1306 1307 destroy_component(statustracker, detaching); 1308 destroy_component(blocklabel, detaching); 1309 destroy_component(directoryexplorer, detaching); 1310 } 1311 }; 1312} 1313 1314function create_fragment(ctx) { 1315 let block; 1316 let current; 1317 1318 block = new Block({ 1319 props: { 1320 visible: /*visible*/ ctx[3], 1321 variant: /*value*/ ctx[0] === null ? "dashed" : "solid", 1322 border_mode: "base", 1323 padding: false, 1324 elem_id: /*elem_id*/ ctx[1], 1325 elem_classes: /*elem_classes*/ ctx[2], 1326 container: /*container*/ ctx[9], 1327 scale: /*scale*/ ctx[10], 1328 min_width: /*min_width*/ ctx[11], 1329 allow_overflow: false, 1330 height: /*height*/ ctx[6], 1331 $$slots: { default: [create_default_slot] }, 1332 $$scope: { ctx } 1333 } 1334 }); 1335 1336 return { 1337 c() { 1338 create_component(block.$$.fragment); 1339 }, 1340 m(target, anchor) { 1341 mount_component(block, target, anchor); 1342 current = true; 1343 }, 1344 p(ctx, [dirty]) { 1345 const block_changes = {}; 1346 if (dirty & /*visible*/ 8) block_changes.visible = /*visible*/ ctx[3]; 1347 if (dirty & /*value*/ 1) block_changes.variant = /*value*/ ctx[0] === null ? "dashed" : "solid"; 1348 if (dirty & /*elem_id*/ 2) block_changes.elem_id = /*elem_id*/ ctx[1]; 1349 if (dirty & /*elem_classes*/ 4) block_changes.elem_classes = /*elem_classes*/ ctx[2]; 1350 if (dirty & /*container*/ 512) block_changes.container = /*container*/ ctx[9]; 1351 if (dirty & /*scale*/ 1024) block_changes.scale = /*scale*/ ctx[10]; 1352 if (dirty & /*min_width*/ 2048) block_changes.min_width = /*min_width*/ ctx[11]; 1353 if (dirty & /*height*/ 64) block_changes.height = /*height*/ ctx[6]; 1354 1355 if (dirty & /*$$scope, file_count, server, interactive, value, gradio, show_label, label, loading_status*/ 160177) { 1356 block_changes.$$scope = { dirty, ctx }; 1357 } 1358 1359 block.$set(block_changes); 1360 }, 1361 i(local) { 1362 if (current) return; 1363 transition_in(block.$$.fragment, local); 1364 current = true; 1365 }, 1366 o(local) { 1367 transition_out(block.$$.fragment, local); 1368 current = false; 1369 }, 1370 d(detaching) { 1371 destroy_component(block, detaching); 1372 } 1373 }; 1374} 1375 1376function instance($$self, $$props, $$invalidate) { 1377 let { elem_id = "" } = $$props; 1378 let { elem_classes = [] } = $$props; 1379 let { visible = true } = $$props; 1380 let { value } = $$props; 1381 let { label } = $$props; 1382 let { show_label } = $$props; 1383 let { height = undefined } = $$props; 1384 let { file_count = "multiple" } = $$props; 1385 let { loading_status } = $$props; 1386 let { container = true } = $$props; 1387 let { scale = null } = $$props; 1388 let { min_width = undefined } = $$props; 1389 let { gradio } = $$props; 1390 let { server } = $$props; 1391 let { interactive } = $$props; 1392 1393 function directoryexplorer_value_binding(value$1) { 1394 value = value$1; 1395 $$invalidate(0, value); 1396 } 1397 1398 const change_handler = () => gradio.dispatch("change"); 1399 1400 $$self.$$set = $$props => {
1401 if ('elem_id' in $$props) $$invalidate(1, elem_id = $$props.elem_id); 1402 if ('elem_classes' in $$props) $$invalidate(2, elem_classes = $$props.elem_classes); 1403 if ('visible' in $$props) $$invalidate(3, visible = $$props.visible); 1404 if ('value' in $$props) $$invalidate(0, value = $$props.value); 1405 if ('label' in $$props) $$invalidate(4, label = $$props.label); 1406 if ('show_label' in $$props) $$invalidate(5, show_label = $$props.show_label); 1407 if ('height' in $$props) $$invalidate(6, height = $$props.height); 1408 if ('file_count' in $$props) $$invalidate(7, file_count = $$props.file_count); 1409 if ('loading_status' in $$props) $$invalidate(8, loading_status = $$props.loading_status); 1410 if ('container' in $$props) $$invalidate(9, container = $$props.container); 1411 if ('scale' in $$props) $$invalidate(10, scale = $$props.scale); 1412 if ('min_width' in $$props) $$invalidate(11, min_width = $$props.min_width); 1413 if ('gradio' in $$props) $$invalidate(12, gradio = $$props.gradio); 1414 if ('server' in $$props) $$invalidate(13, server = $$props.server);
1415 if ('interactive' in $$props) $$invalidate(14, interactive = $$props.interactive); 1416 }; 1417 1418 return [ 1419 value, 1420 elem_id, 1421 elem_classes, 1422 visible, 1423 label, 1424 show_label, 1425 height, 1426 file_count, 1427 loading_status, 1428 container, 1429 scale, 1430 min_width, 1431 gradio, 1432 server, 1433 interactive, 1434 directoryexplorer_value_binding, 1435 change_handler 1436 ]; 1437} 1438 1439class Index extends SvelteComponent { 1440 constructor(options) { 1441 super(); 1442 1443 init(this, options, instance, create_fragment, safe_not_equal, { 1444 elem_id: 1, 1445 elem_classes: 2, 1446 visible: 3, 1447 value: 0, 1448 label: 4, 1449 show_label: 5, 1450 height: 6, 1451 file_count: 7, 1452 loading_status: 8, 1453 container: 9, 1454 scale: 10, 1455 min_width: 11, 1456 gradio: 12, 1457 server: 13, 1458 interactive: 14 1459 }); 1460 } 1461 1462 get elem_id() { 1463 return this.$$.ctx[1]; 1464 } 1465 1466 set elem_id(elem_id) { 1467 this.$$set({ elem_id }); 1468 flush(); 1469 } 1470 1471 get elem_classes() { 1472 return this.$$.ctx[2]; 1473 } 1474 1475 set elem_classes(elem_classes) { 1476 this.$$set({ elem_classes }); 1477 flush(); 1478 } 1479 1480 get visible() { 1481 return this.$$.ctx[3]; 1482 } 1483 1484 set visible(visible) { 1485 this.$$set({ visible }); 1486 flush(); 1487 } 1488 1489 get value() { 1490 return this.$$.ctx[0]; 1491 } 1492 1493 set value(value) { 1494 this.$$set({ value }); 1495 flush(); 1496 } 1497 1498 get label() { 1499 return this.$$.ctx[4]; 1500 } 1501 1502 set label(label) { 1503 this.$$set({ label }); 1504 flush(); 1505 } 1506 1507 get show_label() { 1508 return this.$$.ctx[5]; 1509 } 1510 1511 set show_label(show_label) { 1512 this.$$set({ show_label }); 1513 flush(); 1514 } 1515 1516 get height() { 1517 return this.$$.ctx[6]; 1518 } 1519 1520 set height(height) { 1521 this.$$set({ height }); 1522 flush(); 1523 } 1524 1525 get file_count() { 1526 return this.$$.ctx[7]; 1527 } 1528 1529 set file_count(file_count) { 1530 this.$$set({ file_count }); 1531 flush(); 1532 } 1533 1534 get loading_status() { 1535 return this.$$.ctx[8]; 1536 } 1537 1538 set loading_status(loading_status) { 1539 this.$$set({ loading_status }); 1540 flush(); 1541 } 1542 1543 get container() { 1544 return this.$$.ctx[9]; 1545 } 1546 1547 set container(container) { 1548 this.$$set({ container }); 1549 flush(); 1550 } 1551 1552 get scale() { 1553 return this.$$.ctx[10]; 1554 } 1555 1556 set scale(scale) { 1557 this.$$set({ scale }); 1558 flush(); 1559 } 1560 1561 get min_width() { 1562 return this.$$.ctx[11]; 1563 } 1564 1565 set min_width(min_width) { 1566 this.$$set({ min_width }); 1567 flush(); 1568 } 1569 1570 get gradio() { 1571 return this.$$.ctx[12]; 1572 } 1573 1574 set gradio(gradio) { 1575 this.$$set({ gradio }); 1576 flush(); 1577 } 1578 1579 get server() { 1580 return this.$$.ctx[13]; 1581 } 1582 1583 set server(server) { 1584 this.$$set({ server }); 1585 flush(); 1586 } 1587 1588 get interactive() { 1589 return this.$$.ctx[14]; 1590 } 1591 1592 set interactive(interactive) { 1593 this.$$set({ interactive }); 1594 flush(); 1595 } 1596} 1597 1598export { Index as default }; 1599//# sourceMappingURL=Index-aac54ffe.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.