This major update implements a complete user annotation system: ## 🎯 New Features - User notes with position tracking for media items - Text highlighting with customizable colors - Highlight-note associations for detailed annotations - Full CRUD API for both notes and highlights - Backward compatibility with existing ebook endpoints ## 📊 Database Changes - Add media_notes table (id, media_item_id, user_id, content, position, timestamps) - Add media_highlights table (id, media_item_id, user_id, selection_text, start/end_position, color, optional note_id) - Add foreign key relationships with CASCADE deletes - Add proper indexes for performance - Add database schema views for ebook backward compatibility ## 🔧 API Implementation - Complete REST API endpoints for notes and highlights - JWT authentication with proper middleware bypass - Request validation with meaningful error responses - UUID validation and type safety - Support for hex color codes in highlights ## 🧪 Testing & Documentation - Comprehensive test suite covering authentication scenarios - Bruno API collection for manual testing - Detailed testing guide with troubleshooting - Updated documentation in README and TESTING.md ## 📁 Backward Compatibility - Existing ebook endpoints continue working - Database views maintain API contracts - No breaking changes for existing integrations The annotation system is now fully functional and ready for production use.
19 lines
1.1 KiB
XML
19 lines
1.1 KiB
XML
<?xml version='1.0' encoding='utf-8'?>
|
|
<package xmlns="http://www.idpf.org/2007/opf" unique-identifier="uuid_id" version="2.0">
|
|
<metadata xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:opf="http://www.idpf.org/2007/opf">
|
|
<dc:identifier opf:scheme="calibre" id="calibre_id">1272</dc:identifier>
|
|
<dc:identifier opf:scheme="uuid" id="uuid_id">8437360f-a376-40d7-baea-357ef55744cf</dc:identifier>
|
|
<dc:title>The Voyage and Shipwreck of St. Paul</dc:title>
|
|
<dc:creator opf:file-as="Smith, James" opf:role="aut">James Smith</dc:creator>
|
|
<dc:contributor opf:file-as="calibre" opf:role="bkp">calibre (8.16.2) [https://calibre-ebook.com]</dc:contributor>
|
|
<dc:date>0101-01-01T00:00:00+00:00</dc:date>
|
|
<dc:publisher>Longmans, Green</dc:publisher>
|
|
<dc:language>eng</dc:language>
|
|
<meta name="calibre:timestamp" content="2026-01-26T18:33:42.428823+00:00"/>
|
|
<meta name="calibre:title_sort" content="Voyage and Shipwreck of St. Paul, The"/>
|
|
</metadata>
|
|
<guide>
|
|
<reference type="cover" title="Cover" href="cover.jpg"/>
|
|
</guide>
|
|
</package>
|