From c9e308d5786421ad420a6f718de01fd868f4be9e Mon Sep 17 00:00:00 2001 From: Vargha Csongor Date: Thu, 1 May 2025 01:00:21 +0200 Subject: [PATCH] run format --- apps/app/messages/en.json | 2 +- apps/app/messages/hu.json | 2 +- apps/app/src/lib/admin/Modal.svelte | 77 +- apps/app/src/lib/api/api.gen.ts | 4474 +++++++++-------- apps/app/src/lib/graph/FamilyEdge.svelte | 7 +- apps/app/src/lib/graph/PersonNode.svelte | 65 +- apps/app/src/lib/graph/layout.ts | 7 +- apps/app/src/lib/graph/parse_family_tree.ts | 8 +- apps/app/src/lib/profile/MediaGallery.svelte | 4 +- apps/app/src/lib/profile/Modal.svelte | 7 +- apps/app/src/lib/profile/ProfileHeader.svelte | 27 +- .../profile/editors/UploadMediaModal.svelte | 14 +- apps/app/src/lib/relationship/EdgeMenu.svelte | 2 +- apps/app/src/lib/relationship/Modal.svelte | 19 +- apps/app/src/lib/relationship/model.ts | 2 +- apps/app/src/lib/sidebar/sideBar.svelte | 6 +- apps/app/src/routes/+page.svelte | 6 +- .../login/google/callback/+page.server.ts | 26 +- .../routes/login/google/callback/+page.svelte | 5 - 19 files changed, 2394 insertions(+), 2366 deletions(-) diff --git a/apps/app/messages/en.json b/apps/app/messages/en.json index 45ebdb2..5c364b5 100644 --- a/apps/app/messages/en.json +++ b/apps/app/messages/en.json @@ -42,7 +42,7 @@ "dark": "Dark", "date": "Date", "death": "Death", - "delete_profile":"Delete profile", + "delete_profile": "Delete profile", "deceased": "Deceased", "deny": "Deny", "description": "Description", diff --git a/apps/app/messages/hu.json b/apps/app/messages/hu.json index 79397a3..8b75509 100644 --- a/apps/app/messages/hu.json +++ b/apps/app/messages/hu.json @@ -43,7 +43,7 @@ "date": "Dátum", "death": "Halál", "deceased": "Elhunyt", - "delete_profile":"Delete profile", + "delete_profile": "Delete profile", "deny": "Elutasítás", "description": "Leírás", "details": "Részletek", diff --git a/apps/app/src/lib/admin/Modal.svelte b/apps/app/src/lib/admin/Modal.svelte index cbee22a..bebad99 100644 --- a/apps/app/src/lib/admin/Modal.svelte +++ b/apps/app/src/lib/admin/Modal.svelte @@ -7,9 +7,7 @@ from_time, admin, create_relationship_and_person, - add_relationship - } from '$lib/paraglide/messages'; import ModalButtons from './ModalButtons.svelte'; import type { components, operations } from '$lib/api/api.gen'; @@ -19,8 +17,8 @@ editProfile = () => {}, onChange = () => {}, addRelationship = () => {}, - createProfile = ()=> {}, - createRelationshipAndProfile = () => {}, + createProfile = () => {}, + createRelationshipAndProfile = () => {} } = $props<{ closeModal: () => void; onChange?: () => void; @@ -31,29 +29,29 @@ }>(); let managed_profiles_list: components['schemas']['Admin'][] = $state([]); - function fetchManagedProfiles(){ - fetch(`/api/managed_profiles`, { - method: 'GET', - headers: { - 'Content-Type': 'application/json' - } - }) - .then((response) => { - if (!response.ok) { - console.log('Cannot get managed profiles, status: ' + response.status); - return; + function fetchManagedProfiles() { + fetch(`/api/managed_profiles`, { + method: 'GET', + headers: { + 'Content-Type': 'application/json' } + }) + .then((response) => { + if (!response.ok) { + console.log('Cannot get managed profiles, status: ' + response.status); + return; + } - return response.json(); - }) - .then((data) => { - if (data) { - managed_profiles_list = [...(data as components['schemas']['Admin'][])]; - } - }) - .catch((error) => { - console.error('Error fetching managed profiles:', error); - }); + return response.json(); + }) + .then((data) => { + if (data) { + managed_profiles_list = [...(data as components['schemas']['Admin'][])]; + } + }) + .catch((error) => { + console.error('Error fetching managed profiles:', error); + }); } fetchManagedProfiles(); @@ -122,24 +120,27 @@
{profile.label![0]}
+ class="btn btn-success btn-soft" + onclick={() => { + addRelationship(profile.id!); + }} + > + {add_relationship()} + + class="btn btn-success btn-soft" + onclick={() => { + createRelationshipAndProfile(profile.id!); + }} + > + {create_relationship_and_person()} + {#if profile.label?.includes('DeletedPerson')} diff --git a/apps/app/src/lib/api/api.gen.ts b/apps/app/src/lib/api/api.gen.ts index 233d395..1301379 100644 --- a/apps/app/src/lib/api/api.gen.ts +++ b/apps/app/src/lib/api/api.gen.ts @@ -4,2239 +4,2255 @@ */ export interface paths { - "/health": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** Check the health of the server */ - get: operations["healthCheck"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/person_and_relationship/{id}": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - get?: never; - put?: never; - /** Create a person and relationship */ - post: operations["createPersonAndRelationship"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/person": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - get?: never; - put?: never; - /** Create a new person */ - post: operations["createPerson"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/comment/{id}": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** Get comments on person's profile by ID */ - get: operations["GetCommentsOnPerson"]; - put?: never; - /** Comment on person's profile by ID */ - post: operations["commentOnPerson"]; - /** Comment on person's profile by ID */ - delete: operations["deleteCommentOnPerson"]; - options?: never; - head?: never; - /** Edit comment on person's profile by ID */ - patch: operations["editComment"]; - trace?: never; - }; - "/person/{id}": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** Get a person by ID */ - get: operations["getPersonById"]; - put?: never; - post?: never; - /** Soft delete a person by ID */ - delete: operations["softDeletePerson"]; - options?: never; - head?: never; - /** Update a person by ID */ - patch: operations["updatePerson"]; - trace?: never; - }; - "/person/{id}/hard-delete": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - get?: never; - put?: never; - post?: never; - /** Hard delete a person by ID */ - delete: operations["hardDeletePerson"]; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/person/google/{google_id}": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** Get a person by Google ID */ - get: operations["getPersonByGoogleId"]; - put?: never; - /** Create a new person by Google ID */ - post: operations["createPersonByGoogleId"]; - delete?: never; - options?: never; - head?: never; - /** Create a new person by Google ID with invite code */ - patch: operations["createPersonByGoogleIdAndInviteCode"]; - trace?: never; - }; - "/family-tree": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** Get family tree by person ID */ - get: operations["getFamilyTreeById"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/family-tree-with-spouses": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** Get family tree by person ID with spouses included */ - get: operations["getFamilyTreeWithSpousesById"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/person/{id}/recipes": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** Get recipes by person ID */ - get: operations["getRecipesByPersonId"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/relationship": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - get?: never; - put?: never; - /** Create a relationship between two persons */ - post: operations["createRelationship"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/relationship/{id1}/{id2}": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** Get relationships between two persons */ - get: operations["getRelationship"]; - put?: never; - post?: never; - /** Delete relationship between two persons */ - delete: operations["deleteRelationship"]; - options?: never; - head?: never; - /** Update a relationship between two persons */ - patch: operations["updateRelationship"]; - trace?: never; - }; - "/admin/{id1}": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** Get profile Admins */ - get: operations["getProfileAdmins"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/admin/{id1}/{id2}": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** Get admin relationship between two persons */ - get: operations["getAdminRelationship"]; - put?: never; - /** Create admin relationship between two persons */ - post: operations["createAdminRelationship"]; - /** Delete admin relationship between two persons */ - delete: operations["deleteAdminRelationship"]; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/managed_profiles": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** Get managed profiles */ - get: operations["getManagedProfiles"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/recipe/{id}": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - get?: never; - put?: never; - post?: never; - /** Soft delete a recipe by ID */ - delete: operations["softDeleteRecipe"]; - options?: never; - head?: never; - /** Update a recipe by ID */ - patch: operations["updateRecipe"]; - trace?: never; - }; - "/recipe/{id}/hard-delete": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - get?: never; - put?: never; - post?: never; - /** Hard delete a recipe by ID */ - delete: operations["hardDeleteRecipe"]; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/recipe/{id}/relationship": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - get?: never; - put?: never; - /** Create a relationship with an existing recipe */ - post: operations["createRecipeRelationship"]; - /** Delete a relationship with a recipe */ - delete: operations["deleteRecipeRelationship"]; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; + '/health': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Check the health of the server */ + get: operations['healthCheck']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/person_and_relationship/{id}': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + /** Create a person and relationship */ + post: operations['createPersonAndRelationship']; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/person': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + /** Create a new person */ + post: operations['createPerson']; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/comment/{id}': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Get comments on person's profile by ID */ + get: operations['GetCommentsOnPerson']; + put?: never; + /** Comment on person's profile by ID */ + post: operations['commentOnPerson']; + /** Comment on person's profile by ID */ + delete: operations['deleteCommentOnPerson']; + options?: never; + head?: never; + /** Edit comment on person's profile by ID */ + patch: operations['editComment']; + trace?: never; + }; + '/person/{id}': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Get a person by ID */ + get: operations['getPersonById']; + put?: never; + post?: never; + /** Soft delete a person by ID */ + delete: operations['softDeletePerson']; + options?: never; + head?: never; + /** Update a person by ID */ + patch: operations['updatePerson']; + trace?: never; + }; + '/person/{id}/hard-delete': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post?: never; + /** Hard delete a person by ID */ + delete: operations['hardDeletePerson']; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/person/google/{google_id}': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Get a person by Google ID */ + get: operations['getPersonByGoogleId']; + put?: never; + /** Create a new person by Google ID */ + post: operations['createPersonByGoogleId']; + delete?: never; + options?: never; + head?: never; + /** Create a new person by Google ID with invite code */ + patch: operations['createPersonByGoogleIdAndInviteCode']; + trace?: never; + }; + '/family-tree': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Get family tree by person ID */ + get: operations['getFamilyTreeById']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/family-tree-with-spouses': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Get family tree by person ID with spouses included */ + get: operations['getFamilyTreeWithSpousesById']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/person/{id}/recipes': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Get recipes by person ID */ + get: operations['getRecipesByPersonId']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/relationship': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + /** Create a relationship between two persons */ + post: operations['createRelationship']; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/relationship/{id1}/{id2}': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Get relationships between two persons */ + get: operations['getRelationship']; + put?: never; + post?: never; + /** Delete relationship between two persons */ + delete: operations['deleteRelationship']; + options?: never; + head?: never; + /** Update a relationship between two persons */ + patch: operations['updateRelationship']; + trace?: never; + }; + '/admin/{id1}': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Get profile Admins */ + get: operations['getProfileAdmins']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/admin/{id1}/{id2}': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Get admin relationship between two persons */ + get: operations['getAdminRelationship']; + put?: never; + /** Create admin relationship between two persons */ + post: operations['createAdminRelationship']; + /** Delete admin relationship between two persons */ + delete: operations['deleteAdminRelationship']; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/managed_profiles': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Get managed profiles */ + get: operations['getManagedProfiles']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/recipe/{id}': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post?: never; + /** Soft delete a recipe by ID */ + delete: operations['softDeleteRecipe']; + options?: never; + head?: never; + /** Update a recipe by ID */ + patch: operations['updateRecipe']; + trace?: never; + }; + '/recipe/{id}/hard-delete': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + post?: never; + /** Hard delete a recipe by ID */ + delete: operations['hardDeleteRecipe']; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/recipe/{id}/relationship': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + /** Create a relationship with an existing recipe */ + post: operations['createRecipeRelationship']; + /** Delete a relationship with a recipe */ + delete: operations['deleteRecipeRelationship']; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; } export type webhooks = Record; export interface components { - schemas: { - PersonProperties: { - invite_code?: string | null; - google_id?: string | null; - first_name?: string | null; - middle_name?: string | null; - last_name?: string | null; - titles?: string[] | null; - suffixes?: string[] | null; - extra_names?: string[] | null; - aliases?: string[] | null; - mothers_first_name?: string | null; - mothers_last_name?: string | null; - /** @enum {string|null} */ - biological_sex?: "male" | "female" | "intersex" | "unknown" | "other" | null; - /** Format: date */ - born?: string | null; - place_of_birth?: string | null; - /** Format: date */ - died?: string | null; - place_of_death?: string | null; - life_events?: { - /** Format: date */ - from?: string; - /** Format: date */ - to?: string; - description?: string; - }[] | null; - occupations?: string[] | null; - occupation_to_display?: string | null; - limit?: number | null; - photos?: { - url?: string; - description?: string; - /** Format: date */ - date?: string; - name?: string; - }[] | null; - videos?: { - url?: string; - description?: string; - /** Format: date */ - date?: string; - name?: string; - }[] | null; - audios?: { - url?: string; - description?: string; - /** Format: date */ - date?: string; - name?: string; - }[] | null; - profile_picture?: string | null; - verified?: boolean | null; - email?: string | null; - phone?: string | null; - residence?: { - city?: string; - country?: string; - zip_code?: string; - address_line_1?: string; - address_line_2?: string; - } | null; - religion?: string | null; - baptized?: string | null; - ideologies?: string[] | null; - blood_type?: string | null; - allergies?: string[] | null; - medications?: { - name?: string; - description?: string | null; - components?: string | null; - dosage?: string | null; - /** Format: date */ - from?: string | null; - /** Format: date */ - to?: string | null; - }[] | null; - medical_conditions?: Record[] | null; - height?: number | null; - weight?: number | null; - hair_colour?: string | null; - skin_colour?: string | null; - eye_colour?: string | null; - sports?: string[] | null; - hobbies?: string[] | null; - interests?: string[] | null; - languages?: { - language?: string; - level?: string | null; - }[] | null; - notes?: { - /** Format: date */ - date?: string | null; - title?: string | null; - note?: string; - url?: string | null; - }[] | null; - }; - PersonRegistration: { - first_name: string; - last_name: string; - /** Format: email */ - email?: string | null; - limit: number; - /** @enum {string} */ - biological_sex?: "male" | "female" | "intersex" | "unknown" | "other"; - /** Format: date */ - born: string; - mothers_first_name: string; - mothers_last_name: string; - }; - Person: { - Id?: number; - ElementId?: string; - Labels?: string[]; - Props?: components["schemas"]["PersonProperties"]; - }; - FamilyRelationship: { - verified?: boolean | null; - notes?: string | null; - /** Format: date */ - from?: string | null; - /** Format: date */ - to?: string | null; - }; - Relationship: { - id?: number; - type?: string | null; - label?: string | null; - start?: number; - end?: number; - properties?: components["schemas"]["FamilyRelationship"]; - }; - dbtypeRelationship: { - Id?: number; - ElementId?: string; - Type?: string | null; - StartId?: number; - StartElementId?: string; - EndId?: number; - EndElementId?: string; - Props?: components["schemas"]["FamilyRelationship"]; - }; - OptimizedPersonNode: { - id?: number; - labels?: string[]; - type?: string | null; - first_name?: string; - middle_name?: string; - last_name?: string; - /** Format: date */ - born?: string; - /** Format: date */ - died?: string | null; - /** @enum {string|null} */ - biological_sex?: "male" | "female" | "intersex" | "unknown" | "other" | null; - profile_picture?: string | null; - }; - FamilyTree: { - people?: components["schemas"]["OptimizedPersonNode"][]; - relationships?: components["schemas"]["dbtypeRelationship"][]; - }; - RecipeProperties: { - name?: string | null; - origin?: string | null; - allow_admin_access?: { - id?: number; - name?: string; - }[]; - category?: string | null; - /** Format: date */ - first_recorded?: string | null; - description?: string | null; - ingredients?: string[] | null; - instructions?: string[] | null; - photo?: string | null; - notes?: string | null; - others_said?: { - id?: number; - name?: string; - said?: string; - }[] | null; - }; - Recipe: { - Id?: number; - ElementId?: string; - Labels?: string[]; - Props?: components["schemas"]["RecipeProperties"]; - }; - Likes: { - Id?: number; - Type?: string; - StartId?: number; - StartElementId?: string; - EndId?: number; - EndElementId?: string; - Props?: components["schemas"]["LikesProperties"]; - }; - LikesProperties: { - favourite?: boolean | null; - like_it?: boolean | null; - could_make_it?: boolean | null; - }; - Admin: { - id?: number; - label?: string[]; - first_name?: string; - adminSince?: number; - last_name?: string; - }; - AdminRelationship: { - Id?: number; - Type?: string; - StartId?: number; - StartElementId?: string; - EndId?: number; - EndElementId?: string; - Props?: { - added?: number; - }; - }; - Comment: { - id?: number | null; - start?: number | null; - end?: number | null; - type?: string | null; - label?: string | null; - props?: components["schemas"]["Message"]; - }; - Message: { - message?: string; - /** Format: date-time */ - edited?: string | null; - /** Format: date-time */ - sent_at?: string; - }; - Messages: { - people?: components["schemas"]["OptimizedPersonNode"][]; - comments?: components["schemas"]["Comment"][]; - }; - }; - responses: never; - parameters: never; - requestBodies: never; - headers: never; - pathItems: never; + schemas: { + PersonProperties: { + invite_code?: string | null; + google_id?: string | null; + first_name?: string | null; + middle_name?: string | null; + last_name?: string | null; + titles?: string[] | null; + suffixes?: string[] | null; + extra_names?: string[] | null; + aliases?: string[] | null; + mothers_first_name?: string | null; + mothers_last_name?: string | null; + /** @enum {string|null} */ + biological_sex?: 'male' | 'female' | 'intersex' | 'unknown' | 'other' | null; + /** Format: date */ + born?: string | null; + place_of_birth?: string | null; + /** Format: date */ + died?: string | null; + place_of_death?: string | null; + life_events?: + | { + /** Format: date */ + from?: string; + /** Format: date */ + to?: string; + description?: string; + }[] + | null; + occupations?: string[] | null; + occupation_to_display?: string | null; + limit?: number | null; + photos?: + | { + url?: string; + description?: string; + /** Format: date */ + date?: string; + name?: string; + }[] + | null; + videos?: + | { + url?: string; + description?: string; + /** Format: date */ + date?: string; + name?: string; + }[] + | null; + audios?: + | { + url?: string; + description?: string; + /** Format: date */ + date?: string; + name?: string; + }[] + | null; + profile_picture?: string | null; + verified?: boolean | null; + email?: string | null; + phone?: string | null; + residence?: { + city?: string; + country?: string; + zip_code?: string; + address_line_1?: string; + address_line_2?: string; + } | null; + religion?: string | null; + baptized?: string | null; + ideologies?: string[] | null; + blood_type?: string | null; + allergies?: string[] | null; + medications?: + | { + name?: string; + description?: string | null; + components?: string | null; + dosage?: string | null; + /** Format: date */ + from?: string | null; + /** Format: date */ + to?: string | null; + }[] + | null; + medical_conditions?: Record[] | null; + height?: number | null; + weight?: number | null; + hair_colour?: string | null; + skin_colour?: string | null; + eye_colour?: string | null; + sports?: string[] | null; + hobbies?: string[] | null; + interests?: string[] | null; + languages?: + | { + language?: string; + level?: string | null; + }[] + | null; + notes?: + | { + /** Format: date */ + date?: string | null; + title?: string | null; + note?: string; + url?: string | null; + }[] + | null; + }; + PersonRegistration: { + first_name: string; + last_name: string; + /** Format: email */ + email?: string | null; + limit: number; + /** @enum {string} */ + biological_sex?: 'male' | 'female' | 'intersex' | 'unknown' | 'other'; + /** Format: date */ + born: string; + mothers_first_name: string; + mothers_last_name: string; + }; + Person: { + Id?: number; + ElementId?: string; + Labels?: string[]; + Props?: components['schemas']['PersonProperties']; + }; + FamilyRelationship: { + verified?: boolean | null; + notes?: string | null; + /** Format: date */ + from?: string | null; + /** Format: date */ + to?: string | null; + }; + Relationship: { + id?: number; + type?: string | null; + label?: string | null; + start?: number; + end?: number; + properties?: components['schemas']['FamilyRelationship']; + }; + dbtypeRelationship: { + Id?: number; + ElementId?: string; + Type?: string | null; + StartId?: number; + StartElementId?: string; + EndId?: number; + EndElementId?: string; + Props?: components['schemas']['FamilyRelationship']; + }; + OptimizedPersonNode: { + id?: number; + labels?: string[]; + type?: string | null; + first_name?: string; + middle_name?: string; + last_name?: string; + /** Format: date */ + born?: string; + /** Format: date */ + died?: string | null; + /** @enum {string|null} */ + biological_sex?: 'male' | 'female' | 'intersex' | 'unknown' | 'other' | null; + profile_picture?: string | null; + }; + FamilyTree: { + people?: components['schemas']['OptimizedPersonNode'][]; + relationships?: components['schemas']['dbtypeRelationship'][]; + }; + RecipeProperties: { + name?: string | null; + origin?: string | null; + allow_admin_access?: { + id?: number; + name?: string; + }[]; + category?: string | null; + /** Format: date */ + first_recorded?: string | null; + description?: string | null; + ingredients?: string[] | null; + instructions?: string[] | null; + photo?: string | null; + notes?: string | null; + others_said?: + | { + id?: number; + name?: string; + said?: string; + }[] + | null; + }; + Recipe: { + Id?: number; + ElementId?: string; + Labels?: string[]; + Props?: components['schemas']['RecipeProperties']; + }; + Likes: { + Id?: number; + Type?: string; + StartId?: number; + StartElementId?: string; + EndId?: number; + EndElementId?: string; + Props?: components['schemas']['LikesProperties']; + }; + LikesProperties: { + favourite?: boolean | null; + like_it?: boolean | null; + could_make_it?: boolean | null; + }; + Admin: { + id?: number; + label?: string[]; + first_name?: string; + adminSince?: number; + last_name?: string; + }; + AdminRelationship: { + Id?: number; + Type?: string; + StartId?: number; + StartElementId?: string; + EndId?: number; + EndElementId?: string; + Props?: { + added?: number; + }; + }; + Comment: { + id?: number | null; + start?: number | null; + end?: number | null; + type?: string | null; + label?: string | null; + props?: components['schemas']['Message']; + }; + Message: { + message?: string; + /** Format: date-time */ + edited?: string | null; + /** Format: date-time */ + sent_at?: string; + }; + Messages: { + people?: components['schemas']['OptimizedPersonNode'][]; + comments?: components['schemas']['Comment'][]; + }; + }; + responses: never; + parameters: never; + requestBodies: never; + headers: never; + pathItems: never; } export type $defs = Record; export interface operations { - healthCheck: { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Server is healthy */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Server is unhealthy */ - 503: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - createPersonAndRelationship: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id: number; - }; - cookie?: never; - }; - requestBody: { - content: { - "application/json": { - person: components["schemas"]["PersonRegistration"]; - /** @enum {string} */ - type?: "child" | "parent" | "spouse" | "sibling"; - relationship: components["schemas"]["FamilyRelationship"]; - }; - }; - }; - responses: { - /** @description Person and relationship created */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - person?: components["schemas"]["Person"]; - relationships?: components["schemas"]["Relationship"][]; - }; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - createPerson: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path?: never; - cookie?: never; - }; - requestBody: { - content: { - "application/json": components["schemas"]["PersonRegistration"]; - }; - }; - responses: { - /** @description Person created */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Person"]; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - GetCommentsOnPerson: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id: number; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Comments */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Messages"]; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - commentOnPerson: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id: number; - }; - cookie?: never; - }; - requestBody: { - content: { - "application/json": components["schemas"]["Message"]; - }; - }; - responses: { - /** @description Message updated */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Messages"]; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - deleteCommentOnPerson: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id: number; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Deleted comment */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - editComment: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id: number; - }; - cookie?: never; - }; - requestBody: { - content: { - "application/json": components["schemas"]["Message"]; - }; - }; - responses: { - /** @description Comment updated */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Messages"]; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - getPersonById: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id: number; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Person retrieved */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Person"]; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - softDeletePerson: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id: number; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Person soft deleted */ - 200: { - headers: { - [name: string]: unknown; - }; - content?: never; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - updatePerson: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id: number; - }; - cookie?: never; - }; - requestBody: { - content: { - "application/json": components["schemas"]["PersonProperties"]; - }; - }; - responses: { - /** @description Person updated */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Person"]; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - hardDeletePerson: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id: number; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Person hard deleted */ - 200: { - headers: { - [name: string]: unknown; - }; - content?: never; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - getPersonByGoogleId: { - parameters: { - query?: never; - header?: never; - path: { - google_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Person retrieved */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Person"]; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - createPersonByGoogleId: { - parameters: { - query?: never; - header?: never; - path: { - google_id: string; - }; - cookie?: never; - }; - requestBody: { - content: { - "application/json": components["schemas"]["PersonRegistration"]; - }; - }; - responses: { - /** @description Person created */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Person"]; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - createPersonByGoogleIdAndInviteCode: { - parameters: { - query?: never; - header?: never; - path: { - google_id: string; - }; - cookie?: never; - }; - requestBody: { - content: { - "application/json": { - invite_code: string; - person: components["schemas"]["PersonRegistration"]; - }; - }; - }; - responses: { - /** @description Person created */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Person"]; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - getFamilyTreeById: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Family tree retrieved */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["FamilyTree"]; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - getFamilyTreeWithSpousesById: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Family tree retrieved */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["FamilyTree"]; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - getRecipesByPersonId: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id: number; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Recipes retrieved */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - recipeRelations?: components["schemas"]["Likes"][]; - recipes?: components["schemas"]["Recipe"][]; - }; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - createRelationship: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path?: never; - cookie?: never; - }; - requestBody: { - content: { - "application/json": { - id1?: number; - id2?: number; - /** @enum {string} */ - type?: "child" | "parent" | "spouse" | "sibling"; - relationship?: components["schemas"]["FamilyRelationship"]; - }; - }; - }; - responses: { - /** @description Relationships created */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["dbtypeRelationship"][]; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - getRelationship: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id1: number; - id2: number; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Relationship retrieved */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Relationship"]; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - deleteRelationship: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id1: number; - id2: number; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Relationship deleted */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - updateRelationship: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id1: number; - id2: number; - }; - cookie?: never; - }; - requestBody: { - content: { - "application/json": { - relationship?: components["schemas"]["FamilyRelationship"]; - }; - }; - }; - responses: { - /** @description Relationship created */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Relationship"]; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - getProfileAdmins: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id1: number; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Admins retrieved */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - admins?: components["schemas"]["Admin"][]; - }; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - getAdminRelationship: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id1: number; - id2: number; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Admin retrieved */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["AdminRelationship"]; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - createAdminRelationship: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id1: number; - id2: number; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Admin created */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["AdminRelationship"]; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - deleteAdminRelationship: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id1: number; - id2: number; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Admin deleted */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - getManagedProfiles: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Managed Profiles retrieved */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - admins?: components["schemas"]["Admin"][]; - }; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - softDeleteRecipe: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id: number; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Recipe soft deleted */ - 200: { - headers: { - [name: string]: unknown; - }; - content?: never; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - updateRecipe: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id: number; - }; - cookie?: never; - }; - requestBody: { - content: { - "application/json": components["schemas"]["RecipeProperties"]; - }; - }; - responses: { - /** @description Recipe updated */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Recipe"]; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - hardDeleteRecipe: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id: number; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Recipe hard deleted */ - 200: { - headers: { - [name: string]: unknown; - }; - content?: never; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - createRecipeRelationship: { - parameters: { - query?: never; - header: { - "X-User-ID": number; - }; - path: { - id: number; - }; - cookie?: never; - }; - requestBody: { - content: { - "application/json": { - id: number; - relationship: { - schema?: components["schemas"]["LikesProperties"]; - }; - }; - }; - }; - responses: { - /** @description Relationship with recipe created */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["Likes"]; - }; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; - deleteRecipeRelationship: { - parameters: { - query: { - personId: number; - }; - header: { - "X-User-ID": number; - }; - path: { - id: number; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Relationship with recipe deleted */ - 200: { - headers: { - [name: string]: unknown; - }; - content?: never; - }; - /** @description Bad request */ - 400: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Unauthorized */ - 401: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - /** @description Internal server error */ - 500: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": { - msg?: string; - }; - }; - }; - }; - }; + healthCheck: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Server is healthy */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Server is unhealthy */ + 503: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + createPersonAndRelationship: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id: number; + }; + cookie?: never; + }; + requestBody: { + content: { + 'application/json': { + person: components['schemas']['PersonRegistration']; + /** @enum {string} */ + type?: 'child' | 'parent' | 'spouse' | 'sibling'; + relationship: components['schemas']['FamilyRelationship']; + }; + }; + }; + responses: { + /** @description Person and relationship created */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + person?: components['schemas']['Person']; + relationships?: components['schemas']['Relationship'][]; + }; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + createPerson: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path?: never; + cookie?: never; + }; + requestBody: { + content: { + 'application/json': components['schemas']['PersonRegistration']; + }; + }; + responses: { + /** @description Person created */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['Person']; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + GetCommentsOnPerson: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id: number; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Comments */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['Messages']; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + commentOnPerson: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id: number; + }; + cookie?: never; + }; + requestBody: { + content: { + 'application/json': components['schemas']['Message']; + }; + }; + responses: { + /** @description Message updated */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['Messages']; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + deleteCommentOnPerson: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id: number; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Deleted comment */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + editComment: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id: number; + }; + cookie?: never; + }; + requestBody: { + content: { + 'application/json': components['schemas']['Message']; + }; + }; + responses: { + /** @description Comment updated */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['Messages']; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + getPersonById: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id: number; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Person retrieved */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['Person']; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + softDeletePerson: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id: number; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Person soft deleted */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + updatePerson: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id: number; + }; + cookie?: never; + }; + requestBody: { + content: { + 'application/json': components['schemas']['PersonProperties']; + }; + }; + responses: { + /** @description Person updated */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['Person']; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + hardDeletePerson: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id: number; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Person hard deleted */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + getPersonByGoogleId: { + parameters: { + query?: never; + header?: never; + path: { + google_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Person retrieved */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['Person']; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + createPersonByGoogleId: { + parameters: { + query?: never; + header?: never; + path: { + google_id: string; + }; + cookie?: never; + }; + requestBody: { + content: { + 'application/json': components['schemas']['PersonRegistration']; + }; + }; + responses: { + /** @description Person created */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['Person']; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + createPersonByGoogleIdAndInviteCode: { + parameters: { + query?: never; + header?: never; + path: { + google_id: string; + }; + cookie?: never; + }; + requestBody: { + content: { + 'application/json': { + invite_code: string; + person: components['schemas']['PersonRegistration']; + }; + }; + }; + responses: { + /** @description Person created */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['Person']; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + getFamilyTreeById: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Family tree retrieved */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['FamilyTree']; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + getFamilyTreeWithSpousesById: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Family tree retrieved */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['FamilyTree']; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + getRecipesByPersonId: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id: number; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Recipes retrieved */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + recipeRelations?: components['schemas']['Likes'][]; + recipes?: components['schemas']['Recipe'][]; + }; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + createRelationship: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path?: never; + cookie?: never; + }; + requestBody: { + content: { + 'application/json': { + id1?: number; + id2?: number; + /** @enum {string} */ + type?: 'child' | 'parent' | 'spouse' | 'sibling'; + relationship?: components['schemas']['FamilyRelationship']; + }; + }; + }; + responses: { + /** @description Relationships created */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['dbtypeRelationship'][]; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + getRelationship: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id1: number; + id2: number; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Relationship retrieved */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['Relationship']; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + deleteRelationship: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id1: number; + id2: number; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Relationship deleted */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + updateRelationship: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id1: number; + id2: number; + }; + cookie?: never; + }; + requestBody: { + content: { + 'application/json': { + relationship?: components['schemas']['FamilyRelationship']; + }; + }; + }; + responses: { + /** @description Relationship created */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['Relationship']; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + getProfileAdmins: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id1: number; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Admins retrieved */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + admins?: components['schemas']['Admin'][]; + }; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + getAdminRelationship: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id1: number; + id2: number; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Admin retrieved */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['AdminRelationship']; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + createAdminRelationship: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id1: number; + id2: number; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Admin created */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['AdminRelationship']; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + deleteAdminRelationship: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id1: number; + id2: number; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Admin deleted */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + getManagedProfiles: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Managed Profiles retrieved */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + admins?: components['schemas']['Admin'][]; + }; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + softDeleteRecipe: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id: number; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Recipe soft deleted */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + updateRecipe: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id: number; + }; + cookie?: never; + }; + requestBody: { + content: { + 'application/json': components['schemas']['RecipeProperties']; + }; + }; + responses: { + /** @description Recipe updated */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['Recipe']; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + hardDeleteRecipe: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id: number; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Recipe hard deleted */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + createRecipeRelationship: { + parameters: { + query?: never; + header: { + 'X-User-ID': number; + }; + path: { + id: number; + }; + cookie?: never; + }; + requestBody: { + content: { + 'application/json': { + id: number; + relationship: { + schema?: components['schemas']['LikesProperties']; + }; + }; + }; + }; + responses: { + /** @description Relationship with recipe created */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['Likes']; + }; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; + deleteRecipeRelationship: { + parameters: { + query: { + personId: number; + }; + header: { + 'X-User-ID': number; + }; + path: { + id: number; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Relationship with recipe deleted */ + 200: { + headers: { + [name: string]: unknown; + }; + content?: never; + }; + /** @description Bad request */ + 400: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Unauthorized */ + 401: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + /** @description Internal server error */ + 500: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': { + msg?: string; + }; + }; + }; + }; + }; } diff --git a/apps/app/src/lib/graph/FamilyEdge.svelte b/apps/app/src/lib/graph/FamilyEdge.svelte index 75eede5..b84b51d 100644 --- a/apps/app/src/lib/graph/FamilyEdge.svelte +++ b/apps/app/src/lib/graph/FamilyEdge.svelte @@ -17,7 +17,6 @@ data }: EdgeProps = $props(); - let edgeType = ( data as components['schemas']['FamilyRelationship'] & { type: string } ).type.toLowerCase(); @@ -70,7 +69,7 @@ edgeLabel = edgeType; } - let [path, labelX, labelY] = $derived( + let [path, labelX, labelY] = $derived( getBezierPath({ sourceX, sourceY, @@ -81,7 +80,7 @@ }) ); - edgeColor = edgeColor +'stroke-opacity:unset; stroke-width=20;' +(style ?? ''); + edgeColor = edgeColor + 'stroke-opacity:unset; stroke-width=20;' + (style ?? ''); const onEdgeClick = () => { window.dispatchEvent( @@ -96,4 +95,4 @@ }; - + diff --git a/apps/app/src/lib/graph/PersonNode.svelte b/apps/app/src/lib/graph/PersonNode.svelte index 61c7e88..54575a1 100644 --- a/apps/app/src/lib/graph/PersonNode.svelte +++ b/apps/app/src/lib/graph/PersonNode.svelte @@ -10,24 +10,25 @@ let nodeColor = ' bg-neutral text-neutral-content'; switch (data.biological_sex) { - case ('female'): + case 'female': nodeColor = ' bg-secondary text-secondary-content'; break; - case ('male'): + case 'male': nodeColor = ' bg-primary text-primary-content'; break; - case ('intersex'): + case 'intersex': nodeColor = ' bg-accent text-accent-content'; break; }
- - - - + + +
-
+
Picture of {data.last_name} {data.first_name} { let newNode = { data: { ...person } } as Node; if (person.id !== null && person.id !== undefined) { - newNode.id = "person"+person.id.toString(); + newNode.id = 'person' + person.id.toString(); } newNode.position = { x: 0, y: 0 }; newNode.data.id = person.id; @@ -26,13 +26,13 @@ export function parseFamilyTree(data: components['schemas']['FamilyTree']): Layo if (data.relationships) { relationships = data.relationships.map((relationship) => { const newEdge = { data: { ...relationship.Props } } as Edge; - newEdge.id = "person"+relationship.ElementId; + newEdge.id = 'person' + relationship.ElementId; newEdge.data!.type = relationship.Type?.toLowerCase(); if (relationship.StartElementId !== null && relationship.StartElementId !== undefined) { - newEdge.source = "person"+relationship.StartId!.toString(); + newEdge.source = 'person' + relationship.StartId!.toString(); } if (relationship.EndElementId !== null && relationship.EndElementId !== undefined) { - newEdge.target = "person"+relationship.EndId!.toString(); + newEdge.target = 'person' + relationship.EndId!.toString(); } return newEdge; diff --git a/apps/app/src/lib/profile/MediaGallery.svelte b/apps/app/src/lib/profile/MediaGallery.svelte index c16a882..c35b4e1 100644 --- a/apps/app/src/lib/profile/MediaGallery.svelte +++ b/apps/app/src/lib/profile/MediaGallery.svelte @@ -38,7 +38,7 @@ mediaType = 'photo'; }} > - {'+ '+photos()} + {'+ ' + photos()}
{/if} diff --git a/apps/app/src/lib/profile/Modal.svelte b/apps/app/src/lib/profile/Modal.svelte index ebb44f1..cca6db7 100644 --- a/apps/app/src/lib/profile/Modal.svelte +++ b/apps/app/src/lib/profile/Modal.svelte @@ -69,7 +69,12 @@ return; } else { const errorDetails = await response.json(); - alert('Error saving person data, status: ' + response.status + ' ' + JSON.stringify(errorDetails)); + alert( + 'Error saving person data, status: ' + + response.status + + ' ' + + JSON.stringify(errorDetails) + ); } } catch (error) { alert('An unexpected error occurred: ' + error); diff --git a/apps/app/src/lib/profile/ProfileHeader.svelte b/apps/app/src/lib/profile/ProfileHeader.svelte index fb5ac47..7375813 100644 --- a/apps/app/src/lib/profile/ProfileHeader.svelte +++ b/apps/app/src/lib/profile/ProfileHeader.svelte @@ -20,9 +20,7 @@ mothers_last_name, profile_picture, create_invite_code, - invite_code - } from '$lib/paraglide/messages'; import { callMessageFunction } from '$lib/i18n'; import type { MessageKeys } from '$lib/i18n'; @@ -118,7 +116,7 @@ bind:this={birth_date} placeholder={person.born} onchange={() => onChange('born', birth_date.value)} - /> + /> {:else}{person.born ?? '-'}{/if}

@@ -127,7 +125,7 @@ type="text" class="pika-single w-full" id="death_date" - placeholder={person.died??died()} + placeholder={person.died ?? died()} bind:this={death_date} onchange={() => onChange('died', death_date.value)} />{:else}{person.died ?? '-'}{/if} @@ -179,16 +177,19 @@

{id()}: {' ' + (person.id ?? '-')}

Limit: {' ' + (person.limit ?? '-')}

{#if editorMode && (person.google_id === undefined || person.google_id === null || person.google_id === '')} - {#if new_invite_code===undefined} - + {#if new_invite_code === undefined} + {:else} -

- {invite_code()}:{person.invite_code} -

+

+ {invite_code()}:{person.invite_code} +

{/if} {/if}
diff --git a/apps/app/src/lib/profile/editors/UploadMediaModal.svelte b/apps/app/src/lib/profile/editors/UploadMediaModal.svelte index ae3d1c3..8db4738 100644 --- a/apps/app/src/lib/profile/editors/UploadMediaModal.svelte +++ b/apps/app/src/lib/profile/editors/UploadMediaModal.svelte @@ -2,11 +2,11 @@ import { date, description, file, media_title, title, upload } from '$lib/paraglide/messages'; export let closeModal: () => void; - export let onCreation:(newMedia:{ - url: string, - name: string, - description: string, - date: string + export let onCreation: (newMedia: { + url: string; + name: string; + description: string; + date: string; }) => void = () => {}; export let mediaType: 'audio' | 'video' | 'photo' = 'photo'; @@ -48,14 +48,14 @@ // Clean up selectedFile = null; newMedia = { url: '', name: '', description: '', date: '' }; - onCreation(newMedia); + onCreation(newMedia); closeModal(); }