2.2.0 • Published 4 years ago

multi-search-bar v2.2.0

Weekly downloads
7
License
ISC
Repository
github
Last release
4 years ago

Multi Search Bar

Overview

The Multi Search Bar allows let you switch between basic and advanced search. Both searches will let user to select a type from a dropdown list.

CHANGELOG.md contains Release Notes for this package.

CONTRIBUTING.md contains guidelines on how to help improve this package.

Installation

Run the following NPM command to install:

> npm install --save multi-search-bar

Run the following NPM command to launch a sample demo:

> npm start

Basic Search Advanced Search

This component is using configurable-form-builder too.

     <MultiSearchBar
              handleSearch={callback}
              options={options}
              advancedSearchAttributes={FORM_CONFIG}
              handleSelectedChange={this.onSelectedChange}
              messages={MESSAGES}/>
Property NameTypeRequiredDescriptionDefault
handleSearchFunctionNOwhen Search button is clickedN/A
optionsArrayNOdropdown list fields, if not available, dropdown will be hidden. if empty array, still we see itN/A
allowBlankBasicSearchBooleanNOIf you set to true, if the textbox is empty still can searchfalse
advancedSearchAttributesObjNOfor form, if not available, there won't be advanced search buttonN/A
handleSelectedChangeFunctionNOwhen dropdown is changed, this will triggerN/A
defaultSearchstringNOthe search which will be shown when opening the page (BASIC,ADVANCED)BASIC
basicSearchbooleanNOyou can specify false if you do not want to have basic search at alltrue
advancedSearchbooleanNOYou can specify false if you do not want advanced search at alltrue
messagesObjNOLanguage specific verbiage displayed by the controls in this componentSee below
Property NameTypeRequiredDescriptionDefault
basicSearchLabelstringYesBasic/Advanced toggle: BasicBasic
advancedSearchLabelstringYesBasic/Advanced toggle: AdvancedAdvanced
noAttrTextstringYesDisplay when advanced search has no form inputs definedNo searchable attributes for selected entity types
searchLabelstringYesSearch button textSearch
searchPlaceholderstringYesSearch input placeholderSearch...
selectSomeItemsstringYesOptions Placeholder: when no items are selectedSelect Some Items...
allItemsAreSelectedstringYesOptions Placeholder: when all items are no selectedAll Items Are Selected
selectAllstringYesOption to select all optionsSelect All
searchstringYesOptions search placeholderSearch

Example of form config:

{
  title: "Sample Config Form Title",
  fields: [
    {
      id: "id",
      type: "text",
      label: "Name"
    },
    {
      id: "options",
      type: "enum",
      label: "Status",
      values: ["option 1", "option 2", "option 3"]
    },
    {
      id: "non-text-attr",
      type: "long",
      label: "Non-Text Attr"
    }
  ],
  breakpoints: { 350: 1, 750: 2, 900: 3 }
}

Example of messages:

{
  basicSearchLabel: "Basic",
  advancedSearchLabel: "Advanced",
  noAttrText: "No searchable attributes for selected entity types",
  searchLabel: "Search",
  searchPlaceholder: "Search...",
  selectSomeItems: "Select Some Items...",
  allItemsAreSelected: "All Items Are Selected",
  selectAll: "Select All",
  search: "Search",
}