using Books.Api.Domain.Accounts;
using GraphQL.Types;

namespace Books.Api.GraphQL.Types;

public class AccountTypeEnumType : EnumerationGraphType<AccountType>
{
    public AccountTypeEnumType()
    {
        Name = "AccountType";
        Description = "Type of account in the chart of accounts (Danish Standardkontoplan)";

        Add("ASSET", AccountType.Asset, "Aktiver (1000-1999)");
        Add("LIABILITY", AccountType.Liability, "Passiver (2000-2999)");
        Add("EQUITY", AccountType.Equity, "Egenkapital (3000-3999)");
        Add("REVENUE", AccountType.Revenue, "Omsaetning (4000-4999)");
        Add("COGS", AccountType.Cogs, "Vareforbrug (5000-5999)");
        Add("EXPENSE", AccountType.Expense, "Driftsomkostninger (6000-6999)");
        Add("PERSONNEL", AccountType.Personnel, "Personaleomkostninger (7000-7999)");
        Add("FINANCIAL", AccountType.Financial, "Finansielle poster (8000-8999)");
        Add("EXTRAORDINARY", AccountType.Extraordinary, "Ekstraordinaere poster (9000-9999)");
    }
}
