@scbt-ecom/ui 0.15.0 → 0.15.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/hybrid.d.ts +1 -0
- package/dist/hybrid.js +238 -250
- package/dist/hybrid.js.map +1 -1
- package/dist/shared/ui/Ligal.d.ts +12 -0
- package/dist/shared/ui/index.d.ts +1 -0
- package/dist/widgets/footer/Footer.d.ts +5 -6
- package/dist/widgets/footer/model/defaultValues.d.ts +0 -1
- package/dist/widgets/footer/ui/index.d.ts +1 -1
- package/package.json +1 -1
- package/dist/widgets/footer/ui/Ligal.d.ts +0 -12
package/dist/hybrid.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hybrid.js","sources":["../lib/shared/utils/capitalize.ts","../lib/shared/utils/mergeRefs.ts","../lib/shared/ui/Section.tsx","../lib/shared/ui/Breadcrumbs.tsx","../lib/shared/ui/ButtonIcon.tsx","../lib/shared/ui/CustomLink.tsx","../lib/shared/ui/Document.tsx","../lib/shared/ui/PhoneView.tsx","../lib/shared/ui/ProgressBar.tsx","../lib/shared/ui/Skeleton.tsx","../lib/shared/ui/brandLogos.tsx","../lib/shared/ui/FloatButton.tsx","../lib/shared/validation/regExp.ts","../lib/shared/validation/messages.ts","../lib/shared/validation/zodValidation/dadataFio.ts","../lib/shared/validation/zodValidation/calendar.ts","../lib/shared/validation/zodValidation/phone.ts","../lib/shared/validation/zodValidation/otpCode.ts","../lib/shared/constants/designSystem/colors.ts","../lib/shared/constants/designSystem/others.ts","../lib/shared/constants/designSystem/typography.ts","../node_modules/tailwindcss/lib/util/createPlugin.js","../node_modules/tailwindcss/lib/public/create-plugin.js","../node_modules/tailwindcss/plugin.js","../node_modules/tailwindcss-animate/index.js","../lib/configs/tailwindConfigBase.ts","../lib/configs/tailwindPresets/extendsPreset.ts","../lib/configs/tailwindPresets/resetPreset.ts","../lib/shared/api/apiInstance.ts","../lib/widgets/footer/model/defaultValues.tsx","../lib/widgets/footer/ui/SocialLinks.tsx","../lib/widgets/footer/ui/PhonesBlock.tsx","../lib/widgets/footer/ui/NavLinks.tsx","../lib/widgets/footer/ui/Ligal.tsx","../lib/widgets/footer/ui/Copyright.tsx","../lib/widgets/footer/ui/FooterLogo.tsx","../lib/widgets/footer/ui/SiteMap.tsx","../lib/widgets/footer/Footer.tsx","../lib/widgets/pageHeader/PageHeader.tsx","../lib/widgets/stepper/ui/SingleStep.tsx","../lib/widgets/stepper/Stepper.tsx","../lib/widgets/longBanner/model/cva.ts","../lib/widgets/longBanner/ui/TextItem.tsx","../lib/widgets/longBanner/ui/Title.tsx","../lib/widgets/longBanner/ui/TextList.tsx","../lib/widgets/longBanner/LongBanner.tsx"],"sourcesContent":["export const capitalize = (str: string) => {\n return str\n .split('-')\n .map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())\n .join('-')\n}\n","import type React from 'react'\n\nexport const mergeRefs = <T>(...inputRefs: (React.Ref<T> | undefined)[]): React.Ref<T> | React.RefCallback<T> => {\n const filteredInputRefs = inputRefs.filter(Boolean)\n\n if (filteredInputRefs.length <= 1) {\n const firstRef = filteredInputRefs[0]\n\n return firstRef || null\n }\n\n return function mergedRefs(ref) {\n filteredInputRefs.forEach((inputRef) => {\n if (typeof inputRef === 'function') {\n inputRef(ref)\n } else if (inputRef) {\n ;(inputRef as React.MutableRefObject<T | null>).current = ref\n }\n })\n }\n}\n","import type { HTMLAttributes, ReactNode } from 'react'\nimport { cn } from '$/shared/utils'\n\nexport interface ISectionProps extends HTMLAttributes<HTMLDivElement> {\n children: ReactNode\n className?: string\n}\n\nexport const Section = ({ children, className, ...props }: ISectionProps) => {\n return (\n <section className={cn('pb-16 desktop:pb-20', className)} {...props}>\n {children}\n </section>\n )\n}\n","import { type ReactElement } from 'react'\nimport { cn } from '../utils'\nimport { Icon } from './icon/Icon'\n\nexport interface IBreadcrumbLink {\n label: string | ReactElement\n path: string\n isDisabled?: boolean\n}\ninterface IBreadcrumbLinkWithoutPath {\n label: string\n isDisabled?: boolean\n}\n\nexport type TLinksList = [...IBreadcrumbLink[], IBreadcrumbLinkWithoutPath]\n\nexport interface IBreadcrumbsProps {\n linksList: TLinksList\n}\n\n//TODO: Его должны переработать не использовать! DEPRECATED\n\nexport const Breadcrumbs = ({ linksList }: IBreadcrumbsProps) => {\n return (\n <div aria-label='Breadcrumb' className='flex max-w-[840px] items-center gap-2'>\n {linksList.map((link) => (\n <>\n {'path' in link ? (\n <div\n className={cn(\n 'flex items-center gap-1 rounded-sm border-2 border-solid border-transparent px-1 focus-within:border-primary-focus',\n { 'pointer-events-none !border-transparent': link?.isDisabled }\n )}\n >\n <a\n href={link.path}\n target='_blank'\n rel='noreferrer'\n className={cn(\n 'desk-body-regular-m text-color-primary-default outline-none hover:text-color-primary-hover focus:text-color-primary-default',\n { '!text-color-disabled': link?.isDisabled }\n )}\n >\n {link.label}\n </a>\n <Icon\n name='arrows/arrowRight'\n className={cn('size-4 text-icon-primary-default', { '!text-icon-disabled': link?.isDisabled })}\n />\n </div>\n ) : (\n <div aria-current='page' className='desk-body-regular-m text-color-blue-grey-600'>\n {link.label}\n </div>\n )}\n </>\n ))}\n </div>\n )\n}\n","import { type ComponentProps, forwardRef, type ReactElement } from 'react'\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport { cn } from '$/shared/utils'\n\ntype TButtonClasses = {\n button: string\n icon: string\n}\n\nconst buttonConfig = cva(\n 'group flex items-center justify-center cursor-pointer rounded-full outline-offset-[3px] outline-transparent outline-2 transition duration-12 active:scale-[0.97] disabled:pointer-events-none',\n {\n variants: {\n intent: {\n primary:\n 'text-icon-white bg-color-primary-default hover:bg-color-primary-hover active:bg-color-primary-hover focus:bg-color-primary-hover focus:outline-primary-focus disabled:bg-color-primary-disabled',\n secondary:\n 'text-icon-primary-default bg-color-transparent border border-solid outline-offset-4 border-primary-default hover:bg-color-primary-tr-hover hover:text-icon-primary-default hover:border-primary-hover active:bg-color-primary-tr-pressed active:border-primary-hover active:text-icon-primary-hover focus:bg-color-primary-tr-focus focus:outline-primary-focus disabled:bg-color-blue-grey-200 disabled:border-transparent disabled:text-icon-primary-disabled',\n ghost:\n 'text-icon-primary-default bg-color-transparent hover:bg-color-primary-tr-hover focus:bg-color-primary-tr-focus focus:outline-primary-focus active:text-icon-primary-hover active:bg-color-primary-tr-pressed disabled:bg-color-transparent disabled:text-icon-primary-disabled'\n },\n size: {\n sm: 'size-8',\n md: 'size-10',\n lg: 'size-12'\n }\n },\n defaultVariants: {\n intent: 'primary',\n size: 'lg'\n }\n }\n)\n\ntype TButtonProps = VariantProps<typeof buttonConfig>\n\nexport interface IButtonIconProps extends Omit<ComponentProps<'button'>, 'className'>, TButtonProps {\n children: ReactElement\n classes?: Partial<TButtonClasses>\n}\n\nexport const ButtonIcon = forwardRef<HTMLButtonElement, IButtonIconProps>(\n ({ size, intent, children, classes, type = 'button', ...props }, ref) => {\n return (\n <button ref={ref} type={type} className={cn(buttonConfig({ intent, size }), classes?.button)} {...props}>\n <span className={cn(classes?.icon)}>{children}</span>\n </button>\n )\n }\n)\n","import { type ComponentProps } from 'react'\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport { cn } from '../utils'\nimport { Icon, type TAllowedIcons } from './icon/Icon'\n\nconst customLinkConfig = cva(\n 'group outline-none transition-colors duration-100 p-[2px] rounded-sm border border-solid border-transparent',\n {\n variants: {\n intent: {\n blue: 'text-color-primary-default hover:text-color-primary-hover focus:text-color-primary-default focus:border-primary-focus',\n white: 'text-color-white hover:text-color-footer focus:text-color-white focus:border-primary-focus'\n },\n withUnderline: {\n true: 'underline underline-offset-4',\n false: ''\n },\n withIcon: {\n true: 'flex items-center gap-1',\n false: ''\n },\n disabled: {\n true: '!text-color-primary-disabled pointer-events-none !border-transparent',\n false: ''\n },\n size: {\n sm: 'desk-body-regular-m',\n md: 'desk-body-regular-l'\n }\n },\n defaultVariants: {\n intent: 'blue',\n withIcon: true,\n disabled: false,\n size: 'sm',\n withUnderline: false\n }\n }\n)\n\nconst linkArrowConfig = cva('size-6', {\n variants: {\n intent: {\n blue: 'text-icon-primary-default group-hover:text-icon-primary-hover group-focus:text-icon-primary-default ',\n white: 'text-icon-white group-hover:text-icon-footer group-focus:text-icon-white'\n },\n disabled: {\n true: '!text-icon-primary-disabled pointer-events-none',\n false: ''\n }\n },\n defaultVariants: {\n intent: 'blue',\n disabled: false\n }\n})\n\ntype TCustomLinkClasses = {\n link?: string\n icon?: string\n}\n\ntype TCustomLinkConfig = VariantProps<typeof customLinkConfig>\n\nexport interface ICustomLinkProps extends TCustomLinkConfig, Omit<ComponentProps<'a'>, 'className'> {\n icon?: TAllowedIcons\n classes?: TCustomLinkClasses\n}\n\nexport const CustomLink = ({\n intent,\n children,\n withIcon,\n disabled,\n size,\n icon = 'arrows/arrowLink',\n classes,\n withUnderline,\n ...props\n}: ICustomLinkProps) => {\n return (\n <a className={cn(customLinkConfig({ intent, withIcon, withUnderline, disabled, size }), classes?.link)} {...props}>\n {children}\n {withIcon && <Icon name={icon} className={cn(linkArrowConfig({ intent, disabled }), classes?.icon)} />}\n </a>\n )\n}\n","import { type ReactElement } from 'react'\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport { Icon, type TAllowedIcons } from './icon'\nimport { cn } from '$/shared/utils'\n\nconst iconConfig = cva('size-8 transition-colors', {\n variants: {\n intent: {\n outline: 'text-icon-secondary-dark-default group-hover:text-icon-secondary-dark-hover',\n filled: 'text-icon-primary-default group-hover:text-icon-primary-hover'\n }\n },\n defaultVariants: {\n intent: 'outline'\n }\n})\n\ntype TIconConfig = VariantProps<typeof iconConfig>\n\nconst iconVariant: Record<NonNullable<TIconConfig['intent']>, TAllowedIcons> = {\n filled: 'files/documentFilled',\n outline: 'files/documentOutline'\n}\n\nexport interface IDocumentProps extends TIconConfig {\n text: string | ReactElement\n size: number\n sizeType: 'КБ' | 'МБ'\n href: string\n}\n\nexport const Document = ({ text, size, sizeType, href, intent = 'outline' }: IDocumentProps) => {\n return (\n <a\n href={href}\n target='_blank'\n rel='noreferrer'\n tabIndex={0}\n className={cn(\n 'group flex cursor-pointer items-center gap-2 rounded-sm p-1 outline outline-2 outline-transparent transition-colors focus-within:outline-primary-focus desktop:max-w-[592px]'\n )}\n >\n <Icon name={iconVariant[intent!]} className={cn(iconConfig({ intent }))} />\n <div className={cn('flex flex-1 flex-col')}>\n <p className={cn('desk-body-medium-l text-color-dark')}>{text}</p>\n <div className={cn('desk-body-regular-m text-color-disabled')}>\n {size} {sizeType}\n </div>\n </div>\n </a>\n )\n}\n","import { type HTMLAttributes, type ReactElement } from 'react'\nimport { cn } from '../utils'\n\ninterface IPhoneViewClasses {\n wrapper?: string\n link?: string\n text?: string\n}\n\nexport interface IPhoneViewProps extends HTMLAttributes<HTMLDivElement> {\n phone: string | ReactElement\n text: string | ReactElement\n classes?: IPhoneViewClasses\n}\n\nexport const PhoneView = ({ phone, text, classes, ...props }: IPhoneViewProps) => {\n return (\n <div className={cn('flex w-max flex-col', classes?.wrapper)} {...props}>\n <a\n href={`tel:${phone}`}\n className={cn('mob-body-medium-l ml-auto text-color-dark desktop:desk-body-medium-l', classes?.link)}\n >\n {phone}\n </a>\n <p className={cn('desk-body-regular-s text-color-tetriary', classes?.text)}>{text}</p>\n </div>\n )\n}\n","import * as React from 'react'\nimport { cn } from '../utils'\n\ntype IProgressBarClasses = {\n wrapper: string\n topContent: string\n bottomContent: string\n progressBar: string\n progress: string\n loader: string\n}\n\nexport interface IProgressBarProps {\n topContent?: React.ReactElement\n bottomContent?: React.ReactElement\n progress: number\n maxPercent?: number\n classes?: Partial<IProgressBarClasses>\n}\n\nexport const ProgressBar = ({ topContent, bottomContent, progress, maxPercent = 100, classes }: IProgressBarProps) => {\n return (\n <div className={cn('flex w-full flex-col', classes?.wrapper)}>\n {topContent && <div className={cn('mb-2 flex justify-between gap-5', classes?.topContent)}>{topContent}</div>}\n\n <div className={cn('relative h-2 w-[328xp] rounded-md bg-color-blue-grey-100 desktop:w-[524px]', classes?.progressBar)}>\n <div\n style={{ width: `${progress}%` }}\n className={cn('relative z-10 h-2 rounded-md bg-color-positive transition-all', classes?.progress)}\n ></div>\n <span\n style={{ maxWidth: `${maxPercent}%` }}\n className={cn(\n 'progressBar-apply z-1 absolute top-1/2 h-full w-full -translate-y-1/2 animate-progress-loader rounded-md',\n classes?.loader\n )}\n ></span>\n </div>\n\n {bottomContent && <div className={cn('mt-2 flex justify-between gap-5', classes?.bottomContent)}>{bottomContent}</div>}\n </div>\n )\n}\n","import { cn } from '../utils'\n\nexport interface ISkeletonProps {\n className?: string\n}\n\nexport const Skeleton = ({ className }: ISkeletonProps) => {\n return <div className={cn('skeleton-apply h-full w-full', className)}></div>\n}\n","import type { ReactElement } from 'react'\nimport { Icon } from './icon/Icon'\n\nexport type TBrandLogoVariant = 'main' | 'white' | 'gray' | 'black' | 'business' | 'insurance'\ntype TBrandLogosVariants = Record<TBrandLogoVariant, ReactElement>\n\nexport const brandLogos: TBrandLogosVariants = {\n main: <Icon name='brandLogos/logoMain' />,\n white: <Icon name='brandLogos/logoWhite' />,\n gray: <Icon name='brandLogos/logoGray' />,\n black: <Icon name='brandLogos/logoBlack' />,\n business: <Icon name='brandLogos/logoBusiness' />,\n insurance: <Icon name='brandLogos/logoInsurance' />\n} as const\n","import { Button, type IButtonProps, ResponsiveContainer } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\ntype TFloatButtonClasses = {\n root?: string\n button?: string\n}\n\nexport interface IFloatButtonProps {\n isVisible: boolean\n classes?: TFloatButtonClasses\n children: React.ReactElement\n buttonProps?: IButtonProps\n}\n\nexport const FloatButton = ({ isVisible, classes, children, buttonProps }: IFloatButtonProps) => {\n return (\n <ResponsiveContainer\n className={cn(\n 'fixed bottom-0 left-1/2 z-[60] w-full max-w-[604px] -translate-x-1/2 translate-y-0 rounded-t-lg bg-color-white px-6 py-4 shadow-[0px_-6px_8px_0px_#2929290A] transition-transform duration-1000 desktop:hidden',\n { 'translate-y-[100%]': !isVisible },\n classes?.root\n )}\n >\n {children}\n <Button size='lg' className={cn('m-auto w-full', classes?.button)} {...buttonProps}>\n Оформить заявку\n </Button>\n </ResponsiveContainer>\n )\n}\n","export const RgxUnicode = /^[\\u0400-\\u04FF\\u00CB\\u00EB -]+$/ // Диапазон символов Unicode, включающий кириллические символы.*\nexport const RgxCheckForHyphen = /^(?:[^-]+(?:-[^-]+){0,4}|[^-]+)$/ // Проверяет количество дефисов a-b-c-d-e Валидный (до 4 дефисов), не валидный*\nexport const RgxPatronymic =\n /^[a-zA-Zа-яА-ЯёЁ]+(?:\\s*-\\s*[a-zA-Zа-яА-ЯёЁ]+){0,4}(?:\\s+[a-zA-Zа-яА-ЯёЁ]+(?:\\s*-\\s*[a-zA-Zа-яА-ЯёЁ]+){0,4})?$/i //Отчество для дадаты Отчество углы-ули Отчество-Отчество\n","export const VALIDATION_MESSAGES = {\n REQUIRED: 'Поле обязательно к заполнению',\n MIN_LENGTH: 'Минимальная длина символов должна быть не менее',\n MAX_LENGTH: 'Максимальная длина символов должна быть не более',\n FIX_LENGTH: 'Длина символов должна быть равна',\n MAX_LENGTH_ELEMENTS: 'Максимальное количество элементов должно быть не более',\n MIN_LENGTH_ELEMENTS: 'Минимальное количество элементов должно быть не менее',\n FIX_LENGTH_ELEMENTS: 'Количество элементов должно быть равно',\n INVALID_VALUE: 'Поле заполнено некорректно',\n INVALID_DATE: 'Введите корректную дату',\n FUTURE_DATE_NOT_ALLOWED: 'Нельзя выбрать дату позже текущей'\n} as const\n","import { z } from 'zod'\nimport { RgxCheckForHyphen, RgxPatronymic, RgxUnicode } from '../regExp'\n\nexport const formattedDadataFio = (value: string) => {\n const parts = value.trim().replace(/\\s+/g, ' ').split(' ')\n const [surname, name, ...patronymicArr] = parts\n const patronymic = patronymicArr?.join(' ')\n\n return {\n surname,\n name,\n patronymic\n }\n}\n\nexport const zodDadataFioSchema = z\n .string({ invalid_type_error: 'Обязательно к заполнению', required_error: 'Обязательно к заполнению' })\n .superRefine((value, ctx) => {\n if (value === '') {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Введите имя и фамилию'\n })\n }\n\n if (!RgxUnicode.test(value)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Должна быть только кириллица'\n })\n }\n\n const { surname, name, patronymic } = formattedDadataFio(value)\n\n if (!surname || !name) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Введите имя и фамилию'\n })\n }\n\n if (!RgxCheckForHyphen.test(name)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Неверно введено имя'\n })\n }\n\n if (!RgxCheckForHyphen.test(surname)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Неверно введена фамилия'\n })\n }\n\n if (patronymic) {\n if (!RgxPatronymic.test(patronymic)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Неверно введено отчество'\n })\n }\n }\n })\n","import { isValid, parse } from 'date-fns'\nimport { z } from 'zod'\nimport { VALIDATION_MESSAGES } from '../messages'\n\nexport const zodCalendarValidate = z\n .string()\n .length(10, { message: VALIDATION_MESSAGES.INVALID_DATE })\n .superRefine((val, ctx) => {\n const [day, month, year] = val?.split('.') ?? ''\n const parsed = parse(`${day}/${month}/${year}`, 'dd/MM/yyyy', new Date())\n\n if (+year <= 1950) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: VALIDATION_MESSAGES.INVALID_DATE\n })\n }\n\n if (!isValid(parsed)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: VALIDATION_MESSAGES.INVALID_DATE\n })\n }\n\n if (new Date().getTime() < new Date(parsed).getTime()) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: VALIDATION_MESSAGES.FUTURE_DATE_NOT_ALLOWED\n })\n }\n })\n","import { z } from 'zod'\n\nexport const zodPhoneSchema = z\n .string()\n .superRefine((value, ctx) => {\n const operatorCode = value.charAt(0)\n\n if (!['3', '4', '5', '6', '9'].includes(operatorCode)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Код города/оператора должен начинаться с цифры 3, 4, 5, 6 или 9'\n })\n }\n if (value.length !== 10) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Введите номер телефона полностью'\n })\n }\n })\n .transform((value) => `7${value}`)\n","import { z } from 'zod'\nimport { VALIDATION_MESSAGES } from '../messages'\n\nexport const zodOtpCodeSchema = z.coerce\n .number()\n .min(1000, `${VALIDATION_MESSAGES.FIX_LENGTH} 4`)\n .max(9999, `${VALIDATION_MESSAGES.FIX_LENGTH} 4`)\n .nullable()\n .superRefine((value, context) => {\n if (value === null) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_type,\n expected: 'number',\n received: 'null',\n message: `${VALIDATION_MESSAGES.FIX_LENGTH} 4`\n })\n }\n })\n .default(null)\n","const rootStyles = {\n transparent: 'transparent',\n current: 'currentColor',\n inherit: 'inherit',\n initial: 'initial'\n}\n\nconst allowedBackgroundColors = {\n 'blue-grey-100': '#f3f4f7',\n 'blue-grey-200': '#eaedf1',\n 'blue-grey-300': '#d4dbe2',\n 'blue-grey-500': '#a9b6c5',\n footer: '#40465a',\n negative: '#f42500',\n 'negative-light': '#ffd2ca',\n positive: '#76bc21',\n 'positive-light': '#e4f6ce',\n 'primary-default': '#003790',\n 'primary-focus': '#2477ff',\n 'primary-hover': '#042e73',\n 'primary-light-default': '#f0f4f9',\n 'primary-tr-focus': '#0037901f',\n 'primary-tr-hover': '#00379014',\n 'primary-tr-pressed': '#00379033',\n 'secondary-default': '#fc5055',\n 'secondary-hover': '#f12f34',\n warning: '#f49f00',\n 'warning-light': '#ffeecc',\n white: '#ffffff',\n 'primary-disabled': '#809bc7',\n 'secondary-disabled': '#FFB7BF',\n dark: '#292929',\n purple: '#5f40bd',\n 'purple-hover': '#52399d',\n overlay: '#0000004d',\n ...rootStyles\n} as const\n\nconst allowedTextColors = {\n dark: '#292929',\n disabled: '#a9b6c5',\n footer: '#c3c3c3',\n negative: '#f42500',\n positive: '#76bc21',\n 'primary-default': '#003790',\n 'primary-hover': '#042e73',\n secondary: '#40465a',\n tetriary: '#5a6e85',\n warning: '#f49f00',\n white: '#ffffff',\n 'primary-disabled': '#809bc7',\n 'blue-grey-600': '#94a4b7',\n ...rootStyles\n} as const\n\nconst allowedBannersBackgroundColors = {\n 'barvcray-200': '#ebeef4',\n 'barvcray-300': '#dde1e8',\n 'greymint-200': '#deecee',\n 'lavender-100': '#f7f7ff',\n 'lavender-200': '#ecedfa',\n 'lavender-300': '#d0d3f1',\n 'lightblue-300': '#bed3ec',\n 'mint-200': '#e4f5ed',\n 'salmon-200': '#faecec',\n 'skyblue-100': '#f4f8fe',\n 'skyblue-200': '#e7f3ff',\n 'skyblue-300': '#d9edff',\n ...rootStyles\n} as const\n\nconst allowedIconsColors = {\n 'accent-default': '#2477ff',\n 'accent-hover': '#0053da',\n 'blue-grey-100': '#f3f4f7',\n 'blue-grey-600': '#94a4b7',\n 'blue-grey-700': '#69809a',\n 'blue-grey-800': '#5a6e85',\n 'dark-default': '#292929',\n 'dark-hover': '#535353',\n disabled: '#a9b6c5',\n 'negative-default': '#f42500',\n 'negative-hover': '#c31e00',\n 'positive-default': '#76bc21',\n 'positive-hover': '#598d19',\n 'primary-default': '#003790',\n 'primary-hover': '#042e73',\n 'secondary-dark-default': '#f12f34',\n 'secondary-dark-hover': '#c40309',\n 'secondary-default': '#fc5055',\n 'secondary-hover': '#f12f34',\n 'warning-default': '#f49f00',\n 'warning-hover': '#d68b00',\n white: '#ffffff',\n 'primary-disabled': '#809bc7',\n footer: '#C3C3C3',\n ...rootStyles\n} as const\n\nconst allowedStrokeColors = {\n 'blue-grey-500': '#a9b6c5',\n 'blue-grey-700': '#69809a',\n 'blue-grey-800': '#5a6e85',\n dark: '#292929',\n negative: '#f42500',\n positive: '#76bc21',\n 'primary-default': '#003790',\n 'primary-focus': '#2477ff',\n 'primary-hover': '#042e73',\n 'primary-light': '#f0f4f9',\n 'secondary-default': '#fc5055',\n 'secondary-hover': '#f12f34',\n 'warm-grey-200': '#e4e4e4',\n 'warm-grey-300': '#c3c3c3',\n warning: '#f49f00',\n white: '#ffffff',\n 'primary-disabled': '#809bc7',\n ...rootStyles\n} as const\n\nexport { allowedStrokeColors, allowedBannersBackgroundColors, allowedIconsColors, allowedTextColors, allowedBackgroundColors }\n","const allowedBorderRadius = {\n none: '0',\n sm: '4px',\n md: '8px',\n lg: '16px',\n full: '9999px'\n}\n\nconst allowedBackgroundDeg = {\n 30: '30deg',\n 45: '45deg',\n 80: '80deg',\n 90: '90deg',\n 110: '110deg',\n 180: '180deg'\n}\n\nconst allowedZIndex = {\n 0: '0',\n 1: '1',\n 10: '10',\n 30: '30',\n 50: '50',\n 100: '100',\n 250: '250',\n 500: '500',\n 1000: '1000'\n}\n\nexport { allowedBorderRadius, allowedBackgroundDeg, allowedZIndex }\n","const allowedFontSize = {\n 12: '12px',\n 14: '14px',\n 16: '16px',\n 18: '18px',\n 20: '20px',\n 24: '24px',\n 28: '28px',\n 32: '32px',\n 40: '40px'\n}\n\nconst allowedLineHeight = {\n 16: '16px',\n 20: '20px',\n 22: '22px',\n 24: '24px',\n 30: '30px',\n 32: '32px',\n 40: '40px',\n 48: '48px'\n}\n\nconst allowedTextStyles = {\n /* # Headline */\n '.mob-headline-bold-m': {\n '@apply font-bold text-28 leading-32': ''\n },\n '.mob-headline-bold-s': {\n '@apply font-bold text-24 leading-30': ''\n },\n /* # Title */\n '.mob-title-bold-l': {\n '@apply font-bold text-20 leading-24': ''\n },\n '.mob-title-bold-m': {\n '@apply font-bold text-18 leading-22': ''\n },\n /* # Body */\n '.mob-body-medium-l': {\n '@apply font-medium text-16 leading-22': ''\n },\n '.mob-body-regular-l': {\n '@apply font-normal text-16 leading-22': ''\n },\n '.mob-body-medium-m': {\n '@apply font-medium text-14 leading-20': ''\n },\n '.mob-body-regular-m': {\n '@apply font-normal text-14 leading-20': ''\n },\n '.mob-body-regular-s': {\n '@apply font-normal text-12 leading-20': ''\n },\n\n /* -------- Desktop Typography -------- */\n /* # Headline */\n '.desk-headline-bold-l': {\n '@apply font-bold text-40 leading-48': ''\n },\n '.desk-headline-bold-m': {\n '@apply font-bold text-32 leading-40': ''\n },\n\n /* # Title */\n '.desk-title-bold-l': {\n '@apply font-bold text-24 leading-30': ''\n },\n '.desk-title-bold-s': {\n '@apply font-bold text-18 leading-22': ''\n },\n\n /* # Body */\n '.desk-body-medium-l': {\n '@apply font-medium text-16 leading-22': ''\n },\n '.desk-body-regular-l': {\n '@apply font-normal text-16 leading-22': ''\n },\n '.desk-body-regular-m': {\n '@apply font-normal text-14 leading-20': ''\n },\n '.desk-body-regular-s': {\n '@apply font-normal text-12 leading-16': ''\n }\n}\n\nexport { allowedLineHeight, allowedFontSize, allowedTextStyles }\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function() {\n return _default;\n }\n});\nfunction createPlugin(plugin, config) {\n return {\n handler: plugin,\n config\n };\n}\ncreatePlugin.withOptions = function(pluginFunction, configFunction = ()=>({})) {\n const optionsFunction = function(options) {\n return {\n __options: options,\n handler: pluginFunction(options),\n config: configFunction(options)\n };\n };\n optionsFunction.__isOptionsFunction = true;\n // Expose plugin dependencies so that `object-hash` returns a different\n // value if anything here changes, to ensure a rebuild is triggered.\n optionsFunction.__pluginFunction = pluginFunction;\n optionsFunction.__configFunction = configFunction;\n return optionsFunction;\n};\nconst _default = createPlugin;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function() {\n return _default;\n }\n});\nconst _createPlugin = /*#__PURE__*/ _interop_require_default(require(\"../util/createPlugin\"));\nfunction _interop_require_default(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nconst _default = _createPlugin.default;\n","let createPlugin = require('./lib/public/create-plugin')\nmodule.exports = (createPlugin.__esModule ? createPlugin : { default: createPlugin }).default\n","const plugin = require(\"tailwindcss/plugin\")\n\nfunction filterDefault(values) {\n\treturn Object.fromEntries(\n\t\tObject.entries(values).filter(([key]) => key !== \"DEFAULT\"),\n\t)\n}\n\nmodule.exports = plugin(\n\t({ addUtilities, matchUtilities, theme }) => {\n\t\taddUtilities({\n\t\t\t\"@keyframes enter\": theme(\"keyframes.enter\"),\n\t\t\t\"@keyframes exit\": theme(\"keyframes.exit\"),\n\t\t\t\".animate-in\": {\n\t\t\t\tanimationName: \"enter\",\n\t\t\t\tanimationDuration: theme(\"animationDuration.DEFAULT\"),\n\t\t\t\t\"--tw-enter-opacity\": \"initial\",\n\t\t\t\t\"--tw-enter-scale\": \"initial\",\n\t\t\t\t\"--tw-enter-rotate\": \"initial\",\n\t\t\t\t\"--tw-enter-translate-x\": \"initial\",\n\t\t\t\t\"--tw-enter-translate-y\": \"initial\",\n\t\t\t},\n\t\t\t\".animate-out\": {\n\t\t\t\tanimationName: \"exit\",\n\t\t\t\tanimationDuration: theme(\"animationDuration.DEFAULT\"),\n\t\t\t\t\"--tw-exit-opacity\": \"initial\",\n\t\t\t\t\"--tw-exit-scale\": \"initial\",\n\t\t\t\t\"--tw-exit-rotate\": \"initial\",\n\t\t\t\t\"--tw-exit-translate-x\": \"initial\",\n\t\t\t\t\"--tw-exit-translate-y\": \"initial\",\n\t\t\t},\n\t\t})\n\n\t\tmatchUtilities(\n\t\t\t{\n\t\t\t\t\"fade-in\": (value) => ({ \"--tw-enter-opacity\": value }),\n\t\t\t\t\"fade-out\": (value) => ({ \"--tw-exit-opacity\": value }),\n\t\t\t},\n\t\t\t{ values: theme(\"animationOpacity\") },\n\t\t)\n\n\t\tmatchUtilities(\n\t\t\t{\n\t\t\t\t\"zoom-in\": (value) => ({ \"--tw-enter-scale\": value }),\n\t\t\t\t\"zoom-out\": (value) => ({ \"--tw-exit-scale\": value }),\n\t\t\t},\n\t\t\t{ values: theme(\"animationScale\") },\n\t\t)\n\n\t\tmatchUtilities(\n\t\t\t{\n\t\t\t\t\"spin-in\": (value) => ({ \"--tw-enter-rotate\": value }),\n\t\t\t\t\"spin-out\": (value) => ({ \"--tw-exit-rotate\": value }),\n\t\t\t},\n\t\t\t{ values: theme(\"animationRotate\") },\n\t\t)\n\n\t\tmatchUtilities(\n\t\t\t{\n\t\t\t\t\"slide-in-from-top\": (value) => ({\n\t\t\t\t\t\"--tw-enter-translate-y\": `-${value}`,\n\t\t\t\t}),\n\t\t\t\t\"slide-in-from-bottom\": (value) => ({\n\t\t\t\t\t\"--tw-enter-translate-y\": value,\n\t\t\t\t}),\n\t\t\t\t\"slide-in-from-left\": (value) => ({\n\t\t\t\t\t\"--tw-enter-translate-x\": `-${value}`,\n\t\t\t\t}),\n\t\t\t\t\"slide-in-from-right\": (value) => ({\n\t\t\t\t\t\"--tw-enter-translate-x\": value,\n\t\t\t\t}),\n\t\t\t\t\"slide-out-to-top\": (value) => ({\n\t\t\t\t\t\"--tw-exit-translate-y\": `-${value}`,\n\t\t\t\t}),\n\t\t\t\t\"slide-out-to-bottom\": (value) => ({\n\t\t\t\t\t\"--tw-exit-translate-y\": value,\n\t\t\t\t}),\n\t\t\t\t\"slide-out-to-left\": (value) => ({\n\t\t\t\t\t\"--tw-exit-translate-x\": `-${value}`,\n\t\t\t\t}),\n\t\t\t\t\"slide-out-to-right\": (value) => ({\n\t\t\t\t\t\"--tw-exit-translate-x\": value,\n\t\t\t\t}),\n\t\t\t},\n\t\t\t{ values: theme(\"animationTranslate\") },\n\t\t)\n\n\t\tmatchUtilities(\n\t\t\t{ duration: (value) => ({ animationDuration: value }) },\n\t\t\t{ values: filterDefault(theme(\"animationDuration\")) },\n\t\t)\n\n\t\tmatchUtilities(\n\t\t\t{ delay: (value) => ({ animationDelay: value }) },\n\t\t\t{ values: theme(\"animationDelay\") },\n\t\t)\n\n\t\tmatchUtilities(\n\t\t\t{ ease: (value) => ({ animationTimingFunction: value }) },\n\t\t\t{ values: filterDefault(theme(\"animationTimingFunction\")) },\n\t\t)\n\n\t\taddUtilities({\n\t\t\t\".running\": { animationPlayState: \"running\" },\n\t\t\t\".paused\": { animationPlayState: \"paused\" },\n\t\t})\n\n\t\tmatchUtilities(\n\t\t\t{ \"fill-mode\": (value) => ({ animationFillMode: value }) },\n\t\t\t{ values: theme(\"animationFillMode\") },\n\t\t)\n\n\t\tmatchUtilities(\n\t\t\t{ direction: (value) => ({ animationDirection: value }) },\n\t\t\t{ values: theme(\"animationDirection\") },\n\t\t)\n\n\t\tmatchUtilities(\n\t\t\t{ repeat: (value) => ({ animationIterationCount: value }) },\n\t\t\t{ values: theme(\"animationRepeat\") },\n\t\t)\n\t},\n\t{\n\t\ttheme: {\n\t\t\textend: {\n\t\t\t\tanimationDelay: ({ theme }) => ({\n\t\t\t\t\t...theme(\"transitionDelay\"),\n\t\t\t\t}),\n\t\t\t\tanimationDuration: ({ theme }) => ({\n\t\t\t\t\t0: \"0ms\",\n\t\t\t\t\t...theme(\"transitionDuration\"),\n\t\t\t\t}),\n\t\t\t\tanimationTimingFunction: ({ theme }) => ({\n\t\t\t\t\t...theme(\"transitionTimingFunction\"),\n\t\t\t\t}),\n\t\t\t\tanimationFillMode: {\n\t\t\t\t\tnone: \"none\",\n\t\t\t\t\tforwards: \"forwards\",\n\t\t\t\t\tbackwards: \"backwards\",\n\t\t\t\t\tboth: \"both\",\n\t\t\t\t},\n\t\t\t\tanimationDirection: {\n\t\t\t\t\tnormal: \"normal\",\n\t\t\t\t\treverse: \"reverse\",\n\t\t\t\t\talternate: \"alternate\",\n\t\t\t\t\t\"alternate-reverse\": \"alternate-reverse\",\n\t\t\t\t},\n\t\t\t\tanimationOpacity: ({ theme }) => ({\n\t\t\t\t\tDEFAULT: 0,\n\t\t\t\t\t...theme(\"opacity\"),\n\t\t\t\t}),\n\t\t\t\tanimationTranslate: ({ theme }) => ({\n\t\t\t\t\tDEFAULT: \"100%\",\n\t\t\t\t\t...theme(\"translate\"),\n\t\t\t\t}),\n\t\t\t\tanimationScale: ({ theme }) => ({\n\t\t\t\t\tDEFAULT: 0,\n\t\t\t\t\t...theme(\"scale\"),\n\t\t\t\t}),\n\t\t\t\tanimationRotate: ({ theme }) => ({\n\t\t\t\t\tDEFAULT: \"30deg\",\n\t\t\t\t\t...theme(\"rotate\"),\n\t\t\t\t}),\n\t\t\t\tanimationRepeat: {\n\t\t\t\t\t0: \"0\",\n\t\t\t\t\t1: \"1\",\n\t\t\t\t\tinfinite: \"infinite\",\n\t\t\t\t},\n\t\t\t\tkeyframes: {\n\t\t\t\t\tenter: {\n\t\t\t\t\t\tfrom: {\n\t\t\t\t\t\t\topacity: \"var(--tw-enter-opacity, 1)\",\n\t\t\t\t\t\t\ttransform:\n\t\t\t\t\t\t\t\t\"translate3d(var(--tw-enter-translate-x, 0), var(--tw-enter-translate-y, 0), 0) scale3d(var(--tw-enter-scale, 1), var(--tw-enter-scale, 1), var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\texit: {\n\t\t\t\t\t\tto: {\n\t\t\t\t\t\t\topacity: \"var(--tw-exit-opacity, 1)\",\n\t\t\t\t\t\t\ttransform:\n\t\t\t\t\t\t\t\t\"translate3d(var(--tw-exit-translate-x, 0), var(--tw-exit-translate-y, 0), 0) scale3d(var(--tw-exit-scale, 1), var(--tw-exit-scale, 1), var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n)\n","import type { Config } from 'tailwindcss'\nimport plugin from 'tailwindcss/plugin'\nimport tailwindAnimation from 'tailwindcss-animate'\nimport {\n allowedBackgroundColors,\n allowedBackgroundDeg,\n allowedBannersBackgroundColors,\n allowedBorderRadius,\n allowedFontSize,\n allowedIconsColors,\n allowedLineHeight,\n allowedStrokeColors,\n allowedTextColors,\n allowedTextStyles\n} from '../shared/constants'\n\nexport const tailwindConfigBase: Omit<Config, 'content'> = {\n theme: {\n backgroundColor: {\n color: allowedBackgroundColors,\n banner: allowedBannersBackgroundColors,\n icon: allowedIconsColors\n },\n textColor: {\n icon: allowedIconsColors,\n color: allowedTextColors\n },\n fill: allowedIconsColors,\n stroke: allowedIconsColors,\n borderColor: allowedStrokeColors,\n outlineColor: allowedStrokeColors,\n borderRadius: allowedBorderRadius,\n fontFamily: { roboto: ['var(--ff-roboto)', 'sans-serif'] },\n fontSize: allowedFontSize,\n lineHeight: allowedLineHeight,\n gradientColorStops: allowedBackgroundColors,\n boxShadow: {\n sm: '0 8px 20px 0 rgba(0, 0, 0, 0.08)',\n md: '0 12px 20px 0 rgba(0, 33, 87, 0.10)',\n lg: '0 16px 24px 0 rgba(0, 33, 87, 0.16)'\n },\n extend: {\n bgGradientDeg: allowedBackgroundDeg,\n width: {\n 'popper-content': 'var(--radix-popover-content-available-width)',\n 'popper-trigger': 'var(--radix-popover-trigger-width)',\n 'autocomplete-input': 'var(--input-width)',\n 'select-trigger': 'var(--button-width)'\n },\n transitionDuration: {\n DEFAULT: '0.3s',\n 12: '0.12s',\n 15: '0.15s',\n 2: '2s'\n },\n transitionTimingFunction: {\n DEFAULT: 'ease-in-out'\n },\n keyframes: {\n slideDown: {\n from: { height: '0px' },\n to: { height: 'var(--radix-accordion-content-height)' }\n },\n slideUp: {\n from: { height: 'var(--radix-accordion-content-height)' },\n to: { height: '0px' }\n },\n 'scale-in': {\n from: { opacity: '0', scale: '0' },\n to: { opacity: '1', scale: '1' }\n },\n 'progress-loader': {\n '100%': {\n backgroundPosition: '100% 100%'\n }\n },\n 'caret-blink': {\n '0%,70%,100%': { opacity: '1' },\n '20%,50%': { opacity: '0' }\n },\n shine: {\n to: {\n 'background-position-x': '-200%'\n }\n }\n },\n animation: {\n slideDown: 'slideDown 0.3s cubic-bezier(0.87, 0, 0.13, 1)',\n slideUp: 'slideUp 0.3s cubic-bezier(0.87, 0, 0.13, 1)',\n 'scale-in': 'scale-in 0.3s ease-in-out',\n 'progress-loader': 'progress-loader 250s linear infinite',\n 'caret-blink': 'caret-blink 1.25s ease-out infinite'\n }\n }\n },\n plugins: [\n tailwindAnimation,\n plugin(({ addComponents }) => {\n addComponents(allowedTextStyles)\n }),\n plugin(function ({ matchUtilities, theme }) {\n matchUtilities(\n {\n 'bg-deg-gradient': (angle) => ({\n 'background-image': `linear-gradient(${angle}, var(--tw-gradient-stops))`\n })\n },\n {\n values: Object.assign(theme('bgGradientDeg', {}), {})\n }\n )\n })\n ]\n}\n","import type { Config } from 'tailwindcss'\n\nexport const extendsPreset: Omit<Config, 'content'> = {\n theme: {\n extend: {\n transitionDuration: {\n DEFAULT: '0.3s',\n 12: '0.12s',\n 15: '0.15s',\n 2: '2s',\n 333: '333s'\n },\n transitionTimingFunction: {\n DEFAULT: 'ease-in-out'\n },\n keyframes: {\n slideDown: {\n from: { height: '0px' },\n to: { height: 'var(--radix-accordion-content-height)' }\n },\n slideUp: {\n from: { height: 'var(--radix-accordion-content-height)' },\n to: { height: '0px' }\n },\n 'scale-in': {\n from: { opacity: '0', scale: '0' },\n to: { opacity: '1', scale: '1' }\n },\n 'progress-loader': {\n '100%': {\n backgroundPosition: '100% 100%'\n }\n }\n },\n animation: {\n slideDown: 'slideDown 0.3s cubic-bezier(0.87, 0, 0.13, 1)',\n slideUp: 'slideUp 0.3s cubic-bezier(0.87, 0, 0.13, 1)',\n 'scale-in': 'scale-in 0.3s ease-in-out',\n 'progress-loader': 'progress-loader 250s linear infinite'\n }\n }\n }\n}\n","// Тут через алиасы не импортируй, иначе не будет работать\nimport type { Config } from 'tailwindcss'\nimport plugin from 'tailwindcss/plugin'\nimport tailwindAnimation from 'tailwindcss-animate'\nimport {\n allowedBackgroundColors,\n allowedBackgroundDeg,\n allowedBannersBackgroundColors,\n allowedBorderRadius,\n allowedFontSize,\n allowedIconsColors,\n allowedLineHeight,\n allowedStrokeColors,\n allowedTextColors,\n allowedTextStyles,\n allowedZIndex\n} from '../../shared/constants'\n\nexport const resetPreset: Omit<Config, 'content'> = {\n theme: {\n screens: {\n mobile: { max: '1187px' },\n desktop: '1188px'\n },\n backgroundColor: {\n color: allowedBackgroundColors,\n banner: allowedBannersBackgroundColors,\n icon: allowedIconsColors\n },\n textColor: {\n icon: allowedIconsColors,\n color: allowedTextColors\n },\n fill: allowedIconsColors,\n stroke: allowedIconsColors,\n borderColor: allowedStrokeColors,\n outlineColor: allowedStrokeColors,\n borderRadius: allowedBorderRadius,\n fontFamily: { roboto: ['var(--ff-roboto)', 'sans-serif'] },\n fontSize: allowedFontSize,\n lineHeight: allowedLineHeight,\n gradientColorStops: allowedBackgroundColors,\n boxShadow: {\n sm: '0 8px 20px 0 rgba(0, 0, 0, 0.08)',\n md: '0 12px 20px 0 rgba(0, 33, 87, 0.10)',\n lg: '0 16px 24px 0 rgba(0, 33, 87, 0.16)'\n },\n zIndex: allowedZIndex,\n extend: {\n bgGradientDeg: allowedBackgroundDeg\n }\n },\n plugins: [\n tailwindAnimation,\n plugin(({ addComponents }) => {\n addComponents(allowedTextStyles)\n }),\n plugin(function ({ matchUtilities, theme }) {\n matchUtilities(\n {\n 'bg-deg-gradient': (angle) => ({\n 'background-image': `linear-gradient(${angle}, var(--tw-gradient-stops))`\n })\n },\n {\n values: Object.assign(theme('bgGradientDeg', {}), {})\n }\n )\n })\n ]\n}\n","export type RequestMethod = { method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH' }\nexport type ApiInstance = {\n baseUrl: string\n url: string\n init?: RequestInit & RequestMethod\n}\n\nexport class ApiError extends Error {\n constructor(public response: Response) {\n super('ApiError: ' + response.status)\n }\n}\n\nexport const defaultHeaders = {\n 'Content-Type': 'application/json'\n}\n\nexport const apiInstance = async <T>({ url, init, baseUrl }: ApiInstance) => {\n const headers = init?.headers ?? {}\n const body = init?.body && init?.body\n\n const result = await fetch(`${baseUrl}${url}`, {\n headers: {\n ...defaultHeaders,\n ...headers\n },\n body,\n ...init\n })\n\n if (!result.ok) {\n throw new ApiError(result)\n }\n\n const data = (await result.json()) as Promise<T>\n return data\n}\n","import type { IFooterNavLinks, IFooterPhones, IFooterSocialLinks } from './types'\n\nexport const defaultCopyright = (\n <>\n © 2004-2024, ПАО «Совкомбанк». Все права защищены. <br className='mobile:hidden' /> Генеральная лицензия Банка России №963 от\n 5 декабря 2014 г.\n </>\n)\n\nexport const defaultLigal = `Кредит на бизнес цели, срок 3, 6, 9, 12, 18, 24, 36, 48, 60 мес. Ставка – от 22,9%*. *Точная процентная ставка\n устанавливается по соглашению сторон и определяется исходя из платёжеспособности и кредитоспособности клиента, а также\n иных индивидуальных особенностей клиента. Сумма 100 000 – 50 000 000 руб. Кредит выдается на карту “Халва”, открытый в\n Банке. Банк вправе отказать в предоставлении кредита без объяснения причины, а также запросить дополнительную информацию о\n клиенте. Предварительное одобрение не влечет обязательств Банка по выдаче кредита. В некоторых случаях срок рассмотрения\n заявки может составлять до 3 рабочих дней. Полный электронный документооборот при наличии открытого р/с в ПАО «Совкомбанк»\n и действующей ЭЦП. Условия рекламы действительны на 20.02.2024г.`\n\nexport const defaultPhones: IFooterPhones[] = [\n { phone: '8 800 100-00-06', text: 'Звонок по России (бесплатно)' },\n { phone: '+7 (495) 988 00 00', text: 'Для звонков из-за рубежа (платно)' }\n]\n\nexport const defaultSocialsLinks: IFooterSocialLinks[] = [\n { iconName: 'social/vk', href: 'https://vk.com/sovcombank' },\n { iconName: 'social/telegram', href: 'https://t.me/sovcombankofficial' },\n { iconName: 'social/classmates', href: 'https://ok.ru/paosovcombank' }\n]\n\nexport const defaultNavigationLinks: IFooterNavLinks[] = [\n {\n groupLabel: 'Совкомбанк',\n links: [\n { text: 'О банке', href: '/' },\n { text: 'Реквизиты и лицензии', href: '/' },\n { text: 'Пресс-центр', href: '/' },\n { text: 'Удостоверяющий центр ПАО «Совкомбанк»', href: '/' },\n { text: 'Работа у нас', href: '/' },\n { text: 'Контакты', href: '/' },\n { text: 'Раскрытие информации', href: '/' },\n { text: 'Страница раскрытия информации в Интерфакс', href: '/' },\n { text: 'Реализация залогового имущества', href: '/' },\n { text: 'Клиентам и партнерам', href: '/' },\n { text: 'Биометрия', href: '/' },\n { text: 'Стандарты безопасности', href: '/' },\n { text: 'Информация о процентных ставках по договорам банковского вклада с физическими лицами', href: '/' },\n { text: 'ООО «Совком Финанс»', href: '/' },\n { text: 'Безопасность', href: '/' }\n ]\n },\n {\n groupLabel: 'Сервисы',\n links: [\n { text: 'Подарочная карта «Халва»', href: '/' },\n { text: 'Страховые продукты', href: '/' },\n { text: 'МультиЮрист', href: '/' },\n { text: 'Единая социальная карта «Уралочка»', href: '/' },\n { text: 'Единая Карта Жителя Мурманской области', href: '/' },\n { text: 'Безопасные расчёты', href: '/' },\n { text: 'Улучшение кредитной истории', href: '/' },\n { text: 'Дистанционные сервисы Совкомбанка', href: '/' },\n { text: 'Программы реструктуризации долга', href: '/' }\n ]\n },\n {\n groupLabel: 'Услуги банка',\n links: [\n { text: 'Карты', href: '/' },\n { text: 'Кредиты', href: '/' },\n { text: 'Кредиты наличными', href: '/' },\n { text: 'Ипотека', href: '/' },\n { text: 'Автокредиты', href: '/' },\n { text: 'Кредитный калькулятор', href: '/' },\n { text: 'Вклады', href: '/' },\n { text: 'Инвестиции', href: '/' },\n { text: 'Платежи', href: '/' },\n { text: 'Сервисы', href: '/' },\n { text: 'Малому бизнесу и ИП', href: '/' },\n { text: 'Корпоративным клиентам', href: '/' },\n { text: 'CIB', href: '/' },\n { text: 'Драгоценные металлы в слитках', href: '/' },\n { text: 'Счета в драгоценных металлах', href: '/' }\n ]\n },\n {\n groupLabel: 'Клиентам других банков',\n links: [\n { text: 'Держателям карт рассрочки Банка Хоум Кредит', href: '/' },\n { text: 'ПАО КБ «Восточный»', href: '/' },\n { text: 'Держателям карт «Совесть»', href: '/' },\n { text: 'АО «Нордеа Банк»', href: '/' },\n { text: 'ЗАО «ДжиИ Мани банк»', href: '/' },\n { text: 'АО «Меткомбанк»', href: '/' },\n { text: 'АКБ «РосЕвроБанк» (АО)', href: '/' },\n { text: 'ПАО «Татфондбанк»', href: '/' },\n { text: 'АО АКБ «Экспресс-Волга»', href: '/' },\n { text: 'АО «ВКАБАНК»', href: '/' },\n { text: 'ООО «ОНЕЙ БАНК»', href: '/' },\n { text: 'АО «Евразийский»', href: '/' },\n { text: 'АО «НФК»', href: '/' },\n { text: 'ООО «РТС-Капитал»', href: '/' },\n { text: 'ООО «ИК Септем Капитал»', href: '/' },\n { text: 'Помощь', href: '/' },\n { text: 'Офисы и банкоматы', href: '/' }\n ]\n }\n]\n","import type { IFooterSocialLinks } from '../model/types'\nimport { Icon } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TSocialLinksClasses = {\n socialRoot?: string\n socialLink?: string\n socialIcon?: string\n}\n\ninterface ISocialLinksProps {\n socialsLinks: IFooterSocialLinks[]\n classes?: TSocialLinksClasses\n}\n\nexport const SocialLinks = ({ socialsLinks, classes }: ISocialLinksProps) => {\n return (\n <div className={cn('mt-4 flex items-center gap-2 desktop:mt-6', classes?.socialRoot)}>\n {socialsLinks?.map(({ iconName, href }) => (\n <a\n className={cn('flex size-8 items-center justify-center rounded-full bg-[#52576a] p-2', classes?.socialLink)}\n href={href}\n key={href}\n aria-label={iconName.replace('social/', '')}\n >\n <Icon name={iconName} className={cn('h-full w-full text-icon-white', classes?.socialIcon)} />\n </a>\n ))}\n </div>\n )\n}\n","import type { IFooterPhones } from '../model/types'\nimport { PhoneView } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TPhoneBlockClasses = {\n phonesRoot?: string\n phoneWrapper?: string\n phoneText?: string\n phoneLink?: string\n}\n\ninterface IPhonesBlockProps {\n phones: IFooterPhones[]\n classes?: TPhoneBlockClasses\n}\n\nexport const PhonesBlock = ({ phones, classes }: IPhonesBlockProps) => {\n return (\n <div className={cn('flex flex-col gap-4 desktop:items-end', classes?.phonesRoot)}>\n {phones?.map(({ phone, text }) => (\n <PhoneView\n key={phone}\n phone={phone}\n text={text}\n classes={{\n wrapper: cn(classes?.phoneWrapper),\n text: cn('text-color-footer', classes?.phoneText),\n link: cn('text-color-white mobile:m-0', classes?.phoneLink)\n }}\n />\n ))}\n </div>\n )\n}\n","import type { IFooterNavLinks } from '../model/types'\nimport { CustomLink } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TNavigationLinksClasses = {\n navRoot?: string\n navGroup?: string\n navLabel?: string\n navLinks?: string\n navLink?: string\n navLinkIcon?: string\n}\n\ninterface INavLinksProps {\n navigationLinks: IFooterNavLinks[]\n classes?: TNavigationLinksClasses\n}\n\nexport const NavLinks = ({ navigationLinks, classes }: INavLinksProps) => {\n return (\n <div\n className={cn(\n 'mt-6 grid grid-cols-1 gap-6 border-b border-blue-grey-500 pb-6 desktop:my-8 desktop:grid-cols-4 desktop:gap-10 desktop:pb-8',\n classes?.navRoot\n )}\n >\n {navigationLinks?.map(({ groupLabel, links }) => (\n <div key={groupLabel} className={cn('flex flex-col gap-4', classes?.navGroup)}>\n <div className={cn('desk-body-medium-l text-color-white', classes?.navLabel)}>{groupLabel}</div>\n <div className={cn('flex flex-col gap-1', classes?.navLinks)}>\n {links?.map(({ text, href }) => (\n <CustomLink\n key={text}\n href={href}\n aria-label={text}\n intent='white'\n classes={{\n link: classes?.navLink,\n icon: classes?.navLinkIcon\n }}\n >\n {text}\n </CustomLink>\n ))}\n </div>\n </div>\n ))}\n </div>\n )\n}\n","'use client'\n\nimport * as React from 'react'\nimport { cn } from '$/shared//utils'\n\nexport type TLigalClasses = {\n ligalRoot?: string\n ligalText?: string\n ligalButton?: string\n}\n\ninterface ILigalProps {\n ligal: string | React.ReactElement\n classes?: TLigalClasses\n}\n\nexport const Ligal = ({ ligal, classes }: ILigalProps) => {\n const [isExpanded, setIsExpanded] = React.useState(false)\n const [isClamped, setIsClamped] = React.useState(false)\n const ligalRef = React.useRef<HTMLParagraphElement | null>(null)\n\n React.useEffect(() => {\n const element = ligalRef.current\n if (element) {\n setIsClamped(element.scrollHeight > element.clientHeight)\n }\n }, [])\n\n return (\n <div className={cn('mt-8 flex flex-col gap-4', classes?.ligalRoot)}>\n <p\n ref={ligalRef}\n className={cn('desk-body-regular-m text-color-footer', { 'line-clamp-3': !isExpanded }, classes?.ligalText)}\n >\n {ligal}\n </p>\n\n {isClamped && (\n <div\n tabIndex={0}\n role='button'\n onClick={() => setIsExpanded((prev) => !prev)}\n className={cn(\n 'desk-body-regular-l w-max cursor-pointer font-medium text-color-footer transition-colors hover:text-color-white',\n classes?.ligalButton\n )}\n >\n Подробнее\n </div>\n )}\n </div>\n )\n}\n","import * as React from 'react'\nimport { cn } from '$/shared/utils'\n\nexport type TCopyrightClasses = {\n copyRight?: string\n}\n\ninterface ICopyrightProps {\n text?: string | React.ReactElement\n classes?: TCopyrightClasses\n withSiteMap?: boolean\n}\n\nexport const Copyright = ({ text, classes, withSiteMap }: ICopyrightProps) => {\n return (\n <div className={cn('desk-body-regular-m text-color-footer', { 'mt-6 desktop:mt-8': !withSiteMap }, classes?.copyRight)}>\n {text}\n </div>\n )\n}\n","import { Icon } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TFooterLogoClasses = {\n footerLogo?: string\n footerLogoIcon?: string\n}\n\nexport interface IFooterLogoProps {\n classes?: TFooterLogoClasses\n}\n\nexport const FooterLogo = ({ classes }: IFooterLogoProps) => {\n return (\n <a\n aria-label='logo'\n href='https://sovcombank.ru/'\n className={cn('block h-[24px] w-[132px] desktop:h-[32px] desktop:w-[194px]', classes?.footerLogo)}\n >\n <Icon name='brandLogos/logoWhite' className={cn('size-full', classes?.footerLogoIcon)} />\n </a>\n )\n}\n","import { CustomLink } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TSiteMapClasses = {\n siteMapLink?: string\n siteMapLinkIcon?: string\n}\n\nexport interface ISiteMapProps {\n classes?: TSiteMapClasses\n}\n\nexport const SiteMap = ({ classes }: ISiteMapProps) => {\n return (\n <CustomLink\n intent='white'\n href='https://sovcombank.ru/site-map'\n target='_blank'\n aria-label='site-map'\n rel='noreferrer'\n classes={{\n link: cn('mobile:mt-6', classes?.siteMapLink),\n icon: classes?.siteMapLinkIcon\n }}\n >\n Карта сайта\n </CustomLink>\n )\n}\n","import * as React from 'react'\nimport { defaultCopyright, defaultLigal, defaultNavigationLinks, defaultPhones, defaultSocialsLinks } from './model/defaultValues'\nimport type { IFooterNavLinks, IFooterPhones, IFooterSocialLinks } from './model/types'\nimport {\n Copyright,\n FooterLogo,\n Ligal,\n NavLinks,\n PhonesBlock,\n SiteMap,\n SocialLinks,\n type TCopyrightClasses,\n type TFooterLogoClasses,\n type TLigalClasses,\n type TNavigationLinksClasses,\n type TPhoneBlockClasses,\n type TSiteMapClasses,\n type TSocialLinksClasses\n} from './ui'\nimport { ResponsiveContainer } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\ntype TFooterRenderBlocks = {\n withSocial?: boolean\n withPhones?: boolean\n withNavLinks?: boolean\n withLigal?: boolean\n withCopyright?: boolean\n withSiteMap?: boolean\n}\n\ntype TFooterClasses = TSiteMapClasses &\n TFooterLogoClasses &\n TLigalClasses &\n TNavigationLinksClasses &\n TPhoneBlockClasses &\n TSocialLinksClasses &\n TCopyrightClasses & {\n root?: string\n footerContainer?: string\n footerWrapper?: string\n footerHead?: string\n footerSocialBlock?: string\n }\n\nexport interface IFooterProps {\n classes?: TFooterClasses\n renderBlocks?: TFooterRenderBlocks\n socialsLinks?: IFooterSocialLinks[]\n phones?: IFooterPhones[]\n navigationLinks: IFooterNavLinks[]\n ligal: string | React.ReactElement\n copyright?: string | React.ReactElement\n}\n\nexport const Footer = ({\n renderBlocks: {\n withSocial = true,\n withPhones = true,\n withNavLinks = true,\n withLigal = true,\n withCopyright = true,\n withSiteMap = true\n } = {},\n socialsLinks = defaultSocialsLinks,\n phones = defaultPhones,\n navigationLinks = defaultNavigationLinks,\n ligal = defaultLigal,\n copyright = defaultCopyright,\n classes\n}: IFooterProps) => {\n return (\n <footer className={cn('w-full bg-color-footer py-8 desktop:py-10', classes?.root)}>\n <ResponsiveContainer className={cn(classes?.footerContainer)}>\n <div className={cn('mobile:pb-[176px]', classes?.footerWrapper)}>\n <div\n className={cn(\n 'flex flex-col items-start justify-between gap-4 border-b border-solid border-blue-grey-500 pb-6 desktop:flex-row desktop:gap-6 desktop:pb-8',\n classes?.footerHead\n )}\n >\n <div className={cn(classes?.footerSocialBlock)}>\n <FooterLogo classes={classes} />\n {withSocial && <SocialLinks socialsLinks={socialsLinks} classes={classes} />}\n </div>\n\n {withPhones && <PhonesBlock phones={phones} classes={classes} />}\n </div>\n\n {withNavLinks && <NavLinks navigationLinks={navigationLinks} classes={classes} />}\n {withLigal && <Ligal ligal={ligal} classes={classes} />}\n\n <div className='flex flex-col-reverse items-start justify-between gap-4 desktop:flex-row desktop:gap-6'>\n {withCopyright && <Copyright text={copyright} classes={classes} withSiteMap={withSiteMap} />}\n {withSiteMap && <SiteMap classes={classes} />}\n </div>\n </div>\n </ResponsiveContainer>\n </footer>\n )\n}\n","import { type IHeaderWithButton, type IHeaderWithPhone } from './types'\nimport { brandLogos, Button, PhoneView, ResponsiveContainer } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TPageHeaderProps = IHeaderWithButton | IHeaderWithPhone\n\nconst renderContentVariant = (props: TPageHeaderProps) => {\n switch (props.variant) {\n case 'withButton':\n return (\n <Button intent='secondary' size='sm' {...props.buttonProps}>\n Оформить заявку\n </Button>\n )\n case 'withPhone':\n const { phone, phoneText } = props\n return <PhoneView phone={phone} text={phoneText} {...props.phoneProps} />\n default:\n return null\n }\n}\n\nexport const PageHeader = (props: TPageHeaderProps) => {\n const { logoPath = '/', logoType = 'main', classes } = props\n\n return (\n <header className={cn('flex h-[72px] items-center justify-center bg-color-white', classes?.header)}>\n <ResponsiveContainer className={cn(classes?.container)}>\n <div className={cn('flex items-center justify-between gap-5', classes?.wrapper)}>\n <a\n href={logoPath}\n aria-label='logo'\n target='_blank'\n rel='noreferrer'\n className={cn(\n 'flex items-center justify-center [&_svg]:w-[132px] desktop:[&_svg]:h-[32px] desktop:[&_svg]:w-[192px]',\n classes?.logo\n )}\n >\n {brandLogos[logoType]}\n </a>\n {renderContentVariant(props)}\n </div>\n </ResponsiveContainer>\n </header>\n )\n}\n","import { type ISingleStep } from '../Stepper'\nimport { Heading } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\ninterface ISingleStepProps extends ISingleStep {\n index: number\n classes?: ISingleStepClasses\n}\n\nexport type ISingleStepClasses = {\n singleStep?: string\n numeric?: string\n textBlock?: string\n title?: string\n description?: string\n}\n\nexport const SingleStep = ({ title, description, index, classes }: ISingleStepProps) => {\n return (\n <div\n className={cn(\n 'flex w-[328px] max-w-[328px] flex-col gap-6 rounded-md border border-solid border-blue-grey-500 p-4 desktop:w-[348px] desktop:max-w-[348px] desktop:border-none desktop:p-0',\n classes?.singleStep\n )}\n >\n <div\n className={cn(\n 'mob-headline-bold-s flex size-10 items-center justify-center rounded-sm bg-color-blue-grey-500 text-color-white desktop:desk-title-bold-l desktop:size-12',\n classes?.numeric\n )}\n >\n {index}\n </div>\n <div className={cn('flex flex-col gap-4', classes?.textBlock)}>\n <Heading as='h4' className={cn('text-color-dark', classes?.title)}>\n {title}\n </Heading>\n <p className={cn('desk-body-regular-l text-color-tetriary', classes?.description)}>{description}</p>\n </div>\n </div>\n )\n}\n","import * as React from 'react'\nimport { type HTMLAttributes } from 'react'\nimport { type ISingleStepClasses, SingleStep } from './ui/SingleStep'\nimport { Heading, ResponsiveContainer, Section } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TStepperClasses = ISingleStepClasses & {\n root?: string\n headline?: string\n stepsWrapper?: string\n}\n\nexport interface ISingleStep {\n title: string\n description: string | React.ReactElement\n}\n\nexport interface IStepperProps extends HTMLAttributes<HTMLDivElement> {\n heading: string\n stepsList: ISingleStep[]\n classes?: TStepperClasses\n}\n\nexport const Stepper = ({ heading, stepsList, classes }: IStepperProps) => {\n return (\n <Section>\n <ResponsiveContainer>\n <div className={cn('flex flex-col gap-12 desktop:items-start', classes?.root)}>\n <Heading as='h2' className={cn('text-color-dark', classes?.headline)}>\n {heading}\n </Heading>\n <div\n className={cn(\n 'flex w-full flex-col items-start gap-6 desktop:flex-row desktop:items-center desktop:gap-12',\n classes?.stepsWrapper\n )}\n >\n {stepsList?.map((step, index) => <SingleStep key={step.title} index={index + 1} {...step} classes={classes} />)}\n </div>\n </div>\n </ResponsiveContainer>\n </Section>\n )\n}\n","import { cva } from 'class-variance-authority'\r\n\r\nexport const titleConfig = cva('', {\r\n variants: {\r\n intent: {\r\n twoItems: 'mob-headline-bold-s mb-6 desktop:desk-headline-bold-m desktop:mb-12',\r\n fourItems: 'mob-title-bold-l desktop:desk-title-bold-l mb-8'\r\n },\r\n desktopHidden: {\r\n true: 'desktop:hidden'\r\n },\r\n mobileHidden: {\r\n true: 'mobile:hidden'\r\n }\r\n },\r\n defaultVariants: {\r\n intent: 'twoItems'\r\n }\r\n})\r\n\r\nexport const listItemConfig = cva('desktop:max-h-[98px]', {\r\n variants: {\r\n intent: {\r\n twoItems: '',\r\n fourItems: ''\r\n },\r\n withButton: {\r\n true: ''\r\n }\r\n },\r\n compoundVariants: [\r\n {\r\n intent: 'twoItems',\r\n withButton: true,\r\n class: 'mb-8 desktop:flex'\r\n },\r\n {\r\n intent: 'twoItems',\r\n withButton: false,\r\n class: 'desktop:flex'\r\n },\r\n {\r\n intent: 'fourItems',\r\n withButton: true,\r\n class: 'desktop:grid grid-rows-2 mb-8 desktop:gap-x-10 desktop:gap-y-4 grid-flow-col'\r\n },\r\n {\r\n intent: 'fourItems',\r\n withButton: false,\r\n class: 'desktop:grid grid-rows-2 desktop:gap-x-10 desktop:gap-y-4 grid-flow-col'\r\n }\r\n ]\r\n})\r\n\r\nexport const itemConfig = cva('border-blue-grey-500 pb-6 mobile:mb-6 mobile:border-b mobile:last:pb-0 mobile:last:mb-0', {\r\n variants: {\r\n intent: {\r\n twoItems:\r\n 'last:border-none relative desktop:first:after:top-1/2 desktop:first:after:-translate-y-1/2 desktop:first:after:right-0 desktop:first:after:content-[\"\"] desktop:first:after:block desktop:first:after:absolute desktop:first:after:w-[1px] desktop:first:after:h-[64px] desktop:first:after:bg-color-blue-grey-500 desktop:ml-8 desktop:pr-8 desktop:first:ml-0 desktop:last:pr-0 desktop:pb-3',\r\n fourItems: ' mobile:last:border-none desktop:w-[264px] desktop:odd:border-b desktop:pb-0 desktop:odd:pb-3'\r\n }\r\n },\r\n defaultVariants: {\r\n intent: 'twoItems'\r\n }\r\n})\r\n\r\nexport const containerImgConfig = cva('mobile:mx-auto mobile:mb-8, h-[172px] w-[280px] ', {\r\n variants: {\r\n intent: {\r\n twoItems: 'desktop:h-[232px] desktop:w-[500px]',\r\n fourItems: ' '\r\n },\r\n withButton: {\r\n true: true,\r\n false: false\r\n }\r\n },\r\n defaultVariants: {\r\n intent: 'twoItems'\r\n },\r\n compoundVariants: [\r\n {\r\n intent: 'fourItems',\r\n withButton: true,\r\n class: 'desktop:h-[360px] desktop:w-[500px]'\r\n },\r\n {\r\n intent: 'fourItems',\r\n withButton: false,\r\n class: 'desktop:h-[272px] desktop:w-[500px]'\r\n }\r\n ]\r\n})\r\n","import { itemConfig } from '../model/cva'\r\nimport { type ITextItem } from '../model/types'\r\nimport { Icon, Popover } from '$/shared/ui'\r\nimport { cn } from '$/shared/utils'\r\n\r\nexport const TextItem = ({ data, intent }: ITextItem) => {\r\n const { title, description, popoverText } = data\r\n return (\r\n <li className={cn(itemConfig({ intent }))}>\r\n <div className='desktop:max-w-[264px]'>\r\n <div className={cn('mb-2 flex items-center gap-2')}>\r\n <h4 className={cn('mob-title-bold-m text-color-dark')}>{title}</h4>\r\n {popoverText && (\r\n <Popover triggerElement={<Icon className={cn('size-5 text-icon-blue-grey-600')} name='info/helpCircle' />}>\r\n {popoverText}\r\n </Popover>\r\n )}\r\n </div>\r\n\r\n <p className={cn('mob-body-regular-l text-color-secondary')}>{description}</p>\r\n </div>\r\n </li>\r\n )\r\n}\r\n","import { type ReactElement } from 'react'\r\nimport { titleConfig } from '../model/cva'\r\nimport { type TLongBannerConfig } from '../model/types'\r\nimport { cn } from '$/shared/utils'\r\n\r\ninterface ITitleProps {\r\n intent: TLongBannerConfig['intent']\r\n title: string | ReactElement\r\n desktopHidden?: boolean\r\n mobileHidden?: boolean\r\n}\r\n\r\nexport const Title = ({ intent, title, desktopHidden = false, mobileHidden = false }: ITitleProps) => {\r\n return <h2 className={cn(titleConfig({ intent, desktopHidden, mobileHidden }))}>{title}</h2>\r\n}\r\n","import { listItemConfig } from '../model/cva'\r\nimport { type ITextContent, type TLongBannerConfig } from '../model/types'\r\nimport { TextItem } from './TextItem'\r\nimport { cn } from '$/shared/utils'\r\n\r\ninterface IListItemsProps {\r\n textContent: ITextContent[]\r\n intent: TLongBannerConfig['intent']\r\n withButton: boolean\r\n}\r\n\r\nexport const TextList = ({ textContent, intent, withButton }: IListItemsProps) => {\r\n return (\r\n <ul className={cn(listItemConfig({ intent, withButton }))}>\r\n {textContent?.map((element, index) => <TextItem intent={intent} data={element} key={index} />)}\r\n </ul>\r\n )\r\n}\r\n","import { type ReactElement } from 'react'\r\nimport { containerImgConfig } from './model/cva'\r\nimport { type IButtonConfig, type ILongBannerClasses, type ITextContent, type TLongBannerConfig } from './model/types'\r\nimport { TextList, Title } from './ui'\r\nimport { Button, ResponsiveContainer } from '$/shared/ui'\r\nimport { cn } from '$/shared/utils'\r\n\r\nexport interface ILongBannerProps extends TLongBannerConfig {\r\n title: string | ReactElement\r\n buttonConfig?: IButtonConfig\r\n textContent: ITextContent[]\r\n imageComponent: ReactElement\r\n classes?: Partial<ILongBannerClasses>\r\n}\r\n\r\nexport const LongBanner = ({\r\n title,\r\n buttonConfig,\r\n intent = 'twoItems',\r\n textContent,\r\n imageComponent,\r\n classes\r\n}: ILongBannerProps) => {\r\n const withButton = !!buttonConfig\r\n const isFourItems = intent === 'fourItems'\r\n const isTwoItems = intent === 'twoItems'\r\n\r\n return (\r\n <section className={cn(classes?.section)}>\r\n <ResponsiveContainer className={cn(classes?.mainContainer)}>\r\n {isTwoItems && <Title intent={intent} title={title} />}\r\n\r\n <div\r\n className={cn(\r\n 'bg-banner-skyblue-100 px-6 pb-8 pt-6 desktop:flex desktop:flex-row-reverse desktop:justify-between desktop:px-0 desktop:py-0 desktop:pl-12',\r\n classes?.contentContainer\r\n )}\r\n >\r\n {isFourItems && <Title intent={intent} title={title} desktopHidden={true} />}\r\n <div className={cn(containerImgConfig({ intent, withButton }), classes?.imgContainer)}>{imageComponent}</div>\r\n <div\r\n className={cn('desktop:flex desktop:flex-col desktop:justify-center desktop:py-10', classes?.textWithBtnContainer)}\r\n >\r\n {isFourItems && <Title intent={intent} title={title} mobileHidden={true} />}\r\n <TextList textContent={textContent} intent={intent} withButton={withButton} />\r\n {withButton && (\r\n <Button\r\n className={cn('w-full px-4 desktop:w-max', classes?.button)}\r\n size='lg'\r\n onClick={buttonConfig.onClick}\r\n intent='secondary'\r\n >\r\n {buttonConfig.text}\r\n </Button>\r\n )}\r\n </div>\r\n </div>\r\n </ResponsiveContainer>\r\n </section>\r\n )\r\n}\r\n"],"names":["capitalize","str","word","mergeRefs","inputRefs","filteredInputRefs","ref","inputRef","Section","children","className","props","jsx","cn","Breadcrumbs","linksList","link","Fragment","jsxs","Icon","buttonConfig","cva","ButtonIcon","forwardRef","size","intent","classes","type","customLinkConfig","linkArrowConfig","CustomLink","withIcon","disabled","icon","withUnderline","iconConfig","iconVariant","Document","text","sizeType","href","PhoneView","phone","ProgressBar","topContent","bottomContent","progress","maxPercent","Skeleton","brandLogos","FloatButton","isVisible","buttonProps","ResponsiveContainer","Button","RgxUnicode","RgxCheckForHyphen","RgxPatronymic","VALIDATION_MESSAGES","formattedDadataFio","value","parts","surname","name","patronymicArr","patronymic","zodDadataFioSchema","z","ctx","zodCalendarValidate","val","day","month","year","parsed","parse","isValid","zodPhoneSchema","operatorCode","zodOtpCodeSchema","context","rootStyles","allowedBackgroundColors","allowedTextColors","allowedBannersBackgroundColors","allowedIconsColors","allowedStrokeColors","allowedBorderRadius","allowedBackgroundDeg","allowedZIndex","allowedFontSize","allowedLineHeight","allowedTextStyles","exports","_default","createPlugin","plugin","config","pluginFunction","configFunction","optionsFunction","options","_createPlugin","_interop_require_default","require$$0","obj","filterDefault","values","key","tailwindcssAnimate","addUtilities","matchUtilities","theme","tailwindConfigBase","tailwindAnimation","addComponents","angle","extendsPreset","resetPreset","ApiError","response","defaultHeaders","apiInstance","url","init","baseUrl","headers","body","result","defaultCopyright","defaultLigal","defaultPhones","defaultSocialsLinks","defaultNavigationLinks","SocialLinks","socialsLinks","iconName","PhonesBlock","phones","NavLinks","navigationLinks","groupLabel","links","Ligal","ligal","isExpanded","setIsExpanded","React","isClamped","setIsClamped","ligalRef","element","prev","Copyright","withSiteMap","FooterLogo","SiteMap","Footer","withSocial","withPhones","withNavLinks","withLigal","withCopyright","copyright","renderContentVariant","phoneText","PageHeader","logoPath","logoType","SingleStep","title","description","index","Heading","Stepper","heading","stepsList","step","titleConfig","listItemConfig","itemConfig","containerImgConfig","TextItem","data","popoverText","Popover","Title","desktopHidden","mobileHidden","TextList","textContent","withButton","LongBanner","imageComponent","isFourItems","isTwoItems"],"mappings":"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","x_google_ignoreList":[21,22,23,24]}
|
|
1
|
+
{"version":3,"file":"hybrid.js","sources":["../lib/shared/utils/capitalize.ts","../lib/shared/utils/mergeRefs.ts","../lib/shared/ui/Section.tsx","../lib/shared/ui/Breadcrumbs.tsx","../lib/shared/ui/ButtonIcon.tsx","../lib/shared/ui/CustomLink.tsx","../lib/shared/ui/Document.tsx","../lib/shared/ui/PhoneView.tsx","../lib/shared/ui/ProgressBar.tsx","../lib/shared/ui/Skeleton.tsx","../lib/shared/ui/Ligal.tsx","../lib/shared/ui/brandLogos.tsx","../lib/shared/ui/FloatButton.tsx","../lib/shared/validation/regExp.ts","../lib/shared/validation/messages.ts","../lib/shared/validation/zodValidation/dadataFio.ts","../lib/shared/validation/zodValidation/calendar.ts","../lib/shared/validation/zodValidation/phone.ts","../lib/shared/validation/zodValidation/otpCode.ts","../lib/shared/constants/designSystem/colors.ts","../lib/shared/constants/designSystem/others.ts","../lib/shared/constants/designSystem/typography.ts","../node_modules/tailwindcss/lib/util/createPlugin.js","../node_modules/tailwindcss/lib/public/create-plugin.js","../node_modules/tailwindcss/plugin.js","../node_modules/tailwindcss-animate/index.js","../lib/configs/tailwindConfigBase.ts","../lib/configs/tailwindPresets/extendsPreset.ts","../lib/configs/tailwindPresets/resetPreset.ts","../lib/shared/api/apiInstance.ts","../lib/widgets/footer/model/defaultValues.tsx","../lib/widgets/footer/ui/SocialLinks.tsx","../lib/widgets/footer/ui/PhonesBlock.tsx","../lib/widgets/footer/ui/NavLinks.tsx","../lib/widgets/footer/ui/Copyright.tsx","../lib/widgets/footer/ui/FooterLogo.tsx","../lib/widgets/footer/ui/SiteMap.tsx","../lib/widgets/footer/Footer.tsx","../lib/widgets/pageHeader/PageHeader.tsx","../lib/widgets/stepper/ui/SingleStep.tsx","../lib/widgets/stepper/Stepper.tsx","../lib/widgets/longBanner/model/cva.ts","../lib/widgets/longBanner/ui/TextItem.tsx","../lib/widgets/longBanner/ui/Title.tsx","../lib/widgets/longBanner/ui/TextList.tsx","../lib/widgets/longBanner/LongBanner.tsx"],"sourcesContent":["export const capitalize = (str: string) => {\n return str\n .split('-')\n .map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())\n .join('-')\n}\n","import type React from 'react'\n\nexport const mergeRefs = <T>(...inputRefs: (React.Ref<T> | undefined)[]): React.Ref<T> | React.RefCallback<T> => {\n const filteredInputRefs = inputRefs.filter(Boolean)\n\n if (filteredInputRefs.length <= 1) {\n const firstRef = filteredInputRefs[0]\n\n return firstRef || null\n }\n\n return function mergedRefs(ref) {\n filteredInputRefs.forEach((inputRef) => {\n if (typeof inputRef === 'function') {\n inputRef(ref)\n } else if (inputRef) {\n ;(inputRef as React.MutableRefObject<T | null>).current = ref\n }\n })\n }\n}\n","import type { HTMLAttributes, ReactNode } from 'react'\nimport { cn } from '$/shared/utils'\n\nexport interface ISectionProps extends HTMLAttributes<HTMLDivElement> {\n children: ReactNode\n className?: string\n}\n\nexport const Section = ({ children, className, ...props }: ISectionProps) => {\n return (\n <section className={cn('pb-16 desktop:pb-20', className)} {...props}>\n {children}\n </section>\n )\n}\n","import { type ReactElement } from 'react'\nimport { cn } from '../utils'\nimport { Icon } from './icon/Icon'\n\nexport interface IBreadcrumbLink {\n label: string | ReactElement\n path: string\n isDisabled?: boolean\n}\ninterface IBreadcrumbLinkWithoutPath {\n label: string\n isDisabled?: boolean\n}\n\nexport type TLinksList = [...IBreadcrumbLink[], IBreadcrumbLinkWithoutPath]\n\nexport interface IBreadcrumbsProps {\n linksList: TLinksList\n}\n\n//TODO: Его должны переработать не использовать! DEPRECATED\n\nexport const Breadcrumbs = ({ linksList }: IBreadcrumbsProps) => {\n return (\n <div aria-label='Breadcrumb' className='flex max-w-[840px] items-center gap-2'>\n {linksList.map((link) => (\n <>\n {'path' in link ? (\n <div\n className={cn(\n 'flex items-center gap-1 rounded-sm border-2 border-solid border-transparent px-1 focus-within:border-primary-focus',\n { 'pointer-events-none !border-transparent': link?.isDisabled }\n )}\n >\n <a\n href={link.path}\n target='_blank'\n rel='noreferrer'\n className={cn(\n 'desk-body-regular-m text-color-primary-default outline-none hover:text-color-primary-hover focus:text-color-primary-default',\n { '!text-color-disabled': link?.isDisabled }\n )}\n >\n {link.label}\n </a>\n <Icon\n name='arrows/arrowRight'\n className={cn('size-4 text-icon-primary-default', { '!text-icon-disabled': link?.isDisabled })}\n />\n </div>\n ) : (\n <div aria-current='page' className='desk-body-regular-m text-color-blue-grey-600'>\n {link.label}\n </div>\n )}\n </>\n ))}\n </div>\n )\n}\n","import { type ComponentProps, forwardRef, type ReactElement } from 'react'\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport { cn } from '$/shared/utils'\n\ntype TButtonClasses = {\n button: string\n icon: string\n}\n\nconst buttonConfig = cva(\n 'group flex items-center justify-center cursor-pointer rounded-full outline-offset-[3px] outline-transparent outline-2 transition duration-12 active:scale-[0.97] disabled:pointer-events-none',\n {\n variants: {\n intent: {\n primary:\n 'text-icon-white bg-color-primary-default hover:bg-color-primary-hover active:bg-color-primary-hover focus:bg-color-primary-hover focus:outline-primary-focus disabled:bg-color-primary-disabled',\n secondary:\n 'text-icon-primary-default bg-color-transparent border border-solid outline-offset-4 border-primary-default hover:bg-color-primary-tr-hover hover:text-icon-primary-default hover:border-primary-hover active:bg-color-primary-tr-pressed active:border-primary-hover active:text-icon-primary-hover focus:bg-color-primary-tr-focus focus:outline-primary-focus disabled:bg-color-blue-grey-200 disabled:border-transparent disabled:text-icon-primary-disabled',\n ghost:\n 'text-icon-primary-default bg-color-transparent hover:bg-color-primary-tr-hover focus:bg-color-primary-tr-focus focus:outline-primary-focus active:text-icon-primary-hover active:bg-color-primary-tr-pressed disabled:bg-color-transparent disabled:text-icon-primary-disabled'\n },\n size: {\n sm: 'size-8',\n md: 'size-10',\n lg: 'size-12'\n }\n },\n defaultVariants: {\n intent: 'primary',\n size: 'lg'\n }\n }\n)\n\ntype TButtonProps = VariantProps<typeof buttonConfig>\n\nexport interface IButtonIconProps extends Omit<ComponentProps<'button'>, 'className'>, TButtonProps {\n children: ReactElement\n classes?: Partial<TButtonClasses>\n}\n\nexport const ButtonIcon = forwardRef<HTMLButtonElement, IButtonIconProps>(\n ({ size, intent, children, classes, type = 'button', ...props }, ref) => {\n return (\n <button ref={ref} type={type} className={cn(buttonConfig({ intent, size }), classes?.button)} {...props}>\n <span className={cn(classes?.icon)}>{children}</span>\n </button>\n )\n }\n)\n","import { type ComponentProps } from 'react'\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport { cn } from '../utils'\nimport { Icon, type TAllowedIcons } from './icon/Icon'\n\nconst customLinkConfig = cva(\n 'group outline-none transition-colors duration-100 p-[2px] rounded-sm border border-solid border-transparent',\n {\n variants: {\n intent: {\n blue: 'text-color-primary-default hover:text-color-primary-hover focus:text-color-primary-default focus:border-primary-focus',\n white: 'text-color-white hover:text-color-footer focus:text-color-white focus:border-primary-focus'\n },\n withUnderline: {\n true: 'underline underline-offset-4',\n false: ''\n },\n withIcon: {\n true: 'flex items-center gap-1',\n false: ''\n },\n disabled: {\n true: '!text-color-primary-disabled pointer-events-none !border-transparent',\n false: ''\n },\n size: {\n sm: 'desk-body-regular-m',\n md: 'desk-body-regular-l'\n }\n },\n defaultVariants: {\n intent: 'blue',\n withIcon: true,\n disabled: false,\n size: 'sm',\n withUnderline: false\n }\n }\n)\n\nconst linkArrowConfig = cva('size-6', {\n variants: {\n intent: {\n blue: 'text-icon-primary-default group-hover:text-icon-primary-hover group-focus:text-icon-primary-default ',\n white: 'text-icon-white group-hover:text-icon-footer group-focus:text-icon-white'\n },\n disabled: {\n true: '!text-icon-primary-disabled pointer-events-none',\n false: ''\n }\n },\n defaultVariants: {\n intent: 'blue',\n disabled: false\n }\n})\n\ntype TCustomLinkClasses = {\n link?: string\n icon?: string\n}\n\ntype TCustomLinkConfig = VariantProps<typeof customLinkConfig>\n\nexport interface ICustomLinkProps extends TCustomLinkConfig, Omit<ComponentProps<'a'>, 'className'> {\n icon?: TAllowedIcons\n classes?: TCustomLinkClasses\n}\n\nexport const CustomLink = ({\n intent,\n children,\n withIcon,\n disabled,\n size,\n icon = 'arrows/arrowLink',\n classes,\n withUnderline,\n ...props\n}: ICustomLinkProps) => {\n return (\n <a className={cn(customLinkConfig({ intent, withIcon, withUnderline, disabled, size }), classes?.link)} {...props}>\n {children}\n {withIcon && <Icon name={icon} className={cn(linkArrowConfig({ intent, disabled }), classes?.icon)} />}\n </a>\n )\n}\n","import { type ReactElement } from 'react'\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport { Icon, type TAllowedIcons } from './icon'\nimport { cn } from '$/shared/utils'\n\nconst iconConfig = cva('size-8 transition-colors', {\n variants: {\n intent: {\n outline: 'text-icon-secondary-dark-default group-hover:text-icon-secondary-dark-hover',\n filled: 'text-icon-primary-default group-hover:text-icon-primary-hover'\n }\n },\n defaultVariants: {\n intent: 'outline'\n }\n})\n\ntype TIconConfig = VariantProps<typeof iconConfig>\n\nconst iconVariant: Record<NonNullable<TIconConfig['intent']>, TAllowedIcons> = {\n filled: 'files/documentFilled',\n outline: 'files/documentOutline'\n}\n\nexport interface IDocumentProps extends TIconConfig {\n text: string | ReactElement\n size: number\n sizeType: 'КБ' | 'МБ'\n href: string\n}\n\nexport const Document = ({ text, size, sizeType, href, intent = 'outline' }: IDocumentProps) => {\n return (\n <a\n href={href}\n target='_blank'\n rel='noreferrer'\n tabIndex={0}\n className={cn(\n 'group flex cursor-pointer items-center gap-2 rounded-sm p-1 outline outline-2 outline-transparent transition-colors focus-within:outline-primary-focus desktop:max-w-[592px]'\n )}\n >\n <Icon name={iconVariant[intent!]} className={cn(iconConfig({ intent }))} />\n <div className={cn('flex flex-1 flex-col')}>\n <p className={cn('desk-body-medium-l text-color-dark')}>{text}</p>\n <div className={cn('desk-body-regular-m text-color-disabled')}>\n {size} {sizeType}\n </div>\n </div>\n </a>\n )\n}\n","import { type HTMLAttributes, type ReactElement } from 'react'\nimport { cn } from '../utils'\n\ninterface IPhoneViewClasses {\n wrapper?: string\n link?: string\n text?: string\n}\n\nexport interface IPhoneViewProps extends HTMLAttributes<HTMLDivElement> {\n phone: string | ReactElement\n text: string | ReactElement\n classes?: IPhoneViewClasses\n}\n\nexport const PhoneView = ({ phone, text, classes, ...props }: IPhoneViewProps) => {\n return (\n <div className={cn('flex w-max flex-col', classes?.wrapper)} {...props}>\n <a\n href={`tel:${phone}`}\n className={cn('mob-body-medium-l ml-auto text-color-dark desktop:desk-body-medium-l', classes?.link)}\n >\n {phone}\n </a>\n <p className={cn('desk-body-regular-s text-color-tetriary', classes?.text)}>{text}</p>\n </div>\n )\n}\n","import * as React from 'react'\nimport { cn } from '../utils'\n\ntype IProgressBarClasses = {\n wrapper: string\n topContent: string\n bottomContent: string\n progressBar: string\n progress: string\n loader: string\n}\n\nexport interface IProgressBarProps {\n topContent?: React.ReactElement\n bottomContent?: React.ReactElement\n progress: number\n maxPercent?: number\n classes?: Partial<IProgressBarClasses>\n}\n\nexport const ProgressBar = ({ topContent, bottomContent, progress, maxPercent = 100, classes }: IProgressBarProps) => {\n return (\n <div className={cn('flex w-full flex-col', classes?.wrapper)}>\n {topContent && <div className={cn('mb-2 flex justify-between gap-5', classes?.topContent)}>{topContent}</div>}\n\n <div className={cn('relative h-2 w-[328xp] rounded-md bg-color-blue-grey-100 desktop:w-[524px]', classes?.progressBar)}>\n <div\n style={{ width: `${progress}%` }}\n className={cn('relative z-10 h-2 rounded-md bg-color-positive transition-all', classes?.progress)}\n ></div>\n <span\n style={{ maxWidth: `${maxPercent}%` }}\n className={cn(\n 'progressBar-apply z-1 absolute top-1/2 h-full w-full -translate-y-1/2 animate-progress-loader rounded-md',\n classes?.loader\n )}\n ></span>\n </div>\n\n {bottomContent && <div className={cn('mt-2 flex justify-between gap-5', classes?.bottomContent)}>{bottomContent}</div>}\n </div>\n )\n}\n","import { cn } from '../utils'\n\nexport interface ISkeletonProps {\n className?: string\n}\n\nexport const Skeleton = ({ className }: ISkeletonProps) => {\n return <div className={cn('skeleton-apply h-full w-full', className)}></div>\n}\n","'use client'\n\nimport * as React from 'react'\nimport { cn } from '$/shared/utils'\n\ntype TLigalClasses = {\n ligalRoot?: string\n ligalText?: string\n ligalButton?: string\n}\n\nexport interface ILigalProps {\n text: string | React.ReactElement\n classes?: TLigalClasses\n}\n\nexport const Ligal = ({ text, classes }: ILigalProps) => {\n const [isExpanded, setIsExpanded] = React.useState(false)\n const [isClamped, setIsClamped] = React.useState(false)\n const ligalRef = React.useRef<HTMLParagraphElement | null>(null)\n\n React.useEffect(() => {\n const element = ligalRef.current\n if (element) {\n setIsClamped(element.scrollHeight > element.clientHeight)\n }\n }, [])\n\n return (\n <div className={cn('mt-8 flex flex-col gap-4', classes?.ligalRoot)}>\n <p\n ref={ligalRef}\n className={cn('desk-body-regular-m text-color-footer', { 'line-clamp-3': !isExpanded }, classes?.ligalText)}\n >\n {text}\n </p>\n\n {isClamped && (\n <div\n tabIndex={0}\n role='button'\n onClick={() => setIsExpanded((prev) => !prev)}\n className={cn(\n 'desk-body-regular-l w-max cursor-pointer font-medium text-color-footer transition-colors hover:text-color-white',\n classes?.ligalButton\n )}\n >\n Подробнее\n </div>\n )}\n </div>\n )\n}\n","import type { ReactElement } from 'react'\nimport { Icon } from './icon/Icon'\n\nexport type TBrandLogoVariant = 'main' | 'white' | 'gray' | 'black' | 'business' | 'insurance'\ntype TBrandLogosVariants = Record<TBrandLogoVariant, ReactElement>\n\nexport const brandLogos: TBrandLogosVariants = {\n main: <Icon name='brandLogos/logoMain' />,\n white: <Icon name='brandLogos/logoWhite' />,\n gray: <Icon name='brandLogos/logoGray' />,\n black: <Icon name='brandLogos/logoBlack' />,\n business: <Icon name='brandLogos/logoBusiness' />,\n insurance: <Icon name='brandLogos/logoInsurance' />\n} as const\n","import { Button, type IButtonProps, ResponsiveContainer } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\ntype TFloatButtonClasses = {\n root?: string\n button?: string\n}\n\nexport interface IFloatButtonProps {\n isVisible: boolean\n classes?: TFloatButtonClasses\n children: React.ReactElement\n buttonProps?: IButtonProps\n}\n\nexport const FloatButton = ({ isVisible, classes, children, buttonProps }: IFloatButtonProps) => {\n return (\n <ResponsiveContainer\n className={cn(\n 'fixed bottom-0 left-1/2 z-[60] w-full max-w-[604px] -translate-x-1/2 translate-y-0 rounded-t-lg bg-color-white px-6 py-4 shadow-[0px_-6px_8px_0px_#2929290A] transition-transform duration-1000 desktop:hidden',\n { 'translate-y-[100%]': !isVisible },\n classes?.root\n )}\n >\n {children}\n <Button size='lg' className={cn('m-auto w-full', classes?.button)} {...buttonProps}>\n Оформить заявку\n </Button>\n </ResponsiveContainer>\n )\n}\n","export const RgxUnicode = /^[\\u0400-\\u04FF\\u00CB\\u00EB -]+$/ // Диапазон символов Unicode, включающий кириллические символы.*\nexport const RgxCheckForHyphen = /^(?:[^-]+(?:-[^-]+){0,4}|[^-]+)$/ // Проверяет количество дефисов a-b-c-d-e Валидный (до 4 дефисов), не валидный*\nexport const RgxPatronymic =\n /^[a-zA-Zа-яА-ЯёЁ]+(?:\\s*-\\s*[a-zA-Zа-яА-ЯёЁ]+){0,4}(?:\\s+[a-zA-Zа-яА-ЯёЁ]+(?:\\s*-\\s*[a-zA-Zа-яА-ЯёЁ]+){0,4})?$/i //Отчество для дадаты Отчество углы-ули Отчество-Отчество\n","export const VALIDATION_MESSAGES = {\n REQUIRED: 'Поле обязательно к заполнению',\n MIN_LENGTH: 'Минимальная длина символов должна быть не менее',\n MAX_LENGTH: 'Максимальная длина символов должна быть не более',\n FIX_LENGTH: 'Длина символов должна быть равна',\n MAX_LENGTH_ELEMENTS: 'Максимальное количество элементов должно быть не более',\n MIN_LENGTH_ELEMENTS: 'Минимальное количество элементов должно быть не менее',\n FIX_LENGTH_ELEMENTS: 'Количество элементов должно быть равно',\n INVALID_VALUE: 'Поле заполнено некорректно',\n INVALID_DATE: 'Введите корректную дату',\n FUTURE_DATE_NOT_ALLOWED: 'Нельзя выбрать дату позже текущей'\n} as const\n","import { z } from 'zod'\nimport { RgxCheckForHyphen, RgxPatronymic, RgxUnicode } from '../regExp'\n\nexport const formattedDadataFio = (value: string) => {\n const parts = value.trim().replace(/\\s+/g, ' ').split(' ')\n const [surname, name, ...patronymicArr] = parts\n const patronymic = patronymicArr?.join(' ')\n\n return {\n surname,\n name,\n patronymic\n }\n}\n\nexport const zodDadataFioSchema = z\n .string({ invalid_type_error: 'Обязательно к заполнению', required_error: 'Обязательно к заполнению' })\n .superRefine((value, ctx) => {\n if (value === '') {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Введите имя и фамилию'\n })\n }\n\n if (!RgxUnicode.test(value)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Должна быть только кириллица'\n })\n }\n\n const { surname, name, patronymic } = formattedDadataFio(value)\n\n if (!surname || !name) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Введите имя и фамилию'\n })\n }\n\n if (!RgxCheckForHyphen.test(name)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Неверно введено имя'\n })\n }\n\n if (!RgxCheckForHyphen.test(surname)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Неверно введена фамилия'\n })\n }\n\n if (patronymic) {\n if (!RgxPatronymic.test(patronymic)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Неверно введено отчество'\n })\n }\n }\n })\n","import { isValid, parse } from 'date-fns'\nimport { z } from 'zod'\nimport { VALIDATION_MESSAGES } from '../messages'\n\nexport const zodCalendarValidate = z\n .string()\n .length(10, { message: VALIDATION_MESSAGES.INVALID_DATE })\n .superRefine((val, ctx) => {\n const [day, month, year] = val?.split('.') ?? ''\n const parsed = parse(`${day}/${month}/${year}`, 'dd/MM/yyyy', new Date())\n\n if (+year <= 1950) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: VALIDATION_MESSAGES.INVALID_DATE\n })\n }\n\n if (!isValid(parsed)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: VALIDATION_MESSAGES.INVALID_DATE\n })\n }\n\n if (new Date().getTime() < new Date(parsed).getTime()) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: VALIDATION_MESSAGES.FUTURE_DATE_NOT_ALLOWED\n })\n }\n })\n","import { z } from 'zod'\n\nexport const zodPhoneSchema = z\n .string()\n .superRefine((value, ctx) => {\n const operatorCode = value.charAt(0)\n\n if (!['3', '4', '5', '6', '9'].includes(operatorCode)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Код города/оператора должен начинаться с цифры 3, 4, 5, 6 или 9'\n })\n }\n if (value.length !== 10) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Введите номер телефона полностью'\n })\n }\n })\n .transform((value) => `7${value}`)\n","import { z } from 'zod'\nimport { VALIDATION_MESSAGES } from '../messages'\n\nexport const zodOtpCodeSchema = z.coerce\n .number()\n .min(1000, `${VALIDATION_MESSAGES.FIX_LENGTH} 4`)\n .max(9999, `${VALIDATION_MESSAGES.FIX_LENGTH} 4`)\n .nullable()\n .superRefine((value, context) => {\n if (value === null) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_type,\n expected: 'number',\n received: 'null',\n message: `${VALIDATION_MESSAGES.FIX_LENGTH} 4`\n })\n }\n })\n .default(null)\n","const rootStyles = {\n transparent: 'transparent',\n current: 'currentColor',\n inherit: 'inherit',\n initial: 'initial'\n}\n\nconst allowedBackgroundColors = {\n 'blue-grey-100': '#f3f4f7',\n 'blue-grey-200': '#eaedf1',\n 'blue-grey-300': '#d4dbe2',\n 'blue-grey-500': '#a9b6c5',\n footer: '#40465a',\n negative: '#f42500',\n 'negative-light': '#ffd2ca',\n positive: '#76bc21',\n 'positive-light': '#e4f6ce',\n 'primary-default': '#003790',\n 'primary-focus': '#2477ff',\n 'primary-hover': '#042e73',\n 'primary-light-default': '#f0f4f9',\n 'primary-tr-focus': '#0037901f',\n 'primary-tr-hover': '#00379014',\n 'primary-tr-pressed': '#00379033',\n 'secondary-default': '#fc5055',\n 'secondary-hover': '#f12f34',\n warning: '#f49f00',\n 'warning-light': '#ffeecc',\n white: '#ffffff',\n 'primary-disabled': '#809bc7',\n 'secondary-disabled': '#FFB7BF',\n dark: '#292929',\n purple: '#5f40bd',\n 'purple-hover': '#52399d',\n overlay: '#0000004d',\n ...rootStyles\n} as const\n\nconst allowedTextColors = {\n dark: '#292929',\n disabled: '#a9b6c5',\n footer: '#c3c3c3',\n negative: '#f42500',\n positive: '#76bc21',\n 'primary-default': '#003790',\n 'primary-hover': '#042e73',\n secondary: '#40465a',\n tetriary: '#5a6e85',\n warning: '#f49f00',\n white: '#ffffff',\n 'primary-disabled': '#809bc7',\n 'blue-grey-600': '#94a4b7',\n ...rootStyles\n} as const\n\nconst allowedBannersBackgroundColors = {\n 'barvcray-200': '#ebeef4',\n 'barvcray-300': '#dde1e8',\n 'greymint-200': '#deecee',\n 'lavender-100': '#f7f7ff',\n 'lavender-200': '#ecedfa',\n 'lavender-300': '#d0d3f1',\n 'lightblue-300': '#bed3ec',\n 'mint-200': '#e4f5ed',\n 'salmon-200': '#faecec',\n 'skyblue-100': '#f4f8fe',\n 'skyblue-200': '#e7f3ff',\n 'skyblue-300': '#d9edff',\n ...rootStyles\n} as const\n\nconst allowedIconsColors = {\n 'accent-default': '#2477ff',\n 'accent-hover': '#0053da',\n 'blue-grey-100': '#f3f4f7',\n 'blue-grey-600': '#94a4b7',\n 'blue-grey-700': '#69809a',\n 'blue-grey-800': '#5a6e85',\n 'dark-default': '#292929',\n 'dark-hover': '#535353',\n disabled: '#a9b6c5',\n 'negative-default': '#f42500',\n 'negative-hover': '#c31e00',\n 'positive-default': '#76bc21',\n 'positive-hover': '#598d19',\n 'primary-default': '#003790',\n 'primary-hover': '#042e73',\n 'secondary-dark-default': '#f12f34',\n 'secondary-dark-hover': '#c40309',\n 'secondary-default': '#fc5055',\n 'secondary-hover': '#f12f34',\n 'warning-default': '#f49f00',\n 'warning-hover': '#d68b00',\n white: '#ffffff',\n 'primary-disabled': '#809bc7',\n footer: '#C3C3C3',\n ...rootStyles\n} as const\n\nconst allowedStrokeColors = {\n 'blue-grey-500': '#a9b6c5',\n 'blue-grey-700': '#69809a',\n 'blue-grey-800': '#5a6e85',\n dark: '#292929',\n negative: '#f42500',\n positive: '#76bc21',\n 'primary-default': '#003790',\n 'primary-focus': '#2477ff',\n 'primary-hover': '#042e73',\n 'primary-light': '#f0f4f9',\n 'secondary-default': '#fc5055',\n 'secondary-hover': '#f12f34',\n 'warm-grey-200': '#e4e4e4',\n 'warm-grey-300': '#c3c3c3',\n warning: '#f49f00',\n white: '#ffffff',\n 'primary-disabled': '#809bc7',\n ...rootStyles\n} as const\n\nexport { allowedStrokeColors, allowedBannersBackgroundColors, allowedIconsColors, allowedTextColors, allowedBackgroundColors }\n","const allowedBorderRadius = {\n none: '0',\n sm: '4px',\n md: '8px',\n lg: '16px',\n full: '9999px'\n}\n\nconst allowedBackgroundDeg = {\n 30: '30deg',\n 45: '45deg',\n 80: '80deg',\n 90: '90deg',\n 110: '110deg',\n 180: '180deg'\n}\n\nconst allowedZIndex = {\n 0: '0',\n 1: '1',\n 10: '10',\n 30: '30',\n 50: '50',\n 100: '100',\n 250: '250',\n 500: '500',\n 1000: '1000'\n}\n\nexport { allowedBorderRadius, allowedBackgroundDeg, allowedZIndex }\n","const allowedFontSize = {\n 12: '12px',\n 14: '14px',\n 16: '16px',\n 18: '18px',\n 20: '20px',\n 24: '24px',\n 28: '28px',\n 32: '32px',\n 40: '40px'\n}\n\nconst allowedLineHeight = {\n 16: '16px',\n 20: '20px',\n 22: '22px',\n 24: '24px',\n 30: '30px',\n 32: '32px',\n 40: '40px',\n 48: '48px'\n}\n\nconst allowedTextStyles = {\n /* # Headline */\n '.mob-headline-bold-m': {\n '@apply font-bold text-28 leading-32': ''\n },\n '.mob-headline-bold-s': {\n '@apply font-bold text-24 leading-30': ''\n },\n /* # Title */\n '.mob-title-bold-l': {\n '@apply font-bold text-20 leading-24': ''\n },\n '.mob-title-bold-m': {\n '@apply font-bold text-18 leading-22': ''\n },\n /* # Body */\n '.mob-body-medium-l': {\n '@apply font-medium text-16 leading-22': ''\n },\n '.mob-body-regular-l': {\n '@apply font-normal text-16 leading-22': ''\n },\n '.mob-body-medium-m': {\n '@apply font-medium text-14 leading-20': ''\n },\n '.mob-body-regular-m': {\n '@apply font-normal text-14 leading-20': ''\n },\n '.mob-body-regular-s': {\n '@apply font-normal text-12 leading-20': ''\n },\n\n /* -------- Desktop Typography -------- */\n /* # Headline */\n '.desk-headline-bold-l': {\n '@apply font-bold text-40 leading-48': ''\n },\n '.desk-headline-bold-m': {\n '@apply font-bold text-32 leading-40': ''\n },\n\n /* # Title */\n '.desk-title-bold-l': {\n '@apply font-bold text-24 leading-30': ''\n },\n '.desk-title-bold-s': {\n '@apply font-bold text-18 leading-22': ''\n },\n\n /* # Body */\n '.desk-body-medium-l': {\n '@apply font-medium text-16 leading-22': ''\n },\n '.desk-body-regular-l': {\n '@apply font-normal text-16 leading-22': ''\n },\n '.desk-body-regular-m': {\n '@apply font-normal text-14 leading-20': ''\n },\n '.desk-body-regular-s': {\n '@apply font-normal text-12 leading-16': ''\n }\n}\n\nexport { allowedLineHeight, allowedFontSize, allowedTextStyles }\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function() {\n return _default;\n }\n});\nfunction createPlugin(plugin, config) {\n return {\n handler: plugin,\n config\n };\n}\ncreatePlugin.withOptions = function(pluginFunction, configFunction = ()=>({})) {\n const optionsFunction = function(options) {\n return {\n __options: options,\n handler: pluginFunction(options),\n config: configFunction(options)\n };\n };\n optionsFunction.__isOptionsFunction = true;\n // Expose plugin dependencies so that `object-hash` returns a different\n // value if anything here changes, to ensure a rebuild is triggered.\n optionsFunction.__pluginFunction = pluginFunction;\n optionsFunction.__configFunction = configFunction;\n return optionsFunction;\n};\nconst _default = createPlugin;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"default\", {\n enumerable: true,\n get: function() {\n return _default;\n }\n});\nconst _createPlugin = /*#__PURE__*/ _interop_require_default(require(\"../util/createPlugin\"));\nfunction _interop_require_default(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nconst _default = _createPlugin.default;\n","let createPlugin = require('./lib/public/create-plugin')\nmodule.exports = (createPlugin.__esModule ? createPlugin : { default: createPlugin }).default\n","const plugin = require(\"tailwindcss/plugin\")\n\nfunction filterDefault(values) {\n\treturn Object.fromEntries(\n\t\tObject.entries(values).filter(([key]) => key !== \"DEFAULT\"),\n\t)\n}\n\nmodule.exports = plugin(\n\t({ addUtilities, matchUtilities, theme }) => {\n\t\taddUtilities({\n\t\t\t\"@keyframes enter\": theme(\"keyframes.enter\"),\n\t\t\t\"@keyframes exit\": theme(\"keyframes.exit\"),\n\t\t\t\".animate-in\": {\n\t\t\t\tanimationName: \"enter\",\n\t\t\t\tanimationDuration: theme(\"animationDuration.DEFAULT\"),\n\t\t\t\t\"--tw-enter-opacity\": \"initial\",\n\t\t\t\t\"--tw-enter-scale\": \"initial\",\n\t\t\t\t\"--tw-enter-rotate\": \"initial\",\n\t\t\t\t\"--tw-enter-translate-x\": \"initial\",\n\t\t\t\t\"--tw-enter-translate-y\": \"initial\",\n\t\t\t},\n\t\t\t\".animate-out\": {\n\t\t\t\tanimationName: \"exit\",\n\t\t\t\tanimationDuration: theme(\"animationDuration.DEFAULT\"),\n\t\t\t\t\"--tw-exit-opacity\": \"initial\",\n\t\t\t\t\"--tw-exit-scale\": \"initial\",\n\t\t\t\t\"--tw-exit-rotate\": \"initial\",\n\t\t\t\t\"--tw-exit-translate-x\": \"initial\",\n\t\t\t\t\"--tw-exit-translate-y\": \"initial\",\n\t\t\t},\n\t\t})\n\n\t\tmatchUtilities(\n\t\t\t{\n\t\t\t\t\"fade-in\": (value) => ({ \"--tw-enter-opacity\": value }),\n\t\t\t\t\"fade-out\": (value) => ({ \"--tw-exit-opacity\": value }),\n\t\t\t},\n\t\t\t{ values: theme(\"animationOpacity\") },\n\t\t)\n\n\t\tmatchUtilities(\n\t\t\t{\n\t\t\t\t\"zoom-in\": (value) => ({ \"--tw-enter-scale\": value }),\n\t\t\t\t\"zoom-out\": (value) => ({ \"--tw-exit-scale\": value }),\n\t\t\t},\n\t\t\t{ values: theme(\"animationScale\") },\n\t\t)\n\n\t\tmatchUtilities(\n\t\t\t{\n\t\t\t\t\"spin-in\": (value) => ({ \"--tw-enter-rotate\": value }),\n\t\t\t\t\"spin-out\": (value) => ({ \"--tw-exit-rotate\": value }),\n\t\t\t},\n\t\t\t{ values: theme(\"animationRotate\") },\n\t\t)\n\n\t\tmatchUtilities(\n\t\t\t{\n\t\t\t\t\"slide-in-from-top\": (value) => ({\n\t\t\t\t\t\"--tw-enter-translate-y\": `-${value}`,\n\t\t\t\t}),\n\t\t\t\t\"slide-in-from-bottom\": (value) => ({\n\t\t\t\t\t\"--tw-enter-translate-y\": value,\n\t\t\t\t}),\n\t\t\t\t\"slide-in-from-left\": (value) => ({\n\t\t\t\t\t\"--tw-enter-translate-x\": `-${value}`,\n\t\t\t\t}),\n\t\t\t\t\"slide-in-from-right\": (value) => ({\n\t\t\t\t\t\"--tw-enter-translate-x\": value,\n\t\t\t\t}),\n\t\t\t\t\"slide-out-to-top\": (value) => ({\n\t\t\t\t\t\"--tw-exit-translate-y\": `-${value}`,\n\t\t\t\t}),\n\t\t\t\t\"slide-out-to-bottom\": (value) => ({\n\t\t\t\t\t\"--tw-exit-translate-y\": value,\n\t\t\t\t}),\n\t\t\t\t\"slide-out-to-left\": (value) => ({\n\t\t\t\t\t\"--tw-exit-translate-x\": `-${value}`,\n\t\t\t\t}),\n\t\t\t\t\"slide-out-to-right\": (value) => ({\n\t\t\t\t\t\"--tw-exit-translate-x\": value,\n\t\t\t\t}),\n\t\t\t},\n\t\t\t{ values: theme(\"animationTranslate\") },\n\t\t)\n\n\t\tmatchUtilities(\n\t\t\t{ duration: (value) => ({ animationDuration: value }) },\n\t\t\t{ values: filterDefault(theme(\"animationDuration\")) },\n\t\t)\n\n\t\tmatchUtilities(\n\t\t\t{ delay: (value) => ({ animationDelay: value }) },\n\t\t\t{ values: theme(\"animationDelay\") },\n\t\t)\n\n\t\tmatchUtilities(\n\t\t\t{ ease: (value) => ({ animationTimingFunction: value }) },\n\t\t\t{ values: filterDefault(theme(\"animationTimingFunction\")) },\n\t\t)\n\n\t\taddUtilities({\n\t\t\t\".running\": { animationPlayState: \"running\" },\n\t\t\t\".paused\": { animationPlayState: \"paused\" },\n\t\t})\n\n\t\tmatchUtilities(\n\t\t\t{ \"fill-mode\": (value) => ({ animationFillMode: value }) },\n\t\t\t{ values: theme(\"animationFillMode\") },\n\t\t)\n\n\t\tmatchUtilities(\n\t\t\t{ direction: (value) => ({ animationDirection: value }) },\n\t\t\t{ values: theme(\"animationDirection\") },\n\t\t)\n\n\t\tmatchUtilities(\n\t\t\t{ repeat: (value) => ({ animationIterationCount: value }) },\n\t\t\t{ values: theme(\"animationRepeat\") },\n\t\t)\n\t},\n\t{\n\t\ttheme: {\n\t\t\textend: {\n\t\t\t\tanimationDelay: ({ theme }) => ({\n\t\t\t\t\t...theme(\"transitionDelay\"),\n\t\t\t\t}),\n\t\t\t\tanimationDuration: ({ theme }) => ({\n\t\t\t\t\t0: \"0ms\",\n\t\t\t\t\t...theme(\"transitionDuration\"),\n\t\t\t\t}),\n\t\t\t\tanimationTimingFunction: ({ theme }) => ({\n\t\t\t\t\t...theme(\"transitionTimingFunction\"),\n\t\t\t\t}),\n\t\t\t\tanimationFillMode: {\n\t\t\t\t\tnone: \"none\",\n\t\t\t\t\tforwards: \"forwards\",\n\t\t\t\t\tbackwards: \"backwards\",\n\t\t\t\t\tboth: \"both\",\n\t\t\t\t},\n\t\t\t\tanimationDirection: {\n\t\t\t\t\tnormal: \"normal\",\n\t\t\t\t\treverse: \"reverse\",\n\t\t\t\t\talternate: \"alternate\",\n\t\t\t\t\t\"alternate-reverse\": \"alternate-reverse\",\n\t\t\t\t},\n\t\t\t\tanimationOpacity: ({ theme }) => ({\n\t\t\t\t\tDEFAULT: 0,\n\t\t\t\t\t...theme(\"opacity\"),\n\t\t\t\t}),\n\t\t\t\tanimationTranslate: ({ theme }) => ({\n\t\t\t\t\tDEFAULT: \"100%\",\n\t\t\t\t\t...theme(\"translate\"),\n\t\t\t\t}),\n\t\t\t\tanimationScale: ({ theme }) => ({\n\t\t\t\t\tDEFAULT: 0,\n\t\t\t\t\t...theme(\"scale\"),\n\t\t\t\t}),\n\t\t\t\tanimationRotate: ({ theme }) => ({\n\t\t\t\t\tDEFAULT: \"30deg\",\n\t\t\t\t\t...theme(\"rotate\"),\n\t\t\t\t}),\n\t\t\t\tanimationRepeat: {\n\t\t\t\t\t0: \"0\",\n\t\t\t\t\t1: \"1\",\n\t\t\t\t\tinfinite: \"infinite\",\n\t\t\t\t},\n\t\t\t\tkeyframes: {\n\t\t\t\t\tenter: {\n\t\t\t\t\t\tfrom: {\n\t\t\t\t\t\t\topacity: \"var(--tw-enter-opacity, 1)\",\n\t\t\t\t\t\t\ttransform:\n\t\t\t\t\t\t\t\t\"translate3d(var(--tw-enter-translate-x, 0), var(--tw-enter-translate-y, 0), 0) scale3d(var(--tw-enter-scale, 1), var(--tw-enter-scale, 1), var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\texit: {\n\t\t\t\t\t\tto: {\n\t\t\t\t\t\t\topacity: \"var(--tw-exit-opacity, 1)\",\n\t\t\t\t\t\t\ttransform:\n\t\t\t\t\t\t\t\t\"translate3d(var(--tw-exit-translate-x, 0), var(--tw-exit-translate-y, 0), 0) scale3d(var(--tw-exit-scale, 1), var(--tw-exit-scale, 1), var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n)\n","import type { Config } from 'tailwindcss'\nimport plugin from 'tailwindcss/plugin'\nimport tailwindAnimation from 'tailwindcss-animate'\nimport {\n allowedBackgroundColors,\n allowedBackgroundDeg,\n allowedBannersBackgroundColors,\n allowedBorderRadius,\n allowedFontSize,\n allowedIconsColors,\n allowedLineHeight,\n allowedStrokeColors,\n allowedTextColors,\n allowedTextStyles\n} from '../shared/constants'\n\nexport const tailwindConfigBase: Omit<Config, 'content'> = {\n theme: {\n backgroundColor: {\n color: allowedBackgroundColors,\n banner: allowedBannersBackgroundColors,\n icon: allowedIconsColors\n },\n textColor: {\n icon: allowedIconsColors,\n color: allowedTextColors\n },\n fill: allowedIconsColors,\n stroke: allowedIconsColors,\n borderColor: allowedStrokeColors,\n outlineColor: allowedStrokeColors,\n borderRadius: allowedBorderRadius,\n fontFamily: { roboto: ['var(--ff-roboto)', 'sans-serif'] },\n fontSize: allowedFontSize,\n lineHeight: allowedLineHeight,\n gradientColorStops: allowedBackgroundColors,\n boxShadow: {\n sm: '0 8px 20px 0 rgba(0, 0, 0, 0.08)',\n md: '0 12px 20px 0 rgba(0, 33, 87, 0.10)',\n lg: '0 16px 24px 0 rgba(0, 33, 87, 0.16)'\n },\n extend: {\n bgGradientDeg: allowedBackgroundDeg,\n width: {\n 'popper-content': 'var(--radix-popover-content-available-width)',\n 'popper-trigger': 'var(--radix-popover-trigger-width)',\n 'autocomplete-input': 'var(--input-width)',\n 'select-trigger': 'var(--button-width)'\n },\n transitionDuration: {\n DEFAULT: '0.3s',\n 12: '0.12s',\n 15: '0.15s',\n 2: '2s'\n },\n transitionTimingFunction: {\n DEFAULT: 'ease-in-out'\n },\n keyframes: {\n slideDown: {\n from: { height: '0px' },\n to: { height: 'var(--radix-accordion-content-height)' }\n },\n slideUp: {\n from: { height: 'var(--radix-accordion-content-height)' },\n to: { height: '0px' }\n },\n 'scale-in': {\n from: { opacity: '0', scale: '0' },\n to: { opacity: '1', scale: '1' }\n },\n 'progress-loader': {\n '100%': {\n backgroundPosition: '100% 100%'\n }\n },\n 'caret-blink': {\n '0%,70%,100%': { opacity: '1' },\n '20%,50%': { opacity: '0' }\n },\n shine: {\n to: {\n 'background-position-x': '-200%'\n }\n }\n },\n animation: {\n slideDown: 'slideDown 0.3s cubic-bezier(0.87, 0, 0.13, 1)',\n slideUp: 'slideUp 0.3s cubic-bezier(0.87, 0, 0.13, 1)',\n 'scale-in': 'scale-in 0.3s ease-in-out',\n 'progress-loader': 'progress-loader 250s linear infinite',\n 'caret-blink': 'caret-blink 1.25s ease-out infinite'\n }\n }\n },\n plugins: [\n tailwindAnimation,\n plugin(({ addComponents }) => {\n addComponents(allowedTextStyles)\n }),\n plugin(function ({ matchUtilities, theme }) {\n matchUtilities(\n {\n 'bg-deg-gradient': (angle) => ({\n 'background-image': `linear-gradient(${angle}, var(--tw-gradient-stops))`\n })\n },\n {\n values: Object.assign(theme('bgGradientDeg', {}), {})\n }\n )\n })\n ]\n}\n","import type { Config } from 'tailwindcss'\n\nexport const extendsPreset: Omit<Config, 'content'> = {\n theme: {\n extend: {\n transitionDuration: {\n DEFAULT: '0.3s',\n 12: '0.12s',\n 15: '0.15s',\n 2: '2s',\n 333: '333s'\n },\n transitionTimingFunction: {\n DEFAULT: 'ease-in-out'\n },\n keyframes: {\n slideDown: {\n from: { height: '0px' },\n to: { height: 'var(--radix-accordion-content-height)' }\n },\n slideUp: {\n from: { height: 'var(--radix-accordion-content-height)' },\n to: { height: '0px' }\n },\n 'scale-in': {\n from: { opacity: '0', scale: '0' },\n to: { opacity: '1', scale: '1' }\n },\n 'progress-loader': {\n '100%': {\n backgroundPosition: '100% 100%'\n }\n }\n },\n animation: {\n slideDown: 'slideDown 0.3s cubic-bezier(0.87, 0, 0.13, 1)',\n slideUp: 'slideUp 0.3s cubic-bezier(0.87, 0, 0.13, 1)',\n 'scale-in': 'scale-in 0.3s ease-in-out',\n 'progress-loader': 'progress-loader 250s linear infinite'\n }\n }\n }\n}\n","// Тут через алиасы не импортируй, иначе не будет работать\nimport type { Config } from 'tailwindcss'\nimport plugin from 'tailwindcss/plugin'\nimport tailwindAnimation from 'tailwindcss-animate'\nimport {\n allowedBackgroundColors,\n allowedBackgroundDeg,\n allowedBannersBackgroundColors,\n allowedBorderRadius,\n allowedFontSize,\n allowedIconsColors,\n allowedLineHeight,\n allowedStrokeColors,\n allowedTextColors,\n allowedTextStyles,\n allowedZIndex\n} from '../../shared/constants'\n\nexport const resetPreset: Omit<Config, 'content'> = {\n theme: {\n screens: {\n mobile: { max: '1187px' },\n desktop: '1188px'\n },\n backgroundColor: {\n color: allowedBackgroundColors,\n banner: allowedBannersBackgroundColors,\n icon: allowedIconsColors\n },\n textColor: {\n icon: allowedIconsColors,\n color: allowedTextColors\n },\n fill: allowedIconsColors,\n stroke: allowedIconsColors,\n borderColor: allowedStrokeColors,\n outlineColor: allowedStrokeColors,\n borderRadius: allowedBorderRadius,\n fontFamily: { roboto: ['var(--ff-roboto)', 'sans-serif'] },\n fontSize: allowedFontSize,\n lineHeight: allowedLineHeight,\n gradientColorStops: allowedBackgroundColors,\n boxShadow: {\n sm: '0 8px 20px 0 rgba(0, 0, 0, 0.08)',\n md: '0 12px 20px 0 rgba(0, 33, 87, 0.10)',\n lg: '0 16px 24px 0 rgba(0, 33, 87, 0.16)'\n },\n zIndex: allowedZIndex,\n extend: {\n bgGradientDeg: allowedBackgroundDeg\n }\n },\n plugins: [\n tailwindAnimation,\n plugin(({ addComponents }) => {\n addComponents(allowedTextStyles)\n }),\n plugin(function ({ matchUtilities, theme }) {\n matchUtilities(\n {\n 'bg-deg-gradient': (angle) => ({\n 'background-image': `linear-gradient(${angle}, var(--tw-gradient-stops))`\n })\n },\n {\n values: Object.assign(theme('bgGradientDeg', {}), {})\n }\n )\n })\n ]\n}\n","export type RequestMethod = { method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH' }\nexport type ApiInstance = {\n baseUrl: string\n url: string\n init?: RequestInit & RequestMethod\n}\n\nexport class ApiError extends Error {\n constructor(public response: Response) {\n super('ApiError: ' + response.status)\n }\n}\n\nexport const defaultHeaders = {\n 'Content-Type': 'application/json'\n}\n\nexport const apiInstance = async <T>({ url, init, baseUrl }: ApiInstance) => {\n const headers = init?.headers ?? {}\n const body = init?.body && init?.body\n\n const result = await fetch(`${baseUrl}${url}`, {\n headers: {\n ...defaultHeaders,\n ...headers\n },\n body,\n ...init\n })\n\n if (!result.ok) {\n throw new ApiError(result)\n }\n\n const data = (await result.json()) as Promise<T>\n return data\n}\n","import type { IFooterNavLinks, IFooterPhones, IFooterSocialLinks } from './types'\n\nexport const defaultCopyright = (\n <>\n © 2004-2024, ПАО «Совкомбанк». Все права защищены. <br className='mobile:hidden' /> Генеральная лицензия Банка России №963 от\n 5 декабря 2014 г.\n </>\n)\n\nexport const defaultPhones: IFooterPhones[] = [\n { phone: '8 800 100-00-06', text: 'Звонок по России (бесплатно)' },\n { phone: '+7 (495) 988 00 00', text: 'Для звонков из-за рубежа (платно)' }\n]\n\nexport const defaultSocialsLinks: IFooterSocialLinks[] = [\n { iconName: 'social/vk', href: 'https://vk.com/sovcombank' },\n { iconName: 'social/telegram', href: 'https://t.me/sovcombankofficial' },\n { iconName: 'social/classmates', href: 'https://ok.ru/paosovcombank' }\n]\n\nexport const defaultNavigationLinks: IFooterNavLinks[] = [\n {\n groupLabel: 'Совкомбанк',\n links: [\n { text: 'О банке', href: '/' },\n { text: 'Реквизиты и лицензии', href: '/' },\n { text: 'Пресс-центр', href: '/' },\n { text: 'Удостоверяющий центр ПАО «Совкомбанк»', href: '/' },\n { text: 'Работа у нас', href: '/' },\n { text: 'Контакты', href: '/' },\n { text: 'Раскрытие информации', href: '/' },\n { text: 'Страница раскрытия информации в Интерфакс', href: '/' },\n { text: 'Реализация залогового имущества', href: '/' },\n { text: 'Клиентам и партнерам', href: '/' },\n { text: 'Биометрия', href: '/' },\n { text: 'Стандарты безопасности', href: '/' },\n { text: 'Информация о процентных ставках по договорам банковского вклада с физическими лицами', href: '/' },\n { text: 'ООО «Совком Финанс»', href: '/' },\n { text: 'Безопасность', href: '/' }\n ]\n },\n {\n groupLabel: 'Сервисы',\n links: [\n { text: 'Подарочная карта «Халва»', href: '/' },\n { text: 'Страховые продукты', href: '/' },\n { text: 'МультиЮрист', href: '/' },\n { text: 'Единая социальная карта «Уралочка»', href: '/' },\n { text: 'Единая Карта Жителя Мурманской области', href: '/' },\n { text: 'Безопасные расчёты', href: '/' },\n { text: 'Улучшение кредитной истории', href: '/' },\n { text: 'Дистанционные сервисы Совкомбанка', href: '/' },\n { text: 'Программы реструктуризации долга', href: '/' }\n ]\n },\n {\n groupLabel: 'Услуги банка',\n links: [\n { text: 'Карты', href: '/' },\n { text: 'Кредиты', href: '/' },\n { text: 'Кредиты наличными', href: '/' },\n { text: 'Ипотека', href: '/' },\n { text: 'Автокредиты', href: '/' },\n { text: 'Кредитный калькулятор', href: '/' },\n { text: 'Вклады', href: '/' },\n { text: 'Инвестиции', href: '/' },\n { text: 'Платежи', href: '/' },\n { text: 'Сервисы', href: '/' },\n { text: 'Малому бизнесу и ИП', href: '/' },\n { text: 'Корпоративным клиентам', href: '/' },\n { text: 'CIB', href: '/' },\n { text: 'Драгоценные металлы в слитках', href: '/' },\n { text: 'Счета в драгоценных металлах', href: '/' }\n ]\n },\n {\n groupLabel: 'Клиентам других банков',\n links: [\n { text: 'Держателям карт рассрочки Банка Хоум Кредит', href: '/' },\n { text: 'ПАО КБ «Восточный»', href: '/' },\n { text: 'Держателям карт «Совесть»', href: '/' },\n { text: 'АО «Нордеа Банк»', href: '/' },\n { text: 'ЗАО «ДжиИ Мани банк»', href: '/' },\n { text: 'АО «Меткомбанк»', href: '/' },\n { text: 'АКБ «РосЕвроБанк» (АО)', href: '/' },\n { text: 'ПАО «Татфондбанк»', href: '/' },\n { text: 'АО АКБ «Экспресс-Волга»', href: '/' },\n { text: 'АО «ВКАБАНК»', href: '/' },\n { text: 'ООО «ОНЕЙ БАНК»', href: '/' },\n { text: 'АО «Евразийский»', href: '/' },\n { text: 'АО «НФК»', href: '/' },\n { text: 'ООО «РТС-Капитал»', href: '/' },\n { text: 'ООО «ИК Септем Капитал»', href: '/' },\n { text: 'Помощь', href: '/' },\n { text: 'Офисы и банкоматы', href: '/' }\n ]\n }\n]\n","import type { IFooterSocialLinks } from '../model/types'\nimport { Icon } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TSocialLinksClasses = {\n socialRoot?: string\n socialLink?: string\n socialIcon?: string\n}\n\ninterface ISocialLinksProps {\n socialsLinks: IFooterSocialLinks[]\n classes?: TSocialLinksClasses\n}\n\nexport const SocialLinks = ({ socialsLinks, classes }: ISocialLinksProps) => {\n return (\n <div className={cn('mt-4 flex items-center gap-2 desktop:mt-6', classes?.socialRoot)}>\n {socialsLinks?.map(({ iconName, href }) => (\n <a\n className={cn('flex size-8 items-center justify-center rounded-full bg-[#52576a] p-2', classes?.socialLink)}\n href={href}\n key={href}\n aria-label={iconName.replace('social/', '')}\n >\n <Icon name={iconName} className={cn('h-full w-full text-icon-white', classes?.socialIcon)} />\n </a>\n ))}\n </div>\n )\n}\n","import type { IFooterPhones } from '../model/types'\nimport { PhoneView } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TPhoneBlockClasses = {\n phonesRoot?: string\n phoneWrapper?: string\n phoneText?: string\n phoneLink?: string\n}\n\ninterface IPhonesBlockProps {\n phones: IFooterPhones[]\n classes?: TPhoneBlockClasses\n}\n\nexport const PhonesBlock = ({ phones, classes }: IPhonesBlockProps) => {\n return (\n <div className={cn('flex flex-col gap-4 desktop:items-end', classes?.phonesRoot)}>\n {phones?.map(({ phone, text }) => (\n <PhoneView\n key={phone}\n phone={phone}\n text={text}\n classes={{\n wrapper: cn(classes?.phoneWrapper),\n text: cn('text-color-footer', classes?.phoneText),\n link: cn('text-color-white mobile:m-0', classes?.phoneLink)\n }}\n />\n ))}\n </div>\n )\n}\n","import type { IFooterNavLinks } from '../model/types'\nimport { CustomLink } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TNavigationLinksClasses = {\n navRoot?: string\n navGroup?: string\n navLabel?: string\n navLinks?: string\n navLink?: string\n navLinkIcon?: string\n}\n\ninterface INavLinksProps {\n navigationLinks: IFooterNavLinks[]\n classes?: TNavigationLinksClasses\n}\n\nexport const NavLinks = ({ navigationLinks, classes }: INavLinksProps) => {\n return (\n <div\n className={cn(\n 'mt-6 grid grid-cols-1 gap-6 border-b border-blue-grey-500 pb-6 desktop:my-8 desktop:grid-cols-4 desktop:gap-10 desktop:pb-8',\n classes?.navRoot\n )}\n >\n {navigationLinks?.map(({ groupLabel, links }) => (\n <div key={groupLabel} className={cn('flex flex-col gap-4', classes?.navGroup)}>\n <div className={cn('desk-body-medium-l text-color-white', classes?.navLabel)}>{groupLabel}</div>\n <div className={cn('flex flex-col gap-1', classes?.navLinks)}>\n {links?.map(({ text, href }) => (\n <CustomLink\n key={text}\n href={href}\n aria-label={text}\n intent='white'\n classes={{\n link: classes?.navLink,\n icon: classes?.navLinkIcon\n }}\n >\n {text}\n </CustomLink>\n ))}\n </div>\n </div>\n ))}\n </div>\n )\n}\n","import * as React from 'react'\nimport { cn } from '$/shared/utils'\n\nexport type TCopyrightClasses = {\n copyRight?: string\n}\n\ninterface ICopyrightProps {\n text?: string | React.ReactElement\n classes?: TCopyrightClasses\n withSiteMap?: boolean\n}\n\nexport const Copyright = ({ text, classes, withSiteMap }: ICopyrightProps) => {\n return (\n <div className={cn('desk-body-regular-m text-color-footer', { 'mt-6 desktop:mt-8': !withSiteMap }, classes?.copyRight)}>\n {text}\n </div>\n )\n}\n","import { Icon } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TFooterLogoClasses = {\n footerLogo?: string\n footerLogoIcon?: string\n}\n\nexport interface IFooterLogoProps {\n classes?: TFooterLogoClasses\n}\n\nexport const FooterLogo = ({ classes }: IFooterLogoProps) => {\n return (\n <a\n aria-label='logo'\n href='https://sovcombank.ru/'\n className={cn('block h-[24px] w-[132px] desktop:h-[32px] desktop:w-[194px]', classes?.footerLogo)}\n >\n <Icon name='brandLogos/logoWhite' className={cn('size-full', classes?.footerLogoIcon)} />\n </a>\n )\n}\n","import { CustomLink } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TSiteMapClasses = {\n siteMapLink?: string\n siteMapLinkIcon?: string\n}\n\nexport interface ISiteMapProps {\n classes?: TSiteMapClasses\n}\n\nexport const SiteMap = ({ classes }: ISiteMapProps) => {\n return (\n <CustomLink\n intent='white'\n href='https://sovcombank.ru/site-map'\n target='_blank'\n aria-label='site-map'\n rel='noreferrer'\n classes={{\n link: cn('mobile:mt-6', classes?.siteMapLink),\n icon: classes?.siteMapLinkIcon\n }}\n >\n Карта сайта\n </CustomLink>\n )\n}\n","import * as React from 'react'\nimport { defaultCopyright, defaultNavigationLinks, defaultPhones, defaultSocialsLinks } from './model/defaultValues'\nimport type { IFooterNavLinks, IFooterPhones, IFooterSocialLinks } from './model/types'\nimport {\n Copyright,\n FooterLogo,\n NavLinks,\n PhonesBlock,\n SiteMap,\n SocialLinks,\n type TCopyrightClasses,\n type TFooterLogoClasses,\n type TNavigationLinksClasses,\n type TPhoneBlockClasses,\n type TSiteMapClasses,\n type TSocialLinksClasses\n} from './ui'\nimport { ResponsiveContainer } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\ntype TFooterRenderBlocks = {\n withSocial?: boolean\n withPhones?: boolean\n withNavLinks?: boolean\n withCopyright?: boolean\n withSiteMap?: boolean\n}\n\ntype TFooterClasses = TSiteMapClasses &\n TFooterLogoClasses &\n TNavigationLinksClasses &\n TPhoneBlockClasses &\n TSocialLinksClasses &\n TCopyrightClasses & {\n root?: string\n footerContainer?: string\n footerWrapper?: string\n footerHead?: string\n footerSocialBlock?: string\n }\n\nexport interface IFooterProps {\n classes?: TFooterClasses\n renderBlocks?: TFooterRenderBlocks\n socialsLinks?: IFooterSocialLinks[]\n phones?: IFooterPhones[]\n navigationLinks?: IFooterNavLinks[]\n ligal?: string | React.ReactElement\n copyright?: string | React.ReactElement\n}\n\nexport const Footer = ({\n renderBlocks: { withSocial = true, withPhones = true, withNavLinks = true, withCopyright = true, withSiteMap = true } = {},\n socialsLinks = defaultSocialsLinks,\n phones = defaultPhones,\n navigationLinks = defaultNavigationLinks,\n ligal,\n copyright = defaultCopyright,\n classes\n}: IFooterProps) => {\n return (\n <footer className={cn('w-full bg-color-footer py-8 desktop:py-10', classes?.root)}>\n <ResponsiveContainer className={cn(classes?.footerContainer)}>\n <div className={cn('mobile:pb-[176px]', classes?.footerWrapper)}>\n <div\n className={cn(\n 'flex flex-col items-start justify-between gap-4 border-b border-solid border-blue-grey-500 pb-6 desktop:flex-row desktop:gap-6 desktop:pb-8',\n classes?.footerHead\n )}\n >\n <div className={cn(classes?.footerSocialBlock)}>\n <FooterLogo classes={classes} />\n {withSocial && <SocialLinks socialsLinks={socialsLinks} classes={classes} />}\n </div>\n\n {withPhones && <PhonesBlock phones={phones} classes={classes} />}\n </div>\n\n {withNavLinks && <NavLinks navigationLinks={navigationLinks} classes={classes} />}\n {ligal && ligal}\n\n <div className='flex flex-col-reverse items-start justify-between gap-4 desktop:flex-row desktop:gap-6'>\n {withCopyright && <Copyright text={copyright} classes={classes} withSiteMap={withSiteMap} />}\n {withSiteMap && <SiteMap classes={classes} />}\n </div>\n </div>\n </ResponsiveContainer>\n </footer>\n )\n}\n","import { type IHeaderWithButton, type IHeaderWithPhone } from './types'\nimport { brandLogos, Button, PhoneView, ResponsiveContainer } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TPageHeaderProps = IHeaderWithButton | IHeaderWithPhone\n\nconst renderContentVariant = (props: TPageHeaderProps) => {\n switch (props.variant) {\n case 'withButton':\n return (\n <Button intent='secondary' size='sm' {...props.buttonProps}>\n Оформить заявку\n </Button>\n )\n case 'withPhone':\n const { phone, phoneText } = props\n return <PhoneView phone={phone} text={phoneText} {...props.phoneProps} />\n default:\n return null\n }\n}\n\nexport const PageHeader = (props: TPageHeaderProps) => {\n const { logoPath = '/', logoType = 'main', classes } = props\n\n return (\n <header className={cn('flex h-[72px] items-center justify-center bg-color-white', classes?.header)}>\n <ResponsiveContainer className={cn(classes?.container)}>\n <div className={cn('flex items-center justify-between gap-5', classes?.wrapper)}>\n <a\n href={logoPath}\n aria-label='logo'\n target='_blank'\n rel='noreferrer'\n className={cn(\n 'flex items-center justify-center [&_svg]:w-[132px] desktop:[&_svg]:h-[32px] desktop:[&_svg]:w-[192px]',\n classes?.logo\n )}\n >\n {brandLogos[logoType]}\n </a>\n {renderContentVariant(props)}\n </div>\n </ResponsiveContainer>\n </header>\n )\n}\n","import { type ISingleStep } from '../Stepper'\nimport { Heading } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\ninterface ISingleStepProps extends ISingleStep {\n index: number\n classes?: ISingleStepClasses\n}\n\nexport type ISingleStepClasses = {\n singleStep?: string\n numeric?: string\n textBlock?: string\n title?: string\n description?: string\n}\n\nexport const SingleStep = ({ title, description, index, classes }: ISingleStepProps) => {\n return (\n <div\n className={cn(\n 'flex w-[328px] max-w-[328px] flex-col gap-6 rounded-md border border-solid border-blue-grey-500 p-4 desktop:w-[348px] desktop:max-w-[348px] desktop:border-none desktop:p-0',\n classes?.singleStep\n )}\n >\n <div\n className={cn(\n 'mob-headline-bold-s flex size-10 items-center justify-center rounded-sm bg-color-blue-grey-500 text-color-white desktop:desk-title-bold-l desktop:size-12',\n classes?.numeric\n )}\n >\n {index}\n </div>\n <div className={cn('flex flex-col gap-4', classes?.textBlock)}>\n <Heading as='h4' className={cn('text-color-dark', classes?.title)}>\n {title}\n </Heading>\n <p className={cn('desk-body-regular-l text-color-tetriary', classes?.description)}>{description}</p>\n </div>\n </div>\n )\n}\n","import * as React from 'react'\nimport { type HTMLAttributes } from 'react'\nimport { type ISingleStepClasses, SingleStep } from './ui/SingleStep'\nimport { Heading, ResponsiveContainer, Section } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TStepperClasses = ISingleStepClasses & {\n root?: string\n headline?: string\n stepsWrapper?: string\n}\n\nexport interface ISingleStep {\n title: string\n description: string | React.ReactElement\n}\n\nexport interface IStepperProps extends HTMLAttributes<HTMLDivElement> {\n heading: string\n stepsList: ISingleStep[]\n classes?: TStepperClasses\n}\n\nexport const Stepper = ({ heading, stepsList, classes }: IStepperProps) => {\n return (\n <Section>\n <ResponsiveContainer>\n <div className={cn('flex flex-col gap-12 desktop:items-start', classes?.root)}>\n <Heading as='h2' className={cn('text-color-dark', classes?.headline)}>\n {heading}\n </Heading>\n <div\n className={cn(\n 'flex w-full flex-col items-start gap-6 desktop:flex-row desktop:items-center desktop:gap-12',\n classes?.stepsWrapper\n )}\n >\n {stepsList?.map((step, index) => <SingleStep key={step.title} index={index + 1} {...step} classes={classes} />)}\n </div>\n </div>\n </ResponsiveContainer>\n </Section>\n )\n}\n","import { cva } from 'class-variance-authority'\r\n\r\nexport const titleConfig = cva('', {\r\n variants: {\r\n intent: {\r\n twoItems: 'mob-headline-bold-s mb-6 desktop:desk-headline-bold-m desktop:mb-12',\r\n fourItems: 'mob-title-bold-l desktop:desk-title-bold-l mb-8'\r\n },\r\n desktopHidden: {\r\n true: 'desktop:hidden'\r\n },\r\n mobileHidden: {\r\n true: 'mobile:hidden'\r\n }\r\n },\r\n defaultVariants: {\r\n intent: 'twoItems'\r\n }\r\n})\r\n\r\nexport const listItemConfig = cva('desktop:max-h-[98px]', {\r\n variants: {\r\n intent: {\r\n twoItems: '',\r\n fourItems: ''\r\n },\r\n withButton: {\r\n true: ''\r\n }\r\n },\r\n compoundVariants: [\r\n {\r\n intent: 'twoItems',\r\n withButton: true,\r\n class: 'mb-8 desktop:flex'\r\n },\r\n {\r\n intent: 'twoItems',\r\n withButton: false,\r\n class: 'desktop:flex'\r\n },\r\n {\r\n intent: 'fourItems',\r\n withButton: true,\r\n class: 'desktop:grid grid-rows-2 mb-8 desktop:gap-x-10 desktop:gap-y-4 grid-flow-col'\r\n },\r\n {\r\n intent: 'fourItems',\r\n withButton: false,\r\n class: 'desktop:grid grid-rows-2 desktop:gap-x-10 desktop:gap-y-4 grid-flow-col'\r\n }\r\n ]\r\n})\r\n\r\nexport const itemConfig = cva('border-blue-grey-500 pb-6 mobile:mb-6 mobile:border-b mobile:last:pb-0 mobile:last:mb-0', {\r\n variants: {\r\n intent: {\r\n twoItems:\r\n 'last:border-none relative desktop:first:after:top-1/2 desktop:first:after:-translate-y-1/2 desktop:first:after:right-0 desktop:first:after:content-[\"\"] desktop:first:after:block desktop:first:after:absolute desktop:first:after:w-[1px] desktop:first:after:h-[64px] desktop:first:after:bg-color-blue-grey-500 desktop:ml-8 desktop:pr-8 desktop:first:ml-0 desktop:last:pr-0 desktop:pb-3',\r\n fourItems: ' mobile:last:border-none desktop:w-[264px] desktop:odd:border-b desktop:pb-0 desktop:odd:pb-3'\r\n }\r\n },\r\n defaultVariants: {\r\n intent: 'twoItems'\r\n }\r\n})\r\n\r\nexport const containerImgConfig = cva('mobile:mx-auto mobile:mb-8, h-[172px] w-[280px] ', {\r\n variants: {\r\n intent: {\r\n twoItems: 'desktop:h-[232px] desktop:w-[500px]',\r\n fourItems: ' '\r\n },\r\n withButton: {\r\n true: true,\r\n false: false\r\n }\r\n },\r\n defaultVariants: {\r\n intent: 'twoItems'\r\n },\r\n compoundVariants: [\r\n {\r\n intent: 'fourItems',\r\n withButton: true,\r\n class: 'desktop:h-[360px] desktop:w-[500px]'\r\n },\r\n {\r\n intent: 'fourItems',\r\n withButton: false,\r\n class: 'desktop:h-[272px] desktop:w-[500px]'\r\n }\r\n ]\r\n})\r\n","import { itemConfig } from '../model/cva'\r\nimport { type ITextItem } from '../model/types'\r\nimport { Icon, Popover } from '$/shared/ui'\r\nimport { cn } from '$/shared/utils'\r\n\r\nexport const TextItem = ({ data, intent }: ITextItem) => {\r\n const { title, description, popoverText } = data\r\n return (\r\n <li className={cn(itemConfig({ intent }))}>\r\n <div className='desktop:max-w-[264px]'>\r\n <div className={cn('mb-2 flex items-center gap-2')}>\r\n <h4 className={cn('mob-title-bold-m text-color-dark')}>{title}</h4>\r\n {popoverText && (\r\n <Popover triggerElement={<Icon className={cn('size-5 text-icon-blue-grey-600')} name='info/helpCircle' />}>\r\n {popoverText}\r\n </Popover>\r\n )}\r\n </div>\r\n\r\n <p className={cn('mob-body-regular-l text-color-secondary')}>{description}</p>\r\n </div>\r\n </li>\r\n )\r\n}\r\n","import { type ReactElement } from 'react'\r\nimport { titleConfig } from '../model/cva'\r\nimport { type TLongBannerConfig } from '../model/types'\r\nimport { cn } from '$/shared/utils'\r\n\r\ninterface ITitleProps {\r\n intent: TLongBannerConfig['intent']\r\n title: string | ReactElement\r\n desktopHidden?: boolean\r\n mobileHidden?: boolean\r\n}\r\n\r\nexport const Title = ({ intent, title, desktopHidden = false, mobileHidden = false }: ITitleProps) => {\r\n return <h2 className={cn(titleConfig({ intent, desktopHidden, mobileHidden }))}>{title}</h2>\r\n}\r\n","import { listItemConfig } from '../model/cva'\r\nimport { type ITextContent, type TLongBannerConfig } from '../model/types'\r\nimport { TextItem } from './TextItem'\r\nimport { cn } from '$/shared/utils'\r\n\r\ninterface IListItemsProps {\r\n textContent: ITextContent[]\r\n intent: TLongBannerConfig['intent']\r\n withButton: boolean\r\n}\r\n\r\nexport const TextList = ({ textContent, intent, withButton }: IListItemsProps) => {\r\n return (\r\n <ul className={cn(listItemConfig({ intent, withButton }))}>\r\n {textContent?.map((element, index) => <TextItem intent={intent} data={element} key={index} />)}\r\n </ul>\r\n )\r\n}\r\n","import { type ReactElement } from 'react'\r\nimport { containerImgConfig } from './model/cva'\r\nimport { type IButtonConfig, type ILongBannerClasses, type ITextContent, type TLongBannerConfig } from './model/types'\r\nimport { TextList, Title } from './ui'\r\nimport { Button, ResponsiveContainer } from '$/shared/ui'\r\nimport { cn } from '$/shared/utils'\r\n\r\nexport interface ILongBannerProps extends TLongBannerConfig {\r\n title: string | ReactElement\r\n buttonConfig?: IButtonConfig\r\n textContent: ITextContent[]\r\n imageComponent: ReactElement\r\n classes?: Partial<ILongBannerClasses>\r\n}\r\n\r\nexport const LongBanner = ({\r\n title,\r\n buttonConfig,\r\n intent = 'twoItems',\r\n textContent,\r\n imageComponent,\r\n classes\r\n}: ILongBannerProps) => {\r\n const withButton = !!buttonConfig\r\n const isFourItems = intent === 'fourItems'\r\n const isTwoItems = intent === 'twoItems'\r\n\r\n return (\r\n <section className={cn(classes?.section)}>\r\n <ResponsiveContainer className={cn(classes?.mainContainer)}>\r\n {isTwoItems && <Title intent={intent} title={title} />}\r\n\r\n <div\r\n className={cn(\r\n 'bg-banner-skyblue-100 px-6 pb-8 pt-6 desktop:flex desktop:flex-row-reverse desktop:justify-between desktop:px-0 desktop:py-0 desktop:pl-12',\r\n classes?.contentContainer\r\n )}\r\n >\r\n {isFourItems && <Title intent={intent} title={title} desktopHidden={true} />}\r\n <div className={cn(containerImgConfig({ intent, withButton }), classes?.imgContainer)}>{imageComponent}</div>\r\n <div\r\n className={cn('desktop:flex desktop:flex-col desktop:justify-center desktop:py-10', classes?.textWithBtnContainer)}\r\n >\r\n {isFourItems && <Title intent={intent} title={title} mobileHidden={true} />}\r\n <TextList textContent={textContent} intent={intent} withButton={withButton} />\r\n {withButton && (\r\n <Button\r\n className={cn('w-full px-4 desktop:w-max', classes?.button)}\r\n size='lg'\r\n onClick={buttonConfig.onClick}\r\n intent='secondary'\r\n >\r\n {buttonConfig.text}\r\n </Button>\r\n )}\r\n </div>\r\n </div>\r\n </ResponsiveContainer>\r\n </section>\r\n )\r\n}\r\n"],"names":["capitalize","str","word","mergeRefs","inputRefs","filteredInputRefs","ref","inputRef","Section","children","className","props","jsx","cn","Breadcrumbs","linksList","link","Fragment","jsxs","Icon","buttonConfig","cva","ButtonIcon","forwardRef","size","intent","classes","type","customLinkConfig","linkArrowConfig","CustomLink","withIcon","disabled","icon","withUnderline","iconConfig","iconVariant","Document","text","sizeType","href","PhoneView","phone","ProgressBar","topContent","bottomContent","progress","maxPercent","Skeleton","Ligal","isExpanded","setIsExpanded","React","isClamped","setIsClamped","ligalRef","element","prev","brandLogos","FloatButton","isVisible","buttonProps","ResponsiveContainer","Button","RgxUnicode","RgxCheckForHyphen","RgxPatronymic","VALIDATION_MESSAGES","formattedDadataFio","value","parts","surname","name","patronymicArr","patronymic","zodDadataFioSchema","z","ctx","zodCalendarValidate","val","day","month","year","parsed","parse","isValid","zodPhoneSchema","operatorCode","zodOtpCodeSchema","context","rootStyles","allowedBackgroundColors","allowedTextColors","allowedBannersBackgroundColors","allowedIconsColors","allowedStrokeColors","allowedBorderRadius","allowedBackgroundDeg","allowedZIndex","allowedFontSize","allowedLineHeight","allowedTextStyles","exports","_default","createPlugin","plugin","config","pluginFunction","configFunction","optionsFunction","options","_createPlugin","_interop_require_default","require$$0","obj","filterDefault","values","key","tailwindcssAnimate","addUtilities","matchUtilities","theme","tailwindConfigBase","tailwindAnimation","addComponents","angle","extendsPreset","resetPreset","ApiError","response","defaultHeaders","apiInstance","url","init","baseUrl","headers","body","result","defaultCopyright","defaultPhones","defaultSocialsLinks","defaultNavigationLinks","SocialLinks","socialsLinks","iconName","PhonesBlock","phones","NavLinks","navigationLinks","groupLabel","links","Copyright","withSiteMap","FooterLogo","SiteMap","Footer","withSocial","withPhones","withNavLinks","withCopyright","ligal","copyright","renderContentVariant","phoneText","PageHeader","logoPath","logoType","SingleStep","title","description","index","Heading","Stepper","heading","stepsList","step","titleConfig","listItemConfig","itemConfig","containerImgConfig","TextItem","data","popoverText","Popover","Title","desktopHidden","mobileHidden","TextList","textContent","withButton","LongBanner","imageComponent","isFourItems","isTwoItems"],"mappings":"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","x_google_ignoreList":[22,23,24,25]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
type TLigalClasses = {
|
|
3
|
+
ligalRoot?: string;
|
|
4
|
+
ligalText?: string;
|
|
5
|
+
ligalButton?: string;
|
|
6
|
+
};
|
|
7
|
+
export interface ILigalProps {
|
|
8
|
+
text: string | React.ReactElement;
|
|
9
|
+
classes?: TLigalClasses;
|
|
10
|
+
}
|
|
11
|
+
export declare const Ligal: ({ text, classes }: ILigalProps) => import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export {};
|
|
@@ -11,6 +11,7 @@ export * from './input';
|
|
|
11
11
|
export * from './select';
|
|
12
12
|
export * from './checkbox';
|
|
13
13
|
export * from './FloatButton';
|
|
14
|
+
export * from './Ligal';
|
|
14
15
|
export { Accordion, type IAccordionProps } from './accordion';
|
|
15
16
|
export { Hint, type IHintProps } from './Hint';
|
|
16
17
|
export { Popover } from './Popover';
|