@findify/react-components
Version:
Findify react UI components
42 lines (40 loc) • 1.34 kB
JavaScript
/**
* @module layouts/Recommendation/Grid
*/
import { useItems } from '@findify/react-connect';
import Product from "../../../components/Cards/Product";
import Text from "../../../components/Text";
import Grid from "../../../components/common/Grid";
import MapArray from "../../../components/common/MapArray";
import { hideLoader } from "../../../helpers/loader";
import { jsx as _jsx } from "react/jsx-runtime";
import { Fragment as _Fragment } from "react/jsx-runtime";
import { jsxs as _jsxs } from "react/jsx-runtime";
var styles = {
"title": "findify-layouts--recommendation--grid__title"
};
export default (function (_ref) {
var _ref$theme = _ref.theme,
theme = _ref$theme === void 0 ? styles : _ref$theme;
var _useItems = useItems(),
items = _useItems.items,
config = _useItems.config;
hideLoader();
if (!(items !== null && items !== void 0 && items.size)) return null;
return /*#__PURE__*/_jsxs(_Fragment, {
children: [/*#__PURE__*/_jsx(Text, {
title: true,
component: "p",
className: theme.title,
children: config.get('title')
}), /*#__PURE__*/_jsx(Grid, {
gutter: 20,
columns: config.getIn(['breakpoints', 'grid']),
children: MapArray({
config: config.get('product'),
array: items,
factory: Product
})
})]
});
});