{"version":3,"file":"static/chunks/1018-c191e372c85d4180.js","mappings":"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","sources":["webpack://_N_E/./src/components/Card/styled.js","webpack://_N_E/./src/components/Card/index.js","webpack://_N_E/./src/components/ProductCard/blocks/CategoryBlock.js","webpack://_N_E/./src/components/ProductCard/blocks/HeaderBlock.js","webpack://_N_E/./src/components/ProductCard/blocks/ImageBlock.js","webpack://_N_E/./src/components/ProductCard/analytics/dataLayerPush.ts","webpack://_N_E/./src/components/ProductCard/constants/index.ts","webpack://_N_E/./src/components/ProductCard/helpers/getShopCategoryByRoute.ts","webpack://_N_E/./src/components/ProductCard/blocks/PurchaseBlock.js","webpack://_N_E/./src/components/ProductCard/blocks/TitleBlock.js","webpack://_N_E/./src/components/ProductCard/styled.js","webpack://_N_E/./src/helpers/hooks/useRouterChange.tsx","webpack://_N_E/../../packages/ui-react/src/components/select/titleSelect/index.js","webpack://_N_E/../../packages/ui-react/src/deprecated/icon/index.js","webpack://_N_E/./static/images/icons/detail.svg","webpack://_N_E/./static/images/icons/icon-arrow-card.svg","webpack://_N_E/./static/images/icons/icon-arrow-dark-theme.svg"],"sourcesContent":["import { FlexBoxCol } from '@r1-frontend/ui-react/components/layouts/flexBoxGrid';\nimport { BorderRadius } from '@r1-frontend/ui-react/tokens/borderRadius';\nimport { COLORS } from '@r1-frontend/ui-react/tokens/colors';\nimport { FONTS } from '@r1-frontend/ui-react/tokens/fonts';\nimport styled, { css } from 'styled-components';\n\nexport const Card = styled.div`\n position: relative;\n display: flex;\n flex-direction: column;\n justify-content: ${props => props.sameHeight ? 'space-between' : 'normal'};\n padding: 8px 8px 16px 8px;\n border-radius: ${BorderRadius.OuterBlockRadius};\n min-height: 472px;\n margin-bottom: 16px;\n background: ${p => p.bgColorCard || COLORS.BgSurface};\n transition: 0.3s;\n margin: 0 auto ${props => props.oneRow ? '0' : '16px'};\n min-height: ${props => props.oneRow ? '528px' : 'auto'};\n\n @media (max-width: 48em) {\n max-width: 100%;\n margin: 0 auto ${props => props.oneRow ? '0' : '16px'};\n }\n\n ${p => p.isSmallCards && css`\n padding: 4px;\n border-radius: ${BorderRadius.InnerBlockRadius};\n `}\n\n :hover {\n box-shadow: 0 6px 12px rgba(0, 0, 0, 0.07);\n }\n`;\n\nexport const HeaderBlock = styled.div`\n position: absolute;\n height: 40px;\n width: 100%;\n top: 12px;\n left: 12px;\n padding: 8px;\n pointer-events: none;\n z-index: 1;\n`;\n\nexport const DescriptionBlock = styled.div`\n display: flex;\n flex-direction: row;\n ${FONTS.XS};\n color: ${({ theme }) => theme.isDarkTheme ? COLORS.GRAY_LIGHT : COLORS.GRAY_DARK};\n white-space: initial;\n margin: 0 8px auto 16px;\n\n > div {\n height: 64px;\n overflow: hidden;\n width: 100%;\n align-content: flex-start;\n\n span {\n position: relative;\n display: inline-block;\n align-self: flex-end;\n background-color: ${({ theme }) => theme.isDarkTheme ? 'transparent' : COLORS.BgSurface};\n margin-bottom: -4px;\n\n &:after {\n position: absolute;\n content: \"\";\n bottom: -2px;\n left: 0;\n height: 2px;\n width: 100%;\n background-color: ${({ theme }) => theme.isDarkTheme ? 'transparent' : COLORS.BgSurface};\n }\n }\n }\n\n @media (max-width: 767px) {\n ${FONTS.XXS}\n }\n`;\n\nexport const PurchaseBlock = styled.div`\n display: block;\n margin: 0 8px 0 16px;\n`;\n\nexport const ImageBlock = styled.div`\n position: relative;\n height: 142px;\n width: 100%;\n background: ${p => p.bgColorImg || COLORS.BgMain};\n border-radius: ${BorderRadius.InnerBlockRadius};\n margin-bottom: 16px;\n position: relative;\n\n a {\n display: block;\n border-radius: ${BorderRadius.InnerBlockRadius};\n width: 100%;\n height: 100%;\n text-align: center;\n overflow: hidden;\n }\n\n img {\n height: 100%;\n }\n\n ${p => p.isSmallCards && css`\n height: auto;\n margin-bottom: 8px;\n\n img {\n width: 100%;\n height: auto;\n }\n `}\n`;\n\nexport const CategoryBlock = styled.div`\n ${FONTS.XXS}\n margin: 0 8px 0 16px;\n color: ${({ theme }) => theme.isDarkTheme ? COLORS.GRAY_LIGHT : COLORS.TextInfo};\n`;\n\nexport const TitleBlock = styled.div`\n position: relative;\n overflow: hidden;\n text-overflow: ellipsis;\n margin: 4px 8px 4px 16px;\n display: block;\n color: ${({ theme }) => theme.isDarkTheme ? COLORS.TextWhite : COLORS.TextPrimary};\n\n &:hover {\n overflow: visible;\n white-space: normal;\n }\n @media (max-width: 530px) {\n ${FONTS.S};\n }\n\n ${p => p.isSmallCards && css`\n margin: 0px 8px 8px 12px;\n `}\n`;\n\nexport const Col = styled(FlexBoxCol)`\n display: ${props => props.display || 'block'};\n min-height: ${props => props.oneRow ? '528px' : 'auto'};\n max-width: 320px;\n\n ${p => p.isSmallCards && css`\n padding: 0;\n `}\n`;\n","import React from 'react';\nimport { ThemeProvider } from 'styled-components';\n\nimport * as ST from './styled';\n\nconst theme = {\n flexboxgrid: {\n breakpoints: {\n xs: 0,\n sm: 48,\n md: 80,\n lg: 100,\n },\n },\n};\n\nconst Card = (\n {\n headerBlock,\n imageBlock,\n categoryBlock,\n titleBlock,\n descriptionBlock,\n purchaseBlock,\n dataTest = '',\n xs = 12,\n sm = 6,\n md = 4,\n lg = 3,\n display = 'block',\n sameHeight = false,\n oneRow = false,\n backgroundColorData = '',\n isDarkTheme = false,\n isSmallCards = false,\n id = undefined,\n },\n) => {\n return (\n \n \n \n {false !== headerBlock && {headerBlock}}\n {false !== imageBlock && {imageBlock}}\n {false !== categoryBlock && {categoryBlock}}\n {false !== titleBlock && {titleBlock}}\n {false !== descriptionBlock && {descriptionBlock}}\n {false !== purchaseBlock && {purchaseBlock}}\n \n \n \n );\n};\n\nexport default Card;\n","import React from 'react';\n\nconst CategoryBlock = ({ name }) => {\n return (\n {name}\n );\n};\n\nexport default CategoryBlock;\n","import { Label } from '@r1-frontend/ui-react/components/label';\nimport React from 'react';\n\nimport { LabelWrapper } from '~/src/components/ProductCard/styled';\n\nconst HeaderBlock = ({ labels }) => {\n return (\n <>\n {!!labels && !!labels?.length &&\n \n {\n labels.map((item, index) => (\n \n {item.title}\n \n ))\n }\n \n }\n \n );\n};\n\nexport default HeaderBlock;\n","import WebpImage from '@r1-frontend/ui-react/components/WebpImage';\nimport Link from 'next/link';\nimport React, { memo } from 'react';\nimport { LazyLoadImage } from 'react-lazy-load-image-component';\n\nconst ImageBlock = ({ route, image, imageWebp = '', name }) => {\n const WrapLink = ({ children }) => {\n return route ? {children} : <>{children};\n };\n\n return (\n \n \n \n \n \n \n \n );\n};\n\nexport default memo(ImageBlock);\n","import { dataLayerPush as baseDataLayerPush, TDataLayerPushArgument } from '@r1-frontend/analytics/dataLayerPush';\n\nimport { ACTIONS, EVENTS } from '@r1-frontend/shared/constants/analytics';\n\nimport { fullBuyEquipAnalyticsBase } from '~/src/analytics';\n\nconst dataLayerPush = (\n equipmentTitle: string,\n category: string,\n leasing: number,\n gAcategory: TDataLayerPushArgument['category'],\n cost?: number,\n): void => {\n baseDataLayerPush({\n event: EVENTS.UAevent,\n category: gAcategory,\n action: ACTIONS.clickedToOrder,\n label: fullBuyEquipAnalyticsBase.buildDataLayerLabel({\n equipmentTitle, category, leasing, cost,\n }),\n });\n};\n\nexport default dataLayerPush;\n","import { EShopCategory } from '~/src/api/content/shop/getShopItems';\n\nexport const EQUIPMENT_ROUTES_MAP = {\n '/internet/equipment': EShopCategory.Routers,\n '/internet/yandex-stanciya': EShopCategory.YandexStation,\n '/domru-tv/equipment': EShopCategory.Decoders,\n};\n","// @TODO Remove this helper after refactor ProductCard's prop baseRoute\nconst getShopCategoryByRoute = (baseRoute: string, routes: {[key: string]: string}): string | void => {\n if (baseRoute in routes) {\n return routes[baseRoute];\n }\n};\n\nexport default getShopCategoryByRoute;\n","/* eslint-disable complexity */\nimport { dataLayerPush as baseDataLayerPush } from '@r1-frontend/analytics/dataLayerPush';\nimport { ACTIONS, CATEGORIES, EVENTS } from '@r1-frontend/shared/constants/analytics';\nimport { EPriceTypes } from '@r1-frontend/shared/types/EPriceTypes';\nimport { BaseButton, btnSizes, btnTypes } from '@r1-frontend/ui-react/components/buttons/baseButton';\nimport Link from 'next/link';\nimport React, { useCallback, useMemo, useState } from 'react';\n\nimport { fullBuyEquipAnalyticsBase } from '~/src/analytics';\nimport dataLayerPush from '~/src/components/ProductCard/analytics/dataLayerPush';\nimport { EQUIPMENT_ROUTES_MAP } from '~/src/components/ProductCard/constants';\nimport getShopCategoryByRoute from '~/src/components/ProductCard/helpers/getShopCategoryByRoute';\nimport * as ST from '~/src/components/ProductCard/styled';\nimport { isCreditAbnEnabled } from '~/src/features/work-in-home-ab/components/Description/components/Credit/constants/abnVariants';\nimport { useRouterChange } from '~/src/helpers/hooks/useRouterChange';\nimport { toCurrency } from '~/src/helpers/numbers';\n\nconst PurchaseBlock = (\n {\n dataTest,\n name,\n orderClickHandler,\n loading,\n priceOptions,\n orderText,\n selectedOption,\n setSelectedOption,\n withSelect = true,\n isSelectDisable = false,\n isBtnDisable = false,\n isDarkTheme = false,\n category = 'equipment',\n baseRoute,\n setIndexOfSelected = undefined,\n linkUrl = false,\n isCreditAvailable,\n },\n) => {\n const [isSelectOpen, setIsSelectOpen] = useState(false);\n const [isLoadingRouteChange, setIsLoadingRouteChange] = useState(false);\n const [idxOfSelected, setIdxOfSelected] = useState(0);\n\n const isAbTestCreditEnabled = useMemo(() => isCreditAbnEnabled(), []);\n\n const changeOptionsHandler = useCallback((option, idx) => {\n baseDataLayerPush({\n event: EVENTS.UAevent,\n category,\n action: option.value > 0 ? `leasing_duration_${option.value}` : 'buy',\n label: name,\n });\n setIndexOfSelected && setIndexOfSelected(idx);\n setIdxOfSelected(idx);\n setSelectedOption(option);\n setIsSelectOpen(false);\n }, []);\n\n const orderClickHandlerWrap = ({ selectedOption, name, idxOfSelected }) => {\n setIsLoadingRouteChange(true);\n orderClickHandler({ selectedOption, name, idxOfSelected });\n\n // @TODO Refactoring. Need to replace baseRoute prop to the EShopCategory\n const shopCategory = getShopCategoryByRoute(baseRoute, EQUIPMENT_ROUTES_MAP);\n\n if (shopCategory) {\n fullBuyEquipAnalyticsBase.clickedToOrder({\n equipmentTitle: name,\n category: shopCategory,\n leasing: selectedOption.value,\n cost: selectedOption.pricem,\n });\n return;\n }\n\n if (baseRoute === '/lk/change-tariff') {\n baseDataLayerPush({\n event: EVENTS.UAevent,\n category: CATEGORIES.tariffChange,\n action: ACTIONS.chooseRouter,\n label: `router ${name} ${selectedOption.price}|${selectedOption.value}`,\n });\n }\n\n !isRouteChanging && setIsLoadingRouteChange(false);\n };\n\n const toggleSelectHandler = useCallback(() => {\n // TODO - передается объект в функцию, которая с ним не работает...\n if (!isSelectOpen) {\n dataLayerPush({\n event: EVENTS.UAevent,\n category,\n action: 'choose_price',\n label: name,\n });\n }\n\n if (!isSelectDisable) {\n setIsSelectOpen(!isSelectOpen);\n }\n }, [name, isSelectDisable, isSelectOpen]);\n\n const isDisabledButton = useCallback(() => {\n const { orderStatus, isLoadingOrder } = loading;\n return orderStatus || isLoadingOrder;\n }, [loading]);\n\n const getCurrency = useCallback((option) => {\n if (option) {\n return option.type === EPriceTypes.Possess\n ? ' ₽'\n : ' ₽/мес';\n }\n if (!selectedOption) {\n return;\n }\n return selectedOption.type === EPriceTypes.Possess\n ? ' ₽'\n : ' ₽/мес';\n }, [selectedOption]);\n\n const getButtonType = useCallback(() => {\n if (isDarkTheme) {\n return btnTypes.WHITE;\n }\n\n const { orderStatus } = loading;\n return orderStatus ? btnTypes.SECONDARY : btnTypes.PRIMARY;\n }, [isDarkTheme, loading]);\n\n const getButtonText = useCallback(() => {\n const { orderStatus } = loading;\n return !orderStatus ? orderText || 'Заказать' : 'Заказано';\n }, [loading, orderText]);\n\n const getPriceLabel = useCallback((option) => {\n if (isAbTestCreditEnabled) {\n if (priceOptions.length > 1 || isCreditAvailable) {\n return 'Доступна рассрочка';\n }\n return 'Полная стоимость';\n }\n if (option) {\n return option.type === EPriceTypes.Possess\n ? 'Полная стоимость'\n : `Рассрочка ${option.value} мес.`;\n }\n if (!selectedOption) {\n return;\n }\n return selectedOption.type === EPriceTypes.Possess\n ? 'Полная стоимость'\n : `Рассрочка ${selectedOption.value} мес.`;\n }, [selectedOption, priceOptions.length]);\n\n const [isRouteChanging] = useRouterChange({\n onComplete: () => setIsLoadingRouteChange(false),\n });\n\n return (\n \n 1}\n data-test='router-item-price'\n >\n {withSelect && selectedOption &&\n <>\n {\n isNaN(selectedOption?.price)\n ? ''\n : 1} isDarkTheme={isDarkTheme}>\n {getPriceLabel()}\n \n }\n {\n (isSelectOpen && priceOptions.length > 1) &&\n e.stopPropagation()}\n fullWidth={true}\n width='360px'\n height='auto'>\n Варианты покупки\n {name}\n <>\n {priceOptions && priceOptions.map((option, i) => {\n return ( changeOptionsHandler(option, i)}\n >\n {getPriceLabel(option)}\n {toCurrency(option.pricePromo || option.price)}{getCurrency(option)}\n );\n })}\n \n \n }\n \n }\n \n {\n selectedOption?.pricePromo\n ? toCurrency(selectedOption.pricePromo)\n : isNaN(selectedOption?.price) ? '' : toCurrency(selectedOption?.price)\n }\n {isNaN(selectedOption?.price) ? '' : getCurrency()}\n \n \n {linkUrl\n ? (\n \n {getButtonText()}\n \n )\n : (\n orderClickHandlerWrap({ selectedOption, name, idxOfSelected })}\n data-test={dataTest}\n text={getButtonText()}\n type={getButtonType()}\n disabled={(isRouteChanging && !isLoadingRouteChange) || isBtnDisable || isDisabledButton()}\n size={btnSizes.SMALL}\n isLoading={isLoadingRouteChange}\n />\n )}\n \n );\n};\n\nexport default PurchaseBlock;\n","import { truncate } from '@r1-frontend/shared/helpers/truncate';\nimport Link from 'next/link';\nimport React from 'react';\n\nimport { TitleLink } from '~/src/components/ProductCard/styled';\n\nconst TitleBlock = ({ route, name, isSmallCards = false }) => {\n const WrapLink = ({ children }) => {\n return route ? {children} : <>{children};\n };\n\n return (\n \n \n {truncate(name, isSmallCards ? 12 : 19)}\n \n \n );\n};\n\nexport default TitleBlock;\n","import { COLORS } from '@r1-frontend/ui-react/assets/js/constants';\nimport { BaseButton } from '@r1-frontend/ui-react/components/buttons/baseButton';\nimport DefaultPopup from '@r1-frontend/ui-react/components/popups/defaultPopup';\nimport TitleSelect from '@r1-frontend/ui-react/components/select/titleSelect';\nimport { FONTS } from '@r1-frontend/ui-react/tokens/fonts';\nimport styled, { css } from 'styled-components';\n\nimport DetailPick from '~/static/images/icons/detail.svg';\nimport arrow from '~/static/images/icons/icon-arrow-card.svg';\nimport arrowDarkTheme from '~/static/images/icons/icon-arrow-dark-theme.svg';\n\nconst breakpoints = {\n mobile: '767px',\n sMobile: '345px',\n};\n\nexport const TitleLink = styled.a`\n ${FONTS.H4};\n color: inherit;\n white-space: pre;\n\n @media(max-width: ${breakpoints.sMobile}) {\n ${FONTS.S};\n font-weight: bold;\n }\n\n ${p => p.isSmallCards && css`\n ${FONTS.MediumXS};\n `}\n`;\n\nexport const PriceBlock = styled.div`\n align-items: center;\n justify-content: space-between;\n flex-wrap: nowrap;\n margin-top: 22px;\n`;\n\nexport const Price = styled.div`\n position: relative;\n color: ${COLORS.black};\n display: block;\n cursor: ${props => props.isMoreOneOptions ? 'pointer' : 'auto'};\n\n @media(max-width: ${breakpoints.mobile}) {\n ${FONTS.S};\n }\n`;\n\nexport const TextButton = styled.div`\n position: relative;\n ${FONTS.H4};\n color: ${props => props.isDarkTheme ? COLORS.white : COLORS.black};\n white-space: nowrap;\n\n @media (max-width: ${breakpoints.mobile}) {\n ${FONTS.H5};\n }\n`;\n\nexport const OldPrice = styled.span`\n left: 0;\n top: -18px;\n color: ${COLORS.darkGrey};\n ${FONTS.XS};\n\n position: absolute;\n text-decoration: line-through;\n`;\n\nexport const Leasing = styled.a`\n color: ${props => props.isDarkTheme ? COLORS.white : COLORS.black};\n ${FONTS.XXS};\n display: inline-block;\n\n &:after {\n display: ${props => props.isMoreOneOptions ? 'inline-block' : 'none'};\n content: '';\n margin-left: 4.13px;\n width: 7.75px;\n height: 4.25px;\n background: url(${ p => p.isDarkTheme ? `${arrowDarkTheme}` : `${arrow}` }) no-repeat;\n background-size: contain;\n }\n\n @media (max-width: ${breakpoints.mobile}) {\n position: relative;\n\n &:after {\n position: absolute;\n right: -8px;\n top: 50%;\n transform: translateY(-50%);\n }\n }\n`;\n\nexport const Select = styled(TitleSelect)`\n position: static !important;\n display: block;\n`;\n\nexport const LabelWrapper = styled.div`\n flex-wrap: nowrap;\n display: flex;\n flex-direction: row;\n width: min-content;\n gap: 4px;\n\n @media (max-width: ${breakpoints.mobile}) {\n flex-wrap: wrap;\n }\n`;\n\nexport const DetailBlock = styled.div`\n display: flex;\n flex-direction: column;\n width: 20%;\n align-items: flex-end;\n`;\n\nexport const Detail = styled.div`\n width: 24px;\n height: 24px;\n cursor: pointer;\n background: url(${DetailPick});\n`;\n\nexport const Blanket = styled.div`\n bottom: 0;\n left: 0;\n top: 0;\n right: 0;\n position: fixed;\n z-index: 1;\n`;\n\nexport const Popup = styled(DefaultPopup)`\n padding: 40px;\n border-radius: 16px;\n min-height: 188px;\n\n @media(max-width: ${breakpoints.mobile}) {\n padding: 28px;\n width: 320px;\n }\n`;\n\nexport const PopupTitle = styled.p`\n ${FONTS.H3};\n\n @media(max-width: ${breakpoints.mobile}) {\n border-radius: 16px 16px 0 0;\n ${FONTS.H4};\n }\n`;\n\nexport const PopupCloseButton = styled.button`\n position: absolute;\n right: 14px;\n top: 14px;\n padding: 0;\n border: 0;\n background: none;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n\n &:before {\n display: block;\n content: \"\";\n width: 12px;\n height: 12px;\n background: url(\"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZ\n pZXdCb3g9IjAgMCAxNCAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3Z\n nIj4KPHBhdGggZD0iTTEzIDFDNy41MzI2NiA2LjQ2NzM0IDEgMTMgMSAxM00xIDFMMTMgMTMiIHN0cm9rZT0iIzV\n DNUU2MiIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9\n pbj0icm91bmQiLz4KPC9zdmc+Cg==\") no-repeat;\n background-size: contain;\n }\n`;\n\nexport const EquipName = styled.p`\n ${FONTS.M};\n margin-top: 4px;\n margin-bottom: 24px;\n\n @media(max-width: ${breakpoints.mobile}) {\n ${FONTS.S};\n line-height: 28px;\n }\n`;\n\nexport const OptionButton = styled(BaseButton)`\n\n margin-top: 12px;\n width: 100%;\n\n &:first-child {\n margin-top: 0;\n }\n\n @media(max-width: ${breakpoints.mobile}) {\n font-size: 14px;\n }\n\n div {\n display: flex;\n justify-content: space-between;\n align-items: center;\n width: 100%;\n\n span:nth-child(2) {\n margin-left: 0;\n }\n }\n`;\n\nexport const SpecOption = styled.div`\n justify-content: space-between;\n width: 100%;\n height: 20px;\n border-bottom: ${props => props.isDarkTheme ? 'none' : `0.5px dashed ${COLORS.GRAY_S}`};\n`;\n\nexport const MinPriceTitle = styled.span`\n margin-bottom: 8px;\n`;\n","import { useEffect, useState } from 'react';\nimport { useRouter } from 'next/router';\n\nexport type TRouterChangeOptions = Partial<{\n onStart: (next: string) => void,\n onComplete: () => void,\n\n /**\n * Фильтрует страницы, при переходе на которые\n * будет изменятся параметр `isLoading`. По умолчанию\n * `isLoading` изменяется для всех страниц\n */\n only: string[],\n}>\n\nexport const useRouterChange = (options: TRouterChangeOptions = {}): [boolean, string] => {\n const router = useRouter();\n const [isLoading, setIsLoading] = useState(false);\n const [nextUrl, setNextUrl] = useState('');\n\n useEffect(() => {\n const { onStart, onComplete, only } = options;\n\n const onShow = (navUrl: string) => {\n setIsLoading(\n !only?.length || only.some(url => navUrl.startsWith(url)),\n );\n setNextUrl(navUrl);\n onStart && onStart(navUrl);\n };\n\n const onHide = () => {\n setIsLoading(false);\n onComplete && onComplete();\n };\n\n router.events.on('routeChangeStart', onShow);\n router.events.on('routeChangeComplete', onHide);\n\n return () => {\n router.events.off('routeChangeStart', onShow);\n router.events.off('routeChangeComplete', onHide);\n };\n\n }, [router.events]);\n\n return [isLoading, nextUrl];\n};\n","import PropTypes from 'prop-types';\nimport React from 'react';\nimport ReactSelect, { components } from 'react-select';\nimport styled from 'styled-components';\n\nimport Icon from '../../../deprecated/icon';\nimport { COLORS } from '../../../tokens/colors';\nimport { Menu, MenuList, Option as BigOption, SmallOption } from '../dropdown';\n\nconst ControlTitle = styled.div`\n cursor: pointer;\n`;\nconst Control = (props) => {\n const { children, isDisabled, isFocused, innerRef, innerProps } = props;\n return (\n \n {children}\n \n );\n};\n\nconst ValueContainer = styled(components.ValueContainer)`\n padding: 0!important;\n flex: auto!important;\n align-items: flex-start!important;\n`;\n\nconst TitleValue = styled.div`\n color: ${COLORS.TextPrimary};\n`;\nconst SingleValue = (props) => {\n const { children, isDisabled, innerRef, innerProps } = props;\n return (\n \n {children}\n \n );\n};\n\nconst Indicator = styled(components.DropdownIndicator)`\n min-width: 20px;\n justify-content: center;\n align-items: center;\n margin-left: 5px;\n padding: 0!important;\n`;\nconst DropdownIndicator = (props) => {\n return (\n \n \n \n );\n};\n\nexport default class Select extends React.Component {\n static propTypes = {\n options: PropTypes.arrayOf(PropTypes.shape({\n label: PropTypes.any,\n value: PropTypes.any,\n })),\n defaultValue: PropTypes.any,\n placeholder: PropTypes.string,\n onChange: PropTypes.func,\n value: PropTypes.shape({\n label: PropTypes.any,\n value: PropTypes.any,\n }),\n };\n\n static defaultProps = {\n options: [],\n placeholder: '',\n onChange: () => { },\n };\n\n onChange = (value) => {\n this.props.onChange(value);\n };\n\n render() {\n const { options, defaultValue, value, placeholder, minWidth, extStyle, smallOption, ...rest } = this.props;\n\n const Option = (props) => smallOption ? : ;\n const customComponents = {\n IndicatorSeparator: null,\n Control,\n ValueContainer,\n SingleValue,\n Option,\n Menu,\n MenuList,\n DropdownIndicator,\n };\n\n const customStyles = {\n menu: base => ({\n ...base,\n minWidth: minWidth,\n }),\n ...extStyle,\n };\n return (\n \n );\n }\n}\n","import styled from 'styled-components';\n\n/**\n * @deprecated\n * Use @r1-frontend/ui-react/components/svg instead\n */\nconst Icon = styled.div`\n display: inline-block;\n font-family: 'icomoon' !important;\n font-style: normal;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n text-decoration: none;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n font-size: ${props => props.fontSize ? props.fontSize : 'inherit'};\n color: ${props => props.color || 'black'};\n &::before {\n content: ${props => `\"${props.content}\"`};\n }\n`;\n\nexport default Icon;\n","module.exports = \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTUgMTJDNiAxMSA5IDkgMTIgOUMxNSA5IDE4IDExIDE5IDEyIiBzdHJva2U9IiNDRUNFQ0UiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjMiIHN0cm9rZT0iI0NFQ0VDRSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9zdmc+Cg==\"","module.exports = \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSI2IiB2aWV3Qm94PSIwIDAgOCA2IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTAuMjM0ODM1IDAuOTg0ODM1QzAuMzgxMjgyIDAuODM4Mzg4IDAuNjE4NzE4IDAuODM4Mzg4IDAuNzY1MTY1IDAuOTg0ODM1TDQgNC4yMTk2N0w3LjIzNDg0IDAuOTg0ODM1QzcuMzgxMjggMC44MzgzODggNy42MTg3MiAwLjgzODM4OCA3Ljc2NTE2IDAuOTg0ODM1QzcuOTExNjEgMS4xMzEyOCA3LjkxMTYxIDEuMzY4NzIgNy43NjUxNiAxLjUxNTE3TDQuMjY1MTYgNS4wMTUxNkM0LjExODcyIDUuMTYxNjEgMy44ODEyOCA1LjE2MTYxIDMuNzM0ODMgNS4wMTUxNkwwLjIzNDgzNSAxLjUxNTE3QzAuMDg4Mzg4MyAxLjM2ODcyIDAuMDg4Mzg4MyAxLjEzMTI4IDAuMjM0ODM1IDAuOTg0ODM1WiIgZmlsbD0iIzM5M0M0MSIvPgo8L3N2Zz4K\"","module.exports = \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSI2IiB2aWV3Qm94PSIwIDAgOCA2IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTAuMjM0ODM1IDAuOTg0ODM1QzAuMzgxMjgyIDAuODM4Mzg4IDAuNjE4NzE4IDAuODM4Mzg4IDAuNzY1MTY1IDAuOTg0ODM1TDQgNC4yMTk2N0w3LjIzNDg0IDAuOTg0ODM1QzcuMzgxMjggMC44MzgzODggNy42MTg3MiAwLjgzODM4OCA3Ljc2NTE2IDAuOTg0ODM1QzcuOTExNjEgMS4xMzEyOCA3LjkxMTYxIDEuMzY4NzIgNy43NjUxNiAxLjUxNTE3TDQuMjY1MTYgNS4wMTUxNkM0LjExODcyIDUuMTYxNjEgMy44ODEyOCA1LjE2MTYxIDMuNzM0ODMgNS4wMTUxNkwwLjIzNDgzNSAxLjUxNTE3QzAuMDg4Mzg4MyAxLjM2ODcyIDAuMDg4Mzg4MyAxLjEzMTI4IDAuMjM0ODM1IDAuOTg0ODM1WiIgZmlsbD0iI0M1QzZDNyIvPgo8L3N2Zz4K\""],"names":["Card","styled","props","sameHeight","BorderRadius","p","bgColorCard","COLORS","oneRow","isSmallCards","css","HeaderBlock","DescriptionBlock","FONTS","theme","isDarkTheme","PurchaseBlock","ImageBlock","bgColorImg","CategoryBlock","TitleBlock","Col","FlexBoxCol","display","flexboxgrid","breakpoints","xs","sm","md","lg","headerBlock","imageBlock","categoryBlock","titleBlock","descriptionBlock","purchaseBlock","dataTest","backgroundColorData","id","undefined","ThemeProvider","ST","data-test","bgCard","bgImg","name","span","labels","length","LabelWrapper","map","item","index","Label","textColor","colorText","color_text","bgColor","color","title","route","image","imageWebp","WrapLink","children","Link","passHref","href","a","WebpImage","urlWebp","LazyLoadImage","src","alt","memo","equipmentTitle","category","leasing","gAcategory","cost","baseDataLayerPush","event","EVENTS","action","ACTIONS","label","fullBuyEquipAnalyticsBase","EQUIPMENT_ROUTES_MAP","EShopCategory","baseRoute","routes","orderClickHandler","loading","priceOptions","orderText","selectedOption","setSelectedOption","withSelect","isSelectDisable","isBtnDisable","setIndexOfSelected","linkUrl","isCreditAvailable","useState","isSelectOpen","setIsSelectOpen","isLoadingRouteChange","setIsLoadingRouteChange","idxOfSelected","setIdxOfSelected","isAbTestCreditEnabled","useMemo","isCreditAbnEnabled","changeOptionsHandler","useCallback","option","idx","value","toggleSelectHandler","dataLayerPush","isDisabledButton","orderStatus","isLoadingOrder","getCurrency","type","EPriceTypes","getButtonType","btnTypes","getButtonText","getPriceLabel","isRouteChanging","useRouterChange","onComplete","onClick","isMoreOneOptions","isNaN","price","isOpen","onClose","e","stopPropagation","fullWidth","width","height","i","requestId","toCurrency","pricePromo","BaseButton","size","btnSizes","shopCategory","getShopCategoryByRoute","pricem","CATEGORIES","orderClickHandlerWrap","text","disabled","isLoading","TitleLink","truncate","PriceBlock","Price","TextButton","Leasing","arrowDarkTheme","arrow","TitleSelect","Popup","DetailPick","DefaultPopup","PopupTitle","EquipName","OptionButton","SpecOption","MinPriceTitle","options","router","useRouter","setIsLoading","nextUrl","setNextUrl","useEffect","onStart","only","onShow","navUrl","some","url","startsWith","onHide","events","on","off","ControlTitle","Control","isDisabled","isFocused","innerRef","innerProps","ref","ValueContainer","components","TitleValue","SingleValue","Indicator","DropdownIndicator","Icon","content","Select","onChange","render","this","defaultValue","placeholder","minWidth","extStyle","smallOption","rest","customComponents","IndicatorSeparator","Option","SmallOption","fontSize","BigOption","Menu","MenuList","customStyles","menu","base","ReactSelect","isClearable","isSearchable","styles","React","propTypes","PropTypes","defaultProps","module","exports"],"sourceRoot":""}