Files
3cloud-backend/streamlit_server/utils/session.py
T

23 lines
1.1 KiB
Python

import streamlit as st
# from streamlit_server.api.client import IaaSClient
from api_client.client import IaaSClient
from internal_http import install_internal_auth
from runtime_urls import API_BASE_URL
def init_session_state():
# Initialize all required session state keys before use
if 'client' not in st.session_state:
install_internal_auth(API_BASE_URL, st.session_state.get('api_key', ''))
st.session_state.client = IaaSClient(st.session_state.get('api_key', ''))
if 'api_key' not in st.session_state:
st.session_state.api_key = ""
if 'current_view' not in st.session_state:
print(f"session_state.current_view not set, defaulting to 'Universes'")
st.session_state.current_view = 'Universes'
if 'selected_resource' not in st.session_state:
st.session_state.selected_resource = None
if 'selected_resource_type' not in st.session_state:
st.session_state.selected_resource_type = None
if 'view_type' not in st.session_state:
st.session_state.view_type = 'list' # 'list' or 'detail'