@juspay/neurolink 9.32.0 → 9.32.1
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/CHANGELOG.md +6 -0
- package/dist/auth/anthropicOAuth.js +1 -1
- package/dist/cli/commands/proxy.js +18 -5
- package/dist/client/aiSdkAdapter.js +1 -1
- package/dist/client/index.js +137 -501
- package/dist/core/factory.js +0 -1
- package/dist/core/redisConversationMemoryManager.js +1 -1
- package/dist/features/ppt/slideGenerator.js +0 -1
- package/dist/features/ppt/utils.js +0 -1
- package/dist/lib/server/routes/claudeProxyRoutes.js +45 -9
- package/dist/mcp/elicitationProtocol.js +1 -1
- package/dist/mcp/servers/agent/directToolsServer.js +0 -1
- package/dist/providers/azureOpenai.js +1 -1
- package/dist/providers/huggingFace.js +0 -1
- package/dist/providers/openaiCompatible.js +0 -1
- package/dist/sdk/toolRegistration.js +0 -1
- package/dist/server/openapi/generator.js +1 -1
- package/dist/server/routes/claudeProxyRoutes.js +45 -9
- package/dist/types/configTypes.js +0 -5
- package/dist/types/modelTypes.js +0 -1
- package/dist/types/tools.js +0 -1
- package/dist/types/typeAliases.js +0 -1
- package/dist/types/utilities.js +1 -1
- package/dist/types/workflowTypes.js +0 -1
- package/dist/utils/providerRetry.js +0 -1
- package/dist/utils/providerUtils.js +0 -1
- package/package.json +2 -2
- package/dist/client/adapters/providerImageAdapter.js +0 -588
- package/dist/client/adapters/tts/googleTTSHandler.js +0 -344
- package/dist/client/adapters/video/directorPipeline.js +0 -516
- package/dist/client/adapters/video/ffmpegAdapter.js +0 -206
- package/dist/client/adapters/video/frameExtractor.js +0 -143
- package/dist/client/adapters/video/vertexVideoHandler.js +0 -763
- package/dist/client/adapters/video/videoAnalyzer.js +0 -238
- package/dist/client/adapters/video/videoMerger.js +0 -171
- package/dist/client/agent/directTools.js +0 -840
- package/dist/client/auth/AuthProviderFactory.js +0 -111
- package/dist/client/auth/AuthProviderRegistry.js +0 -190
- package/dist/client/auth/RequestContext.js +0 -78
- package/dist/client/auth/accountPool.js +0 -178
- package/dist/client/auth/anthropicOAuth.js +0 -974
- package/dist/client/auth/authContext.js +0 -314
- package/dist/client/auth/errors.js +0 -39
- package/dist/client/auth/index.js +0 -61
- package/dist/client/auth/middleware/AuthMiddleware.js +0 -519
- package/dist/client/auth/middleware/rateLimitByUser.js +0 -554
- package/dist/client/auth/providers/BaseAuthProvider.js +0 -723
- package/dist/client/auth/providers/CognitoProvider.js +0 -304
- package/dist/client/auth/providers/KeycloakProvider.js +0 -393
- package/dist/client/auth/providers/auth0.js +0 -274
- package/dist/client/auth/providers/betterAuth.js +0 -182
- package/dist/client/auth/providers/clerk.js +0 -317
- package/dist/client/auth/providers/custom.js +0 -112
- package/dist/client/auth/providers/firebase.js +0 -226
- package/dist/client/auth/providers/jwt.js +0 -212
- package/dist/client/auth/providers/oauth2.js +0 -303
- package/dist/client/auth/providers/supabase.js +0 -259
- package/dist/client/auth/providers/workos.js +0 -284
- package/dist/client/auth/serverBridge.js +0 -25
- package/dist/client/auth/sessionManager.js +0 -437
- package/dist/client/auth/tokenStore.js +0 -799
- package/dist/client/client/aiSdkAdapter.js +0 -487
- package/dist/client/client/auth.js +0 -473
- package/dist/client/client/errors.js +0 -552
- package/dist/client/client/httpClient.js +0 -837
- package/dist/client/client/index.js +0 -172
- package/dist/client/client/interceptors.js +0 -601
- package/dist/client/client/sseClient.js +0 -545
- package/dist/client/client/streamingClient.js +0 -917
- package/dist/client/client/wsClient.js +0 -369
- package/dist/client/config/configManager.js +0 -303
- package/dist/client/config/conversationMemory.js +0 -86
- package/dist/client/config/taskClassificationConfig.js +0 -148
- package/dist/client/constants/contextWindows.js +0 -295
- package/dist/client/constants/enums.js +0 -853
- package/dist/client/constants/index.js +0 -207
- package/dist/client/constants/performance.js +0 -389
- package/dist/client/constants/retry.js +0 -266
- package/dist/client/constants/timeouts.js +0 -182
- package/dist/client/constants/tokens.js +0 -380
- package/dist/client/constants/videoErrors.js +0 -46
- package/dist/client/context/budgetChecker.js +0 -98
- package/dist/client/context/contextCompactor.js +0 -205
- package/dist/client/context/emergencyTruncation.js +0 -88
- package/dist/client/context/errorDetection.js +0 -171
- package/dist/client/context/errors.js +0 -21
- package/dist/client/context/fileTokenBudget.js +0 -127
- package/dist/client/context/prompts/summarizationPrompt.js +0 -117
- package/dist/client/context/stages/fileReadDeduplicator.js +0 -66
- package/dist/client/context/stages/slidingWindowTruncator.js +0 -190
- package/dist/client/context/stages/structuredSummarizer.js +0 -99
- package/dist/client/context/stages/toolOutputPruner.js +0 -52
- package/dist/client/context/summarizationEngine.js +0 -136
- package/dist/client/context/toolOutputLimits.js +0 -78
- package/dist/client/context/toolPairRepair.js +0 -66
- package/dist/client/core/analytics.js +0 -88
- package/dist/client/core/baseProvider.js +0 -1385
- package/dist/client/core/constants.js +0 -140
- package/dist/client/core/conversationMemoryFactory.js +0 -141
- package/dist/client/core/conversationMemoryInitializer.js +0 -128
- package/dist/client/core/conversationMemoryManager.js +0 -344
- package/dist/client/core/dynamicModels.js +0 -358
- package/dist/client/core/evaluation.js +0 -309
- package/dist/client/core/evaluationProviders.js +0 -248
- package/dist/client/core/factory.js +0 -412
- package/dist/client/core/infrastructure/baseError.js +0 -22
- package/dist/client/core/infrastructure/baseFactory.js +0 -54
- package/dist/client/core/infrastructure/baseRegistry.js +0 -53
- package/dist/client/core/infrastructure/index.js +0 -5
- package/dist/client/core/infrastructure/retry.js +0 -20
- package/dist/client/core/infrastructure/typedEventEmitter.js +0 -23
- package/dist/client/core/modelConfiguration.js +0 -851
- package/dist/client/core/modules/GenerationHandler.js +0 -588
- package/dist/client/core/modules/MessageBuilder.js +0 -273
- package/dist/client/core/modules/StreamHandler.js +0 -185
- package/dist/client/core/modules/TelemetryHandler.js +0 -203
- package/dist/client/core/modules/ToolsManager.js +0 -499
- package/dist/client/core/modules/Utilities.js +0 -331
- package/dist/client/core/redisConversationMemoryManager.js +0 -1435
- package/dist/client/core/streamAnalytics.js +0 -131
- package/dist/client/evaluation/contextBuilder.js +0 -134
- package/dist/client/evaluation/index.js +0 -61
- package/dist/client/evaluation/prompts.js +0 -73
- package/dist/client/evaluation/ragasEvaluator.js +0 -110
- package/dist/client/evaluation/retryManager.js +0 -78
- package/dist/client/evaluation/scoring.js +0 -61
- package/dist/client/factories/providerFactory.js +0 -166
- package/dist/client/factories/providerRegistry.js +0 -166
- package/dist/client/features/ppt/constants.js +0 -896
- package/dist/client/features/ppt/contentPlanner.js +0 -529
- package/dist/client/features/ppt/presentationOrchestrator.js +0 -236
- package/dist/client/features/ppt/slideGenerator.js +0 -532
- package/dist/client/features/ppt/slideRenderers.js +0 -2383
- package/dist/client/features/ppt/slideTypeInference.js +0 -405
- package/dist/client/features/ppt/types.js +0 -13
- package/dist/client/features/ppt/utils.js +0 -443
- package/dist/client/files/fileReferenceRegistry.js +0 -1543
- package/dist/client/files/fileTools.js +0 -450
- package/dist/client/files/streamingReader.js +0 -321
- package/dist/client/files/types.js +0 -23
- package/dist/client/hitl/hitlErrors.js +0 -54
- package/dist/client/hitl/hitlManager.js +0 -460
- package/dist/client/mcp/agentExposure.js +0 -356
- package/dist/client/mcp/auth/index.js +0 -11
- package/dist/client/mcp/auth/oauthClientProvider.js +0 -325
- package/dist/client/mcp/auth/tokenStorage.js +0 -134
- package/dist/client/mcp/batching/index.js +0 -10
- package/dist/client/mcp/batching/requestBatcher.js +0 -441
- package/dist/client/mcp/caching/index.js +0 -10
- package/dist/client/mcp/caching/toolCache.js +0 -433
- package/dist/client/mcp/elicitation/elicitationManager.js +0 -376
- package/dist/client/mcp/elicitation/index.js +0 -11
- package/dist/client/mcp/elicitation/types.js +0 -10
- package/dist/client/mcp/elicitationProtocol.js +0 -375
- package/dist/client/mcp/enhancedToolDiscovery.js +0 -481
- package/dist/client/mcp/externalServerManager.js +0 -1478
- package/dist/client/mcp/factory.js +0 -161
- package/dist/client/mcp/flexibleToolValidator.js +0 -161
- package/dist/client/mcp/httpRateLimiter.js +0 -391
- package/dist/client/mcp/httpRetryHandler.js +0 -178
- package/dist/client/mcp/index.js +0 -74
- package/dist/client/mcp/mcpCircuitBreaker.js +0 -427
- package/dist/client/mcp/mcpClientFactory.js +0 -708
- package/dist/client/mcp/mcpRegistryClient.js +0 -488
- package/dist/client/mcp/mcpServerBase.js +0 -373
- package/dist/client/mcp/multiServerManager.js +0 -579
- package/dist/client/mcp/registry.js +0 -158
- package/dist/client/mcp/routing/index.js +0 -10
- package/dist/client/mcp/routing/toolRouter.js +0 -416
- package/dist/client/mcp/serverCapabilities.js +0 -502
- package/dist/client/mcp/servers/agent/directToolsServer.js +0 -150
- package/dist/client/mcp/toolAnnotations.js +0 -239
- package/dist/client/mcp/toolConverter.js +0 -258
- package/dist/client/mcp/toolDiscoveryService.js +0 -798
- package/dist/client/mcp/toolIntegration.js +0 -334
- package/dist/client/mcp/toolRegistry.js +0 -729
- package/dist/client/memory/hippocampusInitializer.js +0 -19
- package/dist/client/memory/memoryRetrievalTools.js +0 -166
- package/dist/client/middleware/builtin/analytics.js +0 -132
- package/dist/client/middleware/builtin/autoEvaluation.js +0 -203
- package/dist/client/middleware/builtin/guardrails.js +0 -109
- package/dist/client/middleware/builtin/lifecycle.js +0 -168
- package/dist/client/middleware/factory.js +0 -327
- package/dist/client/middleware/registry.js +0 -295
- package/dist/client/middleware/utils/guardrailsUtils.js +0 -396
- package/dist/client/models/anthropicModels.js +0 -527
- package/dist/client/neurolink.js +0 -8233
- package/dist/client/observability/exporterRegistry.js +0 -413
- package/dist/client/observability/exporters/arizeExporter.js +0 -138
- package/dist/client/observability/exporters/baseExporter.js +0 -190
- package/dist/client/observability/exporters/braintrustExporter.js +0 -154
- package/dist/client/observability/exporters/datadogExporter.js +0 -196
- package/dist/client/observability/exporters/laminarExporter.js +0 -302
- package/dist/client/observability/exporters/langfuseExporter.js +0 -209
- package/dist/client/observability/exporters/langsmithExporter.js +0 -143
- package/dist/client/observability/exporters/otelExporter.js +0 -164
- package/dist/client/observability/exporters/posthogExporter.js +0 -287
- package/dist/client/observability/exporters/sentryExporter.js +0 -165
- package/dist/client/observability/index.js +0 -31
- package/dist/client/observability/metricsAggregator.js +0 -556
- package/dist/client/observability/otelBridge.js +0 -131
- package/dist/client/observability/retryPolicy.js +0 -383
- package/dist/client/observability/sampling/samplers.js +0 -216
- package/dist/client/observability/spanProcessor.js +0 -303
- package/dist/client/observability/tokenTracker.js +0 -413
- package/dist/client/observability/types/exporterTypes.js +0 -5
- package/dist/client/observability/types/index.js +0 -4
- package/dist/client/observability/types/spanTypes.js +0 -92
- package/dist/client/observability/utils/safeMetadata.js +0 -25
- package/dist/client/observability/utils/spanSerializer.js +0 -292
- package/dist/client/processors/archive/ArchiveProcessor.js +0 -1308
- package/dist/client/processors/base/BaseFileProcessor.js +0 -614
- package/dist/client/processors/base/types.js +0 -82
- package/dist/client/processors/config/fileTypes.js +0 -520
- package/dist/client/processors/config/index.js +0 -92
- package/dist/client/processors/config/languageMap.js +0 -410
- package/dist/client/processors/config/mimeTypes.js +0 -363
- package/dist/client/processors/config/sizeLimits.js +0 -258
- package/dist/client/processors/document/ExcelProcessor.js +0 -590
- package/dist/client/processors/document/OpenDocumentProcessor.js +0 -212
- package/dist/client/processors/document/PptxProcessor.js +0 -157
- package/dist/client/processors/document/RtfProcessor.js +0 -361
- package/dist/client/processors/document/WordProcessor.js +0 -353
- package/dist/client/processors/errors/FileErrorCode.js +0 -255
- package/dist/client/processors/errors/errorHelpers.js +0 -386
- package/dist/client/processors/errors/errorSerializer.js +0 -507
- package/dist/client/processors/errors/index.js +0 -49
- package/dist/client/processors/markup/SvgProcessor.js +0 -240
- package/dist/client/processors/media/AudioProcessor.js +0 -707
- package/dist/client/processors/media/VideoProcessor.js +0 -1045
- package/dist/client/providers/amazonBedrock.js +0 -1512
- package/dist/client/providers/amazonSagemaker.js +0 -162
- package/dist/client/providers/anthropic.js +0 -831
- package/dist/client/providers/azureOpenai.js +0 -143
- package/dist/client/providers/googleAiStudio.js +0 -1200
- package/dist/client/providers/googleNativeGemini3.js +0 -543
- package/dist/client/providers/googleVertex.js +0 -2936
- package/dist/client/providers/huggingFace.js +0 -315
- package/dist/client/providers/litellm.js +0 -488
- package/dist/client/providers/mistral.js +0 -157
- package/dist/client/providers/ollama.js +0 -1579
- package/dist/client/providers/openAI.js +0 -627
- package/dist/client/providers/openRouter.js +0 -543
- package/dist/client/providers/openaiCompatible.js +0 -290
- package/dist/client/providers/providerTypeUtils.js +0 -46
- package/dist/client/providers/sagemaker/adaptive-semaphore.js +0 -215
- package/dist/client/providers/sagemaker/client.js +0 -472
- package/dist/client/providers/sagemaker/config.js +0 -317
- package/dist/client/providers/sagemaker/detection.js +0 -606
- package/dist/client/providers/sagemaker/error-constants.js +0 -227
- package/dist/client/providers/sagemaker/errors.js +0 -299
- package/dist/client/providers/sagemaker/language-model.js +0 -775
- package/dist/client/providers/sagemaker/parsers.js +0 -634
- package/dist/client/providers/sagemaker/streaming.js +0 -331
- package/dist/client/providers/sagemaker/structured-parser.js +0 -625
- package/dist/client/proxy/accountQuota.js +0 -162
- package/dist/client/proxy/claudeFormat.js +0 -595
- package/dist/client/proxy/modelRouter.js +0 -29
- package/dist/client/proxy/oauthFetch.js +0 -367
- package/dist/client/proxy/proxyFetch.js +0 -586
- package/dist/client/proxy/requestLogger.js +0 -207
- package/dist/client/proxy/tokenRefresh.js +0 -124
- package/dist/client/proxy/usageStats.js +0 -74
- package/dist/client/proxy/utils/noProxyUtils.js +0 -149
- package/dist/client/rag/ChunkerFactory.js +0 -320
- package/dist/client/rag/ChunkerRegistry.js +0 -421
- package/dist/client/rag/chunkers/BaseChunker.js +0 -143
- package/dist/client/rag/chunkers/CharacterChunker.js +0 -28
- package/dist/client/rag/chunkers/HTMLChunker.js +0 -38
- package/dist/client/rag/chunkers/JSONChunker.js +0 -68
- package/dist/client/rag/chunkers/LaTeXChunker.js +0 -63
- package/dist/client/rag/chunkers/MarkdownChunker.js +0 -306
- package/dist/client/rag/chunkers/RecursiveChunker.js +0 -139
- package/dist/client/rag/chunkers/SemanticMarkdownChunker.js +0 -138
- package/dist/client/rag/chunkers/SentenceChunker.js +0 -66
- package/dist/client/rag/chunkers/TokenChunker.js +0 -61
- package/dist/client/rag/chunkers/index.js +0 -15
- package/dist/client/rag/chunking/characterChunker.js +0 -142
- package/dist/client/rag/chunking/chunkerRegistry.js +0 -194
- package/dist/client/rag/chunking/htmlChunker.js +0 -247
- package/dist/client/rag/chunking/index.js +0 -17
- package/dist/client/rag/chunking/jsonChunker.js +0 -281
- package/dist/client/rag/chunking/latexChunker.js +0 -251
- package/dist/client/rag/chunking/markdownChunker.js +0 -373
- package/dist/client/rag/chunking/recursiveChunker.js +0 -148
- package/dist/client/rag/chunking/semanticChunker.js +0 -306
- package/dist/client/rag/chunking/sentenceChunker.js +0 -230
- package/dist/client/rag/chunking/tokenChunker.js +0 -183
- package/dist/client/rag/document/MDocument.js +0 -392
- package/dist/client/rag/document/index.js +0 -5
- package/dist/client/rag/document/loaders.js +0 -500
- package/dist/client/rag/errors/RAGError.js +0 -274
- package/dist/client/rag/errors/index.js +0 -6
- package/dist/client/rag/graphRag/graphRAG.js +0 -401
- package/dist/client/rag/graphRag/index.js +0 -4
- package/dist/client/rag/index.js +0 -141
- package/dist/client/rag/metadata/MetadataExtractorFactory.js +0 -418
- package/dist/client/rag/metadata/MetadataExtractorRegistry.js +0 -362
- package/dist/client/rag/metadata/index.js +0 -9
- package/dist/client/rag/metadata/metadataExtractor.js +0 -280
- package/dist/client/rag/pipeline/RAGPipeline.js +0 -436
- package/dist/client/rag/pipeline/contextAssembly.js +0 -341
- package/dist/client/rag/pipeline/index.js +0 -5
- package/dist/client/rag/ragIntegration.js +0 -321
- package/dist/client/rag/reranker/RerankerFactory.js +0 -430
- package/dist/client/rag/reranker/RerankerRegistry.js +0 -402
- package/dist/client/rag/reranker/index.js +0 -9
- package/dist/client/rag/reranker/reranker.js +0 -277
- package/dist/client/rag/resilience/CircuitBreaker.js +0 -431
- package/dist/client/rag/resilience/RetryHandler.js +0 -304
- package/dist/client/rag/resilience/index.js +0 -7
- package/dist/client/rag/retrieval/hybridSearch.js +0 -335
- package/dist/client/rag/retrieval/index.js +0 -5
- package/dist/client/rag/retrieval/vectorQueryTool.js +0 -307
- package/dist/client/rag/types.js +0 -8
- package/dist/client/sdk/toolRegistration.js +0 -377
- package/dist/client/server/abstract/baseServerAdapter.js +0 -575
- package/dist/client/server/adapters/expressAdapter.js +0 -486
- package/dist/client/server/adapters/fastifyAdapter.js +0 -472
- package/dist/client/server/adapters/honoAdapter.js +0 -632
- package/dist/client/server/adapters/koaAdapter.js +0 -510
- package/dist/client/server/errors.js +0 -486
- package/dist/client/server/factory/serverAdapterFactory.js +0 -160
- package/dist/client/server/index.js +0 -108
- package/dist/client/server/middleware/abortSignal.js +0 -111
- package/dist/client/server/middleware/auth.js +0 -388
- package/dist/client/server/middleware/cache.js +0 -359
- package/dist/client/server/middleware/common.js +0 -281
- package/dist/client/server/middleware/deprecation.js +0 -190
- package/dist/client/server/middleware/mcpBodyAttachment.js +0 -63
- package/dist/client/server/middleware/rateLimit.js +0 -227
- package/dist/client/server/middleware/validation.js +0 -388
- package/dist/client/server/openapi/generator.js +0 -398
- package/dist/client/server/openapi/index.js +0 -36
- package/dist/client/server/openapi/schemas.js +0 -695
- package/dist/client/server/openapi/templates.js +0 -374
- package/dist/client/server/routes/agentRoutes.js +0 -189
- package/dist/client/server/routes/claudeProxyRoutes.js +0 -1600
- package/dist/client/server/routes/healthRoutes.js +0 -187
- package/dist/client/server/routes/index.js +0 -57
- package/dist/client/server/routes/mcpRoutes.js +0 -342
- package/dist/client/server/routes/memoryRoutes.js +0 -350
- package/dist/client/server/routes/openApiRoutes.js +0 -126
- package/dist/client/server/routes/toolRoutes.js +0 -199
- package/dist/client/server/streaming/dataStream.js +0 -486
- package/dist/client/server/streaming/index.js +0 -11
- package/dist/client/server/types.js +0 -67
- package/dist/client/server/utils/redaction.js +0 -334
- package/dist/client/server/utils/validation.js +0 -243
- package/dist/client/server/websocket/WebSocketHandler.js +0 -383
- package/dist/client/server/websocket/index.js +0 -4
- package/dist/client/services/server/ai/observability/instrumentation.js +0 -808
- package/dist/client/telemetry/attributes.js +0 -100
- package/dist/client/telemetry/index.js +0 -26
- package/dist/client/telemetry/telemetryService.js +0 -308
- package/dist/client/telemetry/tracers.js +0 -17
- package/dist/client/telemetry/withSpan.js +0 -34
- package/dist/client/types/actionTypes.js +0 -6
- package/dist/client/types/analytics.js +0 -5
- package/dist/client/types/authTypes.js +0 -9
- package/dist/client/types/circuitBreakerErrors.js +0 -34
- package/dist/client/types/cli.js +0 -21
- package/dist/client/types/clientTypes.js +0 -10
- package/dist/client/types/common.js +0 -51
- package/dist/client/types/configTypes.js +0 -49
- package/dist/client/types/content.js +0 -19
- package/dist/client/types/contextTypes.js +0 -400
- package/dist/client/types/conversation.js +0 -47
- package/dist/client/types/conversationMemoryInterface.js +0 -6
- package/dist/client/types/domainTypes.js +0 -5
- package/dist/client/types/errors.js +0 -167
- package/dist/client/types/evaluation.js +0 -5
- package/dist/client/types/evaluationProviders.js +0 -5
- package/dist/client/types/evaluationTypes.js +0 -1
- package/dist/client/types/externalMcp.js +0 -6
- package/dist/client/types/fileReferenceTypes.js +0 -8
- package/dist/client/types/fileTypes.js +0 -4
- package/dist/client/types/generateTypes.js +0 -1
- package/dist/client/types/guardrails.js +0 -1
- package/dist/client/types/hitlTypes.js +0 -8
- package/dist/client/types/index.js +0 -57
- package/dist/client/types/mcpTypes.js +0 -5
- package/dist/client/types/middlewareTypes.js +0 -1
- package/dist/client/types/modelTypes.js +0 -30
- package/dist/client/types/multimodal.js +0 -135
- package/dist/client/types/observability.js +0 -6
- package/dist/client/types/pptTypes.js +0 -82
- package/dist/client/types/providers.js +0 -111
- package/dist/client/types/proxyTypes.js +0 -16
- package/dist/client/types/ragTypes.js +0 -7
- package/dist/client/types/sdkTypes.js +0 -8
- package/dist/client/types/serviceTypes.js +0 -5
- package/dist/client/types/streamTypes.js +0 -1
- package/dist/client/types/subscriptionTypes.js +0 -9
- package/dist/client/types/taskClassificationTypes.js +0 -5
- package/dist/client/types/tools.js +0 -24
- package/dist/client/types/ttsTypes.js +0 -57
- package/dist/client/types/typeAliases.js +0 -48
- package/dist/client/types/utilities.js +0 -4
- package/dist/client/types/workflowTypes.js +0 -30
- package/dist/client/utils/async/withTimeout.js +0 -98
- package/dist/client/utils/asyncMutex.js +0 -60
- package/dist/client/utils/conversationMemory.js +0 -431
- package/dist/client/utils/csvProcessor.js +0 -846
- package/dist/client/utils/errorHandling.js +0 -936
- package/dist/client/utils/evaluationUtils.js +0 -131
- package/dist/client/utils/factoryProcessing.js +0 -589
- package/dist/client/utils/fileDetector.js +0 -2161
- package/dist/client/utils/imageCache.js +0 -376
- package/dist/client/utils/imageProcessor.js +0 -704
- package/dist/client/utils/logger.js +0 -491
- package/dist/client/utils/mcpDefaults.js +0 -134
- package/dist/client/utils/messageBuilder.js +0 -1653
- package/dist/client/utils/modelAliasResolver.js +0 -54
- package/dist/client/utils/modelDetection.js +0 -80
- package/dist/client/utils/modelRouter.js +0 -292
- package/dist/client/utils/multimodalOptionsBuilder.js +0 -65
- package/dist/client/utils/observabilityHelpers.js +0 -47
- package/dist/client/utils/parameterValidation.js +0 -966
- package/dist/client/utils/pdfProcessor.js +0 -410
- package/dist/client/utils/performance.js +0 -222
- package/dist/client/utils/pricing.js +0 -340
- package/dist/client/utils/promptRedaction.js +0 -62
- package/dist/client/utils/providerConfig.js +0 -1009
- package/dist/client/utils/providerHealth.js +0 -1237
- package/dist/client/utils/providerRetry.js +0 -112
- package/dist/client/utils/providerUtils.js +0 -434
- package/dist/client/utils/rateLimiter.js +0 -200
- package/dist/client/utils/redis.js +0 -368
- package/dist/client/utils/retryHandler.js +0 -269
- package/dist/client/utils/retryability.js +0 -22
- package/dist/client/utils/sanitizers/svg.js +0 -481
- package/dist/client/utils/schemaConversion.js +0 -255
- package/dist/client/utils/taskClassificationUtils.js +0 -149
- package/dist/client/utils/taskClassifier.js +0 -94
- package/dist/client/utils/thinkingConfig.js +0 -104
- package/dist/client/utils/timeout.js +0 -359
- package/dist/client/utils/tokenEstimation.js +0 -142
- package/dist/client/utils/tokenLimits.js +0 -125
- package/dist/client/utils/tokenUtils.js +0 -239
- package/dist/client/utils/toolUtils.js +0 -75
- package/dist/client/utils/transformationUtils.js +0 -554
- package/dist/client/utils/ttsProcessor.js +0 -286
- package/dist/client/utils/typeUtils.js +0 -97
- package/dist/client/utils/videoAnalysisProcessor.js +0 -67
- package/dist/client/workflow/config.js +0 -398
- package/dist/client/workflow/core/ensembleExecutor.js +0 -407
- package/dist/client/workflow/core/judgeScorer.js +0 -544
- package/dist/client/workflow/core/responseConditioner.js +0 -225
- package/dist/client/workflow/core/types/conditionerTypes.js +0 -7
- package/dist/client/workflow/core/types/ensembleTypes.js +0 -7
- package/dist/client/workflow/core/types/index.js +0 -7
- package/dist/client/workflow/core/types/judgeTypes.js +0 -7
- package/dist/client/workflow/core/types/layerTypes.js +0 -7
- package/dist/client/workflow/core/types/registryTypes.js +0 -7
- package/dist/client/workflow/core/workflowRegistry.js +0 -304
- package/dist/client/workflow/core/workflowRunner.js +0 -586
- package/dist/client/workflow/index.js +0 -50
- package/dist/client/workflow/types.js +0 -9
- package/dist/client/workflow/utils/types/index.js +0 -7
- package/dist/client/workflow/utils/workflowMetrics.js +0 -311
- package/dist/client/workflow/utils/workflowValidation.js +0 -420
- package/dist/client/workflow/workflows/adaptiveWorkflow.js +0 -366
- package/dist/client/workflow/workflows/consensusWorkflow.js +0 -192
- package/dist/client/workflow/workflows/fallbackWorkflow.js +0 -225
- package/dist/client/workflow/workflows/multiJudgeWorkflow.js +0 -351
- /package/dist/client/{client/reactHooks.js → reactHooks.js} +0 -0
|
@@ -1,361 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* RTF Document Processor
|
|
3
|
-
*
|
|
4
|
-
* Processes Rich Text Format (.rtf) files by extracting plain text content
|
|
5
|
-
* from RTF control codes. Uses a lightweight text extraction approach
|
|
6
|
-
* without requiring external dependencies.
|
|
7
|
-
*
|
|
8
|
-
* Key features:
|
|
9
|
-
* - RTF control code stripping
|
|
10
|
-
* - Text content extraction
|
|
11
|
-
* - Raw content preservation for debugging
|
|
12
|
-
* - No external dependencies required
|
|
13
|
-
*
|
|
14
|
-
* Priority: ~110 (document format, processed after binary formats)
|
|
15
|
-
*
|
|
16
|
-
* @module processors/document/RtfProcessor
|
|
17
|
-
*
|
|
18
|
-
* @example
|
|
19
|
-
* ```typescript
|
|
20
|
-
* import { rtfProcessor, processRtf, isRtfFile } from "./document/index.js";
|
|
21
|
-
*
|
|
22
|
-
* // Check if a file is an RTF file
|
|
23
|
-
* if (isRtfFile("application/rtf", "document.rtf")) {
|
|
24
|
-
* const result = await processRtf({
|
|
25
|
-
* id: "file-123",
|
|
26
|
-
* name: "document.rtf",
|
|
27
|
-
* mimetype: "application/rtf",
|
|
28
|
-
* size: 10240,
|
|
29
|
-
* buffer: rtfBuffer,
|
|
30
|
-
* });
|
|
31
|
-
*
|
|
32
|
-
* if (result.success) {
|
|
33
|
-
* console.log(`Text content: ${result.data.textContent}`);
|
|
34
|
-
* }
|
|
35
|
-
* }
|
|
36
|
-
* ```
|
|
37
|
-
*/
|
|
38
|
-
import { BaseFileProcessor } from "../base/BaseFileProcessor.js";
|
|
39
|
-
import { SIZE_LIMITS } from "../config/index.js";
|
|
40
|
-
// =============================================================================
|
|
41
|
-
// CONSTANTS
|
|
42
|
-
// =============================================================================
|
|
43
|
-
/**
|
|
44
|
-
* Supported MIME types for RTF documents
|
|
45
|
-
*/
|
|
46
|
-
const SUPPORTED_RTF_MIME_TYPES = [
|
|
47
|
-
"application/rtf",
|
|
48
|
-
"text/rtf",
|
|
49
|
-
"text/richtext",
|
|
50
|
-
];
|
|
51
|
-
/**
|
|
52
|
-
* Supported file extensions for RTF documents
|
|
53
|
-
*/
|
|
54
|
-
const SUPPORTED_RTF_EXTENSIONS = [".rtf"];
|
|
55
|
-
/**
|
|
56
|
-
* Default timeout for RTF processing (30 seconds)
|
|
57
|
-
*/
|
|
58
|
-
const RTF_TIMEOUT_MS = 30000;
|
|
59
|
-
// =============================================================================
|
|
60
|
-
// RTF PROCESSOR CLASS
|
|
61
|
-
// =============================================================================
|
|
62
|
-
/**
|
|
63
|
-
* RTF Processor - handles Rich Text Format files.
|
|
64
|
-
*
|
|
65
|
-
* Extracts plain text from RTF documents by stripping RTF control codes.
|
|
66
|
-
* This is a lightweight implementation that doesn't require external
|
|
67
|
-
* RTF parsing libraries.
|
|
68
|
-
*
|
|
69
|
-
* Priority: ~110 (document format)
|
|
70
|
-
*
|
|
71
|
-
* @example
|
|
72
|
-
* ```typescript
|
|
73
|
-
* const processor = new RtfProcessor();
|
|
74
|
-
*
|
|
75
|
-
* const result = await processor.processFile({
|
|
76
|
-
* id: "file-123",
|
|
77
|
-
* name: "report.rtf",
|
|
78
|
-
* mimetype: "application/rtf",
|
|
79
|
-
* size: 5120,
|
|
80
|
-
* buffer: rtfBuffer,
|
|
81
|
-
* });
|
|
82
|
-
*
|
|
83
|
-
* if (result.success) {
|
|
84
|
-
* console.log("Extracted text:", result.data.textContent);
|
|
85
|
-
* }
|
|
86
|
-
* ```
|
|
87
|
-
*/
|
|
88
|
-
export class RtfProcessor extends BaseFileProcessor {
|
|
89
|
-
constructor() {
|
|
90
|
-
super({
|
|
91
|
-
maxSizeMB: SIZE_LIMITS.DOCUMENT_MAX_MB,
|
|
92
|
-
timeoutMs: RTF_TIMEOUT_MS,
|
|
93
|
-
supportedMimeTypes: SUPPORTED_RTF_MIME_TYPES,
|
|
94
|
-
supportedExtensions: SUPPORTED_RTF_EXTENSIONS,
|
|
95
|
-
fileTypeName: "RTF",
|
|
96
|
-
defaultFilename: "document.rtf",
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
/**
|
|
100
|
-
* Validate downloaded RTF document.
|
|
101
|
-
* Checks for RTF header signature "{\\rtf".
|
|
102
|
-
*
|
|
103
|
-
* @param buffer - Downloaded file content
|
|
104
|
-
* @param fileInfo - Original file information
|
|
105
|
-
* @returns null if valid, error message if invalid
|
|
106
|
-
*/
|
|
107
|
-
async validateDownloadedFile(buffer, _fileInfo) {
|
|
108
|
-
if (buffer.length < 5) {
|
|
109
|
-
return "Invalid RTF document - file too small";
|
|
110
|
-
}
|
|
111
|
-
// RTF files should start with "{\rtf"
|
|
112
|
-
const header = buffer.subarray(0, 10).toString("ascii");
|
|
113
|
-
if (!header.startsWith("{\\rtf")) {
|
|
114
|
-
// Check if it might be HTML error page
|
|
115
|
-
const preview = buffer
|
|
116
|
-
.subarray(0, 100)
|
|
117
|
-
.toString("utf8")
|
|
118
|
-
.substring(0, 100);
|
|
119
|
-
if (preview.includes("<!DOCTYPE") || preview.includes("<html")) {
|
|
120
|
-
return "Invalid RTF document - received HTML response instead of file content";
|
|
121
|
-
}
|
|
122
|
-
return "Invalid RTF document - missing RTF header signature";
|
|
123
|
-
}
|
|
124
|
-
return null;
|
|
125
|
-
}
|
|
126
|
-
/**
|
|
127
|
-
* Build the processed RTF result.
|
|
128
|
-
* Extracts plain text by stripping RTF control codes.
|
|
129
|
-
*
|
|
130
|
-
* @param buffer - Raw file content
|
|
131
|
-
* @param fileInfo - Original file information
|
|
132
|
-
* @returns Processed RTF with extracted text content
|
|
133
|
-
*/
|
|
134
|
-
buildProcessedResult(buffer, fileInfo) {
|
|
135
|
-
const rawContent = buffer.toString("utf-8");
|
|
136
|
-
const textContent = this.extractText(rawContent);
|
|
137
|
-
return {
|
|
138
|
-
textContent,
|
|
139
|
-
rawContent,
|
|
140
|
-
buffer,
|
|
141
|
-
mimetype: fileInfo.mimetype || "application/rtf",
|
|
142
|
-
size: fileInfo.size,
|
|
143
|
-
filename: this.getFilename(fileInfo),
|
|
144
|
-
};
|
|
145
|
-
}
|
|
146
|
-
/**
|
|
147
|
-
* Extract plain text from RTF content.
|
|
148
|
-
* Strips RTF control codes, groups, and formatting commands.
|
|
149
|
-
*
|
|
150
|
-
* This is a basic RTF parser that handles common RTF constructs:
|
|
151
|
-
* - Control groups like {\fonttbl...}
|
|
152
|
-
* - Control words like \par, \b, \i
|
|
153
|
-
* - Special characters like \' hex escapes
|
|
154
|
-
* - Newlines from \par and \line commands
|
|
155
|
-
*
|
|
156
|
-
* @param rtf - Raw RTF content
|
|
157
|
-
* @returns Extracted plain text
|
|
158
|
-
*/
|
|
159
|
-
extractText(rtf) {
|
|
160
|
-
const text = rtf;
|
|
161
|
-
let result = "";
|
|
162
|
-
let depth = 0;
|
|
163
|
-
let skipGroup = false;
|
|
164
|
-
let skipGroupDepth = 0;
|
|
165
|
-
let i = 0;
|
|
166
|
-
// Groups that should be skipped entirely (metadata, not content)
|
|
167
|
-
const skipGroupNames = [
|
|
168
|
-
"fonttbl",
|
|
169
|
-
"colortbl",
|
|
170
|
-
"stylesheet",
|
|
171
|
-
"info",
|
|
172
|
-
"pict",
|
|
173
|
-
"object",
|
|
174
|
-
"header",
|
|
175
|
-
"footer",
|
|
176
|
-
];
|
|
177
|
-
while (i < text.length) {
|
|
178
|
-
const char = text[i];
|
|
179
|
-
if (char === "{") {
|
|
180
|
-
depth++;
|
|
181
|
-
// Check if this is a group we should skip
|
|
182
|
-
const nextChars = text.substring(i + 1, i + 20);
|
|
183
|
-
const groupMatch = nextChars.match(/^\\([a-z]+)/);
|
|
184
|
-
if (groupMatch &&
|
|
185
|
-
skipGroupNames.includes(groupMatch[1]) &&
|
|
186
|
-
!skipGroup) {
|
|
187
|
-
skipGroup = true;
|
|
188
|
-
skipGroupDepth = depth;
|
|
189
|
-
}
|
|
190
|
-
i++;
|
|
191
|
-
continue;
|
|
192
|
-
}
|
|
193
|
-
if (char === "}") {
|
|
194
|
-
depth--;
|
|
195
|
-
if (skipGroup && depth < skipGroupDepth) {
|
|
196
|
-
skipGroup = false;
|
|
197
|
-
skipGroupDepth = 0;
|
|
198
|
-
}
|
|
199
|
-
i++;
|
|
200
|
-
continue;
|
|
201
|
-
}
|
|
202
|
-
if (skipGroup) {
|
|
203
|
-
i++;
|
|
204
|
-
continue;
|
|
205
|
-
}
|
|
206
|
-
if (char === "\\") {
|
|
207
|
-
// Control word or symbol
|
|
208
|
-
const remaining = text.substring(i);
|
|
209
|
-
// Handle special escapes
|
|
210
|
-
if (remaining.startsWith("\\\\")) {
|
|
211
|
-
result += "\\";
|
|
212
|
-
i += 2;
|
|
213
|
-
continue;
|
|
214
|
-
}
|
|
215
|
-
if (remaining.startsWith("\\{")) {
|
|
216
|
-
result += "{";
|
|
217
|
-
i += 2;
|
|
218
|
-
continue;
|
|
219
|
-
}
|
|
220
|
-
if (remaining.startsWith("\\}")) {
|
|
221
|
-
result += "}";
|
|
222
|
-
i += 2;
|
|
223
|
-
continue;
|
|
224
|
-
}
|
|
225
|
-
// Handle hex escapes like \'e9 (é)
|
|
226
|
-
const hexMatch = remaining.match(/^\\'([0-9a-f]{2})/i);
|
|
227
|
-
if (hexMatch) {
|
|
228
|
-
const charCode = parseInt(hexMatch[1], 16);
|
|
229
|
-
result += String.fromCharCode(charCode);
|
|
230
|
-
i += 4;
|
|
231
|
-
continue;
|
|
232
|
-
}
|
|
233
|
-
// Handle Unicode escapes like \u233? (é)
|
|
234
|
-
const unicodeMatch = remaining.match(/^\\u(-?\d+)\??/);
|
|
235
|
-
if (unicodeMatch) {
|
|
236
|
-
let charCode = parseInt(unicodeMatch[1], 10);
|
|
237
|
-
if (charCode < 0) {
|
|
238
|
-
charCode += 65536; // Convert negative to positive
|
|
239
|
-
}
|
|
240
|
-
result += String.fromCharCode(charCode);
|
|
241
|
-
i += unicodeMatch[0].length;
|
|
242
|
-
continue;
|
|
243
|
-
}
|
|
244
|
-
// Handle control words
|
|
245
|
-
const controlMatch = remaining.match(/^\\([a-z]+)(-?\d*)[ ]?/i);
|
|
246
|
-
if (controlMatch) {
|
|
247
|
-
const controlWord = controlMatch[1].toLowerCase();
|
|
248
|
-
// Convert some control words to text
|
|
249
|
-
if (controlWord === "par" || controlWord === "line") {
|
|
250
|
-
result += "\n";
|
|
251
|
-
}
|
|
252
|
-
else if (controlWord === "tab") {
|
|
253
|
-
result += "\t";
|
|
254
|
-
}
|
|
255
|
-
else if (controlWord === "emdash") {
|
|
256
|
-
result += "—";
|
|
257
|
-
}
|
|
258
|
-
else if (controlWord === "endash") {
|
|
259
|
-
result += "–";
|
|
260
|
-
}
|
|
261
|
-
else if (controlWord === "bullet") {
|
|
262
|
-
result += "•";
|
|
263
|
-
}
|
|
264
|
-
else if (controlWord === "lquote") {
|
|
265
|
-
result += "'";
|
|
266
|
-
}
|
|
267
|
-
else if (controlWord === "rquote") {
|
|
268
|
-
result += "'";
|
|
269
|
-
}
|
|
270
|
-
else if (controlWord === "ldblquote") {
|
|
271
|
-
result += '"';
|
|
272
|
-
}
|
|
273
|
-
else if (controlWord === "rdblquote") {
|
|
274
|
-
result += '"';
|
|
275
|
-
}
|
|
276
|
-
i += controlMatch[0].length;
|
|
277
|
-
continue;
|
|
278
|
-
}
|
|
279
|
-
// Unknown control sequence, skip the backslash and control word
|
|
280
|
-
i++;
|
|
281
|
-
continue;
|
|
282
|
-
}
|
|
283
|
-
// Regular character
|
|
284
|
-
if (char !== "\r" && char !== "\n") {
|
|
285
|
-
result += char;
|
|
286
|
-
}
|
|
287
|
-
i++;
|
|
288
|
-
}
|
|
289
|
-
// Clean up the result
|
|
290
|
-
result = result
|
|
291
|
-
.replace(/\s+/g, " ") // Normalize whitespace
|
|
292
|
-
.replace(/ +\n/g, "\n") // Remove trailing spaces before newlines
|
|
293
|
-
.replace(/\n +/g, "\n") // Remove leading spaces after newlines
|
|
294
|
-
.replace(/\n{3,}/g, "\n\n") // Collapse multiple newlines
|
|
295
|
-
.trim();
|
|
296
|
-
return result;
|
|
297
|
-
}
|
|
298
|
-
}
|
|
299
|
-
// =============================================================================
|
|
300
|
-
// SINGLETON INSTANCE
|
|
301
|
-
// =============================================================================
|
|
302
|
-
/**
|
|
303
|
-
* Singleton instance of the RtfProcessor.
|
|
304
|
-
* Use this for all RTF document processing to share configuration.
|
|
305
|
-
*/
|
|
306
|
-
export const rtfProcessor = new RtfProcessor();
|
|
307
|
-
// =============================================================================
|
|
308
|
-
// HELPER FUNCTIONS
|
|
309
|
-
// =============================================================================
|
|
310
|
-
/**
|
|
311
|
-
* Check if a file is an RTF document.
|
|
312
|
-
*
|
|
313
|
-
* @param mimetype - MIME type of the file
|
|
314
|
-
* @param filename - Filename for detection
|
|
315
|
-
* @returns true if the file is a supported RTF document
|
|
316
|
-
*
|
|
317
|
-
* @example
|
|
318
|
-
* ```typescript
|
|
319
|
-
* if (isRtfFile("application/rtf", "document.rtf")) {
|
|
320
|
-
* console.log("This is an RTF document");
|
|
321
|
-
* }
|
|
322
|
-
* ```
|
|
323
|
-
*/
|
|
324
|
-
export function isRtfFile(mimetype, filename) {
|
|
325
|
-
return rtfProcessor.isFileSupported(mimetype, filename);
|
|
326
|
-
}
|
|
327
|
-
/**
|
|
328
|
-
* Validate RTF document size against configured limit.
|
|
329
|
-
*
|
|
330
|
-
* @param sizeBytes - File size in bytes
|
|
331
|
-
* @returns true if size is within the allowed limit
|
|
332
|
-
*/
|
|
333
|
-
export function validateRtfSize(sizeBytes) {
|
|
334
|
-
const maxBytes = SIZE_LIMITS.DOCUMENT_MAX_MB * 1024 * 1024;
|
|
335
|
-
return sizeBytes <= maxBytes;
|
|
336
|
-
}
|
|
337
|
-
/**
|
|
338
|
-
* Process an RTF document.
|
|
339
|
-
*
|
|
340
|
-
* @param fileInfo - File information (can include URL or buffer)
|
|
341
|
-
* @param options - Optional processing options
|
|
342
|
-
* @returns Processing result with success flag and either data or error
|
|
343
|
-
*
|
|
344
|
-
* @example
|
|
345
|
-
* ```typescript
|
|
346
|
-
* const result = await processRtf({
|
|
347
|
-
* id: "file-123",
|
|
348
|
-
* name: "report.rtf",
|
|
349
|
-
* mimetype: "application/rtf",
|
|
350
|
-
* size: 10240,
|
|
351
|
-
* buffer: rtfBuffer,
|
|
352
|
-
* });
|
|
353
|
-
*
|
|
354
|
-
* if (result.success) {
|
|
355
|
-
* console.log("Extracted text:", result.data.textContent);
|
|
356
|
-
* }
|
|
357
|
-
* ```
|
|
358
|
-
*/
|
|
359
|
-
export async function processRtf(fileInfo, options) {
|
|
360
|
-
return rtfProcessor.processFile(fileInfo, options);
|
|
361
|
-
}
|