jules / patch_app_clean.cjs
GraziePrego's picture
Upload folder using huggingface_hub
34450be verified
const fs = require('fs');
let content = fs.readFileSync('App.tsx', 'utf8');
// There are extra lines left behind from the bad regex replace earlier
// Let's replace EVERYTHING from the end of SettingsModal to the beginning of NewSessionModal.
const startRegex = /<SettingsModal[^>]*\/>/s;
const endRegex = /<NewSessionModal/s;
const startMatch = startRegex.exec(content);
const endMatch = endRegex.exec(content);
if (startMatch && endMatch) {
const startIndex = startMatch.index + startMatch[0].length;
const endIndex = endMatch.index;
const replacement = `
<TemplateFillerModal
note={selectedNoteForTemplate}
isOpen={templateModalOpen}
onClose={() => {
setTemplateModalOpen(false);
if (activeWorkflow && activeWorkflow.stepIndex > 0) {
if (window.confirm('Cancel the rest of the workflow?')) {
setActiveWorkflow(null);
}
} else {
setActiveWorkflow(null);
}
}}
onSubmit={async (text) => {
if (activeWorkflow && activeWorkflow.stepIndex > 0 && activeWorkflow.sessionId) {
const delay = activeWorkflow.workflow.steps[activeWorkflow.stepIndex].delayMinutes;
queueWorkflowStep(text, activeWorkflow.sessionId, delay);
const nextIndex = activeWorkflow.stepIndex + 1;
if (nextIndex < activeWorkflow.workflow.steps.length) {
setActiveWorkflow({ ...activeWorkflow, stepIndex: nextIndex });
const nextTemplate = notes.find(n => n.id === activeWorkflow.workflow.steps[nextIndex].templateId);
if (nextTemplate) {
setTimeout(() => handleUseTemplate(nextTemplate), 100);
}
} else {
setActiveWorkflow(null);
setTemplateModalOpen(false);
}
} else {
await handleTemplateSubmitted(text, false);
setTemplateModalOpen(false);
if (!activeWorkflow) {
setInputText(text);
setActiveTab('chat');
if (window.innerWidth < 1024) {
setTemplatesOpen(false);
setSidebarOpen(false);
}
}
}
}}
onStartNewChat={(text) => {
if (activeWorkflow) {
handleTemplateSubmitted(text, true);
}
handleStartNewChatFromTemplate(text);
}}
hfProfileData={hfProfiles[currentAgent.id]}
workflowContext={activeWorkflow ? {
stepIndex: activeWorkflow.stepIndex,
totalSteps: activeWorkflow.workflow.steps.length,
delayMinutes: activeWorkflow.workflow.steps[activeWorkflow.stepIndex].delayMinutes
} : undefined}
/>
`;
const newContent = content.substring(0, startIndex) + replacement + content.substring(endIndex);
fs.writeFileSync('App.tsx', newContent);
console.log('Fixed completely.');
}