| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 | 
							- 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)
 
 
  |