Start to build edit member form
This commit is contained in:
		
							
								
								
									
										88
									
								
								geneit_app/src/api/MemberApi.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										88
									
								
								geneit_app/src/api/MemberApi.ts
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,88 @@
 | 
			
		||||
export type Sex = "M" | "F";
 | 
			
		||||
 | 
			
		||||
export interface MemberApi {
 | 
			
		||||
  id: number;
 | 
			
		||||
  family_id: number;
 | 
			
		||||
  first_name?: string;
 | 
			
		||||
  last_name?: string;
 | 
			
		||||
  birth_last_name?: string;
 | 
			
		||||
  photo_id?: number;
 | 
			
		||||
  signed_photo_id?: number;
 | 
			
		||||
  email?: string;
 | 
			
		||||
  phone?: string;
 | 
			
		||||
  address?: string;
 | 
			
		||||
  city?: string;
 | 
			
		||||
  postal_code?: string;
 | 
			
		||||
  country?: string;
 | 
			
		||||
  sex?: Sex;
 | 
			
		||||
  time_create?: number;
 | 
			
		||||
  time_update?: number;
 | 
			
		||||
  mother?: number;
 | 
			
		||||
  father?: number;
 | 
			
		||||
  birth_year?: number;
 | 
			
		||||
  birth_month?: number;
 | 
			
		||||
  birth_day?: number;
 | 
			
		||||
  dead: boolean;
 | 
			
		||||
  death_year?: number;
 | 
			
		||||
  death_month?: number;
 | 
			
		||||
  death_day?: number;
 | 
			
		||||
  note?: string;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export class Member implements MemberApi {
 | 
			
		||||
  id: number;
 | 
			
		||||
  family_id: number;
 | 
			
		||||
  first_name?: string;
 | 
			
		||||
  last_name?: string;
 | 
			
		||||
  birth_last_name?: string;
 | 
			
		||||
  photo_id?: number;
 | 
			
		||||
  signed_photo_id?: number;
 | 
			
		||||
  email?: string;
 | 
			
		||||
  phone?: string;
 | 
			
		||||
  address?: string;
 | 
			
		||||
  city?: string;
 | 
			
		||||
  postal_code?: string;
 | 
			
		||||
  country?: string;
 | 
			
		||||
  sex?: Sex;
 | 
			
		||||
  time_create?: number;
 | 
			
		||||
  time_update?: number;
 | 
			
		||||
  mother?: number;
 | 
			
		||||
  father?: number;
 | 
			
		||||
  birth_year?: number;
 | 
			
		||||
  birth_month?: number;
 | 
			
		||||
  birth_day?: number;
 | 
			
		||||
  dead!: boolean;
 | 
			
		||||
  death_year?: number;
 | 
			
		||||
  death_month?: number;
 | 
			
		||||
  death_day?: number;
 | 
			
		||||
  note?: string;
 | 
			
		||||
 | 
			
		||||
  constructor(m: MemberApi) {
 | 
			
		||||
    this.id = m.id;
 | 
			
		||||
    this.family_id = m.family_id;
 | 
			
		||||
    this.first_name = m.first_name;
 | 
			
		||||
    this.last_name = m.last_name;
 | 
			
		||||
    this.birth_last_name = m.birth_last_name;
 | 
			
		||||
    this.photo_id = m.photo_id;
 | 
			
		||||
    this.signed_photo_id = m.signed_photo_id;
 | 
			
		||||
    this.email = m.email;
 | 
			
		||||
    this.phone = m.phone;
 | 
			
		||||
    this.address = m.address;
 | 
			
		||||
    this.city = m.city;
 | 
			
		||||
    this.postal_code = m.postal_code;
 | 
			
		||||
    this.country = m.country;
 | 
			
		||||
    this.sex = m.sex;
 | 
			
		||||
    this.time_create = m.time_create;
 | 
			
		||||
    this.time_update = m.time_update;
 | 
			
		||||
    this.mother = m.mother;
 | 
			
		||||
    this.father = m.father;
 | 
			
		||||
    this.birth_year = m.birth_year;
 | 
			
		||||
    this.birth_month = m.birth_month;
 | 
			
		||||
    this.birth_day = m.birth_day;
 | 
			
		||||
    this.dead = m.dead;
 | 
			
		||||
    this.death_year = m.death_year;
 | 
			
		||||
    this.death_month = m.death_month;
 | 
			
		||||
    this.death_day = m.death_day;
 | 
			
		||||
    this.note = m.note;
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,16 +1,37 @@
 | 
			
		||||
import { APIClient } from "./ApiClient";
 | 
			
		||||
 | 
			
		||||
interface LenConstraint {
 | 
			
		||||
interface NumberConstraint {
 | 
			
		||||
  min: number;
 | 
			
		||||
  max: number;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export interface LenConstraint {
 | 
			
		||||
  min: number;
 | 
			
		||||
  max: number;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
interface Constraints {
 | 
			
		||||
  date_year: NumberConstraint;
 | 
			
		||||
  date_month: NumberConstraint;
 | 
			
		||||
  date_day: NumberConstraint;
 | 
			
		||||
  photo_allowed_types: string[];
 | 
			
		||||
  photo_max_size: number;
 | 
			
		||||
  mail_len: LenConstraint;
 | 
			
		||||
  user_name_len: LenConstraint;
 | 
			
		||||
  password_len: LenConstraint;
 | 
			
		||||
  family_name_len: LenConstraint;
 | 
			
		||||
  invitation_code_len: LenConstraint;
 | 
			
		||||
  member_first_name: LenConstraint;
 | 
			
		||||
  member_last_name: LenConstraint;
 | 
			
		||||
  member_birth_last_name: LenConstraint;
 | 
			
		||||
  member_email: LenConstraint;
 | 
			
		||||
  member_phone: LenConstraint;
 | 
			
		||||
  member_address: LenConstraint;
 | 
			
		||||
  member_city: LenConstraint;
 | 
			
		||||
  member_postal_code: LenConstraint;
 | 
			
		||||
  member_country: LenConstraint;
 | 
			
		||||
  member_sex: LenConstraint;
 | 
			
		||||
  member_note: LenConstraint;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
interface OIDCProvider {
 | 
			
		||||
@@ -18,10 +39,24 @@ interface OIDCProvider {
 | 
			
		||||
  name: string;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export interface Country {
 | 
			
		||||
  code: string;
 | 
			
		||||
  en: string;
 | 
			
		||||
  fr: string;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export interface CouplesStates {
 | 
			
		||||
  code: string;
 | 
			
		||||
  en: string;
 | 
			
		||||
  fr: string;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export interface ServerConfig {
 | 
			
		||||
  constraints: Constraints;
 | 
			
		||||
  mail: string;
 | 
			
		||||
  oidc_providers: OIDCProvider[];
 | 
			
		||||
  countries: Country[];
 | 
			
		||||
  couples_states: CouplesStates[];
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
let config: ServerConfig | null = null;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user