feat: add INR currency and sort currencies (#141)

This commit is contained in:
Hayden 2022-11-12 14:54:24 -09:00 committed by GitHub
parent 8e1947d971
commit 976f68252d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 36 additions and 29 deletions

View file

@ -129,6 +129,7 @@ const (
CurrencyNok Currency = "nok"
CurrencySek Currency = "sek"
CurrencyDkk Currency = "dkk"
CurrencyInr Currency = "inr"
)
func (c Currency) String() string {
@ -138,7 +139,7 @@ func (c Currency) String() string {
// CurrencyValidator is a validator for the "currency" field enum values. It is called by the builders before save.
func CurrencyValidator(c Currency) error {
switch c {
case CurrencyUsd, CurrencyEur, CurrencyGbp, CurrencyJpy, CurrencyZar, CurrencyAud, CurrencyNok, CurrencySek, CurrencyDkk:
case CurrencyUsd, CurrencyEur, CurrencyGbp, CurrencyJpy, CurrencyZar, CurrencyAud, CurrencyNok, CurrencySek, CurrencyDkk, CurrencyInr:
return nil
default:
return fmt.Errorf("group: invalid enum value for currency field: %q", c)

View file

@ -127,7 +127,7 @@ var (
{Name: "created_at", Type: field.TypeTime},
{Name: "updated_at", Type: field.TypeTime},
{Name: "name", Type: field.TypeString, Size: 255},
{Name: "currency", Type: field.TypeEnum, Enums: []string{"usd", "eur", "gbp", "jpy", "zar", "aud", "nok", "sek", "dkk"}, Default: "usd"},
{Name: "currency", Type: field.TypeEnum, Enums: []string{"usd", "eur", "gbp", "jpy", "zar", "aud", "nok", "sek", "dkk", "inr"}, Default: "usd"},
}
// GroupsTable holds the schema information for the "groups" table.
GroupsTable = &schema.Table{

View file

@ -27,7 +27,7 @@ func (Group) Fields() []ent.Field {
NotEmpty(),
field.Enum("currency").
Default("usd").
Values("usd", "eur", "gbp", "jpy", "zar", "aud", "nok", "sek", "dkk"),
Values("usd", "eur", "gbp", "jpy", "zar", "aud", "nok", "sek", "dkk", "inr"),
}
}

View file

@ -1,4 +1,4 @@
export type Codes = "USD" | "EUR" | "GBP" | "JPY" | "ZAR" | "AUD" | "NOK" | "SEK" | "DKK";
export type Codes = "USD" | "EUR" | "GBP" | "JPY" | "ZAR" | "AUD" | "NOK" | "SEK" | "DKK" | "INR";
export type Currency = {
code: Codes;
@ -9,16 +9,10 @@ export type Currency = {
export const currencies: Currency[] = [
{
code: "USD",
local: "en-US",
code: "AUD",
local: "en-AU",
symbol: "$",
name: "US Dollar",
},
{
code: "EUR",
local: "de-DE",
symbol: "€",
name: "Euro",
name: "Australian Dollar",
},
{
code: "GBP",
@ -26,30 +20,42 @@ export const currencies: Currency[] = [
symbol: "£",
name: "British Pound",
},
{
code: "DKK",
local: "da-DK",
symbol: "kr",
name: "Danish Krone",
},
{
code: "EUR",
local: "de-DE",
symbol: "€",
name: "Euro",
},
{
code: "INR",
local: "en-IN",
symbol: "₹",
name: "Indian Rupee",
},
{
code: "JPY",
local: "ja-JP",
symbol: "¥",
name: "Japanese Yen",
},
{
code: "ZAR",
local: "en-ZA",
symbol: "R",
name: "South African Rand",
},
{
code: "AUD",
local: "en-AU",
symbol: "$",
name: "Australian Dollar",
},
{
code: "NOK",
local: "nb-NO",
symbol: "kr",
name: "Norwegian Krone",
},
{
code: "ZAR",
local: "en-ZA",
symbol: "R",
name: "South African Rand",
},
{
code: "SEK",
local: "sv-SE",
@ -57,9 +63,9 @@ export const currencies: Currency[] = [
name: "Swedish Krona",
},
{
code: "DKK",
local: "da-DK",
symbol: "kr",
name: "Danish Krone",
code: "USD",
local: "en-US",
symbol: "$",
name: "US Dollar",
},
];