From 4bc2d21b3a9fc2862c5a4fa9b08620f30f686630 Mon Sep 17 00:00:00 2001 From: iam4x Date: Fri, 24 Mar 2017 10:54:41 +0100 Subject: [PATCH] feat(main): export all the widgets at once --- src/lib/main.js | 47 +++++--------------------------------------- src/widgets/index.js | 19 ++++++++++++++++++ 2 files changed, 24 insertions(+), 42 deletions(-) create mode 100644 src/widgets/index.js diff --git a/src/lib/main.js b/src/lib/main.js index 8288bb798f..a65c71d3ad 100644 --- a/src/lib/main.js +++ b/src/lib/main.js @@ -5,56 +5,19 @@ import '../shams/Object.freeze.js'; import '../shims/Object.getPrototypeOf.js'; import toFactory from 'to-factory'; -import InstantSearch from './InstantSearch.js'; import algoliasearchHelper from 'algoliasearch-helper'; -import clearAll from '../widgets/clear-all/clear-all.js'; -import currentRefinedValues from '../widgets/current-refined-values/current-refined-values.js'; -import hierarchicalMenu from '../widgets/hierarchical-menu/hierarchical-menu.js'; -import hits from '../widgets/hits/hits.js'; -import hitsPerPageSelector from '../widgets/hits-per-page-selector/hits-per-page-selector.js'; -import infiniteHits from '../widgets/infinite-hits/infinite-hits.js'; -import menu from '../widgets/menu/menu.js'; -import refinementList from '../widgets/refinement-list/refinement-list.js'; -import numericRefinementList from '../widgets/numeric-refinement-list/numeric-refinement-list.js'; -import numericSelector from '../widgets/numeric-selector/numeric-selector.js'; -import pagination from '../widgets/pagination/pagination.js'; -import priceRanges from '../widgets/price-ranges/price-ranges.js'; -import searchBox from '../widgets/search-box/search-box.js'; -import rangeSlider from '../widgets/range-slider/range-slider.js'; -import sortBySelector from '../widgets/sort-by-selector/sort-by-selector.js'; -import starRating from '../widgets/star-rating/star-rating.js'; -import stats from '../widgets/stats/stats.js'; -import toggle from '../widgets/toggle/toggle.js'; -import analytics from '../widgets/analytics/analytics.js'; + +import InstantSearch from './InstantSearch.js'; import version from './version.js'; import * as connectors from '../connectors/index.js'; +import * as widgets from '../widgets/index.js'; const instantsearch = Object.assign(toFactory(InstantSearch), { + createQueryString: algoliasearchHelper.url.getQueryStringFromState, connectors, + widgets, version, - widgets: { - analytics, - clearAll, - currentRefinedValues, - hierarchicalMenu, - hits, - hitsPerPageSelector, - infiniteHits, - menu, - refinementList, - numericRefinementList, - numericSelector, - pagination, - priceRanges, - searchBox, - rangeSlider, - sortBySelector, - starRating, - stats, - toggle, - }, - createQueryString: algoliasearchHelper.url.getQueryStringFromState, }); export default instantsearch; diff --git a/src/widgets/index.js b/src/widgets/index.js new file mode 100644 index 0000000000..fa45d68419 --- /dev/null +++ b/src/widgets/index.js @@ -0,0 +1,19 @@ +export {default as clearAll} from '../widgets/clear-all/clear-all.js'; +export {default as currentRefinedValues} from '../widgets/current-refined-values/current-refined-values.js'; +export {default as hierarchicalMenu} from '../widgets/hierarchical-menu/hierarchical-menu.js'; +export {default as hits} from '../widgets/hits/hits.js'; +export {default as hitsPerPageSelector} from '../widgets/hits-per-page-selector/hits-per-page-selector.js'; +export {default as infiniteHits} from '../widgets/infinite-hits/infinite-hits.js'; +export {default as menu} from '../widgets/menu/menu.js'; +export {default as refinementList} from '../widgets/refinement-list/refinement-list.js'; +export {default as numericRefinementList} from '../widgets/numeric-refinement-list/numeric-refinement-list.js'; +export {default as numericSelector} from '../widgets/numeric-selector/numeric-selector.js'; +export {default as pagination} from '../widgets/pagination/pagination.js'; +export {default as priceRanges} from '../widgets/price-ranges/price-ranges.js'; +export {default as searchBox} from '../widgets/search-box/search-box.js'; +export {default as rangeSlider} from '../widgets/range-slider/range-slider.js'; +export {default as sortBySelector} from '../widgets/sort-by-selector/sort-by-selector.js'; +export {default as starRating} from '../widgets/star-rating/star-rating.js'; +export {default as stats} from '../widgets/stats/stats.js'; +export {default as toggle} from '../widgets/toggle/toggle.js'; +export {default as analytics} from '../widgets/analytics/analytics.js';