@ryuzaki13/react-foundation-ui 1.5.13 → 1.5.15

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 (274) hide show
  1. package/dist/advanced-search/index.js +5 -5
  2. package/dist/chunks/{TextEditorLexicalClient-B084kVzu.js → TextEditorLexicalClient-ChVeb3f3.js} +2 -2
  3. package/dist/chunks/{TextEditorLexicalClient-B084kVzu.js.map → TextEditorLexicalClient-ChVeb3f3.js.map} +1 -1
  4. package/dist/chunks/{date-input-9T8AoG5U.js → date-input-QRwRTMmy.js} +2 -2
  5. package/dist/chunks/{date-input-9T8AoG5U.js.map → date-input-QRwRTMmy.js.map} +1 -1
  6. package/dist/chunks/{input-VC8jEoTa.js → input-D3u9BYWD.js} +31 -28
  7. package/dist/chunks/input-D3u9BYWD.js.map +1 -0
  8. package/dist/chunks/{input-files-CoMjadk7.js → input-files-D7iu_1n5.js} +5 -5
  9. package/dist/chunks/{input-files-CoMjadk7.js.map → input-files-D7iu_1n5.js.map} +1 -1
  10. package/dist/chunks/{input-search-Bs_9SxT0.js → input-search-4841icgL.js} +2 -2
  11. package/dist/chunks/{input-search-Bs_9SxT0.js.map → input-search-4841icgL.js.map} +1 -1
  12. package/dist/chunks/{multi-select-BJ6Lst1E.js → multi-select-BDvaRbUc.js} +8 -7
  13. package/dist/chunks/multi-select-BDvaRbUc.js.map +1 -0
  14. package/dist/chunks/{picker-DLnfOgZj.js → picker-lpH_xp14.js} +87 -87
  15. package/dist/chunks/picker-lpH_xp14.js.map +1 -0
  16. package/dist/chunks/{select-CysiIrej.js → select-3KLv_evq.js} +6 -6
  17. package/dist/chunks/select-3KLv_evq.js.map +1 -0
  18. package/dist/date-input/index.js +1 -1
  19. package/dist/date-time-input/index.js +4 -4
  20. package/dist/drop-zone/index.js +1 -1
  21. package/dist/image/index.js +2 -2
  22. package/dist/input/Input.d.ts +1 -0
  23. package/dist/input/Input.d.ts.map +1 -1
  24. package/dist/input/index.js +2 -2
  25. package/dist/input-date-time/index.js +4 -4
  26. package/dist/input-file/index.js +4 -4
  27. package/dist/input-files/index.js +1 -1
  28. package/dist/input-image/index.js +4 -4
  29. package/dist/input-search/index.js +1 -1
  30. package/dist/layout-picker/index.js +1 -1
  31. package/dist/listbox/index.js +1 -1
  32. package/dist/listbox/index.js.map +1 -1
  33. package/dist/multi-select/index.js +1 -1
  34. package/dist/multi-select/ui/MultiSelect.d.ts.map +1 -1
  35. package/dist/multi-select/ui/ODataMultiSelect.d.ts.map +1 -1
  36. package/dist/picker/PickerStatus.d.ts +1 -2
  37. package/dist/picker/PickerStatus.d.ts.map +1 -1
  38. package/dist/picker/PickerTriggerInput.d.ts +1 -0
  39. package/dist/picker/PickerTriggerInput.d.ts.map +1 -1
  40. package/dist/picker/index.js +1 -1
  41. package/dist/preset-range-date-input/index.js +1 -1
  42. package/dist/preset-select/index.js +1 -1
  43. package/dist/select/Select.d.ts +1 -1
  44. package/dist/select/Select.d.ts.map +1 -1
  45. package/dist/select/index.js +1 -1
  46. package/dist/slider/index.js +8 -8
  47. package/dist/state-select/index.js +1 -1
  48. package/dist/tag-input/index.js +3 -3
  49. package/dist/text-editor/index.js +1 -1
  50. package/dist/textarea/index.js +3 -3
  51. package/dist/tree-select/TreePickerBase.d.ts.map +1 -1
  52. package/dist/tree-select/index.js +5 -5
  53. package/dist/tree-select/index.js.map +1 -1
  54. package/package.json +1 -1
  55. package/storybook-static/assets/{Badge-Cz9gcxIU.js → Badge-DldwMP5d.js} +1 -1
  56. package/storybook-static/assets/{Badge.stories-PV88uXCB.js → Badge.stories-CB4lGRxY.js} +1 -1
  57. package/storybook-static/assets/{BadgeList-BMO51PtO.js → BadgeList-DP-72loV.js} +1 -1
  58. package/storybook-static/assets/{Button-DQxw6N8K.js → Button-BHscU-z3.js} +1 -1
  59. package/storybook-static/assets/{Button-BfLxUIid.js → Button-Bve0Lsd9.js} +1 -1
  60. package/storybook-static/assets/{Button.stories-NlwBLVkf.js → Button.stories-CQSct8PY.js} +1 -1
  61. package/storybook-static/assets/{CalendarView-C_i7clUL.js → CalendarView-MNrakgtl.js} +1 -1
  62. package/storybook-static/assets/{CheckBox-3WpAVlwd.js → CheckBox-BFPm58c_.js} +1 -1
  63. package/storybook-static/assets/{CheckBox-Drc-88GM.js → CheckBox-Czrn4-bF.js} +1 -1
  64. package/storybook-static/assets/{CheckBox.stories-D4IsLr4P.js → CheckBox.stories-aZatr3pc.js} +1 -1
  65. package/storybook-static/assets/{Color-6AOWCN3U-CPY8DhM_.js → Color-6AOWCN3U-CiSKW9je.js} +1 -1
  66. package/storybook-static/assets/{ContextMenu-BjBW8_sr.js → ContextMenu-BgqQQbbY.js} +1 -1
  67. package/storybook-static/assets/{ContextMenu-D2--kuIS.js → ContextMenu-CD9NSiLw.js} +1 -1
  68. package/storybook-static/assets/{ContextMenu.stories-yGhy89Pi.js → ContextMenu.stories-hdAAEtrI.js} +1 -1
  69. package/storybook-static/assets/DateInput-BNOPi8tv.js +1 -0
  70. package/storybook-static/assets/{DateInput-G4c2mjqq.js → DateInput-BfSiBIl7.js} +1 -1
  71. package/storybook-static/assets/{DateInput.stories-5ciPhgGf.js → DateInput.stories-DH6ku3Rc.js} +1 -1
  72. package/storybook-static/assets/{DateRangePresetSelect-C9M3c98a.js → DateRangePresetSelect-DG_q8icb.js} +1 -1
  73. package/storybook-static/assets/{DateRangePresetSelect-DJ4HV2xU.js → DateRangePresetSelect-yrKx1bkL.js} +1 -1
  74. package/storybook-static/assets/{DateRangePresetSelect.stories-C8Ohsfia.js → DateRangePresetSelect.stories-BZvZ3f2V.js} +1 -1
  75. package/storybook-static/assets/{Detail-CSPYsUEC.js → Detail-BDVQnuaF.js} +1 -1
  76. package/storybook-static/assets/{Detail.stories-LsOTK5pf.js → Detail.stories-CYmQh0uU.js} +1 -1
  77. package/storybook-static/assets/{Dialog-C8i0iW4a.js → Dialog-BZyurJz4.js} +1 -1
  78. package/storybook-static/assets/{Dialog-BjEcdbGi.js → Dialog-BwrMFaxL.js} +1 -1
  79. package/storybook-static/assets/{Dialog.stories-BnmqXDWO.js → Dialog.stories-DVSdUxZ7.js} +1 -1
  80. package/storybook-static/assets/{Disclosure-Cvsl0gPE.js → Disclosure-BMSmmUiw.js} +1 -1
  81. package/storybook-static/assets/{Disclosure.stories-CFfYWULd.js → Disclosure.stories-CbJ9Es-C.js} +1 -1
  82. package/storybook-static/assets/{DisclosureGroup-ZnY0phsi.js → DisclosureGroup-EDWONIdc.js} +1 -1
  83. package/storybook-static/assets/{DocsRenderer-JROSPFPF-8jGqLFb9.js → DocsRenderer-JROSPFPF-DSQiqbJZ.js} +1 -1
  84. package/storybook-static/assets/{DropZone-DFqqqipb.js → DropZone-CDZMeILF.js} +1 -1
  85. package/storybook-static/assets/{DropZone-DvuKp6tN.js → DropZone-DeAXD85q.js} +1 -1
  86. package/storybook-static/assets/{DropZone.stories-B1xdFmz3.js → DropZone.stories-BqoW_3wP.js} +1 -1
  87. package/storybook-static/assets/{DropdownMenu-BrgLHYbc.js → DropdownMenu-BzlgFl8n.js} +1 -1
  88. package/storybook-static/assets/{ExpandableActionPanel-CBOJ7TTT.js → ExpandableActionPanel-C5uzOOG0.js} +1 -1
  89. package/storybook-static/assets/{ExpandableActionPanel.stories-ColZw5gd.js → ExpandableActionPanel.stories-i_SklR9s.js} +1 -1
  90. package/storybook-static/assets/{Flex-BT_QGMVX.js → Flex-DpQ24IHJ.js} +1 -1
  91. package/storybook-static/assets/{Flex.stories-CEgggepS.js → Flex.stories-bHyNTNg1.js} +1 -1
  92. package/storybook-static/assets/{FloatingPopover-ClEj7JDK.js → FloatingPopover-STiijh_P.js} +1 -1
  93. package/storybook-static/assets/{FormattedTableCell-Cwt_acDE.js → FormattedTableCell-D6bBTkaG.js} +1 -1
  94. package/storybook-static/assets/{Grid-CfILre0m.js → Grid-Bphykxdg.js} +1 -1
  95. package/storybook-static/assets/{Grid.stories-wQ7jvA5X.js → Grid.stories-D8IvHZzt.js} +1 -1
  96. package/storybook-static/assets/{ImageCropper.stories-BMJDf8-2.js → ImageCropper.stories-CBKBFppK.js} +1 -1
  97. package/storybook-static/assets/{ImageRenderer-COuwgno_.js → ImageRenderer-BLyK861z.js} +1 -1
  98. package/storybook-static/assets/{ImageRenderer.stories-DsdXyXKD.js → ImageRenderer.stories-ffdIT08r.js} +1 -1
  99. package/storybook-static/assets/{ImageView.stories-iNAQGgcZ.js → ImageView.stories-CNUlVM8s.js} +1 -1
  100. package/storybook-static/assets/{ImageViewer.stories-BYAuiSK7.js → ImageViewer.stories-Ms-ALdLt.js} +2 -2
  101. package/storybook-static/assets/{ImageViewerRuntime-DVlrAVlM.js → ImageViewerRuntime-DpJELdy_.js} +1 -1
  102. package/storybook-static/assets/Input-DBiChvMe.js +3 -0
  103. package/storybook-static/assets/{Input-BhXx34oj.js → Input-yBrifTXs.js} +1 -1
  104. package/storybook-static/assets/{Input.stories-cYqQabmU.js → Input.stories-CjcpHWcs.js} +1 -1
  105. package/storybook-static/assets/{InputDateTime-BqmrEg_Q.js → InputDateTime-B_jDcTqs.js} +1 -1
  106. package/storybook-static/assets/InputDateTime.stories-CAQzQH3t.js +38 -0
  107. package/storybook-static/assets/{InputFile-BCZ1O6Id.js → InputFile-D5VmcZpC.js} +1 -1
  108. package/storybook-static/assets/InputFile-fNgIzpGf.js +1 -0
  109. package/storybook-static/assets/{InputFile.stories-Cn9z-0xo.js → InputFile.stories-BNnT9A9v.js} +1 -1
  110. package/storybook-static/assets/InputFiles-BlkbLv47.js +1 -0
  111. package/storybook-static/assets/{InputFiles-c9zsOv2D.js → InputFiles-CtQKNcCo.js} +1 -1
  112. package/storybook-static/assets/{InputFiles.stories-m9aTBp1E.js → InputFiles.stories-BJn-YsDa.js} +1 -1
  113. package/storybook-static/assets/{InputFilesList-CokmKz6s.js → InputFilesList-lWrwPimQ.js} +1 -1
  114. package/storybook-static/assets/{InputImage-ONEbMmSy.js → InputImage-DBhS-3SD.js} +1 -1
  115. package/storybook-static/assets/{InputImage-hzPQOP_G.js → InputImage-DjIsVDMm.js} +1 -1
  116. package/storybook-static/assets/{InputImage.stories-DtmL7qrl.js → InputImage.stories-uS8YZ8OU.js} +1 -1
  117. package/storybook-static/assets/{InteractiveComponents-D9I5JYap.js → InteractiveComponents-CSDnze29.js} +1 -1
  118. package/storybook-static/assets/{InteractiveComponents.stories-Rkp13MQ5.js → InteractiveComponents.stories-C-qWn4VL.js} +1 -1
  119. package/storybook-static/assets/{LayoutPicker-Dy9IvK0b.js → LayoutPicker-FRNg3HmE.js} +1 -1
  120. package/storybook-static/assets/{LayoutPicker-BodO442K.js → LayoutPicker-bi0eHID1.js} +1 -1
  121. package/storybook-static/assets/{LayoutPicker.stories-exb5TXXF.js → LayoutPicker.stories-CY9pmqLs.js} +1 -1
  122. package/storybook-static/assets/{Listbox-CQ80dSOo.js → Listbox-CemgFVhQ.js} +1 -1
  123. package/storybook-static/assets/{Listbox-CZ1FQQ5X.js → Listbox-f89xR3TU.js} +1 -1
  124. package/storybook-static/assets/{Listbox.stories-Nfzs72Yd.js → Listbox.stories-CgL3tWpH.js} +1 -1
  125. package/storybook-static/assets/{Modal--uBl58UW.js → Modal-hBFJVwb4.js} +1 -1
  126. package/storybook-static/assets/{Modal.stories-D77rBBBh.js → Modal.stories-ChrBZSkG.js} +1 -1
  127. package/storybook-static/assets/{ModalManagerProvider-Dwn7kE4K.js → ModalManagerProvider-CCHfccow.js} +1 -1
  128. package/storybook-static/assets/{MultiSelect-BlTby36f.js → MultiSelect-BK12v3Cq.js} +1 -1
  129. package/storybook-static/assets/MultiSelect-Dr5CQeIO.js +2 -0
  130. package/storybook-static/assets/{MultiSelect.stories-BEHlAAJJ.js → MultiSelect.stories-DsSw6woy.js} +1 -1
  131. package/storybook-static/assets/{NoData-DLuw3XVk.js → NoData-DmgbBfVW.js} +1 -1
  132. package/storybook-static/assets/{NotificationsHost-BB5Np8PK.js → NotificationsHost-BAIpEqnM.js} +1 -1
  133. package/storybook-static/assets/{NotificationsHost.stories-DDadi6Mw.js → NotificationsHost.stories-NayVs4Pk.js} +1 -1
  134. package/storybook-static/assets/{ODataMultiSelect-XFTdhfCe.js → ODataMultiSelect-jNIRRDb2.js} +1 -1
  135. package/storybook-static/assets/ODataMultiSelect.stories-CWj51Zvd.js +137 -0
  136. package/storybook-static/assets/{ODataSelect-C01W8jth.js → ODataSelect-DQ31vwaX.js} +1 -1
  137. package/storybook-static/assets/ODataSelect.stories-DPrdwHyr.js +207 -0
  138. package/storybook-static/assets/{ODataTreeMultiSelect-sGEW_iPs.js → ODataTreeMultiSelect-BUHLV3tv.js} +1 -1
  139. package/storybook-static/assets/{ODataTreeMultiSelect.stories-CKN_SvQU.js → ODataTreeMultiSelect.stories-BVQaJtdc.js} +1 -1
  140. package/storybook-static/assets/{ODataTreeSelect-1hCNPZNo.js → ODataTreeSelect-CjlD8Or9.js} +1 -1
  141. package/storybook-static/assets/{ODataTreeSelect.stories-GDmyjoWv.js → ODataTreeSelect.stories-Blu9kCg4.js} +1 -1
  142. package/storybook-static/assets/{OneStepScroller-dsU38i0h.js → OneStepScroller-ddh_nRgx.js} +1 -1
  143. package/storybook-static/assets/{PeriodSelect-B5IQUCox.js → PeriodSelect-BNYzz5bI.js} +1 -1
  144. package/storybook-static/assets/{PeriodSelect-Dar6tgT-.js → PeriodSelect-Bpn0Gwht.js} +1 -1
  145. package/storybook-static/assets/{PeriodSelect.stories-s4UcTVBB.js → PeriodSelect.stories-Daj7UH8v.js} +1 -1
  146. package/storybook-static/assets/{PickerSelectionToolbar-BrUGVuF4.js → PickerSelectionToolbar-DOusOxuB.js} +1 -1
  147. package/storybook-static/assets/{PickerTriggerActions-CiB7RNtz.js → PickerTriggerActions-DcLFOMBR.js} +1 -1
  148. package/storybook-static/assets/{Popover-BUpM2SdA.js → Popover-DOSQByLv.js} +1 -1
  149. package/storybook-static/assets/{Popover-CElnnd4d.js → Popover-Dp1WZ351.js} +1 -1
  150. package/storybook-static/assets/{Popover.stories-CDPYRGg5.js → Popover.stories-C5rNeweU.js} +1 -1
  151. package/storybook-static/assets/{PresetRangeDateInput-DWsBB7Xe.js → PresetRangeDateInput-C47SD8Wh.js} +1 -1
  152. package/storybook-static/assets/{PresetRangeDateInput-DKbX277t.js → PresetRangeDateInput-D4IVr33W.js} +1 -1
  153. package/storybook-static/assets/{PresetRangeDateInput.stories-CLnxG1Su.js → PresetRangeDateInput.stories-Hils_9pa.js} +1 -1
  154. package/storybook-static/assets/{PresetSelect-TONMNVox.js → PresetSelect-DLQMUw6v.js} +1 -1
  155. package/storybook-static/assets/{RadioButton-CHp5HFET.js → RadioButton-BPnBnsQn.js} +1 -1
  156. package/storybook-static/assets/{RadioButton-C8cdy1c5.js → RadioButton-BVaLDFV8.js} +1 -1
  157. package/storybook-static/assets/{RadioButton.stories-D-wI-ysI.js → RadioButton.stories-D1N7hhYj.js} +1 -1
  158. package/storybook-static/assets/{RadioGroup-RnbEh9jf.js → RadioGroup-DRTeV91W.js} +1 -1
  159. package/storybook-static/assets/{RadioGroup-Cyzz_ISM.js → RadioGroup-DY6lfEMI.js} +1 -1
  160. package/storybook-static/assets/{RadioGroup.stories-DAocx-vl.js → RadioGroup.stories-z3pvhBDW.js} +1 -1
  161. package/storybook-static/assets/{Scrollable-BZwDWzCP.js → Scrollable-BhY4xR4v.js} +1 -1
  162. package/storybook-static/assets/Select-DQSp_Ora.js +12 -0
  163. package/storybook-static/assets/{Select-BMWvHZb0.js → Select-xjBvVsFv.js} +1 -1
  164. package/storybook-static/assets/{Select.stories-Tt0ajJXV.js → Select.stories-DrFgfM4J.js} +1 -1
  165. package/storybook-static/assets/{SelectOptionContent-DZcX0XcL.js → SelectOptionContent-B3r2MCq9.js} +1 -1
  166. package/storybook-static/assets/{SerializableSelect-Cb2eKzWt.js → SerializableSelect-BgY63lvT.js} +1 -1
  167. package/storybook-static/assets/{SerializableSelect.stories-BMGIdje_.js → SerializableSelect.stories-DQ1TOnu-.js} +1 -1
  168. package/storybook-static/assets/{SingleDateTimeInput--8TJ-hnE.js → SingleDateTimeInput-BJmIUH4L.js} +1 -1
  169. package/storybook-static/assets/{SingleDateTimeInput-ByN30Wn3.js → SingleDateTimeInput-De-QgdP1.js} +1 -1
  170. package/storybook-static/assets/{SingleDateTimeInput.stories-CrsfwMCv.js → SingleDateTimeInput.stories-CVBxjtw1.js} +1 -1
  171. package/storybook-static/assets/Slider-ChIA3nZE.js +1 -0
  172. package/storybook-static/assets/{Slider-B7Zh8pKd.js → Slider-D5T295Oy.js} +1 -1
  173. package/storybook-static/assets/{Slider.stories-2Fh_zSe4.js → Slider.stories-1PzeXIzZ.js} +1 -1
  174. package/storybook-static/assets/SliderInput-B9fPy3Cn.js +2 -0
  175. package/storybook-static/assets/{SliderInput-2r2n9oBs.js → SliderInput-XwL2-00c.js} +1 -1
  176. package/storybook-static/assets/{SliderInput.stories-RrseFw59.js → SliderInput.stories-BYk9yit5.js} +1 -1
  177. package/storybook-static/assets/{Sortable-DHi8kx5A.js → Sortable-DJGBM9Up.js} +1 -1
  178. package/storybook-static/assets/{Sortable.stories-DJoStzvM.js → Sortable.stories-DNHi2j2g.js} +1 -1
  179. package/storybook-static/assets/{Splitter-Dxol4S_V.js → Splitter-BLtIq8GC.js} +1 -1
  180. package/storybook-static/assets/{Splitter.stories-BbVOMBqo.js → Splitter.stories-DwEuHo4U.js} +1 -1
  181. package/storybook-static/assets/{StateSelect-3OnKvOr4.js → StateSelect-3bHw0Mqx.js} +1 -1
  182. package/storybook-static/assets/{StateSelect-pbm7Jf8f.js → StateSelect-Cut_GUS9.js} +1 -1
  183. package/storybook-static/assets/{StateSelect.stories-CgTE3-yP.js → StateSelect.stories-BxcettN-.js} +1 -1
  184. package/storybook-static/assets/{StringToggle.stories-BSJLw3CZ.js → StringToggle.stories-DGJLDN6l.js} +1 -1
  185. package/storybook-static/assets/{Switch-BxBEQCPT.js → Switch-DACuBBcY.js} +1 -1
  186. package/storybook-static/assets/{Switch-BdBKEluZ.js → Switch-UEGPSa7I.js} +1 -1
  187. package/storybook-static/assets/{Switch.stories-D5DDiey7.js → Switch.stories-COyEd7ll.js} +1 -1
  188. package/storybook-static/assets/{Table-tNWO7Xkx.js → Table-C3L5k62i.js} +1 -1
  189. package/storybook-static/assets/{Table.stories-Co6W6DfX.js → Table.stories-Bg8zioLm.js} +1 -1
  190. package/storybook-static/assets/{Tabs-MhG7k5kZ.js → Tabs-Mp2c4cx_.js} +1 -1
  191. package/storybook-static/assets/{Tabs.stories-6-cDteqF.js → Tabs.stories-2n-gKA13.js} +1 -1
  192. package/storybook-static/assets/{TabsBox-CbcUNOlb.js → TabsBox-BpmIGtyk.js} +1 -1
  193. package/storybook-static/assets/{TagInput-BvhI42-e.js → TagInput-Dum97AE2.js} +1 -1
  194. package/storybook-static/assets/{TagInput.stories-Bh03CP2k.js → TagInput.stories-Hs0-B_N1.js} +1 -1
  195. package/storybook-static/assets/{Text-CvyKTMrH.js → Text-Cgi6ZSLz.js} +1 -1
  196. package/storybook-static/assets/{Textarea-JurrghA5.js → Textarea-CvLQOnIp.js} +1 -1
  197. package/storybook-static/assets/{Textarea-CZORYVJ_.js → Textarea-D72BTP62.js} +1 -1
  198. package/storybook-static/assets/{Textarea.stories-BUDqqVKy.js → Textarea.stories-vjBJEVm0.js} +1 -1
  199. package/storybook-static/assets/{TimePanel-DIKKUv5f.js → TimePanel-CW_su34b.js} +1 -1
  200. package/storybook-static/assets/{TimePanel.stories-B1q_i8WF.js → TimePanel.stories-6XPNZ7zt.js} +1 -1
  201. package/storybook-static/assets/{Toggle-BGRFjquY.js → Toggle-CJu4uO-W.js} +1 -1
  202. package/storybook-static/assets/{Toggle-C3KWroQa.js → Toggle-olojCi27.js} +1 -1
  203. package/storybook-static/assets/{Toggle.stories-CqaiA6sq.js → Toggle.stories-Cgyc4d77.js} +1 -1
  204. package/storybook-static/assets/{TreeMultiSelect-BT1UYS2s.js → TreeMultiSelect-EgBDsFyR.js} +1 -1
  205. package/storybook-static/assets/{TreeMultiSelect-BJt6pYdc.js → TreeMultiSelect-Kx5mztXt.js} +1 -1
  206. package/storybook-static/assets/{TreeMultiSelect.stories-B6fswq0n.js → TreeMultiSelect.stories-Dne12S2l.js} +1 -1
  207. package/storybook-static/assets/{TreePickerBase-Ezb14TOv.js → TreePickerBase-D1Pvek1r.js} +2 -2
  208. package/storybook-static/assets/{TreeSelect-6ad8aM5F.js → TreeSelect-DNfvUsxi.js} +1 -1
  209. package/storybook-static/assets/{TreeSelect-CdxWhNPr.js → TreeSelect-D_eYI6Ou.js} +1 -1
  210. package/storybook-static/assets/{TreeSelect.stories-BMjSPnlt.js → TreeSelect.stories-Bzm61QfI.js} +1 -1
  211. package/storybook-static/assets/{TreeTable-B10lvNT_.js → TreeTable-BL144oay.js} +1 -1
  212. package/storybook-static/assets/{TreeTable.stories-BOkFmk-a.js → TreeTable.stories-CyXEHcki.js} +1 -1
  213. package/storybook-static/assets/{async-Wscr5OK0.js → async-BTZglz_X.js} +1 -1
  214. package/storybook-static/assets/{blocks-BkGgmJsC.js → blocks-DA12rSpV.js} +3 -3
  215. package/storybook-static/assets/{browserAndReact-BKmF0BgP.js → browserAndReact-D1Ykifm6.js} +1 -1
  216. package/storybook-static/assets/{check-uBaZUURY.js → check-BX6nx-3o.js} +1 -1
  217. package/storybook-static/assets/{chevron-down-DbISRZCX.js → chevron-down-DNmFEwHw.js} +1 -1
  218. package/storybook-static/assets/{chevron-left-Cb-kl5mh.js → chevron-left-D4-j0hj3.js} +1 -1
  219. package/storybook-static/assets/{chevron-right-D99XGTe7.js → chevron-right-jqFyXkAQ.js} +1 -1
  220. package/storybook-static/assets/{chunk-W22LQPXL-D3-dGAP5.js → chunk-W22LQPXL-DTI5co7U.js} +1 -1
  221. package/storybook-static/assets/{circle-alert-CxdnePpP.js → circle-alert-CPhslK47.js} +1 -1
  222. package/storybook-static/assets/{circle-check-DxbzyOrj.js → circle-check-mqeGU7uk.js} +1 -1
  223. package/storybook-static/assets/{components-NKMCS9u_.js → components-B8GmvnkL.js} +3 -3
  224. package/storybook-static/assets/{contextMenu-CrE8d-C8.js → contextMenu-KnkARJmS.js} +1 -1
  225. package/storybook-static/assets/{defaultRenderers-DLjGcYhl.js → defaultRenderers-9jhgJsUF.js} +1 -1
  226. package/storybook-static/assets/{download-B34Dyboo.js → download-2bfCyDgM.js} +1 -1
  227. package/storybook-static/assets/{filesAndExcel-D0WmBd17.js → filesAndExcel-DVSSMVHy.js} +1 -1
  228. package/storybook-static/assets/{floating-ui.react-CHmsuwKl.js → floating-ui.react-DxmRb2Qf.js} +1 -1
  229. package/storybook-static/assets/{formatters-B5IRTBCO.js → formatters-DyKYAUlo.js} +1 -1
  230. package/storybook-static/assets/{formatters-runtime-DIIzhbds.js → formatters-runtime-Bz1bSLIu.js} +1 -1
  231. package/storybook-static/assets/{foundationLib-CVhEJ6js.js → foundationLib-aysuo_oK.js} +1 -1
  232. package/storybook-static/assets/{hooks-BDibLnHt.js → hooks-pwoB_iPM.js} +1 -1
  233. package/storybook-static/assets/iframe-C6KyCBvm.js +1 -0
  234. package/storybook-static/assets/{iframe-CD1cMwos.js → iframe-cjuwJElu.js} +5 -5
  235. package/storybook-static/assets/{info-YWjqfWxe.js → info-Bo4lQd-n.js} +1 -1
  236. package/storybook-static/assets/{odata-D3YkIfXJ.js → odata-st4-eYHw.js} +1 -1
  237. package/storybook-static/assets/{odataAndTables-C2flJmi6.js → odataAndTables-F9Gtp-kk.js} +1 -1
  238. package/storybook-static/assets/{odataFetchFn-DHf6YwiM.js → odataFetchFn-CkRZZriA.js} +1 -1
  239. package/storybook-static/assets/{odataStoryFixtures-C7XqnT73.js → odataStoryFixtures-CqSeDBqF.js} +1 -1
  240. package/storybook-static/assets/{persisted-CKfZAtRr.js → persisted-CjFXaS21.js} +1 -1
  241. package/storybook-static/assets/{pureUtilities-Bwoj6fXN.js → pureUtilities-DLQdVlhe.js} +1 -1
  242. package/storybook-static/assets/{react-BONe4qKn.js → react-CjERBoLl.js} +1 -1
  243. package/storybook-static/assets/{refresh-cw-DpHq4LQP.js → refresh-cw-JWYI2x81.js} +1 -1
  244. package/storybook-static/assets/{runtimeAndState-DsHleu6Y.js → runtimeAndState-BzzV3GX-.js} +1 -1
  245. package/storybook-static/assets/{settings-2-Dz6u0Wf2.js → settings-2-DG4qROG-.js} +1 -1
  246. package/storybook-static/assets/{sortable-VOkfa1Z-.js → sortable-CWsNoMxK.js} +1 -1
  247. package/storybook-static/assets/{syntaxhighlighter-T5IQBZDB-C4OOYkZu.js → syntaxhighlighter-T5IQBZDB-1bseUYr-.js} +1 -1
  248. package/storybook-static/assets/{trash-2-DTPcXUiI.js → trash-2-DcYDgK5k.js} +1 -1
  249. package/storybook-static/assets/{triangle-alert-DUI5nsd3.js → triangle-alert-CdAbGIRd.js} +1 -1
  250. package/storybook-static/assets/{useODataSelectBase-BpntR4Iz.js → useODataSelectBase-DCi7pW6G.js} +1 -1
  251. package/storybook-static/assets/{useODataTreeData-C2vzjXPp.js → useODataTreeData-bDwoSzvJ.js} +1 -1
  252. package/storybook-static/assets/usePickerQuery-CizLKZif.js +1 -0
  253. package/storybook-static/assets/usePickerTriggerController-C6_AtdR_.js +1 -0
  254. package/storybook-static/assets/{x-B8aXMeuU.js → x-DjlJGqcw.js} +1 -1
  255. package/storybook-static/iframe.html +2 -2
  256. package/storybook-static/project.json +1 -1
  257. package/dist/chunks/input-VC8jEoTa.js.map +0 -1
  258. package/dist/chunks/multi-select-BJ6Lst1E.js.map +0 -1
  259. package/dist/chunks/picker-DLnfOgZj.js.map +0 -1
  260. package/dist/chunks/select-CysiIrej.js.map +0 -1
  261. package/storybook-static/assets/DateInput-Dex3NjVs.js +0 -1
  262. package/storybook-static/assets/Input-DCQXBGK4.js +0 -3
  263. package/storybook-static/assets/InputDateTime.stories-C3xQIS7z.js +0 -38
  264. package/storybook-static/assets/InputFile-Bth1Jhjf.js +0 -1
  265. package/storybook-static/assets/InputFiles-CURwAma0.js +0 -1
  266. package/storybook-static/assets/MultiSelect-B725mcqy.js +0 -2
  267. package/storybook-static/assets/ODataMultiSelect.stories-V1UHe_oU.js +0 -137
  268. package/storybook-static/assets/ODataSelect.stories-GBg5TBT_.js +0 -207
  269. package/storybook-static/assets/Select-QJmM58Sy.js +0 -12
  270. package/storybook-static/assets/Slider-eV8LAbRY.js +0 -1
  271. package/storybook-static/assets/SliderInput-BjWQPhW1.js +0 -2
  272. package/storybook-static/assets/iframe-CTou9CRA.js +0 -1
  273. package/storybook-static/assets/usePickerQuery-BDYoi7Rg.js +0 -1
  274. package/storybook-static/assets/usePickerTriggerController-DAUdKKpa.js +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select-3KLv_evq.js","names":[],"sources":["../../src/select/lib/getOptionSearchText.ts","../../src/select/model/useODataSelect.ts","../../src/select/lib/createSelectOptionSections.ts","../../src/select/Select.module.scss","../../src/select/Select.tsx","../../src/select/ODataSelect.tsx","../../src/select/SerializableSelect.tsx"],"sourcesContent":["import { ReactNode } from \"react\";\n\nimport { InputType } from \"@ryuzaki13/react-foundation-lib/types\";\n\nimport { extractPickerTextContent } from \"../../picker\";\nimport { type SelectOptionGroup } from \"../SelectOptionGroup\";\n\nexport function getOptionSearchText<T extends InputType>({\n\toption,\n\tgetOptionLabel,\n\tgetOptionCode,\n\tgetOptionGroup\n}: {\n\toption: T;\n\tgetOptionLabel: (option: T) => ReactNode;\n\tgetOptionCode?: (option: T) => ReactNode;\n\tgetOptionGroup?: (option: T) => SelectOptionGroup | undefined;\n}) {\n\treturn [\n\t\textractPickerTextContent(getOptionLabel(option)),\n\t\textractPickerTextContent(getOptionCode?.(option)),\n\t\textractPickerTextContent(getOptionGroup?.(option)?.label)\n\t]\n\t\t.filter((part): part is string => Boolean(part))\n\t\t.join(\" \")\n\t\t.toLowerCase();\n}\n\n/** Находит selected option по value и возвращает fallback, если значение еще не нормализовано. */\nexport function resolveSelectedOption<TOption extends { value: string }>(\n\toptions: readonly TOption[],\n\tvalue: string,\n\tfallback: TOption\n): TOption {\n\treturn options.find((option) => option.value === value) ?? fallback;\n}\n","import { useMemo } from \"react\";\n\nimport { ODataCollectionModel, ODataSingleSelectProps } from \"@ryuzaki13/react-foundation-api/odata\";\nimport { CollectionItem } from \"@ryuzaki13/react-foundation-lib/odata\";\n\nimport { useODataSelectBase } from \"./useODataSelectBase\";\n\ninterface UseODataSelectOptions extends Omit<ODataSingleSelectProps, \"model\"> {\n\tmodel: Required<ODataCollectionModel>;\n\tonChange: (value: string | undefined) => void;\n}\n\nexport function useODataSelect({ odata, segment, model, value, dependencies, onChange }: UseODataSelectOptions) {\n\tconst odataModel = useODataSelectBase({\n\t\todata,\n\t\tsegment,\n\t\tmodel,\n\t\tvalue: value ? [value] : [],\n\t\tdependencies\n\t});\n\n\tconst selectedItem = odataModel.selectedItems[0];\n\tconst options = useMemo(() => {\n\t\tif (!selectedItem) {\n\t\t\treturn odataModel.filteredItems;\n\t\t}\n\n\t\treturn [selectedItem, ...odataModel.filteredItems];\n\t}, [odataModel.filteredItems, selectedItem]);\n\n\tconst handleChange = (item: CollectionItem | undefined) => {\n\t\tonChange(item?.[odataModel.selectionKey]);\n\t};\n\n\treturn {\n\t\t...odataModel,\n\t\tselectedItem,\n\t\toptions,\n\t\thandleChange\n\t};\n}\n","import { type SelectOptionGroup } from \"../SelectOptionGroup\";\n\nexport type SelectOptionSectionItem<TOption> = {\n\treadonly option: TOption;\n\treadonly index: number;\n};\n\nexport type SelectOptionSection<TOption> = {\n\treadonly group: SelectOptionGroup | undefined;\n\treadonly items: readonly SelectOptionSectionItem<TOption>[];\n};\n\n/**\n * Собирает соседние опции с одинаковым group key в секции, сохраняя исходные индексы для клавиатурной навигации listbox.\n */\nexport function createSelectOptionSections<TOption>(\n\toptions: readonly TOption[],\n\tgetOptionGroup: (option: TOption) => SelectOptionGroup | undefined\n): readonly SelectOptionSection<TOption>[] {\n\tconst sections: Array<{ group: SelectOptionGroup | undefined; items: SelectOptionSectionItem<TOption>[] }> = [];\n\n\toptions.forEach((option, index) => {\n\t\tconst group = getOptionGroup(option);\n\t\tconst currentSection = sections.at(-1);\n\t\tconst belongsToCurrentSection = currentSection?.group?.key === group?.key;\n\n\t\tif (currentSection && belongsToCurrentSection) {\n\t\t\tcurrentSection.items.push({ option, index });\n\t\t\treturn;\n\t\t}\n\n\t\tsections.push({\n\t\t\tgroup,\n\t\t\titems: [{ option, index }]\n\t\t});\n\t});\n\n\treturn sections;\n}\n",".inputWithOverlay {\n\tcolor: transparent;\n\tcaret-color: transparent;\n}\n\n.valueOverlay {\n\tposition: absolute;\n\tinset: 0 calc(var(--control-height) + var(--space-xs)) 0 var(--space-md);\n\tdisplay: flex;\n\talign-items: center;\n\tpointer-events: none;\n\toverflow: hidden;\n}\n","import { type CSSProperties, Fragment, ReactNode, useCallback, useMemo, useRef, useState } from \"react\";\n\nimport { Placement } from \"@floating-ui/react\";\nimport { InputType } from \"@ryuzaki13/react-foundation-lib/types\";\nimport { cn } from \"@ryuzaki13/react-foundation-lib/utils\";\nimport { CheckIcon, XIcon } from \"lucide-react\";\n\nimport {\n\textractPickerTextContent,\n\tPickerField,\n\tPickerPopup,\n\tPickerStatus,\n\tPickerTriggerActions,\n\tPickerTriggerInput,\n\tusePickerDefaultFilter,\n\tusePickerFloatingListbox,\n\tusePickerQuery,\n\tusePickerTriggerController\n} from \"../picker\";\nimport { ChangeHandler, UiBaseProps } from \"../types\";\nimport uiStyles from \"../ui.module.scss\";\n\nimport { getOptionSearchText } from \"./lib\";\nimport { createSelectOptionSections } from \"./lib/createSelectOptionSections\";\nimport styles from \"./Select.module.scss\";\nimport { type SelectOptionGroup, type SelectOptionKey } from \"./SelectOptionGroup\";\n\nexport { type SelectOptionGroup, type SelectOptionKey } from \"./SelectOptionGroup\";\n\nexport type SelectOptionState = {\n\tactive: boolean;\n\tselected: boolean;\n\tdisabled: boolean;\n};\n\ntype SelectSharedProps<TOption extends InputType> = Omit<UiBaseProps<TOption, TOption | undefined>, \"onChange\"> & {\n\toptions: readonly TOption[];\n\tgetOptionKey: (option: TOption) => SelectOptionKey;\n\tgetOptionLabel: (option: TOption) => ReactNode;\n\tgetOptionCode?: (option: TOption) => ReactNode;\n\tgetOptionDisabled?: (option: TOption) => boolean;\n\tgetOptionAriaLabel?: (option: TOption) => string;\n\tgetOptionGroup?: (option: TOption) => SelectOptionGroup | undefined;\n\tgetOptionClassName?: (option: TOption, state: SelectOptionState) => string | undefined;\n\trenderOption?: (option: TOption, state: SelectOptionState) => ReactNode;\n\trenderValue?: (option: TOption) => ReactNode;\n\tclassName?: string;\n\tbuttonClassName?: string;\n\toptionsClassName?: string;\n\toptionsMaxWidth?: CSSProperties[\"maxWidth\"];\n\toptionsContentClassName?: string;\n\tsearchable?: boolean;\n\tquery?: string;\n\tdefaultQuery?: string;\n\tonQuery?: (value: string) => void;\n\tdefaultFilter?: boolean;\n\tisLoading?: boolean;\n\trenderPopupHeader?: ReactNode;\n\temptyState?: ReactNode;\n\terrorState?: ReactNode;\n\tplacement?: Placement;\n};\n\ntype SelectChangeValue<TOption extends InputType, TClearable extends boolean | undefined> = true extends TClearable\n\t? TOption | undefined\n\t: TOption;\n\nexport type SelectProps<TOption extends InputType, TClearable extends boolean | undefined = false> = SelectSharedProps<TOption> & {\n\tclearable?: TClearable;\n\tonChange: ChangeHandler<SelectChangeValue<TOption, TClearable>>;\n};\n\n/**\n * Выпадающий список выбора значения из набора опций. Подходит для форм, фильтров и простых справочников.\n */\nexport function Select<TOption extends InputType, TClearable extends boolean | undefined = false>(props: SelectProps<TOption, TClearable>) {\n\tconst {\n\t\tlabel,\n\t\tdescription,\n\t\tdisabled,\n\t\tplaceholder,\n\t\tsize,\n\t\toptions,\n\t\tvalue,\n\t\tonChange,\n\t\tgetOptionKey,\n\t\tgetOptionLabel,\n\t\tgetOptionCode,\n\t\tgetOptionDisabled,\n\t\tgetOptionAriaLabel,\n\t\tgetOptionGroup,\n\t\tgetOptionClassName,\n\t\trenderOption,\n\t\trenderValue,\n\t\tclassName,\n\t\tbuttonClassName,\n\t\toptionsClassName,\n\t\toptionsMaxWidth,\n\t\toptionsContentClassName,\n\t\tsearchable = false,\n\t\tdefaultFilter = true,\n\t\tquery,\n\t\tdefaultQuery,\n\t\tonQuery,\n\t\trenderPopupHeader,\n\t\temptyState,\n\t\tisLoading,\n\t\terrorState,\n\t\tplacement = \"bottom-start\",\n\t\tclearable = false\n\t} = props;\n\tconst emitChange = onChange as ChangeHandler<TOption | undefined>;\n\n\tconst inputRef = useRef<HTMLInputElement | null>(null);\n\tconst [open, setOpen] = useState(false);\n\tconst triggerMode = searchable ? \"search-single\" : \"display\";\n\tconst selectedKey = value === undefined ? undefined : getOptionKey(value);\n\tconst selectedOption =\n\t\tselectedKey === undefined ? undefined : (options.find((option) => getOptionKey(option) === selectedKey) ?? value);\n\tconst {\n\t\tquery: currentQuery,\n\t\tsetQuery,\n\t\tresetQueryOnClose\n\t} = usePickerQuery({\n\t\tquery,\n\t\tdefaultQuery,\n\t\tonQuery,\n\t\ttriggerMode\n\t});\n\tconst handleOpenChange = (nextOpen: boolean) => {\n\t\tif (open && !nextOpen && resetQueryOnClose) {\n\t\t\tsetQuery(\"\");\n\t\t}\n\n\t\tsetOpen(nextOpen);\n\t};\n\tconst getSearchText = useCallback(\n\t\t(option: TOption) =>\n\t\t\tgetOptionSearchText({\n\t\t\t\toption,\n\t\t\t\tgetOptionLabel,\n\t\t\t\tgetOptionCode,\n\t\t\t\tgetOptionGroup\n\t\t\t}),\n\t\t[getOptionCode, getOptionGroup, getOptionLabel]\n\t);\n\tconst visibleOptions = usePickerDefaultFilter({\n\t\toptions,\n\t\tquery: currentQuery,\n\t\tenabled: searchable && defaultFilter,\n\t\tgetSearchText\n\t});\n\tconst optionSections = useMemo(\n\t\t() => (getOptionGroup ? createSelectOptionSections(visibleOptions, getOptionGroup) : undefined),\n\t\t[getOptionGroup, visibleOptions]\n\t);\n\tconst selectedIndex = selectedKey === undefined ? -1 : visibleOptions.findIndex((option) => getOptionKey(option) === selectedKey);\n\tconst {\n\t\tactiveIndex,\n\t\tcontext,\n\t\tfloatingStyles,\n\t\tgetFloatingProps,\n\t\tsetReference,\n\t\tsetFloating,\n\t\tsetOptionRef,\n\t\tclose,\n\t\topenList,\n\t\ttoggleOpen,\n\t\tselectOption,\n\t\tselectActiveOption,\n\t\thandleReferenceKeyDown,\n\t\thandleFloatingKeyDown,\n\t\tgetOptionId,\n\t\tgetActiveOptionId\n\t} = usePickerFloatingListbox({\n\t\toptions: visibleOptions,\n\t\tselectedIndex,\n\t\topen,\n\t\tonOpenChange: handleOpenChange,\n\t\tgetOptionDisabled,\n\t\tonSelect: emitChange,\n\t\tdisabled,\n\t\tplacement,\n\t\ttriggerMode\n\t});\n\n\tconst hasOptions = visibleOptions.length > 0;\n\tconst labelContent = selectedOption !== undefined ? getOptionLabel(selectedOption) : undefined;\n\tconst displayContent = selectedOption !== undefined ? (renderValue ? renderValue(selectedOption) : labelContent) : undefined;\n\tconst labelText = extractPickerTextContent(labelContent);\n\tconst codeText = selectedOption !== undefined ? extractPickerTextContent(getOptionCode?.(selectedOption)) : undefined;\n\tconst displayText =\n\t\textractPickerTextContent(displayContent) ?? labelText ?? codeText ?? (selectedKey !== undefined ? String(selectedKey) : \"\");\n\tconst showSearchValue = searchable && (open || currentQuery.length > 0);\n\tconst inputValue = showSearchValue ? currentQuery : selectedOption !== undefined ? displayText : \"\";\n\tconst showDisplayOverlay =\n\t\tselectedOption !== undefined &&\n\t\tdisplayContent !== undefined &&\n\t\textractPickerTextContent(displayContent) === undefined &&\n\t\t!showSearchValue;\n\tconst triggerController = usePickerTriggerController({\n\t\tmode: triggerMode,\n\t\topen,\n\t\tcurrentQuery,\n\t\thasDisplayValue: selectedOption !== undefined,\n\t\tinputRef,\n\t\tsetQuery,\n\t\topenList,\n\t\tclose,\n\t\ttoggleOpen\n\t});\n\tconst setInputNode = (node: HTMLInputElement | null) => {\n\t\tinputRef.current = node;\n\t};\n\tconst handleClear = () => {\n\t\tif (clearable) {\n\t\t\temitChange(undefined);\n\t\t}\n\n\t\tsetQuery(\"\");\n\t\tclose();\n\t};\n\tconst renderOptionNode = (listId: string, option: TOption, index: number) => {\n\t\tconst optionKey = getOptionKey(option);\n\t\tconst selected = selectedKey !== undefined && optionKey === selectedKey;\n\t\tconst active = index === activeIndex;\n\t\tconst optionDisabled = getOptionDisabled?.(option) ?? false;\n\t\tconst optionState = { active, selected, disabled: optionDisabled };\n\n\t\treturn (\n\t\t\t<div\n\t\t\t\tkey={optionKey}\n\t\t\t\tid={getOptionId(listId, index)}\n\t\t\t\tref={(node) => setOptionRef(index, node)}\n\t\t\t\trole=\"option\"\n\t\t\t\taria-selected={selected}\n\t\t\t\taria-disabled={optionDisabled || undefined}\n\t\t\t\taria-label={getOptionAriaLabel?.(option)}\n\t\t\t\tclassName={cn(\n\t\t\t\t\tuiStyles.uiPopupOption,\n\t\t\t\t\toptionDisabled && uiStyles.disabled,\n\t\t\t\t\tactive && uiStyles.uiPopupOptionActive,\n\t\t\t\t\tselected && uiStyles.selected,\n\t\t\t\t\tgetOptionClassName?.(option, optionState)\n\t\t\t\t)}\n\t\t\t\tonClick={() => selectOption(option)}>\n\t\t\t\t{renderOption ? (\n\t\t\t\t\trenderOption(option, optionState)\n\t\t\t\t) : (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{selected ? <CheckIcon className={uiStyles.uiPopupOptionIcon} /> : <span className={uiStyles.uiPopupOptionIcon} />}\n\t\t\t\t\t\t<div className={uiStyles.uiOptionText}>{getOptionLabel(option)}</div>\n\t\t\t\t\t\t{getOptionCode && <div className={uiStyles.uiOptionCode}>{getOptionCode(option)}</div>}\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t);\n\t};\n\n\treturn (\n\t\t<PickerField label={label} description={description} disabled={disabled} size={size} className={className}>\n\t\t\t{({ controlId, labelId, describedBy }) => {\n\t\t\t\tconst listId = `${controlId}-listbox`;\n\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<PickerTriggerInput\n\t\t\t\t\t\t\tref={setInputNode}\n\t\t\t\t\t\t\trootRef={setReference}\n\t\t\t\t\t\t\tid={controlId}\n\t\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\t\treadOnly={!searchable}\n\t\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\t\trole=\"combobox\"\n\t\t\t\t\t\t\tisLoading={isLoading}\n\t\t\t\t\t\t\tvalue={inputValue}\n\t\t\t\t\t\t\tplaceholder={\n\t\t\t\t\t\t\t\tselectedOption === undefined || showSearchValue\n\t\t\t\t\t\t\t\t\t? `${placeholder ?? label ?? \"\"} <${options.length}>`\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\taria-labelledby={labelId}\n\t\t\t\t\t\t\taria-describedby={describedBy}\n\t\t\t\t\t\t\taria-haspopup=\"listbox\"\n\t\t\t\t\t\t\taria-expanded={open}\n\t\t\t\t\t\t\taria-controls={open ? listId : undefined}\n\t\t\t\t\t\t\taria-autocomplete={searchable ? \"list\" : \"none\"}\n\t\t\t\t\t\t\taria-activedescendant={open ? getActiveOptionId(listId) : undefined}\n\t\t\t\t\t\t\tinputClassName={cn(showDisplayOverlay && styles.inputWithOverlay, buttonClassName, \"textOverflow\")}\n\t\t\t\t\t\t\toverlay={showDisplayOverlay ? <div className={styles.valueOverlay}>{displayContent}</div> : undefined}\n\t\t\t\t\t\t\tendAdornment={\n\t\t\t\t\t\t\t\t<PickerTriggerActions\n\t\t\t\t\t\t\t\t\topen={open}\n\t\t\t\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\t\t\t\tonToggleMouseDown={triggerController.handleToggleMouseDown}\n\t\t\t\t\t\t\t\t\tonToggleClick={triggerController.handleToggleClick}>\n\t\t\t\t\t\t\t\t\t{clearable && selectedOption !== undefined && !disabled ? (\n\t\t\t\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\t\tclassName={uiStyles.uiClearButton}\n\t\t\t\t\t\t\t\t\t\t\tdata-ui=\"select-clear-button\"\n\t\t\t\t\t\t\t\t\t\t\tdata-action=\"clear-select\"\n\t\t\t\t\t\t\t\t\t\t\tonMouseDown={(event) => {\n\t\t\t\t\t\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\tonClick={(event) => {\n\t\t\t\t\t\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\t\t\t\t\t\t\thandleClear();\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\taria-label=\"Очистить выбор\">\n\t\t\t\t\t\t\t\t\t\t\t<XIcon />\n\t\t\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t</PickerTriggerActions>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonChange={(event) => {\n\t\t\t\t\t\t\t\tif (!searchable) {\n\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\ttriggerController.handleTriggerInputChange(event.target.value);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tonClick={triggerController.handleTriggerClick}\n\t\t\t\t\t\t\tonFocus={(event) => {\n\t\t\t\t\t\t\t\ttriggerController.handleTriggerFocus(event.currentTarget);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tonKeyDown={(event) => {\n\t\t\t\t\t\t\t\thandleReferenceKeyDown(event);\n\n\t\t\t\t\t\t\t\tif (event.defaultPrevented) {\n\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\ttriggerController.handleTriggerKeyDown({\n\t\t\t\t\t\t\t\t\tevent,\n\t\t\t\t\t\t\t\t\tonActivateWhenOpen: selectActiveOption,\n\t\t\t\t\t\t\t\t\tenableSpaceActivation: !searchable\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t<PickerPopup\n\t\t\t\t\t\t\topen={open}\n\t\t\t\t\t\t\tcontext={context}\n\t\t\t\t\t\t\tfloatingStyles={floatingStyles}\n\t\t\t\t\t\t\tlistId={listId}\n\t\t\t\t\t\t\tlabelId={labelId}\n\t\t\t\t\t\t\tdescriptionId={describedBy}\n\t\t\t\t\t\t\tactiveOptionId={hasOptions ? getActiveOptionId(listId) : undefined}\n\t\t\t\t\t\t\tsetFloating={setFloating}\n\t\t\t\t\t\t\tgetFloatingProps={getFloatingProps}\n\t\t\t\t\t\t\tonKeyDown={handleFloatingKeyDown}\n\t\t\t\t\t\t\tclassName={cn(uiStyles.uiPopupOptions, optionsClassName)}\n\t\t\t\t\t\t\tmaxWidth={optionsMaxWidth}\n\t\t\t\t\t\t\theader={renderPopupHeader}>\n\t\t\t\t\t\t\t<div className={cn(optionsContentClassName, \"h100 scrollable\")}>\n\t\t\t\t\t\t\t\t{hasOptions ? (\n\t\t\t\t\t\t\t\t\toptionSections ? (\n\t\t\t\t\t\t\t\t\t\toptionSections.map((section, sectionIndex) => {\n\t\t\t\t\t\t\t\t\t\t\tconst groupLabelId = section.group ? `${listId}-group-${sectionIndex}` : undefined;\n\t\t\t\t\t\t\t\t\t\t\tconst optionNodes = section.items.map(({ option, index }) =>\n\t\t\t\t\t\t\t\t\t\t\t\trenderOptionNode(listId, option, index)\n\t\t\t\t\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\t\t\t\t\treturn section.group ? (\n\t\t\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\t\t\tkey={`group-${String(section.group.key)}-${sectionIndex}`}\n\t\t\t\t\t\t\t\t\t\t\t\t\trole=\"group\"\n\t\t\t\t\t\t\t\t\t\t\t\t\taria-labelledby={groupLabelId}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div id={groupLabelId} className={uiStyles.uiPopupGroupLabel}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{section.group.label}\n\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{optionNodes}\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t<Fragment key={`options-${sectionIndex}`}>{optionNodes}</Fragment>\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\tvisibleOptions.map((option, index) => renderOptionNode(listId, option, index))\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<PickerStatus emptyState={emptyState} errorState={errorState} />\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</PickerPopup>\n\t\t\t\t\t</>\n\t\t\t\t);\n\t\t\t}}\n\t\t</PickerField>\n\t);\n}\n","import React from \"react\";\n\nimport { ODataSingleSelectProps, useODataCollectionModel } from \"@ryuzaki13/react-foundation-api/odata\";\nimport { CollectionItem } from \"@ryuzaki13/react-foundation-lib/odata\";\n\nimport { InputUILoading } from \"../input\";\nimport { UiBaseProps } from \"../types\";\n\nimport { useODataSelect } from \"./model/useODataSelect\";\nimport { Select } from \"./Select\";\nimport { SelectOptionContent } from \"./SelectOptionContent\";\n\ntype ODataSelectProps = Omit<ODataSingleSelectProps, \"value\"> & UiBaseProps<string | undefined> & { clearable?: boolean };\n\nfunction getODataOptionTextKey(item: CollectionItem | undefined, textKey: string, codeKey: string) {\n\tif (!item) {\n\t\treturn textKey || codeKey;\n\t}\n\n\treturn textKey || Object.keys(item).find((key) => key !== codeKey) || codeKey;\n}\n\nexport const ODataSelect: React.FC<ODataSelectProps> = ({\n\todata,\n\tsegment,\n\tmodel: initialModel,\n\tsize,\n\tlabel,\n\tdescription,\n\tdisabled,\n\tvalue,\n\tdependencies,\n\tonChange,\n\tclearable\n}) => {\n\tconst model = useODataCollectionModel(initialModel);\n\tconst odataModel = useODataSelect({\n\t\todata,\n\t\tsegment,\n\t\tmodel,\n\t\tvalue,\n\t\tdependencies,\n\t\tonChange\n\t});\n\n\tif (odataModel.isLoading) {\n\t\treturn <InputUILoading size={size} label={label} description={description} />;\n\t}\n\n\tconst hideCode = segment.hideCode ?? odata.hideCode;\n\tconst resolvedTextKey = getODataOptionTextKey(odataModel.selectedItem ?? odataModel.options[0], odataModel.textKey, odataModel.codeKey);\n\n\treturn (\n\t\t<Select\n\t\t\tsize={size}\n\t\t\tlabel={label}\n\t\t\tdescription={description}\n\t\t\toptions={odataModel.options}\n\t\t\tvalue={odataModel.selectedItem}\n\t\t\tonChange={odataModel.handleChange}\n\t\t\tgetOptionKey={(item) => item[odataModel.codeKey]}\n\t\t\tgetOptionLabel={(item) => item[resolvedTextKey]}\n\t\t\tgetOptionCode={hideCode ? undefined : (item) => item[odataModel.codeKey]}\n\t\t\tgetOptionAriaLabel={(item) =>\n\t\t\t\thideCode || item[resolvedTextKey] === item[odataModel.codeKey]\n\t\t\t\t\t? String(item[resolvedTextKey])\n\t\t\t\t\t: `${item[resolvedTextKey]} ${item[odataModel.codeKey]}`\n\t\t\t}\n\t\t\trenderValue={(item) => (\n\t\t\t\t<SelectOptionContent label={item[resolvedTextKey]} code={hideCode ? undefined : item[odataModel.codeKey]} />\n\t\t\t)}\n\t\t\trenderOption={(item) => (\n\t\t\t\t<SelectOptionContent\n\t\t\t\t\tlabel={item[resolvedTextKey]}\n\t\t\t\t\tcode={hideCode ? undefined : item[odataModel.codeKey]}\n\t\t\t\t\thighlight={odataModel.debouncedQuery}\n\t\t\t\t/>\n\t\t\t)}\n\t\t\tsearchable\n\t\t\tquery={odataModel.query}\n\t\t\tonQuery={odataModel.setQuery}\n\t\t\tdefaultFilter={false}\n\t\t\tdisabled={disabled || odataModel.isLoading}\n\t\t\tplaceholder={odataModel.placeholder}\n\t\t\tisLoading={odataModel.isLoading}\n\t\t\terrorState={odataModel.isError ? \"Ошибка загрузки\" : undefined}\n\t\t\temptyState={!odataModel.isLoading && !odataModel.isError ? \"Нет данных\" : undefined}\n\t\t\tclearable={clearable}\n\t\t/>\n\t);\n};\n","import { Select } from \"./Select\";\n\nimport type { UiBaseProps } from \"../types\";\nimport type { SelectOptionKey } from \"./Select\";\n\ntype SerializableOptionRecord = Record<string, unknown>;\n\ntype SerializableOptionKeyField<TOption extends SerializableOptionRecord> = {\n\t[K in keyof TOption]: Extract<TOption[K], SelectOptionKey> extends never ? never : K;\n}[keyof TOption];\n\ntype SerializableOptionValue<TOption extends SerializableOptionRecord, TOptionKey extends SerializableOptionKeyField<TOption>> = Extract<\n\tTOption[TOptionKey],\n\tSelectOptionKey\n>;\n\nexport interface SerializableSelectProps<\n\tTOption extends SerializableOptionRecord,\n\tTOptionKey extends SerializableOptionKeyField<TOption>,\n\tTOptionLabel extends keyof TOption\n> extends Omit<UiBaseProps<SerializableOptionValue<TOption, TOptionKey> | undefined>, \"onChange\"> {\n\toptions: readonly TOption[];\n\tonChange: (value: SerializableOptionValue<TOption, TOptionKey> | undefined) => void;\n\toptionKey: TOptionKey;\n\toptionLabel: TOptionLabel;\n\trenderCode?: true;\n\tclassName?: string;\n\tclearable?: boolean;\n}\n\nfunction getSerializableOptionKey<TOption extends SerializableOptionRecord, TOptionKey extends SerializableOptionKeyField<TOption>>(\n\toption: TOption,\n\toptionKey: TOptionKey\n): Extract<TOption[TOptionKey], SelectOptionKey> {\n\treturn option[optionKey] as Extract<TOption[TOptionKey], SelectOptionKey>;\n}\n\nfunction getSerializableOptionLabel<\n\tTOption extends SerializableOptionRecord,\n\tTOptionKey extends SerializableOptionKeyField<TOption>,\n\tTOptionLabel extends keyof TOption\n>(option: TOption, optionLabel: TOptionLabel, optionKey: TOptionKey): string | number {\n\tconst label = option[optionLabel];\n\n\tif (typeof label === \"string\" || typeof label === \"number\") {\n\t\treturn label;\n\t}\n\n\tconst key = getSerializableOptionKey(option, optionKey);\n\treturn typeof key === \"string\" || typeof key === \"number\" ? key : String(key);\n}\n\nexport function SerializableSelect<\n\tTOption extends SerializableOptionRecord,\n\tTOptionKey extends SerializableOptionKeyField<TOption>,\n\tTOptionLabel extends keyof TOption\n>({\n\tlabel,\n\tdescription,\n\tdisabled,\n\tplaceholder,\n\tsize,\n\toptions,\n\tvalue,\n\tonChange,\n\toptionKey,\n\toptionLabel,\n\trenderCode,\n\tclassName,\n\tclearable\n}: SerializableSelectProps<TOption, TOptionKey, TOptionLabel>) {\n\tconst selectedOption =\n\t\tvalue === undefined ? undefined : options.find((option) => getSerializableOptionKey(option, optionKey) === value);\n\n\treturn (\n\t\t<Select\n\t\t\tlabel={label}\n\t\t\tdescription={description}\n\t\t\tdisabled={disabled}\n\t\t\tplaceholder={placeholder}\n\t\t\tsize={size}\n\t\t\toptions={options}\n\t\t\tvalue={selectedOption}\n\t\t\tonChange={(option: TOption | undefined) => onChange(option ? getSerializableOptionKey(option, optionKey) : undefined)}\n\t\t\tgetOptionKey={(option: TOption) => getSerializableOptionKey(option, optionKey)}\n\t\t\tgetOptionLabel={(option: TOption) => getSerializableOptionLabel(option, optionLabel, optionKey)}\n\t\t\tgetOptionCode={renderCode ? (option: TOption) => getSerializableOptionKey(option, optionKey) : undefined}\n\t\t\tclassName={className}\n\t\t\tclearable={clearable}\n\t\t/>\n\t);\n}\n"],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  import { a as e, c as t, i as n, n as r, o as i, r as a, s as o, t as s } from "../chunks/CalendarView-DqA-PbAU.js";
2
- import { a as c, c as l, d as u, f as d, h as f, i as p, l as m, m as h, n as g, o as _, p as v, r as y, s as b, t as x, u as S } from "../chunks/date-input-9T8AoG5U.js";
2
+ import { a as c, c as l, d as u, f as d, h as f, i as p, l as m, m as h, n as g, o as _, p as v, r as y, s as b, t as x, u as S } from "../chunks/date-input-QRwRTMmy.js";
3
3
  export { s as CalendarView, r as DATE_INPUT_SELECTION_MODES, a as DATE_INPUT_WEEK_END_DAYS, n as DATE_PICKER_LEVELS, y as DEFAULT_DATE_INPUT_FORMAT, p as DEFAULT_DATE_INPUT_PRESET, x as RangeDateInput, g as SingleDateInput, c as areRangeDateValuesEqual, _ as areSingleDateValuesEqual, b as formatDateInputValue, l as formatRangeDateValue, m as formatSingleDateValue, e as getDatePickerLevelForSelectionMode, i as isDatePickerLevelAvailable, S as normalizeRangeDateValue, u as normalizeRangeEndDateValue, d as normalizeSingleDateValue, v as parseRangeDateValue, h as parseRangeEndDateValue, f as parseSingleDateValue, o as resolveAvailableDatePickerLevel, t as resolveDateInputPeriodRangeState };
@@ -1,6 +1,6 @@
1
1
  import { r as e } from "../chunks/popover-IExDrsF6.js";
2
2
  import { t } from "../chunks/ui.module-DHVTOqZ0.js";
3
- import { i as n, l as r, s as i } from "../chunks/input-VC8jEoTa.js";
3
+ import { c as n, i as r, u as i } from "../chunks/input-D3u9BYWD.js";
4
4
  import { t as a } from "../chunks/CalendarView-DqA-PbAU.js";
5
5
  import { t as o } from "../chunks/wheel-picker-FS58cRsQ.js";
6
6
  import { useCallback as s, useMemo as c, useRef as l, useState as u } from "react";
@@ -317,7 +317,7 @@ function U({ value: e, disabled: t, minDate: n, maxDate: r, mode: i = "date-time
317
317
  //#endregion
318
318
  //#region src/date-time-input/ui/SingleDateTimeInput.tsx
319
319
  function W({ value: o, onChange: s, label: l, description: g, placeholder: y, disabled: b, size: x, error: S, onClearError: C, minDate: w, maxDate: T, timePanelPlacement: E = "right", mode: D = "date-time" }) {
320
- let O = c(() => j(o, D), [D, o]), k = c(() => _(/* @__PURE__ */ new Date()), []), [A, I] = u(!1), [R, z] = u(O ?? null), [H, W] = u("day"), [G, K] = u(() => F(O, k, D)), { controlId: q, labelId: J, descriptionId: Y, errorId: X, describedBy: Z } = r({
320
+ let O = c(() => j(o, D), [D, o]), k = c(() => _(/* @__PURE__ */ new Date()), []), [A, I] = u(!1), [R, z] = u(O ?? null), [H, W] = u("day"), [G, K] = u(() => F(O, k, D)), { controlId: q, labelId: J, descriptionId: Y, errorId: X, describedBy: Z } = i({
321
321
  hasLabel: l != null,
322
322
  hasDescription: !!g,
323
323
  hasError: !!S
@@ -345,7 +345,7 @@ function W({ value: o, onChange: s, label: l, description: g, placeholder: y, di
345
345
  return /* @__PURE__ */ p(e, {
346
346
  open: A,
347
347
  onOpenChange: ue,
348
- children: [/* @__PURE__ */ f(i, {
348
+ children: [/* @__PURE__ */ f(n, {
349
349
  label: l,
350
350
  description: g,
351
351
  disabled: b,
@@ -355,7 +355,7 @@ function W({ value: o, onChange: s, label: l, description: g, placeholder: y, di
355
355
  labelId: J,
356
356
  descriptionId: Y,
357
357
  errorId: X,
358
- children: /* @__PURE__ */ f(n, {
358
+ children: /* @__PURE__ */ f(r, {
359
359
  endAdornmentWidth: "var(--control-height)",
360
360
  endAdornment: /* @__PURE__ */ f(e.Trigger, { children: /* @__PURE__ */ f("div", {
361
361
  className: t.uiToggleButtonContainer,
@@ -1,4 +1,4 @@
1
- import { n as e } from "../chunks/input-files-CoMjadk7.js";
1
+ import { n as e } from "../chunks/input-files-D7iu_1n5.js";
2
2
  import { useCallback as t, useMemo as n, useRef as r, useState as i } from "react";
3
3
  import { cn as a, handleKeyboardActivation as o } from "@ryuzaki13/react-foundation-lib/utils";
4
4
  import { Fragment as s, jsx as c, jsxs as l } from "react/jsx-runtime";
@@ -1,8 +1,8 @@
1
1
  import { n as e } from "../chunks/button-CzUO5rzq.js";
2
2
  import { r as t } from "../chunks/grid-dI94AAbi.js";
3
3
  import { i as n, n as r, r as i } from "../chunks/modal-LHkNxBko.js";
4
- import { o as a } from "../chunks/input-VC8jEoTa.js";
5
- import { t as o } from "../chunks/input-files-CoMjadk7.js";
4
+ import { s as a } from "../chunks/input-D3u9BYWD.js";
5
+ import { t as o } from "../chunks/input-files-D7iu_1n5.js";
6
6
  import { Suspense as s, lazy as c, useCallback as l, useEffect as u, useMemo as d, useRef as f, useState as p } from "react";
7
7
  import { Fragment as m, jsx as h, jsxs as g } from "react/jsx-runtime";
8
8
  import _ from "react-easy-crop";
@@ -26,6 +26,7 @@ export interface InputClearButtonProps {
26
26
  className?: string;
27
27
  ariaLabel?: string;
28
28
  }
29
+ export declare function InputLoadingFrame(): React.JSX.Element;
29
30
  export declare function InputUILoading({ label, description, size, disabled, className }: Pick<InputUIProps, "label" | "description" | "size" | "disabled" | "className">): React.JSX.Element;
30
31
  /**
31
32
  * Низкоуровневая оболочка поля ввода с общими элементами оформления.
@@ -1 +1 @@
1
- {"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../src/input/Input.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../src/input/Input.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import { a as e, c as t, i as n, l as r, n as i, o as a, r as o, s, t as c } from "../chunks/input-VC8jEoTa.js";
2
- export { i as Input, o as InputClearButton, n as InputControl, c as InputErrorComponent, e as InputNumber, a as InputText, s as InputUI, t as InputUILoading, r as useInputFieldIds };
1
+ import { a as e, c as t, i as n, l as r, n as i, o as a, r as o, s, t as c, u as l } from "../chunks/input-D3u9BYWD.js";
2
+ export { i as Input, o as InputClearButton, n as InputControl, c as InputErrorComponent, e as InputLoadingFrame, a as InputNumber, s as InputText, t as InputUI, r as InputUILoading, l as useInputFieldIds };
@@ -1,5 +1,5 @@
1
1
  import { t as e } from "../chunks/ui.module-DHVTOqZ0.js";
2
- import { i as t, l as n, r, s as i } from "../chunks/input-VC8jEoTa.js";
2
+ import { c as t, i as n, r, u as i } from "../chunks/input-D3u9BYWD.js";
3
3
  import { useCallback as a, useMemo as o, useRef as s, useState as c } from "react";
4
4
  import { cn as l } from "@ryuzaki13/react-foundation-lib/utils";
5
5
  import { jsx as u } from "react/jsx-runtime";
@@ -174,12 +174,12 @@ function x({ mask: a, value: o, onChange: s, label: c, description: d, disabled:
174
174
  onChange: s,
175
175
  onClearError: _,
176
176
  disabled: f
177
- }), { controlId: A, labelId: j, descriptionId: M, errorId: N, describedBy: P } = n({
177
+ }), { controlId: A, labelId: j, descriptionId: M, errorId: N, describedBy: P } = i({
178
178
  hasLabel: c != null,
179
179
  hasDescription: !!d,
180
180
  hasError: !!g
181
181
  });
182
- return /* @__PURE__ */ u(i, {
182
+ return /* @__PURE__ */ u(t, {
183
183
  label: c,
184
184
  description: d,
185
185
  disabled: f,
@@ -189,7 +189,7 @@ function x({ mask: a, value: o, onChange: s, label: c, description: d, disabled:
189
189
  labelId: j,
190
190
  descriptionId: M,
191
191
  errorId: N,
192
- children: /* @__PURE__ */ u(t, {
192
+ children: /* @__PURE__ */ u(n, {
193
193
  endAdornment: v ? /* @__PURE__ */ u(r, {
194
194
  onClick: v,
195
195
  disabled: f
@@ -1,5 +1,5 @@
1
1
  import { t as e } from "../chunks/ui.module-DHVTOqZ0.js";
2
- import { i as t, l as n, r, s as i } from "../chunks/input-VC8jEoTa.js";
2
+ import { c as t, i as n, r, u as i } from "../chunks/input-D3u9BYWD.js";
3
3
  import { useCallback as a, useRef as o } from "react";
4
4
  import { cn as s, handleKeyboardActivation as c } from "@ryuzaki13/react-foundation-lib/utils";
5
5
  import { jsx as l, jsxs as u } from "react/jsx-runtime";
@@ -14,7 +14,7 @@ var h = {
14
14
  function g(g) {
15
15
  let { value: _, onClear: v, onReadError: y, accept: b, allowedMime: x, maxBytes: S, label: C, description: w, placeholder: T = "Выберите файл", disabled: E, size: D, error: O, onClearError: k, className: A } = g;
16
16
  p(x), f(b);
17
- let j = o(null), { controlId: M, labelId: N, descriptionId: P, errorId: F, describedBy: I } = n({
17
+ let j = o(null), { controlId: M, labelId: N, descriptionId: P, errorId: F, describedBy: I } = i({
18
18
  hasLabel: C != null,
19
19
  hasDescription: !!w,
20
20
  hasError: !!O
@@ -51,7 +51,7 @@ function g(g) {
51
51
  ]), R = a(() => {
52
52
  j.current?.click();
53
53
  }, []);
54
- return /* @__PURE__ */ u(i, {
54
+ return /* @__PURE__ */ u(t, {
55
55
  label: C,
56
56
  description: w,
57
57
  disabled: E,
@@ -71,7 +71,7 @@ function g(g) {
71
71
  className: h.hiddenInput,
72
72
  onChange: L,
73
73
  tabIndex: -1
74
- }), /* @__PURE__ */ l(t, {
74
+ }), /* @__PURE__ */ l(n, {
75
75
  endAdornment: v ? /* @__PURE__ */ l(r, {
76
76
  onClick: v,
77
77
  disabled: E
@@ -1,2 +1,2 @@
1
- import { n as e, t } from "../chunks/input-files-CoMjadk7.js";
1
+ import { n as e, t } from "../chunks/input-files-D7iu_1n5.js";
2
2
  export { t as InputFiles, e as InputFilesList };
@@ -1,5 +1,5 @@
1
1
  import { t as e } from "../chunks/ui.module-DHVTOqZ0.js";
2
- import { i as t, l as n, r, s as i } from "../chunks/input-VC8jEoTa.js";
2
+ import { c as t, i as n, r, u as i } from "../chunks/input-D3u9BYWD.js";
3
3
  import { useCallback as a, useMemo as o, useRef as s } from "react";
4
4
  import { cn as c, handleKeyboardActivation as l } from "@ryuzaki13/react-foundation-lib/utils";
5
5
  import { jsx as u, jsxs as d } from "react/jsx-runtime";
@@ -12,7 +12,7 @@ var m = {
12
12
  //#endregion
13
13
  //#region src/input-image/InputImage.tsx
14
14
  function h({ value: h, onChange: g, onClear: _, onReadError: v, allowedMime: y, maxBytes: b, readMode: x, label: S, description: C, placeholder: w = "Выберите изображение", disabled: T, size: E, error: D, onClearError: O, className: k }) {
15
- let A = s(null), { controlId: j, labelId: M, descriptionId: N, errorId: P, describedBy: F } = n({
15
+ let A = s(null), { controlId: j, labelId: M, descriptionId: N, errorId: P, describedBy: F } = i({
16
16
  hasLabel: S != null,
17
17
  hasDescription: !!C,
18
18
  hasError: !!D
@@ -46,7 +46,7 @@ function h({ value: h, onChange: g, onClear: _, onReadError: v, allowedMime: y,
46
46
  ]), z = a(() => {
47
47
  A.current?.click();
48
48
  }, []);
49
- return /* @__PURE__ */ d(i, {
49
+ return /* @__PURE__ */ d(t, {
50
50
  label: S,
51
51
  description: C,
52
52
  disabled: T,
@@ -66,7 +66,7 @@ function h({ value: h, onChange: g, onClear: _, onReadError: v, allowedMime: y,
66
66
  className: m.hiddenInput,
67
67
  onChange: R,
68
68
  tabIndex: -1
69
- }), /* @__PURE__ */ u(t, {
69
+ }), /* @__PURE__ */ u(n, {
70
70
  endAdornment: _ ? /* @__PURE__ */ u(r, {
71
71
  onClick: _,
72
72
  disabled: T
@@ -1,2 +1,2 @@
1
- import { t as e } from "../chunks/input-search-Bs_9SxT0.js";
1
+ import { t as e } from "../chunks/input-search-4841icgL.js";
2
2
  export { e as InputSearch };
@@ -1,5 +1,5 @@
1
1
  import { t as e } from "../chunks/ui.module-DHVTOqZ0.js";
2
- import { c as t, f as n, i as r, l as i, p as a, t as o } from "../chunks/picker-DLnfOgZj.js";
2
+ import { c as t, f as n, i as r, l as i, p as a, t as o } from "../chunks/picker-lpH_xp14.js";
3
3
  import { useRef as s, useState as c } from "react";
4
4
  import { cn as l } from "@ryuzaki13/react-foundation-lib/utils";
5
5
  import { Fragment as u, jsx as d, jsxs as f } from "react/jsx-runtime";
@@ -62,7 +62,7 @@ function _(_) {
62
62
  ...O,
63
63
  "aria-disabled": x || void 0,
64
64
  tabIndex: x ? -1 : 0,
65
- className: s(e.uiPanel, "scrollable surface1", x && e.disabled),
65
+ className: s(e.uiPanel, "scrollable", x && e.disabled),
66
66
  children: T.map((t, n) => {
67
67
  let r = b ? Array.isArray(R) && R.includes(t.value) : R === t.value, i = n === z;
68
68
  return /* @__PURE__ */ p("li", {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../src/listbox/Listbox.tsx"],"sourcesContent":["import { HTMLAttributes, JSX, KeyboardEvent, ReactNode, useEffect, useId, useLayoutEffect, useMemo, useRef, useState } from \"react\";\n\nimport {\n\tcn,\n\tfindFirstEnabledIndex,\n\tfindLastEnabledIndex,\n\tfindNextEnabledIndex,\n\thandleKeyboardActivation\n} from \"@ryuzaki13/react-foundation-lib/utils\";\nimport { CheckIcon } from \"lucide-react\";\n\nimport uiStyles from \"../ui.module.scss\";\n\ntype ListboxOption<T> = {\n\tvalue: T;\n\tlabel?: string;\n\tdisabled?: boolean;\n};\n\ninterface ListboxBaseProps<T> extends Omit<HTMLAttributes<HTMLUListElement>, \"onChange\" | \"defaultValue\" | \"value\"> {\n\toptions: ListboxOption<T>[];\n\tdisabled?: boolean;\n\tfocusOnMount?: boolean;\n\trenderItem?: (option: ListboxOption<T>, selected: boolean, active: boolean) => ReactNode;\n\tgetKey?: (option: ListboxOption<T>, index: number) => string;\n}\n\n// Вариант для single-select\ninterface ListboxSingleProps<T> extends ListboxBaseProps<T> {\n\tmultiple?: false;\n\tvalue?: T;\n\tdefaultValue?: T;\n\tonChange?: (value: T, option: ListboxOption<T>) => void;\n}\n\n// Вариант для multi-select\ninterface ListboxMultiProps<T> extends ListboxBaseProps<T> {\n\tmultiple: true;\n\tvalue?: T[];\n\tdefaultValue?: T[];\n\tonChange?: (value: T[], option: ListboxOption<T>) => void;\n}\n\ntype ListboxProps<T> = ListboxSingleProps<T> | ListboxMultiProps<T>;\n\nconst isOptionDisabled = <T,>(option: ListboxOption<T>) => option.disabled === true;\n\nfunction getInitialFocusIndex<T>(options: ListboxOption<T>[], value: T | T[] | undefined, multiple: boolean | undefined) {\n\tif (multiple) {\n\t\tif (Array.isArray(value) && value.length > 0) {\n\t\t\tconst selectedIndex = options.findIndex((option) => value.includes(option.value) && !option.disabled);\n\t\t\tif (selectedIndex >= 0) {\n\t\t\t\treturn selectedIndex;\n\t\t\t}\n\t\t}\n\n\t\treturn findFirstEnabledIndex(options, isOptionDisabled);\n\t}\n\n\tif (value !== undefined) {\n\t\tconst selectedIndex = options.findIndex((option) => option.value === value && !option.disabled);\n\t\tif (selectedIndex >= 0) {\n\t\t\treturn selectedIndex;\n\t\t}\n\t}\n\n\treturn findFirstEnabledIndex(options, isOptionDisabled);\n}\n\n/**\n * Компонент выбора одного или нескольких элементов из списка. Поддерживает controlled API, поиск по данным и рендер кастомных опций.\n */\nexport function Listbox<T>(props: ListboxSingleProps<T>): JSX.Element;\nexport function Listbox<T>(props: ListboxMultiProps<T>): JSX.Element;\nexport function Listbox<T>(props: ListboxProps<T>): JSX.Element {\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tconst { value, defaultValue, multiple, disabled, focusOnMount, renderItem, getKey, options, onChange, id: externalId, ...rest } = props;\n\n\tconst isControlled = value !== undefined;\n\tconst autoId = useId();\n\tconst listId = externalId ?? `${autoId}-listbox`;\n\tconst [internalValue, setInternalValue] = useState<T | T[] | undefined>(defaultValue);\n\tconst listRef = useRef<HTMLUListElement>(null);\n\tconst [focusedIndex, setFocusedIndex] = useState(() => getInitialFocusIndex(options, value ?? defaultValue, multiple));\n\t/**\n\t * Прокрутка нужна только после клавиатурной навигации. Это не даёт монтированию и Fast Refresh\n\t * вызывать scrollIntoView, который иначе прокручивает внешнюю страницу до Listbox.\n\t */\n\tconst shouldScrollActiveOptionRef = useRef(false);\n\n\tconst selectedValues = useMemo(\n\t\t() => (isControlled ? value : internalValue) ?? (multiple ? [] : null),\n\t\t[internalValue, isControlled, multiple, value]\n\t);\n\tconst activeIndex = focusedIndex;\n\n\tconst handleSelect = (option: ListboxOption<T>) => {\n\t\tif (disabled || option.disabled) return;\n\n\t\tlet newValue: T | T[];\n\t\tif (props.multiple) {\n\t\t\tconst arr = Array.isArray(selectedValues) ? selectedValues : [];\n\t\t\tnewValue = arr.includes(option.value) ? arr.filter((v) => v !== option.value) : [...arr, option.value];\n\n\t\t\tprops.onChange?.(newValue, option);\n\t\t} else {\n\t\t\tnewValue = option.value;\n\n\t\t\tprops.onChange?.(newValue, option);\n\t\t}\n\n\t\tif (!isControlled) setInternalValue(newValue);\n\t};\n\n\tconst handleKeyDown = (e: KeyboardEvent<HTMLUListElement>) => {\n\t\tif (disabled) return;\n\n\t\tif (e.key === \"ArrowDown\") {\n\t\t\te.preventDefault();\n\t\t\tshouldScrollActiveOptionRef.current = true;\n\t\t\t// setHoveredIndex(null);\n\t\t\tsetFocusedIndex((index) => findNextEnabledIndex(options, index, 1, isOptionDisabled));\n\t\t} else if (e.key === \"ArrowUp\") {\n\t\t\te.preventDefault();\n\t\t\tshouldScrollActiveOptionRef.current = true;\n\t\t\t// setHoveredIndex(null);\n\t\t\tsetFocusedIndex((index) => findNextEnabledIndex(options, index, -1, isOptionDisabled));\n\t\t} else if (e.key === \"Home\") {\n\t\t\te.preventDefault();\n\t\t\tshouldScrollActiveOptionRef.current = true;\n\t\t\t// setHoveredIndex(null);\n\t\t\tsetFocusedIndex(findFirstEnabledIndex(options, isOptionDisabled));\n\t\t} else if (e.key === \"End\") {\n\t\t\te.preventDefault();\n\t\t\tshouldScrollActiveOptionRef.current = true;\n\t\t\t// setHoveredIndex(null);\n\t\t\tsetFocusedIndex(findLastEnabledIndex(options, isOptionDisabled));\n\t\t} else if (\n\t\t\thandleKeyboardActivation(e, () => {\n\t\t\t\tconst activeOption = options[activeIndex];\n\t\t\t\tif (activeOption) {\n\t\t\t\t\thandleSelect(activeOption);\n\t\t\t\t}\n\t\t\t})\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t};\n\n\tuseEffect(() => {\n\t\tif (!shouldScrollActiveOptionRef.current) return;\n\n\t\tshouldScrollActiveOptionRef.current = false;\n\t\tconst el = listRef.current?.querySelectorAll<HTMLElement>('[role=\"option\"]')[activeIndex];\n\t\tif (el) el.scrollIntoView({ block: \"nearest\" });\n\t}, [activeIndex]);\n\n\tuseLayoutEffect(() => {\n\t\tif (focusOnMount) {\n\t\t\tlistRef.current?.focus();\n\t\t}\n\t}, [focusOnMount]);\n\n\treturn (\n\t\t<ul\n\t\t\tref={listRef}\n\t\t\tid={listId}\n\t\t\trole=\"listbox\"\n\t\t\taria-multiselectable={multiple || undefined}\n\t\t\taria-activedescendant={activeIndex >= 0 ? `${listId}-option-${activeIndex}` : undefined}\n\t\t\tonKeyDown={handleKeyDown}\n\t\t\t{...rest}\n\t\t\taria-disabled={disabled || undefined}\n\t\t\ttabIndex={disabled ? -1 : 0}\n\t\t\tclassName={cn(uiStyles.uiPanel, \"scrollable surface1\", disabled && uiStyles.disabled)}>\n\t\t\t{options.map((option, index) => {\n\t\t\t\tconst selected = multiple\n\t\t\t\t\t? Array.isArray(selectedValues) && selectedValues.includes(option.value)\n\t\t\t\t\t: selectedValues === option.value;\n\t\t\t\tconst active = index === activeIndex;\n\n\t\t\t\treturn (\n\t\t\t\t\t<li\n\t\t\t\t\t\tkey={getKey ? getKey(option, index) : index}\n\t\t\t\t\t\tid={`${listId}-option-${index}`}\n\t\t\t\t\t\trole=\"option\"\n\t\t\t\t\t\taria-selected={selected}\n\t\t\t\t\t\taria-disabled={disabled || option.disabled || undefined}\n\t\t\t\t\t\tonMouseDown={(e) => {\n\t\t\t\t\t\t\te.preventDefault(); // чтобы не сбрасывался фокус listbox\n\t\t\t\t\t\t\tif (disabled || option.disabled) {\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsetFocusedIndex(index);\n\t\t\t\t\t\t\thandleSelect(option);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\ttabIndex={-1}\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\tuiStyles.uiPopupOption,\n\t\t\t\t\t\t\t(disabled || option.disabled) && uiStyles.disabled,\n\t\t\t\t\t\t\tactive && uiStyles.uiPopupOptionActive,\n\t\t\t\t\t\t\tselected && uiStyles.selected\n\t\t\t\t\t\t)}>\n\t\t\t\t\t\t{selected ? (\n\t\t\t\t\t\t\t<CheckIcon className={uiStyles.uiPopupOptionIcon} />\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<span className={uiStyles.uiPopupOptionIcon}></span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<div /*className={uiStyles.uiOptionText}*/>\n\t\t\t\t\t\t\t{renderItem ? renderItem(option, selected, active) : (option.label ?? String(option.value))}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</li>\n\t\t\t\t);\n\t\t\t})}\n\t\t</ul>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../src/listbox/Listbox.tsx"],"sourcesContent":["import { HTMLAttributes, JSX, KeyboardEvent, ReactNode, useEffect, useId, useLayoutEffect, useMemo, useRef, useState } from \"react\";\n\nimport {\n\tcn,\n\tfindFirstEnabledIndex,\n\tfindLastEnabledIndex,\n\tfindNextEnabledIndex,\n\thandleKeyboardActivation\n} from \"@ryuzaki13/react-foundation-lib/utils\";\nimport { CheckIcon } from \"lucide-react\";\n\nimport uiStyles from \"../ui.module.scss\";\n\ntype ListboxOption<T> = {\n\tvalue: T;\n\tlabel?: string;\n\tdisabled?: boolean;\n};\n\ninterface ListboxBaseProps<T> extends Omit<HTMLAttributes<HTMLUListElement>, \"onChange\" | \"defaultValue\" | \"value\"> {\n\toptions: ListboxOption<T>[];\n\tdisabled?: boolean;\n\tfocusOnMount?: boolean;\n\trenderItem?: (option: ListboxOption<T>, selected: boolean, active: boolean) => ReactNode;\n\tgetKey?: (option: ListboxOption<T>, index: number) => string;\n}\n\n// Вариант для single-select\ninterface ListboxSingleProps<T> extends ListboxBaseProps<T> {\n\tmultiple?: false;\n\tvalue?: T;\n\tdefaultValue?: T;\n\tonChange?: (value: T, option: ListboxOption<T>) => void;\n}\n\n// Вариант для multi-select\ninterface ListboxMultiProps<T> extends ListboxBaseProps<T> {\n\tmultiple: true;\n\tvalue?: T[];\n\tdefaultValue?: T[];\n\tonChange?: (value: T[], option: ListboxOption<T>) => void;\n}\n\ntype ListboxProps<T> = ListboxSingleProps<T> | ListboxMultiProps<T>;\n\nconst isOptionDisabled = <T,>(option: ListboxOption<T>) => option.disabled === true;\n\nfunction getInitialFocusIndex<T>(options: ListboxOption<T>[], value: T | T[] | undefined, multiple: boolean | undefined) {\n\tif (multiple) {\n\t\tif (Array.isArray(value) && value.length > 0) {\n\t\t\tconst selectedIndex = options.findIndex((option) => value.includes(option.value) && !option.disabled);\n\t\t\tif (selectedIndex >= 0) {\n\t\t\t\treturn selectedIndex;\n\t\t\t}\n\t\t}\n\n\t\treturn findFirstEnabledIndex(options, isOptionDisabled);\n\t}\n\n\tif (value !== undefined) {\n\t\tconst selectedIndex = options.findIndex((option) => option.value === value && !option.disabled);\n\t\tif (selectedIndex >= 0) {\n\t\t\treturn selectedIndex;\n\t\t}\n\t}\n\n\treturn findFirstEnabledIndex(options, isOptionDisabled);\n}\n\n/**\n * Компонент выбора одного или нескольких элементов из списка. Поддерживает controlled API, поиск по данным и рендер кастомных опций.\n */\nexport function Listbox<T>(props: ListboxSingleProps<T>): JSX.Element;\nexport function Listbox<T>(props: ListboxMultiProps<T>): JSX.Element;\nexport function Listbox<T>(props: ListboxProps<T>): JSX.Element {\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tconst { value, defaultValue, multiple, disabled, focusOnMount, renderItem, getKey, options, onChange, id: externalId, ...rest } = props;\n\n\tconst isControlled = value !== undefined;\n\tconst autoId = useId();\n\tconst listId = externalId ?? `${autoId}-listbox`;\n\tconst [internalValue, setInternalValue] = useState<T | T[] | undefined>(defaultValue);\n\tconst listRef = useRef<HTMLUListElement>(null);\n\tconst [focusedIndex, setFocusedIndex] = useState(() => getInitialFocusIndex(options, value ?? defaultValue, multiple));\n\t/**\n\t * Прокрутка нужна только после клавиатурной навигации. Это не даёт монтированию и Fast Refresh\n\t * вызывать scrollIntoView, который иначе прокручивает внешнюю страницу до Listbox.\n\t */\n\tconst shouldScrollActiveOptionRef = useRef(false);\n\n\tconst selectedValues = useMemo(\n\t\t() => (isControlled ? value : internalValue) ?? (multiple ? [] : null),\n\t\t[internalValue, isControlled, multiple, value]\n\t);\n\tconst activeIndex = focusedIndex;\n\n\tconst handleSelect = (option: ListboxOption<T>) => {\n\t\tif (disabled || option.disabled) return;\n\n\t\tlet newValue: T | T[];\n\t\tif (props.multiple) {\n\t\t\tconst arr = Array.isArray(selectedValues) ? selectedValues : [];\n\t\t\tnewValue = arr.includes(option.value) ? arr.filter((v) => v !== option.value) : [...arr, option.value];\n\n\t\t\tprops.onChange?.(newValue, option);\n\t\t} else {\n\t\t\tnewValue = option.value;\n\n\t\t\tprops.onChange?.(newValue, option);\n\t\t}\n\n\t\tif (!isControlled) setInternalValue(newValue);\n\t};\n\n\tconst handleKeyDown = (e: KeyboardEvent<HTMLUListElement>) => {\n\t\tif (disabled) return;\n\n\t\tif (e.key === \"ArrowDown\") {\n\t\t\te.preventDefault();\n\t\t\tshouldScrollActiveOptionRef.current = true;\n\t\t\t// setHoveredIndex(null);\n\t\t\tsetFocusedIndex((index) => findNextEnabledIndex(options, index, 1, isOptionDisabled));\n\t\t} else if (e.key === \"ArrowUp\") {\n\t\t\te.preventDefault();\n\t\t\tshouldScrollActiveOptionRef.current = true;\n\t\t\t// setHoveredIndex(null);\n\t\t\tsetFocusedIndex((index) => findNextEnabledIndex(options, index, -1, isOptionDisabled));\n\t\t} else if (e.key === \"Home\") {\n\t\t\te.preventDefault();\n\t\t\tshouldScrollActiveOptionRef.current = true;\n\t\t\t// setHoveredIndex(null);\n\t\t\tsetFocusedIndex(findFirstEnabledIndex(options, isOptionDisabled));\n\t\t} else if (e.key === \"End\") {\n\t\t\te.preventDefault();\n\t\t\tshouldScrollActiveOptionRef.current = true;\n\t\t\t// setHoveredIndex(null);\n\t\t\tsetFocusedIndex(findLastEnabledIndex(options, isOptionDisabled));\n\t\t} else if (\n\t\t\thandleKeyboardActivation(e, () => {\n\t\t\t\tconst activeOption = options[activeIndex];\n\t\t\t\tif (activeOption) {\n\t\t\t\t\thandleSelect(activeOption);\n\t\t\t\t}\n\t\t\t})\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t};\n\n\tuseEffect(() => {\n\t\tif (!shouldScrollActiveOptionRef.current) return;\n\n\t\tshouldScrollActiveOptionRef.current = false;\n\t\tconst el = listRef.current?.querySelectorAll<HTMLElement>('[role=\"option\"]')[activeIndex];\n\t\tif (el) el.scrollIntoView({ block: \"nearest\" });\n\t}, [activeIndex]);\n\n\tuseLayoutEffect(() => {\n\t\tif (focusOnMount) {\n\t\t\tlistRef.current?.focus();\n\t\t}\n\t}, [focusOnMount]);\n\n\treturn (\n\t\t<ul\n\t\t\tref={listRef}\n\t\t\tid={listId}\n\t\t\trole=\"listbox\"\n\t\t\taria-multiselectable={multiple || undefined}\n\t\t\taria-activedescendant={activeIndex >= 0 ? `${listId}-option-${activeIndex}` : undefined}\n\t\t\tonKeyDown={handleKeyDown}\n\t\t\t{...rest}\n\t\t\taria-disabled={disabled || undefined}\n\t\t\ttabIndex={disabled ? -1 : 0}\n\t\t\tclassName={cn(uiStyles.uiPanel, \"scrollable\", disabled && uiStyles.disabled)}>\n\t\t\t{options.map((option, index) => {\n\t\t\t\tconst selected = multiple\n\t\t\t\t\t? Array.isArray(selectedValues) && selectedValues.includes(option.value)\n\t\t\t\t\t: selectedValues === option.value;\n\t\t\t\tconst active = index === activeIndex;\n\n\t\t\t\treturn (\n\t\t\t\t\t<li\n\t\t\t\t\t\tkey={getKey ? getKey(option, index) : index}\n\t\t\t\t\t\tid={`${listId}-option-${index}`}\n\t\t\t\t\t\trole=\"option\"\n\t\t\t\t\t\taria-selected={selected}\n\t\t\t\t\t\taria-disabled={disabled || option.disabled || undefined}\n\t\t\t\t\t\tonMouseDown={(e) => {\n\t\t\t\t\t\t\te.preventDefault(); // чтобы не сбрасывался фокус listbox\n\t\t\t\t\t\t\tif (disabled || option.disabled) {\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsetFocusedIndex(index);\n\t\t\t\t\t\t\thandleSelect(option);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\ttabIndex={-1}\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\tuiStyles.uiPopupOption,\n\t\t\t\t\t\t\t(disabled || option.disabled) && uiStyles.disabled,\n\t\t\t\t\t\t\tactive && uiStyles.uiPopupOptionActive,\n\t\t\t\t\t\t\tselected && uiStyles.selected\n\t\t\t\t\t\t)}>\n\t\t\t\t\t\t{selected ? (\n\t\t\t\t\t\t\t<CheckIcon className={uiStyles.uiPopupOptionIcon} />\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<span className={uiStyles.uiPopupOptionIcon}></span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<div /*className={uiStyles.uiOptionText}*/>\n\t\t\t\t\t\t\t{renderItem ? renderItem(option, selected, active) : (option.label ?? String(option.value))}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</li>\n\t\t\t\t);\n\t\t\t})}\n\t\t</ul>\n\t);\n}\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import { a as e, i as t, n, r, s as i, t as a } from "../chunks/multi-select-BJ6Lst1E.js";
1
+ import { a as e, i as t, n, r, s as i, t as a } from "../chunks/multi-select-BDvaRbUc.js";
2
2
  export { e as MultiSelect, i as MultiSelectToken, n as ODataDependentMultiSelect, r as ODataDependentSegmentMultiSelect, t as ODataMultiSelect, a as SerializableMultiSelect };
@@ -1 +1 @@
1
- {"version":3,"file":"MultiSelect.d.ts","sourceRoot":"","sources":["../../../src/multi-select/ui/MultiSelect.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqF,MAAM,OAAO,CAAC;AAmB1G,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAY/C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAgB5E,MAAM,WAAW,oBAAoB;IACpC,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,wBAAwB;IACxC,aAAa,EAAE,cAAc,EAAE,CAAC;IAChC,sBAAsB,EAAE,cAAc,EAAE,CAAC;IACzC,cAAc,EAAE,cAAc,EAAE,CAAC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,WAAW,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,MAAM,WAAW,+BAA+B;IAC/C,aAAa,EAAE,cAAc,EAAE,CAAC;IAChC,sBAAsB,EAAE,cAAc,EAAE,CAAC;IACzC,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,IAAI,EAAE,OAAO,CAAC;CACd;AAED,KAAK,2BAA2B,CAAC,QAAQ,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,KAAK,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AAErG,UAAU,oBAAoB;IAC7B,WAAW,CAAC,EAAE,2BAA2B,CAAC,wBAAwB,CAAC,CAAC;IACpE,aAAa,CAAC,EAAE,2BAA2B,CAAC,wBAAwB,CAAC,CAAC;IACtE,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,oBAAoB,KAAK,KAAK,CAAC,SAAS,CAAC;CACpF;AAED,MAAM,WAAW,gBAAgB,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,cAAc,CACxF,SAAQ,oBAAoB,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC;IACpD,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,+BAA+B,KAAK,OAAO,CAAC;IACzF,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB;AAkHD;;;GAGG;AACH,eAAO,MAAM,WAAW,2GAyYvB,CAAC"}
1
+ {"version":3,"file":"MultiSelect.d.ts","sourceRoot":"","sources":["../../../src/multi-select/ui/MultiSelect.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqF,MAAM,OAAO,CAAC;AAmB1G,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAY/C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAgB5E,MAAM,WAAW,oBAAoB;IACpC,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,wBAAwB;IACxC,aAAa,EAAE,cAAc,EAAE,CAAC;IAChC,sBAAsB,EAAE,cAAc,EAAE,CAAC;IACzC,cAAc,EAAE,cAAc,EAAE,CAAC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,WAAW,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,MAAM,WAAW,+BAA+B;IAC/C,aAAa,EAAE,cAAc,EAAE,CAAC;IAChC,sBAAsB,EAAE,cAAc,EAAE,CAAC;IACzC,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,IAAI,EAAE,OAAO,CAAC;CACd;AAED,KAAK,2BAA2B,CAAC,QAAQ,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,KAAK,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AAErG,UAAU,oBAAoB;IAC7B,WAAW,CAAC,EAAE,2BAA2B,CAAC,wBAAwB,CAAC,CAAC;IACpE,aAAa,CAAC,EAAE,2BAA2B,CAAC,wBAAwB,CAAC,CAAC;IACtE,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,oBAAoB,KAAK,KAAK,CAAC,SAAS,CAAC;CACpF;AAED,MAAM,WAAW,gBAAgB,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,cAAc,CACxF,SAAQ,oBAAoB,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC;IACpD,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,+BAA+B,KAAK,OAAO,CAAC;IACzF,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB;AAkHD;;;GAGG;AACH,eAAO,MAAM,WAAW,2GA0YvB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ODataMultiSelect.d.ts","sourceRoot":"","sources":["../../../src/multi-select/ui/ODataMultiSelect.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,oBAAoB,EAA2B,MAAM,uCAAuC,CAAC;AAEtG,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAK1C,KAAK,qBAAqB,GAAG,oBAAoB,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,aAAa,CAAC,GAAG,EAAE,CAAC;AAEpG,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CA0C5D,CAAC"}
1
+ {"version":3,"file":"ODataMultiSelect.d.ts","sourceRoot":"","sources":["../../../src/multi-select/ui/ODataMultiSelect.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,oBAAoB,EAA2B,MAAM,uCAAuC,CAAC;AAEtG,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAK1C,KAAK,qBAAqB,GAAG,oBAAoB,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,aAAa,CAAC,GAAG,EAAE,CAAC;AAEpG,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CA2C5D,CAAC"}
@@ -1,9 +1,8 @@
1
1
  import { ReactNode } from "react";
2
2
  interface PickerStatusProps {
3
3
  emptyState?: ReactNode;
4
- loadingState?: ReactNode;
5
4
  errorState?: ReactNode;
6
5
  }
7
- export declare function PickerStatus({ emptyState, loadingState, errorState }: PickerStatusProps): import("react").JSX.Element | null;
6
+ export declare function PickerStatus({ emptyState, errorState }: PickerStatusProps): import("react").JSX.Element | null;
8
7
  export {};
9
8
  //# sourceMappingURL=PickerStatus.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PickerStatus.d.ts","sourceRoot":"","sources":["../../src/picker/PickerStatus.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAQlC,UAAU,iBAAiB;IAC1B,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,UAAU,CAAC,EAAE,SAAS,CAAC;CACvB;AAED,wBAAgB,YAAY,CAAC,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE,iBAAiB,sCAYvF"}
1
+ {"version":3,"file":"PickerStatus.d.ts","sourceRoot":"","sources":["../../src/picker/PickerStatus.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAQlC,UAAU,iBAAiB;IAC1B,UAAU,CAAC,EAAE,SAAS,CAAC;IAEvB,UAAU,CAAC,EAAE,SAAS,CAAC;CACvB;AAED,wBAAgB,YAAY,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,iBAAiB,sCAYzE"}
@@ -5,6 +5,7 @@ interface PickerTriggerInputProps extends Omit<ComponentPropsWithoutRef<"input">
5
5
  overlay?: ReactNode;
6
6
  rootClassName?: string;
7
7
  inputClassName?: string;
8
+ isLoading?: boolean;
8
9
  }
9
10
  export declare const PickerTriggerInput: import("react").ForwardRefExoticComponent<PickerTriggerInputProps & import("react").RefAttributes<HTMLInputElement>>;
10
11
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"PickerTriggerInput.d.ts","sourceRoot":"","sources":["../../src/picker/PickerTriggerInput.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAc,SAAS,EAAE,MAAM,OAAO,CAAC;AASxE,UAAU,uBAAwB,SAAQ,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IACxF,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI,KAAK,IAAI,CAAC;IAChD,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,kBAAkB,sHAa9B,CAAC"}
1
+ {"version":3,"file":"PickerTriggerInput.d.ts","sourceRoot":"","sources":["../../src/picker/PickerTriggerInput.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAc,SAAS,EAAE,MAAM,OAAO,CAAC;AASxE,UAAU,uBAAwB,SAAQ,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IACxF,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI,KAAK,IAAI,CAAC;IAChD,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,eAAO,MAAM,kBAAkB,sHAmB9B,CAAC"}
@@ -1,2 +1,2 @@
1
- import { a as e, c as t, d as n, f as r, i, l as a, n as o, o as s, p as c, r as l, s as u, t as d, u as f } from "../chunks/picker-DLnfOgZj.js";
1
+ import { a as e, c as t, d as n, f as r, i, l as a, n as o, o as s, p as c, r as l, s as u, t as d, u as f } from "../chunks/picker-lpH_xp14.js";
2
2
  export { c as PickerField, r as PickerPopup, n as PickerSelectionToolbar, f as PickerStatus, a as PickerTriggerActions, t as PickerTriggerInput, u as createPickerTriggerPolicy, s as extractPickerTextContent, e as usePickerDefaultFilter, i as usePickerFloatingListbox, l as usePickerQuery, o as usePickerSelectionLifecycle, d as usePickerTriggerController };
@@ -1,5 +1,5 @@
1
1
  import { o as e } from "../chunks/flex-C7njxZ74.js";
2
- import { t } from "../chunks/date-input-9T8AoG5U.js";
2
+ import { t } from "../chunks/date-input-QRwRTMmy.js";
3
3
  import { c as n, l as r, r as i, s as a, t as o, u as s } from "../chunks/date-range-preset-select-BLnY47cv.js";
4
4
  import { useCallback as c, useMemo as l, useRef as u, useState as d } from "react";
5
5
  import { jsx as f, jsxs as p } from "react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- import { r as e } from "../chunks/select-CysiIrej.js";
1
+ import { r as e } from "../chunks/select-3KLv_evq.js";
2
2
  import { jsx as t } from "react/jsx-runtime";
3
3
  import { getPresetOption as n } from "@ryuzaki13/react-foundation-lib/presets";
4
4
  //#region src/preset-select/PresetSelect.tsx
@@ -30,9 +30,9 @@ type SelectSharedProps<TOption extends InputType> = Omit<UiBaseProps<TOption, TO
30
30
  defaultQuery?: string;
31
31
  onQuery?: (value: string) => void;
32
32
  defaultFilter?: boolean;
33
+ isLoading?: boolean;
33
34
  renderPopupHeader?: ReactNode;
34
35
  emptyState?: ReactNode;
35
- loadingState?: ReactNode;
36
36
  errorState?: ReactNode;
37
37
  placement?: Placement;
38
38
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../src/select/Select.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../src/select/Select.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import { i as e, n as t, r as n, t as r } from "../chunks/select-CysiIrej.js";
1
+ import { i as e, n as t, r as n, t as r } from "../chunks/select-3KLv_evq.js";
2
2
  export { t as ODataSelect, n as Select, r as SerializableSelect, e as resolveSelectedOption };
@@ -1,7 +1,7 @@
1
1
  import { n as e, r as t } from "../chunks/popover-IExDrsF6.js";
2
2
  import { t as n } from "../chunks/ui.module-DHVTOqZ0.js";
3
- import { i as r, l as i, o as a, s as o } from "../chunks/input-VC8jEoTa.js";
4
- import { l as s } from "../chunks/picker-DLnfOgZj.js";
3
+ import { c as r, i, s as a, u as o } from "../chunks/input-D3u9BYWD.js";
4
+ import { l as s } from "../chunks/picker-lpH_xp14.js";
5
5
  import { useCallback as c, useEffect as l, useMemo as u, useRef as d, useState as f } from "react";
6
6
  import { cn as ee } from "@ryuzaki13/react-foundation-lib/utils";
7
7
  import { Fragment as p, jsx as m, jsxs as h } from "react/jsx-runtime";
@@ -189,7 +189,7 @@ function ae({ position: e, children: t }) {
189
189
  });
190
190
  }
191
191
  function G(t) {
192
- let { min: n, max: r, step: a, marks: s, marksPosition: c = "value", marksDisplay: p = "compact", className: g, error: _, onClearError: v, label: y, description: S, disabled: w, size: T } = t, { min: E, max: j } = u(() => C(n, r), [n, r]), N = u(() => D(s, E, j), [
192
+ let { min: n, max: i, step: a, marks: s, marksPosition: c = "value", marksDisplay: p = "compact", className: g, error: _, onClearError: v, label: y, description: S, disabled: w, size: T } = t, { min: E, max: j } = u(() => C(n, i), [n, i]), N = u(() => D(s, E, j), [
193
193
  s,
194
194
  E,
195
195
  j
@@ -205,7 +205,7 @@ function G(t) {
205
205
  a,
206
206
  N,
207
207
  c
208
- ]), F = t.mode === "range", I = F ? void 0 : M(t.value, P), R = F ? L(t.value, P) : void 0, G = F ? z(t.value, P) : void 0, oe = F ? G : [I], K = te(F ? G : I, P), se = d(null), q = d([]), J = d(null), Y = d(null), [X, Z] = f(null), { controlId: ce, labelId: Q, descriptionId: le, errorId: ue, describedBy: de } = i({
208
+ ]), F = t.mode === "range", I = F ? void 0 : M(t.value, P), R = F ? L(t.value, P) : void 0, G = F ? z(t.value, P) : void 0, oe = F ? G : [I], K = te(F ? G : I, P), se = d(null), q = d([]), J = d(null), Y = d(null), [X, Z] = f(null), { controlId: ce, labelId: Q, descriptionId: le, errorId: ue, describedBy: de } = o({
209
209
  hasLabel: y != null,
210
210
  hasDescription: !!S,
211
211
  hasError: !!_
@@ -275,7 +275,7 @@ function G(t) {
275
275
  }
276
276
  return re(e, N);
277
277
  };
278
- return /* @__PURE__ */ m(o, {
278
+ return /* @__PURE__ */ m(r, {
279
279
  label: y,
280
280
  description: S,
281
281
  disabled: w,
@@ -587,7 +587,7 @@ function le({ value: e, onChange: a, min: s, max: l, step: d, marks: g, marksPos
587
587
  start: U,
588
588
  end: e
589
589
  });
590
- }, { controlId: ie, labelId: ae, descriptionId: oe, errorId: K, describedBy: Y } = i({
590
+ }, { controlId: ie, labelId: ae, descriptionId: oe, errorId: K, describedBy: Y } = o({
591
591
  hasLabel: x != null,
592
592
  hasDescription: !!S,
593
593
  hasError: !!y
@@ -663,7 +663,7 @@ function le({ value: e, onChange: a, min: s, max: l, step: d, marks: g, marksPos
663
663
  return /* @__PURE__ */ h(t, {
664
664
  open: F,
665
665
  onOpenChange: le,
666
- children: [/* @__PURE__ */ m(o, {
666
+ children: [/* @__PURE__ */ m(r, {
667
667
  label: x,
668
668
  description: S,
669
669
  disabled: E,
@@ -674,7 +674,7 @@ function le({ value: e, onChange: a, min: s, max: l, step: d, marks: g, marksPos
674
674
  labelId: ae,
675
675
  descriptionId: oe,
676
676
  errorId: K,
677
- children: /* @__PURE__ */ m(r, {
677
+ children: /* @__PURE__ */ m(i, {
678
678
  endAdornmentWidth: "var(--control-height)",
679
679
  endAdornment: se({
680
680
  open: F,
@@ -1,4 +1,4 @@
1
- import { r as e } from "../chunks/select-CysiIrej.js";
1
+ import { r as e } from "../chunks/select-3KLv_evq.js";
2
2
  import { useMemo as t } from "react";
3
3
  import { cn as n } from "@ryuzaki13/react-foundation-lib/utils";
4
4
  import { Fragment as r, jsx as i, jsxs as a } from "react/jsx-runtime";
@@ -1,5 +1,5 @@
1
1
  import { t as e } from "../chunks/ui.module-DHVTOqZ0.js";
2
- import { l as t, s as n } from "../chunks/input-VC8jEoTa.js";
2
+ import { c as t, u as n } from "../chunks/input-D3u9BYWD.js";
3
3
  import { useImperativeHandle as r, useRef as i, useState as a } from "react";
4
4
  import { cn as o } from "@ryuzaki13/react-foundation-lib/utils";
5
5
  import { jsx as s, jsxs as c } from "react/jsx-runtime";
@@ -28,7 +28,7 @@ var d = {
28
28
  input: "hiZq-y"
29
29
  }, f = /[,\r\n]/, p = /[,\r\n]+/;
30
30
  function m({ ref: m, value: h, onChange: g, label: _, description: v, placeholder: y, size: b, disabled: x, readOnly: S = !1, error: C, onClearError: w, maxTags: T, normalizeTag: E = te, getTagKey: D = ne, addOnBlur: O = !0, getRemoveButtonAriaLabel: re = u, tokensAriaLabel: ie = "Добавленные теги", inputClassName: ae, className: oe, id: se, name: k, form: A, required: ce, maxLength: j, onKeyDown: M, onPaste: N, onBlur: P, onCompositionStart: F, onCompositionEnd: I, "aria-describedby": L, "aria-labelledby": R, ...z }) {
31
- let B = i(null), V = i(null), H = i(!1), [U, W] = a(""), [le, G] = a(""), { controlId: K, labelId: q, descriptionId: ue, errorId: de, describedBy: fe } = t({
31
+ let B = i(null), V = i(null), H = i(!1), [U, W] = a(""), [le, G] = a(""), { controlId: K, labelId: q, descriptionId: ue, errorId: de, describedBy: fe } = n({
32
32
  id: se,
33
33
  hasLabel: _ != null,
34
34
  hasDescription: !!v,
@@ -82,7 +82,7 @@ function m({ ref: m, value: h, onChange: g, label: _, description: v, placeholde
82
82
  let n = e.currentTarget.selectionStart ?? U.length, r = e.currentTarget.selectionEnd ?? n, i = `${U.slice(0, n)}${t}${U.slice(r)}`;
83
83
  Z(i.split(p)), W("");
84
84
  };
85
- return /* @__PURE__ */ c(n, {
85
+ return /* @__PURE__ */ c(t, {
86
86
  label: _,
87
87
  description: v,
88
88
  disabled: x,
@@ -3,7 +3,7 @@ import { a as t, n, t as r } from "../chunks/types-D9Wj9wrg.js";
3
3
  import { jsx as i } from "react/jsx-runtime";
4
4
  //#region src/text-editor/TextEditorLexical.tsx
5
5
  function a() {
6
- return import("../chunks/TextEditorLexicalClient-B084kVzu.js").then((e) => ({ TextEditorLexicalClient: e.TextEditorLexicalClient }));
6
+ return import("../chunks/TextEditorLexicalClient-ChVeb3f3.js").then((e) => ({ TextEditorLexicalClient: e.TextEditorLexicalClient }));
7
7
  }
8
8
  function o(t) {
9
9
  return /* @__PURE__ */ i(e, {
@@ -1,18 +1,18 @@
1
1
  import { t as e } from "../chunks/ui.module-DHVTOqZ0.js";
2
- import { l as t, s as n } from "../chunks/input-VC8jEoTa.js";
2
+ import { c as t, u as n } from "../chunks/input-D3u9BYWD.js";
3
3
  import { cn as r } from "@ryuzaki13/react-foundation-lib/utils";
4
4
  import { jsx as i } from "react/jsx-runtime";
5
5
  var a = { textarea: "TjY2iu" };
6
6
  //#endregion
7
7
  //#region src/textarea/Textarea.tsx
8
8
  function o({ label: o, description: s, className: c, disabled: l, size: u, value: d, onChange: f, error: p, onClearError: m, id: h, ...g }) {
9
- let { controlId: _, labelId: v, descriptionId: y, errorId: b, describedBy: x } = t({
9
+ let { controlId: _, labelId: v, descriptionId: y, errorId: b, describedBy: x } = n({
10
10
  id: h,
11
11
  hasLabel: o != null,
12
12
  hasDescription: !!s,
13
13
  hasError: !!p
14
14
  });
15
- return /* @__PURE__ */ i(n, {
15
+ return /* @__PURE__ */ i(t, {
16
16
  label: o,
17
17
  description: s,
18
18
  disabled: l,