Skip to main content

ProSearch

A search-form container with basic search area, collapsible advanced search panel, and search/reset actions.

VEF-specific component. Moved from @vef-framework-react/starter to @vef-framework-react/components in v2.1.6.

When to Use

  • Table search bars with optional advanced filter panels.
  • Any search area that needs consistent search/reset button behavior.

Basic Usage

import { ProSearch } from '@vef-framework-react/components';

interface UserSearch {
name?: string;
status?: string;
}

export default function UserSearchBar({ onSearch }) {
return (
<ProSearch<UserSearch>
basicSearch={
<>
<Input placeholder="Name" />
<Select placeholder="Status" />
</>
}
onSearch={onSearch}
/>
);
}
<ProSearch<UserSearch>
basicSearch={<Input placeholder="Name" />}
advancedSearch={
<>
<DatePicker placeholder="Created after" />
<Select placeholder="Department" />
</>
}
onSearch={onSearch}
onReset={onReset}
/>

API

PropTypeDefaultDescription
defaultValuesTValuesInitial search values
basicSearchReactNodeInline search fields
advancedSearchReactNodeCollapsible advanced search fields
extraReactNodeExtra content on the left side
disabledbooleanDisable the search form
loadingbooleanLoading state for the search button
defaultAdvancedSearchVisiblebooleanInitial visibility of advanced search (uncontrolled)
advancedSearchVisiblebooleanControlled visibility of advanced search
onAdvancedSearchVisibleChange(visible: boolean) => voidCalled when advanced search visibility changes
onSearch(values: TValues) => voidCalled when search is submitted
onReset(defaultValues?) => voidCalled when search is reset
searchButtonPropsSubmitButtonPropsSearch button customization
resetButtonPropsResetButtonProps | falseReset button customization; false to hide