schemas

package
v0.26.2 Latest Latest
Warning

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

Go to latest
Published: Mar 6, 2026 License: MIT Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Attached = schema.NewSchema(
	&schema.SchemaField{
		Name: "labels",
		Type: schema.FieldTypeRelation,
		Options: &schema.RelationOptions{
			CollectionId: "_labels",
		},
	},
	&schema.SchemaField{
		Name: "note",
		Type: schema.FieldTypeEditor,
	},
	&schema.SchemaField{
		Name: "extra",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
)
View Source
var Collections = []DB{
	{
		"_req",
		RequestData,
		true,
		`
		CREATE INDEX idx_req_method ON _req (method);
		`,
	},
	{
		"_resp",
		ResponseData,
		true,
		`
		CREATE INDEX idx_resp_status ON _resp (status);
		`,
	},
	{
		"_req_edited",
		RequestData,
		true,
		`
		CREATE INDEX idx_req_edited_method ON _req_edited (method);
		`,
	},
	{
		"_resp_edited",
		ResponseData,
		true,
		`
		CREATE INDEX idx_resp_edited_status ON _resp_edited (status);
		`,
	},
	{
		"_data",
		Rows,
		true,
		`
		CREATE INDEX idx_data_generated_by ON _data (generated_by);
		`,
	},
	{
		"_proxies",
		Proxies,
		false,
		"",
	},
	{
		"_labels",
		Labels,
		true, `
		CREATE UNIQUE INDEX idx_labelsname ON _labels (name);
		`,
	},
	{
		"_searches",
		Searches,
		true,
		`
		CREATE UNIQUE INDEX idx_searches_name ON _searches (name);
		`,
	},
	{
		"_filters",
		Filters,
		true,
		`
		CREATE UNIQUE INDEX idx_filters_name ON _filters (name);
		`,
	},
	{
		"_wordlists",
		Wordlists,
		true,
		`
		CREATE UNIQUE INDEX idx_wordlists_name ON _wordlists (name);
		`,
	},
	{
		"_playground",
		Playground,
		false,
		"",
	},
	{
		"_tech",
		Tech,
		true, `
		CREATE UNIQUE INDEX idx_techname ON _tech (name);
		`,
	},
	{
		"_intercept",
		Intercept,
		false,
		"",
	},
	{
		"_hosts",
		Sites,
		true,
		`
		CREATE UNIQUE INDEX idx_hosts_name ON _hosts (host);
		`,
	},
	{
		"_settings",
		Settings,
		false,
		"",
	},
	{
		"_configs",
		ConfigSchema,
		true,
		`
		CREATE UNIQUE INDEX idx_configs_key ON _configs (key);
		`,
	},

	{
		"_processes",
		PROCESSES,
		false,
		"",
	},
	{
		"_ui",
		UI,
		true, `
		CREATE UNIQUE INDEX idx_ui_id ON _ui (unique_id);
		`,
	},
	{
		"_attached",
		Attached,
		false,
		"",
	},
}
View Source
var ConfigSchema = schema.NewSchema(
	&schema.SchemaField{
		Name:     "key",
		Type:     schema.FieldTypeText,
		Required: true,
	},
	&schema.SchemaField{
		Name: "data",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
)
View Source
var Counter = schema.NewSchema(
	&schema.SchemaField{
		Name:     "counter_key",
		Type:     schema.FieldTypeText,
		Required: true,
	},
	&schema.SchemaField{
		Name:     "collection",
		Type:     schema.FieldTypeText,
		Required: false,
	},
	&schema.SchemaField{
		Name:     "filter",
		Type:     schema.FieldTypeText,
		Required: false,
	},
	&schema.SchemaField{
		Name:     "count",
		Type:     schema.FieldTypeNumber,
		Required: false,
	},
	&schema.SchemaField{
		Name:     "load_on_startup",
		Type:     schema.FieldTypeBool,
		Required: false,
	},
)
View Source
var Filters = schema.NewSchema(
	&schema.SchemaField{
		Name:     "name",
		Type:     schema.FieldTypeText,
		Required: true,
	},
	&schema.SchemaField{
		Name:     "filter",
		Type:     schema.FieldTypeText,
		Required: true,
	},
	&schema.SchemaField{
		Name: "data",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
)
View Source
var Fuzzer = schema.NewSchema(
	&schema.SchemaField{
		Name: "fuzzer_id",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "raw_request",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "raw_response",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "time",
		Type: schema.FieldTypeNumber,
	},
	&schema.SchemaField{
		Name: "markers",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 10000,
		},
	},
	&schema.SchemaField{
		Name: "req_method",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "req_url",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "req_version",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "req_headers",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
	&schema.SchemaField{
		Name: "resp_version",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "resp_status",
		Type: schema.FieldTypeNumber,
	},
	&schema.SchemaField{
		Name: "resp_status_full",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "resp_headers",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
	&schema.SchemaField{
		Name: "resp_length",
		Type: schema.FieldTypeNumber,
	},
)
View Source
var Intercept = schema.NewSchema(
	&schema.SchemaField{
		Name: "index",
		Type: schema.FieldTypeNumber,
	},
	&schema.SchemaField{
		Name: "host",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "port",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "has_params",
		Type: schema.FieldTypeBool,
	},
	&schema.SchemaField{
		Name: "has_resp",
		Type: schema.FieldTypeBool,
	},
	&schema.SchemaField{
		Name: "is_https",
		Type: schema.FieldTypeBool,
	},
	&schema.SchemaField{
		Name: "is_req_edited",
		Type: schema.FieldTypeBool,
	},
	&schema.SchemaField{
		Name: "is_resp_edited",
		Type: schema.FieldTypeBool,
	},
	&schema.SchemaField{
		Name: "req",
		Type: schema.FieldTypeRelation,
		Options: &schema.RelationOptions{
			CollectionId:  "_req",
			CascadeDelete: true,
			MaxSelect:     types.Pointer(1),
		},
	},
	&schema.SchemaField{
		Name: "resp",
		Type: schema.FieldTypeRelation,
		Options: &schema.RelationOptions{
			CollectionId:  "_resp",
			CascadeDelete: true,
			MaxSelect:     types.Pointer(1),
		},
	},
	&schema.SchemaField{
		Name: "req_edited",
		Type: schema.FieldTypeRelation,
		Options: &schema.RelationOptions{
			CollectionId:  "_req_edited",
			CascadeDelete: true,
			MaxSelect:     types.Pointer(1),
		},
	},
	&schema.SchemaField{
		Name: "resp_edited",
		Type: schema.FieldTypeRelation,
		Options: &schema.RelationOptions{
			CollectionId:  "_resp_edited",
			CascadeDelete: true,
			MaxSelect:     types.Pointer(1),
		},
	},
	&schema.SchemaField{
		Name: "req_json",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
	&schema.SchemaField{
		Name: "resp_json",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
	&schema.SchemaField{
		Name: "req_edited_json",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
	&schema.SchemaField{
		Name: "resp_edited_json",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
	&schema.SchemaField{
		Name: "attached",
		Type: schema.FieldTypeRelation,
		Options: &schema.RelationOptions{
			CollectionId:  "_attached",
			CascadeDelete: true,
			MaxSelect:     types.Pointer(1),
		},
	},
	&schema.SchemaField{
		Name: "generated_by",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "extra",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
	&schema.SchemaField{
		Name: "attached",
		Type: schema.FieldTypeRelation,
		Options: &schema.RelationOptions{
			CollectionId: "_attached",
			MaxSelect:    types.Pointer(1),
		},
	},
	&schema.SchemaField{
		Name: "action",
		Type: schema.FieldTypeText,
	},
)
View Source
var IntruderTabResultsSchema = schema.NewSchema(
	&schema.SchemaField{
		Name:    "data",
		Type:    schema.FieldTypeJson,
		Options: &schema.JsonOptions{MaxSize: 100000},
	},
)
View Source
var IntruderTabSchema = schema.NewSchema(
	&schema.SchemaField{
		Name: "url",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "req",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "payload",
		Type: schema.FieldTypeText,
	},
)
View Source
var LabelCollection = schema.NewSchema(
	&schema.SchemaField{
		Name:     "data",
		Type:     schema.FieldTypeRelation,
		Required: true,
		Options: &schema.RelationOptions{
			CollectionId:  "_data",
			CascadeDelete: true,
		},
	},
	&schema.SchemaField{
		Name: "extra",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
)
View Source
var Labels = schema.NewSchema(
	&schema.SchemaField{
		Name:     "name",
		Type:     schema.FieldTypeText,
		Required: true,
	},
	&schema.SchemaField{
		Name:     "color",
		Type:     schema.FieldTypeText,
		Required: true,
	},
	&schema.SchemaField{
		Name:     "icon",
		Type:     schema.FieldTypeText,
		Required: false,
	},
	&schema.SchemaField{
		Name:     "type",
		Type:     schema.FieldTypeText,
		Required: true,
	},
	&schema.SchemaField{
		Name: "extra",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
)
View Source
var Main = []DB{
	{
		"_projects",
		Projects,
		true,
		"CREATE UNIQUE INDEX idx_projects_name ON _projects (name);",
	},
	{
		"_processes",
		PROCESSES,
		false,
		"",
	},
	{
		"_tools",
		ToolsSchema,
		false,
		"",
	},
	{
		"_labels",
		Labels,
		false,
		"",
	},
	{
		"_searches",
		Searches,
		true,
		`
		CREATE UNIQUE INDEX idx_searches_name ON _searches (name);
		`,
	},
	{
		"_wordlists",
		Wordlists,
		true,
		`
		CREATE UNIQUE INDEX idx_wordlists_name ON _wordlists (name);
		`,
	},
	{
		"_filters",
		Filters,
		true,
		`
		CREATE UNIQUE INDEX idx_filters_name ON _filters (name);
		`,
	},
	{
		"_payloads",
		Payloads,
		false,
		"",
	},
	{
		"_settings",
		Settings,
		false,
		"",
	},
}
View Source
var PROCESSES = schema.NewSchema(
	&schema.SchemaField{
		Name:     "name",
		Type:     schema.FieldTypeText,
		Required: true,
	},
	&schema.SchemaField{
		Name: "description",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "type",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "data",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
	&schema.SchemaField{
		Name: "input",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
	&schema.SchemaField{
		Name: "output",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},

	&schema.SchemaField{
		Name: "state",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "parent_id",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "generated_by",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "created_by",
		Type: schema.FieldTypeText,
	},
)
View Source
var Payloads = schema.NewSchema(
	&schema.SchemaField{
		Name:     "name",
		Type:     schema.FieldTypeText,
		Required: true,
	},
	&schema.SchemaField{
		Name: "data",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
)
View Source
var Playground = schema.NewSchema(
	&schema.SchemaField{
		Name:     "name",
		Type:     schema.FieldTypeText,
		Required: true,
	},
	&schema.SchemaField{
		Name: "parent_id",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "original_req_id",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "type",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "expanded",
		Type: schema.FieldTypeBool,
	},
	&schema.SchemaField{
		Name: "state",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "sort_order",
		Type: schema.FieldTypeNumber,
	},
	&schema.SchemaField{
		Name: "data",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
	&schema.SchemaField{
		Name: "extra",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
)
View Source
var ProcessState = struct {
	Inqueue   string
	Running   string
	Completed string
	Killed    string
	Failed    string
	Paused    string
}{
	Inqueue:   "In Queue",
	Running:   "Running",
	Completed: "Completed",
	Killed:    "Killed",
	Failed:    "Failed",
	Paused:    "Paused",
}
View Source
var Projects = schema.NewSchema(
	&schema.SchemaField{
		Name: "name",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "path",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "data",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
	&schema.SchemaField{
		Name: "version",
		Type: schema.FieldTypeText,
	},
)
View Source
var Proxies = schema.NewSchema(
	&schema.SchemaField{
		Name: "label",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "addr",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "browser",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "intercept",
		Type: schema.FieldTypeBool,
	},
	&schema.SchemaField{
		Name: "state",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "color",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "profile",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "data",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
)
View Source
var RepeaterTabSchema = schema.NewSchema(
	&schema.SchemaField{
		Name: "url",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "req",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "resp",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name:    "extra",
		Type:    schema.FieldTypeJson,
		Options: &schema.JsonOptions{MaxSize: 100000},
	},
)
View Source
var RequestData = schema.NewSchema(
	&schema.SchemaField{
		Name: "method",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "url",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "path",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "query",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "fragment",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "ext",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "has_cookies",
		Type: schema.FieldTypeBool,
	},
	&schema.SchemaField{
		Name: "length",
		Type: schema.FieldTypeNumber,
	},
	&schema.SchemaField{
		Name: "headers",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
	&schema.SchemaField{
		Name: "raw",
		Type: schema.FieldTypeText,
	},
)
View Source
var ResponseData = schema.NewSchema(
	&schema.SchemaField{
		Name: "title",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "mime",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "status",
		Type: schema.FieldTypeNumber,
	},
	&schema.SchemaField{
		Name: "length",
		Type: schema.FieldTypeNumber,
	},
	&schema.SchemaField{
		Name: "has_cookies",
		Type: schema.FieldTypeBool,
	},
	&schema.SchemaField{
		Name: "headers",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
	&schema.SchemaField{
		Name: "raw",
		Type: schema.FieldTypeText,
	},
)
View Source
var Rows = schema.NewSchema(
	&schema.SchemaField{
		Name: "index",
		Type: schema.FieldTypeNumber,
	},
	&schema.SchemaField{
		Name: "index_minor",
		Type: schema.FieldTypeNumber,
	},
	&schema.SchemaField{
		Name: "host",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "port",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "has_params",
		Type: schema.FieldTypeBool,
	},
	&schema.SchemaField{
		Name: "has_resp",
		Type: schema.FieldTypeBool,
	},
	&schema.SchemaField{
		Name: "is_https",
		Type: schema.FieldTypeBool,
	},
	&schema.SchemaField{
		Name: "http",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "proxy_id",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "is_req_edited",
		Type: schema.FieldTypeBool,
	},
	&schema.SchemaField{
		Name: "is_resp_edited",
		Type: schema.FieldTypeBool,
	},
	&schema.SchemaField{
		Name: "req",
		Type: schema.FieldTypeRelation,
		Options: &schema.RelationOptions{
			CollectionId:  "_req",
			CascadeDelete: true,
			MaxSelect:     types.Pointer(1),
		},
	},
	&schema.SchemaField{
		Name: "resp",
		Type: schema.FieldTypeRelation,
		Options: &schema.RelationOptions{
			CollectionId:  "_resp",
			CascadeDelete: true,
			MaxSelect:     types.Pointer(1),
		},
	},
	&schema.SchemaField{
		Name: "req_edited",
		Type: schema.FieldTypeRelation,
		Options: &schema.RelationOptions{
			CollectionId:  "_req_edited",
			CascadeDelete: true,
			MaxSelect:     types.Pointer(1),
		},
	},
	&schema.SchemaField{
		Name: "resp_edited",
		Type: schema.FieldTypeRelation,
		Options: &schema.RelationOptions{
			CollectionId:  "_resp_edited",
			CascadeDelete: true,
			MaxSelect:     types.Pointer(1),
		},
	},
	&schema.SchemaField{
		Name: "req_json",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
	&schema.SchemaField{
		Name: "resp_json",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
	&schema.SchemaField{
		Name: "req_edited_json",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
	&schema.SchemaField{
		Name: "resp_edited_json",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
	&schema.SchemaField{
		Name: "generated_by",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "extra",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
	&schema.SchemaField{
		Name: "attached",
		Type: schema.FieldTypeRelation,
		Options: &schema.RelationOptions{
			CollectionId:  "_attached",
			CascadeDelete: true,
			MaxSelect:     types.Pointer(1),
		},
	},
	&schema.SchemaField{
		Name: "action",
		Type: schema.FieldTypeText,
	},
)
View Source
var Searches = schema.NewSchema(
	&schema.SchemaField{
		Name:     "name",
		Type:     schema.FieldTypeText,
		Required: true,
	},
	&schema.SchemaField{
		Name: "data",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
)
View Source
var Settings = schema.NewSchema(
	&schema.SchemaField{
		Name:     "option",
		Type:     schema.FieldTypeText,
		Required: true,
	},
	&schema.SchemaField{
		Name: "value",
		Type: schema.FieldTypeText,
	},
)
View Source
var Sitemap = schema.NewSchema(
	&schema.SchemaField{
		Name:     "path",
		Type:     schema.FieldTypeText,
		Required: true,
	}, &schema.SchemaField{
		Name:     "query",
		Type:     schema.FieldTypeText,
		Required: true,
	}, &schema.SchemaField{
		Name:     "fragment",
		Type:     schema.FieldTypeText,
		Required: true,
	}, &schema.SchemaField{
		Name:     "type",
		Type:     schema.FieldTypeText,
		Required: true,
	}, &schema.SchemaField{
		Name:     "ext",
		Type:     schema.FieldTypeText,
		Required: true,
	}, &schema.SchemaField{
		Name:     "data",
		Type:     schema.FieldTypeRelation,
		Required: true,
		Options: &schema.RelationOptions{
			CollectionId:  "_data",
			CascadeDelete: true,
		},
	},
)
View Source
var Sites = schema.NewSchema(
	&schema.SchemaField{
		Name:     "host",
		Type:     schema.FieldTypeText,
		Required: true,
	},
	&schema.SchemaField{
		Name: "smartsort",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "domain",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "title",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "status",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "favicon",
		Type: schema.FieldTypeFile,
		Options: &schema.FileOptions{
			MimeTypes: []string{"image/png", "image/jpeg", "image/x-icon"},
			MaxSelect: 1,
			MaxSize:   100000,
		},
	},
	&schema.SchemaField{
		Name: "tech",
		Type: schema.FieldTypeRelation,
		Options: &schema.RelationOptions{
			CollectionId: "_tech",
		},
	},
	&schema.SchemaField{
		Name: "extra",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
)
View Source
var Tech = schema.NewSchema(
	&schema.SchemaField{
		Name:     "name",
		Type:     schema.FieldTypeText,
		Required: true,
	},
	&schema.SchemaField{
		Name:     "image",
		Type:     schema.FieldTypeText,
		Required: false,
	},
	&schema.SchemaField{
		Name:     "color",
		Type:     schema.FieldTypeText,
		Required: false,
	},
	&schema.SchemaField{
		Name:     "category",
		Type:     schema.FieldTypeText,
		Required: false,
	},
	&schema.SchemaField{
		Name: "extra",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
)
View Source
var Tools = []DB{
	{
		"_processes",
		PROCESSES,
		false,
		"",
	},
}
View Source
var ToolsSchema = schema.NewSchema(
	&schema.SchemaField{
		Name:     "name",
		Type:     schema.FieldTypeText,
		Required: true,
	},
	&schema.SchemaField{
		Name:     "path",
		Type:     schema.FieldTypeText,
		Required: true,
	},
	&schema.SchemaField{
		Name:     "host",
		Type:     schema.FieldTypeText,
		Required: true,
	},
	&schema.SchemaField{
		Name:     "state",
		Type:     schema.FieldTypeText,
		Required: true,
	},
	&schema.SchemaField{
		Name:     "creds",
		Type:     schema.FieldTypeJson,
		Required: true,
	},
	&schema.SchemaField{
		Name: "data",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
)
View Source
var UI = schema.NewSchema(
	&schema.SchemaField{
		Name:     "unique_id",
		Type:     schema.FieldTypeText,
		Required: true,
	},
	&schema.SchemaField{
		Name: "data",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
)
View Source
var Websockets = schema.NewSchema(

	&schema.SchemaField{
		Name: "index",
		Type: schema.FieldTypeNumber,
	},

	&schema.SchemaField{
		Name: "host",
		Type: schema.FieldTypeText,
	},

	&schema.SchemaField{
		Name: "path",
		Type: schema.FieldTypeText,
	},

	&schema.SchemaField{
		Name: "url",
		Type: schema.FieldTypeText,
	},

	&schema.SchemaField{
		Name: "direction",
		Type: schema.FieldTypeText,
	},

	&schema.SchemaField{
		Name: "type",
		Type: schema.FieldTypeText,
	},

	&schema.SchemaField{
		Name: "is_binary",
		Type: schema.FieldTypeBool,
	},

	&schema.SchemaField{
		Name: "payload",
		Type: schema.FieldTypeText,
	},

	&schema.SchemaField{
		Name: "length",
		Type: schema.FieldTypeNumber,
	},

	&schema.SchemaField{
		Name: "timestamp",
		Type: schema.FieldTypeDate,
	},

	&schema.SchemaField{
		Name: "proxy_id",
		Type: schema.FieldTypeText,
	},

	&schema.SchemaField{
		Name: "data_index",
		Type: schema.FieldTypeText,
	},
	&schema.SchemaField{
		Name: "generated_by",
		Type: schema.FieldTypeText,
	},
)
View Source
var Wordlists = schema.NewSchema(
	&schema.SchemaField{
		Name:     "name",
		Type:     schema.FieldTypeText,
		Required: true,
	},
	&schema.SchemaField{
		Name:     "path",
		Type:     schema.FieldTypeText,
		Required: true,
	},

	&schema.SchemaField{
		Name: "data",
		Type: schema.FieldTypeJson,
		Options: &schema.JsonOptions{
			MaxSize: 100000,
		},
	},
)

Functions

This section is empty.

Types

type DB

type DB struct {
	Name     string
	Schema   schema.Schema
	HasIndex bool
	Index    string
}

type Process

type Process struct {
	ID          string         `db:"id" json:"id"`
	Name        string         `db:"name" json:"name"`
	Description string         `db:"description" json:"description"`
	Type        string         `db:"type" json:"type"`
	Input       map[string]any `db:"input" json:"input"`
	Output      map[string]any `db:"output" json:"output"`
	Data        map[string]any `db:"data" json:"data"`
	State       string         `db:"state" json:"state"`
	ParentID    string         `db:"parent_id" json:"parent_id"`
	GeneratedBy string         `db:"generated_by" json:"generated_by"`
	CreatedBy   string         `db:"created_by" json:"created_by"`
}

Jump to

Keyboard shortcuts

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