Files
bakery-ia/frontend/src/api/index.ts

704 lines
15 KiB
TypeScript
Raw Normal View History

/**
* Main API exports for clean imports
* Export all services, types, and hooks
*/
// Client
export { apiClient } from './client';
export type { ApiError } from './client';
// Services
export { authService } from './services/auth';
export { userService } from './services/user';
export { onboardingService } from './services/onboarding';
export { tenantService } from './services/tenant';
export { subscriptionService } from './services/subscription';
export { salesService } from './services/sales';
export { inventoryService } from './services/inventory';
// New API Services
export { trainingService } from './services/training';
export { alertProcessorService } from './services/alert_processor';
export { suppliersService } from './services/suppliers';
2025-09-09 08:30:06 +02:00
export { OrdersService } from './services/orders';
2025-09-09 21:39:12 +02:00
export { forecastingService } from './services/forecasting';
2025-09-10 08:00:50 +02:00
export { productionService } from './services/production';
2025-09-11 18:21:32 +02:00
export { posService } from './services/pos';
export { recipesService } from './services/recipes';
// Types - Auth
export type {
User,
UserRegistration,
UserLogin,
TokenResponse,
RefreshTokenRequest,
PasswordChange,
PasswordReset,
UserResponse,
UserUpdate as AuthUserUpdate,
TokenVerificationResponse,
AuthHealthResponse,
} from './types/auth';
// Types - User
export type {
UserUpdate,
AdminDeleteRequest,
AdminDeleteResponse,
} from './types/user';
// Types - Onboarding
export type {
OnboardingStepStatus,
UserProgress,
UpdateStepRequest,
} from './types/onboarding';
// Types - Tenant
export type {
BakeryRegistration,
TenantResponse,
TenantAccessResponse,
TenantUpdate,
TenantMemberResponse,
TenantStatistics,
TenantSearchParams,
TenantNearbyParams,
} from './types/tenant';
// Types - Subscription
export type {
SubscriptionLimits,
FeatureCheckResponse,
UsageCheckResponse,
2025-09-20 08:59:12 +02:00
UsageSummary,
AvailablePlans,
Plan,
PlanUpgradeValidation,
PlanUpgradeResult,
SubscriptionTier,
BillingCycle,
PlanMetadata
} from './types/subscription';
export {
SUBSCRIPTION_TIERS,
BILLING_CYCLES,
ANALYTICS_LEVELS
} from './types/subscription';
// Types - Sales
export type {
SalesDataCreate,
SalesDataUpdate,
SalesDataResponse,
SalesDataQuery,
SalesAnalytics,
SalesValidationRequest,
} from './types/sales';
// Types - Data Import
export type {
ImportValidationRequest,
ImportValidationResponse,
ImportProcessRequest,
ImportProcessResponse,
ImportStatusResponse,
} from './types/dataImport';
// Types - Inventory
export type {
IngredientCreate,
IngredientUpdate,
IngredientResponse,
StockCreate,
StockUpdate,
StockResponse,
StockMovementCreate,
StockMovementResponse,
InventoryFilter,
StockFilter,
StockConsumptionRequest,
StockConsumptionResponse,
PaginatedResponse,
} from './types/inventory';
2025-09-15 15:31:27 +02:00
export { ProductType } from './types/inventory';
// Types - Classification
export type {
ProductClassificationRequest,
BatchClassificationRequest,
ProductSuggestionResponse,
BusinessModelAnalysisResponse,
ClassificationApprovalRequest,
ClassificationApprovalResponse,
} from './types/classification';
// Types - Dashboard
export type {
InventoryDashboardSummary,
InventoryAnalytics,
BusinessModelInsights,
DashboardFilter,
AlertsFilter,
RecentActivity,
StockMovementSummary,
CategorySummary,
AlertSummary,
StockStatusSummary,
} from './types/dashboard';
// Types - Food Safety
export type {
FoodSafetyComplianceCreate,
FoodSafetyComplianceUpdate,
FoodSafetyComplianceResponse,
TemperatureLogCreate,
BulkTemperatureLogCreate,
TemperatureLogResponse,
FoodSafetyAlertCreate,
FoodSafetyAlertUpdate,
FoodSafetyAlertResponse,
FoodSafetyFilter,
TemperatureMonitoringFilter,
FoodSafetyMetrics,
TemperatureAnalytics,
FoodSafetyDashboard,
} from './types/foodSafety';
// Types - Training
export type {
TrainingJobRequest,
TrainingJobResponse,
TrainingJobStatus,
SingleProductTrainingRequest,
TrainingResults,
TrainingMetrics,
ActiveModelResponse,
ModelMetricsResponse,
TrainedModelResponse,
TenantStatistics as TrainingTenantStatistics,
ModelPerformanceResponse,
TrainingProgressMessage,
TrainingCompletedMessage,
TrainingErrorMessage,
TrainingWebSocketMessage,
ModelsQueryParams,
} from './types/training';
export { TrainingStatus } from './types/training';
// Types - Alert Processor
export type {
AlertMessage,
AlertResponse,
AlertUpdateRequest,
AlertQueryParams,
AlertDashboardData,
NotificationSettings,
ChannelRoutingConfig,
WebhookConfig,
AlertProcessingStatus,
ProcessingMetrics,
AlertAction,
BusinessHours,
} from './types/alert_processor';
export {
AlertItemType,
AlertType,
AlertSeverity,
AlertService,
NotificationChannel,
} from './types/alert_processor';
// Types - Suppliers
export type {
SupplierCreate,
SupplierUpdate,
SupplierResponse,
SupplierSummary,
SupplierApproval,
SupplierQueryParams,
SupplierStatistics,
TopSuppliersResponse,
PurchaseOrderCreate,
PurchaseOrderUpdate,
PurchaseOrderResponse,
PurchaseOrderApproval,
PurchaseOrderQueryParams,
DeliveryCreate,
DeliveryUpdate,
DeliveryResponse,
DeliveryReceiptConfirmation,
DeliveryQueryParams,
PerformanceCalculationRequest,
PerformanceMetrics,
PerformanceAlert,
PurchaseOrderItem,
DeliveryItem,
} from './types/suppliers';
export {
SupplierType,
SupplierStatus,
PaymentTerms,
PurchaseOrderStatus,
DeliveryStatus,
OrderPriority,
PerformanceMetricType,
} from './types/suppliers';
2025-09-09 08:30:06 +02:00
// Types - Orders
export type {
CustomerType,
DeliveryMethod,
PaymentTerms as OrdersPaymentTerms,
PaymentMethod,
PaymentStatus,
CustomerSegment,
PriorityLevel,
OrderType,
OrderStatus,
OrderSource,
SalesChannel,
BusinessModel,
CustomerBase,
CustomerCreate,
CustomerUpdate,
CustomerResponse,
OrderItemBase,
OrderItemCreate,
OrderItemUpdate,
OrderItemResponse,
OrderBase,
OrderCreate,
OrderUpdate,
OrderResponse,
OrdersDashboardSummary,
DemandRequirements,
BusinessModelDetection,
ServiceStatus,
GetOrdersParams,
GetCustomersParams,
UpdateOrderStatusParams,
GetDemandRequirementsParams,
// Procurement types
ProcurementPlanType,
ProcurementStrategy,
RiskLevel,
RequirementStatus,
PlanStatus,
DeliveryStatus,
ProcurementRequirementBase,
ProcurementRequirementCreate,
ProcurementRequirementUpdate,
ProcurementRequirementResponse,
ProcurementPlanBase,
ProcurementPlanCreate,
ProcurementPlanUpdate,
ProcurementPlanResponse,
ProcurementSummary,
ProcurementDashboardData,
GeneratePlanRequest,
GeneratePlanResponse,
PaginatedProcurementPlans,
ForecastRequest,
GetProcurementPlansParams,
GetPlanRequirementsParams,
UpdatePlanStatusParams,
2025-09-09 08:30:06 +02:00
} from './types/orders';
2025-09-09 21:39:12 +02:00
// Types - Forecasting
export type {
ForecastRequest,
ForecastResponse,
BatchForecastRequest,
BatchForecastResponse,
ForecastStatistics,
ForecastListResponse,
ForecastByIdResponse,
DeleteForecastResponse,
GetForecastsParams,
ForecastingHealthResponse,
} from './types/forecasting';
export { BusinessType } from './types/forecasting';
2025-09-10 08:00:50 +02:00
// Types - Production
export type {
ProductionBatchBase,
ProductionBatchCreate,
ProductionBatchUpdate,
ProductionBatchStatusUpdate,
ProductionBatchResponse,
ProductionScheduleBase,
ProductionScheduleCreate,
ProductionScheduleUpdate,
ProductionScheduleResponse,
QualityCheckBase,
QualityCheckCreate,
QualityCheckResponse,
ProductionDashboardSummary,
DailyProductionRequirements,
ProductionMetrics,
ProductionBatchListResponse,
ProductionScheduleListResponse,
QualityCheckListResponse,
ProductionScheduleData,
ProductionCapacityStatus,
ProductionRequirements,
ProductionYieldMetrics,
} from './types/production';
export {
ProductionStatusEnum,
ProductionPriorityEnum,
2025-09-20 08:59:12 +02:00
ProductionBatchStatus,
QualityCheckStatus,
2025-09-10 08:00:50 +02:00
} from './types/production';
2025-09-11 18:21:32 +02:00
// Types - POS
export type {
POSConfiguration,
POSTransaction,
POSTransactionItem,
POSWebhookLog,
POSSyncLog,
POSSystemInfo,
POSProviderConfig,
POSCredentialsField,
GetPOSConfigurationsRequest,
GetPOSConfigurationsResponse,
CreatePOSConfigurationRequest,
CreatePOSConfigurationResponse,
UpdatePOSConfigurationRequest,
UpdatePOSConfigurationResponse,
TestPOSConnectionRequest,
TestPOSConnectionResponse,
POSSyncSettings,
SyncHealth,
SyncAnalytics,
TransactionSummary,
WebhookStatus,
POSSystem,
POSEnvironment,
} from './types/pos';
// Types - Recipes
export type {
RecipeStatus,
MeasurementUnit,
ProductionStatus as RecipeProductionStatus,
ProductionPriority as RecipeProductionPriority,
RecipeIngredientCreate,
RecipeIngredientUpdate,
RecipeIngredientResponse,
RecipeCreate,
RecipeUpdate,
RecipeResponse,
RecipeSearchRequest,
RecipeSearchParams,
RecipeDuplicateRequest,
RecipeFeasibilityResponse,
RecipeStatisticsResponse,
RecipeCategoriesResponse,
ProductionBatchCreate as RecipeProductionBatchCreate,
ProductionBatchUpdate as RecipeProductionBatchUpdate,
ProductionBatchResponse as RecipeProductionBatchResponse,
RecipeFormData,
RecipeUpdateFormData,
} from './types/recipes';
// Hooks - Auth
export {
useAuthProfile,
useAuthHealth,
useVerifyToken,
useRegister,
useLogin,
useRefreshToken,
useLogout,
useChangePassword,
useResetPassword,
useUpdateProfile,
useVerifyEmail,
authKeys,
} from './hooks/auth';
// Hooks - User
export {
useCurrentUser,
useAllUsers,
useUserById,
useUpdateUser,
useDeleteUser,
useAdminDeleteUser,
userKeys,
} from './hooks/user';
// Hooks - Onboarding
export {
useUserProgress,
useAllSteps,
useStepDetails,
useUpdateStep,
useMarkStepCompleted,
useResetProgress,
onboardingKeys,
} from './hooks/onboarding';
// Hooks - Tenant
export {
useTenant,
useTenantBySubdomain,
useUserTenants,
useUserOwnedTenants,
useTenantAccess,
useSearchTenants,
useNearbyTenants,
useTeamMembers,
useTenantStatistics,
useRegisterBakery,
useUpdateTenant,
useDeactivateTenant,
useActivateTenant,
useUpdateModelStatus,
useAddTeamMember,
useUpdateMemberRole,
useRemoveTeamMember,
tenantKeys,
} from './hooks/tenant';
// Hooks - Sales
export {
useSalesRecords,
useSalesRecord,
useSalesAnalytics,
useProductSales,
useProductCategories,
useCreateSalesRecord,
useUpdateSalesRecord,
useDeleteSalesRecord,
useValidateSalesRecord,
salesKeys,
} from './hooks/sales';
// Hooks - Inventory
export {
useIngredients,
useIngredient,
useIngredientsByCategory,
useLowStockIngredients,
useStock,
useStockByIngredient,
useExpiringStock,
useExpiredStock,
useStockMovements,
useStockAnalytics,
useCreateIngredient,
useUpdateIngredient,
2025-09-17 16:06:30 +02:00
useSoftDeleteIngredient,
useHardDeleteIngredient,
useAddStock,
useUpdateStock,
useConsumeStock,
useCreateStockMovement,
inventoryKeys,
} from './hooks/inventory';
2025-10-06 15:27:01 +02:00
// Note: Classification hooks consolidated into inventory.ts hooks (useClassifyBatch)
// Note: Data Import hooks consolidated into sales.ts hooks (useValidateImportFile, useImportSalesData)
// Note: Inventory Dashboard and Food Safety hooks consolidated into inventory.ts hooks
// Hooks - Training
export {
useTrainingJobStatus,
useActiveModel,
useModels,
useModelMetrics,
useModelPerformance,
useTenantTrainingStatistics,
useCreateTrainingJob,
useTrainSingleProduct,
useDeleteAllTenantModels,
useTrainingWebSocket,
useIsTrainingInProgress,
useTrainingProgress,
trainingKeys,
} from './hooks/training';
// Hooks - Alert Processor
export {
useAlerts,
useAlert,
useAlertDashboardData,
useAlertProcessingStatus,
useNotificationSettings,
useChannelRoutingConfig,
useWebhooks,
useProcessingMetrics,
useUpdateAlert,
useDismissAlert,
useAcknowledgeAlert,
useResolveAlert,
useUpdateNotificationSettings,
useCreateWebhook,
useUpdateWebhook,
useDeleteWebhook,
useTestWebhook,
useAlertSSE,
useActiveAlertsCount,
useAlertsByPriority,
useUnreadAlertsCount,
alertProcessorKeys,
} from './hooks/alert_processor';
// Hooks - Suppliers
export {
useSuppliers,
useSupplier,
useSupplierStatistics,
useActiveSuppliers,
useTopSuppliers,
usePendingApprovalSuppliers,
useSuppliersByType,
usePurchaseOrders,
usePurchaseOrder,
useDeliveries,
useDelivery,
useSupplierPerformanceMetrics,
usePerformanceAlerts,
useCreateSupplier,
useUpdateSupplier,
useDeleteSupplier,
useApproveSupplier,
useCreatePurchaseOrder,
useUpdatePurchaseOrder,
useApprovePurchaseOrder,
useCreateDelivery,
useUpdateDelivery,
useConfirmDeliveryReceipt,
useCalculateSupplierPerformance,
useEvaluatePerformanceAlerts,
useSuppliersByStatus,
useSuppliersCount,
useActiveSuppliersCount,
usePendingOrdersCount,
suppliersKeys,
} from './hooks/suppliers';
2025-09-09 08:30:06 +02:00
// Hooks - Orders
export {
useOrders,
useOrder,
useCustomers,
useCustomer,
useOrdersDashboard,
useDemandRequirements,
useBusinessModelDetection,
useOrdersServiceStatus,
useCreateOrder,
useUpdateOrderStatus,
useCreateCustomer,
useUpdateCustomer,
useInvalidateOrders,
// Procurement hooks
useProcurementPlans,
useProcurementPlan,
useProcurementPlanByDate,
useCurrentProcurementPlan,
useProcurementDashboard,
usePlanRequirements,
useCriticalRequirements,
useProcurementHealth,
useGenerateProcurementPlan,
useUpdateProcurementPlanStatus,
useTriggerDailyScheduler,
useRecalculateProcurementPlan,
useApproveProcurementPlan,
useRejectProcurementPlan,
useCreatePurchaseOrdersFromPlan,
useLinkRequirementToPurchaseOrder,
useUpdateRequirementDeliveryStatus,
2025-09-09 08:30:06 +02:00
ordersKeys,
} from './hooks/orders';
2025-09-09 21:39:12 +02:00
// Hooks - Forecasting
export {
useTenantForecasts,
useForecastById,
useForecastStatistics,
useForecastingHealth,
useInfiniteTenantForecasts,
useCreateSingleForecast,
useCreateBatchForecast,
useDeleteForecast,
usePrefetchForecast,
useInvalidateForecasting,
forecastingKeys,
} from './hooks/forecasting';
2025-09-10 08:00:50 +02:00
// Hooks - Production
export {
useProductionDashboard,
useDailyProductionRequirements,
useProductionRequirements,
useActiveBatches,
useBatchDetails,
useProductionSchedule,
useCapacityStatus,
useYieldMetrics,
useCreateProductionBatch,
useUpdateBatchStatus,
useProductionDashboardData,
useProductionPlanningData,
2025-10-24 13:05:04 +02:00
useTriggerProductionScheduler,
2025-09-10 08:00:50 +02:00
productionKeys,
} from './hooks/production';
2025-09-11 18:21:32 +02:00
// Hooks - POS
export {
usePOSConfigurations,
usePOSConfiguration,
useSupportedPOSSystems,
useCreatePOSConfiguration,
useUpdatePOSConfiguration,
useDeletePOSConfiguration,
useTestPOSConnection,
usePOSTransactions,
usePOSTransaction,
useTriggerManualSync,
usePOSSyncStatus,
useDetailedSyncLogs,
useSyncSingleTransaction,
usePOSSyncAnalytics,
useResyncFailedTransactions,
usePOSSyncLogs,
usePOSWebhookLogs,
useWebhookStatus,
usePOSUtils,
usePOSConfigurationData,
usePOSConfigurationManager,
posKeys,
} from './hooks/pos';
// Hooks - Recipes
export {
useRecipe,
useRecipes,
useInfiniteRecipes,
useRecipeStatistics,
useRecipeCategories,
useRecipeFeasibility,
useCreateRecipe,
useUpdateRecipe,
useDeleteRecipe,
useDuplicateRecipe,
useActivateRecipe,
recipesKeys,
} from './hooks/recipes';
// Note: All query key factories are already exported in their respective hook sections above