Monorepo for Tangled tangled.org
5

Configure Feed

Select the types of activity you want to include in your feed.

1package pulls 2 3import ( 4 "net/http" 5 6 "github.com/go-chi/chi/v5" 7 "tangled.org/core/appview/middleware" 8) 9 10func (s *Pulls) Router(mw *middleware.Middleware) http.Handler { 11 r := chi.NewRouter() 12 r.With(middleware.Paginate).Get("/", s.RepoPulls) 13 r.With(middleware.AuthMiddleware(s.oauth)).Route("/new", func(r chi.Router) { 14 r.Get("/", s.NewPull) 15 r.Get("/refresh", s.RefreshCompose) 16 r.Post("/refresh", s.RefreshCompose) 17 r.Post("/", s.NewPull) 18 }) 19 20 r.Route("/{pull}", func(r chi.Router) { 21 r.Use(mw.ResolvePull()) 22 r.Get("/", s.RepoSinglePull) 23 r.Get("/opengraph", s.PullOpenGraphSummary) 24 25 r.Route("/round/{round}", func(r chi.Router) { 26 r.Get("/", s.RepoPullPatch) 27 r.Get("/interdiff", s.RepoPullInterdiff) 28 r.Get("/actions", s.PullActions) 29 r.Get("/comment", s.PullComment) 30 }) 31 32 r.Route("/round/{round}.patch", func(r chi.Router) { 33 r.Get("/", s.RepoPullPatchRaw) 34 }) 35 36 r.Group(func(r chi.Router) { 37 r.Use(middleware.AuthMiddleware(s.oauth)) 38 r.Route("/resubmit", func(r chi.Router) { 39 r.Get("/", s.ResubmitPull) 40 r.Post("/", s.ResubmitPull) 41 }) 42 // permissions here require us to know pull author 43 // it is handled within the route 44 r.Post("/close", s.ClosePull) 45 r.Post("/reopen", s.ReopenPull) 46 // collaborators only 47 r.Group(func(r chi.Router) { 48 r.Use(mw.RepoPermissionMiddleware("repo:push")) 49 r.Post("/merge", s.MergePull) 50 // maybe lock, etc. 51 }) 52 }) 53 }) 54 return r 55 56}