feat: add authorization

This commit is contained in:
2026-08-13 15:03:59 +03:00
parent 1e13adabd3
commit 3448fea140
28 changed files with 4504 additions and 3707 deletions
+4 -1
View File
@@ -3,4 +3,7 @@ import createClient from "openapi-fetch";
import { apiBaseUrl } from "./config";
import type { paths } from "./generated/schema";
export const apiClient = createClient<paths>({ baseUrl: apiBaseUrl });
export const apiClient = createClient<paths>({
baseUrl: apiBaseUrl,
credentials: "include",
});
+157 -14
View File
@@ -4,14 +4,78 @@
*/
export interface paths {
"/api/v1": {
"/api/v1/auth/register": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["AppController_getHello"];
get?: never;
put?: never;
post: operations["AuthController_register"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/auth/login": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
post: operations["AuthController_login"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/auth/refresh": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
post: operations["AuthController_refresh"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/auth/logout": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get?: never;
put?: never;
post: operations["AuthController_logout"];
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/v1/auth/me": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["AuthController_me"];
put?: never;
post?: never;
delete?: never;
@@ -24,13 +88,19 @@ export interface paths {
export type webhooks = Record<string, never>;
export interface components {
schemas: {
SafeErrorResponseDto: {
/** @example 500 */
statusCode: number;
/** @example Internal server error */
message: string;
/** @example /api/v1 */
path: string;
CredentialsDto: {
/** @example user@example.com */
email: string;
/** @example a secure password */
password: string;
};
UserDto: {
id: string;
email: string;
};
AuthenticationDto: {
accessToken: string;
user: components["schemas"]["UserDto"];
};
};
responses: never;
@@ -41,7 +111,53 @@ export interface components {
}
export type $defs = Record<string, never>;
export interface operations {
AppController_getHello: {
AuthController_register: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["CredentialsDto"];
};
};
responses: {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["AuthenticationDto"];
};
};
};
};
AuthController_login: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody: {
content: {
"application/json": components["schemas"]["CredentialsDto"];
};
};
responses: {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["AuthenticationDto"];
};
};
};
};
AuthController_refresh: {
parameters: {
query?: never;
header?: never;
@@ -55,16 +171,43 @@ export interface operations {
[name: string]: unknown;
};
content: {
"application/json": string;
"application/json": components["schemas"]["AuthenticationDto"];
};
};
/** @description Internal server error */
500: {
};
};
AuthController_logout: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
204: {
headers: {
[name: string]: unknown;
};
content?: never;
};
};
};
AuthController_me: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": components["schemas"]["SafeErrorResponseDto"];
"application/json": components["schemas"]["UserDto"];
};
};
};