This commit is contained in:
Iliyan Angelov
2025-12-01 06:50:10 +02:00
parent 91f51bc6fe
commit 62c1fe5951
4682 changed files with 544807 additions and 31208 deletions

View File

@@ -0,0 +1,38 @@
import time
class DeviceCredentialMixin:
def get_client_id(self):
raise NotImplementedError()
def get_scope(self):
raise NotImplementedError()
def get_user_code(self):
raise NotImplementedError()
def is_expired(self):
raise NotImplementedError()
class DeviceCredentialDict(dict, DeviceCredentialMixin):
def get_client_id(self):
return self["client_id"]
def get_scope(self):
return self.get("scope")
def get_user_code(self):
return self["user_code"]
def get_nonce(self):
return self.get("nonce")
def get_auth_time(self):
return self.get("auth_time")
def is_expired(self):
expires_at = self.get("expires_at")
if expires_at:
return expires_at < time.time()
return False