adonis-autoswagger icon indicating copy to clipboard operation
adonis-autoswagger copied to clipboard

Error on accessing localhost:3333/swagger

Open GilTRipper opened this issue 8 months ago • 5 comments

Here im using example from readme to access docs vida /docs route

/*
|--------------------------------------------------------------------------
| Routes file
|--------------------------------------------------------------------------
|
| The routes file is used for defining the HTTP routes.
|
*/

import '#routes/api'

import AutoSwagger from 'adonis-autoswagger'
import swagger from '#config/swagger'
import router from '@adonisjs/core/services/router'

// returns swagger in YAML
router.get('/swagger', async () => {
  // console.log(router.toJSON())
  return AutoSwagger.default.docs(router.toJSON(), swagger)
})

// Renders Swagger-UI and passes YAML-output of /swagger
router.get('/docs', async () => {
  return AutoSwagger.default.ui('/swagger', swagger)
  // return AutoSwagger.default.scalar("/swagger", swagger); to use Scalar instead
  // return AutoSwagger.default.rapidoc("/swagger", swagger); to use RapiDoc instead
})

but when i'm trying to reach localhost:3333/docs got this issue Node .../backend/app/validators/auth.ts does not exist

my validators/auth.ts

import vine from '@vinejs/vine'
import { ExtractSchemaType } from './types.js'

export const createAccountValidator = vine.compile(
  vine.object({
    username: vine.string().trim().minLength(5).maxLength(32),
    email: vine.string().email(),
    password: vine.string().minLength(8).maxLength(32),
  })
)

export const loginValidator = vine.compile(
  vine.object({
    username: vine.string(),
    password: vine.string(),
  })
)

export type CreateAccountData = ExtractSchemaType<typeof createAccountValidator>
export type LoginData = ExtractSchemaType<typeof loginValidator>

the strange is that when i'm using node ace docs:generate everything is fine

"adonis-autoswagger": "^3.47.0",

GilTRipper avatar Jun 22 '24 12:06 GilTRipper