{"version":3,"file":"static/chunks/5355-a2bce5a442879cbc.js","mappings":"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","sources":["webpack://_N_E/./src/components/CheckboxFilters/styled.ts","webpack://_N_E/./src/components/CheckboxFilters/index.tsx","webpack://_N_E/./src/components/FiltersForTariffs/index.tsx","webpack://_N_E/./src/components/FiltersForTariffs/styled.ts","webpack://_N_E/./src/components/TariffLine/index.tsx","webpack://_N_E/./src/components/TariffLine/styled.ts","webpack://_N_E/./src/features/internet/internet-represent/styled.ts","webpack://_N_E/../../packages/ui-react/src/components/controls/baseCheckbox/styled.ts","webpack://_N_E/../../packages/ui-react/src/components/controls/baseCheckbox/index.tsx","webpack://_N_E/../../packages/ui-react/src/assets/img/check-promo.svg","webpack://_N_E/../../packages/ui-react/src/assets/img/check-white.svg"],"sourcesContent":["import styled from 'styled-components';\n\nimport BaseCheckbox from '@r1-frontend/ui-react/components/controls/baseCheckbox';\nimport { FONTS } from '@r1-frontend/ui-react/tokens/fonts';\n\nimport { breakePoints } from '~/src/features/internet/internet-represent/styled';\n\nexport const CheckboxFilters = styled.div`\n display: flex;\n margin-left: 24px;\n\n @media (max-width: ${breakePoints.tablet}) {\n width: 100%;\n margin-top: 24px;\n margin-left: 0;\n }\n\n @media (max-width: ${breakePoints.mobile}) {\n flex-direction: column;\n }\n`;\n\nexport const CheckboxWrap = styled.div`\n margin-left: 24px;\n user-select: none;\n`;\n\nexport const SBaseCheckbox = styled(BaseCheckbox)`\n ${FONTS.MediumXS};\n`;\n","import { TCheckboxType } from '@r1-frontend/ui-react/components/controls/baseCheckbox';\n\nimport * as ST from './styled';\n\nexport interface ICheckboxItem {\n id: string,\n checked: boolean,\n checkType?: TCheckboxType,\n disabled: boolean,\n label: string,\n}\n\ninterface IPropsCheckboxFilters {\n items: ICheckboxItem[],\n onChange: (id: string) => void,\n className?: string,\n}\n\nexport const CheckboxFilters = ({ items, onChange, className }: IPropsCheckboxFilters): JSX.Element => {\n return (\n \n {items.map(item => {\n return (\n \n onChange(item.id)}\n >\n {item.label}\n \n \n );\n })}\n \n );\n};\n","import { FC } from 'react';\n\nimport { ICheckboxItem } from '~/src/components/CheckboxFilters';\nimport { TMenuItem } from '~/src/components/FilterMenu';\nimport FilterMenu from '~/src/components/FilterMenu';\n\nimport * as ST from './styled';\n\ninterface IProps {\n activeItem: number,\n hasCityTariffs: boolean,\n hasVillageTariffs: boolean,\n tariffFiltersData: ICheckboxItem[],\n tariffSwitcherData: TMenuItem[],\n onToggleFilter: (id: string) => void,\n className?: string,\n}\n\nexport const FiltersForTariffs: FC = ({\n hasCityTariffs,\n hasVillageTariffs,\n tariffFiltersData,\n tariffSwitcherData,\n onToggleFilter,\n activeItem,\n className,\n}) => {\n const hasBothTariffs = hasCityTariffs && hasVillageTariffs;\n return (\n \n \n \n \n \n \n );\n};\n","import styled from 'styled-components';\n\nimport { wideBreakpoints } from '@r1-frontend/ui-react/components/layouts/wideContainer';\n\nimport { CheckboxFilters } from '~/src/components/CheckboxFilters';\n\nexport const FiltersForTariffs = styled.div`\n width: 100%;\n align-items: center;\n justify-content: space-beetwen;\n flex-direction: row;\n margin-bottom: 16px;\n gap: 24px;\n`;\n\nexport const TariffSwitcherWrap = styled.div<{isDisplay: boolean}>`\n display: ${p => p.isDisplay ? 'block' : 'none'};\n`;\n\nexport const SCheckboxFilters = styled(CheckboxFilters)`\n margin-top: 0;\n margin-left: 0;\n\n div:first-child {\n margin-left: 0;\n }\n\n @media (max-width: ${wideBreakpoints.mobile}) {\n div {\n margin-left: 0;\n \n &:not(:last-child) {\n margin-bottom: 16px;\n }\n }\n }\n`;\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { useSelector } from 'react-redux';\n\nimport { doRequest } from '@r1-frontend/do-request';\nimport {\n ERequestStatus,\n requestByConnection,\n RequestDto,\n ResponseDto,\n} from '@r1-frontend/api-domru/api-request/v1/user/request-by-connection';\n\nimport PopupCallBack from '@r1-frontend/ui-react/components/popups/popupCallback';\nimport { EResultPopupStatus } from '@r1-frontend/ui-react/components/popups/popupResult';\nimport { CATEGORIES } from '@r1-frontend/shared/constants/analytics';\nimport { isClientSide } from '@r1-frontend/shared/helpers/ssr';\nimport { useMatchMedia } from '@r1-frontend/shared/hooks/useMatchMedia';\n\nimport PopupResult from '~/src/components/Popups/PopupResult';\nimport { ISubmitParams } from '~/src/components/RequestFormPhone';\nimport TariffCard from '~/src/components/TariffCard';\nimport { ITariff } from '~/src/entities/formattedTariff';\nimport { selectCsrf } from '~/src/store/selectors/auth/selectCsrf';\n\nimport * as ST from './styled';\n\nenum EMediaWidth {\n desktop = '(min-width: 1600px)',\n sDesktop = '(max-width: 1599px) and (min-width: 1280px)',\n laptop = '(max-width: 1279px) and (min-width: 768px)',\n mobile = '(max-width: 767px)',\n}\n\nenum EVisibleSlides {\n desktop = 4,\n sDesktop = 3,\n laptop = 2,\n}\n\nexport enum ESortingKeys {\n WEIGHT = 'weight',\n INTERNET = 'sortOnInternet',\n INTERNET_LINES = 'sortOnInternetLines',\n BUNDLES = 'sortOnBundles',\n}\nexport interface ITariffLine {\n id: number,\n title: string,\n body: string,\n sort: number,\n tariffs: ITariff[],\n}\n\ninterface ITariffLineProps {\n isAuth?: boolean,\n line?: ITariffLine,\n baseTariffs?: ITariff[],\n sortField?: string,\n openPopup?: (tariff: ITariff) => void,\n className?: string,\n weight?: number | null,\n}\n\nconst TariffLine = ({\n line,\n isAuth = false,\n baseTariffs = [],\n sortField = ESortingKeys.WEIGHT,\n openPopup = () => ({}),\n className = '',\n}: ITariffLineProps): JSX.Element => {\n const [onClientSide, setOnClientSide] = useState(isClientSide());\n const csrf = useSelector(selectCsrf);\n\n useEffect(() => {\n setOnClientSide(isClientSide);\n }, []);\n\n const [hideArrows, setHideArrows] = useState(false);\n const [slideWidth, setSlideWidth] = useState('304px');\n const [slideIndex, setSlideIndex] = useState(0);\n\n const [showRequestFormPopup, setShowRequestFormPopup] = useState(false);\n const [salePackageId, setSalePackageId] = useState(0);\n\n const [popup, setPopup] = useState({\n isResultOpened: false,\n resultTitle: '',\n resultText: '',\n resultType: EResultPopupStatus.SUCCESS,\n });\n\n const openPopupResult = useCallback((ok: boolean, message: string) => {\n setPopup({\n isResultOpened: true,\n resultType: ok ? EResultPopupStatus.SUCCESS : EResultPopupStatus.ERROR,\n resultTitle: ok\n ? 'Заявка на подключение отправлена'\n : 'Произошла ошибка',\n resultText: ok ? 'Мы свяжемся с вами в ближайшее время' : message,\n });\n setShowRequestFormPopup(false);\n }, []);\n\n const submitRequest = useCallback(async(params: ISubmitParams) => {\n const dataParams: RequestDto = {\n fio: params.fio as string,\n phone: params.phone,\n product_id: [0],\n check_call_type: window && window.location.href,\n plan: salePackageId ? +salePackageId : undefined,\n csrf,\n };\n\n const resp = await doRequest.apiRequest(\n requestByConnection(dataParams),\n );\n\n if (resp.isSuccess) {\n const { status, message } = resp.payload;\n const ok = !!status;\n\n openPopupResult(ok, message);\n\n return { ok, message, status };\n } else {\n return {\n ok: false,\n message: 'Не удалось отправить заявку.',\n status: ERequestStatus.error,\n };\n }\n }, [salePackageId]);\n\n const closePopup = useCallback(() => {\n setPopup(state => ({\n ...state,\n isResultOpened: false,\n }));\n setShowRequestFormPopup(false);\n }, []);\n\n // eslint-disable-next-line\n const isDesktop = onClientSide ? useMatchMedia(EMediaWidth.desktop) : true;\n const isSDesktop = useMatchMedia(EMediaWidth.sDesktop);\n const isLaptop = useMatchMedia(EMediaWidth.laptop);\n const isMobile = useMatchMedia(EMediaWidth.mobile);\n\n interface tariffSortingKeyAccessors {\n weight: string,\n sortOnInternet: string,\n sortOnInternetLines: string,\n sortOnBundles: string,\n }\n\n const sortedTariffsByKey = (receivedTariffs: ITariff[], keyToSort: keyof tariffSortingKeyAccessors) => {\n return [...receivedTariffs]\n .sort((a, b) => {\n const currObj = a[keyToSort];\n const nextObj = b[keyToSort];\n if (currObj !== 0 && nextObj === 0) {\n return 1;\n }\n if (currObj === 0 && nextObj !== 0) {\n return -1;\n }\n return currObj - nextObj;\n });\n };\n\n const preparedTariffs = useMemo(() => {\n const result = line ? line.tariffs : baseTariffs;\n switch (sortField) {\n case ESortingKeys.BUNDLES:\n return sortedTariffsByKey(result, ESortingKeys.BUNDLES);\n case ESortingKeys.INTERNET:\n return sortedTariffsByKey(result, ESortingKeys.INTERNET);\n case ESortingKeys.INTERNET_LINES:\n return sortedTariffsByKey(result, ESortingKeys.INTERNET_LINES);\n case ESortingKeys.WEIGHT:\n default:\n return sortedTariffsByKey(result, ESortingKeys.WEIGHT);\n }\n }, [baseTariffs, line, sortField]);\n\n useEffect(() => {\n setSlideIndex(0);\n if (isMobile) {\n setSlideWidth('288px');\n setHideArrows(true);\n } else {\n setSlideWidth('304px');\n if ((isLaptop && preparedTariffs.length > EVisibleSlides.laptop) ||\n (isSDesktop && preparedTariffs.length > EVisibleSlides.sDesktop) ||\n (isDesktop && preparedTariffs.length > EVisibleSlides.desktop)) {\n setHideArrows(false);\n } else {\n setHideArrows(true);\n }\n }\n }, [isDesktop, isLaptop, isMobile, isSDesktop, preparedTariffs]);\n\n const renderTariffCards = () => preparedTariffs.map((tariff) => (\n \n ));\n\n return (\n \n {(line && !!preparedTariffs.length) && (\n <>\n {line.title}\n \n >\n )}\n {onClientSide\n ? \n {renderTariffCards()}\n \n : \n {renderTariffCards()}\n \n }\n setShowRequestFormPopup(false)}\n title={'Заявка на подключение'}\n buttonText={'Подключить'}\n submitRequest={(params) => submitRequest(params)}\n option={'popup'}\n category={CATEGORIES.applicationForm}\n />\n \n \n );\n};\n\nexport default TariffLine;\n","import styled from 'styled-components';\n\nimport GridContainer from '@r1-frontend/ui-react/components/layouts/gridContainer';\nimport NukaCarousel from '@r1-frontend/ui-react/components/NukaCarousel';\nimport { COLORS } from '@r1-frontend/ui-react/tokens/colors';\nimport { FONTS } from '@r1-frontend/ui-react/tokens/fonts';\n\nconst breakpoints = {\n tablet: '1023px',\n mobile: '767px',\n};\n\nexport const LineContainer = styled(GridContainer)`\n flex-direction: column;\n padding-left: 0;\n padding-right: 0;\n width: 100%;\n`;\n\nexport const LineTitle = styled.h2`\n margin-bottom: 8px;\n ${FONTS.H2};\n color: ${COLORS.TextPrimary};\n\n @media (max-width: ${breakpoints.tablet}) {\n ${FONTS.H3};\n }\n\n @media (max-width: ${breakpoints.mobile}) {\n ${FONTS.H5}\n}\n`;\n\nexport const LineBody = styled.div`\n max-width: 530px;\n ${FONTS.XS};\n color: ${COLORS.TextSecondary};\n\n a {\n ${FONTS.MediumXS};\n color: ${COLORS.Link};\n transition: 0.3s;\n\n &:hover {\n color: ${COLORS.Brand_Blue};\n }\n }\n`;\n\nexport const CustomSwiper = styled(NukaCarousel)`\n padding-left: 0 !important;\n padding-right: 0 !important;\n\n & section,\n & div {\n outline: none;\n }\n\n & > section > div.slider-frame {\n padding: 24px 0 !important;\n }\n`;\n\nexport const NoSwiperContainer = styled.div`\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n width: 100%;\n\n & > div {\n &:not(:last-child) {\n margin-right: 20px;\n }\n }\n`;\n\nexport const NotFoundTitle = styled.p`\n ${FONTS.S};\n color: ${COLORS.GRAY_DARK};\n margin: 16px 0;\n`;\n","import styled from 'styled-components';\n\n// @ts-ignore\nimport GridContainer from '@r1-frontend/ui-react/components/layouts/gridContainer';\n\nexport const breakePoints = {\n lDesktop: '1600px',\n desktop: '1599px',\n sDesktop: '1365px',\n laptop: '1279px',\n tablet: '1023px',\n mobile: '767px',\n sMobile: '479px',\n};\n\nexport const InternetRepresent = styled.div`\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n width: 100%;\n`;\n\nexport const StyledGridContainer = styled(GridContainer)`\n display: flex;\n flex-direction: column;\n flex-wrap: nowrap;\n\n @media (max-width: ${breakePoints.desktop}) {\n padding-left: 0;\n padding-right: 0;\n }\n\n @media (max-width: ${breakePoints.mobile}) {\n padding-left: 16px;\n padding-right: 16px;\n }\n`;\n\nexport const PlankFormWrap = styled.div`\n position: fixed;\n z-index: 100;\n bottom: 0;\n width: 100%;\n\n @media (max-width: ${breakePoints.mobile}) {\n display: none;\n }\n`;\n","import styled, { css } from 'styled-components';\n\n// @ts-ignore\nimport promoMark from '../../../assets/img/check-promo.svg';\n// @ts-ignore\nimport checkMark from '../../../assets/img/check-white.svg';\nimport { COLORS } from '../../../tokens/colors';\nimport { checkboxSizes, getSizes, TControlSize } from '../baseControlsData';\n\nimport { TCheckboxType } from './index';\n\nconst BORDER_WIDTH = 2;\n\nconst getCheckboxSizes = (size: TControlSize) => getSizes(size, checkboxSizes);\n\ntype IStyleProps = {\n size: TControlSize,\n checkType: TCheckboxType,\n invertColor?: boolean,\n disabled: boolean,\n withLabel: boolean,\n}\n\nexport const Label = styled.label`\n display: flex;\n flex-direction: row;\n flex-wrap: nowrap;\n align-items: center;\n margin: 0;\n padding: 0;\n ${p => getCheckboxSizes(p.size).font};\n color: ${({ disabled, invertColor }) =>\n disabled\n ? COLORS.TextDisabled\n : invertColor\n ? COLORS.TextWhite\n : COLORS.TextPrimary };\n user-select: none;\n cursor: ${p => p.disabled ? 'initial' : 'pointer'};\n\n input[type=\"checkbox\"] {\n appearance: none;\n position: relative;\n flex: 0 0 auto;\n width: ${p => getCheckboxSizes(p.size).inputSize}px;\n height: ${p => getCheckboxSizes(p.size).inputSize}px;\n margin: 0;\n margin-right: ${p => p.withLabel ? getCheckboxSizes(p.size).rMargin + 'px' : 0 };\n padding: 0;\n background-color: ${COLORS.BgMain};\n border-width: ${BORDER_WIDTH}px;\n border-style: solid;\n border-color: ${COLORS.Brand_Blue};\n border-radius: 6px;\n transition: .3s;\n outline: none;\n box-sizing: border-box;\n cursor: inherit;\n\n @media (hover: hover) {\n &:hover {\n border-color: ${COLORS.Link};\n }\n }\n\n &:required:invalid {\n border-color: ${COLORS.Error};\n background-color: ${COLORS.BgError};\n\n @media (hover: hover) {\n &:hover {\n border-color: ${COLORS.Link};\n background-color: ${COLORS.BgMain};\n }\n }\n }\n\n &:disabled {\n border-color: ${COLORS.GRAY_LIGHT};\n background-color: ${COLORS.GRAY_LIGHT};\n cursor: default;\n pointer-events: none;\n\n @media (hover: hover) {\n &:hover {\n border-color: ${COLORS.GRAY_LIGHT};\n }\n }\n }\n\n &:checked {\n border-color: ${ ({ invertColor }) => invertColor ? COLORS.BgSurface : COLORS.Control};\n background-color: ${ ({ invertColor }) => invertColor ? COLORS.BgSurface : COLORS.Control};\n\n &:after {\n content: '';\n position: absolute;\n top: -1px;\n left: -1px;\n width: calc(100% + ${BORDER_WIDTH}px);\n height: calc(100% + ${BORDER_WIDTH}px);\n background-color: ${ ({ invertColor }) => invertColor ? COLORS.Control : COLORS.BgMain};\n mask-image: url(${checkMark});\n mask-size: ${p => `${getCheckboxSizes(p.size).iconWidth}px ${getCheckboxSizes(p.size).iconHeight}px`};\n mask-position: center;\n mask-repeat: no-repeat;\n }\n\n @media (hover: hover) {\n &:hover {\n border-color: ${COLORS.Link};\n background-color: ${COLORS.Outline_Dark};\n }\n }\n\n &:disabled {\n border-color: ${COLORS.GRAY_LIGHT};\n background-color: ${COLORS.GRAY_LIGHT};\n pointer-events: none;\n\n &:after {\n background-color: ${COLORS.GRAY_DARK};\n }\n }\n }\n\n ${({ size, checkType }) => checkType === 'promo' && css`\n border-color: ${COLORS.Brand_Blue};\n\n &:before {\n content: '';\n position: absolute;\n top: -1px;\n left: -1px;\n width: calc(100% + ${BORDER_WIDTH}px);\n height: calc(100% + ${BORDER_WIDTH}px);\n background-color: ${COLORS.Brand_Blue};\n mask-image: url(${promoMark});\n mask-size: ${getCheckboxSizes(size).promoIconSize}px;\n mask-position: center;\n mask-repeat: no-repeat;\n }\n\n @media (hover: hover) {\n &:hover {\n border-color: ${COLORS.Link};\n background-color: ${COLORS.Outline_Dark};\n\n &:before {\n background-color: ${COLORS.BgMain};\n }\n }\n }\n\n &:required:invalid {\n &:before {\n background-color: ${COLORS.Error};\n }\n }\n\n &:focus-visible {\n border-color: ${COLORS.Link};\n background-color: ${COLORS.Outline_Dark};\n\n &:before {\n background-color: ${COLORS.BgMain};\n }\n }\n\n &:checked:before,\n &:required:invalid:hover:before {\n display: none;\n }\n\n &:disabled {\n border-color: ${COLORS.GRAY_LIGHT};\n background-color: ${COLORS.GRAY_LIGHT};\n pointer-events: none;\n\n &:before {\n display: none;\n }\n\n @media (hover: hover) {\n &:hover {\n background-color: ${COLORS.GRAY_DARK};\n }\n }\n }\n `};\n }\n`;\n","import React, { FC, useCallback } from 'react';\n\nimport { TControlSize } from '../baseControlsData';\n\nimport { Label } from './styled';\n\nexport type TCheckboxType = 'default' | 'promo';\n\nexport interface ICheckboxProps {\n size?: TControlSize,\n checkType?: TCheckboxType,\n invertColor?: boolean,\n id?: string,\n name?: string,\n value?: string,\n checked?: boolean,\n disabled?: boolean,\n required?: boolean,\n onChange?: (event?: React.ChangeEvent) => void,\n className?: string,\n [key: string]: unknown,\n}\n\nconst BaseCheckbox: FC = ({\n size = 'XS',\n checkType = 'default',\n id,\n name = '',\n value = '',\n checked,\n disabled = false,\n required,\n children,\n onChange,\n className,\n ...props\n}) => {\n const onChangeHandler = useCallback((event: React.ChangeEvent) => {\n if (!disabled) {\n onChange && onChange(event);\n }\n }, [disabled, onChange]);\n\n return (\n \n );\n};\n\nexport default BaseCheckbox;\n","module.exports = \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAxMiAxMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTAuNzQ2MjE2IDYuMDM2ODhDMC43NDYyMTYgNS42MjI2NyAxLjA4MiA1LjI4Njg4IDEuNDk2MjIgNS4yODY4OEgxMC43MTYyQzExLjEzMDQgNS4yODY4OCAxMS40NjYyIDUuNjIyNjcgMTEuNDY2MiA2LjAzNjg4QzExLjQ2NjIgNi40NTEwOSAxMS4xMzA0IDYuNzg2ODggMTAuNzE2MiA2Ljc4Njg4SDEuNDk2MjJDMS4wODIgNi43ODY4OCAwLjc0NjIxNiA2LjQ1MTA5IDAuNzQ2MjE2IDYuMDM2ODhaIiBmaWxsPSIjRTMwODEzIi8+CjxwYXRoIGQ9Ik02LjEwNjIyIDExLjM5NjlDNS42OTIgMTEuMzk2OSA1LjM1NjIyIDExLjA2MTEgNS4zNTYyMiAxMC42NDY5TDUuMzU2MjIgMS40MjY4OEM1LjM1NjIyIDEuMDEyNjcgNS42OTIgMC42NzY4OCA2LjEwNjIyIDAuNjc2ODhDNi41MjA0MyAwLjY3Njg4IDYuODU2MjIgMS4wMTI2NyA2Ljg1NjIyIDEuNDI2ODhMNi44NTYyMiAxMC42NDY5QzYuODU2MjIgMTEuMDYxMSA2LjUyMDQzIDExLjM5NjkgNi4xMDYyMiAxMS4zOTY5WiIgZmlsbD0iI0UzMDgxMyIvPgo8L3N2Zz4K\"","module.exports = \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTAiIHZpZXdCb3g9IjAgMCAxNCAxMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMy41NjA3IDFDMTMuODUzNiAxLjI5Mjg5IDEzLjg1MzYgMS43Njc3NyAxMy41NjA3IDIuMDYwNjZMNi4yNDYyNyA5LjA2MzdDNS45NTM0MiA5LjM1NjU1IDUuNDc4NjMgOS4zNTY2IDUuMTg1NzIgOS4wNjM4MUwwLjg0MTU5MiA0LjcyMTA2QzAuNTQ4NjM4IDQuNDI4MjMgMC41NDg1MzggMy45NTMzNSAwLjg0MTM2OSAzLjY2MDRDMS4xMzQyIDMuMzY3NDQgMS42MDkwNyAzLjM2NzM0IDEuOTAyMDMgMy42NjAxOEw1LjcxNTgzIDcuNDcyODNMMTIuNSAxQzEyLjc5MjkgMC43MDcxMDcgMTMuMjY3OCAwLjcwNzEwNyAxMy41NjA3IDFaIiBmaWxsPSIjRkFGQUZBIi8+Cjwvc3ZnPgo=\""],"names":["CheckboxFilters","styled","breakePoints","CheckboxWrap","SBaseCheckbox","BaseCheckbox","FONTS","items","onChange","className","ST","map","item","id","checkType","checked","disabled","label","FiltersForTariffs","hasCityTariffs","hasVillageTariffs","tariffFiltersData","tariffSwitcherData","onToggleFilter","activeItem","hasBothTariffs","isDisplay","data-test","FilterMenu","TariffSwitcherWrap","p","SCheckboxFilters","wideBreakpoints","EMediaWidth","EVisibleSlides","desktop","sDesktop","laptop","ESortingKeys","line","isAuth","baseTariffs","sortField","WEIGHT","openPopup","useState","isClientSide","onClientSide","setOnClientSide","csrf","useSelector","selectCsrf","useEffect","hideArrows","setHideArrows","slideWidth","setSlideWidth","slideIndex","setSlideIndex","showRequestFormPopup","setShowRequestFormPopup","salePackageId","setSalePackageId","isResultOpened","resultTitle","resultText","resultType","EResultPopupStatus","popup","setPopup","openPopupResult","useCallback","ok","message","submitRequest","params","dataParams","resp","status","fio","phone","product_id","check_call_type","window","location","href","plan","undefined","doRequest","requestByConnection","isSuccess","payload","ERequestStatus","closePopup","state","isDesktop","useMatchMedia","isSDesktop","isLaptop","isMobile","mobile","sortedTariffsByKey","receivedTariffs","keyToSort","sort","a","b","currObj","nextObj","preparedTariffs","useMemo","result","tariffs","BUNDLES","INTERNET","INTERNET_LINES","length","renderTariffCards","tariff","TariffCard","openModal","productId","title","dangerouslySetInnerHTML","__html","body","afterSlide","withoutDots","withoutArrows","framePadding","cellSpacing","slidesToScroll","disableEdgeSwiping","easing","edgeEasing","PopupCallBack","isOpen","onClose","buttonText","option","category","CATEGORIES","PopupResult","text","type","breakpoints","LineContainer","GridContainer","LineTitle","COLORS","LineBody","CustomSwiper","NukaCarousel","NoSwiperContainer","lDesktop","tablet","sMobile","InternetRepresent","StyledGridContainer","getCheckboxSizes","size","getSizes","checkboxSizes","Label","font","invertColor","inputSize","withLabel","rMargin","checkMark","iconWidth","iconHeight","css","promoMark","promoIconSize","name","value","required","children","props","onChangeHandler","event","input","module","exports"],"sourceRoot":""}