- detectAllHeaderSets() finds multiple header groups per row (left 1st / right 15th) - isBlankRowForHeaderSet() checks blanks per column range for dual layouts - parseSheetRows() scans rows 0-4 for header row, processes each set independently - analyzeRow() computes due_day from date/label/pattern with fallback to defaultDueDay - Cell type validation allows 's' (shared formula) type - Non-numeric amounts (auto, double pay, past due) become detected labels - Day patterns (1st, 15th, 24th) parsed as due_day values - Security: bounds validation in isBlankRowForHeaderSet, anchored regex, label sanitization |
||
|---|---|---|
| .. | ||
| auditService.js | ||
| authService.js | ||
| backupScheduler.js | ||
| backupService.js | ||
| billsService.js | ||
| cleanupService.js | ||
| notificationService.js | ||
| oidcService.js | ||
| spreadsheetImportService.js | ||
| statusRuntime.js | ||
| statusService.js | ||
| userDbImportService.js | ||