helpers

package
v0.8.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 21, 2022 License: AGPL-3.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var CodesForm = forms.Form{
	Fields: []forms.Field{
		{
			Name: "actor",
			Validators: []forms.Validator{
				forms.IsIn{Choices: []interface{}{"provider", "user"}},
			},
		},
		{
			Name: "codes",
			Validators: []forms.Validator{
				forms.IsList{
					Validators: []forms.Validator{
						forms.IsHex{
							ConvertToBinary: false,
							Strict:          true,
							MinLength:       16,
							MaxLength:       32,
						},
					},
				},
			},
		},
	},
}
View Source
var DistanceForm = forms.Form{
	Fields: []forms.Field{
		{
			Name: "from",
			Validators: []forms.Validator{
				forms.IsString{},
			},
		},
		{
			Name: "to",
			Validators: []forms.Validator{
				forms.IsString{},
			},
		},
		{
			Name: "distance",
			Validators: []forms.Validator{
				forms.IsFloat{HasMin: true, Min: 0.0, HasMax: true, Max: 200.0},
			},
		},
	},
}
View Source
var JWKPrivateKeyForm = forms.Form{
	Fields: []forms.Field{
		{
			Name: "crv",
			Validators: []forms.Validator{
				forms.IsString{},
			},
		},
		{
			Name: "d",
			Validators: []forms.Validator{
				forms.IsString{},
			},
		},
		{
			Name: "x",
			Validators: []forms.Validator{
				forms.IsString{},
			},
		},
		{
			Name: "y",
			Validators: []forms.Validator{
				forms.IsString{},
			},
		},
		{
			Name: "ext",
			Validators: []forms.Validator{
				forms.IsBoolean{},
			},
		},
		{
			Name: "key_ops",
			Validators: []forms.Validator{
				forms.IsList{
					Validators: []forms.Validator{
						forms.IsString{},
					},
				},
			},
		},
		{
			Name: "kty",
			Validators: []forms.Validator{
				forms.IsString{},
			},
		},
	},
}
View Source
var KeyPairForm = forms.Form{
	Fields: []forms.Field{
		{
			Name: "publicKey",
			Validators: []forms.Validator{
				forms.IsBytes{
					Encoding: "base64",
				},
			},
		},
		{
			Name: "privateKey",
			Validators: []forms.Validator{
				forms.IsStringMap{
					Form: &JWKPrivateKeyForm,
				},
			},
		},
	},
}
View Source
var KeyPairsForm = forms.Form{
	Fields: []forms.Field{
		{
			Name: "signing",
			Validators: []forms.Validator{
				forms.IsStringMap{
					Form: &KeyPairForm,
				},
			},
		},
		{
			Name: "encryption",
			Validators: []forms.Validator{
				forms.IsStringMap{
					Form: &KeyPairForm,
				},
			},
		},
	},
}
View Source
var UploadDistancesForm = forms.Form{
	Fields: []forms.Field{
		{
			Name: "type",
			Validators: []forms.Validator{
				forms.IsIn{Choices: []interface{}{"zipCode", "zipArea"}},
			},
		},
		{
			Name: "distances",
			Validators: []forms.Validator{
				forms.IsList{
					Validators: []forms.Validator{
						forms.IsStringMap{
							Form: &DistanceForm,
						},
					},
				},
			},
		},
	},
}

Functions

func Admin

func Admin(settings *services.Settings) ([]cli.Command, error)

func CLI

func CLI(settings *services.Settings)

func Run

func Run(settings *services.Settings) ([]cli.Command, error)

func Testing

func Testing(settings *services.Settings) ([]cli.Command, error)

Types

type Codes

type Codes struct {
	Actor     string     `json:"actor"`
	Codes     []string   `json:"codes"`
	Timestamp *time.Time `json:"timestamp"`
}

type Distance

type Distance struct {
	From     string  `json:"from"`
	To       string  `json:"to"`
	Distance float64 `json:"distance"`
}

type ExportKeys

type ExportKeys struct {
	RootPublicKey string `json:"rootPublicKey"`
}

type Initializer

type Initializer func(settings *services.Settings) (Server, error)

type JWKPrivateKey

type JWKPrivateKey struct {
	Curve  string   `json:"crv"`
	D      string   `json:"d"`
	Ext    bool     `json:"ext"`
	KeyOps []string `json:"key_ops"`
	Kty    string   `json:"kty"`
	X      string   `json:"x"`
	Y      string   `json:"y"`
}

type KeyPair

type KeyPair struct {
	PublicKey  []byte         `json:"publicKey"`
	PrivateKey *JWKPrivateKey `json:"privateKey"`
}

type KeyPairs

type KeyPairs struct {
	Signing    *KeyPair `json:"signing"`
	Encryption *KeyPair `json:"encryption"`
}

type Server

type Server interface {
	Start() error
	Stop() error
}

type SettingsFixture

type SettingsFixture struct {
	// contains filtered or unexported fields
}

func (SettingsFixture) Setup

func (s SettingsFixture) Setup(fixtures map[string]interface{}) (interface{}, error)

func (SettingsFixture) Teardown

func (s SettingsFixture) Teardown(fixture interface{}) error

type UploadDistances

type UploadDistances struct {
	Type      string      `json:"type"`
	Distances []*Distance `json:"distances"`
	Timestamp *time.Time  `json:"timestamp"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL