mirror of
https://github.com/get-drexa/drive.git
synced 2026-02-02 13:11:18 +00:00
feat: migrate to OpenAPI 3.0 with oneOf unions
- Add swagger2openapi conversion step to generate OpenAPI 3.0 - Add patch-openapi.ts script to inject oneOf discriminated unions - Update docs server to embed static openapi.json - Update moveItemsToDirectory response to use oneOf for items - Add docs/README.md documenting the pipeline - Use bun instead of node for scripts
This commit is contained in:
@@ -1,18 +1,20 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"embed"
|
||||
"flag"
|
||||
"fmt"
|
||||
"log"
|
||||
"os"
|
||||
|
||||
_ "github.com/get-drexa/drexa/docs"
|
||||
"github.com/gofiber/fiber/v2"
|
||||
"github.com/gofiber/fiber/v2/middleware/cors"
|
||||
"github.com/gofiber/fiber/v2/middleware/logger"
|
||||
"github.com/swaggo/swag"
|
||||
)
|
||||
|
||||
//go:embed openapi.json
|
||||
var openapiSpec embed.FS
|
||||
|
||||
func main() {
|
||||
port := flag.Int("port", 8081, "port to listen on")
|
||||
apiURL := flag.String("api-url", "http://localhost:8080", "base URL of the API server")
|
||||
@@ -64,11 +66,11 @@ func main() {
|
||||
app.Get("/openapi.json", func(c *fiber.Ctx) error {
|
||||
c.Set("Content-Type", "application/json")
|
||||
c.Set("Access-Control-Allow-Origin", "*")
|
||||
doc, err := swag.ReadDoc()
|
||||
doc, err := openapiSpec.ReadFile("openapi.json")
|
||||
if err != nil {
|
||||
return c.Status(fiber.StatusInternalServerError).SendString(err.Error())
|
||||
}
|
||||
return c.SendString(doc)
|
||||
return c.Send(doc)
|
||||
})
|
||||
|
||||
// Health check
|
||||
@@ -81,4 +83,3 @@ func main() {
|
||||
|
||||
log.Fatal(app.Listen(fmt.Sprintf(":%d", *port)))
|
||||
}
|
||||
|
||||
|
||||
1890
apps/backend/cmd/docs/openapi.json
Normal file
1890
apps/backend/cmd/docs/openapi.json
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user