@scbt-ecom/ui 0.115.7 → 0.116.0
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/lib/exports/utils.js +1 -1
- package/dist/lib/exports/widget.js +1 -1
- package/dist/lib/shared/hocs/index.js +2 -0
- package/dist/lib/shared/hocs/index.js.map +1 -0
- package/dist/lib/shared/hocs/withBoundary/index.js +2 -0
- package/dist/lib/shared/hocs/withBoundary/index.js.map +1 -0
- package/dist/lib/shared/hocs/withBoundary/withBoundary.js +2 -0
- package/dist/lib/shared/hocs/withBoundary/withBoundary.js.map +1 -0
- package/dist/lib/shared/ui/badge/Badge.js +1 -1
- package/dist/lib/shared/ui/badge/Badge.js.map +1 -1
- package/dist/lib/shared/ui/brandLogos/BrandLogos.js +1 -1
- package/dist/lib/shared/ui/calendar/model/utils.js +1 -1
- package/dist/lib/shared/ui/calendar/model/utils.js.map +1 -1
- package/dist/lib/shared/ui/calendar/ui/Day.js +1 -1
- package/dist/lib/shared/ui/calendar/ui/Day.js.map +1 -1
- package/dist/lib/shared/ui/calendar/ui/DayButton.js +1 -1
- package/dist/lib/shared/ui/calendar/ui/DayButton.js.map +1 -1
- package/dist/lib/shared/ui/calendar/ui/Navigation.js +1 -1
- package/dist/lib/shared/ui/calendar/ui/Weekday.js +1 -1
- package/dist/lib/shared/ui/calendar/ui/Weekday.js.map +1 -1
- package/dist/lib/shared/ui/calendar/ui/selectDate/SelectDate.js +1 -1
- package/dist/lib/shared/ui/calendar/ui/selectDate/SelectDate.js.map +1 -1
- package/dist/lib/shared/ui/calendar/ui/selectDate/ui/SelectList.js +1 -1
- package/dist/lib/shared/ui/calendar/ui/selectDate/ui/SelectList.js.map +1 -1
- package/dist/lib/shared/ui/calendar/ui/selectDate/ui/Trigger.js +1 -1
- package/dist/lib/shared/ui/carousel/ui/ArrowNavigationButton.js +1 -1
- package/dist/lib/shared/ui/carousel/ui/ArrowNavigationButton.js.map +1 -1
- package/dist/lib/shared/ui/carousel/ui/ContainerWithNavigation.js +1 -1
- package/dist/lib/shared/ui/carousel/ui/ContainerWithNavigation.js.map +1 -1
- package/dist/lib/shared/ui/carousel/ui/DotsNavigations.js +1 -1
- package/dist/lib/shared/ui/carousel/ui/DotsNavigations.js.map +1 -1
- package/dist/lib/shared/ui/carousel/ui/slideVariants/SlideFullScreen.js +1 -1
- package/dist/lib/shared/ui/carousel/ui/slideVariants/SlideFullScreen.js.map +1 -1
- package/dist/lib/shared/ui/carousel/ui/slideVariants/SlideOnlyImage.js +1 -1
- package/dist/lib/shared/ui/carousel/ui/slideVariants/SlideOnlyImage.js.map +1 -1
- package/dist/lib/shared/ui/carousel/ui/slideVariants/SlideProductCard.js +1 -1
- package/dist/lib/shared/ui/carousel/ui/slideVariants/SlideProductCard.js.map +1 -1
- package/dist/lib/shared/ui/customLink/CustomLink.js +1 -1
- package/dist/lib/shared/ui/customLink/CustomLink.js.map +1 -1
- package/dist/lib/shared/ui/divider/Divider.js +1 -1
- package/dist/lib/shared/ui/divider/Divider.js.map +1 -1
- package/dist/lib/shared/ui/floatButton/FloatButton.js +1 -1
- package/dist/lib/shared/ui/floatButton/FloatButton.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/autocomplete/Autocomplete.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/combobox/ComboboxControl.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/model/utils.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/editor/model/helper.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/SetColor.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/SetCoreCommands.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/SetHeadings.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/SetHeadings.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/input/InputControl.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/inputCurrency/InputCurrencyControl.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/inputOtp/InputOtpControl.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/radio/RadioGroupControl.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/slider/SliderControl.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/textarea/TextareaControl.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/uploader/UploaderControl.js +1 -1
- package/dist/lib/shared/ui/formElements/ui/MessageView.js +1 -1
- package/dist/lib/shared/ui/formElements/ui/MessageView.js.map +1 -1
- package/dist/lib/shared/ui/formElements/ui/fieldAttachment/FieldAttachment.js +1 -1
- package/dist/lib/shared/ui/formElements/ui/fieldAttachment/FieldAttachment.js.map +1 -1
- package/dist/lib/shared/ui/formElements/ui/fieldAttachment/ui/IconSlot.js +1 -1
- package/dist/lib/shared/ui/formElements/ui/fieldAttachment/ui/IconSlot.js.map +1 -1
- package/dist/lib/shared/ui/formElements/ui/fieldAttachment/ui/ValidateSlot.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/inputCurrency/ui/CurrencyIcon.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/radio/ui/AdditionalContent.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/radio/ui/AdditionalContent.js.map +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/uploader/ui/UploaderFile.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/uploader/ui/UploaderFiles.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/uploader/ui/UploaderFiles.js.map +1 -1
- package/dist/lib/shared/ui/heading/Heading.js +1 -1
- package/dist/lib/shared/ui/heading/Heading.js.map +1 -1
- package/dist/lib/shared/ui/keyboardShortcuts/KeyboardShortcuts.js +1 -1
- package/dist/lib/shared/ui/keyboardShortcuts/KeyboardShortcuts.js.map +1 -1
- package/dist/lib/shared/ui/loader/Loader.js +1 -1
- package/dist/lib/shared/ui/loader/Loader.js.map +1 -1
- package/dist/lib/shared/ui/modal/ui/ModalHeader.js +1 -1
- package/dist/lib/shared/ui/notification/ui/CustomToast.js +1 -1
- package/dist/lib/shared/ui/notification/ui/CustomToast.js.map +1 -1
- package/dist/lib/shared/ui/pagination/Pagination.js +1 -1
- package/dist/lib/shared/ui/pagination/Pagination.js.map +1 -1
- package/dist/lib/shared/ui/phoneView/PhoneView.js +1 -1
- package/dist/lib/shared/ui/phoneView/PhoneView.js.map +1 -1
- package/dist/lib/shared/ui/popover/Popover.js +1 -1
- package/dist/lib/shared/ui/progressBar/ProgressBar.js +1 -1
- package/dist/lib/shared/ui/progressBar/ProgressBar.js.map +1 -1
- package/dist/lib/shared/ui/responsiveContainer/ResponsiveContainer.js +1 -1
- package/dist/lib/shared/ui/responsiveContainer/ResponsiveContainer.js.map +1 -1
- package/dist/lib/shared/ui/skeleton/Skeleton.js +1 -1
- package/dist/lib/shared/ui/skeleton/Skeleton.js.map +1 -1
- package/dist/lib/shared/ui/tabSwitcher/TabsSwitcher.js +1 -1
- package/dist/lib/shared/ui/tabSwitcher/TabsSwitcher.js.map +1 -1
- package/dist/lib/shared/ui/tabSwitcher/ui/TabContent.js +1 -1
- package/dist/lib/shared/ui/tabSwitcher/ui/TabContent.js.map +1 -1
- package/dist/lib/shared/ui/table/Mobile.js +1 -1
- package/dist/lib/shared/ui/table/Mobile.js.map +1 -1
- package/dist/lib/shared/ui/table/TablePagination.js +1 -1
- package/dist/lib/shared/ui/table/TablePagination.js.map +1 -1
- package/dist/lib/shared/utils/ErrorBoundary.js +2 -0
- package/dist/lib/shared/utils/ErrorBoundary.js.map +1 -0
- package/dist/lib/shared/utils/index.js +1 -1
- package/dist/lib/shared/validation/base/base.constants.js +1 -1
- package/dist/lib/shared/validation/base/currency.validators.js +1 -1
- package/dist/lib/shared/validation/base/currency.validators.js.map +1 -1
- package/dist/lib/shared/validation/base/date.validators.js +1 -1
- package/dist/lib/shared/validation/base/email.validators.js +1 -1
- package/dist/lib/shared/validation/base/email.validators.js.map +1 -1
- package/dist/lib/shared/validation/base/phone.validators.js +1 -1
- package/dist/lib/shared/validation/base/phone.validators.js.map +1 -1
- package/dist/lib/shared/validation/base/regex.validators.js +1 -1
- package/dist/lib/shared/validation/base/url.validators.js +1 -1
- package/dist/lib/shared/validation/base/url.validators.js.map +1 -1
- package/dist/lib/widgets/authProvider/ui/ui/AuthWrapper.js +1 -1
- package/dist/lib/widgets/authProvider/ui/ui/Links.js +1 -1
- package/dist/lib/widgets/banner/ui/banners/BannerWithSeparateImg.js +1 -1
- package/dist/lib/widgets/banner/ui/banners/ui/Advantages.js +1 -1
- package/dist/lib/widgets/banner/ui/banners/ui/Buttons.js +1 -1
- package/dist/lib/widgets/banner/ui/banners/ui/Buttons.js.map +1 -1
- package/dist/lib/widgets/benefit/Benefit.js +1 -1
- package/dist/lib/widgets/breadcrumbs/Breadcrumb.js +1 -1
- package/dist/lib/widgets/breadcrumbs/Breadcrumb.js.map +1 -1
- package/dist/lib/widgets/buttonWithHandlers/ButtonWithHandlers.js +1 -1
- package/dist/lib/widgets/calculator/model/helpers.js +1 -1
- package/dist/lib/widgets/calculator/model/helpers.js.map +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorFields/CalculatorFields.js +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorFields/CalculatorFields.js.map +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorFields/ui/AdditionalSlider.js +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorInfo/CalculatorInfo.js +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/AssistHint.js +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/CalculatedBlock.js +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/CalculatedBlock.js.map +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/CalculatorInfoBody.js +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/CalculatorInfoBody.js.map +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/CalculatorInfoFooter.js +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/CalculatorInfoFooter.js.map +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/CalculatorInfoHead.js +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/InfoListItem.js +1 -1
- package/dist/lib/widgets/fallbacksView/FallbacksView.js +1 -1
- package/dist/lib/widgets/fallbacksView/model/helpers.js +1 -1
- package/dist/lib/widgets/footer/Footer.js +1 -1
- package/dist/lib/widgets/footer/ui/Copyright.js +1 -1
- package/dist/lib/widgets/footer/ui/Copyright.js.map +1 -1
- package/dist/lib/widgets/footer/ui/FooterLogo.js +1 -1
- package/dist/lib/widgets/footer/ui/NavLinks.js +1 -1
- package/dist/lib/widgets/footer/ui/PhonesBlock.js +1 -1
- package/dist/lib/widgets/footer/ui/SiteMap.js +1 -1
- package/dist/lib/widgets/footer/ui/SocialLinks.js +1 -1
- package/dist/lib/widgets/header/Header.js +1 -1
- package/dist/lib/widgets/header/model/helpers.js +1 -1
- package/dist/lib/widgets/index.js +1 -1
- package/dist/lib/widgets/infoBlock/InfoBlock.js +1 -1
- package/dist/lib/widgets/infoBlock/ui/LinksList.js +1 -1
- package/dist/lib/widgets/infoBlock/ui/RootContent.js +1 -1
- package/dist/lib/widgets/interLinking/InterLinking.js +1 -1
- package/dist/lib/widgets/interLinking/ui/Column.js +1 -1
- package/dist/lib/widgets/interLinking/ui/Column.js.map +1 -1
- package/dist/lib/widgets/interLinking/ui/LinksList.js +1 -1
- package/dist/lib/widgets/longBanner/LongBanner.js +1 -1
- package/dist/lib/widgets/longBanner/ui/TextItem.js +1 -1
- package/dist/lib/widgets/longBanner/ui/TextList.js +1 -1
- package/dist/lib/widgets/longBanner/ui/TextList.js.map +1 -1
- package/dist/lib/widgets/longBanner/ui/Title.js +1 -1
- package/dist/lib/widgets/longBanner/ui/Title.js.map +1 -1
- package/dist/lib/widgets/seoHeader/SeoHeader.js +1 -1
- package/dist/lib/widgets/seoHeader/ui/desktop/CategoriesDesktop.js +1 -1
- package/dist/lib/widgets/seoHeader/ui/desktop/rootTab/RootTab.js +1 -1
- package/dist/lib/widgets/seoHeader/ui/desktop/rootTab/RootTab.js.map +1 -1
- package/dist/lib/widgets/seoHeader/ui/desktop/tab/ui/content/TabContent.js +1 -1
- package/dist/lib/widgets/seoHeader/ui/mobile/menu/MenuItem.js +1 -1
- package/dist/lib/widgets/stepper/ui/SingleStep.js +1 -1
- package/dist/lib/widgets/stepper/ui/SingleStep.js.map +1 -1
- package/dist/lib/widgets/table/Table.js +1 -1
- package/dist/lib/widgets/table/model/utils.js +1 -1
- package/dist/lib/widgets/table/model/utils.js.map +1 -1
- package/dist/lib/widgets/usefulInfo/ui/RenderEntity.js +1 -1
- package/dist/lib/widgets/usefulInfo/ui/RenderEntity.js.map +1 -1
- package/dist/lib/widgets/usefulInfo/ui/Tabs.js +1 -1
- package/dist/lib/widgets/usefulInfo/ui/Tabs.js.map +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/documents/Documents.js +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/documents/ui/document/Document.js +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/experts/Experts.js +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/experts/ui/ExpertCard.js +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/experts/ui/ExpertCard.js.map +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/html/Html.js +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/table/Table.js +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/table/ui/DesktopHeadings.js +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/table/ui/DesktopHeadings.js.map +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/table/ui/DesktopRow.js +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/table/ui/DesktopRow.js.map +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/table/ui/MobileRow.js +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/table/ui/MobileRow.js.map +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/table/ui/TableBody.js +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/table/ui/TableBody.js.map +1 -1
- package/dist/lib/widgets/userFeedback/ui/Finally.js +1 -1
- package/dist/lib/widgets/userFeedback/ui/SelectRating.js +1 -1
- package/dist/src/shared/utils/getDynamicSchema.js +1 -1
- package/dist/src/shared/utils/getDynamicSchema.js.map +1 -1
- package/dist/stats.html +1 -1
- package/dist/types/lib/shared/hocs/index.d.ts +1 -0
- package/dist/types/lib/shared/hocs/withBoundary/index.d.ts +1 -0
- package/dist/types/lib/shared/hocs/withBoundary/withBoundary.d.ts +6 -0
- package/dist/types/lib/shared/utils/ErrorBoundary.d.ts +19 -0
- package/dist/types/lib/shared/utils/index.d.ts +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pagination.js","sources":["../../../../../lib/shared/ui/pagination/Pagination.tsx"],"sourcesContent":["import { cn } from '../../utils'\nimport { Button } from '../button'\nimport { Icon } from '../icon'\n\ntype PaginationClasses = {\n root?: string\n button?: string\n ellipsis?: string\n active?: string\n}\n\nexport type PaginationProps = {\n /**\n * активная страница\n */\n page?: number\n /**\n * количество элементов после сужения страниц пример 1 - (1...6 7 8...n)\n * ^ ^\n */\n between?: number\n /**\n * количество элементов на странице\n */\n totalPages: number\n /**\n * функция для переключения страницы\n */\n changePage: (page: number) => void\n /**\n * включить переход на следующую/предыдущую страницу\n */\n next?: boolean\n /**\n * количество страниц для сужения\n */\n ellipsis?: number\n /**\n * дополнительные стили\n */\n classes?: PaginationClasses\n}\n\nexport const Pagination = ({\n page = 1,\n between = 3,\n totalPages,\n changePage,\n next = true,\n ellipsis = 0,\n classes\n}: PaginationProps) => {\n // гарантирует что between никогда не будет меньше 1\n between = between < 1 ? 1 : between\n // ограничиваем текущую страницу от 1 до totalPages\n page = Math.min(Math.max(page, 1), totalPages)\n // ограничиваем количество сужаемых элементов от 0 до between - 2\n ellipsis = Math.min(Math.max(ellipsis, 0), between - 2)\n\n const positions = Array.from({ length: totalPages }, (_, index) => index)\n\n // количество отображаемых страниц (включая активную)\n const visiblePages = between * 2 + 1\n\n let range\n\n if (totalPages < visiblePages) {\n // если общее количество страниц меньше, чем нужно отобразить, то отображаем все страницы\n range = positions\n } else if (page - 1 <= between) {\n // если текущая страница близка к началу, то отображаем страницы с начала\n range = positions.slice(0, visiblePages - (ellipsis > 0 ? ellipsis + 1 : 0))\n } else if (page + between >= totalPages) {\n // если текущая страница близка к концу, то отображаем страницы с конца\n range = positions.slice(totalPages - visiblePages + (ellipsis > 0 ? ellipsis + 1 : 0), totalPages)\n } else {\n // иначе показываем страницы обрезая их слева и справа\n range = positions.slice(\n page - 1 - (between - (ellipsis > 0 ? ellipsis + 1 : 0)),\n page + (between - (ellipsis > 0 ? ellipsis + 1 : 0))\n )\n }\n\n return (\n <div className={cn('flex', classes?.root)}>\n {next && (\n <Button\n size='sm'\n intent='ghost'\n className={cn('mob-body-regular-l w-[40px] p-0 text-color-dark disabled:text-icon-disabled', classes?.button)}\n disabled={page <= 1}\n onClick={() => page > 1 && changePage(page - 2)}\n >\n <Icon name='arrows/arrowRight' className='rotate-180' />\n </Button>\n )}\n {totalPages > visiblePages &&\n ellipsis > 0 &&\n positions.slice(0, page - 1 <= between ? 0 : ellipsis).map((value) => (\n <Button\n key={value}\n size='sm'\n intent='ghost'\n className={cn('mob-body-regular-l w-[40px] p-0 text-color-dark', classes?.button)}\n onClick={() => value !== page - 1 && changePage(value)}\n >\n {value + 1}\n </Button>\n ))}\n {totalPages > visiblePages && ellipsis > 0 && page - 1 > between && (\n <Button\n size='sm'\n intent='ghost'\n className={cn('mob-body-regular-l pointer-events-none w-[40px] p-0 text-color-dark', classes?.ellipsis)}\n >\n ...\n </Button>\n )}\n {range.map((value) => {\n const active = value === page - 1\n\n return (\n <Button\n key={value}\n size='sm'\n className={cn(\n 'mob-body-regular-l w-[40px] p-0 text-color-dark',\n {\n [`text-color-primary-default ${classes?.active}`]: active\n },\n classes?.button\n )}\n intent={active ? 'secondary' : 'ghost'}\n onClick={() => !active && changePage(value)}\n >\n {value + 1}\n </Button>\n )\n })}\n {totalPages > visiblePages && ellipsis > 0 && page < totalPages - between && (\n <Button\n size='sm'\n intent='ghost'\n className={cn('mob-body-regular-l pointer-events-none w-[40px] p-0 text-color-dark', classes?.ellipsis)}\n >\n ...\n </Button>\n )}\n {totalPages > visiblePages &&\n ellipsis > 0 &&\n positions.slice(page >= totalPages - between ? totalPages : totalPages - ellipsis, totalPages).map((value) => (\n <Button\n key={value}\n size='sm'\n className={cn('mob-body-regular-l w-[40px] p-0 text-color-dark', classes?.button)}\n intent='ghost'\n onClick={() => value !== page - 1 && changePage(value)}\n >\n {value + 1}\n </Button>\n ))}\n {next && (\n <Button\n size='sm'\n intent='ghost'\n className={cn('mob-body-regular-l w-[40px] p-0 text-color-dark disabled:text-icon-disabled', classes?.button)}\n disabled={page >= totalPages}\n onClick={() => page < totalPages && changePage(page)}\n >\n <Icon name='arrows/arrowRight' />\n </Button>\n )}\n </div>\n )\n}\n"],"names":["Pagination","page","between","totalPages","changePage","next","ellipsis","classes","positions","_","index","visiblePages","range","cn","jsx","Button","Icon","value","active"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Pagination.js","sources":["../../../../../lib/shared/ui/pagination/Pagination.tsx"],"sourcesContent":["import { cn } from '../../utils'\nimport { Button } from '../button'\nimport { Icon } from '../icon'\n\ntype PaginationClasses = {\n root?: string\n button?: string\n ellipsis?: string\n active?: string\n}\n\nexport type PaginationProps = {\n /**\n * активная страница\n */\n page?: number\n /**\n * количество элементов после сужения страниц пример 1 - (1...6 7 8...n)\n * ^ ^\n */\n between?: number\n /**\n * количество элементов на странице\n */\n totalPages: number\n /**\n * функция для переключения страницы\n */\n changePage: (page: number) => void\n /**\n * включить переход на следующую/предыдущую страницу\n */\n next?: boolean\n /**\n * количество страниц для сужения\n */\n ellipsis?: number\n /**\n * дополнительные стили\n */\n classes?: PaginationClasses\n}\n\nexport const Pagination = ({\n page = 1,\n between = 3,\n totalPages,\n changePage,\n next = true,\n ellipsis = 0,\n classes\n}: PaginationProps) => {\n // гарантирует что between никогда не будет меньше 1\n between = between < 1 ? 1 : between\n // ограничиваем текущую страницу от 1 до totalPages\n page = Math.min(Math.max(page, 1), totalPages)\n // ограничиваем количество сужаемых элементов от 0 до between - 2\n ellipsis = Math.min(Math.max(ellipsis, 0), between - 2)\n\n const positions = Array.from({ length: totalPages }, (_, index) => index)\n\n // количество отображаемых страниц (включая активную)\n const visiblePages = between * 2 + 1\n\n let range\n\n if (totalPages < visiblePages) {\n // если общее количество страниц меньше, чем нужно отобразить, то отображаем все страницы\n range = positions\n } else if (page - 1 <= between) {\n // если текущая страница близка к началу, то отображаем страницы с начала\n range = positions.slice(0, visiblePages - (ellipsis > 0 ? ellipsis + 1 : 0))\n } else if (page + between >= totalPages) {\n // если текущая страница близка к концу, то отображаем страницы с конца\n range = positions.slice(totalPages - visiblePages + (ellipsis > 0 ? ellipsis + 1 : 0), totalPages)\n } else {\n // иначе показываем страницы обрезая их слева и справа\n range = positions.slice(\n page - 1 - (between - (ellipsis > 0 ? ellipsis + 1 : 0)),\n page + (between - (ellipsis > 0 ? ellipsis + 1 : 0))\n )\n }\n\n return (\n <div className={cn('flex', classes?.root)}>\n {next && (\n <Button\n size='sm'\n intent='ghost'\n className={cn('mob-body-regular-l w-[40px] p-0 text-color-dark disabled:text-icon-disabled', classes?.button)}\n disabled={page <= 1}\n onClick={() => page > 1 && changePage(page - 2)}\n >\n <Icon name='arrows/arrowRight' className='rotate-180' />\n </Button>\n )}\n {totalPages > visiblePages &&\n ellipsis > 0 &&\n positions.slice(0, page - 1 <= between ? 0 : ellipsis).map((value) => (\n <Button\n key={value}\n size='sm'\n intent='ghost'\n className={cn('mob-body-regular-l w-[40px] p-0 text-color-dark', classes?.button)}\n onClick={() => value !== page - 1 && changePage(value)}\n >\n {value + 1}\n </Button>\n ))}\n {totalPages > visiblePages && ellipsis > 0 && page - 1 > between && (\n <Button\n size='sm'\n intent='ghost'\n className={cn('mob-body-regular-l pointer-events-none w-[40px] p-0 text-color-dark', classes?.ellipsis)}\n >\n ...\n </Button>\n )}\n {range.map((value) => {\n const active = value === page - 1\n\n return (\n <Button\n key={value}\n size='sm'\n className={cn(\n 'mob-body-regular-l w-[40px] p-0 text-color-dark',\n {\n [`text-color-primary-default ${classes?.active}`]: active\n },\n classes?.button\n )}\n intent={active ? 'secondary' : 'ghost'}\n onClick={() => !active && changePage(value)}\n >\n {value + 1}\n </Button>\n )\n })}\n {totalPages > visiblePages && ellipsis > 0 && page < totalPages - between && (\n <Button\n size='sm'\n intent='ghost'\n className={cn('mob-body-regular-l pointer-events-none w-[40px] p-0 text-color-dark', classes?.ellipsis)}\n >\n ...\n </Button>\n )}\n {totalPages > visiblePages &&\n ellipsis > 0 &&\n positions.slice(page >= totalPages - between ? totalPages : totalPages - ellipsis, totalPages).map((value) => (\n <Button\n key={value}\n size='sm'\n className={cn('mob-body-regular-l w-[40px] p-0 text-color-dark', classes?.button)}\n intent='ghost'\n onClick={() => value !== page - 1 && changePage(value)}\n >\n {value + 1}\n </Button>\n ))}\n {next && (\n <Button\n size='sm'\n intent='ghost'\n className={cn('mob-body-regular-l w-[40px] p-0 text-color-dark disabled:text-icon-disabled', classes?.button)}\n disabled={page >= totalPages}\n onClick={() => page < totalPages && changePage(page)}\n >\n <Icon name='arrows/arrowRight' />\n </Button>\n )}\n </div>\n )\n}\n"],"names":["Pagination","page","between","totalPages","changePage","next","ellipsis","classes","positions","_","index","visiblePages","range","cn","jsx","Button","Icon","value","active"],"mappings":"2LA2CO,MAAMA,EAAa,CAAC,CACzB,KAAAC,EAAO,EACP,QAAAC,EAAU,EACV,WAAAC,EACA,WAAAC,EACA,KAAAC,EAAO,GACP,SAAAC,EAAW,EACX,QAAAC,CACF,IAAuB,CAErBL,EAAUA,EAAU,EAAI,EAAIA,EAE5BD,EAAO,KAAK,IAAI,KAAK,IAAIA,EAAM,CAAC,EAAGE,CAAU,EAE7CG,EAAW,KAAK,IAAI,KAAK,IAAIA,EAAU,CAAC,EAAGJ,EAAU,CAAC,EAEtD,MAAMM,EAAY,MAAM,KAAK,CAAE,OAAQL,GAAc,CAACM,EAAGC,IAAUA,CAAK,EAGlEC,EAAeT,EAAU,EAAI,EAEnC,IAAIU,EAEJ,OAAIT,EAAaQ,EAEfC,EAAQJ,EACCP,EAAO,GAAKC,EAErBU,EAAQJ,EAAU,MAAM,EAAGG,GAAgBL,EAAW,EAAIA,EAAW,EAAI,EAAE,EAClEL,EAAOC,GAAWC,EAE3BS,EAAQJ,EAAU,MAAML,EAAaQ,GAAgBL,EAAW,EAAIA,EAAW,EAAI,GAAIH,CAAU,EAGjGS,EAAQJ,EAAU,MAChBP,EAAO,GAAKC,GAAWI,EAAW,EAAIA,EAAW,EAAI,IACrDL,GAAQC,GAAWI,EAAW,EAAIA,EAAW,EAAI,GAAA,IAKlD,MAAA,CAAI,UAAWO,EAAG,OAAQN,GAAA,YAAAA,EAAS,IAAI,EACrC,SAAA,CAAAF,GACCS,EAACC,EAAA,CACC,KAAK,KACL,OAAO,QACP,UAAWF,EAAG,8EAA+EN,GAAA,YAAAA,EAAS,MAAM,EAC5G,SAAUN,GAAQ,EAClB,QAAS,IAAMA,EAAO,GAAKG,EAAWH,EAAO,CAAC,EAE9C,SAAAa,EAACE,EAAA,CAAK,KAAK,oBAAoB,UAAU,YAAA,CAAa,CAAA,CAAA,EAGzDb,EAAaQ,GACZL,EAAW,GACXE,EAAU,MAAM,EAAGP,EAAO,GAAKC,EAAU,EAAII,CAAQ,EAAE,IAAKW,GAC1DH,EAACC,EAAA,CAEC,KAAK,KACL,OAAO,QACP,UAAWF,EAAG,kDAAmDN,GAAA,YAAAA,EAAS,MAAM,EAChF,QAAS,IAAMU,IAAUhB,EAAO,GAAKG,EAAWa,CAAK,EAEpD,SAAAA,EAAQ,CAAA,EANJA,CAAA,CAQR,EACFd,EAAaQ,GAAgBL,EAAW,GAAKL,EAAO,EAAIC,GACvDY,EAACC,EAAA,CACC,KAAK,KACL,OAAO,QACP,UAAWF,EAAG,sEAAuEN,GAAA,YAAAA,EAAS,QAAQ,EACvG,SAAA,KAAA,CAAA,EAIFK,EAAM,IAAKK,GAAU,CACpB,MAAMC,EAASD,IAAUhB,EAAO,EAEhC,OACEa,EAACC,EAAA,CAEC,KAAK,KACL,UAAWF,EACT,kDACA,CACE,CAAC,8BAA8BN,GAAA,YAAAA,EAAS,MAAM,EAAE,EAAGW,CAAA,EAErDX,GAAA,YAAAA,EAAS,MAAA,EAEX,OAAQW,EAAS,YAAc,QAC/B,QAAS,IAAM,CAACA,GAAUd,EAAWa,CAAK,EAEzC,SAAAA,EAAQ,CAAA,EAZJA,CAAA,CAeX,CAAC,EACAd,EAAaQ,GAAgBL,EAAW,GAAKL,EAAOE,EAAaD,GAChEY,EAACC,EAAA,CACC,KAAK,KACL,OAAO,QACP,UAAWF,EAAG,sEAAuEN,GAAA,YAAAA,EAAS,QAAQ,EACvG,SAAA,KAAA,CAAA,EAIFJ,EAAaQ,GACZL,EAAW,GACXE,EAAU,MAAMP,GAAQE,EAAaD,EAAUC,EAAaA,EAAaG,EAAUH,CAAU,EAAE,IAAKc,GAClGH,EAACC,EAAA,CAEC,KAAK,KACL,UAAWF,EAAG,kDAAmDN,GAAA,YAAAA,EAAS,MAAM,EAChF,OAAO,QACP,QAAS,IAAMU,IAAUhB,EAAO,GAAKG,EAAWa,CAAK,EAEpD,SAAAA,EAAQ,CAAA,EANJA,CAAA,CAQR,EACFZ,GACCS,EAACC,EAAA,CACC,KAAK,KACL,OAAO,QACP,UAAWF,EAAG,8EAA+EN,GAAA,YAAAA,EAAS,MAAM,EAC5G,SAAUN,GAAQE,EAClB,QAAS,IAAMF,EAAOE,GAAcC,EAAWH,CAAI,EAEnD,SAAAa,EAACE,EAAA,CAAK,KAAK,mBAAA,CAAoB,CAAA,CAAA,CACjC,EAEJ,CAEJ"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as e,jsx as m}from"react/jsx-runtime";import{cn as r}from"../../utils/cn.js";const
|
|
1
|
+
import{jsxs as e,jsx as m}from"react/jsx-runtime";import{cn as r}from"../../utils/cn.js";import"react";const k=({phone:t,text:d,classes:o,...i})=>e("div",{className:r("flex w-max flex-col",o==null?void 0:o.root),...i,children:[m("a",{href:`tel:${t}`,className:r("mob-body-medium-l ml-auto text-color-dark desktop:desk-body-medium-l",o==null?void 0:o.link),children:t}),m("p",{className:r("desk-body-regular-s text-color-tetriary",o==null?void 0:o.text),children:d})]});export{k as PhoneView};
|
|
2
2
|
//# sourceMappingURL=PhoneView.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PhoneView.js","sources":["../../../../../lib/shared/ui/phoneView/PhoneView.tsx"],"sourcesContent":["import { type HTMLAttributes } from 'react'\nimport { cn } from '$/shared/utils'\n\ninterface PhoneViewClasses {\n root?: string\n link?: string\n text?: string\n}\n\nexport interface PhoneViewProps extends HTMLAttributes<HTMLDivElement> {\n phone: string\n text: string\n classes?: PhoneViewClasses\n}\n\nexport const PhoneView = ({ phone, text, classes, ...props }: PhoneViewProps) => {\n return (\n <div className={cn('flex w-max flex-col', classes?.root)} {...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"],"names":["PhoneView","phone","text","classes","props","jsxs","cn","jsx"],"mappings":"
|
|
1
|
+
{"version":3,"file":"PhoneView.js","sources":["../../../../../lib/shared/ui/phoneView/PhoneView.tsx"],"sourcesContent":["import { type HTMLAttributes } from 'react'\nimport { cn } from '$/shared/utils'\n\ninterface PhoneViewClasses {\n root?: string\n link?: string\n text?: string\n}\n\nexport interface PhoneViewProps extends HTMLAttributes<HTMLDivElement> {\n phone: string\n text: string\n classes?: PhoneViewClasses\n}\n\nexport const PhoneView = ({ phone, text, classes, ...props }: PhoneViewProps) => {\n return (\n <div className={cn('flex w-max flex-col', classes?.root)} {...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"],"names":["PhoneView","phone","text","classes","props","jsxs","cn","jsx"],"mappings":"uGAeO,MAAMA,EAAY,CAAC,CAAE,MAAAC,EAAO,KAAAC,EAAM,QAAAC,EAAS,GAAGC,KAEjDC,EAAC,OAAI,UAAWC,EAAG,sBAAuBH,GAAA,YAAAA,EAAS,IAAI,EAAI,GAAGC,EAC5D,SAAA,CAAAG,EAAC,IAAA,CACC,KAAM,OAAON,CAAK,GAClB,UAAWK,EAAG,uEAAwEH,GAAA,YAAAA,EAAS,IAAI,EAElG,SAAAF,CAAA,CAAA,EAEHM,EAAC,KAAE,UAAWD,EAAG,0CAA2CH,GAAA,YAAAA,EAAS,IAAI,EAAI,SAAAD,CAAA,CAAK,CAAA,EACpF"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as i,jsx as o}from"react/jsx-runtime";import{Root as b,Trigger as N,Portal as y,Content as c,Close as j,Arrow as C}from"../../../../node_modules/@radix-ui/react-popover/dist/index.js";import{cn as t}from"../../utils/cn.js";import"../button/Button.js";import"../buttonIcon/ButtonIcon.js";import"../calendar/Calendar.js";import"../calendar/model/utils.js";import"../accordion/Accordion.js";import"react
|
|
1
|
+
import{jsxs as i,jsx as o}from"react/jsx-runtime";import{Root as b,Trigger as N,Portal as y,Content as c,Close as j,Arrow as C}from"../../../../node_modules/@radix-ui/react-popover/dist/index.js";import{cn as t}from"../../utils/cn.js";import"react";import"../button/Button.js";import"../buttonIcon/ButtonIcon.js";import"../calendar/Calendar.js";import"../calendar/model/utils.js";import"../accordion/Accordion.js";import"react-dom";import"../modal/ui/IframeModalContent.js";import"../../../../node_modules/react-hot-toast/dist/index.js";import{Icon as v}from"../icon/Icon.js";import"../table/ui/primitives/Primitives.js";import"../carousel/ui/CarouselContent.js";import"../slot/Slot.js";import"../formElements/uncontrolled/autocomplete/Autocomplete.js";import"../formElements/uncontrolled/checkbox/Checkbox.js";import"../formElements/uncontrolled/combobox/combobox.js";import"../formElements/uncontrolled/dayPicker/DayPicker.js";import"../formElements/uncontrolled/input/Input.js";import"../formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../formElements/uncontrolled/maskInput/MaskInput.js";import"../formElements/uncontrolled/radio/RadioGroup.js";import"../formElements/uncontrolled/radio/ui/RadioItem.js";import"../formElements/uncontrolled/slider/SliderBase.js";import"../formElements/uncontrolled/switch/Switch.js";import"../formElements/uncontrolled/textarea/Textarea.js";import"../formElements/uncontrolled/uploader/UploaderBase.js";import"../formElements/uncontrolled/inputCurrency/InputCurrency.js";import"../../../../src/configs/api.js";import"../formElements/controlled/editor/ui/Editor.js";import"../formElements/controlled/input/MaskInputControl.js";import"../dropdownList/ui/dropdownItem/DropdownItem.js";const mr=({triggerElement:m,classes:r,sideOffset:e=4,alignOffset:p,align:n,side:u,defaultOpen:g=!1,avoidCollisions:d=!0,children:f,arrowPadding:h,portalContainer:x,withCloseBtn:l=!0,withArrow:w=!0,...a})=>i(b,{defaultOpen:g,children:[o("div",{className:t("flex w-max items-center gap-2",r==null?void 0:r.root),children:o(N,{"aria-label":"tooltip",className:t("flex cursor-pointer items-center justify-center",r==null?void 0:r.trigger),children:m})}),o(y,{container:x,children:i(c,{className:t("desk-body-regular-m flex w-fit max-w-64 items-start gap-2 rounded-sm bg-color-white p-4 shadow-sm outline-none",r==null?void 0:r.content),sideOffset:e,alignOffset:p,avoidCollisions:d,arrowPadding:h,align:n,side:u,...a,children:[f,l&&o(j,{"aria-label":"Close",className:t("flex size-5 items-center justify-center outline-0 outline-transparent",r==null?void 0:r.closeTrigger),children:o(v,{name:"general/close",className:t("size-5 cursor-pointer text-icon-blue-grey-600 transition-colors hover:text-icon-blue-grey-800",r==null?void 0:r.closeIcon)})}),w&&o(C,{width:12,height:6,className:t("fill-white",r==null?void 0:r.arrowIcon)})]})})]});export{mr as Popover};
|
|
2
2
|
//# sourceMappingURL=Popover.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as m,jsx as t}from"react/jsx-runtime";import{cn as o}from"../../utils/cn.js";const
|
|
1
|
+
import{jsxs as m,jsx as t}from"react/jsx-runtime";import{cn as o}from"../../utils/cn.js";import"react";const g=({topContent:d,bottomContent:i,progress:p,maxPercent:n=100,classes:r})=>m("div",{className:o("flex w-full flex-col",r==null?void 0:r.root),children:[d&&t("div",{className:o("mb-2 flex justify-between gap-5",r==null?void 0:r.topContent),children:d}),m("div",{className:o("relative h-2 w-[328xp] rounded-md bg-color-blue-grey-100 desktop:w-[524px]",r==null?void 0:r.progressBar),children:[t("div",{style:{width:`${p}%`},className:o("relative z-10 h-2 rounded-md bg-color-positive transition-all",r==null?void 0:r.progress)}),t("span",{style:{maxWidth:`${n}%`},className:o("progressBar-apply z-1 absolute top-1/2 h-full w-full -translate-y-1/2 animate-progress-loader rounded-md",r==null?void 0:r.loader)})]}),i&&t("div",{className:o("mt-2 flex justify-between gap-5",r==null?void 0:r.bottomContent),children:i})]});export{g as ProgressBar};
|
|
2
2
|
//# sourceMappingURL=ProgressBar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProgressBar.js","sources":["../../../../../lib/shared/ui/progressBar/ProgressBar.tsx"],"sourcesContent":["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"],"names":["ProgressBar","topContent","bottomContent","progress","maxPercent","classes","cn","jsx"],"mappings":"
|
|
1
|
+
{"version":3,"file":"ProgressBar.js","sources":["../../../../../lib/shared/ui/progressBar/ProgressBar.tsx"],"sourcesContent":["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"],"names":["ProgressBar","topContent","bottomContent","progress","maxPercent","classes","cn","jsx"],"mappings":"uGAoBO,MAAMA,EAAc,CAAC,CAAE,WAAAC,EAAY,cAAAC,EAAe,SAAAC,EAAU,WAAAC,EAAa,IAAK,QAAAC,OAEhF,MAAA,CAAI,UAAWC,EAAG,uBAAwBD,GAAA,YAAAA,EAAS,IAAI,EACrD,SAAA,CAAAJ,GAAcM,EAAC,OAAI,UAAWD,EAAG,kCAAmCD,GAAA,YAAAA,EAAS,UAAU,EAAI,SAAAJ,CAAA,CAAW,IAEtG,MAAA,CAAI,UAAWK,EAAG,6EAA8ED,GAAA,YAAAA,EAAS,WAAW,EACnH,SAAA,CAAAE,EAAC,MAAA,CACC,MAAO,CAAE,MAAO,GAAGJ,CAAQ,GAAA,EAC3B,UAAWG,EAAG,gEAAiED,GAAA,YAAAA,EAAS,QAAQ,CAAA,CAAA,EAElGE,EAAC,OAAA,CACC,MAAO,CAAE,SAAU,GAAGH,CAAU,GAAA,EAChC,UAAWE,EACT,2GACAD,GAAA,YAAAA,EAAS,MAAA,CACX,CAAA,CACD,EACH,EAECH,KAAkB,MAAA,CAAI,UAAWI,EAAG,kCAAmCD,GAAA,YAAAA,EAAS,aAAa,EAAI,SAAAH,CAAA,CAAc,CAAA,EAClH"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{cn as p}from"../../utils/cn.js";import"react";const a=({children:o,offset:m=!0,className:r,...t})=>e("div",{className:p("m-auto w-full max-w-[636px] desktop:max-w-[1140px]",{"mobile:px-4":m},r),...t,children:o});export{a as ResponsiveContainer};
|
|
2
2
|
//# sourceMappingURL=ResponsiveContainer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResponsiveContainer.js","sources":["../../../../../lib/shared/ui/responsiveContainer/ResponsiveContainer.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from 'react'\nimport { cn } from '$/shared/utils'\n\nexport interface ResponsiveContainerProps extends HTMLAttributes<HTMLDivElement> {\n children: ReactNode\n className?: string\n offset?: boolean\n}\n\nexport const ResponsiveContainer = ({ children, offset = true, className, ...props }: ResponsiveContainerProps) => {\n return (\n <div className={cn('m-auto w-full max-w-[636px] desktop:max-w-[1140px]', { 'mobile:px-4': offset }, className)} {...props}>\n {children}\n </div>\n )\n}\n"],"names":["ResponsiveContainer","children","offset","className","props","jsx","cn"],"mappings":"
|
|
1
|
+
{"version":3,"file":"ResponsiveContainer.js","sources":["../../../../../lib/shared/ui/responsiveContainer/ResponsiveContainer.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from 'react'\nimport { cn } from '$/shared/utils'\n\nexport interface ResponsiveContainerProps extends HTMLAttributes<HTMLDivElement> {\n children: ReactNode\n className?: string\n offset?: boolean\n}\n\nexport const ResponsiveContainer = ({ children, offset = true, className, ...props }: ResponsiveContainerProps) => {\n return (\n <div className={cn('m-auto w-full max-w-[636px] desktop:max-w-[1140px]', { 'mobile:px-4': offset }, className)} {...props}>\n {children}\n </div>\n )\n}\n"],"names":["ResponsiveContainer","children","offset","className","props","jsx","cn"],"mappings":"6FASO,MAAMA,EAAsB,CAAC,CAAE,SAAAC,EAAU,OAAAC,EAAS,GAAM,UAAAC,EAAW,GAAGC,KAEzEC,EAAC,MAAA,CAAI,UAAWC,EAAG,qDAAsD,CAAE,cAAeJ,CAAA,EAAUC,CAAS,EAAI,GAAGC,EACjH,SAAAH,CAAA,CACH"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as l}from"react/jsx-runtime";import{cn as r}from"../../utils/cn.js";import"react";const p=({className:o})=>l("div",{className:r("skeleton-apply h-full w-full",o)});export{p as Skeleton};
|
|
2
2
|
//# sourceMappingURL=Skeleton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Skeleton.js","sources":["../../../../../lib/shared/ui/skeleton/Skeleton.tsx"],"sourcesContent":["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"],"names":["Skeleton","className","cn"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Skeleton.js","sources":["../../../../../lib/shared/ui/skeleton/Skeleton.tsx"],"sourcesContent":["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"],"names":["Skeleton","className","cn"],"mappings":"6FAOO,MAAMA,EAAW,CAAC,CAAE,UAAAC,OACjB,MAAA,CAAI,UAAWC,EAAG,+BAAgCD,CAAS,EAAG"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as f,jsx as r}from"react/jsx-runtime";import{Root as x,List as b,Trigger as e}from"../../../../node_modules/@radix-ui/react-tabs/dist/index.js";import{TabContent as h}from"./ui/TabContent.js";import{cn as i}from"../../utils/cn.js";const
|
|
1
|
+
import{jsxs as f,jsx as r}from"react/jsx-runtime";import{Root as x,List as b,Trigger as e}from"../../../../node_modules/@radix-ui/react-tabs/dist/index.js";import{TabContent as h}from"./ui/TabContent.js";import{cn as i}from"../../utils/cn.js";import"react";const T=({renderContent:t,defaultActiveTabId:u="1",value:g,onChangeTab:l,classes:o})=>{var m;return f(x,{value:g,onValueChange:l,defaultValue:u,className:i("flex flex-col",o==null?void 0:o.root),children:[r(b,{className:i("flex items-center gap-4",o==null?void 0:o.list),children:(m=t==null?void 0:t.triggers)==null?void 0:m.map(({id:a,label:p})=>r(e,{value:a,className:i('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',o==null?void 0:o.trigger),children:p},a))}),r(h,{contents:t==null?void 0:t.contents,classes:o==null?void 0:o.tabContent})]})};export{T as TabsSwitcher};
|
|
2
2
|
//# sourceMappingURL=TabsSwitcher.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabsSwitcher.js","sources":["../../../../../lib/shared/ui/tabSwitcher/TabsSwitcher.tsx"],"sourcesContent":["'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"],"names":["TabsSwitcher","renderContent","defaultActiveTabId","value","onChangeTab","classes","jsxs","TabPrimitive.Root","cn","jsx","TabPrimitive.List","_a","id","label","TabPrimitive.Trigger","TabContent"],"mappings":"
|
|
1
|
+
{"version":3,"file":"TabsSwitcher.js","sources":["../../../../../lib/shared/ui/tabSwitcher/TabsSwitcher.tsx"],"sourcesContent":["'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"],"names":["TabsSwitcher","renderContent","defaultActiveTabId","value","onChangeTab","classes","jsxs","TabPrimitive.Root","cn","jsx","TabPrimitive.List","_a","id","label","TabPrimitive.Trigger","TabContent"],"mappings":"iQAeO,MAAMA,EAAe,CAAC,CAAE,cAAAC,EAAe,mBAAAC,EAAqB,IAAK,MAAAC,EAAO,YAAAC,EAAa,QAAAC,KAAiC,OAC3H,OACEC,EAACC,EAAA,CACC,MAAAJ,EACA,cAAeC,EACf,aAAcF,EACd,UAAWM,EAAG,gBAAiBH,GAAA,YAAAA,EAAS,IAAI,EAE5C,SAAA,CAAAI,EAACC,EAAA,CAAkB,UAAWF,EAAG,0BAA2BH,GAAA,YAAAA,EAAS,IAAI,EACtE,UAAAM,EAAAV,GAAA,YAAAA,EAAe,WAAf,YAAAU,EAAyB,IAAI,CAAC,CAAE,GAAAC,EAAI,MAAAC,KACnCJ,EAACK,EAAA,CAEC,MAAOF,EACP,UAAWJ,EACT,+TACAH,GAAA,YAAAA,EAAS,OAAA,EAGV,SAAAQ,CAAA,EAPID,CAAA,GAUX,IACCG,EAAA,CAAW,SAAUd,GAAA,YAAAA,EAAe,SAAU,QAASI,GAAA,YAAAA,EAAS,UAAA,CAAY,CAAA,CAAA,CAAA,CAGnF"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as p}from"react/jsx-runtime";import{Content as h}from"../../../../../node_modules/@radix-ui/react-tabs/dist/index.js";import{Accordion as x}from"../../accordion/Accordion.js";import{cn as e}from"../../../utils/cn.js";const
|
|
1
|
+
import{jsx as p}from"react/jsx-runtime";import{Content as h}from"../../../../../node_modules/@radix-ui/react-tabs/dist/index.js";import{Accordion as x}from"../../accordion/Accordion.js";import{cn as e}from"../../../utils/cn.js";import"react";const b=({classes:t,contents:f})=>p("div",{className:e("flex flex-col gap-4",t==null?void 0:t.contentsWrapper),children:f==null?void 0:f.map(({id:r,body:u,accordion:m})=>m&&(m!=null&&m.title)?p(h,{value:r,className:e("py-8",t==null?void 0:t.content),children:p(x,{label:m==null?void 0:m.title,children:u})},r):p(h,{value:r,className:e("py-8",t==null?void 0:t.content),children:u},r))});export{b as TabContent};
|
|
2
2
|
//# sourceMappingURL=TabContent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabContent.js","sources":["../../../../../../lib/shared/ui/tabSwitcher/ui/TabContent.tsx"],"sourcesContent":["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"],"names":["TabContent","classes","contents","jsx","cn","id","body","accordion","TabPrimitive.Content","Accordion"],"mappings":"
|
|
1
|
+
{"version":3,"file":"TabContent.js","sources":["../../../../../../lib/shared/ui/tabSwitcher/ui/TabContent.tsx"],"sourcesContent":["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"],"names":["TabContent","classes","contents","jsx","cn","id","body","accordion","TabPrimitive.Content","Accordion"],"mappings":"kPAeO,MAAMA,EAAa,CAAC,CAAE,QAAAC,EAAS,SAAAC,KAElCC,EAAC,MAAA,CAAI,UAAWC,EAAG,sBAAuBH,GAAA,YAAAA,EAAS,eAAe,EAC/D,SAAAC,GAAA,YAAAA,EAAU,IAAI,CAAC,CAAE,GAAAG,EAAI,KAAAC,EAAM,UAAAC,KACtBA,IAAaA,GAAA,MAAAA,EAAW,SAEvBC,EAAA,CAA8B,MAAOH,EAAI,UAAWD,EAAG,OAAQH,GAAA,YAAAA,EAAS,OAAO,EAC9E,WAACQ,EAAA,CAAU,MAAOF,GAAA,YAAAA,EAAW,MAAQ,SAAAD,CAAA,CAAK,GADjBD,CAE3B,EAKFF,EAACK,EAAA,CAA8B,MAAOH,EAAI,UAAWD,EAAG,OAAQH,GAAA,YAAAA,EAAS,OAAO,EAC7E,YADwBI,CAE3B,EAEH,CACH"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as r,jsxs as f}from"react/jsx-runtime";import{flexRender as h}from"../../../../node_modules/@tanstack/react-table/build/lib/index.js";import{cn as i}from"../../utils/cn.js";import"react";const x=({mode:d,enableHeaders:p,table:t,classes:o,empty:g="Not found"})=>r("div",{className:i("w-full",o==null?void 0:o.table),children:t.getRowModel().rows.length?t.getRowModel().rows.map(n=>r("div",{className:i({"[&:not(:last-child)]:border-b [&:not(:last-child)]:border-b-[rgba(234,237,241,1)]":d==="solid","[&:nth-child(odd)]:bg-color-primary-light-default":d==="odd"},o==null?void 0:o.tableRow),children:n.getVisibleCells().map((e,l)=>{const m=t.getHeaderGroups()[0].headers[l];return f("div",{className:i("grid grid-cols-2 p-2",{"px-2":d==="odd","font-medium":l!==0},o==null?void 0:o.tableCell),children:[p&&r("p",{className:"font-bold",children:h(m.column.columnDef.header,m.getContext())}),r("p",{children:h(e.column.columnDef.cell,e.getContext())})]},e.id)})},n.id)):r("div",{children:g})});export{x as Mobile};
|
|
2
2
|
//# sourceMappingURL=Mobile.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Mobile.js","sources":["../../../../../lib/shared/ui/table/Mobile.tsx"],"sourcesContent":["import { flexRender, type Table } from '@tanstack/react-table'\nimport type { DataTableProps } from './model'\nimport { cn } from '$/shared/utils'\n\nexport const Mobile = <TData extends {}>({\n mode,\n enableHeaders,\n table,\n classes,\n empty = 'Not found'\n}: Pick<DataTableProps<TData>, 'enableHeaders' | 'classes' | 'mode' | 'empty'> & { table: Table<TData> }) => {\n return (\n <div className={cn('w-full', classes?.table)}>\n {table.getRowModel().rows.length ? (\n table.getRowModel().rows.map((row) => (\n <div\n key={row.id}\n className={cn(\n {\n '[&:not(:last-child)]:border-b [&:not(:last-child)]:border-b-[rgba(234,237,241,1)]': mode === 'solid',\n '[&:nth-child(odd)]:bg-color-primary-light-default': mode === 'odd'\n },\n classes?.tableRow\n )}\n >\n {row.getVisibleCells().map((cell, index) => {\n const header = table.getHeaderGroups()[0].headers[index]\n\n return (\n <div\n key={cell.id}\n className={cn(\n 'grid grid-cols-2 p-2',\n {\n 'px-2': mode === 'odd',\n 'font-medium': index !== 0\n },\n classes?.tableCell\n )}\n >\n {enableHeaders && (\n <p className='font-bold'>{flexRender(header.column.columnDef.header, header.getContext())}</p>\n )}\n <p>{flexRender(cell.column.columnDef.cell, cell.getContext())}</p>\n </div>\n )\n })}\n </div>\n ))\n ) : (\n <div>{empty}</div>\n )}\n </div>\n )\n}\n"],"names":["Mobile","mode","enableHeaders","table","classes","empty","cn","row","jsx","cell","index","header","jsxs","flexRender"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Mobile.js","sources":["../../../../../lib/shared/ui/table/Mobile.tsx"],"sourcesContent":["import { flexRender, type Table } from '@tanstack/react-table'\nimport type { DataTableProps } from './model'\nimport { cn } from '$/shared/utils'\n\nexport const Mobile = <TData extends {}>({\n mode,\n enableHeaders,\n table,\n classes,\n empty = 'Not found'\n}: Pick<DataTableProps<TData>, 'enableHeaders' | 'classes' | 'mode' | 'empty'> & { table: Table<TData> }) => {\n return (\n <div className={cn('w-full', classes?.table)}>\n {table.getRowModel().rows.length ? (\n table.getRowModel().rows.map((row) => (\n <div\n key={row.id}\n className={cn(\n {\n '[&:not(:last-child)]:border-b [&:not(:last-child)]:border-b-[rgba(234,237,241,1)]': mode === 'solid',\n '[&:nth-child(odd)]:bg-color-primary-light-default': mode === 'odd'\n },\n classes?.tableRow\n )}\n >\n {row.getVisibleCells().map((cell, index) => {\n const header = table.getHeaderGroups()[0].headers[index]\n\n return (\n <div\n key={cell.id}\n className={cn(\n 'grid grid-cols-2 p-2',\n {\n 'px-2': mode === 'odd',\n 'font-medium': index !== 0\n },\n classes?.tableCell\n )}\n >\n {enableHeaders && (\n <p className='font-bold'>{flexRender(header.column.columnDef.header, header.getContext())}</p>\n )}\n <p>{flexRender(cell.column.columnDef.cell, cell.getContext())}</p>\n </div>\n )\n })}\n </div>\n ))\n ) : (\n <div>{empty}</div>\n )}\n </div>\n )\n}\n"],"names":["Mobile","mode","enableHeaders","table","classes","empty","cn","row","jsx","cell","index","header","jsxs","flexRender"],"mappings":"sMAIO,MAAMA,EAAS,CAAmB,CACvC,KAAAC,EACA,cAAAC,EACA,MAAAC,EACA,QAAAC,EACA,MAAAC,EAAQ,WACV,MAEK,MAAA,CAAI,UAAWC,EAAG,SAAUF,GAAA,YAAAA,EAAS,KAAK,EACxC,SAAAD,EAAM,cAAc,KAAK,OACxBA,EAAM,YAAA,EAAc,KAAK,IAAKI,GAC5BC,EAAC,MAAA,CAEC,UAAWF,EACT,CACE,oFAAqFL,IAAS,QAC9F,oDAAqDA,IAAS,KAAA,EAEhEG,GAAA,YAAAA,EAAS,QAAA,EAGV,WAAI,gBAAA,EAAkB,IAAI,CAACK,EAAMC,IAAU,CAC1C,MAAMC,EAASR,EAAM,gBAAA,EAAkB,CAAC,EAAE,QAAQO,CAAK,EAEvD,OACEE,EAAC,MAAA,CAEC,UAAWN,EACT,uBACA,CACE,OAAQL,IAAS,MACjB,cAAeS,IAAU,CAAA,EAE3BN,GAAA,YAAAA,EAAS,SAAA,EAGV,SAAA,CAAAF,GACCM,EAAC,IAAA,CAAE,UAAU,YAAa,SAAAK,EAAWF,EAAO,OAAO,UAAU,OAAQA,EAAO,WAAA,CAAY,EAAE,EAE5FH,EAAC,IAAA,CAAG,SAAAK,EAAWJ,EAAK,OAAO,UAAU,KAAMA,EAAK,WAAA,CAAY,CAAA,CAAE,CAAA,CAAA,EAbzDA,EAAK,EAAA,CAgBhB,CAAC,CAAA,EA9BIF,EAAI,EAAA,CAgCZ,EAEDC,EAAC,MAAA,CAAK,WAAM,EAEhB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as n,jsx as a}from"react/jsx-runtime";import{cn as
|
|
1
|
+
import{jsxs as n,jsx as a}from"react/jsx-runtime";import{cn as m}from"../../utils/cn.js";import"react";import{Pagination as x}from"../pagination/Pagination.js";const j=({page:o,pageCount:e,pageSize:p,onPageIndexChange:f,rowsCount:i,classes:t})=>{const r=p*o,d=r>i?i:r;return n("div",{className:m("flex w-full items-center justify-between",t==null?void 0:t.root),children:[n("span",{className:m("desk-body-regular-m text-color-tetriary",t==null?void 0:t.displayShown),children:["Показано ",d," из ",i]}),a(x,{totalPages:e,changePage:g=>f(g),page:o,ellipsis:1,classes:t==null?void 0:t.pagination})]})};export{j as TablePagination};
|
|
2
2
|
//# sourceMappingURL=TablePagination.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TablePagination.js","sources":["../../../../../lib/shared/ui/table/TablePagination.tsx"],"sourcesContent":["import { cn } from '../../utils'\nimport { Pagination, type PaginationProps } from '../pagination'\n\ntype TablePaginationClasses = {\n root?: string\n displayShown?: string\n pagination?: PaginationProps['classes']\n}\n\nexport type TablePaginationProps = {\n pageSize: number\n page: number\n rowsCount: number\n pageCount: number\n onPageIndexChange: (page: number) => void\n classes?: TablePaginationClasses\n}\n\nexport const TablePagination = ({ page, pageCount, pageSize, onPageIndexChange, rowsCount, classes }: TablePaginationProps) => {\n const prevRows = pageSize * page\n const rowsLeft = prevRows > rowsCount ? rowsCount : prevRows\n\n return (\n <div className={cn('flex w-full items-center justify-between', classes?.root)}>\n <span className={cn('desk-body-regular-m text-color-tetriary', classes?.displayShown)}>\n Показано {rowsLeft} из {rowsCount}\n </span>\n <Pagination\n totalPages={pageCount}\n changePage={(pageIndex) => onPageIndexChange(pageIndex)}\n page={page}\n ellipsis={1}\n classes={classes?.pagination}\n />\n </div>\n )\n}\n"],"names":["TablePagination","page","pageCount","pageSize","onPageIndexChange","rowsCount","classes","prevRows","rowsLeft","cn","jsxs","jsx","Pagination","pageIndex"],"mappings":"
|
|
1
|
+
{"version":3,"file":"TablePagination.js","sources":["../../../../../lib/shared/ui/table/TablePagination.tsx"],"sourcesContent":["import { cn } from '../../utils'\nimport { Pagination, type PaginationProps } from '../pagination'\n\ntype TablePaginationClasses = {\n root?: string\n displayShown?: string\n pagination?: PaginationProps['classes']\n}\n\nexport type TablePaginationProps = {\n pageSize: number\n page: number\n rowsCount: number\n pageCount: number\n onPageIndexChange: (page: number) => void\n classes?: TablePaginationClasses\n}\n\nexport const TablePagination = ({ page, pageCount, pageSize, onPageIndexChange, rowsCount, classes }: TablePaginationProps) => {\n const prevRows = pageSize * page\n const rowsLeft = prevRows > rowsCount ? rowsCount : prevRows\n\n return (\n <div className={cn('flex w-full items-center justify-between', classes?.root)}>\n <span className={cn('desk-body-regular-m text-color-tetriary', classes?.displayShown)}>\n Показано {rowsLeft} из {rowsCount}\n </span>\n <Pagination\n totalPages={pageCount}\n changePage={(pageIndex) => onPageIndexChange(pageIndex)}\n page={page}\n ellipsis={1}\n classes={classes?.pagination}\n />\n </div>\n )\n}\n"],"names":["TablePagination","page","pageCount","pageSize","onPageIndexChange","rowsCount","classes","prevRows","rowsLeft","cn","jsxs","jsx","Pagination","pageIndex"],"mappings":"gKAkBO,MAAMA,EAAkB,CAAC,CAAE,KAAAC,EAAM,UAAAC,EAAW,SAAAC,EAAU,kBAAAC,EAAmB,UAAAC,EAAW,QAAAC,KAAoC,CAC7H,MAAMC,EAAWJ,EAAWF,EACtBO,EAAWD,EAAWF,EAAYA,EAAYE,EAEpD,SACG,MAAA,CAAI,UAAWE,EAAG,2CAA4CH,GAAA,YAAAA,EAAS,IAAI,EAC1E,SAAA,CAAAI,EAAC,QAAK,UAAWD,EAAG,0CAA2CH,GAAA,YAAAA,EAAS,YAAY,EAAG,SAAA,CAAA,YAC3EE,EAAS,OAAKH,CAAA,EAC1B,EACAM,EAACC,EAAA,CACC,WAAYV,EACZ,WAAaW,GAAcT,EAAkBS,CAAS,EACtD,KAAAZ,EACA,SAAU,EACV,QAASK,GAAA,YAAAA,EAAS,UAAA,CAAA,CACpB,EACF,CAEJ"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{Component as e}from"react";class n extends e{constructor(r){super(r),this.state={hasError:!1}}static getDerivedStateFromError(r){return{hasError:!0,error:r}}componentDidCatch(r,t){console.warn(r,t.componentStack)}getFallback(){const{fallback:r=!1}=this.props,{error:t}=this.state;return r?typeof r=="function"?r(t):r:null}render(){return this.state.hasError?this.getFallback():this.props.children}}export{n as ErrorBoundary};
|
|
2
|
+
//# sourceMappingURL=ErrorBoundary.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ErrorBoundary.js","sources":["../../../../lib/shared/utils/ErrorBoundary.tsx"],"sourcesContent":["import { Component, type ErrorInfo, type JSX, type ReactElement } from 'react'\n\ntype ErrorBoundaryProps = {\n children: ReactElement | string\n fallback?: boolean | ReactElement | string | ((error: Error) => JSX.Element)\n}\n\nexport class ErrorBoundary extends Component<ErrorBoundaryProps, { hasError: boolean; error?: Error }> {\n constructor(props: ErrorBoundaryProps) {\n super(props)\n\n this.state = { hasError: false }\n }\n\n static getDerivedStateFromError(error: Error) {\n return { hasError: true, error }\n }\n\n componentDidCatch(error: Error, errorInfo: ErrorInfo) {\n console.warn(error, errorInfo.componentStack)\n }\n\n getFallback() {\n const { fallback = false } = this.props\n const { error } = this.state\n\n return fallback ? (typeof fallback === 'function' ? fallback(error!) : fallback) : null\n }\n\n render() {\n if (this.state.hasError) return this.getFallback()\n\n return this.props.children\n }\n}\n"],"names":["ErrorBoundary","Component","props","error","errorInfo","fallback"],"mappings":"kCAOO,MAAMA,UAAsBC,CAAoE,CACrG,YAAYC,EAA2B,CACrC,MAAMA,CAAK,EAEX,KAAK,MAAQ,CAAE,SAAU,EAAA,CAC3B,CAEA,OAAO,yBAAyBC,EAAc,CAC5C,MAAO,CAAE,SAAU,GAAM,MAAAA,CAAA,CAC3B,CAEA,kBAAkBA,EAAcC,EAAsB,CACpD,QAAQ,KAAKD,EAAOC,EAAU,cAAc,CAC9C,CAEA,aAAc,CACZ,KAAM,CAAE,SAAAC,EAAW,EAAA,EAAU,KAAK,MAC5B,CAAE,MAAAF,GAAU,KAAK,MAEvB,OAAOE,EAAY,OAAOA,GAAa,WAAaA,EAASF,CAAM,EAAIE,EAAY,IACrF,CAEA,QAAS,CACP,OAAI,KAAK,MAAM,SAAiB,KAAK,YAAA,EAE9B,KAAK,MAAM,QACpB,CACF"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createPhoneNumber as e}from"./createPhoneNumber.js";import{scrollToElement as m}from"./scrollToElement.js";import{cn as f}from"./cn.js";import{isClient as
|
|
1
|
+
import{createPhoneNumber as e}from"./createPhoneNumber.js";import{scrollToElement as m}from"./scrollToElement.js";import{cn as f}from"./cn.js";import{isClient as a}from"./isClient.js";import{capitalize as n}from"./capitalize.js";import{mergeRefs as i}from"./mergeRefs.js";import{TypeGuards as g}from"./typeGuards.js";import{getUuid as d}from"./uuid.js";import{localStorageActions as h}from"./localStorageActions.js";import{assertUnreachable as A}from"./assertUnreachable.js";import{ErrorBoundary as S}from"./ErrorBoundary.js";import{sessionStorageActions as U}from"./sessionStorage.js";export{S as ErrorBoundary,g as TypeGuards,A as assertUnreachable,n as capitalize,f as cn,e as createPhoneNumber,d as getUuid,a as isClient,h as localStorageActions,i as mergeRefs,m as scrollToElement,U as sessionStorageActions};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import"react/jsx-runtime";import"../../../../node_modules/classnames/index.js";import{TypeGuards as E}from"../../utils/typeGuards.js";import"../../ui/button/Button.js";import"../../ui/buttonIcon/ButtonIcon.js";import"../../ui/calendar/Calendar.js";import{formatDateToLocaleString as o}from"../../ui/calendar/model/utils.js";import"../../ui/accordion/Accordion.js";import"react
|
|
1
|
+
import"react/jsx-runtime";import"../../../../node_modules/classnames/index.js";import{TypeGuards as E}from"../../utils/typeGuards.js";import"react";import"../../ui/button/Button.js";import"../../ui/buttonIcon/ButtonIcon.js";import"../../ui/calendar/Calendar.js";import{formatDateToLocaleString as o}from"../../ui/calendar/model/utils.js";import"../../ui/accordion/Accordion.js";import"react-dom";import"../../ui/modal/ui/IframeModalContent.js";import"../../../../node_modules/react-hot-toast/dist/index.js";import"../../ui/table/ui/primitives/Primitives.js";import"../../ui/carousel/ui/CarouselContent.js";import"../../ui/slot/Slot.js";import"../../ui/formElements/uncontrolled/autocomplete/Autocomplete.js";import"../../ui/formElements/uncontrolled/checkbox/Checkbox.js";import"../../ui/formElements/uncontrolled/combobox/combobox.js";import"../../ui/formElements/uncontrolled/dayPicker/DayPicker.js";import"../../ui/formElements/uncontrolled/input/Input.js";import"../../ui/formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../../ui/formElements/uncontrolled/maskInput/MaskInput.js";import"../../ui/formElements/uncontrolled/radio/RadioGroup.js";import"../../ui/formElements/uncontrolled/radio/ui/RadioItem.js";import"../../ui/formElements/uncontrolled/slider/SliderBase.js";import"../../ui/formElements/uncontrolled/switch/Switch.js";import"../../ui/formElements/uncontrolled/textarea/Textarea.js";import"../../ui/formElements/uncontrolled/uploader/UploaderBase.js";import"../../ui/formElements/uncontrolled/inputCurrency/InputCurrency.js";import"../../../../src/configs/api.js";import"../../ui/formElements/controlled/editor/ui/Editor.js";import"../../ui/formElements/controlled/input/MaskInputControl.js";import"../../ui/dropdownList/ui/dropdownItem/DropdownItem.js";const F={NON_EMPTY:()=>"Поле не может быть пустым",MIN_LENGTH:_=>`Поле должно содержать минимум символов: ${_}`,MAX_LENGTH:_=>`Поле должно содержать максимум символов: ${_}`,FIX_LENGTH:_=>`Поле должно быть фиксированной длины символов: ${_}`,MIN_VALUE:_=>`Значение не может быть меньше чем ${_}`,MAX_VALUE:_=>`Значение не может быть больше чем ${_}`,PHONE_NON_EMPTY:()=>"Номер телефона должен состоять из 11 цифр",PHONE_INVALID_OPERATOR:()=>"Код города/оператора должен начинаться с цифры 3, 4, 5, 6 или 9",EMAIL_INVALID:()=>"Email введен некорректно. Пример: example@domain.ru",EMAIL_NON_EMPTY:()=>"Введите адрес электронной почты",SELECT_NON_EMPTY:()=>"Выберите один из вариантов",SELECT_MULTIPLE_MIN_LENGTH:_=>`Выберите не менее ${_} вариантов`,SELECT_MULTIPLE_MAX_LENGTH:_=>`Выберите не более ${_} вариантов`,SELECT_FIX_LENGTH:_=>`Поле должно быть фиксированного количества вариантов: ${_}`,DATE_INVALID_FORMAT:()=>"Дата указана некорректно",DATE_NON_EMPTY:()=>"Укажите дату",VALUE_OUT_OF_RANGE:_=>`Выберите один из вариантов ${_.join(", ")}`,DATE_MIN:_=>{const t=E.isString(_)?new Date(_):_;return`Выбранная дата должна быть не раньше ${o(t)}`},DATE_MAX:_=>{const t=E.isString(_)?new Date(_):_;return`Выбранная дата должна быть не позже ${o(t)}`},INVALID_REGEX_STRING:()=>"Поле не соответствует требованиям",INVALID_URL:()=>"Ссылка введена некорректно. Пример: https://example.com, example.com",PASSPORT_INVALID_TYPE:()=>"Паспортные данные введены некорректно",PASSPORT_NON_EMPTY:()=>"Поле обязательно для заполнения",PASSPORT_PART_OR_NUMBER_NON_EMPTY:()=>"Серия или номер паспорта не могут быть пустыми",INVALID_PASSPORT_PART:()=>"Серия паспорта введена некорректно",INVALID_PASSPORT_NUMBER:()=>"Номер паспорта введен некорректно",DEPARTMENT_NON_EMPTY:()=>"Поле обязательно для заполнения",INVALID_DEPARTMENT:()=>"Код подразделения введён некорректно",CURRENCY_NON_EMPTY:()=>"Не выбрана валюта"};export{F as baseDefaultMessages};
|
|
2
2
|
//# sourceMappingURL=base.constants.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import*as r from"../../../../node_modules/zod/v3/external.js";import{baseDefaultMessages as
|
|
1
|
+
import*as r from"../../../../node_modules/zod/v3/external.js";import{baseDefaultMessages as u}from"./base.constants.js";import{getSelectSchema as a}from"./select.validators.js";import{getStringSchema as l}from"./string.validators.js";import"../../../../node_modules/classnames/index.js";import{TypeGuards as d}from"../../utils/typeGuards.js";import"react";const p={value:"",currency:null},f=o=>{const{min:m=1,max:i,message:e,defaultValue:n=p}=o??{};return r.object({value:l(),currency:a()}).superRefine(({value:s,currency:c},t)=>{d.isStringEmpty(s)&&t.addIssue({code:r.ZodIssueCode.too_small,type:"string",minimum:0,inclusive:!0,message:(e==null?void 0:e.valueEmpty)??u.NON_EMPTY()}),Number(s)<m&&t.addIssue({code:r.ZodIssueCode.too_small,type:"string",minimum:m,inclusive:!0,message:(e==null?void 0:e.min)??u.MIN_VALUE(m)}),d.isNil(c)&&t.addIssue({code:r.ZodIssueCode.invalid_type,expected:"string",received:"null",message:(e==null?void 0:e.currencyEmpty)??u.CURRENCY_NON_EMPTY()}),i&&Number(s)>i&&t.addIssue({code:r.ZodIssueCode.too_big,type:"string",maximum:i,inclusive:!0,message:(e==null?void 0:e.max)??u.MAX_VALUE(i)})}).default(n)};function E(o){return f(o)}export{E as getCurrencySchema};
|
|
2
2
|
//# sourceMappingURL=currency.validators.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"currency.validators.js","sources":["../../../../../lib/shared/validation/base/currency.validators.ts"],"sourcesContent":["import z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\nimport { getSelectSchema } from './select.validators'\nimport { getStringSchema } from './string.validators'\nimport type { CurrencyValue } from '$/shared/ui/formElements/uncontrolled/inputCurrency'\nimport { TypeGuards } from '$/shared/utils'\n\nexport type CurrencyValidationOptions = {\n /**\n * Минимальное значение\n * @default 1\n */\n min?: number\n /**\n * Максимальное значение\n * @default undefined\n */\n max?: number\n /**\n * Значение по умолчанию\n * @default { value: '', currency: null }\n */\n defaultValue?: CurrencyValue\n /**\n * Произвольные сообщения об ошибках\n */\n message?: Partial<\n Record<keyof Omit<CurrencyValidationOptions, 'message' | 'defaultValue'> | 'currencyEmpty' | 'valueEmpty', string>\n >\n}\n\nconst defaultCurrency: CurrencyValue = {\n value: '',\n currency: null\n}\n\nconst getCurrencyRequired = (props?: CurrencyValidationOptions) => {\n const { min = 1, max, message, defaultValue = defaultCurrency } = props ?? {}\n\n return z\n .object({\n value: getStringSchema(),\n currency: getSelectSchema()\n })\n .superRefine(({ value, currency }, context) => {\n if (TypeGuards.isStringEmpty(value)) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n type: 'string',\n minimum: 0,\n inclusive: true,\n message: message?.valueEmpty ?? baseDefaultMessages.NON_EMPTY()\n })\n }\n\n if (Number(value) < min) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n type: 'string',\n minimum: min,\n inclusive: true,\n message: message?.min ?? baseDefaultMessages.MIN_VALUE(min)\n })\n }\n\n if (TypeGuards.isNil(currency)) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_type,\n expected: 'string',\n received: 'null',\n message: message?.currencyEmpty ?? baseDefaultMessages.CURRENCY_NON_EMPTY()\n })\n }\n\n if (max) {\n if (Number(value) > max) {\n context.addIssue({\n code: z.ZodIssueCode.too_big,\n type: 'string',\n maximum: max,\n inclusive: true,\n message: message?.max ?? baseDefaultMessages.MAX_VALUE(max)\n })\n }\n }\n })\n .default(defaultValue)\n}\ntype CurrencyRequiredSchema = ReturnType<typeof getCurrencyRequired>\n\n/**\n * Схема валидации обязательного поля валюты\n * @param {CurrencyValidationOptions} props настройки схемы\n * @typeParam `min` - `number | undefined` `default: 1`\n * @typeParam `max` - `number | undefined` `default: undefined`\n * @typeParam `message` - `{ [min | max | currencyEmpty | valueEmpty]: string }`\n * @typeParam `defaultValue` - `CurrencyValue` `default: { value: '', currency: null }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example with required min value\n * z.object({\n * field: zodValidators.base.getCurrencySchema({ min: 10 })\n * })\n * // will returns z.object({\n * value: z.string().min(10),\n * currency: z.string().nullable()\n * })\n *\n * @example with required min, max value\n * z.object({\n * field: zodValidators.base.getCurrencySchema({ min: 10, max: 20 })\n * })\n * // will returns z.object({\n * value: z.string().min(10).max(20),\n * currency: z.string().nullable()\n * })\n */\nexport function getCurrencySchema(props?: CurrencyValidationOptions): CurrencyRequiredSchema {\n return getCurrencyRequired(props)\n}\n"],"names":["defaultCurrency","getCurrencyRequired","props","min","max","message","defaultValue","z","getStringSchema","getSelectSchema","value","currency","context","TypeGuards","baseDefaultMessages","getCurrencySchema"],"mappings":"
|
|
1
|
+
{"version":3,"file":"currency.validators.js","sources":["../../../../../lib/shared/validation/base/currency.validators.ts"],"sourcesContent":["import z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\nimport { getSelectSchema } from './select.validators'\nimport { getStringSchema } from './string.validators'\nimport type { CurrencyValue } from '$/shared/ui/formElements/uncontrolled/inputCurrency'\nimport { TypeGuards } from '$/shared/utils'\n\nexport type CurrencyValidationOptions = {\n /**\n * Минимальное значение\n * @default 1\n */\n min?: number\n /**\n * Максимальное значение\n * @default undefined\n */\n max?: number\n /**\n * Значение по умолчанию\n * @default { value: '', currency: null }\n */\n defaultValue?: CurrencyValue\n /**\n * Произвольные сообщения об ошибках\n */\n message?: Partial<\n Record<keyof Omit<CurrencyValidationOptions, 'message' | 'defaultValue'> | 'currencyEmpty' | 'valueEmpty', string>\n >\n}\n\nconst defaultCurrency: CurrencyValue = {\n value: '',\n currency: null\n}\n\nconst getCurrencyRequired = (props?: CurrencyValidationOptions) => {\n const { min = 1, max, message, defaultValue = defaultCurrency } = props ?? {}\n\n return z\n .object({\n value: getStringSchema(),\n currency: getSelectSchema()\n })\n .superRefine(({ value, currency }, context) => {\n if (TypeGuards.isStringEmpty(value)) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n type: 'string',\n minimum: 0,\n inclusive: true,\n message: message?.valueEmpty ?? baseDefaultMessages.NON_EMPTY()\n })\n }\n\n if (Number(value) < min) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n type: 'string',\n minimum: min,\n inclusive: true,\n message: message?.min ?? baseDefaultMessages.MIN_VALUE(min)\n })\n }\n\n if (TypeGuards.isNil(currency)) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_type,\n expected: 'string',\n received: 'null',\n message: message?.currencyEmpty ?? baseDefaultMessages.CURRENCY_NON_EMPTY()\n })\n }\n\n if (max) {\n if (Number(value) > max) {\n context.addIssue({\n code: z.ZodIssueCode.too_big,\n type: 'string',\n maximum: max,\n inclusive: true,\n message: message?.max ?? baseDefaultMessages.MAX_VALUE(max)\n })\n }\n }\n })\n .default(defaultValue)\n}\ntype CurrencyRequiredSchema = ReturnType<typeof getCurrencyRequired>\n\n/**\n * Схема валидации обязательного поля валюты\n * @param {CurrencyValidationOptions} props настройки схемы\n * @typeParam `min` - `number | undefined` `default: 1`\n * @typeParam `max` - `number | undefined` `default: undefined`\n * @typeParam `message` - `{ [min | max | currencyEmpty | valueEmpty]: string }`\n * @typeParam `defaultValue` - `CurrencyValue` `default: { value: '', currency: null }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example with required min value\n * z.object({\n * field: zodValidators.base.getCurrencySchema({ min: 10 })\n * })\n * // will returns z.object({\n * value: z.string().min(10),\n * currency: z.string().nullable()\n * })\n *\n * @example with required min, max value\n * z.object({\n * field: zodValidators.base.getCurrencySchema({ min: 10, max: 20 })\n * })\n * // will returns z.object({\n * value: z.string().min(10).max(20),\n * currency: z.string().nullable()\n * })\n */\nexport function getCurrencySchema(props?: CurrencyValidationOptions): CurrencyRequiredSchema {\n return getCurrencyRequired(props)\n}\n"],"names":["defaultCurrency","getCurrencyRequired","props","min","max","message","defaultValue","z","getStringSchema","getSelectSchema","value","currency","context","TypeGuards","baseDefaultMessages","getCurrencySchema"],"mappings":"oWA+BA,MAAMA,EAAiC,CACrC,MAAO,GACP,SAAU,IACZ,EAEMC,EAAuBC,GAAsC,CACjE,KAAM,CAAE,IAAAC,EAAM,EAAG,IAAAC,EAAK,QAAAC,EAAS,aAAAC,EAAeN,GAAoBE,GAAS,CAAA,EAE3E,OAAOK,EACJ,OAAO,CACN,MAAOC,EAAA,EACP,SAAUC,EAAA,CAAgB,CAC3B,EACA,YAAY,CAAC,CAAE,MAAAC,EAAO,SAAAC,CAAA,EAAYC,IAAY,CACzCC,EAAW,cAAcH,CAAK,GAChCE,EAAQ,SAAS,CACf,KAAML,EAAE,aAAa,UACrB,KAAM,SACN,QAAS,EACT,UAAW,GACX,SAASF,GAAA,YAAAA,EAAS,aAAcS,EAAoB,UAAA,CAAU,CAC/D,EAGC,OAAOJ,CAAK,EAAIP,GAClBS,EAAQ,SAAS,CACf,KAAML,EAAE,aAAa,UACrB,KAAM,SACN,QAASJ,EACT,UAAW,GACX,SAASE,GAAA,YAAAA,EAAS,MAAOS,EAAoB,UAAUX,CAAG,CAAA,CAC3D,EAGCU,EAAW,MAAMF,CAAQ,GAC3BC,EAAQ,SAAS,CACf,KAAML,EAAE,aAAa,aACrB,SAAU,SACV,SAAU,OACV,SAASF,GAAA,YAAAA,EAAS,gBAAiBS,EAAoB,mBAAA,CAAmB,CAC3E,EAGCV,GACE,OAAOM,CAAK,EAAIN,GAClBQ,EAAQ,SAAS,CACf,KAAML,EAAE,aAAa,QACrB,KAAM,SACN,QAASH,EACT,UAAW,GACX,SAASC,GAAA,YAAAA,EAAS,MAAOS,EAAoB,UAAUV,CAAG,CAAA,CAC3D,CAGP,CAAC,EACA,QAAQE,CAAY,CACzB,EA8BO,SAASS,EAAkBb,EAA2D,CAC3F,OAAOD,EAAoBC,CAAK,CAClC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import*as o from"../../../../node_modules/zod/v3/external.js";import{baseDefaultMessages as a}from"./base.constants.js";import"react/jsx-runtime";import"../../../../node_modules/classnames/index.js";import{TypeGuards as n}from"../../utils/typeGuards.js";import"../../ui/button/Button.js";import"../../ui/buttonIcon/ButtonIcon.js";import"../../ui/calendar/Calendar.js";import{DATE_VISIBLE_PATTERN as D}from"../../ui/calendar/model/utils.js";import"../../ui/accordion/Accordion.js";import"react
|
|
1
|
+
import*as o from"../../../../node_modules/zod/v3/external.js";import{baseDefaultMessages as a}from"./base.constants.js";import"react/jsx-runtime";import"../../../../node_modules/classnames/index.js";import{TypeGuards as n}from"../../utils/typeGuards.js";import"react";import"../../ui/button/Button.js";import"../../ui/buttonIcon/ButtonIcon.js";import"../../ui/calendar/Calendar.js";import{DATE_VISIBLE_PATTERN as D}from"../../ui/calendar/model/utils.js";import"../../ui/accordion/Accordion.js";import"react-dom";import"../../ui/modal/ui/IframeModalContent.js";import"../../../../node_modules/react-hot-toast/dist/index.js";import"../../ui/table/ui/primitives/Primitives.js";import"../../ui/carousel/ui/CarouselContent.js";import"../../ui/slot/Slot.js";import"../../ui/formElements/uncontrolled/autocomplete/Autocomplete.js";import"../../ui/formElements/uncontrolled/checkbox/Checkbox.js";import"../../ui/formElements/uncontrolled/combobox/combobox.js";import"../../ui/formElements/uncontrolled/dayPicker/DayPicker.js";import"../../ui/formElements/uncontrolled/input/Input.js";import"../../ui/formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../../ui/formElements/uncontrolled/maskInput/MaskInput.js";import"../../ui/formElements/uncontrolled/radio/RadioGroup.js";import"../../ui/formElements/uncontrolled/radio/ui/RadioItem.js";import"../../ui/formElements/uncontrolled/slider/SliderBase.js";import"../../ui/formElements/uncontrolled/switch/Switch.js";import"../../ui/formElements/uncontrolled/textarea/Textarea.js";import"../../ui/formElements/uncontrolled/uploader/UploaderBase.js";import"../../ui/formElements/uncontrolled/inputCurrency/InputCurrency.js";import"../../../../src/configs/api.js";import"../../ui/formElements/controlled/editor/ui/Editor.js";import"../../ui/formElements/controlled/input/MaskInputControl.js";import"../../ui/dropdownList/ui/dropdownItem/DropdownItem.js";import{parse as _}from"../../../../node_modules/date-fns/parse.js";import{isValid as f}from"../../../../node_modules/date-fns/isValid.js";const g=l=>{const{iso:u=!0,pattern:p=D,min:t,max:d,defaultValue:i,message:e}=l||{};return o.string().min(8,(e==null?void 0:e.min)||a.DATE_NON_EMPTY()).superRefine((r,m)=>{const I=p.replace(/\W/g,"").length;if(r.replace(/[._-]/g,"").length<I&&m.addIssue({code:o.ZodIssueCode.too_small,minimum:I,type:"date",inclusive:!0,message:(e==null?void 0:e.min)||a.DATE_NON_EMPTY()}),u){let T=null;try{T=new Date(r)}catch{m.addIssue({code:o.ZodIssueCode.invalid_date,message:(e==null?void 0:e.invalidDate)||a.DATE_INVALID_FORMAT()})}t&&T.getTime()<(n.isString(t)?new Date(t).getTime():t.getTime())&&m.addIssue({code:o.ZodIssueCode.invalid_date,message:(e==null?void 0:e.min)||a.DATE_MIN(t)}),d&&T.getTime()>(n.isString(d)?new Date(d).getTime():d.getTime())&&m.addIssue({code:o.ZodIssueCode.invalid_date,message:(e==null?void 0:e.max)||a.DATE_MAX(d)})}else{const T=_(r,p,new Date);f(T)||m.addIssue({code:o.ZodIssueCode.invalid_date,message:(e==null?void 0:e.invalidDate)||a.DATE_INVALID_FORMAT()}),t&&T.getTime()<(n.isString(t)?new Date(t).getTime():t.getTime())&&m.addIssue({code:o.ZodIssueCode.invalid_date,message:(e==null?void 0:e.min)||a.DATE_MIN(t)}),d&&T.getTime()>(n.isString(d)?new Date(d).getTime():d.getTime())&&m.addIssue({code:o.ZodIssueCode.invalid_date,message:(e==null?void 0:e.max)||a.DATE_MAX(d)})}}).default(i??"")},c=l=>{const{iso:u=!0,pattern:p=D,min:t,max:d,message:i}=l||{};return o.string().transform(e=>e||void 0).superRefine((e,r)=>{if(n.isString(e)&&e.length){const m=p.replace(/\W/g,"").length;if(e.replace(/[._-]/g,"").length<m&&r.addIssue({code:o.ZodIssueCode.too_small,minimum:m,type:"date",inclusive:!0,message:(i==null?void 0:i.min)||a.DATE_NON_EMPTY()}),u){let s=null;try{s=new Date(e)}catch{r.addIssue({code:o.ZodIssueCode.invalid_date,message:(i==null?void 0:i.invalidDate)||a.DATE_INVALID_FORMAT()})}t&&s.getTime()<(n.isString(t)?new Date(t).getTime():t.getTime())&&r.addIssue({code:o.ZodIssueCode.invalid_date,message:(i==null?void 0:i.min)||a.DATE_MIN(t)}),d&&s.getTime()>(n.isString(d)?new Date(d).getTime():d.getTime())&&r.addIssue({code:o.ZodIssueCode.invalid_date,message:(i==null?void 0:i.max)||a.DATE_MAX(d)})}else{const s=_(e,p,new Date);f(s)||r.addIssue({code:o.ZodIssueCode.invalid_date,message:(i==null?void 0:i.invalidDate)||a.DATE_INVALID_FORMAT()}),t&&s.getTime()<(n.isString(t)?new Date(t).getTime():t.getTime())&&r.addIssue({code:o.ZodIssueCode.invalid_date,message:(i==null?void 0:i.min)||a.DATE_MIN(t)}),d&&s.getTime()>(n.isString(d)?new Date(d).getTime():d.getTime())&&r.addIssue({code:o.ZodIssueCode.invalid_date,message:(i==null?void 0:i.max)||a.DATE_MAX(d)})}}}).optional()};function te(l){const{required:u=!0}=l||{};return u?g(l):c(l)}export{te as getDateSchema};
|
|
2
2
|
//# sourceMappingURL=date.validators.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import*as
|
|
1
|
+
import*as m from"../../../../node_modules/zod/v3/external.js";import{baseDefaultMessages as o}from"./base.constants.js";import"../../../../node_modules/classnames/index.js";import{TypeGuards as g}from"../../utils/typeGuards.js";import"react";const s=/^[\w-.]+@([\w-]+\.)+[\w-]{2,4}$/g,E=e=>{const{message:t,defaultValue:n,regexp:i=s}=e||{},r=g.isString(i)?new RegExp(i):i;return m.string().min(1,(t==null?void 0:t.min)||o.EMAIL_NON_EMPTY()).regex(r,(t==null?void 0:t.invalid)||o.EMAIL_INVALID()).default(n??"")},c=e=>{const{message:t,regexp:n=s}=e||{},i=g.isString(n)?new RegExp(n):n;return m.string().refine(r=>g.isStringEmpty(r)?!0:i.test(r),{message:(t==null?void 0:t.invalid)||o.EMAIL_INVALID()}).optional().transform(r=>(r==null?void 0:r.length)===0?void 0:r)};function x(e){const{required:t=!0}=e||{};return t?E(e):c(e)}export{x as getEmailSchema};
|
|
2
2
|
//# sourceMappingURL=email.validators.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email.validators.js","sources":["../../../../../lib/shared/validation/base/email.validators.ts"],"sourcesContent":["import z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\nimport { TypeGuards } from '$/shared/utils'\n\nexport type EmailValidationOptions<Required extends boolean> = {\n /**\n * указывает что поле обязательное\n * @default true\n */\n required?: Required\n /**\n * Регулярное выражение для проверки email на валидность\n */\n regexp?: RegExp | string\n /**\n * значение по умолчанию\n * @default undefined\n */\n defaultValue?: string\n message?: {\n min?: string\n invalid?: string\n }\n}\n\nconst EMAIL_REGEX = /^[\\w-.]+@([\\w-]+\\.)+[\\w-]{2,4}$/g\n\n/**\n * Схема валидации обязательного поля типа email\n */\nconst getEmailRequired = (props?: Omit<EmailValidationOptions<true>, 'required'>) => {\n const { message, defaultValue, regexp = EMAIL_REGEX } = props || {}\n\n const regex = TypeGuards.isString(regexp) ? new RegExp(regexp) : regexp\n\n return z\n .string()\n .min(1, message?.min || baseDefaultMessages.EMAIL_NON_EMPTY())\n .regex(regex, message?.invalid || baseDefaultMessages.EMAIL_INVALID())\n .default(defaultValue ?? '')\n}\ntype EmailRequiredSchema = ReturnType<typeof getEmailRequired>\n\n/**\n * Схема валидации опционального поля типа email\n */\nconst getEmailOptional = (props?: Omit<EmailValidationOptions<false>, 'required'>) => {\n const { message, regexp = EMAIL_REGEX } = props || {}\n\n const regex = TypeGuards.isString(regexp) ? new RegExp(regexp) : regexp\n\n return z\n .string()\n .refine(\n (value) => {\n if (TypeGuards.isStringEmpty(value)) return true\n return regex.test(value)\n },\n {\n message: message?.invalid || baseDefaultMessages.EMAIL_INVALID()\n }\n )\n .optional()\n .transform((value) => (value?.length === 0 ? undefined : value))\n}\ntype EmailOptionalSchema = ReturnType<typeof getEmailOptional>\n\n/**\n * Схема валидации поля типа email\n * @param {EmailValidationOptions} props настройки схемы\n * @typeParam `required` - `boolean`\n * @typeParam `regexp` - `RegExp`\n * @typeParam `message` - `{ [min | invalid]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example with required value\n * z.object({\n * field: zodValidators.base.getEmailSchema()\n * })\n * // will returns z.string().min(1).email()\n *\n * @example with optional value\n * z.object({\n * field: zodValidators.base.getEmailSchema({ required: false })\n * })\n * // will returns z.string().min(1).email().optional()\n */\nexport function getEmailSchema(props?: EmailValidationOptions<true>): EmailRequiredSchema\nexport function getEmailSchema(props?: EmailValidationOptions<false>): EmailOptionalSchema\nexport function getEmailSchema<Required extends boolean>(\n props?: EmailValidationOptions<Required>\n): EmailRequiredSchema | EmailOptionalSchema {\n const { required = true } = props || {}\n\n return required ? getEmailRequired(props) : getEmailOptional(props)\n}\n"],"names":["EMAIL_REGEX","getEmailRequired","props","message","defaultValue","regexp","regex","TypeGuards","z","baseDefaultMessages","getEmailOptional","value","getEmailSchema","required"],"mappings":"
|
|
1
|
+
{"version":3,"file":"email.validators.js","sources":["../../../../../lib/shared/validation/base/email.validators.ts"],"sourcesContent":["import z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\nimport { TypeGuards } from '$/shared/utils'\n\nexport type EmailValidationOptions<Required extends boolean> = {\n /**\n * указывает что поле обязательное\n * @default true\n */\n required?: Required\n /**\n * Регулярное выражение для проверки email на валидность\n */\n regexp?: RegExp | string\n /**\n * значение по умолчанию\n * @default undefined\n */\n defaultValue?: string\n message?: {\n min?: string\n invalid?: string\n }\n}\n\nconst EMAIL_REGEX = /^[\\w-.]+@([\\w-]+\\.)+[\\w-]{2,4}$/g\n\n/**\n * Схема валидации обязательного поля типа email\n */\nconst getEmailRequired = (props?: Omit<EmailValidationOptions<true>, 'required'>) => {\n const { message, defaultValue, regexp = EMAIL_REGEX } = props || {}\n\n const regex = TypeGuards.isString(regexp) ? new RegExp(regexp) : regexp\n\n return z\n .string()\n .min(1, message?.min || baseDefaultMessages.EMAIL_NON_EMPTY())\n .regex(regex, message?.invalid || baseDefaultMessages.EMAIL_INVALID())\n .default(defaultValue ?? '')\n}\ntype EmailRequiredSchema = ReturnType<typeof getEmailRequired>\n\n/**\n * Схема валидации опционального поля типа email\n */\nconst getEmailOptional = (props?: Omit<EmailValidationOptions<false>, 'required'>) => {\n const { message, regexp = EMAIL_REGEX } = props || {}\n\n const regex = TypeGuards.isString(regexp) ? new RegExp(regexp) : regexp\n\n return z\n .string()\n .refine(\n (value) => {\n if (TypeGuards.isStringEmpty(value)) return true\n return regex.test(value)\n },\n {\n message: message?.invalid || baseDefaultMessages.EMAIL_INVALID()\n }\n )\n .optional()\n .transform((value) => (value?.length === 0 ? undefined : value))\n}\ntype EmailOptionalSchema = ReturnType<typeof getEmailOptional>\n\n/**\n * Схема валидации поля типа email\n * @param {EmailValidationOptions} props настройки схемы\n * @typeParam `required` - `boolean`\n * @typeParam `regexp` - `RegExp`\n * @typeParam `message` - `{ [min | invalid]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example with required value\n * z.object({\n * field: zodValidators.base.getEmailSchema()\n * })\n * // will returns z.string().min(1).email()\n *\n * @example with optional value\n * z.object({\n * field: zodValidators.base.getEmailSchema({ required: false })\n * })\n * // will returns z.string().min(1).email().optional()\n */\nexport function getEmailSchema(props?: EmailValidationOptions<true>): EmailRequiredSchema\nexport function getEmailSchema(props?: EmailValidationOptions<false>): EmailOptionalSchema\nexport function getEmailSchema<Required extends boolean>(\n props?: EmailValidationOptions<Required>\n): EmailRequiredSchema | EmailOptionalSchema {\n const { required = true } = props || {}\n\n return required ? getEmailRequired(props) : getEmailOptional(props)\n}\n"],"names":["EMAIL_REGEX","getEmailRequired","props","message","defaultValue","regexp","regex","TypeGuards","z","baseDefaultMessages","getEmailOptional","value","getEmailSchema","required"],"mappings":"kPAyBA,MAAMA,EAAc,mCAKdC,EAAoBC,GAA2D,CACnF,KAAM,CAAE,QAAAC,EAAS,aAAAC,EAAc,OAAAC,EAASL,CAAA,EAAgBE,GAAS,CAAA,EAE3DI,EAAQC,EAAW,SAASF,CAAM,EAAI,IAAI,OAAOA,CAAM,EAAIA,EAEjE,OAAOG,EACJ,SACA,IAAI,GAAGL,GAAA,YAAAA,EAAS,MAAOM,EAAoB,gBAAA,CAAiB,EAC5D,MAAMH,GAAOH,GAAA,YAAAA,EAAS,UAAWM,EAAoB,eAAe,EACpE,QAAQL,GAAgB,EAAE,CAC/B,EAMMM,EAAoBR,GAA4D,CACpF,KAAM,CAAE,QAAAC,EAAS,OAAAE,EAASL,CAAA,EAAgBE,GAAS,CAAA,EAE7CI,EAAQC,EAAW,SAASF,CAAM,EAAI,IAAI,OAAOA,CAAM,EAAIA,EAEjE,OAAOG,EACJ,SACA,OACEG,GACKJ,EAAW,cAAcI,CAAK,EAAU,GACrCL,EAAM,KAAKK,CAAK,EAEzB,CACE,SAASR,GAAA,YAAAA,EAAS,UAAWM,EAAoB,cAAA,CAAc,CACjE,EAED,SAAA,EACA,UAAWE,IAAWA,GAAA,YAAAA,EAAO,UAAW,EAAI,OAAYA,CAAM,CACnE,EAyBO,SAASC,EACdV,EAC2C,CAC3C,KAAM,CAAE,SAAAW,EAAW,EAAA,EAASX,GAAS,CAAA,EAErC,OAAOW,EAAWZ,EAAiBC,CAAK,EAAIQ,EAAiBR,CAAK,CACpE"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import*as a from"../../../../node_modules/zod/v3/external.js";import{baseDefaultMessages as u}from"./base.constants.js";import"../../../../node_modules/classnames/index.js";import{TypeGuards as g}from"../../utils/typeGuards.js";const f=t=>{const{ignoreMask:d=!0,maskSymbols:o=/[()+_ -]/g,message:e,defaultValue:m,validOperatorCodes:l=["3","4","5","6","9"]}=t||{},
|
|
1
|
+
import*as a from"../../../../node_modules/zod/v3/external.js";import{baseDefaultMessages as u}from"./base.constants.js";import"../../../../node_modules/classnames/index.js";import{TypeGuards as g}from"../../utils/typeGuards.js";import"react";const f=t=>{const{ignoreMask:d=!0,maskSymbols:o=/[()+_ -]/g,message:e,defaultValue:m,validOperatorCodes:l=["3","4","5","6","9"]}=t||{},i=g.isString(o)?new RegExp(o):o;let r=a.string().superRefine((n,s)=>{const c=n.replace(i,""),p=c.charAt(1);l.includes(p)||s.addIssue({code:a.ZodIssueCode.invalid_string,validation:"regex",message:(e==null?void 0:e.invalidOperator)||u.PHONE_INVALID_OPERATOR()}),c.length<11&&s.addIssue({code:a.ZodIssueCode.too_small,minimum:11,inclusive:!0,type:"string",message:(e==null?void 0:e.min)||u.PHONE_NON_EMPTY()})});return d&&(r=r.transform(n=>n.replace(i,""))),r.default(m??"")},O=t=>{const{ignoreMask:d=!0,maskSymbols:o=/[()+_ -]/g,message:e,validOperatorCodes:m=["3","4","5","6","9"]}=t||{},l=g.isString(o)?new RegExp(o):o;let i=a.string().superRefine((r,n)=>{const s=r.replace(l,"");if(!s.length)return;const c=s.charAt(1);m.includes(c)||n.addIssue({code:a.ZodIssueCode.invalid_string,validation:"regex",message:(e==null?void 0:e.invalidOperator)||u.PHONE_INVALID_OPERATOR()}),s.length<11&&n.addIssue({code:a.ZodIssueCode.too_small,minimum:11,inclusive:!0,type:"string",message:(e==null?void 0:e.min)||u.PHONE_NON_EMPTY()})});return d&&(i=i.transform(r=>r.replace(l,""))),i.optional().transform(r=>!r||(r==null?void 0:r.replace(l,"").length)!==0?void 0:r)};function E(t){const{required:d=!0}=t||{};return d?f(t):O(t)}export{E as getPhoneSchema};
|
|
2
2
|
//# sourceMappingURL=phone.validators.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phone.validators.js","sources":["../../../../../lib/shared/validation/base/phone.validators.ts"],"sourcesContent":["import z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\nimport { TypeGuards } from '$/shared/utils'\n\nexport type PhoneValidationOptions<Required extends boolean> = {\n /**\n * исключает маску в возвращаемом значении\n * @default true\n */\n ignoreMask?: boolean\n /**\n * игнорирует символы для проверки поля исключая данные символы\n * @default /[()+_ -]/g\n */\n maskSymbols?: RegExp | string\n /**\n * указывает что поле обязательное\n */\n required?: Required\n /**\n * значение по умолчанию\n * @default undefined\n */\n defaultValue?: string\n message?: {\n min?: string\n invalidOperator?: string\n }\n /**\n * указываем валидные коды оператор\n * @default ['3', '4', '5', '6', '9']\n * @param string[]\n */\n validOperatorCodes?: string[]\n}\n\n/**\n * Схема валидации обязательного поля номера телефона\n */\nconst getPhoneRequired = (props?: Omit<PhoneValidationOptions<true>, 'required'>) => {\n const {\n ignoreMask = true,\n maskSymbols = /[()+_ -]/g,\n message,\n defaultValue,\n validOperatorCodes = ['3', '4', '5', '6', '9']\n } = props || {}\n\n const mask = TypeGuards.isString(maskSymbols) ? new RegExp(maskSymbols) : maskSymbols\n\n let schema = z.string().superRefine((value, context) => {\n const cleanValue = value.replace(mask, '')\n\n const operatorCode = cleanValue.charAt(1)\n\n if (!validOperatorCodes.includes(operatorCode)) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_string,\n validation: 'regex',\n message: message?.invalidOperator || baseDefaultMessages.PHONE_INVALID_OPERATOR()\n })\n }\n\n if (cleanValue.length < 11) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n minimum: 11,\n inclusive: true,\n type: 'string',\n message: message?.min || baseDefaultMessages.PHONE_NON_EMPTY()\n })\n }\n })\n\n if (ignoreMask) {\n schema = schema.transform((value) => value.replace(mask, '')) as unknown as typeof schema\n }\n\n return schema.default(defaultValue ?? '')\n}\ntype PhoneRequiredSchema = ReturnType<typeof getPhoneRequired>\n\n/**\n * Схема валидации опционального поля номера телефона\n */\nconst getPhoneOptional = (props?: Omit<PhoneValidationOptions<false>, 'required'>) => {\n const { ignoreMask = true, maskSymbols = /[()+_ -]/g, message, validOperatorCodes = ['3', '4', '5', '6', '9'] } = props || {}\n\n const mask = TypeGuards.isString(maskSymbols) ? new RegExp(maskSymbols) : maskSymbols\n\n let schema = z.string().superRefine((value, context) => {\n const cleanValue = value.replace(mask, '')\n\n if (!cleanValue.length) return\n\n const operatorCode = cleanValue.charAt(1)\n\n if (!validOperatorCodes.includes(operatorCode)) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_string,\n validation: 'regex',\n message: message?.invalidOperator || baseDefaultMessages.PHONE_INVALID_OPERATOR()\n })\n }\n\n if (cleanValue.length < 11) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n minimum: 11,\n inclusive: true,\n type: 'string',\n message: message?.min || baseDefaultMessages.PHONE_NON_EMPTY()\n })\n }\n })\n\n if (ignoreMask) {\n schema = schema.transform((value) => value.replace(mask, '')) as unknown as typeof schema\n }\n\n return schema.optional().transform((value) => (!value || value?.replace(mask, '').length !== 0 ? undefined : value))\n}\ntype PhoneOptionalSchema = ReturnType<typeof getPhoneOptional>\n\n/**\n * Схема валидации опционального поля номера телефона\n * @param {PhoneValidationOptions} props настройки схемы\n * @typeParam `required` - `boolean`\n * @typeParam `ignoreSeparators` - `boolean | undefined` `default: false`\n * @typeParam `maskSymbols` - `RegExp | undefined` `default: /[()+_ -]/g`\n * @typeParam `message` - `{ [min | invalidOperator]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example with required value\n * z.object({\n * field: zodValidators.base.getPhoneSchema()\n * })\n * // will returns z.string()\n *\n * @example with optional value\n * z.object({\n * field: zodValidators.base.getPhoneSchema({ required: false })\n * })\n * // will returns z.string().optional()\n */\nexport function getPhoneSchema(props?: PhoneValidationOptions<true>): PhoneRequiredSchema\nexport function getPhoneSchema(props?: PhoneValidationOptions<false>): PhoneOptionalSchema\nexport function getPhoneSchema<Required extends boolean>(\n props?: PhoneValidationOptions<Required>\n): PhoneRequiredSchema | PhoneOptionalSchema {\n const { required = true } = props || {}\n\n return required ? getPhoneRequired(props) : getPhoneOptional(props)\n}\n"],"names":["getPhoneRequired","props","ignoreMask","maskSymbols","message","defaultValue","validOperatorCodes","mask","TypeGuards","schema","z","value","context","cleanValue","operatorCode","baseDefaultMessages","getPhoneOptional","getPhoneSchema","required"],"mappings":"
|
|
1
|
+
{"version":3,"file":"phone.validators.js","sources":["../../../../../lib/shared/validation/base/phone.validators.ts"],"sourcesContent":["import z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\nimport { TypeGuards } from '$/shared/utils'\n\nexport type PhoneValidationOptions<Required extends boolean> = {\n /**\n * исключает маску в возвращаемом значении\n * @default true\n */\n ignoreMask?: boolean\n /**\n * игнорирует символы для проверки поля исключая данные символы\n * @default /[()+_ -]/g\n */\n maskSymbols?: RegExp | string\n /**\n * указывает что поле обязательное\n */\n required?: Required\n /**\n * значение по умолчанию\n * @default undefined\n */\n defaultValue?: string\n message?: {\n min?: string\n invalidOperator?: string\n }\n /**\n * указываем валидные коды оператор\n * @default ['3', '4', '5', '6', '9']\n * @param string[]\n */\n validOperatorCodes?: string[]\n}\n\n/**\n * Схема валидации обязательного поля номера телефона\n */\nconst getPhoneRequired = (props?: Omit<PhoneValidationOptions<true>, 'required'>) => {\n const {\n ignoreMask = true,\n maskSymbols = /[()+_ -]/g,\n message,\n defaultValue,\n validOperatorCodes = ['3', '4', '5', '6', '9']\n } = props || {}\n\n const mask = TypeGuards.isString(maskSymbols) ? new RegExp(maskSymbols) : maskSymbols\n\n let schema = z.string().superRefine((value, context) => {\n const cleanValue = value.replace(mask, '')\n\n const operatorCode = cleanValue.charAt(1)\n\n if (!validOperatorCodes.includes(operatorCode)) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_string,\n validation: 'regex',\n message: message?.invalidOperator || baseDefaultMessages.PHONE_INVALID_OPERATOR()\n })\n }\n\n if (cleanValue.length < 11) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n minimum: 11,\n inclusive: true,\n type: 'string',\n message: message?.min || baseDefaultMessages.PHONE_NON_EMPTY()\n })\n }\n })\n\n if (ignoreMask) {\n schema = schema.transform((value) => value.replace(mask, '')) as unknown as typeof schema\n }\n\n return schema.default(defaultValue ?? '')\n}\ntype PhoneRequiredSchema = ReturnType<typeof getPhoneRequired>\n\n/**\n * Схема валидации опционального поля номера телефона\n */\nconst getPhoneOptional = (props?: Omit<PhoneValidationOptions<false>, 'required'>) => {\n const { ignoreMask = true, maskSymbols = /[()+_ -]/g, message, validOperatorCodes = ['3', '4', '5', '6', '9'] } = props || {}\n\n const mask = TypeGuards.isString(maskSymbols) ? new RegExp(maskSymbols) : maskSymbols\n\n let schema = z.string().superRefine((value, context) => {\n const cleanValue = value.replace(mask, '')\n\n if (!cleanValue.length) return\n\n const operatorCode = cleanValue.charAt(1)\n\n if (!validOperatorCodes.includes(operatorCode)) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_string,\n validation: 'regex',\n message: message?.invalidOperator || baseDefaultMessages.PHONE_INVALID_OPERATOR()\n })\n }\n\n if (cleanValue.length < 11) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n minimum: 11,\n inclusive: true,\n type: 'string',\n message: message?.min || baseDefaultMessages.PHONE_NON_EMPTY()\n })\n }\n })\n\n if (ignoreMask) {\n schema = schema.transform((value) => value.replace(mask, '')) as unknown as typeof schema\n }\n\n return schema.optional().transform((value) => (!value || value?.replace(mask, '').length !== 0 ? undefined : value))\n}\ntype PhoneOptionalSchema = ReturnType<typeof getPhoneOptional>\n\n/**\n * Схема валидации опционального поля номера телефона\n * @param {PhoneValidationOptions} props настройки схемы\n * @typeParam `required` - `boolean`\n * @typeParam `ignoreSeparators` - `boolean | undefined` `default: false`\n * @typeParam `maskSymbols` - `RegExp | undefined` `default: /[()+_ -]/g`\n * @typeParam `message` - `{ [min | invalidOperator]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example with required value\n * z.object({\n * field: zodValidators.base.getPhoneSchema()\n * })\n * // will returns z.string()\n *\n * @example with optional value\n * z.object({\n * field: zodValidators.base.getPhoneSchema({ required: false })\n * })\n * // will returns z.string().optional()\n */\nexport function getPhoneSchema(props?: PhoneValidationOptions<true>): PhoneRequiredSchema\nexport function getPhoneSchema(props?: PhoneValidationOptions<false>): PhoneOptionalSchema\nexport function getPhoneSchema<Required extends boolean>(\n props?: PhoneValidationOptions<Required>\n): PhoneRequiredSchema | PhoneOptionalSchema {\n const { required = true } = props || {}\n\n return required ? getPhoneRequired(props) : getPhoneOptional(props)\n}\n"],"names":["getPhoneRequired","props","ignoreMask","maskSymbols","message","defaultValue","validOperatorCodes","mask","TypeGuards","schema","z","value","context","cleanValue","operatorCode","baseDefaultMessages","getPhoneOptional","getPhoneSchema","required"],"mappings":"kPAuCA,MAAMA,EAAoBC,GAA2D,CACnF,KAAM,CACJ,WAAAC,EAAa,GACb,YAAAC,EAAc,YACd,QAAAC,EACA,aAAAC,EACA,mBAAAC,EAAqB,CAAC,IAAK,IAAK,IAAK,IAAK,GAAG,CAAA,EAC3CL,GAAS,CAAA,EAEPM,EAAOC,EAAW,SAASL,CAAW,EAAI,IAAI,OAAOA,CAAW,EAAIA,EAE1E,IAAIM,EAASC,EAAE,OAAA,EAAS,YAAY,CAACC,EAAOC,IAAY,CACtD,MAAMC,EAAaF,EAAM,QAAQJ,EAAM,EAAE,EAEnCO,EAAeD,EAAW,OAAO,CAAC,EAEnCP,EAAmB,SAASQ,CAAY,GAC3CF,EAAQ,SAAS,CACf,KAAMF,EAAE,aAAa,eACrB,WAAY,QACZ,SAASN,GAAA,YAAAA,EAAS,kBAAmBW,EAAoB,uBAAA,CAAuB,CACjF,EAGCF,EAAW,OAAS,IACtBD,EAAQ,SAAS,CACf,KAAMF,EAAE,aAAa,UACrB,QAAS,GACT,UAAW,GACX,KAAM,SACN,SAASN,GAAA,YAAAA,EAAS,MAAOW,EAAoB,gBAAA,CAAgB,CAC9D,CAEL,CAAC,EAED,OAAIb,IACFO,EAASA,EAAO,UAAWE,GAAUA,EAAM,QAAQJ,EAAM,EAAE,CAAC,GAGvDE,EAAO,QAAQJ,GAAgB,EAAE,CAC1C,EAMMW,EAAoBf,GAA4D,CACpF,KAAM,CAAE,WAAAC,EAAa,GAAM,YAAAC,EAAc,YAAa,QAAAC,EAAS,mBAAAE,EAAqB,CAAC,IAAK,IAAK,IAAK,IAAK,GAAG,CAAA,EAAML,GAAS,CAAA,EAErHM,EAAOC,EAAW,SAASL,CAAW,EAAI,IAAI,OAAOA,CAAW,EAAIA,EAE1E,IAAIM,EAASC,EAAE,OAAA,EAAS,YAAY,CAACC,EAAOC,IAAY,CACtD,MAAMC,EAAaF,EAAM,QAAQJ,EAAM,EAAE,EAEzC,GAAI,CAACM,EAAW,OAAQ,OAExB,MAAMC,EAAeD,EAAW,OAAO,CAAC,EAEnCP,EAAmB,SAASQ,CAAY,GAC3CF,EAAQ,SAAS,CACf,KAAMF,EAAE,aAAa,eACrB,WAAY,QACZ,SAASN,GAAA,YAAAA,EAAS,kBAAmBW,EAAoB,uBAAA,CAAuB,CACjF,EAGCF,EAAW,OAAS,IACtBD,EAAQ,SAAS,CACf,KAAMF,EAAE,aAAa,UACrB,QAAS,GACT,UAAW,GACX,KAAM,SACN,SAASN,GAAA,YAAAA,EAAS,MAAOW,EAAoB,gBAAA,CAAgB,CAC9D,CAEL,CAAC,EAED,OAAIb,IACFO,EAASA,EAAO,UAAWE,GAAUA,EAAM,QAAQJ,EAAM,EAAE,CAAC,GAGvDE,EAAO,SAAA,EAAW,UAAWE,GAAW,CAACA,IAASA,GAAA,YAAAA,EAAO,QAAQJ,EAAM,IAAI,UAAW,EAAI,OAAYI,CAAM,CACrH,EA0BO,SAASM,EACdhB,EAC2C,CAC3C,KAAM,CAAE,SAAAiB,EAAW,EAAA,EAASjB,GAAS,CAAA,EAErC,OAAOiB,EAAWlB,EAAiBC,CAAK,EAAIe,EAAiBf,CAAK,CACpE"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import*as e from"../../../../node_modules/zod/v3/external.js";import"../zodValidation/dadataFio.js";import"../zodValidation/calendar.js";import"../zodValidation/phone.js";import"../zodValidation/otpCode.js";import{baseDefaultMessages as m}from"./base.constants.js";import"../../../../node_modules/classnames/index.js";import"react/jsx-runtime";import"../../ui/button/Button.js";import"../../ui/buttonIcon/ButtonIcon.js";import"../../ui/calendar/Calendar.js";import"../../ui/calendar/model/utils.js";import"../../ui/accordion/Accordion.js";import"react
|
|
1
|
+
import*as e from"../../../../node_modules/zod/v3/external.js";import"../zodValidation/dadataFio.js";import"../zodValidation/calendar.js";import"../zodValidation/phone.js";import"../zodValidation/otpCode.js";import{baseDefaultMessages as m}from"./base.constants.js";import"../../../../node_modules/classnames/index.js";import"react";import"react/jsx-runtime";import"../../ui/button/Button.js";import"../../ui/buttonIcon/ButtonIcon.js";import"../../ui/calendar/Calendar.js";import"../../ui/calendar/model/utils.js";import"../../ui/accordion/Accordion.js";import"react-dom";import"../../ui/modal/ui/IframeModalContent.js";import"../../../../node_modules/react-hot-toast/dist/index.js";import"../../ui/table/ui/primitives/Primitives.js";import"../../ui/carousel/ui/CarouselContent.js";import"../../ui/slot/Slot.js";import"../../ui/formElements/uncontrolled/autocomplete/Autocomplete.js";import"../../ui/formElements/uncontrolled/checkbox/Checkbox.js";import"../../ui/formElements/uncontrolled/combobox/combobox.js";import"../../ui/formElements/uncontrolled/dayPicker/DayPicker.js";import"../../ui/formElements/uncontrolled/input/Input.js";import"../../ui/formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../../ui/formElements/uncontrolled/maskInput/MaskInput.js";import"../../ui/formElements/uncontrolled/radio/RadioGroup.js";import"../../ui/formElements/uncontrolled/radio/ui/RadioItem.js";import"../../ui/formElements/uncontrolled/slider/SliderBase.js";import"../../ui/formElements/uncontrolled/switch/Switch.js";import"../../ui/formElements/uncontrolled/textarea/Textarea.js";import"../../ui/formElements/uncontrolled/uploader/UploaderBase.js";import"../../ui/formElements/uncontrolled/inputCurrency/InputCurrency.js";import"../../../../src/configs/api.js";import"../../ui/formElements/controlled/editor/ui/Editor.js";import"../../ui/formElements/controlled/input/MaskInputControl.js";import"../../ui/dropdownList/ui/dropdownItem/DropdownItem.js";const p=(r,o)=>{const{message:t,defaultValue:i=""}=o||{};return e.string().nonempty(m.NON_EMPTY()).regex(r,t||m.INVALID_REGEX_STRING()).default(i)},n=(r,o)=>p(r,o).optional().transform(t=>t!=null&&t.length?t:void 0);function H(r,o){const{required:t=!0,...i}=o||{};return t?p(r,i):n(r,i)}export{H as getRegexSchema};
|
|
2
2
|
//# sourceMappingURL=regex.validators.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{baseDefaultMessages as o}from"./base.constants.js";import"../../../../node_modules/classnames/index.js";import{TypeGuards as p}from"../../utils/typeGuards.js";import{string as g}from"../../../../node_modules/zod/v3/types.js";const s=/^(http:\/\/www\.|https:\/\/www\.|http:\/\/|https:\/\/)?[a-z0-9]+([-.]{1}[a-z0-9]+)*\.[a-z]{2,5}(:[0-9]{1,5})?(\/.*)?$/,c=n=>{const{message:t,defaultValue:e,regexp:i=s}=n||{},r=p.isString(i)?new RegExp(i):i;return g().min(1,(t==null?void 0:t.min)||o.NON_EMPTY()).regex(r,(t==null?void 0:t.invalid)||o.INVALID_URL()).default(e??"")},f=n=>{const{message:t,regexp:e=s}=n||{},i=p.isString(e)?new RegExp(e):e;return g().refine(r=>p.isStringEmpty(r)?!0:i.test(r),(t==null?void 0:t.invalid)||o.INVALID_URL()).optional().transform(r=>r!=null&&r.length?r:void 0)};function
|
|
1
|
+
import{baseDefaultMessages as o}from"./base.constants.js";import"../../../../node_modules/classnames/index.js";import{TypeGuards as p}from"../../utils/typeGuards.js";import"react";import{string as g}from"../../../../node_modules/zod/v3/types.js";const s=/^(http:\/\/www\.|https:\/\/www\.|http:\/\/|https:\/\/)?[a-z0-9]+([-.]{1}[a-z0-9]+)*\.[a-z]{2,5}(:[0-9]{1,5})?(\/.*)?$/,c=n=>{const{message:t,defaultValue:e,regexp:i=s}=n||{},r=p.isString(i)?new RegExp(i):i;return g().min(1,(t==null?void 0:t.min)||o.NON_EMPTY()).regex(r,(t==null?void 0:t.invalid)||o.INVALID_URL()).default(e??"")},f=n=>{const{message:t,regexp:e=s}=n||{},i=p.isString(e)?new RegExp(e):e;return g().refine(r=>p.isStringEmpty(r)?!0:i.test(r),(t==null?void 0:t.invalid)||o.INVALID_URL()).optional().transform(r=>r!=null&&r.length?r:void 0)};function a(n){const{required:t=!0}=n||{};return t?c(n):f(n)}export{a as getUrlSchema};
|
|
2
2
|
//# sourceMappingURL=url.validators.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"url.validators.js","sources":["../../../../../lib/shared/validation/base/url.validators.ts"],"sourcesContent":["import { string } from 'zod'\nimport { baseDefaultMessages } from './base.constants'\nimport { TypeGuards } from '$/shared/utils'\n\nexport type UrlValidationOptions<Required extends boolean> = {\n /**\n * указывает что поле обязательное\n * @default true\n */\n required?: Required\n /**\n * Регулярное выражение для проверки url на валидность\n */\n regexp?: RegExp | string\n /**\n * значение по умолчанию\n */\n defaultValue?: string\n message?: {\n min?: string\n invalid?: string\n }\n}\n\nconst URL_REGEX =\n /^(http:\\/\\/www\\.|https:\\/\\/www\\.|http:\\/\\/|https:\\/\\/)?[a-z0-9]+([-.]{1}[a-z0-9]+)*\\.[a-z]{2,5}(:[0-9]{1,5})?(\\/.*)?$/\n\n/**\n * Схема валидации обязательного поля ссылки\n */\nconst getUrlRequired = (props?: Omit<UrlValidationOptions<true>, 'required'>) => {\n const { message, defaultValue, regexp = URL_REGEX } = props || {}\n\n const regex = TypeGuards.isString(regexp) ? new RegExp(regexp) : regexp\n\n return string()\n .min(1, message?.min || baseDefaultMessages.NON_EMPTY())\n .regex(regex, message?.invalid || baseDefaultMessages.INVALID_URL())\n .default(defaultValue ?? '')\n}\ntype UrlRequiredSchema = ReturnType<typeof getUrlRequired>\n\n/**\n * Схема валидации опционального поля ссылки\n */\nconst getUrlOptional = (props?: Omit<UrlValidationOptions<false>, 'required'>) => {\n const { message, regexp = URL_REGEX } = props || {}\n\n const regex = TypeGuards.isString(regexp) ? new RegExp(regexp) : regexp\n\n return string()\n .refine((value) => {\n if (TypeGuards.isStringEmpty(value)) return true\n return regex.test(value)\n }, message?.invalid || baseDefaultMessages.INVALID_URL())\n .optional()\n .transform((value) => (!value?.length ? undefined : value))\n}\ntype UrlOptionalSchema = ReturnType<typeof getUrlOptional>\n\nexport function getUrlSchema(props?: UrlValidationOptions<true>): UrlRequiredSchema\nexport function getUrlSchema(props?: UrlValidationOptions<false>): UrlOptionalSchema\n/**\n * Схема валидации поля ссылки\n * @param {UrlValidationOptions} props настройки схемы\n * @typeParam `required` - `boolean`\n * @typeParam `regexp` - `RegExp`\n * @typeParam `message` - `{ [min | invalid]: string }`\n * @returns схема валидации поля в соответствии с настройками\n */\nexport function getUrlSchema<Required extends boolean>(\n props?: UrlValidationOptions<Required>\n): UrlRequiredSchema | UrlOptionalSchema {\n const { required = true } = props || {}\n\n return required ? getUrlRequired(props) : getUrlOptional(props)\n}\n"],"names":["URL_REGEX","getUrlRequired","props","message","defaultValue","regexp","regex","TypeGuards","string","baseDefaultMessages","getUrlOptional","value","getUrlSchema","required"],"mappings":"
|
|
1
|
+
{"version":3,"file":"url.validators.js","sources":["../../../../../lib/shared/validation/base/url.validators.ts"],"sourcesContent":["import { string } from 'zod'\nimport { baseDefaultMessages } from './base.constants'\nimport { TypeGuards } from '$/shared/utils'\n\nexport type UrlValidationOptions<Required extends boolean> = {\n /**\n * указывает что поле обязательное\n * @default true\n */\n required?: Required\n /**\n * Регулярное выражение для проверки url на валидность\n */\n regexp?: RegExp | string\n /**\n * значение по умолчанию\n */\n defaultValue?: string\n message?: {\n min?: string\n invalid?: string\n }\n}\n\nconst URL_REGEX =\n /^(http:\\/\\/www\\.|https:\\/\\/www\\.|http:\\/\\/|https:\\/\\/)?[a-z0-9]+([-.]{1}[a-z0-9]+)*\\.[a-z]{2,5}(:[0-9]{1,5})?(\\/.*)?$/\n\n/**\n * Схема валидации обязательного поля ссылки\n */\nconst getUrlRequired = (props?: Omit<UrlValidationOptions<true>, 'required'>) => {\n const { message, defaultValue, regexp = URL_REGEX } = props || {}\n\n const regex = TypeGuards.isString(regexp) ? new RegExp(regexp) : regexp\n\n return string()\n .min(1, message?.min || baseDefaultMessages.NON_EMPTY())\n .regex(regex, message?.invalid || baseDefaultMessages.INVALID_URL())\n .default(defaultValue ?? '')\n}\ntype UrlRequiredSchema = ReturnType<typeof getUrlRequired>\n\n/**\n * Схема валидации опционального поля ссылки\n */\nconst getUrlOptional = (props?: Omit<UrlValidationOptions<false>, 'required'>) => {\n const { message, regexp = URL_REGEX } = props || {}\n\n const regex = TypeGuards.isString(regexp) ? new RegExp(regexp) : regexp\n\n return string()\n .refine((value) => {\n if (TypeGuards.isStringEmpty(value)) return true\n return regex.test(value)\n }, message?.invalid || baseDefaultMessages.INVALID_URL())\n .optional()\n .transform((value) => (!value?.length ? undefined : value))\n}\ntype UrlOptionalSchema = ReturnType<typeof getUrlOptional>\n\nexport function getUrlSchema(props?: UrlValidationOptions<true>): UrlRequiredSchema\nexport function getUrlSchema(props?: UrlValidationOptions<false>): UrlOptionalSchema\n/**\n * Схема валидации поля ссылки\n * @param {UrlValidationOptions} props настройки схемы\n * @typeParam `required` - `boolean`\n * @typeParam `regexp` - `RegExp`\n * @typeParam `message` - `{ [min | invalid]: string }`\n * @returns схема валидации поля в соответствии с настройками\n */\nexport function getUrlSchema<Required extends boolean>(\n props?: UrlValidationOptions<Required>\n): UrlRequiredSchema | UrlOptionalSchema {\n const { required = true } = props || {}\n\n return required ? getUrlRequired(props) : getUrlOptional(props)\n}\n"],"names":["URL_REGEX","getUrlRequired","props","message","defaultValue","regexp","regex","TypeGuards","string","baseDefaultMessages","getUrlOptional","value","getUrlSchema","required"],"mappings":"sPAwBA,MAAMA,EACJ,wHAKIC,EAAkBC,GAAyD,CAC/E,KAAM,CAAE,QAAAC,EAAS,aAAAC,EAAc,OAAAC,EAASL,CAAA,EAAcE,GAAS,CAAA,EAEzDI,EAAQC,EAAW,SAASF,CAAM,EAAI,IAAI,OAAOA,CAAM,EAAIA,EAEjE,OAAOG,EAAA,EACJ,IAAI,GAAGL,GAAA,YAAAA,EAAS,MAAOM,EAAoB,WAAW,EACtD,MAAMH,GAAOH,GAAA,YAAAA,EAAS,UAAWM,EAAoB,YAAA,CAAa,EAClE,QAAQL,GAAgB,EAAE,CAC/B,EAMMM,EAAkBR,GAA0D,CAChF,KAAM,CAAE,QAAAC,EAAS,OAAAE,EAASL,CAAA,EAAcE,GAAS,CAAA,EAE3CI,EAAQC,EAAW,SAASF,CAAM,EAAI,IAAI,OAAOA,CAAM,EAAIA,EAEjE,OAAOG,EAAA,EACJ,OAAQG,GACHJ,EAAW,cAAcI,CAAK,EAAU,GACrCL,EAAM,KAAKK,CAAK,GACtBR,GAAA,YAAAA,EAAS,UAAWM,EAAoB,YAAA,CAAa,EACvD,SAAA,EACA,UAAWE,GAAYA,GAAA,MAAAA,EAAO,OAAqBA,EAAZ,MAAkB,CAC9D,EAaO,SAASC,EACdV,EACuC,CACvC,KAAM,CAAE,SAAAW,EAAW,EAAA,EAASX,GAAS,CAAA,EAErC,OAAOW,EAAWZ,EAAeC,CAAK,EAAIQ,EAAeR,CAAK,CAChE"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as o}from"react/jsx-runtime";import{cn as i}from"../../../../shared/utils/cn.js";import"../../../../shared/ui/button/Button.js";import"../../../../shared/ui/buttonIcon/ButtonIcon.js";import{Loader as n}from"../../../../shared/ui/loader/Loader.js";import"../../../../shared/ui/calendar/Calendar.js";import"../../../../shared/ui/calendar/model/utils.js";import"../../../../shared/ui/accordion/Accordion.js";import"react
|
|
1
|
+
import{jsx as o}from"react/jsx-runtime";import{cn as i}from"../../../../shared/utils/cn.js";import"react";import"../../../../shared/ui/button/Button.js";import"../../../../shared/ui/buttonIcon/ButtonIcon.js";import{Loader as n}from"../../../../shared/ui/loader/Loader.js";import"../../../../shared/ui/calendar/Calendar.js";import"../../../../shared/ui/calendar/model/utils.js";import"../../../../shared/ui/accordion/Accordion.js";import"react-dom";import"../../../../shared/ui/modal/ui/IframeModalContent.js";import"../../../../../node_modules/react-hot-toast/dist/index.js";import"../../../../shared/ui/table/ui/primitives/Primitives.js";import"../../../../shared/ui/carousel/ui/CarouselContent.js";import"../../../../shared/ui/slot/Slot.js";import"../../../../shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.js";import"../../../../shared/ui/formElements/uncontrolled/checkbox/Checkbox.js";import"../../../../shared/ui/formElements/uncontrolled/combobox/combobox.js";import"../../../../shared/ui/formElements/uncontrolled/dayPicker/DayPicker.js";import"../../../../shared/ui/formElements/uncontrolled/input/Input.js";import"../../../../shared/ui/formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../../../../shared/ui/formElements/uncontrolled/maskInput/MaskInput.js";import"../../../../shared/ui/formElements/uncontrolled/radio/RadioGroup.js";import"../../../../shared/ui/formElements/uncontrolled/radio/ui/RadioItem.js";import"../../../../shared/ui/formElements/uncontrolled/slider/SliderBase.js";import"../../../../shared/ui/formElements/uncontrolled/switch/Switch.js";import"../../../../shared/ui/formElements/uncontrolled/textarea/Textarea.js";import"../../../../shared/ui/formElements/uncontrolled/uploader/UploaderBase.js";import"../../../../shared/ui/formElements/uncontrolled/inputCurrency/InputCurrency.js";import"../../../../../src/configs/api.js";import"../../../../shared/ui/formElements/controlled/editor/ui/Editor.js";import"../../../../shared/ui/formElements/controlled/input/MaskInputControl.js";import"../../../../shared/ui/dropdownList/ui/dropdownItem/DropdownItem.js";const O=({children:p,isLoading:t,classes:r,loaderProps:m,...e})=>o("div",{...e,role:"button",tabIndex:0,className:i("relative flex h-[90px] w-full max-w-[328px] items-center justify-center rounded-sm p-2 desktop:max-w-[524px]","bg-color-white outline outline-1 outline-warm-grey-200 transition-colors focus-visible:outline-primary-focus",r==null?void 0:r.root),children:o("div",{className:i("flex h-[74px] flex-1 cursor-pointer rounded-sm px-2 py-3 transition-colors desktop:px-4 desktop:py-3","bg-color-blue-grey-100 hover:bg-color-blue-grey-200 active:bg-color-blue-grey-300",{"items-center":t},r==null?void 0:r.wrapper),children:t?o(n,{position:"static",classes:{wrapper:"size-8 m-auto"},...m}):p})});export{O as AuthWrapper};
|
|
2
2
|
//# sourceMappingURL=AuthWrapper.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as f,jsx as m}from"react/jsx-runtime";import{cn as o}from"../../../../shared/utils/cn.js";import"../../../../shared/ui/button/Button.js";import"../../../../shared/ui/buttonIcon/ButtonIcon.js";import"../../../../shared/ui/calendar/Calendar.js";import"../../../../shared/ui/calendar/model/utils.js";import"../../../../shared/ui/accordion/Accordion.js";import"react
|
|
1
|
+
import{jsxs as f,jsx as m}from"react/jsx-runtime";import{cn as o}from"../../../../shared/utils/cn.js";import"react";import"../../../../shared/ui/button/Button.js";import"../../../../shared/ui/buttonIcon/ButtonIcon.js";import"../../../../shared/ui/calendar/Calendar.js";import"../../../../shared/ui/calendar/model/utils.js";import"../../../../shared/ui/accordion/Accordion.js";import"react-dom";import"../../../../shared/ui/modal/ui/IframeModalContent.js";import"../../../../../node_modules/react-hot-toast/dist/index.js";import"../../../../shared/ui/table/ui/primitives/Primitives.js";import"../../../../shared/ui/carousel/ui/CarouselContent.js";import{CustomLink as l}from"../../../../shared/ui/customLink/CustomLink.js";import"../../../../shared/ui/slot/Slot.js";import"../../../../shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.js";import"../../../../shared/ui/formElements/uncontrolled/checkbox/Checkbox.js";import"../../../../shared/ui/formElements/uncontrolled/combobox/combobox.js";import"../../../../shared/ui/formElements/uncontrolled/dayPicker/DayPicker.js";import"../../../../shared/ui/formElements/uncontrolled/input/Input.js";import"../../../../shared/ui/formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../../../../shared/ui/formElements/uncontrolled/maskInput/MaskInput.js";import"../../../../shared/ui/formElements/uncontrolled/radio/RadioGroup.js";import"../../../../shared/ui/formElements/uncontrolled/radio/ui/RadioItem.js";import"../../../../shared/ui/formElements/uncontrolled/slider/SliderBase.js";import"../../../../shared/ui/formElements/uncontrolled/switch/Switch.js";import"../../../../shared/ui/formElements/uncontrolled/textarea/Textarea.js";import"../../../../shared/ui/formElements/uncontrolled/uploader/UploaderBase.js";import"../../../../shared/ui/formElements/uncontrolled/inputCurrency/InputCurrency.js";import"../../../../../src/configs/api.js";import"../../../../shared/ui/formElements/controlled/editor/ui/Editor.js";import"../../../../shared/ui/formElements/controlled/input/MaskInputControl.js";import"../../../../shared/ui/dropdownList/ui/dropdownItem/DropdownItem.js";const R=({mainLink:e,subLink:r,isMobile:p,classes:t,...i})=>f("div",{className:o("flex flex-col",t==null?void 0:t.linksWrapper),children:[m("button",{...i,type:"button",className:o('before:content=[" "] desk-body-medium-l z-[4] text-color-dark before:absolute before:left-1/2 before:top-1/2 before:h-full before:w-full before:-translate-x-1/2 before:-translate-y-1/2',t==null?void 0:t.linksMainLink),children:p?e.mobileTitle:e.title}),(r==null?void 0:r.text)&&(r==null?void 0:r.href)&&m(l,{intent:"blue",withUnderline:!0,href:r==null?void 0:r.href,target:"_blank",rel:"noreferrer",classes:{link:o("w-max relative z-[6] p-0 desk-body-regular-m text-color-tetriary",t==null?void 0:t.linksSubLink)},children:r==null?void 0:r.text})]});export{R as Links};
|
|
2
2
|
//# sourceMappingURL=Links.js.map
|