UNPKG

dadeumi

Version:

Dadeumi - An AI-powered literary translation workflow inspired by the Korean method of iterative textile refinement

1 lines 234 kB
{"version":3,"sources":["../node_modules/tsup/assets/cjs_shims.js","../src/services/ai/openai.ts","../src/services/ai/anthropic.ts","../src/config/pricing.ts","../src/services/ai/index.ts","../src/utils/logger.ts","../src/utils/xml.ts","../src/utils/continuation.ts","../src/utils/filesystem.ts","../src/utils/formatters.ts","../src/utils/metrics.ts","../src/utils/constants.ts","../src/utils/index.ts","../src/prompts/translation.ts","../src/core/TranslationWorkflow.ts","../src/index.ts"],"names":["OpenAiProvider","constructor","apiKey","client","OpenAI","process","env","OPENAI_API_KEY","getProviderName","isAvailable","generateResponse","messages","options","modelName","isReasoningModel","startsWith","performance","now","callResponsesApi","callChatCompletionsApi","combinedPrompt","role","content","slice","map","m","join","startTime","response","responses","create","model","input","reasoning","effort","reasoningEffort","max_output_tokens","maxOutputTokens","endTime","output_text","inputTokens","usage","input_tokens","outputTokens","output_tokens","duration","completion","chat","completions","temperature","max_tokens","choices","message","prompt_tokens","completion_tokens","AnthropicProvider","Anthropic","ANTHROPIC_API_KEY","error","console","warn","Error","formattedMessages","systemMessage","startIndex","i","length","msg","push","system","text","status","type","pricingData","Map","inputCostPerMillion","outputCostPerMillion","AiService","openAiApiKey","anthropicApiKey","openAiProvider","anthropicProvider","getAvailableProviders","openai","anthropic","supportedOpenAiModels","supportedAnthropicModels","isAnthropicModel","includes","isSupported","some","calculateCost","pricing","get","baseModelMatch","match","baseModel","inputCost","outputCost","totalCost","Logger","verbose","spinner","ora","log","logHeader","title","chalk","bgBlue","white","info","blue","success","green","yellow","red","startSpinner","start","succeedSpinner","succeed","warnSpinner","failSpinner","fail","logMetrics","label","metrics","cyan","Object","entries","forEach","key","value","XmlProcessor","parser","builder","XMLParser","ignoreAttributes","preserveOrder","XMLBuilder","format","extractTagContent","tagName","regex","RegExp","exec","trim","openTagRegex","openTagMatch","extractAllTags","pattern","matches","contentMatch","parseXml","xmlString","parse","buildXml","obj","build","wrapInTags","checkTranslationCompletion","sourceText","translationText","response_format","result","JSON","continue","targetLastLine","sourceLine","backupPartialTranslation","filePath","backupDir","existsSync","backupDirectory","dirname","fs","mkdirSync","recursive","filename","basename","timestamp","Date","toISOString","replace","backupPath","copyFileSync","combineTranslation","partialTranslation","continuationText","continued","cleanContinuationText","cleanedPartialTranslation","removeUnpairedXmlTags","removeContinuationMarkers","matchResult","findBestMatchPoint","matchedText","matchIndex","textBefore","substring","continuationAfterMatch","matchStartInContinuation","indexOf","combinedText","endsWith","cleaned","continuedMatch","openingTags","tagsToRemove","openTag","closeTag","pop","tag","tagMatch","markers","marker","continuation","exactMatch","lastIndexOf","minMatchLength","Math","min","bestMatch","bestMatchIndex","endChunk","max","startChunk","endPart","paragraphs","split","lastParagraph","paragraphIndex","createSimpleContinuationPrompt","ensureDirectoryExists","dirPath","saveJson","data","writeFileSync","stringify","loadJson","defaultValue","readFileSync","saveText","loadText","findLatestFile","directory","fileNames","fileName","findFilesInDirectory","files","readdirSync","filter","file","test","formatTime","timeInMinutes","round","minutes","floor","seconds","formatDuration","remainingSeconds","hours","createProgressBar","ratio","validSource","width","filled","empty","bar","repeat","calculateMetrics","isSourceText","sourceMetrics","sourceWordCount","targetWordCount","sourceCharCount","targetCharCount","estimatedReadingTime","charCount","wordCount","word","readingTime","sourceW","sourceC","calculateMetricsForLanguage","language","effectiveLanguage","toLowerCase","MODEL_CONTEXT_LIMITS","default","prompts","targetLanguage","sourceLanguage","customInstructions","currentStep","systemPrompt","initialAnalysis","expressionExploration","toneAndCulturalDiscussion","titleAndInspirationExploration","firstTranslationAttempt","selfCritiqueAndRefinement","previousTranslation","furtherRefinement","finalTranslation","externalReviewSystem","externalReviewUser","translation","applyExternalFeedback","externalReview","continuationTranslation","continuationPoint","TranslationWorkflow","config","conversation","intermediatesDir","totalTokens","totalInputTokens","totalOutputTokens","estimatedCost","xmlProcessor","translationSteps","outputFiles","stepCounter","conversationJsonPath","conversationTextPath","metricsPath","translationMetrics","finalOutputPath","aiService","logger","spinnerStartTime","spinnerInterval","continuationAttempts","previousTranslationLength","minimumMeaningfulProgress","previousSourceLine","outputDir","originalFilename","originalExtension","tryResume","initializeNewConversation","historyData","metadata","step","lastLabel","stepKey","l","toUpperCase","stepNames","keys","sort","a","b","numA","parseInt","numB","stepNum","metricsData","source","set","saveConversationHistory","execute","inputPath","displaySourceMetrics","latestTranslationContent","startSpinnerWithTimer","initialAnalysisPrompt","analysisResponse","callAiService","analysisContent","analysisPath","expressionExplorationPrompt","expressionResponse","expressionContent","expressionPath","culturalAdaptationPrompt","culturalResponse","culturalContent","culturalPath","titleInspirationPrompt","titleResponse","titleContent","titlePath","firstTranslationPrompt","translationResponse","translationPath","translationContent","extractAndContinueTagContent","prevTranslationPath","prevTranslation","selfCritiquePrompt","critiqueResponse","improvedPath","improvedTranslation","secondRefinementPrompt","secondRefineResponse","furtherImprovedPath","furtherImprovedTranslation","estimatedSourceTokens","ceil","estimatedTranslationTokens","modelContextLimit","currentConversationTokens","reduce","total","resetThreshold","wouldExceedLimit","toLocaleString","finalTranslationPrompt","finalResponse","finalPath","externalReviewContent","skipExternalReview","finalTranslationPath","externalReviewPrompt","externalResponse","reviewPath","estimatedReviewTokens","refinedFinalTranslation","refinedPath","finalRefinementPrompt","refinedResponse","saveTranslationMetrics","toFixed","stopSpinner","saveLatestTranslationOnError","conversationWithMetadata","readableHistory","index","metricsObject","prompt","retryCount","isExternalReview","currentStepLabel","currentStepKey","stepName","unshift","manageConversationContext","updateCost","tps","dim","maxRetries","isContextLengthError","code","firstUserMessage","find","latestUserMessage","retryDelay","Promise","resolve","setTimeout","costResult","displayComparisonWithSource","wordCountRatio","charCountRatio","magenta","ratioValue","wordBar","translationFileOrder","latestFileFound","saveError","clearSpinnerInterval","setInterval","elapsedSeconds","clearInterval","stop","totalEstimatedTokens","prefixMap","prefix","limit","warningThreshold","tokenThreshold","usagePercentage","recentMessages","newEstimate","handleTranslationContinuation","forceCheck","completionCheck","needsContinuation","sourceLines","midpoint","simpleContinuationPrompt","continuationResponse","combinedTranslation","secondCheck","outputPath","closeTagRegex","hasOpenTag","hasCloseTag","debugPath","extractedContent","openTagIndex","possibleStart","possibleEnd","cleanTranslationContent","continuedContent","cleanedContent","completedContent","finalCleanedContent","contentWithoutTags","getFinalOutputPath","displayTokenEstimation","tokens","translate","cwd","undefined","workflow"],"mappings":"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