# `MishkaGervaz.Table.Web.State.FilterBuilder`
[🔗](https://github.com/mishka-group/mishka_gervaz/blob/v0.0.1-alpha.3/lib/mishka_gervaz/table/web/state/filter_builder.ex#L1)

Builds filter configuration from DSL and resource attributes.

## Overridable Functions

- `build/3` - Build filters from config, resource, and user
- `build_initial_values/1` - Build initial filter values from defaults
- `resolve_type/1` - Resolve filter type module
- `load_relationship_options/2` - Load options for relationship filters

## User Override

    defmodule MyApp.Table.FilterBuilder do
      use MishkaGervaz.Table.Web.State.FilterBuilder

      def build(config, resource, user) do
        super(config, resource, user)
        |> Enum.reject(&(&1.name == :internal_field))
      end
    end

See `MishkaGervaz.Table.Web.State`,
`MishkaGervaz.Table.Web.State.Helpers`,
`MishkaGervaz.Table.Entities.Filter`,
`MishkaGervaz.Table.Types.Filter`, and the sibling builders
`ColumnBuilder`, `ActionBuilder`, `Presentation`, `UrlSync`, `Access`.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
