@plyaz/api 1.0.2 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +632 -542
- package/dist/api/cache/index.d.ts +183 -0
- package/dist/api/cache/index.d.ts.map +1 -0
- package/dist/api/cache/patterns.d.ts +174 -0
- package/dist/api/cache/patterns.d.ts.map +1 -0
- package/dist/api/cache/strategies.d.ts +47 -0
- package/dist/api/cache/strategies.d.ts.map +1 -0
- package/dist/api/client/clientEventManager.d.ts +238 -0
- package/dist/api/client/clientEventManager.d.ts.map +1 -0
- package/dist/api/client/createApiClient.d.ts +5 -0
- package/dist/api/client/createApiClient.d.ts.map +1 -0
- package/dist/api/client/helpers/headers.d.ts +11 -0
- package/dist/api/client/helpers/headers.d.ts.map +1 -0
- package/dist/api/client/helpers/index.d.ts +9 -0
- package/dist/api/client/helpers/index.d.ts.map +1 -0
- package/dist/api/client/helpers/interceptors.d.ts +29 -0
- package/dist/api/client/helpers/interceptors.d.ts.map +1 -0
- package/dist/api/client/helpers/network.d.ts +21 -0
- package/dist/api/client/helpers/network.d.ts.map +1 -0
- package/dist/api/client/helpers/strategies.d.ts +30 -0
- package/dist/api/client/helpers/strategies.d.ts.map +1 -0
- package/dist/api/client/helpers/tracking.d.ts +15 -0
- package/dist/api/client/helpers/tracking.d.ts.map +1 -0
- package/dist/api/client/index.d.ts +7 -0
- package/dist/api/client/index.d.ts.map +1 -0
- package/dist/api/config/adapter.d.ts +25 -0
- package/dist/api/config/adapter.d.ts.map +1 -0
- package/dist/api/config/configBuilder.d.ts +62 -0
- package/dist/api/config/configBuilder.d.ts.map +1 -0
- package/dist/api/config/configManager.d.ts +67 -0
- package/dist/api/config/configManager.d.ts.map +1 -0
- package/dist/api/config/global.d.ts +106 -0
- package/dist/api/config/global.d.ts.map +1 -0
- package/dist/api/config/index.d.ts +11 -0
- package/dist/api/config/index.d.ts.map +1 -0
- package/dist/api/debugger/DebugReport.d.ts +71 -0
- package/dist/api/debugger/DebugReport.d.ts.map +1 -0
- package/dist/api/debugger/UnifiedDebugger.d.ts +444 -0
- package/dist/api/debugger/UnifiedDebugger.d.ts.map +1 -0
- package/dist/api/debugger/factories/conflict.d.ts +58 -0
- package/dist/api/debugger/factories/conflict.d.ts.map +1 -0
- package/dist/api/debugger/factories/eventTracking.d.ts +126 -0
- package/dist/api/debugger/factories/eventTracking.d.ts.map +1 -0
- package/dist/api/debugger/factories/history.d.ts +97 -0
- package/dist/api/debugger/factories/history.d.ts.map +1 -0
- package/dist/api/debugger/factories/index.d.ts +15 -0
- package/dist/api/debugger/factories/index.d.ts.map +1 -0
- package/dist/api/debugger/factories/issueAnalysis.d.ts +52 -0
- package/dist/api/debugger/factories/issueAnalysis.d.ts.map +1 -0
- package/dist/api/debugger/factories/performance.d.ts +53 -0
- package/dist/api/debugger/factories/performance.d.ts.map +1 -0
- package/dist/api/debugger/factories/report.d.ts +43 -0
- package/dist/api/debugger/factories/report.d.ts.map +1 -0
- package/dist/api/debugger/index.d.ts +99 -0
- package/dist/api/debugger/index.d.ts.map +1 -0
- package/dist/api/debugger/queue/DebuggerQueueManager.d.ts +61 -0
- package/dist/api/debugger/queue/DebuggerQueueManager.d.ts.map +1 -0
- package/dist/api/debugger/queue/OperationTracker.d.ts +86 -0
- package/dist/api/debugger/queue/OperationTracker.d.ts.map +1 -0
- package/dist/api/debugger/queue/index.d.ts +9 -0
- package/dist/api/debugger/queue/index.d.ts.map +1 -0
- package/dist/api/endpoints/builders.d.ts +109 -0
- package/dist/api/endpoints/builders.d.ts.map +1 -0
- package/dist/api/endpoints/campaigns.d.ts +43 -0
- package/dist/api/endpoints/campaigns.d.ts.map +1 -0
- package/dist/api/endpoints/index.d.ts +100 -0
- package/dist/api/endpoints/index.d.ts.map +1 -0
- package/dist/api/endpoints/polling.d.ts +83 -0
- package/dist/api/endpoints/polling.d.ts.map +1 -0
- package/dist/api/endpoints/utils.d.ts +128 -0
- package/dist/api/endpoints/utils.d.ts.map +1 -0
- package/dist/api/errors/ApiPackageError.d.ts +101 -0
- package/dist/api/errors/ApiPackageError.d.ts.map +1 -0
- package/dist/api/errors/definitions.d.ts +24 -0
- package/dist/api/errors/definitions.d.ts.map +1 -0
- package/dist/api/errors/error-codes.d.ts +116 -0
- package/dist/api/errors/error-codes.d.ts.map +1 -0
- package/dist/api/errors/error-events.d.ts +63 -0
- package/dist/api/errors/error-events.d.ts.map +1 -0
- package/dist/api/errors/index.d.ts +18 -0
- package/dist/api/errors/index.d.ts.map +1 -0
- package/dist/api/errors/types-constants.d.ts +64 -0
- package/dist/api/errors/types-constants.d.ts.map +1 -0
- package/dist/api/events/EventManager.d.ts +230 -0
- package/dist/api/events/EventManager.d.ts.map +1 -0
- package/dist/api/events/factories/base.d.ts +269 -0
- package/dist/api/events/factories/base.d.ts.map +1 -0
- package/dist/api/events/factories/cache.d.ts +31 -0
- package/dist/api/events/factories/cache.d.ts.map +1 -0
- package/dist/api/events/factories/client.d.ts +43 -0
- package/dist/api/events/factories/client.d.ts.map +1 -0
- package/dist/api/events/factories/config.d.ts +34 -0
- package/dist/api/events/factories/config.d.ts.map +1 -0
- package/dist/api/events/factories/debug.d.ts +74 -0
- package/dist/api/events/factories/debug.d.ts.map +1 -0
- package/dist/api/events/factories/errors.d.ts +91 -0
- package/dist/api/events/factories/errors.d.ts.map +1 -0
- package/dist/api/events/factories/headers.d.ts +54 -0
- package/dist/api/events/factories/headers.d.ts.map +1 -0
- package/dist/api/events/factories/index.d.ts +46 -0
- package/dist/api/events/factories/index.d.ts.map +1 -0
- package/dist/api/events/factories/network.d.ts +54 -0
- package/dist/api/events/factories/network.d.ts.map +1 -0
- package/dist/api/events/factories/performance.d.ts +43 -0
- package/dist/api/events/factories/performance.d.ts.map +1 -0
- package/dist/api/events/index.d.ts +34 -0
- package/dist/api/events/index.d.ts.map +1 -0
- package/dist/api/events/namespaces.d.ts +464 -0
- package/dist/api/events/namespaces.d.ts.map +1 -0
- package/dist/api/events/queue/ConfigUpdateQueueManager.d.ts +53 -0
- package/dist/api/events/queue/ConfigUpdateQueueManager.d.ts.map +1 -0
- package/dist/api/events/queue/EventQueueManager.d.ts +69 -0
- package/dist/api/events/queue/EventQueueManager.d.ts.map +1 -0
- package/dist/api/events/queue/index.d.ts +12 -0
- package/dist/api/events/queue/index.d.ts.map +1 -0
- package/dist/api/events/shared-emitter.d.ts +14 -0
- package/dist/api/events/shared-emitter.d.ts.map +1 -0
- package/dist/api/headers/cache.d.ts +17 -0
- package/dist/api/headers/cache.d.ts.map +1 -0
- package/dist/api/headers/enriched.d.ts +18 -0
- package/dist/api/headers/enriched.d.ts.map +1 -0
- package/dist/api/headers/events.d.ts +17 -0
- package/dist/api/headers/events.d.ts.map +1 -0
- package/dist/api/headers/extract.d.ts +73 -0
- package/dist/api/headers/extract.d.ts.map +1 -0
- package/dist/api/headers/headerBuilder.d.ts +308 -0
- package/dist/api/headers/headerBuilder.d.ts.map +1 -0
- package/dist/api/headers/index.d.ts +37 -0
- package/dist/api/headers/index.d.ts.map +1 -0
- package/dist/api/headers/merge.d.ts +32 -0
- package/dist/api/headers/merge.d.ts.map +1 -0
- package/dist/api/headers/presets.d.ts +24 -0
- package/dist/api/headers/presets.d.ts.map +1 -0
- package/dist/api/headers/utils.d.ts +38 -0
- package/dist/api/headers/utils.d.ts.map +1 -0
- package/dist/api/hooks/factories/createApiMutation.d.ts +57 -0
- package/dist/api/hooks/factories/createApiMutation.d.ts.map +1 -0
- package/dist/api/hooks/factories/createApiQuery.d.ts +55 -0
- package/dist/api/hooks/factories/createApiQuery.d.ts.map +1 -0
- package/dist/api/hooks/factories/defaults.d.ts +15 -0
- package/dist/api/hooks/factories/defaults.d.ts.map +1 -0
- package/dist/api/hooks/factories/index.d.ts +8 -0
- package/dist/api/hooks/factories/index.d.ts.map +1 -0
- package/dist/api/hooks/index.d.ts +11 -0
- package/dist/api/hooks/index.d.ts.map +1 -0
- package/dist/api/hooks/types.d.ts +82 -0
- package/dist/api/hooks/types.d.ts.map +1 -0
- package/dist/api/hooks/useApiConfigConflicts.d.ts +24 -0
- package/dist/api/hooks/useApiConfigConflicts.d.ts.map +1 -0
- package/dist/api/hooks/useApiDebugInfo.d.ts +24 -0
- package/dist/api/hooks/useApiDebugInfo.d.ts.map +1 -0
- package/dist/api/hooks/useApiMonitor.d.ts +25 -0
- package/dist/api/hooks/useApiMonitor.d.ts.map +1 -0
- package/dist/api/hooks/useApiNetworkQuality.d.ts +21 -0
- package/dist/api/hooks/useApiNetworkQuality.d.ts.map +1 -0
- package/dist/api/index.d.ts +26 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/network/adaptive.d.ts +56 -0
- package/dist/api/network/adaptive.d.ts.map +1 -0
- package/dist/api/network/client-hints.d.ts +25 -0
- package/dist/api/network/client-hints.d.ts.map +1 -0
- package/dist/api/network/connection.d.ts +60 -0
- package/dist/api/network/connection.d.ts.map +1 -0
- package/dist/api/network/core.d.ts +26 -0
- package/dist/api/network/core.d.ts.map +1 -0
- package/dist/api/network/events.d.ts +18 -0
- package/dist/api/network/events.d.ts.map +1 -0
- package/dist/api/network/frameworks/express.d.ts +110 -0
- package/dist/api/network/frameworks/express.d.ts.map +1 -0
- package/dist/api/network/frameworks/index.d.ts +13 -0
- package/dist/api/network/frameworks/index.d.ts.map +1 -0
- package/dist/api/network/frameworks/nestjs/clientHintsInterceptor.d.ts +29 -0
- package/dist/api/network/frameworks/nestjs/clientHintsInterceptor.d.ts.map +1 -0
- package/dist/api/network/frameworks/nestjs/decorators.d.ts +48 -0
- package/dist/api/network/frameworks/nestjs/decorators.d.ts.map +1 -0
- package/dist/api/network/frameworks/nestjs/enrichedHeadersGuard.d.ts +80 -0
- package/dist/api/network/frameworks/nestjs/enrichedHeadersGuard.d.ts.map +1 -0
- package/dist/api/network/frameworks/nestjs/enrichedHeadersInterceptor.d.ts +83 -0
- package/dist/api/network/frameworks/nestjs/enrichedHeadersInterceptor.d.ts.map +1 -0
- package/dist/api/network/frameworks/nestjs/index.d.ts +13 -0
- package/dist/api/network/frameworks/nestjs/index.d.ts.map +1 -0
- package/dist/api/network/frameworks/nestjs/minimumConnectionGuard.d.ts +27 -0
- package/dist/api/network/frameworks/nestjs/minimumConnectionGuard.d.ts.map +1 -0
- package/dist/api/network/frameworks/nestjs/networkDetectionMiddleware.d.ts +31 -0
- package/dist/api/network/frameworks/nestjs/networkDetectionMiddleware.d.ts.map +1 -0
- package/dist/api/network/frameworks/nestjs/networkGuard.d.ts +33 -0
- package/dist/api/network/frameworks/nestjs/networkGuard.d.ts.map +1 -0
- package/dist/api/network/frameworks/nestjs/noDataSaverGuard.d.ts +25 -0
- package/dist/api/network/frameworks/nestjs/noDataSaverGuard.d.ts.map +1 -0
- package/dist/api/network/frameworks/nextjs.d.ts +86 -0
- package/dist/api/network/frameworks/nextjs.d.ts.map +1 -0
- package/dist/api/network/frameworks/shared.d.ts +45 -0
- package/dist/api/network/frameworks/shared.d.ts.map +1 -0
- package/dist/api/network/headers.d.ts +112 -0
- package/dist/api/network/headers.d.ts.map +1 -0
- package/dist/api/network/index.d.ts +17 -0
- package/dist/api/network/index.d.ts.map +1 -0
- package/dist/api/network/networkConfigurationManager.d.ts +225 -0
- package/dist/api/network/networkConfigurationManager.d.ts.map +1 -0
- package/dist/api/network/platform.d.ts +171 -0
- package/dist/api/network/platform.d.ts.map +1 -0
- package/dist/api/network/presets.d.ts +55 -0
- package/dist/api/network/presets.d.ts.map +1 -0
- package/dist/api/network/quality.d.ts +28 -0
- package/dist/api/network/quality.d.ts.map +1 -0
- package/dist/api/network/status.d.ts +74 -0
- package/dist/api/network/status.d.ts.map +1 -0
- package/dist/api/performance/adaptive.d.ts +35 -0
- package/dist/api/performance/adaptive.d.ts.map +1 -0
- package/dist/api/performance/index.d.ts +133 -0
- package/dist/api/performance/index.d.ts.map +1 -0
- package/dist/api/performance/patterns.d.ts +20 -0
- package/dist/api/performance/patterns.d.ts.map +1 -0
- package/dist/api/performance/performanceMonitor.d.ts +85 -0
- package/dist/api/performance/performanceMonitor.d.ts.map +1 -0
- package/dist/api/performance/presets.d.ts +18 -0
- package/dist/api/performance/presets.d.ts.map +1 -0
- package/dist/api/performance/utils.d.ts +98 -0
- package/dist/api/performance/utils.d.ts.map +1 -0
- package/dist/api/polling/index.d.ts +10 -0
- package/dist/api/polling/index.d.ts.map +1 -0
- package/dist/api/polling/strategies.d.ts +128 -0
- package/dist/api/polling/strategies.d.ts.map +1 -0
- package/dist/api/polling/utils.d.ts +133 -0
- package/dist/api/polling/utils.d.ts.map +1 -0
- package/dist/api/pubsub/index.d.ts +147 -0
- package/dist/api/pubsub/index.d.ts.map +1 -0
- package/dist/api/pubsub/react.d.ts +214 -0
- package/dist/api/pubsub/react.d.ts.map +1 -0
- package/dist/api/queue/BaseOperationTracker.d.ts +86 -0
- package/dist/api/queue/BaseOperationTracker.d.ts.map +1 -0
- package/dist/api/queue/BaseQueueManager.d.ts +54 -0
- package/dist/api/queue/BaseQueueManager.d.ts.map +1 -0
- package/dist/api/queue/BatchProcessor.d.ts +42 -0
- package/dist/api/queue/BatchProcessor.d.ts.map +1 -0
- package/dist/api/queue/EventQueueManager.d.ts +128 -0
- package/dist/api/queue/EventQueueManager.d.ts.map +1 -0
- package/dist/api/queue/PriorityQueue.d.ts +58 -0
- package/dist/api/queue/PriorityQueue.d.ts.map +1 -0
- package/dist/api/queue/QueueFactory.d.ts +57 -0
- package/dist/api/queue/QueueFactory.d.ts.map +1 -0
- package/dist/api/queue/QueueOrchestrator.d.ts +90 -0
- package/dist/api/queue/QueueOrchestrator.d.ts.map +1 -0
- package/dist/api/queue/QueueSystem.d.ts +102 -0
- package/dist/api/queue/QueueSystem.d.ts.map +1 -0
- package/dist/api/queue/index.d.ts +22 -0
- package/dist/api/queue/index.d.ts.map +1 -0
- package/dist/api/regional/constants.d.ts +76 -0
- package/dist/api/regional/constants.d.ts.map +1 -0
- package/dist/api/regional/core.d.ts +56 -0
- package/dist/api/regional/core.d.ts.map +1 -0
- package/dist/api/regional/helpers.d.ts +49 -0
- package/dist/api/regional/helpers.d.ts.map +1 -0
- package/dist/api/regional/index.d.ts +10 -0
- package/dist/api/regional/index.d.ts.map +1 -0
- package/dist/api/regional/presets.d.ts +16 -0
- package/dist/api/regional/presets.d.ts.map +1 -0
- package/dist/api/request/index.d.ts +18 -0
- package/dist/api/request/index.d.ts.map +1 -0
- package/dist/api/request/management.d.ts +46 -0
- package/dist/api/request/management.d.ts.map +1 -0
- package/dist/api/request/prepare.d.ts +34 -0
- package/dist/api/request/prepare.d.ts.map +1 -0
- package/dist/api/request/react.d.ts +98 -0
- package/dist/api/request/react.d.ts.map +1 -0
- package/dist/api/request/routing.d.ts +74 -0
- package/dist/api/request/routing.d.ts.map +1 -0
- package/dist/api/request/tracker.d.ts +76 -0
- package/dist/api/request/tracker.d.ts.map +1 -0
- package/dist/api/request/utils.d.ts +129 -0
- package/dist/api/request/utils.d.ts.map +1 -0
- package/dist/api/retry/conditions.d.ts +140 -0
- package/dist/api/retry/conditions.d.ts.map +1 -0
- package/dist/api/retry/index.d.ts +10 -0
- package/dist/api/retry/index.d.ts.map +1 -0
- package/dist/api/retry/strategies.d.ts +56 -0
- package/dist/api/retry/strategies.d.ts.map +1 -0
- package/dist/api/revalidation/index.d.ts +29 -0
- package/dist/api/revalidation/index.d.ts.map +1 -0
- package/dist/api/revalidation/presets.d.ts +71 -0
- package/dist/api/revalidation/presets.d.ts.map +1 -0
- package/dist/api/revalidation/strategies.d.ts +116 -0
- package/dist/api/revalidation/strategies.d.ts.map +1 -0
- package/dist/api/revalidation/utils.d.ts +78 -0
- package/dist/api/revalidation/utils.d.ts.map +1 -0
- package/dist/api/services/campaigns/DELETE/deleteCampaign.d.ts +30 -0
- package/dist/api/services/campaigns/DELETE/deleteCampaign.d.ts.map +1 -0
- package/dist/api/services/campaigns/DELETE/index.d.ts +7 -0
- package/dist/api/services/campaigns/DELETE/index.d.ts.map +1 -0
- package/dist/api/services/campaigns/DELETE/useDeleteCampaign.d.ts +24 -0
- package/dist/api/services/campaigns/DELETE/useDeleteCampaign.d.ts.map +1 -0
- package/dist/api/services/campaigns/GET/fetchCampaign.d.ts +36 -0
- package/dist/api/services/campaigns/GET/fetchCampaign.d.ts.map +1 -0
- package/dist/api/services/campaigns/GET/fetchCampaignParticipants.d.ts +40 -0
- package/dist/api/services/campaigns/GET/fetchCampaignParticipants.d.ts.map +1 -0
- package/dist/api/services/campaigns/GET/fetchCampaignStats.d.ts +31 -0
- package/dist/api/services/campaigns/GET/fetchCampaignStats.d.ts.map +1 -0
- package/dist/api/services/campaigns/GET/fetchCampaigns.d.ts +39 -0
- package/dist/api/services/campaigns/GET/fetchCampaigns.d.ts.map +1 -0
- package/dist/api/services/campaigns/GET/index.d.ts +13 -0
- package/dist/api/services/campaigns/GET/index.d.ts.map +1 -0
- package/dist/api/services/campaigns/GET/useCampaign.d.ts +47 -0
- package/dist/api/services/campaigns/GET/useCampaign.d.ts.map +1 -0
- package/dist/api/services/campaigns/GET/useCampaignParticipants.d.ts +43 -0
- package/dist/api/services/campaigns/GET/useCampaignParticipants.d.ts.map +1 -0
- package/dist/api/services/campaigns/GET/useCampaignStats.d.ts +33 -0
- package/dist/api/services/campaigns/GET/useCampaignStats.d.ts.map +1 -0
- package/dist/api/services/campaigns/GET/useCampaigns.d.ts +43 -0
- package/dist/api/services/campaigns/GET/useCampaigns.d.ts.map +1 -0
- package/dist/api/services/campaigns/POST/createCampaign.d.ts +37 -0
- package/dist/api/services/campaigns/POST/createCampaign.d.ts.map +1 -0
- package/dist/api/services/campaigns/POST/index.d.ts +11 -0
- package/dist/api/services/campaigns/POST/index.d.ts.map +1 -0
- package/dist/api/services/campaigns/POST/joinCampaign.d.ts +31 -0
- package/dist/api/services/campaigns/POST/joinCampaign.d.ts.map +1 -0
- package/dist/api/services/campaigns/POST/leaveCampaign.d.ts +31 -0
- package/dist/api/services/campaigns/POST/leaveCampaign.d.ts.map +1 -0
- package/dist/api/services/campaigns/POST/useCreateCampaign.d.ts +36 -0
- package/dist/api/services/campaigns/POST/useCreateCampaign.d.ts.map +1 -0
- package/dist/api/services/campaigns/POST/useJoinCampaign.d.ts +23 -0
- package/dist/api/services/campaigns/POST/useJoinCampaign.d.ts.map +1 -0
- package/dist/api/services/campaigns/POST/useLeaveCampaign.d.ts +23 -0
- package/dist/api/services/campaigns/POST/useLeaveCampaign.d.ts.map +1 -0
- package/dist/api/services/campaigns/PUT/index.d.ts +7 -0
- package/dist/api/services/campaigns/PUT/index.d.ts.map +1 -0
- package/dist/api/services/campaigns/PUT/updateCampaign.d.ts +37 -0
- package/dist/api/services/campaigns/PUT/updateCampaign.d.ts.map +1 -0
- package/dist/api/services/campaigns/PUT/useUpdateCampaign.d.ts +38 -0
- package/dist/api/services/campaigns/PUT/useUpdateCampaign.d.ts.map +1 -0
- package/dist/api/services/campaigns/index.d.ts +9 -0
- package/dist/api/services/campaigns/index.d.ts.map +1 -0
- package/dist/api/services/clients.d.ts +58 -0
- package/dist/api/services/clients.d.ts.map +1 -0
- package/dist/api/services/index.d.ts +8 -0
- package/dist/api/services/index.d.ts.map +1 -0
- package/dist/api/services/types.d.ts +65 -0
- package/dist/api/services/types.d.ts.map +1 -0
- package/dist/api/strategies/index.d.ts +8 -0
- package/dist/api/strategies/index.d.ts.map +1 -0
- package/dist/api/strategies/tracked.d.ts +15 -0
- package/dist/api/strategies/tracked.d.ts.map +1 -0
- package/dist/api/strategies/unified.d.ts +87 -0
- package/dist/api/strategies/unified.d.ts.map +1 -0
- package/dist/api/utils/async-control.d.ts +96 -0
- package/dist/api/utils/async-control.d.ts.map +1 -0
- package/dist/api/utils/colors.d.ts +88 -0
- package/dist/api/utils/colors.d.ts.map +1 -0
- package/dist/api/utils/environment.d.ts +595 -0
- package/dist/api/utils/environment.d.ts.map +1 -0
- package/dist/api/utils/generation/correlation-id.d.ts +206 -0
- package/dist/api/utils/generation/correlation-id.d.ts.map +1 -0
- package/dist/api/utils/generation/id-generator.d.ts +133 -0
- package/dist/api/utils/generation/id-generator.d.ts.map +1 -0
- package/dist/api/utils/generation/request-id.d.ts +106 -0
- package/dist/api/utils/generation/request-id.d.ts.map +1 -0
- package/dist/api/utils/index.d.ts +19 -0
- package/dist/api/utils/index.d.ts.map +1 -0
- package/dist/api/utils/interval-manager.d.ts +94 -0
- package/dist/api/utils/interval-manager.d.ts.map +1 -0
- package/dist/api/utils/json.d.ts +98 -0
- package/dist/api/utils/json.d.ts.map +1 -0
- package/dist/api/utils/math.d.ts +168 -0
- package/dist/api/utils/math.d.ts.map +1 -0
- package/dist/api/utils/object-merge.d.ts +34 -0
- package/dist/api/utils/object-merge.d.ts.map +1 -0
- package/dist/api/utils/object.d.ts +101 -0
- package/dist/api/utils/object.d.ts.map +1 -0
- package/dist/api/utils/string.d.ts +41 -0
- package/dist/api/utils/string.d.ts.map +1 -0
- package/dist/api/utils/time.d.ts +233 -0
- package/dist/api/utils/time.d.ts.map +1 -0
- package/dist/api/utils/type-guards.d.ts +59 -0
- package/dist/api/utils/type-guards.d.ts.map +1 -0
- package/dist/api/utils/validation.d.ts +21 -0
- package/dist/api/utils/validation.d.ts.map +1 -0
- package/dist/index.cjs +25594 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +5 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +25068 -3
- package/dist/index.mjs.map +1 -1
- package/package.json +15 -6
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Domain-specific error codes for @plyaz/api package
|
|
3
|
+
* Following the error code pattern from Confluence architecture
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* API Error Codes - domain-specific and grouped by category
|
|
7
|
+
*/
|
|
8
|
+
export declare const API_ERROR_CODES: {
|
|
9
|
+
readonly CLIENT_INITIALIZATION_FAILED: "CLIENT_INITIALIZATION_FAILED";
|
|
10
|
+
readonly CLIENT_INVALID_CONFIG: "CLIENT_INVALID_CONFIG";
|
|
11
|
+
readonly CLIENT_MISSING_BASE_URL: "CLIENT_MISSING_BASE_URL";
|
|
12
|
+
readonly CLIENT_CANCELLED: "CLIENT_CANCELLED";
|
|
13
|
+
readonly CONFIG_VALIDATION_FAILED: "CONFIG_VALIDATION_FAILED";
|
|
14
|
+
readonly HEADER_PROCESSING_FAILED: "HEADER_PROCESSING_FAILED";
|
|
15
|
+
readonly NETWORK_OVERRIDE_FAILED: "NETWORK_OVERRIDE_FAILED";
|
|
16
|
+
readonly REQUEST_TIMEOUT: "REQUEST_TIMEOUT";
|
|
17
|
+
readonly REQUEST_ABORTED: "REQUEST_ABORTED";
|
|
18
|
+
readonly REQUEST_INVALID_PARAMS: "REQUEST_INVALID_PARAMS";
|
|
19
|
+
readonly REQUEST_PREPARATION_FAILED: "REQUEST_PREPARATION_FAILED";
|
|
20
|
+
readonly RESPONSE_INVALID_FORMAT: "RESPONSE_INVALID_FORMAT";
|
|
21
|
+
readonly RESPONSE_PARSING_FAILED: "RESPONSE_PARSING_FAILED";
|
|
22
|
+
readonly NETWORK_CONNECTION_FAILED: "NETWORK_CONNECTION_FAILED";
|
|
23
|
+
readonly NETWORK_OFFLINE: "NETWORK_OFFLINE";
|
|
24
|
+
readonly NETWORK_DNS_FAILED: "NETWORK_DNS_FAILED";
|
|
25
|
+
readonly NETWORK_TIMEOUT: "NETWORK_TIMEOUT";
|
|
26
|
+
readonly NETWORK_ERROR: "NETWORK_ERROR";
|
|
27
|
+
readonly NETWORK_PRESET_NOT_FOUND: "NETWORK_PRESET_NOT_FOUND";
|
|
28
|
+
readonly NETWORK_CONFIGURATION_INVALID: "NETWORK_CONFIGURATION_INVALID";
|
|
29
|
+
readonly REGIONAL_PRESET_NOT_FOUND: "REGIONAL_PRESET_NOT_FOUND";
|
|
30
|
+
readonly REGION_DETECTION_FAILED: "REGION_DETECTION_FAILED";
|
|
31
|
+
readonly HEADERS_ENRICHMENT_FAILED: "HEADERS_ENRICHMENT_FAILED";
|
|
32
|
+
readonly HEADERS_VALIDATION_FAILED: "HEADERS_VALIDATION_FAILED";
|
|
33
|
+
readonly HEADERS_MERGE_CONFLICT: "HEADERS_MERGE_CONFLICT";
|
|
34
|
+
readonly CACHE_STORAGE_FAILED: "CACHE_STORAGE_FAILED";
|
|
35
|
+
readonly CACHE_RETRIEVAL_FAILED: "CACHE_RETRIEVAL_FAILED";
|
|
36
|
+
readonly CACHE_INVALIDATION_FAILED: "CACHE_INVALIDATION_FAILED";
|
|
37
|
+
readonly RETRY_EXHAUSTED: "RETRY_EXHAUSTED";
|
|
38
|
+
readonly RETRY_STRATEGY_INVALID: "RETRY_STRATEGY_INVALID";
|
|
39
|
+
readonly STRATEGY_INVALID: "STRATEGY_INVALID";
|
|
40
|
+
readonly STRATEGY_CONFLICT: "STRATEGY_CONFLICT";
|
|
41
|
+
readonly STRATEGY_EXECUTION_FAILED: "STRATEGY_EXECUTION_FAILED";
|
|
42
|
+
readonly POLLING_TIMEOUT: "POLLING_TIMEOUT";
|
|
43
|
+
readonly POLLING_CANCELLED: "POLLING_CANCELLED";
|
|
44
|
+
readonly POLLING_INVALID_CONFIG: "POLLING_INVALID_CONFIG";
|
|
45
|
+
readonly PUBSUB_SUBSCRIPTION_FAILED: "PUBSUB_SUBSCRIPTION_FAILED";
|
|
46
|
+
readonly PUBSUB_PUBLICATION_FAILED: "PUBSUB_PUBLICATION_FAILED";
|
|
47
|
+
readonly PUBSUB_INVALID_TOPIC: "PUBSUB_INVALID_TOPIC";
|
|
48
|
+
readonly PUBSUB_CHANNEL_ERROR: "PUBSUB_CHANNEL_ERROR";
|
|
49
|
+
readonly REVALIDATION_FAILED: "REVALIDATION_FAILED";
|
|
50
|
+
readonly REVALIDATION_IN_PROGRESS: "REVALIDATION_IN_PROGRESS";
|
|
51
|
+
readonly DEBUG_TRACKING_FAILED: "DEBUG_TRACKING_FAILED";
|
|
52
|
+
readonly DEBUG_OVERRIDE_FAILED: "DEBUG_OVERRIDE_FAILED";
|
|
53
|
+
readonly DEBUG_CONFLICT_DETECTED: "DEBUG_CONFLICT_DETECTED";
|
|
54
|
+
readonly ENDPOINT_BUILD_FAILED: "ENDPOINT_BUILD_FAILED";
|
|
55
|
+
readonly ENDPOINT_NOT_FOUND: "ENDPOINT_NOT_FOUND";
|
|
56
|
+
readonly ENDPOINT_INVALID_CONFIG: "ENDPOINT_INVALID_CONFIG";
|
|
57
|
+
readonly EVENT_HANDLER_FAILED: "EVENT_HANDLER_FAILED";
|
|
58
|
+
readonly EVENT_EMISSION_FAILED: "EVENT_EMISSION_FAILED";
|
|
59
|
+
readonly MONITORING_FAILED: "MONITORING_FAILED";
|
|
60
|
+
readonly CONTEXT_OPERATION_FAILED: "CONTEXT_OPERATION_FAILED";
|
|
61
|
+
readonly AUTH_TOKEN_EXPIRED: "AUTH_TOKEN_EXPIRED";
|
|
62
|
+
readonly AUTH_UNAUTHORIZED: "AUTH_UNAUTHORIZED";
|
|
63
|
+
readonly AUTH_FORBIDDEN: "AUTH_FORBIDDEN";
|
|
64
|
+
readonly AUTH_INVALID_CREDENTIALS: "AUTH_INVALID_CREDENTIALS";
|
|
65
|
+
readonly RATE_LIMIT_EXCEEDED: "RATE_LIMIT_EXCEEDED";
|
|
66
|
+
readonly RESOURCE_NOT_FOUND: "RESOURCE_NOT_FOUND";
|
|
67
|
+
readonly INTERNAL_SERVER_ERROR: "INTERNAL_SERVER_ERROR";
|
|
68
|
+
readonly SERVICE_UNAVAILABLE: "SERVICE_UNAVAILABLE";
|
|
69
|
+
readonly EXTERNAL_SERVICE_ERROR: "EXTERNAL_SERVICE_ERROR";
|
|
70
|
+
readonly UNKNOWN_ERROR: "UNKNOWN_ERROR";
|
|
71
|
+
readonly VALIDATION_ERROR: "VALIDATION_ERROR";
|
|
72
|
+
readonly VALIDATION_FAILED: "VALIDATION_FAILED";
|
|
73
|
+
readonly REQUIRED_FIELD_MISSING: "REQUIRED_FIELD_MISSING";
|
|
74
|
+
readonly INVALID_FORMAT: "INVALID_FORMAT";
|
|
75
|
+
readonly VALIDATION_INVALID_FORMAT: "INVALID_FORMAT";
|
|
76
|
+
readonly STRING_TOO_SHORT: "STRING_TOO_SHORT";
|
|
77
|
+
readonly STRING_TOO_LONG: "STRING_TOO_LONG";
|
|
78
|
+
readonly CLIENT_ERROR: "CLIENT_ERROR";
|
|
79
|
+
readonly SERVER_ERROR: "SERVER_ERROR";
|
|
80
|
+
readonly TIMEOUT: "TIMEOUT";
|
|
81
|
+
};
|
|
82
|
+
/**
|
|
83
|
+
* Type for API error codes
|
|
84
|
+
*/
|
|
85
|
+
export type ApiErrorCode = (typeof API_ERROR_CODES)[keyof typeof API_ERROR_CODES];
|
|
86
|
+
/**
|
|
87
|
+
* Internal package status codes (non-HTTP)
|
|
88
|
+
* Used for internal configuration and validation errors that aren't HTTP-related
|
|
89
|
+
*/
|
|
90
|
+
export declare const PACKAGE_STATUS_CODES: {
|
|
91
|
+
readonly INVALID_CONFIGURATION: 1001;
|
|
92
|
+
readonly MISSING_CONFIGURATION: 1002;
|
|
93
|
+
readonly CONFIGURATION_CONFLICT: 1003;
|
|
94
|
+
readonly CONFIGURATION_TRACKING_FAILED: 1004;
|
|
95
|
+
readonly DEBUG_TRACKING_FAILED: 1005;
|
|
96
|
+
readonly RESOURCE_NOT_FOUND: 1010;
|
|
97
|
+
readonly RESOURCE_ALREADY_EXISTS: 1011;
|
|
98
|
+
readonly RESOURCE_UNAVAILABLE: 1012;
|
|
99
|
+
readonly INVALID_PARAMETER: 1020;
|
|
100
|
+
readonly MISSING_PARAMETER: 1021;
|
|
101
|
+
readonly PARAMETER_OUT_OF_RANGE: 1022;
|
|
102
|
+
readonly STRATEGY_NOT_FOUND: 1030;
|
|
103
|
+
readonly PRESET_NOT_FOUND: 1031;
|
|
104
|
+
readonly INVALID_STRATEGY: 1032;
|
|
105
|
+
readonly REQUEST_FAILED: 1035;
|
|
106
|
+
readonly INITIALIZATION_FAILED: 1040;
|
|
107
|
+
readonly OPERATION_FAILED: 1041;
|
|
108
|
+
readonly STATE_CORRUPTION: 1042;
|
|
109
|
+
readonly SERIALIZATION_FAILED: 1043;
|
|
110
|
+
readonly DESERIALIZATION_FAILED: 1044;
|
|
111
|
+
readonly CONFIGURATION_INVALID: 1045;
|
|
112
|
+
readonly HEADER_PROCESSING_ERROR: 1046;
|
|
113
|
+
readonly REGION_DETECTION_ERROR: 1047;
|
|
114
|
+
readonly NETWORK_OVERRIDE_ERROR: 1048;
|
|
115
|
+
};
|
|
116
|
+
//# sourceMappingURL=error-codes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-codes.d.ts","sourceRoot":"","sources":["../../../src/api/errors/error-codes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoHlB,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAElF;;;GAGG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;CAoCvB,CAAC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Error event management for @plyaz/api package
|
|
3
|
+
* Simplified to use shared event emitter and factories
|
|
4
|
+
*/
|
|
5
|
+
import type { ErrorEventHandlers, ErrorHandlerOptions, ERROR_EVENTS, ApiPackageErrorLike } from '@plyaz/types/api';
|
|
6
|
+
import { HANDLER_SCOPES } from '@plyaz/types/api';
|
|
7
|
+
/**
|
|
8
|
+
* Register an error handler for any scope
|
|
9
|
+
* @param eventType - The event type (e.g., ERROR_EVENTS.NETWORK_ERROR, 'network', '*')
|
|
10
|
+
* @param handler - The handler function
|
|
11
|
+
* @param options - Registration options (scope defaults to 'GLOBAL' - app-wide handlers that persist across all instances)
|
|
12
|
+
* @returns Cleanup function to unregister the handler
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* // Register a global handler (default)
|
|
16
|
+
* registerErrorHandler(ERROR_EVENTS.NETWORK_ERROR, handleNetworkError);
|
|
17
|
+
*
|
|
18
|
+
* // Register a client-specific handler
|
|
19
|
+
* registerErrorHandler(ERROR_EVENTS.NETWORK_ERROR, handleNetworkError, { scope: 'CLIENT' });
|
|
20
|
+
*/
|
|
21
|
+
export declare function registerErrorHandler(eventType: string | (typeof ERROR_EVENTS)[keyof typeof ERROR_EVENTS], handler: (error: ApiPackageErrorLike) => void, options?: ErrorHandlerOptions): () => void;
|
|
22
|
+
/**
|
|
23
|
+
* Set error handlers for a specific scope
|
|
24
|
+
* @param handlers - The error handlers to register
|
|
25
|
+
* @param scope - The scope to register handlers at (defaults to GLOBAL - lowest priority, persists across all instances)
|
|
26
|
+
*/
|
|
27
|
+
export declare function setErrorHandlers(handlers: ErrorEventHandlers, scope?: keyof typeof HANDLER_SCOPES): void;
|
|
28
|
+
/**
|
|
29
|
+
* Get error handlers for a specific scope
|
|
30
|
+
* @param scope - The scope to retrieve handlers from (defaults to GLOBAL)
|
|
31
|
+
* @returns The registered error handlers for the specified scope
|
|
32
|
+
*/
|
|
33
|
+
export declare function getErrorHandlers(scope?: keyof typeof HANDLER_SCOPES): ErrorEventHandlers;
|
|
34
|
+
/**
|
|
35
|
+
* Register multiple error handlers at once
|
|
36
|
+
* @param handlers - The error handlers to register
|
|
37
|
+
* @param options - Registration options (scope defaults to 'GLOBAL' - app-wide handlers)
|
|
38
|
+
*/
|
|
39
|
+
export declare function registerErrorHandlers(handlers: ErrorEventHandlers, options?: ErrorHandlerOptions): void;
|
|
40
|
+
/**
|
|
41
|
+
* Unregister error handlers
|
|
42
|
+
* @param eventTypes - Optional array of event types to remove (can use ERROR_EVENTS values or plain types)
|
|
43
|
+
* If not provided, all handlers for the scope are removed.
|
|
44
|
+
* @param options - Options including scope (defaults to 'GLOBAL')
|
|
45
|
+
*/
|
|
46
|
+
export declare function unregisterErrorHandlers(eventTypes?: Array<string | (typeof ERROR_EVENTS)[keyof typeof ERROR_EVENTS]>, options?: Pick<ErrorHandlerOptions, 'scope'>): void;
|
|
47
|
+
/**
|
|
48
|
+
* Clear error handlers
|
|
49
|
+
* @param options - Options including scope(s) to clear (defaults to ['GLOBAL'])
|
|
50
|
+
*/
|
|
51
|
+
export declare function clearErrorHandlers(options?: {
|
|
52
|
+
scopes?: Array<keyof typeof HANDLER_SCOPES>;
|
|
53
|
+
}): void;
|
|
54
|
+
/**
|
|
55
|
+
* Register a one-time error handler
|
|
56
|
+
* Handler will be automatically removed after first execution
|
|
57
|
+
* @param eventType - The event type (e.g., ERROR_EVENTS.NETWORK_ERROR, 'network', '*')
|
|
58
|
+
* @param handler - The handler function
|
|
59
|
+
* @param options - Registration options (scope defaults to 'GLOBAL')
|
|
60
|
+
*/
|
|
61
|
+
export declare function onceErrorHandler(eventType: string | (typeof ERROR_EVENTS)[keyof typeof ERROR_EVENTS], handler: (error: ApiPackageErrorLike) => void, options?: Pick<ErrorHandlerOptions, 'scope'>): void;
|
|
62
|
+
export declare function emitErrorEvent(error: ApiPackageErrorLike): Promise<void>;
|
|
63
|
+
//# sourceMappingURL=error-events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-events.d.ts","sourceRoot":"","sources":["../../../src/api/errors/error-events.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,OAAO,KAAK,EACV,kBAAkB,EAElB,mBAAmB,EAGnB,YAAY,EACZ,mBAAmB,EAEpB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,cAAc,EAAiC,MAAM,kBAAkB,CAAC;AAsGjF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,MAAM,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,EACpE,OAAO,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,EAC7C,OAAO,GAAE,mBAAwB,GAChC,MAAM,IAAI,CA0BZ;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,kBAAkB,EAC5B,KAAK,GAAE,MAAM,OAAO,cAAyB,GAC5C,IAAI,CAEN;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,GAAE,MAAM,OAAO,cAAyB,GAC5C,kBAAkB,CAEpB;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,GAAE,mBAAwB,GAChC,IAAI,CAGN;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,UAAU,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC,EAC7E,OAAO,GAAE,IAAI,CAAC,mBAAmB,EAAE,OAAO,CAAM,GAC/C,IAAI,CAmBN;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,OAAO,cAAc,CAAC,CAAA;CAAO,GAC5D,IAAI,CAQN;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,MAAM,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,EACpE,OAAO,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,EAC7C,OAAO,GAAE,IAAI,CAAC,mBAAmB,EAAE,OAAO,CAAM,GAC/C,IAAI,CAaN;AAuID,wBAAsB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAQ9E"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Error handling module for @plyaz/api package
|
|
3
|
+
*
|
|
4
|
+
* This module provides a comprehensive error handling system that:
|
|
5
|
+
* - Enhances fetchff's ResponseError without replacing it
|
|
6
|
+
* - Provides typed error categories and codes
|
|
7
|
+
* - Supports global and instance-level error handlers
|
|
8
|
+
* - Integrates with existing event systems
|
|
9
|
+
*
|
|
10
|
+
* @module errors
|
|
11
|
+
*/
|
|
12
|
+
export { ApiPackageError } from './ApiPackageError';
|
|
13
|
+
export { ERROR_CATEGORY } from '@plyaz/types';
|
|
14
|
+
export { ERROR_CATEGORY as ErrorCategory } from '@plyaz/types';
|
|
15
|
+
export { API_ERROR_CODES, PACKAGE_STATUS_CODES, ERROR_DEFINITIONS, OPERATIONS, ERROR_FIELDS, STORAGE_TYPES, } from '@plyaz/types/api';
|
|
16
|
+
export { getErrorDefinition, getErrorCodeByStatus, getErrorCategory } from './definitions';
|
|
17
|
+
export { registerErrorHandler, registerErrorHandlers, unregisterErrorHandlers, clearErrorHandlers, onceErrorHandler, setErrorHandlers, getErrorHandlers, emitErrorEvent, } from './error-events';
|
|
18
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/errors/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,EAAE,cAAc,IAAI,aAAa,EAAE,MAAM,cAAc,CAAC;AAG/D,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,iBAAiB,EACjB,UAAU,EACV,YAAY,EACZ,aAAa,GACd,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAG3F,OAAO,EAEL,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAGhB,cAAc,GACf,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Typed constants for error handling
|
|
3
|
+
*/
|
|
4
|
+
export declare const OPERATIONS: {
|
|
5
|
+
readonly STORAGE: "storage";
|
|
6
|
+
readonly RETRIEVAL: "retrieval";
|
|
7
|
+
readonly INVALIDATION: "invalidation";
|
|
8
|
+
readonly ENRICHMENT: "enrichment";
|
|
9
|
+
readonly VALIDATION: "validation";
|
|
10
|
+
readonly PRESET_LOOKUP: "preset-lookup";
|
|
11
|
+
readonly INITIALIZATION: "initialization";
|
|
12
|
+
readonly CONFIGURATION: "configuration";
|
|
13
|
+
readonly REQUEST: "request";
|
|
14
|
+
readonly RESPONSE: "response";
|
|
15
|
+
readonly RETRY: "retry";
|
|
16
|
+
readonly REVALIDATION: "revalidation";
|
|
17
|
+
readonly STRATEGY_EXECUTION: "strategy-execution";
|
|
18
|
+
readonly POLLING: "polling";
|
|
19
|
+
readonly SUBSCRIPTION: "subscription";
|
|
20
|
+
readonly PUBLICATION: "publication";
|
|
21
|
+
readonly DEBUG: "debug";
|
|
22
|
+
readonly DEBUG_TRACKING: "debug-tracking";
|
|
23
|
+
readonly ENDPOINT_BUILD: "endpoint-build";
|
|
24
|
+
readonly TRACKING: "tracking";
|
|
25
|
+
readonly NETWORK_CHECK: "network-check";
|
|
26
|
+
readonly EVENT_HANDLING: "event-handling";
|
|
27
|
+
readonly SERIALIZATION: "serialization";
|
|
28
|
+
readonly DESERIALIZATION: "deserialization";
|
|
29
|
+
readonly REGIONAL_DETECTION: "regional-detection";
|
|
30
|
+
readonly MONITORING: "monitoring";
|
|
31
|
+
readonly CONTEXT_SETUP: "context-setup";
|
|
32
|
+
readonly FALLBACK: "fallback";
|
|
33
|
+
};
|
|
34
|
+
export type Operation = (typeof OPERATIONS)[keyof typeof OPERATIONS];
|
|
35
|
+
export declare const ERROR_FIELDS: {
|
|
36
|
+
readonly STORAGE: "storage";
|
|
37
|
+
readonly CACHE: "cache";
|
|
38
|
+
readonly HEADERS: "headers";
|
|
39
|
+
readonly PRESET_NAME: "presetName";
|
|
40
|
+
readonly PRESET_ID: "presetId";
|
|
41
|
+
readonly CONFIG: "config";
|
|
42
|
+
readonly URL: "url";
|
|
43
|
+
readonly METHOD: "method";
|
|
44
|
+
readonly STRATEGY: "strategy";
|
|
45
|
+
readonly RETRY_COUNT: "retryCount";
|
|
46
|
+
readonly MAX_RETRIES: "maxRetries";
|
|
47
|
+
readonly POLLING_INTERVAL: "pollingInterval";
|
|
48
|
+
readonly TOPIC: "topic";
|
|
49
|
+
readonly CHANNEL: "channel";
|
|
50
|
+
readonly ENDPOINT: "endpoint";
|
|
51
|
+
readonly CLIENT: "client";
|
|
52
|
+
readonly NETWORK_TYPE: "networkType";
|
|
53
|
+
readonly TIME_INTERVAL: "timeInterval";
|
|
54
|
+
};
|
|
55
|
+
export type ErrorField = (typeof ERROR_FIELDS)[keyof typeof ERROR_FIELDS];
|
|
56
|
+
export declare const STORAGE_TYPES: {
|
|
57
|
+
readonly PRIMARY: "primary";
|
|
58
|
+
readonly FALLBACK: "fallback";
|
|
59
|
+
readonly MEMORY: "memory";
|
|
60
|
+
readonly SESSION: "session";
|
|
61
|
+
readonly LOCAL: "local";
|
|
62
|
+
};
|
|
63
|
+
export type StorageType = (typeof STORAGE_TYPES)[keyof typeof STORAGE_TYPES];
|
|
64
|
+
//# sourceMappingURL=types-constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types-constants.d.ts","sourceRoot":"","sources":["../../../src/api/errors/types-constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6Bb,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC;AAGrE,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;CAmBf,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC;AAG1E,eAAO,MAAM,aAAa;;;;;;CAMhB,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC"}
|
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Event Manager
|
|
3
|
+
* Centralized manager for all event factories and event coordination
|
|
4
|
+
*/
|
|
5
|
+
import { BaseEventFactory } from './factories';
|
|
6
|
+
import type { ConfigEventFactory, PerformanceEventFactory, NetworkEventFactory, HeaderEventFactory, ErrorEventFactory, DebugEventFactory, ClientEventFactory, CacheEventFactory } from './factories';
|
|
7
|
+
import { type EventScopeWithTemporary } from '@plyaz/types/api';
|
|
8
|
+
import type { EventEmitter } from '../pubsub';
|
|
9
|
+
/**
|
|
10
|
+
* Centralized Event Manager
|
|
11
|
+
* Provides unified access to all event factories and the shared emitter
|
|
12
|
+
*
|
|
13
|
+
* ## Event Scope System
|
|
14
|
+
*
|
|
15
|
+
* Events are emitted with scope awareness to control which handlers receive them:
|
|
16
|
+
*
|
|
17
|
+
* ### Default Behavior
|
|
18
|
+
* - **ALL scopes are active by default**: ['global', 'config', 'client', 'request']
|
|
19
|
+
* - Events are emitted to handlers at ALL scope levels unless restricted
|
|
20
|
+
* - Factories emit events without scope awareness; EventManager adds scopes based on context
|
|
21
|
+
*
|
|
22
|
+
* ### Scope Contexts
|
|
23
|
+
* 1. **Global Config**: `setGlobalConfig()` sets scopes to ['global', 'config']
|
|
24
|
+
* 2. **Client Instance**: Creates with ALL scopes by default (merged behavior)
|
|
25
|
+
* 3. **Temporary Override**: Sets scopes to ['request'] only (isolated)
|
|
26
|
+
* 4. **Custom**: Can explicitly set any combination of scopes
|
|
27
|
+
*
|
|
28
|
+
* ### How It Works
|
|
29
|
+
* ```typescript
|
|
30
|
+
* // Factory emits simple event (no scope):
|
|
31
|
+
* headerFactory.emit({ type: 'headers:changed', data: {...} })
|
|
32
|
+
*
|
|
33
|
+
* // EventManager adds scopes based on current context:
|
|
34
|
+
* // If scopes = ['global', 'client'], emits to:
|
|
35
|
+
* // - 'global:headers:changed'
|
|
36
|
+
* // - 'global:headers:*'
|
|
37
|
+
* // - 'client:headers:changed'
|
|
38
|
+
* // - 'client:headers:*'
|
|
39
|
+
* // - 'headers:changed' (backwards compat)
|
|
40
|
+
* // - 'headers:*' (backwards compat)
|
|
41
|
+
* ```
|
|
42
|
+
*
|
|
43
|
+
* ### Priority Order (lowest to highest)
|
|
44
|
+
* 1. GLOBAL - App-wide handlers
|
|
45
|
+
* 2. CONFIG - Configuration-level handlers
|
|
46
|
+
* 3. CLIENT - Instance-specific handlers
|
|
47
|
+
* 4. REQUEST/TEMPORARY - Request-level handlers
|
|
48
|
+
*/
|
|
49
|
+
export declare class EventManager extends BaseEventFactory<'eventManager'> {
|
|
50
|
+
private static instance;
|
|
51
|
+
private readonly headerFactory;
|
|
52
|
+
private readonly networkFactory;
|
|
53
|
+
private readonly errorFactory;
|
|
54
|
+
private readonly debugFactory;
|
|
55
|
+
private readonly configFactory;
|
|
56
|
+
private readonly performanceFactory;
|
|
57
|
+
private readonly cacheFactory;
|
|
58
|
+
private readonly clientFactory;
|
|
59
|
+
private eventScopes;
|
|
60
|
+
private currentEventScopes;
|
|
61
|
+
private constructor();
|
|
62
|
+
/**
|
|
63
|
+
* Track EventManager operations for debugging and analysis
|
|
64
|
+
* Uses the operation queue to avoid circular dependency with UnifiedDebugger
|
|
65
|
+
*/
|
|
66
|
+
private trackEventManagerOperation;
|
|
67
|
+
/**
|
|
68
|
+
* Wrap a factory to make it use EventManager's scope configuration
|
|
69
|
+
* This ensures that when factories emit events through EventManager,
|
|
70
|
+
* they respect the configured scopes (e.g., excluding global when needed)
|
|
71
|
+
*/
|
|
72
|
+
private createScopeAwareFactory;
|
|
73
|
+
/**
|
|
74
|
+
* Set up internal event handlers for cross-cutting concerns
|
|
75
|
+
*/
|
|
76
|
+
private setupInternalHandlers;
|
|
77
|
+
/**
|
|
78
|
+
* Set up header event handlers
|
|
79
|
+
*/
|
|
80
|
+
private setupHeaderHandlers;
|
|
81
|
+
/**
|
|
82
|
+
* Set up network event handlers
|
|
83
|
+
*/
|
|
84
|
+
private setupNetworkHandlers;
|
|
85
|
+
/**
|
|
86
|
+
* Set up error event handlers
|
|
87
|
+
*/
|
|
88
|
+
private setupErrorHandlers;
|
|
89
|
+
/**
|
|
90
|
+
* Set up debug event handlers
|
|
91
|
+
*/
|
|
92
|
+
private setupDebugHandlers;
|
|
93
|
+
/**
|
|
94
|
+
* Set up performance event handlers
|
|
95
|
+
*/
|
|
96
|
+
private setupPerformanceHandlers;
|
|
97
|
+
/**
|
|
98
|
+
* Set up config event handlers
|
|
99
|
+
*/
|
|
100
|
+
private setupConfigHandlers;
|
|
101
|
+
/**
|
|
102
|
+
* Get singleton instance
|
|
103
|
+
*/
|
|
104
|
+
static getInstance(): EventManager;
|
|
105
|
+
/**
|
|
106
|
+
* Set event scopes for this manager instance
|
|
107
|
+
* Used by clients to configure which scopes receive events
|
|
108
|
+
*/
|
|
109
|
+
setEventScopes(scopes: EventScopeWithTemporary[]): void;
|
|
110
|
+
/**
|
|
111
|
+
* Get current event scopes
|
|
112
|
+
*/
|
|
113
|
+
getEventScopes(): EventScopeWithTemporary[];
|
|
114
|
+
/**
|
|
115
|
+
* Override emitAcrossScopes to use EventManager's configured scopes
|
|
116
|
+
* This allows EventManager to control which scopes are active
|
|
117
|
+
*
|
|
118
|
+
* @param eventType - The type of event (e.g., 'error', 'debug', 'headers', 'network')
|
|
119
|
+
* @param eventName - The specific event name (e.g., 'onNetworkError', 'conflict', 'changed')
|
|
120
|
+
* @param data - The event data
|
|
121
|
+
* @param scopes - Optional scopes to emit to (defaults to configured scopes)
|
|
122
|
+
*/
|
|
123
|
+
emitAcrossScopes(eventType: string, eventName: string, data: unknown, scopes?: EventScopeWithTemporary[]): void;
|
|
124
|
+
/**
|
|
125
|
+
* Determine priority based on event type and name
|
|
126
|
+
*/
|
|
127
|
+
private determinePriority;
|
|
128
|
+
/**
|
|
129
|
+
* Get the shared event emitter
|
|
130
|
+
*/
|
|
131
|
+
getEmitter(): EventEmitter;
|
|
132
|
+
/**
|
|
133
|
+
* Get header event factory
|
|
134
|
+
*/
|
|
135
|
+
get headers(): HeaderEventFactory;
|
|
136
|
+
/**
|
|
137
|
+
* Get network event factory
|
|
138
|
+
*/
|
|
139
|
+
get network(): NetworkEventFactory;
|
|
140
|
+
/**
|
|
141
|
+
* Get error event factory
|
|
142
|
+
*/
|
|
143
|
+
get errors(): ErrorEventFactory;
|
|
144
|
+
/**
|
|
145
|
+
* Get debug event factory
|
|
146
|
+
*/
|
|
147
|
+
get debug(): DebugEventFactory;
|
|
148
|
+
/**
|
|
149
|
+
* Get config event factory
|
|
150
|
+
*/
|
|
151
|
+
get config(): ConfigEventFactory;
|
|
152
|
+
/**
|
|
153
|
+
* Get performance event factory
|
|
154
|
+
*/
|
|
155
|
+
get performance(): PerformanceEventFactory;
|
|
156
|
+
/**
|
|
157
|
+
* Get cache event factory
|
|
158
|
+
*/
|
|
159
|
+
get cache(): CacheEventFactory;
|
|
160
|
+
/**
|
|
161
|
+
* Get client event factory
|
|
162
|
+
*/
|
|
163
|
+
get client(): ClientEventFactory;
|
|
164
|
+
/**
|
|
165
|
+
* Override on to support any event string (not just namespace-prefixed)
|
|
166
|
+
* @param event - Any event string
|
|
167
|
+
* @param handler - Event handler
|
|
168
|
+
*/
|
|
169
|
+
on<T = unknown>(event: string, handler: (data: T) => void): () => void;
|
|
170
|
+
/**
|
|
171
|
+
* Override once to support any event string (not just namespace-prefixed)
|
|
172
|
+
* @param event - Any event string
|
|
173
|
+
* @param handler - Event handler
|
|
174
|
+
*/
|
|
175
|
+
once<T = unknown>(event: string, handler: (data: T) => void): () => void;
|
|
176
|
+
/**
|
|
177
|
+
* Get the shared event emitter instance
|
|
178
|
+
* @returns The underlying EventEmitter
|
|
179
|
+
*/
|
|
180
|
+
getSharedEmitter(): EventEmitter;
|
|
181
|
+
/**
|
|
182
|
+
* Get event statistics
|
|
183
|
+
* @returns Object with totalEvents and totalListeners
|
|
184
|
+
*/
|
|
185
|
+
getEventStats(): {
|
|
186
|
+
totalEvents: number;
|
|
187
|
+
totalListeners: number;
|
|
188
|
+
};
|
|
189
|
+
/**
|
|
190
|
+
* Get active scopes
|
|
191
|
+
* @returns Array of active event scopes
|
|
192
|
+
*/
|
|
193
|
+
getActiveScopes(): EventScopeWithTemporary[];
|
|
194
|
+
/**
|
|
195
|
+
* Reset the event manager (mainly for testing)
|
|
196
|
+
*/
|
|
197
|
+
static reset(): void;
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Export singleton getter
|
|
201
|
+
*/
|
|
202
|
+
export declare function getEventManager(): EventManager;
|
|
203
|
+
/**
|
|
204
|
+
* Convenience exports for direct factory access
|
|
205
|
+
*/
|
|
206
|
+
export declare const eventManager: {
|
|
207
|
+
readonly headers: HeaderEventFactory;
|
|
208
|
+
readonly network: NetworkEventFactory;
|
|
209
|
+
readonly errors: ErrorEventFactory;
|
|
210
|
+
readonly debug: DebugEventFactory;
|
|
211
|
+
readonly config: ConfigEventFactory;
|
|
212
|
+
readonly performance: PerformanceEventFactory;
|
|
213
|
+
readonly cache: CacheEventFactory;
|
|
214
|
+
readonly client: ClientEventFactory;
|
|
215
|
+
readonly emitter: ReturnType<EventManager["getEmitter"]>;
|
|
216
|
+
on: <T = unknown>(event: string, handler: (data: T) => void) => (() => void);
|
|
217
|
+
once: <T = unknown>(event: string, handler: (data: T) => void) => (() => void);
|
|
218
|
+
emit: <T = unknown>(event: string, data?: T) => void;
|
|
219
|
+
off: (event: string, handler?: Function) => void;
|
|
220
|
+
removeAllListeners: (event?: string) => void;
|
|
221
|
+
listeners: (event: string) => Function[];
|
|
222
|
+
listenerCount: (event: string) => number;
|
|
223
|
+
emitAcrossScopes: (eventType: string, eventName: string, data: unknown, scopes?: EventScopeWithTemporary[]) => void;
|
|
224
|
+
setEventScopes: (scopes: EventScopeWithTemporary[]) => void;
|
|
225
|
+
getEventScopes: () => EventScopeWithTemporary[];
|
|
226
|
+
getSharedEmitter: () => ReturnType<EventManager["getSharedEmitter"]>;
|
|
227
|
+
getEventStats: () => ReturnType<EventManager["getEventStats"]>;
|
|
228
|
+
getActiveScopes: () => EventScopeWithTemporary[];
|
|
229
|
+
};
|
|
230
|
+
//# sourceMappingURL=EventManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EventManager.d.ts","sourceRoot":"","sources":["../../../src/api/events/EventManager.ts"],"names":[],"mappings":"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"}
|