SamHastings1088's picture
first commit
642c876
import os
import streamlit.components.v1 as components
from typing import Tuple
# Now the React interface only accepts an array of 1 or 2 elements.
_component_func = components.declare_component(
"custom_slider",
url="http://localhost:3001",
)
# Edit arguments sent and result received from React component, so the initial input is converted to an array and returned value extracted from the component
def st_custom_slider(label: str, min_value: int, max_value: int, value: int = 0, key=None) -> int:
component_value = _component_func(label=label, minValue=min_value, maxValue=max_value, initialValue=[value], key=key, default=[value])
return component_value[0]
# Define a new public method which takes as input a tuple of numbers to define a range slider, and returns back a tuple.
def st_range_slider(label: str, min_value: int, max_value: int, value: Tuple[int, int], key=None) -> Tuple[int, int]:
component_value = _component_func(label=label, minValue=min_value, maxValue=max_value, initialValue=value, key=key, default=value)
return tuple(component_value)