To upload files, please first save the app
import streamlit as st
from streamlit_javascript import st_javascript
# Embed Flatpickr in Streamlit with Monday as the start of the week
flatpickr_html = """
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/flatpickr/dist/flatpickr.min.css">
<script src="https://cdn.jsdelivr.net/npm/flatpickr"></script>
<div>
<input type="text" id="date-picker" placeholder="Select a date">
</div>
<script>
document.addEventListener("DOMContentLoaded", function() {
flatpickr("#date-picker", {
"locale": {
"firstDayOfWeek": 1 // Monday as the first day
},
dateFormat: "Y-m-d",
onChange: function(selectedDates, dateStr, instance) {
document.dispatchEvent(new CustomEvent("selectedDate", { detail: dateStr }));
}
});
});
</script>
"""
# Display Flatpickr HTML
st.components.v1.html(flatpickr_html, height=150)
# Listen for the selected date from JavaScript using streamlit_javascript
selected_date = st_javascript("document.addEventListener('selectedDate', (e) => e.detail);")
# Display the selected date
if selected_date:
st.write("You selected:", selected_date)
else:
st.write("Please select a date.")
Hi! I can help you with any questions about Streamlit and Python. What would you like to know?