Versions in this module Expand all Collapse all v0 v0.1.0 Feb 18, 2024 Changes in this version + const UniqueViolationCode + var GamerTagAlreadyInUseError = errors.New("gamer tag already in use") + var RecordNotFoundError = pgx.ErrNoRows + var ReferrerDoesNotExistError = errors.New("referrer does not exist") + var SelfReferralError = errors.New("self referrals not permitted") + var UserAlreadyReferredError = errors.New("user already referred") + var UserProfileAlreadyExistsError = errors.New("user profile already exists") + type CreateProfileParams struct + GamerTag string + WalletAddress string + type CreateProfileTxParams struct + AfterCreate func() error + Referrer string + type CreateProfileTxResult struct + Profile Profile + Referral Referral + type CreateReferralParams struct + Referee string + Referrer string + type DBTX interface + Exec func(context.Context, string, ...interface{}) (pgconn.CommandTag, error) + Query func(context.Context, string, ...interface{}) (pgx.Rows, error) + QueryRow func(context.Context, string, ...interface{}) pgx.Row + type Error struct + Code string + ConstraintName string + func ParseError(err error) *Error + type GetProfileTxParams struct + AfterCreate func() (string, error) + WalletAddress string + type GetProfileTxResult struct + EnsName string + Profile Profile + type ListProfilesParams struct + Limit int32 + Offset int32 + type ListReferralsParams struct + Limit int32 + Offset int32 + Referrer string + type Profile struct + CreatedAt time.Time + GamerTag string + WalletAddress string + type Querier interface + CreateProfile func(ctx context.Context, arg CreateProfileParams) (Profile, error) + CreateReferral func(ctx context.Context, arg CreateReferralParams) (Referral, error) + DeleteProfile func(ctx context.Context, walletAddress string) error + GetProfile func(ctx context.Context, walletAddress string) (Profile, error) + GetProfilesCount func(ctx context.Context) (int64, error) + GetReferralsCount func(ctx context.Context, referrer string) (int64, error) + GetReferrer func(ctx context.Context, referee string) (Referral, error) + ListProfiles func(ctx context.Context, arg ListProfilesParams) ([]Profile, error) + ListReferrals func(ctx context.Context, arg ListReferralsParams) ([]Referral, error) + UpdateProfile func(ctx context.Context, arg UpdateProfileParams) (Profile, error) + type Queries struct + func New(db DBTX) *Queries + func (q *Queries) CreateProfile(ctx context.Context, arg CreateProfileParams) (Profile, error) + func (q *Queries) CreateReferral(ctx context.Context, arg CreateReferralParams) (Referral, error) + func (q *Queries) DeleteProfile(ctx context.Context, walletAddress string) error + func (q *Queries) GetProfile(ctx context.Context, walletAddress string) (Profile, error) + func (q *Queries) GetProfilesCount(ctx context.Context) (int64, error) + func (q *Queries) GetReferralsCount(ctx context.Context, referrer string) (int64, error) + func (q *Queries) GetReferrer(ctx context.Context, referee string) (Referral, error) + func (q *Queries) ListProfiles(ctx context.Context, arg ListProfilesParams) ([]Profile, error) + func (q *Queries) ListReferrals(ctx context.Context, arg ListReferralsParams) ([]Referral, error) + func (q *Queries) UpdateProfile(ctx context.Context, arg UpdateProfileParams) (Profile, error) + func (q *Queries) WithTx(tx pgx.Tx) *Queries + type Referral struct + ID uuid.UUID + Referee string + ReferredAt time.Time + Referrer string + type SQLStore struct + func (store *SQLStore) CreateProfileTx(ctx context.Context, params CreateProfileTxParams) (CreateProfileTxResult, error) + func (store *SQLStore) GetProfileTx(ctx context.Context, params GetProfileTxParams) (GetProfileTxResult, error) + func (store *SQLStore) UpdateProfileTx(ctx context.Context, params UpdateProfileTxParams) (UpdateProfileTxResult, error) + type Store interface + CreateProfileTx func(ctx context.Context, params CreateProfileTxParams) (CreateProfileTxResult, error) + GetProfileTx func(ctx context.Context, params GetProfileTxParams) (GetProfileTxResult, error) + UpdateProfileTx func(ctx context.Context, params UpdateProfileTxParams) (UpdateProfileTxResult, error) + func NewStore(connPool *pgxpool.Pool) Store + type UpdateProfileParams struct + GamerTag pgtype.Text + WalletAddress string + type UpdateProfileTxParams struct + AfterCreate func() (string, error) + GamerTag string + WalletAddress string + type UpdateProfileTxResult struct + EnsName string + Profile Profile