1import { p as prop, s as slot, b as set_class, f as set_style, i as if_block, r as rest_props, g as spread_props } from './i18n-CMo5lpzy.js'; 2import { R as push, S as first_child, t as template_effect, a as append, T as pop, X as sibling, V as child, W as from_html, aj as delegate, a0 as set_text, Y as reset, a6 as comment, w as get, a5 as user_derived } from './index-BvBk1Iap.js'; 3import { B as Block } from './Block-Bx3BikCN.js'; 4import './ScrollFade.svelte_svelte_type_style_lang-Xm-PLg9E.js'; 5import { G as Gradio } from './utils.svelte-CYLB_jIA.js'; 6import { S as Static } from './index-Lz7fsHFt.js'; 7import './StreamingBar.svelte_svelte_type_style_lang-CdFIGsJa.js'; 8import { B as BaseColumn } from './Index.svelte_svelte_type_style_lang-C97CbKPo.js'; 9import './snippet-Bl5YVoCg.js'; 10import './clone-DaB-S2nH.js'; 11import './Clear-Dgs5UhTO.js'; 12import './html-CdUEtR5E.js'; 13import './index-C7e-J7CF.js'; 14 15var root = from_html(`<button><span class="svelte-e5lyqv"> </span> <span class="icon svelte-e5lyqv">â¼</span></button> <div data-testid="accordion-content"><!></div>`, 1); 16 17function Accordion($$anchor, $$props) { 18 push($$props, true); 19 20 let open = prop($$props, 'open', 15, true), 21 label = prop($$props, 'label', 3, ""); 22 23 var fragment = root(); 24 var button = first_child(fragment); 25 26 button.__click = () => { 27 open(!open()); 28 29 if (open()) { 30 $$props.onexpand?.(); 31 } else { 32 $$props.oncollapse?.(); 33 } 34 }; 35 36 let classes; 37 var span = child(button); 38 var text = child(span, true); 39 40 reset(span); 41 42 var span_1 = sibling(span, 2); 43 let styles; 44 45 reset(button); 46 47 var div = sibling(button, 2); 48 let styles_1; 49 var node = child(div); 50 51 slot(node, $$props, 'default', {}); 52 reset(div); 53 54 template_effect(() => { 55 classes = set_class(button, 1, 'label-wrap svelte-e5lyqv', null, classes, { open: open() }); 56 set_text(text, label()); 57 styles = set_style(span_1, '', styles, { transform: open() ? "rotate(0)" : "rotate(90deg)" }); 58 styles_1 = set_style(div, '', styles_1, { display: open() ? "block" : "none" }); 59 }); 60 61 append($$anchor, fragment); 62 pop(); 63} 64 65delegate(['click']); 66 67var root_1 = from_html(`<!> <!>`, 1); 68 69function Index($$anchor, $$props) { 70 push($$props, true); 71 72 let props = rest_props($$props, ['$$slots', '$$events', '$$legacy']); 73 74 class AccordionGradio extends Gradio { 75 set_data(data) { 76 if ("open" in data && data.open !== this.props.open) { 77 if (data.open) { 78 this.dispatch("expand"); 79 this.dispatch("gradio_expand"); 80 } else { 81 this.dispatch("collapse"); 82 } 83 } 84 85 super.set_data(data); 86 this.shared.loading_status.status = "complete"; 87 } 88 } 89 90 const gradio = new AccordionGradio(props); 91 let label = user_derived(() => gradio.shared.label || ""); 92 let visibility = user_derived(() => gradio.shared.visible === true ? true : "hidden"); 93 94 Block($$anchor, { 95 get elem_id() { 96 return gradio.shared.elem_id; 97 }, 98 99 get elem_classes() { 100 return gradio.shared.elem_classes; 101 }, 102 103 get visible() { 104 return get(visibility); 105 }, 106 107 children: ($$anchor, $$slotProps) => { 108 var fragment_1 = root_1(); 109 var node = first_child(fragment_1); 110 111 { 112 var consequent = ($$anchor) => { 113 Static($$anchor, spread_props( 114 { 115 get autoscroll() { 116 return gradio.shared.autoscroll; 117 }, 118 119 get i18n() { 120 return gradio.i18n; 121 } 122 }, 123 () => gradio.shared.loading_status 124 )); 125 }; 126 127 if_block(node, ($$render) => { 128 if (gradio.shared.loading_status) $$render(consequent); 129 }); 130 } 131 132 var node_1 = sibling(node, 2); 133 134 Accordion(node_1, { 135 get label() { 136 return get(label); 137 }, 138 139 get open() { 140 return gradio.props.open; 141 }, 142 143 onexpand: () => { 144 gradio.dispatch("expand"); 145 gradio.dispatch("gradio_expand"); 146 }, 147 oncollapse: () => gradio.dispatch("collapse"), 148 children: ($$anchor, $$slotProps) => { 149 BaseColumn($$anchor, { 150 children: ($$anchor, $$slotProps) => { 151 var fragment_4 = comment(); 152 var node_2 = first_child(fragment_4); 153 154 slot(node_2, $$props, 'default', {}); 155 append($$anchor, fragment_4); 156 }, 157 $$slots: { default: true } 158 }); 159 }, 160 $$slots: { default: true } 161 }); 162 163 append($$anchor, fragment_1); 164 }, 165 $$slots: { default: true } 166 }); 167 168 pop(); 169} 170 171export { Index as default }; 172//# sourceMappingURL=Index-B6k2WpQm.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.