Files
zurg/internal/config/v1types.go
2023-12-06 19:18:04 +01:00

41 lines
1.6 KiB
Go

package config
import "github.com/debridmediamanager/zurg/pkg/logutil"
type ZurgConfigV1 struct {
ZurgConfig `yaml:",inline"`
Directories map[string]*DirectoryFilterConditionsV1 `yaml:"directories"`
log *logutil.Logger
}
type DirectoryFilterConditionsV1 struct {
GroupOrder int `yaml:"group_order"`
Group string `yaml:"group"`
Filters []*FilterConditionsV1 `yaml:"filters"`
}
type FilterConditionsV1 struct {
ID string `yaml:"id"`
RegexStr string `yaml:"regex"`
Contains string `yaml:"contains"`
ContainsStrict string `yaml:"contains_strict"`
NotRegexStr string `yaml:"not_regex"`
NotContains string `yaml:"not_contains"`
NotContainsStrict string `yaml:"not_contains_strict"`
SizeGreaterThanOrEqual int64 `yaml:"size_gte"`
SizeLessThanOrEqual int64 `yaml:"size_lte"`
And []*FilterConditionsV1 `yaml:"and"`
Or []*FilterConditionsV1 `yaml:"or"`
FileInsideRegexStr string `yaml:"any_file_inside_regex"`
FileInsideContains string `yaml:"any_file_inside_contains"`
FileInsideContainsStrict string `yaml:"any_file_inside_contains_strict"`
FileInsideNotRegexStr string `yaml:"any_file_inside_not_regex"`
FileInsideNotContains string `yaml:"any_file_inside_not_contains"`
FileInsideNotContainsStrict string `yaml:"any_file_inside_not_contains_strict"`
FileInsideSizeGreaterThanOrEqual int64 `yaml:"any_file_inside_size_gte"`
FileInsideSizeLessThanOrEqual int64 `yaml:"any_file_inside_size_lte"`
HasEpisodes bool `yaml:"has_episodes"`
}