···154154 ReportType *string `json:"reportType" cborgen:"reportType"`
155155}
156156157157+// AdminDefs_ModEventResolveAppeal is a "modEventResolveAppeal" in the com.atproto.admin.defs schema.
158158+//
159159+// # Resolve appeal on a subject
160160+//
161161+// RECORDTYPE: AdminDefs_ModEventResolveAppeal
162162+type AdminDefs_ModEventResolveAppeal struct {
163163+ LexiconTypeID string `json:"$type,const=com.atproto.admin.defs#modEventResolveAppeal" cborgen:"$type,const=com.atproto.admin.defs#modEventResolveAppeal"`
164164+ // comment: Describe resolution.
165165+ Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
166166+}
167167+157168// AdminDefs_ModEventReverseTakedown is a "modEventReverseTakedown" in the com.atproto.admin.defs schema.
158169//
159170// # Revert take down action on a subject
···219230 AdminDefs_ModEventAcknowledge *AdminDefs_ModEventAcknowledge
220231 AdminDefs_ModEventEscalate *AdminDefs_ModEventEscalate
221232 AdminDefs_ModEventMute *AdminDefs_ModEventMute
233233+ AdminDefs_ModEventResolveAppeal *AdminDefs_ModEventResolveAppeal
222234}
223235224236func (t *AdminDefs_ModEventViewDetail_Event) MarshalJSON() ([]byte, error) {
···254266 t.AdminDefs_ModEventMute.LexiconTypeID = "com.atproto.admin.defs#modEventMute"
255267 return json.Marshal(t.AdminDefs_ModEventMute)
256268 }
269269+ if t.AdminDefs_ModEventResolveAppeal != nil {
270270+ t.AdminDefs_ModEventResolveAppeal.LexiconTypeID = "com.atproto.admin.defs#modEventResolveAppeal"
271271+ return json.Marshal(t.AdminDefs_ModEventResolveAppeal)
272272+ }
257273 return nil, fmt.Errorf("cannot marshal empty enum")
258274}
259275func (t *AdminDefs_ModEventViewDetail_Event) UnmarshalJSON(b []byte) error {
···287303 case "com.atproto.admin.defs#modEventMute":
288304 t.AdminDefs_ModEventMute = new(AdminDefs_ModEventMute)
289305 return json.Unmarshal(b, t.AdminDefs_ModEventMute)
306306+ case "com.atproto.admin.defs#modEventResolveAppeal":
307307+ t.AdminDefs_ModEventResolveAppeal = new(AdminDefs_ModEventResolveAppeal)
308308+ return json.Unmarshal(b, t.AdminDefs_ModEventResolveAppeal)
290309291310 default:
292311 return nil
···690709691710// AdminDefs_SubjectStatusView is a "subjectStatusView" in the com.atproto.admin.defs schema.
692711type AdminDefs_SubjectStatusView struct {
712712+ // 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.
713713+ Appealed *bool `json:"appealed,omitempty" cborgen:"appealed,omitempty"`
693714 // comment: Sticky comment on the subject.
694715 Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
695716 // createdAt: Timestamp referencing the first moderation status impacting event was emitted on the subject
696696- CreatedAt string `json:"createdAt" cborgen:"createdAt"`
697697- Id int64 `json:"id" cborgen:"id"`
717717+ CreatedAt string `json:"createdAt" cborgen:"createdAt"`
718718+ Id int64 `json:"id" cborgen:"id"`
719719+ // lastAppealedAt: Timestamp referencing when the author of the subject appealed a moderation action
720720+ LastAppealedAt *string `json:"lastAppealedAt,omitempty" cborgen:"lastAppealedAt,omitempty"`
698721 LastReportedAt *string `json:"lastReportedAt,omitempty" cborgen:"lastReportedAt,omitempty"`
699722 LastReviewedAt *string `json:"lastReviewedAt,omitempty" cborgen:"lastReviewedAt,omitempty"`
700723 LastReviewedBy *string `json:"lastReviewedBy,omitempty" cborgen:"lastReviewedBy,omitempty"`
+3-1
api/atproto/adminqueryModerationStatuses.go
···18181919// AdminQueryModerationStatuses calls the XRPC method "com.atproto.admin.queryModerationStatuses".
2020//
2121+// appealed: Get subjects in unresolved appealed status
2122// comment: Search subjects by keyword from comments
2223// includeMuted: By default, we don't include muted subjects in the results. Set this to true to include them.
2324// lastReviewedBy: Get all subject statuses that were reviewed by a specific moderator
···2728// reviewedAfter: Search subjects reviewed after a given timestamp
2829// reviewedBefore: Search subjects reviewed before a given timestamp
2930// takendown: Get subjects that were taken down
3030-func AdminQueryModerationStatuses(ctx context.Context, c *xrpc.Client, comment string, cursor string, ignoreSubjects []string, includeMuted bool, lastReviewedBy string, limit int64, reportedAfter string, reportedBefore string, reviewState string, reviewedAfter string, reviewedBefore string, sortDirection string, sortField string, subject string, takendown bool) (*AdminQueryModerationStatuses_Output, error) {
3131+func AdminQueryModerationStatuses(ctx context.Context, c *xrpc.Client, appealed bool, comment string, cursor string, ignoreSubjects []string, includeMuted bool, lastReviewedBy string, limit int64, reportedAfter string, reportedBefore string, reviewState string, reviewedAfter string, reviewedBefore string, sortDirection string, sortField string, subject string, takendown bool) (*AdminQueryModerationStatuses_Output, error) {
3132 var out AdminQueryModerationStatuses_Output
32333334 params := map[string]interface{}{
3535+ "appealed": appealed,
3436 "comment": comment,
3537 "cursor": cursor,
3638 "ignoreSubjects": ignoreSubjects,
+69-41
api/atproto/cbor_gen.go
···226226 if err := v.MarshalCBOR(cw); err != nil {
227227 return err
228228 }
229229+229230 }
230231231232 // t.Rev (string) (string)
···358359 if err := v.MarshalCBOR(cw); err != nil {
359360 return err
360361 }
362362+361363 }
362364363365 // t.Since (string) (string)
···414416 if _, err := cw.Write(t.Blocks[:]); err != nil {
415417 return err
416418 }
419419+417420 }
418421419422 // t.Commit (util.LexLink) (struct)
···550553 }
551554552555 }
556556+553557 }
554558 }
555555-556559 // t.Rev (string) (string)
557560 case "rev":
558561···668671 }
669672670673 }
674674+671675 }
672676 }
673673-674677 // t.Since (string) (string)
675678 case "since":
676679···714717 if _, err := io.ReadFull(cr, t.Blocks[:]); err != nil {
715718 return err
716719 }
720720+717721 // t.Commit (util.LexLink) (struct)
718722 case "commit":
719723···17491753 return xerrors.Errorf("Slice value in field t.Values was too long")
17501754 }
1751175517521752- if err := cw.WriteMajorTypeHeader(cbg.MajArray, uint64(len(t.Values))); err != nil {
17531753- return err
17541754- }
17551755- for _, v := range t.Values {
17561756- if err := v.MarshalCBOR(cw); err != nil {
17561756+ if t.Values == nil {
17571757+ _, err := w.Write(cbg.CborNull)
17581758+ if err != nil {
17571759 return err
17581760 }
17611761+ } else {
17621762+17631763+ if err := cw.WriteMajorTypeHeader(cbg.MajArray, uint64(len(t.Values))); err != nil {
17641764+ return err
17651765+ }
17661766+ for _, v := range t.Values {
17671767+ if err := v.MarshalCBOR(cw); err != nil {
17681768+ return err
17691769+ }
17701770+17711771+ }
17721772+17591773 }
17601774 return nil
17611775}
···18121826 // t.Values ([]*atproto.LabelDefs_SelfLabel) (slice)
18131827 case "values":
1814182818151815- maj, extra, err = cr.ReadHeader()
18161816- if err != nil {
18171817- return err
18181818- }
18291829+ {
18301830+ b, err := cr.ReadByte()
18311831+ if err != nil {
18321832+ return err
18331833+ }
18341834+ if b != cbg.CborNull[0] {
18351835+ if err := cr.UnreadByte(); err != nil {
18361836+ return err
18371837+ }
1819183818201820- if extra > cbg.MaxLength {
18211821- return fmt.Errorf("t.Values: array too large (%d)", extra)
18221822- }
18391839+ maj, extra, err = cr.ReadHeader()
18401840+ if err != nil {
18411841+ return err
18421842+ }
1823184318241824- if maj != cbg.MajArray {
18251825- return fmt.Errorf("expected cbor array")
18261826- }
18441844+ if extra > cbg.MaxLength {
18451845+ return fmt.Errorf("t.Values: array too large (%d)", extra)
18461846+ }
1827184718281828- if extra > 0 {
18291829- t.Values = make([]*LabelDefs_SelfLabel, extra)
18301830- }
18481848+ if maj != cbg.MajArray {
18491849+ return fmt.Errorf("expected cbor array")
18501850+ }
18511851+18521852+ t.Values = make([]*LabelDefs_SelfLabel, extra)
18531853+18541854+ for i := 0; i < int(extra); i++ {
18551855+ {
18561856+ var maj byte
18571857+ var extra uint64
18581858+ var err error
18591859+ _ = maj
18601860+ _ = extra
18611861+ _ = err
1831186218321832- for i := 0; i < int(extra); i++ {
18331833- {
18341834- var maj byte
18351835- var extra uint64
18361836- var err error
18371837- _ = maj
18381838- _ = extra
18391839- _ = err
18631863+ {
1840186418411841- {
18651865+ b, err := cr.ReadByte()
18661866+ if err != nil {
18671867+ return err
18681868+ }
18691869+ if b != cbg.CborNull[0] {
18701870+ if err := cr.UnreadByte(); err != nil {
18711871+ return err
18721872+ }
18731873+ t.Values[i] = new(LabelDefs_SelfLabel)
18741874+ if err := t.Values[i].UnmarshalCBOR(cr); err != nil {
18751875+ return xerrors.Errorf("unmarshaling t.Values[i] pointer: %w", err)
18761876+ }
18771877+ }
1842187818431843- b, err := cr.ReadByte()
18441844- if err != nil {
18451845- return err
18461846- }
18471847- if b != cbg.CborNull[0] {
18481848- if err := cr.UnreadByte(); err != nil {
18491849- return err
18501879 }
18511851- t.Values[i] = new(LabelDefs_SelfLabel)
18521852- if err := t.Values[i].UnmarshalCBOR(cr); err != nil {
18531853- return xerrors.Errorf("unmarshaling t.Values[i] pointer: %w", err)
18541854- }
18801880+18551881 }
18821882+ }
1856188318571857- }
18581884 }
18591885 }
18601886···23352361 if err := v.MarshalCBOR(cw); err != nil {
23362362 return err
23372363 }
23642364+23382365 }
23392366 return nil
23402367}
···24492476 }
2450247724512478 }
24792479+24522480 }
24532481 }
24542482