Initial commit: PC Builder AdonisJS project

This commit is contained in:
Kevin
2026-06-28 10:41:51 +02:00
commit 648d0af538
144 changed files with 18570 additions and 0 deletions
+18
View File
@@ -0,0 +1,18 @@
/**
* This file is automatically generated.
* DO NOT EDIT manually
*/
/// <reference path="./manifest.d.ts" />
import type { InferData, InferVariants } from '@adonisjs/core/types/transformers'
import type { InferSharedProps } from '@adonisjs/inertia/types'
import type UserTransformer from '#transformers/user_transformer'
import type InertiaMiddleware from '#middleware/inertia_middleware'
export namespace Data {
export type User = InferData<UserTransformer>
export namespace User {
export type Variants = InferVariants<UserTransformer>
}
export type SharedProps = InferSharedProps<InertiaMiddleware>
}
+9
View File
@@ -0,0 +1,9 @@
/**
* This file is automatically generated.
* DO NOT EDIT manually
*/
/// <reference path="../../adonisrc.ts" />
/// <reference path="../../config/auth.ts" />
/// <reference path="../../config/hash.ts" />
/// <reference path="../../config/logger.ts" />
+143
View File
@@ -0,0 +1,143 @@
/* 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 = {
'home': {
methods: ["GET","HEAD"],
pattern: '/',
tokens: [{"old":"/","type":0,"val":"/","end":""}],
types: placeholder as Registry['home']['types'],
},
'new_account.create': {
methods: ["GET","HEAD"],
pattern: '/auth/signup',
tokens: [{"old":"/auth/signup","type":0,"val":"auth","end":""},{"old":"/auth/signup","type":0,"val":"signup","end":""}],
types: placeholder as Registry['new_account.create']['types'],
},
'new_account.store': {
methods: ["POST"],
pattern: '/auth/signup',
tokens: [{"old":"/auth/signup","type":0,"val":"auth","end":""},{"old":"/auth/signup","type":0,"val":"signup","end":""}],
types: placeholder as Registry['new_account.store']['types'],
},
'session.create': {
methods: ["GET","HEAD"],
pattern: '/auth/login',
tokens: [{"old":"/auth/login","type":0,"val":"auth","end":""},{"old":"/auth/login","type":0,"val":"login","end":""}],
types: placeholder as Registry['session.create']['types'],
},
'session.store': {
methods: ["POST"],
pattern: '/auth/login',
tokens: [{"old":"/auth/login","type":0,"val":"auth","end":""},{"old":"/auth/login","type":0,"val":"login","end":""}],
types: placeholder as Registry['session.store']['types'],
},
'session.destroy': {
methods: ["POST"],
pattern: '/logout',
tokens: [{"old":"/logout","type":0,"val":"logout","end":""}],
types: placeholder as Registry['session.destroy']['types'],
},
'computers.index': {
methods: ["GET","HEAD"],
pattern: '/computers',
tokens: [{"old":"/computers","type":0,"val":"computers","end":""}],
types: placeholder as Registry['computers.index']['types'],
},
'computers.create': {
methods: ["GET","HEAD"],
pattern: '/computers/create',
tokens: [{"old":"/computers/create","type":0,"val":"computers","end":""},{"old":"/computers/create","type":0,"val":"create","end":""}],
types: placeholder as Registry['computers.create']['types'],
},
'computers.store': {
methods: ["POST"],
pattern: '/computers',
tokens: [{"old":"/computers","type":0,"val":"computers","end":""}],
types: placeholder as Registry['computers.store']['types'],
},
'computers.show': {
methods: ["GET","HEAD"],
pattern: '/computers/:id',
tokens: [{"old":"/computers/:id","type":0,"val":"computers","end":""},{"old":"/computers/:id","type":1,"val":"id","end":""}],
types: placeholder as Registry['computers.show']['types'],
},
'computers.edit': {
methods: ["GET","HEAD"],
pattern: '/computers/:id/edit',
tokens: [{"old":"/computers/:id/edit","type":0,"val":"computers","end":""},{"old":"/computers/:id/edit","type":1,"val":"id","end":""},{"old":"/computers/:id/edit","type":0,"val":"edit","end":""}],
types: placeholder as Registry['computers.edit']['types'],
},
'computers.update': {
methods: ["PUT"],
pattern: '/computers/:id',
tokens: [{"old":"/computers/:id","type":0,"val":"computers","end":""},{"old":"/computers/:id","type":1,"val":"id","end":""}],
types: placeholder as Registry['computers.update']['types'],
},
'computers.destroy': {
methods: ["DELETE"],
pattern: '/computers/:id',
tokens: [{"old":"/computers/:id","type":0,"val":"computers","end":""},{"old":"/computers/:id","type":1,"val":"id","end":""}],
types: placeholder as Registry['computers.destroy']['types'],
},
'components.index': {
methods: ["GET","HEAD"],
pattern: '/components',
tokens: [{"old":"/components","type":0,"val":"components","end":""}],
types: placeholder as Registry['components.index']['types'],
},
'components.create': {
methods: ["GET","HEAD"],
pattern: '/components/create',
tokens: [{"old":"/components/create","type":0,"val":"components","end":""},{"old":"/components/create","type":0,"val":"create","end":""}],
types: placeholder as Registry['components.create']['types'],
},
'components.store': {
methods: ["POST"],
pattern: '/components',
tokens: [{"old":"/components","type":0,"val":"components","end":""}],
types: placeholder as Registry['components.store']['types'],
},
'components.show': {
methods: ["GET","HEAD"],
pattern: '/components/:id',
tokens: [{"old":"/components/:id","type":0,"val":"components","end":""},{"old":"/components/:id","type":1,"val":"id","end":""}],
types: placeholder as Registry['components.show']['types'],
},
'components.edit': {
methods: ["GET","HEAD"],
pattern: '/components/:id/edit',
tokens: [{"old":"/components/:id/edit","type":0,"val":"components","end":""},{"old":"/components/:id/edit","type":1,"val":"id","end":""},{"old":"/components/:id/edit","type":0,"val":"edit","end":""}],
types: placeholder as Registry['components.edit']['types'],
},
'components.update': {
methods: ["PUT"],
pattern: '/components/:id',
tokens: [{"old":"/components/:id","type":0,"val":"components","end":""},{"old":"/components/:id","type":1,"val":"id","end":""}],
types: placeholder as Registry['components.update']['types'],
},
'components.destroy': {
methods: ["DELETE"],
pattern: '/components/:id',
tokens: [{"old":"/components/:id","type":0,"val":"components","end":""},{"old":"/components/:id","type":1,"val":"id","end":""}],
types: placeholder as Registry['components.destroy']['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
}
}
+250
View File
@@ -0,0 +1,250 @@
/* 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 {
'home': {
methods: ["GET","HEAD"]
pattern: '/'
types: {
body: {}
paramsTuple: []
params: {}
query: {}
response: unknown
errorResponse: unknown
}
}
'new_account.create': {
methods: ["GET","HEAD"]
pattern: '/auth/signup'
types: {
body: {}
paramsTuple: []
params: {}
query: {}
response: ExtractResponse<Awaited<ReturnType<import('#controllers/new_account_controller').default['create']>>>
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/new_account_controller').default['create']>>>
}
}
'new_account.store': {
methods: ["POST"]
pattern: '/auth/signup'
types: {
body: ExtractBody<InferInput<(typeof import('#validators/user').signupValidator)>>
paramsTuple: []
params: {}
query: ExtractQuery<InferInput<(typeof import('#validators/user').signupValidator)>>
response: ExtractResponse<Awaited<ReturnType<import('#controllers/new_account_controller').default['store']>>>
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/new_account_controller').default['store']>>> | { status: 422; response: { errors: SimpleError[] } }
}
}
'session.create': {
methods: ["GET","HEAD"]
pattern: '/auth/login'
types: {
body: {}
paramsTuple: []
params: {}
query: {}
response: ExtractResponse<Awaited<ReturnType<import('#controllers/session_controller').default['create']>>>
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/session_controller').default['create']>>>
}
}
'session.store': {
methods: ["POST"]
pattern: '/auth/login'
types: {
body: ExtractBody<InferInput<(typeof import('#validators/Auth/login').loginValidator)>>
paramsTuple: []
params: {}
query: ExtractQuery<InferInput<(typeof import('#validators/Auth/login').loginValidator)>>
response: ExtractResponse<Awaited<ReturnType<import('#controllers/session_controller').default['store']>>>
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/session_controller').default['store']>>> | { status: 422; response: { errors: SimpleError[] } }
}
}
'session.destroy': {
methods: ["POST"]
pattern: '/logout'
types: {
body: {}
paramsTuple: []
params: {}
query: {}
response: ExtractResponse<Awaited<ReturnType<import('#controllers/session_controller').default['destroy']>>>
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/session_controller').default['destroy']>>>
}
}
'computers.index': {
methods: ["GET","HEAD"]
pattern: '/computers'
types: {
body: {}
paramsTuple: []
params: {}
query: {}
response: ExtractResponse<Awaited<ReturnType<import('#controllers/computers_controller').default['index']>>>
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/computers_controller').default['index']>>>
}
}
'computers.create': {
methods: ["GET","HEAD"]
pattern: '/computers/create'
types: {
body: {}
paramsTuple: []
params: {}
query: {}
response: ExtractResponse<Awaited<ReturnType<import('#controllers/computers_controller').default['create']>>>
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/computers_controller').default['create']>>>
}
}
'computers.store': {
methods: ["POST"]
pattern: '/computers'
types: {
body: ExtractBody<InferInput<(typeof import('#validators/Computers/store').storeComputerValidator)>>
paramsTuple: []
params: {}
query: ExtractQuery<InferInput<(typeof import('#validators/Computers/store').storeComputerValidator)>>
response: ExtractResponse<Awaited<ReturnType<import('#controllers/computers_controller').default['store']>>>
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/computers_controller').default['store']>>> | { status: 422; response: { errors: SimpleError[] } }
}
}
'computers.show': {
methods: ["GET","HEAD"]
pattern: '/computers/:id'
types: {
body: {}
paramsTuple: [ParamValue]
params: { id: ParamValue }
query: {}
response: ExtractResponse<Awaited<ReturnType<import('#controllers/computers_controller').default['show']>>>
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/computers_controller').default['show']>>>
}
}
'computers.edit': {
methods: ["GET","HEAD"]
pattern: '/computers/:id/edit'
types: {
body: {}
paramsTuple: [ParamValue]
params: { id: ParamValue }
query: {}
response: ExtractResponse<Awaited<ReturnType<import('#controllers/computers_controller').default['edit']>>>
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/computers_controller').default['edit']>>>
}
}
'computers.update': {
methods: ["PUT"]
pattern: '/computers/:id'
types: {
body: ExtractBody<InferInput<(typeof import('#validators/Computers/update').updateComputerValidator)>>
paramsTuple: [ParamValue]
params: { id: ParamValue }
query: ExtractQuery<InferInput<(typeof import('#validators/Computers/update').updateComputerValidator)>>
response: ExtractResponse<Awaited<ReturnType<import('#controllers/computers_controller').default['update']>>>
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/computers_controller').default['update']>>> | { status: 422; response: { errors: SimpleError[] } }
}
}
'computers.destroy': {
methods: ["DELETE"]
pattern: '/computers/:id'
types: {
body: {}
paramsTuple: [ParamValue]
params: { id: ParamValue }
query: {}
response: ExtractResponse<Awaited<ReturnType<import('#controllers/computers_controller').default['destroy']>>>
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/computers_controller').default['destroy']>>>
}
}
'components.index': {
methods: ["GET","HEAD"]
pattern: '/components'
types: {
body: {}
paramsTuple: []
params: {}
query: {}
response: ExtractResponse<Awaited<ReturnType<import('#controllers/components_controller').default['index']>>>
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/components_controller').default['index']>>>
}
}
'components.create': {
methods: ["GET","HEAD"]
pattern: '/components/create'
types: {
body: {}
paramsTuple: []
params: {}
query: {}
response: ExtractResponse<Awaited<ReturnType<import('#controllers/components_controller').default['create']>>>
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/components_controller').default['create']>>>
}
}
'components.store': {
methods: ["POST"]
pattern: '/components'
types: {
body: ExtractBody<InferInput<(typeof import('#validators/Components/store').storeComponentValidator)>>
paramsTuple: []
params: {}
query: ExtractQuery<InferInput<(typeof import('#validators/Components/store').storeComponentValidator)>>
response: ExtractResponse<Awaited<ReturnType<import('#controllers/components_controller').default['store']>>>
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/components_controller').default['store']>>> | { status: 422; response: { errors: SimpleError[] } }
}
}
'components.show': {
methods: ["GET","HEAD"]
pattern: '/components/:id'
types: {
body: {}
paramsTuple: [ParamValue]
params: { id: ParamValue }
query: {}
response: ExtractResponse<Awaited<ReturnType<import('#controllers/components_controller').default['show']>>>
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/components_controller').default['show']>>>
}
}
'components.edit': {
methods: ["GET","HEAD"]
pattern: '/components/:id/edit'
types: {
body: {}
paramsTuple: [ParamValue]
params: { id: ParamValue }
query: {}
response: ExtractResponse<Awaited<ReturnType<import('#controllers/components_controller').default['edit']>>>
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/components_controller').default['edit']>>>
}
}
'components.update': {
methods: ["PUT"]
pattern: '/components/:id'
types: {
body: ExtractBody<InferInput<(typeof import('#validators/Components/update').updateComponentValidator)>>
paramsTuple: [ParamValue]
params: { id: ParamValue }
query: ExtractQuery<InferInput<(typeof import('#validators/Components/update').updateComponentValidator)>>
response: ExtractResponse<Awaited<ReturnType<import('#controllers/components_controller').default['update']>>>
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/components_controller').default['update']>>> | { status: 422; response: { errors: SimpleError[] } }
}
}
'components.destroy': {
methods: ["DELETE"]
pattern: '/components/:id'
types: {
body: {}
paramsTuple: [ParamValue]
params: { id: ParamValue }
query: {}
response: ExtractResponse<Awaited<ReturnType<import('#controllers/components_controller').default['destroy']>>>
errorResponse: ExtractErrorResponse<Awaited<ReturnType<import('#controllers/components_controller').default['destroy']>>>
}
}
}
+33
View File
@@ -0,0 +1,33 @@
/* eslint-disable prettier/prettier */
import type { routes } from './index.ts'
export interface ApiDefinition {
home: typeof routes['home']
newAccount: {
create: typeof routes['new_account.create']
store: typeof routes['new_account.store']
}
session: {
create: typeof routes['session.create']
store: typeof routes['session.store']
destroy: typeof routes['session.destroy']
}
computers: {
index: typeof routes['computers.index']
create: typeof routes['computers.create']
store: typeof routes['computers.store']
show: typeof routes['computers.show']
edit: typeof routes['computers.edit']
update: typeof routes['computers.update']
destroy: typeof routes['computers.destroy']
}
components: {
index: typeof routes['components.index']
create: typeof routes['components.create']
store: typeof routes['components.store']
show: typeof routes['components.show']
edit: typeof routes['components.edit']
update: typeof routes['components.update']
destroy: typeof routes['components.destroy']
}
}