()
| 9862 | ); |
| 9863 | |
| 9864 | results.push({ filePath, success: true, action: 'created' }); |
| 9865 | successCount++; |
| 9866 | } else { |
| 9867 | // Update existing model - overwrite all fields |
| 9868 | db.prepare(` |
| 9869 | UPDATE models |
| 9870 | SET designer = ?, parentModel = ?, notes = ?, license = ? |
| 9871 | WHERE filePath = ? |
| 9872 | `).run( |
| 9873 | filteredMetadata.designer || null, |
| 9874 | filteredMetadata.parentModel || null, |
| 9875 | filteredMetadata.notes || null, |
| 9876 | filteredMetadata.license || null, |
| 9877 | filePath |
| 9878 | ); |
| 9879 | |
| 9880 | results.push({ filePath, success: true, action: 'updated' }); |
| 9881 | successCount++; |
| 9882 | } |
| 9883 | } else { |
| 9884 | results.push({ filePath, success: false, error: 'No metadata found in 3MF file' }); |
| 9885 | noMetadataCount++; |
| 9886 | } |
| 9887 | } catch (error) { |
| 9888 | console.error(`Error processing ${filePath}:`, error); |
| 9889 | results.push({ filePath, success: false, error: error.message }); |
| 9890 | errorCount++; |
| 9891 | } |
| 9892 | } |
| 9893 | |
| 9894 | // Refresh the grid |
| 9895 | event.sender.send('refresh-grid'); |
| 9896 | |
| 9897 | // Show completion message |
| 9898 | let message = ''; |
| 9899 | if (successCount > 0) { |
| 9900 | message = `Successfully pulled metadata from ${successCount} file(s).`; |
no outgoing calls
no test coverage detected