- Introduced ServicesCdcSubscriber for handling Salesforce Change Data Capture events, enabling real-time updates for product and account eligibility changes. - Developed utility functions for building SOQL queries related to services, enhancing data retrieval capabilities. - Created base service classes for internet, SIM, and VPN offerings, improving code organization and maintainability. - Implemented ServicesCacheService for efficient caching and invalidation of service data, leveraging CDC for real-time updates. - Enhanced existing service components to utilize new caching mechanisms and ensure data consistency across the application.
59 lines
1.3 KiB
TypeScript
59 lines
1.3 KiB
TypeScript
/**
|
|
* Services Domain
|
|
*
|
|
* Exports all services-related contracts, schemas, and provider mappers.
|
|
*
|
|
* Types are derived from Zod schemas (Schema-First Approach)
|
|
*/
|
|
|
|
// Provider-specific types
|
|
export {
|
|
type SalesforceProductFieldMap,
|
|
type PricingTier,
|
|
type CatalogFilter,
|
|
type CatalogPriceInfo,
|
|
} from "./contract.js";
|
|
|
|
// Schemas (includes derived types)
|
|
export * from "./schema.js";
|
|
|
|
// Re-export types for convenience
|
|
export type {
|
|
CatalogProductBase,
|
|
CatalogPricebookEntry,
|
|
// Internet products
|
|
InternetCatalogProduct,
|
|
InternetPlanTemplate,
|
|
InternetPlanCatalogItem,
|
|
InternetInstallationCatalogItem,
|
|
InternetAddonCatalogItem,
|
|
InternetEligibilityStatus,
|
|
InternetEligibilityDetails,
|
|
// SIM products
|
|
SimCatalogProduct,
|
|
SimActivationFeeCatalogItem,
|
|
// VPN products
|
|
VpnCatalogProduct,
|
|
// Union type
|
|
CatalogProduct,
|
|
} from "./schema.js";
|
|
|
|
// Provider adapters
|
|
export * as Providers from "./providers/index.js";
|
|
|
|
// Re-export provider raw types for convenience
|
|
export * from "./providers/salesforce/raw.types.js";
|
|
|
|
// Re-export WHMCS provider types
|
|
export type {
|
|
WhmcsCatalogProduct,
|
|
WhmcsCatalogProductListResponse,
|
|
} from "./providers/whmcs/raw.types.js";
|
|
export type {
|
|
WhmcsCatalogProductNormalized,
|
|
WhmcsCatalogPricing,
|
|
} from "./providers/whmcs/mapper.js";
|
|
|
|
// Utilities
|
|
export * from "./utils.js";
|