@sberdevices/plasma-temple
Version:
SberDevices CanvasApp Templates.
117 lines (98 loc) • 5.71 kB
JavaScript
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.CartCommon = CartCommon;
var _react = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("react"));
var _styledComponents = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("styled-components"));
var _plasmaUi = /*#__PURE__*/require("@sberdevices/plasma-ui");
var _useCart2 = /*#__PURE__*/require("./hooks/useCart");
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
var StyledContainer = /*#__PURE__*/_styledComponents["default"].div.withConfig({
componentId: "plasma-temple__sc-z78xze-0"
})(["display:flex;flex-direction:column;height:100%;"]);
var StyledRow = /*#__PURE__*/(0, _styledComponents["default"])(_plasmaUi.Row).withConfig({
componentId: "plasma-temple__sc-z78xze-1"
})(["height:100%;"]);
var StyledCol = /*#__PURE__*/(0, _styledComponents["default"])(_plasmaUi.Col).withConfig({
componentId: "plasma-temple__sc-z78xze-2"
})(["height:100%;", ""], /*#__PURE__*/(0, _plasmaUi.mediaQuery)('S', 1)( /*#__PURE__*/(0, _styledComponents.css)(["height:auto;"])));
function CartCommon(_ref) {
var emptyCart = _ref.emptyCart,
insets = _ref.insets,
defaultItemImage = _ref.defaultItemImage,
checkoutDisabled = _ref.checkoutDisabled,
cartItemComponent = _ref.cartItemComponent,
cartOrderComponent = _ref.cartOrderComponent,
checkoutButtonContent = _ref.checkoutButtonContent,
additionalInfo = _ref.additionalInfo,
className = _ref.className,
onCheckout = _ref.onCheckout,
onImageClick = _ref.onImageClick,
_ref$platformComponen = _ref.platformComponents,
CartItemList = _ref$platformComponen.CartItemList,
CartOrder = _ref$platformComponen.CartOrder;
var _useCart = (0, _useCart2.useCart)(),
state = _useCart.state,
changeItemQuantity = _useCart.changeItemQuantity,
removeItem = _useCart.removeItem;
var items = state.items,
currency = state.currency,
quantity = state.quantity,
quantityLimit = state.quantityLimit;
var handleCheckout = _react["default"].useCallback(function () {
return onCheckout(state);
}, [onCheckout, state]);
var onPlus = _react["default"].useCallback(function (item) {
changeItemQuantity(item.id, item.quantity + 1);
}, [changeItemQuantity]);
var onMinus = _react["default"].useCallback(function (item) {
if (item.quantity <= 0) {
removeItem(item.id);
} else {
changeItemQuantity(item.id, item.quantity - 1);
}
}, [changeItemQuantity, removeItem]);
var onRemove = _react["default"].useCallback(function (item) {
removeItem(item.id);
}, [removeItem]);
var CartOrderComponent = cartOrderComponent !== null && cartOrderComponent !== void 0 ? cartOrderComponent : CartOrder;
return /*#__PURE__*/_react["default"].createElement(StyledContainer, {
className: className,
bottom: insets === null || insets === void 0 ? void 0 : insets.bottom,
top: insets === null || insets === void 0 ? void 0 : insets.top
}, !items.length && emptyCart ? emptyCart : /*#__PURE__*/_react["default"].createElement(StyledRow, null, /*#__PURE__*/_react["default"].createElement(StyledCol, {
sizeXL: 6,
sizeL: 6,
sizeM: 4,
sizeS: 4,
"data-cy": "CartPage-items"
}, /*#__PURE__*/_react["default"].createElement(CartItemList, {
items: items,
currency: currency,
maxCount: Boolean(quantityLimit && quantity >= quantityLimit),
defaultItemImage: defaultItemImage,
cartItemComponent: cartItemComponent,
onImageClick: onImageClick,
onPlus: onPlus,
onMinus: onMinus,
onRemove: onRemove
})), /*#__PURE__*/_react["default"].createElement(StyledCol, {
sizeXL: 4,
offsetXL: 2,
sizeM: 2,
sizeS: 4,
"data-cy": "CartPage-order"
}, /*#__PURE__*/_react["default"].createElement(CartOrderComponent, {
order: state,
disabled: !items.length || checkoutDisabled,
checkoutButtonContent: checkoutButtonContent,
additionalInfo: additionalInfo,
insets: insets,
onCheckout: handleCheckout
}))));
}
//# sourceMappingURL=Cart@common.js.map
;