Add template data types for Phase 9 frontend features: - ProgressItemData: For reading progress visualization with sync source - UnlinkedBookData: For unmatched books requiring manual linking - PotentialMatchData: For book matching suggestions - DeviceShelfMappingData: For collection-to-shelf mappings Also adds Theme field to User type for theme support.
126 lines
2.3 KiB
Go
126 lines
2.3 KiB
Go
package templates
|
|
|
|
type User struct {
|
|
ID string
|
|
Username string
|
|
Email string
|
|
Role string
|
|
Theme string
|
|
}
|
|
|
|
type PageData struct {
|
|
User User
|
|
CurrentPage string
|
|
}
|
|
|
|
type CollectionData struct {
|
|
ID string
|
|
Name string
|
|
Description string
|
|
Color string
|
|
Icon string
|
|
}
|
|
|
|
type CollectionDetailData struct {
|
|
ID string
|
|
Name string
|
|
Description string
|
|
Color string
|
|
Icon string
|
|
}
|
|
|
|
type BookData struct {
|
|
MediaItemID string
|
|
Title string
|
|
Author string
|
|
CoverImagePath string
|
|
}
|
|
|
|
type DeviceData struct {
|
|
ID string
|
|
DeviceName string
|
|
DeviceType string
|
|
SyncEnabled bool
|
|
AutoSync bool
|
|
SyncFrequency int32
|
|
LastSync string
|
|
LastSeen string
|
|
}
|
|
|
|
type PendingRegistrationData struct {
|
|
RegistrationID string
|
|
DeviceName string
|
|
DeviceType string
|
|
ExpiresAt string
|
|
}
|
|
|
|
type ConflictData struct {
|
|
ID string
|
|
MediaItemID string
|
|
MediaItemTitle string
|
|
ConflictType string
|
|
ResolutionStatus string
|
|
CreatedAt string
|
|
ResolutionData map[string]interface{}
|
|
ResolvedBy string
|
|
ResolvedAt string
|
|
}
|
|
|
|
type QueueItemData struct {
|
|
ID string
|
|
DeviceID string
|
|
DeviceName string
|
|
DeviceType string
|
|
SyncType string
|
|
Status string
|
|
Priority int32
|
|
Attempts int32
|
|
CreatedAt string
|
|
}
|
|
|
|
type DeviceShelfMappingData struct {
|
|
ID string
|
|
CollectionID string
|
|
CollectionName string
|
|
DeviceShelfName string
|
|
SyncDirection string
|
|
CreatedAt string
|
|
}
|
|
|
|
type ProgressItemData struct {
|
|
MediaItemID string
|
|
Title string
|
|
Author string
|
|
CoverImagePath string
|
|
CurrentPage int32
|
|
TotalPages int32
|
|
ProgressPercentage float64
|
|
LastUpdated string
|
|
DeviceName string
|
|
DeviceType string
|
|
DeviceIcon string
|
|
EpubCFI string
|
|
}
|
|
|
|
type UnlinkedBookData struct {
|
|
ProgressID string
|
|
DeviceID string
|
|
DeviceType string
|
|
DeviceName string
|
|
FilePath string
|
|
SHA256 string
|
|
TitleFromDevice string
|
|
LastSyncTime string
|
|
ConfidenceScore float64
|
|
PotentialMatches []PotentialMatchData
|
|
}
|
|
|
|
type PotentialMatchData struct {
|
|
MediaItemID string
|
|
Title string
|
|
Author string
|
|
CoverImagePath string
|
|
MatchMethod string
|
|
Confidence float64
|
|
}
|