Repository URL to install this package:
|
Version:
2.1.8 ▾
|
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
const tslib_1 = require("tslib");
const react_1 = tslib_1.__importDefault(require("react"));
const exotic_1 = require("exotic");
const styled_1 = require("./styled");
function defaultRenderHeading(props) {
const view = react_1.default.createElement(styled_1.HeaderWrapper, null, react_1.default.createElement(styled_1.StyledPlaceHolderIcon, {
width: 24,
height: 24
}), react_1.default.createElement(styled_1.StyledPlaceHolderText, {
width: 150,
height: 18
}));
return view;
}
exports.defaultRenderHeading = defaultRenderHeading;
function defaultRenderProductItemList(props) {
const {
items
} = props;
return react_1.default.createElement(styled_1.StyledProductItemList, Object.assign({
list: items
}, props));
}
exports.defaultRenderProductItemList = defaultRenderProductItemList;
function defaultRenderStoreItem(props) {
const {
renderProductItemList,
renderHeading,
hasSingleStore = false,
storeName,
items,
state,
currentStoreId,
storeId,
index
} = props,
remainingProps = tslib_1.__rest(props, ["renderProductItemList", "renderHeading", "hasSingleStore", "storeName", "items", "state", "currentStoreId", "storeId", "index"]);
const viewType = state ? state.isExpanded ? 'list' : 'grid' : props.viewType;
const passThroughProps = {
storeName,
currentStoreId,
items,
storeId
};
const view = react_1.default.createElement(styled_1.StoreItemWrapper, {
index: index,
viewType: viewType
}, viewType === 'list' && currentStoreId !== storeId && exotic_1.isFunction(renderHeading) && renderHeading(Object.assign({}, passThroughProps, remainingProps)), exotic_1.isFunction(renderProductItemList) && renderProductItemList(Object.assign({
state,
viewType,
hasSingleStore
}, passThroughProps, remainingProps)));
return view;
}
exports.defaultRenderStoreItem = defaultRenderStoreItem;
function defaultRenderStoreProductList(props) {
const {
list,
renderStoreItem
} = props,
remainingProps = tslib_1.__rest(props, ["list", "renderStoreItem"]);
const hasSingleStore = exotic_1.isArray(list) && list.length === 1;
const view = exotic_1.isArray(list) && list.map((item, index) => exotic_1.isFunction(renderStoreItem) && renderStoreItem(Object.assign({}, item, {
index,
hasSingleStore
}, remainingProps)));
return view;
}
exports.defaultRenderStoreProductList = defaultRenderStoreProductList;
function defaultRenderWrapper(props) {
const {
className,
children,
dataQa,
state,
list
} = props;
const viewType = state ? state.isExpanded ? 'list' : 'grid' : props.viewType;
const hasSingleItem = exotic_1.isArray(list) && list.length === 1 && exotic_1.isObj(list[0]) && exotic_1.isArray(list[0].items) && list[0].items.length === 1;
const passThroughProps = {
className,
viewType,
hasSingleItem,
'data-qa': 'qa-store-container'
};
return react_1.default.createElement(styled_1.StoreProductListWrapper, Object.assign({}, passThroughProps), children);
}
exports.defaultRenderWrapper = defaultRenderWrapper;