MCPcopy
hub / github.com/joschan21/digitalhippo / start

Function start

src/server.ts:34–107  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

32}
33
34const start = async () => {
35 const webhookMiddleware = bodyParser.json({
36 verify: (req: WebhookRequest, _, buffer) => {
37 req.rawBody = buffer
38 },
39 })
40
41 app.post(
42 '/api/webhooks/stripe',
43 webhookMiddleware,
44 stripeWebhookHandler
45 )
46
47 const payload = await getPayloadClient({
48 initOptions: {
49 express: app,
50 onInit: async (cms) => {
51 cms.logger.info(`Admin URL: ${cms.getAdminURL()}`)
52 },
53 },
54 })
55
56 if (process.env.NEXT_BUILD) {
57 app.listen(PORT, async () => {
58 payload.logger.info(
59 'Next.js is building for production'
60 )
61
62 // @ts-expect-error
63 await nextBuild(path.join(__dirname, '../'))
64
65 process.exit()
66 })
67
68 return
69 }
70
71 const cartRouter = express.Router()
72
73 cartRouter.use(payload.authenticate)
74
75 cartRouter.get('/', (req, res) => {
76 const request = req as PayloadRequest
77
78 if (!request.user)
79 return res.redirect('/sign-in?origin=cart')
80
81 const parsedUrl = parse(req.url, true)
82 const { query } = parsedUrl
83
84 return nextApp.render(req, res, '/cart', query)
85 })
86
87 app.use('/cart', cartRouter)
88 app.use(
89 '/api/trpc',
90 trpcExpress.createExpressMiddleware({
91 router: appRouter,

Callers 1

server.tsFile · 0.85

Calls 2

getPayloadClientFunction · 0.90
parseFunction · 0.85

Tested by

no test coverage detected