@scbt-ecom/ui 0.45.2 → 0.46.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/ui.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"ui.js","sources":["../lib/shared/ui/buttonIcon/ButtonIcon.tsx","../lib/shared/ui/skeleton/Skeleton.tsx","../lib/shared/ui/floatButton/FloatButton.tsx","../lib/shared/ui/progressBar/ProgressBar.tsx","../node_modules/@radix-ui/react-tabs/dist/index.mjs","../lib/shared/ui/tabSwitcher/ui/TabContent.tsx","../lib/shared/ui/tabSwitcher/TabsSwitcher.tsx","../lib/shared/ui/modal/model/helpers.ts","../lib/shared/ui/modal/ui/ModalHeader.tsx","../lib/shared/ui/modal/Modal.tsx","../lib/shared/ui/providers/NotificationProvider.tsx","../lib/shared/ui/breadcrumbs/Breadcrumbs.tsx"],"sourcesContent":["import { type ComponentProps, forwardRef, type ReactElement } from 'react'\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport { cn } from '$/shared/utils'\n\ntype ButtonClasses = {\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 ButtonProps = VariantProps<typeof buttonConfig>\n\nexport interface IButtonIconProps extends Omit<ComponentProps<'button'>, 'className'>, ButtonProps {\n children: ReactElement\n classes?: Partial<ButtonClasses>\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 { HTMLAttributes } from 'react'\nimport { cn } from '$/shared/utils'\n\nexport interface SkeletonProps extends HTMLAttributes<HTMLDivElement> {\n className?: string\n}\n\nexport const Skeleton = ({ className }: SkeletonProps) => {\n return <div className={cn('skeleton-apply h-full w-full', className)}></div>\n}\n","import { Button, type ButtonProps } from '../button'\nimport { ResponsiveContainer } from '../responsiveContainer'\nimport { cn } from '$/shared/utils'\n\ntype FloatButtonClasses = {\n root?: string\n button?: string\n}\n\nexport interface FloatButtonProps {\n isVisible: boolean\n classes?: FloatButtonClasses\n children: React.ReactElement\n buttonProps?: ButtonProps\n}\n\nexport const FloatButton = ({ isVisible, classes, children, buttonProps }: FloatButtonProps) => {\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","import * as React from 'react'\nimport { cn } from '$/shared/utils'\n\ntype ProgressBarClasses = {\n root?: 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?: ProgressBarClasses\n}\n\nexport const ProgressBar = ({ topContent, bottomContent, progress, maxPercent = 100, classes }: IProgressBarProps) => {\n return (\n <div className={cn('flex w-full flex-col', classes?.root)}>\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","\"use client\";\n\n// packages/react/tabs/src/tabs.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { createRovingFocusGroupScope } from \"@radix-ui/react-roving-focus\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport * as RovingFocusGroup from \"@radix-ui/react-roving-focus\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { jsx } from \"react/jsx-runtime\";\nvar TABS_NAME = \"Tabs\";\nvar [createTabsContext, createTabsScope] = createContextScope(TABS_NAME, [\n createRovingFocusGroupScope\n]);\nvar useRovingFocusGroupScope = createRovingFocusGroupScope();\nvar [TabsProvider, useTabsContext] = createTabsContext(TABS_NAME);\nvar Tabs = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeTabs,\n value: valueProp,\n onValueChange,\n defaultValue,\n orientation = \"horizontal\",\n dir,\n activationMode = \"automatic\",\n ...tabsProps\n } = props;\n const direction = useDirection(dir);\n const [value, setValue] = useControllableState({\n prop: valueProp,\n onChange: onValueChange,\n defaultProp: defaultValue\n });\n return /* @__PURE__ */ jsx(\n TabsProvider,\n {\n scope: __scopeTabs,\n baseId: useId(),\n value,\n onValueChange: setValue,\n orientation,\n dir: direction,\n activationMode,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n dir: direction,\n \"data-orientation\": orientation,\n ...tabsProps,\n ref: forwardedRef\n }\n )\n }\n );\n }\n);\nTabs.displayName = TABS_NAME;\nvar TAB_LIST_NAME = \"TabsList\";\nvar TabsList = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTabs, loop = true, ...listProps } = props;\n const context = useTabsContext(TAB_LIST_NAME, __scopeTabs);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeTabs);\n return /* @__PURE__ */ jsx(\n RovingFocusGroup.Root,\n {\n asChild: true,\n ...rovingFocusGroupScope,\n orientation: context.orientation,\n dir: context.dir,\n loop,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n role: \"tablist\",\n \"aria-orientation\": context.orientation,\n ...listProps,\n ref: forwardedRef\n }\n )\n }\n );\n }\n);\nTabsList.displayName = TAB_LIST_NAME;\nvar TRIGGER_NAME = \"TabsTrigger\";\nvar TabsTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTabs, value, disabled = false, ...triggerProps } = props;\n const context = useTabsContext(TRIGGER_NAME, __scopeTabs);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeTabs);\n const triggerId = makeTriggerId(context.baseId, value);\n const contentId = makeContentId(context.baseId, value);\n const isSelected = value === context.value;\n return /* @__PURE__ */ jsx(\n RovingFocusGroup.Item,\n {\n asChild: true,\n ...rovingFocusGroupScope,\n focusable: !disabled,\n active: isSelected,\n children: /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"tab\",\n \"aria-selected\": isSelected,\n \"aria-controls\": contentId,\n \"data-state\": isSelected ? \"active\" : \"inactive\",\n \"data-disabled\": disabled ? \"\" : void 0,\n disabled,\n id: triggerId,\n ...triggerProps,\n ref: forwardedRef,\n onMouseDown: composeEventHandlers(props.onMouseDown, (event) => {\n if (!disabled && event.button === 0 && event.ctrlKey === false) {\n context.onValueChange(value);\n } else {\n event.preventDefault();\n }\n }),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n if ([\" \", \"Enter\"].includes(event.key)) context.onValueChange(value);\n }),\n onFocus: composeEventHandlers(props.onFocus, () => {\n const isAutomaticActivation = context.activationMode !== \"manual\";\n if (!isSelected && !disabled && isAutomaticActivation) {\n context.onValueChange(value);\n }\n })\n }\n )\n }\n );\n }\n);\nTabsTrigger.displayName = TRIGGER_NAME;\nvar CONTENT_NAME = \"TabsContent\";\nvar TabsContent = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTabs, value, forceMount, children, ...contentProps } = props;\n const context = useTabsContext(CONTENT_NAME, __scopeTabs);\n const triggerId = makeTriggerId(context.baseId, value);\n const contentId = makeContentId(context.baseId, value);\n const isSelected = value === context.value;\n const isMountAnimationPreventedRef = React.useRef(isSelected);\n React.useEffect(() => {\n const rAF = requestAnimationFrame(() => isMountAnimationPreventedRef.current = false);\n return () => cancelAnimationFrame(rAF);\n }, []);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || isSelected, children: ({ present }) => /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": isSelected ? \"active\" : \"inactive\",\n \"data-orientation\": context.orientation,\n role: \"tabpanel\",\n \"aria-labelledby\": triggerId,\n hidden: !present,\n id: contentId,\n tabIndex: 0,\n ...contentProps,\n ref: forwardedRef,\n style: {\n ...props.style,\n animationDuration: isMountAnimationPreventedRef.current ? \"0s\" : void 0\n },\n children: present && children\n }\n ) });\n }\n);\nTabsContent.displayName = CONTENT_NAME;\nfunction makeTriggerId(baseId, value) {\n return `${baseId}-trigger-${value}`;\n}\nfunction makeContentId(baseId, value) {\n return `${baseId}-content-${value}`;\n}\nvar Root2 = Tabs;\nvar List = TabsList;\nvar Trigger = TabsTrigger;\nvar Content = TabsContent;\nexport {\n Content,\n List,\n Root2 as Root,\n Tabs,\n TabsContent,\n TabsList,\n TabsTrigger,\n Trigger,\n createTabsScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as TabPrimitive from '@radix-ui/react-tabs'\nimport { Accordion } from '../../accordion'\nimport type { ITabContent } from '../model/types'\nimport { cn } from '$/shared/utils'\n\nexport type TabContentClasses = {\n content?: string\n contentsWrapper?: string\n}\n\nexport interface TabContentProps {\n contents: ITabContent[]\n classes?: TabContentClasses\n}\n\nexport const TabContent = ({ classes, contents }: TabContentProps) => {\n return (\n <div className={cn('flex flex-col gap-4', classes?.contentsWrapper)}>\n {contents?.map(({ id, body, accordion }) => {\n if (accordion && accordion?.title) {\n return (\n <TabPrimitive.Content key={id} value={id} className={cn('py-8', classes?.content)}>\n <Accordion label={accordion?.title}>{body}</Accordion>\n </TabPrimitive.Content>\n )\n }\n\n return (\n <TabPrimitive.Content key={id} value={id} className={cn('py-8', classes?.content)}>\n {body}\n </TabPrimitive.Content>\n )\n })}\n </div>\n )\n}\n","'use client'\n\nimport * as TabPrimitive from '@radix-ui/react-tabs'\nimport type { TabRenderContent, TabsClasses } from './model/types'\nimport { TabContent } from './ui/TabContent'\nimport { cn } from '$/shared/utils'\n\nexport interface TabsSwitcherProps {\n renderContent: TabRenderContent\n value: string\n onChangeTab: (tab: string) => void\n defaultActiveTabId?: string\n classes?: TabsClasses\n}\n\nexport const TabsSwitcher = ({ renderContent, defaultActiveTabId = '1', value, onChangeTab, classes }: TabsSwitcherProps) => {\n return (\n <TabPrimitive.Root\n value={value}\n onValueChange={onChangeTab}\n defaultValue={defaultActiveTabId}\n className={cn('flex flex-col', classes?.root)}\n >\n <TabPrimitive.List className={cn('flex items-center gap-4', classes?.list)}>\n {renderContent?.triggers?.map(({ id, label }) => (\n <TabPrimitive.Trigger\n key={id}\n value={id}\n className={cn(\n 'desk-body-regular-l cursor-pointer rounded-sm bg-color-blue-grey-100 px-4 py-2 text-color-secondary outline outline-2 outline-offset-2 outline-transparent transition-colors hover:bg-color-blue-grey-200 hover:text-color-secondary data-[state=\"active\"]:!bg-color-primary-default data-[state=\"active\"]:!text-color-white',\n classes?.trigger\n )}\n >\n {label}\n </TabPrimitive.Trigger>\n ))}\n </TabPrimitive.List>\n <TabContent contents={renderContent?.contents} classes={classes?.tabContent} />\n </TabPrimitive.Root>\n )\n}\n","export const modalOverlayAnimation = {\n initial: { opacity: 0 },\n animate: { opacity: 1 },\n exit: { opacity: 0 },\n transition: { duration: 0.3, ease: 'easeInOut' }\n}\n\nexport const modalContentAnimation = {\n initial: { opacity: 0, scale: 0 },\n animate: { opacity: 1, scale: 1 },\n exit: { opacity: 0, scale: 0 },\n transition: { duration: 0.3, ease: 'easeInOut' }\n}\n","import type { ModalProps } from '../Modal'\nimport { Heading, Icon } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TModalHeaderClasses = {\n header?: string\n title?: string\n icon?: string\n}\n\nexport interface IModalHeaderProps extends Pick<ModalProps, 'closeModal' | 'title'> {\n classes?: TModalHeaderClasses\n}\n\nexport const ModalHeader = ({ title, closeModal, classes }: IModalHeaderProps) => {\n return (\n <div className={cn('flex items-start justify-between gap-4', classes?.header)}>\n {title && (\n <Heading as='h3' className={cn('flex-1 text-color-dark', classes?.title)}>\n {title}\n </Heading>\n )}\n <Icon\n onClick={closeModal}\n name='general/close'\n className={cn('size-8 cursor-pointer text-icon-dark-hover', classes?.icon)}\n />\n </div>\n )\n}\n","'use client'\n\nimport * as React from 'react'\nimport { createPortal } from 'react-dom'\nimport { AnimatePresence, motion } from 'framer-motion'\nimport { modalContentAnimation, modalOverlayAnimation } from './model/helpers'\nimport { ModalHeader, type TModalHeaderClasses } from './ui/ModalHeader'\nimport { cn } from '$/shared/utils'\n\ntype ModalClasses = {\n overlay?: string\n modal?: string\n content?: string\n modalHeader?: TModalHeaderClasses\n}\n\nexport interface ModalProps {\n children: React.ReactElement\n isModalOpen: boolean\n classes?: ModalClasses\n isPortal?: boolean\n portalContainer?: HTMLElement\n title?: string | React.ReactElement\n closeModal: () => void\n}\n\nexport const Modal = ({\n title,\n children,\n isModalOpen,\n isPortal = true,\n portalContainer = globalThis?.document?.body,\n closeModal,\n classes\n}: ModalProps) => {\n const modalBody = (\n <AnimatePresence>\n {isModalOpen && (\n <motion.div\n tabIndex={-1}\n onClick={closeModal}\n className={cn(\n 'fixed inset-0 flex h-screen w-screen items-center justify-center bg-color-overlay',\n { 'z-1000': !isPortal },\n classes?.overlay\n )}\n onKeyDown={(event) => {\n if (event.key === 'Escape') {\n closeModal()\n }\n }}\n data-test-id='modal-overlay'\n {...modalOverlayAnimation}\n >\n <motion.div\n onClick={(event) => event.stopPropagation()}\n className={cn(\n 'w-full max-w-[600px] rounded-md bg-color-white px-4 py-6 shadow-sm desktop:px-6 desktop:py-8',\n classes?.modal\n )}\n data-test-id='modal'\n {...modalContentAnimation}\n >\n <ModalHeader title={title} closeModal={closeModal} classes={classes?.modalHeader} />\n <div className={cn('mt-4', classes?.content)}>{children}</div>\n </motion.div>\n </motion.div>\n )}\n </AnimatePresence>\n )\n return <>{isPortal ? createPortal(modalBody, portalContainer) : modalBody}</>\n}\n","'use client'\n\nimport { useEffect } from 'react'\nimport toast, { Toaster, useToasterStore } from 'react-hot-toast'\n\nexport interface NotificationProviderProps {\n maxToastViewLimit?: number\n toastDuration?: number\n}\n\nexport const NotificationProvider = ({ maxToastViewLimit = 2, toastDuration = 5000 }: NotificationProviderProps) => {\n const { toasts } = useToasterStore()\n\n useEffect(() => {\n toasts\n .filter((t) => t.visible)\n .filter((_, i) => i >= maxToastViewLimit)\n .forEach((t) => toast.dismiss(t.id))\n }, [maxToastViewLimit, toasts])\n\n return (\n <Toaster\n position='top-center'\n toastOptions={{\n duration: toastDuration\n }}\n />\n )\n}\n","import { type ReactElement } from 'react'\nimport { Icon } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport interface BreadcrumbLink {\n label: string | ReactElement\n path: string\n isDisabled?: boolean\n}\ninterface BreadcrumbLinkWithoutPath {\n label: string\n isDisabled?: boolean\n}\n\nexport type LinksList = [...BreadcrumbLink[], BreadcrumbLinkWithoutPath]\n\nexport interface BreadcrumbsProps {\n linksList: LinksList\n}\n\n//TODO: Его должны переработать не использовать! DEPRECATED\n\nexport const Breadcrumbs = ({ linksList }: BreadcrumbsProps) => {\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"],"names":["buttonConfig","cva","ButtonIcon","forwardRef","size","intent","children","classes","type","props","ref","jsx","cn","Skeleton","className","FloatButton","isVisible","buttonProps","jsxs","ResponsiveContainer","Button","ProgressBar","topContent","bottomContent","progress","maxPercent","TABS_NAME","createTabsContext","createTabsScope","createContextScope","createRovingFocusGroupScope","useRovingFocusGroupScope","TabsProvider","useTabsContext","Tabs","React","forwardedRef","__scopeTabs","valueProp","onValueChange","defaultValue","orientation","dir","activationMode","tabsProps","direction","useDirection","value","setValue","useControllableState","useId","Primitive","TAB_LIST_NAME","TabsList","loop","listProps","context","rovingFocusGroupScope","RovingFocusGroup.Root","TRIGGER_NAME","TabsTrigger","disabled","triggerProps","triggerId","makeTriggerId","contentId","makeContentId","isSelected","RovingFocusGroup.Item","composeEventHandlers","event","isAutomaticActivation","CONTENT_NAME","TabsContent","forceMount","contentProps","isMountAnimationPreventedRef","rAF","Presence","present","baseId","Root2","List","Trigger","Content","TabContent","contents","id","body","accordion","TabPrimitive.Content","Accordion","TabsSwitcher","renderContent","defaultActiveTabId","onChangeTab","TabPrimitive.Root","TabPrimitive.List","_a","label","TabPrimitive.Trigger","modalOverlayAnimation","modalContentAnimation","ModalHeader","title","closeModal","Heading","Icon","Modal","isModalOpen","isPortal","portalContainer","modalBody","AnimatePresence","motion","createPortal","NotificationProvider","maxToastViewLimit","toastDuration","toasts","useToasterStore","useEffect","t","_","i","toast","Toaster","Breadcrumbs","linksList","link","Fragment"],"mappings":"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","x_google_ignoreList":[4]}
1
+ {"version":3,"file":"ui.js","sources":["../lib/shared/ui/buttonIcon/ButtonIcon.tsx","../lib/shared/ui/skeleton/Skeleton.tsx","../lib/shared/ui/floatButton/FloatButton.tsx","../lib/shared/ui/progressBar/ProgressBar.tsx","../node_modules/@radix-ui/react-tabs/dist/index.mjs","../lib/shared/ui/tabSwitcher/ui/TabContent.tsx","../lib/shared/ui/tabSwitcher/TabsSwitcher.tsx","../lib/shared/ui/modal/model/helpers.ts","../lib/shared/ui/modal/ui/ModalHeader.tsx","../lib/shared/ui/modal/Modal.tsx","../lib/shared/ui/providers/NotificationProvider.tsx","../lib/shared/ui/breadcrumbs/Breadcrumbs.tsx","../lib/shared/ui/formElements/uncontrolled/select/model/typeGuards.ts"],"sourcesContent":["import { type ComponentProps, forwardRef, type ReactElement } from 'react'\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport { cn } from '$/shared/utils'\n\ntype ButtonClasses = {\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 ButtonProps = VariantProps<typeof buttonConfig>\n\nexport interface IButtonIconProps extends Omit<ComponentProps<'button'>, 'className'>, ButtonProps {\n children: ReactElement\n classes?: Partial<ButtonClasses>\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 { HTMLAttributes } from 'react'\nimport { cn } from '$/shared/utils'\n\nexport interface SkeletonProps extends HTMLAttributes<HTMLDivElement> {\n className?: string\n}\n\nexport const Skeleton = ({ className }: SkeletonProps) => {\n return <div className={cn('skeleton-apply h-full w-full', className)}></div>\n}\n","import { Button, type ButtonProps } from '../button'\nimport { ResponsiveContainer } from '../responsiveContainer'\nimport { cn } from '$/shared/utils'\n\ntype FloatButtonClasses = {\n root?: string\n button?: string\n}\n\nexport interface FloatButtonProps {\n isVisible: boolean\n classes?: FloatButtonClasses\n children: React.ReactElement\n buttonProps?: ButtonProps\n}\n\nexport const FloatButton = ({ isVisible, classes, children, buttonProps }: FloatButtonProps) => {\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","import * as React from 'react'\nimport { cn } from '$/shared/utils'\n\ntype ProgressBarClasses = {\n root?: 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?: ProgressBarClasses\n}\n\nexport const ProgressBar = ({ topContent, bottomContent, progress, maxPercent = 100, classes }: IProgressBarProps) => {\n return (\n <div className={cn('flex w-full flex-col', classes?.root)}>\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","\"use client\";\n\n// packages/react/tabs/src/tabs.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { createRovingFocusGroupScope } from \"@radix-ui/react-roving-focus\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport * as RovingFocusGroup from \"@radix-ui/react-roving-focus\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { jsx } from \"react/jsx-runtime\";\nvar TABS_NAME = \"Tabs\";\nvar [createTabsContext, createTabsScope] = createContextScope(TABS_NAME, [\n createRovingFocusGroupScope\n]);\nvar useRovingFocusGroupScope = createRovingFocusGroupScope();\nvar [TabsProvider, useTabsContext] = createTabsContext(TABS_NAME);\nvar Tabs = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeTabs,\n value: valueProp,\n onValueChange,\n defaultValue,\n orientation = \"horizontal\",\n dir,\n activationMode = \"automatic\",\n ...tabsProps\n } = props;\n const direction = useDirection(dir);\n const [value, setValue] = useControllableState({\n prop: valueProp,\n onChange: onValueChange,\n defaultProp: defaultValue\n });\n return /* @__PURE__ */ jsx(\n TabsProvider,\n {\n scope: __scopeTabs,\n baseId: useId(),\n value,\n onValueChange: setValue,\n orientation,\n dir: direction,\n activationMode,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n dir: direction,\n \"data-orientation\": orientation,\n ...tabsProps,\n ref: forwardedRef\n }\n )\n }\n );\n }\n);\nTabs.displayName = TABS_NAME;\nvar TAB_LIST_NAME = \"TabsList\";\nvar TabsList = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTabs, loop = true, ...listProps } = props;\n const context = useTabsContext(TAB_LIST_NAME, __scopeTabs);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeTabs);\n return /* @__PURE__ */ jsx(\n RovingFocusGroup.Root,\n {\n asChild: true,\n ...rovingFocusGroupScope,\n orientation: context.orientation,\n dir: context.dir,\n loop,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n role: \"tablist\",\n \"aria-orientation\": context.orientation,\n ...listProps,\n ref: forwardedRef\n }\n )\n }\n );\n }\n);\nTabsList.displayName = TAB_LIST_NAME;\nvar TRIGGER_NAME = \"TabsTrigger\";\nvar TabsTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTabs, value, disabled = false, ...triggerProps } = props;\n const context = useTabsContext(TRIGGER_NAME, __scopeTabs);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeTabs);\n const triggerId = makeTriggerId(context.baseId, value);\n const contentId = makeContentId(context.baseId, value);\n const isSelected = value === context.value;\n return /* @__PURE__ */ jsx(\n RovingFocusGroup.Item,\n {\n asChild: true,\n ...rovingFocusGroupScope,\n focusable: !disabled,\n active: isSelected,\n children: /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"tab\",\n \"aria-selected\": isSelected,\n \"aria-controls\": contentId,\n \"data-state\": isSelected ? \"active\" : \"inactive\",\n \"data-disabled\": disabled ? \"\" : void 0,\n disabled,\n id: triggerId,\n ...triggerProps,\n ref: forwardedRef,\n onMouseDown: composeEventHandlers(props.onMouseDown, (event) => {\n if (!disabled && event.button === 0 && event.ctrlKey === false) {\n context.onValueChange(value);\n } else {\n event.preventDefault();\n }\n }),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n if ([\" \", \"Enter\"].includes(event.key)) context.onValueChange(value);\n }),\n onFocus: composeEventHandlers(props.onFocus, () => {\n const isAutomaticActivation = context.activationMode !== \"manual\";\n if (!isSelected && !disabled && isAutomaticActivation) {\n context.onValueChange(value);\n }\n })\n }\n )\n }\n );\n }\n);\nTabsTrigger.displayName = TRIGGER_NAME;\nvar CONTENT_NAME = \"TabsContent\";\nvar TabsContent = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTabs, value, forceMount, children, ...contentProps } = props;\n const context = useTabsContext(CONTENT_NAME, __scopeTabs);\n const triggerId = makeTriggerId(context.baseId, value);\n const contentId = makeContentId(context.baseId, value);\n const isSelected = value === context.value;\n const isMountAnimationPreventedRef = React.useRef(isSelected);\n React.useEffect(() => {\n const rAF = requestAnimationFrame(() => isMountAnimationPreventedRef.current = false);\n return () => cancelAnimationFrame(rAF);\n }, []);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || isSelected, children: ({ present }) => /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": isSelected ? \"active\" : \"inactive\",\n \"data-orientation\": context.orientation,\n role: \"tabpanel\",\n \"aria-labelledby\": triggerId,\n hidden: !present,\n id: contentId,\n tabIndex: 0,\n ...contentProps,\n ref: forwardedRef,\n style: {\n ...props.style,\n animationDuration: isMountAnimationPreventedRef.current ? \"0s\" : void 0\n },\n children: present && children\n }\n ) });\n }\n);\nTabsContent.displayName = CONTENT_NAME;\nfunction makeTriggerId(baseId, value) {\n return `${baseId}-trigger-${value}`;\n}\nfunction makeContentId(baseId, value) {\n return `${baseId}-content-${value}`;\n}\nvar Root2 = Tabs;\nvar List = TabsList;\nvar Trigger = TabsTrigger;\nvar Content = TabsContent;\nexport {\n Content,\n List,\n Root2 as Root,\n Tabs,\n TabsContent,\n TabsList,\n TabsTrigger,\n Trigger,\n createTabsScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as TabPrimitive from '@radix-ui/react-tabs'\nimport { Accordion } from '../../accordion'\nimport type { ITabContent } from '../model/types'\nimport { cn } from '$/shared/utils'\n\nexport type TabContentClasses = {\n content?: string\n contentsWrapper?: string\n}\n\nexport interface TabContentProps {\n contents: ITabContent[]\n classes?: TabContentClasses\n}\n\nexport const TabContent = ({ classes, contents }: TabContentProps) => {\n return (\n <div className={cn('flex flex-col gap-4', classes?.contentsWrapper)}>\n {contents?.map(({ id, body, accordion }) => {\n if (accordion && accordion?.title) {\n return (\n <TabPrimitive.Content key={id} value={id} className={cn('py-8', classes?.content)}>\n <Accordion label={accordion?.title}>{body}</Accordion>\n </TabPrimitive.Content>\n )\n }\n\n return (\n <TabPrimitive.Content key={id} value={id} className={cn('py-8', classes?.content)}>\n {body}\n </TabPrimitive.Content>\n )\n })}\n </div>\n )\n}\n","'use client'\n\nimport * as TabPrimitive from '@radix-ui/react-tabs'\nimport type { TabRenderContent, TabsClasses } from './model/types'\nimport { TabContent } from './ui/TabContent'\nimport { cn } from '$/shared/utils'\n\nexport interface TabsSwitcherProps {\n renderContent: TabRenderContent\n value: string\n onChangeTab: (tab: string) => void\n defaultActiveTabId?: string\n classes?: TabsClasses\n}\n\nexport const TabsSwitcher = ({ renderContent, defaultActiveTabId = '1', value, onChangeTab, classes }: TabsSwitcherProps) => {\n return (\n <TabPrimitive.Root\n value={value}\n onValueChange={onChangeTab}\n defaultValue={defaultActiveTabId}\n className={cn('flex flex-col', classes?.root)}\n >\n <TabPrimitive.List className={cn('flex items-center gap-4', classes?.list)}>\n {renderContent?.triggers?.map(({ id, label }) => (\n <TabPrimitive.Trigger\n key={id}\n value={id}\n className={cn(\n 'desk-body-regular-l cursor-pointer rounded-sm bg-color-blue-grey-100 px-4 py-2 text-color-secondary outline outline-2 outline-offset-2 outline-transparent transition-colors hover:bg-color-blue-grey-200 hover:text-color-secondary data-[state=\"active\"]:!bg-color-primary-default data-[state=\"active\"]:!text-color-white',\n classes?.trigger\n )}\n >\n {label}\n </TabPrimitive.Trigger>\n ))}\n </TabPrimitive.List>\n <TabContent contents={renderContent?.contents} classes={classes?.tabContent} />\n </TabPrimitive.Root>\n )\n}\n","export const modalOverlayAnimation = {\n initial: { opacity: 0 },\n animate: { opacity: 1 },\n exit: { opacity: 0 },\n transition: { duration: 0.3, ease: 'easeInOut' }\n}\n\nexport const modalContentAnimation = {\n initial: { opacity: 0, scale: 0 },\n animate: { opacity: 1, scale: 1 },\n exit: { opacity: 0, scale: 0 },\n transition: { duration: 0.3, ease: 'easeInOut' }\n}\n","import type { ModalProps } from '../Modal'\nimport { Heading, Icon } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TModalHeaderClasses = {\n header?: string\n title?: string\n icon?: string\n}\n\nexport interface IModalHeaderProps extends Pick<ModalProps, 'closeModal' | 'title'> {\n classes?: TModalHeaderClasses\n}\n\nexport const ModalHeader = ({ title, closeModal, classes }: IModalHeaderProps) => {\n return (\n <div className={cn('flex items-start justify-between gap-4', classes?.header)}>\n {title && (\n <Heading as='h3' className={cn('flex-1 text-color-dark', classes?.title)}>\n {title}\n </Heading>\n )}\n <Icon\n onClick={closeModal}\n name='general/close'\n className={cn('size-8 cursor-pointer text-icon-dark-hover', classes?.icon)}\n />\n </div>\n )\n}\n","'use client'\n\nimport * as React from 'react'\nimport { createPortal } from 'react-dom'\nimport { AnimatePresence, motion } from 'framer-motion'\nimport { modalContentAnimation, modalOverlayAnimation } from './model/helpers'\nimport { ModalHeader, type TModalHeaderClasses } from './ui/ModalHeader'\nimport { cn } from '$/shared/utils'\n\ntype ModalClasses = {\n overlay?: string\n modal?: string\n content?: string\n modalHeader?: TModalHeaderClasses\n}\n\nexport interface ModalProps {\n children: React.ReactElement\n isModalOpen: boolean\n classes?: ModalClasses\n isPortal?: boolean\n portalContainer?: HTMLElement\n title?: string | React.ReactElement\n closeModal: () => void\n}\n\nexport const Modal = ({\n title,\n children,\n isModalOpen,\n isPortal = true,\n portalContainer = globalThis?.document?.body,\n closeModal,\n classes\n}: ModalProps) => {\n const modalBody = (\n <AnimatePresence>\n {isModalOpen && (\n <motion.div\n tabIndex={-1}\n onClick={closeModal}\n className={cn(\n 'fixed inset-0 flex h-screen w-screen items-center justify-center bg-color-overlay',\n { 'z-1000': !isPortal },\n classes?.overlay\n )}\n onKeyDown={(event) => {\n if (event.key === 'Escape') {\n closeModal()\n }\n }}\n data-test-id='modal-overlay'\n {...modalOverlayAnimation}\n >\n <motion.div\n onClick={(event) => event.stopPropagation()}\n className={cn(\n 'w-full max-w-[600px] rounded-md bg-color-white px-4 py-6 shadow-sm desktop:px-6 desktop:py-8',\n classes?.modal\n )}\n data-test-id='modal'\n {...modalContentAnimation}\n >\n <ModalHeader title={title} closeModal={closeModal} classes={classes?.modalHeader} />\n <div className={cn('mt-4', classes?.content)}>{children}</div>\n </motion.div>\n </motion.div>\n )}\n </AnimatePresence>\n )\n return <>{isPortal ? createPortal(modalBody, portalContainer) : modalBody}</>\n}\n","'use client'\n\nimport { useEffect } from 'react'\nimport toast, { Toaster, useToasterStore } from 'react-hot-toast'\n\nexport interface NotificationProviderProps {\n maxToastViewLimit?: number\n toastDuration?: number\n}\n\nexport const NotificationProvider = ({ maxToastViewLimit = 2, toastDuration = 5000 }: NotificationProviderProps) => {\n const { toasts } = useToasterStore()\n\n useEffect(() => {\n toasts\n .filter((t) => t.visible)\n .filter((_, i) => i >= maxToastViewLimit)\n .forEach((t) => toast.dismiss(t.id))\n }, [maxToastViewLimit, toasts])\n\n return (\n <Toaster\n position='top-center'\n toastOptions={{\n duration: toastDuration\n }}\n />\n )\n}\n","import { type ReactElement } from 'react'\nimport { Icon } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport interface BreadcrumbLink {\n label: string | ReactElement\n path: string\n isDisabled?: boolean\n}\ninterface BreadcrumbLinkWithoutPath {\n label: string\n isDisabled?: boolean\n}\n\nexport type LinksList = [...BreadcrumbLink[], BreadcrumbLinkWithoutPath]\n\nexport interface BreadcrumbsProps {\n linksList: LinksList\n}\n\n//TODO: Его должны переработать не использовать! DEPRECATED\n\nexport const Breadcrumbs = ({ linksList }: BreadcrumbsProps) => {\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 SelectItemOption } from '$/shared/ui'\n\nexport const isSingleOption = (value?: SelectItemOption | SelectItemOption[]): value is SelectItemOption =>\n Boolean(value) && !Array.isArray(value)\n"],"names":["buttonConfig","cva","ButtonIcon","forwardRef","size","intent","children","classes","type","props","ref","jsx","cn","Skeleton","className","FloatButton","isVisible","buttonProps","jsxs","ResponsiveContainer","Button","ProgressBar","topContent","bottomContent","progress","maxPercent","TABS_NAME","createTabsContext","createTabsScope","createContextScope","createRovingFocusGroupScope","useRovingFocusGroupScope","TabsProvider","useTabsContext","Tabs","React","forwardedRef","__scopeTabs","valueProp","onValueChange","defaultValue","orientation","dir","activationMode","tabsProps","direction","useDirection","value","setValue","useControllableState","useId","Primitive","TAB_LIST_NAME","TabsList","loop","listProps","context","rovingFocusGroupScope","RovingFocusGroup.Root","TRIGGER_NAME","TabsTrigger","disabled","triggerProps","triggerId","makeTriggerId","contentId","makeContentId","isSelected","RovingFocusGroup.Item","composeEventHandlers","event","isAutomaticActivation","CONTENT_NAME","TabsContent","forceMount","contentProps","isMountAnimationPreventedRef","rAF","Presence","present","baseId","Root2","List","Trigger","Content","TabContent","contents","id","body","accordion","TabPrimitive.Content","Accordion","TabsSwitcher","renderContent","defaultActiveTabId","onChangeTab","TabPrimitive.Root","TabPrimitive.List","_a","label","TabPrimitive.Trigger","modalOverlayAnimation","modalContentAnimation","ModalHeader","title","closeModal","Heading","Icon","Modal","isModalOpen","isPortal","portalContainer","modalBody","AnimatePresence","motion","createPortal","NotificationProvider","maxToastViewLimit","toastDuration","toasts","useToasterStore","useEffect","t","_","i","toast","Toaster","Breadcrumbs","linksList","link","Fragment","isSingleOption"],"mappings":"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","x_google_ignoreList":[4]}
@@ -5159,10 +5159,11 @@ const Sa = "dd.MM.yyyy", Va = (n, t = "ru-RU") => new Intl.DateTimeFormat(t, {
5159
5159
  day: "text-center"
5160
5160
  };
5161
5161
  export {
5162
- hn as A,
5163
- Br as B,
5164
- le as C,
5162
+ he as A,
5163
+ hn as B,
5164
+ Br as C,
5165
5165
  Sa as D,
5166
+ le as E,
5166
5167
  Fa as a,
5167
5168
  za as b,
5168
5169
  E as c,
@@ -5181,13 +5182,13 @@ export {
5181
5182
  $a as p,
5182
5183
  dt as q,
5183
5184
  jn as r,
5184
- Rn as s,
5185
+ _t as s,
5185
5186
  I as t,
5186
- ee as u,
5187
- Fe as v,
5187
+ Rn as u,
5188
+ ee as v,
5188
5189
  lt as w,
5189
- fe as x,
5190
- he as y,
5190
+ Fe as x,
5191
+ fe as y,
5191
5192
  Ya as z
5192
5193
  };
5193
- //# sourceMappingURL=utils-Dx_j5QL2.js.map
5194
+ //# sourceMappingURL=utils-SIizw_5C.js.map