mirror of
https://github.com/jjbrunton/Sauci.git
synced 2026-10-31 18:19:43 +00:00
feat(backend): add standalone data plane
Replace the Supabase application data plane with the Node/PostgreSQL API, migrate mobile, admin, web, and MCP callers, add controlled cutover tooling, and define hardened Dokploy infrastructure.
This commit is contained in:
1 parent
01bb8225ae
commit
006761d3b0
294 files changed
+16259
-6138
No files matched your search
@@ -2,20 +2,42 @@
|
||||
export interface Profile {
|
||||
id: string;
|
||||
name: string | null;
|
||||
email: string | null;
|
||||
avatar_url: string | null;
|
||||
push_token: string | null;
|
||||
is_premium: boolean;
|
||||
couple_id: string | null;
|
||||
gender: 'male' | 'female' | 'non-binary' | 'prefer-not-to-say' | null;
|
||||
show_explicit_content: boolean;
|
||||
max_intensity: 1 | 2 | 3 | 4 | 5;
|
||||
created_at: string;
|
||||
updated_at: string;
|
||||
/** RSA public key in JWK format for E2EE */
|
||||
public_key_jwk?: Record<string, unknown> | null;
|
||||
/** When true, packs marked as is_explicit will be hidden */
|
||||
hide_nsfw?: boolean;
|
||||
hide_nsfw: boolean;
|
||||
/** Whether onboarding flow has been completed */
|
||||
onboarding_completed?: boolean;
|
||||
onboarding_completed: boolean;
|
||||
/** Version of onboarding flow completed. 0 = never, 1+ = that version */
|
||||
onboarding_version?: number;
|
||||
onboarding_version: number;
|
||||
}
|
||||
|
||||
/** Public response returned by the standalone Sauci API identity bootstrap. */
|
||||
export interface MeResponse {
|
||||
profile: Profile;
|
||||
}
|
||||
|
||||
/** Per-user interest state; the API always derives the user from the bearer token. */
|
||||
export interface FeatureInterestResponse {
|
||||
feature: string;
|
||||
interested: boolean;
|
||||
}
|
||||
|
||||
export interface ApiErrorResponse {
|
||||
error: {
|
||||
code: string;
|
||||
message: string;
|
||||
};
|
||||
}
|
||||
|
||||
// Couple pairing
|
||||
|
||||
Reference in new issue
Block a user