ics-ui-kit 0.1.0-alpha.9 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +36 -0
- package/dist/AlertContext-CxjW1LVL.js +13 -0
- package/dist/AlertContext-CxjW1LVL.js.map +1 -0
- package/dist/AlertIcon-5B6AgZpe.js +96 -0
- package/dist/AlertIcon-5B6AgZpe.js.map +1 -0
- package/dist/Button-Dg89xRSi.js +36 -0
- package/dist/Button-Dg89xRSi.js.map +1 -0
- package/dist/ButtonBase-e6qyv6mD.js +158 -0
- package/dist/ButtonBase-e6qyv6mD.js.map +1 -0
- package/dist/CheckboxField-cX09-eBX.js +347 -0
- package/dist/CheckboxField-cX09-eBX.js.map +1 -0
- package/dist/Command-BhbfL5wm.js +554 -0
- package/dist/Command-BhbfL5wm.js.map +1 -0
- package/dist/ComponentVariantProvider-B0SFUaXB.js +8 -0
- package/dist/ComponentVariantProvider-B0SFUaXB.js.map +1 -0
- package/dist/DayPicker-4hE1QEvO.js +2452 -0
- package/dist/DayPicker-4hE1QEvO.js.map +1 -0
- package/dist/Description-BTPMlTT-.js +19 -0
- package/dist/Description-BTPMlTT-.js.map +1 -0
- package/dist/Dialog-ByiJIDhl.js +99 -0
- package/dist/Dialog-ByiJIDhl.js.map +1 -0
- package/dist/Divider-DPW5ZhZ8.js +24 -0
- package/dist/Divider-DPW5ZhZ8.js.map +1 -0
- package/dist/EmptyState-DRKjscH-.js +12 -0
- package/dist/EmptyState-DRKjscH-.js.map +1 -0
- package/dist/ErrorState-B26k67-z.js +11 -0
- package/dist/ErrorState-B26k67-z.js.map +1 -0
- package/dist/FeatureIcon-BGE0Orkc.js +23 -0
- package/dist/FeatureIcon-BGE0Orkc.js.map +1 -0
- package/dist/Field-CKl59qUB.js +86 -0
- package/dist/Field-CKl59qUB.js.map +1 -0
- package/dist/FieldLabel-QJ4rJFOi.js +70 -0
- package/dist/FieldLabel-QJ4rJFOi.js.map +1 -0
- package/dist/FolderSvg-cw0DxNVy.js +742 -0
- package/dist/FolderSvg-cw0DxNVy.js.map +1 -0
- package/dist/FormFooterTemplate-DPB6Dkxn.js +88 -0
- package/dist/FormFooterTemplate-DPB6Dkxn.js.map +1 -0
- package/dist/FormHeader--F6b2aRk.js +49 -0
- package/dist/FormHeader--F6b2aRk.js.map +1 -0
- package/dist/FormStack-B4QOuYgO.js +127 -0
- package/dist/FormStack-B4QOuYgO.js.map +1 -0
- package/dist/HintState-BxrCAWqq.js +12 -0
- package/dist/HintState-BxrCAWqq.js.map +1 -0
- package/dist/Icon-DH3ev9GK.js +22 -0
- package/dist/Icon-DH3ev9GK.js.map +1 -0
- package/dist/IconButton-DwkpNgn3.js +33 -0
- package/dist/IconButton-DwkpNgn3.js.map +1 -0
- package/dist/IconTooltip-CKJKGHbk.js +11 -0
- package/dist/IconTooltip-CKJKGHbk.js.map +1 -0
- package/dist/Indicator-AqxHWPA9.js +29 -0
- package/dist/Indicator-AqxHWPA9.js.map +1 -0
- package/dist/InputGroup-BvD9Igmt.js +137 -0
- package/dist/InputGroup-BvD9Igmt.js.map +1 -0
- package/dist/InputOTP-B2e1nfSO.js +259 -0
- package/dist/InputOTP-B2e1nfSO.js.map +1 -0
- package/dist/Loader-BpHiL6W-.js +58 -0
- package/dist/Loader-BpHiL6W-.js.map +1 -0
- package/dist/MenuItem-pvsONHlh.js +32 -0
- package/dist/MenuItem-pvsONHlh.js.map +1 -0
- package/dist/MenuItemShortcut-DgPol9Nz.js +21 -0
- package/dist/MenuItemShortcut-DgPol9Nz.js.map +1 -0
- package/dist/MenuItemText-7uPl9P3z.js +20 -0
- package/dist/MenuItemText-7uPl9P3z.js.map +1 -0
- package/dist/Overlay-2XMlxApi.js +28 -0
- package/dist/Overlay-2XMlxApi.js.map +1 -0
- package/dist/Popover-Dvr7y0YY.js +258 -0
- package/dist/Popover-Dvr7y0YY.js.map +1 -0
- package/dist/RichButton-DuPTenmS.js +49 -0
- package/dist/RichButton-DuPTenmS.js.map +1 -0
- package/dist/ScrollArea-CuuTeDn3.js +576 -0
- package/dist/ScrollArea-CuuTeDn3.js.map +1 -0
- package/dist/ScrollShadowContainer-DdrnF8qU.js +36 -0
- package/dist/ScrollShadowContainer-DdrnF8qU.js.map +1 -0
- package/dist/SearchSelectTag-DFCX9zT1.js +56 -0
- package/dist/SearchSelectTag-DFCX9zT1.js.map +1 -0
- package/dist/Select-DRwv6-eZ.js +980 -0
- package/dist/Select-DRwv6-eZ.js.map +1 -0
- package/dist/Sheet-rtwmzm2-.js +83 -0
- package/dist/Sheet-rtwmzm2-.js.map +1 -0
- package/dist/Shortcut-D8L15_ed.js +22 -0
- package/dist/Shortcut-D8L15_ed.js.map +1 -0
- package/dist/Skeleton-y6I-i9q5.js +21 -0
- package/dist/Skeleton-y6I-i9q5.js.map +1 -0
- package/dist/Tag-DdHXTyKF.js +199 -0
- package/dist/Tag-DdHXTyKF.js.map +1 -0
- package/dist/Text-DeBE8AKl.js +22 -0
- package/dist/Text-DeBE8AKl.js.map +1 -0
- package/dist/TextInput-Cj50ImXi.js +205 -0
- package/dist/TextInput-Cj50ImXi.js.map +1 -0
- package/dist/TextOverflowTooltip-DlUgic5y.js +36 -0
- package/dist/TextOverflowTooltip-DlUgic5y.js.map +1 -0
- package/dist/Toggle-v_HT3Gm2.js +40 -0
- package/dist/Toggle-v_HT3Gm2.js.map +1 -0
- package/dist/Tooltip-C4rVuWr4.js +473 -0
- package/dist/Tooltip-C4rVuWr4.js.map +1 -0
- package/dist/TriggerButton-CfDObWP9.js +33 -0
- package/dist/TriggerButton-CfDObWP9.js.map +1 -0
- package/dist/blocks/auth/otp-form/OTPForm.d.ts +47 -0
- package/dist/blocks/auth/otp-form/OTPForm.stories.d.ts +40 -0
- package/dist/blocks/auth/otp-form/components/EmailForm.d.ts +25 -0
- package/dist/blocks/auth/otp-form/components/OTPInputForm.d.ts +27 -0
- package/dist/blocks/auth/otp-form/components/ResendButton.d.ts +14 -0
- package/dist/blocks/auth/otp-form/index.d.ts +3 -0
- package/dist/blocks/auth/otp-form/utils/OTPError.d.ts +8 -0
- package/dist/blocks/auth/otp-form.d.ts +2 -0
- package/dist/blocks/auth/otp-form.js +309 -0
- package/dist/blocks/auth/otp-form.js.map +1 -0
- package/dist/buildMatchPatternFn-d7GTeGl_.js +68 -0
- package/dist/buildMatchPatternFn-d7GTeGl_.js.map +1 -0
- package/dist/{bundle-mjs-D6wdQkGI.js → bundle-mjs-CQ0w4GOB.js} +347 -338
- package/dist/{bundle-mjs-D6wdQkGI.js.map → bundle-mjs-CQ0w4GOB.js.map} +1 -1
- package/dist/{check-C-TqZgvb.js → check-CeyaOoZv.js} +2 -2
- package/dist/{check-C-TqZgvb.js.map → check-CeyaOoZv.js.map} +1 -1
- package/dist/chevron-down-CAOItu8X.js +14 -0
- package/dist/chevron-down-CAOItu8X.js.map +1 -0
- package/dist/chevron-left-D6FtXcdU.js +14 -0
- package/dist/chevron-left-D6FtXcdU.js.map +1 -0
- package/dist/chevron-right-D3juAhA-.js +14 -0
- package/dist/chevron-right-D3juAhA-.js.map +1 -0
- package/dist/chevron-up-UDiVTHo0.js +12 -0
- package/dist/chevron-up-UDiVTHo0.js.map +1 -0
- package/dist/circle-alert-CVIokIC7.js +16 -0
- package/dist/circle-alert-CVIokIC7.js.map +1 -0
- package/dist/circle-x-u75Rx3Tj.js +16 -0
- package/dist/circle-x-u75Rx3Tj.js.map +1 -0
- package/dist/{utils-2yE78m5l.js → cn-dsXlqdJg.js} +2 -2
- package/dist/cn-dsXlqdJg.js.map +1 -0
- package/dist/components/alert/Alert.d.ts +12 -0
- package/dist/components/alert/Alert.stories.d.ts +38 -0
- package/dist/components/alert/AlertContext.d.ts +16 -0
- package/dist/components/alert/components/AlertButton.d.ts +8 -0
- package/dist/components/alert/components/AlertDescription.d.ts +7 -0
- package/dist/components/alert/components/AlertIcon.d.ts +14 -0
- package/dist/components/alert/components/AlertTitle.d.ts +11 -0
- package/dist/components/alert/index.d.ts +6 -0
- package/dist/components/alert-dialog/AlertDialog.d.ts +69 -0
- package/dist/components/alert-dialog/AlertDialog.stories.d.ts +32 -0
- package/dist/components/alert-dialog/index.d.ts +1 -0
- package/dist/components/alert-dialog.d.ts +2 -0
- package/dist/components/alert-dialog.js +313 -0
- package/dist/components/alert-dialog.js.map +1 -0
- package/dist/components/alert.d.ts +2 -0
- package/dist/components/alert.js +50 -0
- package/dist/components/alert.js.map +1 -0
- package/dist/components/avatar/Avatar.d.ts +7 -0
- package/dist/components/avatar/Avatar.stories.d.ts +10 -0
- package/dist/components/avatar/avatar-fallback/AvatarFallback.d.ts +6 -0
- package/dist/components/avatar/avatar-icon/AvatarIcon.d.ts +6 -0
- package/dist/components/avatar/avatar-image/AvatarImage.d.ts +3 -0
- package/dist/components/avatar/avatar-indicator/AvatarIndicator.d.ts +5 -0
- package/dist/components/avatar/avatar-label/AvatarLabel.d.ts +5 -0
- package/dist/components/avatar/avatar-label/AvatarLabel.stories.d.ts +10 -0
- package/dist/components/avatar/avatar-label/AvatarLabelContext.d.ts +9 -0
- package/dist/components/avatar/avatar-label/components/avatar-label-avatar/AvatarLabelAvatar.d.ts +6 -0
- package/dist/components/avatar/avatar-label/components/avatar-label-description/AvatarLabelDescription.d.ts +10 -0
- package/dist/components/avatar/avatar-label/components/avatar-label-indicator/AvatarLabelIndicator.d.ts +6 -0
- package/dist/components/avatar/avatar-label/components/avatar-label-title/AvatarLabelTitle.d.ts +6 -0
- package/dist/components/avatar/index.d.ts +13 -0
- package/dist/components/avatar.d.ts +2 -0
- package/dist/components/avatar.js +432 -0
- package/dist/components/avatar.js.map +1 -0
- package/dist/components/badge/Badge.d.ts +7 -382
- package/dist/components/badge.js +24 -46
- package/dist/components/badge.js.map +1 -1
- package/dist/components/banner/Banner.d.ts +5 -0
- package/dist/components/banner/Banner.stories.d.ts +8 -0
- package/dist/components/banner/components/banner-description/BannerDescription.d.ts +5 -0
- package/dist/components/banner/components/banner-description/BannerDescription.stories.d.ts +14 -0
- package/dist/components/banner/components/banner-title/BannerTitle.d.ts +5 -0
- package/dist/components/banner/components/banner-title/BannerTitle.stories.d.ts +14 -0
- package/dist/components/banner/index.d.ts +3 -0
- package/dist/components/banner.d.ts +2 -0
- package/dist/components/banner.js +27 -0
- package/dist/components/banner.js.map +1 -0
- package/dist/components/breadcrumb/Breadcrumb.d.ts +19 -0
- package/dist/components/breadcrumb/Breadcrumb.stories.d.ts +10 -0
- package/dist/components/breadcrumb/index.d.ts +1 -0
- package/dist/components/breadcrumb.d.ts +2 -0
- package/dist/components/breadcrumb.js +78 -0
- package/dist/components/breadcrumb.js.map +1 -0
- package/dist/components/button/button/Button.d.ts +6 -167
- package/dist/components/button/button/Button.stories.d.ts +4 -164
- package/dist/components/button/button-base/ButtonBase.d.ts +7 -328
- package/dist/components/button/icon-button/IconButton.d.ts +5 -466
- package/dist/components/button/icon-button/IconButton.stories.d.ts +21 -2
- package/dist/components/button/index.d.ts +9 -0
- package/dist/components/button/rich-button/RichButton.d.ts +79 -0
- package/dist/components/button/rich-button/RichButton.stories.d.ts +46 -0
- package/dist/components/button/templates/loading-button/LoadingButtonTemplate.d.ts +12 -0
- package/dist/components/button/templates/loading-button/LoadingButtonTemplate.stories.d.ts +21 -0
- package/dist/components/button/trigger-button/TriggerButton.d.ts +13 -0
- package/dist/components/button/trigger-button/TriggerButton.stories.d.ts +7 -0
- package/dist/components/button.js +26 -6
- package/dist/components/button.js.map +1 -1
- package/dist/components/calendar/Calendar.d.ts +14 -0
- package/dist/components/calendar/Calendar.stories.d.ts +45 -0
- package/dist/components/calendar/components/calendar-chevron/CalendarChevron.d.ts +12 -0
- package/dist/components/calendar/components/calendar-day-button/CalendarDayButton.d.ts +26 -0
- package/dist/components/calendar/components/calendar-day-button/CalendarDayButton.stories.d.ts +18 -0
- package/dist/components/calendar/components/calendar-next-month-button/CalendarNextMonthButton.d.ts +11 -0
- package/dist/components/calendar/components/calendar-previous-month-button/CalendarPreviousMonthButton.d.ts +11 -0
- package/dist/components/calendar/components/calendar-root/CalendarRoot.d.ts +11 -0
- package/dist/components/calendar/components/calendar-week-day/CalendarWeekDay.d.ts +11 -0
- package/dist/components/calendar/components/calendar-week-day/CalendarWeekDay.stories.d.ts +7 -0
- package/dist/components/calendar/index.d.ts +3 -0
- package/dist/components/calendar.d.ts +2 -0
- package/dist/components/calendar.js +186 -0
- package/dist/components/calendar.js.map +1 -0
- package/dist/components/card/Card.d.ts +7 -0
- package/dist/components/card/Card.stories.d.ts +17 -0
- package/dist/components/card/components/ActionCard.d.ts +7 -0
- package/dist/components/card/components/CardFeature.d.ts +7 -0
- package/dist/components/card/components/CardFolder.d.ts +9 -0
- package/dist/components/card/components/CardFooter.d.ts +7 -0
- package/dist/components/card/components/CardMenuTrigger.d.ts +8 -0
- package/dist/components/card/components/CardSubTitle.d.ts +7 -0
- package/dist/components/card/components/CardTitle.d.ts +7 -0
- package/dist/components/card/components/CardVisualBadge.d.ts +7 -0
- package/dist/components/card/components/FolderSvg.d.ts +3 -0
- package/dist/components/card/index.d.ts +19 -0
- package/dist/components/card/styles.d.ts +2 -0
- package/dist/components/card.d.ts +2 -0
- package/dist/components/card.js +159 -0
- package/dist/components/card.js.map +1 -0
- package/dist/components/carousel/Carousel.d.ts +17 -0
- package/dist/components/carousel/Carousel.stories.d.ts +8 -0
- package/dist/components/carousel/components/carousel-buttons/CarouselButtons.d.ts +27 -0
- package/dist/components/carousel/components/carousel-item/CarouselItem.d.ts +3 -0
- package/dist/components/carousel/index.d.ts +4 -0
- package/dist/components/carousel/utils/CarouselContext.d.ts +13 -0
- package/dist/components/carousel/utils/useCarousel.d.ts +10 -0
- package/dist/components/carousel.d.ts +2 -0
- package/dist/components/carousel.js +1700 -0
- package/dist/components/carousel.js.map +1 -0
- package/dist/components/checkbox/Checkbox.d.ts +49 -2
- package/dist/components/checkbox/Checkbox.test.d.ts +1 -0
- package/dist/components/checkbox/checkbox-field/CheckboxField.d.ts +10 -456
- package/dist/components/checkbox/checkbox-field/CheckboxField.stories.d.ts +3 -228
- package/dist/components/checkbox/index.d.ts +2 -2
- package/dist/components/checkbox.js +4 -3
- package/dist/components/collapsible/Collapsible.d.ts +6 -0
- package/dist/components/collapsible/Collapsible.stories.d.ts +6 -0
- package/dist/components/collapsible/index.d.ts +1 -0
- package/dist/components/collapsible.d.ts +2 -0
- package/dist/components/collapsible.js +133 -0
- package/dist/components/collapsible.js.map +1 -0
- package/dist/components/color-tile/ColorTile.d.ts +9 -0
- package/dist/components/color-tile/ColorTile.stories.d.ts +6 -0
- package/dist/components/color-tile/index.d.ts +1 -0
- package/dist/components/color-tile.d.ts +2 -0
- package/dist/components/color-tile.js +26 -0
- package/dist/components/color-tile.js.map +1 -0
- package/dist/components/command/Command.d.ts +108 -0
- package/dist/components/command/Command.stories.d.ts +34 -0
- package/dist/components/command/index.d.ts +1 -0
- package/dist/components/command.d.ts +2 -0
- package/dist/components/command.js +15 -0
- package/dist/components/command.js.map +1 -0
- package/dist/components/container/Container.d.ts +29 -0
- package/dist/components/container/Container.stories.d.ts +6 -0
- package/dist/components/container/index.d.ts +1 -0
- package/dist/components/container.d.ts +2 -0
- package/dist/components/container.js +23 -0
- package/dist/components/container.js.map +1 -0
- package/dist/components/counter/Counter.d.ts +14 -0
- package/dist/components/counter/Counter.stories.d.ts +9 -0
- package/dist/components/counter/index.d.ts +1 -0
- package/dist/components/counter.d.ts +2 -0
- package/dist/components/counter.js +142 -0
- package/dist/components/counter.js.map +1 -0
- package/dist/components/data-table/DataTable.stories.d.ts +8 -0
- package/dist/components/description/Description.d.ts +5 -1
- package/dist/components/description/Description.stories.d.ts +10 -0
- package/dist/components/description.js +1 -1
- package/dist/components/dialog/Dialog.d.ts +51 -12
- package/dist/components/dialog/Dialog.stories.d.ts +26 -0
- package/dist/components/dialog/DialogTemplates.d.ts +24 -0
- package/dist/components/dialog/index.d.ts +4 -0
- package/dist/components/dialog.d.ts +2 -0
- package/dist/components/dialog.js +47 -0
- package/dist/components/dialog.js.map +1 -0
- package/dist/components/divider/Divider.d.ts +6 -118
- package/dist/components/divider/content-divider/ContentDivider.d.ts +15 -0
- package/dist/components/divider/content-divider/ContentDivider.stories.d.ts +7 -0
- package/dist/components/divider/index.d.ts +1 -0
- package/dist/components/divider.js +32 -1
- package/dist/components/divider.js.map +1 -1
- package/dist/components/drawer/Drawer.d.ts +13 -0
- package/dist/components/drawer/Drawer.stories.d.ts +25 -0
- package/dist/components/drawer/components/drawer-body/DrawerBody.d.ts +3 -0
- package/dist/components/drawer/components/drawer-content/DrawerContent.d.ts +19 -0
- package/dist/components/drawer/components/drawer-footer/DrawerFooter.d.ts +3 -0
- package/dist/components/drawer/components/drawer-handler/DrawerHandler.d.ts +2 -0
- package/dist/components/drawer/components/drawer-handler/DrawerHandlerSvg.d.ts +1 -0
- package/dist/components/drawer/components/drawer-header/DrawerHeader.d.ts +3 -0
- package/dist/components/drawer/components/drawer-overlay/DrawerOverlay.d.ts +7 -0
- package/dist/components/drawer/index.d.ts +9 -0
- package/dist/components/{modal/templates/footer-template/ModalFooterTemplate.d.ts → drawer/templates/drawer-footer-template/DrawerFooterTemplate.d.ts} +6 -6
- package/dist/components/drawer/templates/drawer-header-template/DrawerHeaderTemplate.d.ts +10 -0
- package/dist/components/drawer.d.ts +2 -0
- package/dist/components/drawer.js +1232 -0
- package/dist/components/drawer.js.map +1 -0
- package/dist/components/dropdown/Dropdown.d.ts +80 -0
- package/dist/components/dropdown/Dropdown.stories.d.ts +22 -0
- package/dist/components/dropdown/index.d.ts +3 -0
- package/dist/components/dropdown/useHoverDropdown.d.ts +68 -0
- package/dist/components/dropdown.d.ts +2 -0
- package/dist/components/dropdown.js +1152 -0
- package/dist/components/dropdown.js.map +1 -0
- package/dist/components/empty-state/EmptyState.d.ts +5 -0
- package/dist/components/empty-state/EmptyState.stories.d.ts +6 -0
- package/dist/components/empty-state/index.d.ts +1 -0
- package/dist/components/empty-state.d.ts +2 -0
- package/dist/components/empty-state.js +5 -0
- package/dist/components/empty-state.js.map +1 -0
- package/dist/components/error-state/ErrorState.d.ts +3 -0
- package/dist/components/error-state/ErrorState.stories.d.ts +6 -0
- package/dist/components/error-state/Retry.d.ts +10 -0
- package/dist/components/error-state/Retry.stories.d.ts +7 -0
- package/dist/components/error-state/index.d.ts +2 -0
- package/dist/components/error-state.d.ts +2 -0
- package/dist/components/error-state.js +16 -0
- package/dist/components/error-state.js.map +1 -0
- package/dist/components/field/Field.d.ts +38 -106
- package/dist/components/field/Field.stories.d.ts +1 -1
- package/dist/components/field.js +1 -1
- package/dist/components/file-upload/FileUpload.d.ts +24 -0
- package/dist/components/file-upload/FileUpload.stories.d.ts +19 -0
- package/dist/components/file-upload/components/file-upload-clear-button/FileUploadClearButton.d.ts +9 -0
- package/dist/components/file-upload/components/file-upload-compact-input-zone/FileUploadCompactInputZone.d.ts +9 -0
- package/dist/components/file-upload/components/file-upload-drop-area/FileUploadDropArea.d.ts +12 -0
- package/dist/components/file-upload/components/file-upload-drop-area/FileUploadDropArea.stories.d.ts +18 -0
- package/dist/components/file-upload/components/file-upload-drop-area-icon/FileUploadDropAreaIcon.d.ts +3 -0
- package/dist/components/file-upload/components/file-upload-drop-area-icon/FileUploadDropAreaIcon.stories.d.ts +14 -0
- package/dist/components/file-upload/components/file-upload-error/FileUploadError.d.ts +7 -0
- package/dist/components/file-upload/components/file-upload-error/FileUploadError.stories.d.ts +15 -0
- package/dist/components/file-upload/components/file-upload-icon/FileUploadIcon.d.ts +5 -0
- package/dist/components/file-upload/components/file-upload-icon/FileUploadIcon.stories.d.ts +13 -0
- package/dist/components/file-upload/components/file-upload-inline-drop-area/FileUploadInlineDropArea.d.ts +12 -0
- package/dist/components/file-upload/components/file-upload-inline-drop-area/FileUploadInlineDropArea.stories.d.ts +18 -0
- package/dist/components/file-upload/components/file-upload-input-zone/FileUploadInputZone.d.ts +9 -0
- package/dist/components/file-upload/components/file-upload-item/FileUploadItem.d.ts +12 -0
- package/dist/components/file-upload/components/file-upload-item/FileUploadItem.stories.d.ts +19 -0
- package/dist/components/file-upload/components/file-upload-item-compact/FileUploadItemCompact.d.ts +14 -0
- package/dist/components/file-upload/components/file-upload-item-compact/FileUploadItemCompact.stories.d.ts +19 -0
- package/dist/components/file-upload/file-upload-compact/FileUploadCompact.d.ts +19 -0
- package/dist/components/file-upload/file-upload-compact/FileUploadCompact.stories.d.ts +20 -0
- package/dist/components/file-upload/index.d.ts +11 -0
- package/dist/components/file-upload.d.ts +2 -0
- package/dist/components/file-upload.js +484 -0
- package/dist/components/file-upload.js.map +1 -0
- package/dist/components/form/Form.d.ts +27 -4
- package/dist/components/form/Form.stories.d.ts +22 -7
- package/dist/components/form/components/form-body/FormBody.d.ts +5 -0
- package/dist/components/form/components/form-divider/FormDivider.d.ts +6 -0
- package/dist/components/form/components/form-field/FormField.d.ts +21 -62
- package/dist/components/form/components/form-field/FormField.stories.d.ts +10 -0
- package/dist/components/form/components/form-field-set/FormFieldSet.d.ts +3 -0
- package/dist/components/form/components/form-footer/FormFooter.d.ts +5 -0
- package/dist/components/form/components/form-header/FormHeader.d.ts +16 -0
- package/dist/components/form/components/form-section-header-button/FormSectionHeaderButton.d.ts +17 -0
- package/dist/components/form/components/form-section-title/FormSectionTitle.d.ts +3 -1
- package/dist/components/form/components/form-stack/FormStack.d.ts +3 -0
- package/dist/components/form/index.d.ts +10 -1
- package/dist/components/form/templates/footer-template/FormFooterTemplate.d.ts +24 -0
- package/dist/components/form/templates/header-template/FormHeaderTemplate.d.ts +43 -0
- package/dist/components/form.js +59 -335
- package/dist/components/form.js.map +1 -1
- package/dist/components/hint-state/HintState.d.ts +3 -0
- package/dist/components/hint-state/HintState.stories.d.ts +6 -0
- package/dist/components/hint-state/index.d.ts +1 -0
- package/dist/components/hint-state.d.ts +2 -0
- package/dist/components/hint-state.js +5 -0
- package/dist/components/hint-state.js.map +1 -0
- package/dist/components/icon/Icon.d.ts +9 -48
- package/dist/components/icon/Icon.stories.d.ts +7 -4
- package/dist/components/icon/feature-icon/FeatureIcon.d.ts +4 -75
- package/dist/components/icon/feature-icon/FeatureIcon.stories.d.ts +16 -6
- package/dist/components/icon/index.d.ts +2 -0
- package/dist/components/icon-tooltip/IconTooltip.d.ts +5 -4
- package/dist/components/icon-tooltip/index.d.ts +2 -0
- package/dist/components/icon-tooltip.d.ts +2 -0
- package/dist/components/icon-tooltip.js +5 -0
- package/dist/components/icon-tooltip.js.map +1 -0
- package/dist/components/icon.d.ts +2 -0
- package/dist/components/icon.js +7 -0
- package/dist/components/icon.js.map +1 -0
- package/dist/components/image-placeholder/ImagePlaceholder.d.ts +6 -0
- package/dist/components/image-placeholder/ImagePlaceholder.stories.d.ts +6 -0
- package/dist/components/image-placeholder/index.d.ts +1 -0
- package/dist/components/image-placeholder.d.ts +2 -0
- package/dist/components/image-placeholder.js +22 -0
- package/dist/components/image-placeholder.js.map +1 -0
- package/dist/components/image-preview/ImagePreview.d.ts +23 -0
- package/dist/components/image-preview/ImagePreview.stories.d.ts +6 -0
- package/dist/components/image-preview/index.d.ts +1 -0
- package/dist/components/image-preview/utils.d.ts +1 -0
- package/dist/components/image-preview.d.ts +2 -0
- package/dist/components/image-preview.js +124 -0
- package/dist/components/image-preview.js.map +1 -0
- package/dist/components/image-uploader/ImageUploader.d.ts +27 -0
- package/dist/components/image-uploader/ImageUploader.stories.d.ts +6 -0
- package/dist/components/image-uploader/components/ImageCameraAddSvg.d.ts +5 -0
- package/dist/components/image-uploader/components/ImageUploaderButton.d.ts +8 -0
- package/dist/components/image-uploader/index.d.ts +1 -0
- package/dist/components/image-uploader.d.ts +2 -0
- package/dist/components/image-uploader.js +88 -0
- package/dist/components/image-uploader.js.map +1 -0
- package/dist/components/images/BoxSvg.d.ts +5 -0
- package/dist/components/images/BoxSvg.stories.d.ts +13 -0
- package/dist/components/images/FolderSvg.d.ts +5 -0
- package/dist/components/images/FolderSvg.stories.d.ts +13 -0
- package/dist/components/images/index.d.ts +2 -0
- package/dist/components/images.d.ts +2 -0
- package/dist/components/images.js +6 -0
- package/dist/components/images.js.map +1 -0
- package/dist/components/indicator/Indicator.d.ts +7 -0
- package/dist/components/indicator/Indicator.stories.d.ts +6 -0
- package/dist/components/indicator/index.d.ts +1 -0
- package/dist/components/indicator.d.ts +2 -0
- package/dist/components/indicator.js +5 -0
- package/dist/components/indicator.js.map +1 -0
- package/dist/components/input/components/clear-button/ClearButton.d.ts +3 -3
- package/dist/components/input/file-input/FileInput.d.ts +34 -0
- package/dist/components/input/file-input/FileInput.stories.d.ts +12 -0
- package/dist/components/input/index.d.ts +3 -0
- package/dist/components/input/input/Input.d.ts +5 -2
- package/dist/components/input/input/Input.stories.d.ts +3 -0
- package/dist/components/input/input-group/InputGroup.d.ts +37 -0
- package/dist/components/input/input-group/InputGroup.stories.d.ts +7 -0
- package/dist/components/input/secret-input/SecretInput.d.ts +14 -5
- package/dist/components/input/secret-input/SecretInput.stories.d.ts +4 -0
- package/dist/components/input/styles/inputBaseStyles.d.ts +3 -0
- package/dist/components/input/text-input/TextInput.d.ts +2 -2
- package/dist/components/input/text-input/TextInput.stories.d.ts +2 -2
- package/dist/components/input/web-input/WebInput.d.ts +15 -0
- package/dist/components/input/web-input/WebInput.stories.d.ts +14 -0
- package/dist/components/input-otp/InputOTP.d.ts +29 -0
- package/dist/components/input-otp/InputOTP.stories.d.ts +9 -0
- package/dist/components/input-otp/components/input-otp-group/InputOTPGroup.d.ts +2 -0
- package/dist/components/input-otp/components/input-otp-separator/InputOTPSeparator.d.ts +2 -0
- package/dist/components/input-otp/components/input-otp-slot/InputOTPSlot.d.ts +4 -0
- package/dist/components/input-otp/index.d.ts +4 -0
- package/dist/components/input-otp.d.ts +2 -0
- package/dist/components/input-otp.js +8 -0
- package/dist/components/input-otp.js.map +1 -0
- package/dist/components/input.js +223 -202
- package/dist/components/input.js.map +1 -1
- package/dist/components/label/Label.d.ts +1 -3
- package/dist/components/label/Label.stories.d.ts +1 -5
- package/dist/components/label/field-label/FieldLabel.d.ts +4 -47
- package/dist/components/label/field-label/FieldLabel.stories.d.ts +1 -0
- package/dist/components/label/field-label/components/RequiredIcon.d.ts +5 -0
- package/dist/components/label.js +1 -1
- package/dist/components/loader/Loader.d.ts +6 -0
- package/dist/components/loader/Loader.stories.d.ts +6 -0
- package/dist/components/loader/index.d.ts +1 -0
- package/dist/components/loader.d.ts +2 -0
- package/dist/components/loader.js +5 -0
- package/dist/components/loader.js.map +1 -0
- package/dist/components/menu-item/MenuItem.d.ts +31 -0
- package/dist/components/menu-item/MenuItem.stories.d.ts +6 -0
- package/dist/components/menu-item/MenuItemAction.d.ts +6 -0
- package/dist/components/menu-item/components/menu-item-button/MenuItemButton.d.ts +37 -0
- package/dist/components/menu-item/components/menu-item-button/MenuItemButton.stories.d.ts +7 -0
- package/dist/components/menu-item/components/menu-item-icon/MenuItemIcon.d.ts +7 -0
- package/dist/components/menu-item/components/menu-item-icon/MenuItemIcon.stories.d.ts +6 -0
- package/dist/components/menu-item/components/menu-item-icon-button/MenuItemIconButton.d.ts +5 -0
- package/dist/components/menu-item/components/menu-item-icon-button/MenuItemIconButton.stories.d.ts +7 -0
- package/dist/components/menu-item/components/menu-item-secondary-text/MenuItemSecondaryText.d.ts +21 -0
- package/dist/components/menu-item/components/menu-item-secondary-text/MenuItemSecondaryText.stories.d.ts +6 -0
- package/dist/components/menu-item/components/menu-item-shortcut/MenuItemShortcut.d.ts +21 -0
- package/dist/components/menu-item/components/menu-item-shortcut/MenuItemShortcut.stories.d.ts +6 -0
- package/dist/components/menu-item/components/menu-item-text/MenuItemText.d.ts +21 -0
- package/dist/components/menu-item/components/menu-item-text/MenuItemText.stories.d.ts +6 -0
- package/dist/components/menu-item/index.d.ts +13 -0
- package/dist/components/menu-item/templates/menu-item-action-template/MenuItemActionTemplate.d.ts +12 -0
- package/dist/components/menu-item/templates/menu-item-action-template/MenuItemActionTemplate.stories.d.ts +6 -0
- package/dist/components/menu-item/templates/menu-item-common-template/MenuItemCommonTemplate.d.ts +16 -0
- package/dist/components/menu-item/templates/menu-item-common-template/MenuItemCommonTemplate.stories.d.ts +6 -0
- package/dist/components/menu-item/templates/menu-item-info-template/MenuItemInfoTemplate.d.ts +13 -0
- package/dist/components/menu-item/templates/menu-item-info-template/MenuItemInfoTemplate.stories.d.ts +6 -0
- package/dist/components/menu-item/templates/menu-item-interactive-template/MenuItemInteractiveTemplate.d.ts +16 -0
- package/dist/components/menu-item/templates/menu-item-interactive-template/MenuItemInteractiveTemplate.stories.d.ts +6 -0
- package/dist/components/menu-item/templates/menu-item-rich-template/MenuItemRichTemplate.d.ts +11 -0
- package/dist/components/menu-item/templates/menu-item-rich-template/MenuItemRichTemplate.stories.d.ts +6 -0
- package/dist/components/menu-item.d.ts +2 -0
- package/dist/components/menu-item.js +243 -0
- package/dist/components/menu-item.js.map +1 -0
- package/dist/components/overflow-tooltip/OverflowTooltip.d.ts +29 -0
- package/dist/components/overflow-tooltip/OverflowTooltip.stories.d.ts +9 -0
- package/dist/components/overflow-tooltip/TextOverflowTooltip.d.ts +11 -0
- package/dist/components/overflow-tooltip/TextOverflowTooltip.stories.d.ts +6 -0
- package/dist/components/overflow-tooltip/index.d.ts +3 -0
- package/dist/components/overflow-tooltip/useOverflowTooltip.d.ts +6 -0
- package/dist/components/overflow-tooltip.d.ts +2 -0
- package/dist/components/overflow-tooltip.js +7 -0
- package/dist/components/overflow-tooltip.js.map +1 -0
- package/dist/components/overlay/Overlay.d.ts +45 -0
- package/dist/components/overlay/Overlay.stories.d.ts +6 -0
- package/dist/components/overlay/index.d.ts +1 -0
- package/dist/components/overlay.d.ts +2 -0
- package/dist/components/overlay.js +5 -0
- package/dist/components/overlay.js.map +1 -0
- package/dist/components/page-state/PageState.d.ts +8 -0
- package/dist/components/page-state/PageState.stories.d.ts +9 -0
- package/dist/components/page-state/components/PageStateAction.d.ts +14 -0
- package/dist/components/page-state/components/PageStateBoxSvg.d.ts +6 -0
- package/dist/components/page-state/components/PageStateButtonGroup.d.ts +3 -0
- package/dist/components/page-state/components/PageStateCancel.d.ts +14 -0
- package/dist/components/page-state/components/PageStateDescription.d.ts +8 -0
- package/dist/components/page-state/components/PageStateFeatureIcon.d.ts +7 -0
- package/dist/components/page-state/components/PageStateFolderSvg.d.ts +7 -0
- package/dist/components/page-state/components/PageStateTitle.d.ts +8 -0
- package/dist/components/page-state/context/PageStateContext.d.ts +12 -0
- package/dist/components/page-state/hooks/usePageStateButtonSize.d.ts +3 -0
- package/dist/components/page-state/index.d.ts +10 -0
- package/dist/components/page-state.d.ts +2 -0
- package/dist/components/page-state.js +173 -0
- package/dist/components/page-state.js.map +1 -0
- package/dist/components/popover/Popover.d.ts +31 -0
- package/dist/components/popover/Popover.stories.d.ts +24 -0
- package/dist/components/popover/index.d.ts +1 -0
- package/dist/components/popover.d.ts +2 -0
- package/dist/components/popover.js +9 -0
- package/dist/components/popover.js.map +1 -0
- package/dist/components/portal-container/PortalContainer.d.ts +10 -0
- package/dist/components/portal-container/index.d.ts +2 -0
- package/dist/components/portal-container/portalContainerEvents.d.ts +12 -0
- package/dist/components/portal-container/usePortalContainer.d.ts +10 -0
- package/dist/components/portal-container.d.ts +2 -0
- package/dist/components/portal-container.js +14 -0
- package/dist/components/portal-container.js.map +1 -0
- package/dist/components/progress/Progress.d.ts +15 -0
- package/dist/components/progress/Progress.stories.d.ts +9 -0
- package/dist/components/progress/ProgressBarStyles.d.ts +70 -0
- package/dist/components/progress/components/progress-icon/ProgressIcon.d.ts +5 -0
- package/dist/components/progress/components/progress-icon/ProgressIcon.stories.d.ts +6 -0
- package/dist/components/progress/components/progress-icon-button/ProgressIconButton.d.ts +5 -0
- package/dist/components/progress/components/progress-icon-button/ProgressIconButton.stories.d.ts +6 -0
- package/dist/components/progress/components/progress-text/ProgressText.d.ts +6 -0
- package/dist/components/progress/components/progress-text/ProgressText.stories.d.ts +6 -0
- package/dist/components/progress/index.d.ts +10 -0
- package/dist/components/progress/templates/ProgressBlockTemplate.d.ts +16 -0
- package/dist/components/progress/templates/ProgressBlockTemplate.stories.d.ts +7 -0
- package/dist/components/progress-circle/ProgressCircle.d.ts +186 -0
- package/dist/components/progress-circle/ProgressCircle.stories.d.ts +9 -0
- package/dist/components/progress-circle/components/progress-circle-description/ProgressCircleDescription.d.ts +5 -0
- package/dist/components/progress-circle/components/progress-circle-description/ProgressCircleDescription.stories.d.ts +6 -0
- package/dist/components/progress-circle/components/progress-circle-icon-button/ProgressCircleIconButton.d.ts +70 -0
- package/dist/components/progress-circle/components/progress-circle-icon-button/ProgressCircleIconButton.stories.d.ts +6 -0
- package/dist/components/progress-circle/components/progress-circle-text/ProgressCircleTitle.d.ts +56 -0
- package/dist/components/progress-circle/components/progress-circle-text/ProgressCircleTitle.stories.d.ts +6 -0
- package/dist/components/progress-circle/index.d.ts +5 -0
- package/dist/components/progress-circle/templates/ProgressCircleTemplate.d.ts +13 -0
- package/dist/components/progress-circle/templates/ProgressCircleTemplate.stories.d.ts +8 -0
- package/dist/components/progress-circle.d.ts +2 -0
- package/dist/components/progress-circle.js +187 -0
- package/dist/components/progress-circle.js.map +1 -0
- package/dist/components/progress.d.ts +2 -0
- package/dist/components/progress.js +262 -0
- package/dist/components/progress.js.map +1 -0
- package/dist/components/prose/Prose.d.ts +9 -0
- package/dist/components/prose/Prose.stories.d.ts +6 -0
- package/dist/components/prose/index.d.ts +1 -0
- package/dist/components/prose.d.ts +2 -0
- package/dist/components/prose.js +12 -0
- package/dist/components/prose.js.map +1 -0
- package/dist/components/radio-group/RadioGroup.d.ts +4 -0
- package/dist/components/radio-group/RadioGroup.stories.d.ts +11 -0
- package/dist/components/radio-group/components/RadioGroupItem.d.ts +43 -0
- package/dist/components/radio-group/index.d.ts +2 -0
- package/dist/components/radio-group.d.ts +2 -0
- package/dist/components/radio-group.js +271 -0
- package/dist/components/radio-group.js.map +1 -0
- package/dist/components/resizable/Resizable.d.ts +23 -0
- package/dist/components/resizable/Resizable.stories.d.ts +8 -0
- package/dist/components/resizable/index.d.ts +1 -0
- package/dist/components/resizable.d.ts +2 -0
- package/dist/components/resizable.js +1552 -0
- package/dist/components/resizable.js.map +1 -0
- package/dist/components/scheduler/components/day/Day.d.ts +4 -61
- package/dist/components/scheduler.js +1249 -1244
- package/dist/components/scheduler.js.map +1 -1
- package/dist/components/scroll-area/ScrollArea.d.ts +19 -2
- package/dist/components/scroll-area/ScrollArea.stories.d.ts +5 -2
- package/dist/components/scroll-area/index.d.ts +2 -0
- package/dist/components/scroll-area.d.ts +2 -0
- package/dist/components/scroll-area.js +6 -0
- package/dist/components/scroll-area.js.map +1 -0
- package/dist/components/scroll-shadow-container/ScrollShadowContainer.d.ts +2 -49
- package/dist/components/scroll-shadow-container/ScrollShadowContainer.stories.d.ts +1 -0
- package/dist/components/scroll-shadow-container/index.d.ts +1 -0
- package/dist/components/scroll-shadow-container.js +1 -1
- package/dist/components/search-select/async-search-select/AsyncSearchSelect.d.ts +2 -0
- package/dist/components/search-select/async-search-select/AsyncSearchSelect.stories.d.ts +20 -0
- package/dist/components/search-select/async-search-select/components/AsyncSearchSelectContent.d.ts +42 -0
- package/dist/components/search-select/async-search-select/components/AsyncSearchSelectPopoverContent.d.ts +7 -0
- package/dist/components/search-select/async-search-select/hooks/useAsyncDataLoader.d.ts +48 -0
- package/dist/components/search-select/async-search-select/types.d.ts +99 -0
- package/dist/components/search-select/components/SearchSelectPlaceholder.d.ts +7 -0
- package/dist/components/search-select/components/SearchSelectTag.d.ts +13 -0
- package/dist/components/search-select/components/SearchSelectTextValue.d.ts +7 -0
- package/dist/components/search-select/components/SearchSelectTrigger.d.ts +23 -0
- package/dist/components/search-select/index.d.ts +22 -0
- package/dist/components/search-select/multi-select/MultiSelect.d.ts +87 -0
- package/dist/components/search-select/multi-select/MultiSelect.stories.d.ts +18 -0
- package/dist/components/search-select/search-select/LazySearchSelect.d.ts +16 -0
- package/dist/components/search-select/search-select/LazySearchSelect.stories.d.ts +21 -0
- package/dist/components/search-select/search-select/SearchSelect.d.ts +80 -0
- package/dist/components/search-select/search-select/SearchSelect.stories.d.ts +16 -0
- package/dist/components/search-select/search-select/components/LoadMoreTrigger.d.ts +17 -0
- package/dist/components/search-select/search-select/components/SearchSelectContent.d.ts +10 -0
- package/dist/components/search-select/search-select/components/SearchSelectGroup.d.ts +12 -0
- package/dist/components/search-select/search-select/components/SearchSelectInput.d.ts +9 -0
- package/dist/components/search-select/search-select/components/SearchSelectSeparator.d.ts +12 -0
- package/dist/components/search-select/search-select/utils/fuzzyFilter.d.ts +9 -0
- package/dist/components/search-select.d.ts +2 -0
- package/dist/components/search-select.js +596 -0
- package/dist/components/search-select.js.map +1 -0
- package/dist/components/select/Select.d.ts +39 -27
- package/dist/components/select/Select.stories.d.ts +2 -0
- package/dist/components/select/components/SelectTriggerClearButton.d.ts +6 -0
- package/dist/components/select/index.d.ts +1 -1
- package/dist/components/select.js +14 -1032
- package/dist/components/select.js.map +1 -1
- package/dist/components/sheet/Sheet.d.ts +35 -0
- package/dist/components/sheet/Sheet.stories.d.ts +20 -0
- package/dist/components/sheet/index.d.ts +1 -0
- package/dist/components/sheet.d.ts +2 -0
- package/dist/components/sheet.js +14 -0
- package/dist/components/sheet.js.map +1 -0
- package/dist/components/shortcut/Shortcut.d.ts +8 -0
- package/dist/components/shortcut/Shortcut.stories.d.ts +22 -0
- package/dist/components/shortcut/index.d.ts +1 -0
- package/dist/components/shortcut.d.ts +2 -0
- package/dist/components/shortcut.js +5 -0
- package/dist/components/shortcut.js.map +1 -0
- package/dist/components/sidebar/Sidebar.d.ts +73 -0
- package/dist/components/sidebar/Sidebar.stories.d.ts +18 -0
- package/dist/components/sidebar/SidebarContext.d.ts +12 -0
- package/dist/components/sidebar/index.d.ts +3 -0
- package/dist/components/sidebar.d.ts +2 -0
- package/dist/components/sidebar.js +505 -0
- package/dist/components/sidebar.js.map +1 -0
- package/dist/components/skeleton/Skeleton.d.ts +6 -0
- package/dist/components/skeleton/Skeleton.stories.d.ts +9 -0
- package/dist/components/skeleton/index.d.ts +1 -0
- package/dist/components/skeleton.d.ts +2 -0
- package/dist/components/skeleton.js +5 -0
- package/dist/components/skeleton.js.map +1 -0
- package/dist/components/slider/Slider.d.ts +4 -0
- package/dist/components/slider/Slider.stories.d.ts +12 -0
- package/dist/components/slider/components/SliderRange.d.ts +4 -0
- package/dist/components/slider/components/SliderThumb.d.ts +4 -0
- package/dist/components/slider/components/SliderTrack.d.ts +4 -0
- package/dist/components/slider/index.d.ts +4 -0
- package/dist/components/slider.d.ts +2 -0
- package/dist/components/slider.js +458 -0
- package/dist/components/slider.js.map +1 -0
- package/dist/components/stepper/Stepper.d.ts +8 -0
- package/dist/components/stepper/Stepper.stories.d.ts +8 -0
- package/dist/components/stepper/StepperContext.d.ts +9 -0
- package/dist/components/stepper/components/stepper-description/StepperDescription.d.ts +1 -0
- package/dist/components/stepper/components/stepper-indicator/StepperIndicator.d.ts +4 -0
- package/dist/components/stepper/components/stepper-item/StepperItem.d.ts +7 -0
- package/dist/components/stepper/components/stepper-item/StepperItemContext.d.ts +11 -0
- package/dist/components/stepper/components/stepper-title/StepperTitle.d.ts +1 -0
- package/dist/components/stepper/components/stepper-trigger/StepperTrigger.d.ts +4 -0
- package/dist/components/stepper/index.d.ts +9 -0
- package/dist/components/stepper/stepper-separator/StepperSeparator.d.ts +1 -0
- package/dist/components/stepper.d.ts +2 -0
- package/dist/components/stepper.js +145 -0
- package/dist/components/stepper.js.map +1 -0
- package/dist/components/switch/Switch.d.ts +6 -180
- package/dist/components/switch/Switch.stories.d.ts +2 -90
- package/dist/components/switch/switch-field/SwitchField.d.ts +9 -315
- package/dist/components/switch/switch-field/SwitchField.stories.d.ts +4 -315
- package/dist/components/switch.js +153 -151
- package/dist/components/switch.js.map +1 -1
- package/dist/components/system-state/SystemState.d.ts +3 -0
- package/dist/components/system-state/SystemState.stories.d.ts +19 -0
- package/dist/components/system-state/components/SystemStateActions.d.ts +10 -0
- package/dist/components/system-state/components/SystemStateCode.d.ts +3 -0
- package/dist/components/system-state/components/SystemStateDescription.d.ts +3 -0
- package/dist/components/system-state/components/SystemStateTitle.d.ts +3 -0
- package/dist/components/system-state/index.d.ts +10 -0
- package/dist/components/system-state.d.ts +2 -0
- package/dist/components/system-state.js +51 -0
- package/dist/components/system-state.js.map +1 -0
- package/dist/components/table/Table.d.ts +18 -0
- package/dist/components/table/Table.stories.d.ts +15 -0
- package/dist/components/table/index.d.ts +1 -0
- package/dist/components/table.d.ts +2 -0
- package/dist/components/table.js +83 -0
- package/dist/components/table.js.map +1 -0
- package/dist/components/tabs/Tabs.d.ts +7 -0
- package/dist/components/tabs/Tabs.stories.d.ts +8 -0
- package/dist/components/tabs/index.d.ts +1 -0
- package/dist/components/tabs.d.ts +2 -0
- package/dist/components/tabs.js +178 -0
- package/dist/components/tabs.js.map +1 -0
- package/dist/components/tag/Tag.d.ts +59 -1103
- package/dist/components/tag/Tag.stories.d.ts +1 -0
- package/dist/components/tag/index.d.ts +1 -1
- package/dist/components/tag-input/TagInput.d.ts +42 -0
- package/dist/components/tag-input/TagInput.stories.d.ts +9 -0
- package/dist/components/tag-input/index.d.ts +2 -0
- package/dist/components/tag-input.d.ts +2 -0
- package/dist/components/tag-input.js +162 -0
- package/dist/components/tag-input.js.map +1 -0
- package/dist/components/tag.js +7 -189
- package/dist/components/tag.js.map +1 -1
- package/dist/components/text/Text.d.ts +9 -0
- package/dist/components/text/Text.stories.d.ts +24 -0
- package/dist/components/text/index.d.ts +1 -0
- package/dist/components/text.d.ts +2 -0
- package/dist/components/text.js +5 -0
- package/dist/components/text.js.map +1 -0
- package/dist/components/textarea/autogrow-textarea/AutogrowTextarea.d.ts +12 -0
- package/dist/components/textarea/autogrow-textarea/AutogrowTextarea.stories.d.ts +10 -0
- package/dist/components/textarea/index.d.ts +2 -0
- package/dist/components/textarea/textarea/Textarea.d.ts +14 -0
- package/dist/components/textarea/textarea/Textarea.stories.d.ts +7 -0
- package/dist/components/textarea.d.ts +2 -0
- package/dist/components/textarea.js +217 -0
- package/dist/components/textarea.js.map +1 -0
- package/dist/components/timer/Timer.d.ts +5 -0
- package/dist/components/timer/Timer.stories.d.ts +15 -0
- package/dist/components/timer/components/TimerUnit.d.ts +5 -0
- package/dist/components/timer/components/TimerValue.d.ts +5 -0
- package/dist/components/timer/index.d.ts +3 -0
- package/dist/components/timer.d.ts +2 -0
- package/dist/components/timer.js +23 -0
- package/dist/components/timer.js.map +1 -0
- package/dist/components/toast/Toast.d.ts +11 -3
- package/dist/components/toast/Toast.stories.d.ts +3 -0
- package/dist/components/toast/ToastView.d.ts +20 -401
- package/dist/components/toast/components/toast-action/ToastAction.d.ts +1 -0
- package/dist/components/toast/hooks/useToastContext.d.ts +1 -1
- package/dist/components/toast/index.d.ts +4 -1
- package/dist/components/toast.js +460 -471
- package/dist/components/toast.js.map +1 -1
- package/dist/components/toggle/Toggle.d.ts +52 -0
- package/dist/components/toggle/Toggle.stories.d.ts +8 -0
- package/dist/components/toggle/index.d.ts +1 -0
- package/dist/components/toggle-group/ToggleGroup.d.ts +6 -0
- package/dist/components/toggle-group/ToggleGroup.stories.d.ts +13 -0
- package/dist/components/toggle-group/index.d.ts +1 -0
- package/dist/components/toggle-group.d.ts +2 -0
- package/dist/components/toggle-group.js +37 -0
- package/dist/components/toggle-group.js.map +1 -0
- package/dist/components/toggle.d.ts +2 -0
- package/dist/components/toggle.js +5 -0
- package/dist/components/toggle.js.map +1 -0
- package/dist/components/toolbar/Toolbar.d.ts +52 -0
- package/dist/components/toolbar/Toolbar.stories.d.ts +22 -0
- package/dist/components/toolbar/ToolbarContext.d.ts +11 -0
- package/dist/components/toolbar/index.d.ts +2 -0
- package/dist/components/toolbar.d.ts +2 -0
- package/dist/components/toolbar.js +304 -0
- package/dist/components/toolbar.js.map +1 -0
- package/dist/components/tooltip/Tooltip.d.ts +34 -0
- package/dist/components/tooltip/Tooltip.stories.d.ts +20 -0
- package/dist/components/tooltip/index.d.ts +3 -0
- package/dist/components/tooltip/useTooltipContext.d.ts +6 -0
- package/dist/components/tooltip.d.ts +2 -0
- package/dist/components/tooltip.js +16 -0
- package/dist/components/tooltip.js.map +1 -0
- package/dist/createLucideIcon-DwBrHnj9.js +80 -0
- package/dist/{createLucideIcon-DgrNxRV5.js.map → createLucideIcon-DwBrHnj9.js.map} +1 -1
- package/dist/download-BHsj218e.js +16 -0
- package/dist/download-BHsj218e.js.map +1 -0
- package/dist/examples/gramax/CloneRepository.stories.d.ts +5 -0
- package/dist/examples/gramax/NewStorage.stories.d.ts +5 -0
- package/dist/examples/quiz/QuizPage.stories.d.ts +6 -0
- package/dist/hooks/index.d.ts +2 -0
- package/dist/hooks/use-file-upload/errorMessages.d.ts +39 -0
- package/dist/hooks/use-file-upload/index.d.ts +3 -0
- package/dist/hooks/use-file-upload/useFileUpload.d.ts +81 -0
- package/dist/hooks/use-file-upload.d.ts +2 -0
- package/dist/hooks/use-file-upload.js +7 -0
- package/dist/hooks/use-file-upload.js.map +1 -0
- package/dist/hooks/useAutofill.d.ts +8 -0
- package/dist/hooks/useBreakpoints.d.ts +23 -0
- package/dist/hooks/useControllableState.d.ts +13 -0
- package/dist/hooks/useControlledValue.d.ts +10 -0
- package/dist/hooks/useCopyAction.d.ts +7 -0
- package/dist/hooks/useCustomValidity.d.ts +9 -0
- package/dist/hooks/useDataCache.d.ts +77 -0
- package/dist/hooks/useDebounce.d.ts +7 -0
- package/dist/hooks/useFileType.d.ts +4 -0
- package/dist/hooks/useInputWithActions.d.ts +32 -0
- package/dist/hooks/useItemsKeyboardNavigation.d.ts +56 -0
- package/dist/hooks/useSearchCache.test.d.ts +1 -0
- package/dist/hooks/useSearchSelect.d.ts +31 -0
- package/dist/hooks.d.ts +2 -0
- package/dist/hooks.js +14 -0
- package/dist/hooks.js.map +1 -0
- package/dist/image-BqL5JP90.js +16 -0
- package/dist/image-BqL5JP90.js.map +1 -0
- package/dist/index-0ioNhtNM.js +11 -0
- package/dist/index-0ioNhtNM.js.map +1 -0
- package/dist/index-437EL2iq.js +53 -0
- package/dist/index-437EL2iq.js.map +1 -0
- package/dist/index-BGQepRFJ.js +28 -0
- package/dist/index-BGQepRFJ.js.map +1 -0
- package/dist/index-BVqs-uqP.js +234 -0
- package/dist/index-BVqs-uqP.js.map +1 -0
- package/dist/index-BZPx6jYI.js.map +1 -1
- package/dist/index-Bb23HztA.js +33 -0
- package/dist/index-Bb23HztA.js.map +1 -0
- package/dist/index-BpWB3aFK.js +71 -0
- package/dist/index-BpWB3aFK.js.map +1 -0
- package/dist/index-BtQfgaSF.js +61 -0
- package/dist/index-BtQfgaSF.js.map +1 -0
- package/dist/index-ByaXH_ih.js +11 -0
- package/dist/index-ByaXH_ih.js.map +1 -0
- package/dist/index-BzCriPiK.js +671 -0
- package/dist/index-BzCriPiK.js.map +1 -0
- package/dist/index-CCKe-Mpx.js +7 -0
- package/dist/index-CCKe-Mpx.js.map +1 -0
- package/dist/index-CFaU3UXv.js +94 -0
- package/dist/index-CFaU3UXv.js.map +1 -0
- package/dist/index-CLuiUUQ8.js +137 -0
- package/dist/index-CLuiUUQ8.js.map +1 -0
- package/dist/index-CQD-Njgt.js +245 -0
- package/dist/index-CQD-Njgt.js.map +1 -0
- package/dist/index-CmBeyp2d.js +56 -0
- package/dist/index-CmBeyp2d.js.map +1 -0
- package/dist/index-DFZozV_h.js +69 -0
- package/dist/index-DFZozV_h.js.map +1 -0
- package/dist/index-DHsfW5Rj.js +49 -0
- package/dist/index-DHsfW5Rj.js.map +1 -0
- package/dist/index-DHyZ_0Ut.js +181 -0
- package/dist/index-DHyZ_0Ut.js.map +1 -0
- package/dist/index-DLcqcWxM.js +30 -0
- package/dist/index-DLcqcWxM.js.map +1 -0
- package/dist/index-DRo26PBK.js +1525 -0
- package/dist/index-DRo26PBK.js.map +1 -0
- package/dist/index-DnnQs07z.js +33 -0
- package/dist/index-DnnQs07z.js.map +1 -0
- package/dist/index-Uiy0Xwy2.js +32 -0
- package/dist/index-Uiy0Xwy2.js.map +1 -0
- package/dist/index-_ITz1IyW.js +144 -0
- package/dist/index-_ITz1IyW.js.map +1 -0
- package/dist/index-rKs9bXHr.js +7 -0
- package/dist/index-rKs9bXHr.js.map +1 -0
- package/dist/index-xqkGMOJ8.js +14 -0
- package/dist/index-xqkGMOJ8.js.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.esm-CXA6i4d7.js +1282 -0
- package/dist/index.esm-CXA6i4d7.js.map +1 -0
- package/dist/index.js +53 -1
- package/dist/index.js.map +1 -1
- package/dist/inputBaseStyles-DbzD_jvq.js +34 -0
- package/dist/inputBaseStyles-DbzD_jvq.js.map +1 -0
- package/dist/lib/utils/cn.d.ts +2 -0
- package/dist/lib/utils/dom.d.ts +6 -0
- package/dist/lib/utils/file/downloadFile.d.ts +2 -0
- package/dist/lib/utils/file/formatBytes.d.ts +1 -0
- package/dist/lib/utils/formatCounterValue.d.ts +21 -0
- package/dist/lib/utils/image/imageConverter.d.ts +23 -0
- package/dist/lib/utils/index.d.ts +2 -0
- package/dist/lib/utils/storybook.d.ts +13 -2
- package/dist/lib/utils/styles.d.ts +9 -0
- package/dist/lib/utils/variants.d.ts +35 -0
- package/dist/lib/utils.d.ts +2 -2
- package/dist/lib/utils.js +25 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/loader-circle-D1YXTEGq.js +14 -0
- package/dist/loader-circle-D1YXTEGq.js.map +1 -0
- package/dist/minus-BltQa7Q2.js +12 -0
- package/dist/minus-BltQa7Q2.js.map +1 -0
- package/dist/normalizeDates-9A3c9WYM.js +32 -0
- package/dist/normalizeDates-9A3c9WYM.js.map +1 -0
- package/dist/providers/component-variant-context/ComponentVariantProvider.d.ts +30 -0
- package/dist/providers/component-variant-context/index.d.ts +1 -0
- package/dist/providers/component-variant-context.d.ts +2 -0
- package/dist/providers/component-variant-context.js +6 -0
- package/dist/providers/component-variant-context.js.map +1 -0
- package/dist/rotate-cw-tYRlcg0g.js +15 -0
- package/dist/rotate-cw-tYRlcg0g.js.map +1 -0
- package/dist/search-CDdgqSGg.js +15 -0
- package/dist/search-CDdgqSGg.js.map +1 -0
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.ts.js +7 -0
- package/dist/src/index.ts.js.map +1 -0
- package/dist/styles-scoped.css +6239 -2320
- package/dist/styles.css +5980 -2063
- package/dist/theme.css +329 -0
- package/dist/theme.d.ts +1 -0
- package/dist/types/css.d.ts +4 -4
- package/dist/useBreakpoints-D8wKOvil.js +103 -0
- package/dist/useBreakpoints-D8wKOvil.js.map +1 -0
- package/dist/useDebounce-BRah78CF.js +16 -0
- package/dist/useDebounce-BRah78CF.js.map +1 -0
- package/dist/useFileUpload-iDag0iqM.js +197 -0
- package/dist/useFileUpload-iDag0iqM.js.map +1 -0
- package/dist/useItemsKeyboardNavigation-CmeOR30y.js +62 -0
- package/dist/useItemsKeyboardNavigation-CmeOR30y.js.map +1 -0
- package/dist/useMergeRefs-qoKniYqT.js +19 -0
- package/dist/useMergeRefs-qoKniYqT.js.map +1 -0
- package/dist/usePortalContainer-ae6EzS08.js +39 -0
- package/dist/usePortalContainer-ae6EzS08.js.map +1 -0
- package/dist/vendors/date-fns/index.d.ts +19 -0
- package/dist/vendors/date-fns/locale/en-US/index.d.ts +1 -0
- package/dist/vendors/date-fns/locale/en-US.d.ts +2 -0
- package/dist/vendors/date-fns/locale/en-US.js +372 -0
- package/dist/vendors/date-fns/locale/en-US.js.map +1 -0
- package/dist/vendors/date-fns/locale/ru/index.d.ts +1 -0
- package/dist/vendors/date-fns/locale/ru.d.ts +2 -0
- package/dist/vendors/date-fns/locale/ru.js +569 -0
- package/dist/vendors/date-fns/locale/ru.js.map +1 -0
- package/dist/vendors/date-fns.d.ts +2 -0
- package/dist/vendors/date-fns.js +2 -0
- package/dist/vendors/date-fns.js.map +1 -0
- package/dist/vendors/react-day-picker/index.d.ts +22 -0
- package/dist/vendors/react-day-picker.d.ts +2 -0
- package/dist/vendors/react-day-picker.js +87 -0
- package/dist/vendors/react-day-picker.js.map +1 -0
- package/dist/vendors/react-hook-form/index.d.ts +21 -0
- package/dist/vendors/react-hook-form.d.ts +2 -0
- package/dist/vendors/react-hook-form.js +19 -0
- package/dist/vendors/react-hook-form.js.map +1 -0
- package/dist/vendors/tanstack/react-table/index.d.ts +1 -0
- package/dist/vendors/tanstack/react-table.d.ts +2 -0
- package/dist/vendors/tanstack/react-table.js +2090 -0
- package/dist/vendors/tanstack/react-table.js.map +1 -0
- package/dist/vendors/zod/index.d.ts +14 -0
- package/dist/vendors/zod.d.ts +2 -0
- package/dist/vendors/zod.js +3080 -0
- package/dist/vendors/zod.js.map +1 -0
- package/dist/{x-JgjNP5oH.js → x-tDTt7hTQ.js} +2 -2
- package/dist/{x-JgjNP5oH.js.map → x-tDTt7hTQ.js.map} +1 -1
- package/dist/zod-BMNoK3aM.js +75 -0
- package/dist/zod-BMNoK3aM.js.map +1 -0
- package/package.json +183 -117
- package/tailwind.preset.js +441 -0
- package/dist/Button-Cfe4WIYW.js +0 -57
- package/dist/Button-Cfe4WIYW.js.map +0 -1
- package/dist/ButtonBase-C8kakRHQ.js +0 -184
- package/dist/ButtonBase-C8kakRHQ.js.map +0 -1
- package/dist/CheckboxField-DaRmV9yw.js +0 -251
- package/dist/CheckboxField-DaRmV9yw.js.map +0 -1
- package/dist/Description-g2E6P7Qi.js +0 -37
- package/dist/Description-g2E6P7Qi.js.map +0 -1
- package/dist/Divider-D3NvaU8c.js +0 -46
- package/dist/Divider-D3NvaU8c.js.map +0 -1
- package/dist/Field-CjwIc66I.js +0 -83
- package/dist/Field-CjwIc66I.js.map +0 -1
- package/dist/FieldLabel--NVcQQhJ.js +0 -64
- package/dist/FieldLabel--NVcQQhJ.js.map +0 -1
- package/dist/Icon-CSPBHL_x.js +0 -19
- package/dist/Icon-CSPBHL_x.js.map +0 -1
- package/dist/IconButton-CTxOql_1.js +0 -55
- package/dist/IconButton-CTxOql_1.js.map +0 -1
- package/dist/ScrollShadowContainer-C4qXz8gc.js +0 -849
- package/dist/ScrollShadowContainer-C4qXz8gc.js.map +0 -1
- package/dist/components/background/Background.d.ts +0 -138
- package/dist/components/background/Background.stories.d.ts +0 -6
- package/dist/components/input/secret-input/components/ShowValueToggler.d.ts +0 -7
- package/dist/components/modal/Modal.d.ts +0 -14
- package/dist/components/modal/Modal.stories.d.ts +0 -25
- package/dist/components/modal/components/body/ModalBody.d.ts +0 -2
- package/dist/components/modal/components/footer/ModalFooter.d.ts +0 -2
- package/dist/components/modal/components/header/ModalHeader.d.ts +0 -6
- package/dist/components/modal/index.d.ts +0 -6
- package/dist/components/modal/templates/header-template/ModalHeaderTemplate.d.ts +0 -210
- package/dist/components/modal.d.ts +0 -2
- package/dist/components/modal.js +0 -507
- package/dist/components/modal.js.map +0 -1
- package/dist/components/ui/tooltip.d.ts +0 -7
- package/dist/createLucideIcon-DgrNxRV5.js +0 -112
- package/dist/design-tokens.source.json +0 -1
- package/dist/fonts/inter/InterVariable-Italic.ttf +0 -0
- package/dist/fonts/inter/InterVariable.ttf +0 -0
- package/dist/index-BA36kN2b.js +0 -76
- package/dist/index-BA36kN2b.js.map +0 -1
- package/dist/index-CImD85pK.js +0 -179
- package/dist/index-CImD85pK.js.map +0 -1
- package/dist/index-CR-odn5-.js +0 -2446
- package/dist/index-CR-odn5-.js.map +0 -1
- package/dist/index-CaGtfIqw.js +0 -163
- package/dist/index-CaGtfIqw.js.map +0 -1
- package/dist/index-CfJKNBxG.js +0 -698
- package/dist/index-CfJKNBxG.js.map +0 -1
- package/dist/index-DPws5oAn.js +0 -90
- package/dist/index-DPws5oAn.js.map +0 -1
- package/dist/index-DsEh1WRc.js +0 -1586
- package/dist/index-DsEh1WRc.js.map +0 -1
- package/dist/index-pysSAa5G.js +0 -57
- package/dist/index-pysSAa5G.js.map +0 -1
- package/dist/tooltip-CYQMPCEj.js +0 -365
- package/dist/tooltip-CYQMPCEj.js.map +0 -1
- package/dist/utils-2yE78m5l.js.map +0 -1
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { StoryObj } from '@storybook/react';
|
|
2
|
+
import { LucideIcon } from 'lucide-react';
|
|
3
|
+
import { OTPForm, OTPFormProps } from './OTPForm';
|
|
4
|
+
import { FC } from 'react';
|
|
5
|
+
declare const meta: {
|
|
6
|
+
component: FC<OTPFormProps>;
|
|
7
|
+
parameters: {
|
|
8
|
+
layout: string;
|
|
9
|
+
};
|
|
10
|
+
tags: string[];
|
|
11
|
+
};
|
|
12
|
+
export default meta;
|
|
13
|
+
type Story = StoryObj<typeof OTPForm>;
|
|
14
|
+
export declare const Default: Story;
|
|
15
|
+
export declare const WithInvalidCodeError: Story;
|
|
16
|
+
export declare const WithInvalidEmailError: Story;
|
|
17
|
+
export declare const AllProperties: Story;
|
|
18
|
+
export declare const WithGramaxHeader: Story;
|
|
19
|
+
interface PlaygroundExampleProps {
|
|
20
|
+
showModal?: boolean;
|
|
21
|
+
modalTitle?: string;
|
|
22
|
+
modalDescription?: string;
|
|
23
|
+
modalIcon?: LucideIcon;
|
|
24
|
+
otpFormat?: string;
|
|
25
|
+
autoSubmit?: boolean;
|
|
26
|
+
resendDelay?: number;
|
|
27
|
+
emailPlaceholder?: string;
|
|
28
|
+
emailLabel?: string;
|
|
29
|
+
emailDescription?: string;
|
|
30
|
+
otpLabel?: string;
|
|
31
|
+
otpDescription?: string;
|
|
32
|
+
sendButtonText?: string;
|
|
33
|
+
confirmButtonText?: string;
|
|
34
|
+
resendButtonText?: string;
|
|
35
|
+
defaultEmail?: string;
|
|
36
|
+
labelClassName?: string;
|
|
37
|
+
simulateError?: boolean;
|
|
38
|
+
}
|
|
39
|
+
declare const PlaygroundExample: ({ showModal, modalTitle, modalDescription, modalIcon, simulateError, ...otpProps }: PlaygroundExampleProps) => import("react/jsx-runtime").JSX.Element;
|
|
40
|
+
export declare const Playground: StoryObj<typeof PlaygroundExample>;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
export interface EmailFormProps {
|
|
4
|
+
/** Предустановленный email */
|
|
5
|
+
defaultEmail?: string;
|
|
6
|
+
/** Плейсхолдер для email поля */
|
|
7
|
+
emailPlaceholder?: string;
|
|
8
|
+
/** Лейбл для email поля */
|
|
9
|
+
emailLabel?: string;
|
|
10
|
+
/** Описание email поля */
|
|
11
|
+
emailDescription?: string;
|
|
12
|
+
/** Текст кнопки отправки */
|
|
13
|
+
sendButtonText?: string;
|
|
14
|
+
/** Колбек отправки кода. Вызывается при нажатии на кнопку "Отправить", если email валидный. */
|
|
15
|
+
onSendCode?: (email: string) => Promise<void> | void;
|
|
16
|
+
/** Колбек изменения email */
|
|
17
|
+
onEmailChange?: (email: string) => void;
|
|
18
|
+
/** Показывать ли кнопку отправки */
|
|
19
|
+
showSendButton?: boolean;
|
|
20
|
+
/** Классы для лейбла */
|
|
21
|
+
labelClassName?: string;
|
|
22
|
+
/** Схема валидации для email поля */
|
|
23
|
+
emailValidation?: z.ZodString;
|
|
24
|
+
}
|
|
25
|
+
export declare const EmailForm: React.ForwardRefExoticComponent<EmailFormProps & React.RefAttributes<HTMLFormElement>>;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { ControllerRenderProps, FieldValues } from 'react-hook-form';
|
|
3
|
+
export type OTPRenderFunction = (field: ControllerRenderProps<FieldValues, string>) => React.ReactNode;
|
|
4
|
+
export interface OTPInputFormProps {
|
|
5
|
+
/**
|
|
6
|
+
* Формат группировки OTP кода
|
|
7
|
+
* Примеры: "3-3" (XXX-XXX), "4-4" (XXXX-XXXX), "6" (XXXXXX)
|
|
8
|
+
*/
|
|
9
|
+
otpFormat?: string;
|
|
10
|
+
/** Функция для обработки вставленного текста */
|
|
11
|
+
pasteTransformer?: (text: string) => string;
|
|
12
|
+
/** Автоотправка при заполнении OTP */
|
|
13
|
+
autoSubmit?: boolean;
|
|
14
|
+
/** Лейбл для OTP поля */
|
|
15
|
+
otpLabel?: string;
|
|
16
|
+
/** Описание OTP поля */
|
|
17
|
+
otpDescription?: string;
|
|
18
|
+
/** Текст кнопки подтверждения */
|
|
19
|
+
confirmButtonText?: string;
|
|
20
|
+
/** Колбек подтверждения OTP */
|
|
21
|
+
onConfirmCode?: (otp: string) => Promise<void> | void;
|
|
22
|
+
/** Показывать ли кнопку подтверждения */
|
|
23
|
+
showConfirmButton?: boolean;
|
|
24
|
+
/** Классы для лейбла */
|
|
25
|
+
labelClassName?: string;
|
|
26
|
+
}
|
|
27
|
+
export declare const OTPInputForm: (props: OTPInputFormProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
export interface ResendButtonProps {
|
|
3
|
+
/** Время последней отправки кода (timestamp) */
|
|
4
|
+
lastSentTime?: number | null;
|
|
5
|
+
/** Время задержки для повторной отправки в секундах */
|
|
6
|
+
resendDelay?: number;
|
|
7
|
+
/** Текст кнопки повторной отправки */
|
|
8
|
+
resendButtonText?: string;
|
|
9
|
+
/** Шаблон текста обратного отсчета */
|
|
10
|
+
resendCountdownText?: (seconds: number) => string;
|
|
11
|
+
/** Колбек повторной отправки кода */
|
|
12
|
+
onResend?: () => Promise<void> | void;
|
|
13
|
+
}
|
|
14
|
+
export declare const ResendButton: React.ForwardRefExoticComponent<ResendButtonProps & React.RefAttributes<HTMLButtonElement>>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
type OTPErrorType = "invalid_code" | "invalid_email";
|
|
2
|
+
export declare class OTPError extends Error {
|
|
3
|
+
readonly type: OTPErrorType;
|
|
4
|
+
constructor(message: string, type?: OTPErrorType);
|
|
5
|
+
static invalidCode(message?: string): OTPError;
|
|
6
|
+
static invalidEmail(message?: string): OTPError;
|
|
7
|
+
}
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,309 @@
|
|
|
1
|
+
var $ = Object.defineProperty;
|
|
2
|
+
var z = (t, o, n) => o in t ? $(t, o, { enumerable: !0, configurable: !0, writable: !0, value: n }) : t[o] = n;
|
|
3
|
+
var P = (t, o, n) => z(t, typeof o != "symbol" ? o + "" : o, n);
|
|
4
|
+
import { jsx as a, jsxs as x } from "react/jsx-runtime";
|
|
5
|
+
import S, { useMemo as N, useState as O, useCallback as B } from "react";
|
|
6
|
+
import { a as D, F as L, g as R } from "../../FormStack-B4QOuYgO.js";
|
|
7
|
+
import { s as G } from "../../zod-BMNoK3aM.js";
|
|
8
|
+
import { e as V } from "../../index.esm-CXA6i4d7.js";
|
|
9
|
+
import { z as v } from "../../vendors/zod.js";
|
|
10
|
+
import { B as E } from "../../Button-Dg89xRSi.js";
|
|
11
|
+
import { T as A } from "../../TextInput-Cj50ImXi.js";
|
|
12
|
+
import { c as j } from "../../cn-dsXlqdJg.js";
|
|
13
|
+
import { T as I } from "../../index-BVqs-uqP.js";
|
|
14
|
+
import { L as k } from "../../loader-circle-D1YXTEGq.js";
|
|
15
|
+
import { c as q, I as H, a as J, b as K } from "../../InputOTP-B2e1nfSO.js";
|
|
16
|
+
class w extends Error {
|
|
17
|
+
constructor(n, r = "invalid_code") {
|
|
18
|
+
super(n);
|
|
19
|
+
P(this, "type");
|
|
20
|
+
this.type = r, this.name = "OTPError", Object.setPrototypeOf(this, w.prototype);
|
|
21
|
+
}
|
|
22
|
+
// Factory методы для удобства
|
|
23
|
+
static invalidCode(n = "Неверный код подтверждения") {
|
|
24
|
+
return new w(n, "invalid_code");
|
|
25
|
+
}
|
|
26
|
+
static invalidEmail(n = "Неверный email") {
|
|
27
|
+
return new w(n, "invalid_email");
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
const Q = I({
|
|
31
|
+
slots: {
|
|
32
|
+
button: "w-full",
|
|
33
|
+
iconButton: "animate-spin"
|
|
34
|
+
}
|
|
35
|
+
}), _ = S.forwardRef((t, o) => {
|
|
36
|
+
const {
|
|
37
|
+
defaultEmail: n,
|
|
38
|
+
emailPlaceholder: r = "you@company.com",
|
|
39
|
+
emailLabel: e = "Email",
|
|
40
|
+
emailDescription: i,
|
|
41
|
+
sendButtonText: p = "Отправить",
|
|
42
|
+
onSendCode: f,
|
|
43
|
+
onEmailChange: g,
|
|
44
|
+
showSendButton: u = !0,
|
|
45
|
+
labelClassName: h,
|
|
46
|
+
emailValidation: y
|
|
47
|
+
} = t, [s, b] = S.useState(!1), l = Q(), d = v.object({
|
|
48
|
+
email: y || v.string().email("Введите корректный email")
|
|
49
|
+
}), C = V({
|
|
50
|
+
resolver: G(d),
|
|
51
|
+
defaultValues: {
|
|
52
|
+
email: n || ""
|
|
53
|
+
}
|
|
54
|
+
}), m = async (c) => {
|
|
55
|
+
b(!0);
|
|
56
|
+
try {
|
|
57
|
+
await f?.(c.email);
|
|
58
|
+
} catch (T) {
|
|
59
|
+
if (T instanceof w && T.type === "invalid_email") {
|
|
60
|
+
C.setError("email", {
|
|
61
|
+
type: "manual",
|
|
62
|
+
message: T.message
|
|
63
|
+
});
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
throw T;
|
|
67
|
+
} finally {
|
|
68
|
+
b(!1);
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
return /* @__PURE__ */ a(D, { asChild: !0, ...C, children: /* @__PURE__ */ a("form", { ref: o, onSubmit: C.handleSubmit(m), noValidate: !0, children: /* @__PURE__ */ x(L, { children: [
|
|
72
|
+
/* @__PURE__ */ a(
|
|
73
|
+
R,
|
|
74
|
+
{
|
|
75
|
+
name: "email",
|
|
76
|
+
title: e,
|
|
77
|
+
description: i,
|
|
78
|
+
labelClassName: h,
|
|
79
|
+
control: ({ field: c }) => /* @__PURE__ */ a(
|
|
80
|
+
A,
|
|
81
|
+
{
|
|
82
|
+
type: y ? "text" : "email",
|
|
83
|
+
placeholder: r,
|
|
84
|
+
showClearIcon: !0,
|
|
85
|
+
...c,
|
|
86
|
+
onChange: (T) => {
|
|
87
|
+
c.onChange(T), g?.(T || "");
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
)
|
|
91
|
+
}
|
|
92
|
+
),
|
|
93
|
+
u && /* @__PURE__ */ a(
|
|
94
|
+
E,
|
|
95
|
+
{
|
|
96
|
+
type: "submit",
|
|
97
|
+
disabled: !C.getValues("email") || s,
|
|
98
|
+
startIcon: s ? k : void 0,
|
|
99
|
+
className: l.button(),
|
|
100
|
+
iconClassName: j(s && l.iconButton()),
|
|
101
|
+
children: p
|
|
102
|
+
}
|
|
103
|
+
)
|
|
104
|
+
] }) }) });
|
|
105
|
+
});
|
|
106
|
+
_.displayName = "EmailForm";
|
|
107
|
+
const F = {
|
|
108
|
+
otpLabel: "Код доступа",
|
|
109
|
+
confirmButtonText: "Подтвердить",
|
|
110
|
+
showConfirmButton: !0
|
|
111
|
+
}, U = I({
|
|
112
|
+
slots: {
|
|
113
|
+
button: "w-full",
|
|
114
|
+
iconButton: "animate-spin"
|
|
115
|
+
}
|
|
116
|
+
}), W = (t) => {
|
|
117
|
+
const {
|
|
118
|
+
otpFormat: o = "3-3",
|
|
119
|
+
autoSubmit: n = !0,
|
|
120
|
+
otpLabel: r = F.otpLabel,
|
|
121
|
+
otpDescription: e,
|
|
122
|
+
confirmButtonText: i = F.confirmButtonText,
|
|
123
|
+
onConfirmCode: p,
|
|
124
|
+
showConfirmButton: f = F.showConfirmButton,
|
|
125
|
+
labelClassName: g
|
|
126
|
+
} = t, u = N(() => X(o), [o]), h = N(() => u.reduce((m, c) => m + c, 0), [u]), y = U(), [s, b] = S.useState(!1), l = V(), d = async (m) => {
|
|
127
|
+
if (p) {
|
|
128
|
+
b(!0);
|
|
129
|
+
try {
|
|
130
|
+
await p(m.otp);
|
|
131
|
+
} catch (c) {
|
|
132
|
+
if (c instanceof w && c.type === "invalid_code") {
|
|
133
|
+
l.setError("otp", {
|
|
134
|
+
type: "manual",
|
|
135
|
+
message: c.message
|
|
136
|
+
});
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
139
|
+
throw c;
|
|
140
|
+
} finally {
|
|
141
|
+
b(!1);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}, C = (m) => {
|
|
145
|
+
l.clearErrors("otp"), l.setValue("otp", m), m.length === h && n && l.handleSubmit(d)();
|
|
146
|
+
};
|
|
147
|
+
return /* @__PURE__ */ a(D, { asChild: !0, ...l, children: /* @__PURE__ */ a("form", { onSubmit: l.handleSubmit(d), noValidate: !0, children: /* @__PURE__ */ x(L, { children: [
|
|
148
|
+
/* @__PURE__ */ a(
|
|
149
|
+
R,
|
|
150
|
+
{
|
|
151
|
+
name: "otp",
|
|
152
|
+
title: r,
|
|
153
|
+
description: e,
|
|
154
|
+
labelClassName: g,
|
|
155
|
+
control: ({ field: m }) => /* @__PURE__ */ a(q, { autoFocus: !0, maxLength: h, ...m, onChange: C, children: Y(u) })
|
|
156
|
+
}
|
|
157
|
+
),
|
|
158
|
+
f && /* @__PURE__ */ a(
|
|
159
|
+
E,
|
|
160
|
+
{
|
|
161
|
+
type: "submit",
|
|
162
|
+
disabled: s || l.getValues("otp")?.length !== h,
|
|
163
|
+
startIcon: s ? k : void 0,
|
|
164
|
+
className: y.button(),
|
|
165
|
+
iconClassName: j(s && y.iconButton()),
|
|
166
|
+
children: i
|
|
167
|
+
}
|
|
168
|
+
)
|
|
169
|
+
] }) }) });
|
|
170
|
+
}, X = (t, o = [3, 3], n) => {
|
|
171
|
+
if (!t.includes("-")) {
|
|
172
|
+
const e = parseInt(t, 10);
|
|
173
|
+
return isNaN(e) || e <= 0 ? o : [e];
|
|
174
|
+
}
|
|
175
|
+
return t.split("-").map((e) => {
|
|
176
|
+
const i = parseInt(e, 10);
|
|
177
|
+
return isNaN(i) || i <= 0 ? 1 : i;
|
|
178
|
+
});
|
|
179
|
+
}, Y = (t) => {
|
|
180
|
+
let o = 0;
|
|
181
|
+
return t.map((n, r) => {
|
|
182
|
+
const e = Array.from({ length: n }, () => /* @__PURE__ */ a(H, { index: o++ }, o)), i = /* @__PURE__ */ a(K, { children: e }, `group-${r}`);
|
|
183
|
+
return r < t.length - 1 ? /* @__PURE__ */ x(S.Fragment, { children: [
|
|
184
|
+
i,
|
|
185
|
+
/* @__PURE__ */ a(J, {})
|
|
186
|
+
] }, `fragment-${r}`) : i;
|
|
187
|
+
});
|
|
188
|
+
}, Z = I({
|
|
189
|
+
slots: {
|
|
190
|
+
button: "w-full"
|
|
191
|
+
}
|
|
192
|
+
}), M = S.forwardRef((t, o) => {
|
|
193
|
+
const {
|
|
194
|
+
lastSentTime: n,
|
|
195
|
+
resendDelay: r = 60,
|
|
196
|
+
resendButtonText: e = "Отправить код повторно",
|
|
197
|
+
resendCountdownText: i = (d) => `Отправить код повторно через ${d} сек.`,
|
|
198
|
+
onResend: p
|
|
199
|
+
} = t, [f, g] = S.useState(0), [u, h] = S.useState(!1), y = Z();
|
|
200
|
+
S.useEffect(() => {
|
|
201
|
+
if (!n) {
|
|
202
|
+
g(0);
|
|
203
|
+
return;
|
|
204
|
+
}
|
|
205
|
+
const d = () => {
|
|
206
|
+
const m = Math.floor((Date.now() - n) / 1e3), c = Math.max(0, r - m);
|
|
207
|
+
g(c);
|
|
208
|
+
};
|
|
209
|
+
d();
|
|
210
|
+
const C = setInterval(d, 1e3);
|
|
211
|
+
return () => clearInterval(C);
|
|
212
|
+
}, [n, r]);
|
|
213
|
+
const s = async () => {
|
|
214
|
+
if (!(f > 0)) {
|
|
215
|
+
h(!0);
|
|
216
|
+
try {
|
|
217
|
+
await p?.();
|
|
218
|
+
} catch (d) {
|
|
219
|
+
console.error("Error resending code:", d);
|
|
220
|
+
} finally {
|
|
221
|
+
h(!1);
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
}, b = f > 0 || u, l = f > 0 ? i(f) : e;
|
|
225
|
+
return /* @__PURE__ */ a(
|
|
226
|
+
E,
|
|
227
|
+
{
|
|
228
|
+
ref: o,
|
|
229
|
+
onClick: s,
|
|
230
|
+
disabled: b,
|
|
231
|
+
variant: "link",
|
|
232
|
+
type: "button",
|
|
233
|
+
className: y.button(),
|
|
234
|
+
children: l
|
|
235
|
+
}
|
|
236
|
+
);
|
|
237
|
+
});
|
|
238
|
+
M.displayName = "ResendButton";
|
|
239
|
+
const tt = (t) => {
|
|
240
|
+
const { onSendCode: o, onConfirmCode: n } = t, { labelClassName: r = "w-24" } = t, [e, i] = O(null), [p, f] = O(null), g = B(
|
|
241
|
+
(s) => {
|
|
242
|
+
e && s !== e && i(null);
|
|
243
|
+
},
|
|
244
|
+
[e]
|
|
245
|
+
), u = B(
|
|
246
|
+
async (s, b = !1) => {
|
|
247
|
+
try {
|
|
248
|
+
await o?.(s, b), f(Date.now()), i(s);
|
|
249
|
+
} catch (l) {
|
|
250
|
+
throw console.error("Error sending code:", l), l;
|
|
251
|
+
}
|
|
252
|
+
},
|
|
253
|
+
[o]
|
|
254
|
+
), h = B(async () => {
|
|
255
|
+
e && await u(e, !0);
|
|
256
|
+
}, [u, e]), y = B(
|
|
257
|
+
async (s) => {
|
|
258
|
+
await n?.({ email: e, otp: s });
|
|
259
|
+
},
|
|
260
|
+
[n, e]
|
|
261
|
+
);
|
|
262
|
+
return /* @__PURE__ */ x(L, { children: [
|
|
263
|
+
/* @__PURE__ */ a(
|
|
264
|
+
_,
|
|
265
|
+
{
|
|
266
|
+
defaultEmail: t.defaultEmail,
|
|
267
|
+
emailPlaceholder: t.emailPlaceholder,
|
|
268
|
+
emailLabel: t.emailLabel,
|
|
269
|
+
emailDescription: t.emailDescription,
|
|
270
|
+
onEmailChange: g,
|
|
271
|
+
sendButtonText: t.sendButtonText,
|
|
272
|
+
onSendCode: u,
|
|
273
|
+
showSendButton: !e,
|
|
274
|
+
labelClassName: r,
|
|
275
|
+
emailValidation: t.emailValidation
|
|
276
|
+
}
|
|
277
|
+
),
|
|
278
|
+
e && /* @__PURE__ */ a(
|
|
279
|
+
W,
|
|
280
|
+
{
|
|
281
|
+
otpFormat: t.otpFormat,
|
|
282
|
+
autoSubmit: t.autoSubmit,
|
|
283
|
+
pasteTransformer: t.pasteTransformer,
|
|
284
|
+
otpLabel: t.otpLabel,
|
|
285
|
+
otpDescription: t.otpDescription,
|
|
286
|
+
confirmButtonText: t.confirmButtonText,
|
|
287
|
+
onConfirmCode: y,
|
|
288
|
+
labelClassName: r
|
|
289
|
+
},
|
|
290
|
+
p
|
|
291
|
+
),
|
|
292
|
+
e && /* @__PURE__ */ a(
|
|
293
|
+
M,
|
|
294
|
+
{
|
|
295
|
+
resendDelay: t.resendDelay,
|
|
296
|
+
resendButtonText: t.resendButtonText,
|
|
297
|
+
resendCountdownText: t.resendCountdownText,
|
|
298
|
+
onResend: h,
|
|
299
|
+
lastSentTime: p
|
|
300
|
+
}
|
|
301
|
+
)
|
|
302
|
+
] });
|
|
303
|
+
};
|
|
304
|
+
tt.displayName = "OTPForm";
|
|
305
|
+
export {
|
|
306
|
+
w as OTPError,
|
|
307
|
+
tt as OTPForm
|
|
308
|
+
};
|
|
309
|
+
//# sourceMappingURL=otp-form.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"otp-form.js","sources":["../../../src/blocks/auth/otp-form/utils/OTPError.ts","../../../src/blocks/auth/otp-form/components/EmailForm.tsx","../../../src/blocks/auth/otp-form/components/OTPInputForm.tsx","../../../src/blocks/auth/otp-form/components/ResendButton.tsx","../../../src/blocks/auth/otp-form/OTPForm.tsx"],"sourcesContent":["type OTPErrorType = \"invalid_code\" | \"invalid_email\";\n\nexport class OTPError extends Error {\n\tpublic readonly type: OTPErrorType;\n\n\tconstructor(message: string, type: OTPErrorType = \"invalid_code\") {\n\t\tsuper(message);\n\t\tthis.type = type;\n\t\tthis.name = \"OTPError\";\n\n\t\t// Необходимо для правильного instanceof в TypeScript\n\t\tObject.setPrototypeOf(this, OTPError.prototype);\n\t}\n\n\t// Factory методы для удобства\n\tstatic invalidCode(message: string = \"Неверный код подтверждения\"): OTPError {\n\t\treturn new OTPError(message, \"invalid_code\");\n\t}\n\n\tstatic invalidEmail(message: string = \"Неверный email\"): OTPError {\n\t\treturn new OTPError(message, \"invalid_email\");\n\t}\n}\n","import { zodResolver } from \"@hookform/resolvers/zod\";\nimport React from \"react\";\nimport { useForm } from \"react-hook-form\";\nimport { z } from \"zod\";\n\nimport { Button } from \"@/components/button/button/Button\";\nimport { Form, FormField, FormStack } from \"@/components/form\";\nimport { TextInput } from \"@/components/input/text-input/TextInput\";\nimport { LoaderCircle } from \"lucide-react\";\nimport { cn } from \"@/lib/utils\";\nimport { tv } from \"tailwind-variants\";\nimport { OTPError } from \"../utils/OTPError\";\n\ntype EmailFormData = {\n\temail: string;\n};\n\nexport interface EmailFormProps {\n\t/** Предустановленный email */\n\tdefaultEmail?: string;\n\t/** Плейсхолдер для email поля */\n\temailPlaceholder?: string;\n\t/** Лейбл для email поля */\n\temailLabel?: string;\n\t/** Описание email поля */\n\temailDescription?: string;\n\t/** Текст кнопки отправки */\n\tsendButtonText?: string;\n\t/** Колбек отправки кода. Вызывается при нажатии на кнопку \"Отправить\", если email валидный. */\n\tonSendCode?: (email: string) => Promise<void> | void;\n\t/** Колбек изменения email */\n\tonEmailChange?: (email: string) => void;\n\t/** Показывать ли кнопку отправки */\n\tshowSendButton?: boolean;\n\t/** Классы для лейбла */\n\tlabelClassName?: string;\n\t/** Схема валидации для email поля */\n\temailValidation?: z.ZodString;\n}\n\nconst emailFormStyles = tv({\n\tslots: {\n\t\tbutton: \"w-full\",\n\t\ticonButton: \"animate-spin\"\n\t}\n});\n\nexport const EmailForm = React.forwardRef<HTMLFormElement, EmailFormProps>((props, ref) => {\n\tconst {\n\t\tdefaultEmail,\n\t\temailPlaceholder = \"you@company.com\",\n\t\temailLabel = \"Email\",\n\t\temailDescription,\n\t\tsendButtonText = \"Отправить\",\n\t\tonSendCode,\n\t\tonEmailChange,\n\t\tshowSendButton = true,\n\t\tlabelClassName,\n\t\temailValidation\n\t} = props;\n\n\tconst [isLoading, setIsLoading] = React.useState(false);\n\tconst styles = emailFormStyles();\n\n\tconst validationSchema = z.object({\n\t\temail: emailValidation || z.string().email(\"Введите корректный email\")\n\t});\n\n\tconst form = useForm<EmailFormData>({\n\t\tresolver: zodResolver(validationSchema),\n\t\tdefaultValues: {\n\t\t\temail: defaultEmail || \"\"\n\t\t}\n\t});\n\n\tconst onSubmit = async (data: EmailFormData) => {\n\t\tsetIsLoading(true);\n\t\ttry {\n\t\t\tawait onSendCode?.(data.email);\n\t\t} catch (error) {\n\t\t\tif (error instanceof OTPError && error.type === \"invalid_email\") {\n\t\t\t\tform.setError(\"email\", {\n\t\t\t\t\ttype: \"manual\",\n\t\t\t\t\tmessage: error.message\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tthrow error;\n\t\t} finally {\n\t\t\tsetIsLoading(false);\n\t\t}\n\t};\n\n\treturn (\n\t\t<Form asChild {...form}>\n\t\t\t<form ref={ref} onSubmit={form.handleSubmit(onSubmit)} noValidate>\n\t\t\t\t<FormStack>\n\t\t\t\t\t<FormField\n\t\t\t\t\t\tname=\"email\"\n\t\t\t\t\t\ttitle={emailLabel}\n\t\t\t\t\t\tdescription={emailDescription}\n\t\t\t\t\t\tlabelClassName={labelClassName}\n\t\t\t\t\t\tcontrol={({ field }) => (\n\t\t\t\t\t\t\t<TextInput\n\t\t\t\t\t\t\t\ttype={emailValidation ? \"text\" : \"email\"}\n\t\t\t\t\t\t\t\tplaceholder={emailPlaceholder}\n\t\t\t\t\t\t\t\tshowClearIcon={true}\n\t\t\t\t\t\t\t\t{...field}\n\t\t\t\t\t\t\t\tonChange={(value) => {\n\t\t\t\t\t\t\t\t\tfield.onChange(value);\n\t\t\t\t\t\t\t\t\tonEmailChange?.(value || \"\");\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t/>\n\n\t\t\t\t\t{showSendButton && (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t\tdisabled={!form.getValues(\"email\") || isLoading}\n\t\t\t\t\t\t\tstartIcon={isLoading ? LoaderCircle : undefined}\n\t\t\t\t\t\t\tclassName={styles.button()}\n\t\t\t\t\t\t\ticonClassName={cn(isLoading && styles.iconButton())}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{sendButtonText}\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t)}\n\t\t\t\t</FormStack>\n\t\t\t</form>\n\t\t</Form>\n\t);\n});\n\nEmailForm.displayName = \"EmailForm\";\n","import React, { useMemo } from \"react\";\nimport { ControllerRenderProps, FieldValues, useForm } from \"react-hook-form\";\n\nimport { Button } from \"@/components/button/button/Button\";\nimport { Form, FormField, FormStack } from \"@/components/form\";\nimport { InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot } from \"@/components/input-otp\";\nimport { cn } from \"@/lib/utils\";\nimport { LoaderCircle } from \"lucide-react\";\nimport { OTPError } from \"../utils/OTPError\";\nimport { tv } from \"tailwind-variants\";\n\nexport type OTPRenderFunction = (field: ControllerRenderProps<FieldValues, string>) => React.ReactNode;\n\nexport interface OTPInputFormProps {\n\t/**\n\t * Формат группировки OTP кода\n\t * Примеры: \"3-3\" (XXX-XXX), \"4-4\" (XXXX-XXXX), \"6\" (XXXXXX)\n\t */\n\totpFormat?: string;\n\t/** Функция для обработки вставленного текста */\n\tpasteTransformer?: (text: string) => string;\n\t/** Автоотправка при заполнении OTP */\n\tautoSubmit?: boolean;\n\t/** Лейбл для OTP поля */\n\totpLabel?: string;\n\t/** Описание OTP поля */\n\totpDescription?: string;\n\t/** Текст кнопки подтверждения */\n\tconfirmButtonText?: string;\n\t/** Колбек подтверждения OTP */\n\tonConfirmCode?: (otp: string) => Promise<void> | void;\n\t/** Показывать ли кнопку подтверждения */\n\tshowConfirmButton?: boolean;\n\t/** Классы для лейбла */\n\tlabelClassName?: string;\n}\n\nconst defaultProps: Required<Pick<OTPInputFormProps, \"otpLabel\" | \"confirmButtonText\" | \"showConfirmButton\">> = {\n\totpLabel: \"Код доступа\",\n\tconfirmButtonText: \"Подтвердить\",\n\tshowConfirmButton: true\n};\n\ntype OTPFormData = {\n\totp: string;\n};\n\nconst OTPInputFormStyles = tv({\n\tslots: {\n\t\tbutton: \"w-full\",\n\t\ticonButton: \"animate-spin\"\n\t}\n});\n\nexport const OTPInputForm = (props: OTPInputFormProps) => {\n\tconst {\n\t\totpFormat = \"3-3\",\n\t\tautoSubmit = true,\n\t\totpLabel = defaultProps.otpLabel,\n\t\totpDescription,\n\t\tconfirmButtonText = defaultProps.confirmButtonText,\n\t\tonConfirmCode,\n\t\tshowConfirmButton = defaultProps.showConfirmButton,\n\t\tlabelClassName\n\t} = props;\n\n\tconst otpGrouping = useMemo(() => parseOTPFormat(otpFormat), [otpFormat]);\n\tconst otpLength = useMemo(() => otpGrouping.reduce((acc, curr) => acc + curr, 0), [otpGrouping]);\n\tconst styles = OTPInputFormStyles();\n\n\tconst [isLoading, setIsLoading] = React.useState(false);\n\n\tconst form = useForm<OTPFormData>();\n\n\tconst onSubmit = async (data: OTPFormData) => {\n\t\tif (!onConfirmCode) return;\n\n\t\tsetIsLoading(true);\n\t\ttry {\n\t\t\tawait onConfirmCode(data.otp);\n\t\t} catch (error) {\n\t\t\t// Если это ошибка неправильного кода, показываем ошибку в поле\n\t\t\tif (error instanceof OTPError && error.type === \"invalid_code\") {\n\t\t\t\tform.setError(\"otp\", {\n\t\t\t\t\ttype: \"manual\",\n\t\t\t\t\tmessage: error.message\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tthrow error;\n\t\t} finally {\n\t\t\tsetIsLoading(false);\n\t\t}\n\t};\n\n\tconst handleOTPChange = (value: string) => {\n\t\t// Очищаем ошибки при изменении поля\n\t\tform.clearErrors(\"otp\");\n\n\t\tform.setValue(\"otp\", value);\n\t\tif (value.length === otpLength && autoSubmit) {\n\t\t\tform.handleSubmit(onSubmit)();\n\t\t}\n\t};\n\n\treturn (\n\t\t<Form asChild {...form}>\n\t\t\t<form onSubmit={form.handleSubmit(onSubmit)} noValidate>\n\t\t\t\t<FormStack>\n\t\t\t\t\t<FormField\n\t\t\t\t\t\tname=\"otp\"\n\t\t\t\t\t\ttitle={otpLabel}\n\t\t\t\t\t\tdescription={otpDescription}\n\t\t\t\t\t\tlabelClassName={labelClassName}\n\t\t\t\t\t\tcontrol={({ field }) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<InputOTP autoFocus={true} maxLength={otpLength} {...field} onChange={handleOTPChange}>\n\t\t\t\t\t\t\t\t\t{generateOTPSlots(otpGrouping)}\n\t\t\t\t\t\t\t\t</InputOTP>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\n\t\t\t\t\t{showConfirmButton && (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t\tdisabled={isLoading || form.getValues(\"otp\")?.length !== otpLength}\n\t\t\t\t\t\t\tstartIcon={isLoading ? LoaderCircle : undefined}\n\t\t\t\t\t\t\tclassName={styles.button()}\n\t\t\t\t\t\t\ticonClassName={cn(isLoading && styles.iconButton())}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{confirmButtonText}\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t)}\n\t\t\t\t</FormStack>\n\t\t\t</form>\n\t\t</Form>\n\t);\n};\n\nconst parseOTPFormat = (format: string, fallback: number[] = [3, 3], onError?: (error: string) => void): number[] => {\n\tif (!format.includes(\"-\")) {\n\t\t// Одна группа: \"6\" -> [6]\n\t\tconst length = parseInt(format, 10);\n\t\tif (isNaN(length) || length <= 0) {\n\t\t\tonError?.(`Неверный формат OTP: \"${format}\"`);\n\t\t\treturn fallback;\n\t\t}\n\t\treturn [length];\n\t}\n\n\t// Несколько групп: \"3-3\" -> [3, 3]\n\tconst groups = format.split(\"-\").map((group) => {\n\t\tconst size = parseInt(group, 10);\n\t\tif (isNaN(size) || size <= 0) {\n\t\t\tonError?.(`Неверный размер группы: \"${group}\" в формате \"${format}\"`);\n\t\t\treturn 1;\n\t\t}\n\t\treturn size;\n\t});\n\n\treturn groups;\n};\n\nconst generateOTPSlots = (grouping: number[]): React.ReactNode => {\n\tlet currentIndex = 0;\n\n\treturn grouping.map((groupSize, groupIndex) => {\n\t\tconst slots = Array.from({ length: groupSize }, () => (\n\t\t\t<InputOTPSlot key={currentIndex} index={currentIndex++} />\n\t\t));\n\n\t\tconst group = <InputOTPGroup key={`group-${groupIndex}`}>{slots}</InputOTPGroup>;\n\n\t\t// Добавляем разделитель между группами (кроме последней)\n\t\tif (groupIndex < grouping.length - 1) {\n\t\t\treturn (\n\t\t\t\t<React.Fragment key={`fragment-${groupIndex}`}>\n\t\t\t\t\t{group}\n\t\t\t\t\t<InputOTPSeparator />\n\t\t\t\t</React.Fragment>\n\t\t\t);\n\t\t}\n\n\t\treturn group;\n\t});\n};\n","import React from \"react\";\nimport { Button } from \"@/components/button/button/Button\";\nimport { tv } from \"tailwind-variants\";\n\nexport interface ResendButtonProps {\n\t/** Время последней отправки кода (timestamp) */\n\tlastSentTime?: number | null;\n\t/** Время задержки для повторной отправки в секундах */\n\tresendDelay?: number;\n\t/** Текст кнопки повторной отправки */\n\tresendButtonText?: string;\n\t/** Шаблон текста обратного отсчета */\n\tresendCountdownText?: (seconds: number) => string;\n\t/** Колбек повторной отправки кода */\n\tonResend?: () => Promise<void> | void;\n}\n\nconst resendButtonStyles = tv({\n\tslots: {\n\t\tbutton: \"w-full\"\n\t}\n});\n\nexport const ResendButton = React.forwardRef<HTMLButtonElement, ResendButtonProps>((props, ref) => {\n\tconst {\n\t\tlastSentTime,\n\t\tresendDelay = 60,\n\t\tresendButtonText = \"Отправить код повторно\",\n\t\tresendCountdownText = (seconds) => `Отправить код повторно через ${seconds} сек.`,\n\t\tonResend\n\t} = props;\n\n\tconst [remainingSeconds, setRemainingSeconds] = React.useState(0);\n\tconst [isLoading, setIsLoading] = React.useState(false);\n\n\tconst styles = resendButtonStyles();\n\n\t// Таймер обратного отсчета\n\tReact.useEffect(() => {\n\t\tif (!lastSentTime) {\n\t\t\tsetRemainingSeconds(0);\n\t\t\treturn;\n\t\t}\n\n\t\tconst updateCountdown = () => {\n\t\t\tconst elapsedSeconds = Math.floor((Date.now() - lastSentTime) / 1000);\n\t\t\tconst remaining = Math.max(0, resendDelay - elapsedSeconds);\n\t\t\tsetRemainingSeconds(remaining);\n\t\t};\n\n\t\tupdateCountdown();\n\t\tconst timer = setInterval(updateCountdown, 1000);\n\t\treturn () => clearInterval(timer);\n\t}, [lastSentTime, resendDelay]);\n\n\tconst handleResend = async () => {\n\t\tif (remainingSeconds > 0) return;\n\t\tsetIsLoading(true);\n\t\ttry {\n\t\t\tawait onResend?.();\n\t\t} catch (error) {\n\t\t\tconsole.error(\"Error resending code:\", error);\n\t\t} finally {\n\t\t\tsetIsLoading(false);\n\t\t}\n\t};\n\n\tconst isDisabled = remainingSeconds > 0 || isLoading;\n\tconst buttonText = remainingSeconds > 0 ? resendCountdownText(remainingSeconds) : resendButtonText;\n\n\treturn (\n\t\t<Button\n\t\t\tref={ref}\n\t\t\tonClick={handleResend}\n\t\t\tdisabled={isDisabled}\n\t\t\tvariant=\"link\"\n\t\t\ttype=\"button\"\n\t\t\tclassName={styles.button()}\n\t\t>\n\t\t\t{buttonText}\n\t\t</Button>\n\t);\n});\n\nResendButton.displayName = \"ResendButton\";\n","import React, { useCallback, useState } from \"react\";\nimport { FormStack } from \"@/components/form\";\nimport { EmailForm } from \"./components/EmailForm\";\nimport { OTPInputForm } from \"./components/OTPInputForm\";\nimport { ResendButton } from \"./components/ResendButton\";\nimport { z } from \"zod\";\n\nexport interface OTPFormProps {\n\t/**\n\t * Формат группировки OTP кода\n\t * Примеры: \"3-3\" (XXX-XXX), \"4-4\" (XXXX-XXXX), \"6\" (XXXXXX)\n\t */\n\totpFormat?: string;\n\t/** Автоотправка при заполнении OTP */\n\tautoSubmit?: boolean;\n\t/** Функция для обработки вставленного текста */\n\tpasteTransformer?: (text: string) => string;\n\t/** Время задержки для повторной отправки в секундах */\n\tresendDelay?: number;\n\t/** Плейсхолдер для email поля */\n\temailPlaceholder?: string;\n\t/** Лейбл для email поля */\n\temailLabel?: string;\n\t/** Описание email поля */\n\temailDescription?: string;\n\t/** Лейбл для OTP поля */\n\totpLabel?: string;\n\t/** Описание OTP поля */\n\totpDescription?: string;\n\t/** Текст кнопки отправки */\n\tsendButtonText?: string;\n\t/** Текст кнопки подтверждения */\n\tconfirmButtonText?: string;\n\t/** Текст кнопки повторной отправки */\n\tresendButtonText?: string;\n\t/** Шаблон текста обратного отсчета */\n\tresendCountdownText?: (seconds: number) => string;\n\t/** Предустановленный email */\n\tdefaultEmail?: string;\n\t/** Колбек отправки/повторной отправки кода */\n\tonSendCode?: (email: string, isResend?: boolean) => Promise<void> | void;\n\t/** Колбек подтверждения OTP */\n\tonConfirmCode?: (data: { email: string; otp: string }) => Promise<void> | void;\n\t/** CSS классы для стилизации лейбла. Позволяет настроить внешний вид лейбла, например ограничить ширину: \"w-24\" */\n\tlabelClassName?: string;\n\t/** Схема валидации для email поля */\n\temailValidation?: z.ZodString;\n}\n\nexport const OTPForm: React.FC<OTPFormProps> = (props) => {\n\tconst { onSendCode, onConfirmCode } = props;\n\tconst { labelClassName = \"w-24\" } = props;\n\n\t// Email адрес, на который был отправлен OTP код\n\tconst [targetEmail, setTargetEmail] = useState<string | null>(null);\n\tconst [lastSentTime, setLastSentTime] = useState<number | null>(null);\n\n\tconst onEmailChange = useCallback(\n\t\t(email: string) => {\n\t\t\t// Если email изменился, то сбрасываем состояние форм\n\t\t\tif (targetEmail && email !== targetEmail) {\n\t\t\t\tsetTargetEmail(null);\n\t\t\t}\n\t\t},\n\t\t[targetEmail]\n\t);\n\n\t// Обработчик отправки кода из EmailForm\n\tconst handleSendCode = useCallback(\n\t\tasync (email: string, isResend = false) => {\n\t\t\ttry {\n\t\t\t\tawait onSendCode?.(email, isResend);\n\t\t\t\tsetLastSentTime(Date.now());\n\t\t\t\t// Сохраняем email как активный адрес для OTP операций\n\t\t\t\tsetTargetEmail(email);\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error(\"Error sending code:\", error);\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t},\n\t\t[onSendCode]\n\t);\n\n\tconst handleResendCode = useCallback(async () => {\n\t\tif (targetEmail) {\n\t\t\tawait handleSendCode(targetEmail, true);\n\t\t}\n\t}, [handleSendCode, targetEmail]);\n\n\tconst handleOTPConfirm = useCallback(\n\t\tasync (otp: string) => {\n\t\t\tawait onConfirmCode?.({ email: targetEmail!, otp });\n\t\t},\n\t\t[onConfirmCode, targetEmail]\n\t);\n\n\treturn (\n\t\t<FormStack>\n\t\t\t<EmailForm\n\t\t\t\tdefaultEmail={props.defaultEmail}\n\t\t\t\temailPlaceholder={props.emailPlaceholder}\n\t\t\t\temailLabel={props.emailLabel}\n\t\t\t\temailDescription={props.emailDescription}\n\t\t\t\tonEmailChange={onEmailChange}\n\t\t\t\tsendButtonText={props.sendButtonText}\n\t\t\t\tonSendCode={handleSendCode}\n\t\t\t\tshowSendButton={!targetEmail}\n\t\t\t\tlabelClassName={labelClassName}\n\t\t\t\temailValidation={props.emailValidation}\n\t\t\t/>\n\n\t\t\t{targetEmail && (\n\t\t\t\t<OTPInputForm\n\t\t\t\t\t// key для пересоздания компонента, чтобы очистить поле и сфокусироваться на нём\n\t\t\t\t\tkey={lastSentTime}\n\t\t\t\t\totpFormat={props.otpFormat}\n\t\t\t\t\tautoSubmit={props.autoSubmit}\n\t\t\t\t\tpasteTransformer={props.pasteTransformer}\n\t\t\t\t\totpLabel={props.otpLabel}\n\t\t\t\t\totpDescription={props.otpDescription}\n\t\t\t\t\tconfirmButtonText={props.confirmButtonText}\n\t\t\t\t\tonConfirmCode={handleOTPConfirm}\n\t\t\t\t\tlabelClassName={labelClassName}\n\t\t\t\t/>\n\t\t\t)}\n\n\t\t\t{targetEmail && (\n\t\t\t\t<ResendButton\n\t\t\t\t\tresendDelay={props.resendDelay}\n\t\t\t\t\tresendButtonText={props.resendButtonText}\n\t\t\t\t\tresendCountdownText={props.resendCountdownText}\n\t\t\t\t\tonResend={handleResendCode}\n\t\t\t\t\tlastSentTime={lastSentTime}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</FormStack>\n\t);\n};\n\nOTPForm.displayName = \"OTPForm\";\n"],"names":["OTPError","message","type","__publicField","emailFormStyles","tv","EmailForm","React","props","ref","defaultEmail","emailPlaceholder","emailLabel","emailDescription","sendButtonText","onSendCode","onEmailChange","showSendButton","labelClassName","emailValidation","isLoading","setIsLoading","styles","validationSchema","z","form","useForm","zodResolver","onSubmit","data","error","Form","jsx","FormStack","FormField","field","TextInput","value","Button","LoaderCircle","cn","defaultProps","OTPInputFormStyles","OTPInputForm","otpFormat","autoSubmit","otpLabel","otpDescription","confirmButtonText","onConfirmCode","showConfirmButton","otpGrouping","useMemo","parseOTPFormat","otpLength","acc","curr","handleOTPChange","InputOTP","generateOTPSlots","format","fallback","onError","length","group","size","grouping","currentIndex","groupSize","groupIndex","slots","InputOTPSlot","InputOTPGroup","jsxs","InputOTPSeparator","resendButtonStyles","ResendButton","lastSentTime","resendDelay","resendButtonText","resendCountdownText","seconds","onResend","remainingSeconds","setRemainingSeconds","updateCountdown","elapsedSeconds","remaining","timer","handleResend","isDisabled","buttonText","OTPForm","targetEmail","setTargetEmail","useState","setLastSentTime","useCallback","email","handleSendCode","isResend","handleResendCode","handleOTPConfirm","otp"],"mappings":"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"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
function s(t) {
|
|
2
|
+
return (n = {}) => {
|
|
3
|
+
const e = n.width ? String(n.width) : t.defaultWidth;
|
|
4
|
+
return t.formats[e] || t.formats[t.defaultWidth];
|
|
5
|
+
};
|
|
6
|
+
}
|
|
7
|
+
function b(t) {
|
|
8
|
+
return (n, e) => {
|
|
9
|
+
const l = e?.context ? String(e.context) : "standalone";
|
|
10
|
+
let r;
|
|
11
|
+
if (l === "formatting" && t.formattingValues) {
|
|
12
|
+
const a = t.defaultFormattingWidth || t.defaultWidth, u = e?.width ? String(e.width) : a;
|
|
13
|
+
r = t.formattingValues[u] || t.formattingValues[a];
|
|
14
|
+
} else {
|
|
15
|
+
const a = t.defaultWidth, u = e?.width ? String(e.width) : t.defaultWidth;
|
|
16
|
+
r = t.values[u] || t.values[a];
|
|
17
|
+
}
|
|
18
|
+
const c = t.argumentCallback ? t.argumentCallback(n) : n;
|
|
19
|
+
return r[c];
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
function k(t) {
|
|
23
|
+
return (n, e = {}) => {
|
|
24
|
+
const l = e.width, r = l && t.matchPatterns[l] || t.matchPatterns[t.defaultMatchWidth], c = n.match(r);
|
|
25
|
+
if (!c)
|
|
26
|
+
return null;
|
|
27
|
+
const a = c[0], u = l && t.parsePatterns[l] || t.parsePatterns[t.defaultParseWidth], h = Array.isArray(u) ? m(u, (i) => i.test(a)) : (
|
|
28
|
+
// [TODO] -- I challenge you to fix the type
|
|
29
|
+
o(u, (i) => i.test(a))
|
|
30
|
+
);
|
|
31
|
+
let d;
|
|
32
|
+
d = t.valueCallback ? t.valueCallback(h) : h, d = e.valueCallback ? (
|
|
33
|
+
// [TODO] -- I challenge you to fix the type
|
|
34
|
+
e.valueCallback(d)
|
|
35
|
+
) : d;
|
|
36
|
+
const f = n.slice(a.length);
|
|
37
|
+
return { value: d, rest: f };
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
function o(t, n) {
|
|
41
|
+
for (const e in t)
|
|
42
|
+
if (Object.prototype.hasOwnProperty.call(t, e) && n(t[e]))
|
|
43
|
+
return e;
|
|
44
|
+
}
|
|
45
|
+
function m(t, n) {
|
|
46
|
+
for (let e = 0; e < t.length; e++)
|
|
47
|
+
if (n(t[e]))
|
|
48
|
+
return e;
|
|
49
|
+
}
|
|
50
|
+
function v(t) {
|
|
51
|
+
return (n, e = {}) => {
|
|
52
|
+
const l = n.match(t.matchPattern);
|
|
53
|
+
if (!l) return null;
|
|
54
|
+
const r = l[0], c = n.match(t.parsePattern);
|
|
55
|
+
if (!c) return null;
|
|
56
|
+
let a = t.valueCallback ? t.valueCallback(c[0]) : c[0];
|
|
57
|
+
a = e.valueCallback ? e.valueCallback(a) : a;
|
|
58
|
+
const u = n.slice(r.length);
|
|
59
|
+
return { value: a, rest: u };
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
export {
|
|
63
|
+
b as a,
|
|
64
|
+
s as b,
|
|
65
|
+
k as c,
|
|
66
|
+
v as d
|
|
67
|
+
};
|
|
68
|
+
//# sourceMappingURL=buildMatchPatternFn-d7GTeGl_.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildMatchPatternFn-d7GTeGl_.js","sources":["../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/_lib/buildFormatLongFn.js","../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/_lib/buildLocalizeFn.js","../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/_lib/buildMatchFn.js","../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js"],"sourcesContent":["export function buildFormatLongFn(args) {\n return (options = {}) => {\n // TODO: Remove String()\n const width = options.width ? String(options.width) : args.defaultWidth;\n const format = args.formats[width] || args.formats[args.defaultWidth];\n return format;\n };\n}\n","/**\n * The localize function argument callback which allows to convert raw value to\n * the actual type.\n *\n * @param value - The value to convert\n *\n * @returns The converted value\n */\n\n/**\n * The map of localized values for each width.\n */\n\n/**\n * The index type of the locale unit value. It types conversion of units of\n * values that don't start at 0 (i.e. quarters).\n */\n\n/**\n * Converts the unit value to the tuple of values.\n */\n\n/**\n * The tuple of localized era values. The first element represents BC,\n * the second element represents AD.\n */\n\n/**\n * The tuple of localized quarter values. The first element represents Q1.\n */\n\n/**\n * The tuple of localized day values. The first element represents Sunday.\n */\n\n/**\n * The tuple of localized month values. The first element represents January.\n */\n\nexport function buildLocalizeFn(args) {\n return (value, options) => {\n const context = options?.context ? String(options.context) : \"standalone\";\n\n let valuesArray;\n if (context === \"formatting\" && args.formattingValues) {\n const defaultWidth = args.defaultFormattingWidth || args.defaultWidth;\n const width = options?.width ? String(options.width) : defaultWidth;\n\n valuesArray =\n args.formattingValues[width] || args.formattingValues[defaultWidth];\n } else {\n const defaultWidth = args.defaultWidth;\n const width = options?.width ? String(options.width) : args.defaultWidth;\n\n valuesArray = args.values[width] || args.values[defaultWidth];\n }\n const index = args.argumentCallback ? args.argumentCallback(value) : value;\n\n // @ts-expect-error - For some reason TypeScript just don't want to match it, no matter how hard we try. I challenge you to try to remove it!\n return valuesArray[index];\n };\n}\n","export function buildMatchFn(args) {\n return (string, options = {}) => {\n const width = options.width;\n\n const matchPattern =\n (width && args.matchPatterns[width]) ||\n args.matchPatterns[args.defaultMatchWidth];\n const matchResult = string.match(matchPattern);\n\n if (!matchResult) {\n return null;\n }\n const matchedString = matchResult[0];\n\n const parsePatterns =\n (width && args.parsePatterns[width]) ||\n args.parsePatterns[args.defaultParseWidth];\n\n const key = Array.isArray(parsePatterns)\n ? findIndex(parsePatterns, (pattern) => pattern.test(matchedString))\n : // [TODO] -- I challenge you to fix the type\n findKey(parsePatterns, (pattern) => pattern.test(matchedString));\n\n let value;\n\n value = args.valueCallback ? args.valueCallback(key) : key;\n value = options.valueCallback\n ? // [TODO] -- I challenge you to fix the type\n options.valueCallback(value)\n : value;\n\n const rest = string.slice(matchedString.length);\n\n return { value, rest };\n };\n}\n\nfunction findKey(object, predicate) {\n for (const key in object) {\n if (\n Object.prototype.hasOwnProperty.call(object, key) &&\n predicate(object[key])\n ) {\n return key;\n }\n }\n return undefined;\n}\n\nfunction findIndex(array, predicate) {\n for (let key = 0; key < array.length; key++) {\n if (predicate(array[key])) {\n return key;\n }\n }\n return undefined;\n}\n","export function buildMatchPatternFn(args) {\n return (string, options = {}) => {\n const matchResult = string.match(args.matchPattern);\n if (!matchResult) return null;\n const matchedString = matchResult[0];\n\n const parseResult = string.match(args.parsePattern);\n if (!parseResult) return null;\n let value = args.valueCallback\n ? args.valueCallback(parseResult[0])\n : parseResult[0];\n\n // [TODO] I challenge you to fix the type\n value = options.valueCallback ? options.valueCallback(value) : value;\n\n const rest = string.slice(matchedString.length);\n\n return { value, rest };\n };\n}\n"],"names":["buildFormatLongFn","args","options","width","buildLocalizeFn","value","context","valuesArray","defaultWidth","index","buildMatchFn","string","matchPattern","matchResult","matchedString","parsePatterns","key","findIndex","pattern","findKey","rest","object","predicate","array","buildMatchPatternFn","parseResult"],"mappings":"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","x_google_ignoreList":[0,1,2,3]}
|