mirror of
https://github.com/superseriousbusiness/gotosocial
synced 2025-06-05 21:59:39 +02:00
[feature] Add token review / delete to backend + settings panel (#3845)
This commit is contained in:
@ -3068,3 +3068,39 @@ func (c *Converter) WebPushSubscriptionToAPIWebPushSubscription(
|
||||
Standard: true,
|
||||
}, nil
|
||||
}
|
||||
|
||||
func (c *Converter) TokenToAPITokenInfo(
|
||||
ctx context.Context,
|
||||
token *gtsmodel.Token,
|
||||
) (*apimodel.TokenInfo, error) {
|
||||
createdAt, err := id.TimeFromULID(token.ID)
|
||||
if err != nil {
|
||||
err := gtserror.Newf("error parsing time from token id: %w", err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
var lastUsed string
|
||||
if !token.LastUsed.IsZero() {
|
||||
lastUsed = util.FormatISO8601(token.LastUsed)
|
||||
}
|
||||
|
||||
application, err := c.state.DB.GetApplicationByClientID(ctx, token.ClientID)
|
||||
if err != nil {
|
||||
err := gtserror.Newf("db error getting application with client id %s: %w", token.ClientID, err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
apiApplication, err := c.AppToAPIAppPublic(ctx, application)
|
||||
if err != nil {
|
||||
err := gtserror.Newf("error converting application to api application: %w", err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return &apimodel.TokenInfo{
|
||||
ID: token.ID,
|
||||
CreatedAt: util.FormatISO8601(createdAt),
|
||||
LastUsed: lastUsed,
|
||||
Scope: token.Scope,
|
||||
Application: apiApplication,
|
||||
}, nil
|
||||
}
|
||||
|
Reference in New Issue
Block a user