import { registerAs } from "@nestjs/config"

export const appSetting = {
  max_invalid_password_attempt: 3,
  can_login_after_locked: 10,
  can_request_OTP_after_minutes: 1,
  access_token_expiry_in_minutes: 1440,
  refresh_token_expiry_in_days: 7,
  payroll_generate_date: 21,
}

export const defaultAdmins = [
  {
    first_name: "admin",
    last_name: "admin",
    slug: "admin-admin",
    email: "admin@admin.com",
    password: "Admin@123",
  },
]

export const defaultCompanies = [
  {
    name: "Moweb",
    address_id: null,
    admin_first_name: "Company",
    admin_last_name: "Admin",
    admin_email: "admin@moweb.com",
    admin_password: "Admin@123",
    phone_number: "+1234567890",
    subscription_start_date: new Date().toISOString().split("T")[0], // Current date in YYYY-MM-DD format
    subscription_duration: 12,
    subscription_duration_type: "Months",
    subscription_amount: 1000,
  },
]

export const availableCronTypes = [
  "generate_payroll",
  "year_end_carry_forward",
  "subscription_expiry_reminders",
  "project_alerts",
  "monthly_reports",
  "auto_clock_out_and_stop_time_tracking",
]

export default registerAs("APP", () => ({
  env: process.env.NODE_ENV || "local",
  port: parseInt(process.env.PORT, 10) || 3001,

  pagination: {
    take: "10",
    skip: "0",
  },

  datetimeFormat: "YYYY-MM-DD HH:mm:ss",
}))
