package domain import ( "fmt" "time" ) type TWVersion struct { Code string Host string Name string Timezone string } type TWServer struct { Key string URL string Open bool } type Tribe struct { ID int64 Tag string Name string ProfileURL string DeletedAt time.Time } type TribeMeta struct { ID int64 Name string Tag string ProfileURL string } type NullTribeMeta struct { Tribe TribeMeta Valid bool } type PlayerMeta struct { ID int64 Name string ProfileURL string Tribe NullTribeMeta } type NullPlayerMeta struct { Player PlayerMeta Valid bool } type Village struct { ID int64 FullName string ProfileURL string Points int64 Player NullPlayerMeta } type VillageMeta struct { ID int64 FullName string ProfileURL string Player NullPlayerMeta } type Ennoblement struct { ID int64 Village VillageMeta NewOwner NullPlayerMeta CreatedAt time.Time } type TWServerNotFoundError struct { VersionCode string Key string } var _ TranslatableError = TWServerNotFoundError{} func (e TWServerNotFoundError) Error() string { return fmt.Sprintf("server (versionCode=%s,key=%s) not found", e.VersionCode, e.Key) } func (e TWServerNotFoundError) Slug() string { return "tw-server-not-found" } func (e TWServerNotFoundError) Params() map[string]any { return map[string]any{ "VersionCode": e.VersionCode, "Key": e.Key, } } type TribeTagNotFoundError struct { VersionCode string ServerKey string Tag string } var _ TranslatableError = TribeTagNotFoundError{} func (e TribeTagNotFoundError) Error() string { return fmt.Sprintf("tribe (versionCode=%s,serverKey=%s,tag=%s) not found", e.VersionCode, e.ServerKey, e.Tag) } func (e TribeTagNotFoundError) Slug() string { return "tribe-tag-not-found" } func (e TribeTagNotFoundError) Params() map[string]any { return map[string]any{ "VersionCode": e.VersionCode, "ServerKey": e.ServerKey, "Tag": e.Tag, } } type TribeIDNotFoundError struct { VersionCode string ServerKey string ID int64 } var _ TranslatableError = TribeIDNotFoundError{} func (e TribeIDNotFoundError) Error() string { return fmt.Sprintf("tribe (versionCode=%s,serverKey=%s,id=%d) not found", e.VersionCode, e.ServerKey, e.ID) } func (e TribeIDNotFoundError) Slug() string { return "tribe-id-not-found" } func (e TribeIDNotFoundError) Params() map[string]any { return map[string]any{ "VersionCode": e.VersionCode, "ServerKey": e.ServerKey, "ID": e.ID, } }