{"version":3,"mappings":"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","names":["insert","target","svg","anchor","append","path","ShareError","message","uploadToHuggingFace","data","type","blob","contentType","filename","response","dataURLtoBlob","file","uploadResponse","error","dataurl","arr","mime","bstr","n","u8arr","copy","node","handle_copy","event","copy_button","e","copy_feedback","_copy_sucess_button","copy_text","copy_sucess_button","copy_to_clipboard","value","copied","textArea","format_time","seconds","hours","minutes","seconds_remainder","padded_minutes","padded_seconds","Gradio","#id","#el","id","el","theme","version","root","autoscroll","max_file_size","i18n","x","client","event_name","flip","from","to","params","style","transform","ox","oy","dx","dy","delay","duration","easing","cubicOut","is_function","t","u","y","sx","sy","onMount","ctx","div5","div0","div3","div1","div2","button","span","div4","div5_intro","create_in_transition","fade","div5_outro","create_out_transition","$$props","dispatch","createEventDispatcher","close_message","div","stop_animation","create_animation","rect","i","scroll_to_top","_messages","messages","g","path0","path1","h1","p0","code0","p1","click_handler","api_logo","p","if_block","create_if_block","attr","img","img_src_value","h2","span1","span0","br","button1","api_count","click_handler_1","represent_value","lang","simplify_file_data","replace_file_data_with_file_function","stringify_except_file_function","is_potentially_nested_file_data","obj","key","item","index","jsonString","regex","match","regexNone","t_value","dirty","set_data","create_if_block_3","t1_value","t1","create_if_block_2","create_if_block_1","hr","t6","t6_value","t8","t8_value","create_if_block_4","h4","current","is_running","endpoint_returns","js_returns","current_language","code","$$invalidate","bash_install","pre","js_install","py_install","h3","api_name","fn_index","named","endpointdetail_changes","create_if_block_6","t4_value","t17_value","copybutton_changes","t4","t17","t3_value","t3","t7_value","t14_value","span2","span3","span4","span5","t7","t14","dependency","dependency_index","space_id","endpoint_parameters","python_code","js_code","bash_post_code","has_file_path","param","blob_components","blob_examples","$$value","tick","t2","t2_value","t5","t5_value","dependencies","short_root","python_code_text","bash_code","api_calls","get_info","endpoints_info","py_zipped","js_zipped","bash_zipped","format_api_call","call","d","param_info","param_name","python_type","py_api_calls","js_api_calls","bash_api_calls","api_names","python","javascript","bash","t0_value","t0","apibanner_changes","each_blocks","img_1","img_1_src_value","li","li_class_value","create_if_block_5","if_block2","p2","p3","recordingsnippet_changes","a","a_href_value","py_docs","js_docs","spaces_docs_suffix","bash_docs","br0","br1","strong","code1","code2","code3","code4","code5","code6","app","root_node","langs","get_js_info","info","js_info","js_api_info","language","formatter","get","format","binding_callbacks","component","theme_mode","instance","gradio","elem_id","elem_classes","_id","s","wrap","_target","args","props","report","propargs","ev","v","bind","_component","setContext","each_value","ensure_array_like","get_key","render_changes","rendercomponent_props","get_spread_object","rendercomponent_changes","parent","filtered_children","child","$$self","valid_node","c","rootNode","logo","create_loading_status_store","store","writable","fn_inputs","fn_outputs","pending_outputs","pending_inputs","inputs_to_update","fn_status","update","status","queue","size","position","eta","progress","outputs","inputs","last_status","outputs_to_update","new_status","pending_count","new_count","queue_position","queue_size","register","pending_updates","create_components","_component_map","target_map","_target_map","constructor_map","instance_map","loading_status","layout_store","_components","keyed_component_values","_rootNode","create_layout","_app","components","layout","options","store_keyed_values","dep","process_frontend_fn","create_target_meta","get_inputs_outputs","preload_all_components","acc","walk_layout","rerender_layout","render_id","k","current_element","all_current_children","add_to_current_children","get_component","determine_interactivity","process_server_fn","update_scheduled","update_scheduled_store","flush","new_value","update_value","updates","get_data","comp","AsyncFunction","source","backend_fn","input_length","output_length","targets","fn_id","trigger","input","output","has_no_default_value","interactive_prop","server_fns","fn","class_id","example_components","example_component_map","name","_c","matching_component","load_component","example_component","img_alt_value","footer","if_block4","MESSAGE_QUOTE_RE","SHOW_DUPLICATE_MESSAGE_ON_ETA","SHOW_MOBILE_QUEUE_WARNING_ON_ETA","isCustomEvent","setupi18n","title","show_api","show_footer","control_page_title","app_mode","js","fill_height","ready","_layout","scheduled_updates","api_docs_visible","api_recorder_visible","set_api_docs_visible","visible","render_complete","handle_update","meta_updates","update_key","submit_map","new_message","_error_id","add_new_message","user_left_page","DUPLICATE_MESSAGE","$_","MOBILE_QUEUE_WARNING","MOBILE_RECONNECT_MESSAGE","is_mobile_device","showed_duplicate_message","showed_mobile_warning","wait_then_trigger_api_call","dep_index","trigger_id","event_data","_unsub","unsub","$scheduled_updates","updating","trigger_api_call","current_status","payload","make_prediction","submission","set_status","$loading_status","handle_data","handle_render","handle_status_update","handle_log","render_layout","_dependencies","deps_to_remove","msg","log","level","_","_message","b","trigger_share","description","discussion_url","handle_error_close","m","is_external_url","link","handle_mount","_link","prop","update_status","$targets","dep_id","statuses","additional_updates","pending_status","$_layout"],"ignoreList":[4],"sources":["../../../../js/icons/src/Error.svelte","../../../../js/icons/src/Info.svelte","../../../../js/icons/src/Warning.svelte","../../../../js/utils/src/utils.ts","../../../../node_modules/.pnpm/svelte@4.2.15/node_modules/svelte/src/runtime/animate/index.js","../../../../js/statustracker/static/ToastContent.svelte","../../../../js/statustracker/static/Toast.svelte","../../../../js/app/src/api_docs/img/clear.svelte","../../../../js/app/src/api_docs/NoApi.svelte","../../../../js/app/src/api_docs/img/api-logo.svg","../../../../js/app/src/api_docs/ApiBanner.svelte","../../../../js/app/src/api_docs/utils.ts","../../../../js/app/src/api_docs/ParametersSnippet.svelte","../../../../js/app/src/api_docs/CopyButton.svelte","../../../../js/app/src/api_docs/InstallSnippet.svelte","../../../../js/app/src/api_docs/EndpointDetail.svelte","../../../../js/app/src/api_docs/CodeSnippet.svelte","../../../../js/app/src/api_docs/RecordingSnippet.svelte","../../../../js/app/src/api_docs/img/python.svg","../../../../js/app/src/api_docs/img/javascript.svg","../../../../js/app/src/api_docs/img/bash.svg","../../../../js/app/src/api_docs/ResponseSnippet.svelte","../../../../js/app/src/api_docs/ApiDocs.svelte","../../../../js/app/src/api_docs/ApiRecorder.svelte","../../../../js/app/src/gradio_helper.ts","../../../../js/app/src/RenderComponent.svelte","../../../../js/app/src/Render.svelte","../../../../js/app/src/MountComponents.svelte","../../../../js/app/src/images/logo.svg","../../../../js/app/src/stores.ts","../../../../js/app/src/init.ts","../../../../js/app/src/Blocks.svelte"],"sourcesContent":["\n\t\n\n","\n\t\n\n","\n\t\n\n","import type { ActionReturn } from \"svelte/action\";\nimport type { Client } from \"@gradio/client\";\nexport interface SelectData {\n\tindex: number | [number, number];\n\tvalue: any;\n\tselected?: boolean;\n}\n\nexport interface LikeData {\n\tindex: number | [number, number];\n\tvalue: any;\n\tliked?: boolean;\n}\n\nexport interface KeyUpData {\n\tkey: string;\n\tinput_value: string;\n}\n\nexport interface ShareData {\n\tdescription: string;\n\ttitle?: string;\n}\n\nexport class ShareError extends Error {\n\tconstructor(message: string) {\n\t\tsuper(message);\n\t\tthis.name = \"ShareError\";\n\t}\n}\n\nexport async function uploadToHuggingFace(\n\tdata: string,\n\ttype: \"base64\" | \"url\"\n): Promise {\n\tif (window.__gradio_space__ == null) {\n\t\tthrow new ShareError(\"Must be on Spaces to share.\");\n\t}\n\tlet blob: Blob;\n\tlet contentType: string;\n\tlet filename: string;\n\tif (type === \"url\") {\n\t\tconst response = await fetch(data);\n\t\tblob = await response.blob();\n\t\tcontentType = response.headers.get(\"content-type\") || \"\";\n\t\tfilename = response.headers.get(\"content-disposition\") || \"\";\n\t} else {\n\t\tblob = dataURLtoBlob(data);\n\t\tcontentType = data.split(\";\")[0].split(\":\")[1];\n\t\tfilename = \"file\" + contentType.split(\"/\")[1];\n\t}\n\n\tconst file = new File([blob], filename, { type: contentType });\n\n\t// Send file to endpoint\n\tconst uploadResponse = await fetch(\"https://huggingface.co/uploads\", {\n\t\tmethod: \"POST\",\n\t\tbody: file,\n\t\theaders: {\n\t\t\t\"Content-Type\": file.type,\n\t\t\t\"X-Requested-With\": \"XMLHttpRequest\"\n\t\t}\n\t});\n\n\t// Check status of response\n\tif (!uploadResponse.ok) {\n\t\tif (\n\t\t\tuploadResponse.headers.get(\"content-type\")?.includes(\"application/json\")\n\t\t) {\n\t\t\tconst error = await uploadResponse.json();\n\t\t\tthrow new ShareError(`Upload failed: ${error.error}`);\n\t\t}\n\t\tthrow new ShareError(`Upload failed.`);\n\t}\n\n\t// Return response if needed\n\tconst result = await uploadResponse.text();\n\treturn result;\n}\n\nfunction dataURLtoBlob(dataurl: string): Blob {\n\tvar arr = dataurl.split(\",\"),\n\t\tmime = (arr[0].match(/:(.*?);/) as RegExpMatchArray)[1],\n\t\tbstr = atob(arr[1]),\n\t\tn = bstr.length,\n\t\tu8arr = new Uint8Array(n);\n\twhile (n--) {\n\t\tu8arr[n] = bstr.charCodeAt(n);\n\t}\n\treturn new Blob([u8arr], { type: mime });\n}\n\nexport function copy(node: HTMLDivElement): ActionReturn {\n\tnode.addEventListener(\"click\", handle_copy);\n\n\tasync function handle_copy(event: MouseEvent): Promise {\n\t\tconst path = event.composedPath() as HTMLButtonElement[];\n\n\t\tconst [copy_button] = path.filter(\n\t\t\t(e) => e?.tagName === \"BUTTON\" && e.classList.contains(\"copy_code_button\")\n\t\t);\n\n\t\tif (copy_button) {\n\t\t\tevent.stopImmediatePropagation();\n\n\t\t\tconst copy_text = copy_button.parentElement!.innerText.trim();\n\t\t\tconst copy_sucess_button = Array.from(\n\t\t\t\tcopy_button.children\n\t\t\t)[1] as HTMLDivElement;\n\n\t\t\tconst copied = await copy_to_clipboard(copy_text);\n\n\t\t\tif (copied) copy_feedback(copy_sucess_button);\n\n\t\t\tfunction copy_feedback(_copy_sucess_button: HTMLDivElement): void {\n\t\t\t\t_copy_sucess_button.style.opacity = \"1\";\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t_copy_sucess_button.style.opacity = \"0\";\n\t\t\t\t}, 2000);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn {\n\t\tdestroy(): void {\n\t\t\tnode.removeEventListener(\"click\", handle_copy);\n\t\t}\n\t};\n}\n\nasync function copy_to_clipboard(value: string): Promise {\n\tlet copied = false;\n\tif (\"clipboard\" in navigator) {\n\t\tawait navigator.clipboard.writeText(value);\n\t\tcopied = true;\n\t} else {\n\t\tconst textArea = document.createElement(\"textarea\");\n\t\ttextArea.value = value;\n\n\t\ttextArea.style.position = \"absolute\";\n\t\ttextArea.style.left = \"-999999px\";\n\n\t\tdocument.body.prepend(textArea);\n\t\ttextArea.select();\n\n\t\ttry {\n\t\t\tdocument.execCommand(\"copy\");\n\t\t\tcopied = true;\n\t\t} catch (error) {\n\t\t\tconsole.error(error);\n\t\t\tcopied = false;\n\t\t} finally {\n\t\t\ttextArea.remove();\n\t\t}\n\t}\n\n\treturn copied;\n}\n\nexport const format_time = (seconds: number): string => {\n\tconst hours = Math.floor(seconds / 3600);\n\tconst minutes = Math.floor((seconds % 3600) / 60);\n\tconst seconds_remainder = Math.round(seconds) % 60;\n\tconst padded_minutes = `${minutes < 10 ? \"0\" : \"\"}${minutes}`;\n\tconst padded_seconds = `${\n\t\tseconds_remainder < 10 ? \"0\" : \"\"\n\t}${seconds_remainder}`;\n\n\tif (hours > 0) {\n\t\treturn `${hours}:${padded_minutes}:${padded_seconds}`;\n\t}\n\treturn `${minutes}:${padded_seconds}`;\n};\n\nexport type I18nFormatter = any;\nexport class Gradio = Record> {\n\t#id: number;\n\ttheme: string;\n\tversion: string;\n\ti18n: I18nFormatter;\n\t#el: HTMLElement;\n\troot: string;\n\tautoscroll: boolean;\n\tmax_file_size: number | null;\n\tclient: Client;\n\n\tconstructor(\n\t\tid: number,\n\t\tel: HTMLElement,\n\t\ttheme: string,\n\t\tversion: string,\n\t\troot: string,\n\t\tautoscroll: boolean,\n\t\tmax_file_size: number | null,\n\t\ti18n: I18nFormatter = (x: string): string => x,\n\t\tclient: Client\n\t) {\n\t\tthis.#id = id;\n\t\tthis.theme = theme;\n\t\tthis.version = version;\n\t\tthis.#el = el;\n\t\tthis.max_file_size = max_file_size;\n\n\t\tthis.i18n = i18n;\n\t\tthis.root = root;\n\t\tthis.autoscroll = autoscroll;\n\t\tthis.client = client;\n\t}\n\n\tdispatch(event_name: E, data?: T[E]): void {\n\t\tconst e = new CustomEvent(\"gradio\", {\n\t\t\tbubbles: true,\n\t\t\tdetail: { data, id: this.#id, event: event_name }\n\t\t});\n\t\tthis.#el.dispatchEvent(e);\n\t}\n}\n","import { cubicOut } from '../easing/index.js';\nimport { is_function } from '../internal/index.js';\n\n/**\n * The flip function calculates the start and end position of an element and animates between them, translating the x and y values.\n * `flip` stands for [First, Last, Invert, Play](https://aerotwist.com/blog/flip-your-animations/).\n *\n * https://svelte.dev/docs/svelte-animate#flip\n * @param {Element} node\n * @param {{ from: DOMRect; to: DOMRect }} fromTo\n * @param {import('./public.js').FlipParams} params\n * @returns {import('./public.js').AnimationConfig}\n */\nexport function flip(node, { from, to }, params = {}) {\n\tconst style = getComputedStyle(node);\n\tconst transform = style.transform === 'none' ? '' : style.transform;\n\tconst [ox, oy] = style.transformOrigin.split(' ').map(parseFloat);\n\tconst dx = from.left + (from.width * ox) / to.width - (to.left + ox);\n\tconst dy = from.top + (from.height * oy) / to.height - (to.top + oy);\n\tconst { delay = 0, duration = (d) => Math.sqrt(d) * 120, easing = cubicOut } = params;\n\treturn {\n\t\tdelay,\n\t\tduration: is_function(duration) ? duration(Math.sqrt(dx * dx + dy * dy)) : duration,\n\t\teasing,\n\t\tcss: (t, u) => {\n\t\t\tconst x = u * dx;\n\t\t\tconst y = u * dy;\n\t\t\tconst sx = t + (u * from.width) / to.width;\n\t\t\tconst sy = t + (u * from.height) / to.height;\n\t\t\treturn `transform: ${transform} translate(${x}px, ${y}px) scale(${sx}, ${sy});`;\n\t\t}\n\t};\n}\n","\n\n\n\n\n\t
\n\t\t{#if type === \"warning\"}\n\t\t\t\n\t\t{:else if type === \"info\"}\n\t\t\t\n\t\t{:else if type === \"error\"}\n\t\t\t\n\t\t{/if}\n\t
\n\n\t
\n\t\t
{type}
\n\t\t
\n\t\t\t{message}\n\t\t
\n\t
\n\n\t\n\t\t×\n\t\n\n\t
\n
\n\n\n","\n\n
\n\t{#each messages as { type, message, id } (id)}\n\t\t
\n\t\t\t\n\t\t
\n\t{/each}\n
\n\n\n","\n\t\n\t\t\n\t\t\n\t\n\n","\n\n
\n\t

API Docs

\n\t

\n\t\tNo API Routes found for\n\t\t\n\t\t\t{root}\n\t\t\n\t

\n\t

\n\t\tTo expose an API endpoint of your app in this page, set the \n\t\t\tapi_name\n\t\t\n\t\tparameter of the event listener.\n\t\t
\n\t\tFor more information, visit the\n\t\t\n\t\t\tAPI Page guide\n\t\t\n\t\t. To hide the API documentation button and this page, set\n\t\tshow_api=False\n\t\tin the\n\t\tBlocks.launch()\n\t\tmethod.\n\t

\n
\n\n\n\n\n","export default \"data:image/svg+xml,%3csvg%20width='28'%20height='28'%20viewBox='0%200%2028%2028'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M26.9425%202.94265C27.4632%202.42195%2027.4632%201.57773%2026.9425%201.05703C26.4218%200.536329%2025.5776%200.536329%2025.0569%201.05703L22.5713%203.54256C21.1213%202.59333%2019.5367%202.43378%2018.1753%202.64006C16.5495%202.88638%2015.1127%203.66838%2014.3905%204.39053L12.3905%206.39053C12.1405%206.64058%2012%206.97972%2012%207.33334C12%207.68697%2012.1405%208.0261%2012.3905%208.27615L19.7239%2015.6095C20.2446%2016.1302%2021.0888%2016.1302%2021.6095%2015.6095L23.6095%2013.6095C24.3316%2012.8873%2025.1136%2011.4505%2025.36%209.82475C25.5663%208.46312%2025.4066%206.87827%2024.4571%205.42807L26.9425%202.94265Z'%20fill='%233c4555'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12.276%2012.9426C12.7967%2012.4219%2012.7967%2011.5777%2012.276%2011.057C11.7553%2010.5363%2010.9111%2010.5363%2010.3904%2011.057L8.66651%2012.7809L8.27615%2012.3905C8.0261%2012.1405%207.68697%2012%207.33334%2012C6.97972%2012%206.64058%2012.1405%206.39053%2012.3905L4.39053%2014.3905C3.66838%2015.1127%202.88638%2016.5495%202.64006%2018.1753C2.43377%2019.5367%202.59333%2021.1214%203.54262%2022.5714L1.05703%2025.057C0.536329%2025.5777%200.536329%2026.4219%201.05703%2026.9426C1.57773%2027.4633%202.42195%2027.4633%202.94265%2026.9426L5.42817%2024.4571C6.87835%2025.4066%208.46315%2025.5663%209.82475%2025.36C11.4505%2025.1136%2012.8873%2024.3316%2013.6095%2023.6095L15.6095%2021.6095C16.1302%2021.0888%2016.1302%2020.2446%2015.6095%2019.7239L15.2188%2019.3332L16.9426%2017.6093C17.4633%2017.0886%2017.4633%2016.2444%2016.9426%2015.7237C16.4219%2015.203%2015.5777%2015.203%2015.057%2015.7237L13.3332%2017.4475L10.5521%2014.6665L12.276%2012.9426Z'%20fill='%23FF7C00'/%3e%3c/svg%3e\"","\n\n

\n\t\"\"\n\t
\n\t\tAPI documentation\n\t\t
\n\t\t\t{root}\n\t\t
\n\t
\n\t\n\t\t dispatch(\"close\", { api_recorder_visible: true })}\n\t\t>\n\t\t\t
\n\t\t\t

API Recorder

\n\t\t\n\t\t

\n\t\t\t{api_count} API endpoint{#if api_count > 1}s{/if}\n\t\t

\n\t
\n

\n\n\n\n\n","// eslint-disable-next-line complexity\nexport function represent_value(\n\tvalue: string,\n\ttype: string | undefined,\n\tlang: \"js\" | \"py\" | \"bash\" | null = null\n): string | null | number | boolean | Record {\n\tif (type === undefined) {\n\t\treturn lang === \"py\" ? \"None\" : null;\n\t}\n\tif (value === null && lang === \"py\") {\n\t\treturn \"None\";\n\t}\n\tif (type === \"string\" || type === \"str\") {\n\t\treturn lang === null ? value : '\"' + value + '\"';\n\t} else if (type === \"number\") {\n\t\treturn lang === null ? parseFloat(value) : value;\n\t} else if (type === \"boolean\" || type == \"bool\") {\n\t\tif (lang === \"py\") {\n\t\t\tvalue = String(value);\n\t\t\treturn value === \"true\" ? \"True\" : \"False\";\n\t\t} else if (lang === \"js\" || lang === \"bash\") {\n\t\t\treturn value;\n\t\t}\n\t\treturn value === \"true\";\n\t} else if (type === \"List[str]\") {\n\t\tvalue = JSON.stringify(value);\n\t\treturn value;\n\t} else if (type.startsWith(\"Literal['\")) {\n\t\t// a literal of strings\n\t\treturn '\"' + value + '\"';\n\t}\n\t// assume object type\n\tif (lang === null) {\n\t\treturn value === \"\" ? null : JSON.parse(value);\n\t} else if (typeof value === \"string\") {\n\t\tif (value === \"\") {\n\t\t\treturn lang === \"py\" ? \"None\" : \"null\";\n\t\t}\n\t\treturn value;\n\t}\n\tif (lang === \"bash\") {\n\t\tvalue = simplify_file_data(value);\n\t}\n\tif (lang === \"py\") {\n\t\tvalue = replace_file_data_with_file_function(value);\n\t}\n\treturn stringify_except_file_function(value);\n}\n\nexport function is_potentially_nested_file_data(obj: any): boolean {\n\tif (typeof obj === \"object\" && obj !== null) {\n\t\tif (obj.hasOwnProperty(\"url\") && obj.hasOwnProperty(\"meta\")) {\n\t\t\tif (\n\t\t\t\ttypeof obj.meta === \"object\" &&\n\t\t\t\tobj.meta !== null &&\n\t\t\t\tobj.meta._type === \"gradio.FileData\"\n\t\t\t) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t}\n\tif (typeof obj === \"object\" && obj !== null) {\n\t\tfor (let key in obj) {\n\t\t\tif (typeof obj[key] === \"object\") {\n\t\t\t\tlet result = is_potentially_nested_file_data(obj[key]);\n\t\t\t\tif (result) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\treturn false;\n}\n\nfunction simplify_file_data(obj: any): any {\n\tif (typeof obj === \"object\" && obj !== null && !Array.isArray(obj)) {\n\t\tif (\n\t\t\t\"url\" in obj &&\n\t\t\tobj.url &&\n\t\t\t\"meta\" in obj &&\n\t\t\tobj.meta?._type === \"gradio.FileData\"\n\t\t) {\n\t\t\treturn { path: obj.url };\n\t\t}\n\t}\n\tif (Array.isArray(obj)) {\n\t\tobj.forEach((item, index) => {\n\t\t\tif (typeof item === \"object\" && item !== null) {\n\t\t\t\tobj[index] = simplify_file_data(item); // Recurse and update array elements\n\t\t\t}\n\t\t});\n\t} else if (typeof obj === \"object\" && obj !== null) {\n\t\tObject.keys(obj).forEach((key) => {\n\t\t\tobj[key] = simplify_file_data(obj[key]); // Recurse and update object properties\n\t\t});\n\t}\n\treturn obj;\n}\n\nfunction replace_file_data_with_file_function(obj: any): any {\n\tif (typeof obj === \"object\" && obj !== null && !Array.isArray(obj)) {\n\t\tif (\n\t\t\t\"url\" in obj &&\n\t\t\tobj.url &&\n\t\t\t\"meta\" in obj &&\n\t\t\tobj.meta?._type === \"gradio.FileData\"\n\t\t) {\n\t\t\treturn `handle_file('${obj.url}')`;\n\t\t}\n\t}\n\tif (Array.isArray(obj)) {\n\t\tobj.forEach((item, index) => {\n\t\t\tif (typeof item === \"object\" && item !== null) {\n\t\t\t\tobj[index] = replace_file_data_with_file_function(item); // Recurse and update array elements\n\t\t\t}\n\t\t});\n\t} else if (typeof obj === \"object\" && obj !== null) {\n\t\tObject.keys(obj).forEach((key) => {\n\t\t\tobj[key] = replace_file_data_with_file_function(obj[key]); // Recurse and update object properties\n\t\t});\n\t}\n\treturn obj;\n}\n\nfunction stringify_except_file_function(obj: any): string {\n\tlet jsonString = JSON.stringify(obj, (key, value) => {\n\t\tif (value === null) {\n\t\t\treturn \"UNQUOTEDNone\";\n\t\t}\n\t\tif (\n\t\t\ttypeof value === \"string\" &&\n\t\t\tvalue.startsWith(\"handle_file(\") &&\n\t\t\tvalue.endsWith(\")\")\n\t\t) {\n\t\t\treturn `UNQUOTED${value}`; // Flag the special strings\n\t\t}\n\t\treturn value;\n\t});\n\tconst regex = /\"UNQUOTEDhandle_file\\(([^)]*)\\)\"/g;\n\tjsonString = jsonString.replace(regex, (match, p1) => `handle_file(${p1})`);\n\tconst regexNone = /\"UNQUOTEDNone\"/g;\n\treturn jsonString.replace(regexNone, \"None\");\n}\n","\n\n

\n\t
\n\t\t
\n\t
\n\tAccepts {endpoint_returns.length} parameter{#if endpoint_returns.length != 1}s{/if}:\n

\n\n
\n\t{#each endpoint_returns as { label, python_type, component, parameter_name, parameter_has_default, parameter_default }, i}\n\t\t
\n\t\t
\n\t\t\t

\n\t\t\t\t{current_language !== \"bash\" && parameter_name\n\t\t\t\t\t\t? parameter_name\n\t\t\t\t\t\t: \"[\" + i + \"]\"}\n\t\t\t\t{#if current_language === \"python\"}{python_type.type}{#if parameter_has_default && parameter_default === null} |\n\t\t\t\t\t\t\tNone{/if}{:else}{js_returns[i].type || \"any\"}{/if}\n\t\t\t\t{#if !parameter_has_default || current_language == \"bash\"}Required{:else} Default: {represent_value(parameter_default, python_type.type, \"py\")}{/if}\n\t\t\t

\n\t\t\t

\n\t\t\t\tThe input value that is provided in the \"{label}\" {component}\n\t\t\t\tcomponent.\n\t\t\t

\n\t\t
\n\t{/each}\n
\n{#if is_running}\n\t
\n\t\t\n\t
\n{/if}\n\n\n","\n\n\n\t{copy_text}\n\n","\n\n\n\t\n\t\t{#if current_language === \"python\"}\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t\t
\n\t\t\t\t
$ {py_install}
\n\t\t\t
\n\t\t{:else if current_language === \"javascript\"}\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t\t
\n\t\t\t\t
$ {js_install}
\n\t\t\t
\n\t\t{:else if current_language === \"bash\"}\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t\t
\n\t\t\t\t
$ {bash_install}
\n\t\t\t
\n\t\t{/if}\n\t
\n
\n\n\n","\n\n{#if named}\n\t

\n\t\tapi_name:\n\t\t{\"/\" + api_name}\n\t

\n{:else}\n\t

\n\t\tfn_index:\n\t\t{fn_index}\n\t

\n{/if}\n\n\n","\n\n
\n\t{#if named}\n\t\t\n\t{:else}\n\t\t\n\t{/if}\n\t{#if current_language === \"python\"}\n\t\t\n\t\t\t\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
from gradio_client import Client{#if has_file_path}, handle_file{/if}\n\nclient = Client(\"{space_id || root}\")\nresult = client.predict({#each endpoint_parameters as { python_type, example_input, parameter_name, parameter_has_default, parameter_default }, i}\n\t\t{parameter_name\n\t\t\t\t\t\t\t\t? parameter_name + \"=\"\n\t\t\t\t\t\t\t\t: \"\"}{represent_value(\n\t\t\t\t\t\t\t\t\tparameter_has_default ? parameter_default : example_input,\n\t\t\t\t\t\t\t\t\tpython_type.type,\n\t\t\t\t\t\t\t\t\t\"py\"\n\t\t\t\t\t\t\t\t)},{/each}\n\t\tapi_name=\"/{dependency.api_name}\"\n)\nprint(result)
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t{:else if current_language === \"javascript\"}\n\t\t\n\t\t\t\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
import { Client } from \"@gradio/client\";\n{#each blob_examples as { component, example_input }, i}\nconst response_{i} = await fetch(\"{example_input.url}\");\nconst example{component} = await response_{i}.blob();\n\t\t\t\t\t\t{/each}\nconst client = await Client.connect(\"{space_id || root}\");\nconst result = await client.predict({#if named}\"/{dependency.api_name}\"{:else}{dependency_index}{/if}, { {#each endpoint_parameters as { label, parameter_name, type, python_type, component, example_input, serializer }, i}{#if blob_components.includes(component)}\n\t\t\t\t{parameter_name}: example{component}, {:else}\t\t\n\t\t{parameter_name}: {represent_value(\n\t\t\t\t\t\t\t\t\t\texample_input,\n\t\t\t\t\t\t\t\t\t\tpython_type.type,\n\t\t\t\t\t\t\t\t\t\t\"js\"\n\t\t\t\t\t\t\t\t\t)}, {/if}\n\t\t\t\t\t\t{/each}\n});\n\nconsole.log(result.data);\n
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t{:else if current_language === \"bash\"}\n\t\t\n\t\t\t\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t
\n\n\t\t\t\t
\n\t\t\t\t\t
curl -X POST {root}call/{dependency.api_name} -s -H \"Content-Type: application/json\" -d '{\"{\"}\n  \"data\": [{#each endpoint_parameters as { label, parameter_name, type, python_type, component, example_input, serializer }, i}\n    {represent_value(example_input, python_type.type, \"bash\")}{#if i < endpoint_parameters.length - 1},\n\t\t\t\t\t\t\t{/if}\n\t\t\t\t\t\t{/each}\n]{\"}\"}' \\\n  | awk -F'\"' '{\"{\"} print $4{\"}\"}'  \\\n  | read EVENT_ID; curl -N {root}call/{dependency.api_name}/$EVENT_ID
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t{/if}\n
\n\n\n","\n\n
\n\t\n\t\n\t\t{#if current_language === \"python\"}\n\t\t\t\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
from gradio_client import Client, file\n\nclient = Client(\"{short_root}\")\n{#each py_zipped as { call, api_name }}\nclient.predict(\n{call}  api_name=\"/{api_name}\"\n)\n{/each}
\n\t\t\t\t
\n\t\t\t
\n\t\t{:else if current_language === \"javascript\"}\n\t\t\t\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
import { Client } from \"@gradio/client\";\n\nconst app = await Client.connect(\"{short_root}\");\n\t\t\t\t\t{#each js_zipped as { call, api_name }}\nawait client.predict(\n  \"/{api_name}\"{#if call},{/if}{call});\n\t\t\t\t\t\t{/each}
\n\t\t\t\t
\n\t\t\t
\n\t\t{:else if current_language === \"bash\"}\n\t\t\t\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t{#each bash_zipped as { call, api_name }}\n\t\t\t\t\t\t
curl -X POST {short_root}call/{api_name} -s -H \"Content-Type: application/json\" -d '{\"{\"} \n\t\"data\": [{call}]{\"}\"}' \\\n  | awk -F'\"' '{\"{\"} print $4{\"}\"}' \\\n  | read EVENT_ID; curl -N {short_root}call/{api_name}/$EVENT_ID
\n\t\t\t\t\t\t
\n\t\t\t\t\t{/each}\n\t\t\t\t
\n\t\t\t
\n\t\t{/if}\n\t
\n
\n\n\n","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20aria-hidden='true'%20focusable='false'%20role='img'%20width='1em'%20height='1em'%20preserveAspectRatio='xMidYMid%20meet'%20viewBox='0%200%2032%2032'%20%3e%3cpath%20d='M15.84.5a16.4,16.4,0,0,0-3.57.32C9.1,1.39,8.53,2.53,8.53,4.64V7.48H16v1H5.77a4.73,4.73,0,0,0-4.7,3.74,14.82,14.82,0,0,0,0,7.54c.57,2.28,1.86,3.82,4,3.82h2.6V20.14a4.73,4.73,0,0,1,4.63-4.63h7.38a3.72,3.72,0,0,0,3.73-3.73V4.64A4.16,4.16,0,0,0,19.65.82,20.49,20.49,0,0,0,15.84.5ZM11.78,2.77a1.39,1.39,0,0,1,1.38,1.46,1.37,1.37,0,0,1-1.38,1.38A1.42,1.42,0,0,1,10.4,4.23,1.44,1.44,0,0,1,11.78,2.77Z'%20fill='%235a9fd4'%20%3e%3c/path%3e%3cpath%20d='M16.16,31.5a16.4,16.4,0,0,0,3.57-.32c3.17-.57,3.74-1.71,3.74-3.82V24.52H16v-1H26.23a4.73,4.73,0,0,0,4.7-3.74,14.82,14.82,0,0,0,0-7.54c-.57-2.28-1.86-3.82-4-3.82h-2.6v3.41a4.73,4.73,0,0,1-4.63,4.63H12.35a3.72,3.72,0,0,0-3.73,3.73v7.14a4.16,4.16,0,0,0,3.73,3.82A20.49,20.49,0,0,0,16.16,31.5Zm4.06-2.27a1.39,1.39,0,0,1-1.38-1.46,1.37,1.37,0,0,1,1.38-1.38,1.42,1.42,0,0,1,1.38,1.38A1.44,1.44,0,0,1,20.22,29.23Z'%20fill='%23ffd43b'%20%3e%3c/path%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20aria-hidden='true'%20focusable='false'%20role='img'%20width='1em'%20height='1em'%20preserveAspectRatio='xMidYMid%20meet'%20viewBox='0%200%2032%2032'%20%3e%3crect%20width='32'%20height='32'%20fill='%23f7df1e'%3e%3c/rect%3e%3cpath%20d='M21.5,25a3.27,3.27,0,0,0,3,1.83c1.25,0,2-.63,2-1.49,0-1-.81-1.39-2.19-2L23.56,23C21.39,22.1,20,20.94,20,18.49c0-2.25,1.72-4,4.41-4a4.44,4.44,0,0,1,4.27,2.41l-2.34,1.5a2,2,0,0,0-1.93-1.29,1.31,1.31,0,0,0-1.44,1.29c0,.9.56,1.27,1.85,1.83l.75.32c2.55,1.1,4,2.21,4,4.72,0,2.71-2.12,4.19-5,4.19a5.78,5.78,0,0,1-5.48-3.07Zm-10.63.26c.48.84.91,1.55,1.94,1.55s1.61-.39,1.61-1.89V14.69h3V25c0,3.11-1.83,4.53-4.49,4.53a4.66,4.66,0,0,1-4.51-2.75Z'%20%3e%3c/path%3e%3c/svg%3e\"","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20version='1.1'%20id='Layer_1'%20x='0px'%20y='0px'%20viewBox='0%200%20150%20150'%20style='enable-background:new%200%200%20150%20150;%20background-color:%20%2372a824;'%20xml:space='preserve'%3e%3cscript%20xmlns=''/%3e%3cstyle%20type='text/css'%3e%20.st0{fill:%23FFFFFF;}%20%3c/style%3e%3cg%3e%3cpath%20class='st0'%20d='M118.9,40.3L81.7,18.2c-2.2-1.3-4.7-2-7.2-2s-5,0.7-7.2,2L30.1,40.3c-4.4,2.6-7.2,7.5-7.2,12.8v44.2%20c0,5.3,2.7,10.1,7.2,12.8l37.2,22.1c2.2,1.3,4.7,2,7.2,2c2.5,0,5-0.7,7.2-2l37.2-22.1c4.4-2.6,7.2-7.5,7.2-12.8V53%20C126.1,47.8,123.4,42.9,118.9,40.3z%20M90.1,109.3l0.1,3.2c0,0.4-0.2,0.8-0.5,1l-1.9,1.1c-0.3,0.2-0.5,0-0.6-0.4l0-3.1%20c-1.6,0.7-3.2,0.8-4.3,0.4c-0.2-0.1-0.3-0.4-0.2-0.7l0.7-2.9c0.1-0.2,0.2-0.5,0.3-0.6c0.1-0.1,0.1-0.1,0.2-0.1%20c0.1-0.1,0.2-0.1,0.3,0c1.1,0.4,2.6,0.2,3.9-0.5c1.8-0.9,2.9-2.7,2.9-4.5c0-1.6-0.9-2.3-3-2.3c-2.7,0-5.2-0.5-5.3-4.5%20c0-3.3,1.7-6.7,4.4-8.8l0-3.2c0-0.4,0.2-0.8,0.5-1l1.8-1.2c0.3-0.2,0.5,0,0.6,0.4l0,3.2c1.3-0.5,2.5-0.7,3.6-0.4%20c0.2,0.1,0.3,0.4,0.2,0.7l-0.7,2.8c-0.1,0.2-0.2,0.4-0.3,0.6c-0.1,0.1-0.1,0.1-0.2,0.1c-0.1,0-0.2,0.1-0.3,0%20c-0.5-0.1-1.6-0.4-3.4,0.6c-1.9,1-2.6,2.6-2.5,3.8c0,1.5,0.8,1.9,3.3,1.9c3.4,0.1,4.9,1.6,5,5C94.7,103.4,92.9,107,90.1,109.3z%20M109.6,103.9c0,0.3,0,0.6-0.3,0.7l-9.4,5.7c-0.2,0.1-0.4,0-0.4-0.3v-2.4c0-0.3,0.2-0.5,0.4-0.6l9.3-5.5c0.2-0.1,0.4,0,0.4,0.3%20V103.9z%20M116.1,49.6L80.9,71.3c-4.4,2.6-7.6,5.4-7.6,10.7v43.4c0,3.2,1.3,5.2,3.2,5.8c-0.6,0.1-1.3,0.2-2,0.2%20c-2.1,0-4.1-0.6-5.9-1.6l-37.2-22.1c-3.6-2.2-5.9-6.2-5.9-10.5V53c0-4.3,2.3-8.4,5.9-10.5l37.2-22.1c1.8-1.1,3.8-1.6,5.9-1.6%20s4.1,0.6,5.9,1.6l37.2,22.1c3.1,1.8,5.1,5,5.7,8.5C122.1,48.4,119.3,47.7,116.1,49.6z'/%3e%3c/g%3e%3c/svg%3e\"","\n\n

\n\t
\n\t\t
\n\t
\n\tReturns {#if endpoint_returns.length > 1}\n\t\t{current_language == \"python\" ? \"tuple\" : \"list\"} of {endpoint_returns.length}\n\t\telements{:else}\n\t\t1 element{/if}\n

\n\n
\n\t{#each endpoint_returns as { label, type, python_type, component, serializer }, i}\n\t\t
\n\t\t
\n\t\t\t

\n\t\t\t\t{#if endpoint_returns.length > 1}\n\t\t\t\t\t[{i}]\n\t\t\t\t{/if}\n\t\t\t\t{#if current_language === \"python\"}{python_type.type}{:else}{js_returns[\n\t\t\t\t\t\t\ti\n\t\t\t\t\t\t].type}{/if}\n\t\t\t

\n\t\t\t

\n\t\t\t\tThe output value that appears in the \"{label}\" {component}\n\t\t\t\tcomponent.\n\t\t\t

\n\t\t
\n\t{/each}\n
\n{#if is_running}\n\t
\n\t\t\n\t
\n{/if}\n\n\n","\n\n{#if info}\n\t{#if api_count}\n\t\t
\n\t\t\t\n\t\t
\n\n\t\t
\n\t\t\t
\n\t\t\t\t

\n\t\t\t\t\tChoose a language to see the code snippets for interacting with the\n\t\t\t\t\tAPI.\n\t\t\t\t

\n\t\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t{#each langs as [language, img]}\n\t\t\t\t\t\t (current_language = language)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\"\"\n\t\t\t\t\t\t\t{language}\n\t\t\t\t\t\t\n\t\t\t\t\t{/each}\n\t\t\t\t
\n\t\t\t\t{#if api_calls.length}\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t🪄 Recorded API Calls [{api_calls.length}]\n\t\t\t\t\t\t

\n\t\t\t\t\t\t

\n\t\t\t\t\t\t\tHere is the code snippet to replay the most recently recorded API\n\t\t\t\t\t\t\tcalls using the {current_language}\n\t\t\t\t\t\t\tclient.\n\t\t\t\t\t\t

\n\n\t\t\t\t\t\t\n\t\t\t\t\t\t

\n\t\t\t\t\t\t\tNote: Some API calls only affect the UI, so when using the\n\t\t\t\t\t\t\tclients, the desired result may be achieved with only a subset of\n\t\t\t\t\t\t\tthe recorded calls.\n\t\t\t\t\t\t

\n\t\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\tAPI Documentation\n\t\t\t\t\t

\n\t\t\t\t{:else}\n\t\t\t\t\t

\n\t\t\t\t\t\t{#if current_language == \"python\" || current_language == \"javascript\"}\n\t\t\t\t\t\t\t1. Install the\n\t\t\t\t\t\t\t{current_language}\n\t\t\t\t\t\t\tclient (docs) if you don't already have it installed.\n\t\t\t\t\t\t{:else}\n\t\t\t\t\t\t\t1. Confirm that you have cURL installed on your system.\n\t\t\t\t\t\t{/if}\n\t\t\t\t\t

\n\n\t\t\t\t\t\n\n\t\t\t\t\t

\n\t\t\t\t\t\t2. Find the API endpoint below corresponding to your desired\n\t\t\t\t\t\tfunction in the app. Copy the code snippet, replacing the\n\t\t\t\t\t\tplaceholder values with your own input data.\n\t\t\t\t\t\t{#if space_id}If this is a private Space, you may need to pass your\n\t\t\t\t\t\t\tHugging Face token as well (read more).{/if}\n\n\t\t\t\t\t\tOr use the\n\t\t\t\t\t\t dispatch(\"close\", { api_recorder_visible: true })}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t

API Recorder

\n\t\t\t\t\t\t\n\t\t\t\t\t\tto automatically generate your API requests.\n\t\t\t\t\t\t{#if current_language == \"bash\"}
 
Note: making a\n\t\t\t\t\t\t\tprediction and getting a result requires\n\t\t\t\t\t\t\t2 requests: a\n\t\t\t\t\t\t\tPOST\n\t\t\t\t\t\t\tand a GET request. The POST request\n\t\t\t\t\t\t\treturns an EVENT_ID, which is used in the second\n\t\t\t\t\t\t\tGET request to fetch the results. In these snippets,\n\t\t\t\t\t\t\twe've used awk and read to parse the\n\t\t\t\t\t\t\tresults, combining these two requests into one command for ease of\n\t\t\t\t\t\t\tuse. See curl docs.\n\t\t\t\t\t\t{/if}\n\n\t\t\t\t\t\t\n\t\t\t\t\t

\n\t\t\t\t{/if}\n\n\t\t\t\t{#each dependencies as dependency, dependency_index}\n\t\t\t\t\t{#if dependency.show_api && info.named_endpoints[\"/\" + dependency.api_name]}\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t{/if}\n\t\t\t\t{/each}\n\t\t\t
\n\t\t
\n\t{:else}\n\t\t\n\t{/if}\n{/if}\n\n\n","\n\n
\n\t\n
\n\n\n","import { format } from \"svelte-i18n\";\nimport { get } from \"svelte/store\";\nexport { Gradio } from \"@gradio/utils\";\n\nexport const formatter = get(format);\n\nexport type I18nFormatter = typeof formatter;\n","\n\n\n\n\n\t\n\n","\n\n\n\t{#if node.children && node.children.length}\n\t\t{#each node.children as _node (_node.id)}\n\t\t\t\n\t\t{/each}\n\t{/if}\n\n","\n\n\n","export default \"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='576'%20height='576'%20viewBox='0%200%20576%20576'%20fill='none'%3e%3cpath%20d='M287.5%20229L86%20344.5L287.5%20460L489%20344.5L287.5%20229Z'%20stroke='url(%23paint0_linear_102_7)'%20stroke-width='59'%20stroke-linejoin='round'/%3e%3cpath%20d='M287.5%20116L86%20231.5L287.5%20347L489%20231.5L287.5%20116Z'%20stroke='url(%23paint1_linear_102_7)'%20stroke-width='59'%20stroke-linejoin='round'/%3e%3cpath%20d='M86%20344L288%20229'%20stroke='url(%23paint2_linear_102_7)'%20stroke-width='59'%20stroke-linejoin='bevel'/%3e%3cdefs%3e%3clinearGradient%20id='paint0_linear_102_7'%20x1='60'%20y1='341'%20x2='429.5'%20y2='344'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23F9D100'/%3e%3cstop%20offset='1'%20stop-color='%23F97700'/%3e%3c/linearGradient%3e%3clinearGradient%20id='paint1_linear_102_7'%20x1='513.5'%20y1='231'%20x2='143.5'%20y2='231'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23F9D100'/%3e%3cstop%20offset='1'%20stop-color='%23F97700'/%3e%3c/linearGradient%3e%3clinearGradient%20id='paint2_linear_102_7'%20x1='60'%20y1='344'%20x2='428.987'%20y2='341.811'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23F9D100'/%3e%3cstop%20offset='1'%20stop-color='%23F97700'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e\"","import { type Writable, writable, get } from \"svelte/store\";\n\nexport interface LoadingStatus {\n\teta: number | null;\n\tstatus: \"pending\" | \"error\" | \"complete\" | \"generating\";\n\tqueue: boolean;\n\tqueue_position: number | null;\n\tqueue_size?: number;\n\tfn_index: number;\n\tmessage?: string | null;\n\tscroll_to_output?: boolean;\n\tshow_progress?: \"full\" | \"minimal\" | \"hidden\";\n\tprogress?: {\n\t\tprogress: number | null;\n\t\tindex: number | null;\n\t\tlength: number | null;\n\t\tunit: string | null;\n\t\tdesc: string | null;\n\t}[];\n}\n\nexport type LoadingStatusCollection = Record;\n\ninterface LoadingStatusStore {\n\tupdate: (status: LoadingStatus) => void;\n\tsubscribe: Writable[\"subscribe\"];\n\tregister: (index: number, inputs: number[], outputs: number[]) => void;\n\tget_status_for_fn: (i: number) => LoadingStatus[\"status\"];\n\tget_inputs_to_update: () => Map;\n}\n\nexport function create_loading_status_store(): LoadingStatusStore {\n\tconst store = writable({});\n\n\tconst fn_inputs: Record = {};\n\tconst fn_outputs: Record = {};\n\tconst pending_outputs = new Map();\n\tconst pending_inputs = new Map();\n\n\tconst inputs_to_update = new Map();\n\tconst fn_status: Record = {};\n\n\tfunction update({\n\t\tfn_index,\n\t\tstatus,\n\t\tqueue = true,\n\t\tsize,\n\t\tposition = null,\n\t\teta = null,\n\t\tmessage = null,\n\t\tprogress\n\t}: {\n\t\tfn_index: LoadingStatus[\"fn_index\"];\n\t\tstatus: LoadingStatus[\"status\"];\n\t\tqueue?: LoadingStatus[\"queue\"];\n\t\tsize?: LoadingStatus[\"queue_size\"];\n\t\tposition?: LoadingStatus[\"queue_position\"];\n\t\teta?: LoadingStatus[\"eta\"];\n\t\tmessage?: LoadingStatus[\"message\"];\n\t\tprogress?: LoadingStatus[\"progress\"];\n\t}): void {\n\t\tconst outputs = fn_outputs[fn_index];\n\t\tconst inputs = fn_inputs[fn_index];\n\t\tconst last_status = fn_status[fn_index];\n\n\t\tconst outputs_to_update = outputs.map((id) => {\n\t\t\tlet new_status: LoadingStatus[\"status\"];\n\n\t\t\tconst pending_count = pending_outputs.get(id) || 0;\n\n\t\t\t// from (pending -> error) | complete - decrement pending count\n\t\t\tif (last_status === \"pending\" && status !== \"pending\") {\n\t\t\t\tlet new_count = pending_count - 1;\n\n\t\t\t\tpending_outputs.set(id, new_count < 0 ? 0 : new_count);\n\n\t\t\t\tnew_status = new_count > 0 ? \"pending\" : status;\n\n\t\t\t\t// from pending -> pending - do nothing\n\t\t\t} else if (last_status === \"pending\" && status === \"pending\") {\n\t\t\t\tnew_status = \"pending\";\n\n\t\t\t\t// (error | complete) -> pending - - increment pending count\n\t\t\t} else if (last_status !== \"pending\" && status === \"pending\") {\n\t\t\t\tnew_status = \"pending\";\n\t\t\t\tpending_outputs.set(id, pending_count + 1);\n\t\t\t} else {\n\t\t\t\tnew_status = status;\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tid,\n\t\t\t\tqueue_position: position,\n\t\t\t\tqueue_size: size,\n\t\t\t\teta: eta,\n\t\t\t\tstatus: new_status,\n\t\t\t\tmessage: message,\n\t\t\t\tprogress: progress\n\t\t\t};\n\t\t});\n\n\t\tinputs.forEach((id) => {\n\t\t\tconst pending_count = pending_inputs.get(id) || 0;\n\n\t\t\t// from (pending -> error) | complete - decrement pending count\n\t\t\tif (last_status === \"pending\" && status !== \"pending\") {\n\t\t\t\tlet new_count = pending_count - 1;\n\t\t\t\tpending_inputs.set(id, new_count < 0 ? 0 : new_count);\n\t\t\t\tinputs_to_update.set(id, status);\n\t\t\t} else if (last_status !== \"pending\" && status === \"pending\") {\n\t\t\t\tpending_inputs.set(id, pending_count + 1);\n\t\t\t\tinputs_to_update.set(id, status);\n\t\t\t} else {\n\t\t\t\tinputs_to_update.delete(id);\n\t\t\t}\n\t\t});\n\n\t\tstore.update((outputs: LoadingStatusCollection) => {\n\t\t\toutputs_to_update.forEach(\n\t\t\t\t({\n\t\t\t\t\tid,\n\t\t\t\t\tqueue_position,\n\t\t\t\t\tqueue_size,\n\t\t\t\t\teta,\n\t\t\t\t\tstatus,\n\t\t\t\t\tmessage,\n\t\t\t\t\tprogress\n\t\t\t\t}) => {\n\t\t\t\t\toutputs[id] = {\n\t\t\t\t\t\tqueue: queue,\n\t\t\t\t\t\tqueue_size: queue_size,\n\t\t\t\t\t\tqueue_position: queue_position,\n\t\t\t\t\t\teta: eta,\n\t\t\t\t\t\tmessage: message,\n\t\t\t\t\t\tprogress,\n\t\t\t\t\t\tstatus,\n\t\t\t\t\t\tfn_index\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t);\n\n\t\t\treturn outputs;\n\t\t});\n\t\tfn_status[fn_index] = status;\n\t}\n\n\tfunction register(index: number, inputs: number[], outputs: number[]): void {\n\t\tfn_inputs[index] = inputs;\n\t\tfn_outputs[index] = outputs;\n\t}\n\n\treturn {\n\t\tupdate,\n\t\tregister,\n\t\tsubscribe: store.subscribe,\n\t\tget_status_for_fn(i: number) {\n\t\t\treturn fn_status[i];\n\t\t},\n\t\tget_inputs_to_update() {\n\t\t\treturn inputs_to_update;\n\t\t}\n\t};\n}\n\nexport type LoadingStatusType = ReturnType;\n","import { writable, type Writable, get } from \"svelte/store\";\nimport type {\n\tComponentMeta,\n\tDependency,\n\tLayoutNode,\n\tTargetMap,\n\tLoadingComponent\n} from \"./types\";\nimport { load_component } from \"virtual:component-loader\";\nimport type { client_return } from \"@gradio/client\";\nimport { create_loading_status_store } from \"./stores\";\nimport { _ } from \"svelte-i18n\";\n\nexport interface UpdateTransaction {\n\tid: number;\n\tvalue: any;\n\tprop: string;\n}\n\nlet pending_updates: UpdateTransaction[][] = [];\n\n/**\n * Create a store with the layout and a map of targets\n * @returns A store with the layout and a map of targets\n */\nexport function create_components(): {\n\tlayout: Writable;\n\ttargets: Writable;\n\tupdate_value: (updates: UpdateTransaction[]) => void;\n\tget_data: (id: number) => any | Promise;\n\tloading_status: ReturnType;\n\tscheduled_updates: Writable;\n\tcreate_layout: (args: {\n\t\tapp: client_return;\n\t\tcomponents: ComponentMeta[];\n\t\tlayout: LayoutNode;\n\t\tdependencies: Dependency[];\n\t\troot: string;\n\t\toptions: {\n\t\t\tfill_height: boolean;\n\t\t};\n\t}) => void;\n\trerender_layout: (args: {\n\t\trender_id: number;\n\t\tcomponents: ComponentMeta[];\n\t\tlayout: LayoutNode;\n\t\troot: string;\n\t\tdependencies: Dependency[];\n\t}) => void;\n} {\n\tlet _component_map: Map;\n\n\tlet target_map: Writable = writable({});\n\tlet _target_map: TargetMap = {};\n\tlet inputs: Set;\n\tlet outputs: Set;\n\tlet constructor_map: Map;\n\tlet instance_map: { [id: number]: ComponentMeta };\n\tlet loading_status: ReturnType =\n\t\tcreate_loading_status_store();\n\tconst layout_store: Writable = writable();\n\tlet _components: ComponentMeta[] = [];\n\tlet app: client_return;\n\tlet keyed_component_values: Record = {};\n\tlet _rootNode: ComponentMeta;\n\n\tfunction create_layout({\n\t\tapp: _app,\n\t\tcomponents,\n\t\tlayout,\n\t\tdependencies,\n\t\troot,\n\t\toptions\n\t}: {\n\t\tapp: client_return;\n\t\tcomponents: ComponentMeta[];\n\t\tlayout: LayoutNode;\n\t\tdependencies: Dependency[];\n\t\troot: string;\n\t\toptions: {\n\t\t\tfill_height: boolean;\n\t\t};\n\t}): void {\n\t\tapp = _app;\n\t\tstore_keyed_values(_components);\n\n\t\t_components = components;\n\t\tinputs = new Set();\n\t\toutputs = new Set();\n\t\tpending_updates = [];\n\t\tconstructor_map = new Map();\n\t\t_component_map = new Map();\n\n\t\tinstance_map = {};\n\n\t\t_rootNode = {\n\t\t\tid: layout.id,\n\t\t\ttype: \"column\",\n\t\t\tprops: { interactive: false, scale: options.fill_height ? 1 : null },\n\t\t\thas_modes: false,\n\t\t\tinstance: null as unknown as ComponentMeta[\"instance\"],\n\t\t\tcomponent: null as unknown as ComponentMeta[\"component\"],\n\t\t\tcomponent_class_id: \"\",\n\t\t\tkey: null\n\t\t};\n\n\t\tcomponents.push(_rootNode);\n\n\t\tdependencies.forEach((dep) => {\n\t\t\tloading_status.register(dep.id, dep.inputs, dep.outputs);\n\t\t\tdep.frontend_fn = process_frontend_fn(\n\t\t\t\tdep.js,\n\t\t\t\t!!dep.backend_fn,\n\t\t\t\tdep.inputs.length,\n\t\t\t\tdep.outputs.length\n\t\t\t);\n\t\t\tcreate_target_meta(dep.targets, dep.id, _target_map);\n\t\t\tget_inputs_outputs(dep, inputs, outputs);\n\t\t});\n\n\t\ttarget_map.set(_target_map);\n\n\t\tconstructor_map = preload_all_components(components, root);\n\n\t\tinstance_map = components.reduce(\n\t\t\t(acc, c) => {\n\t\t\t\tacc[c.id] = c;\n\t\t\t\treturn acc;\n\t\t\t},\n\t\t\t{} as { [id: number]: ComponentMeta }\n\t\t);\n\n\t\twalk_layout(layout, root).then(() => {\n\t\t\tlayout_store.set(_rootNode);\n\t\t});\n\t}\n\n\t/**\n\t * Rerender the layout when the config has been modified to attach new components\n\t */\n\tfunction rerender_layout({\n\t\trender_id,\n\t\tcomponents,\n\t\tlayout,\n\t\troot,\n\t\tdependencies\n\t}: {\n\t\trender_id: number;\n\t\tcomponents: ComponentMeta[];\n\t\tlayout: LayoutNode;\n\t\troot: string;\n\t\tdependencies: Dependency[];\n\t}): void {\n\t\tlet _constructor_map = preload_all_components(components, root);\n\t\t_constructor_map.forEach((v, k) => {\n\t\t\tconstructor_map.set(k, v);\n\t\t});\n\n\t\t_target_map = {};\n\n\t\tdependencies.forEach((dep) => {\n\t\t\tloading_status.register(dep.id, dep.inputs, dep.outputs);\n\t\t\tdep.frontend_fn = process_frontend_fn(\n\t\t\t\tdep.js,\n\t\t\t\t!!dep.backend_fn,\n\t\t\t\tdep.inputs.length,\n\t\t\t\tdep.outputs.length\n\t\t\t);\n\t\t\tcreate_target_meta(dep.targets, dep.id, _target_map);\n\t\t\tget_inputs_outputs(dep, inputs, outputs);\n\t\t});\n\n\t\ttarget_map.set(_target_map);\n\n\t\tlet current_element = instance_map[layout.id];\n\t\tlet all_current_children: ComponentMeta[] = [];\n\t\tconst add_to_current_children = (component: ComponentMeta): void => {\n\t\t\tall_current_children.push(component);\n\t\t\tif (component.children) {\n\t\t\t\tcomponent.children.forEach((child) => {\n\t\t\t\t\tadd_to_current_children(child);\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tadd_to_current_children(current_element);\n\t\tstore_keyed_values(all_current_children);\n\n\t\tObject.entries(instance_map).forEach(([id, component]) => {\n\t\t\tlet _id = Number(id);\n\t\t\tif (component.rendered_in === render_id) {\n\t\t\t\tdelete instance_map[_id];\n\t\t\t\tif (_component_map.has(_id)) {\n\t\t\t\t\t_component_map.delete(_id);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tcomponents.forEach((c) => {\n\t\t\tinstance_map[c.id] = c;\n\t\t\t_component_map.set(c.id, c);\n\t\t});\n\t\tif (current_element.parent) {\n\t\t\tcurrent_element.parent.children![\n\t\t\t\tcurrent_element.parent.children!.indexOf(current_element)\n\t\t\t] = instance_map[layout.id];\n\t\t}\n\n\t\twalk_layout(layout, root, current_element.parent).then(() => {\n\t\t\tlayout_store.set(_rootNode);\n\t\t});\n\t}\n\n\tasync function walk_layout(\n\t\tnode: LayoutNode,\n\t\troot: string,\n\t\tparent?: ComponentMeta\n\t): Promise {\n\t\tconst instance = instance_map[node.id];\n\n\t\tinstance.component = (await constructor_map.get(\n\t\t\tinstance.component_class_id\n\t\t))!?.default;\n\t\tinstance.parent = parent;\n\n\t\tif (instance.type === \"dataset\") {\n\t\t\tinstance.props.component_map = get_component(\n\t\t\t\tinstance.type,\n\t\t\t\tinstance.component_class_id,\n\t\t\t\troot,\n\t\t\t\t_components,\n\t\t\t\tinstance.props.components\n\t\t\t).example_components;\n\t\t}\n\n\t\tif (_target_map[instance.id]) {\n\t\t\tinstance.props.attached_events = Object.keys(_target_map[instance.id]);\n\t\t}\n\n\t\tinstance.props.interactive = determine_interactivity(\n\t\t\tinstance.id,\n\t\t\tinstance.props.interactive,\n\t\t\tinstance.props.value,\n\t\t\tinputs,\n\t\t\toutputs\n\t\t);\n\n\t\tinstance.props.server = process_server_fn(\n\t\t\tinstance.id,\n\t\t\tinstance.props.server_fns,\n\t\t\tapp\n\t\t);\n\n\t\tif (\n\t\t\tinstance.key != null &&\n\t\t\tkeyed_component_values[instance.key] !== undefined\n\t\t) {\n\t\t\tinstance.props.value = keyed_component_values[instance.key];\n\t\t}\n\n\t\t_component_map.set(instance.id, instance);\n\n\t\tif (node.children) {\n\t\t\tinstance.children = await Promise.all(\n\t\t\t\tnode.children.map((v) => walk_layout(v, root, instance))\n\t\t\t);\n\t\t}\n\n\t\treturn instance;\n\t}\n\n\tlet update_scheduled = false;\n\tlet update_scheduled_store = writable(false);\n\n\tfunction store_keyed_values(components: ComponentMeta[]): void {\n\t\tcomponents.forEach((c) => {\n\t\t\tif (c.key != null) {\n\t\t\t\tkeyed_component_values[c.key] = c.props.value;\n\t\t\t}\n\t\t});\n\t}\n\n\tfunction flush(): void {\n\t\tlayout_store.update((layout) => {\n\t\t\tfor (let i = 0; i < pending_updates.length; i++) {\n\t\t\t\tfor (let j = 0; j < pending_updates[i].length; j++) {\n\t\t\t\t\tconst update = pending_updates[i][j];\n\t\t\t\t\tif (!update) continue;\n\t\t\t\t\tconst instance = instance_map[update.id];\n\t\t\t\t\tif (!instance) continue;\n\t\t\t\t\tlet new_value;\n\t\t\t\t\tif (update.value instanceof Map) new_value = new Map(update.value);\n\t\t\t\t\telse if (update.value instanceof Set)\n\t\t\t\t\t\tnew_value = new Set(update.value);\n\t\t\t\t\telse if (Array.isArray(update.value)) new_value = [...update.value];\n\t\t\t\t\telse if (update.value === null) new_value = null;\n\t\t\t\t\telse if (typeof update.value === \"object\")\n\t\t\t\t\t\tnew_value = { ...update.value };\n\t\t\t\t\telse new_value = update.value;\n\t\t\t\t\tinstance.props[update.prop] = new_value;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn layout;\n\t\t});\n\n\t\tpending_updates = [];\n\t\tupdate_scheduled = false;\n\t\tupdate_scheduled_store.set(false);\n\t}\n\n\tfunction update_value(updates: UpdateTransaction[] | undefined): void {\n\t\tif (!updates) return;\n\t\tpending_updates.push(updates);\n\n\t\tif (!update_scheduled) {\n\t\t\tupdate_scheduled = true;\n\t\t\tupdate_scheduled_store.set(true);\n\t\t\trequestAnimationFrame(flush);\n\t\t}\n\t}\n\n\tfunction get_data(id: number): any | Promise {\n\t\tconst comp = _component_map.get(id);\n\t\tif (!comp) {\n\t\t\treturn null;\n\t\t}\n\t\tif (comp.instance.get_value) {\n\t\t\treturn comp.instance.get_value() as Promise;\n\t\t}\n\t\treturn comp.props.value;\n\t}\n\n\treturn {\n\t\tlayout: layout_store,\n\t\ttargets: target_map,\n\t\tupdate_value,\n\t\tget_data,\n\t\tloading_status,\n\t\tscheduled_updates: update_scheduled_store,\n\t\tcreate_layout: (...args) =>\n\t\t\trequestAnimationFrame(() => create_layout(...args)),\n\t\trerender_layout\n\t};\n}\n\n/** An async version of 'new Function' */\nexport const AsyncFunction: new (\n\t...args: string[]\n) => (...args: any[]) => Promise = Object.getPrototypeOf(\n\tasync function () {}\n).constructor;\n\n/**\n * Takes a string of source code and returns a function that can be called with arguments\n * @param source the source code\n * @param backend_fn if there is also a backend function\n * @param input_length the number of inputs\n * @param output_length the number of outputs\n * @returns The function, or null if the source code is invalid or missing\n */\nexport function process_frontend_fn(\n\tsource: string | null | undefined | false,\n\tbackend_fn: boolean,\n\tinput_length: number,\n\toutput_length: number\n): ((...args: unknown[]) => Promise) | null {\n\tif (!source) return null;\n\n\tconst wrap = backend_fn ? input_length === 1 : output_length === 1;\n\ttry {\n\t\treturn new AsyncFunction(\n\t\t\t\"__fn_args\",\n\t\t\t` let result = await (${source})(...__fn_args);\n return (${wrap} && !Array.isArray(result)) ? [result] : result;`\n\t\t);\n\t} catch (e) {\n\t\tconsole.error(\"Could not parse custom js method.\");\n\t\tconsole.error(e);\n\t\treturn null;\n\t}\n}\n\n/**\n * `Dependency.targets` is an array of `[id, trigger]` pairs with the ids as the `fn_id`.\n * This function take a single list of `Dependency.targets` and add those to the target_map.\n * @param targets the targets array\n * @param fn_id the function index\n * @param target_map the target map\n * @returns the tagert map\n */\nexport function create_target_meta(\n\ttargets: Dependency[\"targets\"],\n\tfn_id: number,\n\ttarget_map: TargetMap\n): TargetMap {\n\ttargets.forEach(([id, trigger]) => {\n\t\tif (!target_map[id]) {\n\t\t\ttarget_map[id] = {};\n\t\t}\n\t\tif (\n\t\t\ttarget_map[id]?.[trigger] &&\n\t\t\t!target_map[id]?.[trigger].includes(fn_id)\n\t\t) {\n\t\t\ttarget_map[id][trigger].push(fn_id);\n\t\t} else {\n\t\t\ttarget_map[id][trigger] = [fn_id];\n\t\t}\n\t});\n\n\treturn target_map;\n}\n\n/**\n * Get all component ids that are an input or output of a dependency\n * @param dep the dependency\n * @param inputs the set of inputs\n * @param outputs the set of outputs\n * @returns a tuple of the inputs and outputs\n */\nexport function get_inputs_outputs(\n\tdep: Dependency,\n\tinputs: Set,\n\toutputs: Set\n): [Set, Set] {\n\tdep.inputs.forEach((input) => inputs.add(input));\n\tdep.outputs.forEach((output) => outputs.add(output));\n\treturn [inputs, outputs];\n}\n\n/**\n * Check if a value is not a default value\n * @param value the value to check\n * @returns default value boolean\n */\nfunction has_no_default_value(value: any): boolean {\n\treturn (\n\t\t(Array.isArray(value) && value.length === 0) ||\n\t\tvalue === \"\" ||\n\t\tvalue === 0 ||\n\t\t!value\n\t);\n}\n\n/**\n * Determines if a component is interactive\n * @param id component id\n * @param interactive_prop value of the interactive prop\n * @param value the main value of the component\n * @param inputs set of ids that are inputs to a dependency\n * @param outputs set of ids that are outputs to a dependency\n * @returns if the component is interactive\n */\nexport function determine_interactivity(\n\tid: number,\n\tinteractive_prop: boolean | undefined,\n\tvalue: any,\n\tinputs: Set,\n\toutputs: Set\n): boolean {\n\tif (interactive_prop === false) {\n\t\treturn false;\n\t} else if (interactive_prop === true) {\n\t\treturn true;\n\t} else if (\n\t\tinputs.has(id) ||\n\t\t(!outputs.has(id) && has_no_default_value(value))\n\t) {\n\t\treturn true;\n\t}\n\n\treturn false;\n}\n\ntype ServerFunctions = Record Promise>;\n\n/**\n * Process the server function names and return a dictionary of functions\n * @param id the component id\n * @param server_fns the server function names\n * @param app the client instance\n * @returns the actual server functions\n */\nexport function process_server_fn(\n\tid: number,\n\tserver_fns: string[] | undefined,\n\tapp: client_return\n): ServerFunctions {\n\tif (!server_fns) {\n\t\treturn {};\n\t}\n\treturn server_fns.reduce((acc, fn: string) => {\n\t\tacc[fn] = async (...args: any[]) => {\n\t\t\tif (args.length === 1) {\n\t\t\t\targs = args[0];\n\t\t\t}\n\t\t\tconst result = await app.component_server(id, fn, args);\n\t\t\treturn result;\n\t\t};\n\t\treturn acc;\n\t}, {} as ServerFunctions);\n}\n\n/**\n * Get a component from the backend\n * @param type the type of the component\n * @param class_id the class id of the component\n * @param root the root url of the app\n * @param components the list of component metadata\n * @param example_components the list of example components\n * @returns the component and its name\n */\nexport function get_component(\n\ttype: string,\n\tclass_id: string,\n\troot: string,\n\tcomponents: ComponentMeta[],\n\texample_components?: string[]\n): {\n\tcomponent: LoadingComponent;\n\tname: ComponentMeta[\"type\"];\n\texample_components?: Map;\n} {\n\tlet example_component_map: Map =\n\t\tnew Map();\n\tif (type === \"dataset\" && example_components) {\n\t\t(example_components as string[]).forEach((name: string) => {\n\t\t\tif (example_component_map.has(name)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tlet _c;\n\n\t\t\tconst matching_component = components.find((c) => c.type === name);\n\t\t\tif (matching_component) {\n\t\t\t\t_c = load_component({\n\t\t\t\t\tapi_url: root,\n\t\t\t\t\tname,\n\t\t\t\t\tid: matching_component.component_class_id,\n\t\t\t\t\tvariant: \"example\"\n\t\t\t\t});\n\t\t\t\texample_component_map.set(name, _c.component);\n\t\t\t}\n\t\t});\n\t}\n\n\tconst _c = load_component({\n\t\tapi_url: root,\n\t\tname: type,\n\t\tid: class_id,\n\t\tvariant: \"component\"\n\t});\n\n\treturn {\n\t\tcomponent: _c.component,\n\t\tname: _c.name,\n\t\texample_components:\n\t\t\texample_component_map.size > 0 ? example_component_map : undefined\n\t};\n}\n\n/**\n * Preload all components\n * @param components A list of component metadata\n * @param root The root url of the app\n * @returns A map of component ids to their constructors\n */\nexport function preload_all_components(\n\tcomponents: ComponentMeta[],\n\troot: string\n): Map {\n\tlet constructor_map: Map = new Map();\n\n\tcomponents.forEach((c) => {\n\t\tconst { component, example_components } = get_component(\n\t\t\tc.type,\n\t\t\tc.component_class_id,\n\t\t\troot,\n\t\t\tcomponents\n\t\t);\n\n\t\tconstructor_map.set(c.component_class_id, component);\n\n\t\tif (example_components) {\n\t\t\tfor (const [name, example_component] of example_components) {\n\t\t\t\tconstructor_map.set(name, example_component);\n\t\t\t}\n\t\t}\n\t});\n\n\treturn constructor_map;\n}\n","\n\n\n\t{#if control_page_title}\n\t\t{title}\n\t{/if}\n\n\n
\n\t
\n\t\t{#if $_layout && app.config}\n\t\t\t\n\t\t{/if}\n\t
\n\n\t{#if show_footer}\n\t\t
\n\t\t\t{#if show_api}\n\t\t\t\t {\n\t\t\t\t\t\tset_api_docs_visible(!api_docs_visible);\n\t\t\t\t\t}}\n\t\t\t\t\tclass=\"show-api\"\n\t\t\t\t>\n\t\t\t\t\t{$_(\"errors.use_via_api\")}\n\t\t\t\t\t{$_(\"common.logo\")}\n\t\t\t\t\n\t\t\t\t
·
\n\t\t\t{/if}\n\t\t\t\n\t\t\t\t{$_(\"common.built_with_gradio\")}\n\t\t\t\t{$_(\"common.logo\")}\n\t\t\t\n\t\t
\n\t{/if}\n
\n\n{#if api_recorder_visible}\n\t\n\t\n\t\n\t {\n\t\t\tset_api_docs_visible(true);\n\t\t\tapi_recorder_visible = false;\n\t\t}}\n\t>\n\t\t\n\t\n{/if}\n\n{#if api_docs_visible && $_layout}\n\t
\n\t\t\n\t\t\n\t\t\n\t\t {\n\t\t\t\tset_api_docs_visible(false);\n\t\t\t}}\n\t\t/>\n\t\t
\n\t\t\t {\n\t\t\t\t\tset_api_docs_visible(false);\n\t\t\t\t\tapi_calls = [];\n\t\t\t\t\tapi_recorder_visible = event.detail.api_recorder_visible;\n\t\t\t\t}}\n\t\t\t\t{dependencies}\n\t\t\t\t{root}\n\t\t\t\t{app}\n\t\t\t\t{space_id}\n\t\t\t\t{api_calls}\n\t\t\t/>\n\t\t
\n\t
\n{/if}\n\n{#if messages}\n\t\n{/if}\n\n\n"],"file":"assets/Blocks-q6GtJ689.js"}