GSMEthesis commited on
Commit
94100cc
·
verified ·
1 Parent(s): 02bd2cc

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +37 -2
app.py CHANGED
@@ -748,6 +748,17 @@ def custom_likert_slider(question_data):
748
  # مقدار پیش‌فرض (وسط طیف)
749
  default_value = st.session_state.get(key, (points + 1) // 2)
750
 
 
 
 
 
 
 
 
 
 
 
 
751
  # HTML و JavaScript
752
  html = f"""
753
  <div id="container_{key}" style="direction: ltr; font-family: 'B Nazanin'; margin-bottom: 30px;">
@@ -764,11 +775,35 @@ def custom_likert_slider(question_data):
764
  </div>
765
  </div>
766
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
767
  <script>
768
  function updateSlider(key) {{
769
  const value = parseInt(document.getElementById(key).value);
770
  document.getElementById('output_' + key).innerText = value;
771
 
 
 
 
 
 
 
 
 
772
  // ارسال مقدار به Streamlit
773
  window.parent.postMessage({{
774
  type: 'streamlit:setComponentValue',
@@ -782,8 +817,8 @@ def custom_likert_slider(question_data):
782
  # نمایش کامپوننت
783
  components.html(html, height=150)
784
 
785
- # مقدار نهایی
786
- return st.session_state.get(key, default_value)
787
 
788
  def create_ride_map():
789
  """ایجاد نقشه سفر با Folium - نسخه اصلاح شده با مناطق عمومی"""
 
748
  # مقدار پیش‌فرض (وسط طیف)
749
  default_value = st.session_state.get(key, (points + 1) // 2)
750
 
751
+ # ایجاد اسلایدر Streamlit (مخفی)
752
+ st_slider_val = st.slider(
753
+ "",
754
+ min_value=1,
755
+ max_value=points,
756
+ value=default_value,
757
+ step=1,
758
+ key=f"hidden_{key}",
759
+ label_visibility="collapsed"
760
+ )
761
+
762
  # HTML و JavaScript
763
  html = f"""
764
  <div id="container_{key}" style="direction: ltr; font-family: 'B Nazanin'; margin-bottom: 30px;">
 
775
  </div>
776
  </div>
777
 
778
+ <style>
779
+ /* مخفی کردن اسلایدر Streamlit */
780
+ div[data-testid="stSlider"] {{
781
+ height: 0;
782
+ visibility: hidden;
783
+ margin: 0;
784
+ padding: 0;
785
+ }}
786
+ div[data-testid="stSlider"] > div {{
787
+ padding: 0 !important;
788
+ }}
789
+ div[data-testid="stSlider"] * {{
790
+ display: none !important;
791
+ }}
792
+ </style>
793
+
794
  <script>
795
  function updateSlider(key) {{
796
  const value = parseInt(document.getElementById(key).value);
797
  document.getElementById('output_' + key).innerText = value;
798
 
799
+ // به روزرسانی اسلایدر مخفی Streamlit
800
+ const hiddenSlider = parent.document.querySelector(`div[data-testid="stSlider"] input[type="range"]`);
801
+ if (hiddenSlider) {{
802
+ hiddenSlider.value = value;
803
+ const event = new Event('input', {{ bubbles: true }});
804
+ hiddenSlider.dispatchEvent(event);
805
+ }}
806
+
807
  // ارسال مقدار به Streamlit
808
  window.parent.postMessage({{
809
  type: 'streamlit:setComponentValue',
 
817
  # نمایش کامپوننت
818
  components.html(html, height=150)
819
 
820
+ # مقدار نهایی از اسلایدر Streamlit
821
+ return st_slider_val
822
 
823
  def create_ride_map():
824
  """ایجاد نقشه سفر با Folium - نسخه اصلاح شده با مناطق عمومی"""