init commit
This commit is contained in:
commit
40de70b2c6
|
@ -0,0 +1,2 @@
|
||||||
|
.DS_Store
|
||||||
|
.idea
|
|
@ -0,0 +1,58 @@
|
||||||
|
package apiconfig
|
||||||
|
|
||||||
|
import "encoding/json"
|
||||||
|
|
||||||
|
type RequestType string
|
||||||
|
|
||||||
|
const (
|
||||||
|
JSON RequestType = "json"
|
||||||
|
FormData RequestType = "form-data"
|
||||||
|
)
|
||||||
|
|
||||||
|
type APIConfig struct {
|
||||||
|
ID string `json:"id"`
|
||||||
|
ListenPath string `json:"listenPath"`
|
||||||
|
Method string `json:"method"`
|
||||||
|
Request RequestConfig `json:"request"`
|
||||||
|
Actions map[string]Action `json:"actions"`
|
||||||
|
Conditionals map[string]Conditional `json:"conditionals"`
|
||||||
|
Responses map[string]ResponseConfig `json:"responses"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type RequestConfig struct {
|
||||||
|
Type RequestType `json:"type"`
|
||||||
|
Schema string `json:"schema"`
|
||||||
|
FormValues []string `json:"formValues"`
|
||||||
|
Next string `json:"next"`
|
||||||
|
CORSAllowedOrigins []string `json:"corsAllowedOrigins"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type Action struct {
|
||||||
|
Type string `json:"type"`
|
||||||
|
Config json.RawMessage `json:"config"`
|
||||||
|
Next string `json:"next"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type ConditionalExpressions struct {
|
||||||
|
Value string `json:"value"`
|
||||||
|
Type string `json:"type"`
|
||||||
|
Compare string `json:"compare,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type Conditional struct {
|
||||||
|
ValidPath string `json:"validPath"`
|
||||||
|
InvalidPath string `json:"invalidPath"`
|
||||||
|
Expression string `json:"expression"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type ActionConfig struct {
|
||||||
|
ID string
|
||||||
|
Type string
|
||||||
|
Configuration string
|
||||||
|
}
|
||||||
|
|
||||||
|
type ResponseConfig struct {
|
||||||
|
Code int `json:"code"`
|
||||||
|
Template string `json:"template"`
|
||||||
|
Type string `json:"type"`
|
||||||
|
}
|
Loading…
Reference in New Issue