Spaces:
Running
Running
| import re | |
| with open('D:/workAI/OpenCode/WorkSpace/backend-service/server.js', 'r', encoding='utf-8') as f: | |
| content = f.read() | |
| # Remove all AXIS-DEBUG console.log lines (these are in generated HTML, run in browser) | |
| # Match pattern: console.log('[AXIS-DEBUG]...'); | |
| # Handle both leading spaces and inline cases | |
| content = re.sub(r" console\.log\('\[AXIS-DEBUG\].*?\);\n", "", content) | |
| content = re.sub(r" console\.log\('\[AXIS-DEBUG\].*?\);\n", "", content) | |
| content = re.sub(r" console\.log\('\[AXIS-DEBUG\].*?\);\n", "", content) | |
| # Handle inline AXIS-DEBUG (e.g., if (x) { y; console.log('[AXIS-DEBUG]...'); }) | |
| content = re.sub(r"; console\.log\('\[AXIS-DEBUG\].*?'\);", "", content) | |
| # Handle if with only AXIS-DEBUG: if (cond) console.log('[AXIS-DEBUG]...'); | |
| content = re.sub(r" if \(.*?\) console\.log\('\[AXIS-DEBUG\].*?\);\n", "", content) | |
| # Remove _rawToFormatted dead code block | |
| # Find the block from comment to the end of forEach | |
| pattern = r" // .*?Build format map from chartData.*?\n var _rawToFormatted = \{\};.*?}\n\}\);\n\n // Build series elements" | |
| content = re.sub(pattern, " // Build series elements", content, flags=re.DOTALL) | |
| # Remove verbose PIE DATA logging | |
| content = content.replace( | |
| " if (chartType === 'pie' || chartType === 'donut') {\n console.log(`[WIDGET] renderChatGPTChart PIE DATA: data=${JSON.stringify(data)}, formattedData=${JSON.stringify(formattedData)}`);\n }", | |
| "" | |
| ) | |
| # Remove verbose nameKey/valueKey logging | |
| content = content.replace( | |
| " if (nameKey) console.log(`[WIDGET] renderChatGPTChart: nameKey=${nameKey}, valueKey=${valueKey}`);", | |
| "" | |
| ) | |
| # Remove duplicate COLORS | |
| old_colors = """ const COLORS = [ | |
| '#339CFF', '#40C977', '#FF8549', '#FFD240', | |
| '#339CFF', '#40C977', '#FF8549', '#FFD240', | |
| '#339CFF', '#40C977', '#FF8549', '#FFD240', | |
| ];""" | |
| new_colors = """ const COLORS = ['#339CFF', '#40C977', '#FF8549', '#FFD240'];""" | |
| if old_colors in content: | |
| content = content.replace(old_colors, new_colors) | |
| # Remove dead baseWaitTime/sizeWaitTime/totalWaitTime | |
| content = re.sub(r"\n const baseWaitTime = imgCount > 0.*?\n const sizeWaitTime = imgSizeMB.*?\n const totalWaitTime = Math\.min.*?\n", "\n", content) | |
| # Remove redundant %%INJECTED_SCRIPTS%% placeholder | |
| content = content.replace(".replace('%%INJECTED_SCRIPTS%%', '');", ";") | |
| # Remove dead pieActualDataKey | |
| content = content.replace("var pieActualDataKey = valueKey || chartSeries[0]?.dataKey || 'value';\n", "") | |
| # Verify critical functions still present | |
| if 'buildChatGPTChartHtml' in content and 'render_charts' in content and 'isAnimationActive: false' in content: | |
| with open('D:/workAI/OpenCode/WorkSpace/backend-service/server.js', 'w', encoding='utf-8') as f: | |
| f.write(content) | |
| print("SUCCESS: All cleanup applied") | |
| else: | |
| print("ERROR: Critical content missing! NOT saving.") | |