appview: add placeholder for pulls
Anirudh Oppiliappan 3 days ago 4 files (+44, -0)
MODIFIED
appview/pages/pages.go
MODIFIED
appview/pages/pages.go
@@ -396,6 +396,17 @@ params.Active = "issues"return p.executeRepo("repo/issues/new", w, params)}+type RepoPullsParams struct {+ LoggedInUser *auth.User+ RepoInfo RepoInfo+ Active string+}++func (p *Pages) RepoPulls(w io.Writer, params RepoPullsParams) error {+ params.Active = "pulls"+ return p.executeRepo("repo/pulls/pulls", w, params)+}+func (p *Pages) Static() http.Handler {sub, err := fs.Sub(files, "static")if err != nil {
@@ -0,0 +1,7 @@+{{ define "title" }}pulls · {{ .RepoInfo.FullName }}{{ end }}++{{ define "repoContent" }}+ <p class="text-gray-400">+ Support for pull requests is actively being worked on. Stay tuned!+ </p>+{{ end }}
MODIFIED
appview/state/repo.go
MODIFIED
appview/state/repo.go
@@ -873,6 +873,28 @@ return}}+func (s *State) RepoPulls(w http.ResponseWriter, r *http.Request) {+ user := s.auth.GetUser(r)+ f, err := fullyResolvedRepo(r)+ if err != nil {+ log.Println("failed to get repo and knot", err)+ return+ }++ switch r.Method {+ case http.MethodGet:+ s.pages.RepoPulls(w, pages.RepoPullsParams{+ LoggedInUser: user,+ RepoInfo: pages.RepoInfo{+ Name: f.RepoName,+ OwnerDid: f.OwnerDid(),+ OwnerHandle: f.OwnerHandle(),+ SettingsAllowed: settingsAllowed(s, user, f),+ },+ })+ }+}+func fullyResolvedRepo(r *http.Request) (*FullyResolvedRepo, error) {repoName := chi.URLParam(r, "repo")knot, ok := r.Context().Value("knot").(string)
MODIFIED
appview/state/state.go
MODIFIED
appview/state/state.go
@@ -813,6 +813,10 @@ r.Post("/{issue}/close", s.CloseIssue)r.Post("/{issue}/reopen", s.ReopenIssue)})+ r.Route("/pulls", func(r chi.Router) {+ r.Get("/", s.RepoPulls)+ })+// These routes get proxied to the knotr.Get("/info/refs", s.InfoRefs)r.Post("/git-upload-pack", s.UploadPack)