barsa 7500b5fce0 Enhance security and refactor order processing for improved reliability
- Implemented Redis-backed idempotency keys in SIM activation to prevent race conditions and double-charging.
- Increased bcrypt hashing rounds from 12 to 14 for stronger password security.
- Introduced a structured exception hierarchy to replace generic errors with domain-specific exceptions.
- Centralized Internet Access Mode constants and improved schema organization by extracting duplicated enum values.
- Updated various components to utilize new domain types for better consistency and maintainability.
- Enhanced error handling in SIM fulfillment and order activation processes to provide clearer feedback and prevent duplicate processing.
2025-10-27 16:53:19 +09:00

72 lines
1.6 KiB
TypeScript

/**
* Orders Domain
*
* Exports all order-related contracts, schemas, and provider mappers.
*
* Types are derived from Zod schemas (Schema-First Approach)
*/
// Business types and constants
export {
type OrderCreationType,
type OrderStatus,
type OrderType,
type OrderTypeValue,
type UserMapping,
// Checkout types
type CheckoutItem,
type CheckoutTotals,
type CheckoutCart,
type OrderCreateResponse,
type OrderFulfillmentValidationResult,
// Constants
ORDER_TYPE,
ORDER_STATUS,
ACTIVATION_TYPE,
type ActivationTypeValue,
SIM_TYPE,
type SimTypeValue,
ACCESS_MODE,
type AccessModeValue,
ORDER_FULFILLMENT_ERROR_CODE,
type OrderFulfillmentErrorCode,
} from "./contract";
// Schemas (includes derived types)
export * from "./schema";
// Validation (extended business rules)
export * from "./validation";
// Utilities
export * from "./utils";
export {
buildSimOrderConfigurations,
normalizeOrderSelections,
type BuildSimOrderConfigurationsOptions,
} from "./helpers";
// Re-export types for convenience
export type {
// Order item types
OrderItemSummary,
OrderItemDetails,
// Order types
OrderSummary,
OrderDetails,
// Query and creation types
OrderQueryParams,
OrderConfigurationsAddress,
OrderConfigurations,
CreateOrderRequest,
OrderBusinessValidation,
SfOrderIdParam,
} from './schema';
// Provider adapters
export * as Providers from "./providers/index";
// Re-export provider types for convenience
export * from "./providers/whmcs/raw.types";
export * from "./providers/salesforce/raw.types";