Something went wrong. Try again.
This repository has no description
Something went wrong. Try again.
1234567891011121314151617181920212223242526272829303132333435363738394041424344package app
import ( "context" "fmt" "time"
"github.com/alyraffauf/tg/atproto" "github.com/alyraffauf/tg/internal/tangledlex" "github.com/bluesky-social/indigo/atproto/syntax")
// CreateStringInput configures string creation.type CreateStringInput struct { Filename string Description string Contents string}
// CreateString writes a new sh.tangled.string record.func (s *Service) CreateString(ctx context.Context, in CreateStringInput) (*CreatedRecordResult, error) { atClient, did, err := s.authenticatedPDS(ctx) if err != nil { return nil, err } rkey := string(syntax.NewTIDNow(0)) uri, _, err := atClient.PutRecord(ctx, atproto.PutRecordInput{ Repo: did, Collection: stringCollection, Rkey: rkey, Record: tangledlex.String{ LexiconTypeID: stringCollection, Filename: in.Filename, Description: in.Description, Contents: in.Contents, CreatedAt: time.Now().UTC().Format(time.RFC3339), }, }) if err != nil { return nil, fmt.Errorf("create string: %w", err) } return &CreatedRecordResult{Rkey: rkey, URI: uri}, nil}