UNPKG

@open-tender/ui

Version:

A component library for use with the Open Tender web app

31 lines (30 loc) 2.98 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const utils_1 = require("@open-tender/utils"); const iconoir_react_1 = require("iconoir-react"); const react_1 = tslib_1.__importDefault(require("react")); const utils_2 = require("../utils"); const Button_1 = tslib_1.__importDefault(require("./Button")); const Text_1 = tslib_1.__importDefault(require("./Text")); const View_1 = tslib_1.__importDefault(require("./View")); const UpsellItem = ({ config, handlers, item, isLast, apiUrl, displayCals = false }) => { const { name, imageUrl, totalPrice, totalCals } = item; const desc = (0, utils_1.makeModifierNames)(item); const imageProps = (0, utils_2.makeImageProps)(config, 'upsellItem__image', imageUrl, apiUrl); return (react_1.default.createElement(View_1.default, Object.assign({}, (0, utils_2.makeProps)(config, isLast ? 'upsellItem' : 'upsellItem')), react_1.default.createElement(Button_1.default, Object.assign({}, (0, utils_2.makeProps)(config, 'upsellItem__button'), { onClick: handlers.add }), react_1.default.createElement(View_1.default, Object.assign({}, (0, utils_2.makeProps)(config, 'upsellItem__container')), react_1.default.createElement(View_1.default, Object.assign({}, imageProps)), react_1.default.createElement(View_1.default, Object.assign({}, (0, utils_2.makeProps)(config, 'upsellItem__info')), react_1.default.createElement(View_1.default, Object.assign({}, (0, utils_2.makeProps)(config, 'upsellItem__header')), react_1.default.createElement(Text_1.default, Object.assign({}, (0, utils_2.makeProps)(config, 'upsellItem__title'), { text: name })), react_1.default.createElement(View_1.default, Object.assign({}, (0, utils_2.makeProps)(config, 'upsellItem__details')), totalPrice !== null && (react_1.default.createElement(Text_1.default, Object.assign({}, (0, utils_2.makeProps)(config, 'upsellItem__price'), { text: (0, utils_1.formatDollars)(totalPrice.toString()) }))), displayCals && totalCals !== null && (react_1.default.createElement(Text_1.default, Object.assign({}, (0, utils_2.makeProps)(config, 'upsellItem__calories'), { text: `${(0, utils_1.formatQuantity)(totalCals.toString())} Cal` }))))), react_1.default.createElement(View_1.default, Object.assign({}, (0, utils_2.makeProps)(config, 'upsellItem__content')), react_1.default.createElement(Text_1.default, Object.assign({}, (0, utils_2.makeProps)(config, 'upsellItem__description'), { text: desc })))), react_1.default.createElement(View_1.default, Object.assign({}, (0, utils_2.makeProps)(config, 'upsellItem__add')), react_1.default.createElement(iconoir_react_1.Plus, { width: 28, height: 28, strokeWidth: 2 })))))); }; exports.default = UpsellItem;