1package app23import (4 "time"56 "github.com/FelineStateMachine/puzzletea/daily"7 sessionflow "github.com/FelineStateMachine/puzzletea/session"8 "github.com/FelineStateMachine/puzzletea/store"910 tea "charm.land/bubbletea/v2"11)1213func (m model) handleDailyPuzzle() (tea.Model, tea.Cmd) {14 today := time.Now()15 name := daily.Name(today)1617 rec, err := m.store.GetDailyGame(name)18 if err != nil {19 return m.setErrorf("Could not check today’s daily puzzle: %v", err), nil20 }21 if rec != nil {22 var resumed bool23 m, resumed = m.importAndActivateRecord(*rec)24 if resumed {25 if err := sessionflow.ResumeAbandonedDeterministicRecord(m.store, rec); err != nil {26 m = m.setErrorf("%v", err)27 }28 }29 return m, nil30 }3132 spawner, gameType, modeTitle := daily.Mode(today)33 if spawner == nil {34 return m.setErrorf("No daily puzzle is configured for %s", today.Format("2006-01-02")), nil35 }3637 rng := daily.RNG(today)38 cmd := newSessionController(&m).startSeededSpawn(spawner, rng, spawnRequest{39 source: spawnSourceDaily,40 name: name,41 gameType: gameType,42 modeTitle: modeTitle,43 run: store.DailyRunMetadata(today),44 returnState: playMenuView,45 exitState: mainMenuView,46 })47 return m, cmd48}