feat: add currencies (NOK, SEK, DKK) (#128)

This commit is contained in:
Hayden 2022-11-01 15:10:48 -08:00 committed by GitHub
parent 592d4eda55
commit b6b2a2d889
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 25 additions and 4 deletions

View file

@ -126,6 +126,9 @@ const (
CurrencyJpy Currency = "jpy" CurrencyJpy Currency = "jpy"
CurrencyZar Currency = "zar" CurrencyZar Currency = "zar"
CurrencyAud Currency = "aud" CurrencyAud Currency = "aud"
CurrencyNok Currency = "nok"
CurrencySek Currency = "sek"
CurrencyDkk Currency = "dkk"
) )
func (c Currency) String() string { func (c Currency) String() string {
@ -135,7 +138,7 @@ func (c Currency) String() string {
// CurrencyValidator is a validator for the "currency" field enum values. It is called by the builders before save. // CurrencyValidator is a validator for the "currency" field enum values. It is called by the builders before save.
func CurrencyValidator(c Currency) error { func CurrencyValidator(c Currency) error {
switch c { switch c {
case CurrencyUsd, CurrencyEur, CurrencyGbp, CurrencyJpy, CurrencyZar, CurrencyAud: case CurrencyUsd, CurrencyEur, CurrencyGbp, CurrencyJpy, CurrencyZar, CurrencyAud, CurrencyNok, CurrencySek, CurrencyDkk:
return nil return nil
default: default:
return fmt.Errorf("group: invalid enum value for currency field: %q", c) 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: "created_at", Type: field.TypeTime},
{Name: "updated_at", Type: field.TypeTime}, {Name: "updated_at", Type: field.TypeTime},
{Name: "name", Type: field.TypeString, Size: 255}, {Name: "name", Type: field.TypeString, Size: 255},
{Name: "currency", Type: field.TypeEnum, Enums: []string{"usd", "eur", "gbp", "jpy", "zar", "aud"}, Default: "usd"}, {Name: "currency", Type: field.TypeEnum, Enums: []string{"usd", "eur", "gbp", "jpy", "zar", "aud", "nok", "sek", "dkk"}, Default: "usd"},
} }
// GroupsTable holds the schema information for the "groups" table. // GroupsTable holds the schema information for the "groups" table.
GroupsTable = &schema.Table{ GroupsTable = &schema.Table{

View file

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

View file

@ -1,4 +1,4 @@
export type Codes = "USD" | "EUR" | "GBP" | "JPY" | "ZAR" | "AUD"; export type Codes = "USD" | "EUR" | "GBP" | "JPY" | "ZAR" | "AUD" | "NOK" | "SEK" | "DKK";
export type Currency = { export type Currency = {
code: Codes; code: Codes;
@ -44,4 +44,22 @@ export const currencies: Currency[] = [
symbol: "$", symbol: "$",
name: "Australian Dollar", name: "Australian Dollar",
}, },
{
code: "NOK",
local: "nb-NO",
symbol: "kr",
name: "Norwegian Krone",
},
{
code: "SEK",
local: "sv-SE",
symbol: "kr",
name: "Swedish Krona",
},
{
code: "DKK",
local: "da-DK",
symbol: "kr",
name: "Danish Krone",
},
]; ];