Skip to main content

Streamlit Component for MUI Dialogs

Project description

Streamlit MUI Dialog Component

This streamlit component adds a Dialog (Modal) with two buttons to Streamlit Apps.

It implements the MUI Alert Dialog: https://mui.com/material-ui/react-dialog/

Installation

$ pip install st-mui-dialog

Usage

Import the Component

$ from st_mui_dialog import st_mui_dialog

Initialize an instant

$ answer = st_mui_dialog(title="Confirmation", content="Please confirm that you want to save the changes")

Example

Configuration Options

Button Labels

#Open Button Label
st_mui_dialog(..., button_txt = "Open the Dialog")

#Abort Button Label
st_mui_dialog(..., abortlabel = "DISAGREE")

#Agree Button Label
st_mui_dialog(..., abortlabel = "AGREE")

Styling

Dividers
st_mui_dialog(..., divider = True)

Example

Open the Dialog in Fullscreen (whole iFrame)
#The open button will be hidden

st_mui_dialog(..., fullscreen = True)

Example

Transition Modes

Currently not working

st_mui_dialog(..., transition_mode = "zoom")

#if the transition mode is 'slide' the paramater 'slide_direction' is needed
st_mui_dialog(..., transition_mode = "slide", slide_direction = "up")
Width of the Dialog

The width is always limited to the widht of the iframe

#Sets the max width to "xl"
st_mui_dialog(..., width_dialog = "xl")

#Always shows the max width of the dialog - If false the width will be dependent on the content.
st_mui_dialog(..., adapt_width_dialog = True)
Button Styles
#Button Types

#Open Button
st_mui_dialog(..., button_open_type = "primary")

#Agree Button
st_mui_dialog(..., button_agree_type = "warning")

#Abort Button
st_mui_dialog(..., button_abort_type = "success")
CSS Styles

It is possible to apply CSS Styles to the different MUI Elements of the Dialog

st_mui_dialog(..., styling_dialog = """{"& .MuiModal-backdrop": {"backgroundColor": "red"},"& .MuiModal-container":{"backgroundColor" :"red"}""")
st_mui_dialog(..., styling_open_button = """{"backgroundColor" :"lightgreen"}""")
st_mui_dialog(..., styling_agree_button = """{"backgroundColor" :"yellow"}"""")
st_mui_dialog(..., styling_abort_button = """{"backgroundColor" :"blue"}""")
st_mui_dialog(..., styling_dialog_content = """{"backgroundColor" :"blue"}""")
st_mui_dialog(..., styling_dialog_title = """{"backgroundColor" :"blue"}""")
st_mui_dialog(..., styling_dialog_content_text = """{"backgroundColor" :"blue"}""")
Event Handlers

It is possible to execute JavaScript commands on Open, Close, Agree and Abort.

st_mui_dialog(..., on_open = """console.log("Open")""")
st_mui_dialog(..., on_close = """console.log("Close")""")
st_mui_dialog(..., on_agree = """console.log("Agree")""")
st_mui_dialog(..., on_abort = """console.log("Abort")""")

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

st_mui_dialog-0.0.9.tar.gz (702.0 kB view details)

Uploaded Source

Built Distribution

st_mui_dialog-0.0.9-py3-none-any.whl (1.4 MB view details)

Uploaded Python 3

File details

Details for the file st_mui_dialog-0.0.9.tar.gz.

File metadata

  • Download URL: st_mui_dialog-0.0.9.tar.gz
  • Upload date:
  • Size: 702.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.0

File hashes

Hashes for st_mui_dialog-0.0.9.tar.gz
Algorithm Hash digest
SHA256 6814892a9b82c95cad023377a19016ec0c168319d5041064bffc7876ef036c4a
MD5 aafd973628a74b5d6cc29b5d49b2eae8
BLAKE2b-256 63bedd6b8ebd7a1bde4857cdd482f81d3458704182ddb18b9c896f40af5b150f

See more details on using hashes here.

File details

Details for the file st_mui_dialog-0.0.9-py3-none-any.whl.

File metadata

File hashes

Hashes for st_mui_dialog-0.0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 ff2c5aba962650a1f4a511edef8529f767ee93248034c5b67de66234b1a17263
MD5 abd53cb6a4100956db153daa44699c12
BLAKE2b-256 1e697ff53f4e83a58236a2bf2a8b031c2723ec88ecb338806ccbf9ac89078411

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page