mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-07-14 08:36:22 +08:00
fb3a0e7b8f
Remove `next-auth` and implement our own Authorization/Authentication system from scratch.
## Server
- [x] tokens
- [x] function
- [x] encryption
- [x] AuthController
- [x] /api/auth/sign-in
- [x] /api/auth/sign-out
- [x] /api/auth/session
- [x] /api/auth/session (WE SUPPORT MULTI-ACCOUNT!)
- [x] OAuthPlugin
- [x] OAuthController
- [x] /oauth/login
- [x] /oauth/callback
- [x] Providers
- [x] Google
- [x] GitHub
## Client
- [x] useSession
- [x] cloudSignIn
- [x] cloudSignOut
## NOTE:
Tests will be adding in the future
33 lines
640 B
TypeScript
33 lines
640 B
TypeScript
declare namespace Express {
|
|
interface Request {
|
|
user?: import('./core/auth/current-user').CurrentUser;
|
|
}
|
|
}
|
|
|
|
declare type PrimitiveType =
|
|
| string
|
|
| number
|
|
| boolean
|
|
| symbol
|
|
| null
|
|
| undefined;
|
|
|
|
declare type ConstructorOf<T> = {
|
|
new (): T;
|
|
};
|
|
|
|
declare type DeepPartial<T> =
|
|
T extends Array<infer U>
|
|
? DeepPartial<U>[]
|
|
: T extends ReadonlyArray<infer U>
|
|
? ReadonlyArray<DeepPartial<U>>
|
|
: T extends object
|
|
? {
|
|
[K in keyof T]?: DeepPartial<T[K]>;
|
|
}
|
|
: T;
|
|
|
|
declare type AFFiNEModule =
|
|
| import('@nestjs/common').Type
|
|
| import('@nestjs/common').DynamicModule;
|