| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 | 
							- from enum import Enum
 
- from sqlalchemy import CHAR, TypeDecorator
 
- from sqlalchemy.dialects.postgresql import UUID
 
- class CreatedByRole(Enum):
 
-     """
 
-     Enum class for createdByRole
 
-     """
 
-     ACCOUNT = "account"
 
-     END_USER = "end_user"
 
-     @classmethod
 
-     def value_of(cls, value: str) -> 'CreatedByRole':
 
-         """
 
-         Get value of given mode.
 
-         :param value: mode value
 
-         :return: mode
 
-         """
 
-         for role in cls:
 
-             if role.value == value:
 
-                 return role
 
-         raise ValueError(f'invalid createdByRole value {value}')
 
- class CreatedFrom(Enum):
 
-     """
 
-     Enum class for createdFrom
 
-     """
 
-     SERVICE_API = "service-api"
 
-     WEB_APP = "web-app"
 
-     EXPLORE = "explore"
 
-     @classmethod
 
-     def value_of(cls, value: str) -> 'CreatedFrom':
 
-         """
 
-         Get value of given mode.
 
-         :param value: mode value
 
-         :return: mode
 
-         """
 
-         for role in cls:
 
-             if role.value == value:
 
-                 return role
 
-         raise ValueError(f'invalid createdFrom value {value}')
 
- class StringUUID(TypeDecorator):
 
-     impl = CHAR
 
-     cache_ok = True
 
-     def process_bind_param(self, value, dialect):
 
-         if value is None:
 
-             return value
 
-         elif dialect.name == 'postgresql':
 
-             return str(value)
 
-         else:
 
-             return value.hex
 
-     def load_dialect_impl(self, dialect):
 
-         if dialect.name == 'postgresql':
 
-             return dialect.type_descriptor(UUID())
 
-         else:
 
-             return dialect.type_descriptor(CHAR(36))
 
-     def process_result_value(self, value, dialect):
 
-         if value is None:
 
-             return value
 
-         return str(value)
 
 
  |