sweatstack 0.14.3__py3-none-any.whl → 0.14.5__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
sweatstack/client.py CHANGED
@@ -274,6 +274,9 @@ class Client(OAuth2Mixin):
274
274
  )
275
275
  if as_dataframe:
276
276
  df = pd.DataFrame([activity.model_dump() for activity in generator])
277
+ df = self._normalize_dataframe_column(df, "summary")
278
+ df = self._normalize_dataframe_column(df, "laps")
279
+ df = self._normalize_dataframe_column(df, "traces")
277
280
  return self._postprocess_dataframe(df)
278
281
  else:
279
282
  return generator
sweatstack/streamlit.py CHANGED
@@ -30,12 +30,12 @@ class StreamlitAuth:
30
30
  self.redirect_uri = redirect_uri or os.environ.get("SWEATSTACK_REDIRECT_URI")
31
31
 
32
32
  self.api_key = st.session_state.get("sweatstack_api_key")
33
- self.client = Client(self.api_key)
33
+ self.client = Client(self.api_key, streamlit_compatible=True)
34
34
 
35
35
  def _show_sweatstack_logout(self):
36
36
  if st.button("Logout"):
37
37
  self.api_key = None
38
- self.client = Client()
38
+ self.client = Client(streamlit_compatible=True)
39
39
  st.session_state.pop("sweatstack_api_key")
40
40
  st.rerun()
41
41
 
sweatstack/utils.py CHANGED
@@ -16,7 +16,7 @@ def decode_jwt_body(jwt: str) -> dict:
16
16
  return json.loads(decoded)
17
17
 
18
18
 
19
- def make_dataframe_streamlit_compatible(df):
19
+ def make_dataframe_streamlit_compatible(df: pd.DataFrame) -> pd.DataFrame:
20
20
  """
21
21
  Converts all columns containing enum values in a DataFrame to their respective string values.
22
22
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sweatstack
3
- Version: 0.14.3
3
+ Version: 0.14.5
4
4
  Summary: The official Python client for SweatStack
5
5
  Author-email: Aart Goossens <aart@gssns.io>
6
6
  Requires-Python: >=3.12
@@ -1,16 +1,16 @@
1
1
  sweatstack/__init__.py,sha256=tiVfgKlswRPaDMEy0gA7u8rveqEYZTA_kyB9lJ3J6Sc,21
2
2
  sweatstack/cli.py,sha256=N1NWOgEZR2yaJvIXxo9qvp_jFlypZYb0nujpbVNYQ6A,720
3
- sweatstack/client.py,sha256=op-pfQAAxmoz6XhTL8p2H8GXqCcN92vxwJfoAmCP7CM,19747
3
+ sweatstack/client.py,sha256=DYslE553-uDLIBUONx6k7EqCANkZR_h8GGNEt81OIjA,19938
4
4
  sweatstack/constants.py,sha256=fGO6ksOv5HeISv9lHRoYm4besW1GTveXS8YD3K0ljg0,41
5
5
  sweatstack/ipython_init.py,sha256=zBGUlMFkdpLvsNpOpwrNaKRUpUZhzaICvH8ODJgMPcI,229
6
6
  sweatstack/jupyterlab_oauth2_startup.py,sha256=eZ6xi0Sa4hO4vUanimq0SqjduHtiywCURSDNWk_I-7s,1200
7
7
  sweatstack/openapi_schemas.py,sha256=vtYHa6A0kADFbd_jK1O7Kbn8YkbPfzaIwsRDDYjYeSA,13038
8
8
  sweatstack/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
9
  sweatstack/schemas.py,sha256=CdkeV6IRmIuvxae7C5dz-hVlb6hkzEYfqKHHgVJprmY,90
10
- sweatstack/streamlit.py,sha256=xmASRIB-TfqMc3je6Qkkr0D-L9lr9oNVUWcXUzgiMME,3403
10
+ sweatstack/streamlit.py,sha256=_9FOzEADveEIMytNIdQWhboyq6Pvi0E9e1yZhhd85Cg,3455
11
11
  sweatstack/sweatshell.py,sha256=MYLNcWbOdceqKJ3S0Pe8dwHXEeYsGJNjQoYUXpMTftA,333
12
- sweatstack/utils.py,sha256=kQZi7W5BXYn4Exmykvhf8A91YHbsCMR37Mobunt3pNE,1743
13
- sweatstack-0.14.3.dist-info/METADATA,sha256=UI1v17FhKY8UrrLiP8rri3clWr8wkBtNR-pOe3rcbrc,2966
14
- sweatstack-0.14.3.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
15
- sweatstack-0.14.3.dist-info/entry_points.txt,sha256=kCzOUQI3dqbTpEYqtgYDeiKFaqaA7BMlV6D24BMzCFU,208
16
- sweatstack-0.14.3.dist-info/RECORD,,
12
+ sweatstack/utils.py,sha256=HtR1NNCKus59vfgfaCSFS-tHA11mtdcuUx5lS6ZX58g,1773
13
+ sweatstack-0.14.5.dist-info/METADATA,sha256=t_RLJ4bqE44XHJQ8jNuyTEW6BrdL9DO5EvK1lQcBlN0,2966
14
+ sweatstack-0.14.5.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
15
+ sweatstack-0.14.5.dist-info/entry_points.txt,sha256=kCzOUQI3dqbTpEYqtgYDeiKFaqaA7BMlV6D24BMzCFU,208
16
+ sweatstack-0.14.5.dist-info/RECORD,,