Repository URL to install this package:
|
Version:
2.0.4 ▾
|
"use strict";
var __rest = this && this.__rest || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0) t[p[i]] = s[p[i]];
return t;
};
var __importDefault = this && this.__importDefault || function (mod) {
return mod && mod.__esModule ? mod : {
"default": mod
};
};
Object.defineProperty(exports, "__esModule", {
value: true
});
const react_1 = __importDefault(require("react"));
const words_1 = require("../../../../words");
const ProductItem_1 = require("./ProductItem");
const styled_1 = require("./styled");
function getHeaderContent(props, state) {
const {
mandatoryProducts,
addonProducts,
headerLabel
} = props;
const mandatoryProductCount = mandatoryProducts.length;
const addonProductCount = addonProducts.length;
const mandatoryBundleCaption = mandatoryProductCount > 1 ? words_1.wording.items : words_1.wording.item;
const addonBundleCaption = addonProductCount > 1 ? words_1.wording.addonsText : words_1.wording.addonText;
const itemCaption = `${mandatoryProductCount} ${mandatoryBundleCaption}, `;
const addonCaption = `${addonProductCount} ${addonBundleCaption}`;
const arrowDirection = state.isExpanded ? 'up' : 'down';
return {
itemCaption,
addonCaption,
arrowDirection,
headerLabel
};
}
function defaultRenderHeader(props, state) {
const {
itemCaption,
addonCaption,
arrowDirection,
headerLabel
} = getHeaderContent(props, state);
return react_1.default.createElement(styled_1.Header, {
isExpanded: state.isExpanded
}, react_1.default.createElement(styled_1.StyledText, null, react_1.default.createElement(styled_1.StyledItemText, null, itemCaption), react_1.default.createElement(styled_1.StyledAddonText, null, addonCaption)), react_1.default.createElement(styled_1.StyledViewButton, {
breedType: "text-with-icon",
iconType: "arrow",
direction: arrowDirection,
iconAlignType: "suffix",
text: headerLabel,
onClick: state.handleToggle
}));
}
exports.defaultRenderHeader = defaultRenderHeader;
function defaultRenderItem(props) {
const {
item,
index
} = props,
remainingProps = __rest(props, ["item", "index"]);
return react_1.default.createElement(ProductItem_1.ProductItem, Object.assign({
key: index,
item: item,
index: index
}, remainingProps));
}
exports.defaultRenderItem = defaultRenderItem; //# sourceMappingURL=renderProps.js.map