···453453 case models.VanityStatStarCount:
454454 query = `select count(id) from stars where subject_at like 'at://' || ? || '%'`
455455 args = append(args, did)
456456+ case models.VanityStatNone:
457457+ return 0, nil
456458 default:
457459 return 0, fmt.Errorf("invalid vanity stat kind: %s", stat)
458460 }
+1-1
appview/ingester.go
···317317 var stats [2]models.VanityStat
318318 for i, s := range record.Stats {
319319 if i < 2 {
320320- stats[i].Kind = models.VanityStatKind(s)
320320+ stats[i].Kind = models.ParseVanityStatKind(s)
321321 }
322322 }
323323
+24-1
appview/models/profile.go
···6060 VanityStatClosedIssueCount VanityStatKind = "closed-issue-count"
6161 VanityStatRepositoryCount VanityStatKind = "repository-count"
6262 VanityStatStarCount VanityStatKind = "star-count"
6363+ VanityStatNone VanityStatKind = ""
6364)
64656666+func ParseVanityStatKind(s string) VanityStatKind {
6767+ switch s {
6868+ case "merged-pull-request-count":
6969+ return VanityStatMergedPRCount
7070+ case "closed-pull-request-count":
7171+ return VanityStatClosedPRCount
7272+ case "open-pull-request-count":
7373+ return VanityStatOpenPRCount
7474+ case "open-issue-count":
7575+ return VanityStatOpenIssueCount
7676+ case "closed-issue-count":
7777+ return VanityStatClosedIssueCount
7878+ case "repository-count":
7979+ return VanityStatRepositoryCount
8080+ case "star-count":
8181+ return VanityStatStarCount
8282+ default:
8383+ return VanityStatNone
8484+ }
8585+}
8686+6587func (v VanityStatKind) String() string {
6688 switch v {
6789 case VanityStatMergedPRCount:
···78100 return "Repositories"
79101 case VanityStatStarCount:
80102 return "Stars Received"
103103+ default:
104104+ return ""
81105 }
8282- return ""
83106}
8410785108type VanityStat struct {