> Documentation index: https://www.gooddata.ai/docs/gooddata-ui/llms.txt lists every page of these docs as Markdown.

# IDashboardAttributeFilterProps

- Package: [@gooddata/sdk-ui-dashboard](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-ui-dashboard/index.md)
- Kind: interface
- Source: https://github.com/gooddata/gooddata-ui-sdk/blob/rel/11.64/libs/sdk-ui-dashboard/src/presentation/filterBar/attributeFilter/types.ts

**Signature:**

```typescript
export interface IDashboardAttributeFilterProps 
```

## Properties

| Property | Modifiers | Type | Description |
| --- | --- | --- | --- |
| [AttributeFilterComponent?](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-ui-dashboard/sdk-ui-dashboard.idashboardattributefilterprops/index.md#idashboardattributefilterpropsattributefiltercomponent) |  | ComponentType&lt;[IAttributeFilterButtonProps](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-ui-filters/sdk-ui-filters.iattributefilterbuttonprops/index.md)&gt; | **_(ALPHA)_** _(Optional)_ Optional custom attribute filter component to change or extend the default rendered one. The default is AttributeFilterButton Other component which fits this interface provided by GD is AttributeFilter Note: Props provided to this component contains many filter customizations. E.g. parent/child filtering, cross filtering, various subcomponents etc. see [IAttributeFilterButtonProps](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-ui-filters/sdk-ui-filters.iattributefilterbuttonprops/index.md) for more details. use at your own risk |
| [AttributeFilterLoadingComponent?](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-ui-dashboard/sdk-ui-dashboard.idashboardattributefilterprops/index.md#idashboardattributefilterpropsattributefilterloadingcomponent) |  | ComponentType | _(Optional)_ Optional custom attribute filter loading component to change or extend the default rendered one. |
| [autoOpen?](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-ui-dashboard/sdk-ui-dashboard.idashboardattributefilterprops/index.md#idashboardattributefilterpropsautoopen) |  | boolean | _(Optional)_ Specify whether should render filter with open dropdown |
| [displayAsLabel?](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-ui-dashboard/sdk-ui-dashboard.idashboardattributefilterprops/index.md#idashboardattributefilterpropsdisplayaslabel) |  | [ObjRef](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-model/sdk-model.objref/index.md) | _(Optional)_ Attribute label to use for UI representation of filter elements |
| [filter](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-ui-dashboard/sdk-ui-dashboard.idashboardattributefilterprops/index.md#idashboardattributefilterpropsfilter) |  | [DashboardAttributeFilterItem](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-model/sdk-model.dashboardattributefilteritem/index.md) | Definition of filter to render. |
| [isDraggable?](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-ui-dashboard/sdk-ui-dashboard.idashboardattributefilterprops/index.md#idashboardattributefilterpropsisdraggable) |  | boolean | _(Optional)_ Specify whether dragging handle and grab cursor should be displayed on hover |
| [onClose?](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-ui-dashboard/sdk-ui-dashboard.idashboardattributefilterprops/index.md#idashboardattributefilterpropsonclose) |  | () =&gt; void | _(Optional)_ Callback to be called, when user closes filter dropdown |
| [onFilterChanged](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-ui-dashboard/sdk-ui-dashboard.idashboardattributefilterprops/index.md#idashboardattributefilterpropsonfilterchanged) |  | (filter: [DashboardAttributeFilterItem](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-model/sdk-model.dashboardattributefilteritem/index.md), displayAsLabel?: [ObjRef](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-model/sdk-model.objref/index.md), isWorkingSelectionChange?: boolean, isResultOfMigration?: boolean, isSelectionInvalid?: boolean) =&gt; void | When the user interacts with the filter and changes its value, it MUST use this callback to propagate the new filter value. |
| [overlayPositionType?](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-ui-dashboard/sdk-ui-dashboard.idashboardattributefilterprops/index.md#idashboardattributefilterpropsoverlaypositiontype) |  | OverlayPositionType | _(Optional)_ Specifies the overlay position type for the attribute filter dropdown. |
| [passDropdownButton?](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-ui-dashboard/sdk-ui-dashboard.idashboardattributefilterprops/index.md#idashboardattributefilterpropspassdropdownbutton) |  | boolean | **_(ALPHA)_** _(Optional)_ Controls whether the internal implementation of dashboard filter dropdown button should be used. When true (default), the AttributeFilterButton will receive a DropdownButtonComponent. When false, the AttributeFilterButton will not receive a DropdownButtonComponent and therefore can be overridden by the custom component. This is useful when extending DashboardAttributeFilterComponent and want to use a different default dropdown button component internally but still want to make possible to customize the dropdown button component by user. Note: It is used in DashboardFilterGroupComponent. |
| [readonly?](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-ui-dashboard/sdk-ui-dashboard.idashboardattributefilterprops/index.md#idashboardattributefilterpropsreadonly) |  | boolean | **_(ALPHA)_** _(Optional)_ Specify whether the filter should be readonly. |
| [tabId?](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-ui-dashboard/sdk-ui-dashboard.idashboardattributefilterprops/index.md#idashboardattributefilterpropstabid) |  | string | _(Optional)_ Optional tab identifier to read filter context from. When provided, the filter will validate against filters from this specific tab. When undefined, uses the active tab (default behavior). |
| [workingFilter?](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-ui-dashboard/sdk-ui-dashboard.idashboardattributefilterprops/index.md#idashboardattributefilterpropsworkingfilter) |  | [DashboardAttributeFilterItem](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-model/sdk-model.dashboardattributefilteritem/index.md) | _(Optional)_ Working filter which selection will be used to render. |

## Property details

### IDashboardAttributeFilterProps.AttributeFilterComponent

> **Alpha API.** Initial API, highly likely to change outside SemVer. Don't build on it in production. See [API maturity](https://www.gooddata.ai/docs/gooddata-ui/latest/integrations/platform/api-maturity/index.md).
> 

Optional custom attribute filter component to change or extend the default rendered one. The default is AttributeFilterButton Other component which fits this interface provided by GD is AttributeFilter

Note: Props provided to this component contains many filter customizations.  E.g. parent/child filtering, cross filtering, various subcomponents etc.  see [IAttributeFilterButtonProps](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-ui-filters/sdk-ui-filters.iattributefilterbuttonprops/index.md) for more details.

use at your own risk

**Signature:**

```typescript
AttributeFilterComponent?: ComponentType<IAttributeFilterButtonProps>;
```

### IDashboardAttributeFilterProps.AttributeFilterLoadingComponent

Optional custom attribute filter loading component to change or extend the default rendered one.

**Signature:**

```typescript
AttributeFilterLoadingComponent?: ComponentType;
```

### IDashboardAttributeFilterProps.autoOpen

Specify whether should render filter with open dropdown

**Signature:**

```typescript
autoOpen?: boolean;
```

### IDashboardAttributeFilterProps.displayAsLabel

Attribute label to use for UI representation of filter elements

**Signature:**

```typescript
displayAsLabel?: ObjRef;
```

### IDashboardAttributeFilterProps.filter

Definition of filter to render.

**Signature:**

```typescript
filter: DashboardAttributeFilterItem;
```

#### Remarks

This can be any attribute filter type: element-based, arbitrary, or match filter.

### IDashboardAttributeFilterProps.isDraggable

Specify whether dragging handle and grab cursor should be displayed on hover

**Signature:**

```typescript
isDraggable?: boolean;
```

### IDashboardAttributeFilterProps.onClose

Callback to be called, when user closes filter dropdown

**Signature:**

```typescript
onClose?: () => void;
```

### IDashboardAttributeFilterProps.onFilterChanged

When the user interacts with the filter and changes its value, it MUST use this callback to propagate the new filter value.

**Signature:**

```typescript
onFilterChanged: (filter: DashboardAttributeFilterItem, displayAsLabel?: ObjRef, isWorkingSelectionChange?: boolean, isResultOfMigration?: boolean, isSelectionInvalid?: boolean) => void;
```

### IDashboardAttributeFilterProps.overlayPositionType

Specifies the overlay position type for the attribute filter dropdown.

**Signature:**

```typescript
overlayPositionType?: OverlayPositionType;
```

### IDashboardAttributeFilterProps.passDropdownButton

> **Alpha API.** Initial API, highly likely to change outside SemVer. Don't build on it in production. See [API maturity](https://www.gooddata.ai/docs/gooddata-ui/latest/integrations/platform/api-maturity/index.md).
> 

Controls whether the internal implementation of dashboard filter dropdown button should be used. When true (default), the AttributeFilterButton will receive a DropdownButtonComponent. When false, the AttributeFilterButton will not receive a DropdownButtonComponent and therefore can be overridden by the custom component.

This is useful when extending DashboardAttributeFilterComponent and want to use a different default dropdown button component internally but still want to make possible to customize the dropdown button component by user. Note: It is used in DashboardFilterGroupComponent.

**Signature:**

```typescript
passDropdownButton?: boolean;
```

### IDashboardAttributeFilterProps.readonly

> **Alpha API.** Initial API, highly likely to change outside SemVer. Don't build on it in production. See [API maturity](https://www.gooddata.ai/docs/gooddata-ui/latest/integrations/platform/api-maturity/index.md).
> 

Specify whether the filter should be readonly.

**Signature:**

```typescript
readonly?: boolean;
```

### IDashboardAttributeFilterProps.tabId

Optional tab identifier to read filter context from. When provided, the filter will validate against filters from this specific tab. When undefined, uses the active tab (default behavior).

**Signature:**

```typescript
tabId?: string;
```

#### Remarks

This is primarily used in automation/scheduling contexts where filters from multiple tabs need to be displayed simultaneously.

### IDashboardAttributeFilterProps.workingFilter

Working filter which selection will be used to render.

**Signature:**

```typescript
workingFilter?: DashboardAttributeFilterItem;
```
