diff --git a/pyproject.toml b/pyproject.toml index c568aee..3c09664 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "flagright" -version = "1.6.2" +version = "1.6.3" description = "" readme = "README.md" authors = [] diff --git a/src/flagright/__init__.py b/src/flagright/__init__.py index ef6c62a..0a371ed 100644 --- a/src/flagright/__init__.py +++ b/src/flagright/__init__.py @@ -42,6 +42,7 @@ CardFunding, CardMerchantDetails, CardPaymentMethod, + CardStatus, CardType, CaseClosedDetails, CaseManagementEvent, @@ -314,6 +315,7 @@ "CardFunding", "CardMerchantDetails", "CardPaymentMethod", + "CardStatus", "CardType", "CaseClosedDetails", "CaseManagementEvent", diff --git a/src/flagright/core/client_wrapper.py b/src/flagright/core/client_wrapper.py index 79dbf9e..125440e 100644 --- a/src/flagright/core/client_wrapper.py +++ b/src/flagright/core/client_wrapper.py @@ -14,7 +14,7 @@ def get_headers(self) -> typing.Dict[str, str]: headers: typing.Dict[str, str] = { "X-Fern-Language": "Python", "X-Fern-SDK-Name": "flagright", - "X-Fern-SDK-Version": "1.6.2", + "X-Fern-SDK-Version": "1.6.3", } headers["x-api-key"] = self.api_key return headers diff --git a/src/flagright/types/__init__.py b/src/flagright/types/__init__.py index 4e2a3b9..1eee9fa 100644 --- a/src/flagright/types/__init__.py +++ b/src/flagright/types/__init__.py @@ -45,6 +45,7 @@ from .card_funding import CardFunding from .card_merchant_details import CardMerchantDetails from .card_payment_method import CardPaymentMethod +from .card_status import CardStatus from .card_type import CardType from .case_closed_details import CaseClosedDetails from .case_management_event import CaseManagementEvent @@ -287,6 +288,7 @@ "CardFunding", "CardMerchantDetails", "CardPaymentMethod", + "CardStatus", "CardType", "CaseClosedDetails", "CaseManagementEvent", diff --git a/src/flagright/types/card_details.py b/src/flagright/types/card_details.py index 5ae0114..368ef01 100644 --- a/src/flagright/types/card_details.py +++ b/src/flagright/types/card_details.py @@ -8,6 +8,7 @@ from .card_expiry import CardExpiry from .card_funding import CardFunding from .card_merchant_details import CardMerchantDetails +from .card_status import CardStatus from .card_type import CardType from .consumer_name import ConsumerName from .country_code import CountryCode @@ -30,6 +31,7 @@ class CardDetails(pydantic.BaseModel): description="Unique card fingerprint that helps identify a specific card without having to use explicit card number. This is likely available at your card payment scheme provider", ) email_id: typing.Optional[EmailId] = pydantic.Field(alias="emailId") + card_status: typing.Optional[CardStatus] = pydantic.Field(alias="cardStatus") card_issued_country: typing.Optional[CountryCode] = pydantic.Field(alias="cardIssuedCountry") transaction_reference_field: typing.Optional[str] = pydantic.Field( alias="transactionReferenceField", description="Reference for the transaction" diff --git a/src/flagright/types/card_status.py b/src/flagright/types/card_status.py new file mode 100644 index 0000000..bf62d2b --- /dev/null +++ b/src/flagright/types/card_status.py @@ -0,0 +1,49 @@ +# This file was auto-generated by Fern from our API Definition. + +import enum +import typing + +T_Result = typing.TypeVar("T_Result") + + +class CardStatus(str, enum.Enum): + """ + Status of the card + """ + + ACTIVE = "ACTIVE" + FROZEN = "FROZEN" + BLOCKED = "BLOCKED" + SUSPECTED_FRAUD = "SUSPECTED_FRAUD" + STOLEN = "STOLEN" + LOST = "LOST" + CLOSED = "CLOSED" + OTHER = "OTHER" + + def visit( + self, + active: typing.Callable[[], T_Result], + frozen: typing.Callable[[], T_Result], + blocked: typing.Callable[[], T_Result], + suspected_fraud: typing.Callable[[], T_Result], + stolen: typing.Callable[[], T_Result], + lost: typing.Callable[[], T_Result], + closed: typing.Callable[[], T_Result], + other: typing.Callable[[], T_Result], + ) -> T_Result: + if self is CardStatus.ACTIVE: + return active() + if self is CardStatus.FROZEN: + return frozen() + if self is CardStatus.BLOCKED: + return blocked() + if self is CardStatus.SUSPECTED_FRAUD: + return suspected_fraud() + if self is CardStatus.STOLEN: + return stolen() + if self is CardStatus.LOST: + return lost() + if self is CardStatus.CLOSED: + return closed() + if self is CardStatus.OTHER: + return other()