浏览代码

type annotations and cleanup

Rodja Trappe 1 年之前
父节点
当前提交
96a5b14077
共有 2 个文件被更改,包括 11 次插入13 次删除
  1. 1 3
      examples/descope_auth/main.py
  2. 10 10
      examples/descope_auth/user.py

+ 1 - 3
examples/descope_auth/main.py

@@ -1,14 +1,12 @@
 #!/usr/bin/env python3
 #!/usr/bin/env python3
 
 
 import json
 import json
+import os
 
 
-import icecream
 import user
 import user
 
 
 from nicegui import ui
 from nicegui import ui
 
 
-icecream.install()
-
 
 
 @user.login_page
 @user.login_page
 def login():
 def login():

+ 10 - 10
examples/descope_auth/user.py

@@ -6,17 +6,17 @@ from descope import AuthException, DescopeClient
 
 
 from nicegui import Client, app, ui
 from nicegui import Client, app, ui
 
 
-descope_id = os.environ.get('DESCOPE_ID', '')
+_descope_id = os.environ.get('DESCOPE_PROJECT_ID', '')
 
 
 try:
 try:
-    descope_client = DescopeClient(project_id=descope_id)
+    descope_client = DescopeClient(project_id=_descope_id)
 except Exception as error:
 except Exception as error:
     logging.exception("failed to initialize.")
     logging.exception("failed to initialize.")
 
 
 
 
-def login_form():
+def login_form() -> ui.element:
     with ui.card().classes('w-96 mx-auto'):
     with ui.card().classes('w-96 mx-auto'):
-        return ui.element('descope-wc').props(f'project-id="{descope_id}" flow-id="sign-up-or-in"') \
+        return ui.element('descope-wc').props(f'project-id="{_descope_id}" flow-id="sign-up-or-in"') \
             .on('success', lambda e: app.storage.user.update({'descope': e.args['detail']['user']}))
             .on('success', lambda e: app.storage.user.update({'descope': e.args['detail']['user']}))
 
 
 
 
@@ -28,10 +28,10 @@ def about() -> Dict[str, Any]:
         return {}
         return {}
 
 
 
 
-async def logout():
+async def logout() -> None:
     result = await ui.run_javascript('return await sdk.logout()', respond=True)
     result = await ui.run_javascript('return await sdk.logout()', respond=True)
     if result['code'] != 200:
     if result['code'] != 200:
-        logging.error('Logout failed: ' + result)
+        logging.error(f'Logout failed: {result}')
         ui.notify('Logout failed', type='negative')
         ui.notify('Logout failed', type='negative')
     else:
     else:
         app.storage.user['descope'] = None
         app.storage.user['descope'] = None
@@ -49,7 +49,7 @@ class page(ui.page):
             ui.add_head_html('<script src="https://unpkg.com/@descope/web-js-sdk@latest/dist/index.umd.js"></script>')
             ui.add_head_html('<script src="https://unpkg.com/@descope/web-js-sdk@latest/dist/index.umd.js"></script>')
             ui.add_body_html('''
             ui.add_body_html('''
                 <script>
                 <script>
-                    const sdk = Descope({ projectId: \'''' + descope_id + '''\', persistTokens: true, autoRefresh: true });
+                    const sdk = Descope({ projectId: \'''' + _descope_id + '''\', persistTokens: true, autoRefresh: true });
                     const sessionToken = sdk.getSessionToken()
                     const sessionToken = sdk.getSessionToken()
                 </script>                 
                 </script>                 
             ''')
             ''')
@@ -57,7 +57,7 @@ class page(ui.page):
             token = await ui.run_javascript('return sessionToken && !sdk.isJwtExpired(sessionToken) ? sessionToken : null;')
             token = await ui.run_javascript('return sessionToken && !sdk.isJwtExpired(sessionToken) ? sessionToken : null;')
             if token and self._verify(token):
             if token and self._verify(token):
                 if self.path == '/login':
                 if self.path == '/login':
-                    self.refresh_token()
+                    await self.refresh_token()
                     ui.open('/')
                     ui.open('/')
                 else:
                 else:
                     func()
                     func()
@@ -71,7 +71,7 @@ class page(ui.page):
         return super().__call__(content)
         return super().__call__(content)
 
 
     @staticmethod
     @staticmethod
-    def _verify(token: str):
+    def _verify(token: str) -> bool:
         try:
         try:
             descope_client.validate_session(session_token=token)
             descope_client.validate_session(session_token=token)
             return True
             return True
@@ -81,7 +81,7 @@ class page(ui.page):
             return False
             return False
 
 
     @staticmethod
     @staticmethod
-    async def refresh_token():
+    async def refresh_token() -> None:
         await ui.run_javascript('sdk.refresh()', respond=False)
         await ui.run_javascript('sdk.refresh()', respond=False)