Files
nebula/models/register.go

33 lines
879 B
Go

package models
// DeviceCapabilities holds WebAuthn capability detection results
type DeviceCapabilities struct {
Platform bool // Biometrics (Face ID, Touch ID, Windows Hello)
CrossPlatform bool // Security keys (YubiKey, etc.)
Conditional bool // Passkey autofill support
}
// RegisterState holds the current registration flow state
type RegisterState struct {
Step int
Method string // "passkey", "security-key", or "qr-code"
Username string
Error string
}
// DefaultRegisterState returns a new registration state at step 1
func DefaultRegisterState() RegisterState {
return RegisterState{
Step: 1,
}
}
// DefaultDeviceCapabilities returns capabilities assuming full support (for testing)
func DefaultDeviceCapabilities() DeviceCapabilities {
return DeviceCapabilities{
Platform: true,
CrossPlatform: true,
Conditional: true,
}
}