first commit
This commit is contained in:
commit
3c0479faf0
169 files changed
+27617
No files matched your search
@@ -0,0 +1,221 @@
|
||||
/* eslint-disable prettier/prettier */
|
||||
import type { AdonisEndpoint } from '@tuyau/core/types'
|
||||
import type { Registry } from './schema.d.ts'
|
||||
import type { ApiDefinition } from './tree.d.ts'
|
||||
|
||||
const placeholder: any = {}
|
||||
|
||||
const routes = {
|
||||
'auth.login': {
|
||||
methods: ["POST"],
|
||||
pattern: '/api/auth/login',
|
||||
tokens: [{"old":"/api/auth/login","type":0,"val":"api","end":""},{"old":"/api/auth/login","type":0,"val":"auth","end":""},{"old":"/api/auth/login","type":0,"val":"login","end":""}],
|
||||
types: placeholder as Registry['auth.login']['types'],
|
||||
},
|
||||
'auth.logout': {
|
||||
methods: ["POST"],
|
||||
pattern: '/api/auth/logout',
|
||||
tokens: [{"old":"/api/auth/logout","type":0,"val":"api","end":""},{"old":"/api/auth/logout","type":0,"val":"auth","end":""},{"old":"/api/auth/logout","type":0,"val":"logout","end":""}],
|
||||
types: placeholder as Registry['auth.logout']['types'],
|
||||
},
|
||||
'auth.me': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/api/auth/me',
|
||||
tokens: [{"old":"/api/auth/me","type":0,"val":"api","end":""},{"old":"/api/auth/me","type":0,"val":"auth","end":""},{"old":"/api/auth/me","type":0,"val":"me","end":""}],
|
||||
types: placeholder as Registry['auth.me']['types'],
|
||||
},
|
||||
'overview.index': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/api/overview',
|
||||
tokens: [{"old":"/api/overview","type":0,"val":"api","end":""},{"old":"/api/overview","type":0,"val":"overview","end":""}],
|
||||
types: placeholder as Registry['overview.index']['types'],
|
||||
},
|
||||
'metrics.live': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/api/metrics/live',
|
||||
tokens: [{"old":"/api/metrics/live","type":0,"val":"api","end":""},{"old":"/api/metrics/live","type":0,"val":"metrics","end":""},{"old":"/api/metrics/live","type":0,"val":"live","end":""}],
|
||||
types: placeholder as Registry['metrics.live']['types'],
|
||||
},
|
||||
'metrics.history': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/api/metrics/history',
|
||||
tokens: [{"old":"/api/metrics/history","type":0,"val":"api","end":""},{"old":"/api/metrics/history","type":0,"val":"metrics","end":""},{"old":"/api/metrics/history","type":0,"val":"history","end":""}],
|
||||
types: placeholder as Registry['metrics.history']['types'],
|
||||
},
|
||||
'containers.index': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/api/containers',
|
||||
tokens: [{"old":"/api/containers","type":0,"val":"api","end":""},{"old":"/api/containers","type":0,"val":"containers","end":""}],
|
||||
types: placeholder as Registry['containers.index']['types'],
|
||||
},
|
||||
'containers.show': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/api/containers/:id',
|
||||
tokens: [{"old":"/api/containers/:id","type":0,"val":"api","end":""},{"old":"/api/containers/:id","type":0,"val":"containers","end":""},{"old":"/api/containers/:id","type":1,"val":"id","end":""}],
|
||||
types: placeholder as Registry['containers.show']['types'],
|
||||
},
|
||||
'containers.logs': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/api/containers/:id/logs',
|
||||
tokens: [{"old":"/api/containers/:id/logs","type":0,"val":"api","end":""},{"old":"/api/containers/:id/logs","type":0,"val":"containers","end":""},{"old":"/api/containers/:id/logs","type":1,"val":"id","end":""},{"old":"/api/containers/:id/logs","type":0,"val":"logs","end":""}],
|
||||
types: placeholder as Registry['containers.logs']['types'],
|
||||
},
|
||||
'containers.action': {
|
||||
methods: ["POST"],
|
||||
pattern: '/api/containers/:id/:action',
|
||||
tokens: [{"old":"/api/containers/:id/:action","type":0,"val":"api","end":""},{"old":"/api/containers/:id/:action","type":0,"val":"containers","end":""},{"old":"/api/containers/:id/:action","type":1,"val":"id","end":""},{"old":"/api/containers/:id/:action","type":1,"val":"action","end":""}],
|
||||
types: placeholder as Registry['containers.action']['types'],
|
||||
},
|
||||
'sites.index': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/api/sites',
|
||||
tokens: [{"old":"/api/sites","type":0,"val":"api","end":""},{"old":"/api/sites","type":0,"val":"sites","end":""}],
|
||||
types: placeholder as Registry['sites.index']['types'],
|
||||
},
|
||||
'sites.check': {
|
||||
methods: ["POST"],
|
||||
pattern: '/api/sites/check',
|
||||
tokens: [{"old":"/api/sites/check","type":0,"val":"api","end":""},{"old":"/api/sites/check","type":0,"val":"sites","end":""},{"old":"/api/sites/check","type":0,"val":"check","end":""}],
|
||||
types: placeholder as Registry['sites.check']['types'],
|
||||
},
|
||||
'sites.show': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/api/sites/:id',
|
||||
tokens: [{"old":"/api/sites/:id","type":0,"val":"api","end":""},{"old":"/api/sites/:id","type":0,"val":"sites","end":""},{"old":"/api/sites/:id","type":1,"val":"id","end":""}],
|
||||
types: placeholder as Registry['sites.show']['types'],
|
||||
},
|
||||
'projects.index': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/api/projects',
|
||||
tokens: [{"old":"/api/projects","type":0,"val":"api","end":""},{"old":"/api/projects","type":0,"val":"projects","end":""}],
|
||||
types: placeholder as Registry['projects.index']['types'],
|
||||
},
|
||||
'projects.store': {
|
||||
methods: ["POST"],
|
||||
pattern: '/api/projects',
|
||||
tokens: [{"old":"/api/projects","type":0,"val":"api","end":""},{"old":"/api/projects","type":0,"val":"projects","end":""}],
|
||||
types: placeholder as Registry['projects.store']['types'],
|
||||
},
|
||||
'projects.options': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/api/projects/options',
|
||||
tokens: [{"old":"/api/projects/options","type":0,"val":"api","end":""},{"old":"/api/projects/options","type":0,"val":"projects","end":""},{"old":"/api/projects/options","type":0,"val":"options","end":""}],
|
||||
types: placeholder as Registry['projects.options']['types'],
|
||||
},
|
||||
'projects.show': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/api/projects/:category/:name',
|
||||
tokens: [{"old":"/api/projects/:category/:name","type":0,"val":"api","end":""},{"old":"/api/projects/:category/:name","type":0,"val":"projects","end":""},{"old":"/api/projects/:category/:name","type":1,"val":"category","end":""},{"old":"/api/projects/:category/:name","type":1,"val":"name","end":""}],
|
||||
types: placeholder as Registry['projects.show']['types'],
|
||||
},
|
||||
'projects.fetch': {
|
||||
methods: ["POST"],
|
||||
pattern: '/api/projects/:category/:name/fetch',
|
||||
tokens: [{"old":"/api/projects/:category/:name/fetch","type":0,"val":"api","end":""},{"old":"/api/projects/:category/:name/fetch","type":0,"val":"projects","end":""},{"old":"/api/projects/:category/:name/fetch","type":1,"val":"category","end":""},{"old":"/api/projects/:category/:name/fetch","type":1,"val":"name","end":""},{"old":"/api/projects/:category/:name/fetch","type":0,"val":"fetch","end":""}],
|
||||
types: placeholder as Registry['projects.fetch']['types'],
|
||||
},
|
||||
'projects.action': {
|
||||
methods: ["POST"],
|
||||
pattern: '/api/projects/:category/:name/actions/:action',
|
||||
tokens: [{"old":"/api/projects/:category/:name/actions/:action","type":0,"val":"api","end":""},{"old":"/api/projects/:category/:name/actions/:action","type":0,"val":"projects","end":""},{"old":"/api/projects/:category/:name/actions/:action","type":1,"val":"category","end":""},{"old":"/api/projects/:category/:name/actions/:action","type":1,"val":"name","end":""},{"old":"/api/projects/:category/:name/actions/:action","type":0,"val":"actions","end":""},{"old":"/api/projects/:category/:name/actions/:action","type":1,"val":"action","end":""}],
|
||||
types: placeholder as Registry['projects.action']['types'],
|
||||
},
|
||||
'caddy.show': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/api/caddy',
|
||||
tokens: [{"old":"/api/caddy","type":0,"val":"api","end":""},{"old":"/api/caddy","type":0,"val":"caddy","end":""}],
|
||||
types: placeholder as Registry['caddy.show']['types'],
|
||||
},
|
||||
'caddy.update': {
|
||||
methods: ["PUT"],
|
||||
pattern: '/api/caddy',
|
||||
tokens: [{"old":"/api/caddy","type":0,"val":"api","end":""},{"old":"/api/caddy","type":0,"val":"caddy","end":""}],
|
||||
types: placeholder as Registry['caddy.update']['types'],
|
||||
},
|
||||
'caddy.reload': {
|
||||
methods: ["POST"],
|
||||
pattern: '/api/caddy/reload',
|
||||
tokens: [{"old":"/api/caddy/reload","type":0,"val":"api","end":""},{"old":"/api/caddy/reload","type":0,"val":"caddy","end":""},{"old":"/api/caddy/reload","type":0,"val":"reload","end":""}],
|
||||
types: placeholder as Registry['caddy.reload']['types'],
|
||||
},
|
||||
'caddy.versions': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/api/caddy/versions',
|
||||
tokens: [{"old":"/api/caddy/versions","type":0,"val":"api","end":""},{"old":"/api/caddy/versions","type":0,"val":"caddy","end":""},{"old":"/api/caddy/versions","type":0,"val":"versions","end":""}],
|
||||
types: placeholder as Registry['caddy.versions']['types'],
|
||||
},
|
||||
'caddy.version': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/api/caddy/versions/:id',
|
||||
tokens: [{"old":"/api/caddy/versions/:id","type":0,"val":"api","end":""},{"old":"/api/caddy/versions/:id","type":0,"val":"caddy","end":""},{"old":"/api/caddy/versions/:id","type":0,"val":"versions","end":""},{"old":"/api/caddy/versions/:id","type":1,"val":"id","end":""}],
|
||||
types: placeholder as Registry['caddy.version']['types'],
|
||||
},
|
||||
'caddy.restore': {
|
||||
methods: ["POST"],
|
||||
pattern: '/api/caddy/versions/:id/restore',
|
||||
tokens: [{"old":"/api/caddy/versions/:id/restore","type":0,"val":"api","end":""},{"old":"/api/caddy/versions/:id/restore","type":0,"val":"caddy","end":""},{"old":"/api/caddy/versions/:id/restore","type":0,"val":"versions","end":""},{"old":"/api/caddy/versions/:id/restore","type":1,"val":"id","end":""},{"old":"/api/caddy/versions/:id/restore","type":0,"val":"restore","end":""}],
|
||||
types: placeholder as Registry['caddy.restore']['types'],
|
||||
},
|
||||
'backups.index': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/api/backups',
|
||||
tokens: [{"old":"/api/backups","type":0,"val":"api","end":""},{"old":"/api/backups","type":0,"val":"backups","end":""}],
|
||||
types: placeholder as Registry['backups.index']['types'],
|
||||
},
|
||||
'backups.store': {
|
||||
methods: ["POST"],
|
||||
pattern: '/api/backups',
|
||||
tokens: [{"old":"/api/backups","type":0,"val":"api","end":""},{"old":"/api/backups","type":0,"val":"backups","end":""}],
|
||||
types: placeholder as Registry['backups.store']['types'],
|
||||
},
|
||||
'backups.download': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/api/backups/:name',
|
||||
tokens: [{"old":"/api/backups/:name","type":0,"val":"api","end":""},{"old":"/api/backups/:name","type":0,"val":"backups","end":""},{"old":"/api/backups/:name","type":1,"val":"name","end":""}],
|
||||
types: placeholder as Registry['backups.download']['types'],
|
||||
},
|
||||
'backups.destroy': {
|
||||
methods: ["DELETE"],
|
||||
pattern: '/api/backups/:name',
|
||||
tokens: [{"old":"/api/backups/:name","type":0,"val":"api","end":""},{"old":"/api/backups/:name","type":0,"val":"backups","end":""},{"old":"/api/backups/:name","type":1,"val":"name","end":""}],
|
||||
types: placeholder as Registry['backups.destroy']['types'],
|
||||
},
|
||||
'jobs.stream': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/api/jobs/:id/stream',
|
||||
tokens: [{"old":"/api/jobs/:id/stream","type":0,"val":"api","end":""},{"old":"/api/jobs/:id/stream","type":0,"val":"jobs","end":""},{"old":"/api/jobs/:id/stream","type":1,"val":"id","end":""},{"old":"/api/jobs/:id/stream","type":0,"val":"stream","end":""}],
|
||||
types: placeholder as Registry['jobs.stream']['types'],
|
||||
},
|
||||
'audit.index': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/api/audit',
|
||||
tokens: [{"old":"/api/audit","type":0,"val":"api","end":""},{"old":"/api/audit","type":0,"val":"audit","end":""}],
|
||||
types: placeholder as Registry['audit.index']['types'],
|
||||
},
|
||||
'audit.show': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/api/audit/:id',
|
||||
tokens: [{"old":"/api/audit/:id","type":0,"val":"api","end":""},{"old":"/api/audit/:id","type":0,"val":"audit","end":""},{"old":"/api/audit/:id","type":1,"val":"id","end":""}],
|
||||
types: placeholder as Registry['audit.show']['types'],
|
||||
},
|
||||
'spa.index': {
|
||||
methods: ["GET","HEAD"],
|
||||
pattern: '/*',
|
||||
tokens: [{"old":"/*","type":2,"val":"*","end":""}],
|
||||
types: placeholder as Registry['spa.index']['types'],
|
||||
},
|
||||
} as const satisfies Record<string, AdonisEndpoint>
|
||||
|
||||
export { routes }
|
||||
|
||||
export const registry = {
|
||||
routes,
|
||||
$tree: {} as ApiDefinition,
|
||||
}
|
||||
|
||||
declare module '@tuyau/core/types' {
|
||||
export interface UserRegistry {
|
||||
routes: typeof routes
|
||||
$tree: ApiDefinition
|
||||
}
|
||||
}
|
||||
+406
@@ -0,0 +1,406 @@
|
||||
/* eslint-disable prettier/prettier */
|
||||
/// <reference path="../manifest.d.ts" />
|
||||
|
||||
import type { ExtractBody, ExtractErrorResponse, ExtractQuery, ExtractQueryForGet, ExtractResponse } from '@tuyau/core/types'
|
||||
import type { InferInput, SimpleError } from '@vinejs/vine/types'
|
||||
|
||||
export type ParamValue = string | number | bigint | boolean
|
||||
|
||||
export interface Registry {
|
||||
'auth.login': {
|
||||
methods: ["POST"]
|
||||
pattern: '/api/auth/login'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: []
|
||||
params: {}
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/auth_controller').default['login']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/auth_controller').default['login']>>>
|
||||
}
|
||||
}
|
||||
'auth.logout': {
|
||||
methods: ["POST"]
|
||||
pattern: '/api/auth/logout'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: []
|
||||
params: {}
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/auth_controller').default['logout']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/auth_controller').default['logout']>>>
|
||||
}
|
||||
}
|
||||
'auth.me': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/api/auth/me'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: []
|
||||
params: {}
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/auth_controller').default['me']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/auth_controller').default['me']>>>
|
||||
}
|
||||
}
|
||||
'overview.index': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/api/overview'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: []
|
||||
params: {}
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/overview_controller').default['index']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/overview_controller').default['index']>>>
|
||||
}
|
||||
}
|
||||
'metrics.live': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/api/metrics/live'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: []
|
||||
params: {}
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/metrics_controller').default['live']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/metrics_controller').default['live']>>>
|
||||
}
|
||||
}
|
||||
'metrics.history': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/api/metrics/history'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: []
|
||||
params: {}
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/metrics_controller').default['history']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/metrics_controller').default['history']>>>
|
||||
}
|
||||
}
|
||||
'containers.index': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/api/containers'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: []
|
||||
params: {}
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/containers_controller').default['index']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/containers_controller').default['index']>>>
|
||||
}
|
||||
}
|
||||
'containers.show': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/api/containers/:id'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: [ParamValue]
|
||||
params: { id: ParamValue }
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/containers_controller').default['show']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/containers_controller').default['show']>>>
|
||||
}
|
||||
}
|
||||
'containers.logs': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/api/containers/:id/logs'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: [ParamValue]
|
||||
params: { id: ParamValue }
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/containers_controller').default['logs']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/containers_controller').default['logs']>>>
|
||||
}
|
||||
}
|
||||
'containers.action': {
|
||||
methods: ["POST"]
|
||||
pattern: '/api/containers/:id/:action'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: [ParamValue, ParamValue]
|
||||
params: { id: ParamValue; action: ParamValue }
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/containers_controller').default['action']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/containers_controller').default['action']>>>
|
||||
}
|
||||
}
|
||||
'sites.index': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/api/sites'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: []
|
||||
params: {}
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/sites_controller').default['index']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/sites_controller').default['index']>>>
|
||||
}
|
||||
}
|
||||
'sites.check': {
|
||||
methods: ["POST"]
|
||||
pattern: '/api/sites/check'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: []
|
||||
params: {}
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/sites_controller').default['check']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/sites_controller').default['check']>>>
|
||||
}
|
||||
}
|
||||
'sites.show': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/api/sites/:id'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: [ParamValue]
|
||||
params: { id: ParamValue }
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/sites_controller').default['show']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/sites_controller').default['show']>>>
|
||||
}
|
||||
}
|
||||
'projects.index': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/api/projects'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: []
|
||||
params: {}
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['index']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['index']>>>
|
||||
}
|
||||
}
|
||||
'projects.store': {
|
||||
methods: ["POST"]
|
||||
pattern: '/api/projects'
|
||||
types: {
|
||||
body: ExtractBody<InferInput<(typeof import('#validators/project').createProjectValidator)>>
|
||||
paramsTuple: []
|
||||
params: {}
|
||||
query: ExtractQuery<InferInput<(typeof import('#validators/project').createProjectValidator)>>
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['store']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['store']>>> | { status: 422; response: { errors: SimpleError[] } }
|
||||
}
|
||||
}
|
||||
'projects.options': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/api/projects/options'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: []
|
||||
params: {}
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['options']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['options']>>>
|
||||
}
|
||||
}
|
||||
'projects.show': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/api/projects/:category/:name'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: [ParamValue, ParamValue]
|
||||
params: { category: ParamValue; name: ParamValue }
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['show']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['show']>>>
|
||||
}
|
||||
}
|
||||
'projects.fetch': {
|
||||
methods: ["POST"]
|
||||
pattern: '/api/projects/:category/:name/fetch'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: [ParamValue, ParamValue]
|
||||
params: { category: ParamValue; name: ParamValue }
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['fetch']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['fetch']>>>
|
||||
}
|
||||
}
|
||||
'projects.action': {
|
||||
methods: ["POST"]
|
||||
pattern: '/api/projects/:category/:name/actions/:action'
|
||||
types: {
|
||||
body: ExtractBody<InferInput<(typeof import('#validators/project').projectActionValidator)>>
|
||||
paramsTuple: [ParamValue, ParamValue, ParamValue]
|
||||
params: { category: ParamValue; name: ParamValue; action: ParamValue }
|
||||
query: ExtractQuery<InferInput<(typeof import('#validators/project').projectActionValidator)>>
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['action']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/projects_controller').default['action']>>> | { status: 422; response: { errors: SimpleError[] } }
|
||||
}
|
||||
}
|
||||
'caddy.show': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/api/caddy'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: []
|
||||
params: {}
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['show']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['show']>>>
|
||||
}
|
||||
}
|
||||
'caddy.update': {
|
||||
methods: ["PUT"]
|
||||
pattern: '/api/caddy'
|
||||
types: {
|
||||
body: ExtractBody<InferInput<(typeof import('#validators/caddy').updateCaddyfileValidator)>>
|
||||
paramsTuple: []
|
||||
params: {}
|
||||
query: ExtractQuery<InferInput<(typeof import('#validators/caddy').updateCaddyfileValidator)>>
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['update']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['update']>>> | { status: 422; response: { errors: SimpleError[] } }
|
||||
}
|
||||
}
|
||||
'caddy.reload': {
|
||||
methods: ["POST"]
|
||||
pattern: '/api/caddy/reload'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: []
|
||||
params: {}
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['reload']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['reload']>>>
|
||||
}
|
||||
}
|
||||
'caddy.versions': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/api/caddy/versions'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: []
|
||||
params: {}
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['versions']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['versions']>>>
|
||||
}
|
||||
}
|
||||
'caddy.version': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/api/caddy/versions/:id'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: [ParamValue]
|
||||
params: { id: ParamValue }
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['version']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['version']>>>
|
||||
}
|
||||
}
|
||||
'caddy.restore': {
|
||||
methods: ["POST"]
|
||||
pattern: '/api/caddy/versions/:id/restore'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: [ParamValue]
|
||||
params: { id: ParamValue }
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['restore']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/caddy_controller').default['restore']>>>
|
||||
}
|
||||
}
|
||||
'backups.index': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/api/backups'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: []
|
||||
params: {}
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/backups_controller').default['index']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/backups_controller').default['index']>>>
|
||||
}
|
||||
}
|
||||
'backups.store': {
|
||||
methods: ["POST"]
|
||||
pattern: '/api/backups'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: []
|
||||
params: {}
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/backups_controller').default['store']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/backups_controller').default['store']>>>
|
||||
}
|
||||
}
|
||||
'backups.download': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/api/backups/:name'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: [ParamValue]
|
||||
params: { name: ParamValue }
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/backups_controller').default['download']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/backups_controller').default['download']>>>
|
||||
}
|
||||
}
|
||||
'backups.destroy': {
|
||||
methods: ["DELETE"]
|
||||
pattern: '/api/backups/:name'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: [ParamValue]
|
||||
params: { name: ParamValue }
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/backups_controller').default['destroy']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/backups_controller').default['destroy']>>>
|
||||
}
|
||||
}
|
||||
'jobs.stream': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/api/jobs/:id/stream'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: [ParamValue]
|
||||
params: { id: ParamValue }
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/jobs_controller').default['stream']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/jobs_controller').default['stream']>>>
|
||||
}
|
||||
}
|
||||
'audit.index': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/api/audit'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: []
|
||||
params: {}
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/audit_controller').default['index']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/audit_controller').default['index']>>>
|
||||
}
|
||||
}
|
||||
'audit.show': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/api/audit/:id'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: [ParamValue]
|
||||
params: { id: ParamValue }
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/audit_controller').default['show']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/audit_controller').default['show']>>>
|
||||
}
|
||||
}
|
||||
'spa.index': {
|
||||
methods: ["GET","HEAD"]
|
||||
pattern: '/*'
|
||||
types: {
|
||||
body: {}
|
||||
paramsTuple: [ParamValue]
|
||||
params: { '*': ParamValue[] }
|
||||
query: {}
|
||||
response: ExtractResponse<Awaited<ReturnType<import('#controllers/spa_controller').default['index']>>>
|
||||
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/spa_controller').default['index']>>>
|
||||
}
|
||||
}
|
||||
}
|
||||
+60
@@ -0,0 +1,60 @@
|
||||
/* eslint-disable prettier/prettier */
|
||||
import type { routes } from './index.ts'
|
||||
|
||||
export interface ApiDefinition {
|
||||
auth: {
|
||||
login: typeof routes['auth.login']
|
||||
logout: typeof routes['auth.logout']
|
||||
me: typeof routes['auth.me']
|
||||
}
|
||||
overview: {
|
||||
index: typeof routes['overview.index']
|
||||
}
|
||||
metrics: {
|
||||
live: typeof routes['metrics.live']
|
||||
history: typeof routes['metrics.history']
|
||||
}
|
||||
containers: {
|
||||
index: typeof routes['containers.index']
|
||||
show: typeof routes['containers.show']
|
||||
logs: typeof routes['containers.logs']
|
||||
action: typeof routes['containers.action']
|
||||
}
|
||||
sites: {
|
||||
index: typeof routes['sites.index']
|
||||
check: typeof routes['sites.check']
|
||||
show: typeof routes['sites.show']
|
||||
}
|
||||
projects: {
|
||||
index: typeof routes['projects.index']
|
||||
store: typeof routes['projects.store']
|
||||
options: typeof routes['projects.options']
|
||||
show: typeof routes['projects.show']
|
||||
fetch: typeof routes['projects.fetch']
|
||||
action: typeof routes['projects.action']
|
||||
}
|
||||
caddy: {
|
||||
show: typeof routes['caddy.show']
|
||||
update: typeof routes['caddy.update']
|
||||
reload: typeof routes['caddy.reload']
|
||||
versions: typeof routes['caddy.versions']
|
||||
version: typeof routes['caddy.version']
|
||||
restore: typeof routes['caddy.restore']
|
||||
}
|
||||
backups: {
|
||||
index: typeof routes['backups.index']
|
||||
store: typeof routes['backups.store']
|
||||
download: typeof routes['backups.download']
|
||||
destroy: typeof routes['backups.destroy']
|
||||
}
|
||||
jobs: {
|
||||
stream: typeof routes['jobs.stream']
|
||||
}
|
||||
audit: {
|
||||
index: typeof routes['audit.index']
|
||||
show: typeof routes['audit.show']
|
||||
}
|
||||
spa: {
|
||||
index: typeof routes['spa.index']
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user