Refactor EOI management into dedicated component

Extract EOI links and generation functionality from InterestDetailsModal
into a new reusable EOISection component. This improves code organization
and maintainability while adding debounce support for form submissions.

- Create new EOISection.vue component for EOI management
- Remove inline EOI links section from InterestDetailsModal
- Add debounce utility for form submission handling
- Update email generation and thread fetching logic
- Update related types and utilities
This commit is contained in:
2025-06-10 00:37:43 +02:00
parent 76d04a1e2a
commit d9fb94a76c
9 changed files with 356 additions and 88 deletions

View File

@@ -131,6 +131,37 @@ NUXT_DOCUMENSO_API_KEY=your-actual-api-key
NUXT_DOCUMENSO_BASE_URL=https://signatures.portnimara.dev
```
### 12. EOI Management System
- **Added EOI Section Component**: New component to manage EOI document generation and signature links
- **Features Implemented**:
- Generate EOI button that creates documents via Documenso API
- Checks for existing EOI before generating new one (prevents duplicates)
- Displays all 3 signature links (Client, CC, Developer) with copy-to-clipboard functionality
- Shows EOI status badge (Awaiting Further Details, Waiting for Signatures, Signed)
- Regenerate option for non-signed documents
- **Auto-Updates on EOI Generation**:
- EOI Status → "Waiting for Signatures"
- Sales Process Level → "LOI and NDA Sent"
- EOI Time Sent → Current timestamp
- Extra Comments → Appends "EOI Sent [timestamp]"
- **Database Storage**: Links stored in new columns:
- `Signature Link Client`
- `Signature Link CC`
- `Signature Link Developer`
### 13. Auto-Save Functionality
- **Implemented**: Interest details now auto-save after 2 seconds of inactivity
- **Features**:
- Debounced save to prevent excessive API calls
- Silent save without success notifications
- Automatically triggers parent refresh to keep data in sync
- Cancels pending saves on component unmount
### 14. IMAP BCC Search Fix
- **Problem**: IMAP search was failing with "Cannot read properties of null"
- **Cause**: BCC search criteria not supported by all IMAP servers
- **Solution**: Removed BCC from search criteria, now only searches FROM, TO, and CC fields
## How It Works Now
1. **Email Session Management**: