streamlit-nightly 1.52.3.dev20260113__py3-none-any.whl → 1.53.1.dev20260114__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 (113) hide show
  1. streamlit/commands/logo.py +2 -0
  2. streamlit/commands/page_config.py +16 -16
  3. streamlit/components/v2/__init__.py +2 -2
  4. streamlit/connections/base_connection.py +16 -4
  5. streamlit/connections/snowflake_connection.py +254 -205
  6. streamlit/elements/form.py +2 -2
  7. streamlit/elements/metric.py +49 -48
  8. streamlit/elements/widgets/button.py +9 -9
  9. streamlit/elements/widgets/chat.py +5 -9
  10. streamlit/elements/widgets/data_editor.py +3 -3
  11. streamlit/elements/widgets/file_uploader.py +10 -11
  12. streamlit/elements/widgets/select_slider.py +4 -0
  13. streamlit/runtime/caching/cache_data_api.py +25 -21
  14. streamlit/runtime/caching/cache_resource_api.py +69 -41
  15. streamlit/runtime/connection_factory.py +67 -41
  16. streamlit/static/index.html +1 -1
  17. streamlit/static/manifest.json +304 -304
  18. streamlit/static/static/js/{ErrorOutline.esm.BjVqd_6R.js → ErrorOutline.esm.BAZUU4id.js} +1 -1
  19. streamlit/static/static/js/{FileDownload.esm.DJCSsghl.js → FileDownload.esm.C6tTTniR.js} +1 -1
  20. streamlit/static/static/js/{FileHelper.C---TH7o.js → FileHelper.BOHlwlc9.js} +1 -1
  21. streamlit/static/static/js/{FormClearHelper.C-6BC487.js → FormClearHelper.D4lty7rT.js} +1 -1
  22. streamlit/static/static/js/{InputInstructions.sxc3InCI.js → InputInstructions.BWw9lhud.js} +1 -1
  23. streamlit/static/static/js/{Particles.S8yD7iW-.js → Particles.BDi7fIn-.js} +1 -1
  24. streamlit/static/static/js/{ProgressBar.BiYsyZCC.js → ProgressBar.DCHh4N3P.js} +1 -1
  25. streamlit/static/static/js/{StreamlitSyntaxHighlighter.9jZF8jX1.js → StreamlitSyntaxHighlighter.BRydQwEj.js} +1 -1
  26. streamlit/static/static/js/{TableChart.esm.BdA4Q1rZ.js → TableChart.esm.7KFX5I_G.js} +1 -1
  27. streamlit/static/static/js/{Toolbar.B9DaaDfN.js → Toolbar.guIuiwEF.js} +1 -1
  28. streamlit/static/static/js/{WidgetLabelHelpIconInline.DxODTLS2.js → WidgetLabelHelpIconInline.CzodezAH.js} +1 -1
  29. streamlit/static/static/js/{base-input.Gf1cKuQR.js → base-input.Cg7NpsfS.js} +1 -1
  30. streamlit/static/static/js/{checkbox.CnoNruf3.js → checkbox.Bs20OTna.js} +1 -1
  31. streamlit/static/static/js/{createDownloadLinkElement.B48AepiL.js → createDownloadLinkElement.DSqCyu38.js} +1 -1
  32. streamlit/static/static/js/{data-grid-overlay-editor.Cmdq9aqU.js → data-grid-overlay-editor.Ch4SqNfY.js} +1 -1
  33. streamlit/static/static/js/{downloader.CQLoQdMX.js → downloader.Oj5CTGJA.js} +1 -1
  34. streamlit/static/static/js/{embed.oKwocwU8.js → embed.CqzzUq73.js} +1 -1
  35. streamlit/static/static/js/{es6.BRxlY_y5.js → es6.CYrlw0Vn.js} +2 -2
  36. streamlit/static/static/js/{formatNumber.DaagZyZe.js → formatNumber.CT_v8e75.js} +1 -1
  37. streamlit/static/static/js/{iconPosition.Q3hNvmK4.js → iconPosition.DPAvXTmd.js} +1 -1
  38. streamlit/static/static/js/{iframeResizer.contentWindow.B6EBvI9L.js → iframeResizer.contentWindow.T4DvQsIf.js} +1 -1
  39. streamlit/static/static/js/{index.BoX8d5rK.js → index.AGYZDQZm.js} +1 -1
  40. streamlit/static/static/js/{index.KtjGDGY5.js → index.B3HdcUdo.js} +1 -1
  41. streamlit/static/static/js/{index.B9kZB0o1.js → index.B8ZZdPqF.js} +1 -1
  42. streamlit/static/static/js/{index.CFCBhOfx.js → index.B9Oowxt8.js} +1 -1
  43. streamlit/static/static/js/{index.CCQ5p_WC.js → index.BEzgNZOm.js} +1 -1
  44. streamlit/static/static/js/{index.D1pK_Vw2.js → index.BJnWg9Jq.js} +1 -1
  45. streamlit/static/static/js/{index.na9UBuse.js → index.BPxuKK0S.js} +1 -1
  46. streamlit/static/static/js/{index.QTaWooav.js → index.BTA0d5oq.js} +1 -1
  47. streamlit/static/static/js/{index.pU9mQeVC.js → index.BTqav7_K.js} +1 -1
  48. streamlit/static/static/js/{index.BXEC4cf3.js → index.BZ8xp-w9.js} +1 -1
  49. streamlit/static/static/js/{index.BF23fbfs.js → index.BoWBzl6h.js} +1 -1
  50. streamlit/static/static/js/index.Bqgt60FU.js +1 -0
  51. streamlit/static/static/js/{index.Dh5SAThV.js → index.BsYYrijt.js} +1 -1
  52. streamlit/static/static/js/{index.19_qtO6t.js → index.CGRIbGGV.js} +1 -1
  53. streamlit/static/static/js/{index.CSfsEKCF.js → index.CJQq5LcR.js} +1 -1
  54. streamlit/static/static/js/{index.Fu73QtkD.js → index.CPYB1awG.js} +1 -1
  55. streamlit/static/static/js/{index.BzwlrgZO.js → index.CVKk1nkB.js} +1 -1
  56. streamlit/static/static/js/{index.B03eQZoH.js → index.CVXiBeDI.js} +1 -1
  57. streamlit/static/static/js/{index.BRfGUOQ-.js → index.CXVpBAvU.js} +4 -4
  58. streamlit/static/static/js/{index.slgxPafU.js → index.Cfe-tCQJ.js} +1 -1
  59. streamlit/static/static/js/{index.D6X2coHR.js → index.ClFk8x0U.js} +1 -1
  60. streamlit/static/static/js/{index.WXybx2Xq.js → index.CnXxoVEM.js} +1 -1
  61. streamlit/static/static/js/{index.j4fnjyHo.js → index.Cw4eSvJ7.js} +1 -1
  62. streamlit/static/static/js/{index.KN1VmyYN.js → index.D6HCANv6.js} +1 -1
  63. streamlit/static/static/js/{index.CP-hoxJM.js → index.D7KbBAWb.js} +1 -1
  64. streamlit/static/static/js/{index.CCFwVy90.js → index.D84XHt50.js} +1 -1
  65. streamlit/static/static/js/{index.BkSwGJoh.js → index.DL_Ooizi.js} +1 -1
  66. streamlit/static/static/js/{index.QHnxuesF.js → index.DNyw7S7Z.js} +1 -1
  67. streamlit/static/static/js/{index.BAI9aHCq.js → index.DPlPEuq6.js} +1 -1
  68. streamlit/static/static/js/{index.CJ4oJe0V.js → index.DQzRwgrT.js} +1 -1
  69. streamlit/static/static/js/{index.CVlg41MB.js → index.DXRGd--0.js} +1 -1
  70. streamlit/static/static/js/{index.CIbgt5wY.js → index.DZDt5hYD.js} +1 -1
  71. streamlit/static/static/js/{index.BVT89mQw.js → index.DesNeXSA.js} +1 -1
  72. streamlit/static/static/js/{index.Boa0Egng.js → index.Dg9k4R8B.js} +1 -1
  73. streamlit/static/static/js/{index.43b777iP.js → index.Do9A7QCt.js} +1 -1
  74. streamlit/static/static/js/{index.DJ7P09eb.js → index.DrSH3pK3.js} +1 -1
  75. streamlit/static/static/js/{index.OpATzEaW.js → index.Dtd5z2rM.js} +1 -1
  76. streamlit/static/static/js/{index.BnfTPrHb.js → index.DzldU3Hy.js} +1 -1
  77. streamlit/static/static/js/{index.C0fSEz-3.js → index.GZi6GTJa.js} +1 -1
  78. streamlit/static/static/js/{index.CYE7b5Du.js → index.LOA31DFn.js} +1 -1
  79. streamlit/static/static/js/{index.Ca7MUNWJ.js → index.MtwRNvlS.js} +1 -1
  80. streamlit/static/static/js/{index.BbSFVZ3p.js → index.XHtvnZ0-.js} +1 -1
  81. streamlit/static/static/js/{index.CvIqsWy1.js → index.Yj6vcyFD.js} +1 -1
  82. streamlit/static/static/js/{index.BGBTkulf.js → index.b-MrPulo.js} +1 -1
  83. streamlit/static/static/js/{index.DGYHxruh.js → index.hcUYvTqs.js} +1 -1
  84. streamlit/static/static/js/{index.CvB9JBqS.js → index.tLZuZM89.js} +6 -6
  85. streamlit/static/static/js/{index.Xg-Qttib.js → index.wngeYhKj.js} +1 -1
  86. streamlit/static/static/js/{index.whRT3Vm3.js → index.xCV2qwtw.js} +1 -1
  87. streamlit/static/static/js/{input.CPzINTl-.js → input.CYXuTqoa.js} +1 -1
  88. streamlit/static/static/js/{main.DSPn8dUe.js → main.BE-siVKv.js} +1 -1
  89. streamlit/static/static/js/{memory.CfD8IGoU.js → memory.V554ztRg.js} +1 -1
  90. streamlit/static/static/js/{number-overlay-editor.4Ae0qegV.js → number-overlay-editor.BiUTOXIl.js} +1 -1
  91. streamlit/static/static/js/{pandasStylerUtils.D2EjZ7k6.js → pandasStylerUtils.Dej3Tstq.js} +1 -1
  92. streamlit/static/static/js/{sandbox.C6vcPIm0.js → sandbox.gpd7KGMo.js} +1 -1
  93. streamlit/static/static/js/{styled-components.BBmp8buj.js → styled-components.Coj4dr6D.js} +1 -1
  94. streamlit/static/static/js/{throttle.BPcPpy-S.js → throttle.gZUdtYp7.js} +1 -1
  95. streamlit/static/static/js/{timepicker.ryzkTs2C.js → timepicker.B-Y4aU15.js} +1 -1
  96. streamlit/static/static/js/{toConsumableArray.Dg1nDaB_.js → toConsumableArray.CcKcKvEd.js} +1 -1
  97. streamlit/static/static/js/uniqueId.PRn3V1WU.js +1 -0
  98. streamlit/static/static/js/{useBasicWidgetState.A4U5lzAm.js → useBasicWidgetState.D-fc_aIL.js} +1 -1
  99. streamlit/static/static/js/{useIntlLocale.DWJgLlNz.js → useIntlLocale.CY32IeNt.js} +1 -1
  100. streamlit/static/static/js/{useTextInputAutoExpand.BrBonw8t.js → useTextInputAutoExpand.C0jK7TwF.js} +1 -1
  101. streamlit/static/static/js/{useUpdateUiValue.BkOWyNVX.js → useUpdateUiValue.CDQloDgB.js} +1 -1
  102. streamlit/static/static/js/{useWaveformController.CBlvXlgZ.js → useWaveformController.BLEIAIDo.js} +1 -1
  103. streamlit/static/static/js/{withCalculatedWidth.D4cpOyNe.js → withCalculatedWidth.B3oSlRC0.js} +1 -1
  104. streamlit/static/static/js/{withFullScreenWrapper.BMim3w94.js → withFullScreenWrapper.Cw_ebNmr.js} +1 -1
  105. streamlit/user_info.py +225 -166
  106. {streamlit_nightly-1.52.3.dev20260113.dist-info → streamlit_nightly-1.53.1.dev20260114.dist-info}/METADATA +1 -1
  107. {streamlit_nightly-1.52.3.dev20260113.dist-info → streamlit_nightly-1.53.1.dev20260114.dist-info}/RECORD +111 -111
  108. streamlit/static/static/js/index.CrPjcPY1.js +0 -1
  109. streamlit/static/static/js/uniqueId.BFHzT5KQ.js +0 -1
  110. {streamlit_nightly-1.52.3.dev20260113.data → streamlit_nightly-1.53.1.dev20260114.data}/scripts/streamlit.cmd +0 -0
  111. {streamlit_nightly-1.52.3.dev20260113.dist-info → streamlit_nightly-1.53.1.dev20260114.dist-info}/WHEEL +0 -0
  112. {streamlit_nightly-1.52.3.dev20260113.dist-info → streamlit_nightly-1.53.1.dev20260114.dist-info}/entry_points.txt +0 -0
  113. {streamlit_nightly-1.52.3.dev20260113.dist-info → streamlit_nightly-1.53.1.dev20260114.dist-info}/top_level.txt +0 -0
@@ -277,6 +277,10 @@ def connection_factory( # type: ignore
277
277
  be specified in ``secrets.toml`` instead.
278
278
  - ``"snowflake"``: Streamlit will initialize a connection with
279
279
  |SnowflakeConnection|_.
280
+ - ``"snowflake-callers-rights"``: Streamlit will initialize a
281
+ ``"snowflake"``-type connection, except the connection uses the
282
+ current viewer's identity tokens instead of the app's connection
283
+ configuration.
280
284
  - ``"snowpark"``: Streamlit will initialize a connection with
281
285
  |SnowparkConnection|_. This is deprecated.
282
286
  - ``"sql"``: Streamlit will initialize a connection with
@@ -289,6 +293,16 @@ def connection_factory( # type: ignore
289
293
  with the referenced class, which must extend
290
294
  ``st.connections.BaseConnection``.
291
295
 
296
+ .. Important::
297
+ Connections of type ``"snowflake-callers-rights"`` only work when
298
+ they run in a Snowflake Snowpark Container Services environment. If
299
+ they are used in a local environment, they will raise exceptions.
300
+
301
+ For local development, use an environment variable or secret to
302
+ logically switch between a ``"snowflake"`` and
303
+ ``"snowflake-callers-rights"`` connection depending on the runtime
304
+ environment.
305
+
292
306
  .. |SnowflakeConnection| replace:: ``SnowflakeConnection``
293
307
  .. _SnowflakeConnection: https://docs.streamlit.io/develop/api-reference/connections/st.connections.snowflakeconnection
294
308
  .. |SnowparkConnection| replace:: ``SnowparkConnection``
@@ -324,18 +338,21 @@ def connection_factory( # type: ignore
324
338
  to use their default names and define corresponding sections in your ``secrets.toml``
325
339
  file. The following example creates a ``"sql"``-type connection.
326
340
 
327
- ``.streamlit/secrets.toml``:
341
+ .. code-block:: toml
342
+ :filename: .streamlit/secrets.toml
328
343
 
329
- >>> [connections.sql]
330
- >>> dialect = "xxx"
331
- >>> host = "xxx"
332
- >>> username = "xxx"
333
- >>> password = "xxx"
344
+ [connections.sql]
345
+ dialect = "xxx"
346
+ host = "xxx"
347
+ username = "xxx"
348
+ password = "xxx"
334
349
 
335
- Your app code:
350
+ .. code-block:: python
351
+ :filename: streamlit_app.py
336
352
 
337
- >>> import streamlit as st
338
- >>> conn = st.connection("sql")
353
+ import streamlit as st
354
+
355
+ conn = st.connection("sql")
339
356
 
340
357
  **Example 2: Named connections**
341
358
 
@@ -346,26 +363,29 @@ def connection_factory( # type: ignore
346
363
  custom name. The first defines ``type`` in the ``st.connection`` command;
347
364
  the second defines ``type`` in ``secrets.toml``.
348
365
 
349
- ``.streamlit/secrets.toml``:
366
+ .. code-block:: toml
367
+ :filename: .streamlit/secrets.toml
368
+
369
+ [connections.first_connection]
370
+ dialect = "xxx"
371
+ host = "xxx"
372
+ username = "xxx"
373
+ password = "xxx"
350
374
 
351
- >>> [connections.first_connection]
352
- >>> dialect = "xxx"
353
- >>> host = "xxx"
354
- >>> username = "xxx"
355
- >>> password = "xxx"
356
- >>>
357
- >>> [connections.second_connection]
358
- >>> type = "sql"
359
- >>> dialect = "yyy"
360
- >>> host = "yyy"
361
- >>> username = "yyy"
362
- >>> password = "yyy"
375
+ [connections.second_connection]
376
+ type = "sql"
377
+ dialect = "yyy"
378
+ host = "yyy"
379
+ username = "yyy"
380
+ password = "yyy"
363
381
 
364
- Your app code:
382
+ .. code-block:: python
383
+ :filename: streamlit_app.py
365
384
 
366
- >>> import streamlit as st
367
- >>> conn1 = st.connection("first_connection", type="sql")
368
- >>> conn2 = st.connection("second_connection")
385
+ import streamlit as st
386
+
387
+ conn1 = st.connection("first_connection", type="sql")
388
+ conn2 = st.connection("second_connection")
369
389
 
370
390
  **Example 3: Using a path to the connection class**
371
391
 
@@ -375,17 +395,20 @@ def connection_factory( # type: ignore
375
395
  creates the same type of connection as one with ``type="sql"``. Note that
376
396
  ``type`` is a string path.
377
397
 
378
- ``.streamlit/secrets.toml``:
398
+ .. code-block:: toml
399
+ :filename: .streamlit/secrets.toml
400
+
401
+ [connections.my_sql_connection]
402
+ url = "xxx+xxx://xxx:xxx@xxx:xxx/xxx"
379
403
 
380
- >>> [connections.my_sql_connection]
381
- >>> url = "xxx+xxx://xxx:xxx@xxx:xxx/xxx"
404
+ .. code-block:: python
405
+ :filename: streamlit_app.py
382
406
 
383
- Your app code:
407
+ import streamlit as st
384
408
 
385
- >>> import streamlit as st
386
- >>> conn = st.connection(
387
- ... "my_sql_connection", type="streamlit.connections.SQLConnection"
388
- ... )
409
+ conn = st.connection(
410
+ "my_sql_connection", type="streamlit.connections.SQLConnection"
411
+ )
389
412
 
390
413
  **Example 4: Importing the connection class**
391
414
 
@@ -394,16 +417,19 @@ def connection_factory( # type: ignore
394
417
  infer the exact return type of ``st.connection``. The following example
395
418
  creates the same connection as in Example 3.
396
419
 
397
- ``.streamlit/secrets.toml``:
420
+ .. code-block:: toml
421
+ :filename: .streamlit/secrets.toml
422
+
423
+ [connections.my_sql_connection]
424
+ url = "xxx+xxx://xxx:xxx@xxx:xxx/xxx"
398
425
 
399
- >>> [connections.my_sql_connection]
400
- >>> url = "xxx+xxx://xxx:xxx@xxx:xxx/xxx"
426
+ .. code-block:: python
427
+ :filename: streamlit_app.py
401
428
 
402
- Your app code:
429
+ import streamlit as st
430
+ from streamlit.connections import SQLConnection
403
431
 
404
- >>> import streamlit as st
405
- >>> from streamlit.connections import SQLConnection
406
- >>> conn = st.connection("my_sql_connection", type=SQLConnection)
432
+ conn = st.connection("my_sql_connection", type=SQLConnection)
407
433
 
408
434
  """
409
435
 
@@ -37,7 +37,7 @@
37
37
  <script>
38
38
  window.prerenderReady = false
39
39
  </script>
40
- <script type="module" crossorigin src="./static/js/index.BRfGUOQ-.js"></script>
40
+ <script type="module" crossorigin src="./static/js/index.CXVpBAvU.js"></script>
41
41
  <link rel="stylesheet" crossorigin href="./static/css/index.BUP6fTcR.css">
42
42
  </head>
43
43
  <body>