28 Commits

Author SHA1 Message Date
Beingpax
60125c316b Migrate dictionary data from UserDefaults to SwiftData
Migrates vocabulary words and word replacements from UserDefaults to SwiftData for better data management and persistence.

Changes:
- Create VocabularyWord and WordReplacement SwiftData models
- Add dual ModelConfiguration setup (default.store for transcripts, dictionary.store for dictionary data)
- Implement DictionaryMigrationService for one-time UserDefaults→SwiftData migration
- Rename "Correct Spellings" to "Vocabulary" for clearer terminology
- Update all dictionary views to use @Query instead of manager classes
- Update all services to fetch from SwiftData using FetchDescriptor
- Enhance word replacement duplicate detection (now checks during add AND edit)
- Update import/export services to work with SwiftData
- Preserve all existing functionality with improved data integrity

Technical details:
- Separate store files: default.store (transcripts) + dictionary.store (vocabulary + replacements)
- Migration flag: "HasMigratedDictionaryToSwiftData_v2"
- All CRUD operations properly implemented with duplicate detection
2025-12-28 12:09:43 +05:45
Beingpax
2a9bf12e0e Remove unused isEnabled property from VocabularyWord 2025-12-27 21:20:26 +05:45
Beingpax
01c12cdd2d Refactor word replacements with inline UI 2025-12-27 20:19:33 +05:45
Beingpax
a363745f36 Prevent duplicate word replacements 2025-12-27 18:24:33 +05:45
Beingpax
fe842de807 Rename Correct Spellings to Vocabulary and update related terminology 2025-12-27 15:27:00 +05:45
Beingpax
7d12c50fcb Rename dictionary context to custom vocabulary 2025-11-14 09:02:12 +05:45
Beingpax
cf8d821436 Implement Dictionary Import export support for iOS companion app(v1) 2025-11-07 11:31:41 +05:45
Beingpax
5f59b61ee8 Remove toggle switch for word replacements 2025-11-07 10:47:25 +05:45
Beingpax
dc925e0ebd A-Z sorting for dictionary correct spellings 2025-11-07 10:29:27 +05:45
Beingpax
7f729a9021 Add ability to sort dictionary items for text replacement 2025-10-04 16:21:16 +05:45
Beingpax
011b310823 Fix dictionary replacement trimming issue 2025-09-16 15:01:05 +05:45
Beingpax
61ba16ed92 Lable correction 2025-09-12 12:17:21 +05:45
Beingpax
7161bc3f71 Improved the comma seperated replacement values to be consolidated 2025-09-12 11:58:26 +05:45
Beingpax
f1fb2168c2 Added support for comma-separated words for word replacement. 2025-09-12 11:21:00 +05:45
Beingpax
dc3355b91c Support comma-separated dictionary word input 2025-08-30 00:19:37 +05:45
Beingpax
edd3145bf3 Remove toggle from dictionary items 2025-08-23 23:04:08 +05:45
Beingpax
73bb3e765a Remove dictionary item dependency on local Whisper model 2025-08-23 22:15:13 +05:45
Beingpax
0aa8255afe Update UI for dictionary spelling correction 2025-08-23 16:48:34 +05:45
Beingpax
9bf166ae2a Add Whisper models note to dictionary 2025-08-02 18:35:41 +05:45
Beingpax
2a9ead63de Add edit functionality to word replacements 2025-08-02 00:43:15 +05:45
Beingpax
71f4190f39 Word Replacements now default and first 2025-07-23 10:34:08 +05:45
Beingpax
8c44efad64 Consistent background card 2025-06-30 11:27:45 +05:45
Beingpax
8e4b8ffee1 Enhance word replacement functionality 2025-06-24 18:51:07 +05:45
Beingpax
147daa5f5f Revamp word replacement with direct regex implementation 2025-03-18 10:47:08 +05:45
Beingpax
e45112cfd7 refactor: migrate dictionary functionality to WhisperPrompt 2025-03-03 16:23:21 +05:45
Beingpax
b5773b38a1 Multiple improvements: Removed migration code, updated sound files, improved prompt templates 2025-02-25 11:50:50 +05:45
Beingpax
3aec3b369b fix: improve word replacement precision and prompt handling - Enhanced word replacement logic, added examples, fixed prompt state management 2025-02-24 18:58:16 +05:45
Beingpax
76a154706c Initial commit: Open-sourcing VoiceInk 2025-02-22 11:52:41 +05:45