Skip to content

MultiSelectInput

Multi-select input for choosing multiple values.

Options can be defined in two ways (mutually exclusive): 1. List-based ('options' field): Discrete choices from a static list or query 2. Range-based ('range' field): Continuous/stepped values with start, end, step

Selected values are accessed using these accessors in filters: - .values - Array of all selected values - .min - Minimum of selected values - .max - Maximum of selected values - .first - First selected value - .last - Last selected value

Example YAML (list-based): inputs: - name: regions type: multi-select options: ['East', 'West', 'North', 'South'] display: type: dropdown default: values: ['East', 'West']

insights:
  - name: sales_by_region
    interactions:
      - filter: ?{ region IN (${ref(regions).values}) }

Example YAML (range-based): inputs: - name: price_range type: multi-select range: start: 0 end: 1000 step: 50 display: type: range-slider default: start: 100 end: 500

insights:
  - name: products_in_range
    interactions:
      - filter: ?{ price BETWEEN ${ref(price_range).min} AND ${ref(price_range).max} }

Attributes

Field Type Default Description
path string None A unique path to this object
name string None The unique name of the object across the entire project.
file_path string None The path to the file that contains the object definition.
type string multi-select Input type identifier.
label string None Label shown to the user
options Any of: array, string None Available options for list-based multi-select. Can be a static list or a query string. Mutually exclusive with 'range'.
range RangeConfig None Range configuration for range-based multi-select. Defines start, end, and step values. Mutually exclusive with 'options'.
display MultiSelectDisplay None Display configuration including UI component type and default values. If not specified, defaults to dropdown with all options selected.