mirror of
https://github.com/sstent/go-garth.git
synced 2026-01-25 16:42:28 +00:00
This commit implements the package structure refactoring as outlined in phase1.md (Task 1A.1). Key changes include: - Reorganized packages into `pkg/garmin` for public API and `internal/` for internal implementations. - Updated all import paths to reflect the new structure. - Consolidated types and client logic into their respective new packages. - Updated `cmd/garth/main.go` to use the new public API. - Fixed various compilation and test issues encountered during the refactoring process. - Converted `internal/api/client/auth_test.go` to a functional test. This establishes a solid foundation for future enhancements and improves maintainability.
28 lines
883 B
Go
28 lines
883 B
Go
package types
|
|
|
|
import "time"
|
|
|
|
// OAuthConsumer represents OAuth consumer credentials
|
|
type OAuthConsumer struct {
|
|
ConsumerKey string `json:"consumer_key"`
|
|
ConsumerSecret string `json:"consumer_secret"`
|
|
}
|
|
|
|
// OAuth1Token represents OAuth1 token response
|
|
type OAuth1Token struct {
|
|
OAuthToken string `json:"oauth_token"`
|
|
OAuthTokenSecret string `json:"oauth_token_secret"`
|
|
MFAToken string `json:"mfa_token,omitempty"`
|
|
Domain string `json:"domain"`
|
|
}
|
|
|
|
// OAuth2Token represents OAuth2 token response
|
|
type OAuth2Token struct {
|
|
AccessToken string `json:"access_token"`
|
|
TokenType string `json:"token_type"`
|
|
ExpiresIn int `json:"expires_in"`
|
|
RefreshToken string `json:"refresh_token"`
|
|
Scope string `json:"scope"`
|
|
CreatedAt time.Time // Used for expiration tracking
|
|
ExpiresAt time.Time // Computed expiration time
|
|
} |