Files
go_vndb/defaults.go
2026-05-07 19:34:48 +08:00

44 lines
6.3 KiB
Go

package govndb
const (
defaultUserFields = "lengthvotes,lengthvotes_sum"
defaultUListLabelFields = "count"
)
const (
defaultVNFields = "title,alttitle,titles{lang,title,latin,official,main},aliases,olang,devstatus,released,languages,platforms,image{id,url,dims,sexual,violence,votecount,thumbnail,thumbnail_dims},length,length_minutes,length_votes,description,average,rating,votecount,screenshots{id,url,dims,sexual,violence,votecount,thumbnail,thumbnail_dims,release{id,title,alttitle,languages{lang,title,latin,mtl,main},platforms,media{medium,qty},vns{id,rtype,title,alttitle,released,image{id,url,dims,sexual,violence,votecount,thumbnail,thumbnail_dims},languages,platforms},producers{developer,publisher,id,name,original,aliases,lang,type,description,extlinks{url,label,name,id}},images{id,url,dims,sexual,violence,votecount,thumbnail,thumbnail_dims,type,vn,languages,photo},released,minage,patch,freeware,uncensored,official,has_ero,resolution,engine,voiced,notes,gtin,catalog,extlinks{url,label,name,id}}},relations{relation,relation_official,id,title,alttitle,olang,released,languages,platforms},tags{rating,spoiler,lie,id,name,aliases,description,category,searchable,applicable,vn_count},developers{id,name,original,aliases,lang,type,description,extlinks{url,label,name,id}},editions{eid,lang,name,official},staff{eid,role,note,id,aid,ismain,name,original,lang,gender,description,extlinks{url,label,name,id},aliases{aid,name,latin,ismain}},va{note,staff{id,aid,ismain,name,original,lang,gender,description,extlinks{url,label,name,id},aliases{aid,name,latin,ismain}},character{id,name,original,aliases,description,image{id,url,dims,sexual,violence,votecount},blood_type,height,weight,bust,waist,hips,cup,age,birthday,sex,gender}},extlinks{url,label,name,id}"
defaultReleaseFields = "title,alttitle,languages{lang,title,latin,mtl,main},platforms,media{medium,qty},vns{id,rtype,title,alttitle,released,image{id,url,dims,sexual,violence,votecount,thumbnail,thumbnail_dims},languages,platforms},producers{developer,publisher,id,name,original,aliases,lang,type,description,extlinks{url,label,name,id}},images{id,url,dims,sexual,violence,votecount,thumbnail,thumbnail_dims,type,vn,languages,photo},released,minage,patch,freeware,uncensored,official,has_ero,resolution,engine,voiced,notes,gtin,catalog,extlinks{url,label,name,id}"
defaultProducerFields = "name,original,aliases,lang,type,description,extlinks{url,label,name,id}"
defaultCharacterFields = "name,original,aliases,description,image{id,url,dims,sexual,violence,votecount},blood_type,height,weight,bust,waist,hips,cup,age,birthday,sex,gender,vns{spoiler,role,id,title,alttitle,olang,released,languages,platforms,release{id,title,alttitle,languages{lang,title,latin,mtl,main},platforms,media{medium,qty},vns{id,rtype,title,alttitle,released,image{id,url,dims,sexual,violence,votecount,thumbnail,thumbnail_dims},languages,platforms},producers{developer,publisher,id,name,original,aliases,lang,type,description,extlinks{url,label,name,id}},images{id,url,dims,sexual,violence,votecount,thumbnail,thumbnail_dims,type,vn,languages,photo},released,minage,patch,freeware,uncensored,official,has_ero,resolution,engine,voiced,notes,gtin,catalog,extlinks{url,label,name,id}}},traits{spoiler,lie,id,name,aliases,description,searchable,applicable,sexual,group_id,group_name,char_count}"
defaultStaffFields = "aid,ismain,name,original,lang,gender,description,extlinks{url,label,name,id},aliases{aid,name,latin,ismain}"
defaultTagFields = "name,aliases,description,category,searchable,applicable,vn_count"
defaultTraitFields = "name,aliases,description,searchable,applicable,sexual,group_id,group_name,char_count"
defaultQuoteFields = "quote,score,vn{title,alttitle,titles{lang,title,latin,official,main},aliases,olang,devstatus,released,languages,platforms,image{id,url,dims,sexual,violence,votecount,thumbnail,thumbnail_dims},length,length_minutes,length_votes,description,average,rating,votecount},character{name,original,aliases,description,image{id,url,dims,sexual,violence,votecount},blood_type,height,weight,bust,waist,hips,cup,age,birthday,sex,gender}"
defaultUListFields = "added,voted,lastmod,vote,started,finished,notes,labels{id,label},vn{title,alttitle,titles{lang,title,latin,official,main},aliases,olang,devstatus,released,languages,platforms,image{id,url,dims,sexual,violence,votecount,thumbnail,thumbnail_dims},length,length_minutes,length_votes,description,average,rating,votecount,screenshots{id,url,dims,sexual,violence,votecount,thumbnail,thumbnail_dims},relations{relation,relation_official,id,title,alttitle,olang,released,languages,platforms},tags{rating,spoiler,lie,id,name,aliases,description,category,searchable,applicable,vn_count},developers{id,name,original,aliases,lang,type,description,extlinks{url,label,name,id}},editions{eid,lang,name,official},staff{eid,role,note,id,aid,ismain,name,original,lang,gender,description,extlinks{url,label,name,id},aliases{aid,name,latin,ismain}},va{note,staff{id,aid,ismain,name,original,lang,gender,description,extlinks{url,label,name,id},aliases{aid,name,latin,ismain}},character{id,name,original,aliases,description,image{id,url,dims,sexual,violence,votecount},blood_type,height,weight,bust,waist,hips,cup,age,birthday,sex,gender}},extlinks{url,label,name,id}},releases{list_status,id,title,alttitle,languages{lang,title,latin,mtl,main},platforms,media{medium,qty},vns{id,rtype,title,alttitle,released,image{id,url,dims,sexual,violence,votecount,thumbnail,thumbnail_dims},languages,platforms},producers{developer,publisher,id,name,original,aliases,lang,type,description,extlinks{url,label,name,id}},images{id,url,dims,sexual,violence,votecount,thumbnail,thumbnail_dims,type,vn,languages,photo},released,minage,patch,freeware,uncensored,official,has_ero,resolution,engine,voiced,notes,gtin,catalog,extlinks{url,label,name,id}}"
)
func defaultFieldsForEndpoint(endpoint Endpoint) string {
switch endpoint {
case EndpointVN:
return defaultVNFields
case EndpointRelease:
return defaultReleaseFields
case EndpointProducer:
return defaultProducerFields
case EndpointCharacter:
return defaultCharacterFields
case EndpointStaff:
return defaultStaffFields
case EndpointTag:
return defaultTagFields
case EndpointTrait:
return defaultTraitFields
case EndpointQuote:
return defaultQuoteFields
case EndpointUList:
return defaultUListFields
default:
return ""
}
}