solara 1.30.0__py2.py3-none-any.whl → 1.31.0__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.
Files changed (439) hide show
  1. {solara-1.30.0.dist-info → solara-1.31.0.dist-info}/METADATA +7 -42
  2. solara-1.31.0.dist-info/RECORD +5 -0
  3. {solara-1.30.0.dist-info → solara-1.31.0.dist-info}/WHEEL +1 -1
  4. {solara/template/portal → solara-1.31.0.dist-info/licenses}/LICENSE +1 -1
  5. solara/__init__.py +0 -123
  6. solara/__main__.py +0 -734
  7. solara/alias.py +0 -6
  8. solara/autorouting.py +0 -554
  9. solara/cache.py +0 -294
  10. solara/checks.html +0 -71
  11. solara/checks.py +0 -224
  12. solara/comm.py +0 -28
  13. solara/components/__init__.py +0 -59
  14. solara/components/alert.py +0 -155
  15. solara/components/applayout.py +0 -393
  16. solara/components/button.py +0 -85
  17. solara/components/card.py +0 -87
  18. solara/components/checkbox.py +0 -50
  19. solara/components/code_highlight_css.py +0 -11
  20. solara/components/code_highlight_css.vue +0 -63
  21. solara/components/columns.py +0 -159
  22. solara/components/component_vue.py +0 -109
  23. solara/components/cross_filter.py +0 -335
  24. solara/components/dataframe.py +0 -546
  25. solara/components/datatable.py +0 -221
  26. solara/components/datatable.vue +0 -175
  27. solara/components/details.py +0 -21
  28. solara/components/download.vue +0 -35
  29. solara/components/echarts.py +0 -75
  30. solara/components/echarts.vue +0 -128
  31. solara/components/figure_altair.py +0 -39
  32. solara/components/file_browser.py +0 -182
  33. solara/components/file_download.py +0 -199
  34. solara/components/file_drop.py +0 -139
  35. solara/components/file_drop.vue +0 -83
  36. solara/components/file_list_widget.vue +0 -78
  37. solara/components/head.py +0 -27
  38. solara/components/head_tag.py +0 -49
  39. solara/components/head_tag.vue +0 -60
  40. solara/components/image.py +0 -173
  41. solara/components/input.py +0 -440
  42. solara/components/link.py +0 -55
  43. solara/components/markdown.py +0 -371
  44. solara/components/markdown_editor.py +0 -25
  45. solara/components/markdown_editor.vue +0 -362
  46. solara/components/matplotlib.py +0 -74
  47. solara/components/meta.py +0 -47
  48. solara/components/misc.py +0 -333
  49. solara/components/pivot_table.py +0 -258
  50. solara/components/pivot_table.vue +0 -158
  51. solara/components/progress.py +0 -47
  52. solara/components/select.py +0 -186
  53. solara/components/select.vue +0 -27
  54. solara/components/slider.py +0 -442
  55. solara/components/slider_date.vue +0 -56
  56. solara/components/spinner-solara.vue +0 -105
  57. solara/components/spinner.py +0 -30
  58. solara/components/sql_code.py +0 -33
  59. solara/components/sql_code.vue +0 -128
  60. solara/components/style.py +0 -105
  61. solara/components/switch.py +0 -68
  62. solara/components/tab_navigation.py +0 -37
  63. solara/components/title.py +0 -90
  64. solara/components/title.vue +0 -38
  65. solara/components/togglebuttons.py +0 -202
  66. solara/components/tooltip.py +0 -61
  67. solara/datatypes.py +0 -143
  68. solara/express.py +0 -241
  69. solara/hooks/__init__.py +0 -4
  70. solara/hooks/dataframe.py +0 -99
  71. solara/hooks/misc.py +0 -263
  72. solara/hooks/use_reactive.py +0 -129
  73. solara/hooks/use_thread.py +0 -129
  74. solara/kitchensink.py +0 -8
  75. solara/lab/__init__.py +0 -34
  76. solara/lab/components/__init__.py +0 -6
  77. solara/lab/components/chat.py +0 -203
  78. solara/lab/components/confirmation_dialog.py +0 -165
  79. solara/lab/components/cross_filter.py +0 -7
  80. solara/lab/components/input_date.py +0 -298
  81. solara/lab/components/menu.py +0 -181
  82. solara/lab/components/menu.vue +0 -38
  83. solara/lab/components/tabs.py +0 -274
  84. solara/lab/components/theming.py +0 -98
  85. solara/lab/components/theming.vue +0 -72
  86. solara/lab/hooks/__init__.py +0 -0
  87. solara/lab/hooks/dataframe.py +0 -12
  88. solara/lab/toestand.py +0 -3
  89. solara/lab/utils/__init__.py +0 -2
  90. solara/lab/utils/cookies.py +0 -5
  91. solara/lab/utils/dataframe.py +0 -115
  92. solara/lab/utils/headers.py +0 -5
  93. solara/layout.py +0 -44
  94. solara/minisettings.py +0 -133
  95. solara/py.typed +0 -0
  96. solara/reactive.py +0 -93
  97. solara/routing.py +0 -268
  98. solara/scope/__init__.py +0 -87
  99. solara/scope/types.py +0 -55
  100. solara/server/__init__.py +0 -0
  101. solara/server/app.py +0 -490
  102. solara/server/assets/custom.css +0 -1
  103. solara/server/assets/custom.js +0 -1
  104. solara/server/assets/favicon.png +0 -0
  105. solara/server/assets/favicon.svg +0 -5
  106. solara/server/assets/style.css +0 -1665
  107. solara/server/assets/theme-dark.css +0 -437
  108. solara/server/assets/theme-light.css +0 -420
  109. solara/server/assets/theme.js +0 -3
  110. solara/server/cdn_helper.py +0 -77
  111. solara/server/esm.py +0 -69
  112. solara/server/fastapi.py +0 -5
  113. solara/server/flask.py +0 -286
  114. solara/server/jupyter/__init__.py +0 -2
  115. solara/server/jupyter/cdn_handler.py +0 -28
  116. solara/server/jupyter/server_extension.py +0 -29
  117. solara/server/jupytertools.py +0 -46
  118. solara/server/kernel.py +0 -319
  119. solara/server/kernel_context.py +0 -393
  120. solara/server/patch.py +0 -552
  121. solara/server/reload.py +0 -242
  122. solara/server/server.py +0 -437
  123. solara/server/settings.py +0 -212
  124. solara/server/shell.py +0 -240
  125. solara/server/starlette.py +0 -597
  126. solara/server/static/ansi.js +0 -270
  127. solara/server/static/highlight-dark.css +0 -82
  128. solara/server/static/highlight.css +0 -43
  129. solara/server/static/main-vuetify.js +0 -260
  130. solara/server/static/main.js +0 -163
  131. solara/server/static/solara_bootstrap.py +0 -129
  132. solara/server/static/sun.svg +0 -23
  133. solara/server/static/webworker.js +0 -42
  134. solara/server/telemetry.py +0 -212
  135. solara/server/templates/index.html.j2 +0 -1
  136. solara/server/templates/loader-plain.css +0 -11
  137. solara/server/templates/loader-plain.html +0 -20
  138. solara/server/templates/loader-solara.css +0 -111
  139. solara/server/templates/loader-solara.html +0 -40
  140. solara/server/templates/plain.html +0 -82
  141. solara/server/templates/solara.html.j2 +0 -446
  142. solara/server/threaded.py +0 -75
  143. solara/server/utils.py +0 -30
  144. solara/server/websocket.py +0 -44
  145. solara/settings.py +0 -56
  146. solara/tasks.py +0 -847
  147. solara/template/button.py +0 -16
  148. solara/template/markdown.py +0 -42
  149. solara/template/portal/.flake8 +0 -6
  150. solara/template/portal/.pre-commit-config.yaml +0 -28
  151. solara/template/portal/Procfile +0 -7
  152. solara/template/portal/mypy.ini +0 -3
  153. solara/template/portal/pyproject.toml +0 -26
  154. solara/template/portal/solara_portal/__init__.py +0 -3
  155. solara/template/portal/solara_portal/components/__init__.py +0 -2
  156. solara/template/portal/solara_portal/components/article.py +0 -28
  157. solara/template/portal/solara_portal/components/data.py +0 -28
  158. solara/template/portal/solara_portal/components/header.py +0 -6
  159. solara/template/portal/solara_portal/components/layout.py +0 -6
  160. solara/template/portal/solara_portal/content/articles/equis-in-vidi.md +0 -85
  161. solara/template/portal/solara_portal/content/articles/substiterat-vati.md +0 -70
  162. solara/template/portal/solara_portal/data.py +0 -60
  163. solara/template/portal/solara_portal/pages/__init__.py +0 -67
  164. solara/template/portal/solara_portal/pages/article/__init__.py +0 -26
  165. solara/template/portal/solara_portal/pages/tabular.py +0 -29
  166. solara/template/portal/solara_portal/pages/viz/__init__.py +0 -69
  167. solara/template/portal/solara_portal/pages/viz/overview.py +0 -14
  168. solara/test/__init__.py +0 -0
  169. solara/test/pytest_plugin.py +0 -698
  170. solara/toestand.py +0 -772
  171. solara/util.py +0 -308
  172. solara/website/__init__.py +0 -0
  173. solara/website/assets/custom.css +0 -462
  174. solara/website/assets/images/logo-small.png +0 -0
  175. solara/website/assets/images/logo.svg +0 -17
  176. solara/website/assets/images/logo_white.svg +0 -50
  177. solara/website/assets/theme.js +0 -8
  178. solara/website/components/__init__.py +0 -5
  179. solara/website/components/algolia.vue +0 -24
  180. solara/website/components/algolia_api.vue +0 -157
  181. solara/website/components/docs.py +0 -118
  182. solara/website/components/header.py +0 -72
  183. solara/website/components/hero.py +0 -15
  184. solara/website/components/mailchimp.py +0 -12
  185. solara/website/components/mailchimp.vue +0 -47
  186. solara/website/components/notebook.py +0 -172
  187. solara/website/pages/__init__.py +0 -564
  188. solara/website/pages/apps/__init__.py +0 -16
  189. solara/website/pages/apps/authorization/__init__.py +0 -118
  190. solara/website/pages/apps/authorization/admin.py +0 -12
  191. solara/website/pages/apps/authorization/users.py +0 -12
  192. solara/website/pages/apps/jupyter-dashboard-1.py +0 -116
  193. solara/website/pages/apps/layout-demo.py +0 -40
  194. solara/website/pages/apps/multipage/__init__.py +0 -38
  195. solara/website/pages/apps/multipage/page1.py +0 -26
  196. solara/website/pages/apps/multipage/page2.py +0 -34
  197. solara/website/pages/apps/scatter.py +0 -136
  198. solara/website/pages/apps/scrolling.py +0 -63
  199. solara/website/pages/apps/tutorial-streamlit.py +0 -18
  200. solara/website/pages/changelog/__init__.py +0 -8
  201. solara/website/pages/changelog/changelog.md +0 -180
  202. solara/website/pages/contact/__init__.py +0 -8
  203. solara/website/pages/contact/contact.md +0 -17
  204. solara/website/pages/doc_use_download.py +0 -85
  205. solara/website/pages/documentation/__init__.py +0 -184
  206. solara/website/pages/documentation/advanced/__init__.py +0 -36
  207. solara/website/pages/documentation/advanced/content/00-overview.md +0 -1
  208. solara/website/pages/documentation/advanced/content/10-howto/00-overview.md +0 -1
  209. solara/website/pages/documentation/advanced/content/10-howto/10-multipage.md +0 -191
  210. solara/website/pages/documentation/advanced/content/10-howto/20-layout.md +0 -120
  211. solara/website/pages/documentation/advanced/content/10-howto/30-testing.md +0 -149
  212. solara/website/pages/documentation/advanced/content/10-howto/31-debugging.md +0 -66
  213. solara/website/pages/documentation/advanced/content/10-howto/40-embed.md +0 -43
  214. solara/website/pages/documentation/advanced/content/10-howto/50-ipywidget_libraries.md +0 -120
  215. solara/website/pages/documentation/advanced/content/20-understanding/00-introduction.md +0 -4
  216. solara/website/pages/documentation/advanced/content/20-understanding/05-ipywidgets.md +0 -30
  217. solara/website/pages/documentation/advanced/content/20-understanding/06-ipyvuetify.md +0 -38
  218. solara/website/pages/documentation/advanced/content/20-understanding/10-reacton.md +0 -24
  219. solara/website/pages/documentation/advanced/content/20-understanding/12-reacton-basics.md +0 -104
  220. solara/website/pages/documentation/advanced/content/20-understanding/15-anatomy.md +0 -19
  221. solara/website/pages/documentation/advanced/content/20-understanding/17-rules-of-hooks.md +0 -3
  222. solara/website/pages/documentation/advanced/content/20-understanding/18-containers.md +0 -160
  223. solara/website/pages/documentation/advanced/content/20-understanding/20-solara.md +0 -13
  224. solara/website/pages/documentation/advanced/content/20-understanding/40-routing.md +0 -236
  225. solara/website/pages/documentation/advanced/content/20-understanding/50-solara-server.md +0 -81
  226. solara/website/pages/documentation/advanced/content/20-understanding/60-voila.md +0 -7
  227. solara/website/pages/documentation/advanced/content/30-enterprise/00-overview.md +0 -1
  228. solara/website/pages/documentation/advanced/content/30-enterprise/10-oauth.md +0 -167
  229. solara/website/pages/documentation/advanced/content/40-development/00-overview.md +0 -0
  230. solara/website/pages/documentation/advanced/content/40-development/01-contribute.md +0 -41
  231. solara/website/pages/documentation/advanced/content/40-development/10-setup.md +0 -72
  232. solara/website/pages/documentation/advanced/content/__init__.py +0 -0
  233. solara/website/pages/documentation/api/__init__.py +0 -19
  234. solara/website/pages/documentation/api/cross_filter/__init__.py +0 -9
  235. solara/website/pages/documentation/api/cross_filter/cross_filter_dataframe.py +0 -23
  236. solara/website/pages/documentation/api/cross_filter/cross_filter_report.py +0 -22
  237. solara/website/pages/documentation/api/cross_filter/cross_filter_select.py +0 -22
  238. solara/website/pages/documentation/api/cross_filter/cross_filter_slider.py +0 -22
  239. solara/website/pages/documentation/api/hooks/__init__.py +0 -9
  240. solara/website/pages/documentation/api/hooks/use_cross_filter.py +0 -25
  241. solara/website/pages/documentation/api/hooks/use_dark_effective.py +0 -13
  242. solara/website/pages/documentation/api/hooks/use_effect.md +0 -43
  243. solara/website/pages/documentation/api/hooks/use_effect.py +0 -9
  244. solara/website/pages/documentation/api/hooks/use_exception.py +0 -33
  245. solara/website/pages/documentation/api/hooks/use_memo.md +0 -16
  246. solara/website/pages/documentation/api/hooks/use_memo.py +0 -9
  247. solara/website/pages/documentation/api/hooks/use_previous.py +0 -32
  248. solara/website/pages/documentation/api/hooks/use_reactive.py +0 -15
  249. solara/website/pages/documentation/api/hooks/use_state.py +0 -11
  250. solara/website/pages/documentation/api/hooks/use_state_or_update.py +0 -68
  251. solara/website/pages/documentation/api/hooks/use_thread.md +0 -58
  252. solara/website/pages/documentation/api/hooks/use_thread.py +0 -44
  253. solara/website/pages/documentation/api/hooks/use_trait_observe.py +0 -13
  254. solara/website/pages/documentation/api/routing/__init__.py +0 -9
  255. solara/website/pages/documentation/api/routing/generate_routes.py +0 -11
  256. solara/website/pages/documentation/api/routing/generate_routes_directory.py +0 -11
  257. solara/website/pages/documentation/api/routing/resolve_path.py +0 -36
  258. solara/website/pages/documentation/api/routing/route.py +0 -32
  259. solara/website/pages/documentation/api/routing/use_route.py +0 -80
  260. solara/website/pages/documentation/api/routing/use_router.py +0 -15
  261. solara/website/pages/documentation/api/utilities/__init__.py +0 -9
  262. solara/website/pages/documentation/api/utilities/component_vue.py +0 -11
  263. solara/website/pages/documentation/api/utilities/computed.py +0 -16
  264. solara/website/pages/documentation/api/utilities/display.py +0 -15
  265. solara/website/pages/documentation/api/utilities/get_kernel_id.py +0 -16
  266. solara/website/pages/documentation/api/utilities/get_session_id.py +0 -16
  267. solara/website/pages/documentation/api/utilities/memoize.py +0 -36
  268. solara/website/pages/documentation/api/utilities/on_kernel_start.py +0 -27
  269. solara/website/pages/documentation/api/utilities/reactive.py +0 -15
  270. solara/website/pages/documentation/api/utilities/widget.py +0 -104
  271. solara/website/pages/documentation/components/__init__.py +0 -12
  272. solara/website/pages/documentation/components/advanced/__init__.py +0 -9
  273. solara/website/pages/documentation/components/advanced/link.py +0 -28
  274. solara/website/pages/documentation/components/advanced/meta.py +0 -21
  275. solara/website/pages/documentation/components/advanced/style.py +0 -44
  276. solara/website/pages/documentation/components/common.py +0 -9
  277. solara/website/pages/documentation/components/data/__init__.py +0 -9
  278. solara/website/pages/documentation/components/data/dataframe.py +0 -44
  279. solara/website/pages/documentation/components/data/pivot_table.py +0 -81
  280. solara/website/pages/documentation/components/enterprise/__init__.py +0 -9
  281. solara/website/pages/documentation/components/enterprise/avatar.py +0 -19
  282. solara/website/pages/documentation/components/enterprise/avatar_menu.py +0 -20
  283. solara/website/pages/documentation/components/input/__init__.py +0 -9
  284. solara/website/pages/documentation/components/input/button.py +0 -22
  285. solara/website/pages/documentation/components/input/checkbox.py +0 -12
  286. solara/website/pages/documentation/components/input/file_browser.py +0 -33
  287. solara/website/pages/documentation/components/input/file_drop.py +0 -75
  288. solara/website/pages/documentation/components/input/input.py +0 -18
  289. solara/website/pages/documentation/components/input/select.py +0 -21
  290. solara/website/pages/documentation/components/input/slider.py +0 -28
  291. solara/website/pages/documentation/components/input/switch.py +0 -12
  292. solara/website/pages/documentation/components/input/togglebuttons.py +0 -20
  293. solara/website/pages/documentation/components/lab/__init__.py +0 -9
  294. solara/website/pages/documentation/components/lab/chat.py +0 -108
  295. solara/website/pages/documentation/components/lab/confirmation_dialog.py +0 -55
  296. solara/website/pages/documentation/components/lab/cookies_headers.py +0 -48
  297. solara/website/pages/documentation/components/lab/input_date.py +0 -19
  298. solara/website/pages/documentation/components/lab/menu.py +0 -21
  299. solara/website/pages/documentation/components/lab/tab.py +0 -24
  300. solara/website/pages/documentation/components/lab/tabs.py +0 -44
  301. solara/website/pages/documentation/components/lab/task.py +0 -12
  302. solara/website/pages/documentation/components/lab/theming.py +0 -72
  303. solara/website/pages/documentation/components/lab/use_task.py +0 -12
  304. solara/website/pages/documentation/components/layout/__init__.py +0 -9
  305. solara/website/pages/documentation/components/layout/app_bar.py +0 -15
  306. solara/website/pages/documentation/components/layout/app_bar_title.py +0 -15
  307. solara/website/pages/documentation/components/layout/app_layout.py +0 -23
  308. solara/website/pages/documentation/components/layout/card.py +0 -14
  309. solara/website/pages/documentation/components/layout/card_actions.py +0 -15
  310. solara/website/pages/documentation/components/layout/column.py +0 -29
  311. solara/website/pages/documentation/components/layout/columns.py +0 -26
  312. solara/website/pages/documentation/components/layout/columns_responsive.py +0 -67
  313. solara/website/pages/documentation/components/layout/griddraggable.py +0 -61
  314. solara/website/pages/documentation/components/layout/gridfixed.py +0 -21
  315. solara/website/pages/documentation/components/layout/hbox.py +0 -17
  316. solara/website/pages/documentation/components/layout/row.py +0 -29
  317. solara/website/pages/documentation/components/layout/sidebar.py +0 -23
  318. solara/website/pages/documentation/components/layout/vbox.py +0 -19
  319. solara/website/pages/documentation/components/output/__init__.py +0 -9
  320. solara/website/pages/documentation/components/output/file_download.py +0 -12
  321. solara/website/pages/documentation/components/output/html.py +0 -22
  322. solara/website/pages/documentation/components/output/image.py +0 -12
  323. solara/website/pages/documentation/components/output/markdown.py +0 -59
  324. solara/website/pages/documentation/components/output/markdown_editor.py +0 -53
  325. solara/website/pages/documentation/components/output/sql_code.py +0 -84
  326. solara/website/pages/documentation/components/output/tooltip.py +0 -12
  327. solara/website/pages/documentation/components/page/__init__.py +0 -9
  328. solara/website/pages/documentation/components/page/head.py +0 -19
  329. solara/website/pages/documentation/components/page/title.py +0 -28
  330. solara/website/pages/documentation/components/status/__init__.py +0 -9
  331. solara/website/pages/documentation/components/status/error.py +0 -40
  332. solara/website/pages/documentation/components/status/info.py +0 -40
  333. solara/website/pages/documentation/components/status/progress.py +0 -10
  334. solara/website/pages/documentation/components/status/spinner.py +0 -10
  335. solara/website/pages/documentation/components/status/success.py +0 -40
  336. solara/website/pages/documentation/components/status/warning.py +0 -47
  337. solara/website/pages/documentation/components/viz/__init__.py +0 -9
  338. solara/website/pages/documentation/components/viz/altair.py +0 -44
  339. solara/website/pages/documentation/components/viz/echarts.py +0 -78
  340. solara/website/pages/documentation/components/viz/matplotlib.py +0 -32
  341. solara/website/pages/documentation/components/viz/plotly.py +0 -63
  342. solara/website/pages/documentation/components/viz/plotly_express.py +0 -41
  343. solara/website/pages/documentation/examples/__init__.py +0 -52
  344. solara/website/pages/documentation/examples/ai/__init__.py +0 -10
  345. solara/website/pages/documentation/examples/ai/chatbot.py +0 -96
  346. solara/website/pages/documentation/examples/ai/tokenizer.py +0 -106
  347. solara/website/pages/documentation/examples/basics/__init__.py +0 -2
  348. solara/website/pages/documentation/examples/basics/sine.py +0 -28
  349. solara/website/pages/documentation/examples/fullscreen/__init__.py +0 -9
  350. solara/website/pages/documentation/examples/fullscreen/authorization.py +0 -3
  351. solara/website/pages/documentation/examples/fullscreen/layout_demo.py +0 -3
  352. solara/website/pages/documentation/examples/fullscreen/multipage.py +0 -3
  353. solara/website/pages/documentation/examples/fullscreen/scatter.py +0 -3
  354. solara/website/pages/documentation/examples/fullscreen/scrolling.py +0 -3
  355. solara/website/pages/documentation/examples/fullscreen/tutorial_streamlit.py +0 -3
  356. solara/website/pages/documentation/examples/general/__init__.py +0 -9
  357. solara/website/pages/documentation/examples/general/custom_storage.py +0 -69
  358. solara/website/pages/documentation/examples/general/deploy_model.py +0 -114
  359. solara/website/pages/documentation/examples/general/live_update.py +0 -38
  360. solara/website/pages/documentation/examples/general/login_oauth.py +0 -76
  361. solara/website/pages/documentation/examples/general/mycard.vue +0 -58
  362. solara/website/pages/documentation/examples/general/pokemon_search.py +0 -51
  363. solara/website/pages/documentation/examples/general/vue_component.py +0 -50
  364. solara/website/pages/documentation/examples/ipycanvas.py +0 -49
  365. solara/website/pages/documentation/examples/libraries/__init__.py +0 -9
  366. solara/website/pages/documentation/examples/libraries/altair.py +0 -63
  367. solara/website/pages/documentation/examples/libraries/bqplot.py +0 -39
  368. solara/website/pages/documentation/examples/libraries/ipyleaflet.py +0 -32
  369. solara/website/pages/documentation/examples/libraries/ipyleaflet_advanced.py +0 -65
  370. solara/website/pages/documentation/examples/utilities/__init__.py +0 -9
  371. solara/website/pages/documentation/examples/utilities/calculator.py +0 -157
  372. solara/website/pages/documentation/examples/utilities/countdown_timer.py +0 -64
  373. solara/website/pages/documentation/examples/utilities/todo.py +0 -195
  374. solara/website/pages/documentation/examples/visualization/__init__.py +0 -6
  375. solara/website/pages/documentation/examples/visualization/annotator.py +0 -68
  376. solara/website/pages/documentation/examples/visualization/linked_views.py +0 -84
  377. solara/website/pages/documentation/examples/visualization/plotly.py +0 -43
  378. solara/website/pages/documentation/faq/__init__.py +0 -11
  379. solara/website/pages/documentation/faq/content/99-faq.md +0 -73
  380. solara/website/pages/documentation/getting_started/__init__.py +0 -15
  381. solara/website/pages/documentation/getting_started/content/00-quickstart.md +0 -84
  382. solara/website/pages/documentation/getting_started/content/01-introduction.md +0 -121
  383. solara/website/pages/documentation/getting_started/content/02-installing.md +0 -81
  384. solara/website/pages/documentation/getting_started/content/04-tutorials/00-overview.md +0 -9
  385. solara/website/pages/documentation/getting_started/content/04-tutorials/10_data_science.py +0 -13
  386. solara/website/pages/documentation/getting_started/content/04-tutorials/20-web-app.md +0 -84
  387. solara/website/pages/documentation/getting_started/content/04-tutorials/30-ipywidgets.md +0 -120
  388. solara/website/pages/documentation/getting_started/content/04-tutorials/40-streamlit.md +0 -141
  389. solara/website/pages/documentation/getting_started/content/04-tutorials/50-dash.md +0 -140
  390. solara/website/pages/documentation/getting_started/content/04-tutorials/60-jupyter-dashboard-part1.py +0 -64
  391. solara/website/pages/documentation/getting_started/content/04-tutorials/SF_crime_sample.csv.gz +0 -0
  392. solara/website/pages/documentation/getting_started/content/04-tutorials/_data_science.ipynb +0 -445
  393. solara/website/pages/documentation/getting_started/content/04-tutorials/_jupyter_dashboard_1.ipynb +0 -1000
  394. solara/website/pages/documentation/getting_started/content/05-fundamentals/00-overview.md +0 -7
  395. solara/website/pages/documentation/getting_started/content/05-fundamentals/10-components.md +0 -218
  396. solara/website/pages/documentation/getting_started/content/05-fundamentals/50-state-management.md +0 -83
  397. solara/website/pages/documentation/getting_started/content/06-reference/00-overview.md +0 -3
  398. solara/website/pages/documentation/getting_started/content/06-reference/40-static_files.md +0 -27
  399. solara/website/pages/documentation/getting_started/content/06-reference/41-asset-files.md +0 -32
  400. solara/website/pages/documentation/getting_started/content/06-reference/60-static-site-generation.md +0 -55
  401. solara/website/pages/documentation/getting_started/content/06-reference/70-search.md +0 -30
  402. solara/website/pages/documentation/getting_started/content/06-reference/80-reloading.md +0 -30
  403. solara/website/pages/documentation/getting_started/content/06-reference/90-notebook-support.md +0 -4
  404. solara/website/pages/documentation/getting_started/content/06-reference/95-caching.md +0 -143
  405. solara/website/pages/documentation/getting_started/content/07-deploying/00-overview.md +0 -3
  406. solara/website/pages/documentation/getting_started/content/07-deploying/10-self-hosted.md +0 -269
  407. solara/website/pages/documentation/getting_started/content/07-deploying/20-cloud-hosted.md +0 -76
  408. solara/website/pages/documentation/getting_started/content/08-lab/00-what-is-lab.md +0 -3
  409. solara/website/pages/documentation/getting_started/content/90-troubleshoot.md +0 -22
  410. solara/website/pages/documentation/getting_started/content/__init__.py +0 -0
  411. solara/website/pages/docutils.py +0 -38
  412. solara/website/pages/showcase/__init__.py +0 -105
  413. solara/website/pages/showcase/domino_code_assist.py +0 -60
  414. solara/website/pages/showcase/planeto_tessa.py +0 -19
  415. solara/website/pages/showcase/solara_dev.py +0 -54
  416. solara/website/pages/showcase/solarathon_2023_team_2.py +0 -22
  417. solara/website/pages/showcase/solarathon_2023_team_4.py +0 -22
  418. solara/website/pages/showcase/solarathon_2023_team_5.py +0 -23
  419. solara/website/pages/showcase/solarathon_2023_team_6.py +0 -34
  420. solara/website/pages/showcase/wanderlust.py +0 -27
  421. solara/website/public/beach.jpeg +0 -0
  422. solara/website/public/logo.svg +0 -6
  423. solara/website/public/social/discord.svg +0 -1
  424. solara/website/public/social/github.svg +0 -1
  425. solara/website/public/social/twitter.svg +0 -3
  426. solara/website/public/success.html +0 -25
  427. solara/website/templates/index.html.j2 +0 -117
  428. solara/website/utils.py +0 -51
  429. solara/widgets/__init__.py +0 -1
  430. solara/widgets/vue/gridlayout.vue +0 -110
  431. solara/widgets/vue/html.vue +0 -4
  432. solara/widgets/vue/navigator.vue +0 -104
  433. solara/widgets/vue/vegalite.vue +0 -115
  434. solara/widgets/widgets.py +0 -65
  435. solara-1.30.0.data/data/etc/jupyter/jupyter_notebook_config.d/solara.json +0 -7
  436. solara-1.30.0.data/data/etc/jupyter/jupyter_server_config.d/solara.json +0 -7
  437. solara-1.30.0.dist-info/RECORD +0 -438
  438. solara-1.30.0.dist-info/entry_points.txt +0 -5
  439. /solara-1.30.0.dist-info/licenses/LICENSE → /LICENSE +0 -0
@@ -1,15 +0,0 @@
1
- """
2
- # AppBarTitle
3
-
4
- """
5
- import solara
6
- import solara.lab
7
- from solara.website.components import NoPage
8
- from solara.website.utils import apidoc
9
-
10
- title = "AppBarTitle"
11
-
12
- Page = NoPage
13
-
14
-
15
- __doc__ += apidoc(solara.AppBarTitle.f) # type: ignore
@@ -1,23 +0,0 @@
1
- """
2
- # AppLayout
3
-
4
- """
5
- import solara
6
- import solara.lab
7
- from solara.website.utils import apidoc
8
-
9
- title = "AppLayout"
10
-
11
-
12
- @solara.component
13
- def Page():
14
- return solara.Markdown(
15
- """
16
- An example cannot be shown embedded in this page, Visit the [AppLayout page](/apps/scatter) to see an example.
17
-
18
- [![AppLayout screenshot](https://dxhl76zpt6fap.cloudfront.net/public/docs/app-layout.webp)](/apps/scatter)
19
- """
20
- )
21
-
22
-
23
- __doc__ += apidoc(solara.AppLayout.f) # type: ignore
@@ -1,14 +0,0 @@
1
- """
2
- # Card
3
-
4
- """
5
- import solara
6
- import solara.lab
7
- from solara.website.components import NoPage
8
- from solara.website.utils import apidoc
9
-
10
- title = "Card"
11
-
12
- Page = NoPage
13
-
14
- __doc__ += apidoc(solara.Card.f) # type: ignore
@@ -1,15 +0,0 @@
1
- """
2
- # CardActions
3
-
4
- """
5
- import solara
6
- import solara.lab
7
- from solara.website.components import NoPage
8
- from solara.website.utils import apidoc
9
-
10
- title = "CardActions"
11
-
12
- Page = NoPage
13
-
14
-
15
- __doc__ += apidoc(solara.CardActions.f) # type: ignore
@@ -1,29 +0,0 @@
1
- """
2
- # Column
3
- """
4
- import solara
5
- import solara.lab
6
- from solara.website.utils import apidoc
7
-
8
- gap_size = solara.reactive("12px")
9
- align = solara.reactive("stretch")
10
-
11
-
12
- @solara.component
13
- def Page():
14
- with solara.Card("Column demo") as main:
15
- with solara.Column():
16
- solara.Text("Align:")
17
- solara.ToggleButtonsSingle(align, values=["start", "center", "end", "stretch"])
18
- solara.Select(
19
- label="Gap size",
20
- values=["0px", "4px", "8px", "12px", "16px", "20px", "24px"],
21
- ).connect(gap_size)
22
- with solara.Column(gap=gap_size.value, align=align.value):
23
- colors = "green red orange brown yellow pink".split()
24
- for color in colors:
25
- solara.Button("Solara", color=color)
26
- return main
27
-
28
-
29
- __doc__ += apidoc(solara.Column.f) # type: ignore
@@ -1,26 +0,0 @@
1
- """
2
- # Columns
3
-
4
- """
5
- import solara
6
- import solara.lab
7
- from solara.website.utils import apidoc
8
-
9
- gutters = solara.reactive(True)
10
- gutters_dense = solara.reactive(True)
11
-
12
-
13
- @solara.component
14
- def Page():
15
- with solara.Columns([1, 2, 1], gutters=gutters.value, gutters_dense=gutters_dense.value) as main:
16
- with solara.Card("Left", margin=0):
17
- solara.Checkbox(label="Gutters").connect(gutters)
18
- solara.Checkbox(label="Dense gutters").connect(gutters_dense)
19
- with solara.Card("Middle", margin=0):
20
- solara.Markdown("This column has a relative width of 2, the columns to the left and right have a relative width of 1.")
21
- with solara.Card("Right", margin=0):
22
- solara.Markdown("This column has a relative width of 1, the columns to the left has a relative width of 2.")
23
- return main
24
-
25
-
26
- __doc__ += apidoc(solara.Columns.f) # type: ignore
@@ -1,67 +0,0 @@
1
- """
2
- # ColumnsResponsive
3
-
4
- """
5
- import solara
6
- import solara.lab
7
- from solara.website.utils import apidoc
8
-
9
- title = "ColumnsResponsive"
10
-
11
- gutters = solara.reactive(True)
12
- gutters_dense = solara.reactive(True)
13
- wrap = solara.reactive(True)
14
-
15
- children_count = solara.reactive(12)
16
- columns_default = solara.reactive(6)
17
- columns_small = solara.reactive(4)
18
- columns_medium = solara.reactive(3)
19
- columns_large = solara.reactive(2)
20
- columns_xlarge = solara.reactive(1)
21
-
22
-
23
- @solara.component
24
- def Page():
25
- with solara.VBox() as main:
26
- with solara.Card("Controls"):
27
- solara.Checkbox(label="Wrap").connect(wrap)
28
- solara.Checkbox(label="Gutters").connect(gutters)
29
- solara.Checkbox(label="Dense gutters").connect(gutters_dense)
30
- solara.IntSlider("Children", max=20).connect(children_count)
31
-
32
- solara.Select("columns default", values=[1, 2, 3, 4, 6, 12]).connect(columns_default) # type: ignore
33
- solara.Select("columns small", values=[1, 2, 3, 4, 6, 12]).connect(columns_small) # type: ignore
34
- solara.Select("columns medium", values=[1, 2, 3, 4, 6, 12]).connect(columns_medium) # type: ignore
35
- solara.Select("columns large", values=[1, 2, 3, 4, 6, 12]).connect(columns_large) # type: ignore
36
- solara.Select("columns xlarge", values=[1, 2, 3, 4, 6, 12]).connect(columns_xlarge) # type: ignore
37
- # taken from https://v2.vuetifyjs.com/en/styles/display/#display
38
- solara.HTML(
39
- "h2", unsafe_innerHTML=f"Current screensize is xsmall/default, each child is {columns_default.value} points wide", class_="ma-2 d-flex d-sm-none ma"
40
- )
41
- solara.HTML(
42
- "h2", unsafe_innerHTML=f"Current screensize is small, each child is {columns_small.value} points wide", class_="ma-2 d-none d-sm-flex d-md-none"
43
- )
44
- solara.HTML(
45
- "h2", unsafe_innerHTML=f"Current screensize is medium, each child is {columns_medium.value} points wide", class_="ma-2 d-none d-md-flex d-lg-none"
46
- )
47
- solara.HTML(
48
- "h2", unsafe_innerHTML=f"Current screensize is large, each child is {columns_large.value} points wide", class_="ma-2 d-none d-lg-flex d-xl-none"
49
- )
50
- solara.HTML("h2", unsafe_innerHTML=f"Current screensize is xlarge, each child is {columns_xlarge.value} points wide", class_="ma-2 d-none d-xl-flex")
51
- solara.Markdown("Change the screen size to see the effect of the different columns sizes.")
52
- with solara.ColumnsResponsive(
53
- default=columns_default.value,
54
- small=columns_small.value,
55
- medium=columns_medium.value,
56
- large=columns_large.value,
57
- xlarge=columns_xlarge.value,
58
- wrap=wrap.value,
59
- gutters=gutters.value,
60
- gutters_dense=gutters_dense.value,
61
- ):
62
- for i in range(children_count.value):
63
- solara.Text(f"{i}")
64
- return main
65
-
66
-
67
- __doc__ += apidoc(solara.ColumnsResponsive.f) # type: ignore
@@ -1,61 +0,0 @@
1
- """
2
- # GridDraggable
3
-
4
- Child components are laid out on a grid, which can be dragged and resized.
5
- """
6
- import pprint
7
- import textwrap
8
-
9
- import solara
10
-
11
- from ..common import ColorCard
12
-
13
- title = "GridDraggable"
14
-
15
-
16
- @solara.component
17
- def Page():
18
- grid_layout_initial = [
19
- {"h": 5, "i": "0", "moved": False, "w": 3, "x": 0, "y": 0},
20
- {"h": 5, "i": "1", "moved": False, "w": 5, "x": 3, "y": 0},
21
- {"h": 11, "i": "2", "moved": False, "w": 4, "x": 8, "y": 0},
22
- {"h": 12, "i": "3", "moved": False, "w": 5, "x": 0, "y": 5},
23
- {"h": 6, "i": "4", "moved": False, "w": 3, "x": 5, "y": 5},
24
- {"h": 6, "i": "5", "moved": False, "w": 7, "x": 5, "y": 11},
25
- ]
26
-
27
- colors = "green red orange brown yellow pink".split()
28
-
29
- # we need to store the state of the grid_layout ourselves, otherwise it will 'reset'
30
- # each time we change resizable or draggable
31
- grid_layout, set_grid_layout = solara.use_state(grid_layout_initial)
32
-
33
- # some placeholders
34
- items = [ColorCard(title=f"Child {i}", color=colors[i]) for i in range(len(grid_layout))]
35
- with solara.VBox() as main:
36
- resizable = solara.ui_checkbox("Allow resizing", value=True)
37
- draggable = solara.ui_checkbox("Allow dragging", value=True)
38
-
39
- def reset_layout():
40
- set_grid_layout(grid_layout_initial)
41
-
42
- solara.Button("Reset to initial layout", on_click=reset_layout)
43
-
44
- solara.GridDraggable(items=items, grid_layout=grid_layout, resizable=resizable, draggable=draggable, on_grid_layout=set_grid_layout)
45
-
46
- # some string kung fu to make this print nicely
47
- grid_layout_formatted = pprint.pformat(grid_layout, indent=4)
48
- grid_layout_formatted = textwrap.indent(grid_layout_formatted, " " * len("grid_layout = "))
49
- grid_layout_formatted = grid_layout_formatted[len("grid_layout = ") :]
50
- solara.Markdown(
51
- f"""
52
- # Resulting layout
53
-
54
- This layout can be copy pasted to put in your code as an initial layout:
55
-
56
- ```python
57
- grid_layout = {grid_layout_formatted}
58
- ```
59
- """
60
- )
61
- return main
@@ -1,21 +0,0 @@
1
- """
2
- # GridFixed
3
-
4
- Lays out children in a grid with a fixed number of columns.
5
- """
6
-
7
- import solara
8
-
9
- from ..common import ColorCard
10
-
11
- title = "GridFixed"
12
-
13
-
14
- @solara.component
15
- def Page():
16
- with solara.VBox() as main:
17
- colors = "green red orange brown yellow pink".split()
18
- with solara.GridFixed(columns=3):
19
- for color in colors:
20
- ColorCard(color, color)
21
- return main
@@ -1,17 +0,0 @@
1
- """
2
- # HBox
3
- Lays out children in horizontal direction.
4
- """
5
- import solara
6
-
7
- from ..common import ColorCard
8
-
9
-
10
- @solara.component
11
- def Page():
12
- with solara.VBox() as main:
13
- colors = "green red orange brown yellow pink".split()
14
- with solara.HBox():
15
- for color in colors:
16
- ColorCard(color, color)
17
- return main
@@ -1,29 +0,0 @@
1
- """
2
- # Row
3
- """
4
- import solara
5
- import solara.lab
6
- from solara.website.utils import apidoc
7
-
8
- gap_size = solara.reactive("12px")
9
- justify = solara.reactive("space-around")
10
-
11
-
12
- @solara.component
13
- def Page():
14
- with solara.Card("Row demo") as main:
15
- with solara.Column():
16
- solara.Text("Justify:")
17
- solara.ToggleButtonsSingle(justify, values=["start", "center", "end", "space-around", "space-between", "space-evenly"])
18
- solara.Select(
19
- label="Gap size",
20
- values=["0px", "4px", "8px", "12px", "16px", "20px", "24px"],
21
- ).connect(gap_size)
22
- with solara.Row(gap=gap_size.value, justify=justify.value):
23
- colors = "green red orange brown yellow pink".split()
24
- for color in colors:
25
- solara.Button(label="Solara", color=color)
26
- return main
27
-
28
-
29
- __doc__ += apidoc(solara.Row.f) # type: ignore
@@ -1,23 +0,0 @@
1
- """
2
- # Sidebar
3
-
4
- """
5
- import solara
6
- import solara.lab
7
- from solara.website.utils import apidoc
8
-
9
-
10
- @solara.component
11
- def Page():
12
- return solara.Markdown(
13
- """
14
-
15
- The sidebar can only be shown in embedded mode on this page.
16
- Visit the [Scatter app demo](/apps/scatter) to see an example of a full sidebar used in Soalra server.
17
-
18
- [![AppLayout screenshot](https://dxhl76zpt6fap.cloudfront.net/public/docs/app-layout.webp)](/apps/scatter)
19
- """
20
- )
21
-
22
-
23
- __doc__ += apidoc(solara.Sidebar.f) # type: ignore
@@ -1,19 +0,0 @@
1
- """
2
- # VBox
3
-
4
- Lays out children in a vertical direction.
5
- """
6
-
7
- import solara
8
-
9
- from ..common import ColorCard
10
-
11
-
12
- @solara.component
13
- def Page():
14
- with solara.VBox() as main:
15
- colors = "green red orange brown yellow pink".split()
16
- with solara.VBox():
17
- for color in colors:
18
- ColorCard(color, color)
19
- return main
@@ -1,9 +0,0 @@
1
- import solara
2
- from solara.website.components import NoPage, SubCategoryLayout
3
-
4
- Page = NoPage
5
-
6
-
7
- @solara.component
8
- def Layout(children=[]):
9
- SubCategoryLayout(children=children)
@@ -1,12 +0,0 @@
1
- """# FileDownload
2
-
3
- """
4
- import solara
5
- from solara.website.components import NoPage
6
- from solara.website.utils import apidoc
7
-
8
- Page = NoPage
9
- title = "FileDownload"
10
-
11
-
12
- __doc__ += apidoc(solara.FileDownload.f) # type: ignore
@@ -1,22 +0,0 @@
1
- """# HTML
2
- """
3
-
4
- import solara
5
- from solara.website.utils import apidoc
6
-
7
-
8
- @solara.component
9
- def Page():
10
- html = """
11
- <h1>Custom html</h1>
12
- <ul>
13
- <li>Item 1
14
- <li>Item 2
15
- </ul>
16
- """
17
- with solara.VBox() as main:
18
- solara.HTML(tag="div", unsafe_innerHTML=html)
19
- return main
20
-
21
-
22
- __doc__ += apidoc(solara.HTML.f) # type: ignore
@@ -1,12 +0,0 @@
1
- """# Image
2
-
3
- """
4
- import solara
5
- from solara.website.components import NoPage
6
- from solara.website.utils import apidoc
7
-
8
- Page = NoPage
9
- title = "Image"
10
-
11
-
12
- __doc__ += apidoc(solara.Image.f) # type: ignore
@@ -1,59 +0,0 @@
1
- """# Markdown
2
- """
3
-
4
-
5
- import solara
6
- from solara.alias import rv
7
- from solara.website.utils import apidoc
8
-
9
-
10
- @solara.component
11
- def Page():
12
- markdown_initial = """
13
- # Large
14
- ## Smaller
15
-
16
- ## List items
17
-
18
- * item 1
19
- * item 2
20
-
21
-
22
- ## Code highlight support
23
- ```python
24
- code = "formatted" and "supports highlighting"
25
- ```
26
-
27
-
28
- ## Mermaid support!
29
- See [Mermaid docs](https://mermaid-js.github.io/)
30
-
31
- ```mermaid
32
- graph TD;
33
- A-->B;
34
- A-->C;
35
- B-->D;
36
- C-->D;
37
- ```
38
-
39
-
40
- """.strip()
41
-
42
- markdown_text, set_markdown_text = solara.use_state(markdown_initial)
43
- # with solara.GridFixed(columns=2) as main:
44
- with solara.HBox(grow=True) as main:
45
- with solara.VBox():
46
- solara.Markdown("# Input text")
47
- with solara.Padding(2):
48
- with rv.Sheet(elevation=2):
49
- rv.Textarea(v_model=markdown_text, on_v_model=set_markdown_text, rows=30)
50
- with solara.VBox():
51
- solara.Markdown("# Renders like")
52
- with solara.Padding(2):
53
- with rv.Sheet(elevation=2):
54
- solara.Markdown(markdown_text)
55
-
56
- return main
57
-
58
-
59
- __doc__ += apidoc(solara.Markdown.f) # type: ignore
@@ -1,53 +0,0 @@
1
- """# MarkdownEditor
2
- """
3
-
4
-
5
- import solara
6
- from solara.alias import rv
7
- from solara.website.utils import apidoc
8
-
9
-
10
- @solara.component
11
- def Page():
12
- markdown_initial = """
13
- # Large heading
14
- ## Medium heading
15
- ### Small heading
16
-
17
-
18
- ## List items
19
-
20
- * item 1
21
- * item 2
22
-
23
- ## Numbered items
24
-
25
- 1. item 1
26
- 2. item 2
27
-
28
-
29
- **bold** and *italic*, [GitHub link](https://github.com/widgetti/solara/)
30
-
31
-
32
- ```
33
- preformatted code
34
- which respecs spaces
35
- and line breaks
36
- ```
37
-
38
- """.strip()
39
-
40
- markdown_text, set_markdown_text = solara.use_state(markdown_initial)
41
- with solara.HBox(grow=True) as main:
42
- with solara.VBox():
43
- with solara.Padding(2):
44
- with rv.Sheet(elevation=2):
45
- solara.MarkdownEditor(markdown_text, on_value=set_markdown_text)
46
- with rv.Sheet(elevation=2):
47
- solara.Markdown("# Raw markdown")
48
- solara.Preformatted(markdown_text)
49
-
50
- return main
51
-
52
-
53
- __doc__ += apidoc(solara.MarkdownEditor.f) # type: ignore
@@ -1,84 +0,0 @@
1
- """
2
- # SqlCode
3
- """
4
- import os
5
- import sqlite3
6
- import threading
7
- from typing import Optional, cast
8
-
9
- import pandas as pd
10
-
11
- try:
12
- import vaex.datasets
13
- except ImportError:
14
- vaex = None
15
-
16
- import solara
17
- from solara.alias import rv
18
- from solara.website.utils import apidoc
19
-
20
- if vaex is not None:
21
- df_iris = vaex.datasets.iris().to_pandas_df()
22
- df_titanic = vaex.datasets.titanic().to_pandas_df()
23
-
24
- def create_db():
25
- conn = sqlite3.connect(filename)
26
- df_iris.to_sql("iris", conn, if_exists="replace", index=False)
27
- df_titanic.to_sql("titanic", conn, if_exists="replace", index=False)
28
- conn.close()
29
-
30
- filename = "solara-sql.db"
31
- if not os.path.exists(filename):
32
- create_db()
33
-
34
- conn = sqlite3.connect(filename)
35
- conn.row_factory = sqlite3.Row
36
- table_names = [k[0] for k in conn.execute("SELECT name FROM sqlite_master WHERE type='table' ORDER BY name").fetchall()]
37
- table_hints = {table_name: conn.execute(f"SELECT * from {table_name} LIMIT 1").fetchone().keys() for table_name in table_names}
38
-
39
-
40
- @solara.component
41
- def Page():
42
- if vaex is None:
43
- return solara.Error("Vaex is not installed, run pip install vaex-core vaex-hdf5")
44
- query, set_query = solara.use_state("SELECT * from titanic")
45
- query_executed, set_query_executed = solara.use_state(cast(Optional[str], None))
46
-
47
- def run_query(cancel: threading.Event) -> pd.DataFrame:
48
- if not query_executed:
49
- return
50
- conn = sqlite3.connect(filename)
51
- cursor = conn.cursor()
52
- cursor.execute(query_executed)
53
-
54
- df = pd.DataFrame(cursor.fetchall(), columns=[k[0] for k in cursor.description])
55
- return df
56
-
57
- result: solara.Result[pd.DataFrame] = solara.use_thread(run_query, dependencies=[query_executed])
58
- with solara.VBox() as main:
59
- solara.SqlCode(query=query, tables=table_hints, on_query=set_query)
60
- enable_execute = (query != query_executed) or result.error is not None
61
-
62
- def execute():
63
- set_query_executed(query)
64
- if query == query_executed and result.error:
65
- result.retry() # type: ignore
66
-
67
- solara.Button("Execute", on_click=execute, disabled=not enable_execute)
68
- if result.error:
69
- solara.Error(f"Ooops {result.error}")
70
- elif not query:
71
- solara.Info("No query")
72
-
73
- elif result.value is not None:
74
- solara.Markdown(f"Result for query: `{query_executed}`")
75
- df = result.value
76
- solara.DataFrame(df)
77
- elif query_executed is not None:
78
- with solara.Div():
79
- solara.Text("Loading data...")
80
- rv.ProgressCircular(indeterminate=True, class_="solara-progress")
81
- return main
82
-
83
-
84
- __doc__ += apidoc(solara.SqlCode.f) # type: ignore
@@ -1,12 +0,0 @@
1
- """# Tooltip
2
-
3
- """
4
- import solara
5
- from solara.website.components import NoPage
6
- from solara.website.utils import apidoc
7
-
8
- Page = NoPage
9
- title = "Tooltip"
10
-
11
-
12
- __doc__ += apidoc(solara.Tooltip.f) # type: ignore
@@ -1,9 +0,0 @@
1
- import solara
2
- from solara.website.components import NoPage, SubCategoryLayout
3
-
4
- Page = NoPage
5
-
6
-
7
- @solara.component
8
- def Layout(children=[]):
9
- SubCategoryLayout(children=children)
@@ -1,19 +0,0 @@
1
- """# Head
2
- """
3
-
4
- import solara
5
- from solara.website.utils import apidoc
6
-
7
-
8
- @solara.component
9
- def Page():
10
- with solara.VBox() as main:
11
- solara.Info("A Head component does not render somesome visual on the page, but it is used to avoid duplicate tags, such as titles.")
12
- with solara.Head():
13
- # title should always occur inside a Head component
14
- solara.Title("Custom title")
15
-
16
- return main
17
-
18
-
19
- __doc__ += apidoc(solara.Head.f) # type: ignore