streamlit-nightly 1.46.1.dev20250622__py3-none-any.whl → 1.46.1.dev20250624__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.
- streamlit/components/types/base_custom_component.py +2 -4
- streamlit/components/v1/component_registry.py +15 -2
- streamlit/config.py +56 -4
- streamlit/elements/code.py +3 -2
- streamlit/elements/form.py +2 -1
- streamlit/elements/widgets/button_group.py +40 -1
- streamlit/proto/NewSession_pb2.py +16 -16
- streamlit/proto/NewSession_pb2.pyi +17 -2
- streamlit/static/index.html +1 -1
- streamlit/static/manifest.json +214 -214
- streamlit/static/static/js/{ErrorOutline.esm.DV0xGZr0.js → ErrorOutline.esm.DcGodXA0.js} +1 -1
- streamlit/static/static/js/{FileDownload.esm.B5OHehZX.js → FileDownload.esm.BtTSWyv0.js} +1 -1
- streamlit/static/static/js/{FileHelper.CIllbZ_T.js → FileHelper.BOV_ijyF.js} +1 -1
- streamlit/static/static/js/{FormClearHelper.B4Xd3eAo.js → FormClearHelper.YYlwo10a.js} +1 -1
- streamlit/static/static/js/{Hooks.DCO6FLy2.js → Hooks.BoB69I0K.js} +1 -1
- streamlit/static/static/js/{InputInstructions.8iiiZurT.js → InputInstructions.B5C3dEon.js} +1 -1
- streamlit/static/static/js/{ProgressBar.7dxhGygF.js → ProgressBar.2T39z4H_.js} +2 -2
- streamlit/static/static/js/{RenderInPortalIfExists.D4Mwwa5a.js → RenderInPortalIfExists.Dr06opo0.js} +1 -1
- streamlit/static/static/js/{Toolbar.MfU_z1Pl.js → Toolbar.BRouzc5U.js} +1 -1
- streamlit/static/static/js/{base-input.CD_ZJb6M.js → base-input.PyN4CoyX.js} +3 -3
- streamlit/static/static/js/{checkbox.DHKvEdaN.js → checkbox.CpyGalPT.js} +2 -2
- streamlit/static/static/js/{createSuper.CYFdzcEc.js → createSuper.Jon9k3Yt.js} +1 -1
- streamlit/static/static/js/{data-grid-overlay-editor.CASJyml1.js → data-grid-overlay-editor.D4ghymBb.js} +1 -1
- streamlit/static/static/js/{downloader.BujRtTJQ.js → downloader.FX1msyAN.js} +1 -1
- streamlit/static/static/js/{es6.BzpKRHTl.js → es6.QGDMdnvM.js} +2 -2
- streamlit/static/static/js/{iframeResizer.contentWindow.DdNKjgL-.js → iframeResizer.contentWindow.t8qLRzyv.js} +1 -1
- streamlit/static/static/js/{index.l0tODCkU.js → index.2JQx94HQ.js} +1 -1
- streamlit/static/static/js/{index.SXFI-bxq.js → index.ArgFGqRm.js} +1 -1
- streamlit/static/static/js/{index.31L_nN7t.js → index.B-vIEt1m.js} +1 -1
- streamlit/static/static/js/{index.CCloC5pv.js → index.B2Y8O1Wt.js} +1 -1
- streamlit/static/static/js/{index.BYzu-8O6.js → index.B5UnBp6n.js} +1 -1
- streamlit/static/static/js/{index.C4zuEVgR.js → index.B7osuoZN.js} +1 -1
- streamlit/static/static/js/{index.CGTmrxQF.js → index.BG2gdqVa.js} +1 -1
- streamlit/static/static/js/{index.BRALdPQV.js → index.BJhXUMZ4.js} +1 -1
- streamlit/static/static/js/{index.RGCDyZwL.js → index.BM1_hMg8.js} +1 -1
- streamlit/static/static/js/{index.25z42FPO.js → index.BTUUpB01.js} +1 -1
- streamlit/static/static/js/{index.EBCAt5lH.js → index.BXxgCK9y.js} +1 -1
- streamlit/static/static/js/{index.UT1zwx6I.js → index.B_pohBxx.js} +1 -1
- streamlit/static/static/js/index.By43fiCF.js +1 -0
- streamlit/static/static/js/{index.ofH1nMYX.js → index.Bzp1Qysi.js} +1 -1
- streamlit/static/static/js/{index.BFZO9BwP.js → index.C-vLCSJp.js} +138 -112
- streamlit/static/static/js/{index.cKbFF_YI.js → index.C4qeNI_i.js} +1 -1
- streamlit/static/static/js/{index.DvR5u8dP.js → index.C78GEvay.js} +1 -1
- streamlit/static/static/js/{index.BF7tH6NK.js → index.C8r7DD-9.js} +1 -1
- streamlit/static/static/js/{index.CweOixv3.js → index.COUW2Eq4.js} +2 -2
- streamlit/static/static/js/{index.D33D625y.js → index.CU45_Nrh.js} +1 -1
- streamlit/static/static/js/{index.Cd7pSbPb.js → index.CUBt4-Uz.js} +1 -1
- streamlit/static/static/js/{index.BmCdua0H.js → index.CZttj0Fd.js} +1 -1
- streamlit/static/static/js/{index.DSUJ0c6K.js → index.CdJwjLfQ.js} +1 -1
- streamlit/static/static/js/{index.C4XoxASX.js → index.CuLeR7Zz.js} +1 -1
- streamlit/static/static/js/{index.B5CWfjKJ.js → index.CvFBPhOY.js} +1 -1
- streamlit/static/static/js/{index.BBxmbB8u.js → index.CwKcK2uB.js} +1 -1
- streamlit/static/static/js/{index.e7dbVhPC.js → index.D4M62uXW.js} +1 -1
- streamlit/static/static/js/{index.fSbFmy0I.js → index.DdfoIDPC.js} +1 -1
- streamlit/static/static/js/{index.XK0W3e5F.js → index.DgNa_UKX.js} +6 -6
- streamlit/static/static/js/{index.pFmc4GEU.js → index.Dieu6abC.js} +1 -1
- streamlit/static/static/js/{index.CW_IFCtB.js → index.DthY-obI.js} +1 -1
- streamlit/static/static/js/{index.CNPzEZK5.js → index.Dz6zHKtI.js} +1 -1
- streamlit/static/static/js/{index.CwTKDRFO.js → index.GgMflWG-.js} +1 -1
- streamlit/static/static/js/{index.CYj0qmZR.js → index.IZ-swmmu.js} +1 -1
- streamlit/static/static/js/index.PsjpMKwq.js +2 -0
- streamlit/static/static/js/{index.kWcXsYvp.js → index.cLUrTr09.js} +1 -1
- streamlit/static/static/js/{index.BLKUfpY9.js → index.kEHB5PaN.js} +1 -1
- streamlit/static/static/js/{input.Cc_dbkdO.js → input.mfVbl2I5.js} +2 -2
- streamlit/static/static/js/{memory.BUJhegEf.js → memory.B-p09GS3.js} +1 -1
- streamlit/static/static/js/{mergeWith.BihcIFU9.js → mergeWith.D6q7TPdQ.js} +1 -1
- streamlit/static/static/js/{number-overlay-editor.t4ZZhdY2.js → number-overlay-editor.QOWTlq5z.js} +1 -1
- streamlit/static/static/js/{possibleConstructorReturn.B1UQDThh.js → possibleConstructorReturn.DO-pRPNX.js} +1 -1
- streamlit/static/static/js/{sandbox.CISGR_4e.js → sandbox.DREGkhZ5.js} +1 -1
- streamlit/static/static/js/{textarea.BXc2-al_.js → textarea.RxMqblTR.js} +2 -2
- streamlit/static/static/js/{timepicker.CmUmXHhB.js → timepicker.BSrUPnyZ.js} +4 -4
- streamlit/static/static/js/{toConsumableArray.YAwDRCO5.js → toConsumableArray.BkyyIrpf.js} +1 -1
- streamlit/static/static/js/{uniqueId.B5Af-iXZ.js → uniqueId.CXqhuYjv.js} +1 -1
- streamlit/static/static/js/{useBasicWidgetState.GEeXHHcq.js → useBasicWidgetState.QQhMYIp5.js} +1 -1
- streamlit/static/static/js/{useOnInputChange.BUgD6B0U.js → useOnInputChange.DvWbafRm.js} +1 -1
- streamlit/static/static/js/{withFullScreenWrapper.Pb8hqWLi.js → withFullScreenWrapper.CX_bKrfm.js} +1 -1
- {streamlit_nightly-1.46.1.dev20250622.dist-info → streamlit_nightly-1.46.1.dev20250624.dist-info}/METADATA +1 -1
- {streamlit_nightly-1.46.1.dev20250622.dist-info → streamlit_nightly-1.46.1.dev20250624.dist-info}/RECORD +82 -82
- streamlit/static/static/js/index.B5SF9Bg7.js +0 -1
- streamlit/static/static/js/index.BsUjj-QK.js +0 -2
- {streamlit_nightly-1.46.1.dev20250622.data → streamlit_nightly-1.46.1.dev20250624.data}/scripts/streamlit.cmd +0 -0
- {streamlit_nightly-1.46.1.dev20250622.dist-info → streamlit_nightly-1.46.1.dev20250624.dist-info}/WHEEL +0 -0
- {streamlit_nightly-1.46.1.dev20250622.dist-info → streamlit_nightly-1.46.1.dev20250624.dist-info}/entry_points.txt +0 -0
- {streamlit_nightly-1.46.1.dev20250622.dist-info → streamlit_nightly-1.46.1.dev20250624.dist-info}/top_level.txt +0 -0
@@ -41,10 +41,8 @@ class BaseCustomComponent(ABC):
|
|
41
41
|
url: str | None = None,
|
42
42
|
module_name: str | None = None,
|
43
43
|
) -> None:
|
44
|
-
if
|
45
|
-
raise StreamlitAPIException(
|
46
|
-
"Either 'path' or 'url' must be set, but not both."
|
47
|
-
)
|
44
|
+
if path is None and url is None:
|
45
|
+
raise StreamlitAPIException("Either 'path' or 'url' must be set.")
|
48
46
|
|
49
47
|
self._name = name
|
50
48
|
self._path = path
|
@@ -19,6 +19,7 @@ import os
|
|
19
19
|
from pathlib import Path
|
20
20
|
from typing import TYPE_CHECKING
|
21
21
|
|
22
|
+
from streamlit import config
|
22
23
|
from streamlit.components.v1.custom_component import CustomComponent
|
23
24
|
from streamlit.runtime import get_instance
|
24
25
|
from streamlit.runtime.scriptrunner_utils.script_run_context import get_script_run_ctx
|
@@ -77,12 +78,15 @@ def declare_component(
|
|
77
78
|
The path to serve the component's frontend files from. The path should
|
78
79
|
be absolute. If ``path`` is ``None`` (default), Streamlit will serve
|
79
80
|
the component from the location in ``url``. Either ``path`` or ``url``
|
80
|
-
must be specified,
|
81
|
+
must be specified. If both are specified, then ``url`` will take
|
82
|
+
precedence.
|
81
83
|
|
82
84
|
url: str or None
|
83
85
|
The URL that the component is served from. If ``url`` is ``None``
|
84
86
|
(default), Streamlit will serve the component from the location in
|
85
|
-
``path``. Either ``path`` or ``url`` must be specified
|
87
|
+
``path``. Either ``path`` or ``url`` must be specified. If both are
|
88
|
+
specified, then ``url`` will take precedence.
|
89
|
+
|
86
90
|
|
87
91
|
Returns
|
88
92
|
-------
|
@@ -109,6 +113,15 @@ def declare_component(
|
|
109
113
|
# Build the component name.
|
110
114
|
component_name = f"{module_name}.{name}"
|
111
115
|
|
116
|
+
# NOTE: We intentionally don't mention this behavior in this function's
|
117
|
+
# docstring as we're only using it internally for now (the config option
|
118
|
+
# is also hidden). This should be properly documented if/when we do decide
|
119
|
+
# to expose it more publicly.
|
120
|
+
if not url and (
|
121
|
+
component_base_path := config.get_option("server.customComponentBaseUrlPath")
|
122
|
+
):
|
123
|
+
url = f"{component_base_path}/{component_name}/"
|
124
|
+
|
112
125
|
# Create our component object, and register it.
|
113
126
|
component = CustomComponent(
|
114
127
|
name=component_name, path=path, url=url, module_name=module_name
|
streamlit/config.py
CHANGED
@@ -825,6 +825,19 @@ _create_option(
|
|
825
825
|
type_=str,
|
826
826
|
)
|
827
827
|
|
828
|
+
_create_option(
|
829
|
+
"server.customComponentBaseUrlPath",
|
830
|
+
description="""
|
831
|
+
The base path for the URL where Streamlit should serve custom
|
832
|
+
components. If this config var is set and a call to ``declare_component``
|
833
|
+
does not specify a URL, the component's URL will be set to
|
834
|
+
``f"{server.customComponentBaseUrlPath}/{component_name}/"``.
|
835
|
+
""",
|
836
|
+
default_val="",
|
837
|
+
type_=str,
|
838
|
+
visibility="hidden",
|
839
|
+
)
|
840
|
+
|
828
841
|
# TODO: Rename to server.enableCorsProtection.
|
829
842
|
_create_option(
|
830
843
|
"server.enableCORS",
|
@@ -1210,6 +1223,20 @@ _create_theme_options(
|
|
1210
1223
|
""",
|
1211
1224
|
)
|
1212
1225
|
|
1226
|
+
_create_theme_options(
|
1227
|
+
"codeFontWeight",
|
1228
|
+
categories=["theme"],
|
1229
|
+
description="""
|
1230
|
+
The font weight for code blocks and code text.
|
1231
|
+
|
1232
|
+
This applies to inline code, code blocks (ex: `st.code`), and font in `st.json` and `st.help`.
|
1233
|
+
Valid values are 100-900, in increments of 100.
|
1234
|
+
|
1235
|
+
When unset, the default code font weight will be 400.
|
1236
|
+
""",
|
1237
|
+
type_=int,
|
1238
|
+
)
|
1239
|
+
|
1213
1240
|
_create_theme_options(
|
1214
1241
|
"headingFont",
|
1215
1242
|
categories=["theme", CustomThemeCategories.SIDEBAR],
|
@@ -1318,6 +1345,17 @@ _create_theme_options(
|
|
1318
1345
|
""",
|
1319
1346
|
)
|
1320
1347
|
|
1348
|
+
_create_theme_options(
|
1349
|
+
"dataframeHeaderBackgroundColor",
|
1350
|
+
categories=["theme", CustomThemeCategories.SIDEBAR],
|
1351
|
+
description="""
|
1352
|
+
The background color of the dataframe's header.
|
1353
|
+
|
1354
|
+
If no dataframe header background color is set, Streamlit uses a mix of
|
1355
|
+
`theme.bgColor` and `theme.secondaryBg`.
|
1356
|
+
""",
|
1357
|
+
)
|
1358
|
+
|
1321
1359
|
_create_theme_options(
|
1322
1360
|
"showWidgetBorder",
|
1323
1361
|
categories=["theme", CustomThemeCategories.SIDEBAR],
|
@@ -1327,6 +1365,16 @@ _create_theme_options(
|
|
1327
1365
|
type_=bool,
|
1328
1366
|
)
|
1329
1367
|
|
1368
|
+
_create_theme_options(
|
1369
|
+
"showSidebarBorder",
|
1370
|
+
categories=["theme"],
|
1371
|
+
description="""
|
1372
|
+
Whether to show a vertical separator between the sidebar and the main
|
1373
|
+
content area.
|
1374
|
+
""",
|
1375
|
+
type_=bool,
|
1376
|
+
)
|
1377
|
+
|
1330
1378
|
_create_theme_options(
|
1331
1379
|
"baseFontSize",
|
1332
1380
|
categories=["theme"],
|
@@ -1341,13 +1389,17 @@ _create_theme_options(
|
|
1341
1389
|
)
|
1342
1390
|
|
1343
1391
|
_create_theme_options(
|
1344
|
-
"
|
1392
|
+
"baseFontWeight",
|
1345
1393
|
categories=["theme"],
|
1346
1394
|
description="""
|
1347
|
-
|
1348
|
-
|
1395
|
+
Sets the root font weight for the app.
|
1396
|
+
|
1397
|
+
This determines the overall weight of text and UI elements.
|
1398
|
+
Valid values are 100-600, in increments of 100.
|
1399
|
+
|
1400
|
+
When unset, the font weight will be set to normal 400.
|
1349
1401
|
""",
|
1350
|
-
type_=
|
1402
|
+
type_=int,
|
1351
1403
|
)
|
1352
1404
|
|
1353
1405
|
# Config Section: Secrets #
|
streamlit/elements/code.py
CHANGED
@@ -15,9 +15,10 @@
|
|
15
15
|
from __future__ import annotations
|
16
16
|
|
17
17
|
import re
|
18
|
-
from typing import TYPE_CHECKING,
|
18
|
+
from typing import TYPE_CHECKING, cast
|
19
19
|
|
20
20
|
from streamlit.elements.lib.layout_utils import (
|
21
|
+
Height,
|
21
22
|
LayoutConfig,
|
22
23
|
WidthWithoutContent,
|
23
24
|
validate_height,
|
@@ -40,7 +41,7 @@ class CodeMixin:
|
|
40
41
|
*,
|
41
42
|
line_numbers: bool = False,
|
42
43
|
wrap_lines: bool = False,
|
43
|
-
height:
|
44
|
+
height: Height | None = "content",
|
44
45
|
width: WidthWithoutContent = "stretch",
|
45
46
|
) -> DeltaGenerator:
|
46
47
|
"""Display a code block with optional syntax highlighting.
|
streamlit/elements/form.py
CHANGED
@@ -18,6 +18,7 @@ from typing import TYPE_CHECKING, Literal, cast
|
|
18
18
|
|
19
19
|
from streamlit.elements.lib.form_utils import FormData, current_form_id, is_in_form
|
20
20
|
from streamlit.elements.lib.layout_utils import (
|
21
|
+
Height,
|
21
22
|
Width,
|
22
23
|
get_height_config,
|
23
24
|
get_width_config,
|
@@ -75,7 +76,7 @@ class FormMixin:
|
|
75
76
|
enter_to_submit: bool = True,
|
76
77
|
border: bool = True,
|
77
78
|
width: Width = "stretch",
|
78
|
-
height:
|
79
|
+
height: Height = "content",
|
79
80
|
) -> DeltaGenerator:
|
80
81
|
"""Create a form that batches elements together with a "Submit" button.
|
81
82
|
|
@@ -31,6 +31,11 @@ from typing import (
|
|
31
31
|
from typing_extensions import TypeAlias
|
32
32
|
|
33
33
|
from streamlit.elements.lib.form_utils import current_form_id
|
34
|
+
from streamlit.elements.lib.layout_utils import (
|
35
|
+
LayoutConfig,
|
36
|
+
Width,
|
37
|
+
validate_width,
|
38
|
+
)
|
34
39
|
from streamlit.elements.lib.options_selector_utils import (
|
35
40
|
check_and_convert_to_indices,
|
36
41
|
convert_to_sequence_and_check_comparable,
|
@@ -276,6 +281,7 @@ class ButtonGroupMixin:
|
|
276
281
|
on_change: WidgetCallback | None = None,
|
277
282
|
args: WidgetArgs | None = None,
|
278
283
|
kwargs: WidgetKwargs | None = None,
|
284
|
+
width: Width = "content",
|
279
285
|
) -> Literal[0, 1] | None: ...
|
280
286
|
@overload
|
281
287
|
def feedback(
|
@@ -287,6 +293,7 @@ class ButtonGroupMixin:
|
|
287
293
|
on_change: WidgetCallback | None = None,
|
288
294
|
args: WidgetArgs | None = None,
|
289
295
|
kwargs: WidgetKwargs | None = None,
|
296
|
+
width: Width = "content",
|
290
297
|
) -> Literal[0, 1, 2, 3, 4] | None: ...
|
291
298
|
@gather_metrics("feedback")
|
292
299
|
def feedback(
|
@@ -298,6 +305,7 @@ class ButtonGroupMixin:
|
|
298
305
|
on_change: WidgetCallback | None = None,
|
299
306
|
args: WidgetArgs | None = None,
|
300
307
|
kwargs: WidgetKwargs | None = None,
|
308
|
+
width: Width = "content",
|
301
309
|
) -> int | None:
|
302
310
|
"""Display a feedback widget.
|
303
311
|
|
@@ -338,6 +346,11 @@ class ButtonGroupMixin:
|
|
338
346
|
kwargs : dict
|
339
347
|
An optional dict of kwargs to pass to the callback.
|
340
348
|
|
349
|
+
width : int or "stretch" or "content"
|
350
|
+
The width of the feedback widget. Can be an integer (pixels),
|
351
|
+
"stretch" to use the full width of the container, or "content"
|
352
|
+
(default) to size based on the content.
|
353
|
+
|
341
354
|
Returns
|
342
355
|
-------
|
343
356
|
int or None
|
@@ -408,6 +421,7 @@ class ButtonGroupMixin:
|
|
408
421
|
kwargs=kwargs,
|
409
422
|
selection_visualization=selection_visualization,
|
410
423
|
style="borderless",
|
424
|
+
width=width,
|
411
425
|
)
|
412
426
|
return sentiment.value
|
413
427
|
|
@@ -427,6 +441,7 @@ class ButtonGroupMixin:
|
|
427
441
|
kwargs: WidgetKwargs | None = None,
|
428
442
|
disabled: bool = False,
|
429
443
|
label_visibility: LabelVisibility = "visible",
|
444
|
+
width: Width = "content",
|
430
445
|
) -> V | None: ...
|
431
446
|
@overload
|
432
447
|
def pills(
|
@@ -444,6 +459,7 @@ class ButtonGroupMixin:
|
|
444
459
|
kwargs: WidgetKwargs | None = None,
|
445
460
|
disabled: bool = False,
|
446
461
|
label_visibility: LabelVisibility = "visible",
|
462
|
+
width: Width = "content",
|
447
463
|
) -> list[V]: ...
|
448
464
|
@gather_metrics("pills")
|
449
465
|
def pills(
|
@@ -461,6 +477,7 @@ class ButtonGroupMixin:
|
|
461
477
|
kwargs: WidgetKwargs | None = None,
|
462
478
|
disabled: bool = False,
|
463
479
|
label_visibility: LabelVisibility = "visible",
|
480
|
+
width: Width = "content",
|
464
481
|
) -> list[V] | V | None:
|
465
482
|
r"""Display a pills widget.
|
466
483
|
|
@@ -553,6 +570,11 @@ class ButtonGroupMixin:
|
|
553
570
|
label, which can help keep the widget aligned with other widgets.
|
554
571
|
If this is ``"collapsed"``, Streamlit displays no label or spacer.
|
555
572
|
|
573
|
+
width: int or "stretch" or "content"
|
574
|
+
The width of the widget. Can be an integer (pixels), "stretch" to use
|
575
|
+
the full width of the container, or "content" (default) to size based
|
576
|
+
on the content.
|
577
|
+
|
556
578
|
Returns
|
557
579
|
-------
|
558
580
|
list of V, V, or None
|
@@ -618,6 +640,7 @@ class ButtonGroupMixin:
|
|
618
640
|
kwargs=kwargs,
|
619
641
|
disabled=disabled,
|
620
642
|
label_visibility=label_visibility,
|
643
|
+
width=width,
|
621
644
|
)
|
622
645
|
|
623
646
|
@overload
|
@@ -636,6 +659,7 @@ class ButtonGroupMixin:
|
|
636
659
|
kwargs: WidgetKwargs | None = None,
|
637
660
|
disabled: bool = False,
|
638
661
|
label_visibility: LabelVisibility = "visible",
|
662
|
+
width: Width = "content",
|
639
663
|
) -> V | None: ...
|
640
664
|
@overload
|
641
665
|
def segmented_control(
|
@@ -653,6 +677,7 @@ class ButtonGroupMixin:
|
|
653
677
|
kwargs: WidgetKwargs | None = None,
|
654
678
|
disabled: bool = False,
|
655
679
|
label_visibility: LabelVisibility = "visible",
|
680
|
+
width: Width = "content",
|
656
681
|
) -> list[V]: ...
|
657
682
|
|
658
683
|
@gather_metrics("segmented_control")
|
@@ -671,6 +696,7 @@ class ButtonGroupMixin:
|
|
671
696
|
kwargs: WidgetKwargs | None = None,
|
672
697
|
disabled: bool = False,
|
673
698
|
label_visibility: LabelVisibility = "visible",
|
699
|
+
width: Width = "content",
|
674
700
|
) -> list[V] | V | None:
|
675
701
|
r"""Display a segmented control widget.
|
676
702
|
|
@@ -762,6 +788,11 @@ class ButtonGroupMixin:
|
|
762
788
|
label, which can help keep the widget aligned with other widgets.
|
763
789
|
If this is ``"collapsed"``, Streamlit displays no label or spacer.
|
764
790
|
|
791
|
+
width: int or "stretch" or "content"
|
792
|
+
The width of the widget. Can be an integer (pixels), "stretch" to
|
793
|
+
use the full width of the container, or "content" (default) to size
|
794
|
+
based on the content.
|
795
|
+
|
765
796
|
Returns
|
766
797
|
-------
|
767
798
|
list of V, V, or None
|
@@ -830,6 +861,7 @@ class ButtonGroupMixin:
|
|
830
861
|
kwargs=kwargs,
|
831
862
|
disabled=disabled,
|
832
863
|
label_visibility=label_visibility,
|
864
|
+
width=width,
|
833
865
|
)
|
834
866
|
|
835
867
|
@gather_metrics("_internal_button_group")
|
@@ -849,6 +881,7 @@ class ButtonGroupMixin:
|
|
849
881
|
label: str | None = None,
|
850
882
|
label_visibility: LabelVisibility = "visible",
|
851
883
|
help: str | None = None,
|
884
|
+
width: Width = "content",
|
852
885
|
) -> list[V] | V | None:
|
853
886
|
maybe_raise_label_warnings(label, label_visibility)
|
854
887
|
|
@@ -902,6 +935,7 @@ class ButtonGroupMixin:
|
|
902
935
|
kwargs=kwargs,
|
903
936
|
label=label,
|
904
937
|
label_visibility=label_visibility,
|
938
|
+
width=width,
|
905
939
|
)
|
906
940
|
|
907
941
|
if selection_mode == "multi":
|
@@ -932,6 +966,7 @@ class ButtonGroupMixin:
|
|
932
966
|
label: str | None = None,
|
933
967
|
label_visibility: LabelVisibility = "visible",
|
934
968
|
help: str | None = None,
|
969
|
+
width: Width = "content",
|
935
970
|
) -> RegisterWidgetResult[T]:
|
936
971
|
_maybe_raise_selection_mode_warning(selection_mode)
|
937
972
|
|
@@ -967,6 +1002,9 @@ class ButtonGroupMixin:
|
|
967
1002
|
if default is not None and len(default) == 0:
|
968
1003
|
_default = None
|
969
1004
|
|
1005
|
+
validate_width(width, allow_content=True)
|
1006
|
+
layout_config = LayoutConfig(width=width)
|
1007
|
+
|
970
1008
|
check_widget_policies(self.dg, key, on_change, default_value=_default)
|
971
1009
|
|
972
1010
|
widget_name = "button_group"
|
@@ -989,6 +1027,7 @@ class ButtonGroupMixin:
|
|
989
1027
|
default=default,
|
990
1028
|
click_mode=parsed_selection_mode,
|
991
1029
|
style=style,
|
1030
|
+
width=width,
|
992
1031
|
)
|
993
1032
|
|
994
1033
|
proto = _build_proto(
|
@@ -1023,7 +1062,7 @@ class ButtonGroupMixin:
|
|
1023
1062
|
if ctx:
|
1024
1063
|
save_for_app_testing(ctx, element_id, format_func)
|
1025
1064
|
|
1026
|
-
self.dg._enqueue(widget_name, proto)
|
1065
|
+
self.dg._enqueue(widget_name, proto, layout_config=layout_config)
|
1027
1066
|
|
1028
1067
|
return widget_state
|
1029
1068
|
|
@@ -16,7 +16,7 @@ from streamlit.proto import AppPage_pb2 as streamlit_dot_proto_dot_AppPage__pb2
|
|
16
16
|
from streamlit.proto import SessionStatus_pb2 as streamlit_dot_proto_dot_SessionStatus__pb2
|
17
17
|
|
18
18
|
|
19
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n streamlit/proto/NewSession.proto\x1a\x1dstreamlit/proto/AppPage.proto\x1a#streamlit/proto/SessionStatus.proto\"\xa5\x02\n\nNewSession\x12\x1f\n\ninitialize\x18\x01 \x01(\x0b\x32\x0b.Initialize\x12\x15\n\rscript_run_id\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x18\n\x10main_script_path\x18\x04 \x01(\t\x12\x17\n\x06\x63onfig\x18\x06 \x01(\x0b\x32\x07.Config\x12(\n\x0c\x63ustom_theme\x18\x07 \x01(\x0b\x32\x12.CustomThemeConfig\x12\x1b\n\tapp_pages\x18\x08 \x03(\x0b\x32\x08.AppPage\x12\x18\n\x10page_script_hash\x18\t \x01(\t\x12\x1d\n\x15\x66ragment_ids_this_run\x18\n \x03(\t\x12\x18\n\x10main_script_hash\x18\x0b \x01(\tJ\x04\x08\x05\x10\x06\"\xba\x01\n\nInitialize\x12\x1c\n\tuser_info\x18\x01 \x01(\x0b\x32\t.UserInfo\x12*\n\x10\x65nvironment_info\x18\x03 \x01(\x0b\x32\x10.EnvironmentInfo\x12&\n\x0esession_status\x18\x04 \x01(\x0b\x32\x0e.SessionStatus\x12\x14\n\x0c\x63ommand_line\x18\x05 \x01(\t\x12\x12\n\nsession_id\x18\x06 \x01(\t\x12\x10\n\x08is_hello\x18\x07 \x01(\x08\"\x97\x02\n\x06\x43onfig\x12\x1a\n\x12gather_usage_stats\x18\x02 \x01(\x08\x12\x1e\n\x16max_cached_message_age\x18\x03 \x01(\x05\x12\x14\n\x0cmapbox_token\x18\x04 \x01(\t\x12\x19\n\x11\x61llow_run_on_save\x18\x05 \x01(\x08\x12\x14\n\x0chide_top_bar\x18\x06 \x01(\x08\x12\x18\n\x10hide_sidebar_nav\x18\x07 \x01(\x08\x12)\n\x0ctoolbar_mode\x18\x08 \x01(\x0e\x32\x13.Config.ToolbarMode\"?\n\x0bToolbarMode\x12\x08\n\x04\x41UTO\x10\x00\x12\r\n\tDEVELOPER\x10\x01\x12\n\n\x06VIEWER\x10\x02\x12\x0b\n\x07MINIMAL\x10\x03J\x04\x08\x01\x10\x02\"\
|
19
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n streamlit/proto/NewSession.proto\x1a\x1dstreamlit/proto/AppPage.proto\x1a#streamlit/proto/SessionStatus.proto\"\xa5\x02\n\nNewSession\x12\x1f\n\ninitialize\x18\x01 \x01(\x0b\x32\x0b.Initialize\x12\x15\n\rscript_run_id\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x18\n\x10main_script_path\x18\x04 \x01(\t\x12\x17\n\x06\x63onfig\x18\x06 \x01(\x0b\x32\x07.Config\x12(\n\x0c\x63ustom_theme\x18\x07 \x01(\x0b\x32\x12.CustomThemeConfig\x12\x1b\n\tapp_pages\x18\x08 \x03(\x0b\x32\x08.AppPage\x12\x18\n\x10page_script_hash\x18\t \x01(\t\x12\x1d\n\x15\x66ragment_ids_this_run\x18\n \x03(\t\x12\x18\n\x10main_script_hash\x18\x0b \x01(\tJ\x04\x08\x05\x10\x06\"\xba\x01\n\nInitialize\x12\x1c\n\tuser_info\x18\x01 \x01(\x0b\x32\t.UserInfo\x12*\n\x10\x65nvironment_info\x18\x03 \x01(\x0b\x32\x10.EnvironmentInfo\x12&\n\x0esession_status\x18\x04 \x01(\x0b\x32\x0e.SessionStatus\x12\x14\n\x0c\x63ommand_line\x18\x05 \x01(\t\x12\x12\n\nsession_id\x18\x06 \x01(\t\x12\x10\n\x08is_hello\x18\x07 \x01(\x08\"\x97\x02\n\x06\x43onfig\x12\x1a\n\x12gather_usage_stats\x18\x02 \x01(\x08\x12\x1e\n\x16max_cached_message_age\x18\x03 \x01(\x05\x12\x14\n\x0cmapbox_token\x18\x04 \x01(\t\x12\x19\n\x11\x61llow_run_on_save\x18\x05 \x01(\x08\x12\x14\n\x0chide_top_bar\x18\x06 \x01(\x08\x12\x18\n\x10hide_sidebar_nav\x18\x07 \x01(\x08\x12)\n\x0ctoolbar_mode\x18\x08 \x01(\x0e\x32\x13.Config.ToolbarMode\"?\n\x0bToolbarMode\x12\x08\n\x04\x41UTO\x10\x00\x12\r\n\tDEVELOPER\x10\x01\x12\n\n\x06VIEWER\x10\x02\x12\x0b\n\x07MINIMAL\x10\x03J\x04\x08\x01\x10\x02\"\xc2\n\n\x11\x43ustomThemeConfig\x12\x15\n\rprimary_color\x18\x01 \x01(\t\x12\"\n\x1asecondary_background_color\x18\x02 \x01(\t\x12\x18\n\x10\x62\x61\x63kground_color\x18\x03 \x01(\t\x12\x12\n\ntext_color\x18\x04 \x01(\t\x12+\n\x04\x66ont\x18\x05 \x01(\x0e\x32\x1d.CustomThemeConfig.FontFamily\x12*\n\x04\x62\x61se\x18\x06 \x01(\x0e\x32\x1c.CustomThemeConfig.BaseTheme\x12\x1f\n\x17widget_background_color\x18\x07 \x01(\t\x12\x1b\n\x13widget_border_color\x18\x08 \x01(\t\x12\x15\n\x05radii\x18\t \x01(\x0b\x32\x06.Radii\x12\x14\n\x0cheading_font\x18\x0c \x01(\t\x12\x11\n\tbody_font\x18\r \x01(\t\x12\x11\n\tcode_font\x18\x0e \x01(\t\x12\x1d\n\nfont_faces\x18\x0f \x03(\x0b\x32\t.FontFace\x12\x1e\n\nfont_sizes\x18\x10 \x01(\x0b\x32\n.FontSizes\x12!\n\x19skeleton_background_color\x18\x11 \x01(\t\x12\x18\n\x0b\x62\x61se_radius\x18\x12 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\rbutton_radius\x18\x1a \x01(\tH\x01\x88\x01\x01\x12\x19\n\x0c\x62order_color\x18\x13 \x01(\tH\x02\x88\x01\x01\x12#\n\x16\x64\x61taframe_border_color\x18\x1b \x01(\tH\x03\x88\x01\x01\x12\x1f\n\x12show_widget_border\x18\x14 \x01(\x08H\x04\x88\x01\x01\x12\x17\n\nlink_color\x18\x15 \x01(\tH\x05\x88\x01\x01\x12\x1b\n\x0elink_underline\x18\x1d \x01(\x08H\x06\x88\x01\x01\x12\x1b\n\x0e\x62\x61se_font_size\x18\x16 \x01(\x05H\x07\x88\x01\x01\x12\x1d\n\x10\x62\x61se_font_weight\x18\x1e \x01(\x05H\x08\x88\x01\x01\x12\x1d\n\x10\x63ode_font_weight\x18 \x01(\x05H\t\x88\x01\x01\x12\x1b\n\x0e\x63ode_font_size\x18\x1c \x01(\tH\n\x88\x01\x01\x12 \n\x13show_sidebar_border\x18\x17 \x01(\x08H\x0b\x88\x01\x01\x12(\n\x07sidebar\x18\x18 \x01(\x0b\x32\x12.CustomThemeConfigH\x0c\x88\x01\x01\x12\"\n\x15\x63ode_background_color\x18\x19 \x01(\tH\r\x88\x01\x01\x12.\n!dataframe_header_background_color\x18\x1f \x01(\tH\x0e\x88\x01\x01\" \n\tBaseTheme\x12\t\n\x05LIGHT\x10\x00\x12\x08\n\x04\x44\x41RK\x10\x01\"6\n\nFontFamily\x12\x0e\n\nSANS_SERIF\x10\x00\x12\t\n\x05SERIF\x10\x01\x12\r\n\tMONOSPACE\x10\x02\x42\x0e\n\x0c_base_radiusB\x10\n\x0e_button_radiusB\x0f\n\r_border_colorB\x19\n\x17_dataframe_border_colorB\x15\n\x13_show_widget_borderB\r\n\x0b_link_colorB\x11\n\x0f_link_underlineB\x11\n\x0f_base_font_sizeB\x13\n\x11_base_font_weightB\x13\n\x11_code_font_weightB\x11\n\x0f_code_font_sizeB\x16\n\x14_show_sidebar_borderB\n\n\x08_sidebarB\x18\n\x16_code_background_colorB$\n\"_dataframe_header_background_color\"w\n\x08\x46ontFace\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x0e\n\x06\x66\x61mily\x18\x02 \x01(\t\x12\x12\n\x06weight\x18\x03 \x01(\x05\x42\x02\x18\x01\x12\x14\n\x0cweight_range\x18\x05 \x01(\t\x12\r\n\x05style\x18\x04 \x01(\t\x12\x15\n\runicode_range\x18\x06 \x01(\t\"<\n\x05Radii\x12\x1a\n\x12\x62\x61se_widget_radius\x18\x01 \x01(\x05\x12\x17\n\x0f\x63heckbox_radius\x18\x02 \x01(\x05\"T\n\tFontSizes\x12\x16\n\x0etiny_font_size\x18\x01 \x01(\x05\x12\x17\n\x0fsmall_font_size\x18\x02 \x01(\x05\x12\x16\n\x0e\x62\x61se_font_size\x18\x03 \x01(\x05\"a\n\x08UserInfo\x12\x17\n\x0finstallation_id\x18\x01 \x01(\t\x12\x1a\n\x12installation_id_v3\x18\x05 \x01(\t\x12\x1a\n\x12installation_id_v4\x18\x06 \x01(\tJ\x04\x08\x02\x10\x03\"l\n\x0f\x45nvironmentInfo\x12\x19\n\x11streamlit_version\x18\x01 \x01(\t\x12\x16\n\x0epython_version\x18\x02 \x01(\t\x12\x11\n\tserver_os\x18\x03 \x01(\t\x12\x13\n\x0bhas_display\x18\x04 \x01(\x08\x42/\n\x1c\x63om.snowflake.apps.streamlitB\x0fNewSessionProtob\x06proto3')
|
20
20
|
|
21
21
|
_globals = globals()
|
22
22
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
@@ -35,19 +35,19 @@ if not _descriptor._USE_C_DESCRIPTORS:
|
|
35
35
|
_globals['_CONFIG_TOOLBARMODE']._serialized_start=800
|
36
36
|
_globals['_CONFIG_TOOLBARMODE']._serialized_end=863
|
37
37
|
_globals['_CUSTOMTHEMECONFIG']._serialized_start=872
|
38
|
-
_globals['_CUSTOMTHEMECONFIG']._serialized_end=
|
39
|
-
_globals['_CUSTOMTHEMECONFIG_BASETHEME']._serialized_start=
|
40
|
-
_globals['_CUSTOMTHEMECONFIG_BASETHEME']._serialized_end=
|
41
|
-
_globals['_CUSTOMTHEMECONFIG_FONTFAMILY']._serialized_start=
|
42
|
-
_globals['_CUSTOMTHEMECONFIG_FONTFAMILY']._serialized_end=
|
43
|
-
_globals['_FONTFACE']._serialized_start=
|
44
|
-
_globals['_FONTFACE']._serialized_end=
|
45
|
-
_globals['_RADII']._serialized_start=
|
46
|
-
_globals['_RADII']._serialized_end=
|
47
|
-
_globals['_FONTSIZES']._serialized_start=
|
48
|
-
_globals['_FONTSIZES']._serialized_end=
|
49
|
-
_globals['_USERINFO']._serialized_start=
|
50
|
-
_globals['_USERINFO']._serialized_end=
|
51
|
-
_globals['_ENVIRONMENTINFO']._serialized_start=
|
52
|
-
_globals['_ENVIRONMENTINFO']._serialized_end=
|
38
|
+
_globals['_CUSTOMTHEMECONFIG']._serialized_end=2218
|
39
|
+
_globals['_CUSTOMTHEMECONFIG_BASETHEME']._serialized_start=1815
|
40
|
+
_globals['_CUSTOMTHEMECONFIG_BASETHEME']._serialized_end=1847
|
41
|
+
_globals['_CUSTOMTHEMECONFIG_FONTFAMILY']._serialized_start=1849
|
42
|
+
_globals['_CUSTOMTHEMECONFIG_FONTFAMILY']._serialized_end=1903
|
43
|
+
_globals['_FONTFACE']._serialized_start=2220
|
44
|
+
_globals['_FONTFACE']._serialized_end=2339
|
45
|
+
_globals['_RADII']._serialized_start=2341
|
46
|
+
_globals['_RADII']._serialized_end=2401
|
47
|
+
_globals['_FONTSIZES']._serialized_start=2403
|
48
|
+
_globals['_FONTSIZES']._serialized_end=2487
|
49
|
+
_globals['_USERINFO']._serialized_start=2489
|
50
|
+
_globals['_USERINFO']._serialized_end=2586
|
51
|
+
_globals['_ENVIRONMENTINFO']._serialized_start=2588
|
52
|
+
_globals['_ENVIRONMENTINFO']._serialized_end=2696
|
53
53
|
# @@protoc_insertion_point(module_scope)
|
@@ -292,10 +292,13 @@ class CustomThemeConfig(google.protobuf.message.Message):
|
|
292
292
|
LINK_COLOR_FIELD_NUMBER: builtins.int
|
293
293
|
LINK_UNDERLINE_FIELD_NUMBER: builtins.int
|
294
294
|
BASE_FONT_SIZE_FIELD_NUMBER: builtins.int
|
295
|
+
BASE_FONT_WEIGHT_FIELD_NUMBER: builtins.int
|
296
|
+
CODE_FONT_WEIGHT_FIELD_NUMBER: builtins.int
|
295
297
|
CODE_FONT_SIZE_FIELD_NUMBER: builtins.int
|
296
298
|
SHOW_SIDEBAR_BORDER_FIELD_NUMBER: builtins.int
|
297
299
|
SIDEBAR_FIELD_NUMBER: builtins.int
|
298
300
|
CODE_BACKGROUND_COLOR_FIELD_NUMBER: builtins.int
|
301
|
+
DATAFRAME_HEADER_BACKGROUND_COLOR_FIELD_NUMBER: builtins.int
|
299
302
|
primary_color: builtins.str
|
300
303
|
secondary_background_color: builtins.str
|
301
304
|
background_color: builtins.str
|
@@ -320,9 +323,12 @@ class CustomThemeConfig(google.protobuf.message.Message):
|
|
320
323
|
link_color: builtins.str
|
321
324
|
link_underline: builtins.bool
|
322
325
|
base_font_size: builtins.int
|
326
|
+
base_font_weight: builtins.int
|
327
|
+
code_font_weight: builtins.int
|
323
328
|
code_font_size: builtins.str
|
324
329
|
show_sidebar_border: builtins.bool
|
325
330
|
code_background_color: builtins.str
|
331
|
+
dataframe_header_background_color: builtins.str
|
326
332
|
@property
|
327
333
|
def radii(self) -> global___Radii:
|
328
334
|
"""DEPRECATED: Please use the base_radius theme config instead:"""
|
@@ -361,16 +367,21 @@ class CustomThemeConfig(google.protobuf.message.Message):
|
|
361
367
|
link_color: builtins.str | None = ...,
|
362
368
|
link_underline: builtins.bool | None = ...,
|
363
369
|
base_font_size: builtins.int | None = ...,
|
370
|
+
base_font_weight: builtins.int | None = ...,
|
371
|
+
code_font_weight: builtins.int | None = ...,
|
364
372
|
code_font_size: builtins.str | None = ...,
|
365
373
|
show_sidebar_border: builtins.bool | None = ...,
|
366
374
|
sidebar: global___CustomThemeConfig | None = ...,
|
367
375
|
code_background_color: builtins.str | None = ...,
|
376
|
+
dataframe_header_background_color: builtins.str | None = ...,
|
368
377
|
) -> None: ...
|
369
|
-
def HasField(self, field_name: typing.Literal["_base_font_size", b"_base_font_size", "_base_radius", b"_base_radius", "_border_color", b"_border_color", "_button_radius", b"_button_radius", "_code_background_color", b"_code_background_color", "_code_font_size", b"_code_font_size", "_dataframe_border_color", b"_dataframe_border_color", "_link_color", b"_link_color", "_link_underline", b"_link_underline", "_show_sidebar_border", b"_show_sidebar_border", "_show_widget_border", b"_show_widget_border", "_sidebar", b"_sidebar", "base_font_size", b"base_font_size", "base_radius", b"base_radius", "border_color", b"border_color", "button_radius", b"button_radius", "code_background_color", b"code_background_color", "code_font_size", b"code_font_size", "dataframe_border_color", b"dataframe_border_color", "font_sizes", b"font_sizes", "link_color", b"link_color", "link_underline", b"link_underline", "radii", b"radii", "show_sidebar_border", b"show_sidebar_border", "show_widget_border", b"show_widget_border", "sidebar", b"sidebar"]) -> builtins.bool: ...
|
370
|
-
def ClearField(self, field_name: typing.Literal["_base_font_size", b"_base_font_size", "_base_radius", b"_base_radius", "_border_color", b"_border_color", "_button_radius", b"_button_radius", "_code_background_color", b"_code_background_color", "_code_font_size", b"_code_font_size", "_dataframe_border_color", b"_dataframe_border_color", "_link_color", b"_link_color", "_link_underline", b"_link_underline", "_show_sidebar_border", b"_show_sidebar_border", "_show_widget_border", b"_show_widget_border", "_sidebar", b"_sidebar", "background_color", b"background_color", "base", b"base", "base_font_size", b"base_font_size", "base_radius", b"base_radius", "body_font", b"body_font", "border_color", b"border_color", "button_radius", b"button_radius", "code_background_color", b"code_background_color", "code_font", b"code_font", "code_font_size", b"code_font_size", "dataframe_border_color", b"dataframe_border_color", "font", b"font", "font_faces", b"font_faces", "font_sizes", b"font_sizes", "heading_font", b"heading_font", "link_color", b"link_color", "link_underline", b"link_underline", "primary_color", b"primary_color", "radii", b"radii", "secondary_background_color", b"secondary_background_color", "show_sidebar_border", b"show_sidebar_border", "show_widget_border", b"show_widget_border", "sidebar", b"sidebar", "skeleton_background_color", b"skeleton_background_color", "text_color", b"text_color", "widget_background_color", b"widget_background_color", "widget_border_color", b"widget_border_color"]) -> None: ...
|
378
|
+
def HasField(self, field_name: typing.Literal["_base_font_size", b"_base_font_size", "_base_font_weight", b"_base_font_weight", "_base_radius", b"_base_radius", "_border_color", b"_border_color", "_button_radius", b"_button_radius", "_code_background_color", b"_code_background_color", "_code_font_size", b"_code_font_size", "_code_font_weight", b"_code_font_weight", "_dataframe_border_color", b"_dataframe_border_color", "_dataframe_header_background_color", b"_dataframe_header_background_color", "_link_color", b"_link_color", "_link_underline", b"_link_underline", "_show_sidebar_border", b"_show_sidebar_border", "_show_widget_border", b"_show_widget_border", "_sidebar", b"_sidebar", "base_font_size", b"base_font_size", "base_font_weight", b"base_font_weight", "base_radius", b"base_radius", "border_color", b"border_color", "button_radius", b"button_radius", "code_background_color", b"code_background_color", "code_font_size", b"code_font_size", "code_font_weight", b"code_font_weight", "dataframe_border_color", b"dataframe_border_color", "dataframe_header_background_color", b"dataframe_header_background_color", "font_sizes", b"font_sizes", "link_color", b"link_color", "link_underline", b"link_underline", "radii", b"radii", "show_sidebar_border", b"show_sidebar_border", "show_widget_border", b"show_widget_border", "sidebar", b"sidebar"]) -> builtins.bool: ...
|
379
|
+
def ClearField(self, field_name: typing.Literal["_base_font_size", b"_base_font_size", "_base_font_weight", b"_base_font_weight", "_base_radius", b"_base_radius", "_border_color", b"_border_color", "_button_radius", b"_button_radius", "_code_background_color", b"_code_background_color", "_code_font_size", b"_code_font_size", "_code_font_weight", b"_code_font_weight", "_dataframe_border_color", b"_dataframe_border_color", "_dataframe_header_background_color", b"_dataframe_header_background_color", "_link_color", b"_link_color", "_link_underline", b"_link_underline", "_show_sidebar_border", b"_show_sidebar_border", "_show_widget_border", b"_show_widget_border", "_sidebar", b"_sidebar", "background_color", b"background_color", "base", b"base", "base_font_size", b"base_font_size", "base_font_weight", b"base_font_weight", "base_radius", b"base_radius", "body_font", b"body_font", "border_color", b"border_color", "button_radius", b"button_radius", "code_background_color", b"code_background_color", "code_font", b"code_font", "code_font_size", b"code_font_size", "code_font_weight", b"code_font_weight", "dataframe_border_color", b"dataframe_border_color", "dataframe_header_background_color", b"dataframe_header_background_color", "font", b"font", "font_faces", b"font_faces", "font_sizes", b"font_sizes", "heading_font", b"heading_font", "link_color", b"link_color", "link_underline", b"link_underline", "primary_color", b"primary_color", "radii", b"radii", "secondary_background_color", b"secondary_background_color", "show_sidebar_border", b"show_sidebar_border", "show_widget_border", b"show_widget_border", "sidebar", b"sidebar", "skeleton_background_color", b"skeleton_background_color", "text_color", b"text_color", "widget_background_color", b"widget_background_color", "widget_border_color", b"widget_border_color"]) -> None: ...
|
371
380
|
@typing.overload
|
372
381
|
def WhichOneof(self, oneof_group: typing.Literal["_base_font_size", b"_base_font_size"]) -> typing.Literal["base_font_size"] | None: ...
|
373
382
|
@typing.overload
|
383
|
+
def WhichOneof(self, oneof_group: typing.Literal["_base_font_weight", b"_base_font_weight"]) -> typing.Literal["base_font_weight"] | None: ...
|
384
|
+
@typing.overload
|
374
385
|
def WhichOneof(self, oneof_group: typing.Literal["_base_radius", b"_base_radius"]) -> typing.Literal["base_radius"] | None: ...
|
375
386
|
@typing.overload
|
376
387
|
def WhichOneof(self, oneof_group: typing.Literal["_border_color", b"_border_color"]) -> typing.Literal["border_color"] | None: ...
|
@@ -381,8 +392,12 @@ class CustomThemeConfig(google.protobuf.message.Message):
|
|
381
392
|
@typing.overload
|
382
393
|
def WhichOneof(self, oneof_group: typing.Literal["_code_font_size", b"_code_font_size"]) -> typing.Literal["code_font_size"] | None: ...
|
383
394
|
@typing.overload
|
395
|
+
def WhichOneof(self, oneof_group: typing.Literal["_code_font_weight", b"_code_font_weight"]) -> typing.Literal["code_font_weight"] | None: ...
|
396
|
+
@typing.overload
|
384
397
|
def WhichOneof(self, oneof_group: typing.Literal["_dataframe_border_color", b"_dataframe_border_color"]) -> typing.Literal["dataframe_border_color"] | None: ...
|
385
398
|
@typing.overload
|
399
|
+
def WhichOneof(self, oneof_group: typing.Literal["_dataframe_header_background_color", b"_dataframe_header_background_color"]) -> typing.Literal["dataframe_header_background_color"] | None: ...
|
400
|
+
@typing.overload
|
386
401
|
def WhichOneof(self, oneof_group: typing.Literal["_link_color", b"_link_color"]) -> typing.Literal["link_color"] | None: ...
|
387
402
|
@typing.overload
|
388
403
|
def WhichOneof(self, oneof_group: typing.Literal["_link_underline", b"_link_underline"]) -> typing.Literal["link_underline"] | None: ...
|
streamlit/static/index.html
CHANGED
@@ -37,7 +37,7 @@
|
|
37
37
|
<script>
|
38
38
|
window.prerenderReady = false
|
39
39
|
</script>
|
40
|
-
<script type="module" crossorigin src="./static/js/index.
|
40
|
+
<script type="module" crossorigin src="./static/js/index.C-vLCSJp.js"></script>
|
41
41
|
<link rel="stylesheet" crossorigin href="./static/css/index.CJVRHjQZ.css">
|
42
42
|
</head>
|
43
43
|
<body>
|