fix: resolve templ compile errors

This commit is contained in:
2026-04-20 17:36:52 +02:00
parent 45ce8c1aa4
commit 29c2e5fdb7
9 changed files with 41 additions and 37 deletions

View File

@@ -12,6 +12,8 @@ import (
"mal/integrations/jikan"
"mal/internal/db"
"mal/internal/middleware"
animecomponents "mal/web/components/anime"
watchcomponents "mal/web/components/watch"
"mal/web/templates"
)
@@ -164,7 +166,7 @@ func (h *Handler) HandleAnimeDetails(w http.ResponseWriter, r *http.Request) {
h.jikanClient.EnqueueAnimeFetchRetry(r.Context(), id, err)
if jikan.IsRetryableError(err) {
templates.AnimePending(id).Render(r.Context(), w)
animecomponents.Pending(id).Render(r.Context(), w)
return
}
@@ -220,7 +222,7 @@ func (h *Handler) HandleAPIAnime(w http.ResponseWriter, r *http.Request) {
writeInlineLoadError(w, "Failed to load relations.")
return
}
templates.AnimeRelationsList(relations).Render(r.Context(), w)
animecomponents.RelationsList(relations).Render(r.Context(), w)
case "recommendations":
recs, err := h.jikanClient.GetRecommendations(r.Context(), id, 12)
if err != nil {
@@ -228,7 +230,7 @@ func (h *Handler) HandleAPIAnime(w http.ResponseWriter, r *http.Request) {
writeInlineLoadError(w, "Failed to load recommendations.")
return
}
templates.AnimeRecommendations(recs).Render(r.Context(), w)
animecomponents.Recommendations(recs).Render(r.Context(), w)
case "episodes":
currentEpisode := r.URL.Query().Get("current")
episodes, err := h.getEpisodes(r.Context(), id)
@@ -237,7 +239,7 @@ func (h *Handler) HandleAPIAnime(w http.ResponseWriter, r *http.Request) {
writeInlineLoadError(w, "Failed to load episodes.")
return
}
templates.EpisodeList(episodes, currentEpisode, id).Render(r.Context(), w)
watchcomponents.EpisodeList(episodes, currentEpisode, id).Render(r.Context(), w)
default:
renderNotFoundPage(r, w)
}
@@ -261,7 +263,7 @@ func (h *Handler) HandleAPIEpisodes(w http.ResponseWriter, r *http.Request) {
return
}
templates.EpisodeList(episodes, currentEpisode, id).Render(r.Context(), w)
watchcomponents.EpisodeList(episodes, currentEpisode, id).Render(r.Context(), w)
}
func (h *Handler) getEpisodes(ctx context.Context, animeID int) ([]jikan.Episode, error) {

View File

@@ -17,6 +17,7 @@ import (
"mal/integrations/jikan"
"mal/internal/db"
"mal/internal/middleware"
"mal/web/shared"
"mal/web/templates"
)
@@ -96,8 +97,8 @@ func (h *Handler) HandleWatchPage(w http.ResponseWriter, r *http.Request) {
return
}
// Convert playback.WatchPageData to templates.WatchPageData
pageData := templates.WatchPageData{
// Convert playback.WatchPageData to shared.WatchPageData
pageData := shared.WatchPageData{
MalID: data.MalID,
Title: data.Title,
TitleEnglish: anime.TitleEnglish,
@@ -155,17 +156,17 @@ func playbackTitleCandidates(anime jikan.Anime) []string {
return out
}
func convertModeSources(sources map[string]ModeSource) map[string]templates.ModeSource {
result := make(map[string]templates.ModeSource, len(sources))
func convertModeSources(sources map[string]ModeSource) map[string]shared.ModeSource {
result := make(map[string]shared.ModeSource, len(sources))
for k, v := range sources {
subtitles := make([]templates.SubtitleItem, len(v.Subtitles))
subtitles := make([]shared.SubtitleItem, len(v.Subtitles))
for i, s := range v.Subtitles {
subtitles[i] = templates.SubtitleItem{
subtitles[i] = shared.SubtitleItem{
Lang: s.Lang,
Token: s.Token,
}
}
result[k] = templates.ModeSource{
result[k] = shared.ModeSource{
Token: v.Token,
Subtitles: subtitles,
}
@@ -173,10 +174,10 @@ func convertModeSources(sources map[string]ModeSource) map[string]templates.Mode
return result
}
func convertSegments(segments []SkipSegment) []templates.SkipSegment {
result := make([]templates.SkipSegment, len(segments))
func convertSegments(segments []SkipSegment) []shared.SkipSegment {
result := make([]shared.SkipSegment, len(segments))
for i, s := range segments {
result[i] = templates.SkipSegment{
result[i] = shared.SkipSegment{
Type: s.Type,
Start: s.Start,
End: s.End,

View File

@@ -10,6 +10,7 @@ import (
"mal/internal/db"
"mal/internal/middleware"
"mal/web/components/watchlist"
"mal/web/templates"
)
@@ -84,7 +85,7 @@ func (h *Handler) HandleUpdateWatchlist(w http.ResponseWriter, r *http.Request)
return
}
templates.WatchlistDropdown(int(animeID), animeTitle, animeTitleEnglish, animeTitleJapanese, animeImage, status, airing).Render(r.Context(), w)
watchlist.WatchlistDropdown(int(animeID), animeTitle, animeTitleEnglish, animeTitleJapanese, animeImage, status, airing).Render(r.Context(), w)
}
func (h *Handler) HandleDeleteWatchlist(w http.ResponseWriter, r *http.Request) {
@@ -128,7 +129,7 @@ func (h *Handler) HandleDeleteWatchlist(w http.ResponseWriter, r *http.Request)
airing = anime.Airing.Bool
}
templates.WatchlistDropdown(int(animeID), anime.TitleOriginal, title, "", anime.ImageUrl, "", airing).Render(r.Context(), w)
watchlist.WatchlistDropdown(int(animeID), anime.TitleOriginal, title, "", anime.ImageUrl, "", airing).Render(r.Context(), w)
}
func (h *Handler) HandleGetWatchlist(w http.ResponseWriter, r *http.Request) {