1import { p as prop, e as init, s as slot, a as set_attribute, b as set_class, f as set_style, q as store_get, m as setup_stores, r as rest_props } from './i18n-CMo5lpzy.js'; 2import { R as push, a4 as createEventDispatcher, ay as getContext, aa as onMount, a1 as legacy_pre_effect, G as deep_read_state, w as get, a2 as legacy_pre_effect_reset, a6 as comment, S as first_child, a as append, t as template_effect, z as untrack, T as pop, a3 as mutable_source, U as flushSync, V as child, ad as derived_safe_equal, W as from_html, x as set, M as tick, Y as reset } from './index-BvBk1Iap.js'; 3import { G as Gradio } from './utils.svelte-CYLB_jIA.js'; 4import { T as TABS } from './Walkthrough.svelte_svelte_type_style_lang-Bq8jBNe2.js'; 5import { B as BaseColumn } from './Index.svelte_svelte_type_style_lang-C97CbKPo.js'; 6import './clone-DaB-S2nH.js'; 7import './event-modifiers-DanhKw3_.js'; 8import './index-Lz7fsHFt.js'; 9import './StreamingBar.svelte_svelte_type_style_lang-CdFIGsJa.js'; 10import './html-CdUEtR5E.js'; 11import './ScrollFade.svelte_svelte_type_style_lang-Xm-PLg9E.js'; 12import './snippet-Bl5YVoCg.js'; 13import './index-C7e-J7CF.js'; 14import './Clear-Dgs5UhTO.js'; 15 16var root = from_html(`<div role="tabpanel"><!></div>`); 17 18function TabItem($$anchor, $$props) { 19 push($$props, false); 20 21 const $selected_tab_index = () => store_get(selected_tab_index, '$selected_tab_index', $$stores); 22 const $selected_tab = () => store_get(selected_tab, '$selected_tab', $$stores); 23 const [$$stores, $$cleanup] = setup_stores(); 24 const props_json = mutable_source(); 25 let elem_id = prop($$props, 'elem_id', 12, ""); 26 let elem_classes = prop($$props, 'elem_classes', 28, () => []); 27 let label = prop($$props, 'label', 12); 28 let id = prop($$props, 'id', 28, () => ({})); 29 let visible = prop($$props, 'visible', 12); 30 let interactive = prop($$props, 'interactive', 12); 31 let order = prop($$props, 'order', 12); 32 let scale = prop($$props, 'scale', 12); 33 let component_id = prop($$props, 'component_id', 12); 34 const dispatch = createEventDispatcher(); 35 36 const { 37 register_tab, 38 unregister_tab, 39 selected_tab, 40 selected_tab_index 41 } = getContext(TABS); 42 43 let tab_index = mutable_source(); 44 45 function _register_tab(obj, order) { 46 obj = JSON.parse(obj); 47 48 return register_tab(obj, order); 49 } 50 51 onMount(() => { 52 return () => unregister_tab({ label: label(), id: id(), elem_id: elem_id() }, order()); 53 }); 54 55 legacy_pre_effect( 56 () => ( 57 deep_read_state(label()), 58 deep_read_state(id()), 59 deep_read_state(elem_id()), 60 deep_read_state(visible()), 61 deep_read_state(interactive()), 62 deep_read_state(scale()), 63 deep_read_state(component_id()) 64 ), 65 () => { 66 set(props_json, JSON.stringify({ 67 label: label(), 68 id: id(), 69 elem_id: elem_id(), 70 visible: visible(), 71 interactive: interactive(), 72 scale: scale(), 73 component_id: component_id() 74 })); 75 } 76 ); 77 78 legacy_pre_effect(() => (get(props_json), deep_read_state(order())), () => { 79 set(tab_index, _register_tab(get(props_json), order())); 80 }); 81 82 legacy_pre_effect( 83 () => ( 84 $selected_tab_index(), 85 get(tab_index), 86 deep_read_state(label()) 87 ), 88 () => { 89 $selected_tab_index() === get(tab_index) && tick().then(() => dispatch("select", { value: label(), index: get(tab_index) })); 90 } 91 ); 92 93 legacy_pre_effect_reset(); 94 95 var $$exports = { 96 get elem_id() { 97 return elem_id(); 98 }, 99 100 set elem_id($$value) { 101 elem_id($$value); 102 flushSync(); 103 }, 104 105 get elem_classes() { 106 return elem_classes(); 107 }, 108 109 set elem_classes($$value) { 110 elem_classes($$value); 111 flushSync(); 112 }, 113 114 get label() { 115 return label(); 116 }, 117 118 set label($$value) { 119 label($$value); 120 flushSync(); 121 }, 122 123 get id() { 124 return id(); 125 }, 126 127 set id($$value) { 128 id($$value); 129 flushSync(); 130 }, 131 132 get visible() { 133 return visible(); 134 }, 135 136 set visible($$value) { 137 visible($$value); 138 flushSync(); 139 }, 140 141 get interactive() { 142 return interactive(); 143 }, 144 145 set interactive($$value) { 146 interactive($$value); 147 flushSync(); 148 }, 149 150 get order() { 151 return order(); 152 }, 153 154 set order($$value) { 155 order($$value); 156 flushSync(); 157 }, 158 159 get scale() { 160 return scale(); 161 }, 162 163 set scale($$value) { 164 scale($$value); 165 flushSync(); 166 }, 167 168 get component_id() { 169 return component_id(); 170 }, 171 172 set component_id($$value) { 173 component_id($$value); 174 flushSync(); 175 } 176 }; 177 178 init(); 179 180 var div = root(); 181 let classes; 182 let styles; 183 var node = child(div); 184 185 { 186 let $0 = derived_safe_equal(() => scale() >= 1 ? scale() : null); 187 188 BaseColumn(node, { 189 get scale() { 190 return get($0); 191 }, 192 193 children: ($$anchor, $$slotProps) => { 194 var fragment = comment();
195 var node_1 = first_child(fragment); 196 197 slot(node_1, $$props, 'default', {}); 198 append($$anchor, fragment); 199 }, 200 $$slots: { default: true } 201 }); 202 } 203 204 reset(div); 205 206 template_effect( 207 ($0) => { 208 set_attribute(div, 'id', elem_id()); 209 classes = set_class(div, 1, `tabitem ${$0 ?? ''}`, 'svelte-dmtrd3', classes, { 'grow-children': scale() >= 1 }); 210 211 styles = set_style(div, '', styles, { 212 display: $selected_tab() === id() && visible() !== false ? "flex" : "none", 213 'flex-grow': scale() 214 }); 215 }, 216 [ 217 () => ( 218 deep_read_state(elem_classes()), 219 untrack(() => elem_classes().join(' ')) 220 ) 221 ] 222 ); 223 224 append($$anchor, div); 225 226 var $$pop = pop($$exports); 227 228 $$cleanup(); 229 230 return $$pop; 231} 232 233function Index($$anchor, $$props) { 234 push($$props, true); 235 236 let props = rest_props($$props, ['$$slots', '$$events', '$$legacy']); 237 const gradio = new Gradio(props); 238 239 TabItem($$anchor, { 240 get elem_id() { 241 return gradio.shared.elem_id; 242 }, 243 244 get elem_classes() { 245 return gradio.shared.elem_classes; 246 }, 247 248 get label() { 249 return gradio.shared.label; 250 }, 251 252 get visible() { 253 return gradio.shared.visible; 254 }, 255 256 get interactive() { 257 return gradio.shared.interactive; 258 }, 259 260 get id() { 261 return gradio.props.id; 262 }, 263 264 get order() { 265 return gradio.props.order; 266 }, 267 268 get scale() { 269 return gradio.props.scale; 270 }, 271 272 get component_id() { 273 return gradio.props.component_id; 274 }, 275 $$events: { select: ({ detail }) => gradio.dispatch("select", detail) }, 276 children: ($$anchor, $$slotProps) => { 277 var fragment_1 = comment(); 278 var node = first_child(fragment_1); 279 280 slot(node, $$props, 'default', {}); 281 append($$anchor, fragment_1); 282 }, 283 $$slots: { default: true } 284 }); 285 286 pop(); 287} 288 289export { TabItem as BaseTabItem, Index as default }; 290//# sourceMappingURL=Index-CHpEZTbG.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.