UNPKG

react-instantsearch

Version:
71 lines (67 loc) 2.87 kB
'use strict'; var _object_spread = require('@swc/helpers/_/_object_spread'); var _object_spread_props = require('@swc/helpers/_/_object_spread_props'); var _object_without_properties = require('@swc/helpers/_/_object_without_properties'); var instantsearchUiComponents = require('instantsearch-ui-components'); var React = require('react'); var reactInstantsearchCore = require('react-instantsearch-core'); var LookingSimilarUiComponent = instantsearchUiComponents.createLookingSimilarComponent({ createElement: React.createElement, Fragment: React.Fragment }); function LookingSimilar(_0) { var objectIDs = _0.objectIDs, limit = _0.limit, threshold = _0.threshold, queryParameters = _0.queryParameters, fallbackParameters = _0.fallbackParameters, escapeHTML = _0.escapeHTML, transformItems = _0.transformItems, itemComponent = _0.itemComponent, headerComponent = _0.headerComponent, emptyComponent = _0.emptyComponent, layoutComponent = _0.layoutComponent, props = _object_without_properties._(_0, [ "objectIDs", "limit", "threshold", "queryParameters", "fallbackParameters", "escapeHTML", "transformItems", "itemComponent", "headerComponent", "emptyComponent", "layoutComponent" ]); var status = reactInstantsearchCore.useInstantSearch().status; var _useLookingSimilar = reactInstantsearchCore.useLookingSimilar({ objectIDs: objectIDs, limit: limit, threshold: threshold, queryParameters: queryParameters, fallbackParameters: fallbackParameters, escapeHTML: escapeHTML, transformItems: transformItems }, { $$widgetType: 'ais.lookingSimilar' }), items = _useLookingSimilar.items, sendEvent = _useLookingSimilar.sendEvent; var layout = layoutComponent ? function(layoutProps) { return layoutComponent(_object_spread_props._(_object_spread._({}, layoutProps), { classNames: { list: layoutProps.classNames.list, item: layoutProps.classNames.item } })); } : undefined; var _itemComponent = React.useMemo(function() { return itemComponent ? function(itemProps) { return itemComponent(_object_spread_props._(_object_spread._({}, itemProps), { sendEvent: sendEvent })); } : undefined; }, [ itemComponent, sendEvent ]); var uiProps = { items: items, itemComponent: _itemComponent, headerComponent: headerComponent, emptyComponent: emptyComponent, layout: layout, status: status, sendEvent: sendEvent }; return /*#__PURE__*/ React.createElement(LookingSimilarUiComponent, _object_spread._({}, props, uiProps)); } exports.LookingSimilar = LookingSimilar;