@scbt-ecom/ui 0.95.1 → 0.95.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/configs/tailwindConfigBase.js +1 -1
- package/dist/lib/configs/tailwindConfigBase.js.map +1 -1
- package/dist/lib/configs/tailwindPresets/resetPreset.js +1 -1
- package/dist/lib/configs/tailwindPresets/resetPreset.js.map +1 -1
- package/dist/lib/exports/widget.js +1 -1
- package/dist/lib/shared/hooks/useClickOutside.js +1 -1
- package/dist/lib/shared/hooks/useClickOutside.js.map +1 -1
- package/dist/lib/shared/style.css +1 -1
- package/dist/lib/shared/ui/brandLogos/BrandLogos.js +1 -1
- package/dist/lib/shared/ui/brandLogos/BrandLogos.js.map +1 -1
- package/dist/lib/shared/ui/calendar/Calendar.js +1 -1
- package/dist/lib/shared/ui/calendar/Calendar.js.map +1 -1
- package/dist/lib/shared/ui/calendar/ui/Navigation.js +1 -1
- package/dist/lib/shared/ui/calendar/ui/Navigation.js.map +1 -1
- package/dist/lib/shared/ui/calendar/ui/selectDate/ui/Trigger.js +1 -1
- package/dist/lib/shared/ui/calendar/ui/selectDate/ui/Trigger.js.map +1 -1
- package/dist/lib/shared/ui/carousel/CarouselBase.js +1 -1
- package/dist/lib/shared/ui/carousel/CarouselBase.js.map +1 -1
- package/dist/lib/shared/ui/carousel/model/helpers.js +1 -1
- package/dist/lib/shared/ui/carousel/model/helpers.js.map +1 -1
- package/dist/lib/shared/ui/carousel/ui/CarouselContent.js +1 -1
- package/dist/lib/shared/ui/carousel/ui/CarouselContent.js.map +1 -1
- package/dist/lib/shared/ui/dialog/Dialog.js +1 -1
- package/dist/lib/shared/ui/dialog/Dialog.js.map +1 -1
- package/dist/lib/shared/ui/dropdownList/DropdownList.js +1 -1
- package/dist/lib/shared/ui/dropdownList/DropdownList.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/autocomplete/Autocomplete.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/autocomplete/Autocomplete.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/checkbox/CheckboxControl.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/checkbox/CheckboxControl.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/combobox/ComboboxControl.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/combobox/ComboboxControl.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/dayPickerControl.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/dayPickerControl.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/model/utils.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/model/utils.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/range.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/range.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/single.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/single.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/editor/model/helper.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/editor/model/helper.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/editor/ui/Editor.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/editor/ui/Editor.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/SetColor.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/SetColor.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/SetCoreCommands.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/SetCoreCommands.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/input/InputControl.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/input/InputControl.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/input/MaskInputControl.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/input/MaskInputControl.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/inputCurrency/InputCurrencyControl.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/inputCurrency/InputCurrencyControl.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/inputCurrency/ui/MenuTrigger.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/inputCurrency/ui/MenuTrigger.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/inputOtp/InputOtpControl.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/inputOtp/InputOtpControl.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/radio/RadioGroupControl.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/radio/RadioGroupControl.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/select/SelectControl.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/select/SelectControl.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/slider/SliderControl.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/slider/SliderControl.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/switch/SwitchControl.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/switch/SwitchControl.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/textarea/TextareaControl.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/textarea/TextareaControl.js.map +1 -1
- package/dist/lib/shared/ui/formElements/controlled/uploader/UploaderControl.js +1 -1
- package/dist/lib/shared/ui/formElements/controlled/uploader/UploaderControl.js.map +1 -1
- package/dist/lib/shared/ui/formElements/ui/fieldAttachment/ui/ValidateSlot.js +1 -1
- package/dist/lib/shared/ui/formElements/ui/fieldAttachment/ui/ValidateSlot.js.map +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.js.map +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/checkbox/Checkbox.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/checkbox/Checkbox.js.map +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/combobox/combobox.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/combobox/combobox.js.map +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/dayPicker/DayPicker.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/dayPicker/DayPicker.js.map +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/index.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/index.js.map +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/input/Input.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/input/Input.js.map +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/maskInput/MaskInput.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/maskInput/MaskInput.js.map +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/select/Select.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/select/Select.js.map +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/select/ui/Chip.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/select/ui/Chip.js.map +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/slider/ui/sliderAlgorithmic/SliderAlgorithmic.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/slider/ui/sliderAlgorithmic/SliderAlgorithmic.js.map +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/slider/ui/sliderMarks/SliderMarks.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/slider/ui/sliderMarks/SliderMarks.js.map +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/slider/ui/sliderStep/SliderStep.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/slider/ui/sliderStep/SliderStep.js.map +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/uploader/UploaderBase.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/uploader/UploaderBase.js.map +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/uploader/model/hooks/useUploader.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/uploader/model/hooks/useUploader.js.map +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/uploader/ui/UploaderFile.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/uploader/ui/UploaderFile.js.map +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/uploader/ui/UploaderFilename.js +1 -1
- package/dist/lib/shared/ui/formElements/uncontrolled/uploader/ui/UploaderFilename.js.map +1 -1
- package/dist/lib/shared/ui/hint/Hint.js +1 -1
- package/dist/lib/shared/ui/hint/Hint.js.map +1 -1
- package/dist/lib/shared/ui/modal/ui/ModalHeader.js +1 -1
- package/dist/lib/shared/ui/modal/ui/ModalHeader.js.map +1 -1
- package/dist/lib/shared/ui/popover/Popover.js +1 -1
- package/dist/lib/shared/ui/popover/Popover.js.map +1 -1
- package/dist/lib/shared/ui/slot/ui/SlotClone.js +1 -1
- package/dist/lib/shared/ui/slot/ui/SlotClone.js.map +1 -1
- package/dist/lib/shared/ui/table/Desktop.js +1 -1
- package/dist/lib/shared/ui/table/Desktop.js.map +1 -1
- package/dist/lib/shared/ui/table/Table.js +1 -1
- package/dist/lib/shared/ui/table/Table.js.map +1 -1
- package/dist/lib/shared/ui/table/model/TableUtils.js +1 -1
- package/dist/lib/shared/ui/table/model/TableUtils.js.map +1 -1
- package/dist/lib/shared/ui/table/ui/dataTableColumnHeader/DataTableColumnHeader.js +1 -1
- package/dist/lib/shared/ui/table/ui/dataTableColumnHeader/DataTableColumnHeader.js.map +1 -1
- package/dist/lib/shared/ui/table/ui/editableCell/EditableCell.js +1 -1
- package/dist/lib/shared/ui/table/ui/editableCell/EditableCell.js.map +1 -1
- package/dist/lib/shared/utils/cn.js +1 -1
- package/dist/lib/shared/utils/cn.js.map +1 -1
- package/dist/lib/shared/validation/base/base.constants.js +1 -1
- package/dist/lib/shared/validation/base/base.constants.js.map +1 -1
- package/dist/lib/shared/validation/base/date.validators.js +1 -1
- package/dist/lib/shared/validation/base/date.validators.js.map +1 -1
- package/dist/lib/shared/validation/base/email.validators.js +1 -1
- package/dist/lib/shared/validation/base/email.validators.js.map +1 -1
- package/dist/lib/shared/validation/base/phone.validators.js +1 -1
- package/dist/lib/shared/validation/base/phone.validators.js.map +1 -1
- package/dist/lib/shared/validation/base/regex.validators.js +1 -1
- package/dist/lib/shared/validation/base/regex.validators.js.map +1 -1
- package/dist/lib/shared/validation/base/url.validators.js +1 -1
- package/dist/lib/shared/validation/base/url.validators.js.map +1 -1
- package/dist/lib/widgets/authProvider/AuthProvider.js +1 -1
- package/dist/lib/widgets/authProvider/AuthProvider.js.map +1 -1
- package/dist/lib/widgets/authProvider/ui/Esia.js +1 -1
- package/dist/lib/widgets/authProvider/ui/Esia.js.map +1 -1
- package/dist/lib/widgets/authProvider/ui/MobileId.js +1 -1
- package/dist/lib/widgets/authProvider/ui/MobileId.js.map +1 -1
- package/dist/lib/widgets/authProvider/ui/ui/AuthWrapper.js +1 -1
- package/dist/lib/widgets/authProvider/ui/ui/AuthWrapper.js.map +1 -1
- package/dist/lib/widgets/authProvider/ui/ui/Links.js +1 -1
- package/dist/lib/widgets/authProvider/ui/ui/Links.js.map +1 -1
- package/dist/lib/widgets/banner/index.js +1 -1
- package/dist/lib/widgets/banner/ui/banners/BannerImageFull.js +1 -1
- package/dist/lib/widgets/banner/ui/banners/BannerImageFull.js.map +1 -1
- package/dist/lib/widgets/banner/ui/banners/BannerWithSeparateImg.js +1 -1
- package/dist/lib/widgets/banner/ui/banners/BannerWithSeparateImg.js.map +1 -1
- package/dist/lib/widgets/banner/ui/banners/ui/Advantages.js +1 -1
- package/dist/lib/widgets/banner/ui/banners/ui/Advantages.js.map +1 -1
- package/dist/lib/widgets/benefit/Benefit.js +1 -1
- package/dist/lib/widgets/benefit/Benefit.js.map +1 -1
- package/dist/lib/widgets/benefit/ui/BenefitItem.js +1 -1
- package/dist/lib/widgets/benefit/ui/BenefitItem.js.map +1 -1
- package/dist/lib/widgets/breadcrumbs/Breadcrumb.js +1 -1
- package/dist/lib/widgets/breadcrumbs/Breadcrumb.js.map +1 -1
- package/dist/lib/widgets/breadcrumbs/Breadcrumbs.js +1 -1
- package/dist/lib/widgets/breadcrumbs/Breadcrumbs.js.map +1 -1
- package/dist/lib/widgets/buttonWithHandlers/ButtonWithHandlers.js +1 -1
- package/dist/lib/widgets/buttonWithHandlers/ButtonWithHandlers.js.map +1 -1
- package/dist/lib/widgets/buttonWithHandlers/model/useButtonHandler.js +1 -1
- package/dist/lib/widgets/buttonWithHandlers/model/useButtonHandler.js.map +1 -1
- package/dist/lib/widgets/calculator/Calculator.js +1 -1
- package/dist/lib/widgets/calculator/Calculator.js.map +1 -1
- package/dist/lib/widgets/calculator/model/helpers.js +1 -1
- package/dist/lib/widgets/calculator/model/helpers.js.map +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorFields/hooks/useAdditionalSlider.js +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorFields/hooks/useAdditionalSlider.js.map +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorFields/ui/AdditionalSlider.js +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorFields/ui/AdditionalSlider.js.map +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorFields/ui/CalculatorModal.js +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorFields/ui/CalculatorModal.js.map +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorInfo/CalculatorInfo.js +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorInfo/CalculatorInfo.js.map +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/AssistHint.js +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/AssistHint.js.map +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/CalculatorInfoHead.js +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/CalculatorInfoHead.js.map +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/InfoListItem.js +1 -1
- package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/InfoListItem.js.map +1 -1
- package/dist/lib/widgets/fallbacksView/FallbacksView.js +1 -1
- package/dist/lib/widgets/fallbacksView/FallbacksView.js.map +1 -1
- package/dist/lib/widgets/fallbacksView/model/helpers.js +1 -1
- package/dist/lib/widgets/fallbacksView/model/helpers.js.map +1 -1
- package/dist/lib/widgets/fieldMapper/FieldMapper.js +1 -1
- package/dist/lib/widgets/fieldMapper/FieldMapper.js.map +1 -1
- package/dist/lib/widgets/footer/Footer.js +1 -1
- package/dist/lib/widgets/footer/Footer.js.map +1 -1
- package/dist/lib/widgets/footer/ui/FooterLogo.js +1 -1
- package/dist/lib/widgets/footer/ui/FooterLogo.js.map +1 -1
- package/dist/lib/widgets/footer/ui/NavLinks.js +1 -1
- package/dist/lib/widgets/footer/ui/NavLinks.js.map +1 -1
- package/dist/lib/widgets/footer/ui/PhonesBlock.js +1 -1
- package/dist/lib/widgets/footer/ui/PhonesBlock.js.map +1 -1
- package/dist/lib/widgets/footer/ui/SiteMap.js +1 -1
- package/dist/lib/widgets/footer/ui/SiteMap.js.map +1 -1
- package/dist/lib/widgets/footer/ui/SocialLinks.js +1 -1
- package/dist/lib/widgets/footer/ui/SocialLinks.js.map +1 -1
- package/dist/lib/widgets/header/Header.js +1 -1
- package/dist/lib/widgets/header/Header.js.map +1 -1
- package/dist/lib/widgets/header/model/helpers.js +1 -1
- package/dist/lib/widgets/header/model/helpers.js.map +1 -1
- package/dist/lib/widgets/index.js +1 -1
- package/dist/lib/widgets/infoBlock/InfoBlock.js +1 -1
- package/dist/lib/widgets/infoBlock/InfoBlock.js.map +1 -1
- package/dist/lib/widgets/infoBlock/ui/LinksList.js +1 -1
- package/dist/lib/widgets/infoBlock/ui/LinksList.js.map +1 -1
- package/dist/lib/widgets/infoBlock/ui/RootContent.js +1 -1
- package/dist/lib/widgets/infoBlock/ui/RootContent.js.map +1 -1
- package/dist/lib/widgets/interLinking/InterLinking.js +1 -1
- package/dist/lib/widgets/interLinking/InterLinking.js.map +1 -1
- package/dist/lib/widgets/interLinking/ui/ColumnGroup.js +1 -1
- package/dist/lib/widgets/interLinking/ui/ColumnGroup.js.map +1 -1
- package/dist/lib/widgets/interLinking/ui/LinksList.js +1 -1
- package/dist/lib/widgets/interLinking/ui/LinksList.js.map +1 -1
- package/dist/lib/widgets/longBanner/LongBanner.js +1 -1
- package/dist/lib/widgets/longBanner/LongBanner.js.map +1 -1
- package/dist/lib/widgets/longBanner/ui/TextItem.js +1 -1
- package/dist/lib/widgets/longBanner/ui/TextItem.js.map +1 -1
- package/dist/lib/widgets/model/helpers.js +2 -2
- package/dist/lib/widgets/model/helpers.js.map +1 -1
- package/dist/lib/widgets/seoHeader/SeoHeader.js +1 -1
- package/dist/lib/widgets/seoHeader/SeoHeader.js.map +1 -1
- package/dist/lib/widgets/seoHeader/ui/desktop/CategoriesDesktop.js +1 -1
- package/dist/lib/widgets/seoHeader/ui/desktop/CategoriesDesktop.js.map +1 -1
- package/dist/lib/widgets/seoHeader/ui/desktop/rootTab/RootTab.js +1 -1
- package/dist/lib/widgets/seoHeader/ui/desktop/rootTab/RootTab.js.map +1 -1
- package/dist/lib/widgets/seoHeader/ui/desktop/tab/ui/content/TabContent.js +1 -1
- package/dist/lib/widgets/seoHeader/ui/desktop/tab/ui/content/TabContent.js.map +1 -1
- package/dist/lib/widgets/seoHeader/ui/mobile/CategoriesMobile.js +1 -1
- package/dist/lib/widgets/seoHeader/ui/mobile/CategoriesMobile.js.map +1 -1
- package/dist/lib/widgets/seoHeader/ui/mobile/menu/Menu.js +1 -1
- package/dist/lib/widgets/seoHeader/ui/mobile/menu/Menu.js.map +1 -1
- package/dist/lib/widgets/seoHeader/ui/mobile/menu/MenuItem.js +1 -1
- package/dist/lib/widgets/seoHeader/ui/mobile/menu/MenuItem.js.map +1 -1
- package/dist/lib/widgets/stepper/Stepper.js +1 -1
- package/dist/lib/widgets/stepper/Stepper.js.map +1 -1
- package/dist/lib/widgets/stepper/ui/StepperCarousel.js +1 -1
- package/dist/lib/widgets/stepper/ui/StepperCarousel.js.map +1 -1
- package/dist/lib/widgets/usefulInfo/UsefulInfo.js +1 -1
- package/dist/lib/widgets/usefulInfo/UsefulInfo.js.map +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/documents/Documents.js +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/documents/Documents.js.map +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/documents/ui/document/Document.js +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/documents/ui/document/Document.js.map +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/html/Html.js +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/html/Html.js.map +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/table/Table.js +1 -1
- package/dist/lib/widgets/usefulInfo/ui/subEntities/table/Table.js.map +1 -1
- package/dist/lib/widgets/userFeedback/UserFeedback.js +1 -1
- package/dist/lib/widgets/userFeedback/UserFeedback.js.map +1 -1
- package/dist/lib/widgets/userFeedback/ui/FeedbackTrigger.js +1 -1
- package/dist/lib/widgets/userFeedback/ui/FeedbackTrigger.js.map +1 -1
- package/dist/lib/widgets/userFeedback/ui/Finally.js +1 -1
- package/dist/lib/widgets/userFeedback/ui/Finally.js.map +1 -1
- package/dist/lib/widgets/userFeedback/ui/SelectRating.js +1 -1
- package/dist/lib/widgets/userFeedback/ui/SelectRating.js.map +1 -1
- package/dist/node_modules/@hookform/resolvers/dist/resolvers.js +2 -0
- package/dist/node_modules/@hookform/resolvers/dist/resolvers.js.map +1 -0
- package/dist/node_modules/@hookform/resolvers/zod/dist/zod.js +1 -1
- package/dist/node_modules/@hookform/resolvers/zod/dist/zod.js.map +1 -1
- package/dist/node_modules/@tanstack/query-core/build/modern/queryObserver.js +1 -1
- package/dist/node_modules/@tanstack/query-core/build/modern/queryObserver.js.map +1 -1
- package/dist/node_modules/@tiptap/react/dist/index.js.map +1 -1
- package/dist/node_modules/prosemirror-model/dist/index.js +3 -3
- package/dist/node_modules/prosemirror-model/dist/index.js.map +1 -1
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js +2 -0
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js.map +1 -0
- package/dist/node_modules/tailwindcss/plugin.js +1 -1
- package/dist/node_modules/tailwindcss-animate/index.js +2 -0
- package/dist/node_modules/tailwindcss-animate/index.js.map +1 -0
- package/dist/src/shared/utils/getDynamicSchema.js +1 -1
- package/dist/src/shared/utils/getDynamicSchema.js.map +1 -1
- package/dist/stats.html +1 -1
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helper.js","sources":["../../../../../../../../lib/shared/ui/formElements/controlled/editor/model/helper.tsx"],"sourcesContent":["import type { Editor } from '@tiptap/react'\nimport type { ColorOption, HeadingOptions } from './types'\nimport { Icon } from '$/shared/ui'\n\nexport const headingsOptions: HeadingOptions[] = [\n { shortcuts: ['ctrl', 'alt', '3'], level: 3 },\n { shortcuts: ['ctrl', 'alt', '4'], level: 4 }\n]\n\nexport const editorHeadingClasses: Record<number, string> = {\n 3: 'mob-title-bold-l desktop:desk-title-bold-l',\n 4: 'mob-title-bold-m desktop:desk-title-bold-s'\n}\n\nexport const editorAllowedColors: ColorOption[] = [\n '#292929',\n '#FFFFFF',\n '#40465A',\n '#5A6E85',\n '#A9B6C5',\n '#94A4B7',\n '#003790',\n '#042E73',\n '#809BC7',\n '#76BC21',\n '#F49F00',\n '#F42500'\n]\n\nexport const renderEditorPanel = (editor: Editor) => [\n {\n label: 'Жирный текст',\n icon: <Icon name='editor/bold' className='size-4' />,\n onClick: () => editor.chain().focus().toggleBold().run(),\n isActive: editor.isActive('bold')\n },\n {\n label: 'Курсивный текст',\n icon: <Icon name='editor/italic' className='size-4' />,\n onClick: () => editor.chain().focus().toggleItalic().run(),\n isActive: editor.isActive('italic')\n },\n {\n label: 'Подчеркнутый текст',\n icon: <Icon name='editor/underline' className='size-4' />,\n onClick: () => editor.chain().focus().toggleUnderline().run(),\n isActive: editor.isActive('underline')\n },\n {\n label: 'Зачеркнутый текст',\n icon: <Icon name='editor/strikethrough' className='size-4' />,\n onClick: () => editor.chain().focus().toggleStrike().run(),\n isActive: editor.isActive('strike')\n },\n {\n label: 'Обычный текст',\n icon: <Icon name='editor/typography' className='size-4' />,\n onClick: () => editor.chain().focus().setParagraph().run()\n },\n {\n label: 'Маркированный список',\n icon: <Icon name='editor/list' className='size-4' />,\n onClick: () => editor.chain().focus().toggleBulletList().run(),\n isActive: editor.isActive('bulletList')\n },\n {\n label: 'Перенос строки',\n icon: <Icon name='arrows/arrowDownRight' className='size-4' />,\n onClick: () => editor.chain().focus().setHardBreak().run()\n },\n\n {\n label: 'Отменить',\n icon: <Icon name='editor/undo' className='size-4' />,\n onClick: () => editor.chain().focus().undo().run()\n },\n {\n label: 'Вернуть',\n icon: <Icon name='editor/redo' className='size-4' />,\n onClick: () => editor.chain().focus().redo().run()\n },\n {\n label: 'Очистить стили и теги',\n icon: <Icon name='editor/removeFormatting' className='size-4' />,\n onClick: () => editor.chain().focus().clearNodes().unsetAllMarks().run()\n },\n {\n label: 'Удалить все',\n icon: <Icon name='general/close' className='size-4' />,\n onClick: () => editor.commands.clearContent()\n }\n]\n"],"names":["headingsOptions","editorHeadingClasses","editorAllowedColors","renderEditorPanel","editor","jsx","Icon"],"mappings":"
|
|
1
|
+
{"version":3,"file":"helper.js","sources":["../../../../../../../../lib/shared/ui/formElements/controlled/editor/model/helper.tsx"],"sourcesContent":["import type { Editor } from '@tiptap/react'\nimport type { ColorOption, HeadingOptions } from './types'\nimport { Icon } from '$/shared/ui'\n\nexport const headingsOptions: HeadingOptions[] = [\n { shortcuts: ['ctrl', 'alt', '3'], level: 3 },\n { shortcuts: ['ctrl', 'alt', '4'], level: 4 }\n]\n\nexport const editorHeadingClasses: Record<number, string> = {\n 3: 'mob-title-bold-l desktop:desk-title-bold-l',\n 4: 'mob-title-bold-m desktop:desk-title-bold-s'\n}\n\nexport const editorAllowedColors: ColorOption[] = [\n '#292929',\n '#FFFFFF',\n '#40465A',\n '#5A6E85',\n '#A9B6C5',\n '#94A4B7',\n '#003790',\n '#042E73',\n '#809BC7',\n '#76BC21',\n '#F49F00',\n '#F42500'\n]\n\nexport const renderEditorPanel = (editor: Editor) => [\n {\n label: 'Жирный текст',\n icon: <Icon name='editor/bold' className='size-4' />,\n onClick: () => editor.chain().focus().toggleBold().run(),\n isActive: editor.isActive('bold')\n },\n {\n label: 'Курсивный текст',\n icon: <Icon name='editor/italic' className='size-4' />,\n onClick: () => editor.chain().focus().toggleItalic().run(),\n isActive: editor.isActive('italic')\n },\n {\n label: 'Подчеркнутый текст',\n icon: <Icon name='editor/underline' className='size-4' />,\n onClick: () => editor.chain().focus().toggleUnderline().run(),\n isActive: editor.isActive('underline')\n },\n {\n label: 'Зачеркнутый текст',\n icon: <Icon name='editor/strikethrough' className='size-4' />,\n onClick: () => editor.chain().focus().toggleStrike().run(),\n isActive: editor.isActive('strike')\n },\n {\n label: 'Обычный текст',\n icon: <Icon name='editor/typography' className='size-4' />,\n onClick: () => editor.chain().focus().setParagraph().run()\n },\n {\n label: 'Маркированный список',\n icon: <Icon name='editor/list' className='size-4' />,\n onClick: () => editor.chain().focus().toggleBulletList().run(),\n isActive: editor.isActive('bulletList')\n },\n {\n label: 'Перенос строки',\n icon: <Icon name='arrows/arrowDownRight' className='size-4' />,\n onClick: () => editor.chain().focus().setHardBreak().run()\n },\n\n {\n label: 'Отменить',\n icon: <Icon name='editor/undo' className='size-4' />,\n onClick: () => editor.chain().focus().undo().run()\n },\n {\n label: 'Вернуть',\n icon: <Icon name='editor/redo' className='size-4' />,\n onClick: () => editor.chain().focus().redo().run()\n },\n {\n label: 'Очистить стили и теги',\n icon: <Icon name='editor/removeFormatting' className='size-4' />,\n onClick: () => editor.chain().focus().clearNodes().unsetAllMarks().run()\n },\n {\n label: 'Удалить все',\n icon: <Icon name='general/close' className='size-4' />,\n onClick: () => editor.commands.clearContent()\n }\n]\n"],"names":["headingsOptions","editorHeadingClasses","editorAllowedColors","renderEditorPanel","editor","jsx","Icon"],"mappings":"62CAIO,MAAMA,EAAoC,CAC/C,CAAE,UAAW,CAAC,OAAQ,MAAO,GAAG,EAAG,MAAO,CAAA,EAC1C,CAAE,UAAW,CAAC,OAAQ,MAAO,GAAG,EAAG,MAAO,CAAA,CAC5C,EAEaC,EAA+C,CAC1D,EAAG,6CACH,EAAG,4CACL,EAEaC,EAAqC,CAChD,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACF,EAEaC,EAAqBC,GAAmB,CACnD,CACE,MAAO,eACP,KAAMC,EAACC,EAAA,CAAK,KAAK,cAAc,UAAU,SAAS,EAClD,QAAS,IAAMF,EAAO,MAAA,EAAQ,QAAQ,WAAA,EAAa,IAAA,EACnD,SAAUA,EAAO,SAAS,MAAM,CAAA,EAElC,CACE,MAAO,kBACP,KAAMC,EAACC,EAAA,CAAK,KAAK,gBAAgB,UAAU,SAAS,EACpD,QAAS,IAAMF,EAAO,MAAA,EAAQ,QAAQ,aAAA,EAAe,IAAA,EACrD,SAAUA,EAAO,SAAS,QAAQ,CAAA,EAEpC,CACE,MAAO,qBACP,KAAMC,EAACC,EAAA,CAAK,KAAK,mBAAmB,UAAU,SAAS,EACvD,QAAS,IAAMF,EAAO,MAAA,EAAQ,QAAQ,gBAAA,EAAkB,IAAA,EACxD,SAAUA,EAAO,SAAS,WAAW,CAAA,EAEvC,CACE,MAAO,oBACP,KAAMC,EAACC,EAAA,CAAK,KAAK,uBAAuB,UAAU,SAAS,EAC3D,QAAS,IAAMF,EAAO,MAAA,EAAQ,QAAQ,aAAA,EAAe,IAAA,EACrD,SAAUA,EAAO,SAAS,QAAQ,CAAA,EAEpC,CACE,MAAO,gBACP,KAAMC,EAACC,EAAA,CAAK,KAAK,oBAAoB,UAAU,SAAS,EACxD,QAAS,IAAMF,EAAO,MAAA,EAAQ,MAAA,EAAQ,aAAA,EAAe,IAAA,CAAI,EAE3D,CACE,MAAO,uBACP,KAAMC,EAACC,EAAA,CAAK,KAAK,cAAc,UAAU,SAAS,EAClD,QAAS,IAAMF,EAAO,MAAA,EAAQ,QAAQ,iBAAA,EAAmB,IAAA,EACzD,SAAUA,EAAO,SAAS,YAAY,CAAA,EAExC,CACE,MAAO,iBACP,KAAMC,EAACC,EAAA,CAAK,KAAK,wBAAwB,UAAU,SAAS,EAC5D,QAAS,IAAMF,EAAO,MAAA,EAAQ,MAAA,EAAQ,aAAA,EAAe,IAAA,CAAI,EAG3D,CACE,MAAO,WACP,KAAMC,EAACC,EAAA,CAAK,KAAK,cAAc,UAAU,SAAS,EAClD,QAAS,IAAMF,EAAO,MAAA,EAAQ,MAAA,EAAQ,KAAA,EAAO,IAAA,CAAI,EAEnD,CACE,MAAO,UACP,KAAMC,EAACC,EAAA,CAAK,KAAK,cAAc,UAAU,SAAS,EAClD,QAAS,IAAMF,EAAO,MAAA,EAAQ,MAAA,EAAQ,KAAA,EAAO,IAAA,CAAI,EAEnD,CACE,MAAO,wBACP,KAAMC,EAACC,EAAA,CAAK,KAAK,0BAA0B,UAAU,SAAS,EAC9D,QAAS,IAAMF,EAAO,MAAA,EAAQ,MAAA,EAAQ,WAAA,EAAa,cAAA,EAAgB,IAAA,CAAI,EAEzE,CACE,MAAO,cACP,KAAMC,EAACC,EAAA,CAAK,KAAK,gBAAgB,UAAU,SAAS,EACpD,QAAS,IAAMF,EAAO,SAAS,aAAA,CAAa,CAEhD"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as f,jsx as p}from"react/jsx-runtime";import{forwardRef as w,useEffect as N}from"react";import{CharacterCount as C}from"../../../../../../../node_modules/@tiptap/extension-character-count/dist/index.js";import{useEditor as M,EditorContent as A}from"../../../../../../../node_modules/@tiptap/react/dist/index.js";import{editorConfig as L}from"../model/config.js";import{Toolbar as y}from"./Toolbar.js";import{cn as n}from"../../../../../utils/cn.js";import"../../../../button/Button.js";import"../../../../buttonIcon/ButtonIcon.js";import"../../../../calendar/Calendar.js";import"../../../../calendar/model/utils.js";import"../../../../accordion/Accordion.js";import"
|
|
1
|
+
import{jsxs as f,jsx as p}from"react/jsx-runtime";import{forwardRef as w,useEffect as N}from"react";import{CharacterCount as C}from"../../../../../../../node_modules/@tiptap/extension-character-count/dist/index.js";import{useEditor as M,EditorContent as A}from"../../../../../../../node_modules/@tiptap/react/dist/index.js";import{editorConfig as L}from"../model/config.js";import{Toolbar as y}from"./Toolbar.js";import{cn as n}from"../../../../../utils/cn.js";import"../../../../button/Button.js";import"../../../../buttonIcon/ButtonIcon.js";import"../../../../calendar/Calendar.js";import"../../../../calendar/model/utils.js";import"../../../../accordion/Accordion.js";import"react-dom";import"../../../../modal/ui/IframeModalContent.js";import"../../../../../../../node_modules/react-hot-toast/dist/index.js";import"../../../../table/ui/primitives/Primitives.js";import"../../../../carousel/ui/CarouselContent.js";import"../../../../slot/Slot.js";import"../../../uncontrolled/autocomplete/Autocomplete.js";import"../../../uncontrolled/checkbox/Checkbox.js";import"../../../../dropdownList/ui/dropdownItem/DropdownItem.js";import"../../../uncontrolled/input/Input.js";import"../../../uncontrolled/dayPicker/DayPicker.js";import"../../../uncontrolled/inputOtp/InputOtpBase.js";import"../../../uncontrolled/maskInput/MaskInput.js";import"../../../uncontrolled/radio/RadioGroup.js";import"../../../uncontrolled/radio/ui/RadioItem.js";import"../../../uncontrolled/select/Select.js";import"../../../uncontrolled/slider/SliderBase.js";import"../../../uncontrolled/switch/Switch.js";import"../../../uncontrolled/textarea/Textarea.js";import"../../../uncontrolled/uploader/UploaderBase.js";import"../../input/MaskInputControl.js";import{MessageView as U}from"../../../ui/MessageView.js";const k=Number.MAX_SAFE_INTEGER,ft=w(({onChange:l,value:e="",label:u,limit:d,error:r,classes:t,editable:a,helperText:b,shouldRerenderOnTransaction:g=!0,externalHandlers:c,...h},T)=>{const{onUpdate:x}=c||{},o=M({extensions:[...L,C.configure({limit:d??k})],editable:a,content:e,onUpdate:m=>{const{editor:i}=m,E=i!=null&&i.getText()?i==null?void 0:i.getHTML():"";l(E),x&&x(m)},editorProps:{transformPastedText(m){return m.replace(/\xA0/g," ")},transformPastedHTML(m){return m.replace(/\xA0/g," ")},attributes:{spellcheck:"false",class:n("p-4 outline-none bg-color-blue-grey-100 min-h-[240px] max-h-[500px] customScrollbar-y overflow-y-auto break-keep",t==null?void 0:t.editor)}},shouldRerenderOnTransaction:g,...h});return N(()=>{o&&o.getHTML()!==e&&o.commands.setContent(e)},[o,e]),o?f("div",{className:n("flex w-full flex-col",t==null?void 0:t.root),children:[f("div",{className:n("relative flex w-full flex-col rounded-md border border-solid border-warm-grey-200",t==null?void 0:t.wrapper),children:[p(y,{editor:o}),!e&&p("p",{className:n("absolute left-4 top-16 z-10 text-color-disabled",t==null?void 0:t.label),children:u}),p(A,{ref:T,editor:o}),d&&f("p",{className:"absolute bottom-4 right-4 text-color-disabled",children:[o.storage.characterCount.characters()," / ",d," символов"]})]}),p(U,{className:t==null?void 0:t.message,intent:r!=null&&r.message?"error":"simple",text:(r==null?void 0:r.message)||b,disabled:!a})]}):null});export{ft as Editor};
|
|
2
2
|
//# sourceMappingURL=Editor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Editor.js","sources":["../../../../../../../../lib/shared/ui/formElements/controlled/editor/ui/Editor.tsx"],"sourcesContent":["import { forwardRef, type ReactElement, useEffect } from 'react'\nimport { type FieldError } from 'react-hook-form'\nimport CharacterCount from '@tiptap/extension-character-count'\nimport { EditorContent, type EditorEvents, useEditor, type UseEditorOptions } from '@tiptap/react'\nimport { type EditorControlClasses } from '../EditorControl'\nimport { editorConfig } from '../model/config'\nimport { Toolbar } from './Toolbar'\nimport { MessageView } from '$/shared/ui/formElements/ui'\nimport { cn } from '$/shared/utils'\n\ntype ExternalHandlers = {\n onUpdate?: (editor: EditorEvents['update']) => void\n}\n\ninterface EditorProps extends Partial<UseEditorOptions> {\n onChange: (value: string) => void\n value: string\n error?: FieldError\n classes?: EditorControlClasses\n externalHandlers?: ExternalHandlers\n /**\n * Заголовок\n */\n label?: string\n helperText?: string | ReactElement\n limit?: number\n}\n\ntype EditorRef = React.ElementRef<typeof EditorContent>\n\nconst DEFAULT_LIMIT = Number.MAX_SAFE_INTEGER\n\nexport const Editor = forwardRef<EditorRef, EditorProps>(\n (\n {\n onChange,\n value = '',\n label,\n limit,\n error,\n classes,\n editable,\n helperText,\n shouldRerenderOnTransaction = true,\n externalHandlers,\n ...props\n },\n ref\n ) => {\n const { onUpdate: externalOnUpdate } = externalHandlers || {}\n\n const editor = useEditor({\n extensions: [\n ...editorConfig,\n CharacterCount.configure({\n limit: limit ?? DEFAULT_LIMIT\n })\n ],\n editable: editable,\n content: value,\n onUpdate: (props) => {\n const { editor } = props\n const content = editor?.getText() ? editor?.getHTML() : ''\n onChange(content)\n\n if (externalOnUpdate) {\n externalOnUpdate(props)\n }\n },\n editorProps: {\n transformPastedText(text) {\n return text.replace(/\\xA0/g, ' ')\n },\n transformPastedHTML(html) {\n return html.replace(/\\xA0/g, ' ')\n },\n attributes: {\n spellcheck: 'false',\n class: cn(\n 'p-4 outline-none bg-color-blue-grey-100 min-h-[240px] max-h-[500px] customScrollbar-y overflow-y-auto break-keep',\n classes?.editor\n )\n }\n },\n shouldRerenderOnTransaction,\n ...props\n })\n\n useEffect(() => {\n if (editor && editor.getHTML() !== value) {\n editor.commands.setContent(value)\n }\n }, [editor, value])\n\n if (!editor) {\n return null\n }\n\n return (\n <div className={cn('flex w-full flex-col', classes?.root)}>\n <div\n className={cn('relative flex w-full flex-col rounded-md border border-solid border-warm-grey-200', classes?.wrapper)}\n >\n <Toolbar editor={editor} />\n {!value && <p className={cn('absolute left-4 top-16 z-10 text-color-disabled', classes?.label)}>{label}</p>}\n <EditorContent ref={ref} editor={editor} />\n {limit && (\n <p className='absolute bottom-4 right-4 text-color-disabled'>\n {editor.storage.characterCount.characters()} / {limit} символов\n </p>\n )}\n </div>\n\n <MessageView\n className={classes?.message}\n intent={error?.message ? 'error' : 'simple'}\n text={error?.message || helperText}\n disabled={!editable}\n />\n </div>\n )\n }\n)\n"],"names":["DEFAULT_LIMIT","Editor","forwardRef","onChange","value","label","limit","error","classes","editable","helperText","shouldRerenderOnTransaction","externalHandlers","props","ref","externalOnUpdate","editor","useEditor","editorConfig","CharacterCount","content","text","html","cn","useEffect","jsxs","jsx","Toolbar","EditorContent","MessageView"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Editor.js","sources":["../../../../../../../../lib/shared/ui/formElements/controlled/editor/ui/Editor.tsx"],"sourcesContent":["import { forwardRef, type ReactElement, useEffect } from 'react'\nimport { type FieldError } from 'react-hook-form'\nimport CharacterCount from '@tiptap/extension-character-count'\nimport { EditorContent, type EditorEvents, useEditor, type UseEditorOptions } from '@tiptap/react'\nimport { type EditorControlClasses } from '../EditorControl'\nimport { editorConfig } from '../model/config'\nimport { Toolbar } from './Toolbar'\nimport { MessageView } from '$/shared/ui/formElements/ui'\nimport { cn } from '$/shared/utils'\n\ntype ExternalHandlers = {\n onUpdate?: (editor: EditorEvents['update']) => void\n}\n\ninterface EditorProps extends Partial<UseEditorOptions> {\n onChange: (value: string) => void\n value: string\n error?: FieldError\n classes?: EditorControlClasses\n externalHandlers?: ExternalHandlers\n /**\n * Заголовок\n */\n label?: string\n helperText?: string | ReactElement\n limit?: number\n}\n\ntype EditorRef = React.ElementRef<typeof EditorContent>\n\nconst DEFAULT_LIMIT = Number.MAX_SAFE_INTEGER\n\nexport const Editor = forwardRef<EditorRef, EditorProps>(\n (\n {\n onChange,\n value = '',\n label,\n limit,\n error,\n classes,\n editable,\n helperText,\n shouldRerenderOnTransaction = true,\n externalHandlers,\n ...props\n },\n ref\n ) => {\n const { onUpdate: externalOnUpdate } = externalHandlers || {}\n\n const editor = useEditor({\n extensions: [\n ...editorConfig,\n CharacterCount.configure({\n limit: limit ?? DEFAULT_LIMIT\n })\n ],\n editable: editable,\n content: value,\n onUpdate: (props) => {\n const { editor } = props\n const content = editor?.getText() ? editor?.getHTML() : ''\n onChange(content)\n\n if (externalOnUpdate) {\n externalOnUpdate(props)\n }\n },\n editorProps: {\n transformPastedText(text) {\n return text.replace(/\\xA0/g, ' ')\n },\n transformPastedHTML(html) {\n return html.replace(/\\xA0/g, ' ')\n },\n attributes: {\n spellcheck: 'false',\n class: cn(\n 'p-4 outline-none bg-color-blue-grey-100 min-h-[240px] max-h-[500px] customScrollbar-y overflow-y-auto break-keep',\n classes?.editor\n )\n }\n },\n shouldRerenderOnTransaction,\n ...props\n })\n\n useEffect(() => {\n if (editor && editor.getHTML() !== value) {\n editor.commands.setContent(value)\n }\n }, [editor, value])\n\n if (!editor) {\n return null\n }\n\n return (\n <div className={cn('flex w-full flex-col', classes?.root)}>\n <div\n className={cn('relative flex w-full flex-col rounded-md border border-solid border-warm-grey-200', classes?.wrapper)}\n >\n <Toolbar editor={editor} />\n {!value && <p className={cn('absolute left-4 top-16 z-10 text-color-disabled', classes?.label)}>{label}</p>}\n <EditorContent ref={ref} editor={editor} />\n {limit && (\n <p className='absolute bottom-4 right-4 text-color-disabled'>\n {editor.storage.characterCount.characters()} / {limit} символов\n </p>\n )}\n </div>\n\n <MessageView\n className={classes?.message}\n intent={error?.message ? 'error' : 'simple'}\n text={error?.message || helperText}\n disabled={!editable}\n />\n </div>\n )\n }\n)\n"],"names":["DEFAULT_LIMIT","Editor","forwardRef","onChange","value","label","limit","error","classes","editable","helperText","shouldRerenderOnTransaction","externalHandlers","props","ref","externalOnUpdate","editor","useEditor","editorConfig","CharacterCount","content","text","html","cn","useEffect","jsxs","jsx","Toolbar","EditorContent","MessageView"],"mappings":"qvDA8BA,MAAMA,EAAgB,OAAO,iBAEhBC,GAASC,EACpB,CACE,CACE,SAAAC,EACA,MAAAC,EAAQ,GACR,MAAAC,EACA,MAAAC,EACA,MAAAC,EACA,QAAAC,EACA,SAAAC,EACA,WAAAC,EACA,4BAAAC,EAA8B,GAC9B,iBAAAC,EACA,GAAGC,CAAA,EAELC,IACG,CACH,KAAM,CAAE,SAAUC,CAAA,EAAqBH,GAAoB,CAAA,EAErDI,EAASC,EAAU,CACvB,WAAY,CACV,GAAGC,EACHC,EAAe,UAAU,CACvB,MAAOb,GAASN,CAAA,CACjB,CAAA,EAEH,SAAAS,EACA,QAASL,EACT,SAAWS,GAAU,CACnB,KAAM,CAAE,OAAAG,CAAAA,EAAWH,EACbO,EAAUJ,GAAAA,MAAAA,EAAQ,UAAYA,GAAAA,YAAAA,EAAQ,UAAY,GACxDb,EAASiB,CAAO,EAEZL,GACFA,EAAiBF,CAAK,CAE1B,EACA,YAAa,CACX,oBAAoBQ,EAAM,CACxB,OAAOA,EAAK,QAAQ,QAAS,GAAG,CAClC,EACA,oBAAoBC,EAAM,CACxB,OAAOA,EAAK,QAAQ,QAAS,GAAG,CAClC,EACA,WAAY,CACV,WAAY,QACZ,MAAOC,EACL,mHACAf,GAAA,YAAAA,EAAS,MAAA,CACX,CACF,EAEF,4BAAAG,EACA,GAAGE,CAAA,CACJ,EAQD,OANAW,EAAU,IAAM,CACVR,GAAUA,EAAO,QAAA,IAAcZ,GACjCY,EAAO,SAAS,WAAWZ,CAAK,CAEpC,EAAG,CAACY,EAAQZ,CAAK,CAAC,EAEbY,IAKF,MAAA,CAAI,UAAWO,EAAG,uBAAwBf,GAAA,YAAAA,EAAS,IAAI,EACtD,SAAA,CAAAiB,EAAC,MAAA,CACC,UAAWF,EAAG,oFAAqFf,GAAA,YAAAA,EAAS,OAAO,EAEnH,SAAA,CAAAkB,EAACC,GAAQ,OAAAX,EAAgB,EACxB,CAACZ,GAASsB,EAAC,IAAA,CAAE,UAAWH,EAAG,kDAAmDf,GAAA,YAAAA,EAAS,KAAK,EAAI,SAAAH,CAAA,CAAM,EACvGqB,EAACE,EAAA,CAAc,IAAAd,EAAU,OAAAE,CAAA,CAAgB,EACxCV,GACCmB,EAAC,IAAA,CAAE,UAAU,gDACV,SAAA,CAAAT,EAAO,QAAQ,eAAe,WAAA,EAAa,MAAIV,EAAM,WAAA,CAAA,CACxD,CAAA,CAAA,CAAA,EAIJoB,EAACG,EAAA,CACC,UAAWrB,GAAA,YAAAA,EAAS,QACpB,OAAQD,GAAA,MAAAA,EAAO,QAAU,QAAU,SACnC,MAAMA,GAAA,YAAAA,EAAO,UAAWG,EACxB,SAAU,CAACD,CAAA,CAAA,CACb,EACF,EAxBO,IA0BX,CACF"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as r}from"react/jsx-runtime";import{editorAllowedColors as e}from"../../model/helper.js";import{cn as i}from"../../../../../../utils/cn.js";import"../../../../../button/Button.js";import"../../../../../buttonIcon/ButtonIcon.js";import"../../../../../calendar/Calendar.js";import"../../../../../calendar/model/utils.js";import"../../../../../accordion/Accordion.js";import"react";import
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";import{editorAllowedColors as e}from"../../model/helper.js";import{cn as i}from"../../../../../../utils/cn.js";import"../../../../../button/Button.js";import"../../../../../buttonIcon/ButtonIcon.js";import"../../../../../calendar/Calendar.js";import"../../../../../calendar/model/utils.js";import"../../../../../accordion/Accordion.js";import"react";import{Popover as m}from"../../../../../popover/Popover.js";import"react-dom";import"../../../../../modal/ui/IframeModalContent.js";import"../../../../../../../../node_modules/react-hot-toast/dist/index.js";import{Icon as p}from"../../../../../icon/Icon.js";import"../../../../../table/ui/primitives/Primitives.js";import"../../../../../carousel/ui/CarouselContent.js";import"../../../../../slot/Slot.js";import"../../../../uncontrolled/autocomplete/Autocomplete.js";import"../../../../uncontrolled/checkbox/Checkbox.js";import"../../../../../dropdownList/ui/dropdownItem/DropdownItem.js";import"../../../../uncontrolled/input/Input.js";import"../../../../uncontrolled/dayPicker/DayPicker.js";import"../../../../uncontrolled/inputOtp/InputOtpBase.js";import"../../../../uncontrolled/maskInput/MaskInput.js";import"../../../../uncontrolled/radio/RadioGroup.js";import"../../../../uncontrolled/radio/ui/RadioItem.js";import"../../../../uncontrolled/select/Select.js";import"../../../../uncontrolled/slider/SliderBase.js";import"../../../../uncontrolled/switch/Switch.js";import"../../../../uncontrolled/textarea/Textarea.js";import"../../../../uncontrolled/uploader/UploaderBase.js";import"../Editor.js";import"../../../input/MaskInputControl.js";const L=({editor:t})=>r(m,{classes:{content:"w-full max-w-[500px] bg-color-blue-grey-200 border border-solid border-warm-grey-300",arrowIcon:"fill-dark-hover"},triggerElement:r("span",{title:"Добавить цвет текста",className:"flex size-7 cursor-pointer items-center justify-center rounded-sm text-color-secondary outline-none transition-colors hover:bg-color-primary-hover hover:text-color-white",children:r(p,{name:"editor/palette",className:"size-4"})}),children:r("div",{className:"grid grid-cols-6 gap-3",children:e.map(o=>r("button",{type:"button",style:{background:o},onClick:()=>t.chain().focus().setColor(o).run(),className:i("desk-body-regular-m size-6 cursor-pointer rounded-full border border-solid border-transparent text-left outline-none transition-transform hover:scale-105",{"border-warm-grey-300":o==="#FFFFFF"})},o))})});export{L as SetColor};
|
|
2
2
|
//# sourceMappingURL=SetColor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SetColor.js","sources":["../../../../../../../../../lib/shared/ui/formElements/controlled/editor/ui/commands/SetColor.tsx"],"sourcesContent":["import type { Editor } from '@tiptap/react'\nimport { editorAllowedColors } from '../../model/helper'\nimport { Icon, Popover } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\ninterface ISetColorProps {\n editor: Editor\n}\n\nexport const SetColor = ({ editor }: ISetColorProps) => {\n return (\n <Popover\n classes={{\n content: 'w-full max-w-[500px] bg-color-blue-grey-200 border border-solid border-warm-grey-300',\n arrowIcon: 'fill-dark-hover'\n }}\n triggerElement={\n <span\n title='Добавить цвет текста'\n className='flex size-7 cursor-pointer items-center justify-center rounded-sm text-color-secondary outline-none transition-colors hover:bg-color-primary-hover hover:text-color-white'\n >\n <Icon name='editor/palette' className='size-4' />\n </span>\n }\n >\n <div className='grid grid-cols-6 gap-3'>\n {editorAllowedColors.map((color) => (\n <button\n key={color}\n type='button'\n style={{ background: color }}\n onClick={() => editor.chain().focus().setColor(color).run()}\n className={cn(\n 'desk-body-regular-m size-6 cursor-pointer rounded-full border border-solid border-transparent text-left outline-none transition-transform hover:scale-105',\n { 'border-warm-grey-300': color === '#FFFFFF' }\n )}\n />\n ))}\n </div>\n </Popover>\n )\n}\n"],"names":["SetColor","editor","jsx","Popover","Icon","editorAllowedColors","color","cn"],"mappings":"
|
|
1
|
+
{"version":3,"file":"SetColor.js","sources":["../../../../../../../../../lib/shared/ui/formElements/controlled/editor/ui/commands/SetColor.tsx"],"sourcesContent":["import type { Editor } from '@tiptap/react'\nimport { editorAllowedColors } from '../../model/helper'\nimport { Icon, Popover } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\ninterface ISetColorProps {\n editor: Editor\n}\n\nexport const SetColor = ({ editor }: ISetColorProps) => {\n return (\n <Popover\n classes={{\n content: 'w-full max-w-[500px] bg-color-blue-grey-200 border border-solid border-warm-grey-300',\n arrowIcon: 'fill-dark-hover'\n }}\n triggerElement={\n <span\n title='Добавить цвет текста'\n className='flex size-7 cursor-pointer items-center justify-center rounded-sm text-color-secondary outline-none transition-colors hover:bg-color-primary-hover hover:text-color-white'\n >\n <Icon name='editor/palette' className='size-4' />\n </span>\n }\n >\n <div className='grid grid-cols-6 gap-3'>\n {editorAllowedColors.map((color) => (\n <button\n key={color}\n type='button'\n style={{ background: color }}\n onClick={() => editor.chain().focus().setColor(color).run()}\n className={cn(\n 'desk-body-regular-m size-6 cursor-pointer rounded-full border border-solid border-transparent text-left outline-none transition-transform hover:scale-105',\n { 'border-warm-grey-300': color === '#FFFFFF' }\n )}\n />\n ))}\n </div>\n </Popover>\n )\n}\n"],"names":["SetColor","editor","jsx","Popover","Icon","editorAllowedColors","color","cn"],"mappings":"mmDASO,MAAMA,EAAW,CAAC,CAAE,OAAAC,KAEvBC,EAACC,EAAA,CACC,QAAS,CACP,QAAS,uFACT,UAAW,iBAAA,EAEb,eACED,EAAC,OAAA,CACC,MAAM,uBACN,UAAU,4KAEV,SAAAA,EAACE,EAAA,CAAK,KAAK,iBAAiB,UAAU,QAAA,CAAS,CAAA,CAAA,EAInD,WAAC,MAAA,CAAI,UAAU,yBACZ,SAAAC,EAAoB,IAAKC,GACxBJ,EAAC,SAAA,CAEC,KAAK,SACL,MAAO,CAAE,WAAYI,CAAA,EACrB,QAAS,IAAML,EAAO,MAAA,EAAQ,QAAQ,SAASK,CAAK,EAAE,IAAA,EACtD,UAAWC,EACT,4JACA,CAAE,uBAAwBD,IAAU,SAAA,CAAU,CAChD,EAPKA,CAAA,CASR,CAAA,CACH,CAAA,CAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as r}from"react/jsx-runtime";import{renderEditorPanel as s}from"../../model/helper.js";import{cn as c}from"../../../../../../utils/cn.js";import"../../../../../button/Button.js";import"../../../../../buttonIcon/ButtonIcon.js";import"../../../../../calendar/Calendar.js";import"../../../../../calendar/model/utils.js";import"../../../../../accordion/Accordion.js";import{Hint as n}from"../../../../../hint/Hint.js";import"react";import"react-dom";import"../../../../../modal/ui/IframeModalContent.js";import"../../../../../../../../node_modules/react-hot-toast/dist/index.js";import"../../../../../table/ui/primitives/Primitives.js";import"
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";import{renderEditorPanel as s}from"../../model/helper.js";import{cn as c}from"../../../../../../utils/cn.js";import"../../../../../button/Button.js";import"../../../../../buttonIcon/ButtonIcon.js";import"../../../../../calendar/Calendar.js";import"../../../../../calendar/model/utils.js";import"../../../../../accordion/Accordion.js";import{Hint as n}from"../../../../../hint/Hint.js";import"react";import"react-dom";import"../../../../../modal/ui/IframeModalContent.js";import"../../../../../../../../node_modules/react-hot-toast/dist/index.js";import"../../../../../table/ui/primitives/Primitives.js";import"../../../../../carousel/ui/CarouselContent.js";import"../../../../../slot/Slot.js";import"../../../../uncontrolled/autocomplete/Autocomplete.js";import"../../../../uncontrolled/checkbox/Checkbox.js";import"../../../../../dropdownList/ui/dropdownItem/DropdownItem.js";import"../../../../uncontrolled/input/Input.js";import"../../../../uncontrolled/dayPicker/DayPicker.js";import"../../../../uncontrolled/inputOtp/InputOtpBase.js";import"../../../../uncontrolled/maskInput/MaskInput.js";import"../../../../uncontrolled/radio/RadioGroup.js";import"../../../../uncontrolled/radio/ui/RadioItem.js";import"../../../../uncontrolled/select/Select.js";import"../../../../uncontrolled/slider/SliderBase.js";import"../../../../uncontrolled/switch/Switch.js";import"../../../../uncontrolled/textarea/Textarea.js";import"../../../../uncontrolled/uploader/UploaderBase.js";import"../Editor.js";import"../../../input/MaskInputControl.js";const M=({editor:i})=>{var o;return r("div",{className:"flex items-center gap-2",children:(o=s(i))==null?void 0:o.map(({label:t,icon:e,onClick:m,isActive:p})=>r(n,{sideOffset:12,classes:{content:"w-max border border-warm-grey-200 desk-body-regular-s py-1 px-3"},triggerElement:r("span",{onClick:m,className:c("flex size-7 cursor-pointer items-center justify-center rounded-sm text-color-secondary outline-none transition-colors hover:bg-color-primary-hover hover:text-color-white focus:bg-color-primary-focus focus:text-color-white",{"!bg-color-primary-hover !text-color-white":p}),children:e}),children:t},t))})};export{M as SetCoreCommands};
|
|
2
2
|
//# sourceMappingURL=SetCoreCommands.js.map
|
package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/SetCoreCommands.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SetCoreCommands.js","sources":["../../../../../../../../../lib/shared/ui/formElements/controlled/editor/ui/commands/SetCoreCommands.tsx"],"sourcesContent":["import { type Editor } from '@tiptap/react'\nimport { renderEditorPanel } from '../../model/helper'\nimport { Hint } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\ninterface ISetCoreCommandsProps {\n editor: Editor\n}\n\nexport const SetCoreCommands = ({ editor }: ISetCoreCommandsProps) => {\n return (\n <div className='flex items-center gap-2'>\n {renderEditorPanel(editor)?.map(({ label, icon, onClick, isActive }) => (\n <Hint\n key={label}\n sideOffset={12}\n classes={{\n content: 'w-max border border-warm-grey-200 desk-body-regular-s py-1 px-3'\n }}\n triggerElement={\n <span\n onClick={onClick}\n className={cn(\n 'flex size-7 cursor-pointer items-center justify-center rounded-sm text-color-secondary outline-none transition-colors hover:bg-color-primary-hover hover:text-color-white focus:bg-color-primary-focus focus:text-color-white',\n { '!bg-color-primary-hover !text-color-white': isActive }\n )}\n >\n {icon}\n </span>\n }\n >\n {label}\n </Hint>\n ))}\n </div>\n )\n}\n"],"names":["SetCoreCommands","editor","jsx","label","icon","onClick","isActive","Hint","cn"],"mappings":"
|
|
1
|
+
{"version":3,"file":"SetCoreCommands.js","sources":["../../../../../../../../../lib/shared/ui/formElements/controlled/editor/ui/commands/SetCoreCommands.tsx"],"sourcesContent":["import { type Editor } from '@tiptap/react'\nimport { renderEditorPanel } from '../../model/helper'\nimport { Hint } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\ninterface ISetCoreCommandsProps {\n editor: Editor\n}\n\nexport const SetCoreCommands = ({ editor }: ISetCoreCommandsProps) => {\n return (\n <div className='flex items-center gap-2'>\n {renderEditorPanel(editor)?.map(({ label, icon, onClick, isActive }) => (\n <Hint\n key={label}\n sideOffset={12}\n classes={{\n content: 'w-max border border-warm-grey-200 desk-body-regular-s py-1 px-3'\n }}\n triggerElement={\n <span\n onClick={onClick}\n className={cn(\n 'flex size-7 cursor-pointer items-center justify-center rounded-sm text-color-secondary outline-none transition-colors hover:bg-color-primary-hover hover:text-color-white focus:bg-color-primary-focus focus:text-color-white',\n { '!bg-color-primary-hover !text-color-white': isActive }\n )}\n >\n {icon}\n </span>\n }\n >\n {label}\n </Hint>\n ))}\n </div>\n )\n}\n"],"names":["SetCoreCommands","editor","jsx","label","icon","onClick","isActive","Hint","cn"],"mappings":"qiDASO,MAAMA,EAAkB,CAAC,CAAE,OAAAC,KAAoC,OACpE,OACEC,EAAC,MAAA,CAAI,UAAU,0BACZ,cAAkBD,CAAM,kBAAG,IAAI,CAAC,CAAE,MAAAE,EAAO,KAAAC,EAAM,QAAAC,EAAS,SAAAC,KACvDJ,EAACK,EAAA,CAEC,WAAY,GACZ,QAAS,CACP,QAAS,iEAAA,EAEX,eACEL,EAAC,OAAA,CACC,QAAAG,EACA,UAAWG,EACT,gOACA,CAAE,4CAA6CF,CAAA,CAAS,EAGzD,SAAAF,CAAA,CAAA,EAIJ,SAAAD,CAAA,EAjBIA,CAAA,GAoBX,CAEJ"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as w,jsx as i}from"react/jsx-runtime";import{useController as C}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{InputBase as I}from"../../uncontrolled/input/Input.js";import{cn as j}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"react";import"
|
|
1
|
+
import{jsxs as w,jsx as i}from"react/jsx-runtime";import{useController as C}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{InputBase as I}from"../../uncontrolled/input/Input.js";import{cn as j}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"react";import"react-dom";import"../../../modal/ui/IframeModalContent.js";import"../../../../../../node_modules/react-hot-toast/dist/index.js";import"../../../table/ui/primitives/Primitives.js";import"../../../carousel/ui/CarouselContent.js";import"../../../slot/Slot.js";import"../../uncontrolled/autocomplete/Autocomplete.js";import"../../uncontrolled/checkbox/Checkbox.js";import"../../../dropdownList/ui/dropdownItem/DropdownItem.js";import"../../uncontrolled/dayPicker/DayPicker.js";import"../../uncontrolled/inputOtp/InputOtpBase.js";import"../../uncontrolled/maskInput/MaskInput.js";import"../../uncontrolled/radio/RadioGroup.js";import"../../uncontrolled/radio/ui/RadioItem.js";import"../../uncontrolled/select/Select.js";import"../../uncontrolled/slider/SliderBase.js";import"../../uncontrolled/switch/Switch.js";import"../../uncontrolled/textarea/Textarea.js";import"../../uncontrolled/uploader/UploaderBase.js";import"../editor/ui/Editor.js";import"./MaskInputControl.js";import{MessageView as v}from"../../ui/MessageView.js";const ot=({control:p,name:s,defaultValue:e,disabled:o,rules:a,shouldUnregister:n,helperText:l,classes:c,...r})=>{const{field:f,fieldState:u}=C({control:p,name:s,defaultValue:e,disabled:o,rules:a,shouldUnregister:n}),{error:t,invalid:m,isTouched:d}=u,{message:h,root:x,...g}=c||{};return w("div",{className:j("w-full",x),children:[i(I,{...r,...f,classes:g,invalid:m,attachmentProps:{invalid:m,isTouched:d,withValidateIcons:!0,...r.attachmentProps}}),i(v,{text:(t==null?void 0:t.message)||l,className:h,intent:t?"error":"simple",disabled:o})]})};export{ot as InputControl};
|
|
2
2
|
//# sourceMappingURL=InputControl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/input/InputControl.tsx"],"sourcesContent":["'use client'\n\nimport { type Control, type FieldValues, type Path, useController, type UseControllerProps } from 'react-hook-form'\nimport { InputBase, type InputBaseProps } from '../../uncontrolled/input'\nimport { MessageView } from '$/shared/ui/formElements/ui'\nimport { cn } from '$/shared/utils'\n\ntype InputControlClasses = InputBaseProps['classes'] & {\n message?: string\n root?: string\n}\n\nexport type InputControlProps<\n TFieldValues extends FieldValues = FieldValues,\n TName extends Path<TFieldValues> = Path<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n Omit<InputBaseProps, 'classes'> & {\n /**\n * Контрол объект для управления полем\n */\n control: Control<TFieldValues>\n /**\n * Дополнительный текст\n */\n helperText?: string\n /**\n * Дополнительные стили компонента\n */\n classes?: InputControlClasses\n }\n\nexport const InputControl = <TFieldValues extends FieldValues = FieldValues>({\n control,\n name,\n defaultValue,\n disabled,\n rules,\n shouldUnregister,\n helperText,\n classes,\n ...props\n}: InputControlProps<TFieldValues>) => {\n const { field, fieldState } = useController({\n control,\n name,\n defaultValue,\n disabled,\n rules,\n shouldUnregister\n })\n\n const { error, invalid, isTouched } = fieldState\n const { message, root, ...restClasses } = classes || {}\n\n return (\n <div className={cn('w-full', root)}>\n <InputBase\n {...props}\n {...field}\n classes={restClasses}\n invalid={invalid}\n attachmentProps={{\n invalid,\n isTouched,\n withValidateIcons: true,\n ...props.attachmentProps\n }}\n />\n <MessageView\n text={error?.message || helperText}\n className={message}\n intent={error ? 'error' : 'simple'}\n disabled={disabled}\n />\n </div>\n )\n}\n"],"names":["InputControl","control","name","defaultValue","disabled","rules","shouldUnregister","helperText","classes","props","field","fieldState","useController","error","invalid","isTouched","message","root","restClasses","cn","jsx","InputBase","MessageView"],"mappings":"
|
|
1
|
+
{"version":3,"file":"InputControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/input/InputControl.tsx"],"sourcesContent":["'use client'\n\nimport { type Control, type FieldValues, type Path, useController, type UseControllerProps } from 'react-hook-form'\nimport { InputBase, type InputBaseProps } from '../../uncontrolled/input'\nimport { MessageView } from '$/shared/ui/formElements/ui'\nimport { cn } from '$/shared/utils'\n\ntype InputControlClasses = InputBaseProps['classes'] & {\n message?: string\n root?: string\n}\n\nexport type InputControlProps<\n TFieldValues extends FieldValues = FieldValues,\n TName extends Path<TFieldValues> = Path<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n Omit<InputBaseProps, 'classes'> & {\n /**\n * Контрол объект для управления полем\n */\n control: Control<TFieldValues>\n /**\n * Дополнительный текст\n */\n helperText?: string\n /**\n * Дополнительные стили компонента\n */\n classes?: InputControlClasses\n }\n\nexport const InputControl = <TFieldValues extends FieldValues = FieldValues>({\n control,\n name,\n defaultValue,\n disabled,\n rules,\n shouldUnregister,\n helperText,\n classes,\n ...props\n}: InputControlProps<TFieldValues>) => {\n const { field, fieldState } = useController({\n control,\n name,\n defaultValue,\n disabled,\n rules,\n shouldUnregister\n })\n\n const { error, invalid, isTouched } = fieldState\n const { message, root, ...restClasses } = classes || {}\n\n return (\n <div className={cn('w-full', root)}>\n <InputBase\n {...props}\n {...field}\n classes={restClasses}\n invalid={invalid}\n attachmentProps={{\n invalid,\n isTouched,\n withValidateIcons: true,\n ...props.attachmentProps\n }}\n />\n <MessageView\n text={error?.message || helperText}\n className={message}\n intent={error ? 'error' : 'simple'}\n disabled={disabled}\n />\n </div>\n )\n}\n"],"names":["InputControl","control","name","defaultValue","disabled","rules","shouldUnregister","helperText","classes","props","field","fieldState","useController","error","invalid","isTouched","message","root","restClasses","cn","jsx","InputBase","MessageView"],"mappings":"o9CA+BO,MAAMA,GAAe,CAAiD,CAC3E,QAAAC,EACA,KAAAC,EACA,aAAAC,EACA,SAAAC,EACA,MAAAC,EACA,iBAAAC,EACA,WAAAC,EACA,QAAAC,EACA,GAAGC,CACL,IAAuC,CACrC,KAAM,CAAE,MAAAC,EAAO,WAAAC,CAAA,EAAeC,EAAc,CAC1C,QAAAX,EACA,KAAAC,EACA,aAAAC,EACA,SAAAC,EACA,MAAAC,EACA,iBAAAC,CAAA,CACD,EAEK,CAAE,MAAAO,EAAO,QAAAC,EAAS,UAAAC,CAAA,EAAcJ,EAChC,CAAE,QAAAK,EAAS,KAAAC,EAAM,GAAGC,CAAA,EAAgBV,GAAW,CAAA,EAErD,SACG,MAAA,CAAI,UAAWW,EAAG,SAAUF,CAAI,EAC/B,SAAA,CAAAG,EAACC,EAAA,CACE,GAAGZ,EACH,GAAGC,EACJ,QAASQ,EACT,QAAAJ,EACA,gBAAiB,CACf,QAAAA,EACA,UAAAC,EACA,kBAAmB,GACnB,GAAGN,EAAM,eAAA,CACX,CAAA,EAEFW,EAACE,EAAA,CACC,MAAMT,GAAA,YAAAA,EAAO,UAAWN,EACxB,UAAWS,EACX,OAAQH,EAAQ,QAAU,SAC1B,SAAAT,CAAA,CAAA,CACF,EACF,CAEJ"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as I,jsx as i}from"react/jsx-runtime";import{memo as g}from"react";import{useController as w}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{MaskInput as M}from"../../uncontrolled/maskInput/MaskInput.js";import{cn as j}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"
|
|
1
|
+
import{jsxs as I,jsx as i}from"react/jsx-runtime";import{memo as g}from"react";import{useController as w}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{MaskInput as M}from"../../uncontrolled/maskInput/MaskInput.js";import{cn as j}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"react-dom";import"../../../modal/ui/IframeModalContent.js";import"../../../../../../node_modules/react-hot-toast/dist/index.js";import"../../../table/ui/primitives/Primitives.js";import"../../../carousel/ui/CarouselContent.js";import"../../../slot/Slot.js";import"../../uncontrolled/autocomplete/Autocomplete.js";import"../../uncontrolled/checkbox/Checkbox.js";import"../../../dropdownList/ui/dropdownItem/DropdownItem.js";import"../../uncontrolled/input/Input.js";import"../../uncontrolled/dayPicker/DayPicker.js";import"../../uncontrolled/inputOtp/InputOtpBase.js";import"../../uncontrolled/radio/RadioGroup.js";import"../../uncontrolled/radio/ui/RadioItem.js";import"../../uncontrolled/select/Select.js";import"../../uncontrolled/slider/SliderBase.js";import"../../uncontrolled/switch/Switch.js";import"../../uncontrolled/textarea/Textarea.js";import"../../uncontrolled/uploader/UploaderBase.js";import"../editor/ui/Editor.js";import{MessageView as k}from"../../ui/MessageView.js";const v=({control:p,name:e,defaultValue:s,disabled:o,rules:n,shouldUnregister:a,classes:c,helperText:l,...r})=>{const{field:f,fieldState:u}=w({control:p,name:e,defaultValue:s,disabled:o,rules:n,shouldUnregister:a}),{error:t,invalid:m,isTouched:d}=u,{message:h,container:x,...C}=c||{};return I("div",{className:j("w-full",x),children:[i(M,{...r,...f,invalid:m,classes:C,attachmentProps:{invalid:m,isTouched:d,withValidateIcons:!0,...r.attachmentProps}}),i(k,{text:(t==null?void 0:t.message)||l,className:h,intent:t?"error":"simple",disabled:o})]})},rt=g(v);export{rt as MaskInputControl};
|
|
2
2
|
//# sourceMappingURL=MaskInputControl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MaskInputControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/input/MaskInputControl.tsx"],"sourcesContent":["'use client'\n\nimport { memo } from 'react'\nimport { type Control, type FieldPath, type FieldValues, useController, type UseControllerProps } from 'react-hook-form'\nimport { MaskInput, type MaskInputProps } from '../../uncontrolled/maskInput'\nimport { MessageView } from '$/shared/ui/formElements/ui'\nimport { cn } from '$/shared/utils'\n\ntype MaskInputClasses = MaskInputProps['classes'] & {\n message?: string\n}\n\nexport type MaskInputControlProps<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n Omit<MaskInputProps, 'classes'> & {\n /**\n * Контрол объект для управления полем\n */\n control: Control<TFieldValues>\n /**\n * Дополнительные стили компонента\n */\n classes?: MaskInputClasses\n /**\n * Дополнительный текст\n */\n helperText?: string\n }\n\nconst InnerComponent = <TFieldValues extends FieldValues = FieldValues>({\n control,\n name,\n defaultValue,\n disabled,\n rules,\n shouldUnregister,\n classes,\n helperText,\n ...props\n}: MaskInputControlProps<TFieldValues>) => {\n const { field, fieldState } = useController({\n control,\n name,\n defaultValue,\n disabled,\n rules,\n shouldUnregister\n })\n\n const { error, invalid, isTouched } = fieldState\n const { message, container, ...restClasses } = classes || {}\n\n return (\n <div className={cn('w-full', container)}>\n <MaskInput\n {...props}\n {...field}\n invalid={invalid}\n classes={restClasses}\n attachmentProps={{\n invalid,\n isTouched,\n withValidateIcons: true,\n ...props.attachmentProps\n }}\n />\n <MessageView\n text={error?.message || helperText}\n className={message}\n intent={error ? 'error' : 'simple'}\n disabled={disabled}\n />\n </div>\n )\n}\n\nexport const MaskInputControl = memo(InnerComponent) as typeof InnerComponent\n"],"names":["InnerComponent","control","name","defaultValue","disabled","rules","shouldUnregister","classes","helperText","props","field","fieldState","useController","error","invalid","isTouched","message","container","restClasses","cn","jsx","MaskInput","MessageView","MaskInputControl","memo"],"mappings":"
|
|
1
|
+
{"version":3,"file":"MaskInputControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/input/MaskInputControl.tsx"],"sourcesContent":["'use client'\n\nimport { memo } from 'react'\nimport { type Control, type FieldPath, type FieldValues, useController, type UseControllerProps } from 'react-hook-form'\nimport { MaskInput, type MaskInputProps } from '../../uncontrolled/maskInput'\nimport { MessageView } from '$/shared/ui/formElements/ui'\nimport { cn } from '$/shared/utils'\n\ntype MaskInputClasses = MaskInputProps['classes'] & {\n message?: string\n}\n\nexport type MaskInputControlProps<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n Omit<MaskInputProps, 'classes'> & {\n /**\n * Контрол объект для управления полем\n */\n control: Control<TFieldValues>\n /**\n * Дополнительные стили компонента\n */\n classes?: MaskInputClasses\n /**\n * Дополнительный текст\n */\n helperText?: string\n }\n\nconst InnerComponent = <TFieldValues extends FieldValues = FieldValues>({\n control,\n name,\n defaultValue,\n disabled,\n rules,\n shouldUnregister,\n classes,\n helperText,\n ...props\n}: MaskInputControlProps<TFieldValues>) => {\n const { field, fieldState } = useController({\n control,\n name,\n defaultValue,\n disabled,\n rules,\n shouldUnregister\n })\n\n const { error, invalid, isTouched } = fieldState\n const { message, container, ...restClasses } = classes || {}\n\n return (\n <div className={cn('w-full', container)}>\n <MaskInput\n {...props}\n {...field}\n invalid={invalid}\n classes={restClasses}\n attachmentProps={{\n invalid,\n isTouched,\n withValidateIcons: true,\n ...props.attachmentProps\n }}\n />\n <MessageView\n text={error?.message || helperText}\n className={message}\n intent={error ? 'error' : 'simple'}\n disabled={disabled}\n />\n </div>\n )\n}\n\nexport const MaskInputControl = memo(InnerComponent) as typeof InnerComponent\n"],"names":["InnerComponent","control","name","defaultValue","disabled","rules","shouldUnregister","classes","helperText","props","field","fieldState","useController","error","invalid","isTouched","message","container","restClasses","cn","jsx","MaskInput","MessageView","MaskInputControl","memo"],"mappings":"q8CA+BA,MAAMA,EAAiB,CAAiD,CACtE,QAAAC,EACA,KAAAC,EACA,aAAAC,EACA,SAAAC,EACA,MAAAC,EACA,iBAAAC,EACA,QAAAC,EACA,WAAAC,EACA,GAAGC,CACL,IAA2C,CACzC,KAAM,CAAE,MAAAC,EAAO,WAAAC,CAAA,EAAeC,EAAc,CAC1C,QAAAX,EACA,KAAAC,EACA,aAAAC,EACA,SAAAC,EACA,MAAAC,EACA,iBAAAC,CAAA,CACD,EAEK,CAAE,MAAAO,EAAO,QAAAC,EAAS,UAAAC,CAAA,EAAcJ,EAChC,CAAE,QAAAK,EAAS,UAAAC,EAAW,GAAGC,CAAA,EAAgBX,GAAW,CAAA,EAE1D,SACG,MAAA,CAAI,UAAWY,EAAG,SAAUF,CAAS,EACpC,SAAA,CAAAG,EAACC,EAAA,CACE,GAAGZ,EACH,GAAGC,EACJ,QAAAI,EACA,QAASI,EACT,gBAAiB,CACf,QAAAJ,EACA,UAAAC,EACA,kBAAmB,GACnB,GAAGN,EAAM,eAAA,CACX,CAAA,EAEFW,EAACE,EAAA,CACC,MAAMT,GAAA,YAAAA,EAAO,UAAWL,EACxB,UAAWQ,EACX,OAAQH,EAAQ,QAAU,SAC1B,SAAAT,CAAA,CAAA,CACF,EACF,CAEJ,EAEamB,GAAmBC,EAAKxB,CAAc"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as c,jsx as r}from"react/jsx-runtime";import*as g from"react";import{useController as b}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{NumericFormat as T}from"../../../../../../node_modules/react-number-format/dist/react-number-format.es.js";import{getDelimiterForCurrency as V,currencyOptionsList as D}from"./model/helpers.js";import{useInputCurrency as G}from"./model/useInputCurrency.js";import{MenuTrigger as q}from"./ui/MenuTrigger.js";import{OptionList as z}from"./ui/OptionList.js";import{useClickOutside as A}from"../../../../hooks/useClickOutside.js";import
|
|
1
|
+
import{jsxs as c,jsx as r}from"react/jsx-runtime";import*as g from"react";import{useController as b}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{NumericFormat as T}from"../../../../../../node_modules/react-number-format/dist/react-number-format.es.js";import{getDelimiterForCurrency as V,currencyOptionsList as D}from"./model/helpers.js";import{useInputCurrency as G}from"./model/useInputCurrency.js";import{MenuTrigger as q}from"./ui/MenuTrigger.js";import{OptionList as z}from"./ui/OptionList.js";import{useClickOutside as A}from"../../../../hooks/useClickOutside.js";import{cn as l}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"react-dom";import"../../../modal/ui/IframeModalContent.js";import"../../../../../../node_modules/react-hot-toast/dist/index.js";import"../../../table/ui/primitives/Primitives.js";import"../../../carousel/ui/CarouselContent.js";import"../../../slot/Slot.js";import"../../uncontrolled/autocomplete/Autocomplete.js";import"../../uncontrolled/checkbox/Checkbox.js";import"../../../dropdownList/ui/dropdownItem/DropdownItem.js";import{InputBase as E}from"../../uncontrolled/input/Input.js";import"../../uncontrolled/dayPicker/DayPicker.js";import"../../uncontrolled/inputOtp/InputOtpBase.js";import"../../uncontrolled/maskInput/MaskInput.js";import"../../uncontrolled/radio/RadioGroup.js";import"../../uncontrolled/radio/ui/RadioItem.js";import"../../uncontrolled/select/Select.js";import"../../uncontrolled/slider/SliderBase.js";import"../../uncontrolled/switch/Switch.js";import"../../uncontrolled/textarea/Textarea.js";import"../../uncontrolled/uploader/UploaderBase.js";import{MessageView as J}from"../../ui/MessageView.js";import"../editor/ui/Editor.js";import"../input/MaskInputControl.js";const ho=({defaultCurrency:C="rubles",label:y,helperText:v,control:w,classes:i,disabled:u,name:B,defaultValue:I,rules:N,attachmentProps:O,shouldUnregister:k,externalHandlers:o,...m})=>{const h=g.useId(),p=g.useRef(null),{menuIsOpen:M,currentCurrencyOption:f,onSelectOption:R,onToggleMenu:S,onCloseMenu:j}=G(C);A(p,j);const{field:n,fieldState:F}=b({control:w,name:B,defaultValue:I,disabled:u,rules:N,shouldUnregister:k}),{error:t,invalid:L}=F;return c("div",{ref:p,className:l("relative flex w-full flex-col",i==null?void 0:i.container),children:[r(E,{label:y,value:n.value,invalid:L,attachmentProps:O,onBlur:e=>{m!=null&&m.onBlur&&(m==null||m.onBlur(e)),o!=null&&o.onBlur&&o.onBlur(e)},onClick:o==null?void 0:o.onClick,onFocus:o==null?void 0:o.onBlur,renderValues:()=>c("div",{className:"flex w-full justify-between",children:[r(T,{...n,...m,id:h,"aria-invalid":t!=null&&t.message?"true":"false",thousandsGroupStyle:"wan",thousandSeparator:" ",prefix:V(f.currency),getInputRef:n.ref,allowNegative:!1,disabled:u,className:l("desk-body-regular-l w-full bg-color-transparent text-color-dark outline-none transition-all",i==null?void 0:i.input)}),r(q,{onToggleMenu:S,currentCurrencyOption:f}),r(z,{menuIsOpen:M,optionsList:D,onSelectOption:R})]})}),r(J,{className:i==null?void 0:i.message,intent:t!=null&&t.message?"error":"simple",text:(t==null?void 0:t.message)||v,disabled:u})]})};export{ho as InputCurrencyControl};
|
|
2
2
|
//# sourceMappingURL=InputCurrencyControl.js.map
|
package/dist/lib/shared/ui/formElements/controlled/inputCurrency/InputCurrencyControl.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputCurrencyControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/inputCurrency/InputCurrencyControl.tsx"],"sourcesContent":["import * as React from 'react'\nimport { type ReactElement } from 'react'\nimport { type FieldValues, type Path, useController, type UseControllerProps } from 'react-hook-form'\nimport { NumericFormat } from 'react-number-format'\nimport { currencyOptionsList, getDelimiterForCurrency } from './model/helpers'\nimport { useInputCurrency } from './model/useInputCurrency'\nimport { MenuTrigger, OptionList } from './ui'\nimport { useClickOutside } from '$/shared/hooks'\nimport { InputBase, type InputBaseProps } from '$/shared/ui'\nimport { MessageView } from '$/shared/ui/formElements/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TCurrencyVariant = 'euro' | 'dollars' | 'rubles' | 'yuan' | 'dirhams'\nexport interface ICurrencyOption {\n ruName: string\n engName: string\n currency: TCurrencyVariant\n}\n\ntype ExternalHandlers = {\n onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void\n onClick?: (event: React.MouseEvent<HTMLDivElement>) => void\n onFocus?: (event: React.FocusEvent<HTMLDivElement>) => void\n onBlur?: (event: React.FocusEvent<HTMLDivElement>) => void\n}\n\nexport type InputCurrencyControlProps<\n TFieldValues extends FieldValues,\n TName extends Path<TFieldValues> = Path<TFieldValues>\n> = Omit<InputBaseProps, 'externalHandlers' | 'onChange' | 'value' | 'defaultValue' | 'type'> &\n UseControllerProps<TFieldValues, TName> & {\n classes?: any // TODO ADD CLASSES AND CONNECT WITH BACKEND API TO GET CURRENCY\n defaultCurrency?: TCurrencyVariant\n disabled?: boolean\n label: string\n helperText?: string | ReactElement\n externalHandlers?: ExternalHandlers\n }\n\nexport const InputCurrencyControl = <T extends FieldValues>({\n defaultCurrency = 'rubles',\n label,\n helperText,\n control,\n classes,\n disabled,\n name,\n defaultValue,\n rules,\n attachmentProps,\n shouldUnregister,\n externalHandlers,\n ...props\n}: InputCurrencyControlProps<T>) => {\n const inputId = React.useId()\n const containerRef = React.useRef<HTMLDivElement | null>(null)\n const { menuIsOpen, currentCurrencyOption, onSelectOption, onToggleMenu, onCloseMenu } = useInputCurrency(defaultCurrency)\n useClickOutside(containerRef, onCloseMenu)\n\n const { field, fieldState } = useController({ control, name, defaultValue, disabled, rules, shouldUnregister })\n\n const { error, invalid } = fieldState\n\n return (\n <div ref={containerRef} className={cn('relative flex w-full flex-col', classes?.container)}>\n <InputBase\n label={label}\n value={field.value}\n invalid={invalid}\n attachmentProps={attachmentProps}\n onBlur={(e) => {\n if (props?.onBlur) props?.onBlur(e)\n if (externalHandlers?.onBlur) externalHandlers.onBlur(e)\n }}\n onClick={externalHandlers?.onClick}\n onFocus={externalHandlers?.onBlur}\n renderValues={() => (\n <div className='flex w-full justify-between'>\n <NumericFormat\n {...field}\n {...props}\n id={inputId}\n aria-invalid={error?.message ? 'true' : 'false'}\n thousandsGroupStyle='wan'\n thousandSeparator=' '\n prefix={getDelimiterForCurrency(currentCurrencyOption.currency)}\n getInputRef={field.ref}\n allowNegative={false}\n disabled={disabled}\n className={cn(\n 'desk-body-regular-l w-full bg-color-transparent text-color-dark outline-none transition-all',\n classes?.input\n )}\n />\n <MenuTrigger onToggleMenu={onToggleMenu} currentCurrencyOption={currentCurrencyOption} />\n <OptionList menuIsOpen={menuIsOpen} optionsList={currencyOptionsList} onSelectOption={onSelectOption} />\n </div>\n )}\n />\n\n <MessageView\n className={classes?.message}\n intent={error?.message ? 'error' : 'simple'}\n text={error?.message || helperText}\n disabled={disabled}\n />\n </div>\n )\n}\n"],"names":["InputCurrencyControl","defaultCurrency","label","helperText","control","classes","disabled","name","defaultValue","rules","attachmentProps","shouldUnregister","externalHandlers","props","inputId","React","containerRef","menuIsOpen","currentCurrencyOption","onSelectOption","onToggleMenu","onCloseMenu","useInputCurrency","useClickOutside","field","fieldState","useController","error","invalid","jsxs","cn","jsx","InputBase","NumericFormat","getDelimiterForCurrency","MenuTrigger","OptionList","currencyOptionsList","MessageView"],"mappings":"
|
|
1
|
+
{"version":3,"file":"InputCurrencyControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/inputCurrency/InputCurrencyControl.tsx"],"sourcesContent":["import * as React from 'react'\nimport { type ReactElement } from 'react'\nimport { type FieldValues, type Path, useController, type UseControllerProps } from 'react-hook-form'\nimport { NumericFormat } from 'react-number-format'\nimport { currencyOptionsList, getDelimiterForCurrency } from './model/helpers'\nimport { useInputCurrency } from './model/useInputCurrency'\nimport { MenuTrigger, OptionList } from './ui'\nimport { useClickOutside } from '$/shared/hooks'\nimport { InputBase, type InputBaseProps } from '$/shared/ui'\nimport { MessageView } from '$/shared/ui/formElements/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TCurrencyVariant = 'euro' | 'dollars' | 'rubles' | 'yuan' | 'dirhams'\nexport interface ICurrencyOption {\n ruName: string\n engName: string\n currency: TCurrencyVariant\n}\n\ntype ExternalHandlers = {\n onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void\n onClick?: (event: React.MouseEvent<HTMLDivElement>) => void\n onFocus?: (event: React.FocusEvent<HTMLDivElement>) => void\n onBlur?: (event: React.FocusEvent<HTMLDivElement>) => void\n}\n\nexport type InputCurrencyControlProps<\n TFieldValues extends FieldValues,\n TName extends Path<TFieldValues> = Path<TFieldValues>\n> = Omit<InputBaseProps, 'externalHandlers' | 'onChange' | 'value' | 'defaultValue' | 'type'> &\n UseControllerProps<TFieldValues, TName> & {\n classes?: any // TODO ADD CLASSES AND CONNECT WITH BACKEND API TO GET CURRENCY\n defaultCurrency?: TCurrencyVariant\n disabled?: boolean\n label: string\n helperText?: string | ReactElement\n externalHandlers?: ExternalHandlers\n }\n\nexport const InputCurrencyControl = <T extends FieldValues>({\n defaultCurrency = 'rubles',\n label,\n helperText,\n control,\n classes,\n disabled,\n name,\n defaultValue,\n rules,\n attachmentProps,\n shouldUnregister,\n externalHandlers,\n ...props\n}: InputCurrencyControlProps<T>) => {\n const inputId = React.useId()\n const containerRef = React.useRef<HTMLDivElement | null>(null)\n const { menuIsOpen, currentCurrencyOption, onSelectOption, onToggleMenu, onCloseMenu } = useInputCurrency(defaultCurrency)\n useClickOutside(containerRef, onCloseMenu)\n\n const { field, fieldState } = useController({ control, name, defaultValue, disabled, rules, shouldUnregister })\n\n const { error, invalid } = fieldState\n\n return (\n <div ref={containerRef} className={cn('relative flex w-full flex-col', classes?.container)}>\n <InputBase\n label={label}\n value={field.value}\n invalid={invalid}\n attachmentProps={attachmentProps}\n onBlur={(e) => {\n if (props?.onBlur) props?.onBlur(e)\n if (externalHandlers?.onBlur) externalHandlers.onBlur(e)\n }}\n onClick={externalHandlers?.onClick}\n onFocus={externalHandlers?.onBlur}\n renderValues={() => (\n <div className='flex w-full justify-between'>\n <NumericFormat\n {...field}\n {...props}\n id={inputId}\n aria-invalid={error?.message ? 'true' : 'false'}\n thousandsGroupStyle='wan'\n thousandSeparator=' '\n prefix={getDelimiterForCurrency(currentCurrencyOption.currency)}\n getInputRef={field.ref}\n allowNegative={false}\n disabled={disabled}\n className={cn(\n 'desk-body-regular-l w-full bg-color-transparent text-color-dark outline-none transition-all',\n classes?.input\n )}\n />\n <MenuTrigger onToggleMenu={onToggleMenu} currentCurrencyOption={currentCurrencyOption} />\n <OptionList menuIsOpen={menuIsOpen} optionsList={currencyOptionsList} onSelectOption={onSelectOption} />\n </div>\n )}\n />\n\n <MessageView\n className={classes?.message}\n intent={error?.message ? 'error' : 'simple'}\n text={error?.message || helperText}\n disabled={disabled}\n />\n </div>\n )\n}\n"],"names":["InputCurrencyControl","defaultCurrency","label","helperText","control","classes","disabled","name","defaultValue","rules","attachmentProps","shouldUnregister","externalHandlers","props","inputId","React","containerRef","menuIsOpen","currentCurrencyOption","onSelectOption","onToggleMenu","onCloseMenu","useInputCurrency","useClickOutside","field","fieldState","useController","error","invalid","jsxs","cn","jsx","InputBase","NumericFormat","getDelimiterForCurrency","MenuTrigger","OptionList","currencyOptionsList","MessageView"],"mappings":"q5DAuCO,MAAMA,GAAuB,CAAwB,CAC1D,gBAAAC,EAAkB,SAClB,MAAAC,EACA,WAAAC,EACA,QAAAC,EACA,QAAAC,EACA,SAAAC,EACA,KAAAC,EACA,aAAAC,EACA,MAAAC,EACA,gBAAAC,EACA,iBAAAC,EACA,iBAAAC,EACA,GAAGC,CACL,IAAoC,CAClC,MAAMC,EAAUC,EAAM,MAAA,EAChBC,EAAeD,EAAM,OAA8B,IAAI,EACvD,CAAE,WAAAE,EAAY,sBAAAC,EAAuB,eAAAC,EAAgB,aAAAC,EAAc,YAAAC,CAAA,EAAgBC,EAAiBrB,CAAe,EACzHsB,EAAgBP,EAAcK,CAAW,EAEzC,KAAM,CAAE,MAAAG,EAAO,WAAAC,CAAA,EAAeC,EAAc,CAAE,QAAAtB,EAAS,KAAAG,EAAM,aAAAC,EAAc,SAAAF,EAAU,MAAAG,EAAO,iBAAAE,CAAA,CAAkB,EAExG,CAAE,MAAAgB,EAAO,QAAAC,CAAA,EAAYH,EAE3B,OACEI,EAAC,OAAI,IAAKb,EAAc,UAAWc,EAAG,gCAAiCzB,GAAA,YAAAA,EAAS,SAAS,EACvF,SAAA,CAAA0B,EAACC,EAAA,CACC,MAAA9B,EACA,MAAOsB,EAAM,MACb,QAAAI,EACA,gBAAAlB,EACA,OAAS,GAAM,CACTG,GAAA,MAAAA,EAAO,SAAQA,GAAA,MAAAA,EAAO,OAAO,IAC7BD,GAAA,MAAAA,EAAkB,QAAQA,EAAiB,OAAO,CAAC,CACzD,EACA,QAASA,GAAA,YAAAA,EAAkB,QAC3B,QAASA,GAAA,YAAAA,EAAkB,OAC3B,aAAc,IACZiB,EAAC,MAAA,CAAI,UAAU,8BACb,SAAA,CAAAE,EAACE,EAAA,CACE,GAAGT,EACH,GAAGX,EACJ,GAAIC,EACJ,eAAca,GAAA,MAAAA,EAAO,QAAU,OAAS,QACxC,oBAAoB,MACpB,kBAAkB,IAClB,OAAQO,EAAwBhB,EAAsB,QAAQ,EAC9D,YAAaM,EAAM,IACnB,cAAe,GACf,SAAAlB,EACA,UAAWwB,EACT,8FACAzB,GAAA,YAAAA,EAAS,KAAA,CACX,CAAA,EAEF0B,EAACI,EAAA,CAAY,aAAAf,EAA4B,sBAAAF,CAAA,CAA8C,EACvFa,EAACK,EAAA,CAAW,WAAAnB,EAAwB,YAAaoB,EAAqB,eAAAlB,CAAA,CAAgC,CAAA,CAAA,CACxG,CAAA,CAAA,EAIJY,EAACO,EAAA,CACC,UAAWjC,GAAA,YAAAA,EAAS,QACpB,OAAQsB,GAAA,MAAAA,EAAO,QAAU,QAAU,SACnC,MAAMA,GAAA,YAAAA,EAAO,UAAWxB,EACxB,SAAAG,CAAA,CAAA,CACF,EACF,CAEJ"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as i,jsx as r}from"react/jsx-runtime";import"
|
|
1
|
+
import{jsxs as i,jsx as r}from"react/jsx-runtime";import"../../../../button/Button.js";import"../../../../buttonIcon/ButtonIcon.js";import"../../../../calendar/Calendar.js";import"../../../../calendar/model/utils.js";import"../../../../accordion/Accordion.js";import"react";import"react-dom";import"../../../../modal/ui/IframeModalContent.js";import"../../../../../../../node_modules/react-hot-toast/dist/index.js";import{Icon as m}from"../../../../icon/Icon.js";import"../../../../table/ui/primitives/Primitives.js";import"../../../../carousel/ui/CarouselContent.js";import"../../../../slot/Slot.js";import"../../../uncontrolled/autocomplete/Autocomplete.js";import"../../../uncontrolled/checkbox/Checkbox.js";import"../../../../dropdownList/ui/dropdownItem/DropdownItem.js";import"../../../uncontrolled/input/Input.js";import"../../../uncontrolled/dayPicker/DayPicker.js";import"../../../uncontrolled/inputOtp/InputOtpBase.js";import"../../../uncontrolled/maskInput/MaskInput.js";import"../../../uncontrolled/radio/RadioGroup.js";import"../../../uncontrolled/radio/ui/RadioItem.js";import"../../../uncontrolled/select/Select.js";import"../../../uncontrolled/slider/SliderBase.js";import"../../../uncontrolled/switch/Switch.js";import"../../../uncontrolled/textarea/Textarea.js";import"../../../uncontrolled/uploader/UploaderBase.js";import"../../editor/ui/Editor.js";import"../../input/MaskInputControl.js";const E=({onToggleMenu:o,currentCurrencyOption:t})=>i("button",{type:"button",onClick:o,className:"desk-body-regular-l flex items-center gap-1 border-l border-solid border-blue-grey-500 pl-2 pr-4",children:[r("span",{className:"uppercase text-color-tetriary",children:t.engName}),r(m,{name:"arrows/arrowRight",className:"rotate-90 text-icon-blue-grey-700"})]});export{E as MenuTrigger};
|
|
2
2
|
//# sourceMappingURL=MenuTrigger.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuTrigger.js","sources":["../../../../../../../../lib/shared/ui/formElements/controlled/inputCurrency/ui/MenuTrigger.tsx"],"sourcesContent":["import { type ICurrencyOption } from '../InputCurrencyControl'\nimport { Icon } from '$/shared/ui'\n\ninterface IMenuTriggerProps {\n onToggleMenu: () => void\n currentCurrencyOption: ICurrencyOption\n}\n\nexport const MenuTrigger = ({ onToggleMenu, currentCurrencyOption }: IMenuTriggerProps) => {\n return (\n <button\n type='button'\n onClick={onToggleMenu}\n className='desk-body-regular-l flex items-center gap-1 border-l border-solid border-blue-grey-500 pl-2 pr-4'\n >\n <span className='uppercase text-color-tetriary'>{currentCurrencyOption.engName}</span>\n <Icon name='arrows/arrowRight' className='rotate-90 text-icon-blue-grey-700' />\n </button>\n )\n}\n"],"names":["MenuTrigger","onToggleMenu","currentCurrencyOption","jsxs","jsx","Icon"],"mappings":"
|
|
1
|
+
{"version":3,"file":"MenuTrigger.js","sources":["../../../../../../../../lib/shared/ui/formElements/controlled/inputCurrency/ui/MenuTrigger.tsx"],"sourcesContent":["import { type ICurrencyOption } from '../InputCurrencyControl'\nimport { Icon } from '$/shared/ui'\n\ninterface IMenuTriggerProps {\n onToggleMenu: () => void\n currentCurrencyOption: ICurrencyOption\n}\n\nexport const MenuTrigger = ({ onToggleMenu, currentCurrencyOption }: IMenuTriggerProps) => {\n return (\n <button\n type='button'\n onClick={onToggleMenu}\n className='desk-body-regular-l flex items-center gap-1 border-l border-solid border-blue-grey-500 pl-2 pr-4'\n >\n <span className='uppercase text-color-tetriary'>{currentCurrencyOption.engName}</span>\n <Icon name='arrows/arrowRight' className='rotate-90 text-icon-blue-grey-700' />\n </button>\n )\n}\n"],"names":["MenuTrigger","onToggleMenu","currentCurrencyOption","jsxs","jsx","Icon"],"mappings":"i4CAQO,MAAMA,EAAc,CAAC,CAAE,aAAAC,EAAc,sBAAAC,KAExCC,EAAC,SAAA,CACC,KAAK,SACL,QAASF,EACT,UAAU,mGAEV,SAAA,CAAAG,EAAC,OAAA,CAAK,UAAU,gCAAiC,SAAAF,EAAsB,QAAQ,EAC/EE,EAACC,EAAA,CAAK,KAAK,oBAAoB,UAAU,mCAAA,CAAoC,CAAA,CAAA,CAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as C,jsx as r}from"react/jsx-runtime";import{useController as j}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{cn as v}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"react";import"
|
|
1
|
+
import{jsxs as C,jsx as r}from"react/jsx-runtime";import{useController as j}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{cn as v}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"react";import"react-dom";import"../../../modal/ui/IframeModalContent.js";import"../../../../../../node_modules/react-hot-toast/dist/index.js";import"../../../table/ui/primitives/Primitives.js";import"../../../carousel/ui/CarouselContent.js";import"../../../slot/Slot.js";import"../../uncontrolled/autocomplete/Autocomplete.js";import"../../uncontrolled/checkbox/Checkbox.js";import"../../../dropdownList/ui/dropdownItem/DropdownItem.js";import"../../uncontrolled/input/Input.js";import"../../uncontrolled/dayPicker/DayPicker.js";import{InputOtpBase as w}from"../../uncontrolled/inputOtp/InputOtpBase.js";import"../../uncontrolled/maskInput/MaskInput.js";import"../../uncontrolled/radio/RadioGroup.js";import"../../uncontrolled/radio/ui/RadioItem.js";import"../../uncontrolled/select/Select.js";import"../../uncontrolled/slider/SliderBase.js";import"../../uncontrolled/switch/Switch.js";import"../../uncontrolled/textarea/Textarea.js";import"../../uncontrolled/uploader/UploaderBase.js";import{MessageView as I}from"../../ui/MessageView.js";import"../editor/ui/Editor.js";import"../input/MaskInputControl.js";const tt=({control:m,name:i,defaultValue:p,disabled:o,rules:s,shouldUnregister:e,classes:n,helperText:l,...a})=>{const{field:c,fieldState:f}=j({control:m,name:i,defaultValue:p,disabled:o,rules:s,shouldUnregister:e}),{error:t,invalid:u}=f,{container:x,message:d,...g}=n||{};return C("div",{className:v("w-full",x),children:[r(w,{...c,...a,invalid:u,classes:g}),r(I,{text:(t==null?void 0:t.message)||l,className:d,intent:t?"error":"simple",disabled:o})]})};export{tt as InputOtpControl};
|
|
2
2
|
//# sourceMappingURL=InputOtpControl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputOtpControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/inputOtp/InputOtpControl.tsx"],"sourcesContent":["import { type FieldValues, type Path, useController, type UseControllerProps } from 'react-hook-form'\nimport { InputOtpBase, type InputOtpBaseProps } from '$/shared/ui'\nimport { MessageView } from '$/shared/ui/formElements/ui'\nimport { cn } from '$/shared/utils'\n\ntype InputOtpControlClasses = InputOtpBaseProps['classes'] & {\n message?: string\n container?: string\n}\n\nexport type InputOtpControlProps<\n TFieldValues extends FieldValues = FieldValues,\n TName extends Path<TFieldValues> = Path<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n Omit<InputOtpBaseProps, 'classes'> & {\n classes?: InputOtpControlClasses\n helperText?: string\n }\n\nexport const InputOtpControl = <TFieldValues extends FieldValues = FieldValues>({\n control,\n name,\n defaultValue,\n disabled,\n rules,\n shouldUnregister,\n classes,\n helperText,\n ...props\n}: InputOtpControlProps<TFieldValues>) => {\n const { field, fieldState } = useController({ control, name, defaultValue, disabled, rules, shouldUnregister })\n\n const { error, invalid } = fieldState\n\n const { container, message, ...restClasses } = classes || {}\n\n return (\n <div className={cn('w-full', container)}>\n <InputOtpBase {...field} {...props} invalid={invalid} classes={restClasses} />\n <MessageView\n text={error?.message || helperText}\n className={message}\n intent={error ? 'error' : 'simple'}\n disabled={disabled}\n />\n </div>\n )\n}\n"],"names":["InputOtpControl","control","name","defaultValue","disabled","rules","shouldUnregister","classes","helperText","props","field","fieldState","useController","error","invalid","container","message","restClasses","cn","jsx","InputOtpBase","MessageView"],"mappings":"
|
|
1
|
+
{"version":3,"file":"InputOtpControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/inputOtp/InputOtpControl.tsx"],"sourcesContent":["import { type FieldValues, type Path, useController, type UseControllerProps } from 'react-hook-form'\nimport { InputOtpBase, type InputOtpBaseProps } from '$/shared/ui'\nimport { MessageView } from '$/shared/ui/formElements/ui'\nimport { cn } from '$/shared/utils'\n\ntype InputOtpControlClasses = InputOtpBaseProps['classes'] & {\n message?: string\n container?: string\n}\n\nexport type InputOtpControlProps<\n TFieldValues extends FieldValues = FieldValues,\n TName extends Path<TFieldValues> = Path<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n Omit<InputOtpBaseProps, 'classes'> & {\n classes?: InputOtpControlClasses\n helperText?: string\n }\n\nexport const InputOtpControl = <TFieldValues extends FieldValues = FieldValues>({\n control,\n name,\n defaultValue,\n disabled,\n rules,\n shouldUnregister,\n classes,\n helperText,\n ...props\n}: InputOtpControlProps<TFieldValues>) => {\n const { field, fieldState } = useController({ control, name, defaultValue, disabled, rules, shouldUnregister })\n\n const { error, invalid } = fieldState\n\n const { container, message, ...restClasses } = classes || {}\n\n return (\n <div className={cn('w-full', container)}>\n <InputOtpBase {...field} {...props} invalid={invalid} classes={restClasses} />\n <MessageView\n text={error?.message || helperText}\n className={message}\n intent={error ? 'error' : 'simple'}\n disabled={disabled}\n />\n </div>\n )\n}\n"],"names":["InputOtpControl","control","name","defaultValue","disabled","rules","shouldUnregister","classes","helperText","props","field","fieldState","useController","error","invalid","container","message","restClasses","cn","jsx","InputOtpBase","MessageView"],"mappings":"89CAmBO,MAAMA,GAAkB,CAAiD,CAC9E,QAAAC,EACA,KAAAC,EACA,aAAAC,EACA,SAAAC,EACA,MAAAC,EACA,iBAAAC,EACA,QAAAC,EACA,WAAAC,EACA,GAAGC,CACL,IAA0C,CACxC,KAAM,CAAE,MAAAC,EAAO,WAAAC,CAAA,EAAeC,EAAc,CAAE,QAAAX,EAAS,KAAAC,EAAM,aAAAC,EAAc,SAAAC,EAAU,MAAAC,EAAO,iBAAAC,CAAA,CAAkB,EAExG,CAAE,MAAAO,EAAO,QAAAC,CAAA,EAAYH,EAErB,CAAE,UAAAI,EAAW,QAAAC,EAAS,GAAGC,CAAA,EAAgBV,GAAW,CAAA,EAE1D,SACG,MAAA,CAAI,UAAWW,EAAG,SAAUH,CAAS,EACpC,SAAA,CAAAI,EAACC,GAAc,GAAGV,EAAQ,GAAGD,EAAO,QAAAK,EAAkB,QAASG,EAAa,EAC5EE,EAACE,EAAA,CACC,MAAMR,GAAA,YAAAA,EAAO,UAAWL,EACxB,UAAWQ,EACX,OAAQH,EAAQ,QAAU,SAC1B,SAAAT,CAAA,CAAA,CACF,EACF,CAEJ"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as k,jsx as r}from"react/jsx-runtime";import{useController as v}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{cn as w}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"react";import"
|
|
1
|
+
import{jsxs as k,jsx as r}from"react/jsx-runtime";import{useController as v}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{cn as w}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"react";import"react-dom";import"../../../modal/ui/IframeModalContent.js";import"../../../../../../node_modules/react-hot-toast/dist/index.js";import"../../../table/ui/primitives/Primitives.js";import"../../../carousel/ui/CarouselContent.js";import"../../../slot/Slot.js";import"../../uncontrolled/autocomplete/Autocomplete.js";import"../../uncontrolled/checkbox/Checkbox.js";import"../../../dropdownList/ui/dropdownItem/DropdownItem.js";import"../../uncontrolled/input/Input.js";import"../../uncontrolled/dayPicker/DayPicker.js";import"../../uncontrolled/inputOtp/InputOtpBase.js";import"../../uncontrolled/maskInput/MaskInput.js";import{RadioGroupBase as G}from"../../uncontrolled/radio/RadioGroup.js";import"../../uncontrolled/radio/ui/RadioItem.js";import"../../uncontrolled/select/Select.js";import"../../uncontrolled/slider/SliderBase.js";import"../../uncontrolled/switch/Switch.js";import"../../uncontrolled/textarea/Textarea.js";import"../../uncontrolled/uploader/UploaderBase.js";import{MessageView as R}from"../../ui/MessageView.js";import"../editor/ui/Editor.js";import"../input/MaskInputControl.js";const po=({classes:i,className:m,control:p,name:e,rules:s,shouldUnregister:l,disabled:t,defaultValue:a,helperText:n,label:c,...d})=>{const{field:f,fieldState:u}=v({control:p,name:e,rules:s,shouldUnregister:l,disabled:t,defaultValue:a}),{onChange:g,...C}=f,{invalid:x,error:o}=u,{container:h,message:b,label:N,...j}=i||{};return k("div",{className:h,children:[r("p",{className:w("desk-body-regular-l w-full pb-4 text-color-dark",N),children:c}),r(G,{...d,...C,onValueChange:g,invalid:x,className:m,classes:j}),r(R,{text:(o==null?void 0:o.message)||n,className:b,intent:o?"error":"simple",disabled:t})]})};export{po as RadioGroupControl};
|
|
2
2
|
//# sourceMappingURL=RadioGroupControl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RadioGroupControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/radio/RadioGroupControl.tsx"],"sourcesContent":["import { type Control, type FieldPath, type FieldValues, useController, type UseControllerProps } from 'react-hook-form'\nimport { RadioGroupBase, type RadioGroupBaseProps } from '$/shared/ui'\nimport { MessageView } from '$/shared/ui/formElements/ui'\nimport { cn } from '$/shared/utils'\n\ntype RadioControlClasses = RadioGroupBaseProps['classes'] & {\n container?: string\n message?: string\n label?: string\n}\n\nexport type RadioGroupControlProps<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n Omit<RadioGroupBaseProps, 'classes' | 'name'> & {\n /**\n * Отображаемый лейбл\n */\n label: string\n /**\n * Контрол объект для управления полем\n */\n control: Control<TFieldValues>\n /**\n * Дополнительные стили компонента\n */\n classes?: RadioControlClasses\n /**\n * Дополнительный текст\n */\n helperText?: string\n }\n\nexport const RadioGroupControl = <TFieldValues extends FieldValues = FieldValues>({\n classes,\n className,\n control,\n name,\n rules,\n shouldUnregister,\n disabled,\n defaultValue,\n helperText,\n label,\n ...props\n}: RadioGroupControlProps<TFieldValues>) => {\n const { field, fieldState } = useController({\n control,\n name,\n rules,\n shouldUnregister,\n disabled,\n defaultValue\n })\n\n const { onChange, ...restField } = field\n const { invalid, error } = fieldState\n const { container, message, label: labelClass, ...restClasses } = classes || {}\n\n return (\n <div className={container}>\n <p className={cn('desk-body-regular-l w-full pb-4 text-color-dark', labelClass)}>{label}</p>\n <RadioGroupBase\n {...props}\n {...restField}\n onValueChange={onChange}\n invalid={invalid}\n className={className}\n classes={restClasses}\n />\n <MessageView\n text={error?.message || helperText}\n className={message}\n intent={error ? 'error' : 'simple'}\n disabled={disabled}\n />\n </div>\n )\n}\n"],"names":["RadioGroupControl","classes","className","control","name","rules","shouldUnregister","disabled","defaultValue","helperText","label","props","field","fieldState","useController","onChange","restField","invalid","error","container","message","labelClass","restClasses","jsxs","jsx","cn","RadioGroupBase","MessageView"],"mappings":"
|
|
1
|
+
{"version":3,"file":"RadioGroupControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/radio/RadioGroupControl.tsx"],"sourcesContent":["import { type Control, type FieldPath, type FieldValues, useController, type UseControllerProps } from 'react-hook-form'\nimport { RadioGroupBase, type RadioGroupBaseProps } from '$/shared/ui'\nimport { MessageView } from '$/shared/ui/formElements/ui'\nimport { cn } from '$/shared/utils'\n\ntype RadioControlClasses = RadioGroupBaseProps['classes'] & {\n container?: string\n message?: string\n label?: string\n}\n\nexport type RadioGroupControlProps<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n Omit<RadioGroupBaseProps, 'classes' | 'name'> & {\n /**\n * Отображаемый лейбл\n */\n label: string\n /**\n * Контрол объект для управления полем\n */\n control: Control<TFieldValues>\n /**\n * Дополнительные стили компонента\n */\n classes?: RadioControlClasses\n /**\n * Дополнительный текст\n */\n helperText?: string\n }\n\nexport const RadioGroupControl = <TFieldValues extends FieldValues = FieldValues>({\n classes,\n className,\n control,\n name,\n rules,\n shouldUnregister,\n disabled,\n defaultValue,\n helperText,\n label,\n ...props\n}: RadioGroupControlProps<TFieldValues>) => {\n const { field, fieldState } = useController({\n control,\n name,\n rules,\n shouldUnregister,\n disabled,\n defaultValue\n })\n\n const { onChange, ...restField } = field\n const { invalid, error } = fieldState\n const { container, message, label: labelClass, ...restClasses } = classes || {}\n\n return (\n <div className={container}>\n <p className={cn('desk-body-regular-l w-full pb-4 text-color-dark', labelClass)}>{label}</p>\n <RadioGroupBase\n {...props}\n {...restField}\n onValueChange={onChange}\n invalid={invalid}\n className={className}\n classes={restClasses}\n />\n <MessageView\n text={error?.message || helperText}\n className={message}\n intent={error ? 'error' : 'simple'}\n disabled={disabled}\n />\n </div>\n )\n}\n"],"names":["RadioGroupControl","classes","className","control","name","rules","shouldUnregister","disabled","defaultValue","helperText","label","props","field","fieldState","useController","onChange","restField","invalid","error","container","message","labelClass","restClasses","jsxs","jsx","cn","RadioGroupBase","MessageView"],"mappings":"g+CAkCO,MAAMA,GAAoB,CAAiD,CAChF,QAAAC,EACA,UAAAC,EACA,QAAAC,EACA,KAAAC,EACA,MAAAC,EACA,iBAAAC,EACA,SAAAC,EACA,aAAAC,EACA,WAAAC,EACA,MAAAC,EACA,GAAGC,CACL,IAA4C,CAC1C,KAAM,CAAE,MAAAC,EAAO,WAAAC,CAAA,EAAeC,EAAc,CAC1C,QAAAX,EACA,KAAAC,EACA,MAAAC,EACA,iBAAAC,EACA,SAAAC,EACA,aAAAC,CAAA,CACD,EAEK,CAAE,SAAAO,EAAU,GAAGC,CAAA,EAAcJ,EAC7B,CAAE,QAAAK,EAAS,MAAAC,CAAA,EAAUL,EACrB,CAAE,UAAAM,EAAW,QAAAC,EAAS,MAAOC,EAAY,GAAGC,CAAA,EAAgBrB,GAAW,CAAA,EAE7E,OACEsB,EAAC,MAAA,CAAI,UAAWJ,EACd,SAAA,CAAAK,EAAC,KAAE,UAAWC,EAAG,kDAAmDJ,CAAU,EAAI,SAAAX,EAAM,EACxFc,EAACE,EAAA,CACE,GAAGf,EACH,GAAGK,EACJ,cAAeD,EACf,QAAAE,EACA,UAAAf,EACA,QAASoB,CAAA,CAAA,EAEXE,EAACG,EAAA,CACC,MAAMT,GAAA,YAAAA,EAAO,UAAWT,EACxB,UAAWW,EACX,OAAQF,EAAQ,QAAU,SAC1B,SAAAX,CAAA,CAAA,CACF,EACF,CAEJ"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as F,jsx as n}from"react/jsx-runtime";import{useMemo as O}from"react";import{useController as k}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{cn as q}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"
|
|
1
|
+
import{jsxs as F,jsx as n}from"react/jsx-runtime";import{useMemo as O}from"react";import{useController as k}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{cn as q}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"react-dom";import"../../../modal/ui/IframeModalContent.js";import"../../../../../../node_modules/react-hot-toast/dist/index.js";import"../../../table/ui/primitives/Primitives.js";import"../../../carousel/ui/CarouselContent.js";import"../../../slot/Slot.js";import"../../uncontrolled/autocomplete/Autocomplete.js";import"../../uncontrolled/checkbox/Checkbox.js";import"../../../dropdownList/ui/dropdownItem/DropdownItem.js";import"../../uncontrolled/input/Input.js";import"../../uncontrolled/dayPicker/DayPicker.js";import"../../uncontrolled/inputOtp/InputOtpBase.js";import"../../uncontrolled/maskInput/MaskInput.js";import"../../uncontrolled/radio/RadioGroup.js";import"../../uncontrolled/radio/ui/RadioItem.js";import{SelectBase as z}from"../../uncontrolled/select/Select.js";import{isSingleOption as D}from"../../uncontrolled/select/model/typeGuards.js";import"../../uncontrolled/slider/SliderBase.js";import"../../uncontrolled/switch/Switch.js";import"../../uncontrolled/textarea/Textarea.js";import"../../uncontrolled/uploader/UploaderBase.js";import{MessageView as E}from"../../ui/MessageView.js";import"../editor/ui/Editor.js";import"../input/MaskInputControl.js";const gr=({control:c,classes:f,name:l,rules:a,shouldUnregister:g,disabled:m,defaultValue:C,returnValue:o,options:t,helperText:d,...y})=>{const{field:h,fieldState:x}=k({control:c,name:l,rules:a,shouldUnregister:g,disabled:m,defaultValue:C}),{invalid:A,error:s}=x,{container:S,message:j,...w}=f||{},{value:i,onChange:e,...M}=h,N=r=>{if(Array.isArray(r)){const B=r.map(p=>o?o(p):p.value);e(B)}else D(r)?e(o?o(r):r==null?void 0:r.value):e(null)},v=O(()=>Array.isArray(i)?t.filter(r=>i.includes(o?o(r):r.value)):t.find(r=>(o?o(r):r.value)===i),[t,o,i]);return F("div",{className:q("w-full items-start gap-y-2",S),children:[n(z,{...y,...M,...w,options:t,value:v,onChange:N,invalid:A,disabled:m}),n(E,{text:s?s.message:d,className:j,intent:s?"error":"simple",disabled:m})]})};export{gr as SelectControl};
|
|
2
2
|
//# sourceMappingURL=SelectControl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/select/SelectControl.tsx"],"sourcesContent":["'use client'\n\nimport { useMemo } from 'react'\nimport { type Control, type FieldPath, type FieldValues, useController, type UseControllerProps } from 'react-hook-form'\nimport { isSingleOption, SelectBase, type SelectBaseProps, type SelectItemOption } from '$/shared/ui'\nimport { MessageView } from '$/shared/ui/formElements/ui'\nimport { cn } from '$/shared/utils'\n\ntype SelectControlClasses = SelectBaseProps<boolean>['classes'] & {\n container?: string\n message?: string\n}\n\nexport type SelectControlProps<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n SelectBaseProps<boolean> & {\n /**\n * Контрол объект для управления полем\n */\n control: Control<TFieldValues>\n /**\n * Дополнительные стили компонента\n */\n classes?: SelectControlClasses\n /**\n * Дополнительный текст\n */\n helperText?: string\n /**\n * Функция для управления возвращаемым значением\n */\n returnValue?: (option?: SelectItemOption) => string\n }\n\nexport const SelectControl = <TFieldValues extends FieldValues = FieldValues>({\n control,\n classes,\n name,\n rules,\n shouldUnregister,\n disabled,\n defaultValue,\n returnValue,\n options,\n helperText,\n ...props\n}: SelectControlProps<TFieldValues>) => {\n const { field, fieldState } = useController({\n control,\n name,\n rules,\n shouldUnregister,\n disabled,\n defaultValue\n })\n\n const { invalid, error } = fieldState\n const { container, message, ...restClasses } = classes || {}\n\n const { value, onChange, ...restField } = field\n\n const onValueChange = (value?: SelectItemOption | SelectItemOption[]) => {\n if (Array.isArray(value)) {\n const values = value.map((item) => (returnValue ? returnValue(item) : item.value))\n onChange(values)\n } else if (isSingleOption(value)) {\n onChange(returnValue ? returnValue(value) : value?.value)\n } else {\n onChange(null)\n }\n }\n\n const selected = useMemo<SelectItemOption | SelectItemOption[] | undefined>(() => {\n if (Array.isArray(value)) {\n return options.filter((option) => value.includes(returnValue ? returnValue(option) : option.value))\n } else {\n return options.find((option) => (returnValue ? returnValue(option) : option.value) === value)\n }\n }, [options, returnValue, value])\n\n return (\n <div className={cn('w-full items-start gap-y-2', container)}>\n <SelectBase\n {...props}\n {...restField}\n {...restClasses}\n options={options}\n value={selected}\n onChange={onValueChange}\n invalid={invalid}\n disabled={disabled}\n />\n <MessageView\n text={error ? error.message : helperText}\n className={message}\n intent={error ? 'error' : 'simple'}\n disabled={disabled}\n />\n </div>\n )\n}\n"],"names":["SelectControl","control","classes","name","rules","shouldUnregister","disabled","defaultValue","returnValue","options","helperText","props","field","fieldState","useController","invalid","error","container","message","restClasses","value","onChange","restField","onValueChange","values","item","isSingleOption","selected","useMemo","option","cn","jsx","SelectBase","MessageView"],"mappings":"
|
|
1
|
+
{"version":3,"file":"SelectControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/select/SelectControl.tsx"],"sourcesContent":["'use client'\n\nimport { useMemo } from 'react'\nimport { type Control, type FieldPath, type FieldValues, useController, type UseControllerProps } from 'react-hook-form'\nimport { isSingleOption, SelectBase, type SelectBaseProps, type SelectItemOption } from '$/shared/ui'\nimport { MessageView } from '$/shared/ui/formElements/ui'\nimport { cn } from '$/shared/utils'\n\ntype SelectControlClasses = SelectBaseProps<boolean>['classes'] & {\n container?: string\n message?: string\n}\n\nexport type SelectControlProps<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n SelectBaseProps<boolean> & {\n /**\n * Контрол объект для управления полем\n */\n control: Control<TFieldValues>\n /**\n * Дополнительные стили компонента\n */\n classes?: SelectControlClasses\n /**\n * Дополнительный текст\n */\n helperText?: string\n /**\n * Функция для управления возвращаемым значением\n */\n returnValue?: (option?: SelectItemOption) => string\n }\n\nexport const SelectControl = <TFieldValues extends FieldValues = FieldValues>({\n control,\n classes,\n name,\n rules,\n shouldUnregister,\n disabled,\n defaultValue,\n returnValue,\n options,\n helperText,\n ...props\n}: SelectControlProps<TFieldValues>) => {\n const { field, fieldState } = useController({\n control,\n name,\n rules,\n shouldUnregister,\n disabled,\n defaultValue\n })\n\n const { invalid, error } = fieldState\n const { container, message, ...restClasses } = classes || {}\n\n const { value, onChange, ...restField } = field\n\n const onValueChange = (value?: SelectItemOption | SelectItemOption[]) => {\n if (Array.isArray(value)) {\n const values = value.map((item) => (returnValue ? returnValue(item) : item.value))\n onChange(values)\n } else if (isSingleOption(value)) {\n onChange(returnValue ? returnValue(value) : value?.value)\n } else {\n onChange(null)\n }\n }\n\n const selected = useMemo<SelectItemOption | SelectItemOption[] | undefined>(() => {\n if (Array.isArray(value)) {\n return options.filter((option) => value.includes(returnValue ? returnValue(option) : option.value))\n } else {\n return options.find((option) => (returnValue ? returnValue(option) : option.value) === value)\n }\n }, [options, returnValue, value])\n\n return (\n <div className={cn('w-full items-start gap-y-2', container)}>\n <SelectBase\n {...props}\n {...restField}\n {...restClasses}\n options={options}\n value={selected}\n onChange={onValueChange}\n invalid={invalid}\n disabled={disabled}\n />\n <MessageView\n text={error ? error.message : helperText}\n className={message}\n intent={error ? 'error' : 'simple'}\n disabled={disabled}\n />\n </div>\n )\n}\n"],"names":["SelectControl","control","classes","name","rules","shouldUnregister","disabled","defaultValue","returnValue","options","helperText","props","field","fieldState","useController","invalid","error","container","message","restClasses","value","onChange","restField","onValueChange","values","item","isSingleOption","selected","useMemo","option","cn","jsx","SelectBase","MessageView"],"mappings":"6jDAoCO,MAAMA,GAAgB,CAAiD,CAC5E,QAAAC,EACA,QAAAC,EACA,KAAAC,EACA,MAAAC,EACA,iBAAAC,EACA,SAAAC,EACA,aAAAC,EACA,YAAAC,EACA,QAAAC,EACA,WAAAC,EACA,GAAGC,CACL,IAAwC,CACtC,KAAM,CAAE,MAAAC,EAAO,WAAAC,CAAA,EAAeC,EAAc,CAC1C,QAAAb,EACA,KAAAE,EACA,MAAAC,EACA,iBAAAC,EACA,SAAAC,EACA,aAAAC,CAAA,CACD,EAEK,CAAE,QAAAQ,EAAS,MAAAC,CAAA,EAAUH,EACrB,CAAE,UAAAI,EAAW,QAAAC,EAAS,GAAGC,CAAA,EAAgBjB,GAAW,CAAA,EAEpD,CAAE,MAAAkB,EAAO,SAAAC,EAAU,GAAGC,GAAcV,EAEpCW,EAAiBH,GAAkD,CACvE,GAAI,MAAM,QAAQA,CAAK,EAAG,CACxB,MAAMI,EAASJ,EAAM,IAAKK,GAAUjB,EAAcA,EAAYiB,CAAI,EAAIA,EAAK,KAAM,EACjFJ,EAASG,CAAM,CACjB,MAAWE,EAAeN,CAAK,EAC7BC,EAASb,EAAcA,EAAYY,CAAK,EAAIA,GAAAA,YAAAA,EAAO,KAAK,EAExDC,EAAS,IAAI,CAEjB,EAEMM,EAAWC,EAA2D,IACtE,MAAM,QAAQR,CAAK,EACdX,EAAQ,OAAQoB,GAAWT,EAAM,SAASZ,EAAcA,EAAYqB,CAAM,EAAIA,EAAO,KAAK,CAAC,EAE3FpB,EAAQ,KAAMoB,IAAYrB,EAAcA,EAAYqB,CAAM,EAAIA,EAAO,SAAWT,CAAK,EAE7F,CAACX,EAASD,EAAaY,CAAK,CAAC,EAEhC,SACG,MAAA,CAAI,UAAWU,EAAG,6BAA8Bb,CAAS,EACxD,SAAA,CAAAc,EAACC,EAAA,CACE,GAAGrB,EACH,GAAGW,EACH,GAAGH,EACJ,QAAAV,EACA,MAAOkB,EACP,SAAUJ,EACV,QAAAR,EACA,SAAAT,CAAA,CAAA,EAEFyB,EAACE,EAAA,CACC,KAAMjB,EAAQA,EAAM,QAAUN,EAC9B,UAAWQ,EACX,OAAQF,EAAQ,QAAU,SAC1B,SAAAV,CAAA,CAAA,CACF,EACF,CAEJ"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as r}from"react/jsx-runtime";import{useController as C}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{cn as S}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"react";import"
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";import{useController as C}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{cn as S}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"react";import"react-dom";import"../../../modal/ui/IframeModalContent.js";import"../../../../../../node_modules/react-hot-toast/dist/index.js";import"../../../table/ui/primitives/Primitives.js";import"../../../carousel/ui/CarouselContent.js";import"../../../slot/Slot.js";import"../../uncontrolled/autocomplete/Autocomplete.js";import"../../uncontrolled/checkbox/Checkbox.js";import"../../../dropdownList/ui/dropdownItem/DropdownItem.js";import"../../uncontrolled/input/Input.js";import"../../uncontrolled/dayPicker/DayPicker.js";import"../../uncontrolled/inputOtp/InputOtpBase.js";import"../../uncontrolled/maskInput/MaskInput.js";import"../../uncontrolled/radio/RadioGroup.js";import"../../uncontrolled/radio/ui/RadioItem.js";import"../../uncontrolled/select/Select.js";import{SliderBase as h}from"../../uncontrolled/slider/SliderBase.js";import"../../uncontrolled/switch/Switch.js";import"../../uncontrolled/textarea/Textarea.js";import"../../uncontrolled/uploader/UploaderBase.js";import"../editor/ui/Editor.js";import"../input/MaskInputControl.js";const X=o=>{const{control:t,name:i,defaultValue:m,disabled:p,rules:s,shouldUnregister:e,classes:l,...n}=o,{field:a,fieldState:c}=C({control:t,name:i,defaultValue:m,disabled:p,rules:s,shouldUnregister:e}),{invalid:d}=c,{container:f,...u}=l||{};return r("div",{className:S("w-full",f),children:r(h,{...n,...a,classes:u,invalid:d})})};export{X as SliderControl};
|
|
2
2
|
//# sourceMappingURL=SliderControl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SliderControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/slider/SliderControl.tsx"],"sourcesContent":["import { type Control, type FieldValues, type Path, useController, type UseControllerProps } from 'react-hook-form'\nimport type { SliderBaseClasses, SliderGatewayProps } from '../../uncontrolled/slider/model/types'\nimport { SliderBase } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\ntype SliderControlClasses = SliderBaseClasses & {\n container?: string\n}\n\nexport type SliderControlProps<\n TFieldValues extends FieldValues,\n TName extends Path<TFieldValues> = Path<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n SliderGatewayProps & {\n control: Control<TFieldValues>\n classes?: SliderControlClasses\n }\n\nexport const SliderControl = <TFieldValues extends FieldValues, TName extends Path<TFieldValues>>(\n props: SliderControlProps<TFieldValues, TName>\n) => {\n const { control, name, defaultValue, disabled, rules, shouldUnregister, classes, ...restProps } = props\n\n const { field, fieldState } = useController({\n control,\n name,\n defaultValue,\n disabled,\n rules,\n shouldUnregister\n })\n\n const { invalid } = fieldState\n\n const { container, ...restClasses } = classes || {}\n\n return (\n <div className={cn('w-full', container)}>\n <SliderBase {...restProps} {...field} classes={restClasses} invalid={invalid} />\n </div>\n )\n}\n"],"names":["SliderControl","props","control","name","defaultValue","disabled","rules","shouldUnregister","classes","restProps","field","fieldState","useController","invalid","container","restClasses","cn","jsx","SliderBase"],"mappings":"
|
|
1
|
+
{"version":3,"file":"SliderControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/slider/SliderControl.tsx"],"sourcesContent":["import { type Control, type FieldValues, type Path, useController, type UseControllerProps } from 'react-hook-form'\nimport type { SliderBaseClasses, SliderGatewayProps } from '../../uncontrolled/slider/model/types'\nimport { SliderBase } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\ntype SliderControlClasses = SliderBaseClasses & {\n container?: string\n}\n\nexport type SliderControlProps<\n TFieldValues extends FieldValues,\n TName extends Path<TFieldValues> = Path<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n SliderGatewayProps & {\n control: Control<TFieldValues>\n classes?: SliderControlClasses\n }\n\nexport const SliderControl = <TFieldValues extends FieldValues, TName extends Path<TFieldValues>>(\n props: SliderControlProps<TFieldValues, TName>\n) => {\n const { control, name, defaultValue, disabled, rules, shouldUnregister, classes, ...restProps } = props\n\n const { field, fieldState } = useController({\n control,\n name,\n defaultValue,\n disabled,\n rules,\n shouldUnregister\n })\n\n const { invalid } = fieldState\n\n const { container, ...restClasses } = classes || {}\n\n return (\n <div className={cn('w-full', container)}>\n <SliderBase {...restProps} {...field} classes={restClasses} invalid={invalid} />\n </div>\n )\n}\n"],"names":["SliderControl","props","control","name","defaultValue","disabled","rules","shouldUnregister","classes","restProps","field","fieldState","useController","invalid","container","restClasses","cn","jsx","SliderBase"],"mappings":"45CAkBO,MAAMA,EACXC,GACG,CACH,KAAM,CAAE,QAAAC,EAAS,KAAAC,EAAM,aAAAC,EAAc,SAAAC,EAAU,MAAAC,EAAO,iBAAAC,EAAkB,QAAAC,EAAS,GAAGC,CAAA,EAAcR,EAE5F,CAAE,MAAAS,EAAO,WAAAC,CAAA,EAAeC,EAAc,CAC1C,QAAAV,EACA,KAAAC,EACA,aAAAC,EACA,SAAAC,EACA,MAAAC,EACA,iBAAAC,CAAA,CACD,EAEK,CAAE,QAAAM,GAAYF,EAEd,CAAE,UAAAG,EAAW,GAAGC,CAAA,EAAgBP,GAAW,CAAA,EAEjD,SACG,MAAA,CAAI,UAAWQ,EAAG,SAAUF,CAAS,EACpC,SAAAG,EAACC,EAAA,CAAY,GAAGT,EAAY,GAAGC,EAAO,QAASK,EAAa,QAAAF,EAAkB,EAChF,CAEJ"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as i,jsx as r}from"react/jsx-runtime";import{useId as B}from"react";import{useController as F}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{cn as t}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import
|
|
1
|
+
import{jsxs as i,jsx as r}from"react/jsx-runtime";import{useId as B}from"react";import{useController as F}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{cn as t}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import{Popover as I}from"../../../popover/Popover.js";import"react-dom";import"../../../modal/ui/IframeModalContent.js";import"../../../../../../node_modules/react-hot-toast/dist/index.js";import{Icon as z}from"../../../icon/Icon.js";import"../../../table/ui/primitives/Primitives.js";import"../../../carousel/ui/CarouselContent.js";import"../../../slot/Slot.js";import"../../uncontrolled/autocomplete/Autocomplete.js";import"../../uncontrolled/checkbox/Checkbox.js";import"../../../dropdownList/ui/dropdownItem/DropdownItem.js";import"../../uncontrolled/input/Input.js";import"../../uncontrolled/dayPicker/DayPicker.js";import"../../uncontrolled/inputOtp/InputOtpBase.js";import"../../uncontrolled/maskInput/MaskInput.js";import"../../uncontrolled/radio/RadioGroup.js";import"../../uncontrolled/radio/ui/RadioItem.js";import"../../uncontrolled/select/Select.js";import"../../uncontrolled/slider/SliderBase.js";import{SwitchBase as E}from"../../uncontrolled/switch/Switch.js";import"../../uncontrolled/textarea/Textarea.js";import"../../uncontrolled/uploader/UploaderBase.js";import"../editor/ui/Editor.js";import"../input/MaskInputControl.js";import{MessageView as M}from"../../ui/MessageView.js";const xo=({classes:c,className:n,control:a,name:f,rules:x,defaultValue:d,disabled:o,shouldUnregister:g,children:h,helperText:e,tooltip:m,popoverProps:u,...C})=>{const{field:v,fieldState:y}=F({control:a,name:f,rules:x,defaultValue:d,disabled:o,shouldUnregister:g}),{value:N,onChange:b,...k}=v,{invalid:w,error:s}=y,{container:S,message:l,...j}=c||{},p=B();return i("div",{className:t("flex flex-col",{"pointer-events-none":o},n,S),children:[i("div",{className:"flex items-center gap-2",children:[r(E,{...C,...k,invalid:w,classes:j,id:p,checked:N,onCheckedChange:b}),i("label",{htmlFor:p,className:t("mob-body-regular-l text-color-dark",{"flex flex-col":!!e,"text-color-disabled":o}),children:[h,e&&r("p",{className:t("mob-body-regular-s text-color-tetriary",{"text-color-disabled":o},l),children:e})]}),m&&r(I,{side:"top",classes:{root:"self-start py-[2px]"},triggerElement:r(z,{name:"info/helpCircle",className:t("size-4 text-color-blue-grey-600",{"text-icon-blue-grey-100":o})}),...u,children:m})]}),s&&r(M,{text:s.message,className:l,intent:"error",disabled:o})]})};export{xo as SwitchControl};
|
|
2
2
|
//# sourceMappingURL=SwitchControl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SwitchControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/switch/SwitchControl.tsx"],"sourcesContent":["import { useId } from 'react'\nimport { type Control, type FieldPath, type FieldValues, useController, type UseControllerProps } from 'react-hook-form'\nimport { MessageView } from '../../ui'\nimport { Icon, Popover, SwitchBase, type SwitchBaseProps } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\ntype SwitchControlClasses = SwitchBaseProps['classes'] & {\n container?: string\n message?: string\n}\n\ntype PopoverProps = React.ComponentPropsWithoutRef<typeof Popover>\n\nexport type SwitchControlProps<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n Omit<SwitchBaseProps, 'classes'> & {\n /**\n * Контрол объект для управления полем\n */\n control: Control<TFieldValues>\n /**\n * Отображаемый лейбл\n */\n children: React.ReactElement | string\n /**\n * Дополнительные стили компонента\n */\n classes?: SwitchControlClasses\n /**\n * Дополнительный текст\n */\n helperText?: string\n /**\n * Текст всплывающей подсказки\n */\n tooltip?: React.ReactElement | string\n /**\n * Свойства `Popover` компонента\n */\n popoverProps?: PopoverProps\n }\n\nexport const SwitchControl = <TFieldValues extends FieldValues = FieldValues>({\n classes,\n className,\n control,\n name,\n rules,\n defaultValue,\n disabled,\n shouldUnregister,\n children,\n helperText,\n tooltip,\n popoverProps,\n ...props\n}: SwitchControlProps<TFieldValues>) => {\n const { field, fieldState } = useController({\n control,\n name,\n rules,\n defaultValue,\n disabled,\n shouldUnregister\n })\n\n const { value, onChange, ...restField } = field\n const { invalid, error } = fieldState\n const { container, message, ...restClasses } = classes || {}\n const id = useId()\n\n return (\n <div className={cn('flex flex-col', { 'pointer-events-none': disabled }, className, container)}>\n <div className='flex items-center gap-2'>\n <SwitchBase\n {...props}\n {...restField}\n invalid={invalid}\n classes={restClasses}\n id={id}\n checked={value}\n onCheckedChange={onChange}\n />\n <label\n htmlFor={id}\n className={cn('mob-body-regular-l text-color-dark', {\n 'flex flex-col': Boolean(helperText),\n 'text-color-disabled': disabled\n })}\n >\n {children}\n {helperText && (\n <p\n className={cn(\n 'mob-body-regular-s text-color-tetriary',\n {\n 'text-color-disabled': disabled\n },\n message\n )}\n >\n {helperText}\n </p>\n )}\n </label>\n {tooltip && (\n <Popover\n side='top'\n classes={{ root: 'self-start py-[2px]' }}\n triggerElement={\n <Icon\n name='info/helpCircle'\n className={cn('size-4 text-color-blue-grey-600', {\n 'text-icon-blue-grey-100': disabled\n })}\n />\n }\n {...popoverProps}\n >\n {tooltip}\n </Popover>\n )}\n </div>\n {error && <MessageView text={error.message} className={message} intent='error' disabled={disabled} />}\n </div>\n )\n}\n"],"names":["SwitchControl","classes","className","control","name","rules","defaultValue","disabled","shouldUnregister","children","helperText","tooltip","popoverProps","props","field","fieldState","useController","value","onChange","restField","invalid","error","container","message","restClasses","id","useId","jsxs","cn","jsx","SwitchBase","Popover","Icon","MessageView"],"mappings":"
|
|
1
|
+
{"version":3,"file":"SwitchControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/switch/SwitchControl.tsx"],"sourcesContent":["import { useId } from 'react'\nimport { type Control, type FieldPath, type FieldValues, useController, type UseControllerProps } from 'react-hook-form'\nimport { MessageView } from '../../ui'\nimport { Icon, Popover, SwitchBase, type SwitchBaseProps } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\ntype SwitchControlClasses = SwitchBaseProps['classes'] & {\n container?: string\n message?: string\n}\n\ntype PopoverProps = React.ComponentPropsWithoutRef<typeof Popover>\n\nexport type SwitchControlProps<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n Omit<SwitchBaseProps, 'classes'> & {\n /**\n * Контрол объект для управления полем\n */\n control: Control<TFieldValues>\n /**\n * Отображаемый лейбл\n */\n children: React.ReactElement | string\n /**\n * Дополнительные стили компонента\n */\n classes?: SwitchControlClasses\n /**\n * Дополнительный текст\n */\n helperText?: string\n /**\n * Текст всплывающей подсказки\n */\n tooltip?: React.ReactElement | string\n /**\n * Свойства `Popover` компонента\n */\n popoverProps?: PopoverProps\n }\n\nexport const SwitchControl = <TFieldValues extends FieldValues = FieldValues>({\n classes,\n className,\n control,\n name,\n rules,\n defaultValue,\n disabled,\n shouldUnregister,\n children,\n helperText,\n tooltip,\n popoverProps,\n ...props\n}: SwitchControlProps<TFieldValues>) => {\n const { field, fieldState } = useController({\n control,\n name,\n rules,\n defaultValue,\n disabled,\n shouldUnregister\n })\n\n const { value, onChange, ...restField } = field\n const { invalid, error } = fieldState\n const { container, message, ...restClasses } = classes || {}\n const id = useId()\n\n return (\n <div className={cn('flex flex-col', { 'pointer-events-none': disabled }, className, container)}>\n <div className='flex items-center gap-2'>\n <SwitchBase\n {...props}\n {...restField}\n invalid={invalid}\n classes={restClasses}\n id={id}\n checked={value}\n onCheckedChange={onChange}\n />\n <label\n htmlFor={id}\n className={cn('mob-body-regular-l text-color-dark', {\n 'flex flex-col': Boolean(helperText),\n 'text-color-disabled': disabled\n })}\n >\n {children}\n {helperText && (\n <p\n className={cn(\n 'mob-body-regular-s text-color-tetriary',\n {\n 'text-color-disabled': disabled\n },\n message\n )}\n >\n {helperText}\n </p>\n )}\n </label>\n {tooltip && (\n <Popover\n side='top'\n classes={{ root: 'self-start py-[2px]' }}\n triggerElement={\n <Icon\n name='info/helpCircle'\n className={cn('size-4 text-color-blue-grey-600', {\n 'text-icon-blue-grey-100': disabled\n })}\n />\n }\n {...popoverProps}\n >\n {tooltip}\n </Popover>\n )}\n </div>\n {error && <MessageView text={error.message} className={message} intent='error' disabled={disabled} />}\n </div>\n )\n}\n"],"names":["SwitchControl","classes","className","control","name","rules","defaultValue","disabled","shouldUnregister","children","helperText","tooltip","popoverProps","props","field","fieldState","useController","value","onChange","restField","invalid","error","container","message","restClasses","id","useId","jsxs","cn","jsx","SwitchBase","Popover","Icon","MessageView"],"mappings":"+kDA4CO,MAAMA,GAAgB,CAAiD,CAC5E,QAAAC,EACA,UAAAC,EACA,QAAAC,EACA,KAAAC,EACA,MAAAC,EACA,aAAAC,EACA,SAAAC,EACA,iBAAAC,EACA,SAAAC,EACA,WAAAC,EACA,QAAAC,EACA,aAAAC,EACA,GAAGC,CACL,IAAwC,CACtC,KAAM,CAAE,MAAAC,EAAO,WAAAC,CAAA,EAAeC,EAAc,CAC1C,QAAAb,EACA,KAAAC,EACA,MAAAC,EACA,aAAAC,EACA,SAAAC,EACA,iBAAAC,CAAA,CACD,EAEK,CAAE,MAAAS,EAAO,SAAAC,EAAU,GAAGC,GAAcL,EACpC,CAAE,QAAAM,EAAS,MAAAC,CAAA,EAAUN,EACrB,CAAE,UAAAO,EAAW,QAAAC,EAAS,GAAGC,CAAA,EAAgBvB,GAAW,CAAA,EACpDwB,EAAKC,EAAA,EAEX,OACEC,EAAC,MAAA,CAAI,UAAWC,EAAG,gBAAiB,CAAE,sBAAuBrB,CAAA,EAAYL,EAAWoB,CAAS,EAC3F,SAAA,CAAAK,EAAC,MAAA,CAAI,UAAU,0BACb,SAAA,CAAAE,EAACC,EAAA,CACE,GAAGjB,EACH,GAAGM,EACJ,QAAAC,EACA,QAASI,EACT,GAAAC,EACA,QAASR,EACT,gBAAiBC,CAAA,CAAA,EAEnBS,EAAC,QAAA,CACC,QAASF,EACT,UAAWG,EAAG,qCAAsC,CAClD,gBAAiB,EAAQlB,EACzB,sBAAuBH,CAAA,CACxB,EAEA,SAAA,CAAAE,EACAC,GACCmB,EAAC,IAAA,CACC,UAAWD,EACT,yCACA,CACE,sBAAuBrB,CAAA,EAEzBgB,CAAA,EAGD,SAAAb,CAAA,CAAA,CACH,CAAA,CAAA,EAGHC,GACCkB,EAACE,EAAA,CACC,KAAK,MACL,QAAS,CAAE,KAAM,qBAAA,EACjB,eACEF,EAACG,EAAA,CACC,KAAK,kBACL,UAAWJ,EAAG,kCAAmC,CAC/C,0BAA2BrB,CAAA,CAC5B,CAAA,CAAA,EAGJ,GAAGK,EAEH,SAAAD,CAAA,CAAA,CACH,EAEJ,EACCU,GAASQ,EAACI,EAAA,CAAY,KAAMZ,EAAM,QAAS,UAAWE,EAAS,OAAO,QAAQ,SAAAhB,CAAA,CAAoB,CAAA,EACrG,CAEJ"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as v,jsx as m}from"react/jsx-runtime";import{useController as w}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{cn as C}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"react";import"
|
|
1
|
+
import{jsxs as v,jsx as m}from"react/jsx-runtime";import{useController as w}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{cn as C}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"react";import"react-dom";import"../../../modal/ui/IframeModalContent.js";import"../../../../../../node_modules/react-hot-toast/dist/index.js";import"../../../table/ui/primitives/Primitives.js";import"../../../carousel/ui/CarouselContent.js";import"../../../slot/Slot.js";import"../../uncontrolled/autocomplete/Autocomplete.js";import"../../uncontrolled/checkbox/Checkbox.js";import"../../../dropdownList/ui/dropdownItem/DropdownItem.js";import"../../uncontrolled/input/Input.js";import"../../uncontrolled/dayPicker/DayPicker.js";import"../../uncontrolled/inputOtp/InputOtpBase.js";import"../../uncontrolled/maskInput/MaskInput.js";import"../../uncontrolled/radio/RadioGroup.js";import"../../uncontrolled/radio/ui/RadioItem.js";import"../../uncontrolled/select/Select.js";import"../../uncontrolled/slider/SliderBase.js";import"../../uncontrolled/switch/Switch.js";import{TextareaBase as T}from"../../uncontrolled/textarea/Textarea.js";import"../../uncontrolled/uploader/UploaderBase.js";import{MessageView as j}from"../../ui/MessageView.js";import"../editor/ui/Editor.js";import"../input/MaskInputControl.js";const ot=({classes:p,control:e,name:s,rules:a,disabled:r,defaultValue:n,shouldUnregister:l,helperText:c,...i})=>{const{field:f,fieldState:d}=w({control:e,name:s,rules:a,disabled:r,defaultValue:n,shouldUnregister:l}),{error:t,invalid:o,isTouched:x}=d,{message:h,root:u,...g}=p||{};return v("div",{className:C("w-full",u),children:[m(T,{...i,...f,"aria-invalid":o,invalid:o,classes:g,attachmentProps:{invalid:o,isTouched:x,withValidateIcons:!0,...i.attachmentProps}}),m(j,{text:(t==null?void 0:t.message)||c,className:h,intent:t?"error":"simple",disabled:r})]})};export{ot as TextareaControl};
|
|
2
2
|
//# sourceMappingURL=TextareaControl.js.map
|