diff --git a/api/bsky/cbor_gen.go b/api/bsky/cbor_gen.go index 2f4bc147..13b85793 100644 --- a/api/bsky/cbor_gen.go +++ b/api/bsky/cbor_gen.go @@ -1629,7 +1629,11 @@ func (t *EmbedExternal_External) MarshalCBOR(w io.Writer) error { } cw := cbg.NewCborWriter(w) - fieldCount := 4 + fieldCount := 5 + + if t.AssociatedRefs == nil { + fieldCount-- + } if t.Thumb == nil { fieldCount-- @@ -1726,6 +1730,35 @@ func (t *EmbedExternal_External) MarshalCBOR(w io.Writer) error { if _, err := cw.WriteString(string(t.Description)); err != nil { return err } + + // t.AssociatedRefs ([]*atproto.RepoStrongRef) (slice) + if t.AssociatedRefs != nil { + + if len("associatedRefs") > 1000000 { + return xerrors.Errorf("Value in field \"associatedRefs\" was too long") + } + + if err := cw.WriteMajorTypeHeader(cbg.MajTextString, uint64(len("associatedRefs"))); err != nil { + return err + } + if _, err := cw.WriteString(string("associatedRefs")); err != nil { + return err + } + + if len(t.AssociatedRefs) > 8192 { + return xerrors.Errorf("Slice value in field t.AssociatedRefs was too long") + } + + if err := cw.WriteMajorTypeHeader(cbg.MajArray, uint64(len(t.AssociatedRefs))); err != nil { + return err + } + for _, v := range t.AssociatedRefs { + if err := v.MarshalCBOR(cw); err != nil { + return err + } + + } + } return nil } @@ -1754,7 +1787,7 @@ func (t *EmbedExternal_External) UnmarshalCBOR(r io.Reader) (err error) { n := extra - nameBuf := make([]byte, 11) + nameBuf := make([]byte, 14) for i := uint64(0); i < n; i++ { nameLen, ok, err := cbg.ReadFullStringIntoBuf(cr, nameBuf, 1000000) if err != nil { @@ -1823,6 +1856,55 @@ func (t *EmbedExternal_External) UnmarshalCBOR(r io.Reader) (err error) { t.Description = string(sval) } + // t.AssociatedRefs ([]*atproto.RepoStrongRef) (slice) + case "associatedRefs": + + maj, extra, err = cr.ReadHeader() + if err != nil { + return err + } + + if extra > 8192 { + return fmt.Errorf("t.AssociatedRefs: array too large (%d)", extra) + } + + if maj != cbg.MajArray { + return fmt.Errorf("expected cbor array") + } + + if extra > 0 { + t.AssociatedRefs = make([]*atproto.RepoStrongRef, extra) + } + + for i := 0; i < int(extra); i++ { + { + var maj byte + var extra uint64 + var err error + _ = maj + _ = extra + _ = err + + { + + b, err := cr.ReadByte() + if err != nil { + return err + } + if b != cbg.CborNull[0] { + if err := cr.UnreadByte(); err != nil { + return err + } + t.AssociatedRefs[i] = new(atproto.RepoStrongRef) + if err := t.AssociatedRefs[i].UnmarshalCBOR(cr); err != nil { + return xerrors.Errorf("unmarshaling t.AssociatedRefs[i] pointer: %w", err) + } + } + + } + + } + } default: // Field doesn't exist on this type, so ignore it