File size: 674 Bytes
3d4392e
 
0d218b1
3d4392e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import { NextResponse, NextRequest } from "next/server"
import queryString from "query-string"

import { generateClap } from "../../generators/clap/generateClap"

export async function GET(req: NextRequest) {

const qs = queryString.parseUrl(req.url || "")
const query = (qs || {}).query

let prompt = ""
  try {
    prompt = decodeURIComponent(query?.p?.toString() || "").trim()
  } catch (err) {}
  if (!prompt) {
    return NextResponse.json({ error: 'no prompt provided' }, { status: 400 });
  }

  const blob = await generateClap({ prompt })

  return new NextResponse(blob, {
    status: 200,
    headers: new Headers({ "content-type": "application/x-gzip" }),
  })
}