@scbt-ecom/ui 0.95.0 → 0.95.2

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.
Files changed (278) hide show
  1. package/dist/lib/configs/tailwindConfigBase.js +1 -1
  2. package/dist/lib/configs/tailwindConfigBase.js.map +1 -1
  3. package/dist/lib/configs/tailwindPresets/resetPreset.js +1 -1
  4. package/dist/lib/configs/tailwindPresets/resetPreset.js.map +1 -1
  5. package/dist/lib/exports/widget.js +1 -1
  6. package/dist/lib/shared/hooks/useClickOutside.js +1 -1
  7. package/dist/lib/shared/hooks/useClickOutside.js.map +1 -1
  8. package/dist/lib/shared/style.css +1 -1
  9. package/dist/lib/shared/ui/brandLogos/BrandLogos.js +1 -1
  10. package/dist/lib/shared/ui/brandLogos/BrandLogos.js.map +1 -1
  11. package/dist/lib/shared/ui/calendar/Calendar.js +1 -1
  12. package/dist/lib/shared/ui/calendar/Calendar.js.map +1 -1
  13. package/dist/lib/shared/ui/calendar/ui/Navigation.js +1 -1
  14. package/dist/lib/shared/ui/calendar/ui/Navigation.js.map +1 -1
  15. package/dist/lib/shared/ui/calendar/ui/selectDate/ui/Trigger.js +1 -1
  16. package/dist/lib/shared/ui/calendar/ui/selectDate/ui/Trigger.js.map +1 -1
  17. package/dist/lib/shared/ui/carousel/CarouselBase.js +1 -1
  18. package/dist/lib/shared/ui/carousel/CarouselBase.js.map +1 -1
  19. package/dist/lib/shared/ui/carousel/model/helpers.js +1 -1
  20. package/dist/lib/shared/ui/carousel/model/helpers.js.map +1 -1
  21. package/dist/lib/shared/ui/carousel/ui/CarouselContent.js +1 -1
  22. package/dist/lib/shared/ui/carousel/ui/CarouselContent.js.map +1 -1
  23. package/dist/lib/shared/ui/dialog/Dialog.js +1 -1
  24. package/dist/lib/shared/ui/dialog/Dialog.js.map +1 -1
  25. package/dist/lib/shared/ui/dropdownList/DropdownList.js +1 -1
  26. package/dist/lib/shared/ui/dropdownList/DropdownList.js.map +1 -1
  27. package/dist/lib/shared/ui/formElements/controlled/autocomplete/Autocomplete.js +1 -1
  28. package/dist/lib/shared/ui/formElements/controlled/autocomplete/Autocomplete.js.map +1 -1
  29. package/dist/lib/shared/ui/formElements/controlled/checkbox/CheckboxControl.js +1 -1
  30. package/dist/lib/shared/ui/formElements/controlled/checkbox/CheckboxControl.js.map +1 -1
  31. package/dist/lib/shared/ui/formElements/controlled/combobox/ComboboxControl.js +1 -1
  32. package/dist/lib/shared/ui/formElements/controlled/combobox/ComboboxControl.js.map +1 -1
  33. package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/dayPickerControl.js +1 -1
  34. package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/dayPickerControl.js.map +1 -1
  35. package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/model/utils.js +1 -1
  36. package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/model/utils.js.map +1 -1
  37. package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/range.js +1 -1
  38. package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/range.js.map +1 -1
  39. package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/single.js +1 -1
  40. package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/single.js.map +1 -1
  41. package/dist/lib/shared/ui/formElements/controlled/editor/model/helper.js +1 -1
  42. package/dist/lib/shared/ui/formElements/controlled/editor/model/helper.js.map +1 -1
  43. package/dist/lib/shared/ui/formElements/controlled/editor/ui/Editor.js +1 -1
  44. package/dist/lib/shared/ui/formElements/controlled/editor/ui/Editor.js.map +1 -1
  45. package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/SetColor.js +1 -1
  46. package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/SetColor.js.map +1 -1
  47. package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/SetCoreCommands.js +1 -1
  48. package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/SetCoreCommands.js.map +1 -1
  49. package/dist/lib/shared/ui/formElements/controlled/input/InputControl.js +1 -1
  50. package/dist/lib/shared/ui/formElements/controlled/input/InputControl.js.map +1 -1
  51. package/dist/lib/shared/ui/formElements/controlled/input/MaskInputControl.js +1 -1
  52. package/dist/lib/shared/ui/formElements/controlled/input/MaskInputControl.js.map +1 -1
  53. package/dist/lib/shared/ui/formElements/controlled/inputCurrency/InputCurrencyControl.js +1 -1
  54. package/dist/lib/shared/ui/formElements/controlled/inputCurrency/InputCurrencyControl.js.map +1 -1
  55. package/dist/lib/shared/ui/formElements/controlled/inputCurrency/ui/MenuTrigger.js +1 -1
  56. package/dist/lib/shared/ui/formElements/controlled/inputCurrency/ui/MenuTrigger.js.map +1 -1
  57. package/dist/lib/shared/ui/formElements/controlled/inputOtp/InputOtpControl.js +1 -1
  58. package/dist/lib/shared/ui/formElements/controlled/inputOtp/InputOtpControl.js.map +1 -1
  59. package/dist/lib/shared/ui/formElements/controlled/radio/RadioGroupControl.js +1 -1
  60. package/dist/lib/shared/ui/formElements/controlled/radio/RadioGroupControl.js.map +1 -1
  61. package/dist/lib/shared/ui/formElements/controlled/select/SelectControl.js +1 -1
  62. package/dist/lib/shared/ui/formElements/controlled/select/SelectControl.js.map +1 -1
  63. package/dist/lib/shared/ui/formElements/controlled/slider/SliderControl.js +1 -1
  64. package/dist/lib/shared/ui/formElements/controlled/slider/SliderControl.js.map +1 -1
  65. package/dist/lib/shared/ui/formElements/controlled/switch/SwitchControl.js +1 -1
  66. package/dist/lib/shared/ui/formElements/controlled/switch/SwitchControl.js.map +1 -1
  67. package/dist/lib/shared/ui/formElements/controlled/textarea/TextareaControl.js +1 -1
  68. package/dist/lib/shared/ui/formElements/controlled/textarea/TextareaControl.js.map +1 -1
  69. package/dist/lib/shared/ui/formElements/controlled/uploader/UploaderControl.js +1 -1
  70. package/dist/lib/shared/ui/formElements/controlled/uploader/UploaderControl.js.map +1 -1
  71. package/dist/lib/shared/ui/formElements/ui/fieldAttachment/ui/ValidateSlot.js +1 -1
  72. package/dist/lib/shared/ui/formElements/ui/fieldAttachment/ui/ValidateSlot.js.map +1 -1
  73. package/dist/lib/shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.js +1 -1
  74. package/dist/lib/shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.js.map +1 -1
  75. package/dist/lib/shared/ui/formElements/uncontrolled/checkbox/Checkbox.js +1 -1
  76. package/dist/lib/shared/ui/formElements/uncontrolled/checkbox/Checkbox.js.map +1 -1
  77. package/dist/lib/shared/ui/formElements/uncontrolled/combobox/combobox.js +1 -1
  78. package/dist/lib/shared/ui/formElements/uncontrolled/combobox/combobox.js.map +1 -1
  79. package/dist/lib/shared/ui/formElements/uncontrolled/dayPicker/DayPicker.js +1 -1
  80. package/dist/lib/shared/ui/formElements/uncontrolled/dayPicker/DayPicker.js.map +1 -1
  81. package/dist/lib/shared/ui/formElements/uncontrolled/index.js +1 -1
  82. package/dist/lib/shared/ui/formElements/uncontrolled/index.js.map +1 -1
  83. package/dist/lib/shared/ui/formElements/uncontrolled/input/Input.js +1 -1
  84. package/dist/lib/shared/ui/formElements/uncontrolled/input/Input.js.map +1 -1
  85. package/dist/lib/shared/ui/formElements/uncontrolled/maskInput/MaskInput.js +1 -1
  86. package/dist/lib/shared/ui/formElements/uncontrolled/maskInput/MaskInput.js.map +1 -1
  87. package/dist/lib/shared/ui/formElements/uncontrolled/select/Select.js +1 -1
  88. package/dist/lib/shared/ui/formElements/uncontrolled/select/Select.js.map +1 -1
  89. package/dist/lib/shared/ui/formElements/uncontrolled/select/ui/Chip.js +1 -1
  90. package/dist/lib/shared/ui/formElements/uncontrolled/select/ui/Chip.js.map +1 -1
  91. package/dist/lib/shared/ui/formElements/uncontrolled/slider/ui/sliderAlgorithmic/SliderAlgorithmic.js +1 -1
  92. package/dist/lib/shared/ui/formElements/uncontrolled/slider/ui/sliderAlgorithmic/SliderAlgorithmic.js.map +1 -1
  93. package/dist/lib/shared/ui/formElements/uncontrolled/slider/ui/sliderMarks/SliderMarks.js +1 -1
  94. package/dist/lib/shared/ui/formElements/uncontrolled/slider/ui/sliderMarks/SliderMarks.js.map +1 -1
  95. package/dist/lib/shared/ui/formElements/uncontrolled/slider/ui/sliderStep/SliderStep.js +1 -1
  96. package/dist/lib/shared/ui/formElements/uncontrolled/slider/ui/sliderStep/SliderStep.js.map +1 -1
  97. package/dist/lib/shared/ui/formElements/uncontrolled/uploader/UploaderBase.js +1 -1
  98. package/dist/lib/shared/ui/formElements/uncontrolled/uploader/UploaderBase.js.map +1 -1
  99. package/dist/lib/shared/ui/formElements/uncontrolled/uploader/model/hooks/useUploader.js +1 -1
  100. package/dist/lib/shared/ui/formElements/uncontrolled/uploader/model/hooks/useUploader.js.map +1 -1
  101. package/dist/lib/shared/ui/formElements/uncontrolled/uploader/ui/UploaderFile.js +1 -1
  102. package/dist/lib/shared/ui/formElements/uncontrolled/uploader/ui/UploaderFile.js.map +1 -1
  103. package/dist/lib/shared/ui/formElements/uncontrolled/uploader/ui/UploaderFilename.js +1 -1
  104. package/dist/lib/shared/ui/formElements/uncontrolled/uploader/ui/UploaderFilename.js.map +1 -1
  105. package/dist/lib/shared/ui/hint/Hint.js +1 -1
  106. package/dist/lib/shared/ui/hint/Hint.js.map +1 -1
  107. package/dist/lib/shared/ui/modal/ui/ModalHeader.js +1 -1
  108. package/dist/lib/shared/ui/modal/ui/ModalHeader.js.map +1 -1
  109. package/dist/lib/shared/ui/popover/Popover.js +1 -1
  110. package/dist/lib/shared/ui/popover/Popover.js.map +1 -1
  111. package/dist/lib/shared/ui/slot/ui/SlotClone.js +1 -1
  112. package/dist/lib/shared/ui/slot/ui/SlotClone.js.map +1 -1
  113. package/dist/lib/shared/ui/table/Desktop.js +1 -1
  114. package/dist/lib/shared/ui/table/Desktop.js.map +1 -1
  115. package/dist/lib/shared/ui/table/Table.js +1 -1
  116. package/dist/lib/shared/ui/table/Table.js.map +1 -1
  117. package/dist/lib/shared/ui/table/model/TableUtils.js +1 -1
  118. package/dist/lib/shared/ui/table/model/TableUtils.js.map +1 -1
  119. package/dist/lib/shared/ui/table/ui/dataTableColumnHeader/DataTableColumnHeader.js +1 -1
  120. package/dist/lib/shared/ui/table/ui/dataTableColumnHeader/DataTableColumnHeader.js.map +1 -1
  121. package/dist/lib/shared/ui/table/ui/editableCell/EditableCell.js +1 -1
  122. package/dist/lib/shared/ui/table/ui/editableCell/EditableCell.js.map +1 -1
  123. package/dist/lib/shared/utils/cn.js +1 -1
  124. package/dist/lib/shared/utils/cn.js.map +1 -1
  125. package/dist/lib/shared/validation/base/base.constants.js +1 -1
  126. package/dist/lib/shared/validation/base/base.constants.js.map +1 -1
  127. package/dist/lib/shared/validation/base/date.validators.js +1 -1
  128. package/dist/lib/shared/validation/base/date.validators.js.map +1 -1
  129. package/dist/lib/shared/validation/base/email.validators.js +1 -1
  130. package/dist/lib/shared/validation/base/email.validators.js.map +1 -1
  131. package/dist/lib/shared/validation/base/phone.validators.js +1 -1
  132. package/dist/lib/shared/validation/base/phone.validators.js.map +1 -1
  133. package/dist/lib/shared/validation/base/regex.validators.js +1 -1
  134. package/dist/lib/shared/validation/base/regex.validators.js.map +1 -1
  135. package/dist/lib/shared/validation/base/url.validators.js +1 -1
  136. package/dist/lib/shared/validation/base/url.validators.js.map +1 -1
  137. package/dist/lib/widgets/authProvider/AuthProvider.js +1 -1
  138. package/dist/lib/widgets/authProvider/AuthProvider.js.map +1 -1
  139. package/dist/lib/widgets/authProvider/ui/Esia.js +1 -1
  140. package/dist/lib/widgets/authProvider/ui/Esia.js.map +1 -1
  141. package/dist/lib/widgets/authProvider/ui/MobileId.js +1 -1
  142. package/dist/lib/widgets/authProvider/ui/MobileId.js.map +1 -1
  143. package/dist/lib/widgets/authProvider/ui/ui/AuthWrapper.js +1 -1
  144. package/dist/lib/widgets/authProvider/ui/ui/AuthWrapper.js.map +1 -1
  145. package/dist/lib/widgets/authProvider/ui/ui/Links.js +1 -1
  146. package/dist/lib/widgets/authProvider/ui/ui/Links.js.map +1 -1
  147. package/dist/lib/widgets/banner/index.js +1 -1
  148. package/dist/lib/widgets/banner/ui/banners/BannerImageFull.js +1 -1
  149. package/dist/lib/widgets/banner/ui/banners/BannerImageFull.js.map +1 -1
  150. package/dist/lib/widgets/banner/ui/banners/BannerWithSeparateImg.js +1 -1
  151. package/dist/lib/widgets/banner/ui/banners/BannerWithSeparateImg.js.map +1 -1
  152. package/dist/lib/widgets/banner/ui/banners/ui/Advantages.js +1 -1
  153. package/dist/lib/widgets/banner/ui/banners/ui/Advantages.js.map +1 -1
  154. package/dist/lib/widgets/benefit/Benefit.js +1 -1
  155. package/dist/lib/widgets/benefit/Benefit.js.map +1 -1
  156. package/dist/lib/widgets/benefit/ui/BenefitItem.js +1 -1
  157. package/dist/lib/widgets/benefit/ui/BenefitItem.js.map +1 -1
  158. package/dist/lib/widgets/breadcrumbs/Breadcrumb.js +1 -1
  159. package/dist/lib/widgets/breadcrumbs/Breadcrumb.js.map +1 -1
  160. package/dist/lib/widgets/breadcrumbs/Breadcrumbs.js +1 -1
  161. package/dist/lib/widgets/breadcrumbs/Breadcrumbs.js.map +1 -1
  162. package/dist/lib/widgets/buttonWithHandlers/ButtonWithHandlers.js +1 -1
  163. package/dist/lib/widgets/buttonWithHandlers/ButtonWithHandlers.js.map +1 -1
  164. package/dist/lib/widgets/buttonWithHandlers/model/useButtonHandler.js +1 -1
  165. package/dist/lib/widgets/buttonWithHandlers/model/useButtonHandler.js.map +1 -1
  166. package/dist/lib/widgets/calculator/Calculator.js +1 -1
  167. package/dist/lib/widgets/calculator/Calculator.js.map +1 -1
  168. package/dist/lib/widgets/calculator/model/helpers.js +1 -1
  169. package/dist/lib/widgets/calculator/model/helpers.js.map +1 -1
  170. package/dist/lib/widgets/calculator/ui/calculatorFields/hooks/useAdditionalSlider.js +1 -1
  171. package/dist/lib/widgets/calculator/ui/calculatorFields/hooks/useAdditionalSlider.js.map +1 -1
  172. package/dist/lib/widgets/calculator/ui/calculatorFields/ui/AdditionalSlider.js +1 -1
  173. package/dist/lib/widgets/calculator/ui/calculatorFields/ui/AdditionalSlider.js.map +1 -1
  174. package/dist/lib/widgets/calculator/ui/calculatorFields/ui/CalculatorModal.js +1 -1
  175. package/dist/lib/widgets/calculator/ui/calculatorFields/ui/CalculatorModal.js.map +1 -1
  176. package/dist/lib/widgets/calculator/ui/calculatorInfo/CalculatorInfo.js +1 -1
  177. package/dist/lib/widgets/calculator/ui/calculatorInfo/CalculatorInfo.js.map +1 -1
  178. package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/AssistHint.js +1 -1
  179. package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/AssistHint.js.map +1 -1
  180. package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/CalculatorInfoHead.js +1 -1
  181. package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/CalculatorInfoHead.js.map +1 -1
  182. package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/InfoListItem.js +1 -1
  183. package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/InfoListItem.js.map +1 -1
  184. package/dist/lib/widgets/fallbacksView/FallbacksView.js +1 -1
  185. package/dist/lib/widgets/fallbacksView/FallbacksView.js.map +1 -1
  186. package/dist/lib/widgets/fallbacksView/model/helpers.js +1 -1
  187. package/dist/lib/widgets/fallbacksView/model/helpers.js.map +1 -1
  188. package/dist/lib/widgets/fieldMapper/FieldMapper.js +1 -1
  189. package/dist/lib/widgets/fieldMapper/FieldMapper.js.map +1 -1
  190. package/dist/lib/widgets/footer/Footer.js +1 -1
  191. package/dist/lib/widgets/footer/Footer.js.map +1 -1
  192. package/dist/lib/widgets/footer/ui/FooterLogo.js +1 -1
  193. package/dist/lib/widgets/footer/ui/FooterLogo.js.map +1 -1
  194. package/dist/lib/widgets/footer/ui/NavLinks.js +1 -1
  195. package/dist/lib/widgets/footer/ui/NavLinks.js.map +1 -1
  196. package/dist/lib/widgets/footer/ui/PhonesBlock.js +1 -1
  197. package/dist/lib/widgets/footer/ui/PhonesBlock.js.map +1 -1
  198. package/dist/lib/widgets/footer/ui/SiteMap.js +1 -1
  199. package/dist/lib/widgets/footer/ui/SiteMap.js.map +1 -1
  200. package/dist/lib/widgets/footer/ui/SocialLinks.js +1 -1
  201. package/dist/lib/widgets/footer/ui/SocialLinks.js.map +1 -1
  202. package/dist/lib/widgets/header/Header.js +1 -1
  203. package/dist/lib/widgets/header/Header.js.map +1 -1
  204. package/dist/lib/widgets/header/model/helpers.js +1 -1
  205. package/dist/lib/widgets/header/model/helpers.js.map +1 -1
  206. package/dist/lib/widgets/index.js +1 -1
  207. package/dist/lib/widgets/infoBlock/InfoBlock.js +1 -1
  208. package/dist/lib/widgets/infoBlock/InfoBlock.js.map +1 -1
  209. package/dist/lib/widgets/infoBlock/ui/LinksList.js +1 -1
  210. package/dist/lib/widgets/infoBlock/ui/LinksList.js.map +1 -1
  211. package/dist/lib/widgets/infoBlock/ui/RootContent.js +1 -1
  212. package/dist/lib/widgets/infoBlock/ui/RootContent.js.map +1 -1
  213. package/dist/lib/widgets/interLinking/InterLinking.js +1 -1
  214. package/dist/lib/widgets/interLinking/InterLinking.js.map +1 -1
  215. package/dist/lib/widgets/interLinking/ui/ColumnGroup.js +1 -1
  216. package/dist/lib/widgets/interLinking/ui/ColumnGroup.js.map +1 -1
  217. package/dist/lib/widgets/interLinking/ui/LinksList.js +1 -1
  218. package/dist/lib/widgets/interLinking/ui/LinksList.js.map +1 -1
  219. package/dist/lib/widgets/longBanner/LongBanner.js +1 -1
  220. package/dist/lib/widgets/longBanner/LongBanner.js.map +1 -1
  221. package/dist/lib/widgets/longBanner/ui/TextItem.js +1 -1
  222. package/dist/lib/widgets/longBanner/ui/TextItem.js.map +1 -1
  223. package/dist/lib/widgets/model/helpers.js +2 -2
  224. package/dist/lib/widgets/model/helpers.js.map +1 -1
  225. package/dist/lib/widgets/seoHeader/SeoHeader.js +1 -1
  226. package/dist/lib/widgets/seoHeader/SeoHeader.js.map +1 -1
  227. package/dist/lib/widgets/seoHeader/ui/desktop/CategoriesDesktop.js +1 -1
  228. package/dist/lib/widgets/seoHeader/ui/desktop/CategoriesDesktop.js.map +1 -1
  229. package/dist/lib/widgets/seoHeader/ui/desktop/rootTab/RootTab.js +1 -1
  230. package/dist/lib/widgets/seoHeader/ui/desktop/rootTab/RootTab.js.map +1 -1
  231. package/dist/lib/widgets/seoHeader/ui/desktop/tab/ui/content/TabContent.js +1 -1
  232. package/dist/lib/widgets/seoHeader/ui/desktop/tab/ui/content/TabContent.js.map +1 -1
  233. package/dist/lib/widgets/seoHeader/ui/mobile/CategoriesMobile.js +1 -1
  234. package/dist/lib/widgets/seoHeader/ui/mobile/CategoriesMobile.js.map +1 -1
  235. package/dist/lib/widgets/seoHeader/ui/mobile/menu/Menu.js +1 -1
  236. package/dist/lib/widgets/seoHeader/ui/mobile/menu/Menu.js.map +1 -1
  237. package/dist/lib/widgets/seoHeader/ui/mobile/menu/MenuItem.js +1 -1
  238. package/dist/lib/widgets/seoHeader/ui/mobile/menu/MenuItem.js.map +1 -1
  239. package/dist/lib/widgets/stepper/Stepper.js +1 -1
  240. package/dist/lib/widgets/stepper/Stepper.js.map +1 -1
  241. package/dist/lib/widgets/stepper/ui/StepperCarousel.js +1 -1
  242. package/dist/lib/widgets/stepper/ui/StepperCarousel.js.map +1 -1
  243. package/dist/lib/widgets/usefulInfo/UsefulInfo.js +1 -1
  244. package/dist/lib/widgets/usefulInfo/UsefulInfo.js.map +1 -1
  245. package/dist/lib/widgets/usefulInfo/ui/subEntities/documents/Documents.js +1 -1
  246. package/dist/lib/widgets/usefulInfo/ui/subEntities/documents/Documents.js.map +1 -1
  247. package/dist/lib/widgets/usefulInfo/ui/subEntities/documents/ui/document/Document.js +1 -1
  248. package/dist/lib/widgets/usefulInfo/ui/subEntities/documents/ui/document/Document.js.map +1 -1
  249. package/dist/lib/widgets/usefulInfo/ui/subEntities/html/Html.js +1 -1
  250. package/dist/lib/widgets/usefulInfo/ui/subEntities/html/Html.js.map +1 -1
  251. package/dist/lib/widgets/usefulInfo/ui/subEntities/table/Table.js +1 -1
  252. package/dist/lib/widgets/usefulInfo/ui/subEntities/table/Table.js.map +1 -1
  253. package/dist/lib/widgets/userFeedback/UserFeedback.js +1 -1
  254. package/dist/lib/widgets/userFeedback/UserFeedback.js.map +1 -1
  255. package/dist/lib/widgets/userFeedback/ui/FeedbackTrigger.js +1 -1
  256. package/dist/lib/widgets/userFeedback/ui/FeedbackTrigger.js.map +1 -1
  257. package/dist/lib/widgets/userFeedback/ui/Finally.js +1 -1
  258. package/dist/lib/widgets/userFeedback/ui/Finally.js.map +1 -1
  259. package/dist/lib/widgets/userFeedback/ui/SelectRating.js +1 -1
  260. package/dist/lib/widgets/userFeedback/ui/SelectRating.js.map +1 -1
  261. package/dist/node_modules/@hookform/resolvers/dist/resolvers.js +2 -0
  262. package/dist/node_modules/@hookform/resolvers/dist/resolvers.js.map +1 -0
  263. package/dist/node_modules/@hookform/resolvers/zod/dist/zod.js +1 -1
  264. package/dist/node_modules/@hookform/resolvers/zod/dist/zod.js.map +1 -1
  265. package/dist/node_modules/@tanstack/query-core/build/modern/queryObserver.js +1 -1
  266. package/dist/node_modules/@tanstack/query-core/build/modern/queryObserver.js.map +1 -1
  267. package/dist/node_modules/@tiptap/react/dist/index.js.map +1 -1
  268. package/dist/node_modules/prosemirror-model/dist/index.js +3 -3
  269. package/dist/node_modules/prosemirror-model/dist/index.js.map +1 -1
  270. package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js +2 -0
  271. package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js.map +1 -0
  272. package/dist/node_modules/tailwindcss/plugin.js +1 -1
  273. package/dist/node_modules/tailwindcss-animate/index.js +2 -0
  274. package/dist/node_modules/tailwindcss-animate/index.js.map +1 -0
  275. package/dist/src/shared/utils/getDynamicSchema.js +1 -1
  276. package/dist/src/shared/utils/getDynamicSchema.js.map +1 -1
  277. package/dist/stats.html +1 -1
  278. package/package.json +5 -5
@@ -1,2 +1,2 @@
1
- import{jsxs as m,jsx as t}from"react/jsx-runtime";import{useDevice as q}from"../../hooks/useDevice.js";import"react";import{cn as r}from"../../utils/cn.js";import"@hookform/resolvers";import{Heading as z}from"../heading/Heading.js";import{useArrowNavigation as E}from"./model/hooks/useArrowNavigation.js";import{useDotsNavigation as F}from"./model/hooks/useDotsNavigation.js";import{useCarousel as G}from"./model/hooks/useCarousel.js";import{defaultCarouselOptions as A,defaultNavArrowOptions as h,defaultDotsOptions as b,defaultAutoPlayOptions as J}from"./model/helpers.js";import{ArrowNavigationButton as l}from"./ui/ArrowNavigationButton.js";import"../button/Button.js";import{CarouselContent as D}from"./ui/CarouselContent.js";import{ContainerWithNavigation as K}from"./ui/ContainerWithNavigation.js";const eo=({dotsOptions:x=b,navArrowOptions:k=h,carouselOptions:B=A,heading:p,autoPlayOptions:P,setVisibleIndex:y,visibleIndex:a,children:d,classes:o,...j})=>{const H={...A,...B},M={...J,...P},W={...h,...k},f={...b,...x},{emblaApi:u,navigationHandler:v,emblaRef:w}=G({carouselOptions:H,autoPlayOptions:M}),N=F({emblaApi:u,navigationHandler:v,setVisibleIndex:y}),{prevBtnDisabled:g,nextBtnDisabled:C,onClickNavigationButton:i}=E({emblaApi:u,navigationHandler:v}),{isMobile:R,isDesktop:V}=q(),{deskVisible:L,mobVisible:T,position:n}=W??{},e=L&&V||T&&R,O=!!p||e&&n==="top-right";return m("div",{className:r("flex flex-col",o==null?void 0:o.root),...j,children:[O&&m("div",{className:r("flex items-center justify-between gap-6",{"mb-6":O},o==null?void 0:o.header),children:[!!p&&t(z,{as:"h2",className:r(o==null?void 0:o.heading),children:"Другие предложения"}),e&&n==="top-right"&&m("div",{className:r("ml-auto flex items-center gap-2",o==null?void 0:o.arrowsNavWrapper),children:[t(l,{mode:"prev",onClick:i,disabled:g,classes:o==null?void 0:o.arrowLeftClasses}),t(l,{mode:"next",onClick:i,disabled:C,classes:o==null?void 0:o.arrowRightClasses})]})]}),e&&n==="center"?t(K,{onClickNavigationButton:i,prevBtnDisabled:g,nextBtnDisabled:C,classes:o==null?void 0:o.containerWithNavClasses,children:t(D,{visibleIndex:a,dotsOptions:f,ref:w,dotsProps:N,classes:o==null?void 0:o.carouselContentClasses,children:d})}):t(D,{visibleIndex:a,dotsOptions:f,ref:w,dotsProps:N,classes:o==null?void 0:o.carouselContentClasses,children:d})]})};export{eo as CarouselBase};
1
+ import{jsxs as m,jsx as t}from"react/jsx-runtime";import{useDevice as q}from"../../hooks/useDevice.js";import"react";import{cn as r}from"../../utils/cn.js";import{Heading as z}from"../heading/Heading.js";import{useArrowNavigation as E}from"./model/hooks/useArrowNavigation.js";import{useDotsNavigation as F}from"./model/hooks/useDotsNavigation.js";import{useCarousel as G}from"./model/hooks/useCarousel.js";import{defaultCarouselOptions as A,defaultNavArrowOptions as h,defaultDotsOptions as b,defaultAutoPlayOptions as J}from"./model/helpers.js";import{ArrowNavigationButton as l}from"./ui/ArrowNavigationButton.js";import"../button/Button.js";import{CarouselContent as D}from"./ui/CarouselContent.js";import{ContainerWithNavigation as K}from"./ui/ContainerWithNavigation.js";const no=({dotsOptions:x=b,navArrowOptions:k=h,carouselOptions:B=A,heading:p,autoPlayOptions:P,setVisibleIndex:y,visibleIndex:a,children:d,classes:o,...j})=>{const H={...A,...B},M={...J,...P},W={...h,...k},f={...b,...x},{emblaApi:u,navigationHandler:v,emblaRef:w}=G({carouselOptions:H,autoPlayOptions:M}),N=F({emblaApi:u,navigationHandler:v,setVisibleIndex:y}),{prevBtnDisabled:g,nextBtnDisabled:C,onClickNavigationButton:i}=E({emblaApi:u,navigationHandler:v}),{isMobile:R,isDesktop:V}=q(),{deskVisible:L,mobVisible:T,position:n}=W??{},e=L&&V||T&&R,O=!!p||e&&n==="top-right";return m("div",{className:r("flex flex-col",o==null?void 0:o.root),...j,children:[O&&m("div",{className:r("flex items-center justify-between gap-6",{"mb-6":O},o==null?void 0:o.header),children:[!!p&&t(z,{as:"h2",className:r(o==null?void 0:o.heading),children:"Другие предложения"}),e&&n==="top-right"&&m("div",{className:r("ml-auto flex items-center gap-2",o==null?void 0:o.arrowsNavWrapper),children:[t(l,{mode:"prev",onClick:i,disabled:g,classes:o==null?void 0:o.arrowLeftClasses}),t(l,{mode:"next",onClick:i,disabled:C,classes:o==null?void 0:o.arrowRightClasses})]})]}),e&&n==="center"?t(K,{onClickNavigationButton:i,prevBtnDisabled:g,nextBtnDisabled:C,classes:o==null?void 0:o.containerWithNavClasses,children:t(D,{visibleIndex:a,dotsOptions:f,ref:w,dotsProps:N,classes:o==null?void 0:o.carouselContentClasses,children:d})}):t(D,{visibleIndex:a,dotsOptions:f,ref:w,dotsProps:N,classes:o==null?void 0:o.carouselContentClasses,children:d})]})};export{no as CarouselBase};
2
2
  //# sourceMappingURL=CarouselBase.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CarouselBase.js","sources":["../../../../../lib/shared/ui/carousel/CarouselBase.tsx"],"sourcesContent":["import { type HTMLAttributes, type ReactNode } from 'react'\nimport { type EmblaOptionsType } from 'embla-carousel'\nimport type { AutoplayOptionsType } from 'embla-carousel-autoplay'\nimport { useDevice } from '../../hooks'\nimport { Heading } from '../heading'\nimport {\n defaultAutoPlayOptions,\n defaultCarouselOptions,\n defaultDotsOptions,\n defaultNavArrowOptions,\n type DotsOptions,\n type NavArrowOptions,\n useArrowNavigation,\n useCarousel,\n useDotsNavigation\n} from './model'\nimport { ArrowNavigationButton, type ArrowNavigationButtonClasses, CarouselContent, type CarouselContentClasses } from './ui'\nimport { ContainerWithNavigation, type ContainerWithNavigationClasses } from './ui/ContainerWithNavigation'\nimport { cn } from '$/shared/utils'\n\nexport type CarouselClasses = {\n root?: string\n header?: string\n heading?: string\n arrowsNavWrapper?: string\n arrowLeftClasses?: ArrowNavigationButtonClasses\n arrowRightClasses?: ArrowNavigationButtonClasses\n containerWithNavClasses?: ContainerWithNavigationClasses\n carouselContentClasses?: CarouselContentClasses\n}\n\nexport interface CarouselBaseProps extends HTMLAttributes<HTMLDivElement> {\n children: ReactNode\n heading?: string\n carouselOptions?: EmblaOptionsType\n dotsOptions?: DotsOptions\n navArrowOptions?: NavArrowOptions\n autoPlayOptions?: AutoplayOptionsType\n setVisibleIndex: (index: number) => void\n visibleIndex: number\n classes?: CarouselClasses\n}\n\nexport const CarouselBase = ({\n dotsOptions = defaultDotsOptions,\n navArrowOptions = defaultNavArrowOptions,\n carouselOptions = defaultCarouselOptions,\n heading,\n autoPlayOptions,\n setVisibleIndex,\n visibleIndex,\n children,\n classes,\n ...props\n}: CarouselBaseProps) => {\n const mergedCarouselOptions = { ...defaultCarouselOptions, ...carouselOptions }\n const mergedAutoPlayOptions = { ...defaultAutoPlayOptions, ...autoPlayOptions }\n const mergedNavArrowOptions = { ...defaultNavArrowOptions, ...navArrowOptions }\n const mergedDotsOptions = { ...defaultDotsOptions, ...dotsOptions }\n\n const { emblaApi, navigationHandler, emblaRef } = useCarousel({\n carouselOptions: mergedCarouselOptions,\n autoPlayOptions: mergedAutoPlayOptions\n })\n\n const dotsProps = useDotsNavigation({ emblaApi, navigationHandler, setVisibleIndex })\n const { prevBtnDisabled, nextBtnDisabled, onClickNavigationButton } = useArrowNavigation({\n emblaApi,\n navigationHandler\n })\n\n const { isMobile, isDesktop } = useDevice()\n const { deskVisible, mobVisible, position: navArrowPosition } = mergedNavArrowOptions ?? {}\n\n //Отображения стрелок если переданы и мобильное разрешение\n const withNavArrowsOnMob = mobVisible && isMobile\n //Отображения стрелок если переданы и полноэкранное разрешение\n const winNavArrowsOnDesk = deskVisible && isDesktop\n //Отображения стрелок если переданы\n const winNavArrows = winNavArrowsOnDesk || withNavArrowsOnMob\n\n const withHeadingAndArrowsTop = Boolean(heading) || (winNavArrows && navArrowPosition === 'top-right')\n\n return (\n <div className={cn('flex flex-col', classes?.root)} {...props}>\n {withHeadingAndArrowsTop && (\n <div className={cn('flex items-center justify-between gap-6', { 'mb-6': withHeadingAndArrowsTop }, classes?.header)}>\n {Boolean(heading) && (\n <Heading as='h2' className={cn(classes?.heading)}>\n Другие предложения\n </Heading>\n )}\n\n {winNavArrows && navArrowPosition === 'top-right' && (\n <div className={cn('ml-auto flex items-center gap-2', classes?.arrowsNavWrapper)}>\n <ArrowNavigationButton\n mode='prev'\n onClick={onClickNavigationButton}\n disabled={prevBtnDisabled}\n classes={classes?.arrowLeftClasses}\n />\n <ArrowNavigationButton\n mode='next'\n onClick={onClickNavigationButton}\n disabled={nextBtnDisabled}\n classes={classes?.arrowRightClasses}\n />\n </div>\n )}\n </div>\n )}\n\n {winNavArrows && navArrowPosition === 'center' ? (\n <ContainerWithNavigation\n onClickNavigationButton={onClickNavigationButton}\n prevBtnDisabled={prevBtnDisabled}\n nextBtnDisabled={nextBtnDisabled}\n classes={classes?.containerWithNavClasses}\n >\n <CarouselContent\n visibleIndex={visibleIndex}\n dotsOptions={mergedDotsOptions}\n ref={emblaRef}\n dotsProps={dotsProps}\n classes={classes?.carouselContentClasses}\n >\n {children}\n </CarouselContent>\n </ContainerWithNavigation>\n ) : (\n <CarouselContent\n visibleIndex={visibleIndex}\n dotsOptions={mergedDotsOptions}\n ref={emblaRef}\n dotsProps={dotsProps}\n classes={classes?.carouselContentClasses}\n >\n {children}\n </CarouselContent>\n )}\n </div>\n )\n}\n"],"names":["CarouselBase","dotsOptions","defaultDotsOptions","navArrowOptions","defaultNavArrowOptions","carouselOptions","defaultCarouselOptions","heading","autoPlayOptions","setVisibleIndex","visibleIndex","children","classes","props","mergedCarouselOptions","mergedAutoPlayOptions","defaultAutoPlayOptions","mergedNavArrowOptions","mergedDotsOptions","emblaApi","navigationHandler","emblaRef","useCarousel","dotsProps","useDotsNavigation","prevBtnDisabled","nextBtnDisabled","onClickNavigationButton","useArrowNavigation","isMobile","isDesktop","useDevice","deskVisible","mobVisible","navArrowPosition","winNavArrows","withHeadingAndArrowsTop","jsxs","cn","jsx","Heading","ArrowNavigationButton","ContainerWithNavigation","CarouselContent"],"mappings":"qyBA2CO,MAAMA,GAAe,CAAC,CAC3B,YAAAC,EAAcC,EACd,gBAAAC,EAAkBC,EAClB,gBAAAC,EAAkBC,EAClB,QAAAC,EACA,gBAAAC,EACA,gBAAAC,EACA,aAAAC,EACA,SAAAC,EACA,QAAAC,EACA,GAAGC,CACL,IAAyB,CACvB,MAAMC,EAAwB,CAAE,GAAGR,EAAwB,GAAGD,CAAA,EACxDU,EAAwB,CAAE,GAAGC,EAAwB,GAAGR,CAAA,EACxDS,EAAwB,CAAE,GAAGb,EAAwB,GAAGD,CAAA,EACxDe,EAAoB,CAAE,GAAGhB,EAAoB,GAAGD,CAAA,EAEhD,CAAE,SAAAkB,EAAU,kBAAAC,EAAmB,SAAAC,CAAA,EAAaC,EAAY,CAC5D,gBAAiBR,EACjB,gBAAiBC,CAAA,CAClB,EAEKQ,EAAYC,EAAkB,CAAE,SAAAL,EAAU,kBAAAC,EAAmB,gBAAAX,EAAiB,EAC9E,CAAE,gBAAAgB,EAAiB,gBAAAC,EAAiB,wBAAAC,CAAA,EAA4BC,EAAmB,CACvF,SAAAT,EACA,kBAAAC,CAAA,CACD,EAEK,CAAE,SAAAS,EAAU,UAAAC,CAAA,EAAcC,EAAA,EAC1B,CAAE,YAAAC,EAAa,WAAAC,EAAY,SAAUC,CAAA,EAAqBjB,GAAyB,CAAA,EAOnFkB,EAFqBH,GAAeF,GAFfG,GAAcJ,EAMnCO,EAA0B,EAAQ7B,GAAa4B,GAAgBD,IAAqB,YAE1F,OACEG,EAAC,OAAI,UAAWC,EAAG,gBAAiB1B,GAAA,YAAAA,EAAS,IAAI,EAAI,GAAGC,EACrD,SAAA,CAAAuB,GACCC,EAAC,MAAA,CAAI,UAAWC,EAAG,0CAA2C,CAAE,OAAQF,CAAA,EAA2BxB,GAAA,YAAAA,EAAS,MAAM,EAC/G,SAAA,CAAA,EAAQL,GACPgC,EAACC,EAAA,CAAQ,GAAG,KAAK,UAAWF,EAAG1B,GAAA,YAAAA,EAAS,OAAO,EAAG,SAAA,oBAAA,CAElD,EAGDuB,GAAgBD,IAAqB,aACpCG,EAAC,MAAA,CAAI,UAAWC,EAAG,kCAAmC1B,GAAA,YAAAA,EAAS,gBAAgB,EAC7E,SAAA,CAAA2B,EAACE,EAAA,CACC,KAAK,OACL,QAASd,EACT,SAAUF,EACV,QAASb,GAAA,YAAAA,EAAS,gBAAA,CAAA,EAEpB2B,EAACE,EAAA,CACC,KAAK,OACL,QAASd,EACT,SAAUD,EACV,QAASd,GAAA,YAAAA,EAAS,iBAAA,CAAA,CACpB,CAAA,CACF,CAAA,EAEJ,EAGDuB,GAAgBD,IAAqB,SACpCK,EAACG,EAAA,CACC,wBAAAf,EACA,gBAAAF,EACA,gBAAAC,EACA,QAASd,GAAA,YAAAA,EAAS,wBAElB,SAAA2B,EAACI,EAAA,CACC,aAAAjC,EACA,YAAaQ,EACb,IAAKG,EACL,UAAAE,EACA,QAASX,GAAA,YAAAA,EAAS,uBAEjB,SAAAD,CAAA,CAAA,CACH,CAAA,EAGF4B,EAACI,EAAA,CACC,aAAAjC,EACA,YAAaQ,EACb,IAAKG,EACL,UAAAE,EACA,QAASX,GAAA,YAAAA,EAAS,uBAEjB,SAAAD,CAAA,CAAA,CACH,EAEJ,CAEJ"}
1
+ {"version":3,"file":"CarouselBase.js","sources":["../../../../../lib/shared/ui/carousel/CarouselBase.tsx"],"sourcesContent":["import { type HTMLAttributes, type ReactNode } from 'react'\nimport { type EmblaOptionsType } from 'embla-carousel'\nimport type { AutoplayOptionsType } from 'embla-carousel-autoplay'\nimport { useDevice } from '../../hooks'\nimport { Heading } from '../heading'\nimport {\n defaultAutoPlayOptions,\n defaultCarouselOptions,\n defaultDotsOptions,\n defaultNavArrowOptions,\n type DotsOptions,\n type NavArrowOptions,\n useArrowNavigation,\n useCarousel,\n useDotsNavigation\n} from './model'\nimport { ArrowNavigationButton, type ArrowNavigationButtonClasses, CarouselContent, type CarouselContentClasses } from './ui'\nimport { ContainerWithNavigation, type ContainerWithNavigationClasses } from './ui/ContainerWithNavigation'\nimport { cn } from '$/shared/utils'\n\nexport type CarouselClasses = {\n root?: string\n header?: string\n heading?: string\n arrowsNavWrapper?: string\n arrowLeftClasses?: ArrowNavigationButtonClasses\n arrowRightClasses?: ArrowNavigationButtonClasses\n containerWithNavClasses?: ContainerWithNavigationClasses\n carouselContentClasses?: CarouselContentClasses\n}\n\nexport interface CarouselBaseProps extends HTMLAttributes<HTMLDivElement> {\n children: ReactNode\n heading?: string\n carouselOptions?: EmblaOptionsType\n dotsOptions?: DotsOptions\n navArrowOptions?: NavArrowOptions\n autoPlayOptions?: AutoplayOptionsType\n setVisibleIndex: (index: number) => void\n visibleIndex: number\n classes?: CarouselClasses\n}\n\nexport const CarouselBase = ({\n dotsOptions = defaultDotsOptions,\n navArrowOptions = defaultNavArrowOptions,\n carouselOptions = defaultCarouselOptions,\n heading,\n autoPlayOptions,\n setVisibleIndex,\n visibleIndex,\n children,\n classes,\n ...props\n}: CarouselBaseProps) => {\n const mergedCarouselOptions = { ...defaultCarouselOptions, ...carouselOptions }\n const mergedAutoPlayOptions = { ...defaultAutoPlayOptions, ...autoPlayOptions }\n const mergedNavArrowOptions = { ...defaultNavArrowOptions, ...navArrowOptions }\n const mergedDotsOptions = { ...defaultDotsOptions, ...dotsOptions }\n\n const { emblaApi, navigationHandler, emblaRef } = useCarousel({\n carouselOptions: mergedCarouselOptions,\n autoPlayOptions: mergedAutoPlayOptions\n })\n\n const dotsProps = useDotsNavigation({ emblaApi, navigationHandler, setVisibleIndex })\n const { prevBtnDisabled, nextBtnDisabled, onClickNavigationButton } = useArrowNavigation({\n emblaApi,\n navigationHandler\n })\n\n const { isMobile, isDesktop } = useDevice()\n const { deskVisible, mobVisible, position: navArrowPosition } = mergedNavArrowOptions ?? {}\n\n //Отображения стрелок если переданы и мобильное разрешение\n const withNavArrowsOnMob = mobVisible && isMobile\n //Отображения стрелок если переданы и полноэкранное разрешение\n const winNavArrowsOnDesk = deskVisible && isDesktop\n //Отображения стрелок если переданы\n const winNavArrows = winNavArrowsOnDesk || withNavArrowsOnMob\n\n const withHeadingAndArrowsTop = Boolean(heading) || (winNavArrows && navArrowPosition === 'top-right')\n\n return (\n <div className={cn('flex flex-col', classes?.root)} {...props}>\n {withHeadingAndArrowsTop && (\n <div className={cn('flex items-center justify-between gap-6', { 'mb-6': withHeadingAndArrowsTop }, classes?.header)}>\n {Boolean(heading) && (\n <Heading as='h2' className={cn(classes?.heading)}>\n Другие предложения\n </Heading>\n )}\n\n {winNavArrows && navArrowPosition === 'top-right' && (\n <div className={cn('ml-auto flex items-center gap-2', classes?.arrowsNavWrapper)}>\n <ArrowNavigationButton\n mode='prev'\n onClick={onClickNavigationButton}\n disabled={prevBtnDisabled}\n classes={classes?.arrowLeftClasses}\n />\n <ArrowNavigationButton\n mode='next'\n onClick={onClickNavigationButton}\n disabled={nextBtnDisabled}\n classes={classes?.arrowRightClasses}\n />\n </div>\n )}\n </div>\n )}\n\n {winNavArrows && navArrowPosition === 'center' ? (\n <ContainerWithNavigation\n onClickNavigationButton={onClickNavigationButton}\n prevBtnDisabled={prevBtnDisabled}\n nextBtnDisabled={nextBtnDisabled}\n classes={classes?.containerWithNavClasses}\n >\n <CarouselContent\n visibleIndex={visibleIndex}\n dotsOptions={mergedDotsOptions}\n ref={emblaRef}\n dotsProps={dotsProps}\n classes={classes?.carouselContentClasses}\n >\n {children}\n </CarouselContent>\n </ContainerWithNavigation>\n ) : (\n <CarouselContent\n visibleIndex={visibleIndex}\n dotsOptions={mergedDotsOptions}\n ref={emblaRef}\n dotsProps={dotsProps}\n classes={classes?.carouselContentClasses}\n >\n {children}\n </CarouselContent>\n )}\n </div>\n )\n}\n"],"names":["CarouselBase","dotsOptions","defaultDotsOptions","navArrowOptions","defaultNavArrowOptions","carouselOptions","defaultCarouselOptions","heading","autoPlayOptions","setVisibleIndex","visibleIndex","children","classes","props","mergedCarouselOptions","mergedAutoPlayOptions","defaultAutoPlayOptions","mergedNavArrowOptions","mergedDotsOptions","emblaApi","navigationHandler","emblaRef","useCarousel","dotsProps","useDotsNavigation","prevBtnDisabled","nextBtnDisabled","onClickNavigationButton","useArrowNavigation","isMobile","isDesktop","useDevice","deskVisible","mobVisible","navArrowPosition","winNavArrows","withHeadingAndArrowsTop","jsxs","cn","jsx","Heading","ArrowNavigationButton","ContainerWithNavigation","CarouselContent"],"mappings":"ywBA2CO,MAAMA,GAAe,CAAC,CAC3B,YAAAC,EAAcC,EACd,gBAAAC,EAAkBC,EAClB,gBAAAC,EAAkBC,EAClB,QAAAC,EACA,gBAAAC,EACA,gBAAAC,EACA,aAAAC,EACA,SAAAC,EACA,QAAAC,EACA,GAAGC,CACL,IAAyB,CACvB,MAAMC,EAAwB,CAAE,GAAGR,EAAwB,GAAGD,CAAA,EACxDU,EAAwB,CAAE,GAAGC,EAAwB,GAAGR,CAAA,EACxDS,EAAwB,CAAE,GAAGb,EAAwB,GAAGD,CAAA,EACxDe,EAAoB,CAAE,GAAGhB,EAAoB,GAAGD,CAAA,EAEhD,CAAE,SAAAkB,EAAU,kBAAAC,EAAmB,SAAAC,CAAA,EAAaC,EAAY,CAC5D,gBAAiBR,EACjB,gBAAiBC,CAAA,CAClB,EAEKQ,EAAYC,EAAkB,CAAE,SAAAL,EAAU,kBAAAC,EAAmB,gBAAAX,EAAiB,EAC9E,CAAE,gBAAAgB,EAAiB,gBAAAC,EAAiB,wBAAAC,CAAA,EAA4BC,EAAmB,CACvF,SAAAT,EACA,kBAAAC,CAAA,CACD,EAEK,CAAE,SAAAS,EAAU,UAAAC,CAAA,EAAcC,EAAA,EAC1B,CAAE,YAAAC,EAAa,WAAAC,EAAY,SAAUC,CAAA,EAAqBjB,GAAyB,CAAA,EAOnFkB,EAFqBH,GAAeF,GAFfG,GAAcJ,EAMnCO,EAA0B,EAAQ7B,GAAa4B,GAAgBD,IAAqB,YAE1F,OACEG,EAAC,OAAI,UAAWC,EAAG,gBAAiB1B,GAAA,YAAAA,EAAS,IAAI,EAAI,GAAGC,EACrD,SAAA,CAAAuB,GACCC,EAAC,MAAA,CAAI,UAAWC,EAAG,0CAA2C,CAAE,OAAQF,CAAA,EAA2BxB,GAAA,YAAAA,EAAS,MAAM,EAC/G,SAAA,CAAA,EAAQL,GACPgC,EAACC,EAAA,CAAQ,GAAG,KAAK,UAAWF,EAAG1B,GAAA,YAAAA,EAAS,OAAO,EAAG,SAAA,oBAAA,CAElD,EAGDuB,GAAgBD,IAAqB,aACpCG,EAAC,MAAA,CAAI,UAAWC,EAAG,kCAAmC1B,GAAA,YAAAA,EAAS,gBAAgB,EAC7E,SAAA,CAAA2B,EAACE,EAAA,CACC,KAAK,OACL,QAASd,EACT,SAAUF,EACV,QAASb,GAAA,YAAAA,EAAS,gBAAA,CAAA,EAEpB2B,EAACE,EAAA,CACC,KAAK,OACL,QAASd,EACT,SAAUD,EACV,QAASd,GAAA,YAAAA,EAAS,iBAAA,CAAA,CACpB,CAAA,CACF,CAAA,EAEJ,EAGDuB,GAAgBD,IAAqB,SACpCK,EAACG,EAAA,CACC,wBAAAf,EACA,gBAAAF,EACA,gBAAAC,EACA,QAASd,GAAA,YAAAA,EAAS,wBAElB,SAAA2B,EAACI,EAAA,CACC,aAAAjC,EACA,YAAaQ,EACb,IAAKG,EACL,UAAAE,EACA,QAASX,GAAA,YAAAA,EAAS,uBAEjB,SAAAD,CAAA,CAAA,CACH,CAAA,EAGF4B,EAACI,EAAA,CACC,aAAAjC,EACA,YAAaQ,EACb,IAAKG,EACL,UAAAE,EACA,QAASX,GAAA,YAAAA,EAAS,uBAEjB,SAAAD,CAAA,CAAA,CACH,EAEJ,CAEJ"}
@@ -1,2 +1,2 @@
1
- import{jsx as e}from"react/jsx-runtime";import"tailwind-merge";import"react";import{SlideProductCard as r}from"../ui/slideVariants/SlideProductCard.js";import{SlideOnlyImage as o}from"../ui/slideVariants/SlideOnlyImage.js";import{SlideFullScreen as i}from"../ui/slideVariants/SlideFullScreen.js";import"../ui/CarouselContent.js";const m={dragFree:!0,loop:!1,align:"start",slidesToScroll:1},f={position:"center",deskVisible:!0,mobVisible:!0},p={position:"top-right",deskVisible:!0,mobVisible:!1},S={active:!0},b=t=>{switch(t.variant){case"productCard":return e(r,{...t});case"onlyImage":return e(o,{...t});case"fullScreen":return e(i,{...t})}};export{S as defaultAutoPlayOptions,m as defaultCarouselOptions,f as defaultDotsOptions,p as defaultNavArrowOptions,b as renderSlideVariant};
1
+ import{jsx as t}from"react/jsx-runtime";import"react";import{SlideProductCard as r}from"../ui/slideVariants/SlideProductCard.js";import{SlideOnlyImage as o}from"../ui/slideVariants/SlideOnlyImage.js";import{SlideFullScreen as i}from"../ui/slideVariants/SlideFullScreen.js";import"../ui/CarouselContent.js";const c={dragFree:!0,loop:!1,align:"start",slidesToScroll:1},m={position:"center",deskVisible:!0,mobVisible:!0},f={position:"top-right",deskVisible:!0,mobVisible:!1},p={active:!0},S=e=>{switch(e.variant){case"productCard":return t(r,{...e});case"onlyImage":return t(o,{...e});case"fullScreen":return t(i,{...e})}};export{p as defaultAutoPlayOptions,c as defaultCarouselOptions,m as defaultDotsOptions,f as defaultNavArrowOptions,S as renderSlideVariant};
2
2
  //# sourceMappingURL=helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sources":["../../../../../../lib/shared/ui/carousel/model/helpers.tsx"],"sourcesContent":["import type { EmblaOptionsType } from 'embla-carousel'\nimport type { AutoplayOptionsType } from 'embla-carousel-autoplay'\nimport { SlideFullScreen, SlideOnlyImage, SlideProductCard } from '../ui'\nimport type { CarouselSlideVariant, DotsOptions, NavArrowOptions } from './types'\nimport type { DiscriminatedUnion } from '$/shared/types'\n\nexport const defaultCarouselOptions: EmblaOptionsType = {\n dragFree: true,\n loop: false,\n align: 'start',\n slidesToScroll: 1\n}\n\nexport const defaultDotsOptions: DotsOptions = {\n position: 'center',\n deskVisible: true,\n mobVisible: true\n}\n\nexport const defaultNavArrowOptions: NavArrowOptions = {\n position: 'top-right',\n deskVisible: true,\n mobVisible: false\n}\n\nexport const defaultAutoPlayOptions: AutoplayOptionsType = {\n active: true\n}\n\nexport const renderSlideVariant = (props: DiscriminatedUnion<'variant', CarouselSlideVariant>) => {\n switch (props.variant) {\n case 'productCard':\n return <SlideProductCard {...props} />\n case 'onlyImage':\n return <SlideOnlyImage {...props} />\n case 'fullScreen':\n return <SlideFullScreen {...props} />\n }\n}\n"],"names":["defaultCarouselOptions","defaultDotsOptions","defaultNavArrowOptions","defaultAutoPlayOptions","renderSlideVariant","props","jsx","SlideProductCard","SlideOnlyImage","SlideFullScreen"],"mappings":"yUAMO,MAAMA,EAA2C,CACtD,SAAU,GACV,KAAM,GACN,MAAO,QACP,eAAgB,CAClB,EAEaC,EAAkC,CAC7C,SAAU,SACV,YAAa,GACb,WAAY,EACd,EAEaC,EAA0C,CACrD,SAAU,YACV,YAAa,GACb,WAAY,EACd,EAEaC,EAA8C,CACzD,OAAQ,EACV,EAEaC,EAAsBC,GAA+D,CAChG,OAAQA,EAAM,QAAA,CACZ,IAAK,cACH,OAAOC,EAACC,EAAA,CAAkB,GAAGF,CAAA,CAAO,EACtC,IAAK,YACH,OAAOC,EAACE,EAAA,CAAgB,GAAGH,CAAA,CAAO,EACpC,IAAK,aACH,OAAOC,EAACG,EAAA,CAAiB,GAAGJ,CAAA,CAAO,CAAA,CAEzC"}
1
+ {"version":3,"file":"helpers.js","sources":["../../../../../../lib/shared/ui/carousel/model/helpers.tsx"],"sourcesContent":["import type { EmblaOptionsType } from 'embla-carousel'\nimport type { AutoplayOptionsType } from 'embla-carousel-autoplay'\nimport { SlideFullScreen, SlideOnlyImage, SlideProductCard } from '../ui'\nimport type { CarouselSlideVariant, DotsOptions, NavArrowOptions } from './types'\nimport type { DiscriminatedUnion } from '$/shared/types'\n\nexport const defaultCarouselOptions: EmblaOptionsType = {\n dragFree: true,\n loop: false,\n align: 'start',\n slidesToScroll: 1\n}\n\nexport const defaultDotsOptions: DotsOptions = {\n position: 'center',\n deskVisible: true,\n mobVisible: true\n}\n\nexport const defaultNavArrowOptions: NavArrowOptions = {\n position: 'top-right',\n deskVisible: true,\n mobVisible: false\n}\n\nexport const defaultAutoPlayOptions: AutoplayOptionsType = {\n active: true\n}\n\nexport const renderSlideVariant = (props: DiscriminatedUnion<'variant', CarouselSlideVariant>) => {\n switch (props.variant) {\n case 'productCard':\n return <SlideProductCard {...props} />\n case 'onlyImage':\n return <SlideOnlyImage {...props} />\n case 'fullScreen':\n return <SlideFullScreen {...props} />\n }\n}\n"],"names":["defaultCarouselOptions","defaultDotsOptions","defaultNavArrowOptions","defaultAutoPlayOptions","renderSlideVariant","props","jsx","SlideProductCard","SlideOnlyImage","SlideFullScreen"],"mappings":"kTAMO,MAAMA,EAA2C,CACtD,SAAU,GACV,KAAM,GACN,MAAO,QACP,eAAgB,CAClB,EAEaC,EAAkC,CAC7C,SAAU,SACV,YAAa,GACb,WAAY,EACd,EAEaC,EAA0C,CACrD,SAAU,YACV,YAAa,GACb,WAAY,EACd,EAEaC,EAA8C,CACzD,OAAQ,EACV,EAEaC,EAAsBC,GAA+D,CAChG,OAAQA,EAAM,QAAA,CACZ,IAAK,cACH,OAAOC,EAACC,EAAA,CAAkB,GAAGF,CAAA,CAAO,EACtC,IAAK,YACH,OAAOC,EAACE,EAAA,CAAgB,GAAGH,CAAA,CAAO,EACpC,IAAK,aACH,OAAOC,EAACG,EAAA,CAAiB,GAAGJ,CAAA,CAAO,CAAA,CAEzC"}
@@ -1,2 +1,2 @@
1
- import{jsxs as l,jsx as t}from"react/jsx-runtime";import{forwardRef as x}from"react";import{DotsNavigations as a}from"./DotsNavigations.js";import{useDevice as w}from"../../../hooks/useDevice.js";import{cn as i}from"../../../utils/cn.js";import"@hookform/resolvers";const y=x(({visibleIndex:r,classes:o,children:n,dotsProps:e,dotsOptions:m},p)=>{const{isMobile:d,isDesktop:f}=w(),{mobVisible:s,deskVisible:u,...v}=m??{},D=s&&d,b=u&&f,h={visibleIndex:r,...e};return l("div",{className:i("mx-auto overflow-hidden",o==null?void 0:o.slidesOverlay),ref:p,children:[t("div",{className:i("flex touch-pan-y gap-6",o==null?void 0:o.slidesWrapper),children:n}),(b||D)&&t(a,{...h,...v})]})});export{y as CarouselContent};
1
+ import{jsxs as l,jsx as t}from"react/jsx-runtime";import{forwardRef as x}from"react";import{DotsNavigations as a}from"./DotsNavigations.js";import{useDevice as w}from"../../../hooks/useDevice.js";import{cn as i}from"../../../utils/cn.js";const j=x(({visibleIndex:r,classes:o,children:n,dotsProps:e,dotsOptions:m},p)=>{const{isMobile:d,isDesktop:f}=w(),{mobVisible:s,deskVisible:u,...v}=m??{},D=s&&d,b=u&&f,h={visibleIndex:r,...e};return l("div",{className:i("mx-auto overflow-hidden",o==null?void 0:o.slidesOverlay),ref:p,children:[t("div",{className:i("flex touch-pan-y gap-6",o==null?void 0:o.slidesWrapper),children:n}),(b||D)&&t(a,{...h,...v})]})});export{j as CarouselContent};
2
2
  //# sourceMappingURL=CarouselContent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CarouselContent.js","sources":["../../../../../../lib/shared/ui/carousel/ui/CarouselContent.tsx"],"sourcesContent":["import { forwardRef, type ReactNode } from 'react'\nimport type { DotsOptions, UseDotsNavigationReturn } from '../model'\nimport { DotsNavigations, type DotsNavigationsClasses } from './DotsNavigations'\nimport { useDevice } from '$/shared/hooks'\nimport { cn } from '$/shared/utils'\n\nexport type CarouselContentClasses = {\n dotsClasses?: DotsNavigationsClasses\n slidesOverlay?: string\n slidesWrapper?: string\n}\n\nexport interface CarouselContentProps {\n classes?: CarouselContentClasses\n children: ReactNode\n dotsProps: UseDotsNavigationReturn\n dotsOptions: DotsOptions\n visibleIndex: number\n}\n\nexport const CarouselContent = forwardRef<HTMLDivElement, CarouselContentProps>(\n ({ visibleIndex, classes, children, dotsProps, dotsOptions }, ref) => {\n const { isMobile, isDesktop } = useDevice()\n const { mobVisible, deskVisible, ...dotsRestOptions } = dotsOptions ?? {}\n\n //Отображения точек если переданы и мобильное разрешение\n const withDotsOnMob = mobVisible && isMobile\n //Отображения точек если переданы и полноэкранное разрешение\n const withDotsOnDesk = deskVisible && isDesktop\n\n const dotsFullProps = {\n visibleIndex,\n ...dotsProps\n }\n\n return (\n <div className={cn('mx-auto overflow-hidden', classes?.slidesOverlay)} ref={ref}>\n <div className={cn('flex touch-pan-y gap-6', classes?.slidesWrapper)}>{children}</div>\n {(withDotsOnDesk || withDotsOnMob) && <DotsNavigations {...dotsFullProps} {...dotsRestOptions} />}\n </div>\n )\n }\n)\n"],"names":["CarouselContent","forwardRef","visibleIndex","classes","children","dotsProps","dotsOptions","ref","isMobile","isDesktop","useDevice","mobVisible","deskVisible","dotsRestOptions","withDotsOnMob","withDotsOnDesk","dotsFullProps","jsxs","cn","jsx","DotsNavigations"],"mappings":"0QAoBO,MAAMA,EAAkBC,EAC7B,CAAC,CAAE,aAAAC,EAAc,QAAAC,EAAS,SAAAC,EAAU,UAAAC,EAAW,YAAAC,CAAA,EAAeC,IAAQ,CACpE,KAAM,CAAE,SAAAC,EAAU,UAAAC,CAAA,EAAcC,EAAA,EAC1B,CAAE,WAAAC,EAAY,YAAAC,EAAa,GAAGC,CAAA,EAAoBP,GAAe,CAAA,EAGjEQ,EAAgBH,GAAcH,EAE9BO,EAAiBH,GAAeH,EAEhCO,EAAgB,CACpB,aAAAd,EACA,GAAGG,CAAA,EAGL,OACEY,EAAC,OAAI,UAAWC,EAAG,0BAA2Bf,GAAA,YAAAA,EAAS,aAAa,EAAG,IAAAI,EACrE,SAAA,CAAAY,EAAC,OAAI,UAAWD,EAAG,yBAA0Bf,GAAA,YAAAA,EAAS,aAAa,EAAI,SAAAC,EAAS,GAC9EW,GAAkBD,IAAkBK,EAACC,GAAiB,GAAGJ,EAAgB,GAAGH,CAAA,CAAiB,CAAA,EACjG,CAEJ,CACF"}
1
+ {"version":3,"file":"CarouselContent.js","sources":["../../../../../../lib/shared/ui/carousel/ui/CarouselContent.tsx"],"sourcesContent":["import { forwardRef, type ReactNode } from 'react'\nimport type { DotsOptions, UseDotsNavigationReturn } from '../model'\nimport { DotsNavigations, type DotsNavigationsClasses } from './DotsNavigations'\nimport { useDevice } from '$/shared/hooks'\nimport { cn } from '$/shared/utils'\n\nexport type CarouselContentClasses = {\n dotsClasses?: DotsNavigationsClasses\n slidesOverlay?: string\n slidesWrapper?: string\n}\n\nexport interface CarouselContentProps {\n classes?: CarouselContentClasses\n children: ReactNode\n dotsProps: UseDotsNavigationReturn\n dotsOptions: DotsOptions\n visibleIndex: number\n}\n\nexport const CarouselContent = forwardRef<HTMLDivElement, CarouselContentProps>(\n ({ visibleIndex, classes, children, dotsProps, dotsOptions }, ref) => {\n const { isMobile, isDesktop } = useDevice()\n const { mobVisible, deskVisible, ...dotsRestOptions } = dotsOptions ?? {}\n\n //Отображения точек если переданы и мобильное разрешение\n const withDotsOnMob = mobVisible && isMobile\n //Отображения точек если переданы и полноэкранное разрешение\n const withDotsOnDesk = deskVisible && isDesktop\n\n const dotsFullProps = {\n visibleIndex,\n ...dotsProps\n }\n\n return (\n <div className={cn('mx-auto overflow-hidden', classes?.slidesOverlay)} ref={ref}>\n <div className={cn('flex touch-pan-y gap-6', classes?.slidesWrapper)}>{children}</div>\n {(withDotsOnDesk || withDotsOnMob) && <DotsNavigations {...dotsFullProps} {...dotsRestOptions} />}\n </div>\n )\n }\n)\n"],"names":["CarouselContent","forwardRef","visibleIndex","classes","children","dotsProps","dotsOptions","ref","isMobile","isDesktop","useDevice","mobVisible","deskVisible","dotsRestOptions","withDotsOnMob","withDotsOnDesk","dotsFullProps","jsxs","cn","jsx","DotsNavigations"],"mappings":"8OAoBO,MAAMA,EAAkBC,EAC7B,CAAC,CAAE,aAAAC,EAAc,QAAAC,EAAS,SAAAC,EAAU,UAAAC,EAAW,YAAAC,CAAA,EAAeC,IAAQ,CACpE,KAAM,CAAE,SAAAC,EAAU,UAAAC,CAAA,EAAcC,EAAA,EAC1B,CAAE,WAAAC,EAAY,YAAAC,EAAa,GAAGC,CAAA,EAAoBP,GAAe,CAAA,EAGjEQ,EAAgBH,GAAcH,EAE9BO,EAAiBH,GAAeH,EAEhCO,EAAgB,CACpB,aAAAd,EACA,GAAGG,CAAA,EAGL,OACEY,EAAC,OAAI,UAAWC,EAAG,0BAA2Bf,GAAA,YAAAA,EAAS,aAAa,EAAG,IAAAI,EACrE,SAAA,CAAAY,EAAC,OAAI,UAAWD,EAAG,yBAA0Bf,GAAA,YAAAA,EAAS,aAAa,EAAI,SAAAC,EAAS,GAC9EW,GAAkBD,IAAkBK,EAACC,GAAiB,GAAGJ,EAAgB,GAAGH,CAAA,CAAiB,CAAA,EACjG,CAEJ,CACF"}
@@ -1,2 +1,2 @@
1
- import{jsx as o,jsxs as s}from"react/jsx-runtime";import{useRef as l}from"react";import{createPortal as u}from"react-dom";import{useClickOutside as x}from"../../hooks/useClickOutside.js";import"@hookform/resolvers";import{cn as g}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"../modal/ui/IframeModalContent.js";import"../../../../node_modules/react-hot-toast/dist/index.js";import{Icon as b}from"../icon/Icon.js";import"../table/ui/primitives/Primitives.js";import{Heading as h}from"../heading/Heading.js";import"../carousel/ui/CarouselContent.js";import"../slot/Slot.js";import"../formElements/uncontrolled/autocomplete/Autocomplete.js";import"../formElements/uncontrolled/checkbox/Checkbox.js";import"../dropdownList/ui/dropdownItem/DropdownItem.js";import"../formElements/uncontrolled/input/Input.js";import"../formElements/uncontrolled/dayPicker/DayPicker.js";import"../formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../formElements/uncontrolled/maskInput/MaskInput.js";import"../formElements/uncontrolled/radio/RadioGroup.js";import"../formElements/uncontrolled/radio/ui/RadioItem.js";import"../formElements/uncontrolled/select/Select.js";import"../formElements/uncontrolled/slider/SliderBase.js";import"../formElements/uncontrolled/switch/Switch.js";import"../formElements/uncontrolled/textarea/Textarea.js";import"../formElements/uncontrolled/uploader/UploaderBase.js";import"../formElements/controlled/editor/ui/Editor.js";import"../formElements/controlled/input/MaskInputControl.js";const $=({className:n,children:c,title:e,portal:i=(d=>(d=globalThis==null?void 0:globalThis.document)==null?void 0:d.body)(),...a})=>{const r=l(null),m=l(null),t=()=>{r.current&&r.current.close()};x(m,t);const p=o("dialog",{ref:r,...a,className:"group z-10 border-none",onKeyDown:f=>{f.key==="Escape"&&t()},children:o("div",{className:"fixed inset-0 flex items-center justify-center bg-color-overlay",children:s("div",{ref:m,className:g("w-full bg-color-white px-4 py-6 shadow-sm desktop:max-w-[600px] desktop:rounded-md desktop:px-6 desktop:py-8","rounded-tl-md rounded-tr-md mobile:absolute mobile:bottom-0",n),children:[s("div",{className:"flex items-start justify-between gap-4",children:[e&&o(h,{as:"h3",className:"flex-1 text-color-dark",children:e}),o(b,{onClick:t,name:"general/close",className:"ml-auto size-6 cursor-pointer text-icon-dark-hover"})]}),o("div",{className:"mt-4",children:c})]})})});return i?u(p,i):p};export{$ as Dialog};
1
+ import{jsx as o,jsxs as s}from"react/jsx-runtime";import{useRef as l}from"react";import{createPortal as u}from"react-dom";import{useClickOutside as x}from"../../hooks/useClickOutside.js";import{cn as g}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"../modal/ui/IframeModalContent.js";import"../../../../node_modules/react-hot-toast/dist/index.js";import{Icon as b}from"../icon/Icon.js";import"../table/ui/primitives/Primitives.js";import{Heading as h}from"../heading/Heading.js";import"../carousel/ui/CarouselContent.js";import"../slot/Slot.js";import"../formElements/uncontrolled/autocomplete/Autocomplete.js";import"../formElements/uncontrolled/checkbox/Checkbox.js";import"../dropdownList/ui/dropdownItem/DropdownItem.js";import"../formElements/uncontrolled/input/Input.js";import"../formElements/uncontrolled/dayPicker/DayPicker.js";import"../formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../formElements/uncontrolled/maskInput/MaskInput.js";import"../formElements/uncontrolled/radio/RadioGroup.js";import"../formElements/uncontrolled/radio/ui/RadioItem.js";import"../formElements/uncontrolled/select/Select.js";import"../formElements/uncontrolled/slider/SliderBase.js";import"../formElements/uncontrolled/switch/Switch.js";import"../formElements/uncontrolled/textarea/Textarea.js";import"../formElements/uncontrolled/uploader/UploaderBase.js";import"../formElements/controlled/editor/ui/Editor.js";import"../formElements/controlled/input/MaskInputControl.js";const _=({className:n,children:c,title:e,portal:i=(d=>(d=globalThis==null?void 0:globalThis.document)==null?void 0:d.body)(),...a})=>{const r=l(null),m=l(null),t=()=>{r.current&&r.current.close()};x(m,t);const p=o("dialog",{ref:r,...a,className:"group z-10 border-none",onKeyDown:f=>{f.key==="Escape"&&t()},children:o("div",{className:"fixed inset-0 flex items-center justify-center bg-color-overlay",children:s("div",{ref:m,className:g("w-full bg-color-white px-4 py-6 shadow-sm desktop:max-w-[600px] desktop:rounded-md desktop:px-6 desktop:py-8","rounded-tl-md rounded-tr-md mobile:absolute mobile:bottom-0",n),children:[s("div",{className:"flex items-start justify-between gap-4",children:[e&&o(h,{as:"h3",className:"flex-1 text-color-dark",children:e}),o(b,{onClick:t,name:"general/close",className:"ml-auto size-6 cursor-pointer text-icon-dark-hover"})]}),o("div",{className:"mt-4",children:c})]})})});return i?u(p,i):p};export{_ as Dialog};
2
2
  //# sourceMappingURL=Dialog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dialog.js","sources":["../../../../../lib/shared/ui/dialog/Dialog.tsx"],"sourcesContent":["import { useRef } from 'react'\nimport { createPortal } from 'react-dom'\nimport { useClickOutside } from '$/shared/hooks'\nimport { Heading, Icon } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport interface DialogProps extends React.DialogHTMLAttributes<HTMLDialogElement> {\n title?: string\n portal?: HTMLElement\n}\n\nexport const Dialog = ({ className, children, title, portal = globalThis?.document?.body, ...props }: DialogProps) => {\n const dialogRef = useRef<HTMLDialogElement>(null)\n const contentRef = useRef<HTMLDivElement>(null)\n\n const onClose = () => {\n if (!dialogRef.current) return\n\n dialogRef.current.close()\n }\n\n useClickOutside(contentRef, onClose)\n\n const dialog = (\n <dialog\n ref={dialogRef}\n {...props}\n className='group z-10 border-none'\n onKeyDown={(event) => {\n if (event.key === 'Escape') {\n onClose()\n }\n }}\n >\n <div className='fixed inset-0 flex items-center justify-center bg-color-overlay'>\n <div\n ref={contentRef}\n className={cn(\n 'w-full bg-color-white px-4 py-6 shadow-sm desktop:max-w-[600px] desktop:rounded-md desktop:px-6 desktop:py-8',\n 'rounded-tl-md rounded-tr-md mobile:absolute mobile:bottom-0',\n className\n )}\n >\n <div className='flex items-start justify-between gap-4'>\n {title && (\n <Heading as='h3' className='flex-1 text-color-dark'>\n {title}\n </Heading>\n )}\n <Icon onClick={onClose} name='general/close' className='ml-auto size-6 cursor-pointer text-icon-dark-hover' />\n </div>\n <div className='mt-4'>{children}</div>\n </div>\n </div>\n </dialog>\n )\n\n return portal ? createPortal(dialog, portal) : dialog\n}\n"],"names":["Dialog","className","children","title","portal","_a","props","dialogRef","useRef","contentRef","onClose","useClickOutside","dialog","jsx","event","jsxs","cn","Heading","Icon","createPortal"],"mappings":"snDAWO,MAAMA,EAAS,CAAC,CAAE,UAAAC,EAAW,SAAAC,EAAU,MAAAC,EAAO,OAAAC,GAASC,MAAA,mCAAY,WAAZ,YAAAA,EAAsB,QAAM,GAAGC,CAAA,IAAyB,CACpH,MAAMC,EAAYC,EAA0B,IAAI,EAC1CC,EAAaD,EAAuB,IAAI,EAExCE,EAAU,IAAM,CACfH,EAAU,SAEfA,EAAU,QAAQ,MAAA,CACpB,EAEAI,EAAgBF,EAAYC,CAAO,EAEnC,MAAME,EACJC,EAAC,SAAA,CACC,IAAKN,EACJ,GAAGD,EACJ,UAAU,yBACV,UAAYQ,GAAU,CAChBA,EAAM,MAAQ,UAChBJ,EAAA,CAEJ,EAEA,SAAAG,EAAC,MAAA,CAAI,UAAU,kEACb,SAAAE,EAAC,MAAA,CACC,IAAKN,EACL,UAAWO,EACT,+GACA,8DACAf,CAAA,EAGF,SAAA,CAAAc,EAAC,MAAA,CAAI,UAAU,yCACZ,SAAA,CAAAZ,KACEc,EAAA,CAAQ,GAAG,KAAK,UAAU,yBACxB,SAAAd,EACH,IAEDe,EAAA,CAAK,QAASR,EAAS,KAAK,gBAAgB,UAAU,oDAAA,CAAqD,CAAA,EAC9G,EACAG,EAAC,MAAA,CAAI,UAAU,OAAQ,SAAAX,CAAA,CAAS,CAAA,CAAA,CAAA,CAClC,CACF,CAAA,CAAA,EAIJ,OAAOE,EAASe,EAAaP,EAAQR,CAAM,EAAIQ,CACjD"}
1
+ {"version":3,"file":"Dialog.js","sources":["../../../../../lib/shared/ui/dialog/Dialog.tsx"],"sourcesContent":["import { useRef } from 'react'\nimport { createPortal } from 'react-dom'\nimport { useClickOutside } from '$/shared/hooks'\nimport { Heading, Icon } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport interface DialogProps extends React.DialogHTMLAttributes<HTMLDialogElement> {\n title?: string\n portal?: HTMLElement\n}\n\nexport const Dialog = ({ className, children, title, portal = globalThis?.document?.body, ...props }: DialogProps) => {\n const dialogRef = useRef<HTMLDialogElement>(null)\n const contentRef = useRef<HTMLDivElement>(null)\n\n const onClose = () => {\n if (!dialogRef.current) return\n\n dialogRef.current.close()\n }\n\n useClickOutside(contentRef, onClose)\n\n const dialog = (\n <dialog\n ref={dialogRef}\n {...props}\n className='group z-10 border-none'\n onKeyDown={(event) => {\n if (event.key === 'Escape') {\n onClose()\n }\n }}\n >\n <div className='fixed inset-0 flex items-center justify-center bg-color-overlay'>\n <div\n ref={contentRef}\n className={cn(\n 'w-full bg-color-white px-4 py-6 shadow-sm desktop:max-w-[600px] desktop:rounded-md desktop:px-6 desktop:py-8',\n 'rounded-tl-md rounded-tr-md mobile:absolute mobile:bottom-0',\n className\n )}\n >\n <div className='flex items-start justify-between gap-4'>\n {title && (\n <Heading as='h3' className='flex-1 text-color-dark'>\n {title}\n </Heading>\n )}\n <Icon onClick={onClose} name='general/close' className='ml-auto size-6 cursor-pointer text-icon-dark-hover' />\n </div>\n <div className='mt-4'>{children}</div>\n </div>\n </div>\n </dialog>\n )\n\n return portal ? createPortal(dialog, portal) : dialog\n}\n"],"names":["Dialog","className","children","title","portal","_a","props","dialogRef","useRef","contentRef","onClose","useClickOutside","dialog","jsx","event","jsxs","cn","Heading","Icon","createPortal"],"mappings":"0lDAWO,MAAMA,EAAS,CAAC,CAAE,UAAAC,EAAW,SAAAC,EAAU,MAAAC,EAAO,OAAAC,GAASC,MAAA,mCAAY,WAAZ,YAAAA,EAAsB,QAAM,GAAGC,CAAA,IAAyB,CACpH,MAAMC,EAAYC,EAA0B,IAAI,EAC1CC,EAAaD,EAAuB,IAAI,EAExCE,EAAU,IAAM,CACfH,EAAU,SAEfA,EAAU,QAAQ,MAAA,CACpB,EAEAI,EAAgBF,EAAYC,CAAO,EAEnC,MAAME,EACJC,EAAC,SAAA,CACC,IAAKN,EACJ,GAAGD,EACJ,UAAU,yBACV,UAAYQ,GAAU,CAChBA,EAAM,MAAQ,UAChBJ,EAAA,CAEJ,EAEA,SAAAG,EAAC,MAAA,CAAI,UAAU,kEACb,SAAAE,EAAC,MAAA,CACC,IAAKN,EACL,UAAWO,EACT,+GACA,8DACAf,CAAA,EAGF,SAAA,CAAAc,EAAC,MAAA,CAAI,UAAU,yCACZ,SAAA,CAAAZ,KACEc,EAAA,CAAQ,GAAG,KAAK,UAAU,yBACxB,SAAAd,EACH,IAEDe,EAAA,CAAK,QAASR,EAAS,KAAK,gBAAgB,UAAU,oDAAA,CAAqD,CAAA,EAC9G,EACAG,EAAC,MAAA,CAAI,UAAU,OAAQ,SAAAX,CAAA,CAAS,CAAA,CAAA,CAAA,CAClC,CACF,CAAA,CAAA,EAIJ,OAAOE,EAASe,EAAaP,EAAQR,CAAM,EAAIQ,CACjD"}
@@ -1,2 +1,2 @@
1
- import{jsx as n}from"react/jsx-runtime";import{useRef as v}from"react";import{useKeyboardNavigation as b}from"./hooks/useKeyboardNavigation.js";import{isOptionActive as l}from"./model/utils.js";import{DropdownItem as _}from"./ui/dropdownItem/DropdownItem.js";import{useClickOutside as g}from"../../hooks/useClickOutside.js";import"@hookform/resolvers";import{cn as y}from"../../utils/cn.js";const s=({options:e,multiple:m,onPick:f,value:p,className:d,displayValue:c,classes:o,...x})=>{const w=v(null),{refs:u,focusedIndex:a,setFocusedIndex:r}=b({options:e,multiple:m,onPick:f});return g(w,()=>r(-1)),n("ul",{...x,ref:u.setRoot(),className:y("customScrollbar-y mt-1 max-h-[264px] w-full overflow-y-auto scroll-smooth rounded-md bg-color-white p-1 shadow-[0_8px_20px_0px_rgba(41,41,41,0.08)]",o==null?void 0:o.root,d),children:e.map((i,t)=>{const h=l(i,p);return n(_,{ref:u.setReference,item:i,active:h,focused:a===t,multiple:m,onPick:f,displayValue:c,onMouseEnter:()=>r(t),onMouseLeave:()=>r(-1),classes:o==null?void 0:o.item},t)})})};export{s as DropdownList};
1
+ import{jsx as i}from"react/jsx-runtime";import{useRef as v}from"react";import{useKeyboardNavigation as b}from"./hooks/useKeyboardNavigation.js";import{isOptionActive as l}from"./model/utils.js";import{DropdownItem as _}from"./ui/dropdownItem/DropdownItem.js";import{useClickOutside as g}from"../../hooks/useClickOutside.js";import{cn as y}from"../../utils/cn.js";const j=({options:e,multiple:m,onPick:f,value:p,className:d,displayValue:c,classes:o,...x})=>{const w=v(null),{refs:u,focusedIndex:a,setFocusedIndex:r}=b({options:e,multiple:m,onPick:f});return g(w,()=>r(-1)),i("ul",{...x,ref:u.setRoot(),className:y("customScrollbar-y mt-1 max-h-[264px] w-full overflow-y-auto scroll-smooth rounded-md bg-color-white p-1 shadow-[0_8px_20px_0px_rgba(41,41,41,0.08)]",o==null?void 0:o.root,d),children:e.map((n,t)=>{const h=l(n,p);return i(_,{ref:u.setReference,item:n,active:h,focused:a===t,multiple:m,onPick:f,displayValue:c,onMouseEnter:()=>r(t),onMouseLeave:()=>r(-1),classes:o==null?void 0:o.item},t)})})};export{j as DropdownList};
2
2
  //# sourceMappingURL=DropdownList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownList.js","sources":["../../../../../lib/shared/ui/dropdownList/DropdownList.tsx"],"sourcesContent":["import { useRef } from 'react'\nimport { useKeyboardNavigation } from './hooks'\nimport { isOptionActive } from './model'\nimport { DropdownItem, type DropdownItemClasses, type DropdownItemOption } from './ui'\nimport { useClickOutside } from '$/shared/hooks'\nimport { cn } from '$/shared/utils'\n\nexport type DropdownListClasses = {\n root?: string\n item?: DropdownItemClasses\n}\n\nexport interface DropdownListProps<Multi extends boolean> extends React.HTMLAttributes<HTMLUListElement> {\n options: DropdownItemOption[]\n /**\n * Значения выбранные по умолчанию\n */\n value?: Multi extends true ? DropdownItemOption[] : DropdownItemOption | null\n /**\n * Функция при выборе значения из списка\n * @param item\n */\n onPick?: (item: DropdownItemOption) => void\n /**\n * Поддержка множественного выбора\n */\n multiple: Multi\n /**\n * Функция для управления отображаемым значением\n */\n displayValue?: (option: DropdownItemOption) => string\n /**\n * Дополнительные стили\n */\n classes?: DropdownListClasses\n}\n\nexport const DropdownList = <Multi extends boolean>({\n options,\n multiple,\n onPick,\n value,\n className,\n displayValue,\n classes,\n ...props\n}: DropdownListProps<Multi>) => {\n const ref = useRef<HTMLUListElement>(null)\n\n const { refs, focusedIndex, setFocusedIndex } = useKeyboardNavigation<HTMLUListElement, HTMLLIElement>({\n options,\n multiple,\n onPick\n })\n\n useClickOutside(ref, () => setFocusedIndex(-1))\n\n return (\n <ul\n {...props}\n ref={refs.setRoot()}\n className={cn(\n 'customScrollbar-y mt-1 max-h-[264px] w-full overflow-y-auto scroll-smooth rounded-md bg-color-white p-1 shadow-[0_8px_20px_0px_rgba(41,41,41,0.08)]',\n classes?.root,\n className\n )}\n >\n {options.map((option, index) => {\n const active = isOptionActive(option, value)\n\n return (\n <DropdownItem\n ref={refs.setReference}\n key={index}\n item={option}\n active={active}\n focused={focusedIndex === index}\n multiple={multiple}\n onPick={onPick}\n displayValue={displayValue}\n onMouseEnter={() => setFocusedIndex(index)}\n onMouseLeave={() => setFocusedIndex(-1)}\n classes={classes?.item}\n />\n )\n })}\n </ul>\n )\n}\n"],"names":["DropdownList","options","multiple","onPick","value","className","displayValue","classes","props","ref","useRef","refs","focusedIndex","setFocusedIndex","useKeyboardNavigation","useClickOutside","jsx","cn","option","index","active","isOptionActive","DropdownItem"],"mappings":"uYAqCO,MAAMA,EAAe,CAAwB,CAClD,QAAAC,EACA,SAAAC,EACA,OAAAC,EACA,MAAAC,EACA,UAAAC,EACA,aAAAC,EACA,QAAAC,EACA,GAAGC,CACL,IAAgC,CAC9B,MAAMC,EAAMC,EAAyB,IAAI,EAEnC,CAAE,KAAAC,EAAM,aAAAC,EAAc,gBAAAC,CAAA,EAAoBC,EAAuD,CACrG,QAAAb,EACA,SAAAC,EACA,OAAAC,CAAA,CACD,EAED,OAAAY,EAAgBN,EAAK,IAAMI,EAAgB,EAAE,CAAC,EAG5CG,EAAC,KAAA,CACE,GAAGR,EACJ,IAAKG,EAAK,QAAA,EACV,UAAWM,EACT,sJACAV,GAAA,YAAAA,EAAS,KACTF,CAAA,EAGD,SAAAJ,EAAQ,IAAI,CAACiB,EAAQC,IAAU,CAC9B,MAAMC,EAASC,EAAeH,EAAQd,CAAK,EAE3C,OACEY,EAACM,EAAA,CACC,IAAKX,EAAK,aAEV,KAAMO,EACN,OAAAE,EACA,QAASR,IAAiBO,EAC1B,SAAAjB,EACA,OAAAC,EACA,aAAAG,EACA,aAAc,IAAMO,EAAgBM,CAAK,EACzC,aAAc,IAAMN,EAAgB,EAAE,EACtC,QAASN,GAAA,YAAAA,EAAS,IAAA,EATbY,CAAA,CAYX,CAAC,CAAA,CAAA,CAGP"}
1
+ {"version":3,"file":"DropdownList.js","sources":["../../../../../lib/shared/ui/dropdownList/DropdownList.tsx"],"sourcesContent":["import { useRef } from 'react'\nimport { useKeyboardNavigation } from './hooks'\nimport { isOptionActive } from './model'\nimport { DropdownItem, type DropdownItemClasses, type DropdownItemOption } from './ui'\nimport { useClickOutside } from '$/shared/hooks'\nimport { cn } from '$/shared/utils'\n\nexport type DropdownListClasses = {\n root?: string\n item?: DropdownItemClasses\n}\n\nexport interface DropdownListProps<Multi extends boolean> extends React.HTMLAttributes<HTMLUListElement> {\n options: DropdownItemOption[]\n /**\n * Значения выбранные по умолчанию\n */\n value?: Multi extends true ? DropdownItemOption[] : DropdownItemOption | null\n /**\n * Функция при выборе значения из списка\n * @param item\n */\n onPick?: (item: DropdownItemOption) => void\n /**\n * Поддержка множественного выбора\n */\n multiple: Multi\n /**\n * Функция для управления отображаемым значением\n */\n displayValue?: (option: DropdownItemOption) => string\n /**\n * Дополнительные стили\n */\n classes?: DropdownListClasses\n}\n\nexport const DropdownList = <Multi extends boolean>({\n options,\n multiple,\n onPick,\n value,\n className,\n displayValue,\n classes,\n ...props\n}: DropdownListProps<Multi>) => {\n const ref = useRef<HTMLUListElement>(null)\n\n const { refs, focusedIndex, setFocusedIndex } = useKeyboardNavigation<HTMLUListElement, HTMLLIElement>({\n options,\n multiple,\n onPick\n })\n\n useClickOutside(ref, () => setFocusedIndex(-1))\n\n return (\n <ul\n {...props}\n ref={refs.setRoot()}\n className={cn(\n 'customScrollbar-y mt-1 max-h-[264px] w-full overflow-y-auto scroll-smooth rounded-md bg-color-white p-1 shadow-[0_8px_20px_0px_rgba(41,41,41,0.08)]',\n classes?.root,\n className\n )}\n >\n {options.map((option, index) => {\n const active = isOptionActive(option, value)\n\n return (\n <DropdownItem\n ref={refs.setReference}\n key={index}\n item={option}\n active={active}\n focused={focusedIndex === index}\n multiple={multiple}\n onPick={onPick}\n displayValue={displayValue}\n onMouseEnter={() => setFocusedIndex(index)}\n onMouseLeave={() => setFocusedIndex(-1)}\n classes={classes?.item}\n />\n )\n })}\n </ul>\n )\n}\n"],"names":["DropdownList","options","multiple","onPick","value","className","displayValue","classes","props","ref","useRef","refs","focusedIndex","setFocusedIndex","useKeyboardNavigation","useClickOutside","jsx","cn","option","index","active","isOptionActive","DropdownItem"],"mappings":"2WAqCO,MAAMA,EAAe,CAAwB,CAClD,QAAAC,EACA,SAAAC,EACA,OAAAC,EACA,MAAAC,EACA,UAAAC,EACA,aAAAC,EACA,QAAAC,EACA,GAAGC,CACL,IAAgC,CAC9B,MAAMC,EAAMC,EAAyB,IAAI,EAEnC,CAAE,KAAAC,EAAM,aAAAC,EAAc,gBAAAC,CAAA,EAAoBC,EAAuD,CACrG,QAAAb,EACA,SAAAC,EACA,OAAAC,CAAA,CACD,EAED,OAAAY,EAAgBN,EAAK,IAAMI,EAAgB,EAAE,CAAC,EAG5CG,EAAC,KAAA,CACE,GAAGR,EACJ,IAAKG,EAAK,QAAA,EACV,UAAWM,EACT,sJACAV,GAAA,YAAAA,EAAS,KACTF,CAAA,EAGD,SAAAJ,EAAQ,IAAI,CAACiB,EAAQC,IAAU,CAC9B,MAAMC,EAASC,EAAeH,EAAQd,CAAK,EAE3C,OACEY,EAACM,EAAA,CACC,IAAKX,EAAK,aAEV,KAAMO,EACN,OAAAE,EACA,QAASR,IAAiBO,EAC1B,SAAAjB,EACA,OAAAC,EACA,aAAAG,EACA,aAAc,IAAMO,EAAgBM,CAAK,EACzC,aAAc,IAAMN,EAAgB,EAAE,EACtC,QAASN,GAAA,YAAAA,EAAS,IAAA,EATbY,CAAA,CAYX,CAAC,CAAA,CAAA,CAGP"}
@@ -1,2 +1,2 @@
1
- import{jsxs as j,jsx as o}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"@hookform/resolvers";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{AutocompleteBase as A}from"../../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";import{MessageView as C}from"../../ui/MessageView.js";const ot=({control:r,name:m,defaultValue:i,disabled:p,helperText:e,rules:s,shouldUnregister:l,classes:n,immediate:a=!0,...c})=>{const{field:f,fieldState:u}=v({control:r,name:m,defaultValue:i,disabled:p,rules:s,shouldUnregister:l}),{error:t,invalid:d}=u,{container:x,message:g}=n||{};return j("div",{className:w("w-full",x),children:[o(A,{...c,...f,immediate:a,invalid:d}),o(C,{className:g,text:(t==null?void 0:t.message)||e,intent:t?"error":"simple"})]})};export{ot as AutocompleteControl};
1
+ import{jsxs as j,jsx as o}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{AutocompleteBase as A}from"../../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";import{MessageView as C}from"../../ui/MessageView.js";const tt=({control:r,name:m,defaultValue:i,disabled:p,helperText:e,rules:s,shouldUnregister:l,classes:n,immediate:a=!0,...c})=>{const{field:f,fieldState:u}=v({control:r,name:m,defaultValue:i,disabled:p,rules:s,shouldUnregister:l}),{error:t,invalid:d}=u,{container:x,message:g}=n||{};return j("div",{className:w("w-full",x),children:[o(A,{...c,...f,immediate:a,invalid:d}),o(C,{className:g,text:(t==null?void 0:t.message)||e,intent:t?"error":"simple"})]})};export{tt as AutocompleteControl};
2
2
  //# sourceMappingURL=Autocomplete.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Autocomplete.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/autocomplete/Autocomplete.tsx"],"sourcesContent":["import { type Control, type FieldValues, type Path, useController, type UseControllerProps } from 'react-hook-form'\nimport { MessageView } from '../../ui'\nimport { AutocompleteBase, type AutocompleteBaseProps } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type AutocompleteControlProps<\n TFieldValues extends FieldValues,\n T,\n TName extends Path<TFieldValues> = Path<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n Omit<AutocompleteBaseProps<T>, 'classes'> & {\n control: Control<TFieldValues>\n helperText?: string\n classes?: AutocompleteBaseProps<T>['classes'] & {\n container?: string\n message?: string\n }\n }\n\nexport const AutocompleteControl = <TFieldValues extends FieldValues, T>({\n control,\n name,\n defaultValue,\n disabled,\n helperText,\n rules,\n shouldUnregister,\n classes,\n immediate = true,\n ...props\n}: AutocompleteControlProps<TFieldValues, T>) => {\n const { field, fieldState } = useController({\n control,\n name,\n defaultValue,\n disabled,\n rules,\n shouldUnregister\n })\n\n const { error, invalid } = fieldState\n const { container, message } = classes || {}\n\n return (\n <div className={cn('w-full', container)}>\n <AutocompleteBase {...props} {...field} immediate={immediate} invalid={invalid} />\n <MessageView className={message} text={error?.message || helperText} intent={error ? 'error' : 'simple'} />\n </div>\n )\n}\n"],"names":["AutocompleteControl","control","name","defaultValue","disabled","helperText","rules","shouldUnregister","classes","immediate","props","field","fieldState","useController","error","invalid","container","message","cn","jsx","AutocompleteBase","MessageView"],"mappings":"8/CAmBO,MAAMA,GAAsB,CAAsC,CACvE,QAAAC,EACA,KAAAC,EACA,aAAAC,EACA,SAAAC,EACA,WAAAC,EACA,MAAAC,EACA,iBAAAC,EACA,QAAAC,EACA,UAAAC,EAAY,GACZ,GAAGC,CACL,IAAiD,CAC/C,KAAM,CAAE,MAAAC,EAAO,WAAAC,CAAA,EAAeC,EAAc,CAC1C,QAAAZ,EACA,KAAAC,EACA,aAAAC,EACA,SAAAC,EACA,MAAAE,EACA,iBAAAC,CAAA,CACD,EAEK,CAAE,MAAAO,EAAO,QAAAC,CAAA,EAAYH,EACrB,CAAE,UAAAI,EAAW,QAAAC,CAAA,EAAYT,GAAW,CAAA,EAE1C,SACG,MAAA,CAAI,UAAWU,EAAG,SAAUF,CAAS,EACpC,SAAA,CAAAG,EAACC,GAAkB,GAAGV,EAAQ,GAAGC,EAAO,UAAAF,EAAsB,QAAAM,EAAkB,EAChFI,EAACE,EAAA,CAAY,UAAWJ,EAAS,MAAMH,GAAA,YAAAA,EAAO,UAAWT,EAAY,OAAQS,EAAQ,QAAU,QAAA,CAAU,CAAA,EAC3G,CAEJ"}
1
+ {"version":3,"file":"Autocomplete.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/autocomplete/Autocomplete.tsx"],"sourcesContent":["import { type Control, type FieldValues, type Path, useController, type UseControllerProps } from 'react-hook-form'\nimport { MessageView } from '../../ui'\nimport { AutocompleteBase, type AutocompleteBaseProps } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type AutocompleteControlProps<\n TFieldValues extends FieldValues,\n T,\n TName extends Path<TFieldValues> = Path<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n Omit<AutocompleteBaseProps<T>, 'classes'> & {\n control: Control<TFieldValues>\n helperText?: string\n classes?: AutocompleteBaseProps<T>['classes'] & {\n container?: string\n message?: string\n }\n }\n\nexport const AutocompleteControl = <TFieldValues extends FieldValues, T>({\n control,\n name,\n defaultValue,\n disabled,\n helperText,\n rules,\n shouldUnregister,\n classes,\n immediate = true,\n ...props\n}: AutocompleteControlProps<TFieldValues, T>) => {\n const { field, fieldState } = useController({\n control,\n name,\n defaultValue,\n disabled,\n rules,\n shouldUnregister\n })\n\n const { error, invalid } = fieldState\n const { container, message } = classes || {}\n\n return (\n <div className={cn('w-full', container)}>\n <AutocompleteBase {...props} {...field} immediate={immediate} invalid={invalid} />\n <MessageView className={message} text={error?.message || helperText} intent={error ? 'error' : 'simple'} />\n </div>\n )\n}\n"],"names":["AutocompleteControl","control","name","defaultValue","disabled","helperText","rules","shouldUnregister","classes","immediate","props","field","fieldState","useController","error","invalid","container","message","cn","jsx","AutocompleteBase","MessageView"],"mappings":"k+CAmBO,MAAMA,GAAsB,CAAsC,CACvE,QAAAC,EACA,KAAAC,EACA,aAAAC,EACA,SAAAC,EACA,WAAAC,EACA,MAAAC,EACA,iBAAAC,EACA,QAAAC,EACA,UAAAC,EAAY,GACZ,GAAGC,CACL,IAAiD,CAC/C,KAAM,CAAE,MAAAC,EAAO,WAAAC,CAAA,EAAeC,EAAc,CAC1C,QAAAZ,EACA,KAAAC,EACA,aAAAC,EACA,SAAAC,EACA,MAAAE,EACA,iBAAAC,CAAA,CACD,EAEK,CAAE,MAAAO,EAAO,QAAAC,CAAA,EAAYH,EACrB,CAAE,UAAAI,EAAW,QAAAC,CAAA,EAAYT,GAAW,CAAA,EAE1C,SACG,MAAA,CAAI,UAAWU,EAAG,SAAUF,CAAS,EACpC,SAAA,CAAAG,EAACC,GAAkB,GAAGV,EAAQ,GAAGC,EAAO,UAAAF,EAAsB,QAAAM,EAAkB,EAChFI,EAACE,EAAA,CAAY,UAAWJ,EAAS,MAAMH,GAAA,YAAAA,EAAO,UAAWT,EAAY,OAAQS,EAAQ,QAAU,QAAA,CAAU,CAAA,EAC3G,CAEJ"}
@@ -1,2 +1,2 @@
1
- import{jsxs as i,jsx as t}from"react/jsx-runtime";import{useId as w}from"react";import{useController as B}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{CheckboxBase as I}from"../../uncontrolled/checkbox/Checkbox.js";import{cn as e}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"@hookform/resolvers";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"../../../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";import{MessageView as M}from"../../ui/MessageView.js";const ao=({control:s,classes:p,className:l,name:a,rules:c,shouldUnregister:n,defaultValue:d,disabled:o,children:x,helperText:f,...g})=>{const{field:h,fieldState:k}=B({control:s,name:a,rules:c,shouldUnregister:n,defaultValue:d,disabled:o}),{container:C,message:u,label:b,...v}=p||{},{value:y,onChange:N,...j}=h,{invalid:F,error:r}=k,m=w();return i("div",{className:e("flex flex-col gap-y-2",l),children:[i("div",{className:e("flex items-center justify-items-start gap-x-3",C),children:[t(I,{id:m,checked:y,onCheckedChange:N,invalid:F,classes:v,...g,...j}),t("label",{htmlFor:m,className:e("mob-body-regular-s text-color-dark","desktop:desk-body-regular-m desktop:gap-x-4",{"text-color-disabled":o},b),children:x})]}),t(M,{text:r?r.message:f,className:u,intent:r?"error":"simple",disabled:o})]})};export{ao as CheckboxControl};
1
+ import{jsxs as i,jsx as t}from"react/jsx-runtime";import{useId as w}from"react";import{useController as B}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{CheckboxBase as I}from"../../uncontrolled/checkbox/Checkbox.js";import{cn as e}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"../../../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";import{MessageView as M}from"../../ui/MessageView.js";const lo=({control:s,classes:p,className:l,name:a,rules:c,shouldUnregister:n,defaultValue:d,disabled:o,children:x,helperText:f,...g})=>{const{field:h,fieldState:k}=B({control:s,name:a,rules:c,shouldUnregister:n,defaultValue:d,disabled:o}),{container:C,message:u,label:b,...v}=p||{},{value:y,onChange:N,...j}=h,{invalid:F,error:r}=k,m=w();return i("div",{className:e("flex flex-col gap-y-2",l),children:[i("div",{className:e("flex items-center justify-items-start gap-x-3",C),children:[t(I,{id:m,checked:y,onCheckedChange:N,invalid:F,classes:v,...g,...j}),t("label",{htmlFor:m,className:e("mob-body-regular-s text-color-dark","desktop:desk-body-regular-m desktop:gap-x-4",{"text-color-disabled":o},b),children:x})]}),t(M,{text:r?r.message:f,className:u,intent:r?"error":"simple",disabled:o})]})};export{lo as CheckboxControl};
2
2
  //# sourceMappingURL=CheckboxControl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CheckboxControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/checkbox/CheckboxControl.tsx"],"sourcesContent":["'use client'\n\nimport { useId } from 'react'\nimport { type Control, type FieldPath, type FieldValues, useController, type UseControllerProps } from 'react-hook-form'\nimport { CheckboxBase, type CheckboxBaseProps } from '../../uncontrolled/checkbox'\nimport { MessageView } from '$/shared/ui/formElements/ui'\nimport { cn } from '$/shared/utils'\n\ntype CheckboxControlClasses = CheckboxBaseProps['classes'] & {\n container?: string\n message?: string\n label?: string\n}\n\nexport type CheckboxControlProps<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n Omit<CheckboxBaseProps, 'classes'> & {\n /**\n * Контрол объект для управления полем\n */\n control: Control<TFieldValues>\n /**\n * Отображаемый лейбл\n */\n children: React.ReactElement | string\n /**\n * Дополнительные стили компонента\n */\n classes?: CheckboxControlClasses\n /**\n * Дополнительный текст\n */\n helperText?: string\n }\n\nexport const CheckboxControl = <TFieldValues extends FieldValues = FieldValues>({\n control,\n classes,\n className,\n name,\n rules,\n shouldUnregister,\n defaultValue,\n disabled,\n children,\n helperText,\n ...props\n}: CheckboxControlProps<TFieldValues>) => {\n const { field, fieldState } = useController({\n control,\n name,\n rules,\n shouldUnregister,\n defaultValue,\n disabled\n })\n\n const { container, message, label, ...restClasses } = classes || {}\n const { value, onChange, ...restField } = field\n const { invalid, error } = fieldState\n\n const id = useId()\n\n return (\n <div className={cn('flex flex-col gap-y-2', className)}>\n <div className={cn('flex items-center justify-items-start gap-x-3', container)}>\n <CheckboxBase\n id={id}\n checked={value}\n onCheckedChange={onChange}\n invalid={invalid}\n classes={restClasses}\n {...props}\n {...restField}\n />\n <label\n htmlFor={id}\n className={cn(\n 'mob-body-regular-s text-color-dark',\n 'desktop:desk-body-regular-m desktop:gap-x-4',\n {\n 'text-color-disabled': disabled\n },\n label\n )}\n >\n {children}\n </label>\n </div>\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":["CheckboxControl","control","classes","className","name","rules","shouldUnregister","defaultValue","disabled","children","helperText","props","field","fieldState","useController","container","message","label","restClasses","value","onChange","restField","invalid","error","id","useId","cn","jsxs","jsx","CheckboxBase","MessageView"],"mappings":"0gDAqCO,MAAMA,GAAkB,CAAiD,CAC9E,QAAAC,EACA,QAAAC,EACA,UAAAC,EACA,KAAAC,EACA,MAAAC,EACA,iBAAAC,EACA,aAAAC,EACA,SAAAC,EACA,SAAAC,EACA,WAAAC,EACA,GAAGC,CACL,IAA0C,CACxC,KAAM,CAAE,MAAAC,EAAO,WAAAC,CAAA,EAAeC,EAAc,CAC1C,QAAAb,EACA,KAAAG,EACA,MAAAC,EACA,iBAAAC,EACA,aAAAC,EACA,SAAAC,CAAA,CACD,EAEK,CAAE,UAAAO,EAAW,QAAAC,EAAS,MAAAC,EAAO,GAAGC,CAAA,EAAgBhB,GAAW,CAAA,EAC3D,CAAE,MAAAiB,EAAO,SAAAC,EAAU,GAAGC,GAAcT,EACpC,CAAE,QAAAU,EAAS,MAAAC,CAAA,EAAUV,EAErBW,EAAKC,EAAA,EAEX,SACG,MAAA,CAAI,UAAWC,EAAG,wBAAyBvB,CAAS,EACnD,SAAA,CAAAwB,EAAC,MAAA,CAAI,UAAWD,EAAG,gDAAiDX,CAAS,EAC3E,SAAA,CAAAa,EAACC,EAAA,CACC,GAAAL,EACA,QAASL,EACT,gBAAiBC,EACjB,QAAAE,EACA,QAASJ,EACR,GAAGP,EACH,GAAGU,CAAA,CAAA,EAENO,EAAC,QAAA,CACC,QAASJ,EACT,UAAWE,EACT,qCACA,8CACA,CACE,sBAAuBlB,CAAA,EAEzBS,CAAA,EAGD,SAAAR,CAAA,CAAA,CACH,EACF,EACAmB,EAACE,EAAA,CACC,KAAMP,EAAQA,EAAM,QAAUb,EAC9B,UAAWM,EACX,OAAQO,EAAQ,QAAU,SAC1B,SAAAf,CAAA,CAAA,CACF,EACF,CAEJ"}
1
+ {"version":3,"file":"CheckboxControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/checkbox/CheckboxControl.tsx"],"sourcesContent":["'use client'\n\nimport { useId } from 'react'\nimport { type Control, type FieldPath, type FieldValues, useController, type UseControllerProps } from 'react-hook-form'\nimport { CheckboxBase, type CheckboxBaseProps } from '../../uncontrolled/checkbox'\nimport { MessageView } from '$/shared/ui/formElements/ui'\nimport { cn } from '$/shared/utils'\n\ntype CheckboxControlClasses = CheckboxBaseProps['classes'] & {\n container?: string\n message?: string\n label?: string\n}\n\nexport type CheckboxControlProps<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n Omit<CheckboxBaseProps, 'classes'> & {\n /**\n * Контрол объект для управления полем\n */\n control: Control<TFieldValues>\n /**\n * Отображаемый лейбл\n */\n children: React.ReactElement | string\n /**\n * Дополнительные стили компонента\n */\n classes?: CheckboxControlClasses\n /**\n * Дополнительный текст\n */\n helperText?: string\n }\n\nexport const CheckboxControl = <TFieldValues extends FieldValues = FieldValues>({\n control,\n classes,\n className,\n name,\n rules,\n shouldUnregister,\n defaultValue,\n disabled,\n children,\n helperText,\n ...props\n}: CheckboxControlProps<TFieldValues>) => {\n const { field, fieldState } = useController({\n control,\n name,\n rules,\n shouldUnregister,\n defaultValue,\n disabled\n })\n\n const { container, message, label, ...restClasses } = classes || {}\n const { value, onChange, ...restField } = field\n const { invalid, error } = fieldState\n\n const id = useId()\n\n return (\n <div className={cn('flex flex-col gap-y-2', className)}>\n <div className={cn('flex items-center justify-items-start gap-x-3', container)}>\n <CheckboxBase\n id={id}\n checked={value}\n onCheckedChange={onChange}\n invalid={invalid}\n classes={restClasses}\n {...props}\n {...restField}\n />\n <label\n htmlFor={id}\n className={cn(\n 'mob-body-regular-s text-color-dark',\n 'desktop:desk-body-regular-m desktop:gap-x-4',\n {\n 'text-color-disabled': disabled\n },\n label\n )}\n >\n {children}\n </label>\n </div>\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":["CheckboxControl","control","classes","className","name","rules","shouldUnregister","defaultValue","disabled","children","helperText","props","field","fieldState","useController","container","message","label","restClasses","value","onChange","restField","invalid","error","id","useId","cn","jsxs","jsx","CheckboxBase","MessageView"],"mappings":"8+CAqCO,MAAMA,GAAkB,CAAiD,CAC9E,QAAAC,EACA,QAAAC,EACA,UAAAC,EACA,KAAAC,EACA,MAAAC,EACA,iBAAAC,EACA,aAAAC,EACA,SAAAC,EACA,SAAAC,EACA,WAAAC,EACA,GAAGC,CACL,IAA0C,CACxC,KAAM,CAAE,MAAAC,EAAO,WAAAC,CAAA,EAAeC,EAAc,CAC1C,QAAAb,EACA,KAAAG,EACA,MAAAC,EACA,iBAAAC,EACA,aAAAC,EACA,SAAAC,CAAA,CACD,EAEK,CAAE,UAAAO,EAAW,QAAAC,EAAS,MAAAC,EAAO,GAAGC,CAAA,EAAgBhB,GAAW,CAAA,EAC3D,CAAE,MAAAiB,EAAO,SAAAC,EAAU,GAAGC,GAAcT,EACpC,CAAE,QAAAU,EAAS,MAAAC,CAAA,EAAUV,EAErBW,EAAKC,EAAA,EAEX,SACG,MAAA,CAAI,UAAWC,EAAG,wBAAyBvB,CAAS,EACnD,SAAA,CAAAwB,EAAC,MAAA,CAAI,UAAWD,EAAG,gDAAiDX,CAAS,EAC3E,SAAA,CAAAa,EAACC,EAAA,CACC,GAAAL,EACA,QAASL,EACT,gBAAiBC,EACjB,QAAAE,EACA,QAASJ,EACR,GAAGP,EACH,GAAGU,CAAA,CAAA,EAENO,EAAC,QAAA,CACC,QAASJ,EACT,UAAWE,EACT,qCACA,8CACA,CACE,sBAAuBlB,CAAA,EAEzBS,CAAA,EAGD,SAAAR,CAAA,CAAA,CACH,EACF,EACAmB,EAACE,EAAA,CACC,KAAMP,EAAQA,EAAM,QAAUb,EAC9B,UAAWM,EACX,OAAQO,EAAQ,QAAU,SAC1B,SAAAf,CAAA,CAAA,CACF,EACF,CAEJ"}
@@ -1,2 +1,2 @@
1
- import{jsxs as G,jsx as e}from"react/jsx-runtime";import{useMemo as S}from"react";import{useController as T}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{Combobox as k}from"../../uncontrolled/combobox/combobox.js";import{cn as q}from"../../../../utils/cn.js";import{TypeGuards as s}from"../../../../utils/typeGuards.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"@hookform/resolvers";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"../../uncontrolled/dayPicker/DayPicker.js";import"../../uncontrolled/input/Input.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";import"../../../dropdownList/ui/dropdownItem/DropdownItem.js";import{MessageView as z}from"../../ui/MessageView.js";const xo=({control:n,className:l,name:c,rules:f,shouldUnregister:a,disabled:t,defaultValue:g,options:m,helperText:x,returnValue:r,classes:C,...d})=>{const{field:b,fieldState:h}=T({control:n,name:c,rules:f,shouldUnregister:a,disabled:t,defaultValue:g}),{error:i,invalid:u}=h,{value:p,onChange:y,...j}=b,{root:w,combobox:A,message:M}=C??{},N=o=>{s.isArray(o)||y(r&&o?r(o):(o==null?void 0:o.value)??null)},F=S(()=>s.isArray(p)?null:m.find(o=>(r?r(o):o.value)===p)??null,[m,p]);return G("div",{className:q("w-full items-start gap-y-2",w,l),children:[e(k,{...d,...j,options:m,value:F,onChange:N,invalid:u,disabled:t,multiple:!1,classes:A}),e(z,{text:i?i.message:x,className:M,intent:i?"error":"simple",disabled:t})]})};export{xo as ComboboxControl};
1
+ import{jsxs as G,jsx as e}from"react/jsx-runtime";import{useMemo as S}from"react";import{useController as T}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{Combobox as k}from"../../uncontrolled/combobox/combobox.js";import{cn as q}from"../../../../utils/cn.js";import{TypeGuards as s}from"../../../../utils/typeGuards.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"../../uncontrolled/dayPicker/DayPicker.js";import"../../uncontrolled/input/Input.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";import"../../../dropdownList/ui/dropdownItem/DropdownItem.js";import{MessageView as z}from"../../ui/MessageView.js";const go=({control:n,className:l,name:c,rules:f,shouldUnregister:a,disabled:t,defaultValue:g,options:m,helperText:x,returnValue:r,classes:C,...d})=>{const{field:b,fieldState:h}=T({control:n,name:c,rules:f,shouldUnregister:a,disabled:t,defaultValue:g}),{error:i,invalid:u}=h,{value:p,onChange:y,...j}=b,{root:w,combobox:A,message:M}=C??{},N=o=>{s.isArray(o)||y(r&&o?r(o):(o==null?void 0:o.value)??null)},F=S(()=>s.isArray(p)?null:m.find(o=>(r?r(o):o.value)===p)??null,[m,p]);return G("div",{className:q("w-full items-start gap-y-2",w,l),children:[e(k,{...d,...j,options:m,value:F,onChange:N,invalid:u,disabled:t,multiple:!1,classes:A}),e(z,{text:i?i.message:x,className:M,intent:i?"error":"simple",disabled:t})]})};export{go as ComboboxControl};
2
2
  //# sourceMappingURL=ComboboxControl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ComboboxControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/combobox/ComboboxControl.tsx"],"sourcesContent":["import { useMemo } from 'react'\nimport { type Control, type FieldPath, type FieldValues, useController, type UseControllerProps } from 'react-hook-form'\nimport {\n type ChangeHandler,\n Combobox,\n type ComboboxClasses,\n type ComboboxItemOption,\n type ComboboxProps,\n type ComboboxValue\n} from '../../uncontrolled/combobox'\nimport { MessageView } from '$/shared/ui/formElements/ui'\nimport { cn, TypeGuards } from '$/shared/utils'\n\nexport type ComboboxControlClasses = {\n root?: string\n message?: string\n combobox?: ComboboxClasses\n}\n\nexport type ComboboxControlProps<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n ComboboxProps<false> & {\n control: Control<TFieldValues>\n helperText?: string\n returnValue?: (option: ComboboxItemOption) => string | null\n classes?: ComboboxControlClasses\n }\n\nexport const ComboboxControl = <TFieldValues extends FieldValues>({\n control,\n className,\n name,\n rules,\n shouldUnregister,\n disabled,\n defaultValue,\n options,\n helperText,\n returnValue,\n classes,\n ...props\n}: ComboboxControlProps<TFieldValues>) => {\n const { field, fieldState } = useController({\n control,\n name,\n rules,\n shouldUnregister,\n disabled,\n defaultValue\n })\n\n const { error, invalid } = fieldState\n const { value, onChange, ...restField } = field\n\n const { root, combobox, message } = classes ?? {}\n\n const onValueChange: ChangeHandler<false> = (value) => {\n if (TypeGuards.isArray(value)) return\n\n onChange(returnValue && value ? returnValue(value) : (value?.value ?? null))\n }\n\n const selected = useMemo<ComboboxValue<false>>(() => {\n if (TypeGuards.isArray(value)) return null\n\n return options.find((option) => (returnValue ? returnValue(option) : option.value) === value) ?? null\n }, [options, value])\n\n return (\n <div className={cn('w-full items-start gap-y-2', root, className)}>\n <Combobox\n {...props}\n {...restField}\n options={options}\n value={selected}\n onChange={onValueChange}\n invalid={invalid}\n disabled={disabled}\n multiple={false}\n classes={combobox}\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":["ComboboxControl","control","className","name","rules","shouldUnregister","disabled","defaultValue","options","helperText","returnValue","classes","props","field","fieldState","useController","error","invalid","value","onChange","restField","root","combobox","message","onValueChange","TypeGuards","selected","useMemo","option","cn","jsx","Combobox","MessageView"],"mappings":"qnDA8BO,MAAMA,GAAkB,CAAmC,CAChE,QAAAC,EACA,UAAAC,EACA,KAAAC,EACA,MAAAC,EACA,iBAAAC,EACA,SAAAC,EACA,aAAAC,EACA,QAAAC,EACA,WAAAC,EACA,YAAAC,EACA,QAAAC,EACA,GAAGC,CACL,IAA0C,CACxC,KAAM,CAAE,MAAAC,EAAO,WAAAC,CAAA,EAAeC,EAAc,CAC1C,QAAAd,EACA,KAAAE,EACA,MAAAC,EACA,iBAAAC,EACA,SAAAC,EACA,aAAAC,CAAA,CACD,EAEK,CAAE,MAAAS,EAAO,QAAAC,CAAA,EAAYH,EACrB,CAAE,MAAAI,EAAO,SAAAC,EAAU,GAAGC,GAAcP,EAEpC,CAAE,KAAAQ,EAAM,SAAAC,EAAU,QAAAC,CAAA,EAAYZ,GAAW,CAAA,EAEzCa,EAAuCN,GAAU,CACjDO,EAAW,QAAQP,CAAK,GAE5BC,EAAST,GAAeQ,EAAQR,EAAYQ,CAAK,GAAKA,GAAAA,YAAAA,EAAO,QAAS,IAAK,CAC7E,EAEMQ,EAAWC,EAA8B,IACzCF,EAAW,QAAQP,CAAK,EAAU,KAE/BV,EAAQ,KAAMoB,IAAYlB,EAAcA,EAAYkB,CAAM,EAAIA,EAAO,SAAWV,CAAK,GAAK,KAChG,CAACV,EAASU,CAAK,CAAC,EAEnB,SACG,MAAA,CAAI,UAAWW,EAAG,6BAA8BR,EAAMnB,CAAS,EAC9D,SAAA,CAAA4B,EAACC,EAAA,CACE,GAAGnB,EACH,GAAGQ,EACJ,QAAAZ,EACA,MAAOkB,EACP,SAAUF,EACV,QAAAP,EACA,SAAAX,EACA,SAAU,GACV,QAASgB,CAAA,CAAA,EAEXQ,EAACE,EAAA,CACC,KAAMhB,EAAQA,EAAM,QAAUP,EAC9B,UAAWc,EACX,OAAQP,EAAQ,QAAU,SAC1B,SAAAV,CAAA,CAAA,CACF,EACF,CAEJ"}
1
+ {"version":3,"file":"ComboboxControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/combobox/ComboboxControl.tsx"],"sourcesContent":["import { useMemo } from 'react'\nimport { type Control, type FieldPath, type FieldValues, useController, type UseControllerProps } from 'react-hook-form'\nimport {\n type ChangeHandler,\n Combobox,\n type ComboboxClasses,\n type ComboboxItemOption,\n type ComboboxProps,\n type ComboboxValue\n} from '../../uncontrolled/combobox'\nimport { MessageView } from '$/shared/ui/formElements/ui'\nimport { cn, TypeGuards } from '$/shared/utils'\n\nexport type ComboboxControlClasses = {\n root?: string\n message?: string\n combobox?: ComboboxClasses\n}\n\nexport type ComboboxControlProps<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n ComboboxProps<false> & {\n control: Control<TFieldValues>\n helperText?: string\n returnValue?: (option: ComboboxItemOption) => string | null\n classes?: ComboboxControlClasses\n }\n\nexport const ComboboxControl = <TFieldValues extends FieldValues>({\n control,\n className,\n name,\n rules,\n shouldUnregister,\n disabled,\n defaultValue,\n options,\n helperText,\n returnValue,\n classes,\n ...props\n}: ComboboxControlProps<TFieldValues>) => {\n const { field, fieldState } = useController({\n control,\n name,\n rules,\n shouldUnregister,\n disabled,\n defaultValue\n })\n\n const { error, invalid } = fieldState\n const { value, onChange, ...restField } = field\n\n const { root, combobox, message } = classes ?? {}\n\n const onValueChange: ChangeHandler<false> = (value) => {\n if (TypeGuards.isArray(value)) return\n\n onChange(returnValue && value ? returnValue(value) : (value?.value ?? null))\n }\n\n const selected = useMemo<ComboboxValue<false>>(() => {\n if (TypeGuards.isArray(value)) return null\n\n return options.find((option) => (returnValue ? returnValue(option) : option.value) === value) ?? null\n }, [options, value])\n\n return (\n <div className={cn('w-full items-start gap-y-2', root, className)}>\n <Combobox\n {...props}\n {...restField}\n options={options}\n value={selected}\n onChange={onValueChange}\n invalid={invalid}\n disabled={disabled}\n multiple={false}\n classes={combobox}\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":["ComboboxControl","control","className","name","rules","shouldUnregister","disabled","defaultValue","options","helperText","returnValue","classes","props","field","fieldState","useController","error","invalid","value","onChange","restField","root","combobox","message","onValueChange","TypeGuards","selected","useMemo","option","cn","jsx","Combobox","MessageView"],"mappings":"ylDA8BO,MAAMA,GAAkB,CAAmC,CAChE,QAAAC,EACA,UAAAC,EACA,KAAAC,EACA,MAAAC,EACA,iBAAAC,EACA,SAAAC,EACA,aAAAC,EACA,QAAAC,EACA,WAAAC,EACA,YAAAC,EACA,QAAAC,EACA,GAAGC,CACL,IAA0C,CACxC,KAAM,CAAE,MAAAC,EAAO,WAAAC,CAAA,EAAeC,EAAc,CAC1C,QAAAd,EACA,KAAAE,EACA,MAAAC,EACA,iBAAAC,EACA,SAAAC,EACA,aAAAC,CAAA,CACD,EAEK,CAAE,MAAAS,EAAO,QAAAC,CAAA,EAAYH,EACrB,CAAE,MAAAI,EAAO,SAAAC,EAAU,GAAGC,GAAcP,EAEpC,CAAE,KAAAQ,EAAM,SAAAC,EAAU,QAAAC,CAAA,EAAYZ,GAAW,CAAA,EAEzCa,EAAuCN,GAAU,CACjDO,EAAW,QAAQP,CAAK,GAE5BC,EAAST,GAAeQ,EAAQR,EAAYQ,CAAK,GAAKA,GAAAA,YAAAA,EAAO,QAAS,IAAK,CAC7E,EAEMQ,EAAWC,EAA8B,IACzCF,EAAW,QAAQP,CAAK,EAAU,KAE/BV,EAAQ,KAAMoB,IAAYlB,EAAcA,EAAYkB,CAAM,EAAIA,EAAO,SAAWV,CAAK,GAAK,KAChG,CAACV,EAASU,CAAK,CAAC,EAEnB,SACG,MAAA,CAAI,UAAWW,EAAG,6BAA8BR,EAAMnB,CAAS,EAC9D,SAAA,CAAA4B,EAACC,EAAA,CACE,GAAGnB,EACH,GAAGQ,EACJ,QAAAZ,EACA,MAAOkB,EACP,SAAUF,EACV,QAAAP,EACA,SAAAX,EACA,SAAU,GACV,QAASgB,CAAA,CAAA,EAEXQ,EAACE,EAAA,CACC,KAAMhB,EAAQA,EAAM,QAAUP,EAC9B,UAAWc,EACX,OAAQP,EAAQ,QAAU,SAC1B,SAAAV,CAAA,CAAA,CACF,EACF,CAEJ"}
@@ -1,2 +1,2 @@
1
- import{jsxs as P,jsx as r}from"react/jsx-runtime";import{useState as S}from"react";import{useController as j}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{SingleDayPicker as k}from"./single.js";import{cn as y}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"@hookform/resolvers";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/ui/Editor.js";import"../input/MaskInputControl.js";import{MessageView as N}from"../../ui/MessageView.js";const at=({control:i,name:m,disabled:o,rules:p,shouldUnregister:e,defaultValue:s,inputProps:n,helperText:a,classes:l,...c})=>{const{field:f,fieldState:u}=j({control:i,name:m,defaultValue:s,disabled:o,rules:p,shouldUnregister:e}),{value:g,onChange:h,...C}=f,{error:t,invalid:d}=u,{message:v,container:x,...w}=l||{},[D,M]=S(new Date);return P("div",{className:y("w-full",x),children:[r(k,{...c,value:g??"",onChange:h,month:D,onMonthChange:M,classes:w,inputProps:{...n,...C,invalid:d}}),r(N,{text:(t==null?void 0:t.message)||a,className:v,intent:t?"error":"simple",disabled:o})]})};export{at as DayPickerControl};
1
+ import{jsxs as P,jsx as r}from"react/jsx-runtime";import{useState as S}from"react";import{useController as j}from"../../../../../../node_modules/react-hook-form/dist/index.esm.js";import{SingleDayPicker as k}from"./single.js";import{cn as y}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"../editor/ui/Editor.js";import"../input/MaskInputControl.js";import{MessageView as N}from"../../ui/MessageView.js";const nt=({control:i,name:m,disabled:o,rules:e,shouldUnregister:p,defaultValue:s,inputProps:n,helperText:a,classes:l,...c})=>{const{field:f,fieldState:u}=j({control:i,name:m,defaultValue:s,disabled:o,rules:e,shouldUnregister:p}),{value:g,onChange:h,...C}=f,{error:t,invalid:d}=u,{message:v,container:x,...w}=l||{},[D,M]=S(new Date);return P("div",{className:y("w-full",x),children:[r(k,{...c,value:g??"",onChange:h,month:D,onMonthChange:M,classes:w,inputProps:{...n,...C,invalid:d}}),r(N,{text:(t==null?void 0:t.message)||a,className:v,intent:t?"error":"simple",disabled:o})]})};export{nt as DayPickerControl};
2
2
  //# sourceMappingURL=dayPickerControl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dayPickerControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/dayPickerControl/dayPickerControl.tsx"],"sourcesContent":["'use client'\n\nimport { useState } from 'react'\nimport { type Control, type FieldPath, type FieldValues, useController, type UseControllerProps } from 'react-hook-form'\nimport { SingleDayPicker } from './single'\nimport { type Calendar, type MaskInputProps } from '$/shared/ui'\nimport { MessageView } from '$/shared/ui/formElements/ui'\nimport { cn } from '$/shared/utils'\n\ntype CalendarProps = React.ComponentPropsWithoutRef<typeof Calendar>\ntype DayPickerControlClasses = MaskInputProps['classes'] & {\n message?: string\n}\n\nexport type ExternalHandlers = {\n onChange?: (value: string) => void\n onClick?: (event: React.MouseEvent<HTMLInputElement>) => void\n onFocus?: (event: React.FocusEvent<HTMLInputElement>) => void\n onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void\n}\n\nexport type DayPickerControlProps<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n Omit<CalendarProps, 'selected' | 'onSelect' | 'mode'> & {\n /**\n * Контрол объект для управления полем\n */\n control: Control<TFieldValues>\n /**\n * Свойства отображаемого Input поля\n */\n inputProps: Omit<MaskInputProps, 'mask'>\n /**\n * Дополнительный текст\n */\n helperText?: string\n /**\n * Дополнительные стили компонента\n */\n classes?: DayPickerControlClasses\n /**\n * Дополнительные хендлеры\n */\n externalHandlers?: ExternalHandlers\n }\n\nexport const DayPickerControl = <T extends FieldValues = FieldValues>({\n control,\n name,\n disabled,\n rules,\n shouldUnregister,\n defaultValue,\n inputProps,\n helperText,\n classes,\n ...props\n}: DayPickerControlProps<T>) => {\n const { field, fieldState } = useController({\n control,\n name,\n defaultValue,\n disabled,\n rules,\n shouldUnregister\n })\n\n const { value, onChange, ...restField } = field\n const { error, invalid } = fieldState\n const { message, container, ...restClasses } = classes || {}\n\n const [month, setMonth] = useState<Date>(new Date())\n\n return (\n <div className={cn('w-full', container)}>\n <SingleDayPicker\n {...props}\n value={value ?? ''}\n onChange={onChange}\n month={month}\n onMonthChange={setMonth}\n classes={restClasses}\n inputProps={{\n ...inputProps,\n ...restField,\n invalid\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":["DayPickerControl","control","name","disabled","rules","shouldUnregister","defaultValue","inputProps","helperText","classes","props","field","fieldState","useController","value","onChange","restField","error","invalid","message","container","restClasses","month","setMonth","useState","cn","jsx","SingleDayPicker","MessageView"],"mappings":"oiDAgDO,MAAMA,GAAmB,CAAsC,CACpE,QAAAC,EACA,KAAAC,EACA,SAAAC,EACA,MAAAC,EACA,iBAAAC,EACA,aAAAC,EACA,WAAAC,EACA,WAAAC,EACA,QAAAC,EACA,GAAGC,CACL,IAAgC,CAC9B,KAAM,CAAE,MAAAC,EAAO,WAAAC,CAAA,EAAeC,EAAc,CAC1C,QAAAZ,EACA,KAAAC,EACA,aAAAI,EACA,SAAAH,EACA,MAAAC,EACA,iBAAAC,CAAA,CACD,EAEK,CAAE,MAAAS,EAAO,SAAAC,EAAU,GAAGC,GAAcL,EACpC,CAAE,MAAAM,EAAO,QAAAC,CAAA,EAAYN,EACrB,CAAE,QAAAO,EAAS,UAAAC,EAAW,GAAGC,CAAA,EAAgBZ,GAAW,CAAA,EAEpD,CAACa,EAAOC,CAAQ,EAAIC,EAAe,IAAI,IAAM,EAEnD,SACG,MAAA,CAAI,UAAWC,EAAG,SAAUL,CAAS,EACpC,SAAA,CAAAM,EAACC,EAAA,CACE,GAAGjB,EACJ,MAAOI,GAAS,GAChB,SAAAC,EACA,MAAAO,EACA,cAAeC,EACf,QAASF,EACT,WAAY,CACV,GAAGd,EACH,GAAGS,EACH,QAAAE,CAAA,CACF,CAAA,EAEFQ,EAACE,EAAA,CACC,MAAMX,GAAA,YAAAA,EAAO,UAAWT,EACxB,UAAWW,EACX,OAAQF,EAAQ,QAAU,SAC1B,SAAAd,CAAA,CAAA,CACF,EACF,CAEJ"}
1
+ {"version":3,"file":"dayPickerControl.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/dayPickerControl/dayPickerControl.tsx"],"sourcesContent":["'use client'\n\nimport { useState } from 'react'\nimport { type Control, type FieldPath, type FieldValues, useController, type UseControllerProps } from 'react-hook-form'\nimport { SingleDayPicker } from './single'\nimport { type Calendar, type MaskInputProps } from '$/shared/ui'\nimport { MessageView } from '$/shared/ui/formElements/ui'\nimport { cn } from '$/shared/utils'\n\ntype CalendarProps = React.ComponentPropsWithoutRef<typeof Calendar>\ntype DayPickerControlClasses = MaskInputProps['classes'] & {\n message?: string\n}\n\nexport type ExternalHandlers = {\n onChange?: (value: string) => void\n onClick?: (event: React.MouseEvent<HTMLInputElement>) => void\n onFocus?: (event: React.FocusEvent<HTMLInputElement>) => void\n onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void\n}\n\nexport type DayPickerControlProps<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>\n> = UseControllerProps<TFieldValues, TName> &\n Omit<CalendarProps, 'selected' | 'onSelect' | 'mode'> & {\n /**\n * Контрол объект для управления полем\n */\n control: Control<TFieldValues>\n /**\n * Свойства отображаемого Input поля\n */\n inputProps: Omit<MaskInputProps, 'mask'>\n /**\n * Дополнительный текст\n */\n helperText?: string\n /**\n * Дополнительные стили компонента\n */\n classes?: DayPickerControlClasses\n /**\n * Дополнительные хендлеры\n */\n externalHandlers?: ExternalHandlers\n }\n\nexport const DayPickerControl = <T extends FieldValues = FieldValues>({\n control,\n name,\n disabled,\n rules,\n shouldUnregister,\n defaultValue,\n inputProps,\n helperText,\n classes,\n ...props\n}: DayPickerControlProps<T>) => {\n const { field, fieldState } = useController({\n control,\n name,\n defaultValue,\n disabled,\n rules,\n shouldUnregister\n })\n\n const { value, onChange, ...restField } = field\n const { error, invalid } = fieldState\n const { message, container, ...restClasses } = classes || {}\n\n const [month, setMonth] = useState<Date>(new Date())\n\n return (\n <div className={cn('w-full', container)}>\n <SingleDayPicker\n {...props}\n value={value ?? ''}\n onChange={onChange}\n month={month}\n onMonthChange={setMonth}\n classes={restClasses}\n inputProps={{\n ...inputProps,\n ...restField,\n invalid\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":["DayPickerControl","control","name","disabled","rules","shouldUnregister","defaultValue","inputProps","helperText","classes","props","field","fieldState","useController","value","onChange","restField","error","invalid","message","container","restClasses","month","setMonth","useState","cn","jsx","SingleDayPicker","MessageView"],"mappings":"wgDAgDO,MAAMA,GAAmB,CAAsC,CACpE,QAAAC,EACA,KAAAC,EACA,SAAAC,EACA,MAAAC,EACA,iBAAAC,EACA,aAAAC,EACA,WAAAC,EACA,WAAAC,EACA,QAAAC,EACA,GAAGC,CACL,IAAgC,CAC9B,KAAM,CAAE,MAAAC,EAAO,WAAAC,CAAA,EAAeC,EAAc,CAC1C,QAAAZ,EACA,KAAAC,EACA,aAAAI,EACA,SAAAH,EACA,MAAAC,EACA,iBAAAC,CAAA,CACD,EAEK,CAAE,MAAAS,EAAO,SAAAC,EAAU,GAAGC,GAAcL,EACpC,CAAE,MAAAM,EAAO,QAAAC,CAAA,EAAYN,EACrB,CAAE,QAAAO,EAAS,UAAAC,EAAW,GAAGC,CAAA,EAAgBZ,GAAW,CAAA,EAEpD,CAACa,EAAOC,CAAQ,EAAIC,EAAe,IAAI,IAAM,EAEnD,SACG,MAAA,CAAI,UAAWC,EAAG,SAAUL,CAAS,EACpC,SAAA,CAAAM,EAACC,EAAA,CACE,GAAGjB,EACJ,MAAOI,GAAS,GAChB,SAAAC,EACA,MAAAO,EACA,cAAeC,EACf,QAASF,EACT,WAAY,CACV,GAAGd,EACH,GAAGS,EACH,QAAAE,CAAA,CACF,CAAA,EAEFQ,EAACE,EAAA,CACC,MAAMX,GAAA,YAAAA,EAAO,UAAWT,EACxB,UAAWW,EACX,OAAQF,EAAQ,QAAU,SAC1B,SAAAd,CAAA,CAAA,CACF,EACF,CAEJ"}
@@ -1,2 +1,2 @@
1
- import"react/jsx-runtime";import"tailwind-merge";import"../../../../button/Button.js";import"../../../../buttonIcon/ButtonIcon.js";import"../../../../calendar/Calendar.js";import{formatDateToLocaleString as m}from"../../../../calendar/model/utils.js";import"../../../../accordion/Accordion.js";import"react";import"@hookform/resolvers";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/ui/Editor.js";import"../../input/MaskInputControl.js";function H(o,t){switch(o){case"range":const[r,i]=Object.values(t).map(p=>new Date(p));return[r?m(r):void 0,i?m(i):void 0].join("-");case"single":default:const e=t?new Date(t):new Date;return t?m(e):""}}function J(o,t){switch(o){case"range":if(t){const r=Object.entries(t).map(([i,e])=>[i,new Date(e)]);return Object.fromEntries(r)}return{};case"single":default:return t?new Date(t):new Date}}export{J as getCurrentDate,H as getInitialValue};
1
+ import"react/jsx-runtime";import"../../../../button/Button.js";import"../../../../buttonIcon/ButtonIcon.js";import"../../../../calendar/Calendar.js";import{formatDateToLocaleString as m}from"../../../../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"../../../uncontrolled/textarea/Textarea.js";import"../../../uncontrolled/uploader/UploaderBase.js";import"../../editor/ui/Editor.js";import"../../input/MaskInputControl.js";function F(o,t){switch(o){case"range":const[r,i]=Object.values(t).map(p=>new Date(p));return[r?m(r):void 0,i?m(i):void 0].join("-");case"single":default:const e=t?new Date(t):new Date;return t?m(e):""}}function G(o,t){switch(o){case"range":if(t){const r=Object.entries(t).map(([i,e])=>[i,new Date(e)]);return Object.fromEntries(r)}return{};case"single":default:return t?new Date(t):new Date}}export{G as getCurrentDate,F as getInitialValue};
2
2
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../../../../../lib/shared/ui/formElements/controlled/dayPickerControl/model/utils.ts"],"sourcesContent":["import type { DateRange } from 'react-day-picker'\nimport { formatDateToLocaleString } from '$/shared/ui'\n\ntype IsoDateRange = {\n from?: string\n to?: string\n}\n\n/**\n * Функция для получения инит состояния поля ввода\n * @param mode режим календаря (single | range)\n * @param value текущее состояние поля\n */\nexport function getInitialValue(mode: 'single', value?: string): string\nexport function getInitialValue(mode: 'range', value?: IsoDateRange): string\nexport function getInitialValue(mode: 'multiple', value?: IsoDateRange): string\nexport function getInitialValue(mode: 'single' | 'multiple' | 'range', value?: IsoDateRange | string) {\n switch (mode) {\n case 'range':\n const [from, to] = Object.values(value as IsoDateRange).map((date) => new Date(date))\n\n return [from ? formatDateToLocaleString(from) : undefined, to ? formatDateToLocaleString(to) : undefined].join('-')\n case 'single':\n default:\n const date = value ? new Date(value as string) : new Date()\n\n return value ? formatDateToLocaleString(date) : ''\n }\n}\n\n/**\n * Функция для получения объекта даты по текущему состоянию\n * @param mode режим календаря (single | range)\n * @param value текущее состояние поля\n *\n * @returns Date если mode 'single'\n * @returns DateRange если mode 'range'\n */\nexport function getCurrentDate(mode: 'single', value?: string): Date\nexport function getCurrentDate(mode: 'range', value?: IsoDateRange): DateRange\nexport function getCurrentDate(mode: 'multiple', value?: IsoDateRange): Date\nexport function getCurrentDate(mode: 'single' | 'multiple' | 'range', value?: string | IsoDateRange): Date | DateRange {\n switch (mode) {\n case 'range':\n if (value) {\n const entries = Object.entries(value as IsoDateRange).map(([key, value]) => [key, new Date(value)])\n\n return Object.fromEntries(entries)\n }\n\n return {} as DateRange\n case 'single':\n default:\n return value ? new Date(value as string) : new Date()\n }\n}\n"],"names":["getInitialValue","mode","value","from","to","date","formatDateToLocaleString","getCurrentDate","entries","key"],"mappings":"+4CAgBO,SAASA,EAAgBC,EAAuCC,EAA+B,CACpG,OAAQD,EAAA,CACN,IAAK,QACH,KAAM,CAACE,EAAMC,CAAE,EAAI,OAAO,OAAOF,CAAqB,EAAE,IAAKG,GAAS,IAAI,KAAKA,CAAI,CAAC,EAEpF,MAAO,CAACF,EAAOG,EAAyBH,CAAI,EAAI,OAAWC,EAAKE,EAAyBF,CAAE,EAAI,MAAS,EAAE,KAAK,GAAG,EACpH,IAAK,SACL,QACE,MAAMC,EAAOH,EAAQ,IAAI,KAAKA,CAAe,MAAQ,KAErD,OAAOA,EAAQI,EAAyBD,CAAI,EAAI,EAAA,CAEtD,CAaO,SAASE,EAAeN,EAAuCC,EAAiD,CACrH,OAAQD,EAAA,CACN,IAAK,QACH,GAAIC,EAAO,CACT,MAAMM,EAAU,OAAO,QAAQN,CAAqB,EAAE,IAAI,CAAC,CAACO,EAAKP,CAAK,IAAM,CAACO,EAAK,IAAI,KAAKP,CAAK,CAAC,CAAC,EAElG,OAAO,OAAO,YAAYM,CAAO,CACnC,CAEA,MAAO,CAAA,EACT,IAAK,SACL,QACE,OAAON,EAAQ,IAAI,KAAKA,CAAe,MAAQ,IAAK,CAE1D"}
1
+ {"version":3,"file":"utils.js","sources":["../../../../../../../../lib/shared/ui/formElements/controlled/dayPickerControl/model/utils.ts"],"sourcesContent":["import type { DateRange } from 'react-day-picker'\nimport { formatDateToLocaleString } from '$/shared/ui'\n\ntype IsoDateRange = {\n from?: string\n to?: string\n}\n\n/**\n * Функция для получения инит состояния поля ввода\n * @param mode режим календаря (single | range)\n * @param value текущее состояние поля\n */\nexport function getInitialValue(mode: 'single', value?: string): string\nexport function getInitialValue(mode: 'range', value?: IsoDateRange): string\nexport function getInitialValue(mode: 'multiple', value?: IsoDateRange): string\nexport function getInitialValue(mode: 'single' | 'multiple' | 'range', value?: IsoDateRange | string) {\n switch (mode) {\n case 'range':\n const [from, to] = Object.values(value as IsoDateRange).map((date) => new Date(date))\n\n return [from ? formatDateToLocaleString(from) : undefined, to ? formatDateToLocaleString(to) : undefined].join('-')\n case 'single':\n default:\n const date = value ? new Date(value as string) : new Date()\n\n return value ? formatDateToLocaleString(date) : ''\n }\n}\n\n/**\n * Функция для получения объекта даты по текущему состоянию\n * @param mode режим календаря (single | range)\n * @param value текущее состояние поля\n *\n * @returns Date если mode 'single'\n * @returns DateRange если mode 'range'\n */\nexport function getCurrentDate(mode: 'single', value?: string): Date\nexport function getCurrentDate(mode: 'range', value?: IsoDateRange): DateRange\nexport function getCurrentDate(mode: 'multiple', value?: IsoDateRange): Date\nexport function getCurrentDate(mode: 'single' | 'multiple' | 'range', value?: string | IsoDateRange): Date | DateRange {\n switch (mode) {\n case 'range':\n if (value) {\n const entries = Object.entries(value as IsoDateRange).map(([key, value]) => [key, new Date(value)])\n\n return Object.fromEntries(entries)\n }\n\n return {} as DateRange\n case 'single':\n default:\n return value ? new Date(value as string) : new Date()\n }\n}\n"],"names":["getInitialValue","mode","value","from","to","date","formatDateToLocaleString","getCurrentDate","entries","key"],"mappings":"41CAgBO,SAASA,EAAgBC,EAAuCC,EAA+B,CACpG,OAAQD,EAAA,CACN,IAAK,QACH,KAAM,CAACE,EAAMC,CAAE,EAAI,OAAO,OAAOF,CAAqB,EAAE,IAAKG,GAAS,IAAI,KAAKA,CAAI,CAAC,EAEpF,MAAO,CAACF,EAAOG,EAAyBH,CAAI,EAAI,OAAWC,EAAKE,EAAyBF,CAAE,EAAI,MAAS,EAAE,KAAK,GAAG,EACpH,IAAK,SACL,QACE,MAAMC,EAAOH,EAAQ,IAAI,KAAKA,CAAe,MAAQ,KAErD,OAAOA,EAAQI,EAAyBD,CAAI,EAAI,EAAA,CAEtD,CAaO,SAASE,EAAeN,EAAuCC,EAAiD,CACrH,OAAQD,EAAA,CACN,IAAK,QACH,GAAIC,EAAO,CACT,MAAMM,EAAU,OAAO,QAAQN,CAAqB,EAAE,IAAI,CAAC,CAACO,EAAKP,CAAK,IAAM,CAACO,EAAK,IAAI,KAAKP,CAAK,CAAC,CAAC,EAElG,OAAO,OAAO,YAAYM,CAAO,CACnC,CAEA,MAAO,CAAA,EACT,IAAK,SACL,QACE,OAAON,EAAQ,IAAI,KAAKA,CAAe,MAAQ,IAAK,CAE1D"}
@@ -1,2 +1,2 @@
1
- import{jsxs as _,jsx as l}from"react/jsx-runtime";import{useRef as j,useState as c}from"react";import{RANGE_MASK as x,SINGLE_VALIDATION_REGEX as T}from"./model/constants.js";import{getCurrentDate as y,getInitialValue as G}from"./model/utils.js";import{useClickOutside as L}from"../../../../hooks/useClickOutside.js";import"@hookform/resolvers";import{cn as d}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import{Calendar as P}from"../../../calendar/Calendar.js";import{DATE_VISIBLE_PATTERN as a}from"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"react-dom";import"../../../modal/ui/IframeModalContent.js";import"../../../../../../node_modules/react-hot-toast/dist/index.js";import{Icon as $}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{MaskInput as q}from"../../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";import{parse as h}from"../../../../../../node_modules/date-fns/parse.js";import{isValid as w}from"../../../../../../node_modules/date-fns/isValid.js";import{formatDate as I}from"../../../../../../node_modules/date-fns/format.js";const Nt=({inputProps:C,classes:n,value:f,onChange:p,...R})=>{const u=j(null),{calendar:E,...O}=n||{},[S,m]=c(!1),V=()=>{m(t=>!t)},[D,s]=c(new Date),b=y("range",f),[N,g]=c(G("range",f));L(u,()=>m(!1));const A=t=>{const{value:r}=t.target;if(g(r),!r.length)return p({from:"",to:""});const e=r.split("-");if(e.some(o=>!T.test(o)))return;const i=[["from",h(e[0],a,new Date)],["to",h(e[1],a,new Date)]];if(i.every(([,o])=>w(o))){const o=Object.fromEntries(i.map(([k,v])=>[k,v.toISOString()]));p(o),s(i[Math.round(Math.random())][1])}},M=t=>{s(t.from||t.to||new Date);const r=Object.entries(t).reduce((e,[i,o])=>({...e,[i]:o?o.toISOString():""}),{});p(r),g(`${I(r.from||"",a)}-${I(r.to||"",a)}`),t.from&&t.to&&m(!1)};return _("div",{ref:u,className:d("relative w-full",n==null?void 0:n.container),children:[l(q,{mask:x,...C,classes:O,value:N,onChange:A,onFocus:()=>m(!0),attachmentProps:{icon:l($,{name:"general/calendar",className:"text-icon-blue-grey-600"}),onClickIcon:V}}),S&&l(P,{...R,required:!0,mode:"range",month:D,onMonthChange:s,selected:b,onSelect:M,className:d("absolute right-0 top-full",E)})]})};export{Nt as RangeDayPicker};
1
+ import{jsxs as _,jsx as l}from"react/jsx-runtime";import{useRef as j,useState as c}from"react";import{RANGE_MASK as x,SINGLE_VALIDATION_REGEX as T}from"./model/constants.js";import{getCurrentDate as y,getInitialValue as G}from"./model/utils.js";import{useClickOutside as L}from"../../../../hooks/useClickOutside.js";import{cn as d}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import{Calendar as P}from"../../../calendar/Calendar.js";import{DATE_VISIBLE_PATTERN as a}from"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"react-dom";import"../../../modal/ui/IframeModalContent.js";import"../../../../../../node_modules/react-hot-toast/dist/index.js";import{Icon as $}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{MaskInput as q}from"../../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";import{parse as h}from"../../../../../../node_modules/date-fns/parse.js";import{isValid as w}from"../../../../../../node_modules/date-fns/isValid.js";import{formatDate as I}from"../../../../../../node_modules/date-fns/format.js";const bt=({inputProps:C,classes:n,value:f,onChange:p,...R})=>{const u=j(null),{calendar:E,...O}=n||{},[S,m]=c(!1),V=()=>{m(t=>!t)},[D,s]=c(new Date),b=y("range",f),[N,g]=c(G("range",f));L(u,()=>m(!1));const A=t=>{const{value:r}=t.target;if(g(r),!r.length)return p({from:"",to:""});const e=r.split("-");if(e.some(o=>!T.test(o)))return;const i=[["from",h(e[0],a,new Date)],["to",h(e[1],a,new Date)]];if(i.every(([,o])=>w(o))){const o=Object.fromEntries(i.map(([k,v])=>[k,v.toISOString()]));p(o),s(i[Math.round(Math.random())][1])}},M=t=>{s(t.from||t.to||new Date);const r=Object.entries(t).reduce((e,[i,o])=>({...e,[i]:o?o.toISOString():""}),{});p(r),g(`${I(r.from||"",a)}-${I(r.to||"",a)}`),t.from&&t.to&&m(!1)};return _("div",{ref:u,className:d("relative w-full",n==null?void 0:n.container),children:[l(q,{mask:x,...C,classes:O,value:N,onChange:A,onFocus:()=>m(!0),attachmentProps:{icon:l($,{name:"general/calendar",className:"text-icon-blue-grey-600"}),onClickIcon:V}}),S&&l(P,{...R,required:!0,mode:"range",month:D,onMonthChange:s,selected:b,onSelect:M,className:d("absolute right-0 top-full",E)})]})};export{bt as RangeDayPicker};
2
2
  //# sourceMappingURL=range.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"range.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/dayPickerControl/range.tsx"],"sourcesContent":["'use client'\n\nimport { useRef, useState } from 'react'\nimport { type DateRange } from 'react-day-picker'\nimport { format, isValid, parse } from 'date-fns'\nimport { getCurrentDate, getInitialValue, RANGE_MASK, SINGLE_VALIDATION_REGEX } from './model'\nimport { useClickOutside } from '$/shared/hooks'\nimport { Calendar, DATE_VISIBLE_PATTERN, Icon, MaskInput, type MaskInputProps } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\ntype CalendarProps = React.ComponentPropsWithoutRef<typeof Calendar>\n\ntype RangeDayPickerClasses = MaskInputProps['classes'] & {\n calendar?: string\n}\n\ntype IsoDateRange = {\n from?: string\n to?: string\n}\n\ntype RangeDayPickerProps = Omit<CalendarProps, 'mode'> & {\n /**\n * Свойства Input компонента\n */\n inputProps: Omit<MaskInputProps, 'mask'>\n /**\n * Стили внутренних компонентов\n */\n classes?: RangeDayPickerClasses\n /**\n * Управляемое значение\n */\n value: IsoDateRange\n /**\n * Функция для управления значением\n */\n onChange: (value: IsoDateRange) => void\n}\n\nexport const RangeDayPicker = ({ inputProps, classes, value, onChange, ...props }: RangeDayPickerProps) => {\n const containerRef = useRef<HTMLDivElement>(null)\n const { calendar, ...restClasses } = classes || {}\n\n const [calendarOpen, setCalendarOpen] = useState<boolean>(false)\n const onCalendarOpenChange = () => {\n setCalendarOpen((prev) => !prev)\n }\n\n const [month, setMonth] = useState<Date>(new Date())\n const date = getCurrentDate('range', value)\n\n const [visibleValue, setVisibleValue] = useState<string>(getInitialValue('range', value))\n\n useClickOutside(containerRef, () => setCalendarOpen(false))\n\n const onVisibleValueChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const { value } = event.target\n\n setVisibleValue(value)\n\n if (!value.length) {\n return onChange({\n from: '',\n to: ''\n })\n }\n\n const isoDateRange = value.split('-')\n\n if (isoDateRange.some((date) => !SINGLE_VALIDATION_REGEX.test(date))) {\n return\n }\n\n const dateRangeEntries = [\n ['from', parse(isoDateRange[0], DATE_VISIBLE_PATTERN, new Date())],\n ['to', parse(isoDateRange[1], DATE_VISIBLE_PATTERN, new Date())]\n ] as [string, Date][]\n\n if (dateRangeEntries.every(([, date]) => isValid(date))) {\n const dateRange = Object.fromEntries(dateRangeEntries.map(([key, value]) => [key, value.toISOString()]))\n\n onChange(dateRange)\n setMonth(dateRangeEntries[Math.round(Math.random())][1])\n }\n }\n\n const onDateChange = (newDate: DateRange) => {\n setMonth(newDate.from || newDate.to || new Date())\n\n const isoDateRange = Object.entries(newDate).reduce(\n (acc, [key, value]) => ({\n ...acc,\n [key]: value ? value.toISOString() : ''\n }),\n {} as IsoDateRange\n )\n\n onChange(isoDateRange)\n setVisibleValue(\n `${format(isoDateRange.from || '', DATE_VISIBLE_PATTERN)}-${format(isoDateRange.to || '', DATE_VISIBLE_PATTERN)}`\n )\n\n if (newDate.from && newDate.to) {\n setCalendarOpen(false)\n }\n }\n\n return (\n <div ref={containerRef} className={cn('relative w-full', classes?.container)}>\n <MaskInput\n mask={RANGE_MASK}\n {...inputProps}\n classes={restClasses}\n value={visibleValue}\n onChange={onVisibleValueChange}\n onFocus={() => setCalendarOpen(true)}\n attachmentProps={{\n icon: <Icon name='general/calendar' className='text-icon-blue-grey-600' />,\n onClickIcon: onCalendarOpenChange\n }}\n />\n {calendarOpen && (\n <Calendar\n {...props}\n required\n mode='range'\n month={month}\n onMonthChange={setMonth}\n selected={date}\n onSelect={onDateChange}\n className={cn('absolute right-0 top-full', calendar)}\n />\n )}\n </div>\n )\n}\n"],"names":["RangeDayPicker","inputProps","classes","value","onChange","props","containerRef","useRef","calendar","restClasses","calendarOpen","setCalendarOpen","useState","onCalendarOpenChange","prev","month","setMonth","date","getCurrentDate","visibleValue","setVisibleValue","getInitialValue","useClickOutside","onVisibleValueChange","event","isoDateRange","SINGLE_VALIDATION_REGEX","dateRangeEntries","parse","DATE_VISIBLE_PATTERN","isValid","dateRange","key","onDateChange","newDate","acc","format","jsxs","cn","jsx","MaskInput","RANGE_MASK","Icon","Calendar"],"mappings":"g6DAwCO,MAAMA,GAAiB,CAAC,CAAE,WAAAC,EAAY,QAAAC,EAAS,MAAAC,EAAO,SAAAC,EAAU,GAAGC,KAAiC,CACzG,MAAMC,EAAeC,EAAuB,IAAI,EAC1C,CAAE,SAAAC,EAAU,GAAGC,CAAA,EAAgBP,GAAW,CAAA,EAE1C,CAACQ,EAAcC,CAAe,EAAIC,EAAkB,EAAK,EACzDC,EAAuB,IAAM,CACjCF,EAAiBG,GAAS,CAACA,CAAI,CACjC,EAEM,CAACC,EAAOC,CAAQ,EAAIJ,EAAe,IAAI,IAAM,EAC7CK,EAAOC,EAAe,QAASf,CAAK,EAEpC,CAACgB,EAAcC,CAAe,EAAIR,EAAiBS,EAAgB,QAASlB,CAAK,CAAC,EAExFmB,EAAgBhB,EAAc,IAAMK,EAAgB,EAAK,CAAC,EAE1D,MAAMY,EAAwBC,GAA+C,CAC3E,KAAM,CAAE,MAAArB,CAAAA,EAAUqB,EAAM,OAIxB,GAFAJ,EAAgBjB,CAAK,EAEjB,CAACA,EAAM,OACT,OAAOC,EAAS,CACd,KAAM,GACN,GAAI,EAAA,CACL,EAGH,MAAMqB,EAAetB,EAAM,MAAM,GAAG,EAEpC,GAAIsB,EAAa,KAAMR,GAAS,CAACS,EAAwB,KAAKT,CAAI,CAAC,EACjE,OAGF,MAAMU,EAAmB,CACvB,CAAC,OAAQC,EAAMH,EAAa,CAAC,EAAGI,EAAsB,IAAI,IAAM,CAAC,EACjE,CAAC,KAAMD,EAAMH,EAAa,CAAC,EAAGI,EAAsB,IAAI,IAAM,CAAC,CAAA,EAGjE,GAAIF,EAAiB,MAAM,CAAC,CAAA,CAAGV,CAAI,IAAMa,EAAQb,CAAI,CAAC,EAAG,CACvD,MAAMc,EAAY,OAAO,YAAYJ,EAAiB,IAAI,CAAC,CAACK,EAAK7B,CAAK,IAAM,CAAC6B,EAAK7B,EAAM,YAAA,CAAa,CAAC,CAAC,EAEvGC,EAAS2B,CAAS,EAClBf,EAASW,EAAiB,KAAK,MAAM,KAAK,QAAQ,CAAC,EAAE,CAAC,CAAC,CACzD,CACF,EAEMM,EAAgBC,GAAuB,CAC3ClB,EAASkB,EAAQ,MAAQA,EAAQ,IAAM,IAAI,IAAM,EAEjD,MAAMT,EAAe,OAAO,QAAQS,CAAO,EAAE,OAC3C,CAACC,EAAK,CAACH,EAAK7B,CAAK,KAAO,CACtB,GAAGgC,EACH,CAACH,CAAG,EAAG7B,EAAQA,EAAM,cAAgB,EAAA,GAEvC,CAAA,CAAC,EAGHC,EAASqB,CAAY,EACrBL,EACE,GAAGgB,EAAOX,EAAa,MAAQ,GAAII,CAAoB,CAAC,IAAIO,EAAOX,EAAa,IAAM,GAAII,CAAoB,CAAC,EAAA,EAG7GK,EAAQ,MAAQA,EAAQ,IAC1BvB,EAAgB,EAAK,CAEzB,EAEA,OACE0B,EAAC,OAAI,IAAK/B,EAAc,UAAWgC,EAAG,kBAAmBpC,GAAA,YAAAA,EAAS,SAAS,EACzE,SAAA,CAAAqC,EAACC,EAAA,CACC,KAAMC,EACL,GAAGxC,EACJ,QAASQ,EACT,MAAOU,EACP,SAAUI,EACV,QAAS,IAAMZ,EAAgB,EAAI,EACnC,gBAAiB,CACf,KAAM4B,EAACG,EAAA,CAAK,KAAK,mBAAmB,UAAU,0BAA0B,EACxE,YAAa7B,CAAA,CACf,CAAA,EAEDH,GACC6B,EAACI,EAAA,CACE,GAAGtC,EACJ,SAAQ,GACR,KAAK,QACL,MAAAU,EACA,cAAeC,EACf,SAAUC,EACV,SAAUgB,EACV,UAAWK,EAAG,4BAA6B9B,CAAQ,CAAA,CAAA,CACrD,EAEJ,CAEJ"}
1
+ {"version":3,"file":"range.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/dayPickerControl/range.tsx"],"sourcesContent":["'use client'\n\nimport { useRef, useState } from 'react'\nimport { type DateRange } from 'react-day-picker'\nimport { format, isValid, parse } from 'date-fns'\nimport { getCurrentDate, getInitialValue, RANGE_MASK, SINGLE_VALIDATION_REGEX } from './model'\nimport { useClickOutside } from '$/shared/hooks'\nimport { Calendar, DATE_VISIBLE_PATTERN, Icon, MaskInput, type MaskInputProps } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\ntype CalendarProps = React.ComponentPropsWithoutRef<typeof Calendar>\n\ntype RangeDayPickerClasses = MaskInputProps['classes'] & {\n calendar?: string\n}\n\ntype IsoDateRange = {\n from?: string\n to?: string\n}\n\ntype RangeDayPickerProps = Omit<CalendarProps, 'mode'> & {\n /**\n * Свойства Input компонента\n */\n inputProps: Omit<MaskInputProps, 'mask'>\n /**\n * Стили внутренних компонентов\n */\n classes?: RangeDayPickerClasses\n /**\n * Управляемое значение\n */\n value: IsoDateRange\n /**\n * Функция для управления значением\n */\n onChange: (value: IsoDateRange) => void\n}\n\nexport const RangeDayPicker = ({ inputProps, classes, value, onChange, ...props }: RangeDayPickerProps) => {\n const containerRef = useRef<HTMLDivElement>(null)\n const { calendar, ...restClasses } = classes || {}\n\n const [calendarOpen, setCalendarOpen] = useState<boolean>(false)\n const onCalendarOpenChange = () => {\n setCalendarOpen((prev) => !prev)\n }\n\n const [month, setMonth] = useState<Date>(new Date())\n const date = getCurrentDate('range', value)\n\n const [visibleValue, setVisibleValue] = useState<string>(getInitialValue('range', value))\n\n useClickOutside(containerRef, () => setCalendarOpen(false))\n\n const onVisibleValueChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const { value } = event.target\n\n setVisibleValue(value)\n\n if (!value.length) {\n return onChange({\n from: '',\n to: ''\n })\n }\n\n const isoDateRange = value.split('-')\n\n if (isoDateRange.some((date) => !SINGLE_VALIDATION_REGEX.test(date))) {\n return\n }\n\n const dateRangeEntries = [\n ['from', parse(isoDateRange[0], DATE_VISIBLE_PATTERN, new Date())],\n ['to', parse(isoDateRange[1], DATE_VISIBLE_PATTERN, new Date())]\n ] as [string, Date][]\n\n if (dateRangeEntries.every(([, date]) => isValid(date))) {\n const dateRange = Object.fromEntries(dateRangeEntries.map(([key, value]) => [key, value.toISOString()]))\n\n onChange(dateRange)\n setMonth(dateRangeEntries[Math.round(Math.random())][1])\n }\n }\n\n const onDateChange = (newDate: DateRange) => {\n setMonth(newDate.from || newDate.to || new Date())\n\n const isoDateRange = Object.entries(newDate).reduce(\n (acc, [key, value]) => ({\n ...acc,\n [key]: value ? value.toISOString() : ''\n }),\n {} as IsoDateRange\n )\n\n onChange(isoDateRange)\n setVisibleValue(\n `${format(isoDateRange.from || '', DATE_VISIBLE_PATTERN)}-${format(isoDateRange.to || '', DATE_VISIBLE_PATTERN)}`\n )\n\n if (newDate.from && newDate.to) {\n setCalendarOpen(false)\n }\n }\n\n return (\n <div ref={containerRef} className={cn('relative w-full', classes?.container)}>\n <MaskInput\n mask={RANGE_MASK}\n {...inputProps}\n classes={restClasses}\n value={visibleValue}\n onChange={onVisibleValueChange}\n onFocus={() => setCalendarOpen(true)}\n attachmentProps={{\n icon: <Icon name='general/calendar' className='text-icon-blue-grey-600' />,\n onClickIcon: onCalendarOpenChange\n }}\n />\n {calendarOpen && (\n <Calendar\n {...props}\n required\n mode='range'\n month={month}\n onMonthChange={setMonth}\n selected={date}\n onSelect={onDateChange}\n className={cn('absolute right-0 top-full', calendar)}\n />\n )}\n </div>\n )\n}\n"],"names":["RangeDayPicker","inputProps","classes","value","onChange","props","containerRef","useRef","calendar","restClasses","calendarOpen","setCalendarOpen","useState","onCalendarOpenChange","prev","month","setMonth","date","getCurrentDate","visibleValue","setVisibleValue","getInitialValue","useClickOutside","onVisibleValueChange","event","isoDateRange","SINGLE_VALIDATION_REGEX","dateRangeEntries","parse","DATE_VISIBLE_PATTERN","isValid","dateRange","key","onDateChange","newDate","acc","format","jsxs","cn","jsx","MaskInput","RANGE_MASK","Icon","Calendar"],"mappings":"o4DAwCO,MAAMA,GAAiB,CAAC,CAAE,WAAAC,EAAY,QAAAC,EAAS,MAAAC,EAAO,SAAAC,EAAU,GAAGC,KAAiC,CACzG,MAAMC,EAAeC,EAAuB,IAAI,EAC1C,CAAE,SAAAC,EAAU,GAAGC,CAAA,EAAgBP,GAAW,CAAA,EAE1C,CAACQ,EAAcC,CAAe,EAAIC,EAAkB,EAAK,EACzDC,EAAuB,IAAM,CACjCF,EAAiBG,GAAS,CAACA,CAAI,CACjC,EAEM,CAACC,EAAOC,CAAQ,EAAIJ,EAAe,IAAI,IAAM,EAC7CK,EAAOC,EAAe,QAASf,CAAK,EAEpC,CAACgB,EAAcC,CAAe,EAAIR,EAAiBS,EAAgB,QAASlB,CAAK,CAAC,EAExFmB,EAAgBhB,EAAc,IAAMK,EAAgB,EAAK,CAAC,EAE1D,MAAMY,EAAwBC,GAA+C,CAC3E,KAAM,CAAE,MAAArB,CAAAA,EAAUqB,EAAM,OAIxB,GAFAJ,EAAgBjB,CAAK,EAEjB,CAACA,EAAM,OACT,OAAOC,EAAS,CACd,KAAM,GACN,GAAI,EAAA,CACL,EAGH,MAAMqB,EAAetB,EAAM,MAAM,GAAG,EAEpC,GAAIsB,EAAa,KAAMR,GAAS,CAACS,EAAwB,KAAKT,CAAI,CAAC,EACjE,OAGF,MAAMU,EAAmB,CACvB,CAAC,OAAQC,EAAMH,EAAa,CAAC,EAAGI,EAAsB,IAAI,IAAM,CAAC,EACjE,CAAC,KAAMD,EAAMH,EAAa,CAAC,EAAGI,EAAsB,IAAI,IAAM,CAAC,CAAA,EAGjE,GAAIF,EAAiB,MAAM,CAAC,CAAA,CAAGV,CAAI,IAAMa,EAAQb,CAAI,CAAC,EAAG,CACvD,MAAMc,EAAY,OAAO,YAAYJ,EAAiB,IAAI,CAAC,CAACK,EAAK7B,CAAK,IAAM,CAAC6B,EAAK7B,EAAM,YAAA,CAAa,CAAC,CAAC,EAEvGC,EAAS2B,CAAS,EAClBf,EAASW,EAAiB,KAAK,MAAM,KAAK,QAAQ,CAAC,EAAE,CAAC,CAAC,CACzD,CACF,EAEMM,EAAgBC,GAAuB,CAC3ClB,EAASkB,EAAQ,MAAQA,EAAQ,IAAM,IAAI,IAAM,EAEjD,MAAMT,EAAe,OAAO,QAAQS,CAAO,EAAE,OAC3C,CAACC,EAAK,CAACH,EAAK7B,CAAK,KAAO,CACtB,GAAGgC,EACH,CAACH,CAAG,EAAG7B,EAAQA,EAAM,cAAgB,EAAA,GAEvC,CAAA,CAAC,EAGHC,EAASqB,CAAY,EACrBL,EACE,GAAGgB,EAAOX,EAAa,MAAQ,GAAII,CAAoB,CAAC,IAAIO,EAAOX,EAAa,IAAM,GAAII,CAAoB,CAAC,EAAA,EAG7GK,EAAQ,MAAQA,EAAQ,IAC1BvB,EAAgB,EAAK,CAEzB,EAEA,OACE0B,EAAC,OAAI,IAAK/B,EAAc,UAAWgC,EAAG,kBAAmBpC,GAAA,YAAAA,EAAS,SAAS,EACzE,SAAA,CAAAqC,EAACC,EAAA,CACC,KAAMC,EACL,GAAGxC,EACJ,QAASQ,EACT,MAAOU,EACP,SAAUI,EACV,QAAS,IAAMZ,EAAgB,EAAI,EACnC,gBAAiB,CACf,KAAM4B,EAACG,EAAA,CAAK,KAAK,mBAAmB,UAAU,0BAA0B,EACxE,YAAa7B,CAAA,CACf,CAAA,EAEDH,GACC6B,EAACI,EAAA,CACE,GAAGtC,EACJ,SAAQ,GACR,KAAK,QACL,MAAAU,EACA,cAAeC,EACf,SAAUC,EACV,SAAUgB,EACV,UAAWK,EAAG,4BAA6B9B,CAAQ,CAAA,CAAA,CACrD,EAEJ,CAEJ"}
@@ -1,2 +1,2 @@
1
- import{jsxs as G,jsx as f}from"react/jsx-runtime";import{useRef as L,useState as E,useEffect as P}from"react";import{createPortal as j}from"react-dom";import{useFloating as K}from"../../../../../../node_modules/@floating-ui/react/dist/floating-ui.react.js";import{SINGLE_MASK as q,SINGLE_VALIDATION_REGEX as B}from"./model/constants.js";import{getCurrentDate as H,getInitialValue as I}from"./model/utils.js";import{useClickOutside as U}from"../../../../hooks/useClickOutside.js";import"@hookform/resolvers";import{cn as y}from"../../../../utils/cn.js";import{mergeRefs as X}from"../../../../utils/mergeRefs.js";import{TypeGuards as b}from"../../../../utils/typeGuards.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import{Calendar as v}from"../../../calendar/Calendar.js";import{DATE_VISIBLE_PATTERN as D}from"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";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{MaskInput as J}from"../../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";import{autoUpdate as Q}from"../../../../../../node_modules/@floating-ui/dom/dist/floating-ui.dom.js";import{flip as W,offset as Y}from"../../../../../../node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js";import{parse as Z}from"../../../../../../node_modules/date-fns/parse.js";import{isValid as $}from"../../../../../../node_modules/date-fns/isValid.js";import{formatDate as h}from"../../../../../../node_modules/date-fns/format.js";const Ut=({inputProps:s,classes:i,value:e,onChange:n,externalHandlers:O,month:V,onMonthChange:r,...x})=>{const{onChange:m,onFocus:c,...A}=O||{},d=L(null),{refs:u,floatingStyles:N}=K({placement:"bottom-end",middleware:[W({boundary:"clippingAncestors",crossAxis:!1}),Y(0)],whileElementsMounted:Q}),{calendar:k,...C}=i||{},[R,a]=E(!1),g=()=>{a(t=>!t)},w=H("single",e),[F,p]=E(I("single",e));P(()=>{e&&!b.isStringEmpty(e)&&(p(I("single",e)),r&&r(new Date(e)))},[e]),U(d,()=>a(!1));const T=t=>{const{value:o}=t.target;if(p(o),b.isStringEmpty(o))return n("");if(!B.test(o))return;const l=Z(o,D,new Date);if($(l)){const S=l.toISOString();n(S),r&&r(l),m&&m(S)}},_=t=>{r&&r(t);const o=t.toISOString();n(o),p(h(t,D)),a(!1),m&&m(o)};return G("div",{ref:u.setReference,className:y("relative w-full",i==null?void 0:i.container),children:[f(J,{mask:q,...s,...A,classes:C,value:F,onChange:T,autoComplete:"off",onFocus:t=>{a(!0),c&&c(t)},onKeyDown:t=>{t.key==="Enter"&&g()},attachmentProps:{disabled:s.disabled,icon:f(z,{name:"general/calendar",className:"text-icon-blue-grey-600"}),onClickIcon:g,...s.attachmentProps}}),R&&j(f(v,{ref:X(d,u.setFloating),...x,required:!0,mode:"single",style:{...N,width:"max-content"},month:V,onMonthChange:r,selected:w,onSelect:_,className:y(k),"data-test-id":"calendar"}),document.body)]})};export{Ut as SingleDayPicker};
1
+ import{jsxs as G,jsx as f}from"react/jsx-runtime";import{useRef as L,useState as E,useEffect as P}from"react";import{createPortal as j}from"react-dom";import{useFloating as K}from"../../../../../../node_modules/@floating-ui/react/dist/floating-ui.react.js";import{SINGLE_MASK as q,SINGLE_VALIDATION_REGEX as B}from"./model/constants.js";import{getCurrentDate as H,getInitialValue as I}from"./model/utils.js";import{useClickOutside as U}from"../../../../hooks/useClickOutside.js";import{cn as y}from"../../../../utils/cn.js";import{mergeRefs as X}from"../../../../utils/mergeRefs.js";import{TypeGuards as b}from"../../../../utils/typeGuards.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import{Calendar as v}from"../../../calendar/Calendar.js";import{DATE_VISIBLE_PATTERN as D}from"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";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{MaskInput as J}from"../../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";import{autoUpdate as Q}from"../../../../../../node_modules/@floating-ui/dom/dist/floating-ui.dom.js";import{flip as W,offset as Y}from"../../../../../../node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js";import{parse as Z}from"../../../../../../node_modules/date-fns/parse.js";import{isValid as $}from"../../../../../../node_modules/date-fns/isValid.js";import{formatDate as h}from"../../../../../../node_modules/date-fns/format.js";const Ht=({inputProps:s,classes:i,value:e,onChange:n,externalHandlers:O,month:V,onMonthChange:r,...x})=>{const{onChange:m,onFocus:c,...A}=O||{},d=L(null),{refs:u,floatingStyles:N}=K({placement:"bottom-end",middleware:[W({boundary:"clippingAncestors",crossAxis:!1}),Y(0)],whileElementsMounted:Q}),{calendar:k,...C}=i||{},[R,a]=E(!1),g=()=>{a(t=>!t)},w=H("single",e),[F,p]=E(I("single",e));P(()=>{e&&!b.isStringEmpty(e)&&(p(I("single",e)),r&&r(new Date(e)))},[e]),U(d,()=>a(!1));const T=t=>{const{value:o}=t.target;if(p(o),b.isStringEmpty(o))return n("");if(!B.test(o))return;const l=Z(o,D,new Date);if($(l)){const S=l.toISOString();n(S),r&&r(l),m&&m(S)}},_=t=>{r&&r(t);const o=t.toISOString();n(o),p(h(t,D)),a(!1),m&&m(o)};return G("div",{ref:u.setReference,className:y("relative w-full",i==null?void 0:i.container),children:[f(J,{mask:q,...s,...A,classes:C,value:F,onChange:T,autoComplete:"off",onFocus:t=>{a(!0),c&&c(t)},onKeyDown:t=>{t.key==="Enter"&&g()},attachmentProps:{disabled:s.disabled,icon:f(z,{name:"general/calendar",className:"text-icon-blue-grey-600"}),onClickIcon:g,...s.attachmentProps}}),R&&j(f(v,{ref:X(d,u.setFloating),...x,required:!0,mode:"single",style:{...N,width:"max-content"},month:V,onMonthChange:r,selected:w,onSelect:_,className:y(k),"data-test-id":"calendar"}),document.body)]})};export{Ht as SingleDayPicker};
2
2
  //# sourceMappingURL=single.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"single.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/dayPickerControl/single.tsx"],"sourcesContent":["'use client'\n\nimport { useEffect, useRef, useState } from 'react'\nimport { createPortal } from 'react-dom'\nimport { autoUpdate, flip, offset, useFloating } from '@floating-ui/react'\nimport { format, isValid, parse } from 'date-fns'\nimport { type ExternalHandlers } from './dayPickerControl'\nimport { getCurrentDate, getInitialValue, SINGLE_MASK, SINGLE_VALIDATION_REGEX } from './model'\nimport { useClickOutside } from '$/shared/hooks'\nimport { Calendar, DATE_VISIBLE_PATTERN, Icon, MaskInput, type MaskInputProps } from '$/shared/ui'\nimport { cn, mergeRefs, TypeGuards } from '$/shared/utils'\n\ntype CalendarProps = React.ComponentPropsWithoutRef<typeof Calendar>\n\ntype SingleDayPickerClasses = MaskInputProps['classes'] & {\n calendar?: string\n}\n\ntype SingleDayPickerProps = Omit<CalendarProps, 'mode'> & {\n /**\n * Свойства Input компонента\n */\n inputProps: Omit<MaskInputProps, 'mask'>\n /**\n * Стили внутренних компонентов\n */\n classes?: SingleDayPickerClasses\n /**\n * Управляемое значение\n */\n value: string\n /**\n * Функция для управления значением\n */\n onChange: (value: string) => void\n /**\n * Дополнительные хендлеры\n */\n externalHandlers?: ExternalHandlers\n}\n\nexport const SingleDayPicker = ({\n inputProps,\n classes,\n value,\n onChange,\n externalHandlers,\n month,\n onMonthChange,\n ...props\n}: SingleDayPickerProps) => {\n const { onChange: externalOnChange, onFocus: externalOnFocus, ...restHandlers } = externalHandlers || {}\n\n const calendarRef = useRef<HTMLDivElement>(null)\n\n const { refs, floatingStyles } = useFloating({\n placement: 'bottom-end',\n middleware: [\n flip({\n boundary: 'clippingAncestors',\n crossAxis: false\n }),\n offset(0)\n ],\n whileElementsMounted: autoUpdate\n })\n\n const { calendar, ...restClasses } = classes || {}\n\n const [calendarOpen, setCalendarOpen] = useState<boolean>(false)\n\n const onCalendarOpenChange = () => {\n setCalendarOpen((prev) => !prev)\n }\n\n const date = getCurrentDate('single', value)\n\n const [visibleValue, setVisibleValue] = useState<string>(getInitialValue('single', value))\n\n useEffect(() => {\n if (value && !TypeGuards.isStringEmpty(value)) {\n setVisibleValue(getInitialValue('single', value))\n if (onMonthChange) onMonthChange(new Date(value))\n }\n }, [value])\n\n useClickOutside(calendarRef, () => setCalendarOpen(false))\n\n const onVisibleValueChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const { value } = event.target\n\n setVisibleValue(value)\n\n if (TypeGuards.isStringEmpty(value)) {\n return onChange('')\n }\n\n if (!SINGLE_VALIDATION_REGEX.test(value)) {\n return\n }\n\n const date = parse(value, DATE_VISIBLE_PATTERN, new Date())\n\n if (isValid(date)) {\n const isoDate = date.toISOString()\n\n onChange(isoDate)\n if (onMonthChange) onMonthChange(date)\n\n if (externalOnChange) externalOnChange(isoDate)\n }\n }\n\n const onDateChange = (newDate: Date) => {\n if (onMonthChange) onMonthChange(newDate)\n\n const isoDate = newDate.toISOString()\n\n onChange(isoDate)\n setVisibleValue(format(newDate, DATE_VISIBLE_PATTERN))\n setCalendarOpen(false)\n\n if (externalOnChange) externalOnChange(isoDate)\n }\n\n return (\n <div ref={refs.setReference} className={cn('relative w-full', classes?.container)}>\n <MaskInput\n mask={SINGLE_MASK}\n {...inputProps}\n {...restHandlers}\n classes={restClasses}\n value={visibleValue}\n onChange={onVisibleValueChange}\n autoComplete='off'\n onFocus={(event) => {\n setCalendarOpen(true)\n if (externalOnFocus) externalOnFocus(event)\n }}\n onKeyDown={(event) => {\n if (event.key === 'Enter') {\n onCalendarOpenChange()\n }\n }}\n attachmentProps={{\n disabled: inputProps.disabled,\n icon: <Icon name='general/calendar' className='text-icon-blue-grey-600' />,\n onClickIcon: onCalendarOpenChange,\n ...inputProps.attachmentProps\n }}\n />\n {calendarOpen &&\n createPortal(\n <Calendar\n // @ts-expect-error asdf\n ref={mergeRefs(calendarRef, refs.setFloating)}\n {...props}\n required\n mode='single'\n style={{\n ...floatingStyles,\n width: 'max-content'\n }}\n month={month}\n onMonthChange={onMonthChange}\n selected={date}\n onSelect={onDateChange}\n className={cn(calendar)}\n data-test-id='calendar'\n />,\n document.body\n )}\n </div>\n )\n}\n"],"names":["SingleDayPicker","inputProps","classes","value","onChange","externalHandlers","month","onMonthChange","props","externalOnChange","externalOnFocus","restHandlers","calendarRef","useRef","refs","floatingStyles","useFloating","flip","offset","autoUpdate","calendar","restClasses","calendarOpen","setCalendarOpen","useState","onCalendarOpenChange","prev","date","getCurrentDate","visibleValue","setVisibleValue","getInitialValue","useEffect","TypeGuards","useClickOutside","onVisibleValueChange","event","SINGLE_VALIDATION_REGEX","parse","DATE_VISIBLE_PATTERN","isValid","isoDate","onDateChange","newDate","format","jsxs","cn","jsx","MaskInput","SINGLE_MASK","Icon","createPortal","Calendar","mergeRefs"],"mappings":"q4EAyCO,MAAMA,GAAkB,CAAC,CAC9B,WAAAC,EACA,QAAAC,EACA,MAAAC,EACA,SAAAC,EACA,iBAAAC,EACA,MAAAC,EACA,cAAAC,EACA,GAAGC,CACL,IAA4B,CAC1B,KAAM,CAAE,SAAUC,EAAkB,QAASC,EAAiB,GAAGC,CAAA,EAAiBN,GAAoB,CAAA,EAEhGO,EAAcC,EAAuB,IAAI,EAEzC,CAAE,KAAAC,EAAM,eAAAC,CAAA,EAAmBC,EAAY,CAC3C,UAAW,aACX,WAAY,CACVC,EAAK,CACH,SAAU,oBACV,UAAW,EAAA,CACZ,EACDC,EAAO,CAAC,CAAA,EAEV,qBAAsBC,CAAA,CACvB,EAEK,CAAE,SAAAC,EAAU,GAAGC,CAAA,EAAgBnB,GAAW,CAAA,EAE1C,CAACoB,EAAcC,CAAe,EAAIC,EAAkB,EAAK,EAEzDC,EAAuB,IAAM,CACjCF,EAAiBG,GAAS,CAACA,CAAI,CACjC,EAEMC,EAAOC,EAAe,SAAUzB,CAAK,EAErC,CAAC0B,EAAcC,CAAe,EAAIN,EAAiBO,EAAgB,SAAU5B,CAAK,CAAC,EAEzF6B,EAAU,IAAM,CACV7B,GAAS,CAAC8B,EAAW,cAAc9B,CAAK,IAC1C2B,EAAgBC,EAAgB,SAAU5B,CAAK,CAAC,EAC5CI,GAAeA,EAAc,IAAI,KAAKJ,CAAK,CAAC,EAEpD,EAAG,CAACA,CAAK,CAAC,EAEV+B,EAAgBtB,EAAa,IAAMW,EAAgB,EAAK,CAAC,EAEzD,MAAMY,EAAwBC,GAA+C,CAC3E,KAAM,CAAE,MAAAjC,CAAAA,EAAUiC,EAAM,OAIxB,GAFAN,EAAgB3B,CAAK,EAEjB8B,EAAW,cAAc9B,CAAK,EAChC,OAAOC,EAAS,EAAE,EAGpB,GAAI,CAACiC,EAAwB,KAAKlC,CAAK,EACrC,OAGF,MAAMwB,EAAOW,EAAMnC,EAAOoC,EAAsB,IAAI,IAAM,EAE1D,GAAIC,EAAQb,CAAI,EAAG,CACjB,MAAMc,EAAUd,EAAK,YAAA,EAErBvB,EAASqC,CAAO,EACZlC,KAA6BoB,CAAI,EAEjClB,KAAmCgC,CAAO,CAChD,CACF,EAEMC,EAAgBC,GAAkB,CAClCpC,KAA6BoC,CAAO,EAExC,MAAMF,EAAUE,EAAQ,YAAA,EAExBvC,EAASqC,CAAO,EAChBX,EAAgBc,EAAOD,EAASJ,CAAoB,CAAC,EACrDhB,EAAgB,EAAK,EAEjBd,KAAmCgC,CAAO,CAChD,EAEA,OACEI,EAAC,MAAA,CAAI,IAAK/B,EAAK,aAAc,UAAWgC,EAAG,kBAAmB5C,GAAA,YAAAA,EAAS,SAAS,EAC9E,SAAA,CAAA6C,EAACC,EAAA,CACC,KAAMC,EACL,GAAGhD,EACH,GAAGU,EACJ,QAASU,EACT,MAAOQ,EACP,SAAUM,EACV,aAAa,MACb,QAAUC,GAAU,CAClBb,EAAgB,EAAI,EAChBb,KAAiC0B,CAAK,CAC5C,EACA,UAAYA,GAAU,CAChBA,EAAM,MAAQ,SAChBX,EAAA,CAEJ,EACA,gBAAiB,CACf,SAAUxB,EAAW,SACrB,KAAM8C,EAACG,EAAA,CAAK,KAAK,mBAAmB,UAAU,0BAA0B,EACxE,YAAazB,EACb,GAAGxB,EAAW,eAAA,CAChB,CAAA,EAEDqB,GACC6B,EACEJ,EAACK,EAAA,CAEC,IAAKC,EAAUzC,EAAaE,EAAK,WAAW,EAC3C,GAAGN,EACJ,SAAQ,GACR,KAAK,SACL,MAAO,CACL,GAAGO,EACH,MAAO,aAAA,EAET,MAAAT,EACA,cAAAC,EACA,SAAUoB,EACV,SAAUe,EACV,UAAWI,EAAG1B,CAAQ,EACtB,eAAa,UAAA,CAAA,EAEf,SAAS,IAAA,CACX,EACJ,CAEJ"}
1
+ {"version":3,"file":"single.js","sources":["../../../../../../../lib/shared/ui/formElements/controlled/dayPickerControl/single.tsx"],"sourcesContent":["'use client'\n\nimport { useEffect, useRef, useState } from 'react'\nimport { createPortal } from 'react-dom'\nimport { autoUpdate, flip, offset, useFloating } from '@floating-ui/react'\nimport { format, isValid, parse } from 'date-fns'\nimport { type ExternalHandlers } from './dayPickerControl'\nimport { getCurrentDate, getInitialValue, SINGLE_MASK, SINGLE_VALIDATION_REGEX } from './model'\nimport { useClickOutside } from '$/shared/hooks'\nimport { Calendar, DATE_VISIBLE_PATTERN, Icon, MaskInput, type MaskInputProps } from '$/shared/ui'\nimport { cn, mergeRefs, TypeGuards } from '$/shared/utils'\n\ntype CalendarProps = React.ComponentPropsWithoutRef<typeof Calendar>\n\ntype SingleDayPickerClasses = MaskInputProps['classes'] & {\n calendar?: string\n}\n\ntype SingleDayPickerProps = Omit<CalendarProps, 'mode'> & {\n /**\n * Свойства Input компонента\n */\n inputProps: Omit<MaskInputProps, 'mask'>\n /**\n * Стили внутренних компонентов\n */\n classes?: SingleDayPickerClasses\n /**\n * Управляемое значение\n */\n value: string\n /**\n * Функция для управления значением\n */\n onChange: (value: string) => void\n /**\n * Дополнительные хендлеры\n */\n externalHandlers?: ExternalHandlers\n}\n\nexport const SingleDayPicker = ({\n inputProps,\n classes,\n value,\n onChange,\n externalHandlers,\n month,\n onMonthChange,\n ...props\n}: SingleDayPickerProps) => {\n const { onChange: externalOnChange, onFocus: externalOnFocus, ...restHandlers } = externalHandlers || {}\n\n const calendarRef = useRef<HTMLDivElement>(null)\n\n const { refs, floatingStyles } = useFloating({\n placement: 'bottom-end',\n middleware: [\n flip({\n boundary: 'clippingAncestors',\n crossAxis: false\n }),\n offset(0)\n ],\n whileElementsMounted: autoUpdate\n })\n\n const { calendar, ...restClasses } = classes || {}\n\n const [calendarOpen, setCalendarOpen] = useState<boolean>(false)\n\n const onCalendarOpenChange = () => {\n setCalendarOpen((prev) => !prev)\n }\n\n const date = getCurrentDate('single', value)\n\n const [visibleValue, setVisibleValue] = useState<string>(getInitialValue('single', value))\n\n useEffect(() => {\n if (value && !TypeGuards.isStringEmpty(value)) {\n setVisibleValue(getInitialValue('single', value))\n if (onMonthChange) onMonthChange(new Date(value))\n }\n }, [value])\n\n useClickOutside(calendarRef, () => setCalendarOpen(false))\n\n const onVisibleValueChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const { value } = event.target\n\n setVisibleValue(value)\n\n if (TypeGuards.isStringEmpty(value)) {\n return onChange('')\n }\n\n if (!SINGLE_VALIDATION_REGEX.test(value)) {\n return\n }\n\n const date = parse(value, DATE_VISIBLE_PATTERN, new Date())\n\n if (isValid(date)) {\n const isoDate = date.toISOString()\n\n onChange(isoDate)\n if (onMonthChange) onMonthChange(date)\n\n if (externalOnChange) externalOnChange(isoDate)\n }\n }\n\n const onDateChange = (newDate: Date) => {\n if (onMonthChange) onMonthChange(newDate)\n\n const isoDate = newDate.toISOString()\n\n onChange(isoDate)\n setVisibleValue(format(newDate, DATE_VISIBLE_PATTERN))\n setCalendarOpen(false)\n\n if (externalOnChange) externalOnChange(isoDate)\n }\n\n return (\n <div ref={refs.setReference} className={cn('relative w-full', classes?.container)}>\n <MaskInput\n mask={SINGLE_MASK}\n {...inputProps}\n {...restHandlers}\n classes={restClasses}\n value={visibleValue}\n onChange={onVisibleValueChange}\n autoComplete='off'\n onFocus={(event) => {\n setCalendarOpen(true)\n if (externalOnFocus) externalOnFocus(event)\n }}\n onKeyDown={(event) => {\n if (event.key === 'Enter') {\n onCalendarOpenChange()\n }\n }}\n attachmentProps={{\n disabled: inputProps.disabled,\n icon: <Icon name='general/calendar' className='text-icon-blue-grey-600' />,\n onClickIcon: onCalendarOpenChange,\n ...inputProps.attachmentProps\n }}\n />\n {calendarOpen &&\n createPortal(\n <Calendar\n // @ts-expect-error asdf\n ref={mergeRefs(calendarRef, refs.setFloating)}\n {...props}\n required\n mode='single'\n style={{\n ...floatingStyles,\n width: 'max-content'\n }}\n month={month}\n onMonthChange={onMonthChange}\n selected={date}\n onSelect={onDateChange}\n className={cn(calendar)}\n data-test-id='calendar'\n />,\n document.body\n )}\n </div>\n )\n}\n"],"names":["SingleDayPicker","inputProps","classes","value","onChange","externalHandlers","month","onMonthChange","props","externalOnChange","externalOnFocus","restHandlers","calendarRef","useRef","refs","floatingStyles","useFloating","flip","offset","autoUpdate","calendar","restClasses","calendarOpen","setCalendarOpen","useState","onCalendarOpenChange","prev","date","getCurrentDate","visibleValue","setVisibleValue","getInitialValue","useEffect","TypeGuards","useClickOutside","onVisibleValueChange","event","SINGLE_VALIDATION_REGEX","parse","DATE_VISIBLE_PATTERN","isValid","isoDate","onDateChange","newDate","format","jsxs","cn","jsx","MaskInput","SINGLE_MASK","Icon","createPortal","Calendar","mergeRefs"],"mappings":"y2EAyCO,MAAMA,GAAkB,CAAC,CAC9B,WAAAC,EACA,QAAAC,EACA,MAAAC,EACA,SAAAC,EACA,iBAAAC,EACA,MAAAC,EACA,cAAAC,EACA,GAAGC,CACL,IAA4B,CAC1B,KAAM,CAAE,SAAUC,EAAkB,QAASC,EAAiB,GAAGC,CAAA,EAAiBN,GAAoB,CAAA,EAEhGO,EAAcC,EAAuB,IAAI,EAEzC,CAAE,KAAAC,EAAM,eAAAC,CAAA,EAAmBC,EAAY,CAC3C,UAAW,aACX,WAAY,CACVC,EAAK,CACH,SAAU,oBACV,UAAW,EAAA,CACZ,EACDC,EAAO,CAAC,CAAA,EAEV,qBAAsBC,CAAA,CACvB,EAEK,CAAE,SAAAC,EAAU,GAAGC,CAAA,EAAgBnB,GAAW,CAAA,EAE1C,CAACoB,EAAcC,CAAe,EAAIC,EAAkB,EAAK,EAEzDC,EAAuB,IAAM,CACjCF,EAAiBG,GAAS,CAACA,CAAI,CACjC,EAEMC,EAAOC,EAAe,SAAUzB,CAAK,EAErC,CAAC0B,EAAcC,CAAe,EAAIN,EAAiBO,EAAgB,SAAU5B,CAAK,CAAC,EAEzF6B,EAAU,IAAM,CACV7B,GAAS,CAAC8B,EAAW,cAAc9B,CAAK,IAC1C2B,EAAgBC,EAAgB,SAAU5B,CAAK,CAAC,EAC5CI,GAAeA,EAAc,IAAI,KAAKJ,CAAK,CAAC,EAEpD,EAAG,CAACA,CAAK,CAAC,EAEV+B,EAAgBtB,EAAa,IAAMW,EAAgB,EAAK,CAAC,EAEzD,MAAMY,EAAwBC,GAA+C,CAC3E,KAAM,CAAE,MAAAjC,CAAAA,EAAUiC,EAAM,OAIxB,GAFAN,EAAgB3B,CAAK,EAEjB8B,EAAW,cAAc9B,CAAK,EAChC,OAAOC,EAAS,EAAE,EAGpB,GAAI,CAACiC,EAAwB,KAAKlC,CAAK,EACrC,OAGF,MAAMwB,EAAOW,EAAMnC,EAAOoC,EAAsB,IAAI,IAAM,EAE1D,GAAIC,EAAQb,CAAI,EAAG,CACjB,MAAMc,EAAUd,EAAK,YAAA,EAErBvB,EAASqC,CAAO,EACZlC,KAA6BoB,CAAI,EAEjClB,KAAmCgC,CAAO,CAChD,CACF,EAEMC,EAAgBC,GAAkB,CAClCpC,KAA6BoC,CAAO,EAExC,MAAMF,EAAUE,EAAQ,YAAA,EAExBvC,EAASqC,CAAO,EAChBX,EAAgBc,EAAOD,EAASJ,CAAoB,CAAC,EACrDhB,EAAgB,EAAK,EAEjBd,KAAmCgC,CAAO,CAChD,EAEA,OACEI,EAAC,MAAA,CAAI,IAAK/B,EAAK,aAAc,UAAWgC,EAAG,kBAAmB5C,GAAA,YAAAA,EAAS,SAAS,EAC9E,SAAA,CAAA6C,EAACC,EAAA,CACC,KAAMC,EACL,GAAGhD,EACH,GAAGU,EACJ,QAASU,EACT,MAAOQ,EACP,SAAUM,EACV,aAAa,MACb,QAAUC,GAAU,CAClBb,EAAgB,EAAI,EAChBb,KAAiC0B,CAAK,CAC5C,EACA,UAAYA,GAAU,CAChBA,EAAM,MAAQ,SAChBX,EAAA,CAEJ,EACA,gBAAiB,CACf,SAAUxB,EAAW,SACrB,KAAM8C,EAACG,EAAA,CAAK,KAAK,mBAAmB,UAAU,0BAA0B,EACxE,YAAazB,EACb,GAAGxB,EAAW,eAAA,CAChB,CAAA,EAEDqB,GACC6B,EACEJ,EAACK,EAAA,CAEC,IAAKC,EAAUzC,EAAaE,EAAK,WAAW,EAC3C,GAAGN,EACJ,SAAQ,GACR,KAAK,SACL,MAAO,CACL,GAAGO,EACH,MAAO,aAAA,EAET,MAAAT,EACA,cAAAC,EACA,SAAUoB,EACV,SAAUe,EACV,UAAWI,EAAG1B,CAAQ,EACtB,eAAa,UAAA,CAAA,EAEf,SAAS,IAAA,CACX,EACJ,CAEJ"}
@@ -1,2 +1,2 @@
1
- import{jsx as o}from"react/jsx-runtime";import"tailwind-merge";import"../../../../button/Button.js";import"../../../../buttonIcon/ButtonIcon.js";import"../../../../calendar/Calendar.js";import"../../../../calendar/model/utils.js";import"../../../../accordion/Accordion.js";import"react";import"@hookform/resolvers";import"react-dom";import"../../../../modal/ui/IframeModalContent.js";import"../../../../../../../node_modules/react-hot-toast/dist/index.js";import{Icon as e}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"../ui/Editor.js";import"../../input/MaskInputControl.js";const D=[{shortcuts:["ctrl","alt","3"],level:3},{shortcuts:["ctrl","alt","4"],level:4}],M={3:"mob-title-bold-l desktop:desk-title-bold-l",4:"mob-title-bold-m desktop:desk-title-bold-s"},O=["#292929","#FFFFFF","#40465A","#5A6E85","#A9B6C5","#94A4B7","#003790","#042E73","#809BC7","#76BC21","#F49F00","#F42500"],R=i=>[{label:"Жирный текст",icon:o(e,{name:"editor/bold",className:"size-4"}),onClick:()=>i.chain().focus().toggleBold().run(),isActive:i.isActive("bold")},{label:"Курсивный текст",icon:o(e,{name:"editor/italic",className:"size-4"}),onClick:()=>i.chain().focus().toggleItalic().run(),isActive:i.isActive("italic")},{label:"Подчеркнутый текст",icon:o(e,{name:"editor/underline",className:"size-4"}),onClick:()=>i.chain().focus().toggleUnderline().run(),isActive:i.isActive("underline")},{label:"Зачеркнутый текст",icon:o(e,{name:"editor/strikethrough",className:"size-4"}),onClick:()=>i.chain().focus().toggleStrike().run(),isActive:i.isActive("strike")},{label:"Обычный текст",icon:o(e,{name:"editor/typography",className:"size-4"}),onClick:()=>i.chain().focus().setParagraph().run()},{label:"Маркированный список",icon:o(e,{name:"editor/list",className:"size-4"}),onClick:()=>i.chain().focus().toggleBulletList().run(),isActive:i.isActive("bulletList")},{label:"Перенос строки",icon:o(e,{name:"arrows/arrowDownRight",className:"size-4"}),onClick:()=>i.chain().focus().setHardBreak().run()},{label:"Отменить",icon:o(e,{name:"editor/undo",className:"size-4"}),onClick:()=>i.chain().focus().undo().run()},{label:"Вернуть",icon:o(e,{name:"editor/redo",className:"size-4"}),onClick:()=>i.chain().focus().redo().run()},{label:"Очистить стили и теги",icon:o(e,{name:"editor/removeFormatting",className:"size-4"}),onClick:()=>i.chain().focus().clearNodes().unsetAllMarks().run()},{label:"Удалить все",icon:o(e,{name:"general/close",className:"size-4"}),onClick:()=>i.commands.clearContent()}];export{O as editorAllowedColors,M as editorHeadingClasses,D as headingsOptions,R as renderEditorPanel};
1
+ import{jsx as o}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 e}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"../ui/Editor.js";import"../../input/MaskInputControl.js";const P=[{shortcuts:["ctrl","alt","3"],level:3},{shortcuts:["ctrl","alt","4"],level:4}],j={3:"mob-title-bold-l desktop:desk-title-bold-l",4:"mob-title-bold-m desktop:desk-title-bold-s"},D=["#292929","#FFFFFF","#40465A","#5A6E85","#A9B6C5","#94A4B7","#003790","#042E73","#809BC7","#76BC21","#F49F00","#F42500"],M=i=>[{label:"Жирный текст",icon:o(e,{name:"editor/bold",className:"size-4"}),onClick:()=>i.chain().focus().toggleBold().run(),isActive:i.isActive("bold")},{label:"Курсивный текст",icon:o(e,{name:"editor/italic",className:"size-4"}),onClick:()=>i.chain().focus().toggleItalic().run(),isActive:i.isActive("italic")},{label:"Подчеркнутый текст",icon:o(e,{name:"editor/underline",className:"size-4"}),onClick:()=>i.chain().focus().toggleUnderline().run(),isActive:i.isActive("underline")},{label:"Зачеркнутый текст",icon:o(e,{name:"editor/strikethrough",className:"size-4"}),onClick:()=>i.chain().focus().toggleStrike().run(),isActive:i.isActive("strike")},{label:"Обычный текст",icon:o(e,{name:"editor/typography",className:"size-4"}),onClick:()=>i.chain().focus().setParagraph().run()},{label:"Маркированный список",icon:o(e,{name:"editor/list",className:"size-4"}),onClick:()=>i.chain().focus().toggleBulletList().run(),isActive:i.isActive("bulletList")},{label:"Перенос строки",icon:o(e,{name:"arrows/arrowDownRight",className:"size-4"}),onClick:()=>i.chain().focus().setHardBreak().run()},{label:"Отменить",icon:o(e,{name:"editor/undo",className:"size-4"}),onClick:()=>i.chain().focus().undo().run()},{label:"Вернуть",icon:o(e,{name:"editor/redo",className:"size-4"}),onClick:()=>i.chain().focus().redo().run()},{label:"Очистить стили и теги",icon:o(e,{name:"editor/removeFormatting",className:"size-4"}),onClick:()=>i.chain().focus().clearNodes().unsetAllMarks().run()},{label:"Удалить все",icon:o(e,{name:"general/close",className:"size-4"}),onClick:()=>i.commands.clearContent()}];export{D as editorAllowedColors,j as editorHeadingClasses,P as headingsOptions,M as renderEditorPanel};
2
2
  //# sourceMappingURL=helper.js.map