chainlit 2.0.1__py3-none-any.whl → 2.0.2__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.

Potentially problematic release.


This version of chainlit might be problematic. Click here for more details.

Files changed (39) hide show
  1. chainlit/auth/cookie.py +7 -8
  2. chainlit/auth/jwt.py +5 -3
  3. chainlit/copilot/dist/index.js +155 -155
  4. chainlit/data/chainlit_data_layer.py +26 -2
  5. chainlit/data/sql_alchemy.py +26 -2
  6. chainlit/data/storage_clients/azure_blob.py +13 -4
  7. chainlit/data/storage_clients/base.py +4 -0
  8. chainlit/data/storage_clients/gcs.py +12 -2
  9. chainlit/data/storage_clients/s3.py +28 -2
  10. chainlit/emitter.py +8 -0
  11. chainlit/frontend/dist/assets/{DailyMotion-B8XgmoRm.js → DailyMotion-DFvM941y.js} +1 -1
  12. chainlit/frontend/dist/assets/{Dataframe-VU4lXMbv.js → Dataframe-CA6SlUSB.js} +1 -1
  13. chainlit/frontend/dist/assets/{Facebook-fVIMi9h_.js → Facebook-BM4MwXR1.js} +1 -1
  14. chainlit/frontend/dist/assets/{FilePlayer-DlXvvaZa.js → FilePlayer-CfjB8iXr.js} +1 -1
  15. chainlit/frontend/dist/assets/{Kaltura-C48Ui_4V.js → Kaltura-Bg-U6Xkz.js} +1 -1
  16. chainlit/frontend/dist/assets/{Mixcloud-Dmjz7RrS.js → Mixcloud-xJrfoMTv.js} +1 -1
  17. chainlit/frontend/dist/assets/{Mux-Bqaa3ZzG.js → Mux-CKnKDBmk.js} +1 -1
  18. chainlit/frontend/dist/assets/{Preview-B2d1Ugq4.js → Preview-DwHPdmIg.js} +1 -1
  19. chainlit/frontend/dist/assets/{SoundCloud-BGuk87T3.js → SoundCloud-Crd5dwXV.js} +1 -1
  20. chainlit/frontend/dist/assets/{Streamable-DOe4rXrG.js → Streamable-Dq0c8lyx.js} +1 -1
  21. chainlit/frontend/dist/assets/{Twitch-TA7I2UEi.js → Twitch-DIDvP936.js} +1 -1
  22. chainlit/frontend/dist/assets/{Vidyard-B5F6Dk_y.js → Vidyard-B1dz9WN4.js} +1 -1
  23. chainlit/frontend/dist/assets/{Vimeo-DP_Y98tQ.js → Vimeo-22Su6q2w.js} +1 -1
  24. chainlit/frontend/dist/assets/{Wistia-DB26BTg8.js → Wistia-C7adXRjN.js} +1 -1
  25. chainlit/frontend/dist/assets/{YouTube-CMwwf2TN.js → YouTube-Dt4UMtQI.js} +1 -1
  26. chainlit/frontend/dist/assets/{index-D7lZEN9m.js → index-DbdLVHtZ.js} +96 -96
  27. chainlit/frontend/dist/assets/index-g8LTJwwr.css +1 -0
  28. chainlit/frontend/dist/assets/{react-plotly-28_xImPF.js → react-plotly-DvpXYYRJ.js} +1 -1
  29. chainlit/frontend/dist/index.html +2 -2
  30. chainlit/message.py +1 -1
  31. chainlit/server.py +22 -11
  32. chainlit/session.py +9 -0
  33. chainlit/socket.py +4 -0
  34. chainlit/user_session.py +1 -0
  35. {chainlit-2.0.1.dist-info → chainlit-2.0.2.dist-info}/METADATA +2 -2
  36. {chainlit-2.0.1.dist-info → chainlit-2.0.2.dist-info}/RECORD +38 -38
  37. chainlit/frontend/dist/assets/index-88S3ZtD5.css +0 -1
  38. {chainlit-2.0.1.dist-info → chainlit-2.0.2.dist-info}/WHEEL +0 -0
  39. {chainlit-2.0.1.dist-info → chainlit-2.0.2.dist-info}/entry_points.txt +0 -0
chainlit/auth/cookie.py CHANGED
@@ -13,14 +13,13 @@ _cookie_samesite = cast(
13
13
  os.environ.get("CHAINLIT_COOKIE_SAMESITE", "lax"),
14
14
  )
15
15
 
16
- assert (
17
- _cookie_samesite
18
- in [
19
- "lax",
20
- "strict",
21
- "none",
22
- ]
23
- ), "Invalid value for CHAINLIT_COOKIE_SAMESITE. Must be one of 'lax', 'strict' or 'none'."
16
+ assert _cookie_samesite in [
17
+ "lax",
18
+ "strict",
19
+ "none",
20
+ ], (
21
+ "Invalid value for CHAINLIT_COOKIE_SAMESITE. Must be one of 'lax', 'strict' or 'none'."
22
+ )
24
23
  _cookie_secure = _cookie_samesite == "none"
25
24
 
26
25
  _auth_cookie_lifetime = 60 * 60 # 1 hour
chainlit/auth/jwt.py CHANGED
@@ -1,5 +1,5 @@
1
- import datetime
2
1
  import os
2
+ from datetime import datetime, timedelta, timezone
3
3
  from typing import Any, Dict, Optional
4
4
 
5
5
  import jwt as pyjwt
@@ -16,10 +16,12 @@ def create_jwt(data: User) -> str:
16
16
  to_encode: Dict[str, Any] = data.to_dict()
17
17
  to_encode.update(
18
18
  {
19
- "exp": datetime.datetime.utcnow()
20
- + datetime.timedelta(seconds=config.project.user_session_timeout),
19
+ "exp": datetime.now(timezone.utc)
20
+ + timedelta(seconds=config.project.user_session_timeout),
21
+ "iat": datetime.now(timezone.utc), # Add issued at time
21
22
  }
22
23
  )
24
+
23
25
  secret = get_jwt_secret()
24
26
  assert secret
25
27
  encoded_jwt = pyjwt.encode(to_encode, secret, algorithm="HS256")