First off thanks for maintaining this package! Very helpful stuff. Just noticed one thing in the latest release. The _remove_extra_spacing() method of CookieManager has too broad of reach. Other packages, like streamlit-oauth, have 0-height components, so that style definition hides that too. As an example, with streamlit==1.32.2, extra-streamlit-components==0.1.71, and streamlit-oauth==0.1.8 installed:
# visible_button.py
import streamlit as st
from streamlit_oauth import OAuth2Component
oauth2 = OAuth2Component("abc", "123", "https://example.com/auth", "https://example.com/token")
oauth2.authorize_button("Authorize", "https://example.com/redirect", "token")
shows the authorize button, but
# invisible_button.py
import streamlit as st
from streamlit_oauth import OAuth2Component
import extra_streamlit_components as stx
cookie_manager = stx.CookieManager()
cookies = cookie_manager.get_all()
oauth2 = OAuth2Component("abc", "123", "https://example.com/auth", "https://example.com/token")
oauth2.authorize_button("Authorize", "https://example.com/redirect", "token")
shows nothing.
What I've been using in my app is something like this:
import streamlit as st
st.markdown(
"""
<style>
.element-container:has(
iframe[title="extra_streamlit_components.CookieManager.cookie_manager"]
) {
display: none
}
</style>
""",
unsafe_allow_html=True,
)
I can't find where I originally saw that or something like it to attribute the idea to the right person, but could we switch to something narrower like this to avoid hiding other components?
First off thanks for maintaining this package! Very helpful stuff. Just noticed one thing in the latest release. The
_remove_extra_spacing()method ofCookieManagerhas too broad of reach. Other packages, likestreamlit-oauth, have 0-height components, so that style definition hides that too. As an example, withstreamlit==1.32.2,extra-streamlit-components==0.1.71, andstreamlit-oauth==0.1.8installed:shows the authorize button, but
shows nothing.
What I've been using in my app is something like this:
I can't find where I originally saw that or something like it to attribute the idea to the right person, but could we switch to something narrower like this to avoid hiding other components?