···1919var _ = math.E
2020var _ = sort.Sort
21212222+func (t *LexiconSchema) MarshalCBOR(w io.Writer) error {
2323+ if t == nil {
2424+ _, err := w.Write(cbg.CborNull)
2525+ return err
2626+ }
2727+2828+ cw := cbg.NewCborWriter(w)
2929+3030+ if _, err := cw.Write([]byte{162}); err != nil {
3131+ return err
3232+ }
3333+3434+ // t.LexiconTypeID (string) (string)
3535+ if len("$type") > 1000000 {
3636+ return xerrors.Errorf("Value in field \"$type\" was too long")
3737+ }
3838+3939+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("$type"))); err != nil {
4040+ return err
4141+ }
4242+ if _, err := cw.WriteString(string("$type")); err != nil {
4343+ return err
4444+ }
4545+4646+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("com.atproto.lexicon.schema"))); err != nil {
4747+ return err
4848+ }
4949+ if _, err := cw.WriteString(string("com.atproto.lexicon.schema")); err != nil {
5050+ return err
5151+ }
5252+5353+ // t.Lexicon (int64) (int64)
5454+ if len("lexicon") > 1000000 {
5555+ return xerrors.Errorf("Value in field \"lexicon\" was too long")
5656+ }
5757+5858+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("lexicon"))); err != nil {
5959+ return err
6060+ }
6161+ if _, err := cw.WriteString(string("lexicon")); err != nil {
6262+ return err
6363+ }
6464+6565+ if t.Lexicon >= 0 {
6666+ if err := cw.WriteMajorTypeHeader(cbg.MajUnsignedInt, uint64(t.Lexicon)); err != nil {
6767+ return err
6868+ }
6969+ } else {
7070+ if err := cw.WriteMajorTypeHeader(cbg.MajNegativeInt, uint64(-t.Lexicon-1)); err != nil {
7171+ return err
7272+ }
7373+ }
7474+7575+ return nil
7676+}
7777+7878+func (t *LexiconSchema) UnmarshalCBOR(r io.Reader) (err error) {
7979+ *t = LexiconSchema{}
8080+8181+ cr := cbg.NewCborReader(r)
8282+8383+ maj, extra, err := cr.ReadHeader()
8484+ if err != nil {
8585+ return err
8686+ }
8787+ defer func() {
8888+ if err == io.EOF {
8989+ err = io.ErrUnexpectedEOF
9090+ }
9191+ }()
9292+9393+ if maj != cbg.MajMap {
9494+ return fmt.Errorf("cbor input should be of type map")
9595+ }
9696+9797+ if extra > cbg.MaxLength {
9898+ return fmt.Errorf("LexiconSchema: map struct too large (%d)", extra)
9999+ }
100100+101101+ n := extra
102102+103103+ nameBuf := make([]byte, 7)
104104+ for i := uint64(0); i < n; i++ {
105105+ nameLen, ok, err := cbg.ReadFullStringIntoBuf(cr, nameBuf, 1000000)
106106+ if err != nil {
107107+ return err
108108+ }
109109+110110+ if !ok {
111111+ // Field doesn't exist on this type, so ignore it
112112+ if err := cbg.ScanForLinks(cr, func(cid.Cid) {}); err != nil {
113113+ return err
114114+ }
115115+ continue
116116+ }
117117+118118+ switch string(nameBuf[:nameLen]) {
119119+ // t.LexiconTypeID (string) (string)
120120+ case "$type":
121121+122122+ {
123123+ sval, err := cbg.ReadStringWithMax(cr, 1000000)
124124+ if err != nil {
125125+ return err
126126+ }
127127+128128+ t.LexiconTypeID = string(sval)
129129+ }
130130+ // t.Lexicon (int64) (int64)
131131+ case "lexicon":
132132+ {
133133+ maj, extra, err := cr.ReadHeader()
134134+ if err != nil {
135135+ return err
136136+ }
137137+ var extraI int64
138138+ switch maj {
139139+ case cbg.MajUnsignedInt:
140140+ extraI = int64(extra)
141141+ if extraI < 0 {
142142+ return fmt.Errorf("int64 positive overflow")
143143+ }
144144+ case cbg.MajNegativeInt:
145145+ extraI = int64(extra)
146146+ if extraI < 0 {
147147+ return fmt.Errorf("int64 negative overflow")
148148+ }
149149+ extraI = -1 - extraI
150150+ default:
151151+ return fmt.Errorf("wrong type for int64 field: %d", maj)
152152+ }
153153+154154+ t.Lexicon = int64(extraI)
155155+ }
156156+157157+ default:
158158+ // Field doesn't exist on this type, so ignore it
159159+ if err := cbg.ScanForLinks(r, func(cid.Cid) {}); err != nil {
160160+ return err
161161+ }
162162+ }
163163+ }
164164+165165+ return nil
166166+}
22167func (t *RepoStrongRef) MarshalCBOR(w io.Writer) error {
23168 if t == nil {
24169 _, err := w.Write(cbg.CborNull)
+19
api/atproto/lexiconschema.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.lexicon.schema
66+77+import (
88+ "github.com/bluesky-social/indigo/lex/util"
99+)
1010+1111+func init() {
1212+ util.RegisterType("com.atproto.lexicon.schema", &LexiconSchema{})
1313+} //
1414+// RECORDTYPE: LexiconSchema
1515+type LexiconSchema struct {
1616+ LexiconTypeID string `json:"$type,const=com.atproto.lexicon.schema" cborgen:"$type,const=com.atproto.lexicon.schema"`
1717+ // lexicon: Indicates the 'version' of the Lexicon language. Must be '1' for the current atproto/Lexicon schema system.
1818+ Lexicon int64 `json:"lexicon" cborgen:"lexicon"`
1919+}
+2
api/atproto/servercreateSession.go
···12121313// ServerCreateSession_Input is the input argument to a com.atproto.server.createSession call.
1414type ServerCreateSession_Input struct {
1515+ // allowTakendown: When true, instead of throwing error for takendown accounts, a valid response with a narrow scoped token will be returned
1616+ AllowTakendown *bool `json:"allowTakendown,omitempty" cborgen:"allowTakendown,omitempty"`
1517 AuthFactorToken *string `json:"authFactorToken,omitempty" cborgen:"authFactorToken,omitempty"`
1618 // identifier: Handle or other identifier supported by the server for the authenticating user.
1719 Identifier string `json:"identifier" cborgen:"identifier"`
+30
api/atproto/tempaddReservedHandle.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package atproto
44+55+// schema: com.atproto.temp.addReservedHandle
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// TempAddReservedHandle_Input is the input argument to a com.atproto.temp.addReservedHandle call.
1414+type TempAddReservedHandle_Input struct {
1515+ Handle string `json:"handle" cborgen:"handle"`
1616+}
1717+1818+// TempAddReservedHandle_Output is the output of a com.atproto.temp.addReservedHandle call.
1919+type TempAddReservedHandle_Output struct {
2020+}
2121+2222+// TempAddReservedHandle calls the XRPC method "com.atproto.temp.addReservedHandle".
2323+func TempAddReservedHandle(ctx context.Context, c *xrpc.Client, input *TempAddReservedHandle_Input) (*TempAddReservedHandle_Output, error) {
2424+ var out TempAddReservedHandle_Output
2525+ if err := c.Do(ctx, xrpc.Procedure, "application/json", "com.atproto.temp.addReservedHandle", nil, input, &out); err != nil {
2626+ return nil, err
2727+ }
2828+2929+ return &out, nil
3030+}
+2
api/bsky/actorgetSuggestions.go
···1414type ActorGetSuggestions_Output struct {
1515 Actors []*ActorDefs_ProfileView `json:"actors" cborgen:"actors"`
1616 Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1717+ // recId: Snowflake for this recommendation, use when submitting recommendation events.
1818+ RecId *int64 `json:"recId,omitempty" cborgen:"recId,omitempty"`
1719}
18201921// ActorGetSuggestions calls the XRPC method "app.bsky.actor.getSuggestions".
+154-1
api/bsky/cbor_gen.go
···47864786 }
4787478747884788 cw := cbg.NewCborWriter(w)
47894789- fieldCount := 9
47894789+ fieldCount := 10
4790479047914791 if t.AcceptsInteractions == nil {
47924792 fieldCount--
47934793 }
4794479447954795 if t.Avatar == nil {
47964796+ fieldCount--
47974797+ }
47984798+47994799+ if t.ContentMode == nil {
47964800 fieldCount--
47974801 }
47984802···49134917 }
49144918 if _, err := cw.WriteString(string(t.CreatedAt)); err != nil {
49154919 return err
49204920+ }
49214921+49224922+ // t.ContentMode (string) (string)
49234923+ if t.ContentMode != nil {
49244924+49254925+ if len("contentMode") > 1000000 {
49264926+ return xerrors.Errorf("Value in field \"contentMode\" was too long")
49274927+ }
49284928+49294929+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("contentMode"))); err != nil {
49304930+ return err
49314931+ }
49324932+ if _, err := cw.WriteString(string("contentMode")); err != nil {
49334933+ return err
49344934+ }
49354935+49364936+ if t.ContentMode == nil {
49374937+ if _, err := cw.Write(cbg.CborNull); err != nil {
49384938+ return err
49394939+ }
49404940+ } else {
49414941+ if len(*t.ContentMode) > 1000000 {
49424942+ return xerrors.Errorf("Value in field t.ContentMode was too long")
49434943+ }
49444944+49454945+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len(*t.ContentMode))); err != nil {
49464946+ return err
49474947+ }
49484948+ if _, err := cw.WriteString(string(*t.ContentMode)); err != nil {
49494949+ return err
49504950+ }
49514951+ }
49164952 }
4917495349184954 // t.Description (string) (string)
···51395175 }
5140517651415177 t.CreatedAt = string(sval)
51785178+ }
51795179+ // t.ContentMode (string) (string)
51805180+ case "contentMode":
51815181+51825182+ {
51835183+ b, err := cr.ReadByte()
51845184+ if err != nil {
51855185+ return err
51865186+ }
51875187+ if b != cbg.CborNull[0] {
51885188+ if err := cr.UnreadByte(); err != nil {
51895189+ return err
51905190+ }
51915191+51925192+ sval, err := cbg.ReadStringWithMax(cr, 1000000)
51935193+ if err != nil {
51945194+ return err
51955195+ }
51965196+51975197+ t.ContentMode = (*string)(&sval)
51985198+ }
51425199 }
51435200 // t.Description (string) (string)
51445201 case "description":
···6103616061046161 if extra > cbg.MaxLength {
61056162 return fmt.Errorf("FeedThreadgate_MentionRule: map struct too large (%d)", extra)
61636163+ }
61646164+61656165+ n := extra
61666166+61676167+ nameBuf := make([]byte, 5)
61686168+ for i := uint64(0); i < n; i++ {
61696169+ nameLen, ok, err := cbg.ReadFullStringIntoBuf(cr, nameBuf, 1000000)
61706170+ if err != nil {
61716171+ return err
61726172+ }
61736173+61746174+ if !ok {
61756175+ // Field doesn't exist on this type, so ignore it
61766176+ if err := cbg.ScanForLinks(cr, func(cid.Cid) {}); err != nil {
61776177+ return err
61786178+ }
61796179+ continue
61806180+ }
61816181+61826182+ switch string(nameBuf[:nameLen]) {
61836183+ // t.LexiconTypeID (string) (string)
61846184+ case "$type":
61856185+61866186+ {
61876187+ sval, err := cbg.ReadStringWithMax(cr, 1000000)
61886188+ if err != nil {
61896189+ return err
61906190+ }
61916191+61926192+ t.LexiconTypeID = string(sval)
61936193+ }
61946194+61956195+ default:
61966196+ // Field doesn't exist on this type, so ignore it
61976197+ if err := cbg.ScanForLinks(r, func(cid.Cid) {}); err != nil {
61986198+ return err
61996199+ }
62006200+ }
62016201+ }
62026202+62036203+ return nil
62046204+}
62056205+func (t *FeedThreadgate_FollowerRule) MarshalCBOR(w io.Writer) error {
62066206+ if t == nil {
62076207+ _, err := w.Write(cbg.CborNull)
62086208+ return err
62096209+ }
62106210+62116211+ cw := cbg.NewCborWriter(w)
62126212+62136213+ if _, err := cw.Write([]byte{161}); err != nil {
62146214+ return err
62156215+ }
62166216+62176217+ // t.LexiconTypeID (string) (string)
62186218+ if len("$type") > 1000000 {
62196219+ return xerrors.Errorf("Value in field \"$type\" was too long")
62206220+ }
62216221+62226222+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("$type"))); err != nil {
62236223+ return err
62246224+ }
62256225+ if _, err := cw.WriteString(string("$type")); err != nil {
62266226+ return err
62276227+ }
62286228+62296229+ if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("app.bsky.feed.threadgate#followerRule"))); err != nil {
62306230+ return err
62316231+ }
62326232+ if _, err := cw.WriteString(string("app.bsky.feed.threadgate#followerRule")); err != nil {
62336233+ return err
62346234+ }
62356235+ return nil
62366236+}
62376237+62386238+func (t *FeedThreadgate_FollowerRule) UnmarshalCBOR(r io.Reader) (err error) {
62396239+ *t = FeedThreadgate_FollowerRule{}
62406240+62416241+ cr := cbg.NewCborReader(r)
62426242+62436243+ maj, extra, err := cr.ReadHeader()
62446244+ if err != nil {
62456245+ return err
62466246+ }
62476247+ defer func() {
62486248+ if err == io.EOF {
62496249+ err = io.ErrUnexpectedEOF
62506250+ }
62516251+ }()
62526252+62536253+ if maj != cbg.MajMap {
62546254+ return fmt.Errorf("cbor input should be of type map")
62556255+ }
62566256+62576257+ if extra > cbg.MaxLength {
62586258+ return fmt.Errorf("FeedThreadgate_FollowerRule: map struct too large (%d)", extra)
61066259 }
6107626061086261 n := extra
+9
api/bsky/feeddefs.go
···8080 AcceptsInteractions *bool `json:"acceptsInteractions,omitempty" cborgen:"acceptsInteractions,omitempty"`
8181 Avatar *string `json:"avatar,omitempty" cborgen:"avatar,omitempty"`
8282 Cid string `json:"cid" cborgen:"cid"`
8383+ ContentMode *string `json:"contentMode,omitempty" cborgen:"contentMode,omitempty"`
8384 Creator *ActorDefs_ProfileView `json:"creator" cborgen:"creator"`
8485 Description *string `json:"description,omitempty" cborgen:"description,omitempty"`
8586 DescriptionFacets []*RichtextFacet `json:"descriptionFacets,omitempty" cborgen:"descriptionFacets,omitempty"`
···361362 Repost string `json:"repost" cborgen:"repost"`
362363}
363364365365+// FeedDefs_ThreadContext is a "threadContext" in the app.bsky.feed.defs schema.
366366+//
367367+// Metadata about this post within the context of the thread it is in.
368368+type FeedDefs_ThreadContext struct {
369369+ RootAuthorLike *string `json:"rootAuthorLike,omitempty" cborgen:"rootAuthorLike,omitempty"`
370370+}
371371+364372// FeedDefs_ThreadViewPost is a "threadViewPost" in the app.bsky.feed.defs schema.
365373//
366374// RECORDTYPE: FeedDefs_ThreadViewPost
···369377 Parent *FeedDefs_ThreadViewPost_Parent `json:"parent,omitempty" cborgen:"parent,omitempty"`
370378 Post *FeedDefs_PostView `json:"post" cborgen:"post"`
371379 Replies []*FeedDefs_ThreadViewPost_Replies_Elem `json:"replies,omitempty" cborgen:"replies,omitempty"`
380380+ ThreadContext *FeedDefs_ThreadContext `json:"threadContext,omitempty" cborgen:"threadContext,omitempty"`
372381}
373382374383type FeedDefs_ThreadViewPost_Parent struct {
+1
api/bsky/feedgenerator.go
···2424 // acceptsInteractions: Declaration that a feed accepts feedback interactions from a client through app.bsky.feed.sendInteractions
2525 AcceptsInteractions *bool `json:"acceptsInteractions,omitempty" cborgen:"acceptsInteractions,omitempty"`
2626 Avatar *util.LexBlob `json:"avatar,omitempty" cborgen:"avatar,omitempty"`
2727+ ContentMode *string `json:"contentMode,omitempty" cborgen:"contentMode,omitempty"`
2728 CreatedAt string `json:"createdAt" cborgen:"createdAt"`
2829 Description *string `json:"description,omitempty" cborgen:"description,omitempty"`
2930 DescriptionFacets []*RichtextFacet `json:"descriptionFacets,omitempty" cborgen:"descriptionFacets,omitempty"`
+23
api/bsky/feedthreadgate.go
···30303131type FeedThreadgate_Allow_Elem struct {
3232 FeedThreadgate_MentionRule *FeedThreadgate_MentionRule
3333+ FeedThreadgate_FollowerRule *FeedThreadgate_FollowerRule
3334 FeedThreadgate_FollowingRule *FeedThreadgate_FollowingRule
3435 FeedThreadgate_ListRule *FeedThreadgate_ListRule
3536}
···3839 if t.FeedThreadgate_MentionRule != nil {
3940 t.FeedThreadgate_MentionRule.LexiconTypeID = "app.bsky.feed.threadgate#mentionRule"
4041 return json.Marshal(t.FeedThreadgate_MentionRule)
4242+ }
4343+ if t.FeedThreadgate_FollowerRule != nil {
4444+ t.FeedThreadgate_FollowerRule.LexiconTypeID = "app.bsky.feed.threadgate#followerRule"
4545+ return json.Marshal(t.FeedThreadgate_FollowerRule)
4146 }
4247 if t.FeedThreadgate_FollowingRule != nil {
4348 t.FeedThreadgate_FollowingRule.LexiconTypeID = "app.bsky.feed.threadgate#followingRule"
···5964 case "app.bsky.feed.threadgate#mentionRule":
6065 t.FeedThreadgate_MentionRule = new(FeedThreadgate_MentionRule)
6166 return json.Unmarshal(b, t.FeedThreadgate_MentionRule)
6767+ case "app.bsky.feed.threadgate#followerRule":
6868+ t.FeedThreadgate_FollowerRule = new(FeedThreadgate_FollowerRule)
6969+ return json.Unmarshal(b, t.FeedThreadgate_FollowerRule)
6270 case "app.bsky.feed.threadgate#followingRule":
6371 t.FeedThreadgate_FollowingRule = new(FeedThreadgate_FollowingRule)
6472 return json.Unmarshal(b, t.FeedThreadgate_FollowingRule)
···8088 if t.FeedThreadgate_MentionRule != nil {
8189 return t.FeedThreadgate_MentionRule.MarshalCBOR(w)
8290 }
9191+ if t.FeedThreadgate_FollowerRule != nil {
9292+ return t.FeedThreadgate_FollowerRule.MarshalCBOR(w)
9393+ }
8394 if t.FeedThreadgate_FollowingRule != nil {
8495 return t.FeedThreadgate_FollowingRule.MarshalCBOR(w)
8596 }
···98109 case "app.bsky.feed.threadgate#mentionRule":
99110 t.FeedThreadgate_MentionRule = new(FeedThreadgate_MentionRule)
100111 return t.FeedThreadgate_MentionRule.UnmarshalCBOR(bytes.NewReader(b))
112112+ case "app.bsky.feed.threadgate#followerRule":
113113+ t.FeedThreadgate_FollowerRule = new(FeedThreadgate_FollowerRule)
114114+ return t.FeedThreadgate_FollowerRule.UnmarshalCBOR(bytes.NewReader(b))
101115 case "app.bsky.feed.threadgate#followingRule":
102116 t.FeedThreadgate_FollowingRule = new(FeedThreadgate_FollowingRule)
103117 return t.FeedThreadgate_FollowingRule.UnmarshalCBOR(bytes.NewReader(b))
···108122 default:
109123 return nil
110124 }
125125+}
126126+127127+// FeedThreadgate_FollowerRule is a "followerRule" in the app.bsky.feed.threadgate schema.
128128+//
129129+// Allow replies from actors who follow you.
130130+//
131131+// RECORDTYPE: FeedThreadgate_FollowerRule
132132+type FeedThreadgate_FollowerRule struct {
133133+ LexiconTypeID string `json:"$type,const=app.bsky.feed.threadgate#followerRule" cborgen:"$type,const=app.bsky.feed.threadgate#followerRule"`
111134}
112135113136// FeedThreadgate_FollowingRule is a "followingRule" in the app.bsky.feed.threadgate schema.
+3-1
api/bsky/graphgetSuggestedFollowsByActor.go
···1313// GraphGetSuggestedFollowsByActor_Output is the output of a app.bsky.graph.getSuggestedFollowsByActor call.
1414type GraphGetSuggestedFollowsByActor_Output struct {
1515 // isFallback: If true, response has fallen-back to generic results, and is not scoped using relativeToDid
1616- IsFallback *bool `json:"isFallback,omitempty" cborgen:"isFallback,omitempty"`
1616+ IsFallback *bool `json:"isFallback,omitempty" cborgen:"isFallback,omitempty"`
1717+ // recId: Snowflake for this recommendation, use when submitting recommendation events.
1818+ RecId *int64 `json:"recId,omitempty" cborgen:"recId,omitempty"`
1719 Suggestions []*ActorDefs_ProfileView `json:"suggestions" cborgen:"suggestions"`
1820}
1921
+35
api/bsky/graphsearchStarterPacks.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.graph.searchStarterPacks
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// GraphSearchStarterPacks_Output is the output of a app.bsky.graph.searchStarterPacks call.
1414+type GraphSearchStarterPacks_Output struct {
1515+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1616+ StarterPacks []*GraphDefs_StarterPackViewBasic `json:"starterPacks" cborgen:"starterPacks"`
1717+}
1818+1919+// GraphSearchStarterPacks calls the XRPC method "app.bsky.graph.searchStarterPacks".
2020+//
2121+// q: Search query string. Syntax, phrase, boolean, and faceting is unspecified, but Lucene query syntax is recommended.
2222+func GraphSearchStarterPacks(ctx context.Context, c *xrpc.Client, cursor string, limit int64, q string) (*GraphSearchStarterPacks_Output, error) {
2323+ var out GraphSearchStarterPacks_Output
2424+2525+ params := map[string]interface{}{
2626+ "cursor": cursor,
2727+ "limit": limit,
2828+ "q": q,
2929+ }
3030+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.graph.searchStarterPacks", params, nil, &out); err != nil {
3131+ return nil, err
3232+ }
3333+3434+ return &out, nil
3535+}
···1313type UnspeccedDefs_SkeletonSearchPost struct {
1414 Uri string `json:"uri" cborgen:"uri"`
1515}
1616+1717+// UnspeccedDefs_SkeletonSearchStarterPack is a "skeletonSearchStarterPack" in the app.bsky.unspecced.defs schema.
1818+type UnspeccedDefs_SkeletonSearchStarterPack struct {
1919+ Uri string `json:"uri" cborgen:"uri"`
2020+}
2121+2222+// UnspeccedDefs_TrendingTopic is a "trendingTopic" in the app.bsky.unspecced.defs schema.
2323+type UnspeccedDefs_TrendingTopic struct {
2424+ Description *string `json:"description,omitempty" cborgen:"description,omitempty"`
2525+ DisplayName *string `json:"displayName,omitempty" cborgen:"displayName,omitempty"`
2626+ Link string `json:"link" cborgen:"link"`
2727+ Topic string `json:"topic" cborgen:"topic"`
2828+}
+2
api/bsky/unspeccedgetSuggestionsSkeleton.go
···1414type UnspeccedGetSuggestionsSkeleton_Output struct {
1515 Actors []*UnspeccedDefs_SkeletonSearchActor `json:"actors" cborgen:"actors"`
1616 Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1717+ // recId: Snowflake for this recommendation, use when submitting recommendation events.
1818+ RecId *int64 `json:"recId,omitempty" cborgen:"recId,omitempty"`
1719 // relativeToDid: DID of the account these suggestions are relative to. If this is returned undefined, suggestions are based on the viewer.
1820 RelativeToDid *string `json:"relativeToDid,omitempty" cborgen:"relativeToDid,omitempty"`
1921}
+34
api/bsky/unspeccedgetTrendingTopics.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.unspecced.getTrendingTopics
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// UnspeccedGetTrendingTopics_Output is the output of a app.bsky.unspecced.getTrendingTopics call.
1414+type UnspeccedGetTrendingTopics_Output struct {
1515+ Suggested []*UnspeccedDefs_TrendingTopic `json:"suggested" cborgen:"suggested"`
1616+ Topics []*UnspeccedDefs_TrendingTopic `json:"topics" cborgen:"topics"`
1717+}
1818+1919+// UnspeccedGetTrendingTopics calls the XRPC method "app.bsky.unspecced.getTrendingTopics".
2020+//
2121+// viewer: DID of the account making the request (not included for public/unauthenticated queries). Used to boost followed accounts in ranking.
2222+func UnspeccedGetTrendingTopics(ctx context.Context, c *xrpc.Client, limit int64, viewer string) (*UnspeccedGetTrendingTopics_Output, error) {
2323+ var out UnspeccedGetTrendingTopics_Output
2424+2525+ params := map[string]interface{}{
2626+ "limit": limit,
2727+ "viewer": viewer,
2828+ }
2929+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.unspecced.getTrendingTopics", params, nil, &out); err != nil {
3030+ return nil, err
3131+ }
3232+3333+ return &out, nil
3434+}
+40
api/bsky/unspeccedsearchStarterPacksSkeleton.go
···11+// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.
22+33+package bsky
44+55+// schema: app.bsky.unspecced.searchStarterPacksSkeleton
66+77+import (
88+ "context"
99+1010+ "github.com/bluesky-social/indigo/xrpc"
1111+)
1212+1313+// UnspeccedSearchStarterPacksSkeleton_Output is the output of a app.bsky.unspecced.searchStarterPacksSkeleton call.
1414+type UnspeccedSearchStarterPacksSkeleton_Output struct {
1515+ Cursor *string `json:"cursor,omitempty" cborgen:"cursor,omitempty"`
1616+ // hitsTotal: Count of search hits. Optional, may be rounded/truncated, and may not be possible to paginate through all hits.
1717+ HitsTotal *int64 `json:"hitsTotal,omitempty" cborgen:"hitsTotal,omitempty"`
1818+ StarterPacks []*UnspeccedDefs_SkeletonSearchStarterPack `json:"starterPacks" cborgen:"starterPacks"`
1919+}
2020+2121+// UnspeccedSearchStarterPacksSkeleton calls the XRPC method "app.bsky.unspecced.searchStarterPacksSkeleton".
2222+//
2323+// cursor: Optional pagination mechanism; may not necessarily allow scrolling through entire result set.
2424+// q: Search query string; syntax, phrase, boolean, and faceting is unspecified, but Lucene query syntax is recommended.
2525+// viewer: DID of the account making the request (not included for public/unauthenticated queries).
2626+func UnspeccedSearchStarterPacksSkeleton(ctx context.Context, c *xrpc.Client, cursor string, limit int64, q string, viewer string) (*UnspeccedSearchStarterPacksSkeleton_Output, error) {
2727+ var out UnspeccedSearchStarterPacksSkeleton_Output
2828+2929+ params := map[string]interface{}{
3030+ "cursor": cursor,
3131+ "limit": limit,
3232+ "q": q,
3333+ "viewer": viewer,
3434+ }
3535+ if err := c.Do(ctx, xrpc.Query, "", "app.bsky.unspecced.searchStarterPacksSkeleton", params, nil, &out); err != nil {
3636+ return nil, err
3737+ }
3838+3939+ return &out, nil
4040+}
···4040 UpdatedAt *string `json:"updatedAt,omitempty" cborgen:"updatedAt,omitempty"`
4141}
42424343+// ModerationDefs_AccountStats is a "accountStats" in the tools.ozone.moderation.defs schema.
4444+//
4545+// Statistics about a particular account subject
4646+type ModerationDefs_AccountStats struct {
4747+ // appealCount: Total number of appeals against a moderation action on the account
4848+ AppealCount *int64 `json:"appealCount,omitempty" cborgen:"appealCount,omitempty"`
4949+ // escalateCount: Number of times the account was escalated
5050+ EscalateCount *int64 `json:"escalateCount,omitempty" cborgen:"escalateCount,omitempty"`
5151+ // reportCount: Total number of reports on the account
5252+ ReportCount *int64 `json:"reportCount,omitempty" cborgen:"reportCount,omitempty"`
5353+ // suspendCount: Number of times the account was suspended
5454+ SuspendCount *int64 `json:"suspendCount,omitempty" cborgen:"suspendCount,omitempty"`
5555+ // takedownCount: Number of times the account was taken down
5656+ TakedownCount *int64 `json:"takedownCount,omitempty" cborgen:"takedownCount,omitempty"`
5757+}
5858+4359// ModerationDefs_BlobView is a "blobView" in the tools.ozone.moderation.defs schema.
4460type ModerationDefs_BlobView struct {
4561 Cid string `json:"cid" cborgen:"cid"`
···172188 LexiconTypeID string `json:"$type,const=tools.ozone.moderation.defs#modEventLabel" cborgen:"$type,const=tools.ozone.moderation.defs#modEventLabel"`
173189 Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
174190 CreateLabelVals []string `json:"createLabelVals" cborgen:"createLabelVals"`
191191+ // durationInHours: Indicates how long the label will remain on the subject. Only applies on labels that are being added.
192192+ DurationInHours *int64 `json:"durationInHours,omitempty" cborgen:"durationInHours,omitempty"`
175193 NegateLabelVals []string `json:"negateLabelVals" cborgen:"negateLabelVals"`
176194}
177195···800818 Uri string `json:"uri" cborgen:"uri"`
801819}
802820821821+// ModerationDefs_RecordsStats is a "recordsStats" in the tools.ozone.moderation.defs schema.
822822+//
823823+// Statistics about a set of record subject items
824824+type ModerationDefs_RecordsStats struct {
825825+ // appealedCount: Number of items that were appealed at least once
826826+ AppealedCount *int64 `json:"appealedCount,omitempty" cborgen:"appealedCount,omitempty"`
827827+ // escalatedCount: Number of items that were escalated at least once
828828+ EscalatedCount *int64 `json:"escalatedCount,omitempty" cborgen:"escalatedCount,omitempty"`
829829+ // pendingCount: Number of item currently in "reviewOpen" or "reviewEscalated" state
830830+ PendingCount *int64 `json:"pendingCount,omitempty" cborgen:"pendingCount,omitempty"`
831831+ // processedCount: Number of item currently in "reviewNone" or "reviewClosed" state
832832+ ProcessedCount *int64 `json:"processedCount,omitempty" cborgen:"processedCount,omitempty"`
833833+ // reportedCount: Number of items that were reported at least once
834834+ ReportedCount *int64 `json:"reportedCount,omitempty" cborgen:"reportedCount,omitempty"`
835835+ // subjectCount: Total number of item in the set
836836+ SubjectCount *int64 `json:"subjectCount,omitempty" cborgen:"subjectCount,omitempty"`
837837+ // takendownCount: Number of item currently taken down
838838+ TakendownCount *int64 `json:"takendownCount,omitempty" cborgen:"takendownCount,omitempty"`
839839+ // totalReports: Cumulative sum of the number of reports on the items in the set
840840+ TotalReports *int64 `json:"totalReports,omitempty" cborgen:"totalReports,omitempty"`
841841+}
842842+803843// ModerationDefs_RepoView is a "repoView" in the tools.ozone.moderation.defs schema.
804844//
805845// RECORDTYPE: ModerationDefs_RepoView
···849889850890// ModerationDefs_SubjectStatusView is a "subjectStatusView" in the tools.ozone.moderation.defs schema.
851891type ModerationDefs_SubjectStatusView struct {
892892+ // accountStats: Statistics related to the account subject
893893+ AccountStats *ModerationDefs_AccountStats `json:"accountStats,omitempty" cborgen:"accountStats,omitempty"`
852894 // appealed: True indicates that the a previously taken moderator action was appealed against, by the author of the content. False indicates last appeal was resolved by moderators.
853895 Appealed *bool `json:"appealed,omitempty" cborgen:"appealed,omitempty"`
854896 // comment: Sticky comment on the subject.
···858900 Hosting *ModerationDefs_SubjectStatusView_Hosting `json:"hosting,omitempty" cborgen:"hosting,omitempty"`
859901 Id int64 `json:"id" cborgen:"id"`
860902 // lastAppealedAt: Timestamp referencing when the author of the subject appealed a moderation action
861861- LastAppealedAt *string `json:"lastAppealedAt,omitempty" cborgen:"lastAppealedAt,omitempty"`
862862- LastReportedAt *string `json:"lastReportedAt,omitempty" cborgen:"lastReportedAt,omitempty"`
863863- LastReviewedAt *string `json:"lastReviewedAt,omitempty" cborgen:"lastReviewedAt,omitempty"`
864864- LastReviewedBy *string `json:"lastReviewedBy,omitempty" cborgen:"lastReviewedBy,omitempty"`
865865- MuteReportingUntil *string `json:"muteReportingUntil,omitempty" cborgen:"muteReportingUntil,omitempty"`
866866- MuteUntil *string `json:"muteUntil,omitempty" cborgen:"muteUntil,omitempty"`
867867- ReviewState *string `json:"reviewState" cborgen:"reviewState"`
868868- Subject *ModerationDefs_SubjectStatusView_Subject `json:"subject" cborgen:"subject"`
869869- SubjectBlobCids []string `json:"subjectBlobCids,omitempty" cborgen:"subjectBlobCids,omitempty"`
870870- SubjectRepoHandle *string `json:"subjectRepoHandle,omitempty" cborgen:"subjectRepoHandle,omitempty"`
871871- SuspendUntil *string `json:"suspendUntil,omitempty" cborgen:"suspendUntil,omitempty"`
872872- Tags []string `json:"tags,omitempty" cborgen:"tags,omitempty"`
873873- Takendown *bool `json:"takendown,omitempty" cborgen:"takendown,omitempty"`
903903+ LastAppealedAt *string `json:"lastAppealedAt,omitempty" cborgen:"lastAppealedAt,omitempty"`
904904+ LastReportedAt *string `json:"lastReportedAt,omitempty" cborgen:"lastReportedAt,omitempty"`
905905+ LastReviewedAt *string `json:"lastReviewedAt,omitempty" cborgen:"lastReviewedAt,omitempty"`
906906+ LastReviewedBy *string `json:"lastReviewedBy,omitempty" cborgen:"lastReviewedBy,omitempty"`
907907+ MuteReportingUntil *string `json:"muteReportingUntil,omitempty" cborgen:"muteReportingUntil,omitempty"`
908908+ MuteUntil *string `json:"muteUntil,omitempty" cborgen:"muteUntil,omitempty"`
909909+ // recordsStats: Statistics related to the record subjects authored by the subject's account
910910+ RecordsStats *ModerationDefs_RecordsStats `json:"recordsStats,omitempty" cborgen:"recordsStats,omitempty"`
911911+ ReviewState *string `json:"reviewState" cborgen:"reviewState"`
912912+ Subject *ModerationDefs_SubjectStatusView_Subject `json:"subject" cborgen:"subject"`
913913+ SubjectBlobCids []string `json:"subjectBlobCids,omitempty" cborgen:"subjectBlobCids,omitempty"`
914914+ SubjectRepoHandle *string `json:"subjectRepoHandle,omitempty" cborgen:"subjectRepoHandle,omitempty"`
915915+ SuspendUntil *string `json:"suspendUntil,omitempty" cborgen:"suspendUntil,omitempty"`
916916+ Tags []string `json:"tags,omitempty" cborgen:"tags,omitempty"`
917917+ Takendown *bool `json:"takendown,omitempty" cborgen:"takendown,omitempty"`
874918 // updatedAt: Timestamp referencing when the last update was made to the moderation status of the subject
875919 UpdatedAt string `json:"updatedAt" cborgen:"updatedAt"`
876920}
+37-31
api/ozone/moderationqueryStatuses.go
···2929// includeAllUserRecords: All subjects, or subjects from given 'collections' param, belonging to the account specified in the 'subject' param will be returned.
3030// includeMuted: By default, we don't include muted subjects in the results. Set this to true to include them.
3131// lastReviewedBy: Get all subject statuses that were reviewed by a specific moderator
3232+// minAccountSuspendCount: If specified, only subjects that belong to an account that has at least this many suspensions will be returned.
3333+// minReportedRecordsCount: If specified, only subjects that belong to an account that has at least this many reported records will be returned.
3434+// minTakendownRecordsCount: If specified, only subjects that belong to an account that has at least this many taken down records will be returned.
3235// onlyMuted: When set to true, only muted subjects and reporters will be returned.
3336// queueCount: Number of queues being used by moderators. Subjects will be split among all queues.
3437// queueIndex: Index of the queue to fetch subjects from. Works only when queueCount value is specified.
···4144// subject: The subject to get the status for.
4245// subjectType: If specified, subjects of the given type (account or record) will be returned. When this is set to 'account' the 'collections' parameter will be ignored. When includeAllUserRecords or subject is set, this will be ignored.
4346// takendown: Get subjects that were taken down
4444-func ModerationQueryStatuses(ctx context.Context, c *xrpc.Client, appealed bool, collections []string, comment string, cursor string, excludeTags []string, hostingDeletedAfter string, hostingDeletedBefore string, hostingStatuses []string, hostingUpdatedAfter string, hostingUpdatedBefore string, ignoreSubjects []string, includeAllUserRecords bool, includeMuted bool, lastReviewedBy string, limit int64, onlyMuted bool, queueCount int64, queueIndex int64, queueSeed string, reportedAfter string, reportedBefore string, reviewState string, reviewedAfter string, reviewedBefore string, sortDirection string, sortField string, subject string, subjectType string, tags []string, takendown bool) (*ModerationQueryStatuses_Output, error) {
4747+func ModerationQueryStatuses(ctx context.Context, c *xrpc.Client, appealed bool, collections []string, comment string, cursor string, excludeTags []string, hostingDeletedAfter string, hostingDeletedBefore string, hostingStatuses []string, hostingUpdatedAfter string, hostingUpdatedBefore string, ignoreSubjects []string, includeAllUserRecords bool, includeMuted bool, lastReviewedBy string, limit int64, minAccountSuspendCount int64, minReportedRecordsCount int64, minTakendownRecordsCount int64, onlyMuted bool, queueCount int64, queueIndex int64, queueSeed string, reportedAfter string, reportedBefore string, reviewState string, reviewedAfter string, reviewedBefore string, sortDirection string, sortField string, subject string, subjectType string, tags []string, takendown bool) (*ModerationQueryStatuses_Output, error) {
4548 var out ModerationQueryStatuses_Output
46494750 params := map[string]interface{}{
4848- "appealed": appealed,
4949- "collections": collections,
5050- "comment": comment,
5151- "cursor": cursor,
5252- "excludeTags": excludeTags,
5353- "hostingDeletedAfter": hostingDeletedAfter,
5454- "hostingDeletedBefore": hostingDeletedBefore,
5555- "hostingStatuses": hostingStatuses,
5656- "hostingUpdatedAfter": hostingUpdatedAfter,
5757- "hostingUpdatedBefore": hostingUpdatedBefore,
5858- "ignoreSubjects": ignoreSubjects,
5959- "includeAllUserRecords": includeAllUserRecords,
6060- "includeMuted": includeMuted,
6161- "lastReviewedBy": lastReviewedBy,
6262- "limit": limit,
6363- "onlyMuted": onlyMuted,
6464- "queueCount": queueCount,
6565- "queueIndex": queueIndex,
6666- "queueSeed": queueSeed,
6767- "reportedAfter": reportedAfter,
6868- "reportedBefore": reportedBefore,
6969- "reviewState": reviewState,
7070- "reviewedAfter": reviewedAfter,
7171- "reviewedBefore": reviewedBefore,
7272- "sortDirection": sortDirection,
7373- "sortField": sortField,
7474- "subject": subject,
7575- "subjectType": subjectType,
7676- "tags": tags,
7777- "takendown": takendown,
5151+ "appealed": appealed,
5252+ "collections": collections,
5353+ "comment": comment,
5454+ "cursor": cursor,
5555+ "excludeTags": excludeTags,
5656+ "hostingDeletedAfter": hostingDeletedAfter,
5757+ "hostingDeletedBefore": hostingDeletedBefore,
5858+ "hostingStatuses": hostingStatuses,
5959+ "hostingUpdatedAfter": hostingUpdatedAfter,
6060+ "hostingUpdatedBefore": hostingUpdatedBefore,
6161+ "ignoreSubjects": ignoreSubjects,
6262+ "includeAllUserRecords": includeAllUserRecords,
6363+ "includeMuted": includeMuted,
6464+ "lastReviewedBy": lastReviewedBy,
6565+ "limit": limit,
6666+ "minAccountSuspendCount": minAccountSuspendCount,
6767+ "minReportedRecordsCount": minReportedRecordsCount,
6868+ "minTakendownRecordsCount": minTakendownRecordsCount,
6969+ "onlyMuted": onlyMuted,
7070+ "queueCount": queueCount,
7171+ "queueIndex": queueIndex,
7272+ "queueSeed": queueSeed,
7373+ "reportedAfter": reportedAfter,
7474+ "reportedBefore": reportedBefore,
7575+ "reviewState": reviewState,
7676+ "reviewedAfter": reviewedAfter,
7777+ "reviewedBefore": reviewedBefore,
7878+ "sortDirection": sortDirection,
7979+ "sortField": sortField,
8080+ "subject": subject,
8181+ "subjectType": subjectType,
8282+ "tags": tags,
8383+ "takendown": takendown,
7884 }
7985 if err := c.Do(ctx, xrpc.Query, "", "tools.ozone.moderation.queryStatuses", params, nil, &out); err != nil {
8086 return nil, err