solara-ui 1.32.0__py2.py3-none-any.whl → 1.32.2__py2.py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- solara/__init__.py +1 -1
- solara/components/markdown.py +38 -27
- solara/server/static/solara_bootstrap.py +1 -1
- solara/server/templates/solara.html.j2 +6 -6
- solara/website/components/notebook.py +1 -1
- solara/website/pages/apps/scatter.py +1 -1
- solara/website/pages/changelog/changelog.md +21 -0
- solara/website/pages/documentation/advanced/content/20-understanding/40-routing.md +4 -4
- solara/website/pages/documentation/getting_started/content/04-tutorials/60-jupyter-dashboard-part1.py +50 -49
- solara/website/pages/documentation/getting_started/content/07-deploying/10-self-hosted.md +15 -1
- {solara_ui-1.32.0.dist-info → solara_ui-1.32.2.dist-info}/METADATA +1 -1
- {solara_ui-1.32.0.dist-info → solara_ui-1.32.2.dist-info}/RECORD +16 -16
- {solara_ui-1.32.0.data → solara_ui-1.32.2.data}/data/etc/jupyter/jupyter_notebook_config.d/solara.json +0 -0
- {solara_ui-1.32.0.data → solara_ui-1.32.2.data}/data/etc/jupyter/jupyter_server_config.d/solara.json +0 -0
- {solara_ui-1.32.0.dist-info → solara_ui-1.32.2.dist-info}/WHEEL +0 -0
- {solara_ui-1.32.0.dist-info → solara_ui-1.32.2.dist-info}/licenses/LICENSE +0 -0
solara/__init__.py
CHANGED
solara/components/markdown.py
CHANGED
|
@@ -341,34 +341,45 @@ def Markdown(md_text: str, unsafe_solara_execute=False, style: Union[str, Dict,
|
|
|
341
341
|
logger.exception("Error highlighting code: %s", src)
|
|
342
342
|
return repr(e)
|
|
343
343
|
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
"
|
|
344
|
+
if has_pymdownx:
|
|
345
|
+
return markdown.Markdown( # type: ignore
|
|
346
|
+
extensions=[
|
|
347
|
+
"pymdownx.highlight",
|
|
348
|
+
"pymdownx.superfences",
|
|
349
|
+
"pymdownx.emoji",
|
|
350
|
+
"toc", # so we get anchors for h1 h2 etc
|
|
351
|
+
"tables",
|
|
352
|
+
],
|
|
353
|
+
extension_configs={
|
|
354
|
+
"pymdownx.emoji": {
|
|
355
|
+
"emoji_index": _no_deep_copy_emojione,
|
|
356
|
+
},
|
|
357
|
+
"pymdownx.superfences": {
|
|
358
|
+
"custom_fences": [
|
|
359
|
+
{
|
|
360
|
+
"name": "mermaid",
|
|
361
|
+
"class": "mermaid",
|
|
362
|
+
"format": pymdownx.superfences.fence_div_format,
|
|
363
|
+
},
|
|
364
|
+
{
|
|
365
|
+
"name": "solara",
|
|
366
|
+
"class": "",
|
|
367
|
+
"format": highlight,
|
|
368
|
+
},
|
|
369
|
+
],
|
|
370
|
+
},
|
|
355
371
|
},
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
},
|
|
368
|
-
],
|
|
369
|
-
},
|
|
370
|
-
},
|
|
371
|
-
)
|
|
372
|
+
)
|
|
373
|
+
else:
|
|
374
|
+
logger.warning("Pymdownx not installed, using default markdown. For a better experience, install pymdownx.")
|
|
375
|
+
return markdown.Markdown( # type: ignore
|
|
376
|
+
extensions=[
|
|
377
|
+
"fenced_code",
|
|
378
|
+
"codehilite",
|
|
379
|
+
"toc",
|
|
380
|
+
"tables",
|
|
381
|
+
],
|
|
382
|
+
)
|
|
372
383
|
|
|
373
384
|
md = solara.use_memo(make_markdown_object, dependencies=[unsafe_solara_execute])
|
|
374
385
|
html = md.convert(md_text)
|
|
@@ -119,7 +119,7 @@ async def main():
|
|
|
119
119
|
]
|
|
120
120
|
for dep in requirements:
|
|
121
121
|
await micropip.install(dep, keep_going=True)
|
|
122
|
-
await micropip.install("/wheels/solara-1.32.
|
|
122
|
+
await micropip.install("/wheels/solara-1.32.2-py2.py3-none-any.whl", keep_going=True)
|
|
123
123
|
import solara
|
|
124
124
|
|
|
125
125
|
el = solara.Warning("lala")
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
{% if vue3 == True %}
|
|
16
16
|
<link href="{{cdn}}/@widgetti/solara-vuetify3-app@5.0.2/dist/main{{ipywidget_major_version}}.css" rel="stylesheet" class="solara-template-css"></link>
|
|
17
17
|
{% else %}
|
|
18
|
-
<link href="{{cdn}}/@widgetti/solara-vuetify-app@10.0.
|
|
18
|
+
<link href="{{cdn}}/@widgetti/solara-vuetify-app@10.0.3/dist/main{{ipywidget_major_version}}.css" rel="stylesheet" class="solara-template-css"></link>
|
|
19
19
|
{% endif %}
|
|
20
20
|
|
|
21
21
|
|
|
@@ -228,11 +228,11 @@
|
|
|
228
228
|
<script src="{{cdn}}/@widgetti/solara-vuetify3-app@5.0.2/dist/solara-vuetify-app{{ipywidget_major_version}}.js"></script>
|
|
229
229
|
{% endif %}
|
|
230
230
|
{% else %}
|
|
231
|
-
<link href="{{cdn}}/@widgetti/solara-vuetify-app@10.0.
|
|
231
|
+
<link href="{{cdn}}/@widgetti/solara-vuetify-app@10.0.3/dist/fonts.css" rel="stylesheet" fetchpriority="low"></link>
|
|
232
232
|
{% if production %}
|
|
233
|
-
<script src="{{cdn}}/@widgetti/solara-vuetify-app@10.0.
|
|
233
|
+
<script src="{{cdn}}/@widgetti/solara-vuetify-app@10.0.3/dist/solara-vuetify-app{{ipywidget_major_version}}.min.js"></script>
|
|
234
234
|
{% else %}
|
|
235
|
-
<script src="{{cdn}}/@widgetti/solara-vuetify-app@10.0.
|
|
235
|
+
<script src="{{cdn}}/@widgetti/solara-vuetify-app@10.0.3/dist/solara-vuetify-app{{ipywidget_major_version}}.js"></script>
|
|
236
236
|
{% endif %}
|
|
237
237
|
{% endif %}
|
|
238
238
|
<script>
|
|
@@ -347,11 +347,11 @@
|
|
|
347
347
|
},
|
|
348
348
|
'$vuetify.theme.dark': function (value) {
|
|
349
349
|
if ( value ) {
|
|
350
|
-
|
|
350
|
+
changeThemeCSS('dark');
|
|
351
351
|
appContainer.classList.remove('theme--light');
|
|
352
352
|
appContainer.classList.add('theme--dark');
|
|
353
353
|
} else {
|
|
354
|
-
|
|
354
|
+
changeThemeCSS('light');
|
|
355
355
|
appContainer.classList.remove('theme--dark');
|
|
356
356
|
appContainer.classList.add('theme--light');
|
|
357
357
|
}
|
|
@@ -133,7 +133,7 @@ def Notebook(notebook_path: Path, show_last_expressions=False, auto_show_page=Fa
|
|
|
133
133
|
if execute:
|
|
134
134
|
return NotebookExecute(notebook_path, show_last_expressions, auto_show_page)
|
|
135
135
|
else:
|
|
136
|
-
with solara.Column(style={"max-width": "
|
|
136
|
+
with solara.Column(style={"max-width": "1024px"}) as main:
|
|
137
137
|
nb: nbformat.NotebookNode = nbformat.read(notebook_path, 4)
|
|
138
138
|
for cell_index, cell in enumerate(nb.cells):
|
|
139
139
|
cell_index += 1
|
|
@@ -12,7 +12,7 @@ from solara.components.file_drop import FileDrop
|
|
|
12
12
|
|
|
13
13
|
github_url = solara.util.github_url(__file__)
|
|
14
14
|
if sys.platform != "emscripten":
|
|
15
|
-
pycafe_url = solara.util.pycafe_url(path=pathlib.Path(__file__), requirements=["
|
|
15
|
+
pycafe_url = solara.util.pycafe_url(path=pathlib.Path(__file__), requirements=["pandas", "plotly"])
|
|
16
16
|
else:
|
|
17
17
|
pycafe_url = None
|
|
18
18
|
df_sample = pd.read_csv("https://raw.githubusercontent.com/plotly/datasets/master/gapminderDataFiveYear.csv")
|
|
@@ -1,6 +1,27 @@
|
|
|
1
1
|
# Solara Changelog
|
|
2
2
|
|
|
3
3
|
|
|
4
|
+
## Version 1.32.1
|
|
5
|
+
|
|
6
|
+
### Details
|
|
7
|
+
|
|
8
|
+
* Bug Fix: `solara.display` not working when running a solara server in production mode, or when running a Solara app with flask. [#622](https://github.com/widgetti/solara/pull/622)
|
|
9
|
+
* Bug Fix: `solara.Markdown` would raise a `NameError` if `pymdown-extensions` was not installed. [#621](https://github.com/widgetti/solara/pull/621)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
## Version 1.32.0
|
|
13
|
+
|
|
14
|
+
### Details
|
|
15
|
+
|
|
16
|
+
* Feature: Support for multiple custom asset locations. [#602](https://github.com/widgetti/solara/pull/602)
|
|
17
|
+
* Refactor: Improve API for working with third-party dataframes. [#600](https://github.com/widgetti/solara/pull/600)
|
|
18
|
+
* Bug Fix: Give task results more unique keys. [#609](https://github.com/widgetti/solara/pull/609)
|
|
19
|
+
* Bug Fix: Avoid closing kernel multiple times. [e5ca67b](https://github.com/widgetti/solara/commit/e5ca67b6be46a8d236cc127cc06068702aa40754)
|
|
20
|
+
* Bug Fix: Make `page_close` beacon thread safe. [2501c83](https://github.com/widgetti/solara/commit/2501c83f135bc342ed9845198f7aff3bdcf09bc0)
|
|
21
|
+
* Bug Fix: Viewing embedded Solara application in fullscreen could cause a Reacton error. [#603](https://github.com/widgetti/solara/pull/603)
|
|
22
|
+
* Bug Fix: Remove fade when navigation is done from a thread/task. [#594](https://github.com/widgetti/solara/pull/594)
|
|
23
|
+
* Bug Fix: Support Pydantic 1 and 2 in reactive variables. [#601](https://github.com/widgetti/solara/pull/601)
|
|
24
|
+
|
|
4
25
|
## Version 1.31
|
|
5
26
|
|
|
6
27
|
We changed solara from a single package into multiple packages.
|
|
@@ -68,7 +68,7 @@ If you do define a `Page` component, you are fully responsible for how routing i
|
|
|
68
68
|
An example route definition could be something like this:
|
|
69
69
|
|
|
70
70
|
```python
|
|
71
|
-
import solara
|
|
71
|
+
import solara
|
|
72
72
|
|
|
73
73
|
routes = [
|
|
74
74
|
# route level == 0
|
|
@@ -103,7 +103,7 @@ routes = [
|
|
|
103
103
|
@solara.component
|
|
104
104
|
def Page():
|
|
105
105
|
level = solara.use_route_level() # returns 0
|
|
106
|
-
route_current, routes_current_level = solara.
|
|
106
|
+
route_current, routes_current_level = solara.use_route()
|
|
107
107
|
# route_current is routes[1], i.e. solara.Route(path="docs", children=[...])
|
|
108
108
|
# routes_current_level is [routes[0], routes[1], routes[2], routes[3]], i.e.:
|
|
109
109
|
# [solara.Route(path="/"), solara.Route(path="docs", children=[...]),
|
|
@@ -125,7 +125,7 @@ Now the `MyFirstLevelChildComponent` component is responsible for rendering the
|
|
|
125
125
|
@solara.component
|
|
126
126
|
def MyFirstLevelChildComponent():
|
|
127
127
|
level = solara.use_route_level() # returns 1
|
|
128
|
-
route_current, routes_current_level = solara.
|
|
128
|
+
route_current, routes_current_level = solara.use_route()
|
|
129
129
|
# route_current is routes[1].children[0], i.e. solara.Route(path="basics", children=[...])
|
|
130
130
|
# routes_current_level is [routes[1].children[0], routes[1].children[1]], i.e.:
|
|
131
131
|
# [solara.Route(path="basics", children=[...]), solara.Route(path="advanced")]
|
|
@@ -143,7 +143,7 @@ And the `MySecondLevelChildComponent` component is responsible for rendering the
|
|
|
143
143
|
@solara.component
|
|
144
144
|
def MySecondLevelChildComponent():
|
|
145
145
|
level = solara.use_route_level() # returns 2
|
|
146
|
-
route_current, routes_current_level = solara.
|
|
146
|
+
route_current, routes_current_level = solara.use_route()
|
|
147
147
|
# route_current is routes[1].children[0].children[0], i.e. solara.Route(path="react")
|
|
148
148
|
# routes_current_level is [routes[1].children[0].children[0], routes[1].children[0].children[1], routes[1].children[0].children[2]], i.e.
|
|
149
149
|
# [solara.Route(path="react"), solara.Route(path="ipywidgets"), solara.Route(path="solara")]
|
|
@@ -10,55 +10,56 @@ title = "Jupyter Dashboard (1/3)"
|
|
|
10
10
|
|
|
11
11
|
@solara.component
|
|
12
12
|
def Page():
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
13
|
+
with solara.Column(gap=0):
|
|
14
|
+
title = "Build your Jupyter dashboard using Solara"
|
|
15
|
+
solara.Meta(property="og:title", content=title)
|
|
16
|
+
solara.Meta(name="twitter:title", content=title)
|
|
17
|
+
solara.Title(title)
|
|
17
18
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
img = "https://dxhl76zpt6fap.cloudfront.net/public/docs/tutorial/jupyter-dashboard1.webp"
|
|
20
|
+
solara.Meta(name="twitter:image", content=img)
|
|
21
|
+
solara.Meta(property="og:image", content=img)
|
|
21
22
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
23
|
+
description = "Learn how to build a Jupyter dashboard and deploy it as a web app using Solara."
|
|
24
|
+
solara.Meta(name="description", property="og:description", content=description)
|
|
25
|
+
solara.Meta(name="twitter:description", content=description)
|
|
26
|
+
tags = [
|
|
27
|
+
"jupyter",
|
|
28
|
+
"jupyter dashboard",
|
|
29
|
+
"dashboard",
|
|
30
|
+
"web app",
|
|
31
|
+
"deploy",
|
|
32
|
+
"solara",
|
|
33
|
+
]
|
|
34
|
+
solara.Meta(name="keywords", content=", ".join(tags))
|
|
35
|
+
with solara.Column():
|
|
36
|
+
Notebook(
|
|
37
|
+
Path(HERE / "_jupyter_dashboard_1.ipynb"),
|
|
38
|
+
show_last_expressions=True,
|
|
39
|
+
execute=False,
|
|
40
|
+
outputs={
|
|
41
|
+
"a7d17a84": None, # empty output (7)
|
|
42
|
+
# original: https://github.com/widgetti/solara/assets/1765949/e844acdb-c77d-4df4-ba4c-a629f92f18a3
|
|
43
|
+
"82f1d2f7": solara.Image("https://dxhl76zpt6fap.cloudfront.net/pages/docs/content/60-jupyter-dashboard-part1/map.webp"), # map (11)
|
|
44
|
+
"3e7ea361": None, # (13)
|
|
45
|
+
# original: https://github.com/widgetti/solara/assets/1765949/daaa3a46-61f5-431f-8003-b42b5915da4b
|
|
46
|
+
"56055643": solara.Image("https://dxhl76zpt6fap.cloudfront.net/pages/docs/content/60-jupyter-dashboard-part1/view.webp"), # View (15)
|
|
47
|
+
# original: https://github.com/widgetti/solara/assets/1765949/2f4daf0f-b7d8-4f70-b04a-c27542cffdb0
|
|
48
|
+
"c78010ec": solara.Image("https://dxhl76zpt6fap.cloudfront.net/pages/docs/content/60-jupyter-dashboard-part1/page.webp"), # Page (20)
|
|
49
|
+
# original: https://github.com/widgetti/solara/assets/1765949/a691d9f1-f07b-4e06-b21b-20980476ad64
|
|
50
|
+
"18290364": solara.Image("https://dxhl76zpt6fap.cloudfront.net/pages/docs/content/60-jupyter-dashboard-part1/controls.webp"), # Controls
|
|
51
|
+
"0ca68fe8": None,
|
|
52
|
+
"fef5d187": None,
|
|
53
|
+
# original: https://github.com/widgetti/solara/assets/1765949/f0075ad1-808d-458c-8797-e460ce4dc06d
|
|
54
|
+
"af686391": solara.Image("https://dxhl76zpt6fap.cloudfront.net/pages/docs/content/60-jupyter-dashboard-part1/full-app.webp"), # Full app
|
|
55
|
+
},
|
|
56
|
+
)
|
|
57
|
+
solara.Markdown(
|
|
58
|
+
"""
|
|
59
|
+
Explore this app live at [solara.dev](/apps/jupyter-dashboard-1).
|
|
34
60
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
"a7d17a84": None, # empty output (7)
|
|
41
|
-
# original: https://github.com/widgetti/solara/assets/1765949/e844acdb-c77d-4df4-ba4c-a629f92f18a3
|
|
42
|
-
"82f1d2f7": solara.Image("https://dxhl76zpt6fap.cloudfront.net/pages/docs/content/60-jupyter-dashboard-part1/map.webp"), # map (11)
|
|
43
|
-
"3e7ea361": None, # (13)
|
|
44
|
-
# original: https://github.com/widgetti/solara/assets/1765949/daaa3a46-61f5-431f-8003-b42b5915da4b
|
|
45
|
-
"56055643": solara.Image("https://dxhl76zpt6fap.cloudfront.net/pages/docs/content/60-jupyter-dashboard-part1/view.webp"), # View (15)
|
|
46
|
-
# original: https://github.com/widgetti/solara/assets/1765949/2f4daf0f-b7d8-4f70-b04a-c27542cffdb0
|
|
47
|
-
"c78010ec": solara.Image("https://dxhl76zpt6fap.cloudfront.net/pages/docs/content/60-jupyter-dashboard-part1/page.webp"), # Page (20)
|
|
48
|
-
# original: https://github.com/widgetti/solara/assets/1765949/a691d9f1-f07b-4e06-b21b-20980476ad64
|
|
49
|
-
"18290364": solara.Image("https://dxhl76zpt6fap.cloudfront.net/pages/docs/content/60-jupyter-dashboard-part1/controls.webp"), # Controls
|
|
50
|
-
"0ca68fe8": None,
|
|
51
|
-
"fef5d187": None,
|
|
52
|
-
# original: https://github.com/widgetti/solara/assets/1765949/f0075ad1-808d-458c-8797-e460ce4dc06d
|
|
53
|
-
"af686391": solara.Image("https://dxhl76zpt6fap.cloudfront.net/pages/docs/content/60-jupyter-dashboard-part1/full-app.webp"), # Full app
|
|
54
|
-
},
|
|
55
|
-
)
|
|
56
|
-
solara.Markdown(
|
|
57
|
-
"""
|
|
58
|
-
Explore this app live at [solara.dev](/apps/jupyter-dashboard-1).
|
|
59
|
-
|
|
60
|
-
Don’t miss the next tutorial and stay updated with the latest techniques and insights by subscribing to our newsletter.
|
|
61
|
-
"""
|
|
62
|
-
)
|
|
63
|
-
location = solara.use_router().path
|
|
64
|
-
MailChimp(location=location)
|
|
61
|
+
Don’t miss the next tutorial and stay updated with the latest techniques and insights by subscribing to our newsletter.
|
|
62
|
+
"""
|
|
63
|
+
)
|
|
64
|
+
location = solara.use_router().path
|
|
65
|
+
MailChimp(location=location)
|
|
@@ -253,7 +253,7 @@ server {
|
|
|
253
253
|
An alternative to using the `X-Script-Name` header with uvicorn, would be to pass the `--root-path` flag, e.g.:
|
|
254
254
|
|
|
255
255
|
```
|
|
256
|
-
$ SOLARA_APP=sol.py uvicorn --workers 1 --root-path /solara -b 0.0.0.0:8765 solara.server.
|
|
256
|
+
$ SOLARA_APP=sol.py uvicorn --workers 1 --root-path /solara -b 0.0.0.0:8765 solara.server.starlette:app
|
|
257
257
|
```
|
|
258
258
|
|
|
259
259
|
In the case of an [OAuth setup](https://solara.dev/documentation/advanced/enterprise/oauth) it is important to make sure that the `X-Forwarded-Proto` and `Host` headers are forwarded correctly.
|
|
@@ -267,6 +267,20 @@ export FORWARDED_ALLOW_IPS = "127.0.0.1" # If your solara-server can *only* be
|
|
|
267
267
|
Make sure you replace the IP with the correct IP of the reverse proxy server (instead of `127.0.0.1`). If you are sure that only the reverse proxy can reach the solara server, you can consider
|
|
268
268
|
setting `FORWARDED_ALLOW_IPS="*"`.
|
|
269
269
|
|
|
270
|
+
## HTTPS
|
|
271
|
+
|
|
272
|
+
Solara does not support running in HTTPS (secure) mode directly. You can use a reverse proxy like Nginx, Traefik or Caddy to handle HTTPS for you.
|
|
273
|
+
|
|
274
|
+
However, when running solara via uvicorn, it is possible to run uvicorn with HTTPS enabled. For more information, see the uvicorn documentation:
|
|
275
|
+
https://www.uvicorn.org/deployment/#running-with-https
|
|
276
|
+
|
|
277
|
+
|
|
278
|
+
An example command would be:
|
|
279
|
+
|
|
280
|
+
```
|
|
281
|
+
$ SOLARA_APP=sol.py uvicorn --host 0.0.0.0 --port 8765 solara.server.starlette:app --ssl-keyfile=./key.pem --ssl-certfile=./cert.pem
|
|
282
|
+
```
|
|
283
|
+
|
|
270
284
|
## Docker
|
|
271
285
|
|
|
272
286
|
There is nothing special about running Solara in Docker. The only things you probably need to change is the interface the server binds to.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
prefix/etc/jupyter/jupyter_notebook_config.d/solara.json,sha256=3UhTBQi6z7F7pPjmqXxfddv79c8VGR9H7zStDLp6AwY,115
|
|
2
2
|
prefix/etc/jupyter/jupyter_server_config.d/solara.json,sha256=D9J-rYxAzyD5GOqWvuPjacGUVFHsYtTfZ4FUbRzRvIA,113
|
|
3
|
-
solara/__init__.py,sha256=
|
|
3
|
+
solara/__init__.py,sha256=QUOL8e5UFLH8XINs4-DsNHlQOdepeC8f12dTL0FoFDc,3584
|
|
4
4
|
solara/__main__.py,sha256=_RSUhoxkTruY4MMlSJ9qBKWdsgNSasuYs1EBbufnNrM,23656
|
|
5
5
|
solara/alias.py,sha256=9vfLzud77NP8in3OID9b5mmIO8NyrnFjN2_aE0lSb1k,216
|
|
6
6
|
solara/autorouting.py,sha256=IXNqJBaKjniuQIHGq_LSqoWXec9qq34t2b6UEqj4YBE,22677
|
|
@@ -51,7 +51,7 @@ solara/components/head_tag.vue,sha256=vw0PJzAajq1XbyKhrTakfzJGF_beXAjupkFXPKJbVD
|
|
|
51
51
|
solara/components/image.py,sha256=o44iu0_wv3cPKnKv47mw10d2f67vuBaW2Jhs775hNAM,4503
|
|
52
52
|
solara/components/input.py,sha256=iTL1JzfFlSw4ji7ILNymsodnrwJqvJtPvqD--6f-b4o,14585
|
|
53
53
|
solara/components/link.py,sha256=bYXVencL9hjBcrGniXdE0JlSzBE9bkUFFmd4apfYhjk,1842
|
|
54
|
-
solara/components/markdown.py,sha256=
|
|
54
|
+
solara/components/markdown.py,sha256=F7CYDm3dSlgNW6uGdLrR__EVVaxf-yljKyqTuCkerwg,13016
|
|
55
55
|
solara/components/markdown_editor.py,sha256=Ii_IVzl99JBVqegRu1aHdOC-hTIzbHXzuNKlRVvAEx0,634
|
|
56
56
|
solara/components/markdown_editor.vue,sha256=2LBotfw97LF9TgCJLY-O_2z5gjx6r2bbuhohE2-eIEA,8864
|
|
57
57
|
solara/components/matplotlib.py,sha256=c7iQhOIG_8aKTOz_Xnw3wXa0sgfiBunIzOxRhljQlzw,2029
|
|
@@ -135,7 +135,7 @@ solara/server/static/highlight-dark.css,sha256=gmC3pr3x2BqJgTswNoN6AkqfEhBk24hPF
|
|
|
135
135
|
solara/server/static/highlight.css,sha256=k8ZdT5iwrGQ5tXTQHAXuxvZrSUq3kwCdEpy3mlFoZjs,2637
|
|
136
136
|
solara/server/static/main-vuetify.js,sha256=-FLlUqclZdVhCXsqawzpxtQ9vpaDA6KQdwoDKJCr_AI,8926
|
|
137
137
|
solara/server/static/main.js,sha256=mcx4JNQ4Lg4pNdUIqMoZos1mZyYFS48yd_JNFFJUqIE,5679
|
|
138
|
-
solara/server/static/solara_bootstrap.py,sha256=
|
|
138
|
+
solara/server/static/solara_bootstrap.py,sha256=iUO-4E9Umfqyn4i6v__QN-2W6xFiCvySOQB0U2-HWXs,3195
|
|
139
139
|
solara/server/static/sun.svg,sha256=jEKBAGCr7b9zNYv0VUb7lMWKjnU2dX69_Ye_DZWGXJI,6855
|
|
140
140
|
solara/server/static/webworker.js,sha256=cjAFz7-SygStHJnYlJUlJs-gE_7YQeQ-WBDcmKYyjvo,1372
|
|
141
141
|
solara/server/templates/index.html.j2,sha256=JXQo1M-STFHLBOFetgG7509cAq8xUP0VAEtYDzz35fY,31
|
|
@@ -144,7 +144,7 @@ solara/server/templates/loader-plain.html,sha256=VEtMDC8MQj75o2iWJ_gR70Jp05oOoyR
|
|
|
144
144
|
solara/server/templates/loader-solara.css,sha256=QerfzwlenkSJMq8uk_qEtoSdcI-DKMRrH9XXDEPsrUA,1670
|
|
145
145
|
solara/server/templates/loader-solara.html,sha256=bgp3GHOAhfzU0rcAAYDsqhGlemfZo4YNhRsYIvhU7YM,2726
|
|
146
146
|
solara/server/templates/plain.html,sha256=yO1r2hidA3bxOclaxtI_vTZtdDTFn2KKeeoldJuinXk,2762
|
|
147
|
-
solara/server/templates/solara.html.j2,sha256=
|
|
147
|
+
solara/server/templates/solara.html.j2,sha256=why7S1J-VwQhDDINl4q6vzoySLGCmZ3c849edbAnABc,19658
|
|
148
148
|
solara/template/button.py,sha256=HM382prl4bNLF8sLBd9Sh43ReMGedG_z_h4XN4mDYRI,311
|
|
149
149
|
solara/template/markdown.py,sha256=31G3ezFooiveSrUH5afz5_nJ8SStjbx-_x5YLXv_hPk,1137
|
|
150
150
|
solara/template/portal/.flake8,sha256=wxWLwamdP33Jm1mPa1sVe3uT0AZkG_wHPbY3Ci7j5-g,136
|
|
@@ -186,7 +186,7 @@ solara/website/components/hero.py,sha256=rJdgQpnimOqejdwdGmS5PwS_tOfHeYWSAwRs2fM
|
|
|
186
186
|
solara/website/components/mailchimp.py,sha256=ziMYkNpHLLKamniXnzS1wOtWMzLeIqqQGRZLxk0GUzE,199
|
|
187
187
|
solara/website/components/mailchimp.vue,sha256=f2cFKUfl7gL9FJbGLCtPRUFBghxS8kcGuI_xSSOAEpo,3543
|
|
188
188
|
solara/website/components/markdown.py,sha256=-ueVz2IlQQlSHJlLAp4nDdQaKZI6ycZKAzRFwJcDWEM,1036
|
|
189
|
-
solara/website/components/notebook.py,sha256=
|
|
189
|
+
solara/website/components/notebook.py,sha256=MM73_c5l49SSpK63O4TYMsQ-mA43CwfhfU7VKXjfNC0,6867
|
|
190
190
|
solara/website/components/sidebar.py,sha256=vFOx13Di3LbgupjEiA6PfscPt0FBOA6YylKG1Af67MU,5132
|
|
191
191
|
solara/website/pages/__init__.py,sha256=jR4b1d5pw6KZojA1WN2IsWcu2kDNzv9-tM0jY0sMM-8,31602
|
|
192
192
|
solara/website/pages/doc_use_download.py,sha256=lWx9so-xPgV19FGTFqvgnL5_IeJragj8bYmClVPfuLw,3139
|
|
@@ -194,7 +194,7 @@ solara/website/pages/docutils.py,sha256=2ne991oUtK4dMj-qN18NtsVYxSfCT1c6o5yYThQn
|
|
|
194
194
|
solara/website/pages/apps/__init__.py,sha256=7ZmplbUsDo3uYHA9WI07hA8ZgRcDYbjw7aeohlu7mHk,284
|
|
195
195
|
solara/website/pages/apps/jupyter-dashboard-1.py,sha256=mDRpnz6xEO0uoc_QEe71gfnl6T--o7rUzOo6q5C4x54,3442
|
|
196
196
|
solara/website/pages/apps/layout-demo.py,sha256=2QVh3S1Ty00Qk9adf4F_CTZQ_WKnXxFNrBjVMLa8iP4,1676
|
|
197
|
-
solara/website/pages/apps/scatter.py,sha256=
|
|
197
|
+
solara/website/pages/apps/scatter.py,sha256=ktsigE_ae_iFHqOyqmTbHSj5T1VpTKdLjVSU0wZZLi8,5432
|
|
198
198
|
solara/website/pages/apps/scrolling.py,sha256=zGvkE1007KcqaBII6D7BdvKC850PRKFDU4jTlDiV-r0,2706
|
|
199
199
|
solara/website/pages/apps/tutorial-streamlit.py,sha256=lKLzR4jvvw_cmrxqFhxxJ4IbobbXXRcREjTIcGC4P0U,426
|
|
200
200
|
solara/website/pages/apps/authorization/__init__.py,sha256=jw2S62wKmTvAhoIrdY9Qabys-gIliMe5sB03gxPahhI,4022
|
|
@@ -204,7 +204,7 @@ solara/website/pages/apps/multipage/__init__.py,sha256=zljTAXbsV8hqb67dwmx_PhzN-
|
|
|
204
204
|
solara/website/pages/apps/multipage/page1.py,sha256=5hK0RZ8UBBOaZcPKaplbLeb0VvaerhB6m3Jn5C0afRM,872
|
|
205
205
|
solara/website/pages/apps/multipage/page2.py,sha256=uRJ8YPFyKy7GR_Ii8DJSx3akb3H15rQAJZETMt9jVEk,1422
|
|
206
206
|
solara/website/pages/changelog/__init__.py,sha256=iBCpD5LVrFxQtEHX116u_6vqNBktZD3AXR65eTZblFo,227
|
|
207
|
-
solara/website/pages/changelog/changelog.md,sha256=
|
|
207
|
+
solara/website/pages/changelog/changelog.md,sha256=0c9oJxA5ckm9T9DhSDzjw3cgkdViu-MPTjRF1wQ3-_U,13865
|
|
208
208
|
solara/website/pages/contact/__init__.py,sha256=L6o45fHAMClqyWdHWxI6JuiwUTP-U-yXCgd3lxMUcxA,223
|
|
209
209
|
solara/website/pages/contact/contact.md,sha256=zp66RGhOE_tdkRaWKZqGbuk-PnOqBWhDVvX5zSLXoHw,798
|
|
210
210
|
solara/website/pages/documentation/__init__.py,sha256=zJh3kmr6OhFPbax8Igp-LN-m9cZNrs9sq9ifFuC8Kic,6003
|
|
@@ -234,7 +234,7 @@ solara/website/pages/documentation/advanced/content/20-understanding/15-anatomy.
|
|
|
234
234
|
solara/website/pages/documentation/advanced/content/20-understanding/17-rules-of-hooks.md,sha256=5iFSxoO3FD-XrRRuGht9EiqVqvBUP1Yb2HQ7QYd5Tvs,244
|
|
235
235
|
solara/website/pages/documentation/advanced/content/20-understanding/18-containers.md,sha256=Bkl22GXxO0MhTVpUK1q0l5h_wBWNgkR1ZoCG28p7r40,4905
|
|
236
236
|
solara/website/pages/documentation/advanced/content/20-understanding/20-solara.md,sha256=sNK-mmgbj9rDHOXu5JaP7OMQdX0chOZ72-aMdOEOkug,751
|
|
237
|
-
solara/website/pages/documentation/advanced/content/20-understanding/40-routing.md,sha256=
|
|
237
|
+
solara/website/pages/documentation/advanced/content/20-understanding/40-routing.md,sha256=7-efGbXIVhUkLCFtG9rCBxKcDcQMEt_GMyt4GDCHRK8,9669
|
|
238
238
|
solara/website/pages/documentation/advanced/content/20-understanding/50-solara-server.md,sha256=0DaBpVnR2smTAKjgY73zlEATMsN5CK8XRr2gfg0H7GY,5933
|
|
239
239
|
solara/website/pages/documentation/advanced/content/20-understanding/60-voila.md,sha256=jlL0kyzzDdHytNizBBLPx7buFFforlIDdMF724C2RLE,1132
|
|
240
240
|
solara/website/pages/documentation/advanced/content/30-enterprise/00-overview.md,sha256=2_-VXLH0jwRIySqr4UFbGqhZO2MVulYC_vTB3R9lOXc,20
|
|
@@ -401,7 +401,7 @@ solara/website/pages/documentation/getting_started/content/04-tutorials/20-web-a
|
|
|
401
401
|
solara/website/pages/documentation/getting_started/content/04-tutorials/30-ipywidgets.md,sha256=d9GYmh1FBO-uuwWW-nDl3vGZ5WNvJWPwag3QIHTtHqo,4577
|
|
402
402
|
solara/website/pages/documentation/getting_started/content/04-tutorials/40-streamlit.md,sha256=8XbsWDzL6XNNjH8qWWBB7klQswuNgTI4Pwq8VNVaqC0,6824
|
|
403
403
|
solara/website/pages/documentation/getting_started/content/04-tutorials/50-dash.md,sha256=jxsM17kPIgmaHqPWxtV5xC-RWMzlJfb5QEmUT1IJrtI,5399
|
|
404
|
-
solara/website/pages/documentation/getting_started/content/04-tutorials/60-jupyter-dashboard-part1.py,sha256=
|
|
404
|
+
solara/website/pages/documentation/getting_started/content/04-tutorials/60-jupyter-dashboard-part1.py,sha256=RvhBzAs_-mpfi9MqLceC_cF0aTh8Ki4EalnQM63TkRM,3377
|
|
405
405
|
solara/website/pages/documentation/getting_started/content/04-tutorials/SF_crime_sample.csv.gz,sha256=6jfiB65wgPXQwRHi4lSuGUHNULo_Me6kmIU74Kd7kxg,575276
|
|
406
406
|
solara/website/pages/documentation/getting_started/content/04-tutorials/_data_science.ipynb,sha256=a9EdGu2zXWccH2bmY25qhu5eg2usACJle1AFdwgjDTs,14031
|
|
407
407
|
solara/website/pages/documentation/getting_started/content/04-tutorials/_jupyter_dashboard_1.ipynb,sha256=SGM-iUPjIi03nJqAx2aIOxw_hdKnmGP-npqJBWeum9Y,57417
|
|
@@ -409,7 +409,7 @@ solara/website/pages/documentation/getting_started/content/05-fundamentals/00-ov
|
|
|
409
409
|
solara/website/pages/documentation/getting_started/content/05-fundamentals/10-components.md,sha256=dEUb2jpkKE0J8VV10HbbpSBTmU766X74MX9rMs2s8vE,13931
|
|
410
410
|
solara/website/pages/documentation/getting_started/content/05-fundamentals/50-state-management.md,sha256=2erhyogDTBzgX4kOOBbNCm2UiONcg29HmLxVvSd6LHA,4599
|
|
411
411
|
solara/website/pages/documentation/getting_started/content/07-deploying/00-overview.md,sha256=frkz54EDE8o7L0LohVi1liftJDH2_FthLaNRkHRLIPU,368
|
|
412
|
-
solara/website/pages/documentation/getting_started/content/07-deploying/10-self-hosted.md,sha256=
|
|
412
|
+
solara/website/pages/documentation/getting_started/content/07-deploying/10-self-hosted.md,sha256=maCleEOHZFRHyYOG09TdumdzPNNsHc2fKAtEWH3S9Bw,10363
|
|
413
413
|
solara/website/pages/documentation/getting_started/content/07-deploying/20-cloud-hosted.md,sha256=kdqdM5q0jcv86OwW7WI-MwsQjKYaj9jxENAsVxdL05U,4076
|
|
414
414
|
solara/website/pages/showcase/__init__.py,sha256=_6VP_Lxomr-hQz-hceEyLKo503gmcuuxqwJQW7Ps8Vo,6326
|
|
415
415
|
solara/website/pages/showcase/domino_code_assist.py,sha256=dxEbAYeZwiSx1_JHVd1dsnEqpPwiv3TcmYSonwjc-PE,2297
|
|
@@ -433,9 +433,9 @@ solara/widgets/vue/gridlayout.vue,sha256=EGeq8RmdRSd8AD2Us6L80zGFefh7TaQqJSnazX7
|
|
|
433
433
|
solara/widgets/vue/html.vue,sha256=48K5rjp0AdJDeRV6F3nOHW3J0WXPeHn55r5pGClK2fU,112
|
|
434
434
|
solara/widgets/vue/navigator.vue,sha256=SLrzBI0Eiys-7maXA4e8yyD13-O5b4AnCGE9wKuJDHE,3646
|
|
435
435
|
solara/widgets/vue/vegalite.vue,sha256=pjLfjTObIyBkduXx54i4wS5OQYI9Y4EwPeEFAqtJvZg,4120
|
|
436
|
-
solara_ui-1.32.
|
|
437
|
-
solara_ui-1.32.
|
|
438
|
-
solara_ui-1.32.
|
|
439
|
-
solara_ui-1.32.
|
|
440
|
-
solara_ui-1.32.
|
|
441
|
-
solara_ui-1.32.
|
|
436
|
+
solara_ui-1.32.2.data/data/etc/jupyter/jupyter_notebook_config.d/solara.json,sha256=3UhTBQi6z7F7pPjmqXxfddv79c8VGR9H7zStDLp6AwY,115
|
|
437
|
+
solara_ui-1.32.2.data/data/etc/jupyter/jupyter_server_config.d/solara.json,sha256=D9J-rYxAzyD5GOqWvuPjacGUVFHsYtTfZ4FUbRzRvIA,113
|
|
438
|
+
solara_ui-1.32.2.dist-info/METADATA,sha256=dYUQV1BzydDsIFDFwh4Fzg9Y50IVIbJfCvubOy9zhfU,7284
|
|
439
|
+
solara_ui-1.32.2.dist-info/WHEEL,sha256=L5_n4Kc1NmrSdVgbp6hdnwwVwBnoYOCnbHBRMD-qNJ4,105
|
|
440
|
+
solara_ui-1.32.2.dist-info/licenses/LICENSE,sha256=fFJUz-CWzZ9nEc4QZKu44jMEoDr5fEW-SiqljKpD82E,1086
|
|
441
|
+
solara_ui-1.32.2.dist-info/RECORD,,
|
|
File without changes
|
{solara_ui-1.32.0.data → solara_ui-1.32.2.data}/data/etc/jupyter/jupyter_server_config.d/solara.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|