Files
orion/app/modules/billing/schemas/__init__.py
Samir Boulahtit 531487f5c9
Some checks failed
CI / ruff (push) Successful in 9s
CI / architecture (push) Has been cancelled
CI / dependency-scanning (push) Has been cancelled
CI / audit (push) Has been cancelled
CI / docs (push) Has been cancelled
CI / pytest (push) Has been cancelled
fix(lint): pin ruff version, add pre-commit hook, fix all lint errors
- Pin ruff==0.8.4 in requirements-dev.txt (was >=0.8.4, CI got newer
  version with different import sorting rules)
- Add ruff to .pre-commit-config.yaml with --fix to auto-sort imports
  on commit (prevents PyCharm import reordering from reaching CI)
- Fix I001 import sorting in 6 files
- Fix F401 unused import (sqlalchemy.Numeric in subscription.py)
- Fix noqa false positive in validate_architecture.py comment

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 21:52:41 +01:00

165 lines
4.9 KiB
Python

# app/modules/billing/schemas/__init__.py
"""
Billing module Pydantic schemas for API request/response validation.
This is the canonical location for billing schemas.
Usage:
from app.modules.billing.schemas import (
MerchantSubscriptionCreate,
MerchantSubscriptionResponse,
TierInfo,
)
"""
from app.modules.billing.schemas.billing import (
BillingHistoryListResponse,
# Billing History schemas
BillingHistoryResponse,
BillingHistoryWithMerchant,
# Store Checkout schemas
CancelRequest,
CancelResponse,
CategoryListResponse,
# Checkout & Portal schemas
CheckoutRequest,
CheckoutResponse,
FeatureCatalogResponse,
FeatureCodeListResponse,
# Feature Catalog schemas
FeatureDeclarationResponse,
FeatureDetailResponse,
FeatureGroupedResponse,
FeatureListResponse,
FeatureResponse,
InvoiceListResponse,
InvoiceResponse,
# Merchant Feature Override schemas
MerchantFeatureOverrideEntry,
MerchantFeatureOverrideResponse,
MerchantSubscriptionAdminCreate,
# Merchant Subscription Admin schemas
MerchantSubscriptionAdminResponse,
MerchantSubscriptionAdminUpdate,
MerchantSubscriptionListResponse,
MerchantSubscriptionWithMerchant,
PortalResponse,
PortalSessionResponse,
StoreFeatureCheckResponse,
# Stats schemas
SubscriptionStatsResponse,
SubscriptionStatusResponse,
SubscriptionTierBase,
SubscriptionTierCreate,
SubscriptionTierListResponse,
SubscriptionTierResponse,
SubscriptionTierUpdate,
# Subscription Tier Admin schemas
TierFeatureLimitEntry,
TierListResponse,
TierResponse,
UpcomingInvoiceResponse,
)
from app.modules.billing.schemas.billing import (
ChangeTierRequest as BillingChangeTierRequest,
)
from app.modules.billing.schemas.billing import (
ChangeTierResponse as BillingChangeTierResponse,
)
from app.modules.billing.schemas.subscription import (
ChangeTierRequest,
ChangeTierResponse,
FeatureCheckResponse,
# Feature summary schemas
FeatureSummaryResponse,
# Limit check schemas
LimitCheckResult,
MerchantPortalAvailableTiersResponse,
MerchantPortalInvoiceListResponse,
MerchantPortalSubscriptionDetailResponse,
# Merchant portal schemas
MerchantPortalSubscriptionItem,
MerchantPortalSubscriptionListResponse,
# Subscription schemas
MerchantSubscriptionCreate,
MerchantSubscriptionResponse,
MerchantSubscriptionStatusResponse,
MerchantSubscriptionUpdate,
# Tier schemas
TierFeatureLimitResponse,
TierInfo,
)
__all__ = [
# Tier schemas (subscription.py)
"TierFeatureLimitResponse",
"TierInfo",
# Subscription schemas (subscription.py)
"MerchantSubscriptionCreate",
"MerchantSubscriptionUpdate",
"MerchantSubscriptionResponse",
"MerchantSubscriptionStatusResponse",
# Feature summary schemas (subscription.py)
"FeatureSummaryResponse",
# Limit check schemas (subscription.py)
"LimitCheckResult",
"FeatureCheckResponse",
# Merchant portal schemas (subscription.py)
"MerchantPortalSubscriptionItem",
"MerchantPortalSubscriptionListResponse",
"MerchantPortalSubscriptionDetailResponse",
"MerchantPortalAvailableTiersResponse",
"ChangeTierRequest",
"ChangeTierResponse",
"MerchantPortalInvoiceListResponse",
# Subscription Tier Admin schemas (billing.py)
"TierFeatureLimitEntry",
"SubscriptionTierBase",
"SubscriptionTierCreate",
"SubscriptionTierUpdate",
"SubscriptionTierResponse",
"SubscriptionTierListResponse",
# Merchant Subscription Admin schemas (billing.py)
"MerchantSubscriptionAdminResponse",
"MerchantSubscriptionWithMerchant",
"MerchantSubscriptionListResponse",
"MerchantSubscriptionAdminCreate",
"MerchantSubscriptionAdminUpdate",
# Merchant Feature Override schemas (billing.py)
"MerchantFeatureOverrideEntry",
"MerchantFeatureOverrideResponse",
# Billing History schemas (billing.py)
"BillingHistoryResponse",
"BillingHistoryWithMerchant",
"BillingHistoryListResponse",
# Checkout & Portal schemas (billing.py)
"CheckoutRequest",
"CheckoutResponse",
"PortalSessionResponse",
"PortalResponse",
"CancelRequest",
"CancelResponse",
"UpcomingInvoiceResponse",
"BillingChangeTierRequest",
"BillingChangeTierResponse",
# Store subscription schemas (billing.py)
"SubscriptionStatusResponse",
"TierResponse",
"TierListResponse",
"InvoiceResponse",
"InvoiceListResponse",
# Store feature schemas (billing.py)
"FeatureCodeListResponse",
"FeatureResponse",
"FeatureListResponse",
"FeatureDetailResponse",
"CategoryListResponse",
"FeatureGroupedResponse",
"StoreFeatureCheckResponse",
# Stats schemas (billing.py)
"SubscriptionStatsResponse",
# Feature Catalog schemas (billing.py)
"FeatureDeclarationResponse",
"FeatureCatalogResponse",
]