import {
    fakeDateAfter,
    fakeDatePast,
    fakeEmail,
    fakeFatherName,
    fakeFirstName,
    fakeId,
    fakeLastName,
    fakeNote
} from "./general";
import {faker} from "@faker-js/faker";


export const HrRequestFactory = (count: number) => {
    const fakeDataObjects = [];
  
    for (let i = 0; i < count; i++) {
      const fakeDataObject = {
        id: fakeId(),
        firstname: fakeFirstName(),
        lastname: fakeLastName(),
        email: fakeEmail(),
        father_name: fakeFatherName(),
        request_type: fakeRequestType(),
        request_date: fakeDatePast(),
        contract_end: fakeDateAfter("08-10-2023"),
        note: fakeNote(),
        type:fakeRequestType(),
        status: fakeStatus()
      };
  
      fakeDataObjects.push(fakeDataObject);
    }
  
    return fakeDataObjects;
  };
 
const fakeStatus = () => {
    const statuses = [
        {

            description: 'To status new δηλώνει οτί τοαίτημα είναι σε εξέλιξη',
            id: 1,
            name: 'due',
            type: 'pending',
            view_name: 'pending',
            view_name_el: 'ΣΕ ΕΞΕΛΙΞΗ',
        },
        {

            description: 'To status new δηλώνει οτί το αίτημα έχει ακυρωθεί',
            id: 2,
            name: 'over',
            view_name: 'cancelled',
            type: 'warning',
            view_name_el: 'ΑΚΥΡΩΣΗ',
        },
        {
            description: 'To status new δηλώνει οτί το αίτημα ολοκληρώθηκε',
            id: 3,
            name: 'active',
            type: 'success',
            view_name: 'active',
            view_name_el: 'ΟΛΟΚΛΗΡΩΘΗΚΕ',
        },
    ]

    return faker.helpers.arrayElement(statuses)



}

const fakeRequestType = () => {
    return faker.helpers.arrayElement(['ΑΝΑΝΕΩΣΗ' , 'ΔΙΑΚΟΠΗ'])
}