Skip to content

Commit

Permalink
♻️ refactor models/misc.py
Browse files Browse the repository at this point in the history
- move 'last check' info to the top and update date
- add 'DeprecatedKindFieldMixin' to the 'SmartTap' model
- use 'list' with 'default_factory' for initializing the 'permissions' attribute on the 'Permissions' model
  • Loading branch information
simon-lund committed Jan 22, 2025
1 parent 6c2f90e commit 0ec80e3
Showing 1 changed file with 9 additions and 24 deletions.
33 changes: 9 additions & 24 deletions src/edutap/wallet_google/models/misc.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,15 @@
from .datatypes.smarttap import IssuerToUserInfo
from .datatypes.smarttap import Permission
from .datatypes.smarttap import SmartTapMerchantData
from .deprecated import DeprecatedKindFieldMixin
from .passes import generic
from .passes import retail
from .passes import tickets_and_transit
from pydantic import Field


# Attribute order as in Google's documentation to make future updates easier!
# last check: 2025-01-22


@register_model(
Expand All @@ -24,14 +30,11 @@
can_list=False,
can_message=False,
)
class SmartTap(WithIdModel):
class SmartTap(DeprecatedKindFieldMixin, WithIdModel):
"""
see: https://developers.google.com/wallet/generic/rest/v1/smarttap#resource:-smarttap
"""

# Attribute order as in Google's documentation to make future updates easier!
# last check: 2024-11-29

# inherits id
merchantId: str
infos: list[IssuerToUserInfo] | None = None
Expand All @@ -48,9 +51,6 @@ class Issuer(Model):
see: https://developers.google.com/wallet/generic/rest/v1/issuer
"""

# Attribute order as in Google's documentation to make future updates easier!
# last check: 2024-11-29

issuerId: str
name: str
contactInfo: IssuerContactInfo | None = None
Expand All @@ -71,21 +71,15 @@ class Permissions(Model):
see: https://developers.google.com/wallet/generic/rest/v1/permissions
"""

# Attribute order as in Google's documentation to make future updates easier!
# last check: 2024-11-29

issuerId: str | None = None
permissions: list[Permission] = []
permissions: list[Permission] = Field(default_factory=list)


class AddMessageRequest(Model):
"""
see: https://developers.google.com/wallet/tickets/events/rest/v1/AddMessageRequest
"""

# Attribute order as in Google's documentation to make future updates easier!
# last check: 2024-11-29

message: Message | None = None


Expand All @@ -104,21 +98,15 @@ class JwtResource(Model):
https://developers.google.com/wallet/generic/web/javascript-button#google-pay-api-for-passes-jwt
"""

# Attribute order as in Google's documentation to make future updates easier!
# last check: 2024-12-11

jwt: str


class Resources(Model):
"""
see: https://developers.google.com/wallet/reference/rest/v1/jwt/insert
see: https://developers.google.com/wallet/reference/rest/v1/jwt/insert#resources
https://developers.google.com/wallet/tickets/events/rest/v1/jwt/insert#resources
"""

# Attribute order as in Google's documentation to make future updates easier!
# last check: 2024-12-11

eventTicketClasses: list[tickets_and_transit.EventTicketClass] | None = None
eventTicketObjects: list[tickets_and_transit.EventTicketObject] | None = None
flightClasses: list[tickets_and_transit.FlightClass] | None = None
Expand All @@ -140,8 +128,5 @@ class JwtResponse(Model):
see: https://developers.google.com/wallet/tickets/events/rest/v1/jwt/insert
"""

# Attribute order as in Google's documentation to make future updates easier!
# last check: 2024-12-11

saveUri: str
resources: Resources

0 comments on commit 0ec80e3

Please sign in to comment.