chat-flow-ardymalihi 3.0.0 → 3.0.2
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/package.json +1 -1
- package/dist/adapters/db/InMemorySessionRepository.js +0 -15
- package/dist/adapters/db/RedisSessionRepository.js +0 -41
- package/dist/adapters/intent/IntentMatcher.d.ts +0 -41
- package/dist/adapters/intent/IntentMatcher.d.ts.map +0 -1
- package/dist/adapters/intent/IntentMatcher.js +0 -167
- package/dist/adapters/intent/IntentMatcher.js.map +0 -1
- package/dist/adapters/intent/IntentService.d.ts +0 -26
- package/dist/adapters/intent/IntentService.d.ts.map +0 -1
- package/dist/adapters/intent/IntentService.js +0 -65
- package/dist/adapters/intent/IntentService.js.map +0 -1
- package/dist/adapters/intent/MockIntentAdapter.js +0 -29
- package/dist/adapters/intent/MockIntentService.d.ts +0 -7
- package/dist/adapters/intent/MockIntentService.d.ts.map +0 -1
- package/dist/adapters/intent/MockIntentService.js +0 -36
- package/dist/adapters/intent/MockIntentService.js.map +0 -1
- package/dist/adapters/llm/GeminiLLMAdapter.d.ts +0 -10
- package/dist/adapters/llm/GeminiLLMAdapter.d.ts.map +0 -1
- package/dist/adapters/llm/GeminiLLMAdapter.js +0 -102
- package/dist/adapters/llm/GeminiLLMAdapter.js.map +0 -1
- package/dist/adapters/llm/MockLLMAdapter.d.ts +0 -5
- package/dist/adapters/llm/MockLLMAdapter.d.ts.map +0 -1
- package/dist/adapters/llm/MockLLMAdapter.js +0 -31
- package/dist/adapters/llm/MockLLMAdapter.js.map +0 -1
- package/dist/adapters/llm/OllamaLLMAdapter.d.ts +0 -9
- package/dist/adapters/llm/OllamaLLMAdapter.d.ts.map +0 -1
- package/dist/adapters/llm/OllamaLLMAdapter.js +0 -74
- package/dist/adapters/llm/OllamaLLMAdapter.js.map +0 -1
- package/dist/adapters/logger/ConsoleLogger.d.ts +0 -12
- package/dist/adapters/logger/ConsoleLogger.d.ts.map +0 -1
- package/dist/adapters/logger/ConsoleLogger.js +0 -37
- package/dist/adapters/logger/ConsoleLogger.js.map +0 -1
- package/dist/adapters/memory/InMemorySessionRepository.js +0 -15
- package/dist/adapters/redis/RedisSessionRepository.js +0 -41
- package/dist/adapters/repository/InMemoryRepository.d.ts +0 -46
- package/dist/adapters/repository/InMemoryRepository.d.ts.map +0 -1
- package/dist/adapters/repository/InMemoryRepository.js +0 -235
- package/dist/adapters/repository/InMemoryRepository.js.map +0 -1
- package/dist/adapters/repository/IntentRepository.d.ts +0 -15
- package/dist/adapters/repository/IntentRepository.d.ts.map +0 -1
- package/dist/adapters/repository/IntentRepository.js +0 -28
- package/dist/adapters/repository/IntentRepository.js.map +0 -1
- package/dist/adapters/repository/RedisRepository.d.ts +0 -63
- package/dist/adapters/repository/RedisRepository.d.ts.map +0 -1
- package/dist/adapters/repository/RedisRepository.js +0 -586
- package/dist/adapters/repository/RedisRepository.js.map +0 -1
- package/dist/adapters/storage/RedisAudioStorageAdapter.d.ts +0 -33
- package/dist/adapters/storage/RedisAudioStorageAdapter.d.ts.map +0 -1
- package/dist/adapters/storage/RedisAudioStorageAdapter.js +0 -121
- package/dist/adapters/storage/RedisAudioStorageAdapter.js.map +0 -1
- package/dist/adapters/storage/RedisBufferStorageAdapter.d.ts +0 -14
- package/dist/adapters/storage/RedisBufferStorageAdapter.d.ts.map +0 -1
- package/dist/adapters/storage/RedisBufferStorageAdapter.js +0 -94
- package/dist/adapters/storage/RedisBufferStorageAdapter.js.map +0 -1
- package/dist/adapters/voice/ElevenLabsVoiceAdapter.d.ts +0 -29
- package/dist/adapters/voice/ElevenLabsVoiceAdapter.d.ts.map +0 -1
- package/dist/adapters/voice/ElevenLabsVoiceAdapter.js +0 -75
- package/dist/adapters/voice/ElevenLabsVoiceAdapter.js.map +0 -1
- package/dist/adapters/voice/GeminiMultimodalLiveAdapter.d.ts +0 -77
- package/dist/adapters/voice/GeminiMultimodalLiveAdapter.d.ts.map +0 -1
- package/dist/adapters/voice/GeminiMultimodalLiveAdapter.js +0 -187
- package/dist/adapters/voice/GeminiMultimodalLiveAdapter.js.map +0 -1
- package/dist/adapters/voice/GeminiVoiceAdapter.d.ts +0 -36
- package/dist/adapters/voice/GeminiVoiceAdapter.d.ts.map +0 -1
- package/dist/adapters/voice/GeminiVoiceAdapter.js +0 -134
- package/dist/adapters/voice/GeminiVoiceAdapter.js.map +0 -1
- package/dist/adapters/voice/GoogleTTSAdapter.d.ts +0 -61
- package/dist/adapters/voice/GoogleTTSAdapter.d.ts.map +0 -1
- package/dist/adapters/voice/GoogleTTSAdapter.js +0 -165
- package/dist/adapters/voice/GoogleTTSAdapter.js.map +0 -1
- package/dist/adapters/voice/GoogleVoiceAdapter.d.ts +0 -33
- package/dist/adapters/voice/GoogleVoiceAdapter.d.ts.map +0 -1
- package/dist/adapters/voice/GoogleVoiceAdapter.js +0 -155
- package/dist/adapters/voice/GoogleVoiceAdapter.js.map +0 -1
- package/dist/adapters/voice/HybridVoiceAdapter.d.ts +0 -54
- package/dist/adapters/voice/HybridVoiceAdapter.d.ts.map +0 -1
- package/dist/adapters/voice/HybridVoiceAdapter.js +0 -102
- package/dist/adapters/voice/HybridVoiceAdapter.js.map +0 -1
- package/dist/adapters/voice/LanguageVoiceMapper.d.ts +0 -60
- package/dist/adapters/voice/LanguageVoiceMapper.d.ts.map +0 -1
- package/dist/adapters/voice/LanguageVoiceMapper.js +0 -130
- package/dist/adapters/voice/LanguageVoiceMapper.js.map +0 -1
- package/dist/adapters/voice/VertexVoiceAdapter.d.ts +0 -32
- package/dist/adapters/voice/VertexVoiceAdapter.d.ts.map +0 -1
- package/dist/adapters/voice/VertexVoiceAdapter.js +0 -179
- package/dist/adapters/voice/VertexVoiceAdapter.js.map +0 -1
- package/dist/adapters/webhook/WebhookService.d.ts +0 -47
- package/dist/adapters/webhook/WebhookService.d.ts.map +0 -1
- package/dist/adapters/webhook/WebhookService.js +0 -265
- package/dist/adapters/webhook/WebhookService.js.map +0 -1
- package/dist/adapters/workflow/MockWorkflowAdapter.d.ts +0 -5
- package/dist/adapters/workflow/MockWorkflowAdapter.d.ts.map +0 -1
- package/dist/adapters/workflow/MockWorkflowAdapter.js +0 -173
- package/dist/adapters/workflow/MockWorkflowAdapter.js.map +0 -1
- package/dist/adapters/workflow/WorkflowAdapter.d.ts +0 -55
- package/dist/adapters/workflow/WorkflowAdapter.d.ts.map +0 -1
- package/dist/adapters/workflow/WorkflowAdapter.js +0 -242
- package/dist/adapters/workflow/WorkflowAdapter.js.map +0 -1
- package/dist/adapters/workflow/actions/getSupportHoursAction.d.ts +0 -10
- package/dist/adapters/workflow/actions/getSupportHoursAction.d.ts.map +0 -1
- package/dist/adapters/workflow/actions/getSupportHoursAction.js +0 -33
- package/dist/adapters/workflow/actions/getSupportHoursAction.js.map +0 -1
- package/dist/adapters/workflow/actions/index.d.ts +0 -6
- package/dist/adapters/workflow/actions/index.d.ts.map +0 -1
- package/dist/adapters/workflow/actions/index.js +0 -22
- package/dist/adapters/workflow/actions/index.js.map +0 -1
- package/dist/adapters/workflow/actions/pushOutputResultAction.d.ts +0 -11
- package/dist/adapters/workflow/actions/pushOutputResultAction.d.ts.map +0 -1
- package/dist/adapters/workflow/actions/pushOutputResultAction.js +0 -31
- package/dist/adapters/workflow/actions/pushOutputResultAction.js.map +0 -1
- package/dist/adapters/workflow/actions/setWorkflowMessageAction.d.ts +0 -12
- package/dist/adapters/workflow/actions/setWorkflowMessageAction.d.ts.map +0 -1
- package/dist/adapters/workflow/actions/setWorkflowMessageAction.js +0 -32
- package/dist/adapters/workflow/actions/setWorkflowMessageAction.js.map +0 -1
- package/dist/adapters/workflow/engine/constants.d.ts +0 -3
- package/dist/adapters/workflow/engine/constants.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/constants.js +0 -6
- package/dist/adapters/workflow/engine/constants.js.map +0 -1
- package/dist/adapters/workflow/engine/engine.d.ts +0 -32
- package/dist/adapters/workflow/engine/engine.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/engine.js +0 -623
- package/dist/adapters/workflow/engine/engine.js.map +0 -1
- package/dist/adapters/workflow/engine/event-registry.d.ts +0 -12
- package/dist/adapters/workflow/engine/event-registry.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/event-registry.js +0 -33
- package/dist/adapters/workflow/engine/event-registry.js.map +0 -1
- package/dist/adapters/workflow/engine/interpolator.d.ts +0 -11
- package/dist/adapters/workflow/engine/interpolator.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/interpolator.js +0 -93
- package/dist/adapters/workflow/engine/interpolator.js.map +0 -1
- package/dist/adapters/workflow/engine/registry.d.ts +0 -12
- package/dist/adapters/workflow/engine/registry.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/registry.js +0 -39
- package/dist/adapters/workflow/engine/registry.js.map +0 -1
- package/dist/adapters/workflow/engine/template-registry.d.ts +0 -60
- package/dist/adapters/workflow/engine/template-registry.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/template-registry.js +0 -92
- package/dist/adapters/workflow/engine/template-registry.js.map +0 -1
- package/dist/adapters/workflow/engine/types.d.ts +0 -182
- package/dist/adapters/workflow/engine/types.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/types.js +0 -3
- package/dist/adapters/workflow/engine/types.js.map +0 -1
- package/dist/adapters/workflow/engine/utils/format-utils.d.ts +0 -43
- package/dist/adapters/workflow/engine/utils/format-utils.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/utils/format-utils.js +0 -137
- package/dist/adapters/workflow/engine/utils/format-utils.js.map +0 -1
- package/dist/adapters/workflow/engine/utils/layout-calculator.d.ts +0 -7
- package/dist/adapters/workflow/engine/utils/layout-calculator.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/utils/layout-calculator.js +0 -87
- package/dist/adapters/workflow/engine/utils/layout-calculator.js.map +0 -1
- package/dist/adapters/workflow/engine/utils/slugify.d.ts +0 -2
- package/dist/adapters/workflow/engine/utils/slugify.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/utils/slugify.js +0 -41
- package/dist/adapters/workflow/engine/utils/slugify.js.map +0 -1
- package/dist/adapters/workflow/engine/validator.d.ts +0 -9
- package/dist/adapters/workflow/engine/validator.d.ts.map +0 -1
- package/dist/adapters/workflow/engine/validator.js +0 -425
- package/dist/adapters/workflow/engine/validator.js.map +0 -1
- package/dist/application/ConversationSession.d.ts +0 -23
- package/dist/application/ConversationSession.d.ts.map +0 -1
- package/dist/application/ConversationSession.js +0 -83
- package/dist/application/ConversationSession.js.map +0 -1
- package/dist/application/Message.d.ts +0 -11
- package/dist/application/Message.d.ts.map +0 -1
- package/dist/application/Message.js +0 -30
- package/dist/application/Message.js.map +0 -1
- package/dist/application/Orchestrator.d.ts +0 -18
- package/dist/application/Orchestrator.d.ts.map +0 -1
- package/dist/application/Orchestrator.js +0 -80
- package/dist/application/Orchestrator.js.map +0 -1
- package/dist/application/SessionState.js +0 -2
- package/dist/application/usecases/CreateSession.js +0 -20
- package/dist/application/usecases/HandleUserMessage.js +0 -69
- package/dist/config/ChatFlowConfig.d.ts +0 -66
- package/dist/config/ChatFlowConfig.d.ts.map +0 -1
- package/dist/config/ChatFlowConfig.js +0 -54
- package/dist/config/ChatFlowConfig.js.map +0 -1
- package/dist/config/index.d.ts +0 -2
- package/dist/config/index.d.ts.map +0 -1
- package/dist/config/index.js +0 -7
- package/dist/config/index.js.map +0 -1
- package/dist/core/entities/ConversationSession.d.ts +0 -58
- package/dist/core/entities/ConversationSession.d.ts.map +0 -1
- package/dist/core/entities/ConversationSession.js +0 -160
- package/dist/core/entities/ConversationSession.js.map +0 -1
- package/dist/core/entities/Message.d.ts +0 -14
- package/dist/core/entities/Message.d.ts.map +0 -1
- package/dist/core/entities/Message.js +0 -32
- package/dist/core/entities/Message.js.map +0 -1
- package/dist/core/errors/ChatFlowError.d.ts +0 -71
- package/dist/core/errors/ChatFlowError.d.ts.map +0 -1
- package/dist/core/errors/ChatFlowError.js +0 -108
- package/dist/core/errors/ChatFlowError.js.map +0 -1
- package/dist/core/errors/index.d.ts +0 -2
- package/dist/core/errors/index.d.ts.map +0 -1
- package/dist/core/errors/index.js +0 -15
- package/dist/core/errors/index.js.map +0 -1
- package/dist/core/utils/AudioStreamBuffer.d.ts +0 -33
- package/dist/core/utils/AudioStreamBuffer.d.ts.map +0 -1
- package/dist/core/utils/AudioStreamBuffer.js +0 -55
- package/dist/core/utils/AudioStreamBuffer.js.map +0 -1
- package/dist/core/utils/AudioUtils.d.ts +0 -41
- package/dist/core/utils/AudioUtils.d.ts.map +0 -1
- package/dist/core/utils/AudioUtils.js +0 -188
- package/dist/core/utils/AudioUtils.js.map +0 -1
- package/dist/core/utils/LanguageDetector.d.ts +0 -52
- package/dist/core/utils/LanguageDetector.d.ts.map +0 -1
- package/dist/core/utils/LanguageDetector.js +0 -173
- package/dist/core/utils/LanguageDetector.js.map +0 -1
- package/dist/core/utils/WavUtils.d.ts +0 -14
- package/dist/core/utils/WavUtils.d.ts.map +0 -1
- package/dist/core/utils/WavUtils.js +0 -37
- package/dist/core/utils/WavUtils.js.map +0 -1
- package/dist/db/InMemoryRepository.d.ts +0 -15
- package/dist/db/InMemoryRepository.d.ts.map +0 -1
- package/dist/db/InMemoryRepository.js +0 -41
- package/dist/db/InMemoryRepository.js.map +0 -1
- package/dist/db/RedisRepository.d.ts +0 -16
- package/dist/db/RedisRepository.d.ts.map +0 -1
- package/dist/db/RedisRepository.js +0 -87
- package/dist/db/RedisRepository.js.map +0 -1
- package/dist/demo/cli-demo.d.ts +0 -2
- package/dist/demo/cli-demo.d.ts.map +0 -1
- package/dist/demo/cli-demo.js +0 -146
- package/dist/demo/cli-demo.js.map +0 -1
- package/dist/demo/console-chat.d.ts +0 -2
- package/dist/demo/console-chat.d.ts.map +0 -1
- package/dist/demo/console-chat.js +0 -148
- package/dist/demo/console-chat.js.map +0 -1
- package/dist/demo/interactive-voice-chat.d.ts +0 -2
- package/dist/demo/interactive-voice-chat.d.ts.map +0 -1
- package/dist/demo/interactive-voice-chat.js +0 -180
- package/dist/demo/interactive-voice-chat.js.map +0 -1
- package/dist/demo/voice-demo.d.ts +0 -2
- package/dist/demo/voice-demo.d.ts.map +0 -1
- package/dist/demo/voice-demo.js +0 -188
- package/dist/demo/voice-demo.js.map +0 -1
- package/dist/domain/conversation/ConversationSession.js +0 -82
- package/dist/domain/conversation/Message.js +0 -33
- package/dist/domain/conversation/SessionState.js +0 -10
- package/dist/index.d.ts +0 -26
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -76
- package/dist/index.js.map +0 -1
- package/dist/intent/IntentService.d.ts +0 -17
- package/dist/intent/IntentService.d.ts.map +0 -1
- package/dist/intent/IntentService.js +0 -57
- package/dist/intent/IntentService.js.map +0 -1
- package/dist/intent/MockIntentService.d.ts +0 -7
- package/dist/intent/MockIntentService.d.ts.map +0 -1
- package/dist/intent/MockIntentService.js +0 -36
- package/dist/intent/MockIntentService.js.map +0 -1
- package/dist/interfaces.d.ts +0 -653
- package/dist/interfaces.d.ts.map +0 -1
- package/dist/interfaces.js +0 -36
- package/dist/interfaces.js.map +0 -1
- package/dist/llm/GeminiLLMAdapter.d.ts +0 -10
- package/dist/llm/GeminiLLMAdapter.d.ts.map +0 -1
- package/dist/llm/GeminiLLMAdapter.js +0 -102
- package/dist/llm/GeminiLLMAdapter.js.map +0 -1
- package/dist/llm/MockLLMAdapter.d.ts +0 -5
- package/dist/llm/MockLLMAdapter.d.ts.map +0 -1
- package/dist/llm/MockLLMAdapter.js +0 -31
- package/dist/llm/MockLLMAdapter.js.map +0 -1
- package/dist/orchestrator/Orchestrator.d.ts +0 -62
- package/dist/orchestrator/Orchestrator.d.ts.map +0 -1
- package/dist/orchestrator/Orchestrator.js +0 -697
- package/dist/orchestrator/Orchestrator.js.map +0 -1
- package/dist/ports/IIntentRepository.d.ts +0 -27
- package/dist/ports/IIntentRepository.d.ts.map +0 -1
- package/dist/ports/IIntentRepository.js +0 -3
- package/dist/ports/IIntentRepository.js.map +0 -1
- package/dist/ports/IntentPort.js +0 -2
- package/dist/ports/LLMPort.js +0 -2
- package/dist/ports/SessionRepository.js +0 -2
- package/dist/ports/WorkflowPort.js +0 -2
- package/dist/scripts/debug-redis.d.ts +0 -2
- package/dist/scripts/debug-redis.d.ts.map +0 -1
- package/dist/scripts/debug-redis.js +0 -55
- package/dist/scripts/debug-redis.js.map +0 -1
- package/dist/scripts/seed-collaborative-intents.d.ts +0 -2
- package/dist/scripts/seed-collaborative-intents.d.ts.map +0 -1
- package/dist/scripts/seed-collaborative-intents.js +0 -90
- package/dist/scripts/seed-collaborative-intents.js.map +0 -1
- package/dist/scripts/test-isolated-config.d.ts +0 -2
- package/dist/scripts/test-isolated-config.d.ts.map +0 -1
- package/dist/scripts/test-isolated-config.js +0 -80
- package/dist/scripts/test-isolated-config.js.map +0 -1
- package/dist/scripts/verify_memory_intents.d.ts +0 -2
- package/dist/scripts/verify_memory_intents.d.ts.map +0 -1
- package/dist/scripts/verify_memory_intents.js +0 -45
- package/dist/scripts/verify_memory_intents.js.map +0 -1
- package/dist/scripts/verify_redis_intents.d.ts +0 -2
- package/dist/scripts/verify_redis_intents.d.ts.map +0 -1
- package/dist/scripts/verify_redis_intents.js +0 -52
- package/dist/scripts/verify_redis_intents.js.map +0 -1
- package/dist/server/ChatFlowWebSocketServer.d.ts +0 -46
- package/dist/server/ChatFlowWebSocketServer.d.ts.map +0 -1
- package/dist/server/ChatFlowWebSocketServer.js +0 -344
- package/dist/server/ChatFlowWebSocketServer.js.map +0 -1
- package/dist/server/realtime-voice-server.d.ts +0 -2
- package/dist/server/realtime-voice-server.d.ts.map +0 -1
- package/dist/server/realtime-voice-server.js +0 -627
- package/dist/server/realtime-voice-server.js.map +0 -1
- package/dist/src/api/routes/tenants.d.ts +0 -3
- package/dist/src/api/routes/tenants.d.ts.map +0 -1
- package/dist/src/api/routes/tenants.js +0 -109
- package/dist/src/api/routes/tenants.js.map +0 -1
- package/dist/utils/crypto.d.ts +0 -7
- package/dist/utils/crypto.d.ts.map +0 -1
- package/dist/utils/crypto.js +0 -35
- package/dist/utils/crypto.js.map +0 -1
- package/dist/utils/encryption-helpers.d.ts +0 -14
- package/dist/utils/encryption-helpers.d.ts.map +0 -1
- package/dist/utils/encryption-helpers.js +0 -49
- package/dist/utils/encryption-helpers.js.map +0 -1
- package/dist/verify_memory_intents.js +0 -44
- package/dist/verify_redis_intents.js +0 -49
- package/dist/workflow/MockWorkflowAdapter.d.ts +0 -5
- package/dist/workflow/MockWorkflowAdapter.d.ts.map +0 -1
- package/dist/workflow/MockWorkflowAdapter.js +0 -162
- package/dist/workflow/MockWorkflowAdapter.js.map +0 -1
|
@@ -1,137 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.findVariableLabel = findVariableLabel;
|
|
4
|
-
exports.simplifyVariablePath = simplifyVariablePath;
|
|
5
|
-
exports.formatVariableForDisplay = formatVariableForDisplay;
|
|
6
|
-
/**
|
|
7
|
-
* Finds the label for a variable path from the variables array
|
|
8
|
-
*
|
|
9
|
-
* @param path - The full variable path (e.g., "trigger.payload.call_summary.booking.date")
|
|
10
|
-
* @param variables - Array of variable groups to search
|
|
11
|
-
* @returns The friendly label if found, otherwise null
|
|
12
|
-
*/
|
|
13
|
-
function findVariableLabel(path, variables) {
|
|
14
|
-
if (!path || !variables)
|
|
15
|
-
return null;
|
|
16
|
-
// Remove quotes if it's a string literal
|
|
17
|
-
const cleanPath = path.replace(/^['"]|['"]$/g, '').trim();
|
|
18
|
-
// Search through all variable groups
|
|
19
|
-
for (const group of variables) {
|
|
20
|
-
const found = group.variables.find((v) => v.path === cleanPath);
|
|
21
|
-
if (found) {
|
|
22
|
-
return found.label;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
return null;
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Simplifies long variable paths for better readability in UI
|
|
29
|
-
*
|
|
30
|
-
* @param path - The full variable path (e.g., "trigger.payload.call_summary.booking.date")
|
|
31
|
-
* @param maxSegments - Maximum number of segments to show (default: 2 for long paths, 3 for medium)
|
|
32
|
-
* @returns Simplified path with ellipsis prefix (e.g., "...booking.date")
|
|
33
|
-
*
|
|
34
|
-
* @example
|
|
35
|
-
* simplifyVariablePath("trigger.payload.call_summary.booking.date") // "...booking.date"
|
|
36
|
-
* simplifyVariablePath("step_resolve_booking_date.output.startTime") // "...output.startTime"
|
|
37
|
-
* simplifyVariablePath("step_get_records.output[0].email") // "...output → first row → email"
|
|
38
|
-
* simplifyVariablePath("step_get_records.output[5].name") // "...output → row 6 → name"
|
|
39
|
-
* simplifyVariablePath("'listing_inquiry'") // "'listing_inquiry'" (keeps literals)
|
|
40
|
-
* simplifyVariablePath("user.name") // "user.name" (already short)
|
|
41
|
-
*/
|
|
42
|
-
function simplifyVariablePath(path, maxSegments) {
|
|
43
|
-
if (!path)
|
|
44
|
-
return path;
|
|
45
|
-
// Keep string literals as-is (quoted strings)
|
|
46
|
-
if (path.startsWith("'") || path.startsWith('"')) {
|
|
47
|
-
return path;
|
|
48
|
-
}
|
|
49
|
-
// Keep numbers and booleans as-is
|
|
50
|
-
if (/^(true|false|\d+)$/.test(path.trim())) {
|
|
51
|
-
return path;
|
|
52
|
-
}
|
|
53
|
-
// Handle array indices: convert [0] to "first row", [n] to "row n+1"
|
|
54
|
-
let processedPath = path;
|
|
55
|
-
const arrayIndexPattern = /\[(\d+)\]/g;
|
|
56
|
-
const hasArrayIndex = arrayIndexPattern.test(path);
|
|
57
|
-
if (hasArrayIndex) {
|
|
58
|
-
processedPath = path.replace(/\[(\d+)\]/g, (match, index) => {
|
|
59
|
-
const idx = parseInt(index);
|
|
60
|
-
if (idx === 0) {
|
|
61
|
-
return ' → first row';
|
|
62
|
-
}
|
|
63
|
-
return ` → row ${idx + 1}`;
|
|
64
|
-
});
|
|
65
|
-
// Also replace dots with arrows for better readability when arrays are involved
|
|
66
|
-
processedPath = processedPath.replace(/\./g, ' → ');
|
|
67
|
-
// Simplify: remove step prefix and just show the meaningful parts
|
|
68
|
-
const parts = processedPath.split(' → ').filter(p => p.trim());
|
|
69
|
-
// If it starts with a step ID, remove it and show "..."
|
|
70
|
-
if (parts[0] && parts[0].startsWith('step_')) {
|
|
71
|
-
parts[0] = '...';
|
|
72
|
-
}
|
|
73
|
-
// Take last 3-4 meaningful parts
|
|
74
|
-
const significantParts = parts.slice(-4);
|
|
75
|
-
return significantParts.join(' → ');
|
|
76
|
-
}
|
|
77
|
-
// Original logic for non-array paths
|
|
78
|
-
// Split by dots and check length
|
|
79
|
-
const segments = path.split('.');
|
|
80
|
-
if (segments.length <= 2) {
|
|
81
|
-
return path; // Already short enough
|
|
82
|
-
}
|
|
83
|
-
// Special handling for step outputs: use arrows for better readability
|
|
84
|
-
// e.g., "step_get_realtor_info.output.email" -> "... → output → email"
|
|
85
|
-
if (segments[0] && segments[0].startsWith('step_') && segments[1] === 'output') {
|
|
86
|
-
const outputParts = ['...', ...segments.slice(1)]; // Remove step name, keep output and properties
|
|
87
|
-
return outputParts.join(' → ');
|
|
88
|
-
}
|
|
89
|
-
// Determine how many segments to show
|
|
90
|
-
const segmentsToShow = maxSegments || (segments.length > 4 ? 2 : 3);
|
|
91
|
-
return '...' + segments.slice(-segmentsToShow).join('.');
|
|
92
|
-
}
|
|
93
|
-
/**
|
|
94
|
-
* Formats a variable path with simplified display and full path in title attribute
|
|
95
|
-
* Useful for creating tooltip-enabled spans
|
|
96
|
-
*
|
|
97
|
-
* @param path - The full variable path
|
|
98
|
-
* @param variables - Optional array of variable groups to look up friendly names
|
|
99
|
-
* @returns Object with display text, full path, label, source type, and step info
|
|
100
|
-
*/
|
|
101
|
-
function formatVariableForDisplay(path, variables) {
|
|
102
|
-
const label = variables ? findVariableLabel(path, variables) : null;
|
|
103
|
-
// Detect source type
|
|
104
|
-
let source = 'unknown';
|
|
105
|
-
let stepId = null;
|
|
106
|
-
let stepName = null;
|
|
107
|
-
if (path.startsWith('trigger.')) {
|
|
108
|
-
source = 'trigger';
|
|
109
|
-
}
|
|
110
|
-
else if (path.startsWith('step_')) {
|
|
111
|
-
source = 'step';
|
|
112
|
-
// Extract step ID (e.g., "step_get_realtor_info" from "step_get_realtor_info.output[0].email")
|
|
113
|
-
const stepMatch = path.match(/^(step_[a-zA-Z0-9_]+)/);
|
|
114
|
-
if (stepMatch) {
|
|
115
|
-
stepId = stepMatch[1];
|
|
116
|
-
// Convert step_id to "Step Name" (e.g., "step_get_realtor_info" -> "Get Realtor Info")
|
|
117
|
-
stepName = stepId
|
|
118
|
-
.replace(/^step_/, '')
|
|
119
|
-
.split('_')
|
|
120
|
-
.map(word => word.charAt(0).toUpperCase() + word.slice(1))
|
|
121
|
-
.join(' ');
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
else if (path.startsWith('configs.')) {
|
|
125
|
-
source = 'config';
|
|
126
|
-
}
|
|
127
|
-
return {
|
|
128
|
-
display: label || simplifyVariablePath(path),
|
|
129
|
-
fullPath: path,
|
|
130
|
-
label: label,
|
|
131
|
-
isSimplified: !label && simplifyVariablePath(path) !== path,
|
|
132
|
-
source,
|
|
133
|
-
stepId,
|
|
134
|
-
stepName
|
|
135
|
-
};
|
|
136
|
-
}
|
|
137
|
-
//# sourceMappingURL=format-utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"format-utils.js","sourceRoot":"","sources":["../../../../../src/adapters/workflow/engine/utils/format-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { WorkflowStep } from '../../../../interfaces';
|
|
2
|
-
/**
|
|
3
|
-
* Automatically calculates positions for workflow steps using the Dagre layout algorithm.
|
|
4
|
-
* Guarantees a top-down directed graph layout with minimal crossing.
|
|
5
|
-
*/
|
|
6
|
-
export declare function autoLayoutWorkflow(steps: WorkflowStep[]): WorkflowStep[];
|
|
7
|
-
//# sourceMappingURL=layout-calculator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"layout-calculator.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/workflow/engine/utils/layout-calculator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAKtD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,CAiFxE"}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.autoLayoutWorkflow = autoLayoutWorkflow;
|
|
7
|
-
const dagre_1 = __importDefault(require("dagre"));
|
|
8
|
-
const NODE_WIDTH = 380;
|
|
9
|
-
const NODE_HEIGHT = 150;
|
|
10
|
-
/**
|
|
11
|
-
* Automatically calculates positions for workflow steps using the Dagre layout algorithm.
|
|
12
|
-
* Guarantees a top-down directed graph layout with minimal crossing.
|
|
13
|
-
*/
|
|
14
|
-
function autoLayoutWorkflow(steps) {
|
|
15
|
-
if (!steps || steps.length === 0)
|
|
16
|
-
return [];
|
|
17
|
-
// Initialize Graph
|
|
18
|
-
const g = new dagre_1.default.graphlib.Graph();
|
|
19
|
-
g.setGraph({
|
|
20
|
-
rankdir: 'TB', // Top to Bottom
|
|
21
|
-
ranksep: 200, // Increased Vertical gap (was 100)
|
|
22
|
-
nodesep: 150, // Increased Horizontal gap (was 100) to separate True/False branches
|
|
23
|
-
// align: 'DL' // Removing specific alignment to let Dagre optimize for center/symmetry
|
|
24
|
-
});
|
|
25
|
-
g.setDefaultEdgeLabel(() => ({}));
|
|
26
|
-
// 1. Add Nodes
|
|
27
|
-
// We add ALL steps as nodes first
|
|
28
|
-
steps.forEach((step) => {
|
|
29
|
-
g.setNode(step.id, { width: NODE_WIDTH, height: NODE_HEIGHT });
|
|
30
|
-
});
|
|
31
|
-
// 2. Add Edges
|
|
32
|
-
// We strictly follow the flow directions
|
|
33
|
-
steps.forEach((step) => {
|
|
34
|
-
if (step.nextStepId) {
|
|
35
|
-
g.setEdge(step.id, step.nextStepId);
|
|
36
|
-
}
|
|
37
|
-
if (step.trueStepId) {
|
|
38
|
-
// Labeling edges doesn't affect layout structure much in Dagre,
|
|
39
|
-
// but order of adding might affect left/right placement.
|
|
40
|
-
// Typically we want True (Left) and False (Right) or vice versa.
|
|
41
|
-
// Dagre doesn't strictly guarantee edge order but usually respects insertion order for siblings.
|
|
42
|
-
g.setEdge(step.id, step.trueStepId, { label: 'true', weight: 1 });
|
|
43
|
-
}
|
|
44
|
-
if (step.falseStepId) {
|
|
45
|
-
g.setEdge(step.id, step.falseStepId, { label: 'false', weight: 1 });
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
// 3. Compute Layout
|
|
49
|
-
dagre_1.default.layout(g);
|
|
50
|
-
// 3.5. Post-Process: Enforce True-Left / False-Right
|
|
51
|
-
steps.forEach(step => {
|
|
52
|
-
if (step.trueStepId && step.falseStepId) {
|
|
53
|
-
const trueNode = g.node(step.trueStepId);
|
|
54
|
-
const falseNode = g.node(step.falseStepId);
|
|
55
|
-
if (trueNode && falseNode && trueNode.x > falseNode.x) {
|
|
56
|
-
// Swap the coordinates of the immediate children
|
|
57
|
-
const tempX = trueNode.x;
|
|
58
|
-
const tempY = trueNode.y;
|
|
59
|
-
trueNode.x = falseNode.x;
|
|
60
|
-
trueNode.y = falseNode.y;
|
|
61
|
-
falseNode.x = tempX;
|
|
62
|
-
falseNode.y = tempY;
|
|
63
|
-
// NOTE: We rely on the fact that swapping the root of the sub-branch
|
|
64
|
-
// visually signals the swap, even if deep descendants aren't moved.
|
|
65
|
-
// Moving entire subtrees is computationally expensive and risky for DAGs.
|
|
66
|
-
// Just swapping the immediate next nodes usually fixes the visual intuition for the branching point.
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
});
|
|
70
|
-
// 4. Map back to ReactFlow coordinates
|
|
71
|
-
// Dagre gives the CENTER (x,y) of the node.
|
|
72
|
-
// ReactFlow expects TOP-LEFT (x,y) of the node.
|
|
73
|
-
return steps.map((step) => {
|
|
74
|
-
const node = g.node(step.id);
|
|
75
|
-
// Safety check if node wasn't in graph for some reason
|
|
76
|
-
if (!node)
|
|
77
|
-
return step;
|
|
78
|
-
return {
|
|
79
|
-
...step,
|
|
80
|
-
position: {
|
|
81
|
-
x: node.x - (NODE_WIDTH / 2),
|
|
82
|
-
y: node.y - (NODE_HEIGHT / 2),
|
|
83
|
-
},
|
|
84
|
-
};
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
//# sourceMappingURL=layout-calculator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"layout-calculator.js","sourceRoot":"","sources":["../../../../../src/adapters/workflow/engine/utils/layout-calculator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"slugify.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/workflow/engine/utils/slugify.ts"],"names":[],"mappings":"AAiBA,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CA4B1D"}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.generateStepId = generateStepId;
|
|
4
|
-
const STOP_WORDS = new Set([
|
|
5
|
-
// Articles & Conjunctions
|
|
6
|
-
'a', 'an', 'the', 'and', 'or', 'but', 'nor', 'yet', 'so',
|
|
7
|
-
// Prepositions
|
|
8
|
-
'of', 'in', 'on', 'at', 'by', 'for', 'with', 'about', 'from', 'to', 'into', 'onto', 'upon', 'out', 'off', 'over', 'under',
|
|
9
|
-
// Pronouns & Determinators
|
|
10
|
-
'this', 'that', 'these', 'those', 'it', 'its', 'my', 'your', 'his', 'her', 'their', 'our',
|
|
11
|
-
'any', 'all', 'some', 'many', 'few', 'no', 'not', 'every', 'each',
|
|
12
|
-
// Verbs (Be/Have/Do primarily)
|
|
13
|
-
'is', 'are', 'was', 'were', 'be', 'been', 'being',
|
|
14
|
-
'have', 'has', 'had',
|
|
15
|
-
'do', 'does', 'did',
|
|
16
|
-
// Domain specific filler
|
|
17
|
-
'step', 'action', 'task', 'please', 'just'
|
|
18
|
-
]);
|
|
19
|
-
function generateStepId(description) {
|
|
20
|
-
if (!description)
|
|
21
|
-
return '';
|
|
22
|
-
// 1. Lowercase
|
|
23
|
-
const lower = description.toLowerCase();
|
|
24
|
-
// 2. Remove special characters (keep alphanumeric and spaces)
|
|
25
|
-
const clean = lower.replace(/[^a-z0-9\s]/g, '');
|
|
26
|
-
// 3. Split into words
|
|
27
|
-
const words = clean.split(/\s+/);
|
|
28
|
-
// 4. Filter stop words
|
|
29
|
-
const significantWords = words.filter(w => !STOP_WORDS.has(w) && w.length > 0);
|
|
30
|
-
// 5. Fallback: if all words were stop words (e.g. "To be or not to be"), use original cleaned words
|
|
31
|
-
const finalWords = significantWords.length > 0 ? significantWords : words.filter(w => w.length > 0);
|
|
32
|
-
// 6. Join with underscore
|
|
33
|
-
let id = finalWords.join('_');
|
|
34
|
-
// 7. Ensure it doesn't start with a number (variable naming rules often checking this)
|
|
35
|
-
if (/^\d/.test(id)) {
|
|
36
|
-
id = `step_${id}`;
|
|
37
|
-
}
|
|
38
|
-
// 8. Truncate (variables shouldn't be massive) - 50 chars seems reasonable
|
|
39
|
-
return id.substring(0, 50);
|
|
40
|
-
}
|
|
41
|
-
//# sourceMappingURL=slugify.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"slugify.js","sourceRoot":"","sources":["../../../../../src/adapters/workflow/engine/utils/slugify.ts"],"names":[],"mappings":";;AAiBA,wCA4BC;AA5CD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;IACvB,0BAA0B;IAC1B,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI;IACxD,eAAe;IACf,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO;IACzH,2BAA2B;IAC3B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK;IACzF,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM;IACjE,+BAA+B;IAC/B,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO;IACjD,MAAM,EAAE,KAAK,EAAE,KAAK;IACpB,IAAI,EAAE,MAAM,EAAE,KAAK;IACnB,yBAAyB;IACzB,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;CAC7C,CAAC,CAAC;AAEH,SAAgB,cAAc,CAAC,WAAmB;IAC9C,IAAI,CAAC,WAAW;QAAE,OAAO,EAAE,CAAC;IAE5B,eAAe;IACf,MAAM,KAAK,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;IAExC,8DAA8D;IAC9D,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;IAEhD,sBAAsB;IACtB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAEjC,uBAAuB;IACvB,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAE/E,oGAAoG;IACpG,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAEpG,0BAA0B;IAC1B,IAAI,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE9B,uFAAuF;IACvF,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;QACjB,EAAE,GAAG,QAAQ,EAAE,EAAE,CAAC;IACtB,CAAC;IAED,2EAA2E;IAC3E,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { WorkflowStep } from "../../../interfaces";
|
|
2
|
-
export interface VariableDefinition {
|
|
3
|
-
path: string;
|
|
4
|
-
type?: 'string' | 'number' | 'boolean' | 'object' | 'array';
|
|
5
|
-
}
|
|
6
|
-
export declare function validateStepInput(input: any, schema: any): Record<string, string>;
|
|
7
|
-
export declare function validateWorkflow(steps: WorkflowStep[], availableActions: any[], variables?: VariableDefinition[], // INJECTED variables instead of hardcoded
|
|
8
|
-
isAdmin?: boolean, configs?: Record<string, any>): Record<string, string[]>;
|
|
9
|
-
//# sourceMappingURL=validator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../../../src/adapters/workflow/engine/validator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGnD,MAAM,WAAW,kBAAkB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;CAC/D;AA6CD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAWjF;AAoSD,wBAAgB,gBAAgB,CAC5B,KAAK,EAAE,YAAY,EAAE,EACrB,gBAAgB,EAAE,GAAG,EAAE,EACvB,SAAS,GAAE,kBAAkB,EAAO,EAAM,0CAA0C;AACpF,OAAO,GAAE,OAAe,EACxB,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAClC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAsG1B"}
|