{"version":3,"sources":["webpack:///../jarvis/app/assets/javascripts/site/modals/ProductAddedToCartModal/v2/cssScope.ts","webpack:///../jarvis/app/assets/javascripts/site/modals/ProductAddedToCartModal/v2/App.tsx","webpack:///../jarvis/app/assets/javascripts/site/modals/ProductAddedToCartModal/v3/cssScope.ts","webpack:///../jarvis/app/assets/javascripts/site/modals/ProductAddedToCartModal/v3/App.tsx","webpack:///../jarvis/app/assets/javascripts/site/VControllers/CartActions/App.tsx","webpack:///../jarvis/app/assets/javascripts/site/VControllers/components/Checkout/commits/productsSet.ts","webpack:///../jarvis/app/assets/javascripts/site/VControllers/components/QuantityActions/index.tsx","webpack:///../jarvis/app/assets/javascripts/site/VControllers/components/Checkout/operations/productSet.ts","webpack:///../jarvis/app/assets/javascripts/site/VControllers/components/Checkout/api/productSet.ts"],"names":["createScope","App","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","apply","arguments","state","isActive","product","handleClose","setState","setTimeout","props","onCancel","handleCheckoutContextUpdate","items","find","_ref","productId","Number","key","value","this","checkoutContext","subscribe","_a","_this$props","onApply","onChangeQuantity","onRemove","_this$state","h","className","htmlClassNames","onClick","href","url","target","style","backgroundImage","concat","photoUrl","isVisible","__discount","hasDiscount","formatPrice","price","oldPrice","discount","title","quantity","QuantityActions","loading","changing","variant","unit","type","get","_this2","getContext","store","getState","_ref2","Component","_b","totalPrice","totalPriceInfo","supplierDiscount","totalPriceWithoutDelivery","city","delivery","cityName","toRub","Intl","NumberFormat","currency","minimumFractionDigits","deliveryDate","deliveryDateEstimate","maxDate","deliveryDatesRange","format","length","firstDate","Date","secondDate","day1","getDate","day2","month","getMonth","formatDates","isModalOpen","refreshUuid","hasAssembly","modalRoot","document","getElementById","componentDidMount","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","handleInitCheckoutContext","loadComponentsStyles","handleSelectVisibility","stop","componentWillUnmount","checkoutContextUuid","unsubscribe","_callee2","_yield$import","_context2","sent","init","toggleAssemblyActive","handleBuyButtonClick","_ref3","_callee3","e","paymentMethod","fromTarget","_context3","handleAddToCart","_x","_x2","_ref5","_callee4","_ref4","selectQuantityContainer","select","checkoutContextStore","withoutDeliveryResult","_context4","renderProductAddedToCartModalV2","querySelector","Env","version","maxQuantity","window","dataLayer","push","operate","OPERATION_ADD_ITEM","_x3","handleRemove","_callee5","_context5","OPERATION_REMOVE_ITEM","handleChangeQuantity","_ref7","OPERATION_CHANGE_ITEM_QUANTITY","_state","uuidV4","classList","toggle","globalState","assemblyItems","item","active","handleCloseProductAddedToCartModalV2","handleUpdateParentClass","parentEl","add","remove","handlePodeliClick","handlePlaitClick","handleAssemblyClick","_ref8","_callee6","_context6","OPERATION_CHANGE_ASSEMBLY","_x4","handleAddProductSet","_ref9","_callee7","productsSet","productsSetId","productsSetItemIds","onProductsSetAdded","_context7","abrupt","OPERATION_ADD_PRODUCT_SET","then","_x5","buildCustomAppearance","customAppearance","buttonText","disabled","isProductsSetAdded","AjaxLoader","size","show","color","_this$state2","_this$props2","_this$props2$buttonTe","_this$props2$quantity","quantityVariant","height","isFlat","Portal","into","abTesting","newAddToCartPopupTest","ProductAddedToCartModalV3","showProductCart","ProductAddedToCartModalV2","_c","_ref10","COMMIT_BULK_ADD_PRODUCTS_SET_ITEMS","newItems","data","_objectSpread","COMMIT_REFRESH_CHECKOUT","_toConsumableArray","COMMIT_BULK_REMOVE_PRODUCTS_SET_ITEMS","filter","handleIncreaseQuantity","stopPropagation","preventDefault","handleDecreaseQuantity","_this$props3","children","_this$props3$unit","class","_defineProperty","isDecreaseDisabled","isIncreaseDisabled","_this$props4","_this$props5","params","commit","COMMIT_CHANGE_LOADING","Http","post","payload","OPERATION_REMOVE_PRODUCTS_SET","selectedProducts","map","id","bulkRemoveItem"],"mappings":"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","file":"chunk.95.e190eeafca6e3aa5233b.46bdfd30.js","sourcesContent":["import { createScope } from 'core/services/VDOM';\nexport default createScope('ProductAddedToCartModalV2');\n","import { Component } from 'preact';\nimport htmlClassNames from 'core/utils/htmlClassNames';\nimport { QuantityActions } from 'site/VControllers/components/QuantityActions';\nimport { formatPrice } from 'site/VControllers/components/Checkout/services/humanize';\nimport h from './cssScope';\nexport class App extends Component {\n constructor() {\n super(...arguments);\n this.state = {\n isActive: true,\n product: this.product\n };\n this.handleClose = () => {\n this.setState({ isActive: false });\n setTimeout(this.props.onCancel, 300); // wait for transition end\n };\n this.handleCheckoutContextUpdate = (state) => {\n const product = state\n .items\n .find(({ productId }) => productId === Number(this.props.productId));\n if (!product)\n return;\n this.setState({ product });\n };\n }\n get product() {\n return this.props.checkoutContext\n .getContext().store\n .getState().items\n .find(({ productId }) => productId === Number(this.props.productId));\n }\n componentDidMount() {\n this.props.checkoutContext.subscribe(this.handleCheckoutContextUpdate);\n }\n render() {\n var _a;\n const { onApply, onChangeQuantity, onRemove } = this.props;\n const { product, isActive } = this.state;\n return (h(\"article\", { className: htmlClassNames('ScopeRoot', { '__isActive': isActive }) },\n h(\"div\", { className: 'sb-Overlay', onClick: this.handleClose }),\n product && (h(\"div\", { className: 'sb-Product' },\n h(\"a\", { href: product.url, target: '_blank', className: 'sb-Product_photo', style: { backgroundImage: `url(${product.photoUrl})` } }),\n h(\"div\", { className: 'sb-Product_content' },\n h(\"p\", { className: 'sb-Product_row' },\n h(\"div\", { className: 'sb-Price' },\n product.isVisible && (h(\"span\", { className: htmlClassNames(['sb-Price_elem', '__current', { __discount: product.hasDiscount }]) }, formatPrice(product.price))),\n product.isVisible && product.hasDiscount && (h(\"span\", { className: 'sb-Price_elem __old' }, formatPrice(product.oldPrice))),\n product.isVisible && product.hasDiscount && (h(\"span\", { className: 'sb-Price_elem __percent' },\n product.discount,\n \"%\")),\n !product.isVisible && (h(\"span\", { className: 'sb-Price_placeholder' }, \"\\u041F\\u0440\\u043E\\u0434\\u0430\\u043D\\u043E\")))),\n h(\"p\", { className: 'sb-Product_row' },\n h(\"a\", { href: product.url, target: '_blank' },\n h(\"h1\", { className: 'sb-Product_title' }, product.title))),\n h(\"p\", { className: 'sb-Product_row __total' },\n h(\"span\", { className: 'sb-Product_totalPrice' }, formatPrice(product.quantity * product.price))),\n h(\"p\", { className: 'sb-Product_row __actions' },\n h(QuantityActions, { loading: (_a = product.changing) !== null && _a !== void 0 ? _a : false, productId: product.productId, quantity: product.quantity, onChangeQuantity: onChangeQuantity, onRemove: onRemove, className: 'b-ProductAction_quantityActions __v2', variant: 'teaser', unit: product.unit }))))),\n h(\"div\", { className: 'sb-Actions' },\n h(\"button\", { className: 'sb-Button __black', type: 'button', onClick: () => onApply() }, \"\\u041F\\u0435\\u0440\\u0435\\u0439\\u0442\\u0438 \\u0432 \\u043A\\u043E\\u0440\\u0437\\u0438\\u043D\\u0443\"),\n h(\"button\", { className: 'sb-Button __white', type: 'button', onClick: this.handleClose }, \"\\u041F\\u0440\\u043E\\u0434\\u043E\\u043B\\u0436\\u0438\\u0442\\u044C \\u043F\\u043E\\u043A\\u0443\\u043F\\u043A\\u0438\"))));\n }\n}\n","import { createScope } from 'core/services/VDOM';\nexport default createScope('ProductAddedToCartModalV3');\n","import { Component } from 'preact';\nimport htmlClassNames from 'core/utils/htmlClassNames';\nimport h from './cssScope';\nexport class App extends Component {\n constructor() {\n super(...arguments);\n this.state = {\n isActive: true,\n product: this.product\n };\n this.handleClose = () => {\n this.setState({ isActive: false });\n setTimeout(this.props.onCancel, 300); // wait for transition end\n };\n this.handleCheckoutContextUpdate = (state) => {\n const product = state\n .items\n .find(({ productId }) => productId === Number(this.props.productId));\n if (!product)\n return;\n this.setState({ product });\n };\n }\n get product() {\n return this.props.checkoutContext\n .getContext().store\n .getState().items\n .find(({ productId }) => productId === Number(this.props.productId));\n }\n componentDidMount() {\n this.props.checkoutContext.subscribe(this.handleCheckoutContextUpdate);\n }\n render() {\n var _a, _b;\n const { onApply } = this.props;\n const { product, isActive } = this.state;\n const totalPrice = this.props.checkoutContext.getContext().store.getState().totalPriceInfo.totalPrice;\n const discount = this.props.checkoutContext.getContext().store.getState().totalPriceInfo.supplierDiscount;\n const price = this.props.checkoutContext.getContext().store.getState().totalPriceInfo.totalPriceWithoutDelivery;\n const city = this.props.checkoutContext.getContext().store.getState().delivery.cityName;\n const toRub = new Intl.NumberFormat('ru-RU', {\n style: 'currency',\n currency: 'RUB',\n minimumFractionDigits: 0\n });\n const deliveryDate = (_b = (_a = this.props.checkoutContext.getContext().store.getState().totalPriceInfo.deliveryDateEstimate) === null || _a === void 0 ? void 0 : _a.maxDate) === null || _b === void 0 ? void 0 : _b.deliveryDatesRange;\n const formatDates = () => {\n const months = [\n 'января', 'февраля', 'марта', 'апреля', 'мая', 'июня',\n 'июля', 'августа', 'сентября', 'октября', 'ноября', 'декабря'\n ];\n if (deliveryDate) {\n const firstDate = new Date(deliveryDate[0]);\n const secondDate = new Date(deliveryDate[1]);\n const day1 = firstDate.getDate();\n const day2 = secondDate.getDate();\n const month = months[firstDate.getMonth()];\n return `${day1} – ${day2} ${month}`;\n }\n };\n return (h(\"article\", { className: htmlClassNames('ScopeRoot', { '__isActive': isActive }) },\n h(\"div\", { className: 'sb-Overlay', onClick: this.handleClose }),\n h(\"h1\", { className: 'sb-Title' }, \"\\u0414\\u043E\\u0431\\u0430\\u0432\\u043B\\u0435\\u043D\\u043E\"),\n product && (h(\"div\", { className: 'sb-Product' },\n h(\"a\", { href: product.url, target: '_blank', className: 'sb-Product_photo', style: { backgroundImage: `url(${product.photoUrl})` } }),\n h(\"div\", { className: 'sb-Product_content' },\n h(\"p\", { className: 'sb-Product_row' },\n h(\"a\", { href: product.url, target: '_blank' },\n h(\"h1\", { className: 'sb-Product_title' }, product.title))),\n h(\"p\", { className: 'sb-Product_row __line' },\n h(\"div\", { className: 'sb-Price' },\n h(\"div\", { className: 'sb-Price_wrapper' },\n product.isVisible && (h(\"span\", { className: htmlClassNames(['sb-Price_elem', '__current', { __discount: product.hasDiscount }]) }, toRub.format(product.price))),\n !product.isVisible && (h(\"span\", { className: 'sb-Price_placeholder' }, \"\\u041F\\u0440\\u043E\\u0434\\u0430\\u043D\\u043E\"))),\n h(\"span\", { className: 'sb-Product_title' },\n product.quantity,\n \" \\u0448\\u0442.\")))))),\n h(\"div\", { className: 'sb-Info' },\n h(\"h2\", { className: 'sb-Info __title' }, \" \\u0412 \\u0432\\u0430\\u0448\\u0435\\u0439 \\u043A\\u043E\\u0440\\u0437\\u0438\\u043D\\u0435\"),\n h(\"p\", { className: 'sb-Product_row __line' },\n h(\"span\", { className: 'sb-Product_subtitle' },\n this.props.checkoutContext.getContext().store.getState().items.length,\n \" \\u0442\\u043E\\u0432\\u0430\\u0440\\u0430\"),\n h(\"span\", { className: 'sb-Product_line' }),\n h(\"span\", { className: 'sb-Product_subtitle' }, toRub.format(price))),\n h(\"p\", { className: 'sb-Product_row __line' },\n h(\"span\", { className: 'sb-Product__subtitle' }, \"\\u0421\\u043A\\u0438\\u0434\\u043A\\u0430\"),\n h(\"span\", { className: 'sb-Product_line' }),\n h(\"span\", { className: 'sb-Product_subtitle __discount' }, toRub.format(discount))),\n h(\"p\", { className: 'sb-Product_row __delivery' }, `Доставка: ${deliveryDate ? formatDates() : 'уточняется менеджером'}`),\n h(\"p\", { className: 'sb-Product_row __total' },\n h(\"span\", { className: 'sb-Product_city' }, city),\n h(\"span\", { className: 'sb-Product_line' }),\n h(\"span\", { className: 'sb-Product_subtitle' }, \"2000 \\u0440\")),\n h(\"p\", { className: 'sb-Product_row __hint' }, \"\\u0424\\u0438\\u043D\\u0430\\u043B\\u044C\\u043D\\u0430\\u044F \\u0446\\u0435\\u043D\\u0430 \\u0434\\u043E\\u0441\\u0442\\u0430\\u0432\\u043A\\u0438 \\u0443\\u0442\\u043E\\u0447\\u043D\\u044F\\u0435\\u0442\\u0441\\u044F \\u043C\\u0435\\u043D\\u0435\\u0434\\u0436\\u0435\\u0440\\u043E\\u043C\"),\n h(\"span\", { className: 'sb-Product_divider' }),\n h(\"p\", { className: 'sb-Product_row __line' },\n h(\"span\", { className: 'sb-Product_totalPrice' }, \"\\u0418\\u0442\\u043E\\u0433\\u043E:\"),\n h(\"span\", { className: 'sb-Product_line' }),\n h(\"span\", { className: 'sb-Product_totalPrice' }, toRub.format(totalPrice)))),\n h(\"div\", { className: 'sb-Actions' },\n h(\"button\", { className: 'sb-Button __black', type: 'button', onClick: () => onApply() }, \"\\u041F\\u0435\\u0440\\u0435\\u0439\\u0442\\u0438 \\u0432 \\u043A\\u043E\\u0440\\u0437\\u0438\\u043D\\u0443\"),\n h(\"button\", { className: 'sb-Button __white', type: 'button', onClick: this.handleClose }, \"\\u041F\\u0440\\u043E\\u0434\\u043E\\u043B\\u0436\\u0438\\u0442\\u044C \\u043F\\u043E\\u043A\\u0443\\u043F\\u043A\\u0438\"))));\n }\n}\n","import { loadComponentsStyles } from 'core/utils/asyncLoadAssets';\nimport htmlClassNames from 'core/utils/htmlClassNames';\nimport { uuidV4 } from 'core/utils/uuid';\nimport { Component, h } from 'preact';\nimport Portal from 'preact-portal';\nimport { showProductCart } from 'site/VControllers/SinglePageCheckout/v2/FrontInit';\nimport { AjaxLoader } from 'site/VControllers/components/AjaxLoader';\nimport { OPERATION_ADD_ITEM, OPERATION_CHANGE_ITEM_QUANTITY, OPERATION_REMOVE_ITEM, OPERATION_CHANGE_ASSEMBLY } from 'site/VControllers/components/Checkout/operations/cartItems';\nimport { OPERATION_ADD_PRODUCT_SET } from 'site/VControllers/components/Checkout/operations/productSet';\nimport { QuantityActions } from 'site/VControllers/components/QuantityActions';\nimport { App as ProductAddedToCartModalV2 } from 'site/modals/ProductAddedToCartModal/v2/App';\nimport { App as ProductAddedToCartModalV3 } from 'site/modals/ProductAddedToCartModal/v3/App';\nexport class App extends Component {\n constructor() {\n super(...arguments);\n this.state = {\n loading: true,\n isModalOpen: false,\n refreshUuid: '',\n hasAssembly: false\n };\n this.modalRoot = document.getElementById('modal-root');\n this.componentDidMount = async () => {\n await this.handleInitCheckoutContext();\n await loadComponentsStyles('ProductAddedToCartModalV2');\n this.handleSelectVisibility();\n };\n this.componentWillUnmount = () => {\n if (this.checkoutContextUuid)\n this.checkoutContext.unsubscribe(this.checkoutContextUuid);\n };\n this.handleInitCheckoutContext = async () => {\n const { default: checkoutContext } = await import(\n /* webpackChunkName: 'common__c-checkoutContext' */\n 'site/VControllers/components/Checkout/context');\n this.checkoutContext = checkoutContext;\n await this.checkoutContext.init();\n this.checkoutContextUuid = await this.checkoutContext.subscribe(this.handleCheckoutContextUpdate);\n this.toggleAssemblyActive();\n this.setState({ loading: false });\n };\n this.handleBuyButtonClick = async (e, paymentMethod) => {\n const fromTarget = e.target;\n if (this.checkoutContext)\n await this.handleAddToCart({ fromTarget, paymentMethod });\n };\n this.handleAddToCart = async ({ fromTarget, paymentMethod }) => {\n this.setState({ loading: true });\n this.renderProductAddedToCartModalV2();\n let quantity = 1;\n const selectQuantityContainer = document.querySelector(`[data-el=\"Product/${this.props.productId}/selectQuantity\"]`);\n if (selectQuantityContainer) {\n const select = selectQuantityContainer.querySelector('select');\n if (select)\n quantity = Number(select.value);\n }\n const productId = this.props.productId;\n const checkoutContextStore = this.checkoutContext.getContext().store;\n const withoutDeliveryResult = Env.version === 'mobile';\n if (this.props.maxQuantity) {\n const dataLayer = window.dataLayer || [];\n dataLayer.push({\n 'event': 'limited_stock_product_add_to_cart',\n 'product': {\n 'id': productId,\n 'quantity': quantity,\n 'stock_count': this.props.maxQuantity\n }\n });\n }\n await checkoutContextStore\n .operate(OPERATION_ADD_ITEM, { productId, quantity, fromTarget, paymentMethod, withoutDeliveryResult })\n .finally(() => {\n this.setState({ loading: false });\n });\n };\n this.handleRemove = async () => {\n this.setState({ loading: true });\n const store = this.checkoutContext.getContext().store;\n const productId = this.props.productId;\n const withoutDeliveryResult = true;\n await store.operate(OPERATION_REMOVE_ITEM, { productId, withoutDeliveryResult });\n this.setState({ loading: false });\n };\n this.handleChangeQuantity = ({ productId, quantity }) => {\n const withoutDeliveryResult = true;\n const checkoutContextStore = this.checkoutContext.getContext().store;\n checkoutContextStore.operate(OPERATION_CHANGE_ITEM_QUANTITY, { productId, quantity, withoutDeliveryResult });\n };\n this.handleCheckoutContextUpdate = (_state) => {\n this.setState({ refreshUuid: uuidV4() });\n this.handleSelectVisibility();\n this.toggleAssemblyActive();\n };\n this.handleSelectVisibility = () => {\n var _a, _b;\n (_a = document\n .querySelector(`[data-el=\"Product/${this.props.productId}/selectQuantity\"]`)) === null || _a === void 0 ? void 0 : _a.classList.toggle('__isHidden', !!this.product);\n (_b = document\n .querySelector('.__mobile-heart')) === null || _b === void 0 ? void 0 : _b.classList.toggle('__isHidden', !!this.product);\n };\n this.toggleAssemblyActive = () => {\n var _a, _b;\n const hasAssembly = ((_b = (_a = this.globalState) === null || _a === void 0 ? void 0 : _a.assemblyItems.find((item) => item.productId === this.props.productId)) === null || _b === void 0 ? void 0 : _b.active) || false;\n this.setState({ hasAssembly });\n };\n this.handleCloseProductAddedToCartModalV2 = () => {\n this.setState({ isModalOpen: false });\n };\n this.handleUpdateParentClass = (item) => {\n const parentEl = this.props.parentEl;\n item ? parentEl === null || parentEl === void 0 ? void 0 : parentEl.classList.add('__addedToCard') : parentEl === null || parentEl === void 0 ? void 0 : parentEl.classList.remove('__addedToCard');\n };\n this.handlePodeliClick = (e) => {\n const product = this.product;\n product\n ? this.handleChangeQuantity({ quantity: product.quantity + 1, productId: this.props.productId })\n : this.handleBuyButtonClick(e, 'installment_podeli');\n };\n this.handlePlaitClick = (e) => {\n const product = this.product;\n product\n ? this.handleChangeQuantity({ quantity: product.quantity + 1, productId: this.props.productId })\n : this.handleBuyButtonClick(e, 'installment_plait');\n };\n this.handleAssemblyClick = async (e) => {\n this.setState({ loading: true });\n this.renderProductAddedToCartModalV2();\n const fromTarget = e.target;\n const productId = this.props.productId;\n const checkoutContextStore = this.checkoutContext.getContext().store;\n const withoutDeliveryResult = Env.version === 'mobile';\n if (!this.product)\n await checkoutContextStore.operate(OPERATION_ADD_ITEM, { productId, quantity: 1, fromTarget, withoutDeliveryResult });\n await checkoutContextStore.operate(OPERATION_CHANGE_ASSEMBLY, { productId, active: true });\n this.setState({ loading: false });\n };\n this.handleAddProductSet = async (e) => {\n const { productsSet } = this.props;\n if (!productsSet)\n return;\n const fromTarget = e.target;\n const { productsSetId, productsSetItemIds, onProductsSetAdded } = productsSet;\n this.setState({ loading: true });\n const checkoutContextStore = this.checkoutContext.getContext().store;\n await checkoutContextStore\n .operate(OPERATION_ADD_PRODUCT_SET, { productsSetId, productsSetItemIds, fromTarget })\n .then(onProductsSetAdded)\n .finally(() => {\n this.setState({ loading: false });\n });\n };\n this.buildCustomAppearance = (customAppearance) => {\n const { loading, hasAssembly } = this.state;\n const { buttonText, productsSet } = this.props;\n switch (customAppearance) {\n case 'podeli':\n return (h(\"button\", { className: 'b-ProductAction __podeli', \"data-gtm-product-add-to-cart\": true, title: buttonText, type: 'button', onClick: this.handlePodeliClick, disabled: loading }, buttonText));\n case 'plait':\n return (h(\"button\", { className: 'b-ProductAction __plait', \"data-gtm-product-add-to-cart\": true, title: buttonText, type: 'button', onClick: this.handlePlaitClick, disabled: loading }));\n case 'productsSet':\n return (h(\"button\", { className: htmlClassNames('b-ProductAction __addToCard __v3', {\n '__withText': !!buttonText && buttonText !== 'flat',\n '__loading': loading,\n '__productsSetAdded': productsSet === null || productsSet === void 0 ? void 0 : productsSet.isProductsSetAdded\n }), \"data-gtm-products-set-add-to-cart\": true, title: '\\u041A\\u0443\\u043F\\u0438\\u0442\\u044C', type: 'button', onClick: this.handleAddProductSet, disabled: (productsSet === null || productsSet === void 0 ? void 0 : productsSet.isProductsSetAdded) || loading }, loading ? h(AjaxLoader, { size: 's', show: true }) : (productsSet === null || productsSet === void 0 ? void 0 : productsSet.isProductsSetAdded) ? 'Комплект добавлен в корзину' : buttonText));\n case 'assembly':\n return (h(\"button\", { className: 's-ProductCard_b-Assembly_button', \"data-gtm-product-add-to-cart\": true, title: buttonText, type: 'button', onClick: this.handleAssemblyClick, disabled: loading || hasAssembly }, loading ? h(AjaxLoader, { size: Env.version === 'mobile' ? 'xs' : 's', color: 'dark', show: true }) : buttonText));\n default:\n return null;\n }\n };\n }\n componentWillUpdate() {\n this.handleUpdateParentClass(this.product);\n }\n renderProductAddedToCartModalV2() {\n if (Env.version === 'desktop')\n return;\n this.setState({ isModalOpen: true });\n }\n get globalState() {\n var _a, _b, _c;\n return (_c = (_b = (_a = this.checkoutContext) === null || _a === void 0 ? void 0 : _a.getContext()) === null || _b === void 0 ? void 0 : _b.store) === null || _c === void 0 ? void 0 : _c.getState();\n }\n get product() {\n var _a;\n return (_a = this.globalState) === null || _a === void 0 ? void 0 : _a.items.find(({ productId, productsSetId }) => productId === this.props.productId && !productsSetId);\n }\n render() {\n var _a, _b;\n const { loading, isModalOpen } = this.state;\n const { buttonText = '', quantityVariant = 'teaser', productId, customAppearance, maxQuantity, height } = this.props;\n const product = this.product;\n if (customAppearance)\n return this.buildCustomAppearance(customAppearance);\n const isFlat = !!document.querySelector('.s-flat-ProductPreview_b-flat-Price');\n // const isShowFlat = !!document.querySelector('.s-ProductCard_b-flat-Metrics')\n return (h(\"div\", null,\n !product ? (h(\"button\", { className: htmlClassNames('b-ProductAction __addToCard __v3', { '__withText': !!buttonText, '__loading': loading }), \"data-gtm-product-add-to-cart\": true, title: '\\u041A\\u0443\\u043F\\u0438\\u0442\\u044C', type: 'button', onClick: this.handleBuyButtonClick, disabled: loading, style: { height: height && height } }, loading ? h(AjaxLoader, { size: 's', show: true }) : buttonText)) : (h(QuantityActions, { loading: loading || ((_a = product.changing) !== null && _a !== void 0 ? _a : false), productId: productId, quantity: product.quantity, onChangeQuantity: this.handleChangeQuantity, onRemove: this.handleRemove, className: 'b-ProductAction_quantityActions __v2', variant: quantityVariant, maxQuantity: maxQuantity, isFlat: isFlat, unit: '\\u0448\\u0442' })),\n h(Portal, { into: this.modalRoot }, isModalOpen && !!product && (((_b = Env.abTesting) === null || _b === void 0 ? void 0 : _b.newAddToCartPopupTest) ? (h(ProductAddedToCartModalV3, { checkoutContext: this.checkoutContext, productId: product.productId, onCancel: this.handleCloseProductAddedToCartModalV2, onApply: showProductCart })) : (h(ProductAddedToCartModalV2, { checkoutContext: this.checkoutContext, productId: product.productId, onCancel: this.handleCloseProductAddedToCartModalV2, onApply: showProductCart, onChangeQuantity: this.handleChangeQuantity, onRemove: this.handleRemove }))))));\n }\n}\n","import { COMMIT_REFRESH_CHECKOUT } from './refreshCheckout';\nexport function COMMIT_BULK_ADD_PRODUCTS_SET_ITEMS(state, newItems, data) {\n return {\n ...COMMIT_REFRESH_CHECKOUT(state, data),\n items: [\n ...state.items,\n ...newItems\n ],\n loading: false\n };\n}\nexport function COMMIT_BULK_REMOVE_PRODUCTS_SET_ITEMS(state, productsSetId, data) {\n return { ...COMMIT_REFRESH_CHECKOUT(state, data),\n items: state.items.filter(item => item.productsSetId !== productsSetId),\n loading: false\n };\n}\n","import { h, Component } from 'preact';\nimport htmlClassNames from 'core/utils/htmlClassNames';\nexport class QuantityActions extends Component {\n constructor() {\n super(...arguments);\n this.handleIncreaseQuantity = (e) => {\n e.stopPropagation();\n e.preventDefault();\n const { quantity, productId, onChangeQuantity } = this.props;\n onChangeQuantity({ quantity: quantity + 1, productId });\n };\n this.handleDecreaseQuantity = (e) => {\n e.stopPropagation();\n e.preventDefault();\n const { quantity, productId, onChangeQuantity } = this.props;\n onChangeQuantity({ quantity: quantity - 1, productId });\n };\n }\n get isDecreaseDisabled() {\n const { quantity, loading } = this.props;\n return loading || quantity <= 1;\n }\n get isIncreaseDisabled() {\n const { quantity, loading, maxQuantity } = this.props;\n return loading || quantity === 0 || maxQuantity === quantity;\n }\n render() {\n const { children, className, quantity, variant, unit = '', size, onRemove, loading, isFlat } = this.props;\n return (h(\"div\", { class: isFlat ? htmlClassNames('b-flat-QuantityActions', className, { [`__${variant}`]: !!variant }, size && `__${size}`) : htmlClassNames('b-QuantityActions', className, { [`__${variant}`]: !!variant }, size && `__${size}`) },\n children,\n h(\"div\", { class: isFlat ? 'b-flat-QuantityActions_actions' : 'b-QuantityActions_actions' },\n quantity <= 1 && onRemove ? (h(\"button\", { class: isFlat ? 'b-flat-QuantityActions_action __delete' : 'b-QuantityActions_action __delete', onClick: onRemove, disabled: loading })) : (h(\"button\", { class: isFlat ? 'b-flat-QuantityActions_action __minus' : 'b-QuantityActions_action __minus', onClick: this.handleDecreaseQuantity, disabled: this.isDecreaseDisabled })),\n h(\"span\", { class: isFlat ? 'b-flat-QuantityActions_actionCount' : 'b-QuantityActions_actionCount' },\n quantity,\n \" \",\n unit),\n h(\"button\", { class: isFlat ? 'b-flat-QuantityActions_action __plus' : 'b-QuantityActions_action __plus', onClick: this.handleIncreaseQuantity, disabled: this.isIncreaseDisabled }))));\n }\n}\n","import { bulkRemoveItem } from '../api/cartItems';\nimport { addProductsSet } from '../api/productSet';\nimport { COMMIT_BULK_ADD_PRODUCTS_SET_ITEMS, COMMIT_BULK_REMOVE_PRODUCTS_SET_ITEMS } from '../commits/productsSet';\nimport { COMMIT_CHANGE_LOADING } from '../commits/changeLoading';\nexport function OPERATION_ADD_PRODUCT_SET(store) {\n return function ({ productsSetId, productsSetItemIds, fromTarget }) {\n store.commit(COMMIT_CHANGE_LOADING, true);\n return addProductsSet({ productsSetId, productsSetItemIds })\n .then(({ data }) => {\n const payload = [data.items, data, fromTarget];\n store.commit(COMMIT_BULK_ADD_PRODUCTS_SET_ITEMS, ...payload);\n return data;\n })\n .catch(() => store.commit(COMMIT_CHANGE_LOADING, false));\n };\n}\nexport function OPERATION_REMOVE_PRODUCTS_SET(store) {\n return function (productsSetId) {\n const { items } = store.getState();\n const selectedProducts = items\n .filter(item => productsSetId === item.productsSetId)\n .map(item => ({ id: item.productId, productsSetId: item.productsSetId }));\n store.commit(COMMIT_CHANGE_LOADING, true);\n bulkRemoveItem(selectedProducts)\n .then(({ data }) => {\n store.commit(COMMIT_BULK_REMOVE_PRODUCTS_SET_ITEMS, productsSetId, data);\n })\n .catch(() => store.commit(COMMIT_CHANGE_LOADING, false));\n };\n}\n","import Http from 'core/services/HttpClient';\nexport function addProductsSet(params) {\n return Http.post('/cart/add_products_set', {\n productsSet: { ...params }\n });\n}\n"],"sourceRoot":""}