- Breaking change in FacetFilter in commit: d7f9eab70bc9b87f91f2122ecf1667a13f1b6a0e
the key used was changed from
Non String agg type fix (#536) * make FacetAccessor namespaced by id like all others * Fix numeric/boolean values for aggs - cast bucket keys to strings - fix FacetFilter use of field as key(breaking change) - Accessor throws better error when using same id on imcompatible component - fix e2e apps * gen bundle * add id change to TagFilter docsfiltertoidhere: https://github.com/searchkit/searchkit/commit/d7f9eab70bc9b87f91f2122ecf1667a13f1b6a0e#diff-f172a23508b6de00b38c007df825d91a
- Passing credentials in the request (#481)
- Updated rc-slider library to 8.1.2
- FastClick switched off by default (#464)
- Elasticsearch 5.x + Hierarchical refinement filter issue fix (#465)
- MenuFilter bucketsTransform fix (#459)
- Public release of 2.0.0
- replace React.PropTypes with prop-types package (#453)
- Issue 443: Replace React.PropTypes with prop-types package (#450)
- fixing history types to correct version
- fix: Elasticsearch 5.1 parsing exception #413
- Fix inline parameters declaration syntax. #412
- Move jasmine types to devDependencies. (#411)
- qs upgrade to latest released version (#409)
- History updates (#430)
- Add withCredentials support (#403)
- fix: Set default size to 20 for
HierarchicalMenuFilter#398 - Abort axios requests which will not be used. E.g. search as you type
- new feature: Ability for custom highlighting options #355
- new feature: Axios upgrade, expose timeout #396
- updated dev guide
- fix: Elasticsearch 5 compat fix
- fix: Typo in error message
- fix: fix typo on indexing documentation
- fix: small fix on checkbox filters when filter option name is too long #335
- fix: Circle CI build
- fix:
ViewSwitcherHitsmutating props. React 15 gives warning. - fix:
Paginationworks. Lodash regression issue
- Added React 15 to peer dependencies + fix tests for react 15.4
- history to 2.1.1
- typescript to 2.1.4
- type definitions managed by npm
- lodash to 4.14
- rc-slider to 5.4.3
- protractor to 4.0.0
- fix pagination regression due to lodash change of api
SearchkitManageris more intelligent with reregistering url listenersRefinementListFilter,MenuFilter,NumericRefinementListFilterandRangeFilternow supportsfieldOptionsfornested/childfieldsRefinementListFilter,MenuFilterinject missing selected filtersRefinementListFilter,MenuFilterhave newbucketsTransformprop function to manipulate the elastic search buckets returned.- Bug fix to itemComponent, listComponent, *Component which allows context in stateless components
- MenuFilter fix to support booleans
- HierarchicalRefinementFilter disabled state fix
- update history dependency to
2.1.1which should be compatible with react-router 2.x - fix
DynamicRangeFilterrounding issues - Added
countFormattercount formatting support toRefinementListFilter,MenuFilter,NumericRefinementListFilter,HierarchicalMenuFilter,HierarchicalRefinementFilter,HitsStats - Added
rangeFormatterrange display support toRangeFilter,DynamicRangeFilter - Fix corner cases to BoolMustNot queries
SearchkitManagersearchOnLoadnow works without historySearchkitManager.addResultsListenerto register a callback when ever new results are recieved- Fix input filter styling
- Fix FacetFilter 'View All' link edge case
- fix
NoHitsstyling so it uses scss vars - fix
CheckboxFilterdisabled state - fix
SearchBox,InputFilterwhen searchOnChange=false disabled state - introduce
blurActiontoSearchBox,InputFilterblurAction="search" will search on blurblurAction="restore" will restore text to previous state on blur
- fix scss dep management, so vars.scss can be overriden
- add a dark theme example app in our test folder
- layout classnames
sk-action-bar__info+sk-action-bar__filterrenamed tosk-action-bar-row.- We strongly advise to use the new layout components.
- New
Layoutcomponents to be used instead of specific div + classname markupLayout,TopBar,LayoutBody,SideBar,LayoutResults,ActionBar,ActionBarRow- precursor to responsive layout where we make these layout components more intelligent.
- New
CheckboxFiltercomponent which does a on/off checkbox based on arbitrary query - New
InputFiltercomponent which is a free text filter, great if you need to filter on specific fields. - New
DynamicRangeFiltercomponent which will dynamically calculates the possible min/max based on your search results. - note this filter only supports range slider UI.
- New
TagFiltercomponents, Used to have clickable tags within your search results. SearchBoxenhancementsprefixQueryOptionsprop if you want to customize the elastic options for this queryqueryBuilderprop if you want to customize how the query is built, defaults toSimpleQueryStringSortSelectornow supports multiple sort fields (e.g. secondary sort), be sure to provide the mandatory keySearchkitManagerhas newreloadSearchmethod, used if you want to just reload the search even with the same query.
- SortingSelector handles for app reload.
- PageSizeSelector synchronises state correctly with url
- support Classic components using react.createClass properly in our prop overrides such as listComponent, itemComponent etc.
- Classname changes,in
RefinementListFilter,MenuFilter,NumericRefinementListFilter,Pagination,ViewSwitcherToggle,SortingSelector. We have updated the theme to be backwards compatible, but if you have custom css for those components, you may need to update them.
-
New UI Components
-
List components (
Toggle,Select,ItemList,CheckboxItemList,ItemHistogramList,Tabs,TagCloud)- supported by
RefinementListFilter,MenuFilter,Pagination,ViewSwitcherToggle,SortingSelector,NumericRefinementListFilter
- supported by
-
Panel, all left hand filter components use Panel which can be collapsable now.
-
RefinementListFilter, MenuFilter itemComponent changes
- If you have implemented a custom itemComponent, the toggleFilter action function has been renamed to onClick, be sure to rename so that clicking facets works as expected.
-
Added range input capability to
RangeFilter -
Added
PageSizeSelectorfor selecting how many results per page -
Hits+ViewSwitcherHitsnow supports listComponent to fully handled the list container. -
Paginationnow supports showText property,PaginationSelectis a select based implementation of Pagination -
SearchkitManagernow supportssearchOnLoadproperty which controls whether the initial search runs. -
SearchkitManagerhas asearchUrlPathproperty which controls the endpoint name (defaults to _search) -
exclude/include properties added to
RefinementListFilter,MenuFilter. These are just a pass through property to ElasticSearch's Terms Aggregation
Theming, 0.7 has major changes to component classnames and overall theming approach. Searchkit classes are now prefixed withsk-in order to avoid collisions, we also provide a set of variables which control various aspects of the theme. See theming section in docs.Hitscomponent requiresmod="sk-hits-grid"to retain grid styling- If you are using the cdn, we only ship
themes.cssand no longerstyles.css
<link href="//cdn.jsdelivr.net/searchkit/0.7.0/theme.css" rel="stylesheet"/>setQueryProcessoradded toSearchkitManagerwhich allows post processing of query before it is sent to elasticsearch. #131SortingSelectornow allows empty field, sort properties, useful if you need to add a None option or you want to rely on elasticsearch defaults for sort direction. #116ViewSwitcherHitsandViewSwitcherToggletoggle components which allows view switch functionality, e.g. grid or list view. Our theming updates also provide good defaults for grid + list views. #30ResetFilternow accepts reset options. This allows the which features(filter, query, pagination) influence the resetting disabled state, and what gets reset once the component has been clicked. #107
- Fix regression in RefinementListFilter not showing view more options
- Fix pagination bug where last page was not clickable.
- Fix documentation references for sourceFilter which lead to incomplete demo
Hitsnow supports thesourceFilterprop, we strongly advise you to use this as it will speed up your search and reduce a lot of wasted bandwidth #20
<Hits hitsPerPage={50} sourceFilter={["title", "poster", "imdbId"]} itemComponent={HitItem}/>SortingSelectorComponent now supportsdefaultOptionprop, and we have fixed issues in selection. #89RefinementListFilter,MenuFilter,HierarchicalMenuFilterall support sorting on intrinsic order fields via the theorderKeyandorderDirectionprops. #46NoHits,ResetFiltersnow support customization via high order react componentsHitStatsnow supports customization via higher order react component, note if you previously extended HitStats, you will need to change your code to use thecomponentprop- ScrollToTop improvements, now configurable on
Hitscomponent and will scroll to top on any result changes, this is via thescrollToprop. #48 - ErrorHandling, we now display a more meaningful message when an error in elastic or the http call occurs. The
NoHitscomponent displays this, and is also configurable via theerrorComponenthigher order component prop.#18 ResetFiltersnow ignores defaultQueries.#44
- missing theme css
- remove lib from git. If you install package not via npm, you need to
npm run-script buildin root of project. #37
- InitialView component #34
-
Avoid duplicate redundant searches #71
-
Discourage extending searchkit components, use
itemComponentandcomponentto override display with your own React components. The following components support this feature. See component docs for more information. #17- Hits
- InitialLoader
- Menu
- Refinement List
- Reset
- Selected Filters
-
Pagination supports showing links #40
-
Range Filter no filter applied if range min max equals component min and max #16
-
Configurable search throttle time via prop on searchbox component #55
- No throttling of search query #35
- componentWillUnmount not removing accessor #25
- NumericRefinementListFilter does not add
.is-disabledclass when has no options #50
- update to lodash 4.0 with individual function imports (smaller footprint)
- Breaking api change to internal query builder RangeQuery
- Increased unit test coverage to 99%
- Increase e2e test coverage
- New RangeFilter slider component
- More QueryDSL builds
- Improved tsting
- Correct Searchkit.version
- Better Documentation
- Complete rewrite of query builder
- More test coverage ( 92% coverage )
- More comprehensive support for translations
- Better Documentation
- New
NoHitsComponent
- No results blank state now handled by
NoHitscomponent, removed responsibility fromHitscomponent. Please useNoHitscomponent instead for this state.
Searchbox:prefixQueryFieldsusesqueryFieldsif not specified andsearchOnChangeprop is enabled
- Changed licence to Apache 2.0
- Better Documentation
- Searchbox uses replacestate as you type, pushstate on no change after 400ms
- Better Documentation
- Searchbox uses replacestate as you type, pushstate on no change after 400ms
- Initial public release