instantsearch-ui-components 0.4.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/dist/cjs/components/FrequentlyBoughtTogether.js +78 -0
  2. package/dist/cjs/components/Hits.js +41 -8
  3. package/dist/cjs/components/LookingSimilar.js +78 -0
  4. package/dist/cjs/components/RelatedProducts.js +78 -0
  5. package/dist/cjs/components/TrendingItems.js +78 -0
  6. package/dist/cjs/components/index.js +44 -0
  7. package/dist/cjs/components/recommend-shared/DefaultEmpty.js +14 -0
  8. package/dist/cjs/components/recommend-shared/DefaultHeader.js +24 -0
  9. package/dist/cjs/components/recommend-shared/DefaultItem.js +13 -0
  10. package/dist/cjs/components/recommend-shared/ListView.js +30 -0
  11. package/dist/cjs/components/recommend-shared/index.js +49 -0
  12. package/dist/cjs/types/Recommend.js +1 -0
  13. package/dist/cjs/types/index.js +22 -0
  14. package/dist/cjs/types/shared.js +1 -0
  15. package/dist/cjs/version.js +1 -1
  16. package/dist/es/components/FrequentlyBoughtTogether.d.ts +4 -0
  17. package/dist/es/components/FrequentlyBoughtTogether.js +71 -0
  18. package/dist/es/components/Hits.d.ts +31 -3
  19. package/dist/es/components/Hits.js +41 -8
  20. package/dist/es/components/LookingSimilar.d.ts +4 -0
  21. package/dist/es/components/LookingSimilar.js +71 -0
  22. package/dist/es/components/RelatedProducts.d.ts +4 -0
  23. package/dist/es/components/RelatedProducts.js +71 -0
  24. package/dist/es/components/TrendingItems.d.ts +4 -0
  25. package/dist/es/components/TrendingItems.js +71 -0
  26. package/dist/es/components/index.d.ts +4 -0
  27. package/dist/es/components/index.js +5 -1
  28. package/dist/es/components/recommend-shared/DefaultEmpty.d.ts +3 -0
  29. package/dist/es/components/recommend-shared/DefaultEmpty.js +8 -0
  30. package/dist/es/components/recommend-shared/DefaultHeader.d.ts +3 -0
  31. package/dist/es/components/recommend-shared/DefaultHeader.js +18 -0
  32. package/dist/es/components/recommend-shared/DefaultItem.d.ts +3 -0
  33. package/dist/es/components/recommend-shared/DefaultItem.js +7 -0
  34. package/dist/es/components/recommend-shared/ListView.d.ts +3 -0
  35. package/dist/es/components/recommend-shared/ListView.js +24 -0
  36. package/dist/es/components/recommend-shared/index.d.ts +4 -0
  37. package/dist/es/components/recommend-shared/index.js +4 -0
  38. package/dist/es/types/Recommend.d.ts +71 -0
  39. package/dist/es/types/Recommend.js +1 -0
  40. package/dist/es/types/index.d.ts +2 -0
  41. package/dist/es/types/index.js +3 -1
  42. package/dist/es/types/shared.d.ts +1 -0
  43. package/dist/es/types/shared.js +1 -0
  44. package/dist/es/version.d.ts +1 -1
  45. package/dist/es/version.js +1 -1
  46. package/package.json +2 -2
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.createFrequentlyBoughtTogetherComponent = createFrequentlyBoughtTogetherComponent;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
+ var _lib = require("../lib");
12
+ var _recommendShared = require("./recommend-shared");
13
+ var _excluded = ["classNames", "emptyComponent", "headerComponent", "itemComponent", "view", "items", "status", "translations", "sendEvent"];
14
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
15
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
16
+ function createFrequentlyBoughtTogetherComponent(_ref) {
17
+ var createElement = _ref.createElement,
18
+ Fragment = _ref.Fragment;
19
+ return function FrequentlyBoughtTogether(userProps) {
20
+ var _userProps$classNames = userProps.classNames,
21
+ classNames = _userProps$classNames === void 0 ? {} : _userProps$classNames,
22
+ _userProps$emptyCompo = userProps.emptyComponent,
23
+ EmptyComponent = _userProps$emptyCompo === void 0 ? (0, _recommendShared.createDefaultEmptyComponent)({
24
+ createElement: createElement,
25
+ Fragment: Fragment
26
+ }) : _userProps$emptyCompo,
27
+ _userProps$headerComp = userProps.headerComponent,
28
+ HeaderComponent = _userProps$headerComp === void 0 ? (0, _recommendShared.createDefaultHeaderComponent)({
29
+ createElement: createElement,
30
+ Fragment: Fragment
31
+ }) : _userProps$headerComp,
32
+ _userProps$itemCompon = userProps.itemComponent,
33
+ ItemComponent = _userProps$itemCompon === void 0 ? (0, _recommendShared.createDefaultItemComponent)({
34
+ createElement: createElement,
35
+ Fragment: Fragment
36
+ }) : _userProps$itemCompon,
37
+ _userProps$view = userProps.view,
38
+ View = _userProps$view === void 0 ? (0, _recommendShared.createListViewComponent)({
39
+ createElement: createElement,
40
+ Fragment: Fragment
41
+ }) : _userProps$view,
42
+ items = userProps.items,
43
+ status = userProps.status,
44
+ userTranslations = userProps.translations,
45
+ sendEvent = userProps.sendEvent,
46
+ props = (0, _objectWithoutProperties2.default)(userProps, _excluded);
47
+ var translations = _objectSpread({
48
+ title: 'Frequently bought together',
49
+ sliderLabel: 'Frequently bought together products'
50
+ }, userTranslations);
51
+ var cssClasses = {
52
+ root: (0, _lib.cx)('ais-FrequentlyBoughtTogether', classNames.root),
53
+ emptyRoot: (0, _lib.cx)('ais-FrequentlyBoughtTogether', classNames.root, 'ais-FrequentlyBoughtTogether--empty', classNames.emptyRoot, props.className),
54
+ title: (0, _lib.cx)('ais-FrequentlyBoughtTogether-title', classNames.title),
55
+ container: (0, _lib.cx)('ais-FrequentlyBoughtTogether-container', classNames.container),
56
+ list: (0, _lib.cx)('ais-FrequentlyBoughtTogether-list', classNames.list),
57
+ item: (0, _lib.cx)('ais-FrequentlyBoughtTogether-item', classNames.item)
58
+ };
59
+ if (items.length === 0 && status === 'idle') {
60
+ return createElement("section", (0, _extends2.default)({}, props, {
61
+ className: cssClasses.emptyRoot
62
+ }), createElement(EmptyComponent, null));
63
+ }
64
+ return createElement("section", (0, _extends2.default)({}, props, {
65
+ className: cssClasses.root
66
+ }), createElement(HeaderComponent, {
67
+ classNames: cssClasses,
68
+ items: items,
69
+ translations: translations
70
+ }), createElement(View, {
71
+ classNames: cssClasses,
72
+ translations: translations,
73
+ itemComponent: ItemComponent,
74
+ items: items,
75
+ sendEvent: sendEvent
76
+ }));
77
+ };
78
+ }
@@ -8,11 +8,41 @@ exports.createHitsComponent = createHitsComponent;
8
8
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
9
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
10
  var _lib = require("../lib");
11
- var _excluded = ["classNames", "hits", "itemComponent", "sendEvent", "emptyComponent"];
11
+ var _excluded = ["classNames", "hits", "itemComponent", "sendEvent", "emptyComponent", "banner", "bannerComponent"];
12
12
  // Should be imported from a shared package in the future
13
13
 
14
- function createHitsComponent(_ref) {
14
+ function createDefaultBannerComponent(_ref) {
15
15
  var createElement = _ref.createElement;
16
+ return function DefaultBanner(_ref2) {
17
+ var classNames = _ref2.classNames,
18
+ banner = _ref2.banner;
19
+ if (!banner.image.urls[0].url) {
20
+ return null;
21
+ }
22
+ return createElement("aside", {
23
+ className: (0, _lib.cx)('ais-Hits-banner', classNames.bannerRoot)
24
+ }, banner.link ? createElement("a", {
25
+ className: (0, _lib.cx)('ais-Hits-banner-link', classNames.bannerLink),
26
+ href: banner.link.url,
27
+ target: banner.link.target
28
+ }, createElement("img", {
29
+ className: (0, _lib.cx)('ais-Hits-banner-image', classNames.bannerImage),
30
+ src: banner.image.urls[0].url,
31
+ alt: banner.image.title
32
+ })) : createElement("img", {
33
+ className: (0, _lib.cx)('ais-Hits-banner-image', classNames.bannerImage),
34
+ src: banner.image.urls[0].url,
35
+ alt: banner.image.title
36
+ }));
37
+ };
38
+ }
39
+ function createHitsComponent(_ref3) {
40
+ var createElement = _ref3.createElement,
41
+ Fragment = _ref3.Fragment;
42
+ var DefaultBannerComponent = createDefaultBannerComponent({
43
+ createElement: createElement,
44
+ Fragment: Fragment
45
+ });
16
46
  return function Hits(userProps) {
17
47
  var _userProps$classNames = userProps.classNames,
18
48
  classNames = _userProps$classNames === void 0 ? {} : _userProps$classNames,
@@ -20,15 +50,18 @@ function createHitsComponent(_ref) {
20
50
  ItemComponent = userProps.itemComponent,
21
51
  sendEvent = userProps.sendEvent,
22
52
  EmptyComponent = userProps.emptyComponent,
53
+ banner = userProps.banner,
54
+ BannerComponent = userProps.bannerComponent,
23
55
  props = (0, _objectWithoutProperties2.default)(userProps, _excluded);
24
- if (hits.length === 0 && EmptyComponent) {
25
- return createElement(EmptyComponent, {
26
- className: (0, _lib.cx)('ais-Hits', classNames.root, (0, _lib.cx)('ais-Hits--empty', classNames.emptyRoot), props.className)
27
- });
28
- }
29
56
  return createElement("div", (0, _extends2.default)({}, props, {
30
57
  className: (0, _lib.cx)('ais-Hits', classNames.root, hits.length === 0 && (0, _lib.cx)('ais-Hits--empty', classNames.emptyRoot), props.className)
31
- }), createElement("ol", {
58
+ }), banner && (BannerComponent ? createElement(BannerComponent, {
59
+ className: (0, _lib.cx)('ais-Hits-banner', classNames.bannerRoot),
60
+ banner: banner
61
+ }) : createElement(DefaultBannerComponent, {
62
+ classNames: classNames,
63
+ banner: banner
64
+ })), hits.length === 0 && EmptyComponent ? createElement(EmptyComponent, null) : createElement("ol", {
32
65
  className: (0, _lib.cx)('ais-Hits-list', classNames.list)
33
66
  }, hits.map(function (hit, index) {
34
67
  return createElement(ItemComponent, {
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.createLookingSimilarComponent = createLookingSimilarComponent;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
+ var _lib = require("../lib");
12
+ var _recommendShared = require("./recommend-shared");
13
+ var _excluded = ["classNames", "emptyComponent", "headerComponent", "itemComponent", "view", "items", "status", "translations", "sendEvent"];
14
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
15
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
16
+ function createLookingSimilarComponent(_ref) {
17
+ var createElement = _ref.createElement,
18
+ Fragment = _ref.Fragment;
19
+ return function LookingSimilar(userProps) {
20
+ var _userProps$classNames = userProps.classNames,
21
+ classNames = _userProps$classNames === void 0 ? {} : _userProps$classNames,
22
+ _userProps$emptyCompo = userProps.emptyComponent,
23
+ EmptyComponent = _userProps$emptyCompo === void 0 ? (0, _recommendShared.createDefaultEmptyComponent)({
24
+ createElement: createElement,
25
+ Fragment: Fragment
26
+ }) : _userProps$emptyCompo,
27
+ _userProps$headerComp = userProps.headerComponent,
28
+ HeaderComponent = _userProps$headerComp === void 0 ? (0, _recommendShared.createDefaultHeaderComponent)({
29
+ createElement: createElement,
30
+ Fragment: Fragment
31
+ }) : _userProps$headerComp,
32
+ _userProps$itemCompon = userProps.itemComponent,
33
+ ItemComponent = _userProps$itemCompon === void 0 ? (0, _recommendShared.createDefaultItemComponent)({
34
+ createElement: createElement,
35
+ Fragment: Fragment
36
+ }) : _userProps$itemCompon,
37
+ _userProps$view = userProps.view,
38
+ View = _userProps$view === void 0 ? (0, _recommendShared.createListViewComponent)({
39
+ createElement: createElement,
40
+ Fragment: Fragment
41
+ }) : _userProps$view,
42
+ items = userProps.items,
43
+ status = userProps.status,
44
+ userTranslations = userProps.translations,
45
+ sendEvent = userProps.sendEvent,
46
+ props = (0, _objectWithoutProperties2.default)(userProps, _excluded);
47
+ var translations = _objectSpread({
48
+ title: 'Looking similar',
49
+ sliderLabel: 'Looking similar'
50
+ }, userTranslations);
51
+ var cssClasses = {
52
+ root: (0, _lib.cx)('ais-LookingSimilar', classNames.root),
53
+ emptyRoot: (0, _lib.cx)('ais-LookingSimilar', classNames.root, 'ais-LookingSimilar--empty', classNames.emptyRoot, props.className),
54
+ title: (0, _lib.cx)('ais-LookingSimilar-title', classNames.title),
55
+ container: (0, _lib.cx)('ais-LookingSimilar-container', classNames.container),
56
+ list: (0, _lib.cx)('ais-LookingSimilar-list', classNames.list),
57
+ item: (0, _lib.cx)('ais-LookingSimilar-item', classNames.item)
58
+ };
59
+ if (items.length === 0 && status === 'idle') {
60
+ return createElement("section", (0, _extends2.default)({}, props, {
61
+ className: cssClasses.emptyRoot
62
+ }), createElement(EmptyComponent, null));
63
+ }
64
+ return createElement("section", (0, _extends2.default)({}, props, {
65
+ className: cssClasses.root
66
+ }), createElement(HeaderComponent, {
67
+ classNames: cssClasses,
68
+ items: items,
69
+ translations: translations
70
+ }), createElement(View, {
71
+ classNames: cssClasses,
72
+ translations: translations,
73
+ itemComponent: ItemComponent,
74
+ items: items,
75
+ sendEvent: sendEvent
76
+ }));
77
+ };
78
+ }
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.createRelatedProductsComponent = createRelatedProductsComponent;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
+ var _lib = require("../lib");
12
+ var _recommendShared = require("./recommend-shared");
13
+ var _excluded = ["classNames", "emptyComponent", "headerComponent", "itemComponent", "view", "items", "status", "translations", "sendEvent"];
14
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
15
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
16
+ function createRelatedProductsComponent(_ref) {
17
+ var createElement = _ref.createElement,
18
+ Fragment = _ref.Fragment;
19
+ return function RelatedProducts(userProps) {
20
+ var _userProps$classNames = userProps.classNames,
21
+ classNames = _userProps$classNames === void 0 ? {} : _userProps$classNames,
22
+ _userProps$emptyCompo = userProps.emptyComponent,
23
+ EmptyComponent = _userProps$emptyCompo === void 0 ? (0, _recommendShared.createDefaultEmptyComponent)({
24
+ createElement: createElement,
25
+ Fragment: Fragment
26
+ }) : _userProps$emptyCompo,
27
+ _userProps$headerComp = userProps.headerComponent,
28
+ HeaderComponent = _userProps$headerComp === void 0 ? (0, _recommendShared.createDefaultHeaderComponent)({
29
+ createElement: createElement,
30
+ Fragment: Fragment
31
+ }) : _userProps$headerComp,
32
+ _userProps$itemCompon = userProps.itemComponent,
33
+ ItemComponent = _userProps$itemCompon === void 0 ? (0, _recommendShared.createDefaultItemComponent)({
34
+ createElement: createElement,
35
+ Fragment: Fragment
36
+ }) : _userProps$itemCompon,
37
+ _userProps$view = userProps.view,
38
+ View = _userProps$view === void 0 ? (0, _recommendShared.createListViewComponent)({
39
+ createElement: createElement,
40
+ Fragment: Fragment
41
+ }) : _userProps$view,
42
+ items = userProps.items,
43
+ status = userProps.status,
44
+ userTranslations = userProps.translations,
45
+ sendEvent = userProps.sendEvent,
46
+ props = (0, _objectWithoutProperties2.default)(userProps, _excluded);
47
+ var translations = _objectSpread({
48
+ title: 'Related products',
49
+ sliderLabel: 'Related products'
50
+ }, userTranslations);
51
+ var cssClasses = {
52
+ root: (0, _lib.cx)('ais-RelatedProducts', classNames.root),
53
+ emptyRoot: (0, _lib.cx)('ais-RelatedProducts', classNames.root, 'ais-RelatedProducts--empty', classNames.emptyRoot, props.className),
54
+ title: (0, _lib.cx)('ais-RelatedProducts-title', classNames.title),
55
+ container: (0, _lib.cx)('ais-RelatedProducts-container', classNames.container),
56
+ list: (0, _lib.cx)('ais-RelatedProducts-list', classNames.list),
57
+ item: (0, _lib.cx)('ais-RelatedProducts-item', classNames.item)
58
+ };
59
+ if (items.length === 0 && status === 'idle') {
60
+ return createElement("section", (0, _extends2.default)({}, props, {
61
+ className: cssClasses.emptyRoot
62
+ }), createElement(EmptyComponent, null));
63
+ }
64
+ return createElement("section", (0, _extends2.default)({}, props, {
65
+ className: cssClasses.root
66
+ }), createElement(HeaderComponent, {
67
+ classNames: cssClasses,
68
+ items: items,
69
+ translations: translations
70
+ }), createElement(View, {
71
+ classNames: cssClasses,
72
+ translations: translations,
73
+ itemComponent: ItemComponent,
74
+ items: items,
75
+ sendEvent: sendEvent
76
+ }));
77
+ };
78
+ }
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.createTrendingItemsComponent = createTrendingItemsComponent;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
+ var _lib = require("../lib");
12
+ var _recommendShared = require("./recommend-shared");
13
+ var _excluded = ["classNames", "emptyComponent", "headerComponent", "itemComponent", "view", "items", "status", "translations", "sendEvent"];
14
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
15
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
16
+ function createTrendingItemsComponent(_ref) {
17
+ var createElement = _ref.createElement,
18
+ Fragment = _ref.Fragment;
19
+ return function TrendingItems(userProps) {
20
+ var _userProps$classNames = userProps.classNames,
21
+ classNames = _userProps$classNames === void 0 ? {} : _userProps$classNames,
22
+ _userProps$emptyCompo = userProps.emptyComponent,
23
+ EmptyComponent = _userProps$emptyCompo === void 0 ? (0, _recommendShared.createDefaultEmptyComponent)({
24
+ createElement: createElement,
25
+ Fragment: Fragment
26
+ }) : _userProps$emptyCompo,
27
+ _userProps$headerComp = userProps.headerComponent,
28
+ HeaderComponent = _userProps$headerComp === void 0 ? (0, _recommendShared.createDefaultHeaderComponent)({
29
+ createElement: createElement,
30
+ Fragment: Fragment
31
+ }) : _userProps$headerComp,
32
+ _userProps$itemCompon = userProps.itemComponent,
33
+ ItemComponent = _userProps$itemCompon === void 0 ? (0, _recommendShared.createDefaultItemComponent)({
34
+ createElement: createElement,
35
+ Fragment: Fragment
36
+ }) : _userProps$itemCompon,
37
+ _userProps$view = userProps.view,
38
+ View = _userProps$view === void 0 ? (0, _recommendShared.createListViewComponent)({
39
+ createElement: createElement,
40
+ Fragment: Fragment
41
+ }) : _userProps$view,
42
+ items = userProps.items,
43
+ status = userProps.status,
44
+ userTranslations = userProps.translations,
45
+ sendEvent = userProps.sendEvent,
46
+ props = (0, _objectWithoutProperties2.default)(userProps, _excluded);
47
+ var translations = _objectSpread({
48
+ title: 'Trending items',
49
+ sliderLabel: 'Trending items'
50
+ }, userTranslations);
51
+ var cssClasses = {
52
+ root: (0, _lib.cx)('ais-TrendingItems', classNames.root),
53
+ emptyRoot: (0, _lib.cx)('ais-TrendingItems', classNames.root, 'ais-TrendingItems--empty', classNames.emptyRoot, props.className),
54
+ title: (0, _lib.cx)('ais-TrendingItems-title', classNames.title),
55
+ container: (0, _lib.cx)('ais-TrendingItems-container', classNames.container),
56
+ list: (0, _lib.cx)('ais-TrendingItems-list', classNames.list),
57
+ item: (0, _lib.cx)('ais-TrendingItems-item', classNames.item)
58
+ };
59
+ if (items.length === 0 && status === 'idle') {
60
+ return createElement("section", (0, _extends2.default)({}, props, {
61
+ className: cssClasses.emptyRoot
62
+ }), createElement(EmptyComponent, null));
63
+ }
64
+ return createElement("section", (0, _extends2.default)({}, props, {
65
+ className: cssClasses.root
66
+ }), createElement(HeaderComponent, {
67
+ classNames: cssClasses,
68
+ items: items,
69
+ translations: translations
70
+ }), createElement(View, {
71
+ classNames: cssClasses,
72
+ translations: translations,
73
+ itemComponent: ItemComponent,
74
+ items: items,
75
+ sendEvent: sendEvent
76
+ }));
77
+ };
78
+ }
@@ -3,6 +3,17 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ var _FrequentlyBoughtTogether = require("./FrequentlyBoughtTogether");
7
+ Object.keys(_FrequentlyBoughtTogether).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _FrequentlyBoughtTogether[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function get() {
13
+ return _FrequentlyBoughtTogether[key];
14
+ }
15
+ });
16
+ });
6
17
  var _Highlight = require("./Highlight");
7
18
  Object.keys(_Highlight).forEach(function (key) {
8
19
  if (key === "default" || key === "__esModule") return;
@@ -24,4 +35,37 @@ Object.keys(_Hits).forEach(function (key) {
24
35
  return _Hits[key];
25
36
  }
26
37
  });
38
+ });
39
+ var _RelatedProducts = require("./RelatedProducts");
40
+ Object.keys(_RelatedProducts).forEach(function (key) {
41
+ if (key === "default" || key === "__esModule") return;
42
+ if (key in exports && exports[key] === _RelatedProducts[key]) return;
43
+ Object.defineProperty(exports, key, {
44
+ enumerable: true,
45
+ get: function get() {
46
+ return _RelatedProducts[key];
47
+ }
48
+ });
49
+ });
50
+ var _TrendingItems = require("./TrendingItems");
51
+ Object.keys(_TrendingItems).forEach(function (key) {
52
+ if (key === "default" || key === "__esModule") return;
53
+ if (key in exports && exports[key] === _TrendingItems[key]) return;
54
+ Object.defineProperty(exports, key, {
55
+ enumerable: true,
56
+ get: function get() {
57
+ return _TrendingItems[key];
58
+ }
59
+ });
60
+ });
61
+ var _LookingSimilar = require("./LookingSimilar");
62
+ Object.keys(_LookingSimilar).forEach(function (key) {
63
+ if (key === "default" || key === "__esModule") return;
64
+ if (key in exports && exports[key] === _LookingSimilar[key]) return;
65
+ Object.defineProperty(exports, key, {
66
+ enumerable: true,
67
+ get: function get() {
68
+ return _LookingSimilar[key];
69
+ }
70
+ });
27
71
  });
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createDefaultEmptyComponent = createDefaultEmptyComponent;
7
+ function createDefaultEmptyComponent(_ref) {
8
+ var createElement = _ref.createElement,
9
+ Fragment = _ref.Fragment;
10
+ var _ref2 = createElement(Fragment, null, "No results");
11
+ return function DefaultEmpty() {
12
+ return _ref2;
13
+ };
14
+ }
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createDefaultHeaderComponent = createDefaultHeaderComponent;
7
+ function createDefaultHeaderComponent(_ref) {
8
+ var createElement = _ref.createElement;
9
+ return function DefaultHeader(userProps) {
10
+ var _userProps$classNames = userProps.classNames,
11
+ classNames = _userProps$classNames === void 0 ? {} : _userProps$classNames,
12
+ items = userProps.items,
13
+ translations = userProps.translations;
14
+ if (!items || items.length < 1) {
15
+ return null;
16
+ }
17
+ if (!translations.title) {
18
+ return null;
19
+ }
20
+ return createElement("h3", {
21
+ className: classNames.title
22
+ }, translations.title);
23
+ };
24
+ }
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createDefaultItemComponent = createDefaultItemComponent;
7
+ function createDefaultItemComponent(_ref) {
8
+ var createElement = _ref.createElement,
9
+ Fragment = _ref.Fragment;
10
+ return function DefaultItem(userProps) {
11
+ return createElement(Fragment, null, JSON.stringify(userProps.item, null, 2));
12
+ };
13
+ }
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createListViewComponent = createListViewComponent;
7
+ function createListViewComponent(_ref) {
8
+ var createElement = _ref.createElement;
9
+ return function ListView(userProps) {
10
+ var _userProps$classNames = userProps.classNames,
11
+ classNames = _userProps$classNames === void 0 ? {} : _userProps$classNames,
12
+ ItemComponent = userProps.itemComponent,
13
+ items = userProps.items,
14
+ sendEvent = userProps.sendEvent;
15
+ return createElement("div", {
16
+ className: classNames.container
17
+ }, createElement("ol", {
18
+ className: classNames.list
19
+ }, items.map(function (item) {
20
+ return createElement("li", {
21
+ key: item.objectID,
22
+ className: classNames.item,
23
+ onClick: sendEvent,
24
+ onAuxClick: sendEvent
25
+ }, createElement(ItemComponent, {
26
+ item: item
27
+ }));
28
+ })));
29
+ };
30
+ }
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _DefaultEmpty = require("./DefaultEmpty");
7
+ Object.keys(_DefaultEmpty).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _DefaultEmpty[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function get() {
13
+ return _DefaultEmpty[key];
14
+ }
15
+ });
16
+ });
17
+ var _DefaultHeader = require("./DefaultHeader");
18
+ Object.keys(_DefaultHeader).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (key in exports && exports[key] === _DefaultHeader[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function get() {
24
+ return _DefaultHeader[key];
25
+ }
26
+ });
27
+ });
28
+ var _DefaultItem = require("./DefaultItem");
29
+ Object.keys(_DefaultItem).forEach(function (key) {
30
+ if (key === "default" || key === "__esModule") return;
31
+ if (key in exports && exports[key] === _DefaultItem[key]) return;
32
+ Object.defineProperty(exports, key, {
33
+ enumerable: true,
34
+ get: function get() {
35
+ return _DefaultItem[key];
36
+ }
37
+ });
38
+ });
39
+ var _ListView = require("./ListView");
40
+ Object.keys(_ListView).forEach(function (key) {
41
+ if (key === "default" || key === "__esModule") return;
42
+ if (key in exports && exports[key] === _ListView[key]) return;
43
+ Object.defineProperty(exports, key, {
44
+ enumerable: true,
45
+ get: function get() {
46
+ return _ListView[key];
47
+ }
48
+ });
49
+ });
@@ -0,0 +1 @@
1
+ "use strict";
@@ -13,4 +13,26 @@ Object.keys(_Renderer).forEach(function (key) {
13
13
  return _Renderer[key];
14
14
  }
15
15
  });
16
+ });
17
+ var _Recommend = require("./Recommend");
18
+ Object.keys(_Recommend).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (key in exports && exports[key] === _Recommend[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function get() {
24
+ return _Recommend[key];
25
+ }
26
+ });
27
+ });
28
+ var _shared = require("./shared");
29
+ Object.keys(_shared).forEach(function (key) {
30
+ if (key === "default" || key === "__esModule") return;
31
+ if (key in exports && exports[key] === _shared[key]) return;
32
+ Object.defineProperty(exports, key, {
33
+ enumerable: true,
34
+ get: function get() {
35
+ return _shared[key];
36
+ }
37
+ });
16
38
  });
@@ -0,0 +1 @@
1
+ "use strict";
@@ -4,5 +4,5 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- var _default = '0.4.0';
7
+ var _default = '0.6.0';
8
8
  exports.default = _default;
@@ -0,0 +1,4 @@
1
+ /** @jsx createElement */
2
+ import type { Renderer, ComponentProps, RecommendComponentProps } from '../types';
3
+ export type FrequentlyBoughtTogetherProps<TObject, TComponentProps extends Record<string, unknown> = Record<string, unknown>> = ComponentProps<'div'> & RecommendComponentProps<TObject, TComponentProps>;
4
+ export declare function createFrequentlyBoughtTogetherComponent({ createElement, Fragment, }: Renderer): <TObject>(userProps: FrequentlyBoughtTogetherProps<TObject, Record<string, unknown>>) => JSX.Element;