@scbt-ecom/ui 0.111.3 → 0.113.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (288) hide show
  1. package/dist/lib/exports/ui.js +1 -1
  2. package/dist/lib/exports/widget.js +1 -1
  3. package/dist/lib/shared/style.css +1 -1
  4. package/dist/lib/shared/ui/brandLogos/BrandLogos.js +1 -1
  5. package/dist/lib/shared/ui/brandLogos/BrandLogos.js.map +1 -1
  6. package/dist/lib/shared/ui/calendar/Calendar.js +1 -1
  7. package/dist/lib/shared/ui/calendar/Calendar.js.map +1 -1
  8. package/dist/lib/shared/ui/calendar/ui/Navigation.js +1 -1
  9. package/dist/lib/shared/ui/calendar/ui/Navigation.js.map +1 -1
  10. package/dist/lib/shared/ui/calendar/ui/selectDate/ui/Trigger.js +1 -1
  11. package/dist/lib/shared/ui/calendar/ui/selectDate/ui/Trigger.js.map +1 -1
  12. package/dist/lib/shared/ui/dialog/Dialog.js +1 -1
  13. package/dist/lib/shared/ui/dialog/Dialog.js.map +1 -1
  14. package/dist/lib/shared/ui/divider/Divider.js +2 -0
  15. package/dist/lib/shared/ui/divider/Divider.js.map +1 -0
  16. package/dist/lib/shared/ui/divider/index.js +2 -0
  17. package/dist/lib/shared/ui/formElements/controlled/autocomplete/Autocomplete.js +1 -1
  18. package/dist/lib/shared/ui/formElements/controlled/autocomplete/Autocomplete.js.map +1 -1
  19. package/dist/lib/shared/ui/formElements/controlled/checkbox/CheckboxControl.js +1 -1
  20. package/dist/lib/shared/ui/formElements/controlled/checkbox/CheckboxControl.js.map +1 -1
  21. package/dist/lib/shared/ui/formElements/controlled/combobox/ComboboxControl.js +1 -1
  22. package/dist/lib/shared/ui/formElements/controlled/combobox/ComboboxControl.js.map +1 -1
  23. package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/dayPickerControl.js +1 -1
  24. package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/dayPickerControl.js.map +1 -1
  25. package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/model/utils.js +1 -1
  26. package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/model/utils.js.map +1 -1
  27. package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/range.js +1 -1
  28. package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/range.js.map +1 -1
  29. package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/single.js +1 -1
  30. package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/single.js.map +1 -1
  31. package/dist/lib/shared/ui/formElements/controlled/editor/EditorControl.js +1 -1
  32. package/dist/lib/shared/ui/formElements/controlled/editor/EditorControl.js.map +1 -1
  33. package/dist/lib/shared/ui/formElements/controlled/editor/model/helper.js +1 -1
  34. package/dist/lib/shared/ui/formElements/controlled/editor/model/helper.js.map +1 -1
  35. package/dist/lib/shared/ui/formElements/controlled/editor/ui/Editor.js +1 -1
  36. package/dist/lib/shared/ui/formElements/controlled/editor/ui/Editor.js.map +1 -1
  37. package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/SetColor.js +1 -1
  38. package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/SetColor.js.map +1 -1
  39. package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/SetCoreCommands.js +1 -1
  40. package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/SetCoreCommands.js.map +1 -1
  41. package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/SetFontSize.js +1 -1
  42. package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/SetFontSize.js.map +1 -1
  43. package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/setCustomLink.js +1 -1
  44. package/dist/lib/shared/ui/formElements/controlled/editor/ui/commands/setCustomLink.js.map +1 -1
  45. package/dist/lib/shared/ui/formElements/controlled/index.js.map +1 -1
  46. package/dist/lib/shared/ui/formElements/controlled/input/InputControl.js +1 -1
  47. package/dist/lib/shared/ui/formElements/controlled/input/InputControl.js.map +1 -1
  48. package/dist/lib/shared/ui/formElements/controlled/input/MaskInputControl.js +1 -1
  49. package/dist/lib/shared/ui/formElements/controlled/input/MaskInputControl.js.map +1 -1
  50. package/dist/lib/shared/ui/formElements/controlled/inputCurrency/InputCurrencyControl.js +1 -1
  51. package/dist/lib/shared/ui/formElements/controlled/inputCurrency/InputCurrencyControl.js.map +1 -1
  52. package/dist/lib/shared/ui/formElements/controlled/inputOtp/InputOtpControl.js +1 -1
  53. package/dist/lib/shared/ui/formElements/controlled/inputOtp/InputOtpControl.js.map +1 -1
  54. package/dist/lib/shared/ui/formElements/controlled/radio/RadioGroupControl.js +1 -1
  55. package/dist/lib/shared/ui/formElements/controlled/radio/RadioGroupControl.js.map +1 -1
  56. package/dist/lib/shared/ui/formElements/controlled/slider/SliderControl.js +1 -1
  57. package/dist/lib/shared/ui/formElements/controlled/slider/SliderControl.js.map +1 -1
  58. package/dist/lib/shared/ui/formElements/controlled/switch/SwitchControl.js +1 -1
  59. package/dist/lib/shared/ui/formElements/controlled/switch/SwitchControl.js.map +1 -1
  60. package/dist/lib/shared/ui/formElements/controlled/textarea/TextareaControl.js +1 -1
  61. package/dist/lib/shared/ui/formElements/controlled/textarea/TextareaControl.js.map +1 -1
  62. package/dist/lib/shared/ui/formElements/controlled/uploader/UploaderControl.js +1 -1
  63. package/dist/lib/shared/ui/formElements/controlled/uploader/UploaderControl.js.map +1 -1
  64. package/dist/lib/shared/ui/formElements/index.js +1 -1
  65. package/dist/lib/shared/ui/formElements/ui/fieldAttachment/ui/ValidateSlot.js +1 -1
  66. package/dist/lib/shared/ui/formElements/ui/fieldAttachment/ui/ValidateSlot.js.map +1 -1
  67. package/dist/lib/shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.js +1 -1
  68. package/dist/lib/shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.js.map +1 -1
  69. package/dist/lib/shared/ui/formElements/uncontrolled/checkbox/Checkbox.js +1 -1
  70. package/dist/lib/shared/ui/formElements/uncontrolled/checkbox/Checkbox.js.map +1 -1
  71. package/dist/lib/shared/ui/formElements/uncontrolled/combobox/combobox.js +1 -1
  72. package/dist/lib/shared/ui/formElements/uncontrolled/combobox/combobox.js.map +1 -1
  73. package/dist/lib/shared/ui/formElements/uncontrolled/dayPicker/DayPicker.js +1 -1
  74. package/dist/lib/shared/ui/formElements/uncontrolled/dayPicker/DayPicker.js.map +1 -1
  75. package/dist/lib/shared/ui/formElements/uncontrolled/inputCurrency/InputCurrency.js +2 -0
  76. package/dist/lib/shared/ui/formElements/uncontrolled/inputCurrency/InputCurrency.js.map +1 -0
  77. package/dist/lib/shared/ui/formElements/uncontrolled/inputCurrency/hooks/index.js +2 -0
  78. package/dist/lib/shared/ui/formElements/uncontrolled/inputCurrency/hooks/index.js.map +1 -0
  79. package/dist/lib/shared/ui/formElements/uncontrolled/inputCurrency/hooks/useCurrencyControl.js +2 -0
  80. package/dist/lib/shared/ui/formElements/uncontrolled/inputCurrency/hooks/useCurrencyControl.js.map +1 -0
  81. package/dist/lib/shared/ui/formElements/uncontrolled/inputCurrency/hooks/useCurrencyFormat.js +2 -0
  82. package/dist/lib/shared/ui/formElements/uncontrolled/inputCurrency/hooks/useCurrencyFormat.js.map +1 -0
  83. package/dist/lib/shared/ui/formElements/uncontrolled/inputCurrency/index.js +2 -0
  84. package/dist/lib/shared/ui/formElements/uncontrolled/inputCurrency/index.js.map +1 -0
  85. package/dist/lib/shared/ui/formElements/uncontrolled/inputCurrency/ui/CurrencyIcon.js +2 -0
  86. package/dist/lib/shared/ui/formElements/uncontrolled/inputCurrency/ui/CurrencyIcon.js.map +1 -0
  87. package/dist/lib/shared/ui/formElements/uncontrolled/inputCurrency/ui/index.js +2 -0
  88. package/dist/lib/shared/ui/formElements/uncontrolled/inputCurrency/ui/index.js.map +1 -0
  89. package/dist/lib/shared/ui/formElements/uncontrolled/maskInput/MaskInput.js +1 -1
  90. package/dist/lib/shared/ui/formElements/uncontrolled/maskInput/MaskInput.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/index.js +1 -1
  106. package/dist/lib/shared/ui/modal/ui/ModalHeader.js +1 -1
  107. package/dist/lib/shared/ui/modal/ui/ModalHeader.js.map +1 -1
  108. package/dist/lib/shared/ui/popover/Popover.js +1 -1
  109. package/dist/lib/shared/ui/popover/Popover.js.map +1 -1
  110. package/dist/lib/shared/validation/base/base.constants.js +1 -1
  111. package/dist/lib/shared/validation/base/base.constants.js.map +1 -1
  112. package/dist/lib/shared/validation/base/base.validators.js +1 -1
  113. package/dist/lib/shared/validation/base/base.validators.js.map +1 -1
  114. package/dist/lib/shared/validation/base/currency.validators.js +2 -0
  115. package/dist/lib/shared/validation/base/currency.validators.js.map +1 -0
  116. package/dist/lib/shared/validation/base/date.validators.js +1 -1
  117. package/dist/lib/shared/validation/base/date.validators.js.map +1 -1
  118. package/dist/lib/shared/validation/base/regex.validators.js +1 -1
  119. package/dist/lib/shared/validation/base/regex.validators.js.map +1 -1
  120. package/dist/lib/widgets/authProvider/AuthProvider.js +1 -1
  121. package/dist/lib/widgets/authProvider/AuthProvider.js.map +1 -1
  122. package/dist/lib/widgets/authProvider/ui/Esia.js +1 -1
  123. package/dist/lib/widgets/authProvider/ui/Esia.js.map +1 -1
  124. package/dist/lib/widgets/authProvider/ui/MobileId.js +1 -1
  125. package/dist/lib/widgets/authProvider/ui/MobileId.js.map +1 -1
  126. package/dist/lib/widgets/authProvider/ui/ui/AuthWrapper.js +1 -1
  127. package/dist/lib/widgets/authProvider/ui/ui/AuthWrapper.js.map +1 -1
  128. package/dist/lib/widgets/authProvider/ui/ui/Links.js +1 -1
  129. package/dist/lib/widgets/authProvider/ui/ui/Links.js.map +1 -1
  130. package/dist/lib/widgets/banner/index.js +1 -1
  131. package/dist/lib/widgets/banner/ui/banners/BannerImageFull.js +1 -1
  132. package/dist/lib/widgets/banner/ui/banners/BannerImageFull.js.map +1 -1
  133. package/dist/lib/widgets/banner/ui/banners/BannerWithSeparateImg.js +1 -1
  134. package/dist/lib/widgets/banner/ui/banners/BannerWithSeparateImg.js.map +1 -1
  135. package/dist/lib/widgets/banner/ui/banners/ui/Advantages.js +1 -1
  136. package/dist/lib/widgets/banner/ui/banners/ui/Advantages.js.map +1 -1
  137. package/dist/lib/widgets/benefit/Benefit.js +1 -1
  138. package/dist/lib/widgets/benefit/Benefit.js.map +1 -1
  139. package/dist/lib/widgets/breadcrumbs/Breadcrumbs.js +1 -1
  140. package/dist/lib/widgets/breadcrumbs/Breadcrumbs.js.map +1 -1
  141. package/dist/lib/widgets/buttonWithHandlers/ButtonWithHandlers.js +1 -1
  142. package/dist/lib/widgets/buttonWithHandlers/ButtonWithHandlers.js.map +1 -1
  143. package/dist/lib/widgets/calculator/Calculator.js +1 -1
  144. package/dist/lib/widgets/calculator/Calculator.js.map +1 -1
  145. package/dist/lib/widgets/calculator/CalculatorView.js +1 -1
  146. package/dist/lib/widgets/calculator/CalculatorView.js.map +1 -1
  147. package/dist/lib/widgets/calculator/ui/calculatorFields/ui/AdditionalSlider.js +1 -1
  148. package/dist/lib/widgets/calculator/ui/calculatorFields/ui/AdditionalSlider.js.map +1 -1
  149. package/dist/lib/widgets/calculator/ui/calculatorFields/ui/CalculatorModal.js +1 -1
  150. package/dist/lib/widgets/calculator/ui/calculatorFields/ui/CalculatorModal.js.map +1 -1
  151. package/dist/lib/widgets/calculator/ui/calculatorInfo/CalculatorInfo.js +1 -1
  152. package/dist/lib/widgets/calculator/ui/calculatorInfo/CalculatorInfo.js.map +1 -1
  153. package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/AssistHint.js +1 -1
  154. package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/AssistHint.js.map +1 -1
  155. package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/CalculatorInfoHead.js +1 -1
  156. package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/CalculatorInfoHead.js.map +1 -1
  157. package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/InfoListItem.js +1 -1
  158. package/dist/lib/widgets/calculator/ui/calculatorInfo/ui/InfoListItem.js.map +1 -1
  159. package/dist/lib/widgets/dynamicForm/DynamicForm.js +1 -1
  160. package/dist/lib/widgets/dynamicForm/DynamicForm.js.map +1 -1
  161. package/dist/lib/widgets/dynamicFormDialog/DynamicFormDialog.js +1 -1
  162. package/dist/lib/widgets/dynamicFormDialog/DynamicFormDialog.js.map +1 -1
  163. package/dist/lib/widgets/fallbacksView/FallbacksView.js +1 -1
  164. package/dist/lib/widgets/fallbacksView/FallbacksView.js.map +1 -1
  165. package/dist/lib/widgets/fallbacksView/model/helpers.js +1 -1
  166. package/dist/lib/widgets/fallbacksView/model/helpers.js.map +1 -1
  167. package/dist/lib/widgets/fieldMapper/FieldMapper.js +1 -1
  168. package/dist/lib/widgets/fieldMapper/FieldMapper.js.map +1 -1
  169. package/dist/lib/widgets/footer/Footer.js +1 -1
  170. package/dist/lib/widgets/footer/Footer.js.map +1 -1
  171. package/dist/lib/widgets/footer/ui/FooterLogo.js +1 -1
  172. package/dist/lib/widgets/footer/ui/FooterLogo.js.map +1 -1
  173. package/dist/lib/widgets/footer/ui/NavLinks.js +1 -1
  174. package/dist/lib/widgets/footer/ui/NavLinks.js.map +1 -1
  175. package/dist/lib/widgets/footer/ui/PhonesBlock.js +1 -1
  176. package/dist/lib/widgets/footer/ui/PhonesBlock.js.map +1 -1
  177. package/dist/lib/widgets/footer/ui/SiteMap.js +1 -1
  178. package/dist/lib/widgets/footer/ui/SiteMap.js.map +1 -1
  179. package/dist/lib/widgets/footer/ui/SocialLinks.js +1 -1
  180. package/dist/lib/widgets/footer/ui/SocialLinks.js.map +1 -1
  181. package/dist/lib/widgets/header/Header.js +1 -1
  182. package/dist/lib/widgets/header/Header.js.map +1 -1
  183. package/dist/lib/widgets/header/model/helpers.js +1 -1
  184. package/dist/lib/widgets/header/model/helpers.js.map +1 -1
  185. package/dist/lib/widgets/index.js +1 -1
  186. package/dist/lib/widgets/infoBlock/InfoBlock.js +1 -1
  187. package/dist/lib/widgets/infoBlock/InfoBlock.js.map +1 -1
  188. package/dist/lib/widgets/infoBlock/ui/LinksList.js +1 -1
  189. package/dist/lib/widgets/infoBlock/ui/LinksList.js.map +1 -1
  190. package/dist/lib/widgets/infoBlock/ui/RootContent.js +1 -1
  191. package/dist/lib/widgets/infoBlock/ui/RootContent.js.map +1 -1
  192. package/dist/lib/widgets/interLinking/InterLinking.js +1 -1
  193. package/dist/lib/widgets/interLinking/InterLinking.js.map +1 -1
  194. package/dist/lib/widgets/interLinking/ui/ColumnGroup.js +1 -1
  195. package/dist/lib/widgets/interLinking/ui/ColumnGroup.js.map +1 -1
  196. package/dist/lib/widgets/interLinking/ui/LinksList.js +1 -1
  197. package/dist/lib/widgets/interLinking/ui/LinksList.js.map +1 -1
  198. package/dist/lib/widgets/longBanner/LongBanner.js +1 -1
  199. package/dist/lib/widgets/longBanner/LongBanner.js.map +1 -1
  200. package/dist/lib/widgets/longBanner/ui/TextItem.js +1 -1
  201. package/dist/lib/widgets/longBanner/ui/TextItem.js.map +1 -1
  202. package/dist/lib/widgets/model/helpers.js +2 -2
  203. package/dist/lib/widgets/model/helpers.js.map +1 -1
  204. package/dist/lib/widgets/seoHeader/SeoHeader.js +1 -1
  205. package/dist/lib/widgets/seoHeader/SeoHeader.js.map +1 -1
  206. package/dist/lib/widgets/seoHeader/ui/desktop/CategoriesDesktop.js +1 -1
  207. package/dist/lib/widgets/seoHeader/ui/desktop/CategoriesDesktop.js.map +1 -1
  208. package/dist/lib/widgets/seoHeader/ui/desktop/CategoryTabs.js +1 -1
  209. package/dist/lib/widgets/seoHeader/ui/desktop/CategoryTabs.js.map +1 -1
  210. package/dist/lib/widgets/seoHeader/ui/desktop/tab/ui/content/TabContent.js +1 -1
  211. package/dist/lib/widgets/seoHeader/ui/desktop/tab/ui/content/TabContent.js.map +1 -1
  212. package/dist/lib/widgets/seoHeader/ui/mobile/CategoriesMobile.js +1 -1
  213. package/dist/lib/widgets/seoHeader/ui/mobile/CategoriesMobile.js.map +1 -1
  214. package/dist/lib/widgets/seoHeader/ui/mobile/menu/Menu.js +1 -1
  215. package/dist/lib/widgets/seoHeader/ui/mobile/menu/Menu.js.map +1 -1
  216. package/dist/lib/widgets/seoHeader/ui/mobile/menu/MenuItem.js +1 -1
  217. package/dist/lib/widgets/seoHeader/ui/mobile/menu/MenuItem.js.map +1 -1
  218. package/dist/lib/widgets/stepper/Stepper.js +1 -1
  219. package/dist/lib/widgets/stepper/Stepper.js.map +1 -1
  220. package/dist/lib/widgets/stepper/ui/StepperCarousel.js +1 -1
  221. package/dist/lib/widgets/stepper/ui/StepperCarousel.js.map +1 -1
  222. package/dist/lib/widgets/table/Table.js +1 -1
  223. package/dist/lib/widgets/table/Table.js.map +1 -1
  224. package/dist/lib/widgets/usefulInfo/UsefulInfo.js +1 -1
  225. package/dist/lib/widgets/usefulInfo/UsefulInfo.js.map +1 -1
  226. package/dist/lib/widgets/usefulInfo/ui/subEntities/documents/Documents.js +1 -1
  227. package/dist/lib/widgets/usefulInfo/ui/subEntities/documents/Documents.js.map +1 -1
  228. package/dist/lib/widgets/usefulInfo/ui/subEntities/documents/ui/document/Document.js +1 -1
  229. package/dist/lib/widgets/usefulInfo/ui/subEntities/documents/ui/document/Document.js.map +1 -1
  230. package/dist/lib/widgets/usefulInfo/ui/subEntities/experts/Experts.js +1 -1
  231. package/dist/lib/widgets/usefulInfo/ui/subEntities/experts/Experts.js.map +1 -1
  232. package/dist/lib/widgets/usefulInfo/ui/subEntities/html/Html.js +1 -1
  233. package/dist/lib/widgets/usefulInfo/ui/subEntities/html/Html.js.map +1 -1
  234. package/dist/lib/widgets/usefulInfo/ui/subEntities/table/Table.js +1 -1
  235. package/dist/lib/widgets/usefulInfo/ui/subEntities/table/Table.js.map +1 -1
  236. package/dist/lib/widgets/userFeedback/UserFeedback.js +1 -1
  237. package/dist/lib/widgets/userFeedback/UserFeedback.js.map +1 -1
  238. package/dist/lib/widgets/userFeedback/ui/FeedbackTrigger.js +1 -1
  239. package/dist/lib/widgets/userFeedback/ui/FeedbackTrigger.js.map +1 -1
  240. package/dist/lib/widgets/userFeedback/ui/Finally.js +1 -1
  241. package/dist/lib/widgets/userFeedback/ui/Finally.js.map +1 -1
  242. package/dist/lib/widgets/userFeedback/ui/SelectRating.js +1 -1
  243. package/dist/lib/widgets/userFeedback/ui/SelectRating.js.map +1 -1
  244. package/dist/lib/widgets/userFeedback/ui/UserReview.js +1 -1
  245. package/dist/lib/widgets/userFeedback/ui/UserReview.js.map +1 -1
  246. package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +1 -1
  247. package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.js.map +1 -1
  248. package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.js +1 -1
  249. package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.js.map +1 -1
  250. package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.utils.js +2 -0
  251. package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.utils.js.map +1 -0
  252. package/dist/stats.html +1 -1
  253. package/dist/types/lib/shared/ui/divider/Divider.d.ts +25 -0
  254. package/dist/types/lib/shared/ui/divider/index.d.ts +1 -0
  255. package/dist/types/lib/shared/ui/formElements/controlled/index.d.ts +2 -2
  256. package/dist/types/lib/shared/ui/formElements/controlled/inputCurrency/InputCurrencyControl.d.ts +11 -23
  257. package/dist/types/lib/shared/ui/formElements/controlled/inputCurrency/index.d.ts +1 -1
  258. package/dist/types/lib/shared/ui/formElements/index.d.ts +1 -0
  259. package/dist/types/lib/shared/ui/formElements/uncontrolled/index.d.ts +1 -0
  260. package/dist/types/lib/shared/ui/formElements/uncontrolled/inputCurrency/InputCurrency.d.ts +37 -0
  261. package/dist/types/lib/shared/ui/formElements/uncontrolled/inputCurrency/hooks/index.d.ts +2 -0
  262. package/dist/types/lib/shared/ui/formElements/uncontrolled/inputCurrency/hooks/useCurrencyControl.d.ts +15 -0
  263. package/dist/types/lib/shared/ui/formElements/uncontrolled/inputCurrency/hooks/useCurrencyFormat.d.ts +1 -0
  264. package/dist/types/lib/shared/ui/formElements/uncontrolled/inputCurrency/index.d.ts +1 -0
  265. package/dist/types/lib/shared/ui/formElements/uncontrolled/inputCurrency/ui/CurrencyIcon.d.ts +14 -0
  266. package/dist/types/lib/shared/ui/formElements/uncontrolled/inputCurrency/ui/index.d.ts +1 -0
  267. package/dist/types/lib/shared/ui/formElements/uncontrolled/maskInput/MaskInput.d.ts +3 -0
  268. package/dist/types/lib/shared/ui/index.d.ts +1 -0
  269. package/dist/types/lib/shared/validation/base/base.constants.d.ts +1 -0
  270. package/dist/types/lib/shared/validation/base/base.validators.d.ts +2 -0
  271. package/dist/types/lib/shared/validation/base/currency.validators.d.ts +69 -0
  272. package/dist/types/lib/shared/validation/index.d.ts +1 -0
  273. package/package.json +4 -3
  274. package/dist/lib/shared/ui/formElements/controlled/inputCurrency/model/helpers.js +0 -2
  275. package/dist/lib/shared/ui/formElements/controlled/inputCurrency/model/helpers.js.map +0 -1
  276. package/dist/lib/shared/ui/formElements/controlled/inputCurrency/model/useInputCurrency.js +0 -2
  277. package/dist/lib/shared/ui/formElements/controlled/inputCurrency/model/useInputCurrency.js.map +0 -1
  278. package/dist/lib/shared/ui/formElements/controlled/inputCurrency/ui/MenuTrigger.js +0 -2
  279. package/dist/lib/shared/ui/formElements/controlled/inputCurrency/ui/MenuTrigger.js.map +0 -1
  280. package/dist/lib/shared/ui/formElements/controlled/inputCurrency/ui/OptionList.js +0 -2
  281. package/dist/lib/shared/ui/formElements/controlled/inputCurrency/ui/OptionList.js.map +0 -1
  282. package/dist/lib/shared/ui/formElements/controlled/inputCurrency/ui/index.js +0 -2
  283. package/dist/types/lib/shared/ui/formElements/controlled/inputCurrency/model/helpers.d.ts +0 -3
  284. package/dist/types/lib/shared/ui/formElements/controlled/inputCurrency/model/useInputCurrency.d.ts +0 -10
  285. package/dist/types/lib/shared/ui/formElements/controlled/inputCurrency/ui/MenuTrigger.d.ts +0 -7
  286. package/dist/types/lib/shared/ui/formElements/controlled/inputCurrency/ui/OptionList.d.ts +0 -8
  287. package/dist/types/lib/shared/ui/formElements/controlled/inputCurrency/ui/index.d.ts +0 -2
  288. /package/dist/lib/shared/ui/{formElements/controlled/inputCurrency/ui → divider}/index.js.map +0 -0
@@ -1,2 +1,2 @@
1
- import{jsxs as d,jsx as c}from"react/jsx-runtime";import*as I from"react";import{forwardRef as K}from"react";import{NumericFormat as Q}from"../../../../../../../../node_modules/react-number-format/dist/react-number-format.es.js";import{getInputSliderSuffix as g}from"../../model/helpers/getInputSliderSuffix.js";import{SliderInner as T}from"../Slider.js";import{useSliderStep as U}from"./hooks/useSliderStep.js";import{cn as m}from"../../../../../../utils/cn.js";import{mergeRefs as V}from"../../../../../../utils/mergeRefs.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{Icon as W}from"../../../../../icon/Icon.js";import"../../../../../table/ui/primitives/Primitives.js";import"../../../../../carousel/ui/CarouselContent.js";import"../../../../../slot/Slot.js";import"../../../autocomplete/Autocomplete.js";import"../../../checkbox/Checkbox.js";import"../../../combobox/combobox.js";import"../../../dayPicker/DayPicker.js";import{InputBase as X}from"../../../input/Input.js";import"../../../inputOtp/InputOtpBase.js";import"../../../maskInput/MaskInput.js";import"../../../radio/RadioGroup.js";import"../../../radio/ui/RadioItem.js";import"../../SliderBase.js";import"../../../switch/Switch.js";import"../../../textarea/Textarea.js";import"../../../uploader/UploaderBase.js";import"../../../../controlled/editor/ui/Editor.js";import"../../../../controlled/input/MaskInputControl.js";import"../../../../../dropdownList/ui/dropdownItem/DropdownItem.js";const Y=c(W,{name:"general/edit",className:"size-[19px] text-icon-blue-grey-600 transition-[color] group-focus-within/icon:text-icon-blue-grey-800"}),$o=K(({classes:N,invalid:S,externalHandlers:o,disabled:b,value:u,onChange:l,min:p,max:n,suffix:s,label:h,step:k,attachmentProps:t,additionalSuffix:w,readOnly:e,componentType:C,...r},B)=>{const y=I.useId(),f=I.useRef(null),R=()=>{var i;(i=f==null?void 0:f.current)==null||i.focus()},{handleBlur:v,sliderStep:j,sliderMin:F,sliderMax:M,handleChangeSlider:$}=U({min:p,max:n,step:k,onChange:l}),{root:z,slider:G,textLeft:L,textRight:q,inputRoot:A,textContainer:D,input:E,field:J}=N||{};return d("div",{"aria-label":C,className:m("flex w-full flex-col gap-1",z),children:[d("div",{className:m("relative w-full select-none",{"select-none":e},J),children:[c(X,{label:h,value:u,attachmentProps:{onClickIcon:e?void 0:(t==null?void 0:t.onClickIcon)||R,icon:e?void 0:(t==null?void 0:t.icon)||Y,...t},classes:{container:"border-[1px] bg-color-white border-blue-grey-500 focus-within:border-blue-grey-800",...A},onBlur:i=>{v(u),r!=null&&r.onBlur&&(r==null||r.onBlur(i)),o!=null&&o.onBlur&&o.onBlur(i)},onClick:o==null?void 0:o.onClick,onFocus:o==null?void 0:o.onBlur,renderValues:()=>c(Q,{id:y,readOnly:e,"aria-invalid":S?"true":"false",value:u,disabled:b,suffix:` ${g(s,u)} ${w??""}`,thousandsGroupStyle:"thousand",thousandSeparator:" ",allowNegative:!1,getInputRef:V(f,B),onValueChange:({floatValue:i})=>{i&&(l&&l(i),o!=null&&o.onInputChange&&o.onInputChange(i))},"data-test-id":"slider",className:m("group/slider desk-title-bold-s w-full bg-color-transparent text-color-dark outline-none transition-all",E),...r})}),c(T,{classes:{...G},step:j,value:u??0,disabled:b,min:Number(F),max:Number(M),onChange:$})]}),d("div",{className:m("flex justify-between",D),children:[p&&c("span",{className:m("desk-body-regular-m text-color-tetriary",L),children:g(s,p,!1)}),n&&c("span",{className:m("desk-body-regular-m text-color-tetriary",q),children:g(s,n,!1)})]})]})});export{$o as SliderStep};
1
+ import{jsxs as d,jsx as c}from"react/jsx-runtime";import*as I from"react";import{forwardRef as K}from"react";import{NumericFormat as Q}from"../../../../../../../../node_modules/react-number-format/dist/react-number-format.es.js";import{getInputSliderSuffix as g}from"../../model/helpers/getInputSliderSuffix.js";import{SliderInner as T}from"../Slider.js";import{useSliderStep as U}from"./hooks/useSliderStep.js";import{cn as m}from"../../../../../../utils/cn.js";import{mergeRefs as V}from"../../../../../../utils/mergeRefs.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{Icon as W}from"../../../../../icon/Icon.js";import"../../../../../table/ui/primitives/Primitives.js";import"../../../../../carousel/ui/CarouselContent.js";import"../../../../../slot/Slot.js";import"../../../autocomplete/Autocomplete.js";import"../../../checkbox/Checkbox.js";import"../../../combobox/combobox.js";import"../../../dayPicker/DayPicker.js";import{InputBase as X}from"../../../input/Input.js";import"../../../inputOtp/InputOtpBase.js";import"../../../maskInput/MaskInput.js";import"../../../radio/RadioGroup.js";import"../../../radio/ui/RadioItem.js";import"../../SliderBase.js";import"../../../switch/Switch.js";import"../../../textarea/Textarea.js";import"../../../uploader/UploaderBase.js";import"../../../inputCurrency/InputCurrency.js";import"../../../../controlled/editor/ui/Editor.js";import"../../../../controlled/input/MaskInputControl.js";import"../../../../../dropdownList/ui/dropdownItem/DropdownItem.js";const Y=c(W,{name:"general/edit",className:"size-[19px] text-icon-blue-grey-600 transition-[color] group-focus-within/icon:text-icon-blue-grey-800"}),zo=K(({classes:N,invalid:S,externalHandlers:o,disabled:b,value:u,onChange:l,min:p,max:n,suffix:s,label:h,step:k,attachmentProps:t,additionalSuffix:w,readOnly:e,componentType:C,...r},B)=>{const y=I.useId(),f=I.useRef(null),R=()=>{var i;(i=f==null?void 0:f.current)==null||i.focus()},{handleBlur:v,sliderStep:j,sliderMin:F,sliderMax:M,handleChangeSlider:$}=U({min:p,max:n,step:k,onChange:l}),{root:z,slider:G,textLeft:L,textRight:q,inputRoot:A,textContainer:D,input:E,field:J}=N||{};return d("div",{"aria-label":C,className:m("flex w-full flex-col gap-1",z),children:[d("div",{className:m("relative w-full select-none",{"select-none":e},J),children:[c(X,{label:h,value:u,attachmentProps:{onClickIcon:e?void 0:(t==null?void 0:t.onClickIcon)||R,icon:e?void 0:(t==null?void 0:t.icon)||Y,...t},classes:{container:"border-[1px] bg-color-white border-blue-grey-500 focus-within:border-blue-grey-800",...A},onBlur:i=>{v(u),r!=null&&r.onBlur&&(r==null||r.onBlur(i)),o!=null&&o.onBlur&&o.onBlur(i)},onClick:o==null?void 0:o.onClick,onFocus:o==null?void 0:o.onBlur,renderValues:()=>c(Q,{id:y,readOnly:e,"aria-invalid":S?"true":"false",value:u,disabled:b,suffix:` ${g(s,u)} ${w??""}`,thousandsGroupStyle:"thousand",thousandSeparator:" ",allowNegative:!1,getInputRef:V(f,B),onValueChange:({floatValue:i})=>{i&&(l&&l(i),o!=null&&o.onInputChange&&o.onInputChange(i))},"data-test-id":"slider",className:m("group/slider desk-title-bold-s w-full bg-color-transparent text-color-dark outline-none transition-all",E),...r})}),c(T,{classes:{...G},step:j,value:u??0,disabled:b,min:Number(F),max:Number(M),onChange:$})]}),d("div",{className:m("flex justify-between",D),children:[p&&c("span",{className:m("desk-body-regular-m text-color-tetriary",L),children:g(s,p,!1)}),n&&c("span",{className:m("desk-body-regular-m text-color-tetriary",q),children:g(s,n,!1)})]})]})});export{zo as SliderStep};
2
2
  //# sourceMappingURL=SliderStep.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SliderStep.js","sources":["../../../../../../../../../lib/shared/ui/formElements/uncontrolled/slider/ui/sliderStep/SliderStep.tsx"],"sourcesContent":["import * as React from 'react'\nimport { forwardRef } from 'react'\nimport { NumericFormat } from 'react-number-format'\nimport { getInputSliderSuffix } from '../../model/helpers'\nimport { type SliderStepProps } from '../../model/types'\nimport { SliderInner } from '../Slider'\nimport { useSliderStep } from './hooks'\nimport { Icon, InputBase } from '$/shared/ui'\nimport { cn, mergeRefs } from '$/shared/utils'\n\nconst defaultIcon = (\n <Icon\n name='general/edit'\n className='size-[19px] text-icon-blue-grey-600 transition-[color] group-focus-within/icon:text-icon-blue-grey-800'\n />\n)\n\nexport const SliderStep = forwardRef<HTMLInputElement, SliderStepProps>(\n (\n {\n classes,\n invalid,\n externalHandlers,\n disabled,\n value,\n onChange,\n min,\n max,\n suffix,\n label,\n step,\n attachmentProps,\n additionalSuffix,\n readOnly,\n componentType,\n ...props\n },\n ref\n ) => {\n const inputId = React.useId()\n\n const inputRef = React.useRef<HTMLInputElement>(null)\n\n const handleIconClick = () => {\n inputRef?.current?.focus()\n }\n\n const { handleBlur, sliderStep, sliderMin, sliderMax, handleChangeSlider } = useSliderStep({\n min,\n max,\n step,\n onChange\n })\n\n const { root, slider, textLeft, textRight, inputRoot, textContainer, input, field } = classes || {}\n\n return (\n <div aria-label={componentType} className={cn('flex w-full flex-col gap-1', root)}>\n <div className={cn('relative w-full select-none', { ['select-none']: readOnly }, field)}>\n <InputBase\n label={label}\n value={value}\n attachmentProps={{\n onClickIcon: readOnly ? undefined : attachmentProps?.onClickIcon || handleIconClick,\n icon: readOnly ? undefined : attachmentProps?.icon || defaultIcon,\n ...attachmentProps\n }}\n classes={{\n container: 'border-[1px] bg-color-white border-blue-grey-500 focus-within:border-blue-grey-800',\n ...inputRoot\n }}\n onBlur={(e) => {\n handleBlur(value)\n if (props?.onBlur) props?.onBlur(e)\n if (externalHandlers?.onBlur) externalHandlers.onBlur(e)\n }}\n onClick={externalHandlers?.onClick}\n onFocus={externalHandlers?.onBlur}\n renderValues={() => (\n <NumericFormat\n id={inputId}\n readOnly={readOnly}\n aria-invalid={invalid ? 'true' : 'false'}\n value={value}\n disabled={disabled}\n suffix={` ${getInputSliderSuffix(suffix, value)} ${additionalSuffix ?? ''}`}\n thousandsGroupStyle='thousand'\n thousandSeparator={' '}\n allowNegative={false}\n getInputRef={mergeRefs(inputRef, ref)}\n onValueChange={({ floatValue }) => {\n if (floatValue) {\n if (onChange) onChange(floatValue)\n if (externalHandlers?.onInputChange) {\n externalHandlers.onInputChange(floatValue)\n }\n }\n }}\n data-test-id='slider'\n className={cn(\n 'group/slider desk-title-bold-s w-full bg-color-transparent text-color-dark outline-none transition-all',\n\n input\n )}\n {...props}\n />\n )}\n />\n <SliderInner\n classes={{ ...slider }}\n step={sliderStep}\n value={value ?? 0}\n disabled={disabled}\n min={Number(sliderMin)}\n max={Number(sliderMax)}\n onChange={handleChangeSlider}\n />\n </div>\n <div className={cn('flex justify-between', textContainer)}>\n {min && (\n <span className={cn('desk-body-regular-m text-color-tetriary', textLeft)}>\n {getInputSliderSuffix(suffix, min, false)}\n </span>\n )}\n {max && (\n <span className={cn('desk-body-regular-m text-color-tetriary', textRight)}>\n {getInputSliderSuffix(suffix, max, false)}\n </span>\n )}\n </div>\n </div>\n )\n }\n)\n"],"names":["defaultIcon","jsx","Icon","SliderStep","forwardRef","classes","invalid","externalHandlers","disabled","value","onChange","min","max","suffix","label","step","attachmentProps","additionalSuffix","readOnly","componentType","props","ref","inputId","React","inputRef","handleIconClick","_a","handleBlur","sliderStep","sliderMin","sliderMax","handleChangeSlider","useSliderStep","root","slider","textLeft","textRight","inputRoot","textContainer","input","field","jsxs","cn","InputBase","e","NumericFormat","getInputSliderSuffix","mergeRefs","floatValue","SliderInner"],"mappings":"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"}
1
+ {"version":3,"file":"SliderStep.js","sources":["../../../../../../../../../lib/shared/ui/formElements/uncontrolled/slider/ui/sliderStep/SliderStep.tsx"],"sourcesContent":["import * as React from 'react'\nimport { forwardRef } from 'react'\nimport { NumericFormat } from 'react-number-format'\nimport { getInputSliderSuffix } from '../../model/helpers'\nimport { type SliderStepProps } from '../../model/types'\nimport { SliderInner } from '../Slider'\nimport { useSliderStep } from './hooks'\nimport { Icon, InputBase } from '$/shared/ui'\nimport { cn, mergeRefs } from '$/shared/utils'\n\nconst defaultIcon = (\n <Icon\n name='general/edit'\n className='size-[19px] text-icon-blue-grey-600 transition-[color] group-focus-within/icon:text-icon-blue-grey-800'\n />\n)\n\nexport const SliderStep = forwardRef<HTMLInputElement, SliderStepProps>(\n (\n {\n classes,\n invalid,\n externalHandlers,\n disabled,\n value,\n onChange,\n min,\n max,\n suffix,\n label,\n step,\n attachmentProps,\n additionalSuffix,\n readOnly,\n componentType,\n ...props\n },\n ref\n ) => {\n const inputId = React.useId()\n\n const inputRef = React.useRef<HTMLInputElement>(null)\n\n const handleIconClick = () => {\n inputRef?.current?.focus()\n }\n\n const { handleBlur, sliderStep, sliderMin, sliderMax, handleChangeSlider } = useSliderStep({\n min,\n max,\n step,\n onChange\n })\n\n const { root, slider, textLeft, textRight, inputRoot, textContainer, input, field } = classes || {}\n\n return (\n <div aria-label={componentType} className={cn('flex w-full flex-col gap-1', root)}>\n <div className={cn('relative w-full select-none', { ['select-none']: readOnly }, field)}>\n <InputBase\n label={label}\n value={value}\n attachmentProps={{\n onClickIcon: readOnly ? undefined : attachmentProps?.onClickIcon || handleIconClick,\n icon: readOnly ? undefined : attachmentProps?.icon || defaultIcon,\n ...attachmentProps\n }}\n classes={{\n container: 'border-[1px] bg-color-white border-blue-grey-500 focus-within:border-blue-grey-800',\n ...inputRoot\n }}\n onBlur={(e) => {\n handleBlur(value)\n if (props?.onBlur) props?.onBlur(e)\n if (externalHandlers?.onBlur) externalHandlers.onBlur(e)\n }}\n onClick={externalHandlers?.onClick}\n onFocus={externalHandlers?.onBlur}\n renderValues={() => (\n <NumericFormat\n id={inputId}\n readOnly={readOnly}\n aria-invalid={invalid ? 'true' : 'false'}\n value={value}\n disabled={disabled}\n suffix={` ${getInputSliderSuffix(suffix, value)} ${additionalSuffix ?? ''}`}\n thousandsGroupStyle='thousand'\n thousandSeparator={' '}\n allowNegative={false}\n getInputRef={mergeRefs(inputRef, ref)}\n onValueChange={({ floatValue }) => {\n if (floatValue) {\n if (onChange) onChange(floatValue)\n if (externalHandlers?.onInputChange) {\n externalHandlers.onInputChange(floatValue)\n }\n }\n }}\n data-test-id='slider'\n className={cn(\n 'group/slider desk-title-bold-s w-full bg-color-transparent text-color-dark outline-none transition-all',\n\n input\n )}\n {...props}\n />\n )}\n />\n <SliderInner\n classes={{ ...slider }}\n step={sliderStep}\n value={value ?? 0}\n disabled={disabled}\n min={Number(sliderMin)}\n max={Number(sliderMax)}\n onChange={handleChangeSlider}\n />\n </div>\n <div className={cn('flex justify-between', textContainer)}>\n {min && (\n <span className={cn('desk-body-regular-m text-color-tetriary', textLeft)}>\n {getInputSliderSuffix(suffix, min, false)}\n </span>\n )}\n {max && (\n <span className={cn('desk-body-regular-m text-color-tetriary', textRight)}>\n {getInputSliderSuffix(suffix, max, false)}\n </span>\n )}\n </div>\n </div>\n )\n }\n)\n"],"names":["defaultIcon","jsx","Icon","SliderStep","forwardRef","classes","invalid","externalHandlers","disabled","value","onChange","min","max","suffix","label","step","attachmentProps","additionalSuffix","readOnly","componentType","props","ref","inputId","React","inputRef","handleIconClick","_a","handleBlur","sliderStep","sliderMin","sliderMax","handleChangeSlider","useSliderStep","root","slider","textLeft","textRight","inputRoot","textContainer","input","field","jsxs","cn","InputBase","e","NumericFormat","getInputSliderSuffix","mergeRefs","floatValue","SliderInner"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{jsxs as x,Fragment as h,jsx as o}from"react/jsx-runtime";import{forwardRef as j}from"react";import{defaultDropzoneOptions as v}from"./model/helpers.js";import{useUploader as w}from"./model/hooks/useUploader.js";import{UploaderFiles as z}from"./ui/UploaderFiles.js";import{cn as S}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"react-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"../autocomplete/Autocomplete.js";import"../checkbox/Checkbox.js";import"../combobox/combobox.js";import"../dayPicker/DayPicker.js";import"../input/Input.js";import"../inputOtp/InputOtpBase.js";import"../maskInput/MaskInput.js";import"../radio/RadioGroup.js";import"../radio/ui/RadioItem.js";import"../slider/SliderBase.js";import"../switch/Switch.js";import"../textarea/Textarea.js";import"../../controlled/editor/ui/Editor.js";import"../../controlled/input/MaskInputControl.js";import"../../../dropdownList/ui/dropdownItem/DropdownItem.js";import{UploaderInput as b}from"./ui/UploaderInput.js";const mo=j(({classes:i,dropzoneOptions:m=v,name:p,value:r,disabled:e,invalid:s,onChange:l,externalHandlers:t,...f},a)=>{const{filesStatus:n,removeFile:c,dropzoneState:d}=w({controlledFiles:r,dropzoneOptions:m,onChange:l,externalHandlers:t}),{root:u,input:F,files:U}=i||{};return x(h,{children:[o("div",{className:S("relative mb-3 w-[476px]",u),children:o(b,{...f,ref:a,name:p,classes:F,disabled:e,invalid:s,dropzoneState:d,externalHandlers:t})}),o(z,{files:r,removeFile:c,classes:U,filesStatus:n})]})});export{mo as UploaderBase};
1
+ import{jsxs as x,Fragment as h,jsx as o}from"react/jsx-runtime";import{forwardRef as j}from"react";import{defaultDropzoneOptions as v}from"./model/helpers.js";import{useUploader as w}from"./model/hooks/useUploader.js";import{UploaderFiles as z}from"./ui/UploaderFiles.js";import{cn as S}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"react-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"../autocomplete/Autocomplete.js";import"../checkbox/Checkbox.js";import"../combobox/combobox.js";import"../dayPicker/DayPicker.js";import"../input/Input.js";import"../inputOtp/InputOtpBase.js";import"../maskInput/MaskInput.js";import"../radio/RadioGroup.js";import"../radio/ui/RadioItem.js";import"../slider/SliderBase.js";import"../switch/Switch.js";import"../textarea/Textarea.js";import"../inputCurrency/InputCurrency.js";import"../../controlled/editor/ui/Editor.js";import"../../controlled/input/MaskInputControl.js";import"../../../dropdownList/ui/dropdownItem/DropdownItem.js";import{UploaderInput as b}from"./ui/UploaderInput.js";const po=j(({classes:i,dropzoneOptions:m=v,name:p,value:r,disabled:e,invalid:s,onChange:l,externalHandlers:t,...f},a)=>{const{filesStatus:n,removeFile:c,dropzoneState:d}=w({controlledFiles:r,dropzoneOptions:m,onChange:l,externalHandlers:t}),{root:u,input:F,files:U}=i||{};return x(h,{children:[o("div",{className:S("relative mb-3 w-[476px]",u),children:o(b,{...f,ref:a,name:p,classes:F,disabled:e,invalid:s,dropzoneState:d,externalHandlers:t})}),o(z,{files:r,removeFile:c,classes:U,filesStatus:n})]})});export{po as UploaderBase};
2
2
  //# sourceMappingURL=UploaderBase.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UploaderBase.js","sources":["../../../../../../../lib/shared/ui/formElements/uncontrolled/uploader/UploaderBase.tsx"],"sourcesContent":["import { forwardRef, type InputHTMLAttributes } from 'react'\nimport { type DropzoneOptions } from 'react-dropzone'\nimport { defaultDropzoneOptions } from './model'\nimport { useUploader } from './model/hooks/useUploader'\nimport { UploaderFiles, type UploaderFilesClasses, UploaderInput, type UploaderInputClasses } from './ui'\nimport { cn } from '$/shared/utils'\n\ntype UploaderBaseClasses = {\n root?: string\n input?: UploaderInputClasses\n files?: UploaderFilesClasses\n}\n\nexport type ExternalHandlers = {\n onChange?: (files: File[]) => void\n onClick?: (event: React.MouseEvent<HTMLInputElement>) => void\n}\n\nexport interface UploaderBaseProps\n extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size' | 'placeholder' | 'value' | 'onChange'> {\n /**\n * Опции uploader-а, в нем можно валидировать файлы, указывать максимум и минимум для файлов\n * Подробнее можно узнать в типе DropzoneOptions\n */\n dropzoneOptions?: DropzoneOptions\n /**\n * Объект классов которые можно переопределить\n */\n classes?: UploaderBaseClasses\n /**\n * Доп текст под инпутом\n */\n helperText?: string\n /**\n * Сеттер значение\n * @param file - файлы\n */\n onChange?: (file: File[]) => void\n /**\n * Валидное ли значение\n */\n invalid?: boolean\n /**\n * Значение\n */\n value?: File[]\n /**\n * Внешние объект handlers\n */\n externalHandlers?: ExternalHandlers\n}\n\nexport const UploaderBase = forwardRef<HTMLInputElement, UploaderBaseProps>(\n (\n {\n classes,\n dropzoneOptions = defaultDropzoneOptions,\n name,\n value,\n disabled,\n invalid,\n onChange,\n externalHandlers,\n ...props\n }: UploaderBaseProps,\n ref\n ) => {\n const { filesStatus, removeFile, dropzoneState } = useUploader({\n controlledFiles: value,\n dropzoneOptions,\n onChange,\n externalHandlers\n })\n\n const { root, input, files } = classes || {}\n\n return (\n <>\n <div className={cn('relative mb-3 w-[476px]', root)}>\n <UploaderInput\n {...props}\n ref={ref}\n name={name}\n classes={input}\n disabled={disabled}\n invalid={invalid}\n dropzoneState={dropzoneState}\n externalHandlers={externalHandlers}\n />\n </div>\n <UploaderFiles files={value} removeFile={removeFile} classes={files} filesStatus={filesStatus} />\n </>\n )\n }\n)\n"],"names":["UploaderBase","forwardRef","classes","dropzoneOptions","defaultDropzoneOptions","name","value","disabled","invalid","onChange","externalHandlers","props","ref","filesStatus","removeFile","dropzoneState","useUploader","root","input","files","jsxs","Fragment","jsx","cn","UploaderInput","UploaderFiles"],"mappings":"k2CAoDO,MAAMA,GAAeC,EAC1B,CACE,CACE,QAAAC,EACA,gBAAAC,EAAkBC,EAClB,KAAAC,EACA,MAAAC,EACA,SAAAC,EACA,QAAAC,EACA,SAAAC,EACA,iBAAAC,EACA,GAAGC,CAAA,EAELC,IACG,CACH,KAAM,CAAE,YAAAC,EAAa,WAAAC,EAAY,cAAAC,CAAA,EAAkBC,EAAY,CAC7D,gBAAiBV,EACjB,gBAAAH,EACA,SAAAM,EACA,iBAAAC,CAAA,CACD,EAEK,CAAE,KAAAO,EAAM,MAAAC,EAAO,MAAAC,CAAA,EAAUjB,GAAW,CAAA,EAE1C,OACEkB,EAAAC,EAAA,CACE,SAAA,CAAAC,EAAC,MAAA,CAAI,UAAWC,EAAG,0BAA2BN,CAAI,EAChD,SAAAK,EAACE,EAAA,CACE,GAAGb,EACJ,IAAAC,EACA,KAAAP,EACA,QAASa,EACT,SAAAX,EACA,QAAAC,EACA,cAAAO,EACA,iBAAAL,CAAA,CAAA,EAEJ,IACCe,EAAA,CAAc,MAAOnB,EAAO,WAAAQ,EAAwB,QAASK,EAAO,YAAAN,CAAA,CAA0B,CAAA,EACjG,CAEJ,CACF"}
1
+ {"version":3,"file":"UploaderBase.js","sources":["../../../../../../../lib/shared/ui/formElements/uncontrolled/uploader/UploaderBase.tsx"],"sourcesContent":["import { forwardRef, type InputHTMLAttributes } from 'react'\nimport { type DropzoneOptions } from 'react-dropzone'\nimport { defaultDropzoneOptions } from './model'\nimport { useUploader } from './model/hooks/useUploader'\nimport { UploaderFiles, type UploaderFilesClasses, UploaderInput, type UploaderInputClasses } from './ui'\nimport { cn } from '$/shared/utils'\n\ntype UploaderBaseClasses = {\n root?: string\n input?: UploaderInputClasses\n files?: UploaderFilesClasses\n}\n\nexport type ExternalHandlers = {\n onChange?: (files: File[]) => void\n onClick?: (event: React.MouseEvent<HTMLInputElement>) => void\n}\n\nexport interface UploaderBaseProps\n extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size' | 'placeholder' | 'value' | 'onChange'> {\n /**\n * Опции uploader-а, в нем можно валидировать файлы, указывать максимум и минимум для файлов\n * Подробнее можно узнать в типе DropzoneOptions\n */\n dropzoneOptions?: DropzoneOptions\n /**\n * Объект классов которые можно переопределить\n */\n classes?: UploaderBaseClasses\n /**\n * Доп текст под инпутом\n */\n helperText?: string\n /**\n * Сеттер значение\n * @param file - файлы\n */\n onChange?: (file: File[]) => void\n /**\n * Валидное ли значение\n */\n invalid?: boolean\n /**\n * Значение\n */\n value?: File[]\n /**\n * Внешние объект handlers\n */\n externalHandlers?: ExternalHandlers\n}\n\nexport const UploaderBase = forwardRef<HTMLInputElement, UploaderBaseProps>(\n (\n {\n classes,\n dropzoneOptions = defaultDropzoneOptions,\n name,\n value,\n disabled,\n invalid,\n onChange,\n externalHandlers,\n ...props\n }: UploaderBaseProps,\n ref\n ) => {\n const { filesStatus, removeFile, dropzoneState } = useUploader({\n controlledFiles: value,\n dropzoneOptions,\n onChange,\n externalHandlers\n })\n\n const { root, input, files } = classes || {}\n\n return (\n <>\n <div className={cn('relative mb-3 w-[476px]', root)}>\n <UploaderInput\n {...props}\n ref={ref}\n name={name}\n classes={input}\n disabled={disabled}\n invalid={invalid}\n dropzoneState={dropzoneState}\n externalHandlers={externalHandlers}\n />\n </div>\n <UploaderFiles files={value} removeFile={removeFile} classes={files} filesStatus={filesStatus} />\n </>\n )\n }\n)\n"],"names":["UploaderBase","forwardRef","classes","dropzoneOptions","defaultDropzoneOptions","name","value","disabled","invalid","onChange","externalHandlers","props","ref","filesStatus","removeFile","dropzoneState","useUploader","root","input","files","jsxs","Fragment","jsx","cn","UploaderInput","UploaderFiles"],"mappings":"44CAoDO,MAAMA,GAAeC,EAC1B,CACE,CACE,QAAAC,EACA,gBAAAC,EAAkBC,EAClB,KAAAC,EACA,MAAAC,EACA,SAAAC,EACA,QAAAC,EACA,SAAAC,EACA,iBAAAC,EACA,GAAGC,CAAA,EAELC,IACG,CACH,KAAM,CAAE,YAAAC,EAAa,WAAAC,EAAY,cAAAC,CAAA,EAAkBC,EAAY,CAC7D,gBAAiBV,EACjB,gBAAAH,EACA,SAAAM,EACA,iBAAAC,CAAA,CACD,EAEK,CAAE,KAAAO,EAAM,MAAAC,EAAO,MAAAC,CAAA,EAAUjB,GAAW,CAAA,EAE1C,OACEkB,EAAAC,EAAA,CACE,SAAA,CAAAC,EAAC,MAAA,CAAI,UAAWC,EAAG,0BAA2BN,CAAI,EAChD,SAAAK,EAACE,EAAA,CACE,GAAGb,EACJ,IAAAC,EACA,KAAAP,EACA,QAASa,EACT,SAAAX,EACA,QAAAC,EACA,cAAAO,EACA,iBAAAL,CAAA,CAAA,EAEJ,IACCe,EAAA,CAAc,MAAOnB,EAAO,WAAAQ,EAAwB,QAASK,EAAO,YAAAN,CAAA,CAA0B,CAAA,EACjG,CAEJ,CACF"}
@@ -1,2 +1,2 @@
1
- import{useState as k}from"react";import{useDropzone as D}from"../../../../../../../../node_modules/react-dropzone/dist/es/index.js";import{FilesErrorCode as c,bytesToMegabytes as v}from"../helpers.js";import"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-dom";import"../../../../../modal/ui/IframeModalContent.js";import{Notification as u}from"../../../../../notification/Notification.js";import"../../../../../table/ui/primitives/Primitives.js";import"../../../../../carousel/ui/CarouselContent.js";import"../../../../../../../../node_modules/react-hot-toast/dist/index.js";import"../../../../../slot/Slot.js";import"../../../autocomplete/Autocomplete.js";import"../../../checkbox/Checkbox.js";import"../../../combobox/combobox.js";import"../../../dayPicker/DayPicker.js";import"../../../input/Input.js";import"../../../inputOtp/InputOtpBase.js";import"../../../maskInput/MaskInput.js";import"../../../radio/RadioGroup.js";import"../../../radio/ui/RadioItem.js";import"../../../slider/SliderBase.js";import"../../../switch/Switch.js";import"../../../textarea/Textarea.js";import"../../UploaderBase.js";import"../../../../controlled/editor/ui/Editor.js";import"../../../../controlled/input/MaskInputControl.js";import"../../../../../dropdownList/ui/dropdownItem/DropdownItem.js";const oo=({dropzoneOptions:t,controlledFiles:i=[],onChange:r,externalHandlers:o})=>{const[g,S]=k({}),F=m=>{const e=i==null?void 0:i.filter((s,p)=>p!==m);r&&r(e)},T=D({onDrop:(m,e)=>{var p,b;switch(m.forEach(f=>{const y=new FileReader;S(a=>({...a,[f.name]:"loading"})),y.onload=()=>{S(a=>({...a,[f.name]:"success"}))},y.readAsArrayBuffer(f)}),(b=(p=e[0])==null?void 0:p.errors[0])==null?void 0:b.code){case c.FileInvalidType:u({intent:"error",text:"Неверный формат файла. Загрузите в формате jpg/png/pdf"});break;case c.FileTooLarge:u({intent:"error",text:`Файл слишком большой. Максимальный размер ${t.maxSize?v(t.maxSize):0} МБ`});break;case c.TooManyFiles:u({intent:"error",text:`Вы загрузили слишком много файлов. Максимальное количество ${t.maxFiles}`});break}const s=[...i,...m];r&&r(s),o!=null&&o.onChange&&(o==null||o.onChange(s))},...t});return{filesStatus:g,removeFile:F,dropzoneState:T}};export{oo as useUploader};
1
+ import{useState as k}from"react";import{useDropzone as D}from"../../../../../../../../node_modules/react-dropzone/dist/es/index.js";import{FilesErrorCode as c,bytesToMegabytes as v}from"../helpers.js";import"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-dom";import"../../../../../modal/ui/IframeModalContent.js";import{Notification as u}from"../../../../../notification/Notification.js";import"../../../../../table/ui/primitives/Primitives.js";import"../../../../../carousel/ui/CarouselContent.js";import"../../../../../../../../node_modules/react-hot-toast/dist/index.js";import"../../../../../slot/Slot.js";import"../../../autocomplete/Autocomplete.js";import"../../../checkbox/Checkbox.js";import"../../../combobox/combobox.js";import"../../../dayPicker/DayPicker.js";import"../../../input/Input.js";import"../../../inputOtp/InputOtpBase.js";import"../../../maskInput/MaskInput.js";import"../../../radio/RadioGroup.js";import"../../../radio/ui/RadioItem.js";import"../../../slider/SliderBase.js";import"../../../switch/Switch.js";import"../../../textarea/Textarea.js";import"../../UploaderBase.js";import"../../../inputCurrency/InputCurrency.js";import"../../../../controlled/editor/ui/Editor.js";import"../../../../controlled/input/MaskInputControl.js";import"../../../../../dropdownList/ui/dropdownItem/DropdownItem.js";const to=({dropzoneOptions:t,controlledFiles:i=[],onChange:r,externalHandlers:o})=>{const[g,S]=k({}),F=m=>{const e=i==null?void 0:i.filter((s,p)=>p!==m);r&&r(e)},T=D({onDrop:(m,e)=>{var p,b;switch(m.forEach(f=>{const y=new FileReader;S(a=>({...a,[f.name]:"loading"})),y.onload=()=>{S(a=>({...a,[f.name]:"success"}))},y.readAsArrayBuffer(f)}),(b=(p=e[0])==null?void 0:p.errors[0])==null?void 0:b.code){case c.FileInvalidType:u({intent:"error",text:"Неверный формат файла. Загрузите в формате jpg/png/pdf"});break;case c.FileTooLarge:u({intent:"error",text:`Файл слишком большой. Максимальный размер ${t.maxSize?v(t.maxSize):0} МБ`});break;case c.TooManyFiles:u({intent:"error",text:`Вы загрузили слишком много файлов. Максимальное количество ${t.maxFiles}`});break}const s=[...i,...m];r&&r(s),o!=null&&o.onChange&&(o==null||o.onChange(s))},...t});return{filesStatus:g,removeFile:F,dropzoneState:T}};export{to as useUploader};
2
2
  //# sourceMappingURL=useUploader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useUploader.js","sources":["../../../../../../../../../lib/shared/ui/formElements/uncontrolled/uploader/model/hooks/useUploader.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { type DropzoneOptions, type FileRejection, useDropzone } from 'react-dropzone'\nimport { type ExternalHandlers } from '../../UploaderBase'\nimport { bytesToMegabytes, FilesErrorCode } from '../helpers'\nimport { Notification } from '$/shared/ui/'\n\nexport type TUseUploader = {\n controlledFiles?: File[]\n dropzoneOptions: DropzoneOptions\n onChange?: (files: File[]) => void\n externalHandlers?: ExternalHandlers\n}\n\nexport const useUploader = ({ dropzoneOptions, controlledFiles = [], onChange, externalHandlers }: TUseUploader) => {\n const [filesStatus, setFilesStatus] = useState<Record<string, 'loading' | 'success' | 'error'>>({})\n\n const removeFile = (index: number) => {\n const updatedFiles = controlledFiles?.filter((_, idx) => idx !== index)\n if (onChange) onChange(updatedFiles)\n }\n\n const onDrop = (acceptedFiles: File[], rejectedFiles: FileRejection[]) => {\n acceptedFiles.forEach((file) => {\n const reader = new FileReader()\n setFilesStatus((prev) => ({ ...prev, [file.name]: 'loading' }))\n\n reader.onload = () => {\n setFilesStatus((prev) => ({ ...prev, [file.name]: 'success' }))\n }\n\n reader.readAsArrayBuffer(file)\n })\n\n switch (rejectedFiles[0]?.errors[0]?.code) {\n case FilesErrorCode.FileInvalidType:\n Notification({\n intent: 'error',\n text: 'Неверный формат файла. Загрузите в формате jpg/png/pdf'\n })\n break\n case FilesErrorCode.FileTooLarge:\n Notification({\n intent: 'error',\n text: `Файл слишком большой. Максимальный размер ${dropzoneOptions.maxSize ? bytesToMegabytes(dropzoneOptions.maxSize) : 0} МБ`\n })\n break\n case FilesErrorCode.TooManyFiles:\n Notification({\n intent: 'error',\n text: `Вы загрузили слишком много файлов. Максимальное количество ${dropzoneOptions.maxFiles}`\n })\n break\n default:\n break\n }\n\n const updatedFiles = [...controlledFiles, ...acceptedFiles]\n\n if (onChange) onChange(updatedFiles)\n if (externalHandlers?.onChange) externalHandlers?.onChange(updatedFiles)\n }\n\n const dropzoneState = useDropzone({\n onDrop,\n ...dropzoneOptions\n })\n\n return { filesStatus, removeFile, dropzoneState }\n}\n"],"names":["useUploader","dropzoneOptions","controlledFiles","onChange","externalHandlers","filesStatus","setFilesStatus","useState","removeFile","index","updatedFiles","_","idx","dropzoneState","useDropzone","acceptedFiles","rejectedFiles","file","reader","prev","_b","_a","FilesErrorCode","Notification","bytesToMegabytes"],"mappings":"i9CAaO,MAAMA,GAAc,CAAC,CAAE,gBAAAC,EAAiB,gBAAAC,EAAkB,CAAA,EAAI,SAAAC,EAAU,iBAAAC,KAAqC,CAClH,KAAM,CAACC,EAAaC,CAAc,EAAIC,EAA0D,CAAA,CAAE,EAE5FC,EAAcC,GAAkB,CACpC,MAAMC,EAAeR,GAAA,YAAAA,EAAiB,OAAO,CAACS,EAAGC,IAAQA,IAAQH,GAC7DN,KAAmBO,CAAY,CACrC,EA2CMG,EAAgBC,EAAY,CAChC,OA1Ca,CAACC,EAAuBC,IAAmC,SAYxE,OAXAD,EAAc,QAASE,GAAS,CAC9B,MAAMC,EAAS,IAAI,WACnBZ,EAAgBa,IAAU,CAAE,GAAGA,EAAM,CAACF,EAAK,IAAI,EAAG,SAAA,EAAY,EAE9DC,EAAO,OAAS,IAAM,CACpBZ,EAAgBa,IAAU,CAAE,GAAGA,EAAM,CAACF,EAAK,IAAI,EAAG,SAAA,EAAY,CAChE,EAEAC,EAAO,kBAAkBD,CAAI,CAC/B,CAAC,GAEOG,GAAAC,EAAAL,EAAc,CAAC,IAAf,YAAAK,EAAkB,OAAO,KAAzB,YAAAD,EAA6B,KAAA,CACnC,KAAKE,EAAe,gBAClBC,EAAa,CACX,OAAQ,QACR,KAAM,wDAAA,CACP,EACD,MACF,KAAKD,EAAe,aAClBC,EAAa,CACX,OAAQ,QACR,KAAM,6CAA6CtB,EAAgB,QAAUuB,EAAiBvB,EAAgB,OAAO,EAAI,CAAC,KAAA,CAC3H,EACD,MACF,KAAKqB,EAAe,aAClBC,EAAa,CACX,OAAQ,QACR,KAAM,8DAA8DtB,EAAgB,QAAQ,EAAA,CAC7F,EACD,KAEA,CAGJ,MAAMS,EAAe,CAAC,GAAGR,EAAiB,GAAGa,CAAa,EAEtDZ,KAAmBO,CAAY,EAC/BN,GAAA,MAAAA,EAAkB,WAAUA,GAAA,MAAAA,EAAkB,SAASM,GAC7D,EAIE,GAAGT,CAAA,CACJ,EAED,MAAO,CAAE,YAAAI,EAAa,WAAAG,EAAY,cAAAK,CAAA,CACpC"}
1
+ {"version":3,"file":"useUploader.js","sources":["../../../../../../../../../lib/shared/ui/formElements/uncontrolled/uploader/model/hooks/useUploader.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { type DropzoneOptions, type FileRejection, useDropzone } from 'react-dropzone'\nimport { type ExternalHandlers } from '../../UploaderBase'\nimport { bytesToMegabytes, FilesErrorCode } from '../helpers'\nimport { Notification } from '$/shared/ui/'\n\nexport type TUseUploader = {\n controlledFiles?: File[]\n dropzoneOptions: DropzoneOptions\n onChange?: (files: File[]) => void\n externalHandlers?: ExternalHandlers\n}\n\nexport const useUploader = ({ dropzoneOptions, controlledFiles = [], onChange, externalHandlers }: TUseUploader) => {\n const [filesStatus, setFilesStatus] = useState<Record<string, 'loading' | 'success' | 'error'>>({})\n\n const removeFile = (index: number) => {\n const updatedFiles = controlledFiles?.filter((_, idx) => idx !== index)\n if (onChange) onChange(updatedFiles)\n }\n\n const onDrop = (acceptedFiles: File[], rejectedFiles: FileRejection[]) => {\n acceptedFiles.forEach((file) => {\n const reader = new FileReader()\n setFilesStatus((prev) => ({ ...prev, [file.name]: 'loading' }))\n\n reader.onload = () => {\n setFilesStatus((prev) => ({ ...prev, [file.name]: 'success' }))\n }\n\n reader.readAsArrayBuffer(file)\n })\n\n switch (rejectedFiles[0]?.errors[0]?.code) {\n case FilesErrorCode.FileInvalidType:\n Notification({\n intent: 'error',\n text: 'Неверный формат файла. Загрузите в формате jpg/png/pdf'\n })\n break\n case FilesErrorCode.FileTooLarge:\n Notification({\n intent: 'error',\n text: `Файл слишком большой. Максимальный размер ${dropzoneOptions.maxSize ? bytesToMegabytes(dropzoneOptions.maxSize) : 0} МБ`\n })\n break\n case FilesErrorCode.TooManyFiles:\n Notification({\n intent: 'error',\n text: `Вы загрузили слишком много файлов. Максимальное количество ${dropzoneOptions.maxFiles}`\n })\n break\n default:\n break\n }\n\n const updatedFiles = [...controlledFiles, ...acceptedFiles]\n\n if (onChange) onChange(updatedFiles)\n if (externalHandlers?.onChange) externalHandlers?.onChange(updatedFiles)\n }\n\n const dropzoneState = useDropzone({\n onDrop,\n ...dropzoneOptions\n })\n\n return { filesStatus, removeFile, dropzoneState }\n}\n"],"names":["useUploader","dropzoneOptions","controlledFiles","onChange","externalHandlers","filesStatus","setFilesStatus","useState","removeFile","index","updatedFiles","_","idx","dropzoneState","useDropzone","acceptedFiles","rejectedFiles","file","reader","prev","_b","_a","FilesErrorCode","Notification","bytesToMegabytes"],"mappings":"igDAaO,MAAMA,GAAc,CAAC,CAAE,gBAAAC,EAAiB,gBAAAC,EAAkB,CAAA,EAAI,SAAAC,EAAU,iBAAAC,KAAqC,CAClH,KAAM,CAACC,EAAaC,CAAc,EAAIC,EAA0D,CAAA,CAAE,EAE5FC,EAAcC,GAAkB,CACpC,MAAMC,EAAeR,GAAA,YAAAA,EAAiB,OAAO,CAACS,EAAGC,IAAQA,IAAQH,GAC7DN,KAAmBO,CAAY,CACrC,EA2CMG,EAAgBC,EAAY,CAChC,OA1Ca,CAACC,EAAuBC,IAAmC,SAYxE,OAXAD,EAAc,QAASE,GAAS,CAC9B,MAAMC,EAAS,IAAI,WACnBZ,EAAgBa,IAAU,CAAE,GAAGA,EAAM,CAACF,EAAK,IAAI,EAAG,SAAA,EAAY,EAE9DC,EAAO,OAAS,IAAM,CACpBZ,EAAgBa,IAAU,CAAE,GAAGA,EAAM,CAACF,EAAK,IAAI,EAAG,SAAA,EAAY,CAChE,EAEAC,EAAO,kBAAkBD,CAAI,CAC/B,CAAC,GAEOG,GAAAC,EAAAL,EAAc,CAAC,IAAf,YAAAK,EAAkB,OAAO,KAAzB,YAAAD,EAA6B,KAAA,CACnC,KAAKE,EAAe,gBAClBC,EAAa,CACX,OAAQ,QACR,KAAM,wDAAA,CACP,EACD,MACF,KAAKD,EAAe,aAClBC,EAAa,CACX,OAAQ,QACR,KAAM,6CAA6CtB,EAAgB,QAAUuB,EAAiBvB,EAAgB,OAAO,EAAI,CAAC,KAAA,CAC3H,EACD,MACF,KAAKqB,EAAe,aAClBC,EAAa,CACX,OAAQ,QACR,KAAM,8DAA8DtB,EAAgB,QAAQ,EAAA,CAC7F,EACD,KAEA,CAGJ,MAAMS,EAAe,CAAC,GAAGR,EAAiB,GAAGa,CAAa,EAEtDZ,KAAmBO,CAAY,EAC/BN,GAAA,MAAAA,EAAkB,WAAUA,GAAA,MAAAA,EAAkB,SAASM,GAC7D,EAIE,GAAGT,CAAA,CACJ,EAED,MAAO,CAAE,YAAAI,EAAa,WAAAG,EAAY,cAAAK,CAAA,CACpC"}
@@ -1,2 +1,2 @@
1
- import{jsxs as r,jsx as e}from"react/jsx-runtime";import{bytesToMegabytes as g}from"../model/helpers.js";import{UploaderFilename as f}from"./UploaderFilename.js";import{cn as t}from"../../../../../utils/cn.js";import"../../../../button/Button.js";import"../../../../buttonIcon/ButtonIcon.js";import{Loader as h}from"../../../../loader/Loader.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 i}from"../../../../icon/Icon.js";import"../../../../table/ui/primitives/Primitives.js";import"../../../../carousel/ui/CarouselContent.js";import"../../../../slot/Slot.js";import"../../autocomplete/Autocomplete.js";import"../../checkbox/Checkbox.js";import"../../combobox/combobox.js";import"../../dayPicker/DayPicker.js";import"../../input/Input.js";import"../../inputOtp/InputOtpBase.js";import"../../maskInput/MaskInput.js";import"../../radio/RadioGroup.js";import"../../radio/ui/RadioItem.js";import"../../slider/SliderBase.js";import"../../switch/Switch.js";import"../../textarea/Textarea.js";import"../UploaderBase.js";import"../../../controlled/editor/ui/Editor.js";import"../../../controlled/input/MaskInputControl.js";import"../../../../dropdownList/ui/dropdownItem/DropdownItem.js";const _=({filesStatus:m,removeFile:p,classes:s,file:o,index:n})=>{const c=g(o.size),{root:a,deleteIcon:l,buttonDelete:d,content:b,buttonRoot:u,...x}=s||{};return r("li",{className:t("flex h-6 items-center justify-between p-1",a),children:[r("div",{className:t("flex items-center gap-2",b),children:[m[o.name]==="loading"&&e(h,{size:"sm"}),m[o.name]==="success"&&e(i,{name:"general/check",className:"text-icon-positive-default"}),e(f,{file:o,classes:x})]}),r("div",{className:t("flex items-center gap-2",u),children:[e("p",{className:"desk-body-regular-m text-color-blue-grey-600",children:`${c.toFixed(1)} MB`}),e("button",{className:t("cursor-pointer",d),onClick:()=>p(n),children:e(i,{name:"general/close",className:t("text-icon-blue-grey-600",l)})})]})]},o.name)};export{_ as UploaderFile};
1
+ import{jsxs as r,jsx as e}from"react/jsx-runtime";import{bytesToMegabytes as g}from"../model/helpers.js";import{UploaderFilename as f}from"./UploaderFilename.js";import{cn as t}from"../../../../../utils/cn.js";import"../../../../button/Button.js";import"../../../../buttonIcon/ButtonIcon.js";import{Loader as h}from"../../../../loader/Loader.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 i}from"../../../../icon/Icon.js";import"../../../../table/ui/primitives/Primitives.js";import"../../../../carousel/ui/CarouselContent.js";import"../../../../slot/Slot.js";import"../../autocomplete/Autocomplete.js";import"../../checkbox/Checkbox.js";import"../../combobox/combobox.js";import"../../dayPicker/DayPicker.js";import"../../input/Input.js";import"../../inputOtp/InputOtpBase.js";import"../../maskInput/MaskInput.js";import"../../radio/RadioGroup.js";import"../../radio/ui/RadioItem.js";import"../../slider/SliderBase.js";import"../../switch/Switch.js";import"../../textarea/Textarea.js";import"../UploaderBase.js";import"../../inputCurrency/InputCurrency.js";import"../../../controlled/editor/ui/Editor.js";import"../../../controlled/input/MaskInputControl.js";import"../../../../dropdownList/ui/dropdownItem/DropdownItem.js";const ee=({filesStatus:m,removeFile:p,classes:s,file:o,index:n})=>{const c=g(o.size),{root:a,deleteIcon:l,buttonDelete:d,content:b,buttonRoot:u,...x}=s||{};return r("li",{className:t("flex h-6 items-center justify-between p-1",a),children:[r("div",{className:t("flex items-center gap-2",b),children:[m[o.name]==="loading"&&e(h,{size:"sm"}),m[o.name]==="success"&&e(i,{name:"general/check",className:"text-icon-positive-default"}),e(f,{file:o,classes:x})]}),r("div",{className:t("flex items-center gap-2",u),children:[e("p",{className:"desk-body-regular-m text-color-blue-grey-600",children:`${c.toFixed(1)} MB`}),e("button",{className:t("cursor-pointer",d),onClick:()=>p(n),children:e(i,{name:"general/close",className:t("text-icon-blue-grey-600",l)})})]})]},o.name)};export{ee as UploaderFile};
2
2
  //# sourceMappingURL=UploaderFile.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UploaderFile.js","sources":["../../../../../../../../lib/shared/ui/formElements/uncontrolled/uploader/ui/UploaderFile.tsx"],"sourcesContent":["import { bytesToMegabytes } from '../model/helpers'\nimport { UploaderFilename, type UploaderFileNameClasses } from './UploaderFilename'\nimport { Icon, Loader } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type UploaderFileClasses = UploaderFileNameClasses & {\n root?: string\n content?: string\n deleteIcon?: string\n buttonRoot?: string\n buttonDelete?: string\n}\n\ninterface UploaderFileProps {\n filesStatus: {\n [key: string]: 'loading' | 'success' | 'error'\n }\n removeFile: (index: number) => void\n classes?: UploaderFileClasses\n file: File\n index: number\n}\n\nexport const UploaderFile = ({ filesStatus, removeFile, classes, file, index }: UploaderFileProps) => {\n const fileSizeMb = bytesToMegabytes(file.size)\n\n const { root, deleteIcon, buttonDelete, content, buttonRoot, ...restClasses } = classes || {}\n\n return (\n <li key={file.name} className={cn('flex h-6 items-center justify-between p-1', root)}>\n <div className={cn('flex items-center gap-2', content)}>\n {filesStatus[file.name] === 'loading' && <Loader size='sm' />}\n {filesStatus[file.name] === 'success' && <Icon name='general/check' className='text-icon-positive-default' />}\n <UploaderFilename file={file} classes={restClasses} />\n </div>\n <div className={cn('flex items-center gap-2', buttonRoot)}>\n <p className='desk-body-regular-m text-color-blue-grey-600'>{`${fileSizeMb.toFixed(1)} MB`}</p>\n <button className={cn('cursor-pointer', buttonDelete)} onClick={() => removeFile(index)}>\n <Icon name='general/close' className={cn('text-icon-blue-grey-600', deleteIcon)} />\n </button>\n </div>\n </li>\n )\n}\n"],"names":["UploaderFile","filesStatus","removeFile","classes","file","index","fileSizeMb","bytesToMegabytes","root","deleteIcon","buttonDelete","content","buttonRoot","restClasses","cn","jsxs","jsx","Loader","Icon","UploaderFilename"],"mappings":"25CAuBO,MAAMA,EAAe,CAAC,CAAE,YAAAC,EAAa,WAAAC,EAAY,QAAAC,EAAS,KAAAC,EAAM,MAAAC,KAA+B,CACpG,MAAMC,EAAaC,EAAiBH,EAAK,IAAI,EAEvC,CAAE,KAAAI,EAAM,WAAAC,EAAY,aAAAC,EAAc,QAAAC,EAAS,WAAAC,EAAY,GAAGC,GAAgBV,GAAW,CAAA,EAE3F,SACG,KAAA,CAAmB,UAAWW,EAAG,4CAA6CN,CAAI,EACjF,SAAA,CAAAO,EAAC,MAAA,CAAI,UAAWD,EAAG,0BAA2BH,CAAO,EAClD,SAAA,CAAAV,EAAYG,EAAK,IAAI,IAAM,WAAaY,EAACC,EAAA,CAAO,KAAK,KAAK,EAC1DhB,EAAYG,EAAK,IAAI,IAAM,aAAcc,EAAA,CAAK,KAAK,gBAAgB,UAAU,4BAAA,CAA6B,EAC3GF,EAACG,EAAA,CAAiB,KAAAf,EAAY,QAASS,CAAA,CAAa,CAAA,EACtD,IACC,MAAA,CAAI,UAAWC,EAAG,0BAA2BF,CAAU,EACtD,SAAA,CAAAI,EAAC,IAAA,CAAE,UAAU,+CAAgD,SAAA,GAAGV,EAAW,QAAQ,CAAC,CAAC,KAAA,CAAM,EAC3FU,EAAC,UAAO,UAAWF,EAAG,iBAAkBJ,CAAY,EAAG,QAAS,IAAMR,EAAWG,CAAK,EACpF,SAAAW,EAACE,GAAK,KAAK,gBAAgB,UAAWJ,EAAG,0BAA2BL,CAAU,CAAA,CAAG,CAAA,CACnF,CAAA,CAAA,CACF,CAAA,CAAA,EAXOL,EAAK,IAYd,CAEJ"}
1
+ {"version":3,"file":"UploaderFile.js","sources":["../../../../../../../../lib/shared/ui/formElements/uncontrolled/uploader/ui/UploaderFile.tsx"],"sourcesContent":["import { bytesToMegabytes } from '../model/helpers'\nimport { UploaderFilename, type UploaderFileNameClasses } from './UploaderFilename'\nimport { Icon, Loader } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type UploaderFileClasses = UploaderFileNameClasses & {\n root?: string\n content?: string\n deleteIcon?: string\n buttonRoot?: string\n buttonDelete?: string\n}\n\ninterface UploaderFileProps {\n filesStatus: {\n [key: string]: 'loading' | 'success' | 'error'\n }\n removeFile: (index: number) => void\n classes?: UploaderFileClasses\n file: File\n index: number\n}\n\nexport const UploaderFile = ({ filesStatus, removeFile, classes, file, index }: UploaderFileProps) => {\n const fileSizeMb = bytesToMegabytes(file.size)\n\n const { root, deleteIcon, buttonDelete, content, buttonRoot, ...restClasses } = classes || {}\n\n return (\n <li key={file.name} className={cn('flex h-6 items-center justify-between p-1', root)}>\n <div className={cn('flex items-center gap-2', content)}>\n {filesStatus[file.name] === 'loading' && <Loader size='sm' />}\n {filesStatus[file.name] === 'success' && <Icon name='general/check' className='text-icon-positive-default' />}\n <UploaderFilename file={file} classes={restClasses} />\n </div>\n <div className={cn('flex items-center gap-2', buttonRoot)}>\n <p className='desk-body-regular-m text-color-blue-grey-600'>{`${fileSizeMb.toFixed(1)} MB`}</p>\n <button className={cn('cursor-pointer', buttonDelete)} onClick={() => removeFile(index)}>\n <Icon name='general/close' className={cn('text-icon-blue-grey-600', deleteIcon)} />\n </button>\n </div>\n </li>\n )\n}\n"],"names":["UploaderFile","filesStatus","removeFile","classes","file","index","fileSizeMb","bytesToMegabytes","root","deleteIcon","buttonDelete","content","buttonRoot","restClasses","cn","jsxs","jsx","Loader","Icon","UploaderFilename"],"mappings":"w8CAuBO,MAAMA,GAAe,CAAC,CAAE,YAAAC,EAAa,WAAAC,EAAY,QAAAC,EAAS,KAAAC,EAAM,MAAAC,KAA+B,CACpG,MAAMC,EAAaC,EAAiBH,EAAK,IAAI,EAEvC,CAAE,KAAAI,EAAM,WAAAC,EAAY,aAAAC,EAAc,QAAAC,EAAS,WAAAC,EAAY,GAAGC,GAAgBV,GAAW,CAAA,EAE3F,SACG,KAAA,CAAmB,UAAWW,EAAG,4CAA6CN,CAAI,EACjF,SAAA,CAAAO,EAAC,MAAA,CAAI,UAAWD,EAAG,0BAA2BH,CAAO,EAClD,SAAA,CAAAV,EAAYG,EAAK,IAAI,IAAM,WAAaY,EAACC,EAAA,CAAO,KAAK,KAAK,EAC1DhB,EAAYG,EAAK,IAAI,IAAM,aAAcc,EAAA,CAAK,KAAK,gBAAgB,UAAU,4BAAA,CAA6B,EAC3GF,EAACG,EAAA,CAAiB,KAAAf,EAAY,QAASS,CAAA,CAAa,CAAA,EACtD,IACC,MAAA,CAAI,UAAWC,EAAG,0BAA2BF,CAAU,EACtD,SAAA,CAAAI,EAAC,IAAA,CAAE,UAAU,+CAAgD,SAAA,GAAGV,EAAW,QAAQ,CAAC,CAAC,KAAA,CAAM,EAC3FU,EAAC,UAAO,UAAWF,EAAG,iBAAkBJ,CAAY,EAAG,QAAS,IAAMR,EAAWG,CAAK,EACpF,SAAAW,EAACE,GAAK,KAAK,gBAAgB,UAAWJ,EAAG,0BAA2BL,CAAU,CAAA,CAAG,CAAA,CACnF,CAAA,CAAA,CACF,CAAA,CAAA,EAXOL,EAAK,IAYd,CAEJ"}
@@ -1,2 +1,2 @@
1
- import{jsx as r}from"react/jsx-runtime";import{useRef as n}from"react";import{useOverflow as l}from"../../../../../hooks/useOverflow.js";import{cn as i}from"../../../../../utils/cn.js";import"../../../../button/Button.js";import"../../../../buttonIcon/ButtonIcon.js";import"../../../../calendar/Calendar.js";import"../../../../calendar/model/utils.js";import"../../../../accordion/Accordion.js";import{Hint as a}from"../../../../hint/Hint.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"../../autocomplete/Autocomplete.js";import"../../checkbox/Checkbox.js";import"../../combobox/combobox.js";import"../../dayPicker/DayPicker.js";import"../../input/Input.js";import"../../inputOtp/InputOtpBase.js";import"../../maskInput/MaskInput.js";import"../../radio/RadioGroup.js";import"../../radio/ui/RadioItem.js";import"../../slider/SliderBase.js";import"../../switch/Switch.js";import"../../textarea/Textarea.js";import"../UploaderBase.js";import"../../../controlled/editor/ui/Editor.js";import"../../../controlled/input/MaskInputControl.js";import"../../../../dropdownList/ui/dropdownItem/DropdownItem.js";const L=({file:o,classes:p})=>{const t=n(null),e=l(t),{fileText:m}=p||{};return r("div",{className:"w-[300px]",children:e?r(a,{triggerElement:r("p",{className:i("desk-body-regular-m truncate text-color-dark",m),children:o.name}),children:o.name}):r("p",{ref:t,className:i("desk-body-regular-m text-nowrap text-color-dark",m),children:o.name})})};export{L as UploaderFilename};
1
+ import{jsx as r}from"react/jsx-runtime";import{useRef as n}from"react";import{useOverflow as l}from"../../../../../hooks/useOverflow.js";import{cn as i}from"../../../../../utils/cn.js";import"../../../../button/Button.js";import"../../../../buttonIcon/ButtonIcon.js";import"../../../../calendar/Calendar.js";import"../../../../calendar/model/utils.js";import"../../../../accordion/Accordion.js";import{Hint as a}from"../../../../hint/Hint.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"../../autocomplete/Autocomplete.js";import"../../checkbox/Checkbox.js";import"../../combobox/combobox.js";import"../../dayPicker/DayPicker.js";import"../../input/Input.js";import"../../inputOtp/InputOtpBase.js";import"../../maskInput/MaskInput.js";import"../../radio/RadioGroup.js";import"../../radio/ui/RadioItem.js";import"../../slider/SliderBase.js";import"../../switch/Switch.js";import"../../textarea/Textarea.js";import"../UploaderBase.js";import"../../inputCurrency/InputCurrency.js";import"../../../controlled/editor/ui/Editor.js";import"../../../controlled/input/MaskInputControl.js";import"../../../../dropdownList/ui/dropdownItem/DropdownItem.js";const M=({file:o,classes:p})=>{const t=n(null),e=l(t),{fileText:m}=p||{};return r("div",{className:"w-[300px]",children:e?r(a,{triggerElement:r("p",{className:i("desk-body-regular-m truncate text-color-dark",m),children:o.name}),children:o.name}):r("p",{ref:t,className:i("desk-body-regular-m text-nowrap text-color-dark",m),children:o.name})})};export{M as UploaderFilename};
2
2
  //# sourceMappingURL=UploaderFilename.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UploaderFilename.js","sources":["../../../../../../../../lib/shared/ui/formElements/uncontrolled/uploader/ui/UploaderFilename.tsx"],"sourcesContent":["import { useRef } from 'react'\nimport { useOverflow } from '$/shared/hooks/useOverflow'\nimport { Hint } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type UploaderFileNameClasses = {\n fileText?: string\n}\n\ninterface UploaderFilenameProps {\n file: File\n classes?: UploaderFileNameClasses\n}\n\nexport const UploaderFilename = ({ file, classes }: UploaderFilenameProps) => {\n const fileRef = useRef<HTMLParagraphElement>(null)\n const isOverflow = useOverflow(fileRef)\n\n const { fileText } = classes || {}\n\n return (\n <div className='w-[300px]'>\n {isOverflow ? (\n <Hint triggerElement={<p className={cn('desk-body-regular-m truncate text-color-dark', fileText)}>{file.name}</p>}>\n {file.name}\n </Hint>\n ) : (\n <p ref={fileRef} className={cn('desk-body-regular-m text-nowrap text-color-dark', fileText)}>\n {file.name}\n </p>\n )}\n </div>\n )\n}\n"],"names":["UploaderFilename","file","classes","fileRef","useRef","isOverflow","useOverflow","fileText","jsx","Hint","cn"],"mappings":"8zCAcO,MAAMA,EAAmB,CAAC,CAAE,KAAAC,EAAM,QAAAC,KAAqC,CAC5E,MAAMC,EAAUC,EAA6B,IAAI,EAC3CC,EAAaC,EAAYH,CAAO,EAEhC,CAAE,SAAAI,GAAaL,GAAW,CAAA,EAEhC,OACEM,EAAC,MAAA,CAAI,UAAU,YACZ,WACCA,EAACC,EAAA,CAAK,eAAgBD,EAAC,IAAA,CAAE,UAAWE,EAAG,+CAAgDH,CAAQ,EAAI,SAAAN,EAAK,KAAK,EAC1G,SAAAA,EAAK,IAAA,CACR,EAEAO,EAAC,KAAE,IAAKL,EAAS,UAAWO,EAAG,kDAAmDH,CAAQ,EACvF,SAAAN,EAAK,KACR,EAEJ,CAEJ"}
1
+ {"version":3,"file":"UploaderFilename.js","sources":["../../../../../../../../lib/shared/ui/formElements/uncontrolled/uploader/ui/UploaderFilename.tsx"],"sourcesContent":["import { useRef } from 'react'\nimport { useOverflow } from '$/shared/hooks/useOverflow'\nimport { Hint } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type UploaderFileNameClasses = {\n fileText?: string\n}\n\ninterface UploaderFilenameProps {\n file: File\n classes?: UploaderFileNameClasses\n}\n\nexport const UploaderFilename = ({ file, classes }: UploaderFilenameProps) => {\n const fileRef = useRef<HTMLParagraphElement>(null)\n const isOverflow = useOverflow(fileRef)\n\n const { fileText } = classes || {}\n\n return (\n <div className='w-[300px]'>\n {isOverflow ? (\n <Hint triggerElement={<p className={cn('desk-body-regular-m truncate text-color-dark', fileText)}>{file.name}</p>}>\n {file.name}\n </Hint>\n ) : (\n <p ref={fileRef} className={cn('desk-body-regular-m text-nowrap text-color-dark', fileText)}>\n {file.name}\n </p>\n )}\n </div>\n )\n}\n"],"names":["UploaderFilename","file","classes","fileRef","useRef","isOverflow","useOverflow","fileText","jsx","Hint","cn"],"mappings":"22CAcO,MAAMA,EAAmB,CAAC,CAAE,KAAAC,EAAM,QAAAC,KAAqC,CAC5E,MAAMC,EAAUC,EAA6B,IAAI,EAC3CC,EAAaC,EAAYH,CAAO,EAEhC,CAAE,SAAAI,GAAaL,GAAW,CAAA,EAEhC,OACEM,EAAC,MAAA,CAAI,UAAU,YACZ,WACCA,EAACC,EAAA,CAAK,eAAgBD,EAAC,IAAA,CAAE,UAAWE,EAAG,+CAAgDH,CAAQ,EAAI,SAAAN,EAAK,KAAK,EAC1G,SAAAA,EAAK,IAAA,CACR,EAEAO,EAAC,KAAE,IAAKL,EAAS,UAAWO,EAAG,kDAAmDH,CAAQ,EACvF,SAAAN,EAAK,KACR,EAEJ,CAEJ"}
@@ -1,2 +1,2 @@
1
- import{ResponsiveContainer as t}from"./responsiveContainer/ResponsiveContainer.js";import{Button as a}from"./button/Button.js";import{buttonPrimitiveIntent as p,buttonPrimitiveSize as x,buttonPrimitiveTextFormat as f,buttonPrimitiveType as n}from"./button/model/helpers.js";import{ButtonIcon as l}from"./buttonIcon/ButtonIcon.js";import{PhoneView as s}from"./phoneView/PhoneView.js";import{Badge as u}from"./badge/Badge.js";import{Loader as T}from"./loader/Loader.js";import{Skeleton as I}from"./skeleton/Skeleton.js";import{FloatButton as S}from"./floatButton/FloatButton.js";import{Calendar as P}from"./calendar/Calendar.js";import{DATE_VISIBLE_PATTERN as y,defaultClassNames as v,formatDateToLocaleString as k,formatDateToMonthString as R,formatDateToYearString as h}from"./calendar/model/utils.js";import{Accordion as A}from"./accordion/Accordion.js";import{Hint as E}from"./hint/Hint.js";import{Popover as F}from"./popover/Popover.js";import{ProgressBar as M}from"./progressBar/ProgressBar.js";import{TabsSwitcher as O}from"./tabSwitcher/TabsSwitcher.js";import{Modal as z}from"./modal/Modal.js";import{Notification as _}from"./notification/Notification.js";import{Table as Y,TableBody as j,TableCaption as q,TableCell as J,TableFooter as Q,TableHead as W,TableHeader as X,TableRow as Z}from"./table/ui/primitives/Primitives.js";import{DataTableColumnHeader as oo}from"./table/ui/dataTableColumnHeader/DataTableColumnHeader.js";import{EditableCell as to}from"./table/ui/editableCell/EditableCell.js";import{DataTable as ao}from"./table/Table.js";import{TableUtils as po}from"./table/model/TableUtils.js";import{Pagination as fo}from"./pagination/Pagination.js";import{CarouselBase as io}from"./carousel/CarouselBase.js";import{ArrowNavigationButton as so}from"./carousel/ui/ArrowNavigationButton.js";import{CarouselSlide as uo}from"./carousel/ui/CarouselSlide.js";import{DotsNavigations as To}from"./carousel/ui/DotsNavigations.js";import{SlideProductCard as Io}from"./carousel/ui/slideVariants/SlideProductCard.js";import{SlideOnlyImage as So}from"./carousel/ui/slideVariants/SlideOnlyImage.js";import{SlideFullScreen as Po}from"./carousel/ui/slideVariants/SlideFullScreen.js";import{CarouselContent as yo}from"./carousel/ui/CarouselContent.js";import{Dialog as ko}from"./dialog/Dialog.js";import{NotificationProvider as ho}from"./providers/NotificationProvider.js";import{Heading as Ao}from"./heading/Heading.js";import{Icon as Eo}from"./icon/Icon.js";import{allowedIcons as Fo}from"./icon/allowedIcons.js";import{brandLogos as Mo}from"./brandLogos/BrandLogos.js";import{CustomLink as Oo}from"./customLink/CustomLink.js";import{linkPrimitiveIconIntent as zo,linkPrimitiveIntent as Vo,linkPrimitiveSize as _o}from"./customLink/model/helpers.js";import{KeyboardShortcuts as Yo}from"./keyboardShortcuts/KeyboardShortcuts.js";import{Slot as qo}from"./slot/Slot.js";import{AutocompleteBase as Qo}from"./formElements/uncontrolled/autocomplete/Autocomplete.js";import{CheckboxBase as Xo}from"./formElements/uncontrolled/checkbox/Checkbox.js";import{Combobox as $o}from"./formElements/uncontrolled/combobox/combobox.js";import{DayPickerBase as rr}from"./formElements/uncontrolled/dayPicker/DayPicker.js";import{InputBase as er}from"./formElements/uncontrolled/input/Input.js";import{InputOtpBase as mr}from"./formElements/uncontrolled/inputOtp/InputOtpBase.js";import{MaskInput as xr}from"./formElements/uncontrolled/maskInput/MaskInput.js";import{RadioGroupBase as nr}from"./formElements/uncontrolled/radio/RadioGroup.js";import{RadioItem as lr}from"./formElements/uncontrolled/radio/ui/RadioItem.js";import{RadioItemCard as sr}from"./formElements/uncontrolled/radio/ui/RadioItemCard.js";import{RadioItemTab as ur}from"./formElements/uncontrolled/radio/ui/RadioItemTab.js";import{SliderBase as Tr}from"./formElements/uncontrolled/slider/SliderBase.js";import{SwitchBase as Ir}from"./formElements/uncontrolled/switch/Switch.js";import{TextareaBase as Sr}from"./formElements/uncontrolled/textarea/Textarea.js";import{UploaderBase as Pr}from"./formElements/uncontrolled/uploader/UploaderBase.js";import{bytesToMegabytes as yr,megabytesToBytes as vr}from"./formElements/uncontrolled/uploader/model/helpers.js";import{Uncontrolled as Rr}from"./formElements/uncontrolled/index.js";import{AutocompleteControl as wr}from"./formElements/controlled/autocomplete/Autocomplete.js";import{CheckboxControl as Lr}from"./formElements/controlled/checkbox/CheckboxControl.js";import{DadataOrganization as Nr}from"./formElements/controlled/dadata/party/DadataOrganization.js";import{DadataAddress as Hr}from"./formElements/controlled/dadata/address/DadataAddress.js";import{DadataAuto as Gr}from"./formElements/controlled/dadata/auto/DadataAuto.js";import{DadataCountry as Ur}from"./formElements/controlled/dadata/country/DadataCountry.js";import{DadataFio as Vr}from"./formElements/controlled/dadata/fio/DadataFio.js";import{DayPickerControl as Kr}from"./formElements/controlled/dayPickerControl/dayPickerControl.js";import{EditorControl as jr}from"./formElements/controlled/editor/EditorControl.js";import{InputControl as Jr}from"./formElements/controlled/input/InputControl.js";import{MaskInputControl as Wr}from"./formElements/controlled/input/MaskInputControl.js";import{InputCurrencyControl as Zr}from"./formElements/controlled/inputCurrency/InputCurrencyControl.js";import{InputOtpControl as ot}from"./formElements/controlled/inputOtp/InputOtpControl.js";import{RadioGroupControl as tt}from"./formElements/controlled/radio/RadioGroupControl.js";import{RadioGroupTabControl as at}from"./formElements/controlled/radio/RadioGroupTabControl.js";import{RadioGroupCardControl as pt}from"./formElements/controlled/radio/RadioGroupCardControl.js";import{SliderControl as ft}from"./formElements/controlled/slider/SliderControl.js";import{SwitchControl as it}from"./formElements/controlled/switch/SwitchControl.js";import{TextareaControl as dt}from"./formElements/controlled/textarea/TextareaControl.js";import{UploaderControl as Ct}from"./formElements/controlled/uploader/UploaderControl.js";import{ComboboxControl as bt}from"./formElements/controlled/combobox/ComboboxControl.js";import{Controlled as ct}from"./formElements/controlled/index.js";import{Chips as Bt}from"./chips/Chips.js";import{DropdownItem as Dt}from"./dropdownList/ui/dropdownItem/DropdownItem.js";import{EmptyList as gt}from"./dropdownList/ui/Empty.js";import{DropdownList as vt}from"./dropdownList/DropdownList.js";import{Portal as Rt}from"./portal/Portal.js";export{A as Accordion,so as ArrowNavigationButton,Qo as AutocompleteBase,wr as AutocompleteControl,u as Badge,a as Button,l as ButtonIcon,P as Calendar,io as CarouselBase,yo as CarouselContent,uo as CarouselSlide,Xo as CheckboxBase,Lr as CheckboxControl,Bt as Chips,$o as Combobox,bt as ComboboxControl,ct as Controlled,Oo as CustomLink,y as DATE_VISIBLE_PATTERN,Hr as DadataAddress,Gr as DadataAuto,Ur as DadataCountry,Vr as DadataFio,Nr as DadataOrganization,ao as DataTable,oo as DataTableColumnHeader,rr as DayPickerBase,Kr as DayPickerControl,ko as Dialog,To as DotsNavigations,Dt as DropdownItem,vt as DropdownList,to as EditableCell,jr as EditorControl,gt as EmptyList,S as FloatButton,Ao as Heading,E as Hint,Eo as Icon,er as InputBase,Jr as InputControl,Zr as InputCurrencyControl,mr as InputOtpBase,ot as InputOtpControl,Yo as KeyboardShortcuts,T as Loader,xr as MaskInput,Wr as MaskInputControl,z as Modal,_ as Notification,ho as NotificationProvider,fo as Pagination,s as PhoneView,F as Popover,Rt as Portal,M as ProgressBar,nr as RadioGroupBase,pt as RadioGroupCardControl,tt as RadioGroupControl,at as RadioGroupTabControl,lr as RadioItem,sr as RadioItemCard,ur as RadioItemTab,t as ResponsiveContainer,I as Skeleton,Po as SlideFullScreen,So as SlideOnlyImage,Io as SlideProductCard,Tr as SliderBase,ft as SliderControl,qo as Slot,Ir as SwitchBase,it as SwitchControl,Y as Table,j as TableBody,q as TableCaption,J as TableCell,Q as TableFooter,W as TableHead,X as TableHeader,Z as TableRow,po as TableUtils,O as TabsSwitcher,Sr as TextareaBase,dt as TextareaControl,Rr as Uncontrolled,Pr as UploaderBase,Ct as UploaderControl,Fo as allowedIcons,Mo as brandLogos,p as buttonPrimitiveIntent,x as buttonPrimitiveSize,f as buttonPrimitiveTextFormat,n as buttonPrimitiveType,yr as bytesToMegabytes,v as defaultClassNames,k as formatDateToLocaleString,R as formatDateToMonthString,h as formatDateToYearString,zo as linkPrimitiveIconIntent,Vo as linkPrimitiveIntent,_o as linkPrimitiveSize,vr as megabytesToBytes};
1
+ import{ResponsiveContainer as t}from"./responsiveContainer/ResponsiveContainer.js";import{Button as p}from"./button/Button.js";import{buttonPrimitiveIntent as a,buttonPrimitiveSize as x,buttonPrimitiveTextFormat as f,buttonPrimitiveType as n}from"./button/model/helpers.js";import{ButtonIcon as l}from"./buttonIcon/ButtonIcon.js";import{PhoneView as s}from"./phoneView/PhoneView.js";import{Badge as u}from"./badge/Badge.js";import{Loader as T}from"./loader/Loader.js";import{Skeleton as I}from"./skeleton/Skeleton.js";import{FloatButton as S}from"./floatButton/FloatButton.js";import{Calendar as P}from"./calendar/Calendar.js";import{DATE_VISIBLE_PATTERN as y,defaultClassNames as v,formatDateToLocaleString as k,formatDateToMonthString as R,formatDateToYearString as h}from"./calendar/model/utils.js";import{Accordion as A}from"./accordion/Accordion.js";import{Hint as E}from"./hint/Hint.js";import{Popover as F}from"./popover/Popover.js";import{ProgressBar as M}from"./progressBar/ProgressBar.js";import{TabsSwitcher as O}from"./tabSwitcher/TabsSwitcher.js";import{Modal as z}from"./modal/Modal.js";import{Notification as _}from"./notification/Notification.js";import{Table as Y,TableBody as j,TableCaption as q,TableCell as J,TableFooter as Q,TableHead as W,TableHeader as X,TableRow as Z}from"./table/ui/primitives/Primitives.js";import{DataTableColumnHeader as oo}from"./table/ui/dataTableColumnHeader/DataTableColumnHeader.js";import{EditableCell as to}from"./table/ui/editableCell/EditableCell.js";import{DataTable as po}from"./table/Table.js";import{TableUtils as ao}from"./table/model/TableUtils.js";import{Pagination as fo}from"./pagination/Pagination.js";import{CarouselBase as io}from"./carousel/CarouselBase.js";import{ArrowNavigationButton as so}from"./carousel/ui/ArrowNavigationButton.js";import{CarouselSlide as uo}from"./carousel/ui/CarouselSlide.js";import{DotsNavigations as To}from"./carousel/ui/DotsNavigations.js";import{SlideProductCard as Io}from"./carousel/ui/slideVariants/SlideProductCard.js";import{SlideOnlyImage as So}from"./carousel/ui/slideVariants/SlideOnlyImage.js";import{SlideFullScreen as Po}from"./carousel/ui/slideVariants/SlideFullScreen.js";import{CarouselContent as yo}from"./carousel/ui/CarouselContent.js";import{Dialog as ko}from"./dialog/Dialog.js";import{NotificationProvider as ho}from"./providers/NotificationProvider.js";import{Heading as Ao}from"./heading/Heading.js";import{Icon as Eo}from"./icon/Icon.js";import{allowedIcons as Fo}from"./icon/allowedIcons.js";import{brandLogos as Mo}from"./brandLogos/BrandLogos.js";import{CustomLink as Oo}from"./customLink/CustomLink.js";import{linkPrimitiveIconIntent as zo,linkPrimitiveIntent as Vo,linkPrimitiveSize as _o}from"./customLink/model/helpers.js";import{KeyboardShortcuts as Yo}from"./keyboardShortcuts/KeyboardShortcuts.js";import{Slot as qo}from"./slot/Slot.js";import{AutocompleteBase as Qo}from"./formElements/uncontrolled/autocomplete/Autocomplete.js";import{CheckboxBase as Xo}from"./formElements/uncontrolled/checkbox/Checkbox.js";import{Combobox as $o}from"./formElements/uncontrolled/combobox/combobox.js";import{DayPickerBase as rr}from"./formElements/uncontrolled/dayPicker/DayPicker.js";import{InputBase as er}from"./formElements/uncontrolled/input/Input.js";import{InputOtpBase as mr}from"./formElements/uncontrolled/inputOtp/InputOtpBase.js";import{MaskInput as xr}from"./formElements/uncontrolled/maskInput/MaskInput.js";import{RadioGroupBase as nr}from"./formElements/uncontrolled/radio/RadioGroup.js";import{RadioItem as lr}from"./formElements/uncontrolled/radio/ui/RadioItem.js";import{RadioItemCard as sr}from"./formElements/uncontrolled/radio/ui/RadioItemCard.js";import{RadioItemTab as ur}from"./formElements/uncontrolled/radio/ui/RadioItemTab.js";import{SliderBase as Tr}from"./formElements/uncontrolled/slider/SliderBase.js";import{SwitchBase as Ir}from"./formElements/uncontrolled/switch/Switch.js";import{TextareaBase as Sr}from"./formElements/uncontrolled/textarea/Textarea.js";import{UploaderBase as Pr}from"./formElements/uncontrolled/uploader/UploaderBase.js";import{bytesToMegabytes as yr,megabytesToBytes as vr}from"./formElements/uncontrolled/uploader/model/helpers.js";import{InputCurrencyBase as Rr}from"./formElements/uncontrolled/inputCurrency/InputCurrency.js";import{Uncontrolled as wr}from"./formElements/uncontrolled/index.js";import{AutocompleteControl as Lr}from"./formElements/controlled/autocomplete/Autocomplete.js";import{CheckboxControl as Nr}from"./formElements/controlled/checkbox/CheckboxControl.js";import{DadataOrganization as Hr}from"./formElements/controlled/dadata/party/DadataOrganization.js";import{DadataAddress as Gr}from"./formElements/controlled/dadata/address/DadataAddress.js";import{DadataAuto as Ur}from"./formElements/controlled/dadata/auto/DadataAuto.js";import{DadataCountry as Vr}from"./formElements/controlled/dadata/country/DadataCountry.js";import{DadataFio as Kr}from"./formElements/controlled/dadata/fio/DadataFio.js";import{DayPickerControl as jr}from"./formElements/controlled/dayPickerControl/dayPickerControl.js";import{EditorControl as Jr}from"./formElements/controlled/editor/EditorControl.js";import{InputControl as Wr}from"./formElements/controlled/input/InputControl.js";import{MaskInputControl as Zr}from"./formElements/controlled/input/MaskInputControl.js";import{InputCurrencyControl as ot}from"./formElements/controlled/inputCurrency/InputCurrencyControl.js";import{InputOtpControl as tt}from"./formElements/controlled/inputOtp/InputOtpControl.js";import{RadioGroupControl as pt}from"./formElements/controlled/radio/RadioGroupControl.js";import{RadioGroupTabControl as at}from"./formElements/controlled/radio/RadioGroupTabControl.js";import{RadioGroupCardControl as ft}from"./formElements/controlled/radio/RadioGroupCardControl.js";import{SliderControl as it}from"./formElements/controlled/slider/SliderControl.js";import{SwitchControl as dt}from"./formElements/controlled/switch/SwitchControl.js";import{TextareaControl as Ct}from"./formElements/controlled/textarea/TextareaControl.js";import{UploaderControl as bt}from"./formElements/controlled/uploader/UploaderControl.js";import{ComboboxControl as ct}from"./formElements/controlled/combobox/ComboboxControl.js";import{Controlled as Bt}from"./formElements/controlled/index.js";import{Chips as Dt}from"./chips/Chips.js";import{DropdownItem as gt}from"./dropdownList/ui/dropdownItem/DropdownItem.js";import{EmptyList as vt}from"./dropdownList/ui/Empty.js";import{DropdownList as Rt}from"./dropdownList/DropdownList.js";import{Portal as wt}from"./portal/Portal.js";import{Divider as Lt}from"./divider/Divider.js";export{A as Accordion,so as ArrowNavigationButton,Qo as AutocompleteBase,Lr as AutocompleteControl,u as Badge,p as Button,l as ButtonIcon,P as Calendar,io as CarouselBase,yo as CarouselContent,uo as CarouselSlide,Xo as CheckboxBase,Nr as CheckboxControl,Dt as Chips,$o as Combobox,ct as ComboboxControl,Bt as Controlled,Oo as CustomLink,y as DATE_VISIBLE_PATTERN,Gr as DadataAddress,Ur as DadataAuto,Vr as DadataCountry,Kr as DadataFio,Hr as DadataOrganization,po as DataTable,oo as DataTableColumnHeader,rr as DayPickerBase,jr as DayPickerControl,ko as Dialog,Lt as Divider,To as DotsNavigations,gt as DropdownItem,Rt as DropdownList,to as EditableCell,Jr as EditorControl,vt as EmptyList,S as FloatButton,Ao as Heading,E as Hint,Eo as Icon,er as InputBase,Wr as InputControl,Rr as InputCurrencyBase,ot as InputCurrencyControl,mr as InputOtpBase,tt as InputOtpControl,Yo as KeyboardShortcuts,T as Loader,xr as MaskInput,Zr as MaskInputControl,z as Modal,_ as Notification,ho as NotificationProvider,fo as Pagination,s as PhoneView,F as Popover,wt as Portal,M as ProgressBar,nr as RadioGroupBase,ft as RadioGroupCardControl,pt as RadioGroupControl,at as RadioGroupTabControl,lr as RadioItem,sr as RadioItemCard,ur as RadioItemTab,t as ResponsiveContainer,I as Skeleton,Po as SlideFullScreen,So as SlideOnlyImage,Io as SlideProductCard,Tr as SliderBase,it as SliderControl,qo as Slot,Ir as SwitchBase,dt as SwitchControl,Y as Table,j as TableBody,q as TableCaption,J as TableCell,Q as TableFooter,W as TableHead,X as TableHeader,Z as TableRow,ao as TableUtils,O as TabsSwitcher,Sr as TextareaBase,Ct as TextareaControl,wr as Uncontrolled,Pr as UploaderBase,bt as UploaderControl,Fo as allowedIcons,Mo as brandLogos,a as buttonPrimitiveIntent,x as buttonPrimitiveSize,f as buttonPrimitiveTextFormat,n as buttonPrimitiveType,yr as bytesToMegabytes,v as defaultClassNames,k as formatDateToLocaleString,R as formatDateToMonthString,h as formatDateToYearString,zo as linkPrimitiveIconIntent,Vo as linkPrimitiveIntent,_o as linkPrimitiveSize,vr as megabytesToBytes};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,2 +1,2 @@
1
- import{jsxs as p,jsx as i}from"react/jsx-runtime";import{cn as o}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"./IframeModalContent.js";import"../../../../../node_modules/react-hot-toast/dist/index.js";import{Icon as n}from"../../icon/Icon.js";import"../../table/ui/primitives/Primitives.js";import{Heading as e}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"../../formElements/uncontrolled/combobox/combobox.js";import"../../formElements/uncontrolled/dayPicker/DayPicker.js";import"../../formElements/uncontrolled/input/Input.js";import"../../formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../../formElements/uncontrolled/maskInput/MaskInput.js";import"../../formElements/uncontrolled/radio/RadioGroup.js";import"../../formElements/uncontrolled/radio/ui/RadioItem.js";import"../../formElements/uncontrolled/slider/SliderBase.js";import"../../formElements/uncontrolled/switch/Switch.js";import"../../formElements/uncontrolled/textarea/Textarea.js";import"../../formElements/uncontrolled/uploader/UploaderBase.js";import"../../formElements/controlled/editor/ui/Editor.js";import"../../formElements/controlled/input/MaskInputControl.js";import"../../dropdownList/ui/dropdownItem/DropdownItem.js";const Q=({title:t,closeModal:m,classes:r})=>p("div",{className:o("flex items-start justify-between gap-4",r==null?void 0:r.header),children:[t&&i(e,{as:"h3",className:o("flex-1 text-color-dark",r==null?void 0:r.title),children:t}),i(n,{onClick:m,name:"general/close",className:o("ml-auto size-6 cursor-pointer text-icon-dark-hover",r==null?void 0:r.icon)})]});export{Q as ModalHeader};
1
+ import{jsxs as p,jsx as i}from"react/jsx-runtime";import{cn as o}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"./IframeModalContent.js";import"../../../../../node_modules/react-hot-toast/dist/index.js";import{Icon as n}from"../../icon/Icon.js";import"../../table/ui/primitives/Primitives.js";import{Heading as e}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"../../formElements/uncontrolled/combobox/combobox.js";import"../../formElements/uncontrolled/dayPicker/DayPicker.js";import"../../formElements/uncontrolled/input/Input.js";import"../../formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../../formElements/uncontrolled/maskInput/MaskInput.js";import"../../formElements/uncontrolled/radio/RadioGroup.js";import"../../formElements/uncontrolled/radio/ui/RadioItem.js";import"../../formElements/uncontrolled/slider/SliderBase.js";import"../../formElements/uncontrolled/switch/Switch.js";import"../../formElements/uncontrolled/textarea/Textarea.js";import"../../formElements/uncontrolled/uploader/UploaderBase.js";import"../../formElements/uncontrolled/inputCurrency/InputCurrency.js";import"../../formElements/controlled/editor/ui/Editor.js";import"../../formElements/controlled/input/MaskInputControl.js";import"../../dropdownList/ui/dropdownItem/DropdownItem.js";const R=({title:t,closeModal:m,classes:r})=>p("div",{className:o("flex items-start justify-between gap-4",r==null?void 0:r.header),children:[t&&i(e,{as:"h3",className:o("flex-1 text-color-dark",r==null?void 0:r.title),children:t}),i(n,{onClick:m,name:"general/close",className:o("ml-auto size-6 cursor-pointer text-icon-dark-hover",r==null?void 0:r.icon)})]});export{R as ModalHeader};
2
2
  //# sourceMappingURL=ModalHeader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ModalHeader.js","sources":["../../../../../../lib/shared/ui/modal/ui/ModalHeader.tsx"],"sourcesContent":["import type { ModalProps } from '../Modal'\nimport { Heading, Icon } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TModalHeaderClasses = {\n header?: string\n title?: string\n icon?: string\n}\n\nexport interface IModalHeaderProps extends Pick<ModalProps, 'closeModal' | 'title'> {\n classes?: TModalHeaderClasses\n}\n\nexport const ModalHeader = ({ title, closeModal, classes }: IModalHeaderProps) => {\n return (\n <div className={cn('flex items-start justify-between gap-4', classes?.header)}>\n {title && (\n <Heading as='h3' className={cn('flex-1 text-color-dark', classes?.title)}>\n {title}\n </Heading>\n )}\n <Icon\n onClick={closeModal}\n name='general/close'\n className={cn('ml-auto size-6 cursor-pointer text-icon-dark-hover', classes?.icon)}\n />\n </div>\n )\n}\n"],"names":["ModalHeader","title","closeModal","classes","cn","jsx","Heading","Icon"],"mappings":"+jDAcO,MAAMA,EAAc,CAAC,CAAE,MAAAC,EAAO,WAAAC,EAAY,QAAAC,OAE5C,MAAA,CAAI,UAAWC,EAAG,yCAA0CD,GAAA,YAAAA,EAAS,MAAM,EACzE,SAAA,CAAAF,GACCI,EAACC,EAAA,CAAQ,GAAG,KAAK,UAAWF,EAAG,yBAA0BD,GAAA,YAAAA,EAAS,KAAK,EACpE,SAAAF,CAAA,CACH,EAEFI,EAACE,EAAA,CACC,QAASL,EACT,KAAK,gBACL,UAAWE,EAAG,qDAAsDD,GAAA,YAAAA,EAAS,IAAI,CAAA,CAAA,CACnF,EACF"}
1
+ {"version":3,"file":"ModalHeader.js","sources":["../../../../../../lib/shared/ui/modal/ui/ModalHeader.tsx"],"sourcesContent":["import type { ModalProps } from '../Modal'\nimport { Heading, Icon } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TModalHeaderClasses = {\n header?: string\n title?: string\n icon?: string\n}\n\nexport interface IModalHeaderProps extends Pick<ModalProps, 'closeModal' | 'title'> {\n classes?: TModalHeaderClasses\n}\n\nexport const ModalHeader = ({ title, closeModal, classes }: IModalHeaderProps) => {\n return (\n <div className={cn('flex items-start justify-between gap-4', classes?.header)}>\n {title && (\n <Heading as='h3' className={cn('flex-1 text-color-dark', classes?.title)}>\n {title}\n </Heading>\n )}\n <Icon\n onClick={closeModal}\n name='general/close'\n className={cn('ml-auto size-6 cursor-pointer text-icon-dark-hover', classes?.icon)}\n />\n </div>\n )\n}\n"],"names":["ModalHeader","title","closeModal","classes","cn","jsx","Heading","Icon"],"mappings":"soDAcO,MAAMA,EAAc,CAAC,CAAE,MAAAC,EAAO,WAAAC,EAAY,QAAAC,OAE5C,MAAA,CAAI,UAAWC,EAAG,yCAA0CD,GAAA,YAAAA,EAAS,MAAM,EACzE,SAAA,CAAAF,GACCI,EAACC,EAAA,CAAQ,GAAG,KAAK,UAAWF,EAAG,yBAA0BD,GAAA,YAAAA,EAAS,KAAK,EACpE,SAAAF,CAAA,CACH,EAEFI,EAACE,EAAA,CACC,QAASL,EACT,KAAK,gBACL,UAAWE,EAAG,qDAAsDD,GAAA,YAAAA,EAAS,IAAI,CAAA,CAAA,CACnF,EACF"}
@@ -1,2 +1,2 @@
1
- import{jsxs as i,jsx as o}from"react/jsx-runtime";import{Root as b,Trigger as N,Portal as y,Content as c,Close as j,Arrow as C}from"../../../../node_modules/@radix-ui/react-popover/dist/index.js";import{cn as t}from"../../utils/cn.js";import"../button/Button.js";import"../buttonIcon/ButtonIcon.js";import"../calendar/Calendar.js";import"../calendar/model/utils.js";import"../accordion/Accordion.js";import"react";import"react-dom";import"../modal/ui/IframeModalContent.js";import"../../../../node_modules/react-hot-toast/dist/index.js";import{Icon as v}from"../icon/Icon.js";import"../table/ui/primitives/Primitives.js";import"../carousel/ui/CarouselContent.js";import"../slot/Slot.js";import"../formElements/uncontrolled/autocomplete/Autocomplete.js";import"../formElements/uncontrolled/checkbox/Checkbox.js";import"../formElements/uncontrolled/combobox/combobox.js";import"../formElements/uncontrolled/dayPicker/DayPicker.js";import"../formElements/uncontrolled/input/Input.js";import"../formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../formElements/uncontrolled/maskInput/MaskInput.js";import"../formElements/uncontrolled/radio/RadioGroup.js";import"../formElements/uncontrolled/radio/ui/RadioItem.js";import"../formElements/uncontrolled/slider/SliderBase.js";import"../formElements/uncontrolled/switch/Switch.js";import"../formElements/uncontrolled/textarea/Textarea.js";import"../formElements/uncontrolled/uploader/UploaderBase.js";import"../formElements/controlled/editor/ui/Editor.js";import"../formElements/controlled/input/MaskInputControl.js";import"../dropdownList/ui/dropdownItem/DropdownItem.js";const tr=({triggerElement:m,classes:r,sideOffset:e=4,alignOffset:n,align:p,side:u,defaultOpen:g=!1,avoidCollisions:d=!0,children:f,arrowPadding:h,portalContainer:x,withCloseBtn:l=!0,withArrow:w=!0,...a})=>i(b,{defaultOpen:g,children:[o("div",{className:t("flex w-max items-center gap-2",r==null?void 0:r.root),children:o(N,{"aria-label":"tooltip",className:t("flex cursor-pointer items-center justify-center",r==null?void 0:r.trigger),children:m})}),o(y,{container:x,children:i(c,{className:t("desk-body-regular-m flex w-fit max-w-64 items-start gap-2 rounded-sm bg-color-white p-4 shadow-sm outline-none",r==null?void 0:r.content),sideOffset:e,alignOffset:n,avoidCollisions:d,arrowPadding:h,align:p,side:u,...a,children:[f,l&&o(j,{"aria-label":"Close",className:t("flex size-5 items-center justify-center outline-0 outline-transparent",r==null?void 0:r.closeTrigger),children:o(v,{name:"general/close",className:t("size-5 cursor-pointer text-icon-blue-grey-600 transition-colors hover:text-icon-blue-grey-800",r==null?void 0:r.closeIcon)})}),w&&o(C,{width:12,height:6,className:t("fill-white",r==null?void 0:r.arrowIcon)})]})})]});export{tr as Popover};
1
+ import{jsxs as i,jsx as o}from"react/jsx-runtime";import{Root as b,Trigger as N,Portal as y,Content as c,Close as j,Arrow as C}from"../../../../node_modules/@radix-ui/react-popover/dist/index.js";import{cn as t}from"../../utils/cn.js";import"../button/Button.js";import"../buttonIcon/ButtonIcon.js";import"../calendar/Calendar.js";import"../calendar/model/utils.js";import"../accordion/Accordion.js";import"react";import"react-dom";import"../modal/ui/IframeModalContent.js";import"../../../../node_modules/react-hot-toast/dist/index.js";import{Icon as v}from"../icon/Icon.js";import"../table/ui/primitives/Primitives.js";import"../carousel/ui/CarouselContent.js";import"../slot/Slot.js";import"../formElements/uncontrolled/autocomplete/Autocomplete.js";import"../formElements/uncontrolled/checkbox/Checkbox.js";import"../formElements/uncontrolled/combobox/combobox.js";import"../formElements/uncontrolled/dayPicker/DayPicker.js";import"../formElements/uncontrolled/input/Input.js";import"../formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../formElements/uncontrolled/maskInput/MaskInput.js";import"../formElements/uncontrolled/radio/RadioGroup.js";import"../formElements/uncontrolled/radio/ui/RadioItem.js";import"../formElements/uncontrolled/slider/SliderBase.js";import"../formElements/uncontrolled/switch/Switch.js";import"../formElements/uncontrolled/textarea/Textarea.js";import"../formElements/uncontrolled/uploader/UploaderBase.js";import"../formElements/uncontrolled/inputCurrency/InputCurrency.js";import"../formElements/controlled/editor/ui/Editor.js";import"../formElements/controlled/input/MaskInputControl.js";import"../dropdownList/ui/dropdownItem/DropdownItem.js";const ir=({triggerElement:m,classes:r,sideOffset:e=4,alignOffset:p,align:n,side:u,defaultOpen:g=!1,avoidCollisions:d=!0,children:f,arrowPadding:h,portalContainer:x,withCloseBtn:l=!0,withArrow:w=!0,...a})=>i(b,{defaultOpen:g,children:[o("div",{className:t("flex w-max items-center gap-2",r==null?void 0:r.root),children:o(N,{"aria-label":"tooltip",className:t("flex cursor-pointer items-center justify-center",r==null?void 0:r.trigger),children:m})}),o(y,{container:x,children:i(c,{className:t("desk-body-regular-m flex w-fit max-w-64 items-start gap-2 rounded-sm bg-color-white p-4 shadow-sm outline-none",r==null?void 0:r.content),sideOffset:e,alignOffset:p,avoidCollisions:d,arrowPadding:h,align:n,side:u,...a,children:[f,l&&o(j,{"aria-label":"Close",className:t("flex size-5 items-center justify-center outline-0 outline-transparent",r==null?void 0:r.closeTrigger),children:o(v,{name:"general/close",className:t("size-5 cursor-pointer text-icon-blue-grey-600 transition-colors hover:text-icon-blue-grey-800",r==null?void 0:r.closeIcon)})}),w&&o(C,{width:12,height:6,className:t("fill-white",r==null?void 0:r.arrowIcon)})]})})]});export{ir as Popover};
2
2
  //# sourceMappingURL=Popover.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Popover.js","sources":["../../../../../lib/shared/ui/popover/Popover.tsx"],"sourcesContent":["'use client'\n\nimport type { ReactElement, ReactNode } from 'react'\nimport type { PopoverContentProps as PopoverContentPropsBase } from '@radix-ui/react-popover'\nimport * as PopoverPrimitive from '@radix-ui/react-popover'\nimport { Icon } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\ntype PopoverClasses = {\n root?: string\n content?: string\n trigger?: string\n arrowIcon?: string\n closeIcon?: string\n closeTrigger?: string\n}\n\ninterface PopoverContentProps extends PopoverContentPropsBase {\n sideOffset?: number\n alignOffset?: number\n align?: 'end' | 'center' | 'start'\n side?: 'top' | 'right' | 'bottom' | 'left'\n defaultOpen?: boolean\n avoidCollisions?: boolean\n withCloseBtn?: boolean\n withArrow?: boolean\n}\n\nexport interface PopoverProps extends PopoverContentProps {\n triggerElement: ReactElement\n children: ReactNode\n classes?: PopoverClasses\n portalContainer?: PopoverPrimitive.PopoverPortalProps['container']\n}\n\nexport const Popover = ({\n triggerElement,\n classes,\n sideOffset = 4,\n alignOffset,\n align,\n side,\n defaultOpen = false,\n avoidCollisions = true,\n children,\n arrowPadding,\n portalContainer,\n withCloseBtn = true,\n withArrow = true,\n ...contentProps\n}: PopoverProps) => {\n return (\n <PopoverPrimitive.Root defaultOpen={defaultOpen}>\n <div className={cn('flex w-max items-center gap-2', classes?.root)}>\n <PopoverPrimitive.Trigger\n aria-label='tooltip'\n className={cn('flex cursor-pointer items-center justify-center', classes?.trigger)}\n >\n {triggerElement}\n </PopoverPrimitive.Trigger>\n </div>\n <PopoverPrimitive.Portal container={portalContainer}>\n <PopoverPrimitive.Content\n className={cn(\n 'desk-body-regular-m flex w-fit max-w-64 items-start gap-2 rounded-sm bg-color-white p-4 shadow-sm outline-none',\n classes?.content\n )}\n sideOffset={sideOffset}\n alignOffset={alignOffset}\n avoidCollisions={avoidCollisions}\n arrowPadding={arrowPadding}\n align={align}\n side={side}\n {...contentProps}\n >\n {children}\n\n {withCloseBtn && (\n <PopoverPrimitive.Close\n aria-label='Close'\n className={cn('flex size-5 items-center justify-center outline-0 outline-transparent', classes?.closeTrigger)}\n >\n <Icon\n name='general/close'\n className={cn(\n 'size-5 cursor-pointer text-icon-blue-grey-600 transition-colors hover:text-icon-blue-grey-800',\n classes?.closeIcon\n )}\n />\n </PopoverPrimitive.Close>\n )}\n {withArrow && <PopoverPrimitive.Arrow width={12} height={6} className={cn('fill-white', classes?.arrowIcon)} />}\n </PopoverPrimitive.Content>\n </PopoverPrimitive.Portal>\n </PopoverPrimitive.Root>\n )\n}\n"],"names":["Popover","triggerElement","classes","sideOffset","alignOffset","align","side","defaultOpen","avoidCollisions","children","arrowPadding","portalContainer","withCloseBtn","withArrow","contentProps","jsxs","PopoverPrimitive.Root","jsx","cn","PopoverPrimitive.Trigger","PopoverPrimitive.Portal","PopoverPrimitive.Content","PopoverPrimitive.Close","Icon","PopoverPrimitive.Arrow"],"mappings":"ulDAmCO,MAAMA,GAAU,CAAC,CACtB,eAAAC,EACA,QAAAC,EACA,WAAAC,EAAa,EACb,YAAAC,EACA,MAAAC,EACA,KAAAC,EACA,YAAAC,EAAc,GACd,gBAAAC,EAAkB,GAClB,SAAAC,EACA,aAAAC,EACA,gBAAAC,EACA,aAAAC,EAAe,GACf,UAAAC,EAAY,GACZ,GAAGC,CACL,IAEIC,EAACC,EAAA,CAAsB,YAAAT,EACrB,SAAA,CAAAU,EAAC,OAAI,UAAWC,EAAG,gCAAiChB,GAAA,YAAAA,EAAS,IAAI,EAC/D,SAAAe,EAACE,EAAA,CACC,aAAW,UACX,UAAWD,EAAG,kDAAmDhB,GAAA,YAAAA,EAAS,OAAO,EAEhF,SAAAD,CAAA,CAAA,EAEL,EACAgB,EAACG,EAAA,CAAwB,UAAWT,EAClC,SAAAI,EAACM,EAAA,CACC,UAAWH,EACT,iHACAhB,GAAA,YAAAA,EAAS,OAAA,EAEX,WAAAC,EACA,YAAAC,EACA,gBAAAI,EACA,aAAAE,EACA,MAAAL,EACA,KAAAC,EACC,GAAGQ,EAEH,SAAA,CAAAL,EAEAG,GACCK,EAACK,EAAA,CACC,aAAW,QACX,UAAWJ,EAAG,wEAAyEhB,GAAA,YAAAA,EAAS,YAAY,EAE5G,SAAAe,EAACM,EAAA,CACC,KAAK,gBACL,UAAWL,EACT,gGACAhB,GAAA,YAAAA,EAAS,SAAA,CACX,CAAA,CACF,CAAA,EAGHW,GAAaI,EAACO,EAAA,CAAuB,MAAO,GAAI,OAAQ,EAAG,UAAWN,EAAG,aAAchB,GAAA,YAAAA,EAAS,SAAS,CAAA,CAAG,CAAA,CAAA,CAAA,CAC/G,CACF,CAAA,EACF"}
1
+ {"version":3,"file":"Popover.js","sources":["../../../../../lib/shared/ui/popover/Popover.tsx"],"sourcesContent":["'use client'\n\nimport type { ReactElement, ReactNode } from 'react'\nimport type { PopoverContentProps as PopoverContentPropsBase } from '@radix-ui/react-popover'\nimport * as PopoverPrimitive from '@radix-ui/react-popover'\nimport { Icon } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\ntype PopoverClasses = {\n root?: string\n content?: string\n trigger?: string\n arrowIcon?: string\n closeIcon?: string\n closeTrigger?: string\n}\n\ninterface PopoverContentProps extends PopoverContentPropsBase {\n sideOffset?: number\n alignOffset?: number\n align?: 'end' | 'center' | 'start'\n side?: 'top' | 'right' | 'bottom' | 'left'\n defaultOpen?: boolean\n avoidCollisions?: boolean\n withCloseBtn?: boolean\n withArrow?: boolean\n}\n\nexport interface PopoverProps extends PopoverContentProps {\n triggerElement: ReactElement\n children: ReactNode\n classes?: PopoverClasses\n portalContainer?: PopoverPrimitive.PopoverPortalProps['container']\n}\n\nexport const Popover = ({\n triggerElement,\n classes,\n sideOffset = 4,\n alignOffset,\n align,\n side,\n defaultOpen = false,\n avoidCollisions = true,\n children,\n arrowPadding,\n portalContainer,\n withCloseBtn = true,\n withArrow = true,\n ...contentProps\n}: PopoverProps) => {\n return (\n <PopoverPrimitive.Root defaultOpen={defaultOpen}>\n <div className={cn('flex w-max items-center gap-2', classes?.root)}>\n <PopoverPrimitive.Trigger\n aria-label='tooltip'\n className={cn('flex cursor-pointer items-center justify-center', classes?.trigger)}\n >\n {triggerElement}\n </PopoverPrimitive.Trigger>\n </div>\n <PopoverPrimitive.Portal container={portalContainer}>\n <PopoverPrimitive.Content\n className={cn(\n 'desk-body-regular-m flex w-fit max-w-64 items-start gap-2 rounded-sm bg-color-white p-4 shadow-sm outline-none',\n classes?.content\n )}\n sideOffset={sideOffset}\n alignOffset={alignOffset}\n avoidCollisions={avoidCollisions}\n arrowPadding={arrowPadding}\n align={align}\n side={side}\n {...contentProps}\n >\n {children}\n\n {withCloseBtn && (\n <PopoverPrimitive.Close\n aria-label='Close'\n className={cn('flex size-5 items-center justify-center outline-0 outline-transparent', classes?.closeTrigger)}\n >\n <Icon\n name='general/close'\n className={cn(\n 'size-5 cursor-pointer text-icon-blue-grey-600 transition-colors hover:text-icon-blue-grey-800',\n classes?.closeIcon\n )}\n />\n </PopoverPrimitive.Close>\n )}\n {withArrow && <PopoverPrimitive.Arrow width={12} height={6} className={cn('fill-white', classes?.arrowIcon)} />}\n </PopoverPrimitive.Content>\n </PopoverPrimitive.Portal>\n </PopoverPrimitive.Root>\n )\n}\n"],"names":["Popover","triggerElement","classes","sideOffset","alignOffset","align","side","defaultOpen","avoidCollisions","children","arrowPadding","portalContainer","withCloseBtn","withArrow","contentProps","jsxs","PopoverPrimitive.Root","jsx","cn","PopoverPrimitive.Trigger","PopoverPrimitive.Portal","PopoverPrimitive.Content","PopoverPrimitive.Close","Icon","PopoverPrimitive.Arrow"],"mappings":"2pDAmCO,MAAMA,GAAU,CAAC,CACtB,eAAAC,EACA,QAAAC,EACA,WAAAC,EAAa,EACb,YAAAC,EACA,MAAAC,EACA,KAAAC,EACA,YAAAC,EAAc,GACd,gBAAAC,EAAkB,GAClB,SAAAC,EACA,aAAAC,EACA,gBAAAC,EACA,aAAAC,EAAe,GACf,UAAAC,EAAY,GACZ,GAAGC,CACL,IAEIC,EAACC,EAAA,CAAsB,YAAAT,EACrB,SAAA,CAAAU,EAAC,OAAI,UAAWC,EAAG,gCAAiChB,GAAA,YAAAA,EAAS,IAAI,EAC/D,SAAAe,EAACE,EAAA,CACC,aAAW,UACX,UAAWD,EAAG,kDAAmDhB,GAAA,YAAAA,EAAS,OAAO,EAEhF,SAAAD,CAAA,CAAA,EAEL,EACAgB,EAACG,EAAA,CAAwB,UAAWT,EAClC,SAAAI,EAACM,EAAA,CACC,UAAWH,EACT,iHACAhB,GAAA,YAAAA,EAAS,OAAA,EAEX,WAAAC,EACA,YAAAC,EACA,gBAAAI,EACA,aAAAE,EACA,MAAAL,EACA,KAAAC,EACC,GAAGQ,EAEH,SAAA,CAAAL,EAEAG,GACCK,EAACK,EAAA,CACC,aAAW,QACX,UAAWJ,EAAG,wEAAyEhB,GAAA,YAAAA,EAAS,YAAY,EAE5G,SAAAe,EAACM,EAAA,CACC,KAAK,gBACL,UAAWL,EACT,gGACAhB,GAAA,YAAAA,EAAS,SAAA,CACX,CAAA,CACF,CAAA,EAGHW,GAAaI,EAACO,EAAA,CAAuB,MAAO,GAAI,OAAQ,EAAG,UAAWN,EAAG,aAAchB,GAAA,YAAAA,EAAS,SAAS,CAAA,CAAG,CAAA,CAAA,CAAA,CAC/G,CACF,CAAA,EACF"}
@@ -1,2 +1,2 @@
1
- import"react/jsx-runtime";import{TypeGuards as E}from"../../utils/typeGuards.js";import"../../ui/button/Button.js";import"../../ui/buttonIcon/ButtonIcon.js";import"../../ui/calendar/Calendar.js";import{formatDateToLocaleString as o}from"../../ui/calendar/model/utils.js";import"../../ui/accordion/Accordion.js";import"react";import"react-dom";import"../../ui/modal/ui/IframeModalContent.js";import"../../../../node_modules/react-hot-toast/dist/index.js";import"../../ui/table/ui/primitives/Primitives.js";import"../../ui/carousel/ui/CarouselContent.js";import"../../ui/slot/Slot.js";import"../../ui/formElements/uncontrolled/autocomplete/Autocomplete.js";import"../../ui/formElements/uncontrolled/checkbox/Checkbox.js";import"../../ui/formElements/uncontrolled/combobox/combobox.js";import"../../ui/formElements/uncontrolled/dayPicker/DayPicker.js";import"../../ui/formElements/uncontrolled/input/Input.js";import"../../ui/formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../../ui/formElements/uncontrolled/maskInput/MaskInput.js";import"../../ui/formElements/uncontrolled/radio/RadioGroup.js";import"../../ui/formElements/uncontrolled/radio/ui/RadioItem.js";import"../../ui/formElements/uncontrolled/slider/SliderBase.js";import"../../ui/formElements/uncontrolled/switch/Switch.js";import"../../ui/formElements/uncontrolled/textarea/Textarea.js";import"../../ui/formElements/uncontrolled/uploader/UploaderBase.js";import"../../ui/formElements/controlled/editor/ui/Editor.js";import"../../ui/formElements/controlled/input/MaskInputControl.js";import"../../ui/dropdownList/ui/dropdownItem/DropdownItem.js";const f={NON_EMPTY:()=>"Поле не может быть пустым",MIN_LENGTH:_=>`Поле должно содержать минимум символов: ${_}`,MAX_LENGTH:_=>`Поле должно содержать максимум символов: ${_}`,FIX_LENGTH:_=>`Поле должно быть фиксированной длины символов: ${_}`,MIN_VALUE:_=>`Значение не может быть меньше чем ${_}`,MAX_VALUE:_=>`Значение не может быть больше чем ${_}`,PHONE_NON_EMPTY:()=>"Номер телефона должен состоять из 11 цифр",PHONE_INVALID_OPERATOR:()=>"Код города/оператора должен начинаться с цифры 3, 4, 5, 6 или 9",EMAIL_INVALID:()=>"Email введен некорректно. Пример: example@domain.ru",EMAIL_NON_EMPTY:()=>"Введите адрес электронной почты",SELECT_NON_EMPTY:()=>"Выберите один из вариантов",SELECT_MULTIPLE_MIN_LENGTH:_=>`Выберите не менее ${_} вариантов`,SELECT_MULTIPLE_MAX_LENGTH:_=>`Выберите не более ${_} вариантов`,SELECT_FIX_LENGTH:_=>`Поле должно быть фиксированного количества вариантов: ${_}`,DATE_INVALID_FORMAT:()=>"Дата указана некорректно",DATE_NON_EMPTY:()=>"Укажите дату",VALUE_OUT_OF_RANGE:_=>`Выберите один из вариантов ${_.join(", ")}`,DATE_MIN:_=>{const t=E.isString(_)?new Date(_):_;return`Выбранная дата должна быть не раньше ${o(t)}`},DATE_MAX:_=>{const t=E.isString(_)?new Date(_):_;return`Выбранная дата должна быть не позже ${o(t)}`},INVALID_REGEX_STRING:()=>"Поле не соответствует требованиям",INVALID_URL:()=>"Ссылка введена некорректно. Пример: https://example.com, example.com",PASSPORT_INVALID_TYPE:()=>"Паспортные данные введены некорректно",PASSPORT_NON_EMPTY:()=>"Поле обязательно для заполнения",PASSPORT_PART_OR_NUMBER_NON_EMPTY:()=>"Серия или номер паспорта не могут быть пустыми",INVALID_PASSPORT_PART:()=>"Серия паспорта введена некорректно",INVALID_PASSPORT_NUMBER:()=>"Номер паспорта введен некорректно",DEPARTMENT_NON_EMPTY:()=>"Поле обязательно для заполнения",INVALID_DEPARTMENT:()=>"Код подразделения введён некорректно"};export{f as baseDefaultMessages};
1
+ import"react/jsx-runtime";import{TypeGuards as E}from"../../utils/typeGuards.js";import"../../ui/button/Button.js";import"../../ui/buttonIcon/ButtonIcon.js";import"../../ui/calendar/Calendar.js";import{formatDateToLocaleString as N}from"../../ui/calendar/model/utils.js";import"../../ui/accordion/Accordion.js";import"react";import"react-dom";import"../../ui/modal/ui/IframeModalContent.js";import"../../../../node_modules/react-hot-toast/dist/index.js";import"../../ui/table/ui/primitives/Primitives.js";import"../../ui/carousel/ui/CarouselContent.js";import"../../ui/slot/Slot.js";import"../../ui/formElements/uncontrolled/autocomplete/Autocomplete.js";import"../../ui/formElements/uncontrolled/checkbox/Checkbox.js";import"../../ui/formElements/uncontrolled/combobox/combobox.js";import"../../ui/formElements/uncontrolled/dayPicker/DayPicker.js";import"../../ui/formElements/uncontrolled/input/Input.js";import"../../ui/formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../../ui/formElements/uncontrolled/maskInput/MaskInput.js";import"../../ui/formElements/uncontrolled/radio/RadioGroup.js";import"../../ui/formElements/uncontrolled/radio/ui/RadioItem.js";import"../../ui/formElements/uncontrolled/slider/SliderBase.js";import"../../ui/formElements/uncontrolled/switch/Switch.js";import"../../ui/formElements/uncontrolled/textarea/Textarea.js";import"../../ui/formElements/uncontrolled/uploader/UploaderBase.js";import"../../ui/formElements/uncontrolled/inputCurrency/InputCurrency.js";import"../../ui/formElements/controlled/editor/ui/Editor.js";import"../../ui/formElements/controlled/input/MaskInputControl.js";import"../../ui/dropdownList/ui/dropdownItem/DropdownItem.js";const f={NON_EMPTY:()=>"Поле не может быть пустым",MIN_LENGTH:_=>`Поле должно содержать минимум символов: ${_}`,MAX_LENGTH:_=>`Поле должно содержать максимум символов: ${_}`,FIX_LENGTH:_=>`Поле должно быть фиксированной длины символов: ${_}`,MIN_VALUE:_=>`Значение не может быть меньше чем ${_}`,MAX_VALUE:_=>`Значение не может быть больше чем ${_}`,PHONE_NON_EMPTY:()=>"Номер телефона должен состоять из 11 цифр",PHONE_INVALID_OPERATOR:()=>"Код города/оператора должен начинаться с цифры 3, 4, 5, 6 или 9",EMAIL_INVALID:()=>"Email введен некорректно. Пример: example@domain.ru",EMAIL_NON_EMPTY:()=>"Введите адрес электронной почты",SELECT_NON_EMPTY:()=>"Выберите один из вариантов",SELECT_MULTIPLE_MIN_LENGTH:_=>`Выберите не менее ${_} вариантов`,SELECT_MULTIPLE_MAX_LENGTH:_=>`Выберите не более ${_} вариантов`,SELECT_FIX_LENGTH:_=>`Поле должно быть фиксированного количества вариантов: ${_}`,DATE_INVALID_FORMAT:()=>"Дата указана некорректно",DATE_NON_EMPTY:()=>"Укажите дату",VALUE_OUT_OF_RANGE:_=>`Выберите один из вариантов ${_.join(", ")}`,DATE_MIN:_=>{const t=E.isString(_)?new Date(_):_;return`Выбранная дата должна быть не раньше ${N(t)}`},DATE_MAX:_=>{const t=E.isString(_)?new Date(_):_;return`Выбранная дата должна быть не позже ${N(t)}`},INVALID_REGEX_STRING:()=>"Поле не соответствует требованиям",INVALID_URL:()=>"Ссылка введена некорректно. Пример: https://example.com, example.com",PASSPORT_INVALID_TYPE:()=>"Паспортные данные введены некорректно",PASSPORT_NON_EMPTY:()=>"Поле обязательно для заполнения",PASSPORT_PART_OR_NUMBER_NON_EMPTY:()=>"Серия или номер паспорта не могут быть пустыми",INVALID_PASSPORT_PART:()=>"Серия паспорта введена некорректно",INVALID_PASSPORT_NUMBER:()=>"Номер паспорта введен некорректно",DEPARTMENT_NON_EMPTY:()=>"Поле обязательно для заполнения",INVALID_DEPARTMENT:()=>"Код подразделения введён некорректно",CURRENCY_NON_EMPTY:()=>"Не выбрана валюта"};export{f as baseDefaultMessages};
2
2
  //# sourceMappingURL=base.constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.constants.js","sources":["../../../../../lib/shared/validation/base/base.constants.ts"],"sourcesContent":["import { type Primitive } from 'zod'\nimport { formatDateToLocaleString } from '$/shared/ui'\nimport { TypeGuards } from '$/shared/utils'\n\nexport const baseDefaultMessages = {\n NON_EMPTY: () => 'Поле не может быть пустым',\n MIN_LENGTH: (min: number) => `Поле должно содержать минимум символов: ${min}`,\n MAX_LENGTH: (max: number) => `Поле должно содержать максимум символов: ${max}`,\n FIX_LENGTH: (length: number) => `Поле должно быть фиксированной длины символов: ${length}`,\n MIN_VALUE: (min: number) => `Значение не может быть меньше чем ${min}`,\n MAX_VALUE: (max: number) => `Значение не может быть больше чем ${max}`,\n\n PHONE_NON_EMPTY: () => 'Номер телефона должен состоять из 11 цифр',\n PHONE_INVALID_OPERATOR: () => 'Код города/оператора должен начинаться с цифры 3, 4, 5, 6 или 9',\n\n EMAIL_INVALID: () => 'Email введен некорректно. Пример: example@domain.ru',\n EMAIL_NON_EMPTY: () => 'Введите адрес электронной почты',\n\n SELECT_NON_EMPTY: () => 'Выберите один из вариантов',\n SELECT_MULTIPLE_MIN_LENGTH: (length: number) => `Выберите не менее ${length} вариантов`,\n SELECT_MULTIPLE_MAX_LENGTH: (length: number) => `Выберите не более ${length} вариантов`,\n SELECT_FIX_LENGTH: (length: number) => `Поле должно быть фиксированного количества вариантов: ${length}`,\n\n DATE_INVALID_FORMAT: () => 'Дата указана некорректно',\n DATE_NON_EMPTY: () => 'Укажите дату',\n VALUE_OUT_OF_RANGE: <T extends Primitive>(range: T[]) => `Выберите один из вариантов ${range.join(', ')}`,\n\n DATE_MIN: (min: Date | string) => {\n const date = TypeGuards.isString(min) ? new Date(min) : min\n\n return `Выбранная дата должна быть не раньше ${formatDateToLocaleString(date)}`\n },\n DATE_MAX: (max: Date | string) => {\n const date = TypeGuards.isString(max) ? new Date(max) : max\n\n return `Выбранная дата должна быть не позже ${formatDateToLocaleString(date)}`\n },\n\n INVALID_REGEX_STRING: () => 'Поле не соответствует требованиям',\n\n INVALID_URL: () => 'Ссылка введена некорректно. Пример: https://example.com, example.com',\n\n PASSPORT_INVALID_TYPE: () => 'Паспортные данные введены некорректно',\n PASSPORT_NON_EMPTY: () => 'Поле обязательно для заполнения',\n PASSPORT_PART_OR_NUMBER_NON_EMPTY: () => 'Серия или номер паспорта не могут быть пустыми',\n INVALID_PASSPORT_PART: () => 'Серия паспорта введена некорректно',\n INVALID_PASSPORT_NUMBER: () => 'Номер паспорта введен некорректно',\n\n DEPARTMENT_NON_EMPTY: () => 'Поле обязательно для заполнения',\n INVALID_DEPARTMENT: () => 'Код подразделения введён некорректно'\n}\n"],"names":["baseDefaultMessages","min","max","length","range","date","TypeGuards","formatDateToLocaleString"],"mappings":"+kDAIO,MAAMA,EAAsB,CACjC,UAAW,IAAM,4BACjB,WAAaC,GAAgB,2CAA2CA,CAAG,GAC3E,WAAaC,GAAgB,4CAA4CA,CAAG,GAC5E,WAAaC,GAAmB,kDAAkDA,CAAM,GACxF,UAAYF,GAAgB,qCAAqCA,CAAG,GACpE,UAAYC,GAAgB,qCAAqCA,CAAG,GAEpE,gBAAiB,IAAM,4CACvB,uBAAwB,IAAM,kEAE9B,cAAe,IAAM,sDACrB,gBAAiB,IAAM,kCAEvB,iBAAkB,IAAM,6BACxB,2BAA6BC,GAAmB,qBAAqBA,CAAM,aAC3E,2BAA6BA,GAAmB,qBAAqBA,CAAM,aAC3E,kBAAoBA,GAAmB,yDAAyDA,CAAM,GAEtG,oBAAqB,IAAM,2BAC3B,eAAgB,IAAM,eACtB,mBAA0CC,GAAe,8BAA8BA,EAAM,KAAK,IAAI,CAAC,GAEvG,SAAWH,GAAuB,CAChC,MAAMI,EAAOC,EAAW,SAASL,CAAG,EAAI,IAAI,KAAKA,CAAG,EAAIA,EAExD,MAAO,wCAAwCM,EAAyBF,CAAI,CAAC,EAC/E,EACA,SAAWH,GAAuB,CAChC,MAAMG,EAAOC,EAAW,SAASJ,CAAG,EAAI,IAAI,KAAKA,CAAG,EAAIA,EAExD,MAAO,uCAAuCK,EAAyBF,CAAI,CAAC,EAC9E,EAEA,qBAAsB,IAAM,oCAE5B,YAAa,IAAM,uEAEnB,sBAAuB,IAAM,wCAC7B,mBAAoB,IAAM,kCAC1B,kCAAmC,IAAM,iDACzC,sBAAuB,IAAM,qCAC7B,wBAAyB,IAAM,oCAE/B,qBAAsB,IAAM,kCAC5B,mBAAoB,IAAM,sCAC5B"}
1
+ {"version":3,"file":"base.constants.js","sources":["../../../../../lib/shared/validation/base/base.constants.ts"],"sourcesContent":["import { type Primitive } from 'zod'\nimport { formatDateToLocaleString } from '$/shared/ui'\nimport { TypeGuards } from '$/shared/utils'\n\nexport const baseDefaultMessages = {\n NON_EMPTY: () => 'Поле не может быть пустым',\n MIN_LENGTH: (min: number) => `Поле должно содержать минимум символов: ${min}`,\n MAX_LENGTH: (max: number) => `Поле должно содержать максимум символов: ${max}`,\n FIX_LENGTH: (length: number) => `Поле должно быть фиксированной длины символов: ${length}`,\n MIN_VALUE: (min: number) => `Значение не может быть меньше чем ${min}`,\n MAX_VALUE: (max: number) => `Значение не может быть больше чем ${max}`,\n\n PHONE_NON_EMPTY: () => 'Номер телефона должен состоять из 11 цифр',\n PHONE_INVALID_OPERATOR: () => 'Код города/оператора должен начинаться с цифры 3, 4, 5, 6 или 9',\n\n EMAIL_INVALID: () => 'Email введен некорректно. Пример: example@domain.ru',\n EMAIL_NON_EMPTY: () => 'Введите адрес электронной почты',\n\n SELECT_NON_EMPTY: () => 'Выберите один из вариантов',\n SELECT_MULTIPLE_MIN_LENGTH: (length: number) => `Выберите не менее ${length} вариантов`,\n SELECT_MULTIPLE_MAX_LENGTH: (length: number) => `Выберите не более ${length} вариантов`,\n SELECT_FIX_LENGTH: (length: number) => `Поле должно быть фиксированного количества вариантов: ${length}`,\n\n DATE_INVALID_FORMAT: () => 'Дата указана некорректно',\n DATE_NON_EMPTY: () => 'Укажите дату',\n VALUE_OUT_OF_RANGE: <T extends Primitive>(range: T[]) => `Выберите один из вариантов ${range.join(', ')}`,\n\n DATE_MIN: (min: Date | string) => {\n const date = TypeGuards.isString(min) ? new Date(min) : min\n\n return `Выбранная дата должна быть не раньше ${formatDateToLocaleString(date)}`\n },\n DATE_MAX: (max: Date | string) => {\n const date = TypeGuards.isString(max) ? new Date(max) : max\n\n return `Выбранная дата должна быть не позже ${formatDateToLocaleString(date)}`\n },\n\n INVALID_REGEX_STRING: () => 'Поле не соответствует требованиям',\n\n INVALID_URL: () => 'Ссылка введена некорректно. Пример: https://example.com, example.com',\n\n PASSPORT_INVALID_TYPE: () => 'Паспортные данные введены некорректно',\n PASSPORT_NON_EMPTY: () => 'Поле обязательно для заполнения',\n PASSPORT_PART_OR_NUMBER_NON_EMPTY: () => 'Серия или номер паспорта не могут быть пустыми',\n INVALID_PASSPORT_PART: () => 'Серия паспорта введена некорректно',\n INVALID_PASSPORT_NUMBER: () => 'Номер паспорта введен некорректно',\n\n DEPARTMENT_NON_EMPTY: () => 'Поле обязательно для заполнения',\n INVALID_DEPARTMENT: () => 'Код подразделения введён некорректно',\n\n CURRENCY_NON_EMPTY: () => 'Не выбрана валюта'\n}\n"],"names":["baseDefaultMessages","min","max","length","range","date","TypeGuards","formatDateToLocaleString"],"mappings":"ypDAIO,MAAMA,EAAsB,CACjC,UAAW,IAAM,4BACjB,WAAaC,GAAgB,2CAA2CA,CAAG,GAC3E,WAAaC,GAAgB,4CAA4CA,CAAG,GAC5E,WAAaC,GAAmB,kDAAkDA,CAAM,GACxF,UAAYF,GAAgB,qCAAqCA,CAAG,GACpE,UAAYC,GAAgB,qCAAqCA,CAAG,GAEpE,gBAAiB,IAAM,4CACvB,uBAAwB,IAAM,kEAE9B,cAAe,IAAM,sDACrB,gBAAiB,IAAM,kCAEvB,iBAAkB,IAAM,6BACxB,2BAA6BC,GAAmB,qBAAqBA,CAAM,aAC3E,2BAA6BA,GAAmB,qBAAqBA,CAAM,aAC3E,kBAAoBA,GAAmB,yDAAyDA,CAAM,GAEtG,oBAAqB,IAAM,2BAC3B,eAAgB,IAAM,eACtB,mBAA0CC,GAAe,8BAA8BA,EAAM,KAAK,IAAI,CAAC,GAEvG,SAAWH,GAAuB,CAChC,MAAMI,EAAOC,EAAW,SAASL,CAAG,EAAI,IAAI,KAAKA,CAAG,EAAIA,EAExD,MAAO,wCAAwCM,EAAyBF,CAAI,CAAC,EAC/E,EACA,SAAWH,GAAuB,CAChC,MAAMG,EAAOC,EAAW,SAASJ,CAAG,EAAI,IAAI,KAAKA,CAAG,EAAIA,EAExD,MAAO,uCAAuCK,EAAyBF,CAAI,CAAC,EAC9E,EAEA,qBAAsB,IAAM,oCAE5B,YAAa,IAAM,uEAEnB,sBAAuB,IAAM,wCAC7B,mBAAoB,IAAM,kCAC1B,kCAAmC,IAAM,iDACzC,sBAAuB,IAAM,qCAC7B,wBAAyB,IAAM,oCAE/B,qBAAsB,IAAM,kCAC5B,mBAAoB,IAAM,uCAE1B,mBAAoB,IAAM,mBAC5B"}
@@ -1,2 +1,2 @@
1
- import{getBooleanSchema as m}from"./boolean.validators.js";import{getDateSchema as e}from"./date.validators.js";import{getEmailSchema as t}from"./email.validators.js";import{getNumberSchema as o}from"./number.validators.js";import{getPassportSchema as r}from"./passport.validators.js";import{getPassportDepartmentSchema as a}from"./passportDepartment.validators.js";import{getPhoneSchema as i}from"./phone.validators.js";import{getRegexSchema as p}from"./regex.validators.js";import{getSelectSchema as c}from"./select.validators.js";import{getStringSchema as S}from"./string.validators.js";import{getUnionSchema as g}from"./union.validators.js";import{getUrlSchema as h}from"./url.validators.js";const E={getStringSchema:S,getEmailSchema:t,getSelectSchema:c,getNumberSchema:o,getPhoneSchema:i,getDateSchema:e,getUnionSchema:g,getUrlSchema:h,getRegexSchema:p,getBooleanSchema:m,getPassportDepartmentSchema:a,getPassportSchema:r};export{E as baseValidationSchemas};
1
+ import{getBooleanSchema as m}from"./boolean.validators.js";import{getCurrencySchema as e}from"./currency.validators.js";import{getDateSchema as t}from"./date.validators.js";import{getEmailSchema as o}from"./email.validators.js";import{getNumberSchema as r}from"./number.validators.js";import{getPassportSchema as a}from"./passport.validators.js";import{getPassportDepartmentSchema as i}from"./passportDepartment.validators.js";import{getPhoneSchema as c}from"./phone.validators.js";import{getRegexSchema as p}from"./regex.validators.js";import{getSelectSchema as S}from"./select.validators.js";import{getStringSchema as g}from"./string.validators.js";import{getUnionSchema as h}from"./union.validators.js";import{getUrlSchema as f}from"./url.validators.js";const E={getStringSchema:g,getEmailSchema:o,getSelectSchema:S,getNumberSchema:r,getPhoneSchema:c,getDateSchema:t,getUnionSchema:h,getUrlSchema:f,getRegexSchema:p,getBooleanSchema:m,getPassportDepartmentSchema:i,getPassportSchema:a,getCurrencySchema:e};export{E as baseValidationSchemas};
2
2
  //# sourceMappingURL=base.validators.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.validators.js","sources":["../../../../../lib/shared/validation/base/base.validators.ts"],"sourcesContent":["import { getBooleanSchema } from './boolean.validators'\nimport { getDateSchema } from './date.validators'\nimport { getEmailSchema } from './email.validators'\nimport { getNumberSchema } from './number.validators'\nimport { getPassportSchema } from './passport.validators'\nimport { getPassportDepartmentSchema } from './passportDepartment.validators'\nimport { getPhoneSchema } from './phone.validators'\nimport { getRegexSchema } from './regex.validators'\nimport { getSelectSchema } from './select.validators'\nimport { getStringSchema } from './string.validators'\nimport { getUnionSchema } from './union.validators'\nimport { getUrlSchema } from './url.validators'\n\nexport const baseValidationSchemas = {\n getStringSchema,\n getEmailSchema,\n getSelectSchema,\n getNumberSchema,\n getPhoneSchema,\n getDateSchema,\n getUnionSchema,\n getUrlSchema,\n getRegexSchema,\n getBooleanSchema,\n getPassportDepartmentSchema,\n getPassportSchema\n}\n"],"names":["baseValidationSchemas","getStringSchema","getEmailSchema","getSelectSchema","getNumberSchema","getPhoneSchema","getDateSchema","getUnionSchema","getUrlSchema","getRegexSchema","getBooleanSchema","getPassportDepartmentSchema","getPassportSchema"],"mappings":"wrBAaO,MAAMA,EAAwB,CACnC,gBAAAC,EACA,eAAAC,EACA,gBAAAC,EACA,gBAAAC,EACA,eAAAC,EACA,cAAAC,EACA,eAAAC,EACA,aAAAC,EACA,eAAAC,EACA,iBAAAC,EACA,4BAAAC,EACA,kBAAAC,CACF"}
1
+ {"version":3,"file":"base.validators.js","sources":["../../../../../lib/shared/validation/base/base.validators.ts"],"sourcesContent":["import { getBooleanSchema } from './boolean.validators'\nimport { getCurrencySchema } from './currency.validators'\nimport { getDateSchema } from './date.validators'\nimport { getEmailSchema } from './email.validators'\nimport { getNumberSchema } from './number.validators'\nimport { getPassportSchema } from './passport.validators'\nimport { getPassportDepartmentSchema } from './passportDepartment.validators'\nimport { getPhoneSchema } from './phone.validators'\nimport { getRegexSchema } from './regex.validators'\nimport { getSelectSchema } from './select.validators'\nimport { getStringSchema } from './string.validators'\nimport { getUnionSchema } from './union.validators'\nimport { getUrlSchema } from './url.validators'\n\nexport const baseValidationSchemas = {\n getStringSchema,\n getEmailSchema,\n getSelectSchema,\n getNumberSchema,\n getPhoneSchema,\n getDateSchema,\n getUnionSchema,\n getUrlSchema,\n getRegexSchema,\n getBooleanSchema,\n getPassportDepartmentSchema,\n getPassportSchema,\n getCurrencySchema\n}\n"],"names":["baseValidationSchemas","getStringSchema","getEmailSchema","getSelectSchema","getNumberSchema","getPhoneSchema","getDateSchema","getUnionSchema","getUrlSchema","getRegexSchema","getBooleanSchema","getPassportDepartmentSchema","getPassportSchema","getCurrencySchema"],"mappings":"qvBAcO,MAAMA,EAAwB,CACnC,gBAAAC,EACA,eAAAC,EACA,gBAAAC,EACA,gBAAAC,EACA,eAAAC,EACA,cAAAC,EACA,eAAAC,EACA,aAAAC,EACA,eAAAC,EACA,iBAAAC,EACA,4BAAAC,EACA,kBAAAC,EACA,kBAAAC,CACF"}
@@ -0,0 +1,2 @@
1
+ import*as r from"../../../../node_modules/zod/v3/external.js";import{baseDefaultMessages as t}from"./base.constants.js";import{getSelectSchema as a}from"./select.validators.js";import{getStringSchema as l}from"./string.validators.js";import{TypeGuards as d}from"../../utils/typeGuards.js";const f={value:"",currency:null},p=o=>{const{min:s=1,max:i,message:e,defaultValue:n=f}=o??{};return r.object({value:l(),currency:a()}).superRefine(({value:m,currency:c},u)=>{d.isStringEmpty(m)&&u.addIssue({code:r.ZodIssueCode.too_small,type:"string",minimum:0,inclusive:!0,message:(e==null?void 0:e.valueEmpty)??t.NON_EMPTY()}),Number(m)<s&&u.addIssue({code:r.ZodIssueCode.too_small,type:"string",minimum:s,inclusive:!0,message:(e==null?void 0:e.min)??t.MIN_VALUE(s)}),d.isNil(c)&&u.addIssue({code:r.ZodIssueCode.invalid_type,expected:"string",received:"null",message:(e==null?void 0:e.currencyEmpty)??t.CURRENCY_NON_EMPTY()}),i&&Number(m)>i&&u.addIssue({code:r.ZodIssueCode.too_big,type:"string",maximum:i,inclusive:!0,message:(e==null?void 0:e.max)??t.MAX_VALUE(i)})}).default(n)};function N(o){return p(o)}export{N as getCurrencySchema};
2
+ //# sourceMappingURL=currency.validators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"currency.validators.js","sources":["../../../../../lib/shared/validation/base/currency.validators.ts"],"sourcesContent":["import z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\nimport { getSelectSchema } from './select.validators'\nimport { getStringSchema } from './string.validators'\nimport type { CurrencyValue } from '$/shared/ui/formElements/uncontrolled/inputCurrency'\nimport { TypeGuards } from '$/shared/utils'\n\nexport type CurrencyValidationOptions = {\n /**\n * Минимальное значение\n * @default 1\n */\n min?: number\n /**\n * Максимальное значение\n * @default undefined\n */\n max?: number\n /**\n * Значение по умолчанию\n * @default { value: '', currency: null }\n */\n defaultValue?: CurrencyValue\n /**\n * Произвольные сообщения об ошибках\n */\n message?: Partial<\n Record<keyof Omit<CurrencyValidationOptions, 'message' | 'defaultValue'> | 'currencyEmpty' | 'valueEmpty', string>\n >\n}\n\nconst defaultCurrency: CurrencyValue = {\n value: '',\n currency: null\n}\n\nconst getCurrencyRequired = (props?: CurrencyValidationOptions) => {\n const { min = 1, max, message, defaultValue = defaultCurrency } = props ?? {}\n\n return z\n .object({\n value: getStringSchema(),\n currency: getSelectSchema()\n })\n .superRefine(({ value, currency }, context) => {\n if (TypeGuards.isStringEmpty(value)) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n type: 'string',\n minimum: 0,\n inclusive: true,\n message: message?.valueEmpty ?? baseDefaultMessages.NON_EMPTY()\n })\n }\n\n if (Number(value) < min) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n type: 'string',\n minimum: min,\n inclusive: true,\n message: message?.min ?? baseDefaultMessages.MIN_VALUE(min)\n })\n }\n\n if (TypeGuards.isNil(currency)) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_type,\n expected: 'string',\n received: 'null',\n message: message?.currencyEmpty ?? baseDefaultMessages.CURRENCY_NON_EMPTY()\n })\n }\n\n if (max) {\n if (Number(value) > max) {\n context.addIssue({\n code: z.ZodIssueCode.too_big,\n type: 'string',\n maximum: max,\n inclusive: true,\n message: message?.max ?? baseDefaultMessages.MAX_VALUE(max)\n })\n }\n }\n })\n .default(defaultValue)\n}\ntype CurrencyRequiredSchema = ReturnType<typeof getCurrencyRequired>\n\n/**\n * Схема валидации обязательного поля валюты\n * @param {CurrencyValidationOptions} props настройки схемы\n * @typeParam `min` - `number | undefined` `default: 1`\n * @typeParam `max` - `number | undefined` `default: undefined`\n * @typeParam `message` - `{ [min | max | currencyEmpty | valueEmpty]: string }`\n * @typeParam `defaultValue` - `CurrencyValue` `default: { value: '', currency: null }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example with required min value\n * z.object({\n * field: zodValidators.base.getCurrencySchema({ min: 10 })\n * })\n * // will returns z.object({\n * value: z.string().min(10),\n * currency: z.string().nullable()\n * })\n *\n * @example with required min, max value\n * z.object({\n * field: zodValidators.base.getCurrencySchema({ min: 10, max: 20 })\n * })\n * // will returns z.object({\n * value: z.string().min(10).max(20),\n * currency: z.string().nullable()\n * })\n */\nexport function getCurrencySchema(props?: CurrencyValidationOptions): CurrencyRequiredSchema {\n return getCurrencyRequired(props)\n}\n"],"names":["defaultCurrency","getCurrencyRequired","props","min","max","message","defaultValue","z","getStringSchema","getSelectSchema","value","currency","context","TypeGuards","baseDefaultMessages","getCurrencySchema"],"mappings":"iSA+BA,MAAMA,EAAiC,CACrC,MAAO,GACP,SAAU,IACZ,EAEMC,EAAuBC,GAAsC,CACjE,KAAM,CAAE,IAAAC,EAAM,EAAG,IAAAC,EAAK,QAAAC,EAAS,aAAAC,EAAeN,GAAoBE,GAAS,CAAA,EAE3E,OAAOK,EACJ,OAAO,CACN,MAAOC,EAAA,EACP,SAAUC,EAAA,CAAgB,CAC3B,EACA,YAAY,CAAC,CAAE,MAAAC,EAAO,SAAAC,CAAA,EAAYC,IAAY,CACzCC,EAAW,cAAcH,CAAK,GAChCE,EAAQ,SAAS,CACf,KAAML,EAAE,aAAa,UACrB,KAAM,SACN,QAAS,EACT,UAAW,GACX,SAASF,GAAA,YAAAA,EAAS,aAAcS,EAAoB,UAAA,CAAU,CAC/D,EAGC,OAAOJ,CAAK,EAAIP,GAClBS,EAAQ,SAAS,CACf,KAAML,EAAE,aAAa,UACrB,KAAM,SACN,QAASJ,EACT,UAAW,GACX,SAASE,GAAA,YAAAA,EAAS,MAAOS,EAAoB,UAAUX,CAAG,CAAA,CAC3D,EAGCU,EAAW,MAAMF,CAAQ,GAC3BC,EAAQ,SAAS,CACf,KAAML,EAAE,aAAa,aACrB,SAAU,SACV,SAAU,OACV,SAASF,GAAA,YAAAA,EAAS,gBAAiBS,EAAoB,mBAAA,CAAmB,CAC3E,EAGCV,GACE,OAAOM,CAAK,EAAIN,GAClBQ,EAAQ,SAAS,CACf,KAAML,EAAE,aAAa,QACrB,KAAM,SACN,QAASH,EACT,UAAW,GACX,SAASC,GAAA,YAAAA,EAAS,MAAOS,EAAoB,UAAUV,CAAG,CAAA,CAC3D,CAGP,CAAC,EACA,QAAQE,CAAY,CACzB,EA8BO,SAASS,EAAkBb,EAA2D,CAC3F,OAAOD,EAAoBC,CAAK,CAClC"}
@@ -1,2 +1,2 @@
1
- import*as o from"../../../../node_modules/zod/v3/external.js";import{baseDefaultMessages as a}from"./base.constants.js";import"react/jsx-runtime";import{TypeGuards as m}from"../../utils/typeGuards.js";import"../../ui/button/Button.js";import"../../ui/buttonIcon/ButtonIcon.js";import"../../ui/calendar/Calendar.js";import{DATE_VISIBLE_PATTERN as D}from"../../ui/calendar/model/utils.js";import"../../ui/accordion/Accordion.js";import"react";import"react-dom";import"../../ui/modal/ui/IframeModalContent.js";import"../../../../node_modules/react-hot-toast/dist/index.js";import"../../ui/table/ui/primitives/Primitives.js";import"../../ui/carousel/ui/CarouselContent.js";import"../../ui/slot/Slot.js";import"../../ui/formElements/uncontrolled/autocomplete/Autocomplete.js";import"../../ui/formElements/uncontrolled/checkbox/Checkbox.js";import"../../ui/formElements/uncontrolled/combobox/combobox.js";import"../../ui/formElements/uncontrolled/dayPicker/DayPicker.js";import"../../ui/formElements/uncontrolled/input/Input.js";import"../../ui/formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../../ui/formElements/uncontrolled/maskInput/MaskInput.js";import"../../ui/formElements/uncontrolled/radio/RadioGroup.js";import"../../ui/formElements/uncontrolled/radio/ui/RadioItem.js";import"../../ui/formElements/uncontrolled/slider/SliderBase.js";import"../../ui/formElements/uncontrolled/switch/Switch.js";import"../../ui/formElements/uncontrolled/textarea/Textarea.js";import"../../ui/formElements/uncontrolled/uploader/UploaderBase.js";import"../../ui/formElements/controlled/editor/ui/Editor.js";import"../../ui/formElements/controlled/input/MaskInputControl.js";import"../../ui/dropdownList/ui/dropdownItem/DropdownItem.js";import{parse as _}from"../../../../node_modules/date-fns/parse.js";import{isValid as f}from"../../../../node_modules/date-fns/isValid.js";const g=l=>{const{iso:u=!0,pattern:p=D,min:t,max:d,defaultValue:i,message:e}=l||{};return o.string().min(8,(e==null?void 0:e.min)||a.DATE_NON_EMPTY()).superRefine((n,r)=>{const I=p.replace(/\W/g,"").length;if(n.replace(/[._-]/g,"").length<I&&r.addIssue({code:o.ZodIssueCode.too_small,minimum:I,type:"date",inclusive:!0,message:(e==null?void 0:e.min)||a.DATE_NON_EMPTY()}),u){let T=null;try{T=new Date(n)}catch{r.addIssue({code:o.ZodIssueCode.invalid_date,message:(e==null?void 0:e.invalidDate)||a.DATE_INVALID_FORMAT()})}t&&T.getTime()<(m.isString(t)?new Date(t).getTime():t.getTime())&&r.addIssue({code:o.ZodIssueCode.invalid_date,message:(e==null?void 0:e.min)||a.DATE_MIN(t)}),d&&T.getTime()>(m.isString(d)?new Date(d).getTime():d.getTime())&&r.addIssue({code:o.ZodIssueCode.invalid_date,message:(e==null?void 0:e.max)||a.DATE_MAX(d)})}else{const T=_(n,p,new Date);f(T)||r.addIssue({code:o.ZodIssueCode.invalid_date,message:(e==null?void 0:e.invalidDate)||a.DATE_INVALID_FORMAT()}),t&&T.getTime()<(m.isString(t)?new Date(t).getTime():t.getTime())&&r.addIssue({code:o.ZodIssueCode.invalid_date,message:(e==null?void 0:e.min)||a.DATE_MIN(t)}),d&&T.getTime()>(m.isString(d)?new Date(d).getTime():d.getTime())&&r.addIssue({code:o.ZodIssueCode.invalid_date,message:(e==null?void 0:e.max)||a.DATE_MAX(d)})}}).default(i??"")},c=l=>{const{iso:u=!0,pattern:p=D,min:t,max:d,message:i}=l||{};return o.string().transform(e=>e||void 0).superRefine((e,n)=>{if(m.isString(e)&&e.length){const r=p.replace(/\W/g,"").length;if(e.replace(/[._-]/g,"").length<r&&n.addIssue({code:o.ZodIssueCode.too_small,minimum:r,type:"date",inclusive:!0,message:(i==null?void 0:i.min)||a.DATE_NON_EMPTY()}),u){let s=null;try{s=new Date(e)}catch{n.addIssue({code:o.ZodIssueCode.invalid_date,message:(i==null?void 0:i.invalidDate)||a.DATE_INVALID_FORMAT()})}t&&s.getTime()<(m.isString(t)?new Date(t).getTime():t.getTime())&&n.addIssue({code:o.ZodIssueCode.invalid_date,message:(i==null?void 0:i.min)||a.DATE_MIN(t)}),d&&s.getTime()>(m.isString(d)?new Date(d).getTime():d.getTime())&&n.addIssue({code:o.ZodIssueCode.invalid_date,message:(i==null?void 0:i.max)||a.DATE_MAX(d)})}else{const s=_(e,p,new Date);f(s)||n.addIssue({code:o.ZodIssueCode.invalid_date,message:(i==null?void 0:i.invalidDate)||a.DATE_INVALID_FORMAT()}),t&&s.getTime()<(m.isString(t)?new Date(t).getTime():t.getTime())&&n.addIssue({code:o.ZodIssueCode.invalid_date,message:(i==null?void 0:i.min)||a.DATE_MIN(t)}),d&&s.getTime()>(m.isString(d)?new Date(d).getTime():d.getTime())&&n.addIssue({code:o.ZodIssueCode.invalid_date,message:(i==null?void 0:i.max)||a.DATE_MAX(d)})}}}).optional()};function x(l){const{required:u=!0}=l||{};return u?g(l):c(l)}export{x as getDateSchema};
1
+ import*as o from"../../../../node_modules/zod/v3/external.js";import{baseDefaultMessages as a}from"./base.constants.js";import"react/jsx-runtime";import{TypeGuards as n}from"../../utils/typeGuards.js";import"../../ui/button/Button.js";import"../../ui/buttonIcon/ButtonIcon.js";import"../../ui/calendar/Calendar.js";import{DATE_VISIBLE_PATTERN as D}from"../../ui/calendar/model/utils.js";import"../../ui/accordion/Accordion.js";import"react";import"react-dom";import"../../ui/modal/ui/IframeModalContent.js";import"../../../../node_modules/react-hot-toast/dist/index.js";import"../../ui/table/ui/primitives/Primitives.js";import"../../ui/carousel/ui/CarouselContent.js";import"../../ui/slot/Slot.js";import"../../ui/formElements/uncontrolled/autocomplete/Autocomplete.js";import"../../ui/formElements/uncontrolled/checkbox/Checkbox.js";import"../../ui/formElements/uncontrolled/combobox/combobox.js";import"../../ui/formElements/uncontrolled/dayPicker/DayPicker.js";import"../../ui/formElements/uncontrolled/input/Input.js";import"../../ui/formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../../ui/formElements/uncontrolled/maskInput/MaskInput.js";import"../../ui/formElements/uncontrolled/radio/RadioGroup.js";import"../../ui/formElements/uncontrolled/radio/ui/RadioItem.js";import"../../ui/formElements/uncontrolled/slider/SliderBase.js";import"../../ui/formElements/uncontrolled/switch/Switch.js";import"../../ui/formElements/uncontrolled/textarea/Textarea.js";import"../../ui/formElements/uncontrolled/uploader/UploaderBase.js";import"../../ui/formElements/uncontrolled/inputCurrency/InputCurrency.js";import"../../ui/formElements/controlled/editor/ui/Editor.js";import"../../ui/formElements/controlled/input/MaskInputControl.js";import"../../ui/dropdownList/ui/dropdownItem/DropdownItem.js";import{parse as _}from"../../../../node_modules/date-fns/parse.js";import{isValid as f}from"../../../../node_modules/date-fns/isValid.js";const g=l=>{const{iso:u=!0,pattern:p=D,min:t,max:d,defaultValue:i,message:e}=l||{};return o.string().min(8,(e==null?void 0:e.min)||a.DATE_NON_EMPTY()).superRefine((r,m)=>{const I=p.replace(/\W/g,"").length;if(r.replace(/[._-]/g,"").length<I&&m.addIssue({code:o.ZodIssueCode.too_small,minimum:I,type:"date",inclusive:!0,message:(e==null?void 0:e.min)||a.DATE_NON_EMPTY()}),u){let T=null;try{T=new Date(r)}catch{m.addIssue({code:o.ZodIssueCode.invalid_date,message:(e==null?void 0:e.invalidDate)||a.DATE_INVALID_FORMAT()})}t&&T.getTime()<(n.isString(t)?new Date(t).getTime():t.getTime())&&m.addIssue({code:o.ZodIssueCode.invalid_date,message:(e==null?void 0:e.min)||a.DATE_MIN(t)}),d&&T.getTime()>(n.isString(d)?new Date(d).getTime():d.getTime())&&m.addIssue({code:o.ZodIssueCode.invalid_date,message:(e==null?void 0:e.max)||a.DATE_MAX(d)})}else{const T=_(r,p,new Date);f(T)||m.addIssue({code:o.ZodIssueCode.invalid_date,message:(e==null?void 0:e.invalidDate)||a.DATE_INVALID_FORMAT()}),t&&T.getTime()<(n.isString(t)?new Date(t).getTime():t.getTime())&&m.addIssue({code:o.ZodIssueCode.invalid_date,message:(e==null?void 0:e.min)||a.DATE_MIN(t)}),d&&T.getTime()>(n.isString(d)?new Date(d).getTime():d.getTime())&&m.addIssue({code:o.ZodIssueCode.invalid_date,message:(e==null?void 0:e.max)||a.DATE_MAX(d)})}}).default(i??"")},c=l=>{const{iso:u=!0,pattern:p=D,min:t,max:d,message:i}=l||{};return o.string().transform(e=>e||void 0).superRefine((e,r)=>{if(n.isString(e)&&e.length){const m=p.replace(/\W/g,"").length;if(e.replace(/[._-]/g,"").length<m&&r.addIssue({code:o.ZodIssueCode.too_small,minimum:m,type:"date",inclusive:!0,message:(i==null?void 0:i.min)||a.DATE_NON_EMPTY()}),u){let s=null;try{s=new Date(e)}catch{r.addIssue({code:o.ZodIssueCode.invalid_date,message:(i==null?void 0:i.invalidDate)||a.DATE_INVALID_FORMAT()})}t&&s.getTime()<(n.isString(t)?new Date(t).getTime():t.getTime())&&r.addIssue({code:o.ZodIssueCode.invalid_date,message:(i==null?void 0:i.min)||a.DATE_MIN(t)}),d&&s.getTime()>(n.isString(d)?new Date(d).getTime():d.getTime())&&r.addIssue({code:o.ZodIssueCode.invalid_date,message:(i==null?void 0:i.max)||a.DATE_MAX(d)})}else{const s=_(e,p,new Date);f(s)||r.addIssue({code:o.ZodIssueCode.invalid_date,message:(i==null?void 0:i.invalidDate)||a.DATE_INVALID_FORMAT()}),t&&s.getTime()<(n.isString(t)?new Date(t).getTime():t.getTime())&&r.addIssue({code:o.ZodIssueCode.invalid_date,message:(i==null?void 0:i.min)||a.DATE_MIN(t)}),d&&s.getTime()>(n.isString(d)?new Date(d).getTime():d.getTime())&&r.addIssue({code:o.ZodIssueCode.invalid_date,message:(i==null?void 0:i.max)||a.DATE_MAX(d)})}}}).optional()};function ee(l){const{required:u=!0}=l||{};return u?g(l):c(l)}export{ee as getDateSchema};
2
2
  //# sourceMappingURL=date.validators.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"date.validators.js","sources":["../../../../../lib/shared/validation/base/date.validators.ts"],"sourcesContent":["import { isValid, parse } from 'date-fns'\nimport z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\nimport { DATE_VISIBLE_PATTERN } from '$/shared/ui'\nimport { TypeGuards } from '$/shared/utils'\n\nexport type DateValidationOptions<Required extends boolean> = {\n /**\n * валидация строки с учетом ISO формата\n * @default true\n */\n iso?: boolean\n /**\n * шаблон для валидации строки (будет проигнорирован, если `iso = true`)\n * @default 'dd.MM.yyyy'\n */\n pattern?: string\n /**\n * минимальная дата\n * `Date | ISO string`\n */\n min?: Date | string\n /**\n * максимальная дата\n * `Date | ISO string`\n */\n max?: Date | string\n /**\n * указывает что поле обязательное\n */\n required?: Required\n /**\n * значение по умолчанию\n * @default undefined\n */\n defaultValue?: string\n message?: {\n min?: string\n max?: string\n invalidDate?: string\n }\n}\n\n/**\n * Схема валидации обязательного поля даты\n */\nconst getDateRequired = (props?: Omit<DateValidationOptions<boolean>, 'required'>) => {\n const { iso = true, pattern = DATE_VISIBLE_PATTERN, min, max, defaultValue, message } = props || {}\n\n return z\n .string()\n .min(8, message?.min || baseDefaultMessages.DATE_NON_EMPTY())\n .superRefine((value, context) => {\n const validSymbolsLength = pattern.replace(/\\W/g, '').length\n const cleanedValue = value.replace(/[._-]/g, '')\n\n if (cleanedValue.length < validSymbolsLength) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n minimum: validSymbolsLength,\n type: 'date',\n inclusive: true,\n message: message?.min || baseDefaultMessages.DATE_NON_EMPTY()\n })\n }\n\n if (iso) {\n let date: Date | null = null\n\n try {\n date = new Date(value)\n } catch {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.invalidDate || baseDefaultMessages.DATE_INVALID_FORMAT()\n })\n }\n\n if (min) {\n if (date!.getTime() < (TypeGuards.isString(min) ? new Date(min).getTime() : min.getTime())) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.min || baseDefaultMessages.DATE_MIN(min)\n })\n }\n }\n\n if (max) {\n if (date!.getTime() > (TypeGuards.isString(max) ? new Date(max).getTime() : max.getTime())) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.max || baseDefaultMessages.DATE_MAX(max)\n })\n }\n }\n } else {\n const date = parse(value, pattern, new Date())\n\n if (!isValid(date)) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.invalidDate || baseDefaultMessages.DATE_INVALID_FORMAT()\n })\n }\n\n if (min) {\n if (date.getTime() < (TypeGuards.isString(min) ? new Date(min).getTime() : min.getTime())) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.min || baseDefaultMessages.DATE_MIN(min)\n })\n }\n }\n\n if (max) {\n if (date.getTime() > (TypeGuards.isString(max) ? new Date(max).getTime() : max.getTime())) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.max || baseDefaultMessages.DATE_MAX(max)\n })\n }\n }\n }\n })\n .default(defaultValue ?? '')\n}\ntype DateRequiredSchema = ReturnType<typeof getDateRequired>\n\n/**\n * Схема валидации опционального поля даты\n */\nconst getDateOptional = (props?: Omit<DateValidationOptions<boolean>, 'required'>) => {\n const { iso = true, pattern = DATE_VISIBLE_PATTERN, min, max, message } = props || {}\n\n return z\n .string()\n .transform((value) => (!value ? undefined : value))\n .superRefine((value, context) => {\n if (TypeGuards.isString(value) && Boolean(value.length)) {\n const validSymbolsLength = pattern.replace(/\\W/g, '').length\n const cleanedValue = value.replace(/[._-]/g, '')\n\n if (cleanedValue.length < validSymbolsLength) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n minimum: validSymbolsLength,\n type: 'date',\n inclusive: true,\n message: message?.min || baseDefaultMessages.DATE_NON_EMPTY()\n })\n }\n\n if (iso) {\n let date: Date | null = null\n\n try {\n date = new Date(value)\n } catch {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.invalidDate || baseDefaultMessages.DATE_INVALID_FORMAT()\n })\n }\n\n if (min) {\n if (date!.getTime() < (TypeGuards.isString(min) ? new Date(min).getTime() : min.getTime())) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.min || baseDefaultMessages.DATE_MIN(min)\n })\n }\n }\n\n if (max) {\n if (date!.getTime() > (TypeGuards.isString(max) ? new Date(max).getTime() : max.getTime())) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.max || baseDefaultMessages.DATE_MAX(max)\n })\n }\n }\n } else {\n const date = parse(value, pattern, new Date())\n\n if (!isValid(date)) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.invalidDate || baseDefaultMessages.DATE_INVALID_FORMAT()\n })\n }\n\n if (min) {\n if (date.getTime() < (TypeGuards.isString(min) ? new Date(min).getTime() : min.getTime())) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.min || baseDefaultMessages.DATE_MIN(min)\n })\n }\n }\n\n if (max) {\n if (date.getTime() > (TypeGuards.isString(max) ? new Date(max).getTime() : max.getTime())) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.max || baseDefaultMessages.DATE_MAX(max)\n })\n }\n }\n }\n }\n })\n .optional()\n}\ntype DateOptionalSchema = ReturnType<typeof getDateOptional>\n\n/**\n * Схема валидации поля даты\n * @param {DateValidationOptions} props настройки схемы\n * @typeParam `required` - `boolean`\n * @typeParam `iso` - `boolean | undefined`\n * @typeParam `pattern` - `string | undefined`\n * @typeParam `message` - `{ [min | invalidOperator]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example with required value\n * z.object({\n * field: zodValidators.base.getDateSchema()\n * })\n * // will returns z.string()\n *\n * @example with required value\n * z.object({\n * field: zodValidators.base.getDateSchema({ required: false })\n * })\n * // will returns z.string().optional()\n */\nexport function getDateSchema(props?: DateValidationOptions<true>): DateRequiredSchema\nexport function getDateSchema(props?: DateValidationOptions<false>): DateOptionalSchema\nexport function getDateSchema<Required extends boolean>(\n props?: DateValidationOptions<Required>\n): DateRequiredSchema | DateOptionalSchema {\n const { required = true } = props || {}\n\n return required ? getDateRequired(props) : getDateOptional(props)\n}\n"],"names":["getDateRequired","props","iso","pattern","DATE_VISIBLE_PATTERN","min","max","defaultValue","message","z","baseDefaultMessages","value","context","validSymbolsLength","date","TypeGuards","parse","isValid","getDateOptional","getDateSchema","required"],"mappings":"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"}
1
+ {"version":3,"file":"date.validators.js","sources":["../../../../../lib/shared/validation/base/date.validators.ts"],"sourcesContent":["import { isValid, parse } from 'date-fns'\nimport z from 'zod'\nimport { baseDefaultMessages } from './base.constants'\nimport { DATE_VISIBLE_PATTERN } from '$/shared/ui'\nimport { TypeGuards } from '$/shared/utils'\n\nexport type DateValidationOptions<Required extends boolean> = {\n /**\n * валидация строки с учетом ISO формата\n * @default true\n */\n iso?: boolean\n /**\n * шаблон для валидации строки (будет проигнорирован, если `iso = true`)\n * @default 'dd.MM.yyyy'\n */\n pattern?: string\n /**\n * минимальная дата\n * `Date | ISO string`\n */\n min?: Date | string\n /**\n * максимальная дата\n * `Date | ISO string`\n */\n max?: Date | string\n /**\n * указывает что поле обязательное\n */\n required?: Required\n /**\n * значение по умолчанию\n * @default undefined\n */\n defaultValue?: string\n message?: {\n min?: string\n max?: string\n invalidDate?: string\n }\n}\n\n/**\n * Схема валидации обязательного поля даты\n */\nconst getDateRequired = (props?: Omit<DateValidationOptions<boolean>, 'required'>) => {\n const { iso = true, pattern = DATE_VISIBLE_PATTERN, min, max, defaultValue, message } = props || {}\n\n return z\n .string()\n .min(8, message?.min || baseDefaultMessages.DATE_NON_EMPTY())\n .superRefine((value, context) => {\n const validSymbolsLength = pattern.replace(/\\W/g, '').length\n const cleanedValue = value.replace(/[._-]/g, '')\n\n if (cleanedValue.length < validSymbolsLength) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n minimum: validSymbolsLength,\n type: 'date',\n inclusive: true,\n message: message?.min || baseDefaultMessages.DATE_NON_EMPTY()\n })\n }\n\n if (iso) {\n let date: Date | null = null\n\n try {\n date = new Date(value)\n } catch {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.invalidDate || baseDefaultMessages.DATE_INVALID_FORMAT()\n })\n }\n\n if (min) {\n if (date!.getTime() < (TypeGuards.isString(min) ? new Date(min).getTime() : min.getTime())) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.min || baseDefaultMessages.DATE_MIN(min)\n })\n }\n }\n\n if (max) {\n if (date!.getTime() > (TypeGuards.isString(max) ? new Date(max).getTime() : max.getTime())) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.max || baseDefaultMessages.DATE_MAX(max)\n })\n }\n }\n } else {\n const date = parse(value, pattern, new Date())\n\n if (!isValid(date)) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.invalidDate || baseDefaultMessages.DATE_INVALID_FORMAT()\n })\n }\n\n if (min) {\n if (date.getTime() < (TypeGuards.isString(min) ? new Date(min).getTime() : min.getTime())) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.min || baseDefaultMessages.DATE_MIN(min)\n })\n }\n }\n\n if (max) {\n if (date.getTime() > (TypeGuards.isString(max) ? new Date(max).getTime() : max.getTime())) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.max || baseDefaultMessages.DATE_MAX(max)\n })\n }\n }\n }\n })\n .default(defaultValue ?? '')\n}\ntype DateRequiredSchema = ReturnType<typeof getDateRequired>\n\n/**\n * Схема валидации опционального поля даты\n */\nconst getDateOptional = (props?: Omit<DateValidationOptions<boolean>, 'required'>) => {\n const { iso = true, pattern = DATE_VISIBLE_PATTERN, min, max, message } = props || {}\n\n return z\n .string()\n .transform((value) => (!value ? undefined : value))\n .superRefine((value, context) => {\n if (TypeGuards.isString(value) && Boolean(value.length)) {\n const validSymbolsLength = pattern.replace(/\\W/g, '').length\n const cleanedValue = value.replace(/[._-]/g, '')\n\n if (cleanedValue.length < validSymbolsLength) {\n context.addIssue({\n code: z.ZodIssueCode.too_small,\n minimum: validSymbolsLength,\n type: 'date',\n inclusive: true,\n message: message?.min || baseDefaultMessages.DATE_NON_EMPTY()\n })\n }\n\n if (iso) {\n let date: Date | null = null\n\n try {\n date = new Date(value)\n } catch {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.invalidDate || baseDefaultMessages.DATE_INVALID_FORMAT()\n })\n }\n\n if (min) {\n if (date!.getTime() < (TypeGuards.isString(min) ? new Date(min).getTime() : min.getTime())) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.min || baseDefaultMessages.DATE_MIN(min)\n })\n }\n }\n\n if (max) {\n if (date!.getTime() > (TypeGuards.isString(max) ? new Date(max).getTime() : max.getTime())) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.max || baseDefaultMessages.DATE_MAX(max)\n })\n }\n }\n } else {\n const date = parse(value, pattern, new Date())\n\n if (!isValid(date)) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.invalidDate || baseDefaultMessages.DATE_INVALID_FORMAT()\n })\n }\n\n if (min) {\n if (date.getTime() < (TypeGuards.isString(min) ? new Date(min).getTime() : min.getTime())) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.min || baseDefaultMessages.DATE_MIN(min)\n })\n }\n }\n\n if (max) {\n if (date.getTime() > (TypeGuards.isString(max) ? new Date(max).getTime() : max.getTime())) {\n context.addIssue({\n code: z.ZodIssueCode.invalid_date,\n message: message?.max || baseDefaultMessages.DATE_MAX(max)\n })\n }\n }\n }\n }\n })\n .optional()\n}\ntype DateOptionalSchema = ReturnType<typeof getDateOptional>\n\n/**\n * Схема валидации поля даты\n * @param {DateValidationOptions} props настройки схемы\n * @typeParam `required` - `boolean`\n * @typeParam `iso` - `boolean | undefined`\n * @typeParam `pattern` - `string | undefined`\n * @typeParam `message` - `{ [min | invalidOperator]: string }`\n * @returns схема валидации поля в соответствии с настройками\n *\n * @example with required value\n * z.object({\n * field: zodValidators.base.getDateSchema()\n * })\n * // will returns z.string()\n *\n * @example with required value\n * z.object({\n * field: zodValidators.base.getDateSchema({ required: false })\n * })\n * // will returns z.string().optional()\n */\nexport function getDateSchema(props?: DateValidationOptions<true>): DateRequiredSchema\nexport function getDateSchema(props?: DateValidationOptions<false>): DateOptionalSchema\nexport function getDateSchema<Required extends boolean>(\n props?: DateValidationOptions<Required>\n): DateRequiredSchema | DateOptionalSchema {\n const { required = true } = props || {}\n\n return required ? getDateRequired(props) : getDateOptional(props)\n}\n"],"names":["getDateRequired","props","iso","pattern","DATE_VISIBLE_PATTERN","min","max","defaultValue","message","z","baseDefaultMessages","value","context","validSymbolsLength","date","TypeGuards","parse","isValid","getDateOptional","getDateSchema","required"],"mappings":"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"}