Merge remote-tracking branch 'origin/main'

# Conflicts:
#	domain/structures.go
This commit is contained in:
denver 2023-02-12 23:35:06 +03:00
commit f44e6b104b

View File

@ -1,23 +1,24 @@
package domain package domain
// type JavaVersion struct {
// VersionNums `json:"version"`
// Specifics []struct {
// Os string `json:"os"`
// Arch string `json:"arch"`
// URL string `json:"URL"`
// Sha1 string `json:"SHA1"`
// } `json:"specifics"`
// }
type JavaVersion struct { type JavaVersion struct {
VersionNums `json:"versionnums"` VersionNums `json:"version"`
Specifics []struct { Specifics []JavaVersionSpecifics `json:"specifics"`
Os string `json:"os"` }
Arch string `json:"arch"`
URL string `json:"URL"` type JavaVersionSpecifics struct {
Sha1 string `json:"SHA1"` Os string `json:"os"`
} `json:"specifics"` Arch string `json:"arch"`
URL string `json:"URL"`
Sha1 string `json:"SHA1"`
}
func (jv *JavaVersion) FindOs(os string, arch string) *JavaVersionSpecifics {
for _, s := range jv.Specifics {
if s.Os == os && s.Arch == arch {
return &s
}
}
return nil
} }
type VersionNums struct { type VersionNums struct {
@ -38,10 +39,11 @@ type Version struct {
ID string `json:"id"` ID string `json:"id"`
Libraries []Lib `json:"libraries"` Libraries []Lib `json:"libraries"`
//ClientLog LogCfg //ClientLog LogCfg
MainClass string `json:"mainClass"` MainClass string `json:"mainClass"`
GameArgs []Argument GameArgs []Argument
JVMArgs []Argument JVMArgs []Argument
Type string `json:"type"` Type string `json:"type"`
JavaVersion JavaVersion `json:"javaVersion"`
} }
type AssetIndex struct { type AssetIndex struct {
@ -50,6 +52,16 @@ type AssetIndex struct {
Artifact Artifact
} }
// type Argument struct {
// Value string `json:"value"`
// Rules []Rule `json:"rules"`
// }
type JavaVersionClientDistribution struct { //TODO Rename
Component string `json:"component"`
MajorVersion int `json:"majorVersion"`
}
type Rule struct { type Rule struct {
Action RuleAct `json:"action" mapstructure:"action"` Action RuleAct `json:"action" mapstructure:"action"`
// OS information. All fields are regexes. // OS information. All fields are regexes.