Spaces:
Runtime error
Runtime error
Upload folder using huggingface_hub
Browse files- .gitattributes +1 -0
- README.md +47 -17
- app.py +34 -17
- space.py +35 -18
- src/README.md +47 -17
- src/backend/gradio_rerun/rerun.py +8 -0
- src/backend/gradio_rerun/templates/component/index.js +3 -2737
- src/backend/gradio_rerun/templates/component/re_viewer-B_L3tdvY.js +0 -0
- src/backend/gradio_rerun/templates/component/style.css +1 -1
- src/demo/app.py +34 -17
- src/demo/space.py +35 -18
- src/frontend/Index.svelte +27 -9
- src/frontend/gradio.config.js +19 -1
- src/frontend/package-lock.json +6 -14
- src/frontend/package.json +5 -3
- src/pyproject.toml +3 -3
.gitattributes
CHANGED
@@ -39,3 +39,4 @@ src/examples/rrt-star.rrd filter=lfs diff=lfs merge=lfs -text
|
|
39 |
src/examples/structure_from_motion.rrd filter=lfs diff=lfs merge=lfs -text
|
40 |
*.rrd filter=lfs diff=lfs merge=lfs -text
|
41 |
src/backend/gradio_rerun/templates/component/re_viewer-DOCTrs8v.js filter=lfs diff=lfs merge=lfs -text
|
|
|
|
39 |
src/examples/structure_from_motion.rrd filter=lfs diff=lfs merge=lfs -text
|
40 |
*.rrd filter=lfs diff=lfs merge=lfs -text
|
41 |
src/backend/gradio_rerun/templates/component/re_viewer-DOCTrs8v.js filter=lfs diff=lfs merge=lfs -text
|
42 |
+
src/backend/gradio_rerun/templates/component/index.js filter=lfs diff=lfs merge=lfs -text
|
README.md
CHANGED
@@ -122,6 +122,16 @@ with gr.Blocks() as demo:
|
|
122 |
img = gr.Image(interactive=True, label="Image")
|
123 |
with gr.Column():
|
124 |
stream_blur = gr.Button("Stream Repeated Blur")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
125 |
|
126 |
with gr.Tab("Dynamic RRD"):
|
127 |
pending_cleanup = gr.State(
|
@@ -139,6 +149,20 @@ with gr.Blocks() as demo:
|
|
139 |
)
|
140 |
with gr.Row():
|
141 |
create_rrd = gr.Button("Create RRD")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
142 |
|
143 |
with gr.Tab("Hosted RRD"):
|
144 |
with gr.Row():
|
@@ -152,23 +176,16 @@ with gr.Blocks() as demo:
|
|
152 |
f"{rr.bindings.get_app_url()}/examples/plots.rrd",
|
153 |
],
|
154 |
)
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
create_rrd.click(
|
166 |
-
create_cube_rrd,
|
167 |
-
inputs=[x_count, y_count, z_count, pending_cleanup],
|
168 |
-
outputs=[viewer],
|
169 |
-
)
|
170 |
-
|
171 |
-
choose_rrd.change(lambda x: x, inputs=[choose_rrd], outputs=[viewer])
|
172 |
|
173 |
|
174 |
if __name__ == "__main__":
|
@@ -363,6 +380,19 @@ bool
|
|
363 |
<td align="left"><code>True</code></td>
|
364 |
<td align="left">If False, component will not render be rendered in the Blocks context. Should be used if the intention is to assign event listeners now but render the component later.</td>
|
365 |
</tr>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
366 |
</tbody></table>
|
367 |
|
368 |
|
|
|
122 |
img = gr.Image(interactive=True, label="Image")
|
123 |
with gr.Column():
|
124 |
stream_blur = gr.Button("Stream Repeated Blur")
|
125 |
+
with gr.Row():
|
126 |
+
viewer = Rerun(
|
127 |
+
streaming=True,
|
128 |
+
panel_states={
|
129 |
+
"time": "collapsed",
|
130 |
+
"blueprint": "hidden",
|
131 |
+
"selection": "hidden",
|
132 |
+
},
|
133 |
+
)
|
134 |
+
stream_blur.click(streaming_repeated_blur, inputs=[img], outputs=[viewer])
|
135 |
|
136 |
with gr.Tab("Dynamic RRD"):
|
137 |
pending_cleanup = gr.State(
|
|
|
149 |
)
|
150 |
with gr.Row():
|
151 |
create_rrd = gr.Button("Create RRD")
|
152 |
+
with gr.Row():
|
153 |
+
viewer = Rerun(
|
154 |
+
streaming=True,
|
155 |
+
panel_states={
|
156 |
+
"time": "collapsed",
|
157 |
+
"blueprint": "hidden",
|
158 |
+
"selection": "hidden",
|
159 |
+
},
|
160 |
+
)
|
161 |
+
create_rrd.click(
|
162 |
+
create_cube_rrd,
|
163 |
+
inputs=[x_count, y_count, z_count, pending_cleanup],
|
164 |
+
outputs=[viewer],
|
165 |
+
)
|
166 |
|
167 |
with gr.Tab("Hosted RRD"):
|
168 |
with gr.Row():
|
|
|
176 |
f"{rr.bindings.get_app_url()}/examples/plots.rrd",
|
177 |
],
|
178 |
)
|
179 |
+
with gr.Row():
|
180 |
+
viewer = Rerun(
|
181 |
+
streaming=True,
|
182 |
+
panel_states={
|
183 |
+
"time": "collapsed",
|
184 |
+
"blueprint": "hidden",
|
185 |
+
"selection": "hidden",
|
186 |
+
},
|
187 |
+
)
|
188 |
+
choose_rrd.change(lambda x: x, inputs=[choose_rrd], outputs=[viewer])
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
189 |
|
190 |
|
191 |
if __name__ == "__main__":
|
|
|
380 |
<td align="left"><code>True</code></td>
|
381 |
<td align="left">If False, component will not render be rendered in the Blocks context. Should be used if the intention is to assign event listeners now but render the component later.</td>
|
382 |
</tr>
|
383 |
+
|
384 |
+
<tr>
|
385 |
+
<td align="left"><code>panel_states</code></td>
|
386 |
+
<td align="left" style="width: 25%;">
|
387 |
+
|
388 |
+
```python
|
389 |
+
dict[str, Any] | None
|
390 |
+
```
|
391 |
+
|
392 |
+
</td>
|
393 |
+
<td align="left"><code>None</code></td>
|
394 |
+
<td align="left">Force viewer panels to a specific state. Any panels set cannot be toggled by the user in the viewer. Panel names are "top", "blueprint", "selection", and "time". States are "hidden", "collapsed", and "expanded".</td>
|
395 |
+
</tr>
|
396 |
</tbody></table>
|
397 |
|
398 |
|
app.py
CHANGED
@@ -97,6 +97,16 @@ with gr.Blocks() as demo:
|
|
97 |
img = gr.Image(interactive=True, label="Image")
|
98 |
with gr.Column():
|
99 |
stream_blur = gr.Button("Stream Repeated Blur")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
100 |
|
101 |
with gr.Tab("Dynamic RRD"):
|
102 |
pending_cleanup = gr.State(
|
@@ -114,6 +124,20 @@ with gr.Blocks() as demo:
|
|
114 |
)
|
115 |
with gr.Row():
|
116 |
create_rrd = gr.Button("Create RRD")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
117 |
|
118 |
with gr.Tab("Hosted RRD"):
|
119 |
with gr.Row():
|
@@ -127,23 +151,16 @@ with gr.Blocks() as demo:
|
|
127 |
f"{rr.bindings.get_app_url()}/examples/plots.rrd",
|
128 |
],
|
129 |
)
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
create_rrd.click(
|
141 |
-
create_cube_rrd,
|
142 |
-
inputs=[x_count, y_count, z_count, pending_cleanup],
|
143 |
-
outputs=[viewer],
|
144 |
-
)
|
145 |
-
|
146 |
-
choose_rrd.change(lambda x: x, inputs=[choose_rrd], outputs=[viewer])
|
147 |
|
148 |
|
149 |
if __name__ == "__main__":
|
|
|
97 |
img = gr.Image(interactive=True, label="Image")
|
98 |
with gr.Column():
|
99 |
stream_blur = gr.Button("Stream Repeated Blur")
|
100 |
+
with gr.Row():
|
101 |
+
viewer = Rerun(
|
102 |
+
streaming=True,
|
103 |
+
panel_states={
|
104 |
+
"time": "collapsed",
|
105 |
+
"blueprint": "hidden",
|
106 |
+
"selection": "hidden",
|
107 |
+
},
|
108 |
+
)
|
109 |
+
stream_blur.click(streaming_repeated_blur, inputs=[img], outputs=[viewer])
|
110 |
|
111 |
with gr.Tab("Dynamic RRD"):
|
112 |
pending_cleanup = gr.State(
|
|
|
124 |
)
|
125 |
with gr.Row():
|
126 |
create_rrd = gr.Button("Create RRD")
|
127 |
+
with gr.Row():
|
128 |
+
viewer = Rerun(
|
129 |
+
streaming=True,
|
130 |
+
panel_states={
|
131 |
+
"time": "collapsed",
|
132 |
+
"blueprint": "hidden",
|
133 |
+
"selection": "hidden",
|
134 |
+
},
|
135 |
+
)
|
136 |
+
create_rrd.click(
|
137 |
+
create_cube_rrd,
|
138 |
+
inputs=[x_count, y_count, z_count, pending_cleanup],
|
139 |
+
outputs=[viewer],
|
140 |
+
)
|
141 |
|
142 |
with gr.Tab("Hosted RRD"):
|
143 |
with gr.Row():
|
|
|
151 |
f"{rr.bindings.get_app_url()}/examples/plots.rrd",
|
152 |
],
|
153 |
)
|
154 |
+
with gr.Row():
|
155 |
+
viewer = Rerun(
|
156 |
+
streaming=True,
|
157 |
+
panel_states={
|
158 |
+
"time": "collapsed",
|
159 |
+
"blueprint": "hidden",
|
160 |
+
"selection": "hidden",
|
161 |
+
},
|
162 |
+
)
|
163 |
+
choose_rrd.change(lambda x: x, inputs=[choose_rrd], outputs=[viewer])
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
164 |
|
165 |
|
166 |
if __name__ == "__main__":
|
space.py
CHANGED
@@ -3,7 +3,7 @@ import gradio as gr
|
|
3 |
from app import demo as app
|
4 |
import os
|
5 |
|
6 |
-
_docs = {'Rerun': {'description': 'Creates a Rerun viewer component that can be used to display the output of a Rerun stream.', 'members': {'__init__': {'value': {'type': 'list[pathlib.Path | str]\n | pathlib.Path\n | str\n | bytes\n | Callable\n | None', 'default': 'None', 'description': 'Takes a singular or list of RRD resources. Each RRD can be a Path, a string containing a url, or a binary blob containing encoded RRD data. If callable, the function will be called whenever the app loads to set the initial value of the component.'}, 'label': {'type': 'str | None', 'default': 'None', 'description': 'The label for this component. Appears above the component and is also used as the header if there are a table of examples for this component. If None and used in a `gr.Interface`, the label will be the name of the parameter this component is assigned to.'}, 'every': {'type': 'float | None', 'default': 'None', 'description': "If `value` is a callable, run the function 'every' number of seconds while the client connection is open. Has no effect otherwise. Queue must be enabled. The event can be accessed (e.g. to cancel it) via this component's .load_event attribute."}, 'show_label': {'type': 'bool | None', 'default': 'None', 'description': 'if True, will display label.'}, 'container': {'type': 'bool', 'default': 'True', 'description': 'If True, will place the component in a container - providing some extra padding around the border.'}, 'scale': {'type': 'int | None', 'default': 'None', 'description': 'relative size compared to adjacent Components. For example if Components A and B are in a Row, and A has scale=2, and B has scale=1, A will be twice as wide as B. Should be an integer. scale applies in Rows, and to top-level Components in Blocks where fill_height=True.'}, 'min_width': {'type': 'int', 'default': '160', 'description': 'minimum pixel width, will wrap if not sufficient screen space to satisfy this value. If a certain scale value results in this Component being narrower than min_width, the min_width parameter will be respected first.'}, 'height': {'type': 'int | str', 'default': '640', 'description': 'height of component in pixels. If a string is provided, will be interpreted as a CSS value. If None, will be set to 640px.'}, 'visible': {'type': 'bool', 'default': 'True', 'description': 'If False, component will be hidden.'}, 'streaming': {'type': 'bool', 'default': 'False', 'description': 'If True, the data should be incrementally yielded from the source as `bytes` returned by calling `.read()` on an `rr.binary_stream()`'}, 'elem_id': {'type': 'str | None', 'default': 'None', 'description': 'An optional string that is assigned as the id of this component in the HTML DOM. Can be used for targeting CSS styles.'}, 'elem_classes': {'type': 'list[str] | str | None', 'default': 'None', 'description': 'An optional list of strings that are assigned as the classes of this component in the HTML DOM. Can be used for targeting CSS styles.'}, 'render': {'type': 'bool', 'default': 'True', 'description': 'If False, component will not render be rendered in the Blocks context. Should be used if the intention is to assign event listeners now but render the component later.'}}, 'postprocess': {'value': {'type': 'list[pathlib.Path | str] | pathlib.Path | str | bytes', 'description': 'Expects'}}, 'preprocess': {'return': {'type': 'RerunData | None', 'description': 'A RerunData object.'}, 'value': None}}, 'events': {}}, '__meta__': {'additional_interfaces': {'RerunData': {'source': 'class RerunData(GradioRootModel):\n root: list[FileData | str]'}}, 'user_fn_refs': {'Rerun': ['RerunData']}}}
|
7 |
|
8 |
abs_path = os.path.join(os.path.dirname(__file__), "css.css")
|
9 |
|
@@ -137,6 +137,16 @@ with gr.Blocks() as demo:
|
|
137 |
img = gr.Image(interactive=True, label="Image")
|
138 |
with gr.Column():
|
139 |
stream_blur = gr.Button("Stream Repeated Blur")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
140 |
|
141 |
with gr.Tab("Dynamic RRD"):
|
142 |
pending_cleanup = gr.State(
|
@@ -154,6 +164,20 @@ with gr.Blocks() as demo:
|
|
154 |
)
|
155 |
with gr.Row():
|
156 |
create_rrd = gr.Button("Create RRD")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
157 |
|
158 |
with gr.Tab("Hosted RRD"):
|
159 |
with gr.Row():
|
@@ -167,23 +191,16 @@ with gr.Blocks() as demo:
|
|
167 |
f"{rr.bindings.get_app_url()}/examples/plots.rrd",
|
168 |
],
|
169 |
)
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
create_rrd.click(
|
181 |
-
create_cube_rrd,
|
182 |
-
inputs=[x_count, y_count, z_count, pending_cleanup],
|
183 |
-
outputs=[viewer],
|
184 |
-
)
|
185 |
-
|
186 |
-
choose_rrd.change(lambda x: x, inputs=[choose_rrd], outputs=[viewer])
|
187 |
|
188 |
|
189 |
if __name__ == "__main__":
|
|
|
3 |
from app import demo as app
|
4 |
import os
|
5 |
|
6 |
+
_docs = {'Rerun': {'description': 'Creates a Rerun viewer component that can be used to display the output of a Rerun stream.', 'members': {'__init__': {'value': {'type': 'list[pathlib.Path | str]\n | pathlib.Path\n | str\n | bytes\n | Callable\n | None', 'default': 'None', 'description': 'Takes a singular or list of RRD resources. Each RRD can be a Path, a string containing a url, or a binary blob containing encoded RRD data. If callable, the function will be called whenever the app loads to set the initial value of the component.'}, 'label': {'type': 'str | None', 'default': 'None', 'description': 'The label for this component. Appears above the component and is also used as the header if there are a table of examples for this component. If None and used in a `gr.Interface`, the label will be the name of the parameter this component is assigned to.'}, 'every': {'type': 'float | None', 'default': 'None', 'description': "If `value` is a callable, run the function 'every' number of seconds while the client connection is open. Has no effect otherwise. Queue must be enabled. The event can be accessed (e.g. to cancel it) via this component's .load_event attribute."}, 'show_label': {'type': 'bool | None', 'default': 'None', 'description': 'if True, will display label.'}, 'container': {'type': 'bool', 'default': 'True', 'description': 'If True, will place the component in a container - providing some extra padding around the border.'}, 'scale': {'type': 'int | None', 'default': 'None', 'description': 'relative size compared to adjacent Components. For example if Components A and B are in a Row, and A has scale=2, and B has scale=1, A will be twice as wide as B. Should be an integer. scale applies in Rows, and to top-level Components in Blocks where fill_height=True.'}, 'min_width': {'type': 'int', 'default': '160', 'description': 'minimum pixel width, will wrap if not sufficient screen space to satisfy this value. If a certain scale value results in this Component being narrower than min_width, the min_width parameter will be respected first.'}, 'height': {'type': 'int | str', 'default': '640', 'description': 'height of component in pixels. If a string is provided, will be interpreted as a CSS value. If None, will be set to 640px.'}, 'visible': {'type': 'bool', 'default': 'True', 'description': 'If False, component will be hidden.'}, 'streaming': {'type': 'bool', 'default': 'False', 'description': 'If True, the data should be incrementally yielded from the source as `bytes` returned by calling `.read()` on an `rr.binary_stream()`'}, 'elem_id': {'type': 'str | None', 'default': 'None', 'description': 'An optional string that is assigned as the id of this component in the HTML DOM. Can be used for targeting CSS styles.'}, 'elem_classes': {'type': 'list[str] | str | None', 'default': 'None', 'description': 'An optional list of strings that are assigned as the classes of this component in the HTML DOM. Can be used for targeting CSS styles.'}, 'render': {'type': 'bool', 'default': 'True', 'description': 'If False, component will not render be rendered in the Blocks context. Should be used if the intention is to assign event listeners now but render the component later.'}, 'panel_states': {'type': 'dict[str, Any] | None', 'default': 'None', 'description': 'Force viewer panels to a specific state. Any panels set cannot be toggled by the user in the viewer. Panel names are "top", "blueprint", "selection", and "time". States are "hidden", "collapsed", and "expanded".'}}, 'postprocess': {'value': {'type': 'list[pathlib.Path | str] | pathlib.Path | str | bytes', 'description': 'Expects'}}, 'preprocess': {'return': {'type': 'RerunData | None', 'description': 'A RerunData object.'}, 'value': None}}, 'events': {}}, '__meta__': {'additional_interfaces': {'RerunData': {'source': 'class RerunData(GradioRootModel):\n root: list[FileData | str]'}}, 'user_fn_refs': {'Rerun': ['RerunData']}}}
|
7 |
|
8 |
abs_path = os.path.join(os.path.dirname(__file__), "css.css")
|
9 |
|
|
|
137 |
img = gr.Image(interactive=True, label="Image")
|
138 |
with gr.Column():
|
139 |
stream_blur = gr.Button("Stream Repeated Blur")
|
140 |
+
with gr.Row():
|
141 |
+
viewer = Rerun(
|
142 |
+
streaming=True,
|
143 |
+
panel_states={
|
144 |
+
"time": "collapsed",
|
145 |
+
"blueprint": "hidden",
|
146 |
+
"selection": "hidden",
|
147 |
+
},
|
148 |
+
)
|
149 |
+
stream_blur.click(streaming_repeated_blur, inputs=[img], outputs=[viewer])
|
150 |
|
151 |
with gr.Tab("Dynamic RRD"):
|
152 |
pending_cleanup = gr.State(
|
|
|
164 |
)
|
165 |
with gr.Row():
|
166 |
create_rrd = gr.Button("Create RRD")
|
167 |
+
with gr.Row():
|
168 |
+
viewer = Rerun(
|
169 |
+
streaming=True,
|
170 |
+
panel_states={
|
171 |
+
"time": "collapsed",
|
172 |
+
"blueprint": "hidden",
|
173 |
+
"selection": "hidden",
|
174 |
+
},
|
175 |
+
)
|
176 |
+
create_rrd.click(
|
177 |
+
create_cube_rrd,
|
178 |
+
inputs=[x_count, y_count, z_count, pending_cleanup],
|
179 |
+
outputs=[viewer],
|
180 |
+
)
|
181 |
|
182 |
with gr.Tab("Hosted RRD"):
|
183 |
with gr.Row():
|
|
|
191 |
f"{rr.bindings.get_app_url()}/examples/plots.rrd",
|
192 |
],
|
193 |
)
|
194 |
+
with gr.Row():
|
195 |
+
viewer = Rerun(
|
196 |
+
streaming=True,
|
197 |
+
panel_states={
|
198 |
+
"time": "collapsed",
|
199 |
+
"blueprint": "hidden",
|
200 |
+
"selection": "hidden",
|
201 |
+
},
|
202 |
+
)
|
203 |
+
choose_rrd.change(lambda x: x, inputs=[choose_rrd], outputs=[viewer])
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
204 |
|
205 |
|
206 |
if __name__ == "__main__":
|
src/README.md
CHANGED
@@ -122,6 +122,16 @@ with gr.Blocks() as demo:
|
|
122 |
img = gr.Image(interactive=True, label="Image")
|
123 |
with gr.Column():
|
124 |
stream_blur = gr.Button("Stream Repeated Blur")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
125 |
|
126 |
with gr.Tab("Dynamic RRD"):
|
127 |
pending_cleanup = gr.State(
|
@@ -139,6 +149,20 @@ with gr.Blocks() as demo:
|
|
139 |
)
|
140 |
with gr.Row():
|
141 |
create_rrd = gr.Button("Create RRD")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
142 |
|
143 |
with gr.Tab("Hosted RRD"):
|
144 |
with gr.Row():
|
@@ -152,23 +176,16 @@ with gr.Blocks() as demo:
|
|
152 |
f"{rr.bindings.get_app_url()}/examples/plots.rrd",
|
153 |
],
|
154 |
)
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
create_rrd.click(
|
166 |
-
create_cube_rrd,
|
167 |
-
inputs=[x_count, y_count, z_count, pending_cleanup],
|
168 |
-
outputs=[viewer],
|
169 |
-
)
|
170 |
-
|
171 |
-
choose_rrd.change(lambda x: x, inputs=[choose_rrd], outputs=[viewer])
|
172 |
|
173 |
|
174 |
if __name__ == "__main__":
|
@@ -363,6 +380,19 @@ bool
|
|
363 |
<td align="left"><code>True</code></td>
|
364 |
<td align="left">If False, component will not render be rendered in the Blocks context. Should be used if the intention is to assign event listeners now but render the component later.</td>
|
365 |
</tr>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
366 |
</tbody></table>
|
367 |
|
368 |
|
|
|
122 |
img = gr.Image(interactive=True, label="Image")
|
123 |
with gr.Column():
|
124 |
stream_blur = gr.Button("Stream Repeated Blur")
|
125 |
+
with gr.Row():
|
126 |
+
viewer = Rerun(
|
127 |
+
streaming=True,
|
128 |
+
panel_states={
|
129 |
+
"time": "collapsed",
|
130 |
+
"blueprint": "hidden",
|
131 |
+
"selection": "hidden",
|
132 |
+
},
|
133 |
+
)
|
134 |
+
stream_blur.click(streaming_repeated_blur, inputs=[img], outputs=[viewer])
|
135 |
|
136 |
with gr.Tab("Dynamic RRD"):
|
137 |
pending_cleanup = gr.State(
|
|
|
149 |
)
|
150 |
with gr.Row():
|
151 |
create_rrd = gr.Button("Create RRD")
|
152 |
+
with gr.Row():
|
153 |
+
viewer = Rerun(
|
154 |
+
streaming=True,
|
155 |
+
panel_states={
|
156 |
+
"time": "collapsed",
|
157 |
+
"blueprint": "hidden",
|
158 |
+
"selection": "hidden",
|
159 |
+
},
|
160 |
+
)
|
161 |
+
create_rrd.click(
|
162 |
+
create_cube_rrd,
|
163 |
+
inputs=[x_count, y_count, z_count, pending_cleanup],
|
164 |
+
outputs=[viewer],
|
165 |
+
)
|
166 |
|
167 |
with gr.Tab("Hosted RRD"):
|
168 |
with gr.Row():
|
|
|
176 |
f"{rr.bindings.get_app_url()}/examples/plots.rrd",
|
177 |
],
|
178 |
)
|
179 |
+
with gr.Row():
|
180 |
+
viewer = Rerun(
|
181 |
+
streaming=True,
|
182 |
+
panel_states={
|
183 |
+
"time": "collapsed",
|
184 |
+
"blueprint": "hidden",
|
185 |
+
"selection": "hidden",
|
186 |
+
},
|
187 |
+
)
|
188 |
+
choose_rrd.change(lambda x: x, inputs=[choose_rrd], outputs=[viewer])
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
189 |
|
190 |
|
191 |
if __name__ == "__main__":
|
|
|
380 |
<td align="left"><code>True</code></td>
|
381 |
<td align="left">If False, component will not render be rendered in the Blocks context. Should be used if the intention is to assign event listeners now but render the component later.</td>
|
382 |
</tr>
|
383 |
+
|
384 |
+
<tr>
|
385 |
+
<td align="left"><code>panel_states</code></td>
|
386 |
+
<td align="left" style="width: 25%;">
|
387 |
+
|
388 |
+
```python
|
389 |
+
dict[str, Any] | None
|
390 |
+
```
|
391 |
+
|
392 |
+
</td>
|
393 |
+
<td align="left"><code>None</code></td>
|
394 |
+
<td align="left">Force viewer panels to a specific state. Any panels set cannot be toggled by the user in the viewer. Panel names are "top", "blueprint", "selection", and "time". States are "hidden", "collapsed", and "expanded".</td>
|
395 |
+
</tr>
|
396 |
</tbody></table>
|
397 |
|
398 |
|
src/backend/gradio_rerun/rerun.py
CHANGED
@@ -47,6 +47,7 @@ class Rerun(Component, StreamingOutput):
|
|
47 |
elem_id: str | None = None,
|
48 |
elem_classes: list[str] | str | None = None,
|
49 |
render: bool = True,
|
|
|
50 |
):
|
51 |
"""
|
52 |
Parameters:
|
@@ -63,9 +64,11 @@ class Rerun(Component, StreamingOutput):
|
|
63 |
elem_id: An optional string that is assigned as the id of this component in the HTML DOM. Can be used for targeting CSS styles.
|
64 |
elem_classes: An optional list of strings that are assigned as the classes of this component in the HTML DOM. Can be used for targeting CSS styles.
|
65 |
render: If False, component will not render be rendered in the Blocks context. Should be used if the intention is to assign event listeners now but render the component later.
|
|
|
66 |
"""
|
67 |
self.height = height
|
68 |
self.streaming = streaming
|
|
|
69 |
super().__init__(
|
70 |
label=label,
|
71 |
every=every,
|
@@ -81,6 +84,11 @@ class Rerun(Component, StreamingOutput):
|
|
81 |
value=value,
|
82 |
)
|
83 |
|
|
|
|
|
|
|
|
|
|
|
84 |
def preprocess(self, payload: RerunData | None) -> RerunData | None:
|
85 |
"""
|
86 |
This component does not accept input.
|
|
|
47 |
elem_id: str | None = None,
|
48 |
elem_classes: list[str] | str | None = None,
|
49 |
render: bool = True,
|
50 |
+
panel_states: dict[str, Any] | None = None,
|
51 |
):
|
52 |
"""
|
53 |
Parameters:
|
|
|
64 |
elem_id: An optional string that is assigned as the id of this component in the HTML DOM. Can be used for targeting CSS styles.
|
65 |
elem_classes: An optional list of strings that are assigned as the classes of this component in the HTML DOM. Can be used for targeting CSS styles.
|
66 |
render: If False, component will not render be rendered in the Blocks context. Should be used if the intention is to assign event listeners now but render the component later.
|
67 |
+
panel_states: Force viewer panels to a specific state. Any panels set cannot be toggled by the user in the viewer. Panel names are "top", "blueprint", "selection", and "time". States are "hidden", "collapsed", and "expanded".
|
68 |
"""
|
69 |
self.height = height
|
70 |
self.streaming = streaming
|
71 |
+
self.panel_states = panel_states
|
72 |
super().__init__(
|
73 |
label=label,
|
74 |
every=every,
|
|
|
84 |
value=value,
|
85 |
)
|
86 |
|
87 |
+
def get_config(self):
|
88 |
+
config = super().get_config()
|
89 |
+
config["panel_states"] = self.panel_states
|
90 |
+
return config
|
91 |
+
|
92 |
def preprocess(self, payload: RerunData | None) -> RerunData | None:
|
93 |
"""
|
94 |
This component does not accept input.
|
src/backend/gradio_rerun/templates/component/index.js
CHANGED
@@ -1,2737 +1,3 @@
|
|
1 |
-
|
2 |
-
|
3 |
-
|
4 |
-
}
|
5 |
-
function Dt() {
|
6 |
-
const l = new Uint8Array(16);
|
7 |
-
return crypto.getRandomValues(l), Array.from(l).map((e) => e.toString(16).padStart(2, "0")).join("");
|
8 |
-
}
|
9 |
-
class Ht {
|
10 |
-
/** @type {(import("./re_viewer.js").WebHandle) | null} */
|
11 |
-
#e = null;
|
12 |
-
/** @type {HTMLCanvasElement | null} */
|
13 |
-
#n = null;
|
14 |
-
/** @type {'ready' | 'starting' | 'stopped'} */
|
15 |
-
#t = "stopped";
|
16 |
-
/**
|
17 |
-
* Start the viewer.
|
18 |
-
*
|
19 |
-
* @param {string | string[]} [rrd] URLs to `.rrd` files or WebSocket connections to our SDK.
|
20 |
-
* @param {HTMLElement} [parent] The element to attach the canvas onto.
|
21 |
-
* @param {boolean} [hide_welcome_screen] Whether to hide the welcome screen.
|
22 |
-
* @returns {Promise<void>}
|
23 |
-
*/
|
24 |
-
async start(e, t = document.body, n = !1) {
|
25 |
-
if (this.#t !== "stopped")
|
26 |
-
return;
|
27 |
-
this.#t = "starting", this.#n = document.createElement("canvas"), this.#n.id = Dt(), t.append(this.#n);
|
28 |
-
let i = await Bt();
|
29 |
-
if (this.#t === "starting" && (this.#e = new i(), await this.#e.start(
|
30 |
-
this.#n.id,
|
31 |
-
void 0,
|
32 |
-
void 0,
|
33 |
-
void 0,
|
34 |
-
n
|
35 |
-
), this.#t === "starting")) {
|
36 |
-
if (this.#e.has_panicked())
|
37 |
-
throw new Error(`Web viewer crashed: ${this.#e.panic_message()}`);
|
38 |
-
this.#t = "ready", e && this.open(e);
|
39 |
-
}
|
40 |
-
}
|
41 |
-
/**
|
42 |
-
* Returns `true` if the viewer is ready to connect to data sources.
|
43 |
-
*/
|
44 |
-
get ready() {
|
45 |
-
return this.#t === "ready";
|
46 |
-
}
|
47 |
-
/**
|
48 |
-
* Open a recording.
|
49 |
-
*
|
50 |
-
* The viewer must have been started via `WebViewer.start`.
|
51 |
-
*
|
52 |
-
* @see {WebViewer.start}
|
53 |
-
*
|
54 |
-
* @param {string | string[]} rrd URLs to `.rrd` files or WebSocket connections to our SDK.
|
55 |
-
* @param {{ follow_if_http?: boolean }} options
|
56 |
-
* - follow_if_http: Whether Rerun should open the resource in "Following" mode when streaming
|
57 |
-
* from an HTTP url. Defaults to `false`. Ignored for non-HTTP URLs.
|
58 |
-
*/
|
59 |
-
open(e, t = {}) {
|
60 |
-
if (!this.#e)
|
61 |
-
throw new Error(`attempted to open \`${e}\` in a stopped viewer`);
|
62 |
-
const n = Array.isArray(e) ? e : [e];
|
63 |
-
for (const i of n)
|
64 |
-
if (this.#e.add_receiver(i, t.follow_if_http), this.#e.has_panicked())
|
65 |
-
throw new Error(`Web viewer crashed: ${this.#e.panic_message()}`);
|
66 |
-
}
|
67 |
-
/**
|
68 |
-
* Close a recording.
|
69 |
-
*
|
70 |
-
* The viewer must have been started via `WebViewer.start`.
|
71 |
-
*
|
72 |
-
* @see {WebViewer.start}
|
73 |
-
*
|
74 |
-
* @param {string | string[]} rrd URLs to `.rrd` files or WebSocket connections to our SDK.
|
75 |
-
*/
|
76 |
-
close(e) {
|
77 |
-
if (!this.#e)
|
78 |
-
throw new Error(`attempted to close \`${e}\` in a stopped viewer`);
|
79 |
-
const t = Array.isArray(e) ? e : [e];
|
80 |
-
for (const n of t)
|
81 |
-
if (this.#e.remove_receiver(n), this.#e.has_panicked())
|
82 |
-
throw new Error(`Web viewer crashed: ${this.#e.panic_message()}`);
|
83 |
-
}
|
84 |
-
/**
|
85 |
-
* Stop the viewer, freeing all associated memory.
|
86 |
-
*
|
87 |
-
* The same viewer instance may be started multiple times.
|
88 |
-
*/
|
89 |
-
stop() {
|
90 |
-
this.#t !== "stopped" && (this.#t = "stopped", this.#n?.remove(), this.#e?.destroy(), this.#e?.free(), this.#n = null, this.#e = null);
|
91 |
-
}
|
92 |
-
/**
|
93 |
-
* Opens a new channel for sending log messages.
|
94 |
-
*
|
95 |
-
* The channel can be used to incrementally push `rrd` chunks into the viewer.
|
96 |
-
*
|
97 |
-
* @param {string} channel_name used to identify the channel.
|
98 |
-
*
|
99 |
-
* @returns {LogChannel}
|
100 |
-
*/
|
101 |
-
open_channel(e = "rerun-io/web-viewer") {
|
102 |
-
if (!this.#e)
|
103 |
-
throw new Error("...");
|
104 |
-
const t = crypto.randomUUID();
|
105 |
-
this.#e.open_channel(t, e);
|
106 |
-
const n = (o) => {
|
107 |
-
if (!this.#e)
|
108 |
-
throw new Error("...");
|
109 |
-
this.#e.send_rrd_to_channel(t, o);
|
110 |
-
}, i = () => {
|
111 |
-
if (!this.#e)
|
112 |
-
throw new Error("...");
|
113 |
-
this.#e.close_channel(t);
|
114 |
-
}, s = () => this.#t;
|
115 |
-
return new Ot(n, i, s);
|
116 |
-
}
|
117 |
-
}
|
118 |
-
class Ot {
|
119 |
-
#e;
|
120 |
-
#n;
|
121 |
-
#t;
|
122 |
-
#l = !1;
|
123 |
-
/** @internal
|
124 |
-
*
|
125 |
-
* @param {(data: Uint8Array) => void} on_send
|
126 |
-
* @param {() => void} on_close
|
127 |
-
* @param {() => 'ready' | 'starting' | 'stopped'} get_state
|
128 |
-
*/
|
129 |
-
constructor(e, t, n) {
|
130 |
-
this.#e = e, this.#n = t, this.#t = n;
|
131 |
-
}
|
132 |
-
get ready() {
|
133 |
-
return !this.#l && this.#t() === "ready";
|
134 |
-
}
|
135 |
-
/**
|
136 |
-
* Send an `rrd` containing log messages to the viewer.
|
137 |
-
*
|
138 |
-
* Does nothing if `!this.ready`.
|
139 |
-
*
|
140 |
-
* @param {Uint8Array} rrd_bytes Is an rrd file stored in a byte array, received via some other side channel.
|
141 |
-
*/
|
142 |
-
send_rrd(e) {
|
143 |
-
this.ready && this.#e(e);
|
144 |
-
}
|
145 |
-
/**
|
146 |
-
* Close the channel.
|
147 |
-
*
|
148 |
-
* Does nothing if `!this.ready`.
|
149 |
-
*/
|
150 |
-
close() {
|
151 |
-
this.ready && (this.#n(), this.#l = !0);
|
152 |
-
}
|
153 |
-
}
|
154 |
-
const {
|
155 |
-
SvelteComponent: Tt,
|
156 |
-
assign: Ut,
|
157 |
-
create_slot: Jt,
|
158 |
-
detach: Rt,
|
159 |
-
element: Xt,
|
160 |
-
get_all_dirty_from_scope: Yt,
|
161 |
-
get_slot_changes: Gt,
|
162 |
-
get_spread_update: Kt,
|
163 |
-
init: Qt,
|
164 |
-
insert: xt,
|
165 |
-
safe_not_equal: $t,
|
166 |
-
set_dynamic_element_data: Pe,
|
167 |
-
set_style: V,
|
168 |
-
toggle_class: B,
|
169 |
-
transition_in: dt,
|
170 |
-
transition_out: mt,
|
171 |
-
update_slot_base: en
|
172 |
-
} = window.__gradio__svelte__internal;
|
173 |
-
function tn(l) {
|
174 |
-
let e, t, n;
|
175 |
-
const i = (
|
176 |
-
/*#slots*/
|
177 |
-
l[18].default
|
178 |
-
), s = Jt(
|
179 |
-
i,
|
180 |
-
l,
|
181 |
-
/*$$scope*/
|
182 |
-
l[17],
|
183 |
-
null
|
184 |
-
);
|
185 |
-
let o = [
|
186 |
-
{ "data-testid": (
|
187 |
-
/*test_id*/
|
188 |
-
l[7]
|
189 |
-
) },
|
190 |
-
{ id: (
|
191 |
-
/*elem_id*/
|
192 |
-
l[2]
|
193 |
-
) },
|
194 |
-
{
|
195 |
-
class: t = "block " + /*elem_classes*/
|
196 |
-
l[3].join(" ") + " svelte-nl1om8"
|
197 |
-
}
|
198 |
-
], a = {};
|
199 |
-
for (let r = 0; r < o.length; r += 1)
|
200 |
-
a = Ut(a, o[r]);
|
201 |
-
return {
|
202 |
-
c() {
|
203 |
-
e = Xt(
|
204 |
-
/*tag*/
|
205 |
-
l[14]
|
206 |
-
), s && s.c(), Pe(
|
207 |
-
/*tag*/
|
208 |
-
l[14]
|
209 |
-
)(e, a), B(
|
210 |
-
e,
|
211 |
-
"hidden",
|
212 |
-
/*visible*/
|
213 |
-
l[10] === !1
|
214 |
-
), B(
|
215 |
-
e,
|
216 |
-
"padded",
|
217 |
-
/*padding*/
|
218 |
-
l[6]
|
219 |
-
), B(
|
220 |
-
e,
|
221 |
-
"border_focus",
|
222 |
-
/*border_mode*/
|
223 |
-
l[5] === "focus"
|
224 |
-
), B(
|
225 |
-
e,
|
226 |
-
"border_contrast",
|
227 |
-
/*border_mode*/
|
228 |
-
l[5] === "contrast"
|
229 |
-
), B(e, "hide-container", !/*explicit_call*/
|
230 |
-
l[8] && !/*container*/
|
231 |
-
l[9]), V(
|
232 |
-
e,
|
233 |
-
"height",
|
234 |
-
/*get_dimension*/
|
235 |
-
l[15](
|
236 |
-
/*height*/
|
237 |
-
l[0]
|
238 |
-
)
|
239 |
-
), V(e, "width", typeof /*width*/
|
240 |
-
l[1] == "number" ? `calc(min(${/*width*/
|
241 |
-
l[1]}px, 100%))` : (
|
242 |
-
/*get_dimension*/
|
243 |
-
l[15](
|
244 |
-
/*width*/
|
245 |
-
l[1]
|
246 |
-
)
|
247 |
-
)), V(
|
248 |
-
e,
|
249 |
-
"border-style",
|
250 |
-
/*variant*/
|
251 |
-
l[4]
|
252 |
-
), V(
|
253 |
-
e,
|
254 |
-
"overflow",
|
255 |
-
/*allow_overflow*/
|
256 |
-
l[11] ? "visible" : "hidden"
|
257 |
-
), V(
|
258 |
-
e,
|
259 |
-
"flex-grow",
|
260 |
-
/*scale*/
|
261 |
-
l[12]
|
262 |
-
), V(e, "min-width", `calc(min(${/*min_width*/
|
263 |
-
l[13]}px, 100%))`), V(e, "border-width", "var(--block-border-width)");
|
264 |
-
},
|
265 |
-
m(r, f) {
|
266 |
-
xt(r, e, f), s && s.m(e, null), n = !0;
|
267 |
-
},
|
268 |
-
p(r, f) {
|
269 |
-
s && s.p && (!n || f & /*$$scope*/
|
270 |
-
131072) && en(
|
271 |
-
s,
|
272 |
-
i,
|
273 |
-
r,
|
274 |
-
/*$$scope*/
|
275 |
-
r[17],
|
276 |
-
n ? Gt(
|
277 |
-
i,
|
278 |
-
/*$$scope*/
|
279 |
-
r[17],
|
280 |
-
f,
|
281 |
-
null
|
282 |
-
) : Yt(
|
283 |
-
/*$$scope*/
|
284 |
-
r[17]
|
285 |
-
),
|
286 |
-
null
|
287 |
-
), Pe(
|
288 |
-
/*tag*/
|
289 |
-
r[14]
|
290 |
-
)(e, a = Kt(o, [
|
291 |
-
(!n || f & /*test_id*/
|
292 |
-
128) && { "data-testid": (
|
293 |
-
/*test_id*/
|
294 |
-
r[7]
|
295 |
-
) },
|
296 |
-
(!n || f & /*elem_id*/
|
297 |
-
4) && { id: (
|
298 |
-
/*elem_id*/
|
299 |
-
r[2]
|
300 |
-
) },
|
301 |
-
(!n || f & /*elem_classes*/
|
302 |
-
8 && t !== (t = "block " + /*elem_classes*/
|
303 |
-
r[3].join(" ") + " svelte-nl1om8")) && { class: t }
|
304 |
-
])), B(
|
305 |
-
e,
|
306 |
-
"hidden",
|
307 |
-
/*visible*/
|
308 |
-
r[10] === !1
|
309 |
-
), B(
|
310 |
-
e,
|
311 |
-
"padded",
|
312 |
-
/*padding*/
|
313 |
-
r[6]
|
314 |
-
), B(
|
315 |
-
e,
|
316 |
-
"border_focus",
|
317 |
-
/*border_mode*/
|
318 |
-
r[5] === "focus"
|
319 |
-
), B(
|
320 |
-
e,
|
321 |
-
"border_contrast",
|
322 |
-
/*border_mode*/
|
323 |
-
r[5] === "contrast"
|
324 |
-
), B(e, "hide-container", !/*explicit_call*/
|
325 |
-
r[8] && !/*container*/
|
326 |
-
r[9]), f & /*height*/
|
327 |
-
1 && V(
|
328 |
-
e,
|
329 |
-
"height",
|
330 |
-
/*get_dimension*/
|
331 |
-
r[15](
|
332 |
-
/*height*/
|
333 |
-
r[0]
|
334 |
-
)
|
335 |
-
), f & /*width*/
|
336 |
-
2 && V(e, "width", typeof /*width*/
|
337 |
-
r[1] == "number" ? `calc(min(${/*width*/
|
338 |
-
r[1]}px, 100%))` : (
|
339 |
-
/*get_dimension*/
|
340 |
-
r[15](
|
341 |
-
/*width*/
|
342 |
-
r[1]
|
343 |
-
)
|
344 |
-
)), f & /*variant*/
|
345 |
-
16 && V(
|
346 |
-
e,
|
347 |
-
"border-style",
|
348 |
-
/*variant*/
|
349 |
-
r[4]
|
350 |
-
), f & /*allow_overflow*/
|
351 |
-
2048 && V(
|
352 |
-
e,
|
353 |
-
"overflow",
|
354 |
-
/*allow_overflow*/
|
355 |
-
r[11] ? "visible" : "hidden"
|
356 |
-
), f & /*scale*/
|
357 |
-
4096 && V(
|
358 |
-
e,
|
359 |
-
"flex-grow",
|
360 |
-
/*scale*/
|
361 |
-
r[12]
|
362 |
-
), f & /*min_width*/
|
363 |
-
8192 && V(e, "min-width", `calc(min(${/*min_width*/
|
364 |
-
r[13]}px, 100%))`);
|
365 |
-
},
|
366 |
-
i(r) {
|
367 |
-
n || (dt(s, r), n = !0);
|
368 |
-
},
|
369 |
-
o(r) {
|
370 |
-
mt(s, r), n = !1;
|
371 |
-
},
|
372 |
-
d(r) {
|
373 |
-
r && Rt(e), s && s.d(r);
|
374 |
-
}
|
375 |
-
};
|
376 |
-
}
|
377 |
-
function nn(l) {
|
378 |
-
let e, t = (
|
379 |
-
/*tag*/
|
380 |
-
l[14] && tn(l)
|
381 |
-
);
|
382 |
-
return {
|
383 |
-
c() {
|
384 |
-
t && t.c();
|
385 |
-
},
|
386 |
-
m(n, i) {
|
387 |
-
t && t.m(n, i), e = !0;
|
388 |
-
},
|
389 |
-
p(n, [i]) {
|
390 |
-
/*tag*/
|
391 |
-
n[14] && t.p(n, i);
|
392 |
-
},
|
393 |
-
i(n) {
|
394 |
-
e || (dt(t, n), e = !0);
|
395 |
-
},
|
396 |
-
o(n) {
|
397 |
-
mt(t, n), e = !1;
|
398 |
-
},
|
399 |
-
d(n) {
|
400 |
-
t && t.d(n);
|
401 |
-
}
|
402 |
-
};
|
403 |
-
}
|
404 |
-
function ln(l, e, t) {
|
405 |
-
let { $$slots: n = {}, $$scope: i } = e, { height: s = void 0 } = e, { width: o = void 0 } = e, { elem_id: a = "" } = e, { elem_classes: r = [] } = e, { variant: f = "solid" } = e, { border_mode: u = "base" } = e, { padding: c = !0 } = e, { type: p = "normal" } = e, { test_id: m = void 0 } = e, { explicit_call: y = !1 } = e, { container: L = !0 } = e, { visible: v = !0 } = e, { allow_overflow: F = !0 } = e, { scale: d = null } = e, { min_width: _ = 0 } = e, q = p === "fieldset" ? "fieldset" : "div";
|
406 |
-
const z = (b) => {
|
407 |
-
if (b !== void 0) {
|
408 |
-
if (typeof b == "number")
|
409 |
-
return b + "px";
|
410 |
-
if (typeof b == "string")
|
411 |
-
return b;
|
412 |
-
}
|
413 |
-
};
|
414 |
-
return l.$$set = (b) => {
|
415 |
-
"height" in b && t(0, s = b.height), "width" in b && t(1, o = b.width), "elem_id" in b && t(2, a = b.elem_id), "elem_classes" in b && t(3, r = b.elem_classes), "variant" in b && t(4, f = b.variant), "border_mode" in b && t(5, u = b.border_mode), "padding" in b && t(6, c = b.padding), "type" in b && t(16, p = b.type), "test_id" in b && t(7, m = b.test_id), "explicit_call" in b && t(8, y = b.explicit_call), "container" in b && t(9, L = b.container), "visible" in b && t(10, v = b.visible), "allow_overflow" in b && t(11, F = b.allow_overflow), "scale" in b && t(12, d = b.scale), "min_width" in b && t(13, _ = b.min_width), "$$scope" in b && t(17, i = b.$$scope);
|
416 |
-
}, [
|
417 |
-
s,
|
418 |
-
o,
|
419 |
-
a,
|
420 |
-
r,
|
421 |
-
f,
|
422 |
-
u,
|
423 |
-
c,
|
424 |
-
m,
|
425 |
-
y,
|
426 |
-
L,
|
427 |
-
v,
|
428 |
-
F,
|
429 |
-
d,
|
430 |
-
_,
|
431 |
-
q,
|
432 |
-
z,
|
433 |
-
p,
|
434 |
-
i,
|
435 |
-
n
|
436 |
-
];
|
437 |
-
}
|
438 |
-
class sn extends Tt {
|
439 |
-
constructor(e) {
|
440 |
-
super(), Qt(this, e, ln, nn, $t, {
|
441 |
-
height: 0,
|
442 |
-
width: 1,
|
443 |
-
elem_id: 2,
|
444 |
-
elem_classes: 3,
|
445 |
-
variant: 4,
|
446 |
-
border_mode: 5,
|
447 |
-
padding: 6,
|
448 |
-
type: 16,
|
449 |
-
test_id: 7,
|
450 |
-
explicit_call: 8,
|
451 |
-
container: 9,
|
452 |
-
visible: 10,
|
453 |
-
allow_overflow: 11,
|
454 |
-
scale: 12,
|
455 |
-
min_width: 13
|
456 |
-
});
|
457 |
-
}
|
458 |
-
}
|
459 |
-
const {
|
460 |
-
SvelteComponent: fn,
|
461 |
-
append: Se,
|
462 |
-
attr: T,
|
463 |
-
bubble: on,
|
464 |
-
create_component: rn,
|
465 |
-
destroy_component: an,
|
466 |
-
detach: ht,
|
467 |
-
element: ze,
|
468 |
-
init: un,
|
469 |
-
insert: bt,
|
470 |
-
listen: cn,
|
471 |
-
mount_component: _n,
|
472 |
-
safe_not_equal: dn,
|
473 |
-
set_data: mn,
|
474 |
-
set_style: ee,
|
475 |
-
space: hn,
|
476 |
-
text: bn,
|
477 |
-
toggle_class: M,
|
478 |
-
transition_in: gn,
|
479 |
-
transition_out: wn
|
480 |
-
} = window.__gradio__svelte__internal;
|
481 |
-
function We(l) {
|
482 |
-
let e, t;
|
483 |
-
return {
|
484 |
-
c() {
|
485 |
-
e = ze("span"), t = bn(
|
486 |
-
/*label*/
|
487 |
-
l[1]
|
488 |
-
), T(e, "class", "svelte-1lrphxw");
|
489 |
-
},
|
490 |
-
m(n, i) {
|
491 |
-
bt(n, e, i), Se(e, t);
|
492 |
-
},
|
493 |
-
p(n, i) {
|
494 |
-
i & /*label*/
|
495 |
-
2 && mn(
|
496 |
-
t,
|
497 |
-
/*label*/
|
498 |
-
n[1]
|
499 |
-
);
|
500 |
-
},
|
501 |
-
d(n) {
|
502 |
-
n && ht(e);
|
503 |
-
}
|
504 |
-
};
|
505 |
-
}
|
506 |
-
function kn(l) {
|
507 |
-
let e, t, n, i, s, o, a, r = (
|
508 |
-
/*show_label*/
|
509 |
-
l[2] && We(l)
|
510 |
-
);
|
511 |
-
return i = new /*Icon*/
|
512 |
-
l[0]({}), {
|
513 |
-
c() {
|
514 |
-
e = ze("button"), r && r.c(), t = hn(), n = ze("div"), rn(i.$$.fragment), T(n, "class", "svelte-1lrphxw"), M(
|
515 |
-
n,
|
516 |
-
"small",
|
517 |
-
/*size*/
|
518 |
-
l[4] === "small"
|
519 |
-
), M(
|
520 |
-
n,
|
521 |
-
"large",
|
522 |
-
/*size*/
|
523 |
-
l[4] === "large"
|
524 |
-
), M(
|
525 |
-
n,
|
526 |
-
"medium",
|
527 |
-
/*size*/
|
528 |
-
l[4] === "medium"
|
529 |
-
), e.disabled = /*disabled*/
|
530 |
-
l[7], T(
|
531 |
-
e,
|
532 |
-
"aria-label",
|
533 |
-
/*label*/
|
534 |
-
l[1]
|
535 |
-
), T(
|
536 |
-
e,
|
537 |
-
"aria-haspopup",
|
538 |
-
/*hasPopup*/
|
539 |
-
l[8]
|
540 |
-
), T(
|
541 |
-
e,
|
542 |
-
"title",
|
543 |
-
/*label*/
|
544 |
-
l[1]
|
545 |
-
), T(e, "class", "svelte-1lrphxw"), M(
|
546 |
-
e,
|
547 |
-
"pending",
|
548 |
-
/*pending*/
|
549 |
-
l[3]
|
550 |
-
), M(
|
551 |
-
e,
|
552 |
-
"padded",
|
553 |
-
/*padded*/
|
554 |
-
l[5]
|
555 |
-
), M(
|
556 |
-
e,
|
557 |
-
"highlight",
|
558 |
-
/*highlight*/
|
559 |
-
l[6]
|
560 |
-
), M(
|
561 |
-
e,
|
562 |
-
"transparent",
|
563 |
-
/*transparent*/
|
564 |
-
l[9]
|
565 |
-
), ee(e, "color", !/*disabled*/
|
566 |
-
l[7] && /*_color*/
|
567 |
-
l[12] ? (
|
568 |
-
/*_color*/
|
569 |
-
l[12]
|
570 |
-
) : "var(--block-label-text-color)"), ee(e, "--bg-color", /*disabled*/
|
571 |
-
l[7] ? "auto" : (
|
572 |
-
/*background*/
|
573 |
-
l[10]
|
574 |
-
)), ee(
|
575 |
-
e,
|
576 |
-
"margin-left",
|
577 |
-
/*offset*/
|
578 |
-
l[11] + "px"
|
579 |
-
);
|
580 |
-
},
|
581 |
-
m(f, u) {
|
582 |
-
bt(f, e, u), r && r.m(e, null), Se(e, t), Se(e, n), _n(i, n, null), s = !0, o || (a = cn(
|
583 |
-
e,
|
584 |
-
"click",
|
585 |
-
/*click_handler*/
|
586 |
-
l[14]
|
587 |
-
), o = !0);
|
588 |
-
},
|
589 |
-
p(f, [u]) {
|
590 |
-
/*show_label*/
|
591 |
-
f[2] ? r ? r.p(f, u) : (r = We(f), r.c(), r.m(e, t)) : r && (r.d(1), r = null), (!s || u & /*size*/
|
592 |
-
16) && M(
|
593 |
-
n,
|
594 |
-
"small",
|
595 |
-
/*size*/
|
596 |
-
f[4] === "small"
|
597 |
-
), (!s || u & /*size*/
|
598 |
-
16) && M(
|
599 |
-
n,
|
600 |
-
"large",
|
601 |
-
/*size*/
|
602 |
-
f[4] === "large"
|
603 |
-
), (!s || u & /*size*/
|
604 |
-
16) && M(
|
605 |
-
n,
|
606 |
-
"medium",
|
607 |
-
/*size*/
|
608 |
-
f[4] === "medium"
|
609 |
-
), (!s || u & /*disabled*/
|
610 |
-
128) && (e.disabled = /*disabled*/
|
611 |
-
f[7]), (!s || u & /*label*/
|
612 |
-
2) && T(
|
613 |
-
e,
|
614 |
-
"aria-label",
|
615 |
-
/*label*/
|
616 |
-
f[1]
|
617 |
-
), (!s || u & /*hasPopup*/
|
618 |
-
256) && T(
|
619 |
-
e,
|
620 |
-
"aria-haspopup",
|
621 |
-
/*hasPopup*/
|
622 |
-
f[8]
|
623 |
-
), (!s || u & /*label*/
|
624 |
-
2) && T(
|
625 |
-
e,
|
626 |
-
"title",
|
627 |
-
/*label*/
|
628 |
-
f[1]
|
629 |
-
), (!s || u & /*pending*/
|
630 |
-
8) && M(
|
631 |
-
e,
|
632 |
-
"pending",
|
633 |
-
/*pending*/
|
634 |
-
f[3]
|
635 |
-
), (!s || u & /*padded*/
|
636 |
-
32) && M(
|
637 |
-
e,
|
638 |
-
"padded",
|
639 |
-
/*padded*/
|
640 |
-
f[5]
|
641 |
-
), (!s || u & /*highlight*/
|
642 |
-
64) && M(
|
643 |
-
e,
|
644 |
-
"highlight",
|
645 |
-
/*highlight*/
|
646 |
-
f[6]
|
647 |
-
), (!s || u & /*transparent*/
|
648 |
-
512) && M(
|
649 |
-
e,
|
650 |
-
"transparent",
|
651 |
-
/*transparent*/
|
652 |
-
f[9]
|
653 |
-
), u & /*disabled, _color*/
|
654 |
-
4224 && ee(e, "color", !/*disabled*/
|
655 |
-
f[7] && /*_color*/
|
656 |
-
f[12] ? (
|
657 |
-
/*_color*/
|
658 |
-
f[12]
|
659 |
-
) : "var(--block-label-text-color)"), u & /*disabled, background*/
|
660 |
-
1152 && ee(e, "--bg-color", /*disabled*/
|
661 |
-
f[7] ? "auto" : (
|
662 |
-
/*background*/
|
663 |
-
f[10]
|
664 |
-
)), u & /*offset*/
|
665 |
-
2048 && ee(
|
666 |
-
e,
|
667 |
-
"margin-left",
|
668 |
-
/*offset*/
|
669 |
-
f[11] + "px"
|
670 |
-
);
|
671 |
-
},
|
672 |
-
i(f) {
|
673 |
-
s || (gn(i.$$.fragment, f), s = !0);
|
674 |
-
},
|
675 |
-
o(f) {
|
676 |
-
wn(i.$$.fragment, f), s = !1;
|
677 |
-
},
|
678 |
-
d(f) {
|
679 |
-
f && ht(e), r && r.d(), an(i), o = !1, a();
|
680 |
-
}
|
681 |
-
};
|
682 |
-
}
|
683 |
-
function pn(l, e, t) {
|
684 |
-
let n, { Icon: i } = e, { label: s = "" } = e, { show_label: o = !1 } = e, { pending: a = !1 } = e, { size: r = "small" } = e, { padded: f = !0 } = e, { highlight: u = !1 } = e, { disabled: c = !1 } = e, { hasPopup: p = !1 } = e, { color: m = "var(--block-label-text-color)" } = e, { transparent: y = !1 } = e, { background: L = "var(--background-fill-primary)" } = e, { offset: v = 0 } = e;
|
685 |
-
function F(d) {
|
686 |
-
on.call(this, l, d);
|
687 |
-
}
|
688 |
-
return l.$$set = (d) => {
|
689 |
-
"Icon" in d && t(0, i = d.Icon), "label" in d && t(1, s = d.label), "show_label" in d && t(2, o = d.show_label), "pending" in d && t(3, a = d.pending), "size" in d && t(4, r = d.size), "padded" in d && t(5, f = d.padded), "highlight" in d && t(6, u = d.highlight), "disabled" in d && t(7, c = d.disabled), "hasPopup" in d && t(8, p = d.hasPopup), "color" in d && t(13, m = d.color), "transparent" in d && t(9, y = d.transparent), "background" in d && t(10, L = d.background), "offset" in d && t(11, v = d.offset);
|
690 |
-
}, l.$$.update = () => {
|
691 |
-
l.$$.dirty & /*highlight, color*/
|
692 |
-
8256 && t(12, n = u ? "var(--color-accent)" : m);
|
693 |
-
}, [
|
694 |
-
i,
|
695 |
-
s,
|
696 |
-
o,
|
697 |
-
a,
|
698 |
-
r,
|
699 |
-
f,
|
700 |
-
u,
|
701 |
-
c,
|
702 |
-
p,
|
703 |
-
y,
|
704 |
-
L,
|
705 |
-
v,
|
706 |
-
n,
|
707 |
-
m,
|
708 |
-
F
|
709 |
-
];
|
710 |
-
}
|
711 |
-
class yn extends fn {
|
712 |
-
constructor(e) {
|
713 |
-
super(), un(this, e, pn, kn, dn, {
|
714 |
-
Icon: 0,
|
715 |
-
label: 1,
|
716 |
-
show_label: 2,
|
717 |
-
pending: 3,
|
718 |
-
size: 4,
|
719 |
-
padded: 5,
|
720 |
-
highlight: 6,
|
721 |
-
disabled: 7,
|
722 |
-
hasPopup: 8,
|
723 |
-
color: 13,
|
724 |
-
transparent: 9,
|
725 |
-
background: 10,
|
726 |
-
offset: 11
|
727 |
-
});
|
728 |
-
}
|
729 |
-
}
|
730 |
-
const {
|
731 |
-
SvelteComponent: vn,
|
732 |
-
append: Ce,
|
733 |
-
attr: I,
|
734 |
-
detach: qn,
|
735 |
-
init: Cn,
|
736 |
-
insert: Fn,
|
737 |
-
noop: Fe,
|
738 |
-
safe_not_equal: Ln,
|
739 |
-
set_style: D,
|
740 |
-
svg_element: be
|
741 |
-
} = window.__gradio__svelte__internal;
|
742 |
-
function Sn(l) {
|
743 |
-
let e, t, n, i;
|
744 |
-
return {
|
745 |
-
c() {
|
746 |
-
e = be("svg"), t = be("g"), n = be("path"), i = be("path"), I(n, "d", "M18,6L6.087,17.913"), D(n, "fill", "none"), D(n, "fill-rule", "nonzero"), D(n, "stroke-width", "2px"), I(t, "transform", "matrix(1.14096,-0.140958,-0.140958,1.14096,-0.0559523,0.0559523)"), I(i, "d", "M4.364,4.364L19.636,19.636"), D(i, "fill", "none"), D(i, "fill-rule", "nonzero"), D(i, "stroke-width", "2px"), I(e, "width", "100%"), I(e, "height", "100%"), I(e, "viewBox", "0 0 24 24"), I(e, "version", "1.1"), I(e, "xmlns", "http://www.w3.org/2000/svg"), I(e, "xmlns:xlink", "http://www.w3.org/1999/xlink"), I(e, "xml:space", "preserve"), I(e, "stroke", "currentColor"), D(e, "fill-rule", "evenodd"), D(e, "clip-rule", "evenodd"), D(e, "stroke-linecap", "round"), D(e, "stroke-linejoin", "round");
|
747 |
-
},
|
748 |
-
m(s, o) {
|
749 |
-
Fn(s, e, o), Ce(e, t), Ce(t, n), Ce(e, i);
|
750 |
-
},
|
751 |
-
p: Fe,
|
752 |
-
i: Fe,
|
753 |
-
o: Fe,
|
754 |
-
d(s) {
|
755 |
-
s && qn(e);
|
756 |
-
}
|
757 |
-
};
|
758 |
-
}
|
759 |
-
class zn extends vn {
|
760 |
-
constructor(e) {
|
761 |
-
super(), Cn(this, e, null, Sn, Ln, {});
|
762 |
-
}
|
763 |
-
}
|
764 |
-
const Mn = [
|
765 |
-
{ color: "red", primary: 600, secondary: 100 },
|
766 |
-
{ color: "green", primary: 600, secondary: 100 },
|
767 |
-
{ color: "blue", primary: 600, secondary: 100 },
|
768 |
-
{ color: "yellow", primary: 500, secondary: 100 },
|
769 |
-
{ color: "purple", primary: 600, secondary: 100 },
|
770 |
-
{ color: "teal", primary: 600, secondary: 100 },
|
771 |
-
{ color: "orange", primary: 600, secondary: 100 },
|
772 |
-
{ color: "cyan", primary: 600, secondary: 100 },
|
773 |
-
{ color: "lime", primary: 500, secondary: 100 },
|
774 |
-
{ color: "pink", primary: 600, secondary: 100 }
|
775 |
-
], Be = {
|
776 |
-
inherit: "inherit",
|
777 |
-
current: "currentColor",
|
778 |
-
transparent: "transparent",
|
779 |
-
black: "#000",
|
780 |
-
white: "#fff",
|
781 |
-
slate: {
|
782 |
-
50: "#f8fafc",
|
783 |
-
100: "#f1f5f9",
|
784 |
-
200: "#e2e8f0",
|
785 |
-
300: "#cbd5e1",
|
786 |
-
400: "#94a3b8",
|
787 |
-
500: "#64748b",
|
788 |
-
600: "#475569",
|
789 |
-
700: "#334155",
|
790 |
-
800: "#1e293b",
|
791 |
-
900: "#0f172a",
|
792 |
-
950: "#020617"
|
793 |
-
},
|
794 |
-
gray: {
|
795 |
-
50: "#f9fafb",
|
796 |
-
100: "#f3f4f6",
|
797 |
-
200: "#e5e7eb",
|
798 |
-
300: "#d1d5db",
|
799 |
-
400: "#9ca3af",
|
800 |
-
500: "#6b7280",
|
801 |
-
600: "#4b5563",
|
802 |
-
700: "#374151",
|
803 |
-
800: "#1f2937",
|
804 |
-
900: "#111827",
|
805 |
-
950: "#030712"
|
806 |
-
},
|
807 |
-
zinc: {
|
808 |
-
50: "#fafafa",
|
809 |
-
100: "#f4f4f5",
|
810 |
-
200: "#e4e4e7",
|
811 |
-
300: "#d4d4d8",
|
812 |
-
400: "#a1a1aa",
|
813 |
-
500: "#71717a",
|
814 |
-
600: "#52525b",
|
815 |
-
700: "#3f3f46",
|
816 |
-
800: "#27272a",
|
817 |
-
900: "#18181b",
|
818 |
-
950: "#09090b"
|
819 |
-
},
|
820 |
-
neutral: {
|
821 |
-
50: "#fafafa",
|
822 |
-
100: "#f5f5f5",
|
823 |
-
200: "#e5e5e5",
|
824 |
-
300: "#d4d4d4",
|
825 |
-
400: "#a3a3a3",
|
826 |
-
500: "#737373",
|
827 |
-
600: "#525252",
|
828 |
-
700: "#404040",
|
829 |
-
800: "#262626",
|
830 |
-
900: "#171717",
|
831 |
-
950: "#0a0a0a"
|
832 |
-
},
|
833 |
-
stone: {
|
834 |
-
50: "#fafaf9",
|
835 |
-
100: "#f5f5f4",
|
836 |
-
200: "#e7e5e4",
|
837 |
-
300: "#d6d3d1",
|
838 |
-
400: "#a8a29e",
|
839 |
-
500: "#78716c",
|
840 |
-
600: "#57534e",
|
841 |
-
700: "#44403c",
|
842 |
-
800: "#292524",
|
843 |
-
900: "#1c1917",
|
844 |
-
950: "#0c0a09"
|
845 |
-
},
|
846 |
-
red: {
|
847 |
-
50: "#fef2f2",
|
848 |
-
100: "#fee2e2",
|
849 |
-
200: "#fecaca",
|
850 |
-
300: "#fca5a5",
|
851 |
-
400: "#f87171",
|
852 |
-
500: "#ef4444",
|
853 |
-
600: "#dc2626",
|
854 |
-
700: "#b91c1c",
|
855 |
-
800: "#991b1b",
|
856 |
-
900: "#7f1d1d",
|
857 |
-
950: "#450a0a"
|
858 |
-
},
|
859 |
-
orange: {
|
860 |
-
50: "#fff7ed",
|
861 |
-
100: "#ffedd5",
|
862 |
-
200: "#fed7aa",
|
863 |
-
300: "#fdba74",
|
864 |
-
400: "#fb923c",
|
865 |
-
500: "#f97316",
|
866 |
-
600: "#ea580c",
|
867 |
-
700: "#c2410c",
|
868 |
-
800: "#9a3412",
|
869 |
-
900: "#7c2d12",
|
870 |
-
950: "#431407"
|
871 |
-
},
|
872 |
-
amber: {
|
873 |
-
50: "#fffbeb",
|
874 |
-
100: "#fef3c7",
|
875 |
-
200: "#fde68a",
|
876 |
-
300: "#fcd34d",
|
877 |
-
400: "#fbbf24",
|
878 |
-
500: "#f59e0b",
|
879 |
-
600: "#d97706",
|
880 |
-
700: "#b45309",
|
881 |
-
800: "#92400e",
|
882 |
-
900: "#78350f",
|
883 |
-
950: "#451a03"
|
884 |
-
},
|
885 |
-
yellow: {
|
886 |
-
50: "#fefce8",
|
887 |
-
100: "#fef9c3",
|
888 |
-
200: "#fef08a",
|
889 |
-
300: "#fde047",
|
890 |
-
400: "#facc15",
|
891 |
-
500: "#eab308",
|
892 |
-
600: "#ca8a04",
|
893 |
-
700: "#a16207",
|
894 |
-
800: "#854d0e",
|
895 |
-
900: "#713f12",
|
896 |
-
950: "#422006"
|
897 |
-
},
|
898 |
-
lime: {
|
899 |
-
50: "#f7fee7",
|
900 |
-
100: "#ecfccb",
|
901 |
-
200: "#d9f99d",
|
902 |
-
300: "#bef264",
|
903 |
-
400: "#a3e635",
|
904 |
-
500: "#84cc16",
|
905 |
-
600: "#65a30d",
|
906 |
-
700: "#4d7c0f",
|
907 |
-
800: "#3f6212",
|
908 |
-
900: "#365314",
|
909 |
-
950: "#1a2e05"
|
910 |
-
},
|
911 |
-
green: {
|
912 |
-
50: "#f0fdf4",
|
913 |
-
100: "#dcfce7",
|
914 |
-
200: "#bbf7d0",
|
915 |
-
300: "#86efac",
|
916 |
-
400: "#4ade80",
|
917 |
-
500: "#22c55e",
|
918 |
-
600: "#16a34a",
|
919 |
-
700: "#15803d",
|
920 |
-
800: "#166534",
|
921 |
-
900: "#14532d",
|
922 |
-
950: "#052e16"
|
923 |
-
},
|
924 |
-
emerald: {
|
925 |
-
50: "#ecfdf5",
|
926 |
-
100: "#d1fae5",
|
927 |
-
200: "#a7f3d0",
|
928 |
-
300: "#6ee7b7",
|
929 |
-
400: "#34d399",
|
930 |
-
500: "#10b981",
|
931 |
-
600: "#059669",
|
932 |
-
700: "#047857",
|
933 |
-
800: "#065f46",
|
934 |
-
900: "#064e3b",
|
935 |
-
950: "#022c22"
|
936 |
-
},
|
937 |
-
teal: {
|
938 |
-
50: "#f0fdfa",
|
939 |
-
100: "#ccfbf1",
|
940 |
-
200: "#99f6e4",
|
941 |
-
300: "#5eead4",
|
942 |
-
400: "#2dd4bf",
|
943 |
-
500: "#14b8a6",
|
944 |
-
600: "#0d9488",
|
945 |
-
700: "#0f766e",
|
946 |
-
800: "#115e59",
|
947 |
-
900: "#134e4a",
|
948 |
-
950: "#042f2e"
|
949 |
-
},
|
950 |
-
cyan: {
|
951 |
-
50: "#ecfeff",
|
952 |
-
100: "#cffafe",
|
953 |
-
200: "#a5f3fc",
|
954 |
-
300: "#67e8f9",
|
955 |
-
400: "#22d3ee",
|
956 |
-
500: "#06b6d4",
|
957 |
-
600: "#0891b2",
|
958 |
-
700: "#0e7490",
|
959 |
-
800: "#155e75",
|
960 |
-
900: "#164e63",
|
961 |
-
950: "#083344"
|
962 |
-
},
|
963 |
-
sky: {
|
964 |
-
50: "#f0f9ff",
|
965 |
-
100: "#e0f2fe",
|
966 |
-
200: "#bae6fd",
|
967 |
-
300: "#7dd3fc",
|
968 |
-
400: "#38bdf8",
|
969 |
-
500: "#0ea5e9",
|
970 |
-
600: "#0284c7",
|
971 |
-
700: "#0369a1",
|
972 |
-
800: "#075985",
|
973 |
-
900: "#0c4a6e",
|
974 |
-
950: "#082f49"
|
975 |
-
},
|
976 |
-
blue: {
|
977 |
-
50: "#eff6ff",
|
978 |
-
100: "#dbeafe",
|
979 |
-
200: "#bfdbfe",
|
980 |
-
300: "#93c5fd",
|
981 |
-
400: "#60a5fa",
|
982 |
-
500: "#3b82f6",
|
983 |
-
600: "#2563eb",
|
984 |
-
700: "#1d4ed8",
|
985 |
-
800: "#1e40af",
|
986 |
-
900: "#1e3a8a",
|
987 |
-
950: "#172554"
|
988 |
-
},
|
989 |
-
indigo: {
|
990 |
-
50: "#eef2ff",
|
991 |
-
100: "#e0e7ff",
|
992 |
-
200: "#c7d2fe",
|
993 |
-
300: "#a5b4fc",
|
994 |
-
400: "#818cf8",
|
995 |
-
500: "#6366f1",
|
996 |
-
600: "#4f46e5",
|
997 |
-
700: "#4338ca",
|
998 |
-
800: "#3730a3",
|
999 |
-
900: "#312e81",
|
1000 |
-
950: "#1e1b4b"
|
1001 |
-
},
|
1002 |
-
violet: {
|
1003 |
-
50: "#f5f3ff",
|
1004 |
-
100: "#ede9fe",
|
1005 |
-
200: "#ddd6fe",
|
1006 |
-
300: "#c4b5fd",
|
1007 |
-
400: "#a78bfa",
|
1008 |
-
500: "#8b5cf6",
|
1009 |
-
600: "#7c3aed",
|
1010 |
-
700: "#6d28d9",
|
1011 |
-
800: "#5b21b6",
|
1012 |
-
900: "#4c1d95",
|
1013 |
-
950: "#2e1065"
|
1014 |
-
},
|
1015 |
-
purple: {
|
1016 |
-
50: "#faf5ff",
|
1017 |
-
100: "#f3e8ff",
|
1018 |
-
200: "#e9d5ff",
|
1019 |
-
300: "#d8b4fe",
|
1020 |
-
400: "#c084fc",
|
1021 |
-
500: "#a855f7",
|
1022 |
-
600: "#9333ea",
|
1023 |
-
700: "#7e22ce",
|
1024 |
-
800: "#6b21a8",
|
1025 |
-
900: "#581c87",
|
1026 |
-
950: "#3b0764"
|
1027 |
-
},
|
1028 |
-
fuchsia: {
|
1029 |
-
50: "#fdf4ff",
|
1030 |
-
100: "#fae8ff",
|
1031 |
-
200: "#f5d0fe",
|
1032 |
-
300: "#f0abfc",
|
1033 |
-
400: "#e879f9",
|
1034 |
-
500: "#d946ef",
|
1035 |
-
600: "#c026d3",
|
1036 |
-
700: "#a21caf",
|
1037 |
-
800: "#86198f",
|
1038 |
-
900: "#701a75",
|
1039 |
-
950: "#4a044e"
|
1040 |
-
},
|
1041 |
-
pink: {
|
1042 |
-
50: "#fdf2f8",
|
1043 |
-
100: "#fce7f3",
|
1044 |
-
200: "#fbcfe8",
|
1045 |
-
300: "#f9a8d4",
|
1046 |
-
400: "#f472b6",
|
1047 |
-
500: "#ec4899",
|
1048 |
-
600: "#db2777",
|
1049 |
-
700: "#be185d",
|
1050 |
-
800: "#9d174d",
|
1051 |
-
900: "#831843",
|
1052 |
-
950: "#500724"
|
1053 |
-
},
|
1054 |
-
rose: {
|
1055 |
-
50: "#fff1f2",
|
1056 |
-
100: "#ffe4e6",
|
1057 |
-
200: "#fecdd3",
|
1058 |
-
300: "#fda4af",
|
1059 |
-
400: "#fb7185",
|
1060 |
-
500: "#f43f5e",
|
1061 |
-
600: "#e11d48",
|
1062 |
-
700: "#be123c",
|
1063 |
-
800: "#9f1239",
|
1064 |
-
900: "#881337",
|
1065 |
-
950: "#4c0519"
|
1066 |
-
}
|
1067 |
-
};
|
1068 |
-
Mn.reduce(
|
1069 |
-
(l, { color: e, primary: t, secondary: n }) => ({
|
1070 |
-
...l,
|
1071 |
-
[e]: {
|
1072 |
-
primary: Be[e][t],
|
1073 |
-
secondary: Be[e][n]
|
1074 |
-
}
|
1075 |
-
}),
|
1076 |
-
{}
|
1077 |
-
);
|
1078 |
-
function le(l) {
|
1079 |
-
let e = ["", "k", "M", "G", "T", "P", "E", "Z"], t = 0;
|
1080 |
-
for (; l > 1e3 && t < e.length - 1; )
|
1081 |
-
l /= 1e3, t++;
|
1082 |
-
let n = e[t];
|
1083 |
-
return (Number.isInteger(l) ? l : l.toFixed(1)) + n;
|
1084 |
-
}
|
1085 |
-
function ke() {
|
1086 |
-
}
|
1087 |
-
function Vn(l, e) {
|
1088 |
-
return l != l ? e == e : l !== e || l && typeof l == "object" || typeof l == "function";
|
1089 |
-
}
|
1090 |
-
const gt = typeof window < "u";
|
1091 |
-
let De = gt ? () => window.performance.now() : () => Date.now(), wt = gt ? (l) => requestAnimationFrame(l) : ke;
|
1092 |
-
const ie = /* @__PURE__ */ new Set();
|
1093 |
-
function kt(l) {
|
1094 |
-
ie.forEach((e) => {
|
1095 |
-
e.c(l) || (ie.delete(e), e.f());
|
1096 |
-
}), ie.size !== 0 && wt(kt);
|
1097 |
-
}
|
1098 |
-
function Nn(l) {
|
1099 |
-
let e;
|
1100 |
-
return ie.size === 0 && wt(kt), {
|
1101 |
-
promise: new Promise((t) => {
|
1102 |
-
ie.add(e = { c: l, f: t });
|
1103 |
-
}),
|
1104 |
-
abort() {
|
1105 |
-
ie.delete(e);
|
1106 |
-
}
|
1107 |
-
};
|
1108 |
-
}
|
1109 |
-
const te = [];
|
1110 |
-
function En(l, e = ke) {
|
1111 |
-
let t;
|
1112 |
-
const n = /* @__PURE__ */ new Set();
|
1113 |
-
function i(a) {
|
1114 |
-
if (Vn(l, a) && (l = a, t)) {
|
1115 |
-
const r = !te.length;
|
1116 |
-
for (const f of n)
|
1117 |
-
f[1](), te.push(f, l);
|
1118 |
-
if (r) {
|
1119 |
-
for (let f = 0; f < te.length; f += 2)
|
1120 |
-
te[f][0](te[f + 1]);
|
1121 |
-
te.length = 0;
|
1122 |
-
}
|
1123 |
-
}
|
1124 |
-
}
|
1125 |
-
function s(a) {
|
1126 |
-
i(a(l));
|
1127 |
-
}
|
1128 |
-
function o(a, r = ke) {
|
1129 |
-
const f = [a, r];
|
1130 |
-
return n.add(f), n.size === 1 && (t = e(i, s) || ke), a(l), () => {
|
1131 |
-
n.delete(f), n.size === 0 && t && (t(), t = null);
|
1132 |
-
};
|
1133 |
-
}
|
1134 |
-
return { set: i, update: s, subscribe: o };
|
1135 |
-
}
|
1136 |
-
function He(l) {
|
1137 |
-
return Object.prototype.toString.call(l) === "[object Date]";
|
1138 |
-
}
|
1139 |
-
function Me(l, e, t, n) {
|
1140 |
-
if (typeof t == "number" || He(t)) {
|
1141 |
-
const i = n - t, s = (t - e) / (l.dt || 1 / 60), o = l.opts.stiffness * i, a = l.opts.damping * s, r = (o - a) * l.inv_mass, f = (s + r) * l.dt;
|
1142 |
-
return Math.abs(f) < l.opts.precision && Math.abs(i) < l.opts.precision ? n : (l.settled = !1, He(t) ? new Date(t.getTime() + f) : t + f);
|
1143 |
-
} else {
|
1144 |
-
if (Array.isArray(t))
|
1145 |
-
return t.map(
|
1146 |
-
(i, s) => Me(l, e[s], t[s], n[s])
|
1147 |
-
);
|
1148 |
-
if (typeof t == "object") {
|
1149 |
-
const i = {};
|
1150 |
-
for (const s in t)
|
1151 |
-
i[s] = Me(l, e[s], t[s], n[s]);
|
1152 |
-
return i;
|
1153 |
-
} else
|
1154 |
-
throw new Error(`Cannot spring ${typeof t} values`);
|
1155 |
-
}
|
1156 |
-
}
|
1157 |
-
function Oe(l, e = {}) {
|
1158 |
-
const t = En(l), { stiffness: n = 0.15, damping: i = 0.8, precision: s = 0.01 } = e;
|
1159 |
-
let o, a, r, f = l, u = l, c = 1, p = 0, m = !1;
|
1160 |
-
function y(v, F = {}) {
|
1161 |
-
u = v;
|
1162 |
-
const d = r = {};
|
1163 |
-
return l == null || F.hard || L.stiffness >= 1 && L.damping >= 1 ? (m = !0, o = De(), f = v, t.set(l = u), Promise.resolve()) : (F.soft && (p = 1 / ((F.soft === !0 ? 0.5 : +F.soft) * 60), c = 0), a || (o = De(), m = !1, a = Nn((_) => {
|
1164 |
-
if (m)
|
1165 |
-
return m = !1, a = null, !1;
|
1166 |
-
c = Math.min(c + p, 1);
|
1167 |
-
const q = {
|
1168 |
-
inv_mass: c,
|
1169 |
-
opts: L,
|
1170 |
-
settled: !0,
|
1171 |
-
dt: (_ - o) * 60 / 1e3
|
1172 |
-
}, z = Me(q, f, l, u);
|
1173 |
-
return o = _, f = l, t.set(l = z), q.settled && (a = null), !q.settled;
|
1174 |
-
})), new Promise((_) => {
|
1175 |
-
a.promise.then(() => {
|
1176 |
-
d === r && _();
|
1177 |
-
});
|
1178 |
-
}));
|
1179 |
-
}
|
1180 |
-
const L = {
|
1181 |
-
set: y,
|
1182 |
-
update: (v, F) => y(v(u, l), F),
|
1183 |
-
subscribe: t.subscribe,
|
1184 |
-
stiffness: n,
|
1185 |
-
damping: i,
|
1186 |
-
precision: s
|
1187 |
-
};
|
1188 |
-
return L;
|
1189 |
-
}
|
1190 |
-
const {
|
1191 |
-
SvelteComponent: An,
|
1192 |
-
append: j,
|
1193 |
-
attr: C,
|
1194 |
-
component_subscribe: Te,
|
1195 |
-
detach: In,
|
1196 |
-
element: jn,
|
1197 |
-
init: Zn,
|
1198 |
-
insert: Pn,
|
1199 |
-
noop: Ue,
|
1200 |
-
safe_not_equal: Wn,
|
1201 |
-
set_style: ge,
|
1202 |
-
svg_element: Z,
|
1203 |
-
toggle_class: Je
|
1204 |
-
} = window.__gradio__svelte__internal, { onMount: Bn } = window.__gradio__svelte__internal;
|
1205 |
-
function Dn(l) {
|
1206 |
-
let e, t, n, i, s, o, a, r, f, u, c, p;
|
1207 |
-
return {
|
1208 |
-
c() {
|
1209 |
-
e = jn("div"), t = Z("svg"), n = Z("g"), i = Z("path"), s = Z("path"), o = Z("path"), a = Z("path"), r = Z("g"), f = Z("path"), u = Z("path"), c = Z("path"), p = Z("path"), C(i, "d", "M255.926 0.754768L509.702 139.936V221.027L255.926 81.8465V0.754768Z"), C(i, "fill", "#FF7C00"), C(i, "fill-opacity", "0.4"), C(i, "class", "svelte-43sxxs"), C(s, "d", "M509.69 139.936L254.981 279.641V361.255L509.69 221.55V139.936Z"), C(s, "fill", "#FF7C00"), C(s, "class", "svelte-43sxxs"), C(o, "d", "M0.250138 139.937L254.981 279.641V361.255L0.250138 221.55V139.937Z"), C(o, "fill", "#FF7C00"), C(o, "fill-opacity", "0.4"), C(o, "class", "svelte-43sxxs"), C(a, "d", "M255.923 0.232622L0.236328 139.936V221.55L255.923 81.8469V0.232622Z"), C(a, "fill", "#FF7C00"), C(a, "class", "svelte-43sxxs"), ge(n, "transform", "translate(" + /*$top*/
|
1210 |
-
l[1][0] + "px, " + /*$top*/
|
1211 |
-
l[1][1] + "px)"), C(f, "d", "M255.926 141.5L509.702 280.681V361.773L255.926 222.592V141.5Z"), C(f, "fill", "#FF7C00"), C(f, "fill-opacity", "0.4"), C(f, "class", "svelte-43sxxs"), C(u, "d", "M509.69 280.679L254.981 420.384V501.998L509.69 362.293V280.679Z"), C(u, "fill", "#FF7C00"), C(u, "class", "svelte-43sxxs"), C(c, "d", "M0.250138 280.681L254.981 420.386V502L0.250138 362.295V280.681Z"), C(c, "fill", "#FF7C00"), C(c, "fill-opacity", "0.4"), C(c, "class", "svelte-43sxxs"), C(p, "d", "M255.923 140.977L0.236328 280.68V362.294L255.923 222.591V140.977Z"), C(p, "fill", "#FF7C00"), C(p, "class", "svelte-43sxxs"), ge(r, "transform", "translate(" + /*$bottom*/
|
1212 |
-
l[2][0] + "px, " + /*$bottom*/
|
1213 |
-
l[2][1] + "px)"), C(t, "viewBox", "-1200 -1200 3000 3000"), C(t, "fill", "none"), C(t, "xmlns", "http://www.w3.org/2000/svg"), C(t, "class", "svelte-43sxxs"), C(e, "class", "svelte-43sxxs"), Je(
|
1214 |
-
e,
|
1215 |
-
"margin",
|
1216 |
-
/*margin*/
|
1217 |
-
l[0]
|
1218 |
-
);
|
1219 |
-
},
|
1220 |
-
m(m, y) {
|
1221 |
-
Pn(m, e, y), j(e, t), j(t, n), j(n, i), j(n, s), j(n, o), j(n, a), j(t, r), j(r, f), j(r, u), j(r, c), j(r, p);
|
1222 |
-
},
|
1223 |
-
p(m, [y]) {
|
1224 |
-
y & /*$top*/
|
1225 |
-
2 && ge(n, "transform", "translate(" + /*$top*/
|
1226 |
-
m[1][0] + "px, " + /*$top*/
|
1227 |
-
m[1][1] + "px)"), y & /*$bottom*/
|
1228 |
-
4 && ge(r, "transform", "translate(" + /*$bottom*/
|
1229 |
-
m[2][0] + "px, " + /*$bottom*/
|
1230 |
-
m[2][1] + "px)"), y & /*margin*/
|
1231 |
-
1 && Je(
|
1232 |
-
e,
|
1233 |
-
"margin",
|
1234 |
-
/*margin*/
|
1235 |
-
m[0]
|
1236 |
-
);
|
1237 |
-
},
|
1238 |
-
i: Ue,
|
1239 |
-
o: Ue,
|
1240 |
-
d(m) {
|
1241 |
-
m && In(e);
|
1242 |
-
}
|
1243 |
-
};
|
1244 |
-
}
|
1245 |
-
function Hn(l, e, t) {
|
1246 |
-
let n, i;
|
1247 |
-
var s = this && this.__awaiter || function(m, y, L, v) {
|
1248 |
-
function F(d) {
|
1249 |
-
return d instanceof L ? d : new L(function(_) {
|
1250 |
-
_(d);
|
1251 |
-
});
|
1252 |
-
}
|
1253 |
-
return new (L || (L = Promise))(function(d, _) {
|
1254 |
-
function q(g) {
|
1255 |
-
try {
|
1256 |
-
b(v.next(g));
|
1257 |
-
} catch (O) {
|
1258 |
-
_(O);
|
1259 |
-
}
|
1260 |
-
}
|
1261 |
-
function z(g) {
|
1262 |
-
try {
|
1263 |
-
b(v.throw(g));
|
1264 |
-
} catch (O) {
|
1265 |
-
_(O);
|
1266 |
-
}
|
1267 |
-
}
|
1268 |
-
function b(g) {
|
1269 |
-
g.done ? d(g.value) : F(g.value).then(q, z);
|
1270 |
-
}
|
1271 |
-
b((v = v.apply(m, y || [])).next());
|
1272 |
-
});
|
1273 |
-
};
|
1274 |
-
let { margin: o = !0 } = e;
|
1275 |
-
const a = Oe([0, 0]);
|
1276 |
-
Te(l, a, (m) => t(1, n = m));
|
1277 |
-
const r = Oe([0, 0]);
|
1278 |
-
Te(l, r, (m) => t(2, i = m));
|
1279 |
-
let f;
|
1280 |
-
function u() {
|
1281 |
-
return s(this, void 0, void 0, function* () {
|
1282 |
-
yield Promise.all([a.set([125, 140]), r.set([-125, -140])]), yield Promise.all([a.set([-125, 140]), r.set([125, -140])]), yield Promise.all([a.set([-125, 0]), r.set([125, -0])]), yield Promise.all([a.set([125, 0]), r.set([-125, 0])]);
|
1283 |
-
});
|
1284 |
-
}
|
1285 |
-
function c() {
|
1286 |
-
return s(this, void 0, void 0, function* () {
|
1287 |
-
yield u(), f || c();
|
1288 |
-
});
|
1289 |
-
}
|
1290 |
-
function p() {
|
1291 |
-
return s(this, void 0, void 0, function* () {
|
1292 |
-
yield Promise.all([a.set([125, 0]), r.set([-125, 0])]), c();
|
1293 |
-
});
|
1294 |
-
}
|
1295 |
-
return Bn(() => (p(), () => f = !0)), l.$$set = (m) => {
|
1296 |
-
"margin" in m && t(0, o = m.margin);
|
1297 |
-
}, [o, n, i, a, r];
|
1298 |
-
}
|
1299 |
-
class On extends An {
|
1300 |
-
constructor(e) {
|
1301 |
-
super(), Zn(this, e, Hn, Dn, Wn, { margin: 0 });
|
1302 |
-
}
|
1303 |
-
}
|
1304 |
-
const {
|
1305 |
-
SvelteComponent: Tn,
|
1306 |
-
append: G,
|
1307 |
-
attr: P,
|
1308 |
-
binding_callbacks: Re,
|
1309 |
-
check_outros: pt,
|
1310 |
-
create_component: yt,
|
1311 |
-
create_slot: Un,
|
1312 |
-
destroy_component: vt,
|
1313 |
-
destroy_each: qt,
|
1314 |
-
detach: w,
|
1315 |
-
element: H,
|
1316 |
-
empty: se,
|
1317 |
-
ensure_array_like: pe,
|
1318 |
-
get_all_dirty_from_scope: Jn,
|
1319 |
-
get_slot_changes: Rn,
|
1320 |
-
group_outros: Ct,
|
1321 |
-
init: Xn,
|
1322 |
-
insert: k,
|
1323 |
-
mount_component: Ft,
|
1324 |
-
noop: Ve,
|
1325 |
-
safe_not_equal: Yn,
|
1326 |
-
set_data: A,
|
1327 |
-
set_style: J,
|
1328 |
-
space: W,
|
1329 |
-
text: S,
|
1330 |
-
toggle_class: E,
|
1331 |
-
transition_in: K,
|
1332 |
-
transition_out: Q,
|
1333 |
-
update_slot_base: Gn
|
1334 |
-
} = window.__gradio__svelte__internal, { tick: Kn } = window.__gradio__svelte__internal, { onDestroy: Qn } = window.__gradio__svelte__internal, { createEventDispatcher: xn } = window.__gradio__svelte__internal, $n = (l) => ({}), Xe = (l) => ({});
|
1335 |
-
function Ye(l, e, t) {
|
1336 |
-
const n = l.slice();
|
1337 |
-
return n[41] = e[t], n[43] = t, n;
|
1338 |
-
}
|
1339 |
-
function Ge(l, e, t) {
|
1340 |
-
const n = l.slice();
|
1341 |
-
return n[41] = e[t], n;
|
1342 |
-
}
|
1343 |
-
function el(l) {
|
1344 |
-
let e, t, n, i, s = (
|
1345 |
-
/*i18n*/
|
1346 |
-
l[1]("common.error") + ""
|
1347 |
-
), o, a, r;
|
1348 |
-
t = new yn({
|
1349 |
-
props: {
|
1350 |
-
Icon: zn,
|
1351 |
-
label: (
|
1352 |
-
/*i18n*/
|
1353 |
-
l[1]("common.clear")
|
1354 |
-
),
|
1355 |
-
disabled: !1
|
1356 |
-
}
|
1357 |
-
}), t.$on(
|
1358 |
-
"click",
|
1359 |
-
/*click_handler*/
|
1360 |
-
l[32]
|
1361 |
-
);
|
1362 |
-
const f = (
|
1363 |
-
/*#slots*/
|
1364 |
-
l[30].error
|
1365 |
-
), u = Un(
|
1366 |
-
f,
|
1367 |
-
l,
|
1368 |
-
/*$$scope*/
|
1369 |
-
l[29],
|
1370 |
-
Xe
|
1371 |
-
);
|
1372 |
-
return {
|
1373 |
-
c() {
|
1374 |
-
e = H("div"), yt(t.$$.fragment), n = W(), i = H("span"), o = S(s), a = W(), u && u.c(), P(e, "class", "clear-status svelte-1yk38uw"), P(i, "class", "error svelte-1yk38uw");
|
1375 |
-
},
|
1376 |
-
m(c, p) {
|
1377 |
-
k(c, e, p), Ft(t, e, null), k(c, n, p), k(c, i, p), G(i, o), k(c, a, p), u && u.m(c, p), r = !0;
|
1378 |
-
},
|
1379 |
-
p(c, p) {
|
1380 |
-
const m = {};
|
1381 |
-
p[0] & /*i18n*/
|
1382 |
-
2 && (m.label = /*i18n*/
|
1383 |
-
c[1]("common.clear")), t.$set(m), (!r || p[0] & /*i18n*/
|
1384 |
-
2) && s !== (s = /*i18n*/
|
1385 |
-
c[1]("common.error") + "") && A(o, s), u && u.p && (!r || p[0] & /*$$scope*/
|
1386 |
-
536870912) && Gn(
|
1387 |
-
u,
|
1388 |
-
f,
|
1389 |
-
c,
|
1390 |
-
/*$$scope*/
|
1391 |
-
c[29],
|
1392 |
-
r ? Rn(
|
1393 |
-
f,
|
1394 |
-
/*$$scope*/
|
1395 |
-
c[29],
|
1396 |
-
p,
|
1397 |
-
$n
|
1398 |
-
) : Jn(
|
1399 |
-
/*$$scope*/
|
1400 |
-
c[29]
|
1401 |
-
),
|
1402 |
-
Xe
|
1403 |
-
);
|
1404 |
-
},
|
1405 |
-
i(c) {
|
1406 |
-
r || (K(t.$$.fragment, c), K(u, c), r = !0);
|
1407 |
-
},
|
1408 |
-
o(c) {
|
1409 |
-
Q(t.$$.fragment, c), Q(u, c), r = !1;
|
1410 |
-
},
|
1411 |
-
d(c) {
|
1412 |
-
c && (w(e), w(n), w(i), w(a)), vt(t), u && u.d(c);
|
1413 |
-
}
|
1414 |
-
};
|
1415 |
-
}
|
1416 |
-
function tl(l) {
|
1417 |
-
let e, t, n, i, s, o, a, r, f, u = (
|
1418 |
-
/*variant*/
|
1419 |
-
l[8] === "default" && /*show_eta_bar*/
|
1420 |
-
l[18] && /*show_progress*/
|
1421 |
-
l[6] === "full" && Ke(l)
|
1422 |
-
);
|
1423 |
-
function c(_, q) {
|
1424 |
-
if (
|
1425 |
-
/*progress*/
|
1426 |
-
_[7]
|
1427 |
-
)
|
1428 |
-
return il;
|
1429 |
-
if (
|
1430 |
-
/*queue_position*/
|
1431 |
-
_[2] !== null && /*queue_size*/
|
1432 |
-
_[3] !== void 0 && /*queue_position*/
|
1433 |
-
_[2] >= 0
|
1434 |
-
)
|
1435 |
-
return ll;
|
1436 |
-
if (
|
1437 |
-
/*queue_position*/
|
1438 |
-
_[2] === 0
|
1439 |
-
)
|
1440 |
-
return nl;
|
1441 |
-
}
|
1442 |
-
let p = c(l), m = p && p(l), y = (
|
1443 |
-
/*timer*/
|
1444 |
-
l[5] && $e(l)
|
1445 |
-
);
|
1446 |
-
const L = [rl, ol], v = [];
|
1447 |
-
function F(_, q) {
|
1448 |
-
return (
|
1449 |
-
/*last_progress_level*/
|
1450 |
-
_[15] != null ? 0 : (
|
1451 |
-
/*show_progress*/
|
1452 |
-
_[6] === "full" ? 1 : -1
|
1453 |
-
)
|
1454 |
-
);
|
1455 |
-
}
|
1456 |
-
~(s = F(l)) && (o = v[s] = L[s](l));
|
1457 |
-
let d = !/*timer*/
|
1458 |
-
l[5] && ft(l);
|
1459 |
-
return {
|
1460 |
-
c() {
|
1461 |
-
u && u.c(), e = W(), t = H("div"), m && m.c(), n = W(), y && y.c(), i = W(), o && o.c(), a = W(), d && d.c(), r = se(), P(t, "class", "progress-text svelte-1yk38uw"), E(
|
1462 |
-
t,
|
1463 |
-
"meta-text-center",
|
1464 |
-
/*variant*/
|
1465 |
-
l[8] === "center"
|
1466 |
-
), E(
|
1467 |
-
t,
|
1468 |
-
"meta-text",
|
1469 |
-
/*variant*/
|
1470 |
-
l[8] === "default"
|
1471 |
-
);
|
1472 |
-
},
|
1473 |
-
m(_, q) {
|
1474 |
-
u && u.m(_, q), k(_, e, q), k(_, t, q), m && m.m(t, null), G(t, n), y && y.m(t, null), k(_, i, q), ~s && v[s].m(_, q), k(_, a, q), d && d.m(_, q), k(_, r, q), f = !0;
|
1475 |
-
},
|
1476 |
-
p(_, q) {
|
1477 |
-
/*variant*/
|
1478 |
-
_[8] === "default" && /*show_eta_bar*/
|
1479 |
-
_[18] && /*show_progress*/
|
1480 |
-
_[6] === "full" ? u ? u.p(_, q) : (u = Ke(_), u.c(), u.m(e.parentNode, e)) : u && (u.d(1), u = null), p === (p = c(_)) && m ? m.p(_, q) : (m && m.d(1), m = p && p(_), m && (m.c(), m.m(t, n))), /*timer*/
|
1481 |
-
_[5] ? y ? y.p(_, q) : (y = $e(_), y.c(), y.m(t, null)) : y && (y.d(1), y = null), (!f || q[0] & /*variant*/
|
1482 |
-
256) && E(
|
1483 |
-
t,
|
1484 |
-
"meta-text-center",
|
1485 |
-
/*variant*/
|
1486 |
-
_[8] === "center"
|
1487 |
-
), (!f || q[0] & /*variant*/
|
1488 |
-
256) && E(
|
1489 |
-
t,
|
1490 |
-
"meta-text",
|
1491 |
-
/*variant*/
|
1492 |
-
_[8] === "default"
|
1493 |
-
);
|
1494 |
-
let z = s;
|
1495 |
-
s = F(_), s === z ? ~s && v[s].p(_, q) : (o && (Ct(), Q(v[z], 1, 1, () => {
|
1496 |
-
v[z] = null;
|
1497 |
-
}), pt()), ~s ? (o = v[s], o ? o.p(_, q) : (o = v[s] = L[s](_), o.c()), K(o, 1), o.m(a.parentNode, a)) : o = null), /*timer*/
|
1498 |
-
_[5] ? d && (d.d(1), d = null) : d ? d.p(_, q) : (d = ft(_), d.c(), d.m(r.parentNode, r));
|
1499 |
-
},
|
1500 |
-
i(_) {
|
1501 |
-
f || (K(o), f = !0);
|
1502 |
-
},
|
1503 |
-
o(_) {
|
1504 |
-
Q(o), f = !1;
|
1505 |
-
},
|
1506 |
-
d(_) {
|
1507 |
-
_ && (w(e), w(t), w(i), w(a), w(r)), u && u.d(_), m && m.d(), y && y.d(), ~s && v[s].d(_), d && d.d(_);
|
1508 |
-
}
|
1509 |
-
};
|
1510 |
-
}
|
1511 |
-
function Ke(l) {
|
1512 |
-
let e, t = `translateX(${/*eta_level*/
|
1513 |
-
(l[17] || 0) * 100 - 100}%)`;
|
1514 |
-
return {
|
1515 |
-
c() {
|
1516 |
-
e = H("div"), P(e, "class", "eta-bar svelte-1yk38uw"), J(e, "transform", t);
|
1517 |
-
},
|
1518 |
-
m(n, i) {
|
1519 |
-
k(n, e, i);
|
1520 |
-
},
|
1521 |
-
p(n, i) {
|
1522 |
-
i[0] & /*eta_level*/
|
1523 |
-
131072 && t !== (t = `translateX(${/*eta_level*/
|
1524 |
-
(n[17] || 0) * 100 - 100}%)`) && J(e, "transform", t);
|
1525 |
-
},
|
1526 |
-
d(n) {
|
1527 |
-
n && w(e);
|
1528 |
-
}
|
1529 |
-
};
|
1530 |
-
}
|
1531 |
-
function nl(l) {
|
1532 |
-
let e;
|
1533 |
-
return {
|
1534 |
-
c() {
|
1535 |
-
e = S("processing |");
|
1536 |
-
},
|
1537 |
-
m(t, n) {
|
1538 |
-
k(t, e, n);
|
1539 |
-
},
|
1540 |
-
p: Ve,
|
1541 |
-
d(t) {
|
1542 |
-
t && w(e);
|
1543 |
-
}
|
1544 |
-
};
|
1545 |
-
}
|
1546 |
-
function ll(l) {
|
1547 |
-
let e, t = (
|
1548 |
-
/*queue_position*/
|
1549 |
-
l[2] + 1 + ""
|
1550 |
-
), n, i, s, o;
|
1551 |
-
return {
|
1552 |
-
c() {
|
1553 |
-
e = S("queue: "), n = S(t), i = S("/"), s = S(
|
1554 |
-
/*queue_size*/
|
1555 |
-
l[3]
|
1556 |
-
), o = S(" |");
|
1557 |
-
},
|
1558 |
-
m(a, r) {
|
1559 |
-
k(a, e, r), k(a, n, r), k(a, i, r), k(a, s, r), k(a, o, r);
|
1560 |
-
},
|
1561 |
-
p(a, r) {
|
1562 |
-
r[0] & /*queue_position*/
|
1563 |
-
4 && t !== (t = /*queue_position*/
|
1564 |
-
a[2] + 1 + "") && A(n, t), r[0] & /*queue_size*/
|
1565 |
-
8 && A(
|
1566 |
-
s,
|
1567 |
-
/*queue_size*/
|
1568 |
-
a[3]
|
1569 |
-
);
|
1570 |
-
},
|
1571 |
-
d(a) {
|
1572 |
-
a && (w(e), w(n), w(i), w(s), w(o));
|
1573 |
-
}
|
1574 |
-
};
|
1575 |
-
}
|
1576 |
-
function il(l) {
|
1577 |
-
let e, t = pe(
|
1578 |
-
/*progress*/
|
1579 |
-
l[7]
|
1580 |
-
), n = [];
|
1581 |
-
for (let i = 0; i < t.length; i += 1)
|
1582 |
-
n[i] = xe(Ge(l, t, i));
|
1583 |
-
return {
|
1584 |
-
c() {
|
1585 |
-
for (let i = 0; i < n.length; i += 1)
|
1586 |
-
n[i].c();
|
1587 |
-
e = se();
|
1588 |
-
},
|
1589 |
-
m(i, s) {
|
1590 |
-
for (let o = 0; o < n.length; o += 1)
|
1591 |
-
n[o] && n[o].m(i, s);
|
1592 |
-
k(i, e, s);
|
1593 |
-
},
|
1594 |
-
p(i, s) {
|
1595 |
-
if (s[0] & /*progress*/
|
1596 |
-
128) {
|
1597 |
-
t = pe(
|
1598 |
-
/*progress*/
|
1599 |
-
i[7]
|
1600 |
-
);
|
1601 |
-
let o;
|
1602 |
-
for (o = 0; o < t.length; o += 1) {
|
1603 |
-
const a = Ge(i, t, o);
|
1604 |
-
n[o] ? n[o].p(a, s) : (n[o] = xe(a), n[o].c(), n[o].m(e.parentNode, e));
|
1605 |
-
}
|
1606 |
-
for (; o < n.length; o += 1)
|
1607 |
-
n[o].d(1);
|
1608 |
-
n.length = t.length;
|
1609 |
-
}
|
1610 |
-
},
|
1611 |
-
d(i) {
|
1612 |
-
i && w(e), qt(n, i);
|
1613 |
-
}
|
1614 |
-
};
|
1615 |
-
}
|
1616 |
-
function Qe(l) {
|
1617 |
-
let e, t = (
|
1618 |
-
/*p*/
|
1619 |
-
l[41].unit + ""
|
1620 |
-
), n, i, s = " ", o;
|
1621 |
-
function a(u, c) {
|
1622 |
-
return (
|
1623 |
-
/*p*/
|
1624 |
-
u[41].length != null ? fl : sl
|
1625 |
-
);
|
1626 |
-
}
|
1627 |
-
let r = a(l), f = r(l);
|
1628 |
-
return {
|
1629 |
-
c() {
|
1630 |
-
f.c(), e = W(), n = S(t), i = S(" | "), o = S(s);
|
1631 |
-
},
|
1632 |
-
m(u, c) {
|
1633 |
-
f.m(u, c), k(u, e, c), k(u, n, c), k(u, i, c), k(u, o, c);
|
1634 |
-
},
|
1635 |
-
p(u, c) {
|
1636 |
-
r === (r = a(u)) && f ? f.p(u, c) : (f.d(1), f = r(u), f && (f.c(), f.m(e.parentNode, e))), c[0] & /*progress*/
|
1637 |
-
128 && t !== (t = /*p*/
|
1638 |
-
u[41].unit + "") && A(n, t);
|
1639 |
-
},
|
1640 |
-
d(u) {
|
1641 |
-
u && (w(e), w(n), w(i), w(o)), f.d(u);
|
1642 |
-
}
|
1643 |
-
};
|
1644 |
-
}
|
1645 |
-
function sl(l) {
|
1646 |
-
let e = le(
|
1647 |
-
/*p*/
|
1648 |
-
l[41].index || 0
|
1649 |
-
) + "", t;
|
1650 |
-
return {
|
1651 |
-
c() {
|
1652 |
-
t = S(e);
|
1653 |
-
},
|
1654 |
-
m(n, i) {
|
1655 |
-
k(n, t, i);
|
1656 |
-
},
|
1657 |
-
p(n, i) {
|
1658 |
-
i[0] & /*progress*/
|
1659 |
-
128 && e !== (e = le(
|
1660 |
-
/*p*/
|
1661 |
-
n[41].index || 0
|
1662 |
-
) + "") && A(t, e);
|
1663 |
-
},
|
1664 |
-
d(n) {
|
1665 |
-
n && w(t);
|
1666 |
-
}
|
1667 |
-
};
|
1668 |
-
}
|
1669 |
-
function fl(l) {
|
1670 |
-
let e = le(
|
1671 |
-
/*p*/
|
1672 |
-
l[41].index || 0
|
1673 |
-
) + "", t, n, i = le(
|
1674 |
-
/*p*/
|
1675 |
-
l[41].length
|
1676 |
-
) + "", s;
|
1677 |
-
return {
|
1678 |
-
c() {
|
1679 |
-
t = S(e), n = S("/"), s = S(i);
|
1680 |
-
},
|
1681 |
-
m(o, a) {
|
1682 |
-
k(o, t, a), k(o, n, a), k(o, s, a);
|
1683 |
-
},
|
1684 |
-
p(o, a) {
|
1685 |
-
a[0] & /*progress*/
|
1686 |
-
128 && e !== (e = le(
|
1687 |
-
/*p*/
|
1688 |
-
o[41].index || 0
|
1689 |
-
) + "") && A(t, e), a[0] & /*progress*/
|
1690 |
-
128 && i !== (i = le(
|
1691 |
-
/*p*/
|
1692 |
-
o[41].length
|
1693 |
-
) + "") && A(s, i);
|
1694 |
-
},
|
1695 |
-
d(o) {
|
1696 |
-
o && (w(t), w(n), w(s));
|
1697 |
-
}
|
1698 |
-
};
|
1699 |
-
}
|
1700 |
-
function xe(l) {
|
1701 |
-
let e, t = (
|
1702 |
-
/*p*/
|
1703 |
-
l[41].index != null && Qe(l)
|
1704 |
-
);
|
1705 |
-
return {
|
1706 |
-
c() {
|
1707 |
-
t && t.c(), e = se();
|
1708 |
-
},
|
1709 |
-
m(n, i) {
|
1710 |
-
t && t.m(n, i), k(n, e, i);
|
1711 |
-
},
|
1712 |
-
p(n, i) {
|
1713 |
-
/*p*/
|
1714 |
-
n[41].index != null ? t ? t.p(n, i) : (t = Qe(n), t.c(), t.m(e.parentNode, e)) : t && (t.d(1), t = null);
|
1715 |
-
},
|
1716 |
-
d(n) {
|
1717 |
-
n && w(e), t && t.d(n);
|
1718 |
-
}
|
1719 |
-
};
|
1720 |
-
}
|
1721 |
-
function $e(l) {
|
1722 |
-
let e, t = (
|
1723 |
-
/*eta*/
|
1724 |
-
l[0] ? `/${/*formatted_eta*/
|
1725 |
-
l[19]}` : ""
|
1726 |
-
), n, i;
|
1727 |
-
return {
|
1728 |
-
c() {
|
1729 |
-
e = S(
|
1730 |
-
/*formatted_timer*/
|
1731 |
-
l[20]
|
1732 |
-
), n = S(t), i = S("s");
|
1733 |
-
},
|
1734 |
-
m(s, o) {
|
1735 |
-
k(s, e, o), k(s, n, o), k(s, i, o);
|
1736 |
-
},
|
1737 |
-
p(s, o) {
|
1738 |
-
o[0] & /*formatted_timer*/
|
1739 |
-
1048576 && A(
|
1740 |
-
e,
|
1741 |
-
/*formatted_timer*/
|
1742 |
-
s[20]
|
1743 |
-
), o[0] & /*eta, formatted_eta*/
|
1744 |
-
524289 && t !== (t = /*eta*/
|
1745 |
-
s[0] ? `/${/*formatted_eta*/
|
1746 |
-
s[19]}` : "") && A(n, t);
|
1747 |
-
},
|
1748 |
-
d(s) {
|
1749 |
-
s && (w(e), w(n), w(i));
|
1750 |
-
}
|
1751 |
-
};
|
1752 |
-
}
|
1753 |
-
function ol(l) {
|
1754 |
-
let e, t;
|
1755 |
-
return e = new On({
|
1756 |
-
props: { margin: (
|
1757 |
-
/*variant*/
|
1758 |
-
l[8] === "default"
|
1759 |
-
) }
|
1760 |
-
}), {
|
1761 |
-
c() {
|
1762 |
-
yt(e.$$.fragment);
|
1763 |
-
},
|
1764 |
-
m(n, i) {
|
1765 |
-
Ft(e, n, i), t = !0;
|
1766 |
-
},
|
1767 |
-
p(n, i) {
|
1768 |
-
const s = {};
|
1769 |
-
i[0] & /*variant*/
|
1770 |
-
256 && (s.margin = /*variant*/
|
1771 |
-
n[8] === "default"), e.$set(s);
|
1772 |
-
},
|
1773 |
-
i(n) {
|
1774 |
-
t || (K(e.$$.fragment, n), t = !0);
|
1775 |
-
},
|
1776 |
-
o(n) {
|
1777 |
-
Q(e.$$.fragment, n), t = !1;
|
1778 |
-
},
|
1779 |
-
d(n) {
|
1780 |
-
vt(e, n);
|
1781 |
-
}
|
1782 |
-
};
|
1783 |
-
}
|
1784 |
-
function rl(l) {
|
1785 |
-
let e, t, n, i, s, o = `${/*last_progress_level*/
|
1786 |
-
l[15] * 100}%`, a = (
|
1787 |
-
/*progress*/
|
1788 |
-
l[7] != null && et(l)
|
1789 |
-
);
|
1790 |
-
return {
|
1791 |
-
c() {
|
1792 |
-
e = H("div"), t = H("div"), a && a.c(), n = W(), i = H("div"), s = H("div"), P(t, "class", "progress-level-inner svelte-1yk38uw"), P(s, "class", "progress-bar svelte-1yk38uw"), J(s, "width", o), P(i, "class", "progress-bar-wrap svelte-1yk38uw"), P(e, "class", "progress-level svelte-1yk38uw");
|
1793 |
-
},
|
1794 |
-
m(r, f) {
|
1795 |
-
k(r, e, f), G(e, t), a && a.m(t, null), G(e, n), G(e, i), G(i, s), l[31](s);
|
1796 |
-
},
|
1797 |
-
p(r, f) {
|
1798 |
-
/*progress*/
|
1799 |
-
r[7] != null ? a ? a.p(r, f) : (a = et(r), a.c(), a.m(t, null)) : a && (a.d(1), a = null), f[0] & /*last_progress_level*/
|
1800 |
-
32768 && o !== (o = `${/*last_progress_level*/
|
1801 |
-
r[15] * 100}%`) && J(s, "width", o);
|
1802 |
-
},
|
1803 |
-
i: Ve,
|
1804 |
-
o: Ve,
|
1805 |
-
d(r) {
|
1806 |
-
r && w(e), a && a.d(), l[31](null);
|
1807 |
-
}
|
1808 |
-
};
|
1809 |
-
}
|
1810 |
-
function et(l) {
|
1811 |
-
let e, t = pe(
|
1812 |
-
/*progress*/
|
1813 |
-
l[7]
|
1814 |
-
), n = [];
|
1815 |
-
for (let i = 0; i < t.length; i += 1)
|
1816 |
-
n[i] = st(Ye(l, t, i));
|
1817 |
-
return {
|
1818 |
-
c() {
|
1819 |
-
for (let i = 0; i < n.length; i += 1)
|
1820 |
-
n[i].c();
|
1821 |
-
e = se();
|
1822 |
-
},
|
1823 |
-
m(i, s) {
|
1824 |
-
for (let o = 0; o < n.length; o += 1)
|
1825 |
-
n[o] && n[o].m(i, s);
|
1826 |
-
k(i, e, s);
|
1827 |
-
},
|
1828 |
-
p(i, s) {
|
1829 |
-
if (s[0] & /*progress_level, progress*/
|
1830 |
-
16512) {
|
1831 |
-
t = pe(
|
1832 |
-
/*progress*/
|
1833 |
-
i[7]
|
1834 |
-
);
|
1835 |
-
let o;
|
1836 |
-
for (o = 0; o < t.length; o += 1) {
|
1837 |
-
const a = Ye(i, t, o);
|
1838 |
-
n[o] ? n[o].p(a, s) : (n[o] = st(a), n[o].c(), n[o].m(e.parentNode, e));
|
1839 |
-
}
|
1840 |
-
for (; o < n.length; o += 1)
|
1841 |
-
n[o].d(1);
|
1842 |
-
n.length = t.length;
|
1843 |
-
}
|
1844 |
-
},
|
1845 |
-
d(i) {
|
1846 |
-
i && w(e), qt(n, i);
|
1847 |
-
}
|
1848 |
-
};
|
1849 |
-
}
|
1850 |
-
function tt(l) {
|
1851 |
-
let e, t, n, i, s = (
|
1852 |
-
/*i*/
|
1853 |
-
l[43] !== 0 && al()
|
1854 |
-
), o = (
|
1855 |
-
/*p*/
|
1856 |
-
l[41].desc != null && nt(l)
|
1857 |
-
), a = (
|
1858 |
-
/*p*/
|
1859 |
-
l[41].desc != null && /*progress_level*/
|
1860 |
-
l[14] && /*progress_level*/
|
1861 |
-
l[14][
|
1862 |
-
/*i*/
|
1863 |
-
l[43]
|
1864 |
-
] != null && lt()
|
1865 |
-
), r = (
|
1866 |
-
/*progress_level*/
|
1867 |
-
l[14] != null && it(l)
|
1868 |
-
);
|
1869 |
-
return {
|
1870 |
-
c() {
|
1871 |
-
s && s.c(), e = W(), o && o.c(), t = W(), a && a.c(), n = W(), r && r.c(), i = se();
|
1872 |
-
},
|
1873 |
-
m(f, u) {
|
1874 |
-
s && s.m(f, u), k(f, e, u), o && o.m(f, u), k(f, t, u), a && a.m(f, u), k(f, n, u), r && r.m(f, u), k(f, i, u);
|
1875 |
-
},
|
1876 |
-
p(f, u) {
|
1877 |
-
/*p*/
|
1878 |
-
f[41].desc != null ? o ? o.p(f, u) : (o = nt(f), o.c(), o.m(t.parentNode, t)) : o && (o.d(1), o = null), /*p*/
|
1879 |
-
f[41].desc != null && /*progress_level*/
|
1880 |
-
f[14] && /*progress_level*/
|
1881 |
-
f[14][
|
1882 |
-
/*i*/
|
1883 |
-
f[43]
|
1884 |
-
] != null ? a || (a = lt(), a.c(), a.m(n.parentNode, n)) : a && (a.d(1), a = null), /*progress_level*/
|
1885 |
-
f[14] != null ? r ? r.p(f, u) : (r = it(f), r.c(), r.m(i.parentNode, i)) : r && (r.d(1), r = null);
|
1886 |
-
},
|
1887 |
-
d(f) {
|
1888 |
-
f && (w(e), w(t), w(n), w(i)), s && s.d(f), o && o.d(f), a && a.d(f), r && r.d(f);
|
1889 |
-
}
|
1890 |
-
};
|
1891 |
-
}
|
1892 |
-
function al(l) {
|
1893 |
-
let e;
|
1894 |
-
return {
|
1895 |
-
c() {
|
1896 |
-
e = S(" /");
|
1897 |
-
},
|
1898 |
-
m(t, n) {
|
1899 |
-
k(t, e, n);
|
1900 |
-
},
|
1901 |
-
d(t) {
|
1902 |
-
t && w(e);
|
1903 |
-
}
|
1904 |
-
};
|
1905 |
-
}
|
1906 |
-
function nt(l) {
|
1907 |
-
let e = (
|
1908 |
-
/*p*/
|
1909 |
-
l[41].desc + ""
|
1910 |
-
), t;
|
1911 |
-
return {
|
1912 |
-
c() {
|
1913 |
-
t = S(e);
|
1914 |
-
},
|
1915 |
-
m(n, i) {
|
1916 |
-
k(n, t, i);
|
1917 |
-
},
|
1918 |
-
p(n, i) {
|
1919 |
-
i[0] & /*progress*/
|
1920 |
-
128 && e !== (e = /*p*/
|
1921 |
-
n[41].desc + "") && A(t, e);
|
1922 |
-
},
|
1923 |
-
d(n) {
|
1924 |
-
n && w(t);
|
1925 |
-
}
|
1926 |
-
};
|
1927 |
-
}
|
1928 |
-
function lt(l) {
|
1929 |
-
let e;
|
1930 |
-
return {
|
1931 |
-
c() {
|
1932 |
-
e = S("-");
|
1933 |
-
},
|
1934 |
-
m(t, n) {
|
1935 |
-
k(t, e, n);
|
1936 |
-
},
|
1937 |
-
d(t) {
|
1938 |
-
t && w(e);
|
1939 |
-
}
|
1940 |
-
};
|
1941 |
-
}
|
1942 |
-
function it(l) {
|
1943 |
-
let e = (100 * /*progress_level*/
|
1944 |
-
(l[14][
|
1945 |
-
/*i*/
|
1946 |
-
l[43]
|
1947 |
-
] || 0)).toFixed(1) + "", t, n;
|
1948 |
-
return {
|
1949 |
-
c() {
|
1950 |
-
t = S(e), n = S("%");
|
1951 |
-
},
|
1952 |
-
m(i, s) {
|
1953 |
-
k(i, t, s), k(i, n, s);
|
1954 |
-
},
|
1955 |
-
p(i, s) {
|
1956 |
-
s[0] & /*progress_level*/
|
1957 |
-
16384 && e !== (e = (100 * /*progress_level*/
|
1958 |
-
(i[14][
|
1959 |
-
/*i*/
|
1960 |
-
i[43]
|
1961 |
-
] || 0)).toFixed(1) + "") && A(t, e);
|
1962 |
-
},
|
1963 |
-
d(i) {
|
1964 |
-
i && (w(t), w(n));
|
1965 |
-
}
|
1966 |
-
};
|
1967 |
-
}
|
1968 |
-
function st(l) {
|
1969 |
-
let e, t = (
|
1970 |
-
/*p*/
|
1971 |
-
(l[41].desc != null || /*progress_level*/
|
1972 |
-
l[14] && /*progress_level*/
|
1973 |
-
l[14][
|
1974 |
-
/*i*/
|
1975 |
-
l[43]
|
1976 |
-
] != null) && tt(l)
|
1977 |
-
);
|
1978 |
-
return {
|
1979 |
-
c() {
|
1980 |
-
t && t.c(), e = se();
|
1981 |
-
},
|
1982 |
-
m(n, i) {
|
1983 |
-
t && t.m(n, i), k(n, e, i);
|
1984 |
-
},
|
1985 |
-
p(n, i) {
|
1986 |
-
/*p*/
|
1987 |
-
n[41].desc != null || /*progress_level*/
|
1988 |
-
n[14] && /*progress_level*/
|
1989 |
-
n[14][
|
1990 |
-
/*i*/
|
1991 |
-
n[43]
|
1992 |
-
] != null ? t ? t.p(n, i) : (t = tt(n), t.c(), t.m(e.parentNode, e)) : t && (t.d(1), t = null);
|
1993 |
-
},
|
1994 |
-
d(n) {
|
1995 |
-
n && w(e), t && t.d(n);
|
1996 |
-
}
|
1997 |
-
};
|
1998 |
-
}
|
1999 |
-
function ft(l) {
|
2000 |
-
let e, t;
|
2001 |
-
return {
|
2002 |
-
c() {
|
2003 |
-
e = H("p"), t = S(
|
2004 |
-
/*loading_text*/
|
2005 |
-
l[9]
|
2006 |
-
), P(e, "class", "loading svelte-1yk38uw");
|
2007 |
-
},
|
2008 |
-
m(n, i) {
|
2009 |
-
k(n, e, i), G(e, t);
|
2010 |
-
},
|
2011 |
-
p(n, i) {
|
2012 |
-
i[0] & /*loading_text*/
|
2013 |
-
512 && A(
|
2014 |
-
t,
|
2015 |
-
/*loading_text*/
|
2016 |
-
n[9]
|
2017 |
-
);
|
2018 |
-
},
|
2019 |
-
d(n) {
|
2020 |
-
n && w(e);
|
2021 |
-
}
|
2022 |
-
};
|
2023 |
-
}
|
2024 |
-
function ul(l) {
|
2025 |
-
let e, t, n, i, s;
|
2026 |
-
const o = [tl, el], a = [];
|
2027 |
-
function r(f, u) {
|
2028 |
-
return (
|
2029 |
-
/*status*/
|
2030 |
-
f[4] === "pending" ? 0 : (
|
2031 |
-
/*status*/
|
2032 |
-
f[4] === "error" ? 1 : -1
|
2033 |
-
)
|
2034 |
-
);
|
2035 |
-
}
|
2036 |
-
return ~(t = r(l)) && (n = a[t] = o[t](l)), {
|
2037 |
-
c() {
|
2038 |
-
e = H("div"), n && n.c(), P(e, "class", i = "wrap " + /*variant*/
|
2039 |
-
l[8] + " " + /*show_progress*/
|
2040 |
-
l[6] + " svelte-1yk38uw"), E(e, "hide", !/*status*/
|
2041 |
-
l[4] || /*status*/
|
2042 |
-
l[4] === "complete" || /*show_progress*/
|
2043 |
-
l[6] === "hidden"), E(
|
2044 |
-
e,
|
2045 |
-
"translucent",
|
2046 |
-
/*variant*/
|
2047 |
-
l[8] === "center" && /*status*/
|
2048 |
-
(l[4] === "pending" || /*status*/
|
2049 |
-
l[4] === "error") || /*translucent*/
|
2050 |
-
l[11] || /*show_progress*/
|
2051 |
-
l[6] === "minimal"
|
2052 |
-
), E(
|
2053 |
-
e,
|
2054 |
-
"generating",
|
2055 |
-
/*status*/
|
2056 |
-
l[4] === "generating"
|
2057 |
-
), E(
|
2058 |
-
e,
|
2059 |
-
"border",
|
2060 |
-
/*border*/
|
2061 |
-
l[12]
|
2062 |
-
), J(
|
2063 |
-
e,
|
2064 |
-
"position",
|
2065 |
-
/*absolute*/
|
2066 |
-
l[10] ? "absolute" : "static"
|
2067 |
-
), J(
|
2068 |
-
e,
|
2069 |
-
"padding",
|
2070 |
-
/*absolute*/
|
2071 |
-
l[10] ? "0" : "var(--size-8) 0"
|
2072 |
-
);
|
2073 |
-
},
|
2074 |
-
m(f, u) {
|
2075 |
-
k(f, e, u), ~t && a[t].m(e, null), l[33](e), s = !0;
|
2076 |
-
},
|
2077 |
-
p(f, u) {
|
2078 |
-
let c = t;
|
2079 |
-
t = r(f), t === c ? ~t && a[t].p(f, u) : (n && (Ct(), Q(a[c], 1, 1, () => {
|
2080 |
-
a[c] = null;
|
2081 |
-
}), pt()), ~t ? (n = a[t], n ? n.p(f, u) : (n = a[t] = o[t](f), n.c()), K(n, 1), n.m(e, null)) : n = null), (!s || u[0] & /*variant, show_progress*/
|
2082 |
-
320 && i !== (i = "wrap " + /*variant*/
|
2083 |
-
f[8] + " " + /*show_progress*/
|
2084 |
-
f[6] + " svelte-1yk38uw")) && P(e, "class", i), (!s || u[0] & /*variant, show_progress, status, show_progress*/
|
2085 |
-
336) && E(e, "hide", !/*status*/
|
2086 |
-
f[4] || /*status*/
|
2087 |
-
f[4] === "complete" || /*show_progress*/
|
2088 |
-
f[6] === "hidden"), (!s || u[0] & /*variant, show_progress, variant, status, translucent, show_progress*/
|
2089 |
-
2384) && E(
|
2090 |
-
e,
|
2091 |
-
"translucent",
|
2092 |
-
/*variant*/
|
2093 |
-
f[8] === "center" && /*status*/
|
2094 |
-
(f[4] === "pending" || /*status*/
|
2095 |
-
f[4] === "error") || /*translucent*/
|
2096 |
-
f[11] || /*show_progress*/
|
2097 |
-
f[6] === "minimal"
|
2098 |
-
), (!s || u[0] & /*variant, show_progress, status*/
|
2099 |
-
336) && E(
|
2100 |
-
e,
|
2101 |
-
"generating",
|
2102 |
-
/*status*/
|
2103 |
-
f[4] === "generating"
|
2104 |
-
), (!s || u[0] & /*variant, show_progress, border*/
|
2105 |
-
4416) && E(
|
2106 |
-
e,
|
2107 |
-
"border",
|
2108 |
-
/*border*/
|
2109 |
-
f[12]
|
2110 |
-
), u[0] & /*absolute*/
|
2111 |
-
1024 && J(
|
2112 |
-
e,
|
2113 |
-
"position",
|
2114 |
-
/*absolute*/
|
2115 |
-
f[10] ? "absolute" : "static"
|
2116 |
-
), u[0] & /*absolute*/
|
2117 |
-
1024 && J(
|
2118 |
-
e,
|
2119 |
-
"padding",
|
2120 |
-
/*absolute*/
|
2121 |
-
f[10] ? "0" : "var(--size-8) 0"
|
2122 |
-
);
|
2123 |
-
},
|
2124 |
-
i(f) {
|
2125 |
-
s || (K(n), s = !0);
|
2126 |
-
},
|
2127 |
-
o(f) {
|
2128 |
-
Q(n), s = !1;
|
2129 |
-
},
|
2130 |
-
d(f) {
|
2131 |
-
f && w(e), ~t && a[t].d(), l[33](null);
|
2132 |
-
}
|
2133 |
-
};
|
2134 |
-
}
|
2135 |
-
var cl = function(l, e, t, n) {
|
2136 |
-
function i(s) {
|
2137 |
-
return s instanceof t ? s : new t(function(o) {
|
2138 |
-
o(s);
|
2139 |
-
});
|
2140 |
-
}
|
2141 |
-
return new (t || (t = Promise))(function(s, o) {
|
2142 |
-
function a(u) {
|
2143 |
-
try {
|
2144 |
-
f(n.next(u));
|
2145 |
-
} catch (c) {
|
2146 |
-
o(c);
|
2147 |
-
}
|
2148 |
-
}
|
2149 |
-
function r(u) {
|
2150 |
-
try {
|
2151 |
-
f(n.throw(u));
|
2152 |
-
} catch (c) {
|
2153 |
-
o(c);
|
2154 |
-
}
|
2155 |
-
}
|
2156 |
-
function f(u) {
|
2157 |
-
u.done ? s(u.value) : i(u.value).then(a, r);
|
2158 |
-
}
|
2159 |
-
f((n = n.apply(l, e || [])).next());
|
2160 |
-
});
|
2161 |
-
};
|
2162 |
-
let we = [], Le = !1;
|
2163 |
-
function _l(l) {
|
2164 |
-
return cl(this, arguments, void 0, function* (e, t = !0) {
|
2165 |
-
if (!(window.__gradio_mode__ === "website" || window.__gradio_mode__ !== "app" && t !== !0)) {
|
2166 |
-
if (we.push(e), !Le)
|
2167 |
-
Le = !0;
|
2168 |
-
else
|
2169 |
-
return;
|
2170 |
-
yield Kn(), requestAnimationFrame(() => {
|
2171 |
-
let n = [0, 0];
|
2172 |
-
for (let i = 0; i < we.length; i++) {
|
2173 |
-
const o = we[i].getBoundingClientRect();
|
2174 |
-
(i === 0 || o.top + window.scrollY <= n[0]) && (n[0] = o.top + window.scrollY, n[1] = i);
|
2175 |
-
}
|
2176 |
-
window.scrollTo({ top: n[0] - 20, behavior: "smooth" }), Le = !1, we = [];
|
2177 |
-
});
|
2178 |
-
}
|
2179 |
-
});
|
2180 |
-
}
|
2181 |
-
function dl(l, e, t) {
|
2182 |
-
let n, { $$slots: i = {}, $$scope: s } = e;
|
2183 |
-
this && this.__awaiter;
|
2184 |
-
const o = xn();
|
2185 |
-
let { i18n: a } = e, { eta: r = null } = e, { queue_position: f } = e, { queue_size: u } = e, { status: c } = e, { scroll_to_output: p = !1 } = e, { timer: m = !0 } = e, { show_progress: y = "full" } = e, { message: L = null } = e, { progress: v = null } = e, { variant: F = "default" } = e, { loading_text: d = "Loading..." } = e, { absolute: _ = !0 } = e, { translucent: q = !1 } = e, { border: z = !1 } = e, { autoscroll: b } = e, g, O = !1, ue = 0, R = 0, x = null, $ = null, Ae = 0, X = null, fe, U = null, Ie = !0;
|
2186 |
-
const Nt = () => {
|
2187 |
-
t(0, r = t(27, x = t(19, ce = null))), t(25, ue = performance.now()), t(26, R = 0), O = !0, je();
|
2188 |
-
};
|
2189 |
-
function je() {
|
2190 |
-
requestAnimationFrame(() => {
|
2191 |
-
t(26, R = (performance.now() - ue) / 1e3), O && je();
|
2192 |
-
});
|
2193 |
-
}
|
2194 |
-
function Ze() {
|
2195 |
-
t(26, R = 0), t(0, r = t(27, x = t(19, ce = null))), O && (O = !1);
|
2196 |
-
}
|
2197 |
-
Qn(() => {
|
2198 |
-
O && Ze();
|
2199 |
-
});
|
2200 |
-
let ce = null;
|
2201 |
-
function Et(h) {
|
2202 |
-
Re[h ? "unshift" : "push"](() => {
|
2203 |
-
U = h, t(16, U), t(7, v), t(14, X), t(15, fe);
|
2204 |
-
});
|
2205 |
-
}
|
2206 |
-
const At = () => {
|
2207 |
-
o("clear_status");
|
2208 |
-
};
|
2209 |
-
function It(h) {
|
2210 |
-
Re[h ? "unshift" : "push"](() => {
|
2211 |
-
g = h, t(13, g);
|
2212 |
-
});
|
2213 |
-
}
|
2214 |
-
return l.$$set = (h) => {
|
2215 |
-
"i18n" in h && t(1, a = h.i18n), "eta" in h && t(0, r = h.eta), "queue_position" in h && t(2, f = h.queue_position), "queue_size" in h && t(3, u = h.queue_size), "status" in h && t(4, c = h.status), "scroll_to_output" in h && t(22, p = h.scroll_to_output), "timer" in h && t(5, m = h.timer), "show_progress" in h && t(6, y = h.show_progress), "message" in h && t(23, L = h.message), "progress" in h && t(7, v = h.progress), "variant" in h && t(8, F = h.variant), "loading_text" in h && t(9, d = h.loading_text), "absolute" in h && t(10, _ = h.absolute), "translucent" in h && t(11, q = h.translucent), "border" in h && t(12, z = h.border), "autoscroll" in h && t(24, b = h.autoscroll), "$$scope" in h && t(29, s = h.$$scope);
|
2216 |
-
}, l.$$.update = () => {
|
2217 |
-
l.$$.dirty[0] & /*eta, old_eta, timer_start, eta_from_start*/
|
2218 |
-
436207617 && (r === null && t(0, r = x), r != null && x !== r && (t(28, $ = (performance.now() - ue) / 1e3 + r), t(19, ce = $.toFixed(1)), t(27, x = r))), l.$$.dirty[0] & /*eta_from_start, timer_diff*/
|
2219 |
-
335544320 && t(17, Ae = $ === null || $ <= 0 || !R ? null : Math.min(R / $, 1)), l.$$.dirty[0] & /*progress*/
|
2220 |
-
128 && v != null && t(18, Ie = !1), l.$$.dirty[0] & /*progress, progress_level, progress_bar, last_progress_level*/
|
2221 |
-
114816 && (v != null ? t(14, X = v.map((h) => {
|
2222 |
-
if (h.index != null && h.length != null)
|
2223 |
-
return h.index / h.length;
|
2224 |
-
if (h.progress != null)
|
2225 |
-
return h.progress;
|
2226 |
-
})) : t(14, X = null), X ? (t(15, fe = X[X.length - 1]), U && (fe === 0 ? t(16, U.style.transition = "0", U) : t(16, U.style.transition = "150ms", U))) : t(15, fe = void 0)), l.$$.dirty[0] & /*status*/
|
2227 |
-
16 && (c === "pending" ? Nt() : Ze()), l.$$.dirty[0] & /*el, scroll_to_output, status, autoscroll*/
|
2228 |
-
20979728 && g && p && (c === "pending" || c === "complete") && _l(g, b), l.$$.dirty[0] & /*status, message*/
|
2229 |
-
8388624, l.$$.dirty[0] & /*timer_diff*/
|
2230 |
-
67108864 && t(20, n = R.toFixed(1));
|
2231 |
-
}, [
|
2232 |
-
r,
|
2233 |
-
a,
|
2234 |
-
f,
|
2235 |
-
u,
|
2236 |
-
c,
|
2237 |
-
m,
|
2238 |
-
y,
|
2239 |
-
v,
|
2240 |
-
F,
|
2241 |
-
d,
|
2242 |
-
_,
|
2243 |
-
q,
|
2244 |
-
z,
|
2245 |
-
g,
|
2246 |
-
X,
|
2247 |
-
fe,
|
2248 |
-
U,
|
2249 |
-
Ae,
|
2250 |
-
Ie,
|
2251 |
-
ce,
|
2252 |
-
n,
|
2253 |
-
o,
|
2254 |
-
p,
|
2255 |
-
L,
|
2256 |
-
b,
|
2257 |
-
ue,
|
2258 |
-
R,
|
2259 |
-
x,
|
2260 |
-
$,
|
2261 |
-
s,
|
2262 |
-
i,
|
2263 |
-
Et,
|
2264 |
-
At,
|
2265 |
-
It
|
2266 |
-
];
|
2267 |
-
}
|
2268 |
-
class ml extends Tn {
|
2269 |
-
constructor(e) {
|
2270 |
-
super(), Xn(
|
2271 |
-
this,
|
2272 |
-
e,
|
2273 |
-
dl,
|
2274 |
-
ul,
|
2275 |
-
Yn,
|
2276 |
-
{
|
2277 |
-
i18n: 1,
|
2278 |
-
eta: 0,
|
2279 |
-
queue_position: 2,
|
2280 |
-
queue_size: 3,
|
2281 |
-
status: 4,
|
2282 |
-
scroll_to_output: 22,
|
2283 |
-
timer: 5,
|
2284 |
-
show_progress: 6,
|
2285 |
-
message: 23,
|
2286 |
-
progress: 7,
|
2287 |
-
variant: 8,
|
2288 |
-
loading_text: 9,
|
2289 |
-
absolute: 10,
|
2290 |
-
translucent: 11,
|
2291 |
-
border: 12,
|
2292 |
-
autoscroll: 24
|
2293 |
-
},
|
2294 |
-
null,
|
2295 |
-
[-1, -1]
|
2296 |
-
);
|
2297 |
-
}
|
2298 |
-
}
|
2299 |
-
const {
|
2300 |
-
SvelteComponent: hl,
|
2301 |
-
append: bl,
|
2302 |
-
attr: re,
|
2303 |
-
detach: Lt,
|
2304 |
-
element: ot,
|
2305 |
-
empty: gl,
|
2306 |
-
init: wl,
|
2307 |
-
insert: St,
|
2308 |
-
noop: rt,
|
2309 |
-
safe_not_equal: kl,
|
2310 |
-
src_url_equal: at,
|
2311 |
-
toggle_class: ne
|
2312 |
-
} = window.__gradio__svelte__internal;
|
2313 |
-
function ut(l) {
|
2314 |
-
let e, t, n;
|
2315 |
-
return {
|
2316 |
-
c() {
|
2317 |
-
e = ot("div"), t = ot("img"), at(t.src, n = /*value*/
|
2318 |
-
l[0].url) || re(t, "src", n), re(t, "alt", ""), re(t, "class", "svelte-giydt1"), re(e, "class", "container svelte-giydt1"), ne(
|
2319 |
-
e,
|
2320 |
-
"table",
|
2321 |
-
/*type*/
|
2322 |
-
l[1] === "table"
|
2323 |
-
), ne(
|
2324 |
-
e,
|
2325 |
-
"gallery",
|
2326 |
-
/*type*/
|
2327 |
-
l[1] === "gallery"
|
2328 |
-
), ne(
|
2329 |
-
e,
|
2330 |
-
"selected",
|
2331 |
-
/*selected*/
|
2332 |
-
l[2]
|
2333 |
-
);
|
2334 |
-
},
|
2335 |
-
m(i, s) {
|
2336 |
-
St(i, e, s), bl(e, t);
|
2337 |
-
},
|
2338 |
-
p(i, s) {
|
2339 |
-
s & /*value*/
|
2340 |
-
1 && !at(t.src, n = /*value*/
|
2341 |
-
i[0].url) && re(t, "src", n), s & /*type*/
|
2342 |
-
2 && ne(
|
2343 |
-
e,
|
2344 |
-
"table",
|
2345 |
-
/*type*/
|
2346 |
-
i[1] === "table"
|
2347 |
-
), s & /*type*/
|
2348 |
-
2 && ne(
|
2349 |
-
e,
|
2350 |
-
"gallery",
|
2351 |
-
/*type*/
|
2352 |
-
i[1] === "gallery"
|
2353 |
-
), s & /*selected*/
|
2354 |
-
4 && ne(
|
2355 |
-
e,
|
2356 |
-
"selected",
|
2357 |
-
/*selected*/
|
2358 |
-
i[2]
|
2359 |
-
);
|
2360 |
-
},
|
2361 |
-
d(i) {
|
2362 |
-
i && Lt(e);
|
2363 |
-
}
|
2364 |
-
};
|
2365 |
-
}
|
2366 |
-
function pl(l) {
|
2367 |
-
let e, t = (
|
2368 |
-
/*value*/
|
2369 |
-
l[0] && ut(l)
|
2370 |
-
);
|
2371 |
-
return {
|
2372 |
-
c() {
|
2373 |
-
t && t.c(), e = gl();
|
2374 |
-
},
|
2375 |
-
m(n, i) {
|
2376 |
-
t && t.m(n, i), St(n, e, i);
|
2377 |
-
},
|
2378 |
-
p(n, [i]) {
|
2379 |
-
/*value*/
|
2380 |
-
n[0] ? t ? t.p(n, i) : (t = ut(n), t.c(), t.m(e.parentNode, e)) : t && (t.d(1), t = null);
|
2381 |
-
},
|
2382 |
-
i: rt,
|
2383 |
-
o: rt,
|
2384 |
-
d(n) {
|
2385 |
-
n && Lt(e), t && t.d(n);
|
2386 |
-
}
|
2387 |
-
};
|
2388 |
-
}
|
2389 |
-
function yl(l, e, t) {
|
2390 |
-
let { value: n } = e, { type: i } = e, { selected: s = !1 } = e;
|
2391 |
-
return l.$$set = (o) => {
|
2392 |
-
"value" in o && t(0, n = o.value), "type" in o && t(1, i = o.type), "selected" in o && t(2, s = o.selected);
|
2393 |
-
}, [n, i, s];
|
2394 |
-
}
|
2395 |
-
class Bl extends hl {
|
2396 |
-
constructor(e) {
|
2397 |
-
super(), wl(this, e, yl, pl, kl, { value: 0, type: 1, selected: 2 });
|
2398 |
-
}
|
2399 |
-
}
|
2400 |
-
const {
|
2401 |
-
SvelteComponent: vl,
|
2402 |
-
assign: ql,
|
2403 |
-
attr: Cl,
|
2404 |
-
binding_callbacks: Fl,
|
2405 |
-
check_outros: Ll,
|
2406 |
-
create_component: zt,
|
2407 |
-
destroy_component: Mt,
|
2408 |
-
detach: Ne,
|
2409 |
-
element: Sl,
|
2410 |
-
empty: zl,
|
2411 |
-
flush: N,
|
2412 |
-
get_spread_object: Ml,
|
2413 |
-
get_spread_update: Vl,
|
2414 |
-
group_outros: Nl,
|
2415 |
-
init: El,
|
2416 |
-
insert: Ee,
|
2417 |
-
mount_component: Vt,
|
2418 |
-
safe_not_equal: Al,
|
2419 |
-
set_style: ct,
|
2420 |
-
space: Il,
|
2421 |
-
transition_in: ae,
|
2422 |
-
transition_out: ye
|
2423 |
-
} = window.__gradio__svelte__internal, { onMount: jl } = window.__gradio__svelte__internal;
|
2424 |
-
function _t(l) {
|
2425 |
-
let e, t;
|
2426 |
-
return e = new sn({
|
2427 |
-
props: {
|
2428 |
-
visible: (
|
2429 |
-
/*visible*/
|
2430 |
-
l[3]
|
2431 |
-
),
|
2432 |
-
variant: "solid",
|
2433 |
-
border_mode: (
|
2434 |
-
/*dragging*/
|
2435 |
-
l[12] ? "focus" : "base"
|
2436 |
-
),
|
2437 |
-
padding: !1,
|
2438 |
-
elem_id: (
|
2439 |
-
/*elem_id*/
|
2440 |
-
l[1]
|
2441 |
-
),
|
2442 |
-
elem_classes: (
|
2443 |
-
/*elem_classes*/
|
2444 |
-
l[2]
|
2445 |
-
),
|
2446 |
-
allow_overflow: !1,
|
2447 |
-
container: (
|
2448 |
-
/*container*/
|
2449 |
-
l[4]
|
2450 |
-
),
|
2451 |
-
scale: (
|
2452 |
-
/*scale*/
|
2453 |
-
l[5]
|
2454 |
-
),
|
2455 |
-
min_width: (
|
2456 |
-
/*min_width*/
|
2457 |
-
l[6]
|
2458 |
-
),
|
2459 |
-
$$slots: { default: [Zl] },
|
2460 |
-
$$scope: { ctx: l }
|
2461 |
-
}
|
2462 |
-
}), {
|
2463 |
-
c() {
|
2464 |
-
zt(e.$$.fragment);
|
2465 |
-
},
|
2466 |
-
m(n, i) {
|
2467 |
-
Vt(e, n, i), t = !0;
|
2468 |
-
},
|
2469 |
-
p(n, i) {
|
2470 |
-
const s = {};
|
2471 |
-
i & /*visible*/
|
2472 |
-
8 && (s.visible = /*visible*/
|
2473 |
-
n[3]), i & /*elem_id*/
|
2474 |
-
2 && (s.elem_id = /*elem_id*/
|
2475 |
-
n[1]), i & /*elem_classes*/
|
2476 |
-
4 && (s.elem_classes = /*elem_classes*/
|
2477 |
-
n[2]), i & /*container*/
|
2478 |
-
16 && (s.container = /*container*/
|
2479 |
-
n[4]), i & /*scale*/
|
2480 |
-
32 && (s.scale = /*scale*/
|
2481 |
-
n[5]), i & /*min_width*/
|
2482 |
-
64 && (s.min_width = /*min_width*/
|
2483 |
-
n[6]), i & /*$$scope, ref, height, gradio, patched_loading_status, loading_status*/
|
2484 |
-
1052289 && (s.$$scope = { dirty: i, ctx: n }), e.$set(s);
|
2485 |
-
},
|
2486 |
-
i(n) {
|
2487 |
-
t || (ae(e.$$.fragment, n), t = !0);
|
2488 |
-
},
|
2489 |
-
o(n) {
|
2490 |
-
ye(e.$$.fragment, n), t = !1;
|
2491 |
-
},
|
2492 |
-
d(n) {
|
2493 |
-
Mt(e, n);
|
2494 |
-
}
|
2495 |
-
};
|
2496 |
-
}
|
2497 |
-
function Zl(l) {
|
2498 |
-
let e, t, n, i;
|
2499 |
-
const s = [
|
2500 |
-
{ autoscroll: (
|
2501 |
-
/*gradio*/
|
2502 |
-
l[9].autoscroll
|
2503 |
-
) },
|
2504 |
-
{ i18n: (
|
2505 |
-
/*gradio*/
|
2506 |
-
l[9].i18n
|
2507 |
-
) },
|
2508 |
-
/*patched_loading_status*/
|
2509 |
-
l[10]
|
2510 |
-
];
|
2511 |
-
let o = {};
|
2512 |
-
for (let a = 0; a < s.length; a += 1)
|
2513 |
-
o = ql(o, s[a]);
|
2514 |
-
return e = new ml({ props: o }), e.$on(
|
2515 |
-
"clear_status",
|
2516 |
-
/*clear_status_handler*/
|
2517 |
-
l[15]
|
2518 |
-
), {
|
2519 |
-
c() {
|
2520 |
-
zt(e.$$.fragment), t = Il(), n = Sl("div"), Cl(n, "class", "viewer svelte-mo2zro"), ct(
|
2521 |
-
n,
|
2522 |
-
"height",
|
2523 |
-
/*height*/
|
2524 |
-
l[0]
|
2525 |
-
);
|
2526 |
-
},
|
2527 |
-
m(a, r) {
|
2528 |
-
Vt(e, a, r), Ee(a, t, r), Ee(a, n, r), l[16](n), i = !0;
|
2529 |
-
},
|
2530 |
-
p(a, r) {
|
2531 |
-
const f = r & /*gradio, patched_loading_status*/
|
2532 |
-
1536 ? Vl(s, [
|
2533 |
-
r & /*gradio*/
|
2534 |
-
512 && { autoscroll: (
|
2535 |
-
/*gradio*/
|
2536 |
-
a[9].autoscroll
|
2537 |
-
) },
|
2538 |
-
r & /*gradio*/
|
2539 |
-
512 && { i18n: (
|
2540 |
-
/*gradio*/
|
2541 |
-
a[9].i18n
|
2542 |
-
) },
|
2543 |
-
r & /*patched_loading_status*/
|
2544 |
-
1024 && Ml(
|
2545 |
-
/*patched_loading_status*/
|
2546 |
-
a[10]
|
2547 |
-
)
|
2548 |
-
]) : {};
|
2549 |
-
e.$set(f), r & /*height*/
|
2550 |
-
1 && ct(
|
2551 |
-
n,
|
2552 |
-
"height",
|
2553 |
-
/*height*/
|
2554 |
-
a[0]
|
2555 |
-
);
|
2556 |
-
},
|
2557 |
-
i(a) {
|
2558 |
-
i || (ae(e.$$.fragment, a), i = !0);
|
2559 |
-
},
|
2560 |
-
o(a) {
|
2561 |
-
ye(e.$$.fragment, a), i = !1;
|
2562 |
-
},
|
2563 |
-
d(a) {
|
2564 |
-
a && (Ne(t), Ne(n)), Mt(e, a), l[16](null);
|
2565 |
-
}
|
2566 |
-
};
|
2567 |
-
}
|
2568 |
-
function Pl(l) {
|
2569 |
-
let e, t, n = !/*interactive*/
|
2570 |
-
l[8] && _t(l);
|
2571 |
-
return {
|
2572 |
-
c() {
|
2573 |
-
n && n.c(), e = zl();
|
2574 |
-
},
|
2575 |
-
m(i, s) {
|
2576 |
-
n && n.m(i, s), Ee(i, e, s), t = !0;
|
2577 |
-
},
|
2578 |
-
p(i, [s]) {
|
2579 |
-
/*interactive*/
|
2580 |
-
i[8] ? n && (Nl(), ye(n, 1, 1, () => {
|
2581 |
-
n = null;
|
2582 |
-
}), Ll()) : n ? (n.p(i, s), s & /*interactive*/
|
2583 |
-
256 && ae(n, 1)) : (n = _t(i), n.c(), ae(n, 1), n.m(e.parentNode, e));
|
2584 |
-
},
|
2585 |
-
i(i) {
|
2586 |
-
t || (ae(n), t = !0);
|
2587 |
-
},
|
2588 |
-
o(i) {
|
2589 |
-
ye(n), t = !1;
|
2590 |
-
},
|
2591 |
-
d(i) {
|
2592 |
-
i && Ne(e), n && n.d(i);
|
2593 |
-
}
|
2594 |
-
};
|
2595 |
-
}
|
2596 |
-
function Wl(l, e, t) {
|
2597 |
-
let { elem_id: n = "" } = e, { elem_classes: i = [] } = e, { visible: s = !0 } = e, { height: o = 640 } = e, { value: a = null } = e, { container: r = !0 } = e, { scale: f = null } = e, { min_width: u = void 0 } = e, { loading_status: c } = e, { interactive: p } = e, { streaming: m } = e, y = null, { gradio: L } = e, v, F, d, _;
|
2598 |
-
function q() {
|
2599 |
-
if (JSON.stringify(a) !== JSON.stringify(y) && F != null && F.ready)
|
2600 |
-
if (y = a, !Array.isArray(a))
|
2601 |
-
a.is_stream ? F.open(a.url, { follow_if_http: !0 }) : F.open(a.url);
|
2602 |
-
else
|
2603 |
-
for (const g of a)
|
2604 |
-
typeof g != "string" ? g.url && F.open(g.url) : F.open(g);
|
2605 |
-
}
|
2606 |
-
jl(() => (F = new Ht(), F.start(void 0, d, !0).then(() => {
|
2607 |
-
q();
|
2608 |
-
}), () => {
|
2609 |
-
F.stop();
|
2610 |
-
}));
|
2611 |
-
const z = () => L.dispatch("clear_status", c);
|
2612 |
-
function b(g) {
|
2613 |
-
Fl[g ? "unshift" : "push"](() => {
|
2614 |
-
d = g, t(11, d);
|
2615 |
-
});
|
2616 |
-
}
|
2617 |
-
return l.$$set = (g) => {
|
2618 |
-
"elem_id" in g && t(1, n = g.elem_id), "elem_classes" in g && t(2, i = g.elem_classes), "visible" in g && t(3, s = g.visible), "height" in g && t(0, o = g.height), "value" in g && t(13, a = g.value), "container" in g && t(4, r = g.container), "scale" in g && t(5, f = g.scale), "min_width" in g && t(6, u = g.min_width), "loading_status" in g && t(7, c = g.loading_status), "interactive" in g && t(8, p = g.interactive), "streaming" in g && t(14, m = g.streaming), "gradio" in g && t(9, L = g.gradio);
|
2619 |
-
}, l.$$.update = () => {
|
2620 |
-
l.$$.dirty & /*height*/
|
2621 |
-
1 && t(0, o = typeof o == "number" ? `${o}px` : o), l.$$.dirty & /*loading_status, streaming, patched_loading_status*/
|
2622 |
-
17536 && (t(10, _ = c), m && _?.status === "generating" && t(10, _.status = "complete", _)), l.$$.dirty & /*value*/
|
2623 |
-
8192 && q();
|
2624 |
-
}, [
|
2625 |
-
o,
|
2626 |
-
n,
|
2627 |
-
i,
|
2628 |
-
s,
|
2629 |
-
r,
|
2630 |
-
f,
|
2631 |
-
u,
|
2632 |
-
c,
|
2633 |
-
p,
|
2634 |
-
L,
|
2635 |
-
_,
|
2636 |
-
d,
|
2637 |
-
v,
|
2638 |
-
a,
|
2639 |
-
m,
|
2640 |
-
z,
|
2641 |
-
b
|
2642 |
-
];
|
2643 |
-
}
|
2644 |
-
class Dl extends vl {
|
2645 |
-
constructor(e) {
|
2646 |
-
super(), El(this, e, Wl, Pl, Al, {
|
2647 |
-
elem_id: 1,
|
2648 |
-
elem_classes: 2,
|
2649 |
-
visible: 3,
|
2650 |
-
height: 0,
|
2651 |
-
value: 13,
|
2652 |
-
container: 4,
|
2653 |
-
scale: 5,
|
2654 |
-
min_width: 6,
|
2655 |
-
loading_status: 7,
|
2656 |
-
interactive: 8,
|
2657 |
-
streaming: 14,
|
2658 |
-
gradio: 9
|
2659 |
-
});
|
2660 |
-
}
|
2661 |
-
get elem_id() {
|
2662 |
-
return this.$$.ctx[1];
|
2663 |
-
}
|
2664 |
-
set elem_id(e) {
|
2665 |
-
this.$$set({ elem_id: e }), N();
|
2666 |
-
}
|
2667 |
-
get elem_classes() {
|
2668 |
-
return this.$$.ctx[2];
|
2669 |
-
}
|
2670 |
-
set elem_classes(e) {
|
2671 |
-
this.$$set({ elem_classes: e }), N();
|
2672 |
-
}
|
2673 |
-
get visible() {
|
2674 |
-
return this.$$.ctx[3];
|
2675 |
-
}
|
2676 |
-
set visible(e) {
|
2677 |
-
this.$$set({ visible: e }), N();
|
2678 |
-
}
|
2679 |
-
get height() {
|
2680 |
-
return this.$$.ctx[0];
|
2681 |
-
}
|
2682 |
-
set height(e) {
|
2683 |
-
this.$$set({ height: e }), N();
|
2684 |
-
}
|
2685 |
-
get value() {
|
2686 |
-
return this.$$.ctx[13];
|
2687 |
-
}
|
2688 |
-
set value(e) {
|
2689 |
-
this.$$set({ value: e }), N();
|
2690 |
-
}
|
2691 |
-
get container() {
|
2692 |
-
return this.$$.ctx[4];
|
2693 |
-
}
|
2694 |
-
set container(e) {
|
2695 |
-
this.$$set({ container: e }), N();
|
2696 |
-
}
|
2697 |
-
get scale() {
|
2698 |
-
return this.$$.ctx[5];
|
2699 |
-
}
|
2700 |
-
set scale(e) {
|
2701 |
-
this.$$set({ scale: e }), N();
|
2702 |
-
}
|
2703 |
-
get min_width() {
|
2704 |
-
return this.$$.ctx[6];
|
2705 |
-
}
|
2706 |
-
set min_width(e) {
|
2707 |
-
this.$$set({ min_width: e }), N();
|
2708 |
-
}
|
2709 |
-
get loading_status() {
|
2710 |
-
return this.$$.ctx[7];
|
2711 |
-
}
|
2712 |
-
set loading_status(e) {
|
2713 |
-
this.$$set({ loading_status: e }), N();
|
2714 |
-
}
|
2715 |
-
get interactive() {
|
2716 |
-
return this.$$.ctx[8];
|
2717 |
-
}
|
2718 |
-
set interactive(e) {
|
2719 |
-
this.$$set({ interactive: e }), N();
|
2720 |
-
}
|
2721 |
-
get streaming() {
|
2722 |
-
return this.$$.ctx[14];
|
2723 |
-
}
|
2724 |
-
set streaming(e) {
|
2725 |
-
this.$$set({ streaming: e }), N();
|
2726 |
-
}
|
2727 |
-
get gradio() {
|
2728 |
-
return this.$$.ctx[9];
|
2729 |
-
}
|
2730 |
-
set gradio(e) {
|
2731 |
-
this.$$set({ gradio: e }), N();
|
2732 |
-
}
|
2733 |
-
}
|
2734 |
-
export {
|
2735 |
-
Bl as BaseExample,
|
2736 |
-
Dl as default
|
2737 |
-
};
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:c7c96fc4393ec3d292cb7e8559f3cd88ef339923771e158d6c15d88842408215
|
3 |
+
size 32012219
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
src/backend/gradio_rerun/templates/component/re_viewer-B_L3tdvY.js
ADDED
The diff for this file is too large to render.
See raw diff
|
|
src/backend/gradio_rerun/templates/component/style.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
/*! tailwindcss v4.0.0-alpha.14 | MIT License | https://tailwindcss.com */@layer theme{:root{--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-family-sans);--default-font-feature-settings:var(--font-family-sans--font-feature-settings);--default-font-variation-settings:var(--font-family-sans--font-variation-settings);--default-mono-font-family:var(--font-family-mono);--default-mono-font-feature-settings:var(--font-family-mono--font-feature-settings);--default-mono-font-variation-settings:var(--font-family-mono--font-variation-settings);--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px;--color-black:#000;--color-white:#fff;--color-slate-50:#f8fafc;--color-slate-100:#f1f5f9;--color-slate-200:#e2e8f0;--color-slate-300:#cbd5e1;--color-slate-400:#94a3b8;--color-slate-500:#64748b;--color-slate-600:#475569;--color-slate-700:#334155;--color-slate-800:#1e293b;--color-slate-900:#0f172a;--color-slate-950:#020617;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--color-gray-950:#030712;--color-zinc-50:#fafafa;--color-zinc-100:#f4f4f5;--color-zinc-200:#e4e4e7;--color-zinc-300:#d4d4d8;--color-zinc-400:#a1a1aa;--color-zinc-500:#71717a;--color-zinc-600:#52525b;--color-zinc-700:#3f3f46;--color-zinc-800:#27272a;--color-zinc-900:#18181b;--color-zinc-950:#09090b;--color-neutral-50:#fafafa;--color-neutral-100:#f5f5f5;--color-neutral-200:#e5e5e5;--color-neutral-300:#d4d4d4;--color-neutral-400:#a3a3a3;--color-neutral-500:#737373;--color-neutral-600:#525252;--color-neutral-700:#404040;--color-neutral-800:#262626;--color-neutral-900:#171717;--color-neutral-950:#0a0a0a;--color-stone-50:#fafaf9;--color-stone-100:#f5f5f4;--color-stone-200:#e7e5e4;--color-stone-300:#d6d3d1;--color-stone-400:#a8a29e;--color-stone-500:#78716c;--color-stone-600:#57534e;--color-stone-700:#44403c;--color-stone-800:#292524;--color-stone-900:#1c1917;--color-stone-950:#0c0a09;--color-red-50:#fef2f2;--color-red-100:#fee2e2;--color-red-200:#fecaca;--color-red-300:#fca5a5;--color-red-400:#f87171;--color-red-500:#ef4444;--color-red-600:#dc2626;--color-red-700:#b91c1c;--color-red-800:#991b1b;--color-red-900:#7f1d1d;--color-red-950:#450a0a;--color-orange-50:#fff7ed;--color-orange-100:#ffedd5;--color-orange-200:#fed7aa;--color-orange-300:#fdba74;--color-orange-400:#fb923c;--color-orange-500:#f97316;--color-orange-600:#ea580c;--color-orange-700:#c2410c;--color-orange-800:#9a3412;--color-orange-900:#7c2d12;--color-orange-950:#431407;--color-amber-50:#fffbeb;--color-amber-100:#fef3c7;--color-amber-200:#fde68a;--color-amber-300:#fcd34d;--color-amber-400:#fbbf24;--color-amber-500:#f59e0b;--color-amber-600:#d97706;--color-amber-700:#b45309;--color-amber-800:#92400e;--color-amber-900:#78350f;--color-amber-950:#451a03;--color-yellow-50:#fefce8;--color-yellow-100:#fef9c3;--color-yellow-200:#fef08a;--color-yellow-300:#fde047;--color-yellow-400:#facc15;--color-yellow-500:#eab308;--color-yellow-600:#ca8a04;--color-yellow-700:#a16207;--color-yellow-800:#854d0e;--color-yellow-900:#713f12;--color-yellow-950:#422006;--color-lime-50:#f7fee7;--color-lime-100:#ecfccb;--color-lime-200:#d9f99d;--color-lime-300:#bef264;--color-lime-400:#a3e635;--color-lime-500:#84cc16;--color-lime-600:#65a30d;--color-lime-700:#4d7c0f;--color-lime-800:#3f6212;--color-lime-900:#365314;--color-lime-950:#1a2e05;--color-green-50:#f0fdf4;--color-green-100:#dcfce7;--color-green-200:#bbf7d0;--color-green-300:#86efac;--color-green-400:#4ade80;--color-green-500:#22c55e;--color-green-600:#16a34a;--color-green-700:#15803d;--color-green-800:#166534;--color-green-900:#14532d;--color-green-950:#052e16;--color-emerald-50:#ecfdf5;--color-emerald-100:#d1fae5;--color-emerald-200:#a7f3d0;--color-emerald-300:#6ee7b7;--color-emerald-400:#34d399;--color-emerald-500:#10b981;--color-emerald-600:#059669;--color-emerald-700:#047857;--color-emerald-800:#065f46;--color-emerald-900:#064e3b;--color-emerald-950:#022c22;--color-teal-50:#f0fdfa;--color-teal-100:#ccfbf1;--color-teal-200:#99f6e4;--color-teal-300:#5eead4;--color-teal-400:#2dd4bf;--color-teal-500:#14b8a6;--color-teal-600:#0d9488;--color-teal-700:#0f766e;--color-teal-800:#115e59;--color-teal-900:#134e4a;--color-teal-950:#042f2e;--color-cyan-50:#ecfeff;--color-cyan-100:#cffafe;--color-cyan-200:#a5f3fc;--color-cyan-300:#67e8f9;--color-cyan-400:#22d3ee;--color-cyan-500:#06b6d4;--color-cyan-600:#0891b2;--color-cyan-700:#0e7490;--color-cyan-800:#155e75;--color-cyan-900:#164e63;--color-cyan-950:#083344;--color-sky-50:#f0f9ff;--color-sky-100:#e0f2fe;--color-sky-200:#bae6fd;--color-sky-300:#7dd3fc;--color-sky-400:#38bdf8;--color-sky-500:#0ea5e9;--color-sky-600:#0284c7;--color-sky-700:#0369a1;--color-sky-800:#075985;--color-sky-900:#0c4a6e;--color-sky-950:#082f49;--color-blue-50:#eff6ff;--color-blue-100:#dbeafe;--color-blue-200:#bfdbfe;--color-blue-300:#93c5fd;--color-blue-400:#60a5fa;--color-blue-500:#3b82f6;--color-blue-600:#2563eb;--color-blue-700:#1d4ed8;--color-blue-800:#1e40af;--color-blue-900:#1e3a8a;--color-blue-950:#172554;--color-indigo-50:#eef2ff;--color-indigo-100:#e0e7ff;--color-indigo-200:#c7d2fe;--color-indigo-300:#a5b4fc;--color-indigo-400:#818cf8;--color-indigo-500:#6366f1;--color-indigo-600:#4f46e5;--color-indigo-700:#4338ca;--color-indigo-800:#3730a3;--color-indigo-900:#312e81;--color-indigo-950:#1e1b4b;--color-violet-50:#f5f3ff;--color-violet-100:#ede9fe;--color-violet-200:#ddd6fe;--color-violet-300:#c4b5fd;--color-violet-400:#a78bfa;--color-violet-500:#8b5cf6;--color-violet-600:#7c3aed;--color-violet-700:#6d28d9;--color-violet-800:#5b21b6;--color-violet-900:#4c1d95;--color-violet-950:#2e1065;--color-purple-50:#faf5ff;--color-purple-100:#f3e8ff;--color-purple-200:#e9d5ff;--color-purple-300:#d8b4fe;--color-purple-400:#c084fc;--color-purple-500:#a855f7;--color-purple-600:#9333ea;--color-purple-700:#7e22ce;--color-purple-800:#6b21a8;--color-purple-900:#581c87;--color-purple-950:#3b0764;--color-fuchsia-50:#fdf4ff;--color-fuchsia-100:#fae8ff;--color-fuchsia-200:#f5d0fe;--color-fuchsia-300:#f0abfc;--color-fuchsia-400:#e879f9;--color-fuchsia-500:#d946ef;--color-fuchsia-600:#c026d3;--color-fuchsia-700:#a21caf;--color-fuchsia-800:#86198f;--color-fuchsia-900:#701a75;--color-fuchsia-950:#4a044e;--color-pink-50:#fdf2f8;--color-pink-100:#fce7f3;--color-pink-200:#fbcfe8;--color-pink-300:#f9a8d4;--color-pink-400:#f472b6;--color-pink-500:#ec4899;--color-pink-600:#db2777;--color-pink-700:#be185d;--color-pink-800:#9d174d;--color-pink-900:#831843;--color-pink-950:#500724;--color-rose-50:#fff1f2;--color-rose-100:#ffe4e6;--color-rose-200:#fecdd3;--color-rose-300:#fda4af;--color-rose-400:#fb7185;--color-rose-500:#f43f5e;--color-rose-600:#e11d48;--color-rose-700:#be123c;--color-rose-800:#9f1239;--color-rose-900:#881337;--color-rose-950:#4c0519;--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0,0,.2,1)infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--animate-bounce:bounce 1s infinite;--blur:8px;--blur-sm:4px;--blur-md:12px;--blur-lg:16px;--blur-xl:24px;--blur-2xl:40px;--blur-3xl:64px;--radius:.25rem;--radius-sm:.125rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-xs:0 1px #0000000d;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--shadow-2xl:0 25px 50px -12px #00000040;--shadow-inner:inset 0 2px 4px 0 #0000000d;--inset-shadow-xs:inset 0 1px #0000000d;--inset-shadow-sm:inset 0 1px 1px #0000000d;--inset-shadow:inset 0 2px 4px #0000000d;--drop-shadow:0 1px 2px #0000001a,0 1px 1px #0000000f;--drop-shadow-sm:0 1px 1px #0000000d;--drop-shadow-md:0 4px 3px #00000012,0 2px 2px #0000000f;--drop-shadow-lg:0 10px 8px #0000000a,0 4px 3px #0000001a;--drop-shadow-xl:0 20px 13px #00000008,0 8px 5px #00000014;--drop-shadow-2xl:0 25px 25px #00000026;--spacing-px:1px;--spacing-0:0px;--spacing-0_5:.125rem;--spacing-1:.25rem;--spacing-1_5:.375rem;--spacing-2:.5rem;--spacing-2_5:.625rem;--spacing-3:.75rem;--spacing-3_5:.875rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-7:1.75rem;--spacing-8:2rem;--spacing-9:2.25rem;--spacing-10:2.5rem;--spacing-11:2.75rem;--spacing-12:3rem;--spacing-14:3.5rem;--spacing-16:4rem;--spacing-20:5rem;--spacing-24:6rem;--spacing-28:7rem;--spacing-32:8rem;--spacing-36:9rem;--spacing-40:10rem;--spacing-44:11rem;--spacing-48:12rem;--spacing-52:13rem;--spacing-56:14rem;--spacing-60:15rem;--spacing-64:16rem;--spacing-72:18rem;--spacing-80:20rem;--spacing-96:24rem;--width-3xs:16rem;--width-2xs:18rem;--width-xs:20rem;--width-sm:24rem;--width-md:28rem;--width-lg:32rem;--width-xl:36rem;--width-2xl:42rem;--width-3xl:48rem;--width-4xl:56rem;--width-5xl:64rem;--width-6xl:72rem;--width-7xl:80rem;--width-prose:65ch;--font-family-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-serif:ui-serif,Georgia,Cambria,"Times New Roman",Times,serif;--font-family-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--font-size-xs:.75rem;--font-size-xs--line-height:1rem;--font-size-sm:.875rem;--font-size-sm--line-height:1.25rem;--font-size-base:1rem;--font-size-base--line-height:1.5rem;--font-size-lg:1.125rem;--font-size-lg--line-height:1.75rem;--font-size-xl:1.25rem;--font-size-xl--line-height:1.75rem;--font-size-2xl:1.5rem;--font-size-2xl--line-height:2rem;--font-size-3xl:1.875rem;--font-size-3xl--line-height:2.25rem;--font-size-4xl:2.25rem;--font-size-4xl--line-height:2.5rem;--font-size-5xl:3rem;--font-size-5xl--line-height:1;--font-size-6xl:3.75rem;--font-size-6xl--line-height:1;--font-size-7xl:4.5rem;--font-size-7xl--line-height:1;--font-size-8xl:6rem;--font-size-8xl--line-height:1;--font-size-9xl:8rem;--font-size-9xl--line-height:1;--letter-spacing-tighter:-.05em;--letter-spacing-tight:-.025em;--letter-spacing-normal:0em;--letter-spacing-wide:.025em;--letter-spacing-wider:.05em;--letter-spacing-widest:.1em;--line-height-none:1;--line-height-tight:1.25;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--line-height-3:.75rem;--line-height-4:1rem;--line-height-5:1.25rem;--line-height-6:1.5rem;--line-height-7:1.75rem;--line-height-8:2rem;--line-height-9:2.25rem;--line-height-10:2.5rem;--perspective-dramatic:100px;--perspective-near:300px;--perspective-normal:500px;--perspective-midrange:800px;--perspective-distant:1200px;--transition-timing-function-linear:linear;--transition-timing-function-in:cubic-bezier(.4,0,1,1);--transition-timing-function-out:cubic-bezier(0,0,.2,1);--transition-timing-function-in-out:cubic-bezier(.4,0,.2,1)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}body{line-height:inherit}hr{color:inherit;border-top-width:1px;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;background:0 0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;background:0 0}input:where(:not([type=button],[type=reset],[type=submit])),select,textarea{border:1px solid}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}::-webkit-search-decoration{-webkit-appearance:none}summary{display:list-item}ol,ul,menu{list-style:none}textarea{resize:vertical}::placeholder{opacity:1;color:color-mix(in srgb,currentColor 50%,transparent)}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]{display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.static,.static\/Loader,.static\/Toast,.static\/index,.static\/types{position:static}.block{display:block}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x)var(--tw-rotate-y)var(--tw-rotate-z)var(--tw-skew-x)var(--tw-skew-y)}.border{border-style:var(--tw-border-style);border-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-in-out{transition-timing-function:var(--transition-timing-function-in-out,cubic-bezier(.4,0,.2,1))}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}@property --tw-rotate-x{syntax:"<transform-function>";inherits:false;initial-value:rotateX(0)}@property --tw-rotate-y{syntax:"<transform-function>";inherits:false;initial-value:rotateY(0)}@property --tw-rotate-z{syntax:"<transform-function>";inherits:false;initial-value:rotate(0)}@property --tw-skew-x{syntax:"<transform-function>";inherits:false;initial-value:skew(0)}@property --tw-skew-y{syntax:"<transform-function>";inherits:false;initial-value:skewY(0)}@property --tw-border-style{syntax:"<custom-ident>";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}.block.svelte-nl1om8{position:relative;margin:0;box-shadow:var(--block-shadow);border-width:var(--block-border-width);border-color:var(--block-border-color);border-radius:var(--block-radius);background:var(--block-background-fill);width:100%;line-height:var(--line-sm)}.block.border_focus.svelte-nl1om8{border-color:var(--color-accent)}.block.border_contrast.svelte-nl1om8{border-color:var(--body-text-color)}.padded.svelte-nl1om8{padding:var(--block-padding)}.hidden.svelte-nl1om8{display:none}.hide-container.svelte-nl1om8{margin:0;box-shadow:none;--block-border-width:0;background:transparent;padding:0;overflow:visible}div.svelte-1hnfib2{margin-bottom:var(--spacing-lg);color:var(--block-info-text-color);font-weight:var(--block-info-text-weight);font-size:var(--block-info-text-size);line-height:var(--line-sm)}span.has-info.svelte-22c38v{margin-bottom:var(--spacing-xs)}span.svelte-22c38v:not(.has-info){margin-bottom:var(--spacing-lg)}span.svelte-22c38v{display:inline-block;position:relative;z-index:var(--layer-4);border:solid var(--block-title-border-width) var(--block-title-border-color);border-radius:var(--block-title-radius);background:var(--block-title-background-fill);padding:var(--block-title-padding);color:var(--block-title-text-color);font-weight:var(--block-title-text-weight);font-size:var(--block-title-text-size);line-height:var(--line-sm)}.hide.svelte-22c38v{margin:0;height:0}label.svelte-9gxdi0{display:inline-flex;align-items:center;z-index:var(--layer-2);box-shadow:var(--block-label-shadow);border:var(--block-label-border-width) solid var(--border-color-primary);border-top:none;border-left:none;border-radius:var(--block-label-radius);background:var(--block-label-background-fill);padding:var(--block-label-padding);pointer-events:none;color:var(--block-label-text-color);font-weight:var(--block-label-text-weight);font-size:var(--block-label-text-size);line-height:var(--line-sm)}.gr-group label.svelte-9gxdi0{border-top-left-radius:0}label.float.svelte-9gxdi0{position:absolute;top:var(--block-label-margin);left:var(--block-label-margin)}label.svelte-9gxdi0:not(.float){position:static;margin-top:var(--block-label-margin);margin-left:var(--block-label-margin)}.hide.svelte-9gxdi0{height:0}span.svelte-9gxdi0{opacity:.8;margin-right:var(--size-2);width:calc(var(--block-label-text-size) - 1px);height:calc(var(--block-label-text-size) - 1px)}.hide-label.svelte-9gxdi0{box-shadow:none;border-width:0;background:transparent;overflow:visible}button.svelte-1lrphxw{display:flex;justify-content:center;align-items:center;gap:1px;z-index:var(--layer-2);border-radius:var(--radius-sm);color:var(--block-label-text-color);border:1px solid transparent}button[disabled].svelte-1lrphxw{opacity:.5;box-shadow:none}button[disabled].svelte-1lrphxw:hover{cursor:not-allowed}.padded.svelte-1lrphxw{padding:2px;background:var(--bg-color);box-shadow:var(--shadow-drop);border:1px solid var(--button-secondary-border-color)}button.svelte-1lrphxw:hover,button.highlight.svelte-1lrphxw{cursor:pointer;color:var(--color-accent)}.padded.svelte-1lrphxw:hover{border:2px solid var(--button-secondary-border-color-hover);padding:1px;color:var(--block-label-text-color)}span.svelte-1lrphxw{padding:0 1px;font-size:10px}div.svelte-1lrphxw{padding:2px;display:flex;align-items:flex-end}.small.svelte-1lrphxw{width:14px;height:14px}.medium.svelte-1lrphxw{width:20px;height:20px}.large.svelte-1lrphxw{width:22px;height:22px}.pending.svelte-1lrphxw{animation:svelte-1lrphxw-flash .5s infinite}@keyframes svelte-1lrphxw-flash{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}.transparent.svelte-1lrphxw{background:transparent;border:none;box-shadow:none}.empty.svelte-3w3rth{display:flex;justify-content:center;align-items:center;margin-top:calc(0px - var(--size-6));height:var(--size-full)}.icon.svelte-3w3rth{opacity:.5;height:var(--size-5);color:var(--body-text-color)}.small.svelte-3w3rth{min-height:calc(var(--size-32) - 20px)}.large.svelte-3w3rth{min-height:calc(var(--size-64) - 20px)}.unpadded_box.svelte-3w3rth{margin-top:0}.small_parent.svelte-3w3rth{min-height:100%!important}.dropdown-arrow.svelte-145leq6{fill:currentColor}.wrap.svelte-kzcjhc{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:var(--size-60);color:var(--block-label-text-color);line-height:var(--line-md);height:100%;padding-top:var(--size-3)}.or.svelte-kzcjhc{color:var(--body-text-color-subdued);display:flex}.icon-wrap.svelte-kzcjhc{width:30px;margin-bottom:var(--spacing-lg)}@media (--screen-md){.wrap.svelte-kzcjhc{font-size:var(--text-lg)}}.hovered.svelte-kzcjhc{color:var(--color-accent)}div.svelte-q32hvf{border-top:1px solid transparent;display:flex;max-height:100%;justify-content:center;align-items:center;gap:var(--spacing-sm);height:auto;align-items:flex-end;color:var(--block-label-text-color);flex-shrink:0}.show_border.svelte-q32hvf{border-top:1px solid var(--block-border-color);margin-top:var(--spacing-xxl);box-shadow:var(--shadow-drop)}.source-selection.svelte-1jp3vgd{display:flex;align-items:center;justify-content:center;border-top:1px solid var(--border-color-primary);width:95%;bottom:0;left:0;right:0;margin-left:auto;margin-right:auto}.icon.svelte-1jp3vgd{width:22px;height:22px;margin:var(--spacing-lg) var(--spacing-xs);padding:var(--spacing-xs);color:var(--neutral-400);border-radius:var(--radius-md)}.selected.svelte-1jp3vgd{color:var(--color-accent)}.icon.svelte-1jp3vgd:hover,.icon.svelte-1jp3vgd:focus{color:var(--color-accent)}svg.svelte-43sxxs.svelte-43sxxs{width:var(--size-20);height:var(--size-20)}svg.svelte-43sxxs path.svelte-43sxxs{fill:var(--loader-color)}div.svelte-43sxxs.svelte-43sxxs{z-index:var(--layer-2)}.margin.svelte-43sxxs.svelte-43sxxs{margin:var(--size-4)}.wrap.svelte-1yk38uw.svelte-1yk38uw{display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:var(--layer-top);transition:opacity .1s ease-in-out;border-radius:var(--block-radius);background:var(--block-background-fill);padding:0 var(--size-6);max-height:var(--size-screen-h);overflow:hidden}.wrap.center.svelte-1yk38uw.svelte-1yk38uw{top:0;right:0;left:0}.wrap.default.svelte-1yk38uw.svelte-1yk38uw{inset:0}.hide.svelte-1yk38uw.svelte-1yk38uw{opacity:0;pointer-events:none}.generating.svelte-1yk38uw.svelte-1yk38uw{animation:svelte-1yk38uw-pulse 2s cubic-bezier(.4,0,.6,1) infinite;border:2px solid var(--color-accent);background:transparent;z-index:var(--layer-1)}.translucent.svelte-1yk38uw.svelte-1yk38uw{background:none}@keyframes svelte-1yk38uw-pulse{0%,to{opacity:1}50%{opacity:.5}}.loading.svelte-1yk38uw.svelte-1yk38uw{z-index:var(--layer-2);color:var(--body-text-color)}.eta-bar.svelte-1yk38uw.svelte-1yk38uw{position:absolute;inset:0;transform-origin:left;opacity:.8;z-index:var(--layer-1);transition:10ms;background:var(--background-fill-secondary)}.progress-bar-wrap.svelte-1yk38uw.svelte-1yk38uw{border:1px solid var(--border-color-primary);background:var(--background-fill-primary);width:55.5%;height:var(--size-4)}.progress-bar.svelte-1yk38uw.svelte-1yk38uw{transform-origin:left;background-color:var(--loader-color);width:var(--size-full);height:var(--size-full)}.progress-level.svelte-1yk38uw.svelte-1yk38uw{display:flex;flex-direction:column;align-items:center;gap:1;z-index:var(--layer-2);width:var(--size-full)}.progress-level-inner.svelte-1yk38uw.svelte-1yk38uw{margin:var(--size-2) auto;color:var(--body-text-color);font-size:var(--text-sm);font-family:var(--font-mono)}.meta-text.svelte-1yk38uw.svelte-1yk38uw{position:absolute;top:0;right:0;z-index:var(--layer-2);padding:var(--size-1) var(--size-2);font-size:var(--text-sm);font-family:var(--font-mono)}.meta-text-center.svelte-1yk38uw.svelte-1yk38uw{display:flex;position:absolute;top:0;right:0;justify-content:center;align-items:center;transform:translateY(var(--size-6));z-index:var(--layer-2);padding:var(--size-1) var(--size-2);font-size:var(--text-sm);font-family:var(--font-mono);text-align:center}.error.svelte-1yk38uw.svelte-1yk38uw{box-shadow:var(--shadow-drop);border:solid 1px var(--error-border-color);border-radius:var(--radius-full);background:var(--error-background-fill);padding-right:var(--size-4);padding-left:var(--size-4);color:var(--error-text-color);font-weight:var(--weight-semibold);font-size:var(--text-lg);line-height:var(--line-lg);font-family:var(--font)}.minimal.svelte-1yk38uw .progress-text.svelte-1yk38uw{background:var(--block-background-fill)}.border.svelte-1yk38uw.svelte-1yk38uw{border:1px solid var(--border-color-primary)}.clear-status.svelte-1yk38uw.svelte-1yk38uw{position:absolute;display:flex;top:var(--size-2);right:var(--size-2);justify-content:flex-end;gap:var(--spacing-sm);z-index:var(--layer-1)}.toast-body.svelte-solcu7{display:flex;position:relative;right:0;left:0;align-items:center;margin:var(--size-6) var(--size-4);margin:auto;border-radius:var(--container-radius);overflow:hidden;pointer-events:auto}.toast-body.error.svelte-solcu7{border:1px solid var(--color-red-700);background:var(--color-red-50)}.dark .toast-body.error.svelte-solcu7{border:1px solid var(--color-red-500);background-color:var(--color-grey-950)}.toast-body.warning.svelte-solcu7{border:1px solid var(--color-yellow-700);background:var(--color-yellow-50)}.dark .toast-body.warning.svelte-solcu7{border:1px solid var(--color-yellow-500);background-color:var(--color-grey-950)}.toast-body.info.svelte-solcu7{border:1px solid var(--color-grey-700);background:var(--color-grey-50)}.dark .toast-body.info.svelte-solcu7{border:1px solid var(--color-grey-500);background-color:var(--color-grey-950)}.toast-title.svelte-solcu7{display:flex;align-items:center;font-weight:var(--weight-bold);font-size:var(--text-lg);line-height:var(--line-sm);text-transform:capitalize}.toast-title.error.svelte-solcu7{color:var(--color-red-700)}.dark .toast-title.error.svelte-solcu7{color:var(--color-red-50)}.toast-title.warning.svelte-solcu7{color:var(--color-yellow-700)}.dark .toast-title.warning.svelte-solcu7{color:var(--color-yellow-50)}.toast-title.info.svelte-solcu7{color:var(--color-grey-700)}.dark .toast-title.info.svelte-solcu7{color:var(--color-grey-50)}.toast-close.svelte-solcu7{margin:0 var(--size-3);border-radius:var(--size-3);padding:0px var(--size-1-5);font-size:var(--size-5);line-height:var(--size-5)}.toast-close.error.svelte-solcu7{color:var(--color-red-700)}.dark .toast-close.error.svelte-solcu7{color:var(--color-red-500)}.toast-close.warning.svelte-solcu7{color:var(--color-yellow-700)}.dark .toast-close.warning.svelte-solcu7{color:var(--color-yellow-500)}.toast-close.info.svelte-solcu7{color:var(--color-grey-700)}.dark .toast-close.info.svelte-solcu7{color:var(--color-grey-500)}.toast-text.svelte-solcu7{font-size:var(--text-lg)}.toast-text.error.svelte-solcu7{color:var(--color-red-700)}.dark .toast-text.error.svelte-solcu7{color:var(--color-red-50)}.toast-text.warning.svelte-solcu7{color:var(--color-yellow-700)}.dark .toast-text.warning.svelte-solcu7{color:var(--color-yellow-50)}.toast-text.info.svelte-solcu7{color:var(--color-grey-700)}.dark .toast-text.info.svelte-solcu7{color:var(--color-grey-50)}.toast-details.svelte-solcu7{margin:var(--size-3) var(--size-3) var(--size-3) 0;width:100%}.toast-icon.svelte-solcu7{display:flex;position:absolute;position:relative;flex-shrink:0;justify-content:center;align-items:center;margin:var(--size-2);border-radius:var(--radius-full);padding:var(--size-1);padding-left:calc(var(--size-1) - 1px);width:35px;height:35px}.toast-icon.error.svelte-solcu7{color:var(--color-red-700)}.dark .toast-icon.error.svelte-solcu7{color:var(--color-red-500)}.toast-icon.warning.svelte-solcu7{color:var(--color-yellow-700)}.dark .toast-icon.warning.svelte-solcu7{color:var(--color-yellow-500)}.toast-icon.info.svelte-solcu7{color:var(--color-grey-700)}.dark .toast-icon.info.svelte-solcu7{color:var(--color-grey-500)}@keyframes svelte-solcu7-countdown{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.timer.svelte-solcu7{position:absolute;bottom:0;left:0;transform-origin:0 0;animation:svelte-solcu7-countdown 10s linear forwards;width:100%;height:var(--size-1)}.timer.error.svelte-solcu7{background:var(--color-red-700)}.dark .timer.error.svelte-solcu7{background:var(--color-red-500)}.timer.warning.svelte-solcu7{background:var(--color-yellow-700)}.dark .timer.warning.svelte-solcu7{background:var(--color-yellow-500)}.timer.info.svelte-solcu7{background:var(--color-grey-700)}.dark .timer.info.svelte-solcu7{background:var(--color-grey-500)}.toast-wrap.svelte-gatr8h{display:flex;position:fixed;top:var(--size-4);right:var(--size-4);flex-direction:column;align-items:end;gap:var(--size-2);z-index:var(--layer-top);width:calc(100% - var(--size-8))}@media (--screen-sm){.toast-wrap.svelte-gatr8h{width:calc(var(--size-96) + var(--size-10))}}.container.svelte-giydt1 img{width:100%;height:100%}.container.selected.svelte-giydt1.svelte-giydt1{border-color:var(--border-color-accent)}.container.table.svelte-giydt1.svelte-giydt1{margin:0 auto;border:2px solid var(--border-color-primary);border-radius:var(--radius-lg);overflow:hidden;width:var(--size-20);height:var(--size-20);object-fit:cover}.container.gallery.svelte-giydt1.svelte-giydt1{height:var(--size-20);max-height:var(--size-20);object-fit:cover}.container.svelte-giydt1 img.svelte-giydt1{object-fit:cover}div.viewer.svelte-mo2zro{width:100%}div.viewer.svelte-mo2zro>canvas{position:initial!important;top:unset!important;width:100%;height:100%}
|
|
|
1 |
+
/*! tailwindcss v4.0.0-alpha.14 | MIT License | https://tailwindcss.com */@layer theme{:root{--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-family-sans);--default-font-feature-settings:var(--font-family-sans--font-feature-settings);--default-font-variation-settings:var(--font-family-sans--font-variation-settings);--default-mono-font-family:var(--font-family-mono);--default-mono-font-feature-settings:var(--font-family-mono--font-feature-settings);--default-mono-font-variation-settings:var(--font-family-mono--font-variation-settings);--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px;--color-black:#000;--color-white:#fff;--color-slate-50:#f8fafc;--color-slate-100:#f1f5f9;--color-slate-200:#e2e8f0;--color-slate-300:#cbd5e1;--color-slate-400:#94a3b8;--color-slate-500:#64748b;--color-slate-600:#475569;--color-slate-700:#334155;--color-slate-800:#1e293b;--color-slate-900:#0f172a;--color-slate-950:#020617;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--color-gray-950:#030712;--color-zinc-50:#fafafa;--color-zinc-100:#f4f4f5;--color-zinc-200:#e4e4e7;--color-zinc-300:#d4d4d8;--color-zinc-400:#a1a1aa;--color-zinc-500:#71717a;--color-zinc-600:#52525b;--color-zinc-700:#3f3f46;--color-zinc-800:#27272a;--color-zinc-900:#18181b;--color-zinc-950:#09090b;--color-neutral-50:#fafafa;--color-neutral-100:#f5f5f5;--color-neutral-200:#e5e5e5;--color-neutral-300:#d4d4d4;--color-neutral-400:#a3a3a3;--color-neutral-500:#737373;--color-neutral-600:#525252;--color-neutral-700:#404040;--color-neutral-800:#262626;--color-neutral-900:#171717;--color-neutral-950:#0a0a0a;--color-stone-50:#fafaf9;--color-stone-100:#f5f5f4;--color-stone-200:#e7e5e4;--color-stone-300:#d6d3d1;--color-stone-400:#a8a29e;--color-stone-500:#78716c;--color-stone-600:#57534e;--color-stone-700:#44403c;--color-stone-800:#292524;--color-stone-900:#1c1917;--color-stone-950:#0c0a09;--color-red-50:#fef2f2;--color-red-100:#fee2e2;--color-red-200:#fecaca;--color-red-300:#fca5a5;--color-red-400:#f87171;--color-red-500:#ef4444;--color-red-600:#dc2626;--color-red-700:#b91c1c;--color-red-800:#991b1b;--color-red-900:#7f1d1d;--color-red-950:#450a0a;--color-orange-50:#fff7ed;--color-orange-100:#ffedd5;--color-orange-200:#fed7aa;--color-orange-300:#fdba74;--color-orange-400:#fb923c;--color-orange-500:#f97316;--color-orange-600:#ea580c;--color-orange-700:#c2410c;--color-orange-800:#9a3412;--color-orange-900:#7c2d12;--color-orange-950:#431407;--color-amber-50:#fffbeb;--color-amber-100:#fef3c7;--color-amber-200:#fde68a;--color-amber-300:#fcd34d;--color-amber-400:#fbbf24;--color-amber-500:#f59e0b;--color-amber-600:#d97706;--color-amber-700:#b45309;--color-amber-800:#92400e;--color-amber-900:#78350f;--color-amber-950:#451a03;--color-yellow-50:#fefce8;--color-yellow-100:#fef9c3;--color-yellow-200:#fef08a;--color-yellow-300:#fde047;--color-yellow-400:#facc15;--color-yellow-500:#eab308;--color-yellow-600:#ca8a04;--color-yellow-700:#a16207;--color-yellow-800:#854d0e;--color-yellow-900:#713f12;--color-yellow-950:#422006;--color-lime-50:#f7fee7;--color-lime-100:#ecfccb;--color-lime-200:#d9f99d;--color-lime-300:#bef264;--color-lime-400:#a3e635;--color-lime-500:#84cc16;--color-lime-600:#65a30d;--color-lime-700:#4d7c0f;--color-lime-800:#3f6212;--color-lime-900:#365314;--color-lime-950:#1a2e05;--color-green-50:#f0fdf4;--color-green-100:#dcfce7;--color-green-200:#bbf7d0;--color-green-300:#86efac;--color-green-400:#4ade80;--color-green-500:#22c55e;--color-green-600:#16a34a;--color-green-700:#15803d;--color-green-800:#166534;--color-green-900:#14532d;--color-green-950:#052e16;--color-emerald-50:#ecfdf5;--color-emerald-100:#d1fae5;--color-emerald-200:#a7f3d0;--color-emerald-300:#6ee7b7;--color-emerald-400:#34d399;--color-emerald-500:#10b981;--color-emerald-600:#059669;--color-emerald-700:#047857;--color-emerald-800:#065f46;--color-emerald-900:#064e3b;--color-emerald-950:#022c22;--color-teal-50:#f0fdfa;--color-teal-100:#ccfbf1;--color-teal-200:#99f6e4;--color-teal-300:#5eead4;--color-teal-400:#2dd4bf;--color-teal-500:#14b8a6;--color-teal-600:#0d9488;--color-teal-700:#0f766e;--color-teal-800:#115e59;--color-teal-900:#134e4a;--color-teal-950:#042f2e;--color-cyan-50:#ecfeff;--color-cyan-100:#cffafe;--color-cyan-200:#a5f3fc;--color-cyan-300:#67e8f9;--color-cyan-400:#22d3ee;--color-cyan-500:#06b6d4;--color-cyan-600:#0891b2;--color-cyan-700:#0e7490;--color-cyan-800:#155e75;--color-cyan-900:#164e63;--color-cyan-950:#083344;--color-sky-50:#f0f9ff;--color-sky-100:#e0f2fe;--color-sky-200:#bae6fd;--color-sky-300:#7dd3fc;--color-sky-400:#38bdf8;--color-sky-500:#0ea5e9;--color-sky-600:#0284c7;--color-sky-700:#0369a1;--color-sky-800:#075985;--color-sky-900:#0c4a6e;--color-sky-950:#082f49;--color-blue-50:#eff6ff;--color-blue-100:#dbeafe;--color-blue-200:#bfdbfe;--color-blue-300:#93c5fd;--color-blue-400:#60a5fa;--color-blue-500:#3b82f6;--color-blue-600:#2563eb;--color-blue-700:#1d4ed8;--color-blue-800:#1e40af;--color-blue-900:#1e3a8a;--color-blue-950:#172554;--color-indigo-50:#eef2ff;--color-indigo-100:#e0e7ff;--color-indigo-200:#c7d2fe;--color-indigo-300:#a5b4fc;--color-indigo-400:#818cf8;--color-indigo-500:#6366f1;--color-indigo-600:#4f46e5;--color-indigo-700:#4338ca;--color-indigo-800:#3730a3;--color-indigo-900:#312e81;--color-indigo-950:#1e1b4b;--color-violet-50:#f5f3ff;--color-violet-100:#ede9fe;--color-violet-200:#ddd6fe;--color-violet-300:#c4b5fd;--color-violet-400:#a78bfa;--color-violet-500:#8b5cf6;--color-violet-600:#7c3aed;--color-violet-700:#6d28d9;--color-violet-800:#5b21b6;--color-violet-900:#4c1d95;--color-violet-950:#2e1065;--color-purple-50:#faf5ff;--color-purple-100:#f3e8ff;--color-purple-200:#e9d5ff;--color-purple-300:#d8b4fe;--color-purple-400:#c084fc;--color-purple-500:#a855f7;--color-purple-600:#9333ea;--color-purple-700:#7e22ce;--color-purple-800:#6b21a8;--color-purple-900:#581c87;--color-purple-950:#3b0764;--color-fuchsia-50:#fdf4ff;--color-fuchsia-100:#fae8ff;--color-fuchsia-200:#f5d0fe;--color-fuchsia-300:#f0abfc;--color-fuchsia-400:#e879f9;--color-fuchsia-500:#d946ef;--color-fuchsia-600:#c026d3;--color-fuchsia-700:#a21caf;--color-fuchsia-800:#86198f;--color-fuchsia-900:#701a75;--color-fuchsia-950:#4a044e;--color-pink-50:#fdf2f8;--color-pink-100:#fce7f3;--color-pink-200:#fbcfe8;--color-pink-300:#f9a8d4;--color-pink-400:#f472b6;--color-pink-500:#ec4899;--color-pink-600:#db2777;--color-pink-700:#be185d;--color-pink-800:#9d174d;--color-pink-900:#831843;--color-pink-950:#500724;--color-rose-50:#fff1f2;--color-rose-100:#ffe4e6;--color-rose-200:#fecdd3;--color-rose-300:#fda4af;--color-rose-400:#fb7185;--color-rose-500:#f43f5e;--color-rose-600:#e11d48;--color-rose-700:#be123c;--color-rose-800:#9f1239;--color-rose-900:#881337;--color-rose-950:#4c0519;--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0,0,.2,1)infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--animate-bounce:bounce 1s infinite;--blur:8px;--blur-sm:4px;--blur-md:12px;--blur-lg:16px;--blur-xl:24px;--blur-2xl:40px;--blur-3xl:64px;--radius:.25rem;--radius-sm:.125rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-xs:0 1px #0000000d;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--shadow-2xl:0 25px 50px -12px #00000040;--shadow-inner:inset 0 2px 4px 0 #0000000d;--inset-shadow-xs:inset 0 1px #0000000d;--inset-shadow-sm:inset 0 1px 1px #0000000d;--inset-shadow:inset 0 2px 4px #0000000d;--drop-shadow:0 1px 2px #0000001a,0 1px 1px #0000000f;--drop-shadow-sm:0 1px 1px #0000000d;--drop-shadow-md:0 4px 3px #00000012,0 2px 2px #0000000f;--drop-shadow-lg:0 10px 8px #0000000a,0 4px 3px #0000001a;--drop-shadow-xl:0 20px 13px #00000008,0 8px 5px #00000014;--drop-shadow-2xl:0 25px 25px #00000026;--spacing-px:1px;--spacing-0:0px;--spacing-0_5:.125rem;--spacing-1:.25rem;--spacing-1_5:.375rem;--spacing-2:.5rem;--spacing-2_5:.625rem;--spacing-3:.75rem;--spacing-3_5:.875rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-7:1.75rem;--spacing-8:2rem;--spacing-9:2.25rem;--spacing-10:2.5rem;--spacing-11:2.75rem;--spacing-12:3rem;--spacing-14:3.5rem;--spacing-16:4rem;--spacing-20:5rem;--spacing-24:6rem;--spacing-28:7rem;--spacing-32:8rem;--spacing-36:9rem;--spacing-40:10rem;--spacing-44:11rem;--spacing-48:12rem;--spacing-52:13rem;--spacing-56:14rem;--spacing-60:15rem;--spacing-64:16rem;--spacing-72:18rem;--spacing-80:20rem;--spacing-96:24rem;--width-3xs:16rem;--width-2xs:18rem;--width-xs:20rem;--width-sm:24rem;--width-md:28rem;--width-lg:32rem;--width-xl:36rem;--width-2xl:42rem;--width-3xl:48rem;--width-4xl:56rem;--width-5xl:64rem;--width-6xl:72rem;--width-7xl:80rem;--width-prose:65ch;--font-family-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-serif:ui-serif,Georgia,Cambria,"Times New Roman",Times,serif;--font-family-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--font-size-xs:.75rem;--font-size-xs--line-height:1rem;--font-size-sm:.875rem;--font-size-sm--line-height:1.25rem;--font-size-base:1rem;--font-size-base--line-height:1.5rem;--font-size-lg:1.125rem;--font-size-lg--line-height:1.75rem;--font-size-xl:1.25rem;--font-size-xl--line-height:1.75rem;--font-size-2xl:1.5rem;--font-size-2xl--line-height:2rem;--font-size-3xl:1.875rem;--font-size-3xl--line-height:2.25rem;--font-size-4xl:2.25rem;--font-size-4xl--line-height:2.5rem;--font-size-5xl:3rem;--font-size-5xl--line-height:1;--font-size-6xl:3.75rem;--font-size-6xl--line-height:1;--font-size-7xl:4.5rem;--font-size-7xl--line-height:1;--font-size-8xl:6rem;--font-size-8xl--line-height:1;--font-size-9xl:8rem;--font-size-9xl--line-height:1;--letter-spacing-tighter:-.05em;--letter-spacing-tight:-.025em;--letter-spacing-normal:0em;--letter-spacing-wide:.025em;--letter-spacing-wider:.05em;--letter-spacing-widest:.1em;--line-height-none:1;--line-height-tight:1.25;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--line-height-3:.75rem;--line-height-4:1rem;--line-height-5:1.25rem;--line-height-6:1.5rem;--line-height-7:1.75rem;--line-height-8:2rem;--line-height-9:2.25rem;--line-height-10:2.5rem;--perspective-dramatic:100px;--perspective-near:300px;--perspective-normal:500px;--perspective-midrange:800px;--perspective-distant:1200px;--transition-timing-function-linear:linear;--transition-timing-function-in:cubic-bezier(.4,0,1,1);--transition-timing-function-out:cubic-bezier(0,0,.2,1);--transition-timing-function-in-out:cubic-bezier(.4,0,.2,1)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}body{line-height:inherit}hr{color:inherit;border-top-width:1px;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;background:0 0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;background:0 0}input:where(:not([type=button],[type=reset],[type=submit])),select,textarea{border:1px solid}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}::-webkit-search-decoration{-webkit-appearance:none}summary{display:list-item}ol,ul,menu{list-style:none}textarea{resize:vertical}::placeholder{opacity:1;color:color-mix(in srgb,currentColor 50%,transparent)}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]{display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.static,.static\/Loader,.static\/Toast,.static\/index,.static\/types{position:static}.block{display:block}.hidden{display:none}.table{display:table}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x)var(--tw-rotate-y)var(--tw-rotate-z)var(--tw-skew-x)var(--tw-skew-y)}.border{border-style:var(--tw-border-style);border-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-in-out{transition-timing-function:var(--transition-timing-function-in-out,cubic-bezier(.4,0,.2,1))}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}@property --tw-rotate-x{syntax:"<transform-function>";inherits:false;initial-value:rotateX(0)}@property --tw-rotate-y{syntax:"<transform-function>";inherits:false;initial-value:rotateY(0)}@property --tw-rotate-z{syntax:"<transform-function>";inherits:false;initial-value:rotate(0)}@property --tw-skew-x{syntax:"<transform-function>";inherits:false;initial-value:skew(0)}@property --tw-skew-y{syntax:"<transform-function>";inherits:false;initial-value:skewY(0)}@property --tw-border-style{syntax:"<custom-ident>";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}.block.svelte-nl1om8{position:relative;margin:0;box-shadow:var(--block-shadow);border-width:var(--block-border-width);border-color:var(--block-border-color);border-radius:var(--block-radius);background:var(--block-background-fill);width:100%;line-height:var(--line-sm)}.block.border_focus.svelte-nl1om8{border-color:var(--color-accent)}.block.border_contrast.svelte-nl1om8{border-color:var(--body-text-color)}.padded.svelte-nl1om8{padding:var(--block-padding)}.hidden.svelte-nl1om8{display:none}.hide-container.svelte-nl1om8{margin:0;box-shadow:none;--block-border-width:0;background:transparent;padding:0;overflow:visible}div.svelte-1hnfib2{margin-bottom:var(--spacing-lg);color:var(--block-info-text-color);font-weight:var(--block-info-text-weight);font-size:var(--block-info-text-size);line-height:var(--line-sm)}span.has-info.svelte-22c38v{margin-bottom:var(--spacing-xs)}span.svelte-22c38v:not(.has-info){margin-bottom:var(--spacing-lg)}span.svelte-22c38v{display:inline-block;position:relative;z-index:var(--layer-4);border:solid var(--block-title-border-width) var(--block-title-border-color);border-radius:var(--block-title-radius);background:var(--block-title-background-fill);padding:var(--block-title-padding);color:var(--block-title-text-color);font-weight:var(--block-title-text-weight);font-size:var(--block-title-text-size);line-height:var(--line-sm)}.hide.svelte-22c38v{margin:0;height:0}label.svelte-9gxdi0{display:inline-flex;align-items:center;z-index:var(--layer-2);box-shadow:var(--block-label-shadow);border:var(--block-label-border-width) solid var(--border-color-primary);border-top:none;border-left:none;border-radius:var(--block-label-radius);background:var(--block-label-background-fill);padding:var(--block-label-padding);pointer-events:none;color:var(--block-label-text-color);font-weight:var(--block-label-text-weight);font-size:var(--block-label-text-size);line-height:var(--line-sm)}.gr-group label.svelte-9gxdi0{border-top-left-radius:0}label.float.svelte-9gxdi0{position:absolute;top:var(--block-label-margin);left:var(--block-label-margin)}label.svelte-9gxdi0:not(.float){position:static;margin-top:var(--block-label-margin);margin-left:var(--block-label-margin)}.hide.svelte-9gxdi0{height:0}span.svelte-9gxdi0{opacity:.8;margin-right:var(--size-2);width:calc(var(--block-label-text-size) - 1px);height:calc(var(--block-label-text-size) - 1px)}.hide-label.svelte-9gxdi0{box-shadow:none;border-width:0;background:transparent;overflow:visible}button.svelte-1lrphxw{display:flex;justify-content:center;align-items:center;gap:1px;z-index:var(--layer-2);border-radius:var(--radius-sm);color:var(--block-label-text-color);border:1px solid transparent}button[disabled].svelte-1lrphxw{opacity:.5;box-shadow:none}button[disabled].svelte-1lrphxw:hover{cursor:not-allowed}.padded.svelte-1lrphxw{padding:2px;background:var(--bg-color);box-shadow:var(--shadow-drop);border:1px solid var(--button-secondary-border-color)}button.svelte-1lrphxw:hover,button.highlight.svelte-1lrphxw{cursor:pointer;color:var(--color-accent)}.padded.svelte-1lrphxw:hover{border:2px solid var(--button-secondary-border-color-hover);padding:1px;color:var(--block-label-text-color)}span.svelte-1lrphxw{padding:0 1px;font-size:10px}div.svelte-1lrphxw{padding:2px;display:flex;align-items:flex-end}.small.svelte-1lrphxw{width:14px;height:14px}.medium.svelte-1lrphxw{width:20px;height:20px}.large.svelte-1lrphxw{width:22px;height:22px}.pending.svelte-1lrphxw{animation:svelte-1lrphxw-flash .5s infinite}@keyframes svelte-1lrphxw-flash{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}.transparent.svelte-1lrphxw{background:transparent;border:none;box-shadow:none}.empty.svelte-3w3rth{display:flex;justify-content:center;align-items:center;margin-top:calc(0px - var(--size-6));height:var(--size-full)}.icon.svelte-3w3rth{opacity:.5;height:var(--size-5);color:var(--body-text-color)}.small.svelte-3w3rth{min-height:calc(var(--size-32) - 20px)}.large.svelte-3w3rth{min-height:calc(var(--size-64) - 20px)}.unpadded_box.svelte-3w3rth{margin-top:0}.small_parent.svelte-3w3rth{min-height:100%!important}.dropdown-arrow.svelte-145leq6{fill:currentColor}.wrap.svelte-kzcjhc{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:var(--size-60);color:var(--block-label-text-color);line-height:var(--line-md);height:100%;padding-top:var(--size-3)}.or.svelte-kzcjhc{color:var(--body-text-color-subdued);display:flex}.icon-wrap.svelte-kzcjhc{width:30px;margin-bottom:var(--spacing-lg)}@media (--screen-md){.wrap.svelte-kzcjhc{font-size:var(--text-lg)}}.hovered.svelte-kzcjhc{color:var(--color-accent)}div.svelte-q32hvf{border-top:1px solid transparent;display:flex;max-height:100%;justify-content:center;align-items:center;gap:var(--spacing-sm);height:auto;align-items:flex-end;color:var(--block-label-text-color);flex-shrink:0}.show_border.svelte-q32hvf{border-top:1px solid var(--block-border-color);margin-top:var(--spacing-xxl);box-shadow:var(--shadow-drop)}.source-selection.svelte-1jp3vgd{display:flex;align-items:center;justify-content:center;border-top:1px solid var(--border-color-primary);width:95%;bottom:0;left:0;right:0;margin-left:auto;margin-right:auto}.icon.svelte-1jp3vgd{width:22px;height:22px;margin:var(--spacing-lg) var(--spacing-xs);padding:var(--spacing-xs);color:var(--neutral-400);border-radius:var(--radius-md)}.selected.svelte-1jp3vgd{color:var(--color-accent)}.icon.svelte-1jp3vgd:hover,.icon.svelte-1jp3vgd:focus{color:var(--color-accent)}svg.svelte-43sxxs.svelte-43sxxs{width:var(--size-20);height:var(--size-20)}svg.svelte-43sxxs path.svelte-43sxxs{fill:var(--loader-color)}div.svelte-43sxxs.svelte-43sxxs{z-index:var(--layer-2)}.margin.svelte-43sxxs.svelte-43sxxs{margin:var(--size-4)}.wrap.svelte-1yk38uw.svelte-1yk38uw{display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:var(--layer-top);transition:opacity .1s ease-in-out;border-radius:var(--block-radius);background:var(--block-background-fill);padding:0 var(--size-6);max-height:var(--size-screen-h);overflow:hidden}.wrap.center.svelte-1yk38uw.svelte-1yk38uw{top:0;right:0;left:0}.wrap.default.svelte-1yk38uw.svelte-1yk38uw{top:0;right:0;bottom:0;left:0}.hide.svelte-1yk38uw.svelte-1yk38uw{opacity:0;pointer-events:none}.generating.svelte-1yk38uw.svelte-1yk38uw{animation:svelte-1yk38uw-pulse 2s cubic-bezier(.4,0,.6,1) infinite;border:2px solid var(--color-accent);background:transparent;z-index:var(--layer-1)}.translucent.svelte-1yk38uw.svelte-1yk38uw{background:none}@keyframes svelte-1yk38uw-pulse{0%,to{opacity:1}50%{opacity:.5}}.loading.svelte-1yk38uw.svelte-1yk38uw{z-index:var(--layer-2);color:var(--body-text-color)}.eta-bar.svelte-1yk38uw.svelte-1yk38uw{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:left;opacity:.8;z-index:var(--layer-1);transition:10ms;background:var(--background-fill-secondary)}.progress-bar-wrap.svelte-1yk38uw.svelte-1yk38uw{border:1px solid var(--border-color-primary);background:var(--background-fill-primary);width:55.5%;height:var(--size-4)}.progress-bar.svelte-1yk38uw.svelte-1yk38uw{transform-origin:left;background-color:var(--loader-color);width:var(--size-full);height:var(--size-full)}.progress-level.svelte-1yk38uw.svelte-1yk38uw{display:flex;flex-direction:column;align-items:center;gap:1;z-index:var(--layer-2);width:var(--size-full)}.progress-level-inner.svelte-1yk38uw.svelte-1yk38uw{margin:var(--size-2) auto;color:var(--body-text-color);font-size:var(--text-sm);font-family:var(--font-mono)}.meta-text.svelte-1yk38uw.svelte-1yk38uw{position:absolute;top:0;right:0;z-index:var(--layer-2);padding:var(--size-1) var(--size-2);font-size:var(--text-sm);font-family:var(--font-mono)}.meta-text-center.svelte-1yk38uw.svelte-1yk38uw{display:flex;position:absolute;top:0;right:0;justify-content:center;align-items:center;transform:translateY(var(--size-6));z-index:var(--layer-2);padding:var(--size-1) var(--size-2);font-size:var(--text-sm);font-family:var(--font-mono);text-align:center}.error.svelte-1yk38uw.svelte-1yk38uw{box-shadow:var(--shadow-drop);border:solid 1px var(--error-border-color);border-radius:var(--radius-full);background:var(--error-background-fill);padding-right:var(--size-4);padding-left:var(--size-4);color:var(--error-text-color);font-weight:var(--weight-semibold);font-size:var(--text-lg);line-height:var(--line-lg);font-family:var(--font)}.minimal.svelte-1yk38uw .progress-text.svelte-1yk38uw{background:var(--block-background-fill)}.border.svelte-1yk38uw.svelte-1yk38uw{border:1px solid var(--border-color-primary)}.clear-status.svelte-1yk38uw.svelte-1yk38uw{position:absolute;display:flex;top:var(--size-2);right:var(--size-2);justify-content:flex-end;gap:var(--spacing-sm);z-index:var(--layer-1)}.toast-body.svelte-solcu7{display:flex;position:relative;right:0;left:0;align-items:center;margin:var(--size-6) var(--size-4);margin:auto;border-radius:var(--container-radius);overflow:hidden;pointer-events:auto}.toast-body.error.svelte-solcu7{border:1px solid var(--color-red-700);background:var(--color-red-50)}.dark .toast-body.error.svelte-solcu7{border:1px solid var(--color-red-500);background-color:var(--color-grey-950)}.toast-body.warning.svelte-solcu7{border:1px solid var(--color-yellow-700);background:var(--color-yellow-50)}.dark .toast-body.warning.svelte-solcu7{border:1px solid var(--color-yellow-500);background-color:var(--color-grey-950)}.toast-body.info.svelte-solcu7{border:1px solid var(--color-grey-700);background:var(--color-grey-50)}.dark .toast-body.info.svelte-solcu7{border:1px solid var(--color-grey-500);background-color:var(--color-grey-950)}.toast-title.svelte-solcu7{display:flex;align-items:center;font-weight:var(--weight-bold);font-size:var(--text-lg);line-height:var(--line-sm);text-transform:capitalize}.toast-title.error.svelte-solcu7{color:var(--color-red-700)}.dark .toast-title.error.svelte-solcu7{color:var(--color-red-50)}.toast-title.warning.svelte-solcu7{color:var(--color-yellow-700)}.dark .toast-title.warning.svelte-solcu7{color:var(--color-yellow-50)}.toast-title.info.svelte-solcu7{color:var(--color-grey-700)}.dark .toast-title.info.svelte-solcu7{color:var(--color-grey-50)}.toast-close.svelte-solcu7{margin:0 var(--size-3);border-radius:var(--size-3);padding:0px var(--size-1-5);font-size:var(--size-5);line-height:var(--size-5)}.toast-close.error.svelte-solcu7{color:var(--color-red-700)}.dark .toast-close.error.svelte-solcu7{color:var(--color-red-500)}.toast-close.warning.svelte-solcu7{color:var(--color-yellow-700)}.dark .toast-close.warning.svelte-solcu7{color:var(--color-yellow-500)}.toast-close.info.svelte-solcu7{color:var(--color-grey-700)}.dark .toast-close.info.svelte-solcu7{color:var(--color-grey-500)}.toast-text.svelte-solcu7{font-size:var(--text-lg)}.toast-text.error.svelte-solcu7{color:var(--color-red-700)}.dark .toast-text.error.svelte-solcu7{color:var(--color-red-50)}.toast-text.warning.svelte-solcu7{color:var(--color-yellow-700)}.dark .toast-text.warning.svelte-solcu7{color:var(--color-yellow-50)}.toast-text.info.svelte-solcu7{color:var(--color-grey-700)}.dark .toast-text.info.svelte-solcu7{color:var(--color-grey-50)}.toast-details.svelte-solcu7{margin:var(--size-3) var(--size-3) var(--size-3) 0;width:100%}.toast-icon.svelte-solcu7{display:flex;position:absolute;position:relative;flex-shrink:0;justify-content:center;align-items:center;margin:var(--size-2);border-radius:var(--radius-full);padding:var(--size-1);padding-left:calc(var(--size-1) - 1px);width:35px;height:35px}.toast-icon.error.svelte-solcu7{color:var(--color-red-700)}.dark .toast-icon.error.svelte-solcu7{color:var(--color-red-500)}.toast-icon.warning.svelte-solcu7{color:var(--color-yellow-700)}.dark .toast-icon.warning.svelte-solcu7{color:var(--color-yellow-500)}.toast-icon.info.svelte-solcu7{color:var(--color-grey-700)}.dark .toast-icon.info.svelte-solcu7{color:var(--color-grey-500)}@keyframes svelte-solcu7-countdown{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.timer.svelte-solcu7{position:absolute;bottom:0;left:0;transform-origin:0 0;animation:svelte-solcu7-countdown 10s linear forwards;width:100%;height:var(--size-1)}.timer.error.svelte-solcu7{background:var(--color-red-700)}.dark .timer.error.svelte-solcu7{background:var(--color-red-500)}.timer.warning.svelte-solcu7{background:var(--color-yellow-700)}.dark .timer.warning.svelte-solcu7{background:var(--color-yellow-500)}.timer.info.svelte-solcu7{background:var(--color-grey-700)}.dark .timer.info.svelte-solcu7{background:var(--color-grey-500)}.toast-wrap.svelte-gatr8h{display:flex;position:fixed;top:var(--size-4);right:var(--size-4);flex-direction:column;align-items:end;gap:var(--size-2);z-index:var(--layer-top);width:calc(100% - var(--size-8))}@media (--screen-sm){.toast-wrap.svelte-gatr8h{width:calc(var(--size-96) + var(--size-10))}}.container.svelte-giydt1 img{width:100%;height:100%}.container.selected.svelte-giydt1.svelte-giydt1{border-color:var(--border-color-accent)}.container.table.svelte-giydt1.svelte-giydt1{margin:0 auto;border:2px solid var(--border-color-primary);border-radius:var(--radius-lg);overflow:hidden;width:var(--size-20);height:var(--size-20);object-fit:cover}.container.gallery.svelte-giydt1.svelte-giydt1{height:var(--size-20);max-height:var(--size-20);object-fit:cover}.container.svelte-giydt1 img.svelte-giydt1{object-fit:cover}div.viewer.svelte-ta7zm3{width:100%}div.viewer.svelte-ta7zm3>canvas{display:block;width:100%;height:100%}
|
src/demo/app.py
CHANGED
@@ -97,6 +97,16 @@ with gr.Blocks() as demo:
|
|
97 |
img = gr.Image(interactive=True, label="Image")
|
98 |
with gr.Column():
|
99 |
stream_blur = gr.Button("Stream Repeated Blur")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
100 |
|
101 |
with gr.Tab("Dynamic RRD"):
|
102 |
pending_cleanup = gr.State(
|
@@ -114,6 +124,20 @@ with gr.Blocks() as demo:
|
|
114 |
)
|
115 |
with gr.Row():
|
116 |
create_rrd = gr.Button("Create RRD")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
117 |
|
118 |
with gr.Tab("Hosted RRD"):
|
119 |
with gr.Row():
|
@@ -127,23 +151,16 @@ with gr.Blocks() as demo:
|
|
127 |
f"{rr.bindings.get_app_url()}/examples/plots.rrd",
|
128 |
],
|
129 |
)
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
create_rrd.click(
|
141 |
-
create_cube_rrd,
|
142 |
-
inputs=[x_count, y_count, z_count, pending_cleanup],
|
143 |
-
outputs=[viewer],
|
144 |
-
)
|
145 |
-
|
146 |
-
choose_rrd.change(lambda x: x, inputs=[choose_rrd], outputs=[viewer])
|
147 |
|
148 |
|
149 |
if __name__ == "__main__":
|
|
|
97 |
img = gr.Image(interactive=True, label="Image")
|
98 |
with gr.Column():
|
99 |
stream_blur = gr.Button("Stream Repeated Blur")
|
100 |
+
with gr.Row():
|
101 |
+
viewer = Rerun(
|
102 |
+
streaming=True,
|
103 |
+
panel_states={
|
104 |
+
"time": "collapsed",
|
105 |
+
"blueprint": "hidden",
|
106 |
+
"selection": "hidden",
|
107 |
+
},
|
108 |
+
)
|
109 |
+
stream_blur.click(streaming_repeated_blur, inputs=[img], outputs=[viewer])
|
110 |
|
111 |
with gr.Tab("Dynamic RRD"):
|
112 |
pending_cleanup = gr.State(
|
|
|
124 |
)
|
125 |
with gr.Row():
|
126 |
create_rrd = gr.Button("Create RRD")
|
127 |
+
with gr.Row():
|
128 |
+
viewer = Rerun(
|
129 |
+
streaming=True,
|
130 |
+
panel_states={
|
131 |
+
"time": "collapsed",
|
132 |
+
"blueprint": "hidden",
|
133 |
+
"selection": "hidden",
|
134 |
+
},
|
135 |
+
)
|
136 |
+
create_rrd.click(
|
137 |
+
create_cube_rrd,
|
138 |
+
inputs=[x_count, y_count, z_count, pending_cleanup],
|
139 |
+
outputs=[viewer],
|
140 |
+
)
|
141 |
|
142 |
with gr.Tab("Hosted RRD"):
|
143 |
with gr.Row():
|
|
|
151 |
f"{rr.bindings.get_app_url()}/examples/plots.rrd",
|
152 |
],
|
153 |
)
|
154 |
+
with gr.Row():
|
155 |
+
viewer = Rerun(
|
156 |
+
streaming=True,
|
157 |
+
panel_states={
|
158 |
+
"time": "collapsed",
|
159 |
+
"blueprint": "hidden",
|
160 |
+
"selection": "hidden",
|
161 |
+
},
|
162 |
+
)
|
163 |
+
choose_rrd.change(lambda x: x, inputs=[choose_rrd], outputs=[viewer])
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
164 |
|
165 |
|
166 |
if __name__ == "__main__":
|
src/demo/space.py
CHANGED
@@ -3,7 +3,7 @@ import gradio as gr
|
|
3 |
from app import demo as app
|
4 |
import os
|
5 |
|
6 |
-
_docs = {'Rerun': {'description': 'Creates a Rerun viewer component that can be used to display the output of a Rerun stream.', 'members': {'__init__': {'value': {'type': 'list[pathlib.Path | str]\n | pathlib.Path\n | str\n | bytes\n | Callable\n | None', 'default': 'None', 'description': 'Takes a singular or list of RRD resources. Each RRD can be a Path, a string containing a url, or a binary blob containing encoded RRD data. If callable, the function will be called whenever the app loads to set the initial value of the component.'}, 'label': {'type': 'str | None', 'default': 'None', 'description': 'The label for this component. Appears above the component and is also used as the header if there are a table of examples for this component. If None and used in a `gr.Interface`, the label will be the name of the parameter this component is assigned to.'}, 'every': {'type': 'float | None', 'default': 'None', 'description': "If `value` is a callable, run the function 'every' number of seconds while the client connection is open. Has no effect otherwise. Queue must be enabled. The event can be accessed (e.g. to cancel it) via this component's .load_event attribute."}, 'show_label': {'type': 'bool | None', 'default': 'None', 'description': 'if True, will display label.'}, 'container': {'type': 'bool', 'default': 'True', 'description': 'If True, will place the component in a container - providing some extra padding around the border.'}, 'scale': {'type': 'int | None', 'default': 'None', 'description': 'relative size compared to adjacent Components. For example if Components A and B are in a Row, and A has scale=2, and B has scale=1, A will be twice as wide as B. Should be an integer. scale applies in Rows, and to top-level Components in Blocks where fill_height=True.'}, 'min_width': {'type': 'int', 'default': '160', 'description': 'minimum pixel width, will wrap if not sufficient screen space to satisfy this value. If a certain scale value results in this Component being narrower than min_width, the min_width parameter will be respected first.'}, 'height': {'type': 'int | str', 'default': '640', 'description': 'height of component in pixels. If a string is provided, will be interpreted as a CSS value. If None, will be set to 640px.'}, 'visible': {'type': 'bool', 'default': 'True', 'description': 'If False, component will be hidden.'}, 'streaming': {'type': 'bool', 'default': 'False', 'description': 'If True, the data should be incrementally yielded from the source as `bytes` returned by calling `.read()` on an `rr.binary_stream()`'}, 'elem_id': {'type': 'str | None', 'default': 'None', 'description': 'An optional string that is assigned as the id of this component in the HTML DOM. Can be used for targeting CSS styles.'}, 'elem_classes': {'type': 'list[str] | str | None', 'default': 'None', 'description': 'An optional list of strings that are assigned as the classes of this component in the HTML DOM. Can be used for targeting CSS styles.'}, 'render': {'type': 'bool', 'default': 'True', 'description': 'If False, component will not render be rendered in the Blocks context. Should be used if the intention is to assign event listeners now but render the component later.'}}, 'postprocess': {'value': {'type': 'list[pathlib.Path | str] | pathlib.Path | str | bytes', 'description': 'Expects'}}, 'preprocess': {'return': {'type': 'RerunData | None', 'description': 'A RerunData object.'}, 'value': None}}, 'events': {}}, '__meta__': {'additional_interfaces': {'RerunData': {'source': 'class RerunData(GradioRootModel):\n root: list[FileData | str]'}}, 'user_fn_refs': {'Rerun': ['RerunData']}}}
|
7 |
|
8 |
abs_path = os.path.join(os.path.dirname(__file__), "css.css")
|
9 |
|
@@ -137,6 +137,16 @@ with gr.Blocks() as demo:
|
|
137 |
img = gr.Image(interactive=True, label="Image")
|
138 |
with gr.Column():
|
139 |
stream_blur = gr.Button("Stream Repeated Blur")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
140 |
|
141 |
with gr.Tab("Dynamic RRD"):
|
142 |
pending_cleanup = gr.State(
|
@@ -154,6 +164,20 @@ with gr.Blocks() as demo:
|
|
154 |
)
|
155 |
with gr.Row():
|
156 |
create_rrd = gr.Button("Create RRD")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
157 |
|
158 |
with gr.Tab("Hosted RRD"):
|
159 |
with gr.Row():
|
@@ -167,23 +191,16 @@ with gr.Blocks() as demo:
|
|
167 |
f"{rr.bindings.get_app_url()}/examples/plots.rrd",
|
168 |
],
|
169 |
)
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
create_rrd.click(
|
181 |
-
create_cube_rrd,
|
182 |
-
inputs=[x_count, y_count, z_count, pending_cleanup],
|
183 |
-
outputs=[viewer],
|
184 |
-
)
|
185 |
-
|
186 |
-
choose_rrd.change(lambda x: x, inputs=[choose_rrd], outputs=[viewer])
|
187 |
|
188 |
|
189 |
if __name__ == "__main__":
|
|
|
3 |
from app import demo as app
|
4 |
import os
|
5 |
|
6 |
+
_docs = {'Rerun': {'description': 'Creates a Rerun viewer component that can be used to display the output of a Rerun stream.', 'members': {'__init__': {'value': {'type': 'list[pathlib.Path | str]\n | pathlib.Path\n | str\n | bytes\n | Callable\n | None', 'default': 'None', 'description': 'Takes a singular or list of RRD resources. Each RRD can be a Path, a string containing a url, or a binary blob containing encoded RRD data. If callable, the function will be called whenever the app loads to set the initial value of the component.'}, 'label': {'type': 'str | None', 'default': 'None', 'description': 'The label for this component. Appears above the component and is also used as the header if there are a table of examples for this component. If None and used in a `gr.Interface`, the label will be the name of the parameter this component is assigned to.'}, 'every': {'type': 'float | None', 'default': 'None', 'description': "If `value` is a callable, run the function 'every' number of seconds while the client connection is open. Has no effect otherwise. Queue must be enabled. The event can be accessed (e.g. to cancel it) via this component's .load_event attribute."}, 'show_label': {'type': 'bool | None', 'default': 'None', 'description': 'if True, will display label.'}, 'container': {'type': 'bool', 'default': 'True', 'description': 'If True, will place the component in a container - providing some extra padding around the border.'}, 'scale': {'type': 'int | None', 'default': 'None', 'description': 'relative size compared to adjacent Components. For example if Components A and B are in a Row, and A has scale=2, and B has scale=1, A will be twice as wide as B. Should be an integer. scale applies in Rows, and to top-level Components in Blocks where fill_height=True.'}, 'min_width': {'type': 'int', 'default': '160', 'description': 'minimum pixel width, will wrap if not sufficient screen space to satisfy this value. If a certain scale value results in this Component being narrower than min_width, the min_width parameter will be respected first.'}, 'height': {'type': 'int | str', 'default': '640', 'description': 'height of component in pixels. If a string is provided, will be interpreted as a CSS value. If None, will be set to 640px.'}, 'visible': {'type': 'bool', 'default': 'True', 'description': 'If False, component will be hidden.'}, 'streaming': {'type': 'bool', 'default': 'False', 'description': 'If True, the data should be incrementally yielded from the source as `bytes` returned by calling `.read()` on an `rr.binary_stream()`'}, 'elem_id': {'type': 'str | None', 'default': 'None', 'description': 'An optional string that is assigned as the id of this component in the HTML DOM. Can be used for targeting CSS styles.'}, 'elem_classes': {'type': 'list[str] | str | None', 'default': 'None', 'description': 'An optional list of strings that are assigned as the classes of this component in the HTML DOM. Can be used for targeting CSS styles.'}, 'render': {'type': 'bool', 'default': 'True', 'description': 'If False, component will not render be rendered in the Blocks context. Should be used if the intention is to assign event listeners now but render the component later.'}, 'panel_states': {'type': 'dict[str, Any] | None', 'default': 'None', 'description': 'Force viewer panels to a specific state. Any panels set cannot be toggled by the user in the viewer. Panel names are "top", "blueprint", "selection", and "time". States are "hidden", "collapsed", and "expanded".'}}, 'postprocess': {'value': {'type': 'list[pathlib.Path | str] | pathlib.Path | str | bytes', 'description': 'Expects'}}, 'preprocess': {'return': {'type': 'RerunData | None', 'description': 'A RerunData object.'}, 'value': None}}, 'events': {}}, '__meta__': {'additional_interfaces': {'RerunData': {'source': 'class RerunData(GradioRootModel):\n root: list[FileData | str]'}}, 'user_fn_refs': {'Rerun': ['RerunData']}}}
|
7 |
|
8 |
abs_path = os.path.join(os.path.dirname(__file__), "css.css")
|
9 |
|
|
|
137 |
img = gr.Image(interactive=True, label="Image")
|
138 |
with gr.Column():
|
139 |
stream_blur = gr.Button("Stream Repeated Blur")
|
140 |
+
with gr.Row():
|
141 |
+
viewer = Rerun(
|
142 |
+
streaming=True,
|
143 |
+
panel_states={
|
144 |
+
"time": "collapsed",
|
145 |
+
"blueprint": "hidden",
|
146 |
+
"selection": "hidden",
|
147 |
+
},
|
148 |
+
)
|
149 |
+
stream_blur.click(streaming_repeated_blur, inputs=[img], outputs=[viewer])
|
150 |
|
151 |
with gr.Tab("Dynamic RRD"):
|
152 |
pending_cleanup = gr.State(
|
|
|
164 |
)
|
165 |
with gr.Row():
|
166 |
create_rrd = gr.Button("Create RRD")
|
167 |
+
with gr.Row():
|
168 |
+
viewer = Rerun(
|
169 |
+
streaming=True,
|
170 |
+
panel_states={
|
171 |
+
"time": "collapsed",
|
172 |
+
"blueprint": "hidden",
|
173 |
+
"selection": "hidden",
|
174 |
+
},
|
175 |
+
)
|
176 |
+
create_rrd.click(
|
177 |
+
create_cube_rrd,
|
178 |
+
inputs=[x_count, y_count, z_count, pending_cleanup],
|
179 |
+
outputs=[viewer],
|
180 |
+
)
|
181 |
|
182 |
with gr.Tab("Hosted RRD"):
|
183 |
with gr.Row():
|
|
|
191 |
f"{rr.bindings.get_app_url()}/examples/plots.rrd",
|
192 |
],
|
193 |
)
|
194 |
+
with gr.Row():
|
195 |
+
viewer = Rerun(
|
196 |
+
streaming=True,
|
197 |
+
panel_states={
|
198 |
+
"time": "collapsed",
|
199 |
+
"blueprint": "hidden",
|
200 |
+
"selection": "hidden",
|
201 |
+
},
|
202 |
+
)
|
203 |
+
choose_rrd.change(lambda x: x, inputs=[choose_rrd], outputs=[viewer])
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
204 |
|
205 |
|
206 |
if __name__ == "__main__":
|
src/frontend/Index.svelte
CHANGED
@@ -8,7 +8,7 @@
|
|
8 |
import "./app.css";
|
9 |
import type { Gradio } from "@gradio/utils";
|
10 |
|
11 |
-
import { WebViewer,
|
12 |
import { onMount } from "svelte";
|
13 |
|
14 |
import { Block } from "@gradio/atoms";
|
@@ -32,6 +32,7 @@
|
|
32 |
export let loading_status: LoadingStatus;
|
33 |
export let interactive: boolean;
|
34 |
export let streaming: boolean;
|
|
|
35 |
|
36 |
let old_value: null | BinaryStream | (FileData | string)[] = null;
|
37 |
|
@@ -50,11 +51,7 @@
|
|
50 |
let patched_loading_status: LoadingStatus;
|
51 |
|
52 |
function try_load_value() {
|
53 |
-
if (
|
54 |
-
JSON.stringify(value) !== JSON.stringify(old_value) &&
|
55 |
-
rr != undefined &&
|
56 |
-
rr.ready
|
57 |
-
) {
|
58 |
old_value = value;
|
59 |
if (!Array.isArray(value)) {
|
60 |
if (value.is_stream) {
|
@@ -76,12 +73,32 @@
|
|
76 |
}
|
77 |
}
|
78 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
79 |
onMount(() => {
|
80 |
rr = new WebViewer();
|
81 |
-
rr.
|
82 |
try_load_value();
|
|
|
83 |
});
|
|
|
84 |
|
|
|
|
|
|
|
|
|
|
|
|
|
85 |
return () => {
|
86 |
rr.stop();
|
87 |
};
|
@@ -92,12 +109,14 @@
|
|
92 |
|
93 |
// In streaming mode, we want the UI to be interactive even while the model is generating
|
94 |
// so set the status to complete.
|
|
|
95 |
if (streaming && patched_loading_status?.status === "generating") {
|
96 |
patched_loading_status.status = "complete";
|
97 |
}
|
98 |
}
|
99 |
|
100 |
$: value, try_load_value();
|
|
|
101 |
</script>
|
102 |
|
103 |
{#if !interactive}
|
@@ -128,8 +147,7 @@
|
|
128 |
width: 100%;
|
129 |
|
130 |
:global(> canvas) {
|
131 |
-
|
132 |
-
top: unset !important;
|
133 |
width: 100%;
|
134 |
height: 100%;
|
135 |
}
|
|
|
8 |
import "./app.css";
|
9 |
import type { Gradio } from "@gradio/utils";
|
10 |
|
11 |
+
import { WebViewer, type Panel, type PanelState } from "@rerun-io/web-viewer";
|
12 |
import { onMount } from "svelte";
|
13 |
|
14 |
import { Block } from "@gradio/atoms";
|
|
|
32 |
export let loading_status: LoadingStatus;
|
33 |
export let interactive: boolean;
|
34 |
export let streaming: boolean;
|
35 |
+
export let panel_states: { [K in Panel]: PanelState } | null = null;
|
36 |
|
37 |
let old_value: null | BinaryStream | (FileData | string)[] = null;
|
38 |
|
|
|
51 |
let patched_loading_status: LoadingStatus;
|
52 |
|
53 |
function try_load_value() {
|
54 |
+
if (JSON.stringify(value) !== JSON.stringify(old_value) && rr != undefined && rr.ready) {
|
|
|
|
|
|
|
|
|
55 |
old_value = value;
|
56 |
if (!Array.isArray(value)) {
|
57 |
if (value.is_stream) {
|
|
|
73 |
}
|
74 |
}
|
75 |
|
76 |
+
const is_panel = (v: string): v is Panel => ["top", "blueprint", "selection", "time"].includes(v);
|
77 |
+
|
78 |
+
function setup_panels() {
|
79 |
+
if (rr?.ready && panel_states) {
|
80 |
+
for (const panel in panel_states) {
|
81 |
+
// ignore extra properties
|
82 |
+
if (!is_panel(panel)) continue;
|
83 |
+
rr.override_panel_state(panel, panel_states[panel]);
|
84 |
+
}
|
85 |
+
}
|
86 |
+
}
|
87 |
+
|
88 |
onMount(() => {
|
89 |
rr = new WebViewer();
|
90 |
+
rr.on("ready", () => {
|
91 |
try_load_value();
|
92 |
+
setup_panels();
|
93 |
});
|
94 |
+
rr.on("fullscreen", (on) => rr.toggle_panel_overrides(!on));
|
95 |
|
96 |
+
rr.start(undefined, ref, {
|
97 |
+
hide_welcome_screen: true,
|
98 |
+
allow_fullscreen: true,
|
99 |
+
width: "",
|
100 |
+
height: "",
|
101 |
+
});
|
102 |
return () => {
|
103 |
rr.stop();
|
104 |
};
|
|
|
109 |
|
110 |
// In streaming mode, we want the UI to be interactive even while the model is generating
|
111 |
// so set the status to complete.
|
112 |
+
// @ts-expect-error: `status` union does not include `generating`
|
113 |
if (streaming && patched_loading_status?.status === "generating") {
|
114 |
patched_loading_status.status = "complete";
|
115 |
}
|
116 |
}
|
117 |
|
118 |
$: value, try_load_value();
|
119 |
+
$: panel_states, setup_panels();
|
120 |
</script>
|
121 |
|
122 |
{#if !interactive}
|
|
|
147 |
width: 100%;
|
148 |
|
149 |
:global(> canvas) {
|
150 |
+
display: block;
|
|
|
151 |
width: 100%;
|
152 |
height: 100%;
|
153 |
}
|
src/frontend/gradio.config.js
CHANGED
@@ -1,9 +1,27 @@
|
|
1 |
import tailwindcss from "@tailwindcss/vite";
|
2 |
import wasm from "vite-plugin-wasm";
|
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
export default {
|
5 |
-
plugins: [wasm(), tailwindcss()],
|
6 |
svelte: {
|
7 |
preprocess: [],
|
8 |
},
|
|
|
|
|
|
|
9 |
};
|
|
|
|
1 |
import tailwindcss from "@tailwindcss/vite";
|
2 |
import wasm from "vite-plugin-wasm";
|
3 |
|
4 |
+
// `@rerun-io/web-viewer` uses `new URL("./re_viewer_bg.wasm", import.meta.url)` since 0.17,
|
5 |
+
// which does not play well with `vite dev`: https://github.com/rerun-io/rerun/issues/6815
|
6 |
+
// we need to patch the config, but `gradio` does not let us directly set the `optimize` option.
|
7 |
+
/** @type {() => import("vite").Plugin} */
|
8 |
+
const hack = () => ({
|
9 |
+
config() {
|
10 |
+
return {
|
11 |
+
optimizeDeps: {
|
12 |
+
exclude: process.env.NODE_ENV === "production" ? [] : ["@rerun-io/web-viewer"],
|
13 |
+
},
|
14 |
+
};
|
15 |
+
},
|
16 |
+
});
|
17 |
+
|
18 |
export default {
|
19 |
+
plugins: [wasm(), tailwindcss(), hack()],
|
20 |
svelte: {
|
21 |
preprocess: [],
|
22 |
},
|
23 |
+
build: {
|
24 |
+
target: "esnext",
|
25 |
+
},
|
26 |
};
|
27 |
+
|
src/frontend/package-lock.json
CHANGED
@@ -16,7 +16,7 @@
|
|
16 |
"@gradio/upload": "0.9.0",
|
17 |
"@gradio/utils": "0.4.0",
|
18 |
"@gradio/wasm": "0.10.0",
|
19 |
-
"@rerun-io/web-viewer": "
|
20 |
"cropperjs": "^1.5.12",
|
21 |
"lazy-brush": "^1.0.1",
|
22 |
"resize-observer-polyfill": "^1.5.1",
|
@@ -25,7 +25,8 @@
|
|
25 |
"devDependencies": {
|
26 |
"@gradio/preview": "0.8.3",
|
27 |
"@tailwindcss/vite": "^4.0.0-alpha.14",
|
28 |
-
"tailwindcss": "^4.0.0-alpha.14"
|
|
|
29 |
}
|
30 |
},
|
31 |
"../../rerun/rerun_js/web-viewer": {
|
@@ -704,9 +705,9 @@
|
|
704 |
}
|
705 |
},
|
706 |
"node_modules/@rerun-io/web-viewer": {
|
707 |
-
"version": "0.
|
708 |
-
"resolved": "https://registry.npmjs.org/@rerun-io/web-viewer/-/web-viewer-0.
|
709 |
-
"integrity": "sha512-
|
710 |
"license": "MIT"
|
711 |
},
|
712 |
"node_modules/@rollup/plugin-sucrase": {
|
@@ -2607,7 +2608,6 @@
|
|
2607 |
"cpu": [
|
2608 |
"arm64"
|
2609 |
],
|
2610 |
-
"dev": true,
|
2611 |
"optional": true,
|
2612 |
"os": [
|
2613 |
"darwin"
|
@@ -2627,7 +2627,6 @@
|
|
2627 |
"cpu": [
|
2628 |
"x64"
|
2629 |
],
|
2630 |
-
"dev": true,
|
2631 |
"optional": true,
|
2632 |
"os": [
|
2633 |
"darwin"
|
@@ -2647,7 +2646,6 @@
|
|
2647 |
"cpu": [
|
2648 |
"x64"
|
2649 |
],
|
2650 |
-
"dev": true,
|
2651 |
"optional": true,
|
2652 |
"os": [
|
2653 |
"freebsd"
|
@@ -2667,7 +2665,6 @@
|
|
2667 |
"cpu": [
|
2668 |
"arm"
|
2669 |
],
|
2670 |
-
"dev": true,
|
2671 |
"optional": true,
|
2672 |
"os": [
|
2673 |
"linux"
|
@@ -2687,7 +2684,6 @@
|
|
2687 |
"cpu": [
|
2688 |
"arm64"
|
2689 |
],
|
2690 |
-
"dev": true,
|
2691 |
"optional": true,
|
2692 |
"os": [
|
2693 |
"linux"
|
@@ -2707,7 +2703,6 @@
|
|
2707 |
"cpu": [
|
2708 |
"arm64"
|
2709 |
],
|
2710 |
-
"dev": true,
|
2711 |
"optional": true,
|
2712 |
"os": [
|
2713 |
"linux"
|
@@ -2727,7 +2722,6 @@
|
|
2727 |
"cpu": [
|
2728 |
"x64"
|
2729 |
],
|
2730 |
-
"dev": true,
|
2731 |
"optional": true,
|
2732 |
"os": [
|
2733 |
"linux"
|
@@ -2747,7 +2741,6 @@
|
|
2747 |
"cpu": [
|
2748 |
"x64"
|
2749 |
],
|
2750 |
-
"dev": true,
|
2751 |
"optional": true,
|
2752 |
"os": [
|
2753 |
"linux"
|
@@ -2767,7 +2760,6 @@
|
|
2767 |
"cpu": [
|
2768 |
"x64"
|
2769 |
],
|
2770 |
-
"dev": true,
|
2771 |
"optional": true,
|
2772 |
"os": [
|
2773 |
"win32"
|
|
|
16 |
"@gradio/upload": "0.9.0",
|
17 |
"@gradio/utils": "0.4.0",
|
18 |
"@gradio/wasm": "0.10.0",
|
19 |
+
"@rerun-io/web-viewer": "0.17.0",
|
20 |
"cropperjs": "^1.5.12",
|
21 |
"lazy-brush": "^1.0.1",
|
22 |
"resize-observer-polyfill": "^1.5.1",
|
|
|
25 |
"devDependencies": {
|
26 |
"@gradio/preview": "0.8.3",
|
27 |
"@tailwindcss/vite": "^4.0.0-alpha.14",
|
28 |
+
"tailwindcss": "^4.0.0-alpha.14",
|
29 |
+
"vite": "^5.2.9"
|
30 |
}
|
31 |
},
|
32 |
"../../rerun/rerun_js/web-viewer": {
|
|
|
705 |
}
|
706 |
},
|
707 |
"node_modules/@rerun-io/web-viewer": {
|
708 |
+
"version": "0.17.0",
|
709 |
+
"resolved": "https://registry.npmjs.org/@rerun-io/web-viewer/-/web-viewer-0.17.0.tgz",
|
710 |
+
"integrity": "sha512-pjdPvyTpM1flFoid8wf1rpGnH6+OmqzSzV20FOpc+gxx1w2Qq5GWmvDkRXHj6tbJyVManqQ5dk8OVJKn6P+F+g==",
|
711 |
"license": "MIT"
|
712 |
},
|
713 |
"node_modules/@rollup/plugin-sucrase": {
|
|
|
2608 |
"cpu": [
|
2609 |
"arm64"
|
2610 |
],
|
|
|
2611 |
"optional": true,
|
2612 |
"os": [
|
2613 |
"darwin"
|
|
|
2627 |
"cpu": [
|
2628 |
"x64"
|
2629 |
],
|
|
|
2630 |
"optional": true,
|
2631 |
"os": [
|
2632 |
"darwin"
|
|
|
2646 |
"cpu": [
|
2647 |
"x64"
|
2648 |
],
|
|
|
2649 |
"optional": true,
|
2650 |
"os": [
|
2651 |
"freebsd"
|
|
|
2665 |
"cpu": [
|
2666 |
"arm"
|
2667 |
],
|
|
|
2668 |
"optional": true,
|
2669 |
"os": [
|
2670 |
"linux"
|
|
|
2684 |
"cpu": [
|
2685 |
"arm64"
|
2686 |
],
|
|
|
2687 |
"optional": true,
|
2688 |
"os": [
|
2689 |
"linux"
|
|
|
2703 |
"cpu": [
|
2704 |
"arm64"
|
2705 |
],
|
|
|
2706 |
"optional": true,
|
2707 |
"os": [
|
2708 |
"linux"
|
|
|
2722 |
"cpu": [
|
2723 |
"x64"
|
2724 |
],
|
|
|
2725 |
"optional": true,
|
2726 |
"os": [
|
2727 |
"linux"
|
|
|
2741 |
"cpu": [
|
2742 |
"x64"
|
2743 |
],
|
|
|
2744 |
"optional": true,
|
2745 |
"os": [
|
2746 |
"linux"
|
|
|
2760 |
"cpu": [
|
2761 |
"x64"
|
2762 |
],
|
|
|
2763 |
"optional": true,
|
2764 |
"os": [
|
2765 |
"win32"
|
src/frontend/package.json
CHANGED
@@ -14,7 +14,7 @@
|
|
14 |
"@gradio/upload": "0.9.0",
|
15 |
"@gradio/utils": "0.4.0",
|
16 |
"@gradio/wasm": "0.10.0",
|
17 |
-
"@rerun-io/web-viewer": "
|
18 |
"cropperjs": "^1.5.12",
|
19 |
"lazy-brush": "^1.0.1",
|
20 |
"resize-observer-polyfill": "^1.5.1",
|
@@ -23,7 +23,8 @@
|
|
23 |
"devDependencies": {
|
24 |
"@gradio/preview": "0.8.3",
|
25 |
"@tailwindcss/vite": "^4.0.0-alpha.14",
|
26 |
-
"tailwindcss": "^4.0.0-alpha.14"
|
|
|
27 |
},
|
28 |
"main_changeset": true,
|
29 |
"main": "./Index.svelte",
|
@@ -32,4 +33,5 @@
|
|
32 |
"./example": "./Example.svelte",
|
33 |
"./package.json": "./package.json"
|
34 |
}
|
35 |
-
}
|
|
|
|
14 |
"@gradio/upload": "0.9.0",
|
15 |
"@gradio/utils": "0.4.0",
|
16 |
"@gradio/wasm": "0.10.0",
|
17 |
+
"@rerun-io/web-viewer": "0.17.0",
|
18 |
"cropperjs": "^1.5.12",
|
19 |
"lazy-brush": "^1.0.1",
|
20 |
"resize-observer-polyfill": "^1.5.1",
|
|
|
23 |
"devDependencies": {
|
24 |
"@gradio/preview": "0.8.3",
|
25 |
"@tailwindcss/vite": "^4.0.0-alpha.14",
|
26 |
+
"tailwindcss": "^4.0.0-alpha.14",
|
27 |
+
"vite": "^5.2.9"
|
28 |
},
|
29 |
"main_changeset": true,
|
30 |
"main": "./Index.svelte",
|
|
|
33 |
"./example": "./Example.svelte",
|
34 |
"./package.json": "./package.json"
|
35 |
}
|
36 |
+
}
|
37 |
+
|
src/pyproject.toml
CHANGED
@@ -8,7 +8,7 @@ build-backend = "hatchling.build"
|
|
8 |
|
9 |
[project]
|
10 |
name = "gradio_rerun"
|
11 |
-
version = "0.0.
|
12 |
description = "Rerun viewer with Gradio"
|
13 |
readme = "README.md"
|
14 |
license = "apache-2.0"
|
@@ -24,7 +24,7 @@ keywords = [
|
|
24 |
"rerun-viewer",
|
25 |
]
|
26 |
# Add dependencies here
|
27 |
-
dependencies = ["gradio>=4.0,<5.0", "rerun-sdk
|
28 |
classifiers = [
|
29 |
'Development Status :: 3 - Alpha',
|
30 |
'Operating System :: OS Independent',
|
@@ -50,7 +50,7 @@ repository = "https://github.com/radames/gradio-rerun-viewer"
|
|
50 |
# space = "your space url"
|
51 |
|
52 |
[project.optional-dependencies]
|
53 |
-
dev = ["build", "twine"]
|
54 |
|
55 |
[tool.hatch.build]
|
56 |
artifacts = ["/backend/gradio_rerun/templates", "*.pyi"]
|
|
|
8 |
|
9 |
[project]
|
10 |
name = "gradio_rerun"
|
11 |
+
version = "0.0.4"
|
12 |
description = "Rerun viewer with Gradio"
|
13 |
readme = "README.md"
|
14 |
license = "apache-2.0"
|
|
|
24 |
"rerun-viewer",
|
25 |
]
|
26 |
# Add dependencies here
|
27 |
+
dependencies = ["gradio>=4.0,<5.0", "rerun-sdk==0.17.0", "opencv-python"]
|
28 |
classifiers = [
|
29 |
'Development Status :: 3 - Alpha',
|
30 |
'Operating System :: OS Independent',
|
|
|
50 |
# space = "your space url"
|
51 |
|
52 |
[project.optional-dependencies]
|
53 |
+
dev = ["build", "twine", "opencv-python>=4.10.0"]
|
54 |
|
55 |
[tool.hatch.build]
|
56 |
artifacts = ["/backend/gradio_rerun/templates", "*.pyi"]
|