Files
photoprism/pkg/rnd/uuid.go
2025-09-24 08:28:38 +02:00

26 lines
567 B
Go

package rnd
import (
"github.com/google/uuid"
)
// UUID returns a random string based on RFC 4122 (UUID Version 4) or panics.
//
// The strength of the UUID depends on the "crypto/rand" package.
func UUID() string {
return uuid.NewString()
}
// UUIDv7 returns a sortable UUID version 7 (time-ordered). Falls back to v4 on error.
func UUIDv7() string {
if u, err := uuid.NewV7(); err == nil {
return u.String()
}
return uuid.NewString()
}
// State is an alias for UUID for use in the context of OpenID Connect (OIDC).
func State() string {
return UUID()
}