Yōten: A social tracker for your language learning journey built on the atproto.

refactor: move computed data code to function to simplify visuals

Signed-off-by: brookjeynes <me@brookjeynes.dev>

authored by brookjeynes.dev and committed by Tangled a7acddca 54f50f46

Changed files
+21 -17
internal
server
+21 -17
internal/server/app.go
··· 97 97 return nil, fmt.Errorf("failed to start jetstream watcher: %w", err) 98 98 } 99 99 100 - // -- Computed data 100 + computed := computeData() 101 + 102 + state := &Server{ 103 + Db: d, 104 + Oauth: oauth, 105 + Config: config, 106 + Posthog: posthog, 107 + IdResolver: idResolver, 108 + Session: sess, 109 + ComputedData: computed, 110 + } 111 + 112 + return state, nil 113 + } 114 + 115 + func computeData() ComputedData { 101 116 sortedLanguages := make([]db.Language, 0, len(db.Languages)) 102 117 for _, l := range db.Languages { 103 118 sortedLanguages = append(sortedLanguages, l) ··· 129 144 slices.SortFunc(sortedReactions, func(a, b db.Reaction) int { 130 145 return cmp.Compare(a.ID, b.ID) 131 146 }) 132 - // -- 133 147 134 - state := &Server{ 135 - Db: d, 136 - Oauth: oauth, 137 - Config: config, 138 - Posthog: posthog, 139 - IdResolver: idResolver, 140 - Session: sess, 141 - ComputedData: ComputedData{ 142 - SortedLanguages: sortedLanguages, 143 - SortedCategories: sortedCategories, 144 - SortedResourceTypes: sortedResourceTypes, 145 - SortedReactions: sortedReactions, 146 - }, 148 + return ComputedData{ 149 + SortedLanguages: sortedLanguages, 150 + SortedCategories: sortedCategories, 151 + SortedResourceTypes: sortedResourceTypes, 152 + SortedReactions: sortedReactions, 147 153 } 148 - 149 - return state, nil 150 154 } 151 155 152 156 func (s *Server) HandleIndexPage(w http.ResponseWriter, r *http.Request) {