@ryuzaki13/react-foundation-ui 1.5.14 → 1.5.16

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 (275) 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/modal-LHkNxBko.js.map +1 -1
  13. package/dist/chunks/{multi-select-BJ6Lst1E.js → multi-select-BDvaRbUc.js} +8 -7
  14. package/dist/chunks/multi-select-BDvaRbUc.js.map +1 -0
  15. package/dist/chunks/{picker-DLnfOgZj.js → picker-lpH_xp14.js} +87 -87
  16. package/dist/chunks/picker-lpH_xp14.js.map +1 -0
  17. package/dist/chunks/{select-CysiIrej.js → select-3KLv_evq.js} +6 -6
  18. package/dist/chunks/select-3KLv_evq.js.map +1 -0
  19. package/dist/date-input/index.js +1 -1
  20. package/dist/date-time-input/index.js +4 -4
  21. package/dist/drop-zone/index.js +1 -1
  22. package/dist/image/index.js +2 -2
  23. package/dist/input/Input.d.ts +1 -0
  24. package/dist/input/Input.d.ts.map +1 -1
  25. package/dist/input/index.js +2 -2
  26. package/dist/input-date-time/index.js +4 -4
  27. package/dist/input-file/index.js +4 -4
  28. package/dist/input-files/index.js +1 -1
  29. package/dist/input-image/index.js +4 -4
  30. package/dist/input-search/index.js +1 -1
  31. package/dist/layout-picker/index.js +1 -1
  32. package/dist/multi-select/index.js +1 -1
  33. package/dist/multi-select/ui/MultiSelect.d.ts.map +1 -1
  34. package/dist/multi-select/ui/ODataMultiSelect.d.ts.map +1 -1
  35. package/dist/picker/PickerStatus.d.ts +1 -2
  36. package/dist/picker/PickerStatus.d.ts.map +1 -1
  37. package/dist/picker/PickerTriggerInput.d.ts +1 -0
  38. package/dist/picker/PickerTriggerInput.d.ts.map +1 -1
  39. package/dist/picker/index.js +1 -1
  40. package/dist/preset-range-date-input/index.js +1 -1
  41. package/dist/preset-select/index.js +1 -1
  42. package/dist/select/Select.d.ts +1 -1
  43. package/dist/select/Select.d.ts.map +1 -1
  44. package/dist/select/index.js +1 -1
  45. package/dist/slider/index.js +8 -8
  46. package/dist/state-select/index.js +1 -1
  47. package/dist/styles.css +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-CD1woSdo.js → Badge-CBt_HPPh.js} +1 -1
  56. package/storybook-static/assets/{Badge.stories-DPunJSrK.js → Badge.stories-DHlp7od6.js} +1 -1
  57. package/storybook-static/assets/{BadgeList-Baj24Y_J.js → BadgeList-BT0W6FTi.js} +1 -1
  58. package/storybook-static/assets/{Button-mnXUdKCZ.js → Button-C0C_itZJ.js} +1 -1
  59. package/storybook-static/assets/{Button-CGuqXzCc.js → Button-CGe-WQzy.js} +1 -1
  60. package/storybook-static/assets/{Button.stories-Dr67FbTg.js → Button.stories-Ca1LvLDL.js} +1 -1
  61. package/storybook-static/assets/{CalendarView-vw1o_xNM.js → CalendarView-b-XJA739.js} +1 -1
  62. package/storybook-static/assets/{CheckBox-BJL2UykG.js → CheckBox-BL5Dbx7D.js} +1 -1
  63. package/storybook-static/assets/{CheckBox-QV3ntveq.js → CheckBox-CEMmNi6o.js} +1 -1
  64. package/storybook-static/assets/{CheckBox.stories-DRQcsnNN.js → CheckBox.stories-BlmETOtm.js} +1 -1
  65. package/storybook-static/assets/{Color-6AOWCN3U-Bun7MdUD.js → Color-6AOWCN3U-Rs90waq6.js} +1 -1
  66. package/storybook-static/assets/{ContextMenu-CNxPWPTI.js → ContextMenu-StOWAKzK.js} +1 -1
  67. package/storybook-static/assets/{ContextMenu-C0ZNiHZl.js → ContextMenu-ifntlTtL.js} +1 -1
  68. package/storybook-static/assets/{ContextMenu.stories-BkZ0l4Tb.js → ContextMenu.stories-Cyd6SOTp.js} +1 -1
  69. package/storybook-static/assets/{DateInput-mz_D_J5f.js → DateInput-BZwlrsJE.js} +1 -1
  70. package/storybook-static/assets/DateInput-Ccfirs_5.js +1 -0
  71. package/storybook-static/assets/{DateInput.stories-BleJdbF3.js → DateInput.stories-DuAcnLrF.js} +1 -1
  72. package/storybook-static/assets/{DateRangePresetSelect-D-8_Suqc.js → DateRangePresetSelect-B656ZC5n.js} +1 -1
  73. package/storybook-static/assets/{DateRangePresetSelect-DXJu8742.js → DateRangePresetSelect-iyLfUWrk.js} +1 -1
  74. package/storybook-static/assets/{DateRangePresetSelect.stories-COMQj6gH.js → DateRangePresetSelect.stories-C5jaj4AU.js} +1 -1
  75. package/storybook-static/assets/{Detail-CJChG-7Q.js → Detail-eDKQEd3h.js} +1 -1
  76. package/storybook-static/assets/{Detail.stories-CX19zPog.js → Detail.stories-DOR0R1ae.js} +1 -1
  77. package/storybook-static/assets/{Dialog-a4GV2ZQ0.js → Dialog-B0MVfYY5.js} +1 -1
  78. package/storybook-static/assets/{Dialog-FuIbCMO-.js → Dialog-i9mgH9Cb.js} +1 -1
  79. package/storybook-static/assets/{Dialog.stories-D1JgXIdZ.js → Dialog.stories-A7-9xaGT.js} +1 -1
  80. package/storybook-static/assets/{Disclosure-BSazy5rN.js → Disclosure-B6hdBRNS.js} +1 -1
  81. package/storybook-static/assets/{Disclosure.stories-CES0qFr3.js → Disclosure.stories-j6zDvBJo.js} +1 -1
  82. package/storybook-static/assets/{DisclosureGroup-zBtzBoZj.js → DisclosureGroup-DVwpZwnT.js} +1 -1
  83. package/storybook-static/assets/{DocsRenderer-JROSPFPF-P9L3PVGp.js → DocsRenderer-JROSPFPF-zZ4ZLuXF.js} +1 -1
  84. package/storybook-static/assets/{DropZone-jynwO9zp.js → DropZone-53wdVvSw.js} +1 -1
  85. package/storybook-static/assets/{DropZone-DDByDKii.js → DropZone-CxohBLs1.js} +1 -1
  86. package/storybook-static/assets/{DropZone.stories-ChV6kmPA.js → DropZone.stories-Ivz53spD.js} +1 -1
  87. package/storybook-static/assets/{DropdownMenu-DEekn_iq.js → DropdownMenu-DjTxZ9mG.js} +1 -1
  88. package/storybook-static/assets/{ExpandableActionPanel-B9KEphZt.js → ExpandableActionPanel-C7dhAmzv.js} +1 -1
  89. package/storybook-static/assets/{ExpandableActionPanel.stories-hJSbWdEi.js → ExpandableActionPanel.stories-bbNSWlHO.js} +1 -1
  90. package/storybook-static/assets/{Flex-DGw71nVa.js → Flex-CnGuvcet.js} +1 -1
  91. package/storybook-static/assets/{Flex.stories-CisdWxc2.js → Flex.stories-CO0Tcbqc.js} +1 -1
  92. package/storybook-static/assets/{FloatingPopover-BgSpMYSa.js → FloatingPopover-DVUsWDK1.js} +1 -1
  93. package/storybook-static/assets/{FormattedTableCell-DqGAaLSH.js → FormattedTableCell-DzyFt8pN.js} +1 -1
  94. package/storybook-static/assets/{Grid-DqrdfRPP.js → Grid-BQoZRx-K.js} +1 -1
  95. package/storybook-static/assets/{Grid.stories-VUK1fVo1.js → Grid.stories-fe72neum.js} +1 -1
  96. package/storybook-static/assets/{ImageCropper.stories-C8tsdj0y.js → ImageCropper.stories-DOQKRGCf.js} +1 -1
  97. package/storybook-static/assets/{ImageRenderer-y_yPk15t.js → ImageRenderer-DRgxKh9o.js} +1 -1
  98. package/storybook-static/assets/{ImageRenderer.stories-CdfTCmEM.js → ImageRenderer.stories-Fm1-VzDZ.js} +1 -1
  99. package/storybook-static/assets/{ImageView.stories-BpJA3U7W.js → ImageView.stories-D9t9ssXk.js} +1 -1
  100. package/storybook-static/assets/{ImageViewer.stories-joUGbNuk.js → ImageViewer.stories-B4lP003M.js} +2 -2
  101. package/storybook-static/assets/{ImageViewerRuntime-Bd6bwD2G.js → ImageViewerRuntime-RvxYiNtK.js} +1 -1
  102. package/storybook-static/assets/Input-BF_XmTD5.js +3 -0
  103. package/storybook-static/assets/{Input-BqHQ13Py.js → Input-PxfHDJhW.js} +1 -1
  104. package/storybook-static/assets/{Input.stories-D5_EehUE.js → Input.stories-BKFhCCxi.js} +1 -1
  105. package/storybook-static/assets/{InputDateTime-DMUf2anh.js → InputDateTime-B8HY40cQ.js} +1 -1
  106. package/storybook-static/assets/InputDateTime.stories-CDzR-1c_.js +38 -0
  107. package/storybook-static/assets/InputFile-D2f3Ncf_.js +1 -0
  108. package/storybook-static/assets/{InputFile-Bb28M0Jz.js → InputFile-DSbHQfK1.js} +1 -1
  109. package/storybook-static/assets/{InputFile.stories-BcmVjUTx.js → InputFile.stories-DVml-Ggy.js} +1 -1
  110. package/storybook-static/assets/InputFiles-BJFRLocJ.js +1 -0
  111. package/storybook-static/assets/{InputFiles-DGD8b7Ou.js → InputFiles-DlWJOX3x.js} +1 -1
  112. package/storybook-static/assets/{InputFiles.stories-CEI2y9jM.js → InputFiles.stories-Cts55TkV.js} +1 -1
  113. package/storybook-static/assets/{InputFilesList-BP0hLe6p.js → InputFilesList-CWFXc9yC.js} +1 -1
  114. package/storybook-static/assets/{InputImage-CNW2H1oW.js → InputImage-CFX4So-R.js} +1 -1
  115. package/storybook-static/assets/{InputImage-DGuYPBQF.js → InputImage-DaDh0VF5.js} +1 -1
  116. package/storybook-static/assets/{InputImage.stories-BRqt3EaX.js → InputImage.stories-B7-OlA23.js} +1 -1
  117. package/storybook-static/assets/{InteractiveComponents-BDlt0WQb.js → InteractiveComponents-DnY_0afg.js} +1 -1
  118. package/storybook-static/assets/{InteractiveComponents.stories-CCwZe0gu.js → InteractiveComponents.stories-BHWoPtk_.js} +1 -1
  119. package/storybook-static/assets/{LayoutPicker-mhDjtSHC.js → LayoutPicker-CYjHcE76.js} +1 -1
  120. package/storybook-static/assets/{LayoutPicker-NTQugPXW.js → LayoutPicker-DeWoPdBP.js} +1 -1
  121. package/storybook-static/assets/{LayoutPicker.stories-B7pmo36I.js → LayoutPicker.stories-hldgix1i.js} +1 -1
  122. package/storybook-static/assets/{Listbox-CX66_FoN.js → Listbox-D1ItX7hG.js} +1 -1
  123. package/storybook-static/assets/{Listbox-CgzrQDwl.js → Listbox-D9NmwlkU.js} +1 -1
  124. package/storybook-static/assets/{Listbox.stories-BuvQeQ0-.js → Listbox.stories-BuDPOiYR.js} +1 -1
  125. package/storybook-static/assets/{Modal-yA7tk-MI.js → Modal-BnaBQ4Qt.js} +1 -1
  126. package/storybook-static/assets/{Modal.stories-fUsmoWsB.js → Modal.stories-D5O8faO2.js} +1 -1
  127. package/storybook-static/assets/{ModalManagerProvider-CpW75Za1.js → ModalManagerProvider-BuKjD141.js} +1 -1
  128. package/storybook-static/assets/{ModalManagerProvider-CjPErFqW.css → ModalManagerProvider-m1su6j5b.css} +1 -1
  129. package/storybook-static/assets/MultiSelect-CQ7xkfZh.js +2 -0
  130. package/storybook-static/assets/{MultiSelect-CAK64RnT.js → MultiSelect-WTvYgy5x.js} +1 -1
  131. package/storybook-static/assets/{MultiSelect.stories-BnOcEsh0.js → MultiSelect.stories-Ce-VHDDo.js} +1 -1
  132. package/storybook-static/assets/{NoData-BLbA-zp6.js → NoData-CGZ7NNhA.js} +1 -1
  133. package/storybook-static/assets/{NotificationsHost-JM9SHcK4.js → NotificationsHost-FE0ZlQzb.js} +1 -1
  134. package/storybook-static/assets/{NotificationsHost.stories-Cq6KBUGr.js → NotificationsHost.stories-Do2Jt2f-.js} +1 -1
  135. package/storybook-static/assets/{ODataMultiSelect-C000rYJO.js → ODataMultiSelect-DI6TVs9F.js} +1 -1
  136. package/storybook-static/assets/ODataMultiSelect.stories-Bp9jLCrr.js +137 -0
  137. package/storybook-static/assets/{ODataSelect-D_bcFAMN.js → ODataSelect-Dw8rMmoG.js} +1 -1
  138. package/storybook-static/assets/ODataSelect.stories-Bo9uRfkb.js +207 -0
  139. package/storybook-static/assets/{ODataTreeMultiSelect-yatLDsY7.js → ODataTreeMultiSelect-CTr2VlAP.js} +1 -1
  140. package/storybook-static/assets/{ODataTreeMultiSelect.stories-DeTaeKuH.js → ODataTreeMultiSelect.stories-ofkDgSQA.js} +1 -1
  141. package/storybook-static/assets/{ODataTreeSelect-DbxkcIOC.js → ODataTreeSelect-BpPakh-O.js} +1 -1
  142. package/storybook-static/assets/{ODataTreeSelect.stories-BiL0Ew_l.js → ODataTreeSelect.stories-vcZvnFkU.js} +1 -1
  143. package/storybook-static/assets/{OneStepScroller-CVMtNkB8.js → OneStepScroller-CeDwkCiM.js} +1 -1
  144. package/storybook-static/assets/{PeriodSelect-CvIh7s4o.js → PeriodSelect-B9d9aqSR.js} +1 -1
  145. package/storybook-static/assets/{PeriodSelect-BxUpa6Ti.js → PeriodSelect-C4_mlRu3.js} +1 -1
  146. package/storybook-static/assets/{PeriodSelect.stories-9UkxLt3c.js → PeriodSelect.stories-DpZH3_ru.js} +1 -1
  147. package/storybook-static/assets/{PickerSelectionToolbar-DCyKqj4d.js → PickerSelectionToolbar-DwDO46st.js} +1 -1
  148. package/storybook-static/assets/{PickerTriggerActions-C2ml1dHu.js → PickerTriggerActions-BTN8qrVG.js} +1 -1
  149. package/storybook-static/assets/{Popover-lL1gFyV9.js → Popover-BReYcTul.js} +1 -1
  150. package/storybook-static/assets/{Popover-CIkFX8KE.js → Popover-DfFAGnWn.js} +1 -1
  151. package/storybook-static/assets/{Popover.stories-qdEo-ssX.js → Popover.stories-COTX6f9w.js} +1 -1
  152. package/storybook-static/assets/{PresetRangeDateInput-BnjHtxAq.js → PresetRangeDateInput-BKGdbGOT.js} +1 -1
  153. package/storybook-static/assets/{PresetRangeDateInput-CJMd3--R.js → PresetRangeDateInput-XsH5e5kz.js} +1 -1
  154. package/storybook-static/assets/{PresetRangeDateInput.stories-CAeR9ZbD.js → PresetRangeDateInput.stories-CkSmf5pq.js} +1 -1
  155. package/storybook-static/assets/{PresetSelect-DsWB0UAO.js → PresetSelect-CQA8gZre.js} +1 -1
  156. package/storybook-static/assets/{RadioButton-BoHDe82U.js → RadioButton-40N9EaaH.js} +1 -1
  157. package/storybook-static/assets/{RadioButton-D8vPj5e8.js → RadioButton-D_PeMLg4.js} +1 -1
  158. package/storybook-static/assets/{RadioButton.stories-CUj8nWsY.js → RadioButton.stories-BfFScj_T.js} +1 -1
  159. package/storybook-static/assets/{RadioGroup-BdV4BEd8.js → RadioGroup-CRl56GFu.js} +1 -1
  160. package/storybook-static/assets/{RadioGroup-Ut9gYgVv.js → RadioGroup-DhLjiTKO.js} +1 -1
  161. package/storybook-static/assets/{RadioGroup.stories-CqDdGawq.js → RadioGroup.stories-CdeSVsK9.js} +1 -1
  162. package/storybook-static/assets/{Scrollable-CYqKWV-X.js → Scrollable-DHZdiFvF.js} +1 -1
  163. package/storybook-static/assets/{Select-CiCBBpv5.js → Select-8UXq3Ejh.js} +1 -1
  164. package/storybook-static/assets/Select-Ckfg31rf.js +12 -0
  165. package/storybook-static/assets/{Select.stories-LhZxxpT7.js → Select.stories-DRrQtm7s.js} +1 -1
  166. package/storybook-static/assets/{SelectOptionContent-BzRajXPC.js → SelectOptionContent-wpQP6S3r.js} +1 -1
  167. package/storybook-static/assets/{SerializableSelect-Cy7gs4jX.js → SerializableSelect-BvyTXo5D.js} +1 -1
  168. package/storybook-static/assets/{SerializableSelect.stories-C2_ryaWY.js → SerializableSelect.stories-DWPjlLbR.js} +1 -1
  169. package/storybook-static/assets/{SingleDateTimeInput-Dva2NFrn.js → SingleDateTimeInput-CHgHSsId.js} +1 -1
  170. package/storybook-static/assets/{SingleDateTimeInput-B_UBXx82.js → SingleDateTimeInput-DuwxX1HD.js} +1 -1
  171. package/storybook-static/assets/{SingleDateTimeInput.stories-DYt31IoM.js → SingleDateTimeInput.stories-BzqU7rVe.js} +1 -1
  172. package/storybook-static/assets/{Slider-Cbcdmx97.js → Slider-BcSXtopQ.js} +1 -1
  173. package/storybook-static/assets/Slider-Cl2Jr6sd.js +1 -0
  174. package/storybook-static/assets/{Slider.stories-CP_gKjK0.js → Slider.stories-0MMIhCqj.js} +1 -1
  175. package/storybook-static/assets/{SliderInput-paqtqhAm.js → SliderInput-CZMNd0TB.js} +1 -1
  176. package/storybook-static/assets/SliderInput-DV9ueVG9.js +2 -0
  177. package/storybook-static/assets/{SliderInput.stories-W1GTuM_C.js → SliderInput.stories-B2KZAO5D.js} +1 -1
  178. package/storybook-static/assets/{Sortable-CT4fVwTv.js → Sortable-DTWkApJk.js} +1 -1
  179. package/storybook-static/assets/{Sortable.stories-nKc7Upc2.js → Sortable.stories-DiqGQKPe.js} +1 -1
  180. package/storybook-static/assets/{Splitter-N9erAT3u.js → Splitter-DWf33XLC.js} +1 -1
  181. package/storybook-static/assets/{Splitter.stories-CK-GKi--.js → Splitter.stories-uFHf1nfJ.js} +1 -1
  182. package/storybook-static/assets/{StateSelect-CIPFB33b.js → StateSelect-CdENvgkn.js} +1 -1
  183. package/storybook-static/assets/{StateSelect-Dojqy1hR.js → StateSelect-CwOoR86z.js} +1 -1
  184. package/storybook-static/assets/{StateSelect.stories-C4On1tk0.js → StateSelect.stories-D5M09b8u.js} +1 -1
  185. package/storybook-static/assets/{StringToggle.stories-BetJnFMH.js → StringToggle.stories-Dxh6sCfr.js} +1 -1
  186. package/storybook-static/assets/{Switch-DUCOjbqF.js → Switch-CM2jIFGP.js} +1 -1
  187. package/storybook-static/assets/{Switch-D2p3kwTC.js → Switch-FRPZ-ReS.js} +1 -1
  188. package/storybook-static/assets/{Switch.stories-Blqtc2Hq.js → Switch.stories-Cj1LQm5P.js} +1 -1
  189. package/storybook-static/assets/{Table-h5VqBZQC.js → Table-ByftPZxi.js} +1 -1
  190. package/storybook-static/assets/{Table.stories-DVNQ0tWI.js → Table.stories-DzyKCG6d.js} +1 -1
  191. package/storybook-static/assets/{Tabs-oJ3wBcAV.js → Tabs-CMzrNw_P.js} +1 -1
  192. package/storybook-static/assets/{Tabs.stories-CBh5mcQQ.js → Tabs.stories-DNI4KEtv.js} +1 -1
  193. package/storybook-static/assets/{TabsBox-B9LCP1S7.js → TabsBox-DIjNPeJB.js} +1 -1
  194. package/storybook-static/assets/{TagInput-DxR2Bj-i.js → TagInput-D9ojPL7c.js} +1 -1
  195. package/storybook-static/assets/{TagInput.stories-0NpZyaKp.js → TagInput.stories-C64vaQL9.js} +1 -1
  196. package/storybook-static/assets/{Text-DlyoUTZs.js → Text-Bpc1gm4P.js} +1 -1
  197. package/storybook-static/assets/{Textarea-CvpgjBoz.js → Textarea-BJM1kx2f.js} +1 -1
  198. package/storybook-static/assets/{Textarea--e-7GpNS.js → Textarea-BMJs3RAy.js} +1 -1
  199. package/storybook-static/assets/{Textarea.stories-CLl8p2g4.js → Textarea.stories-CKFksN5-.js} +1 -1
  200. package/storybook-static/assets/{TimePanel-Fn9pUQDM.js → TimePanel-gzfs_qAF.js} +1 -1
  201. package/storybook-static/assets/{TimePanel.stories-BHUoKMY9.js → TimePanel.stories-Zk6UwTcc.js} +1 -1
  202. package/storybook-static/assets/{Toggle-B6twXbRN.js → Toggle-CHNJu3Rb.js} +1 -1
  203. package/storybook-static/assets/{Toggle-j_swU_h-.js → Toggle-kRuVWZLM.js} +1 -1
  204. package/storybook-static/assets/{Toggle.stories-BkRbPfci.js → Toggle.stories-BntFw_sr.js} +1 -1
  205. package/storybook-static/assets/{TreeMultiSelect-86pFYMuR.js → TreeMultiSelect-Bsvih7Fk.js} +1 -1
  206. package/storybook-static/assets/{TreeMultiSelect-6SlJwvvJ.js → TreeMultiSelect-CRbUNgSf.js} +1 -1
  207. package/storybook-static/assets/{TreeMultiSelect.stories-Dvfg-_tX.js → TreeMultiSelect.stories-DX7pu6Hx.js} +1 -1
  208. package/storybook-static/assets/{TreePickerBase-B-C8g39p.js → TreePickerBase-B9fScxG2.js} +2 -2
  209. package/storybook-static/assets/{TreeSelect-B-rvlWXe.js → TreeSelect-BioGZRGj.js} +1 -1
  210. package/storybook-static/assets/{TreeSelect-BsvnuuDK.js → TreeSelect-f1fCl3zs.js} +1 -1
  211. package/storybook-static/assets/{TreeSelect.stories-Bd7RvBSv.js → TreeSelect.stories-C9CLIEIk.js} +1 -1
  212. package/storybook-static/assets/{TreeTable-hKPiLJbk.js → TreeTable-DemHDx4t.js} +1 -1
  213. package/storybook-static/assets/{TreeTable.stories-DW8-8XIt.js → TreeTable.stories-DafLiUNY.js} +1 -1
  214. package/storybook-static/assets/{async-ClBTLJJf.js → async-Cwy6hvUj.js} +1 -1
  215. package/storybook-static/assets/{blocks-BAkpxLLq.js → blocks-Ex02VobV.js} +3 -3
  216. package/storybook-static/assets/{browserAndReact-CVEbp_eh.js → browserAndReact-DAR0dTR7.js} +1 -1
  217. package/storybook-static/assets/{check-BI1SJVLE.js → check-DB2dx1__.js} +1 -1
  218. package/storybook-static/assets/{chevron-down-C8Jy-MyE.js → chevron-down-DSy2QeCK.js} +1 -1
  219. package/storybook-static/assets/{chevron-left-BY47fHoH.js → chevron-left-zPhnQ8nb.js} +1 -1
  220. package/storybook-static/assets/{chevron-right-Uoc3pHM2.js → chevron-right-DQF4WgdT.js} +1 -1
  221. package/storybook-static/assets/{chunk-W22LQPXL-CL5_k7w9.js → chunk-W22LQPXL-gWdtxN3R.js} +1 -1
  222. package/storybook-static/assets/{circle-alert-DmeiIhJa.js → circle-alert-Bm0pcxg_.js} +1 -1
  223. package/storybook-static/assets/{circle-check-DiYKn1po.js → circle-check-BXNavyDm.js} +1 -1
  224. package/storybook-static/assets/{components-CvASwB3y.js → components-R0Y5aIKj.js} +3 -3
  225. package/storybook-static/assets/{contextMenu-CnFw0q-x.js → contextMenu-BrF8gHPb.js} +1 -1
  226. package/storybook-static/assets/{defaultRenderers-BvRfeq-t.js → defaultRenderers-nQ9PVA83.js} +1 -1
  227. package/storybook-static/assets/{download-9zZQxSfv.js → download-CY-7FliB.js} +1 -1
  228. package/storybook-static/assets/{filesAndExcel-BEg-oUnG.js → filesAndExcel-T2xNLh0p.js} +1 -1
  229. package/storybook-static/assets/{floating-ui.react-1JhRQUPm.js → floating-ui.react-3jbDwBbN.js} +1 -1
  230. package/storybook-static/assets/{formatters-CXfVcFH6.js → formatters-OgtpL0WT.js} +1 -1
  231. package/storybook-static/assets/{formatters-runtime-BUROwHGI.js → formatters-runtime-CCyIDqAX.js} +1 -1
  232. package/storybook-static/assets/{foundationLib-BIERdAtE.js → foundationLib-BlfXpyHp.js} +1 -1
  233. package/storybook-static/assets/{hooks-CU6FIrkU.js → hooks-qkJCxEJH.js} +1 -1
  234. package/storybook-static/assets/{iframe-CyRHAH4o.js → iframe-BO6kl_y3.js} +5 -5
  235. package/storybook-static/assets/iframe-pryCWx5K.js +1 -0
  236. package/storybook-static/assets/{info-vRwdpcvs.js → info-C5aTIbEu.js} +1 -1
  237. package/storybook-static/assets/{odata-BeK1NpdX.js → odata-COOgM2PK.js} +1 -1
  238. package/storybook-static/assets/{odataAndTables-BsGyKbV-.js → odataAndTables-ple0ELV4.js} +1 -1
  239. package/storybook-static/assets/{odataFetchFn-CBB59F7H.js → odataFetchFn-D9NfuOw8.js} +1 -1
  240. package/storybook-static/assets/{odataStoryFixtures-D7UlbX90.js → odataStoryFixtures-VBBNP3xX.js} +1 -1
  241. package/storybook-static/assets/{persisted-C-zkxkWy.js → persisted-B5kzQ2KY.js} +1 -1
  242. package/storybook-static/assets/{pureUtilities-BhlI4P36.js → pureUtilities-o8gYunmq.js} +1 -1
  243. package/storybook-static/assets/{react-4VaPHlD7.js → react-PykdVEaW.js} +1 -1
  244. package/storybook-static/assets/{refresh-cw-koABHMz2.js → refresh-cw-DcaQJ7Aq.js} +1 -1
  245. package/storybook-static/assets/{runtimeAndState-DCiPKg2b.js → runtimeAndState-BS_JmAbi.js} +1 -1
  246. package/storybook-static/assets/{settings-2-B-UnKmoE.js → settings-2-BVQ9p9iA.js} +1 -1
  247. package/storybook-static/assets/{sortable-Cof-YMaC.js → sortable-NjDAyqXb.js} +1 -1
  248. package/storybook-static/assets/{syntaxhighlighter-T5IQBZDB-C1dGYx2A.js → syntaxhighlighter-T5IQBZDB-xdXrMx1c.js} +1 -1
  249. package/storybook-static/assets/{trash-2-DIKrAYpi.js → trash-2-CGN211Q_.js} +1 -1
  250. package/storybook-static/assets/{triangle-alert-3L0K5wrt.js → triangle-alert-DjU47Rlc.js} +1 -1
  251. package/storybook-static/assets/{useODataSelectBase-Cn7uL1Y6.js → useODataSelectBase-5dL7ASZj.js} +1 -1
  252. package/storybook-static/assets/{useODataTreeData-MmRan049.js → useODataTreeData-B_QL77b4.js} +1 -1
  253. package/storybook-static/assets/usePickerQuery-Ce5sMvUH.js +1 -0
  254. package/storybook-static/assets/usePickerTriggerController-BHf38AIA.js +1 -0
  255. package/storybook-static/assets/{x-CI99aKu3.js → x-BCIJOW1D.js} +1 -1
  256. package/storybook-static/iframe.html +2 -2
  257. package/storybook-static/project.json +1 -1
  258. package/dist/chunks/input-VC8jEoTa.js.map +0 -1
  259. package/dist/chunks/multi-select-BJ6Lst1E.js.map +0 -1
  260. package/dist/chunks/picker-DLnfOgZj.js.map +0 -1
  261. package/dist/chunks/select-CysiIrej.js.map +0 -1
  262. package/storybook-static/assets/DateInput-BdjPpQBb.js +0 -1
  263. package/storybook-static/assets/Input-B9yXA1bX.js +0 -3
  264. package/storybook-static/assets/InputDateTime.stories-CSCBZZSt.js +0 -38
  265. package/storybook-static/assets/InputFile--7YNcXk1.js +0 -1
  266. package/storybook-static/assets/InputFiles-BCk2pk9f.js +0 -1
  267. package/storybook-static/assets/MultiSelect-CoqGVsBf.js +0 -2
  268. package/storybook-static/assets/ODataMultiSelect.stories-D1JrPXno.js +0 -137
  269. package/storybook-static/assets/ODataSelect.stories-k0nZfp60.js +0 -207
  270. package/storybook-static/assets/Select-RbjV8dmi.js +0 -12
  271. package/storybook-static/assets/Slider-1ymlsxh9.js +0 -1
  272. package/storybook-static/assets/SliderInput-XHYB3r06.js +0 -2
  273. package/storybook-static/assets/iframe-DMUTCGyI.js +0 -1
  274. package/storybook-static/assets/usePickerQuery-Dso-ufUa.js +0 -1
  275. package/storybook-static/assets/usePickerTriggerController-B-FKRrNu.js +0 -1
@@ -1 +0,0 @@
1
- import{n as e}from"./rolldown-runtime-C0FnF6B9.js";import{t}from"./react-C21x__mS.js";import{n}from"./iframe-CyRHAH4o.js";import{a as r,i,n as a}from"./utils-DUM89eIj.js";import{n as o,t as s}from"./ui.module-CiLQZm_L.js";import{c,l,n as u,o as d,r as f,u as p}from"./Input-B9yXA1bX.js";import{a as m,i as h,o as g,r as _,s as v}from"./file-vPGnhPr-.js";var y,b,x,S;function C(){return(C=e((()=>{y=`Ggxyuj`,b=`fthcmO`,x=`wyY60X`,S={control:y,fileName:b,hiddenInput:x}})))()}function w(e){let{value:t,onClear:n,onReadError:i,accept:s,allowedMime:c,maxBytes:l,label:h,description:y,placeholder:b=`Выберите файл`,disabled:x,size:C,error:w,onClearError:D,className:O}=e;m(c),g(s);let k=(0,T.useRef)(null),{controlId:A,labelId:j,descriptionId:M,errorId:N,describedBy:P}=p({hasLabel:h!=null,hasDescription:!!y,hasError:!!w}),F=(0,T.useCallback)(async t=>{let n=t.target.files?.[0];if(n){t.target.value=``,w&&D&&D();try{if(e.readMode===`array-buffer`){let t=await v(n,{allowedMime:c,maxBytes:l,mode:`array-buffer`});e.onChange(t);return}let t=await v(n,{allowedMime:c,maxBytes:l});e.onChange(t)}catch(e){e instanceof _&&i&&i(e)}}},[e,c,l,i,w,D]),I=(0,T.useCallback)(()=>{k.current?.click()},[]);return(0,E.jsxs)(d,{label:h,description:y,disabled:x,className:O,size:C,error:w,controlId:A,labelId:j,descriptionId:M,errorId:N,children:[(0,E.jsx)(`input`,{ref:k,id:A,type:`file`,accept:(s??c)?.join(`,`),disabled:x,className:S.hiddenInput,onChange:F,tabIndex:-1}),(0,E.jsx)(f,{endAdornment:n?(0,E.jsx)(u,{onClick:n,disabled:x}):void 0,endAdornmentWidth:n?`var(--control-height)`:void 0,children:({controlClassName:e})=>(0,E.jsx)(`div`,{role:`button`,tabIndex:x?-1:0,onClick:I,onKeyDown:e=>a(e,I,{disabled:x}),className:r(o.uiInputControl,S.control,e,!!w&&o.invalid),"data-disabled":x||void 0,"aria-invalid":!!w||void 0,"aria-disabled":x,"aria-labelledby":j,"aria-describedby":P,children:t?(0,E.jsx)(`span`,{className:S.fileName,children:t.meta.name}):(0,E.jsx)(`span`,{className:o.uiPlaceholder,children:b})})})]})}var T,E;function D(){return(D=e((()=>{T=t(),h(),i(),c(),l(),s(),C(),E=n(),w.__docgenInfo={description:'InputFile — компонент выбора одного файла.\n\nВизуально идентичен InputText: поле с label, description, placeholder,\nкнопкой очистки (крестик) и блоком ошибки.\n\nПри клике открывается нативный диалог выбора файла.\nПосле выбора файл читается через readFile, результат передаётся в onChange.\n\nInputFile позволяет выбрать один файл и передаёт наружу типизированный результат чтения.\nЕсли `readMode` не задан или равен `"data-url"`, в `onChange` приходит объект с `dataUrl`.\nЕсли `readMode` равен `"array-buffer"`, в `onChange` приходит объект с `buffer`.',methods:[],displayName:`InputFile`}})))()}export{D as n,w as t};
@@ -1 +0,0 @@
1
- import{n as e}from"./rolldown-runtime-C0FnF6B9.js";import{t}from"./react-C21x__mS.js";import{n}from"./iframe-CyRHAH4o.js";import{a as r,i,n as a}from"./utils-DUM89eIj.js";import{n as o,t as s}from"./ui.module-CiLQZm_L.js";import{c,l,o as u,r as d,u as f}from"./Input-B9yXA1bX.js";import{a as p,i as m,o as h,r as g,s as _}from"./file-vPGnhPr-.js";import{i as v,n as y,r as b,t as x}from"./InputFilesList-BP0hLe6p.js";function S(e){let{value:t,onReadError:n,accept:i,allowedMime:s,maxBytes:c,maxFiles:l,label:m,description:v,placeholder:y=`Выберите файлы`,disabled:S,size:T,error:E,onClearError:D,className:O}=e;p(s),h(i);let k=(0,C.useRef)(null),{controlId:A,labelId:j,descriptionId:M,errorId:N,describedBy:P}=f({hasLabel:m!=null,hasDescription:!!v,hasError:!!E}),F=typeof l==`number`&&t.length>=l,I=(0,C.useCallback)(async r=>{let i=r.target.files;if(!i||i.length===0)return;let a=Array.from(i);r.target.value=``,E&&D&&D();let o=typeof l==`number`?l-t.length:a.length,u=a.slice(0,o);if(e.readMode===`array-buffer`){let t=[];for(let e of u)try{let n=await _(e,{allowedMime:s,maxBytes:c,mode:`array-buffer`});t.push(n)}catch(e){e instanceof g&&n&&n(e)}t.length>0&&e.onChange([...e.value,...t]);return}let d=[];for(let e of u)try{let t=await _(e,{allowedMime:s,maxBytes:c});d.push(t)}catch(e){e instanceof g&&n&&n(e)}d.length>0&&e.onChange([...e.value,...d])},[e,l,t.length,s,c,n,E,D]),L=(0,C.useCallback)(()=>{k.current?.click()},[]),R=(e.readMode,(0,w.jsx)(x,{files:e.value,onChange:e.onChange}));return(0,w.jsxs)(u,{label:m,description:v,disabled:S,className:O,size:T,error:E,controlId:A,labelId:j,descriptionId:M,errorId:N,children:[(0,w.jsx)(`input`,{ref:k,id:A,type:`file`,accept:(i??s)?.join(`,`),multiple:!0,disabled:S||F,className:b.hiddenInput,onChange:I,tabIndex:-1}),(0,w.jsx)(d,{children:()=>(0,w.jsx)(`div`,{role:`button`,tabIndex:S||F?-1:0,onClick:L,onKeyDown:e=>a(e,L,{disabled:S||F}),className:r(o.uiInputControl,b.control,!!E&&`invalid`),"data-disabled":S||void 0,"aria-invalid":!!E||void 0,"aria-disabled":S||F,"aria-labelledby":j,"aria-describedby":P,children:(0,w.jsx)(`span`,{className:o.uiPlaceholder,children:F?`Максимум ${l} файлов`:y})})}),R]})}var C,w;function T(){return(T=e((()=>{C=t(),m(),i(),c(),l(),s(),v(),y(),w=n(),S.__docgenInfo={description:'InputFiles — компонент выбора нескольких файлов.\n\nПоле стилизовано как InputText. При клике открывается нативный\nдиалог с multiple. Каждый выбранный файл читается через readFile\nи добавляется в массив value.\n\nСписок выбранных файлов отображается под полем.\nКаждый файл можно удалить кнопкой «крестик».\n\nInputFiles типизирует массив по `readMode`.\nЕсли `readMode` не задан или равен `"data-url"`, в `value` и `onChange`\nиспользуется массив объектов с `dataUrl`. Если `readMode` равен\n`"array-buffer"`, используется массив объектов с `buffer`.',methods:[],displayName:`InputFiles`}})))()}export{T as n,S as t};
@@ -1,2 +0,0 @@
1
- import{n as e,o as t}from"./rolldown-runtime-C0FnF6B9.js";import{t as n}from"./react-C21x__mS.js";import{n as r,t as i}from"./CheckBox-BJL2UykG.js";import{n as a,t as ee}from"./x-CI99aKu3.js";import{n as o}from"./iframe-CyRHAH4o.js";import{a as te,i as s}from"./utils-DUM89eIj.js";import{n as c,t as l}from"./Text-DlyoUTZs.js";import{n as u,t as d}from"./ui.module-CiLQZm_L.js";import{c as f,g as p,h as m,i as h,l as g,m as _,n as ne,p as re,r as v,s as ie,t as ae,u as y}from"./usePickerTriggerController-B-FKRrNu.js";import{i as b,n as oe,r as x,t as S}from"./usePickerQuery-Dso-ufUa.js";import{n as C,t as se}from"./PickerTriggerActions-C2ml1dHu.js";import{n as w,t as T}from"./usePickerDefaultFilter-Be420WNF.js";import{a as ce,d as le,f as ue,i as E,l as de,n as fe,o as pe,t as me,u as D}from"./defaultRenderers-BvRfeq-t.js";function O({text:e,isError:t}){return(0,k.jsxs)(`div`,{className:u.uiPopupOption,children:[(0,k.jsx)(`span`,{className:u.uiPopupOptionIcon}),(0,k.jsx)(l,{color:t?`error`:`primary`,children:e})]})}var k;function A(){return(A=e((()=>{c(),d(),k=o(),O.__docgenInfo={description:"Скелетон строки опции для `MultiSelect`. Используется во время загрузки или при отображении ошибок получения списка.",methods:[],displayName:`MultiSelectOptionSkeleton`,props:{text:{required:!0,tsType:{name:`string`},description:``},isError:{required:!1,tsType:{name:`boolean`},description:``}}}})))()}function he({isNoData:e,isLoading:t,error:n,children:r}){return e?(0,P.jsx)(x,{emptyState:(0,P.jsx)(O,{text:`Нет данных`})}):t?(0,P.jsx)(x,{loadingState:(0,P.jsx)(O,{text:`Загрузка...`})}):n?(0,P.jsx)(x,{errorState:(0,P.jsx)(O,{isError:!0,text:`Ошибка загрузки`})}):(0,P.jsx)(P.Fragment,{children:r})}function j(e,t){return e[t]}function ge(e,t,n){return Array.from(new Set([e[n],e[t],...Object.values(e)]))}function _e(e,t,n){if(e.length!==t.length)return!1;let r=new Set(t.map(e=>j(e,n)));return e.every(e=>r.has(j(e,n)))}function M({entries:e,listId:t,activeIndex:n,selectedKeys:r,codeKey:a,query:ee,highlightQuery:o,getOptionDisabled:s,getOptionId:c,setOptionRef:l,toggleOption:d,selectOnlyOption:f,renderItem:p}){return e.map(({item:e,index:m})=>{let h=m===n,g=r.has(j(e,a)),_=s?.(e)??!1;return(0,P.jsxs)(`div`,{id:c(t,m),ref:e=>l(m,e),role:`option`,"aria-selected":g,"aria-disabled":_||void 0,className:te(u.uiSelectOption,_&&u.disabled,g&&u.selected,h&&u.uiPopupOptionActive),onMouseDown:e=>{e.preventDefault()},children:[(0,P.jsx)(`div`,{onClick:e=>{e.stopPropagation()},children:(0,P.jsx)(i,{value:g,disabled:_,onChange:()=>{_||d(e)},onClick:e=>{e.stopPropagation()},onMouseDown:e=>{e.stopPropagation()}})}),(0,P.jsx)(`div`,{className:`overflowHidden`,onClick:()=>{_||f(e)},children:p(e,{selected:g,active:h,disabled:_,query:ee,highlightQuery:o})})]},`${j(e,a)}-${m}`)})}var N,P,F,I;function L(){return(L=e((()=>{N=t(n(),1),s(),a(),r(),p(),y(),b(),C(),f(),T(),v(),S(),le(),ae(),_(),d(),E(),D(),A(),P=o(),F=[],I=(0,N.forwardRef)(({codeKey:e,textKey:t,hideCode:n,items:r,value:i,onChange:a,label:o,description:te,placeholder:s,size:c,query:l,defaultQuery:d,highlightQuery:f,onQuery:p,defaultFilter:_=!0,onOpen:v,onClose:ae,getOptionDisabled:y,disabled:b,error:x,isLoading:S,renderToken:C,renderToolbar:T,renderItem:le},E)=>{let D=(0,N.useRef)(null),[O,k]=(0,N.useState)(!1),A=`search-multi`,I=i??F,L=(0,N.useMemo)(()=>new Set(I.map(t=>j(t,e))),[e,I]),R=(0,N.useMemo)(()=>r.filter(t=>!L.has(j(t,e))),[e,L,r]),z=(0,N.useMemo)(()=>pe([...I,...r],e,t),[e,I,r,t]),{query:B,setQuery:ve,resetQueryOnClose:ye}=oe({query:l,defaultQuery:d,onQuery:p,triggerMode:A}),be=e=>{O&&!e&&ye&&ve(``),k(e)},V=w({options:I,query:B,enabled:_,getSearchText:t=>ge(t,e,z)}),H=w({options:R,query:B,enabled:_,getSearchText:t=>ge(t,e,z)}),U=(0,N.useMemo)(()=>[...V,...H],[H,V]),xe=V.length>0?0:-1,{draftValue:W,setDraftValue:G,prepareOpen:Se}=ue({value:I,open:O,onCommit:a,onOpen:v,onClose:ae,isEqual:(t,n)=>_e(t,n,e)}),K=(0,N.useMemo)(()=>new Set(W.map(t=>j(t,e))),[e,W]),Ce=(0,N.useMemo)(()=>({selectedItems:W,committedSelectedItems:I,selectedKeys:K,open:O}),[I,W,O,K]),q=(0,N.useCallback)(e=>y?.(e,Ce)??!1,[y,Ce]),{activeIndex:J,context:we,floatingStyles:Te,getFloatingProps:Ee,setReference:De,setFloating:Oe,setOptionRef:ke,close:Ae,openList:je,toggleOpen:Me,selectActiveOption:Ne,handleReferenceKeyDown:Pe,handleFloatingKeyDown:Fe,getOptionId:Ie,getActiveOptionId:Le}=h({options:U,selectedIndex:xe,open:O,onOpenChange:be,onSelect:void 0,disabled:b,getOptionDisabled:q,closeOnSelect:!1,allowOpenWithoutOptions:!0,triggerMode:A}),Re=f??B,Y=t=>{let n=j(t,e);G(r=>r.some(t=>j(t,e)===n)?r.filter(t=>j(t,e)!==n):q(t)?r:[...r,t])},ze=e=>{if(D.current=e,typeof E==`function`){E(e);return}E&&(E.current=e)},Be=()=>{G([]),O||a([])},Ve=()=>{G(t=>{let n=[...t],r=new Set(t.map(t=>j(t,e)));for(let t of U){let i=j(t,e);!r.has(i)&&!q(t)&&(r.add(i),n.push(t))}return n})},He=()=>{G([])},Ue=e=>{q(e)||(G([e]),Ae())},We=O?W:I,X=We.length>0,Ge={selectedItems:We,committedSelectedItems:I,availableItems:H,query:B,open:O,clearSelection:Be,selectAll:Ve,deselectAll:He},Ke=C===void 0?fe({codeKey:e,textKey:z}):C,qe=T===void 0?ce:T,Z=le??me({codeKey:e,textKey:z,hideCode:n}),Je=typeof Ke==`function`?Ke(Ge):null,Ye=typeof qe==`function`?qe(Ge):null,Q=V.map((e,t)=>({item:e,index:t})),Xe=H.map((e,t)=>({item:e,index:t+Q.length})),Ze=!S&&!x&&U.length===0,$=ne({mode:A,open:O,currentQuery:B,hasDisplayValue:!1,inputRef:D,setQuery:ve,openList:je,close:Ae,toggleOpen:Me,onBeforeOpen:()=>{O||Se()}});return(0,P.jsx)(m,{label:o,description:te,disabled:b,size:c,className:de.multiSelect,children:({controlId:t,labelId:n,describedBy:i})=>{let a=`${t}-listbox`;return(0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)(ie,{ref:ze,rootRef:De,id:t,type:`text`,role:`combobox`,autoComplete:`off`,disabled:b,value:B,placeholder:X?void 0:`${s??o??`Выберите значения`} <${r.length}>`,"aria-labelledby":n,"aria-describedby":i,"aria-haspopup":`listbox`,"aria-expanded":O,"aria-controls":O?a:void 0,"aria-autocomplete":`list`,"aria-activedescendant":O?Le(a):void 0,rootClassName:`flex alignItemsCenter`,endAdornment:(0,P.jsx)(se,{open:O,disabled:b,onToggleMouseDown:$.handleToggleMouseDown,onToggleClick:$.handleToggleClick,children:(0,P.jsx)(`button`,{type:`button`,disabled:!X,className:u.uiClearButton,"data-ui":`multi-select-clear-button`,"data-action":`clear-multi-select`,onClick:Be,"aria-label":`Очистить все`,children:(0,P.jsx)(ee,{})})}),overlay:Je,onChange:e=>{$.handleTriggerInputChange(e.target.value)},onClick:$.handleTriggerClick,onFocus:e=>{$.handleTriggerFocus(e.currentTarget)},onKeyDown:e=>{Pe(e),!e.defaultPrevented&&$.handleTriggerKeyDown({event:e,onActivateWhenOpen:()=>{if(J>=0){let e=U[J];if(e){Y(e);return}}Ne()},enableClosedArrowDownOpen:!0,suppressClosedArrowUp:!0})}}),(0,P.jsx)(g,{open:O,context:we,floatingStyles:Te,listId:a,labelId:n,descriptionId:i,activeOptionId:O?Le(a):void 0,setFloating:Oe,getFloatingProps:Ee,onKeyDown:Fe,initialFocus:-1,returnFocus:!1,tabIndex:-1,className:u.uiPopupOptions,header:Ye,children:(0,P.jsx)(he,{isNoData:Ze,isLoading:S,error:x,children:(0,P.jsxs)(`div`,{className:`scrollable h100`,children:[(0,P.jsx)(M,{entries:Q,listId:a,activeIndex:J,selectedKeys:K,codeKey:e,query:B,highlightQuery:Re,getOptionDisabled:q,getOptionId:Ie,setOptionRef:ke,toggleOption:Y,selectOnlyOption:Ue,renderItem:Z}),Q.length>0&&R.length>0&&(0,P.jsx)(re,{className:`marginBlockSm`}),(0,P.jsx)(M,{entries:Xe,listId:a,activeIndex:J,selectedKeys:K,codeKey:e,query:B,highlightQuery:Re,getOptionDisabled:q,getOptionId:Ie,setOptionRef:ke,toggleOption:Y,selectOnlyOption:Ue,renderItem:Z})]})})})]})}})}),I.displayName=`MultiSelect`,I.__docgenInfo={description:`Поле множественного выбора с внутренним черновиком значений и подтверждением выбора при закрытии списка.
2
- Подходит как для самостоятельного использования, так и как базовый слой для OData-оберток.`,methods:[],displayName:`MultiSelect`,props:{renderToken:{required:!1,tsType:{name:`union`,raw:`((context: TContext) => React.ReactNode) | null | false`,elements:[{name:`unknown`},{name:`null`},{name:`literal`,value:`false`}]},description:``},renderToolbar:{required:!1,tsType:{name:`union`,raw:`((context: TContext) => React.ReactNode) | null | false`,elements:[{name:`unknown`},{name:`null`},{name:`literal`,value:`false`}]},description:``},renderItem:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(item: CollectionItem, state: MultiSelectItemState) => React.ReactNode`,signature:{arguments:[{type:{name:`CollectionItem`},name:`item`},{type:{name:`MultiSelectItemState`},name:`state`}],return:{name:`ReactReactNode`,raw:`React.ReactNode`}}},description:``},label:{required:!1,tsType:{name:`ReactNode`},description:``},description:{required:!1,tsType:{name:`string`},description:``},placeholder:{required:!1,tsType:{name:`string`},description:``},disabled:{required:!1,tsType:{name:`boolean`},description:``},size:{required:!1,tsType:{name:`union`,raw:`"xs" | "sm" | "md" | "lg" | "xl"`,elements:[{name:`literal`,value:`"xs"`},{name:`literal`,value:`"sm"`},{name:`literal`,value:`"md"`},{name:`literal`,value:`"lg"`},{name:`literal`,value:`"xl"`}]},description:``},value:{required:!0,tsType:{name:`V`},description:"Если начальное состояние может быть `null | undefined`\nзначит `onChange` тоже должен ументь сбрасывать.\nПоэтому такой контрол явно должен передавать `UiBaseProps<AnyType | undefined>`"},onChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(value: T) => void`,signature:{arguments:[{type:{name:`C`},name:`value`}],return:{name:`void`}}},description:``},codeKey:{required:!0,tsType:{name:`string`},description:``},textKey:{required:!1,tsType:{name:`string`},description:``},hideCode:{required:!1,tsType:{name:`boolean`},description:``},query:{required:!1,tsType:{name:`string`},description:``},defaultQuery:{required:!1,tsType:{name:`string`},description:``},highlightQuery:{required:!1,tsType:{name:`string`},description:``},onQuery:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(value: string) => void`,signature:{arguments:[{type:{name:`string`},name:`value`}],return:{name:`void`}}},description:``},defaultFilter:{required:!1,tsType:{name:`boolean`},description:``,defaultValue:{value:`true`,computed:!1}},items:{required:!0,tsType:{name:`Array`,elements:[{name:`TOption`}],raw:`TOption[]`},description:``},getOptionDisabled:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(item: TOption, context: MultiSelectOptionDisableContext) => boolean`,signature:{arguments:[{type:{name:`TOption`},name:`item`},{type:{name:`MultiSelectOptionDisableContext`},name:`context`}],return:{name:`boolean`}}},description:``},onOpen:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:``},onClose:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(value: TOption[]) => void`,signature:{arguments:[{type:{name:`Array`,elements:[{name:`TOption`}],raw:`TOption[]`},name:`value`}],return:{name:`void`}}},description:``},error:{required:!1,tsType:{name:`string`},description:``},isLoading:{required:!1,tsType:{name:`boolean`},description:``}}}})))()}export{L as n,I as t};
@@ -1,137 +0,0 @@
1
- import{n as e,r as t}from"./rolldown-runtime-C0FnF6B9.js";import{t as n}from"./react-C21x__mS.js";import{n as r}from"./iframe-CyRHAH4o.js";import{r as i,s as a}from"./odata-BeK1NpdX.js";import{n as o,r as s,t as c}from"./useODataSelectBase-Cn7uL1Y6.js";import{n as l,t as u}from"./MultiSelect-CoqGVsBf.js";import{a as d,i as f,l as p,n as m,o as h,r as g,s as _,t as v}from"./odataStoryFixtures-D7UlbX90.js";function y({odata:e,segment:t,model:n,value:r,dependencies:i,onChange:a}){let c=s({odata:e,segment:t,model:n,value:r,dependencies:i}),l=e=>{a(o(e,c.selectionKey))};return{...c,handleChange:l}}function b(){return(b=e((()=>{c()})))()}var x,S;function C(){return(C=e((()=>{n(),a(),b(),l(),x=r(),S=({odata:e,segment:t,model:n,label:r,description:a,disabled:o,value:s,dependencies:c,onChange:l,size:d})=>{let f=y({odata:e,segment:t,model:i(n),value:s,dependencies:c,onChange:l});return(0,x.jsx)(u,{label:r,description:a,size:d,codeKey:f.codeKey,textKey:f.textKey,hideCode:t.hideCode??e.hideCode,items:f.filteredItems,value:f.selectedItems,onChange:f.handleChange,onQuery:f.setQuery,query:f.query,defaultFilter:!1,highlightQuery:f.debouncedQuery,disabled:o||f.isLoading,placeholder:f.placeholder,error:f.isError?`Ошибка загрузки`:void 0})},S.__docgenInfo={description:``,methods:[],displayName:`ODataMultiSelect`}})))()}var w=t({BasicDivision:()=>j,CollectionError:()=>R,HideCode:()=>M,LinkedFilters:()=>F,LoadingState:()=>I,MetadataError:()=>L,SelectTextValue:()=>N,StaticDependency:()=>P,__namedExportsOrder:()=>z,default:()=>A});function T(e){let[,t]=k();return(0,O.jsxs)(`div`,{style:{display:`grid`,gap:12,maxWidth:520},children:[(0,O.jsx)(S,{...e,onChange:n=>{e.onChange(n),t({value:n})}}),(0,O.jsxs)(`div`,{style:{fontSize:`var(--font-size-sm)`,color:`var(--content-1)`},children:[`Текущее значение: `,e.value.length?e.value.join(`, `):`пусто`]})]})}function E(){let[e,t]=(0,D.useState)([_.region]),[n,r]=(0,D.useState)([_.branch,_.branchAlt]),[i,a]=(0,D.useState)([_.team]),[o,s]=(0,D.useState)([_.owner,_.ownerAlt]),c=e.length?{REGION:e}:void 0,l=e.length&&n.length?{REGION:e,BRANCH:n}:c,u=e.length&&n.length&&i.length?{REGION:e,BRANCH:n,TEAM:i}:l;return(0,O.jsxs)(`div`,{style:{display:`grid`,gap:16,maxWidth:720},children:[(0,O.jsx)(S,{label:`Регион`,description:`Корневой фильтр для цепочки. После смены значения downstream-фильтры сбрасываются.`,odata:m,model:{...v,codeKey:`REGION`},segment:{placeholder:`Регион`},value:e,onChange:e=>{t(e),r([]),a([]),s([])}}),(0,O.jsx)(S,{label:`Подразделение`,description:`Выбор нескольких подразделений внутри выбранных регионов.`,odata:m,model:{...v,codeKey:`BRANCH`},segment:{placeholder:`Подразделение`},dependencies:c,value:n,onChange:e=>{r(e),a([]),s([])}}),(0,O.jsx)(S,{label:`Команда`,description:`Третий уровень зависит от текущего набора подразделений.`,odata:m,model:{...v,codeKey:`TEAM`},segment:{placeholder:`Команда`},dependencies:l,value:i,onChange:e=>{a(e),s([])}}),(0,O.jsx)(S,{label:`Ответственный`,description:`Leaf-уровень для выбранных команд.`,odata:m,model:{...v,codeKey:`OWNER`},segment:{placeholder:`Ответственный`},dependencies:u,value:o,onChange:s}),(0,O.jsxs)(`div`,{style:{display:`grid`,gap:4,fontSize:`var(--font-size-sm)`,color:`var(--content-1)`},children:[(0,O.jsxs)(`div`,{children:[`Регион: `,e.length?e.join(`, `):`пусто`]}),(0,O.jsxs)(`div`,{children:[`Подразделение: `,n.length?n.join(`, `):`пусто`]}),(0,O.jsxs)(`div`,{children:[`Команда: `,i.length?i.join(`, `):`пусто`]}),(0,O.jsxs)(`div`,{children:[`Ответственный: `,o.length?o.join(`, `):`пусто`]})]})]})}var D,O,k,A,j,M,N,P,F,I,L,R,z;function B(){return(B=e((()=>{D=n(),f(),C(),O=r(),{useArgs:k}=__STORYBOOK_MODULE_PREVIEW_API__,A={title:`Shared/UI/ODataMultiSelect`,component:S,decorators:[p],beforeEach:d,parameters:{atomicCanvas:!0,layout:`padded`,odataMockMode:`success`},args:{label:`Регион`,description:`Пример OData MultiSelect на основе конфигурации ui control.`,odata:m,model:v,segment:g,value:[],onChange:()=>{}},argTypes:{label:{description:`Заголовок поля.`,control:`text`},description:{description:`Описание под полем.`,control:`text`},odata:{description:`Конфигурация OData-источника.`,control:!1},model:{description:`Модель OData-коллекции и codeKey.`,control:!1},segment:{description:`Конфигурация отображения сегмента.`,control:!1},dependencies:{description:`Выбранные значения upstream-сегментов.`,control:!1},value:{description:`Контролируемый набор выбранных кодов или текстов.`,control:!1},onChange:{description:`Вызывается с новым набором выбранных значений.`,control:!1},disabled:{description:`Блокирует взаимодействие с полем.`,control:`boolean`},size:{description:`Размер поля и подписей.`,control:`select`,options:[`xs`,`sm`,`md`,`lg`,`xl`]}}},j={name:`Базовый регион`,render:function(e){return(0,O.jsx)(T,{...e})},args:{label:`Регион`,description:`Базовая настройка из multiSelectConfig: выбор кодов REGION с текстовым отображением.`,model:{...v,codeKey:`REGION`},segment:{placeholder:`Регион`},value:[_.region]}},M={name:`Скрытый код`,render:function(e){return(0,O.jsx)(T,{...e})},args:{label:`Подразделение`,description:`Сценарий segment.hideCode: в списке и токене показывается только текст без кода.`,model:{...v,codeKey:`BRANCH`},segment:{placeholder:`Подразделение`,hideCode:!0},value:[_.branch,_.branchAlt]}},N={name:`Выбор текста вместо кода`,render:function(e){return(0,O.jsx)(T,{...e})},args:{label:`Регион по тексту`,description:`Сценарий segment.selectText: наружу возвращаются текстовые значения, а не коды.`,model:{...v,codeKey:`REGION`},segment:{placeholder:`Регион`,selectText:!0},value:[_.regionText]}},P={name:`Зависимость от региона`,render:function(e){return(0,O.jsx)(T,{...e})},args:{label:`Подразделение c зависимостью`,description:`Фильтрация подразделений по уже выбранному региону через props.dependencies.`,model:{...v,codeKey:`BRANCH`},segment:{placeholder:`Подразделение`},dependencies:{REGION:[_.region]},value:[_.branch]}},F={name:`Связанная цепочка фильтров`,render:()=>(0,O.jsx)(E,{})},I={name:`Состояние загрузки`,parameters:{odataMockMode:`loading`},render:function(e){return(0,O.jsx)(T,{...e})},args:{odata:h.loading,label:`Команда`,description:`Mock с задержкой ответа, чтобы проверить loading-state и skeleton.`,model:{...v,codeKey:`TEAM`},segment:{placeholder:`Команда`}}},L={name:`Ошибка metadata`,parameters:{odataMockMode:`metadataError`},render:function(e){return(0,O.jsx)(T,{...e})},args:{odata:h.metadataError,label:`Регион`,description:`Сервис возвращает ошибку metadata. Полезно для проверки поведения хука useODataEntity.`,model:{...v,codeKey:`REGION`},segment:{placeholder:`Регион`}}},R={name:`Деградация при ошибке коллекции`,parameters:{odataMockMode:`collectionError`},render:function(e){return(0,O.jsx)(T,{...e})},args:{odata:h.collectionError,label:`Ответственный`,description:`Transport возвращает 500, а текущий API-контракт безопасно показывает пустой список.`,model:{...v,codeKey:`OWNER`},segment:{placeholder:`Ответственный`}}},j.parameters={...j.parameters,docs:{...j.parameters?.docs,source:{originalSource:`{
2
- name: "Базовый регион",
3
- render: function Render(args) {
4
- return <ODataMultiSelectStoryCanvas {...args} />;
5
- },
6
- args: {
7
- label: "Регион",
8
- description: "Базовая настройка из multiSelectConfig: выбор кодов REGION с текстовым отображением.",
9
- model: {
10
- ...baseModel,
11
- codeKey: "REGION"
12
- },
13
- segment: {
14
- placeholder: "Регион"
15
- },
16
- value: [storyValues.region]
17
- }
18
- }`,...j.parameters?.docs?.source}}},M.parameters={...M.parameters,docs:{...M.parameters?.docs,source:{originalSource:`{
19
- name: "Скрытый код",
20
- render: function Render(args) {
21
- return <ODataMultiSelectStoryCanvas {...args} />;
22
- },
23
- args: {
24
- label: "Подразделение",
25
- description: "Сценарий segment.hideCode: в списке и токене показывается только текст без кода.",
26
- model: {
27
- ...baseModel,
28
- codeKey: "BRANCH"
29
- },
30
- segment: {
31
- placeholder: "Подразделение",
32
- hideCode: true
33
- },
34
- value: [storyValues.branch, storyValues.branchAlt]
35
- }
36
- }`,...M.parameters?.docs?.source}}},N.parameters={...N.parameters,docs:{...N.parameters?.docs,source:{originalSource:`{
37
- name: "Выбор текста вместо кода",
38
- render: function Render(args) {
39
- return <ODataMultiSelectStoryCanvas {...args} />;
40
- },
41
- args: {
42
- label: "Регион по тексту",
43
- description: "Сценарий segment.selectText: наружу возвращаются текстовые значения, а не коды.",
44
- model: {
45
- ...baseModel,
46
- codeKey: "REGION"
47
- },
48
- segment: {
49
- placeholder: "Регион",
50
- selectText: true
51
- },
52
- value: [storyValues.regionText]
53
- }
54
- }`,...N.parameters?.docs?.source}}},P.parameters={...P.parameters,docs:{...P.parameters?.docs,source:{originalSource:`{
55
- name: "Зависимость от региона",
56
- render: function Render(args) {
57
- return <ODataMultiSelectStoryCanvas {...args} />;
58
- },
59
- args: {
60
- label: "Подразделение c зависимостью",
61
- description: "Фильтрация подразделений по уже выбранному региону через props.dependencies.",
62
- model: {
63
- ...baseModel,
64
- codeKey: "BRANCH"
65
- },
66
- segment: {
67
- placeholder: "Подразделение"
68
- },
69
- dependencies: {
70
- REGION: [storyValues.region]
71
- },
72
- value: [storyValues.branch]
73
- }
74
- }`,...P.parameters?.docs?.source}}},F.parameters={...F.parameters,docs:{...F.parameters?.docs,source:{originalSource:`{
75
- name: "Связанная цепочка фильтров",
76
- render: () => <LinkedFiltersDemo />
77
- }`,...F.parameters?.docs?.source}}},I.parameters={...I.parameters,docs:{...I.parameters?.docs,source:{originalSource:`{
78
- name: "Состояние загрузки",
79
- parameters: {
80
- odataMockMode: "loading"
81
- },
82
- render: function Render(args) {
83
- return <ODataMultiSelectStoryCanvas {...args} />;
84
- },
85
- args: {
86
- odata: odataStoryOData.loading,
87
- label: "Команда",
88
- description: "Mock с задержкой ответа, чтобы проверить loading-state и skeleton.",
89
- model: {
90
- ...baseModel,
91
- codeKey: "TEAM"
92
- },
93
- segment: {
94
- placeholder: "Команда"
95
- }
96
- }
97
- }`,...I.parameters?.docs?.source}}},L.parameters={...L.parameters,docs:{...L.parameters?.docs,source:{originalSource:`{
98
- name: "Ошибка metadata",
99
- parameters: {
100
- odataMockMode: "metadataError"
101
- },
102
- render: function Render(args) {
103
- return <ODataMultiSelectStoryCanvas {...args} />;
104
- },
105
- args: {
106
- odata: odataStoryOData.metadataError,
107
- label: "Регион",
108
- description: "Сервис возвращает ошибку metadata. Полезно для проверки поведения хука useODataEntity.",
109
- model: {
110
- ...baseModel,
111
- codeKey: "REGION"
112
- },
113
- segment: {
114
- placeholder: "Регион"
115
- }
116
- }
117
- }`,...L.parameters?.docs?.source}}},R.parameters={...R.parameters,docs:{...R.parameters?.docs,source:{originalSource:`{
118
- name: "Деградация при ошибке коллекции",
119
- parameters: {
120
- odataMockMode: "collectionError"
121
- },
122
- render: function Render(args) {
123
- return <ODataMultiSelectStoryCanvas {...args} />;
124
- },
125
- args: {
126
- odata: odataStoryOData.collectionError,
127
- label: "Ответственный",
128
- description: "Transport возвращает 500, а текущий API-контракт безопасно показывает пустой список.",
129
- model: {
130
- ...baseModel,
131
- codeKey: "OWNER"
132
- },
133
- segment: {
134
- placeholder: "Ответственный"
135
- }
136
- }
137
- }`,...R.parameters?.docs?.source}}},z=[`BasicDivision`,`HideCode`,`SelectTextValue`,`StaticDependency`,`LinkedFilters`,`LoadingState`,`MetadataError`,`CollectionError`]})))()}export{I as a,N as c,F as i,P as l,R as n,L as o,M as r,w as s,j as t,B as u};
@@ -1,207 +0,0 @@
1
- import{n as e,r as t}from"./rolldown-runtime-C0FnF6B9.js";import{t as n}from"./react-C21x__mS.js";import{n as r}from"./iframe-CyRHAH4o.js";import{r as i,s as a}from"./odata-BeK1NpdX.js";import{n as o,t as s}from"./SelectOptionContent-BzRajXPC.js";import{c,s as l}from"./Input-B9yXA1bX.js";import{n as u,t as d}from"./Select-RbjV8dmi.js";import{r as f,t as p}from"./useODataSelectBase-Cn7uL1Y6.js";import{a as m,i as h,l as g,n as _,o as v,r as y,s as b,t as x}from"./odataStoryFixtures-D7UlbX90.js";function S({odata:e,segment:t,model:n,value:r,dependencies:i,onChange:a}){let o=f({odata:e,segment:t,model:n,value:r?[r]:[],dependencies:i}),s=o.selectedItems[0],c=(0,C.useMemo)(()=>s?[s,...o.filteredItems]:o.filteredItems,[o.filteredItems,s]),l=e=>{a(e?.[o.selectionKey])};return{...o,selectedItem:s,options:c,handleChange:l}}var C;function w(){return(w=e((()=>{C=n(),p()})))()}function T(e,t,n){return e?t||Object.keys(e).find(e=>e!==n)||n:t||n}var E,D;function O(){return(O=e((()=>{n(),a(),c(),w(),u(),o(),E=r(),D=({odata:e,segment:t,model:n,size:r,label:a,description:o,disabled:c,value:u,dependencies:f,onChange:p,clearable:m})=>{let h=S({odata:e,segment:t,model:i(n),value:u,dependencies:f,onChange:p});if(h.isLoading)return(0,E.jsx)(l,{size:r,label:a,description:o});let g=t.hideCode??e.hideCode,_=T(h.selectedItem??h.options[0],h.textKey,h.codeKey);return(0,E.jsx)(d,{size:r,label:a,description:o,options:h.options,value:h.selectedItem,onChange:h.handleChange,getOptionKey:e=>e[h.codeKey],getOptionLabel:e=>e[_],getOptionCode:g?void 0:e=>e[h.codeKey],getOptionAriaLabel:e=>g||e[_]===e[h.codeKey]?String(e[_]):`${e[_]} ${e[h.codeKey]}`,renderValue:e=>(0,E.jsx)(s,{label:e[_],code:g?void 0:e[h.codeKey]}),renderOption:e=>(0,E.jsx)(s,{label:e[_],code:g?void 0:e[h.codeKey],highlight:h.debouncedQuery}),searchable:!0,query:h.query,onQuery:h.setQuery,defaultFilter:!1,disabled:c||h.isLoading,placeholder:h.placeholder,loadingState:`Загрузка...`,errorState:h.isError?`Ошибка загрузки`:void 0,emptyState:!h.isLoading&&!h.isError?`Нет данных`:void 0,clearable:m})},D.__docgenInfo={description:``,methods:[],displayName:`ODataSelect`,props:{label:{required:!1,tsType:{name:`ReactNode`},description:``},description:{required:!1,tsType:{name:`string`},description:``},placeholder:{required:!1,tsType:{name:`string`},description:``},disabled:{required:!1,tsType:{name:`boolean`},description:``},size:{required:!1,tsType:{name:`union`,raw:`"xs" | "sm" | "md" | "lg" | "xl"`,elements:[{name:`literal`,value:`"xs"`},{name:`literal`,value:`"sm"`},{name:`literal`,value:`"md"`},{name:`literal`,value:`"lg"`},{name:`literal`,value:`"xl"`}]},description:``},value:{required:!0,tsType:{name:`V`},description:"Если начальное состояние может быть `null | undefined`\nзначит `onChange` тоже должен ументь сбрасывать.\nПоэтому такой контрол явно должен передавать `UiBaseProps<AnyType | undefined>`"},onChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(value: T) => void`,signature:{arguments:[{type:{name:`C`},name:`value`}],return:{name:`void`}}},description:``},clearable:{required:!1,tsType:{name:`boolean`},description:``}}}})))()}var k=t({BasicDivision:()=>I,CollectionError:()=>U,HideCode:()=>L,LinkedFilters:()=>B,LinkedFiltersDemo:()=>j,LoadingState:()=>V,MetadataError:()=>H,SelectTextValue:()=>R,StaticDependency:()=>z,__namedExportsOrder:()=>W,default:()=>F});function A(e){let[,t]=P();return(0,N.jsxs)(`div`,{style:{display:`grid`,gap:12,maxWidth:520},children:[(0,N.jsx)(D,{...e,onChange:n=>{e.onChange(n),t({value:n})}}),(0,N.jsxs)(`div`,{style:{fontSize:`var(--font-size-sm)`,color:`var(--content-1)`},children:[`Текущее значение: `,e.value||`пусто`]})]})}function j(){let[e,t]=(0,M.useState)(b.region),[n,r]=(0,M.useState)(b.branch),[i,a]=(0,M.useState)(b.team),[o,s]=(0,M.useState)(b.owner),c=e?{REGION:[e]}:void 0,l=e&&n?{REGION:[e],BRANCH:[n]}:c,u=e&&n&&i?{REGION:[e],BRANCH:[n],TEAM:[i]}:l;return(0,N.jsxs)(`div`,{style:{display:`grid`,gap:16,maxWidth:720},children:[(0,N.jsx)(D,{label:`Регион`,description:`Первый фильтр в цепочке. Меняет доступный набор подразделений.`,odata:_,model:{...x,codeKey:`REGION`},segment:{placeholder:`Регион`},value:e,onChange:e=>{t(e),r(void 0),a(void 0),s(void 0)}}),(0,N.jsx)(D,{label:`Подразделение`,description:`Второй фильтр зависит от выбранного региона.`,odata:_,model:{...x,codeKey:`BRANCH`},segment:{placeholder:`Подразделение`},dependencies:c,value:n,onChange:e=>{r(e),a(void 0),s(void 0)}}),(0,N.jsx)(D,{label:`Команда`,description:`Третий фильтр зависит от сочетания региона и подразделения.`,odata:_,model:{...x,codeKey:`TEAM`},segment:{placeholder:`Команда`},dependencies:l,value:i,onChange:e=>{a(e),s(void 0)}}),(0,N.jsx)(D,{label:`Ответственный`,description:`Последний фильтр показывает leaf-узлы для выбранного пути.`,odata:_,model:{...x,codeKey:`OWNER`},segment:{placeholder:`Ответственный`},dependencies:u,value:o,onChange:s}),(0,N.jsxs)(`div`,{style:{display:`grid`,gap:4,fontSize:`var(--font-size-sm)`,color:`var(--content-1)`},children:[(0,N.jsxs)(`div`,{children:[`Регион: `,e||`пусто`]}),(0,N.jsxs)(`div`,{children:[`Подразделение: `,n||`пусто`]}),(0,N.jsxs)(`div`,{children:[`Команда: `,i||`пусто`]}),(0,N.jsxs)(`div`,{children:[`Ответственный: `,o||`пусто`]})]})]})}var M,N,P,F,I,L,R,z,B,V,H,U,W;function G(){return(G=e((()=>{M=n(),O(),h(),N=r(),{useArgs:P}=__STORYBOOK_MODULE_PREVIEW_API__,F={title:`Shared/UI/ODataSelect`,component:D,decorators:[g],beforeEach:m,parameters:{atomicCanvas:!0,layout:`padded`,odataMockMode:`success`},args:{label:`Регион`,description:`Пример OData Select на основе конфигурации ui control.`,odata:_,model:x,segment:y,value:void 0,onChange:()=>{}},argTypes:{label:{description:`Заголовок поля.`,control:`text`},description:{description:`Описание под полем.`,control:`text`},odata:{description:`Конфигурация OData-источника.`,control:!1},model:{description:`Модель OData-коллекции и codeKey.`,control:!1},segment:{description:`Конфигурация отображения сегмента.`,control:!1},dependencies:{description:`Выбранные значения upstream-сегментов.`,control:!1},value:{description:`Контролируемый код или текст выбранной option.`,control:!1},onChange:{description:`Вызывается с новым значением option.`,control:!1},clearable:{description:`Показывает действие очистки выбора.`,control:`boolean`},disabled:{description:`Блокирует взаимодействие с полем.`,control:`boolean`},size:{description:`Размер поля и подписей.`,control:`select`,options:[`xs`,`sm`,`md`,`lg`,`xl`]}}},I={name:`Базовый регион`,render:function(e){return(0,N.jsx)(A,{...e})},args:{label:`Регион`,description:`Базовая настройка single-select для выбора кода REGION.`,model:{...x,codeKey:`REGION`},segment:{placeholder:`Регион`},value:b.region}},L={name:`Скрытый код`,render:function(e){return(0,N.jsx)(A,{...e})},args:{label:`Подразделение`,description:`Код скрыт и в выпадающем списке, и в выбранном значении.`,model:{...x,codeKey:`BRANCH`},segment:{placeholder:`Подразделение`,hideCode:!0},value:b.branch}},R={name:`Выбор текста вместо кода`,render:function(e){return(0,N.jsx)(A,{...e})},args:{label:`Регион по тексту`,description:`Снаружи хранится текстовое значение, а не код.`,model:{...x,codeKey:`REGION`},segment:{placeholder:`Регион`,selectText:!0},value:b.regionText}},z={name:`Зависимость от региона`,render:function(e){return(0,N.jsx)(A,{...e})},args:{label:`Подразделение c зависимостью`,description:`Фильтрация подразделений по уже выбранному региону через props.dependencies.`,model:{...x,codeKey:`BRANCH`},segment:{placeholder:`Подразделение`},dependencies:{REGION:[b.region]},value:b.branch}},B={name:`Связанная цепочка фильтров`,render:()=>(0,N.jsx)(j,{})},V={name:`Состояние загрузки`,parameters:{odataMockMode:`loading`},render:function(e){return(0,N.jsx)(A,{...e})},args:{odata:v.loading,label:`Команда`,description:`Mock с задержкой ответа, чтобы проверить loading-state.`,model:{...x,codeKey:`TEAM`},segment:{placeholder:`Команда`}}},H={name:`Ошибка metadata`,parameters:{odataMockMode:`metadataError`},render:function(e){return(0,N.jsx)(A,{...e})},args:{odata:v.metadataError,label:`Регион`,description:`Сервис возвращает ошибку metadata.`,model:{...x,codeKey:`REGION`},segment:{placeholder:`Регион`}}},U={name:`Деградация при ошибке коллекции`,parameters:{odataMockMode:`collectionError`},render:function(e){return(0,N.jsx)(A,{...e})},args:{odata:v.collectionError,label:`Ответственный`,description:`Transport возвращает 500, а текущий API-контракт безопасно показывает пустой список.`,model:{...x,codeKey:`OWNER`},segment:{placeholder:`Ответственный`}}},j.__docgenInfo={description:``,methods:[],displayName:`LinkedFiltersDemo`},j.parameters={...j.parameters,docs:{...j.parameters?.docs,source:{originalSource:`function LinkedFiltersDemo() {
2
- const [region, setRegion] = useState<string | undefined>(storyValues.region);
3
- const [branch, setBranch] = useState<string | undefined>(storyValues.branch);
4
- const [team, setTeam] = useState<string | undefined>(storyValues.team);
5
- const [owner, setOwner] = useState<string | undefined>(storyValues.owner);
6
- const regionDependencies = region ? {
7
- REGION: [region]
8
- } : undefined;
9
- const teamDependencies = region && branch ? {
10
- REGION: [region],
11
- BRANCH: [branch]
12
- } : regionDependencies;
13
- const ownerDependencies = region && branch && team ? {
14
- REGION: [region],
15
- BRANCH: [branch],
16
- TEAM: [team]
17
- } : teamDependencies;
18
- return <div style={{
19
- display: "grid",
20
- gap: 16,
21
- maxWidth: 720
22
- }}>
23
- <ODataSelect label="Регион" description="Первый фильтр в цепочке. Меняет доступный набор подразделений." odata={baseOData} model={{
24
- ...baseModel,
25
- codeKey: "REGION"
26
- }} segment={{
27
- placeholder: "Регион"
28
- }} value={region} onChange={nextRegion => {
29
- setRegion(nextRegion);
30
- setBranch(undefined);
31
- setTeam(undefined);
32
- setOwner(undefined);
33
- }} />
34
- <ODataSelect label="Подразделение" description="Второй фильтр зависит от выбранного региона." odata={baseOData} model={{
35
- ...baseModel,
36
- codeKey: "BRANCH"
37
- }} segment={{
38
- placeholder: "Подразделение"
39
- }} dependencies={regionDependencies} value={branch} onChange={nextBranch => {
40
- setBranch(nextBranch);
41
- setTeam(undefined);
42
- setOwner(undefined);
43
- }} />
44
- <ODataSelect label="Команда" description="Третий фильтр зависит от сочетания региона и подразделения." odata={baseOData} model={{
45
- ...baseModel,
46
- codeKey: "TEAM"
47
- }} segment={{
48
- placeholder: "Команда"
49
- }} dependencies={teamDependencies} value={team} onChange={nextTeam => {
50
- setTeam(nextTeam);
51
- setOwner(undefined);
52
- }} />
53
- <ODataSelect label="Ответственный" description="Последний фильтр показывает leaf-узлы для выбранного пути." odata={baseOData} model={{
54
- ...baseModel,
55
- codeKey: "OWNER"
56
- }} segment={{
57
- placeholder: "Ответственный"
58
- }} dependencies={ownerDependencies} value={owner} onChange={setOwner} />
59
- <div style={{
60
- display: "grid",
61
- gap: 4,
62
- fontSize: "var(--font-size-sm)",
63
- color: "var(--content-1)"
64
- }}>
65
- <div>Регион: {region || "пусто"}</div>
66
- <div>Подразделение: {branch || "пусто"}</div>
67
- <div>Команда: {team || "пусто"}</div>
68
- <div>Ответственный: {owner || "пусто"}</div>
69
- </div>
70
- </div>;
71
- }`,...j.parameters?.docs?.source}}},I.parameters={...I.parameters,docs:{...I.parameters?.docs,source:{originalSource:`{
72
- name: "Базовый регион",
73
- render: function Render(args) {
74
- return <ODataSelectStoryCanvas {...args} />;
75
- },
76
- args: {
77
- label: "Регион",
78
- description: "Базовая настройка single-select для выбора кода REGION.",
79
- model: {
80
- ...baseModel,
81
- codeKey: "REGION"
82
- },
83
- segment: {
84
- placeholder: "Регион"
85
- },
86
- value: storyValues.region
87
- }
88
- }`,...I.parameters?.docs?.source}}},L.parameters={...L.parameters,docs:{...L.parameters?.docs,source:{originalSource:`{
89
- name: "Скрытый код",
90
- render: function Render(args) {
91
- return <ODataSelectStoryCanvas {...args} />;
92
- },
93
- args: {
94
- label: "Подразделение",
95
- description: "Код скрыт и в выпадающем списке, и в выбранном значении.",
96
- model: {
97
- ...baseModel,
98
- codeKey: "BRANCH"
99
- },
100
- segment: {
101
- placeholder: "Подразделение",
102
- hideCode: true
103
- },
104
- value: storyValues.branch
105
- }
106
- }`,...L.parameters?.docs?.source}}},R.parameters={...R.parameters,docs:{...R.parameters?.docs,source:{originalSource:`{
107
- name: "Выбор текста вместо кода",
108
- render: function Render(args) {
109
- return <ODataSelectStoryCanvas {...args} />;
110
- },
111
- args: {
112
- label: "Регион по тексту",
113
- description: "Снаружи хранится текстовое значение, а не код.",
114
- model: {
115
- ...baseModel,
116
- codeKey: "REGION"
117
- },
118
- segment: {
119
- placeholder: "Регион",
120
- selectText: true
121
- },
122
- value: storyValues.regionText
123
- }
124
- }`,...R.parameters?.docs?.source}}},z.parameters={...z.parameters,docs:{...z.parameters?.docs,source:{originalSource:`{
125
- name: "Зависимость от региона",
126
- render: function Render(args) {
127
- return <ODataSelectStoryCanvas {...args} />;
128
- },
129
- args: {
130
- label: "Подразделение c зависимостью",
131
- description: "Фильтрация подразделений по уже выбранному региону через props.dependencies.",
132
- model: {
133
- ...baseModel,
134
- codeKey: "BRANCH"
135
- },
136
- segment: {
137
- placeholder: "Подразделение"
138
- },
139
- dependencies: {
140
- REGION: [storyValues.region]
141
- },
142
- value: storyValues.branch
143
- }
144
- }`,...z.parameters?.docs?.source}}},B.parameters={...B.parameters,docs:{...B.parameters?.docs,source:{originalSource:`{
145
- name: "Связанная цепочка фильтров",
146
- render: () => <LinkedFiltersDemo />
147
- }`,...B.parameters?.docs?.source}}},V.parameters={...V.parameters,docs:{...V.parameters?.docs,source:{originalSource:`{
148
- name: "Состояние загрузки",
149
- parameters: {
150
- odataMockMode: "loading"
151
- },
152
- render: function Render(args) {
153
- return <ODataSelectStoryCanvas {...args} />;
154
- },
155
- args: {
156
- odata: odataStoryOData.loading,
157
- label: "Команда",
158
- description: "Mock с задержкой ответа, чтобы проверить loading-state.",
159
- model: {
160
- ...baseModel,
161
- codeKey: "TEAM"
162
- },
163
- segment: {
164
- placeholder: "Команда"
165
- }
166
- }
167
- }`,...V.parameters?.docs?.source}}},H.parameters={...H.parameters,docs:{...H.parameters?.docs,source:{originalSource:`{
168
- name: "Ошибка metadata",
169
- parameters: {
170
- odataMockMode: "metadataError"
171
- },
172
- render: function Render(args) {
173
- return <ODataSelectStoryCanvas {...args} />;
174
- },
175
- args: {
176
- odata: odataStoryOData.metadataError,
177
- label: "Регион",
178
- description: "Сервис возвращает ошибку metadata.",
179
- model: {
180
- ...baseModel,
181
- codeKey: "REGION"
182
- },
183
- segment: {
184
- placeholder: "Регион"
185
- }
186
- }
187
- }`,...H.parameters?.docs?.source}}},U.parameters={...U.parameters,docs:{...U.parameters?.docs,source:{originalSource:`{
188
- name: "Деградация при ошибке коллекции",
189
- parameters: {
190
- odataMockMode: "collectionError"
191
- },
192
- render: function Render(args) {
193
- return <ODataSelectStoryCanvas {...args} />;
194
- },
195
- args: {
196
- odata: odataStoryOData.collectionError,
197
- label: "Ответственный",
198
- description: "Transport возвращает 500, а текущий API-контракт безопасно показывает пустой список.",
199
- model: {
200
- ...baseModel,
201
- codeKey: "OWNER"
202
- },
203
- segment: {
204
- placeholder: "Ответственный"
205
- }
206
- }
207
- }`,...U.parameters?.docs?.source}}},W=[`LinkedFiltersDemo`,`BasicDivision`,`HideCode`,`SelectTextValue`,`StaticDependency`,`LinkedFilters`,`LoadingState`,`MetadataError`,`CollectionError`]})))()}export{V as a,R as c,B as i,z as l,U as n,H as o,L as r,k as s,I as t,G as u};
@@ -1,12 +0,0 @@
1
- import{n as e}from"./rolldown-runtime-C0FnF6B9.js";import{t}from"./react-C21x__mS.js";import{n,t as r}from"./check-BI1SJVLE.js";import{n as i,t as a}from"./x-CI99aKu3.js";import{n as o}from"./iframe-CyRHAH4o.js";import{a as s,i as c}from"./utils-DUM89eIj.js";import{n as l,t as u}from"./ui.module-CiLQZm_L.js";import{c as d,g as f,h as ee,i as te,l as ne,n as re,r as p,s as ie,t as m,u as h}from"./usePickerTriggerController-B-FKRrNu.js";import{i as g,n as ae,r as oe,t as _}from"./usePickerQuery-Dso-ufUa.js";import{n as v,t as se}from"./PickerTriggerActions-C2ml1dHu.js";import{n as y,t as b}from"./usePickerDefaultFilter-Be420WNF.js";function x(e){if(typeof e==`string`||typeof e==`number`)return String(e);if(Array.isArray(e)){let t=e.map(x).filter(e=>!!e);return t.length?t.join(` `):void 0}}function ce({option:e,getOptionLabel:t,getOptionCode:n,getOptionGroup:r}){return[x(t(e)),x(n?.(e)),x(r?.(e)?.label)].filter(e=>!!e).join(` `).toLowerCase()}function S(){return(S=e((()=>{})))()}function le(e,t){let n=[];return e.forEach((e,r)=>{let i=t(e),a=n.at(-1),o=a?.group?.key===i?.key;if(a&&o){a.items.push({option:e,index:r});return}n.push({group:i,items:[{option:e,index:r}]})}),n}var C,w,T;function E(){return(E=e((()=>{C=`aEEqH1`,w=`_4HQKa7`,T={inputWithOverlay:C,valueOverlay:w}})))()}function D(e){let{label:t,description:n,disabled:i,placeholder:o,size:c,options:u,value:d,onChange:f,getOptionKey:p,getOptionLabel:m,getOptionCode:h,getOptionDisabled:g,getOptionAriaLabel:_,getOptionGroup:v,getOptionClassName:b,renderOption:S,renderValue:C,className:w,buttonClassName:E,optionsClassName:D,optionsMaxWidth:A,optionsContentClassName:ue,searchable:j=!1,defaultFilter:M=!0,query:de,defaultQuery:fe,onQuery:pe,renderPopupHeader:me,emptyState:he,loadingState:ge,errorState:_e,placement:ve=`bottom-start`,clearable:N=!1}=e,P=f,F=(0,O.useRef)(null),[I,ye]=(0,O.useState)(!1),L=j?`search-single`:`display`,R=d===void 0?void 0:p(d),z=R===void 0?void 0:u.find(e=>p(e)===R)??d,{query:B,setQuery:V,resetQueryOnClose:be}=ae({query:de,defaultQuery:fe,onQuery:pe,triggerMode:L}),xe=e=>{I&&!e&&be&&V(``),ye(e)},Se=(0,O.useCallback)(e=>ce({option:e,getOptionLabel:m,getOptionCode:h,getOptionGroup:v}),[h,v,m]),H=y({options:u,query:B,enabled:j&&M,getSearchText:Se}),U=(0,O.useMemo)(()=>v?le(H,v):void 0,[v,H]),W=R===void 0?-1:H.findIndex(e=>p(e)===R),{activeIndex:Ce,context:we,floatingStyles:Te,getFloatingProps:Ee,setReference:De,setFloating:Oe,setOptionRef:ke,close:G,openList:Ae,toggleOpen:je,selectOption:Me,selectActiveOption:Ne,handleReferenceKeyDown:Pe,handleFloatingKeyDown:Fe,getOptionId:Ie,getActiveOptionId:K}=te({options:H,selectedIndex:W,open:I,onOpenChange:xe,getOptionDisabled:g,onSelect:P,disabled:i,placement:ve,triggerMode:L}),q=H.length>0,J=z===void 0?void 0:m(z),Y=z===void 0?void 0:C?C(z):J,Le=x(J),Re=z===void 0?void 0:x(h?.(z)),ze=x(Y)??Le??Re??(R===void 0?``:String(R)),X=j&&(I||B.length>0),Be=X?B:z===void 0?``:ze,Z=z!==void 0&&Y!==void 0&&x(Y)===void 0&&!X,Q=re({mode:L,open:I,currentQuery:B,hasDisplayValue:z!==void 0,inputRef:F,setQuery:V,openList:Ae,close:G,toggleOpen:je}),Ve=e=>{F.current=e},He=()=>{N&&P(void 0),V(``),G()},$=(e,t,n)=>{let i=p(t),a=R!==void 0&&i===R,o=n===Ce,c=g?.(t)??!1,u={active:o,selected:a,disabled:c};return(0,k.jsx)(`div`,{id:Ie(e,n),ref:e=>ke(n,e),role:`option`,"aria-selected":a,"aria-disabled":c||void 0,"aria-label":_?.(t),className:s(l.uiPopupOption,c&&l.disabled,o&&l.uiPopupOptionActive,a&&l.selected,b?.(t,u)),onClick:()=>Me(t),children:S?S(t,u):(0,k.jsxs)(k.Fragment,{children:[a?(0,k.jsx)(r,{className:l.uiPopupOptionIcon}):(0,k.jsx)(`span`,{className:l.uiPopupOptionIcon}),(0,k.jsx)(`div`,{className:l.uiOptionText,children:m(t)}),h&&(0,k.jsx)(`div`,{className:l.uiOptionCode,children:h(t)})]})},i)};return(0,k.jsx)(ee,{label:t,description:n,disabled:i,size:c,className:w,children:({controlId:e,labelId:n,describedBy:r})=>{let c=`${e}-listbox`;return(0,k.jsxs)(k.Fragment,{children:[(0,k.jsx)(ie,{ref:Ve,rootRef:De,id:e,type:`text`,disabled:i,readOnly:!j,autoComplete:`off`,role:`combobox`,value:Be,placeholder:z===void 0||X?`${o??t??``} <${u.length}>`:void 0,"aria-labelledby":n,"aria-describedby":r,"aria-haspopup":`listbox`,"aria-expanded":I,"aria-controls":I?c:void 0,"aria-autocomplete":j?`list`:`none`,"aria-activedescendant":I?K(c):void 0,inputClassName:s(Z&&T.inputWithOverlay,E,`textOverflow`),overlay:Z?(0,k.jsx)(`div`,{className:T.valueOverlay,children:Y}):void 0,endAdornment:(0,k.jsx)(se,{open:I,disabled:i,onToggleMouseDown:Q.handleToggleMouseDown,onToggleClick:Q.handleToggleClick,children:N&&z!==void 0&&!i?(0,k.jsx)(`button`,{type:`button`,className:l.uiClearButton,"data-ui":`select-clear-button`,"data-action":`clear-select`,onMouseDown:e=>{e.preventDefault(),e.stopPropagation()},onClick:e=>{e.preventDefault(),e.stopPropagation(),He()},"aria-label":`Очистить выбор`,children:(0,k.jsx)(a,{})}):null}),onChange:e=>{j&&Q.handleTriggerInputChange(e.target.value)},onClick:Q.handleTriggerClick,onFocus:e=>{Q.handleTriggerFocus(e.currentTarget)},onKeyDown:e=>{Pe(e),!e.defaultPrevented&&Q.handleTriggerKeyDown({event:e,onActivateWhenOpen:Ne,enableSpaceActivation:!j})}}),(0,k.jsx)(ne,{open:I,context:we,floatingStyles:Te,listId:c,labelId:n,descriptionId:r,activeOptionId:q?K(c):void 0,setFloating:Oe,getFloatingProps:Ee,onKeyDown:Fe,className:s(l.uiPopupOptions,D),maxWidth:A,header:me,children:(0,k.jsx)(`div`,{className:s(ue,`h100 scrollable`),children:q?U?U.map((e,t)=>{let n=e.group?`${c}-group-${t}`:void 0,r=e.items.map(({option:e,index:t})=>$(c,e,t));return e.group?(0,k.jsxs)(`div`,{role:`group`,"aria-labelledby":n,children:[(0,k.jsx)(`div`,{id:n,className:l.uiPopupGroupLabel,children:e.group.label}),r]},`group-${String(e.group.key)}-${t}`):(0,k.jsx)(O.Fragment,{children:r},`options-${t}`)}):H.map((e,t)=>$(c,e,t)):(0,k.jsx)(oe,{emptyState:he,loadingState:ge,errorState:_e})})})]})}})}var O,k;function A(){return(A=e((()=>{O=t(),c(),n(),i(),f(),h(),g(),v(),d(),b(),p(),_(),m(),u(),S(),E(),k=o(),D.__docgenInfo={description:`Выпадающий список выбора значения из набора опций. Подходит для форм, фильтров и простых справочников.`,methods:[],displayName:`Select`,props:{options:{required:!0,tsType:{name:`unknown`},description:``},getOptionKey:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(option: TOption) => SelectOptionKey`,signature:{arguments:[{type:{name:`TOption`},name:`option`}],return:{name:`union`,raw:`string | number`,elements:[{name:`string`},{name:`number`}]}}},description:``},getOptionLabel:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(option: TOption) => ReactNode`,signature:{arguments:[{type:{name:`TOption`},name:`option`}],return:{name:`ReactNode`}}},description:``},getOptionCode:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(option: TOption) => ReactNode`,signature:{arguments:[{type:{name:`TOption`},name:`option`}],return:{name:`ReactNode`}}},description:``},getOptionDisabled:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(option: TOption) => boolean`,signature:{arguments:[{type:{name:`TOption`},name:`option`}],return:{name:`boolean`}}},description:``},getOptionAriaLabel:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(option: TOption) => string`,signature:{arguments:[{type:{name:`TOption`},name:`option`}],return:{name:`string`}}},description:``},getOptionGroup:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(option: TOption) => SelectOptionGroup | undefined`,signature:{arguments:[{type:{name:`TOption`},name:`option`}],return:{name:`union`,raw:`SelectOptionGroup | undefined`,elements:[{name:`signature`,type:`object`,raw:`{
2
- readonly key: SelectOptionKey;
3
- readonly label: ReactNode;
4
- }`,signature:{properties:[{key:`key`,value:{name:`union`,raw:`string | number`,elements:[{name:`string`},{name:`number`}],required:!0}},{key:`label`,value:{name:`ReactNode`,required:!0}}]}},{name:`undefined`}]}}},description:``},getOptionClassName:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(option: TOption, state: SelectOptionState) => string | undefined`,signature:{arguments:[{type:{name:`TOption`},name:`option`},{type:{name:`signature`,type:`object`,raw:`{
5
- active: boolean;
6
- selected: boolean;
7
- disabled: boolean;
8
- }`,signature:{properties:[{key:`active`,value:{name:`boolean`,required:!0}},{key:`selected`,value:{name:`boolean`,required:!0}},{key:`disabled`,value:{name:`boolean`,required:!0}}]}},name:`state`}],return:{name:`union`,raw:`string | undefined`,elements:[{name:`string`},{name:`undefined`}]}}},description:``},renderOption:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(option: TOption, state: SelectOptionState) => ReactNode`,signature:{arguments:[{type:{name:`TOption`},name:`option`},{type:{name:`signature`,type:`object`,raw:`{
9
- active: boolean;
10
- selected: boolean;
11
- disabled: boolean;
12
- }`,signature:{properties:[{key:`active`,value:{name:`boolean`,required:!0}},{key:`selected`,value:{name:`boolean`,required:!0}},{key:`disabled`,value:{name:`boolean`,required:!0}}]}},name:`state`}],return:{name:`ReactNode`}}},description:``},renderValue:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(option: TOption) => ReactNode`,signature:{arguments:[{type:{name:`TOption`},name:`option`}],return:{name:`ReactNode`}}},description:``},className:{required:!1,tsType:{name:`string`},description:``},buttonClassName:{required:!1,tsType:{name:`string`},description:``},optionsClassName:{required:!1,tsType:{name:`string`},description:``},optionsMaxWidth:{required:!1,tsType:{name:`CSSProperties["maxWidth"]`,raw:`CSSProperties["maxWidth"]`},description:``},optionsContentClassName:{required:!1,tsType:{name:`string`},description:``},searchable:{required:!1,tsType:{name:`boolean`},description:``},query:{required:!1,tsType:{name:`string`},description:``},defaultQuery:{required:!1,tsType:{name:`string`},description:``},onQuery:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(value: string) => void`,signature:{arguments:[{type:{name:`string`},name:`value`}],return:{name:`void`}}},description:``},defaultFilter:{required:!1,tsType:{name:`boolean`},description:``},renderPopupHeader:{required:!1,tsType:{name:`ReactNode`},description:``},emptyState:{required:!1,tsType:{name:`ReactNode`},description:``},loadingState:{required:!1,tsType:{name:`ReactNode`},description:``},errorState:{required:!1,tsType:{name:`ReactNode`},description:``},placement:{required:!1,tsType:{name:`Placement`},description:``},clearable:{required:!1,tsType:{name:`TClearable`},description:``},onChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(value: T) => void`,signature:{arguments:[{type:{name:`unknown`},name:`value`}],return:{name:`void`}}},description:``}}}})))()}export{A as n,D as t};
@@ -1 +0,0 @@
1
- import{n as e,o as t}from"./rolldown-runtime-C0FnF6B9.js";import{t as n}from"./react-C21x__mS.js";import{n as r}from"./iframe-CyRHAH4o.js";import{a as i,i as a}from"./utils-DUM89eIj.js";import{n as o,t as s}from"./FloatingPopover-BgSpMYSa.js";import{c,l as ee,o as te,u as ne}from"./Input-B9yXA1bX.js";function l(e){if(!Number.isFinite(e))return 0;let t=e.toString().toLowerCase(),n=t.indexOf(`e-`);if(n>=0)return Number(t.slice(n+2));let r=t.indexOf(`.`);return r>=0?t.length-r-1:0}function u(e,t){if(t<=0)return Math.round(e);let n=10**t;return Math.round(e*n)/n}function d(e,t){return!Number.isFinite(e)||!Number.isFinite(t)?{min:0,max:100}:e<=t?{min:e,max:t}:{min:t,max:e}}function f(e,t,n){return Number.isFinite(e)?Math.min(n,Math.max(t,e)):t}function p(e){return!Number.isFinite(e)||e===void 0||e<=0?1:e}function m(e,t,n){if(!e?.length)return[];let r=new Set;return e.filter(e=>Number.isFinite(e.value)&&e.value>=t&&e.value<=n).slice().sort((e,t)=>e.value-t.value).filter(e=>!r.has(e.value)&&(r.add(e.value),!0))}function h(e,t,n,r){let i=p(r),a=f(e,t,n),o=Math.max(l(i),l(t),l(n));return f(u(t+Math.round((a-t)/i)*i,o),t,n)}function g(e,t){if(!t.length)return;let n=t[0],r=Math.abs(e-n.value);for(let i=1;i<t.length;i+=1){let a=t[i],o=Math.abs(e-a.value);o<r&&(n=a,r=o)}return n}function _(e,t,n,r){if(!t.length)return f(e,n,r);let i=f(e,n,r);return g(i,t)?.value??i}function v(e,t){let{min:n,max:r}=d(t.min,t.max),i=m(t.marks,n,r);return i.length>0?_(e,i,n,r):h(e,n,r,t.step)}function y(e,t,n){return n<=t?0:(f(e,t,n)-t)/(n-t)*100}function re(e,t,n){if(n<=t)return t;let r=f(e,0,100);return t+(n-t)*r/100}function b(e,t,n,r,i=`value`){return i===`index`&&t.length>1?e/(t.length-1)*100:i===`index`?0:y(t[e]?.value??n,n,r)}function x(e,t,n,r,i=`value`){if(!t.length)return;let a=f(e,0,100),o=t[0],s=Math.abs(a-b(0,t,n,r,i));for(let e=1;e<t.length;e+=1){let c=Math.abs(a-b(e,t,n,r,i));c<s&&(o=t[e],s=c)}return o}function ie(e,t,n,r=n.min,i=n.max){let{min:a,max:o}=d(r,i),s=m(n.marks,a,o);if(s.length>0){let n=s.map(e=>e.value),r=0,i=Math.abs(e-n[0]);for(let t=1;t<n.length;t+=1){let a=Math.abs(e-n[t]);a<i&&(i=a,r=t)}return n[f(r+t,0,n.length-1)]}let c=p(n.step);return h(e+t*c,a,o,c)}function S(){return(S=e((()=>{})))()}function C(e,t,n){return m(e,t,n)}function w(e,t,n){let r=t.findIndex(t=>t.value===e.value);return b(Math.max(0,r),t,n.min,n.max,n.marksPosition)}function T(e,t){let{min:n,max:r}=d(t.min,t.max),i=C(t.marks,n,r);if(i.length>0){let a=i.find(t=>t.value===e)??g(e,i);if(a)return w(a,i,{...t,min:n,max:r,marks:i})}return y(e,n,r)}function ae(e,t){let{min:n,max:r}=d(t.min,t.max);return x(e,C(t.marks,n,r),n,r,t.marksPosition)}function E(e,t){return v(e,t)}function D(e,t){let{min:n,max:r}=d(t.min,t.max);return e===void 0?n:E(e,{...t,min:n,max:r})}function O(e){if(e)return!Object.hasOwn(e,`outputValue`)||e.outputValue===void 0?e.value:e.outputValue}function k(e,t,n){let r=t.filter(t=>O(t)===e);if(r.length)return e===null?n===0?r[0]:r[r.length-1]:r[0]}function A(e,t,n){let r=k(e,t,n);if(r)return r;let i,a=1/0;for(let n of t){let t=O(n);if(typeof t!=`number`||!Number.isFinite(t))continue;let r=Math.abs(e-t);r<a&&(i=n,a=r)}return i}function j(e,t,n,r){if(e===null)return null;let{min:i,max:a}=d(r.min,r.max),o=C(r.marks,i,a),s=Number.isFinite(e)?e:t;if(o.length>0){let e=A(s,o,n),r=O(e);return r===void 0?e?.value??t:r}return h(s,i,a,r.step)}function M(e,t){let{min:n,max:r}=d(t.min,t.max);if(!e)return[null,null];let i=j(e[0],n,0,{...t,min:n,max:r}),a=j(e[1],r,1,{...t,min:n,max:r});return i!==null&&a!==null&&i>a?[a,i]:[i,a]}function N(e,t,n,r){if(e===null)return t;let{min:i,max:a}=d(r.min,r.max),o=C(r.marks,i,a);return o.length>0?(k(e,o,n)??(typeof e==`number`?A(e,o,n):void 0))?.value??t:h(e,i,a,r.step)}function oe(e,t){let{min:n,max:r}=d(t.min,t.max),i=M(e,{...t,min:n,max:r}),a=N(i[0],n,0,{...t,min:n,max:r}),o=N(i[1],r,1,{...t,min:n,max:r});return a<=o?[a,o]:[o,a]}function se(e,t){let{min:n,max:r}=d(t.min,t.max),i=C(t.marks,n,r);if(i.length>0){let t=g(e,i),n=O(t);return n===void 0?t?.value??e:n}return h(e,n,r,t.step)}function ce(e,t){let[n,r]=t;return Math.abs(e-n)<=Math.abs(e-r)?0:1}function le(e,t){let{min:n,max:r}=d(t.min,t.max);return Array.isArray(e)?{startPercent:T(e[0],{...t,min:n,max:r}),endPercent:T(e[1],{...t,min:n,max:r})}:{startPercent:0,endPercent:T(e,{...t,min:n,max:r})}}function P(){return(P=e((()=>{})))()}var ue,F,I,L,R,z,B,V,H,U,W,G,K,q,J,de,fe,Y;function X(){return(X=e((()=>{ue=`fA7zne`,F=`gg-atO`,I=`bTLJZl`,L=`vDAmRy`,R=`PpaxP2`,z=`_9K78Fi`,B=`TMbaqW`,V=`_77qn1L`,H=`cxJQqh`,U=`-X13t0`,W=`iNrV0y`,G=`vzEDBe`,K=`_0OWJh0`,q=`Mk4xi2`,J=`SL0IDQ`,de=`mdezg5`,fe=`a4R18g`,Y={slider:ue,rail:F,fill:I,thumb:L,mark:R,compactMark:z,sliderCompact:B,trackShell:V,track:H,tooltipReference:U,marks:W,markDot:G,markLabel:K,popoverContent:q,rangeInputControl:J,rangeSegmentInput:de,rangeSeparator:fe}})))()}function pe(e){return e===`ArrowLeft`||e===`ArrowDown`?-1:e===`ArrowRight`||e===`ArrowUp`?1:e===`PageDown`?-10:e===`PageUp`?10:null}function me(e,t){return!!e&&e[0]===t[0]&&e[1]===t[1]}function he(e,t){return e===null?t===0?`-∞`:`∞`:String(e)}function ge(e,t){return t.find(t=>t.value===e)?.label??String(e)}function _e(e){return typeof e==`string`||typeof e==`number`?(0,$.jsx)(`span`,{className:`textNoWrap`,children:e}):e}function ve({position:e,children:t}){return(0,$.jsx)(`span`,{"data-slot":`slider-tooltip-reference`,className:Y.tooltipReference,style:{left:`${e}%`},children:t})}function Z(e){let{min:t,max:n,step:r,marks:a,marksPosition:o=`value`,marksDisplay:c=`compact`,className:ee,error:l,onClearError:u,label:f,description:p,disabled:m,size:h}=e,{min:g,max:_}=(0,Q.useMemo)(()=>d(t,n),[t,n]),v=(0,Q.useMemo)(()=>C(a,g,_),[a,g,_]),y=(0,Q.useMemo)(()=>({min:g,max:_,step:r,marks:v,marksPosition:o}),[g,_,r,v,o]),b=e.mode===`range`,x=b?void 0:D(e.value,y),S=b?M(e.value,y):void 0,E=b?oe(e.value,y):void 0,O=b?E:[x],k=le(b?E:x,y),A=(0,Q.useRef)(null),j=(0,Q.useRef)([]),N=(0,Q.useRef)(null),P=(0,Q.useRef)(null),[ue,F]=(0,Q.useState)(null),{controlId:I,labelId:L,descriptionId:R,errorId:z,describedBy:B}=ne({hasLabel:f!=null,hasDescription:!!p,hasError:!!l}),V=t=>{m||e.mode!==`single`||(e.value===void 0||e.value!==t)&&(e.onChange(t),u?.())},H=t=>{m||e.mode!==`range`||me(e.value,t)||(e.onChange(t),u?.())},U=(t,n)=>{if(!m){if(e.mode===`range`){let[e,r]=E,[i,a]=S,o=M(n===0?[se(Math.min(t,r),y),a]:[i,se(Math.max(t,e),y)],y);H(o);return}V(D(t,y))}},W=e=>{let t=A.current?.getBoundingClientRect();if(!t)return g;let n=(e-t.left)/t.width*100;return(v.length>0?ae(n,y):void 0)?.value??re(n,g,_)},G=(0,Q.useRef)(U),K=(0,Q.useRef)(W);(0,Q.useEffect)(()=>{G.current=U,K.current=W}),(0,Q.useEffect)(()=>{let e=e=>{P.current!==null&&e&&e.pointerId!==P.current||(P.current=null,N.current=null,F(null))},t=e=>{N.current!==null&&(P.current===null||e.pointerId===P.current)&&G.current(K.current(e.clientX),N.current)};return window.addEventListener(`pointermove`,t),window.addEventListener(`pointerup`,e),window.addEventListener(`pointercancel`,e),()=>{window.removeEventListener(`pointermove`,t),window.removeEventListener(`pointerup`,e),window.removeEventListener(`pointercancel`,e)}},[]);let q=(e,t)=>{P.current=e,N.current=t,F(t),j.current[t]?.focus()},J=e=>{if(m)return;e.preventDefault();let t=W(e.clientX),n=b?ce(t,E):0;U(t,n),q(e.pointerId,n)},de=e=>t=>{m||(t.preventDefault(),t.stopPropagation(),q(t.pointerId,e))},fe=e=>t=>{if(m)return;let n=b&&e===1?E[0]:g,r=b&&e===0?E[1]:_,i=pe(t.key);if(t.key===`Home`){t.preventDefault(),U(n,e);return}if(t.key===`End`){t.preventDefault(),U(r,e);return}if(i===null)return;t.preventDefault();let a=O[e],o=ie(a,i,y,n,r);U(o,e)},X=e=>{if(m)return;let t=b?ce(e,E):0;U(e,t),j.current[t]?.focus()},Z=(e,t)=>{if(b){let n=S[t];return v.find(t=>t.value===e)?.label??he(n,t)}return ge(e,v)};return(0,$.jsx)(te,{label:f,description:p,disabled:m,className:ee,size:h,error:l,controlId:I,labelId:L,descriptionId:R,errorId:z,children:(0,$.jsxs)(`div`,{id:I,className:i(Y.slider,c===`compact`&&Y.sliderCompact),"data-disabled":m||void 0,children:[(0,$.jsx)(`div`,{className:Y.trackShell,children:(0,$.jsxs)(`div`,{ref:A,"data-slot":`track`,className:Y.track,role:`presentation`,onPointerDown:J,children:[(0,$.jsx)(`div`,{className:Y.rail}),(0,$.jsx)(`div`,{"data-slot":`fill`,className:Y.fill,style:{left:`${k.startPercent}%`,width:`${k.endPercent-k.startPercent}%`}}),c===`compact`&&v.map(e=>{let t=w(e,v,y),n=b?e.value>=E[0]&&e.value<=E[1]:e.value<=x;return(0,$.jsx)(ve,{position:t,children:(0,$.jsx)(s,{tooltip:!0,placement:`top`,content:_e(e.label),children:(0,$.jsx)(`button`,{type:`button`,"data-slot":`mark`,"data-active":n?``:void 0,className:Y.compactMark,"aria-label":e.ariaLabel,disabled:m,onClick:()=>X(e.value),children:(0,$.jsx)(`span`,{className:Y.markDot,"aria-hidden":`true`})})})},e.value)}),O.map((e,t)=>{let n=Z(e,t);return(0,$.jsx)(ve,{position:T(e,y),children:(0,$.jsx)(s,{tooltip:!0,placement:`top`,content:_e(n),openDelay:0,closeDelay:100,positionUpdateKey:e,children:(0,$.jsx)(`button`,{ref:e=>{j.current[t]=e},type:`button`,role:`slider`,"data-slot":`thumb`,"data-thumb-index":t,"data-dragging":ue===t?``:void 0,className:Y.thumb,disabled:m,"aria-disabled":m||void 0,"aria-orientation":`horizontal`,"aria-valuemin":b&&t===1?E[0]:g,"aria-valuemax":b&&t===0?E[1]:_,"aria-valuenow":e,"aria-valuetext":typeof n==`string`||typeof n==`number`?String(n):void 0,"aria-labelledby":L,"aria-describedby":B,"aria-label":L?void 0:b?t===0?`Минимальное значение`:`Максимальное значение`:`Значение`,onPointerDown:de(t),onKeyDown:fe(t)})})},t)})]})}),c===`full`&&v.length>0&&(0,$.jsx)(`div`,{className:Y.marks,children:v.map(e=>{let t=b?e.value>=E[0]&&e.value<=E[1]:e.value<=x;return(0,$.jsxs)(`button`,{type:`button`,"data-slot":`mark`,"data-active":t?``:void 0,className:Y.mark,style:{left:`${w(e,v,y)}%`},"aria-label":e.ariaLabel,disabled:m,onClick:()=>X(e.value),children:[(0,$.jsx)(`span`,{className:Y.markDot,"aria-hidden":`true`}),(0,$.jsx)(`span`,{className:Y.markLabel,children:e.label})]},e.value)})})]})})}function ye(e){return(0,$.jsx)(Z,{...e,mode:`single`,marksDisplay:`compact`})}function be(e){return(0,$.jsx)(Z,{...e,mode:`range`,marksDisplay:`compact`})}var Q,$;function xe(){return(xe=e((()=>{Q=t(n(),1),a(),c(),ee(),o(),P(),X(),$=r(),Z.__docgenInfo={description:``,methods:[],displayName:`SliderBase`},ye.__docgenInfo={description:``,methods:[],displayName:`Slider`,props:{min:{required:!0,tsType:{name:`number`},description:`Минимальная координата шкалы. Marks вне этой границы отбрасываются.`},max:{required:!0,tsType:{name:`number`},description:`Максимальная координата шкалы. Marks вне этой границы отбрасываются.`},step:{required:!1,tsType:{name:`number`},description:"Шаг изменения, когда `marks` не заданы или после фильтрации не осталось валидных marks."},marks:{required:!1,tsType:{name:`unknown`},description:`Дискретные точки выбора. Если заданы, бегунок всегда ходит только по marks.`},marksPosition:{required:!1,tsType:{name:`NumberScaleMarksPosition`},description:"Способ визуального размещения marks и бегунка: по числовой координате `value` или равномерно по индексу."},className:{required:!1,tsType:{name:`string`},description:`Внешний CSS-класс контейнера поля.`},error:{required:!1,tsType:{name:`string`},description:"Текст внешней ошибки, отображается через общую `InputUI`-обёртку."},onClearError:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:`Вызывается после успешного изменения значения, чтобы потребитель мог сбросить внешнюю ошибку.`}},composes:[`Omit`]},be.__docgenInfo={description:``,methods:[],displayName:`SliderRange`,props:{min:{required:!0,tsType:{name:`number`},description:`Минимальная координата шкалы. Marks вне этой границы отбрасываются.`},max:{required:!0,tsType:{name:`number`},description:`Максимальная координата шкалы. Marks вне этой границы отбрасываются.`},step:{required:!1,tsType:{name:`number`},description:"Шаг изменения, когда `marks` не заданы или после фильтрации не осталось валидных marks."},marks:{required:!1,tsType:{name:`unknown`},description:`Дискретные точки выбора. Если заданы, бегунок всегда ходит только по marks.`},marksPosition:{required:!1,tsType:{name:`NumberScaleMarksPosition`},description:"Способ визуального размещения marks и бегунка: по числовой координате `value` или равномерно по индексу."},className:{required:!1,tsType:{name:`string`},description:`Внешний CSS-класс контейнера поля.`},error:{required:!1,tsType:{name:`string`},description:"Текст внешней ошибки, отображается через общую `InputUI`-обёртку."},onClearError:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:`Вызывается после успешного изменения значения, чтобы потребитель мог сбросить внешнюю ошибку.`}},composes:[`Omit`]}})))()}export{Y as a,P as c,C as d,S as f,xe as i,M as l,Z as n,X as o,d as p,be as r,O as s,ye as t,D as u};
@@ -1,2 +0,0 @@
1
- import{n as e}from"./rolldown-runtime-C0FnF6B9.js";import{t}from"./react-C21x__mS.js";import{n}from"./iframe-CyRHAH4o.js";import{a as r,i}from"./utils-DUM89eIj.js";import{o as a,s as o}from"./odata-service-B5w4YBao-BW9QLSrS.js";import{n as s,t as c}from"./Popover-CIkFX8KE.js";import{n as l,t as u}from"./ui.module-CiLQZm_L.js";import{a as d,c as f,l as p,o as m,r as h,u as g}from"./Input-B9yXA1bX.js";import{n as _,t as v}from"./PickerTriggerActions-C2ml1dHu.js";import{a as y,c as b,d as x,i as S,l as C,n as w,o as T,p as E,s as D,u as O}from"./Slider-1ymlsxh9.js";function k({open:e,disabled:t,setOpen:n}){return(0,B.jsx)(c.Trigger,{passive:!0,children:(0,B.jsx)(`div`,{children:(0,B.jsx)(v,{open:e,disabled:t,openAriaLabel:`Открыть слайдер`,closeAriaLabel:`Закрыть слайдер`,onToggleMouseDown:e=>e.preventDefault(),onToggleClick:()=>n(e=>!e)})})})}function A(e,t){let n=C(e,t);return{start:n[0]===null?`-∞`:String(n[0]),end:n[1]===null?`∞`:String(n[1])}}function j(e,t){let n=e.trim();return n===``||n===t?null:a(n)}function M(e,t,n){let r=t.filter(t=>D(t)===e);if(r.length)return e===null&&n===`end`?r[r.length-1]:r[0]}function N(e,t){return e?.readonlyLabel?.trim()?e.readonlyLabel.trim():typeof e?.label==`string`||typeof e?.label==`number`?String(e.label):t===null?``:String(t)}function P(e,t,n){return N(M(e,t,n),e)}function F(e,t,n){let[r,i]=e,a=r===null,o=i===null;return a&&o?n??``:a?`Меньше ${P(i,t,`end`)}`:o?`Больше ${P(r,t,`start`)}`:r===i?`Равно ${P(r,t,`start`)}`:`От ${P(r,t,`start`)} до ${P(i,t,`end`)}`}function I({value:e,onChange:t,min:n,max:r,step:i,marks:o,marksPosition:s=`value`,className:l,error:u,onClearError:f,label:p,description:m,placeholder:h,disabled:g,size:_}){let{min:v,max:b}=(0,z.useMemo)(()=>E(n,r),[n,r]),S=(0,z.useMemo)(()=>x(o,v,b),[o,v,b]),C=(0,z.useMemo)(()=>({min:v,max:b,step:i,marks:S,marksPosition:s}),[v,b,i,S,s]),T=O(e,C),[D,A]=(0,z.useState)(!1),[j,M]=(0,z.useState)(()=>({sourceValue:T,value:String(T)})),N=j.sourceValue===T?j.value:String(T),P=e=>{M({sourceValue:T,value:e})},F=(0,z.useCallback)(()=>{if(g){M({sourceValue:T,value:String(T)});return}let n=a(N);if(n===void 0){M({sourceValue:T,value:String(T)});return}let r=O(n,C);e!==r&&(t(r),f?.()),M({sourceValue:r,value:String(r)})},[g,N,T,t,f,C,e]);return(0,B.jsxs)(c,{open:D,onOpenChange:A,children:[(0,B.jsx)(d,{label:p,description:m,placeholder:h,disabled:g,size:_,className:l,error:u,value:N,onChange:P,onBlur:F,onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),F())},endAdornmentWidth:`var(--control-height)`,endAdornment:k({open:D,disabled:g,setOpen:A})}),(0,B.jsx)(c.Content,{background:`primary`,children:(0,B.jsx)(`div`,{className:y.popoverContent,children:(0,B.jsx)(w,{mode:`single`,min:v,max:b,step:i,marks:S,marksPosition:s,marksDisplay:`full`,value:e,onChange:e=>{t(e),M({sourceValue:e,value:String(e)}),f?.()},disabled:g})})})]})}function L({value:e,onChange:t,min:n,max:i,step:a,marks:o,marksPosition:s=`value`,className:u,error:d,onClearError:f,label:p,description:_,readonlyValueText:v,placeholder:b,disabled:S,size:T}){let{min:D,max:O}=(0,z.useMemo)(()=>E(n,i),[n,i]),M=(0,z.useMemo)(()=>x(o,D,O),[o,D,O]),N=(0,z.useMemo)(()=>({min:D,max:O,step:a,marks:M,marksPosition:s}),[D,O,a,M,s]),P=(0,z.useMemo)(()=>C(e,N),[N,e]),I=(0,z.useMemo)(()=>A(P,N),[P,N]),[L,V]=(0,z.useState)(!1),[H,U]=(0,z.useState)(()=>({sourceValue:P,start:I.start,end:I.end})),[W,G]=(0,z.useState)(P),K=L||R(H.sourceValue,P),q=K?H.start:I.start,J=K?H.end:I.end,ee=e=>{U({sourceValue:P,start:e,end:J})},te=e=>{U({sourceValue:P,start:q,end:e})},{controlId:Y,labelId:X,descriptionId:ne,errorId:re,describedBy:ie}=g({hasLabel:p!=null,hasDescription:!!_,hasError:!!d}),Z=(0,z.useCallback)(()=>{U({sourceValue:P,start:I.start,end:I.end})},[I.end,I.start,P]),Q=(0,z.useCallback)(()=>{if(S){Z();return}let e=j(q,`-∞`),n=j(J,`∞`);if(e===void 0||n===void 0){Z();return}let r=C([e,n],N);R(P,r)||(t(r),f?.());let i=A(r,N);U({sourceValue:r,start:i.start,end:i.end}),G(r)},[S,J,q,P,t,f,Z,N]),ae=(0,z.useCallback)(e=>{let n=C(e,N);R(P,n)||(t(n),f?.());let r=A(n,N);U({sourceValue:n,start:r.start,end:r.end}),G(n)},[P,t,f,N]),$=e=>{!L&&e&&(G(P),U({sourceValue:P,start:I.start,end:I.end})),L&&!e&&!S&&ae(W),V(e)},oe=e=>{e.key===`Enter`&&(e.preventDefault(),Q())},se=e=>{let t=C(e,N);G(t);let n=A(t,N);U({sourceValue:P,start:n.start,end:n.end})},ce=v?F(L?W:P,M,b):void 0;return(0,B.jsxs)(c,{open:L,onOpenChange:$,children:[(0,B.jsx)(m,{label:p,description:_,disabled:S,className:u,size:T,error:d,controlId:Y,labelId:X,descriptionId:ne,errorId:re,children:(0,B.jsx)(h,{endAdornmentWidth:`var(--control-height)`,endAdornment:k({open:L,disabled:S,setOpen:e=>{$(typeof e==`function`?e(L):e)}}),children:({controlClassName:e})=>(0,B.jsx)(`div`,{id:Y,className:r(l.uiInputControlFake,y.rangeInputControl,e),"data-invalid":d?``:void 0,"data-disabled":S||void 0,role:`group`,"aria-invalid":!!d||void 0,"aria-label":typeof p==`string`?p:`Диапазон`,"aria-labelledby":typeof p==`string`?void 0:X,"aria-describedby":ie,children:v?(0,B.jsx)(`span`,{className:r(`flexEllipsis`,!ce&&l.uiPlaceholder),children:ce||b}):(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(`input`,{type:`text`,inputMode:`decimal`,className:y.rangeSegmentInput,value:q,disabled:S,"aria-label":`Начало диапазона`,onChange:e=>ee(e.target.value),onBlur:Q,onKeyDown:oe}),(0,B.jsx)(`span`,{className:y.rangeSeparator,"data-disabled":S||void 0,children:`-`}),(0,B.jsx)(`input`,{type:`text`,inputMode:`decimal`,className:y.rangeSegmentInput,value:J,disabled:S,"aria-label":`Конец диапазона`,onChange:e=>te(e.target.value),onBlur:Q,onKeyDown:oe})]})})})}),(0,B.jsx)(c.Content,{background:`primary`,children:(0,B.jsx)(`div`,{className:y.popoverContent,children:(0,B.jsx)(w,{mode:`range`,min:D,max:O,step:a,marks:M,marksPosition:s,marksDisplay:`full`,value:W,onChange:se,disabled:S})})})]})}function R(e,t){return e[0]===t[0]&&e[1]===t[1]}var z,B;function V(){return(V=e((()=>{z=t(),o(),i(),f(),p(),_(),s(),u(),b(),S(),T(),B=n(),I.__docgenInfo={description:``,methods:[],displayName:`SliderInput`,props:{label:{required:!1,tsType:{name:`ReactNode`},description:``},description:{required:!1,tsType:{name:`string`},description:``},placeholder:{required:!1,tsType:{name:`string`},description:``},disabled:{required:!1,tsType:{name:`boolean`},description:``},size:{required:!1,tsType:{name:`union`,raw:`"xs" | "sm" | "md" | "lg" | "xl"`,elements:[{name:`literal`,value:`"xs"`},{name:`literal`,value:`"sm"`},{name:`literal`,value:`"md"`},{name:`literal`,value:`"lg"`},{name:`literal`,value:`"xl"`}]},description:``},value:{required:!0,tsType:{name:`V`},description:"Если начальное состояние может быть `null | undefined`\nзначит `onChange` тоже должен ументь сбрасывать.\nПоэтому такой контрол явно должен передавать `UiBaseProps<AnyType | undefined>`"},onChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(value: T) => void`,signature:{arguments:[{type:{name:`C`},name:`value`}],return:{name:`void`}}},description:``},min:{required:!0,tsType:{name:`number`},description:`Минимальная координата шкалы. Marks вне этой границы не участвуют в выборе.`},max:{required:!0,tsType:{name:`number`},description:`Максимальная координата шкалы. Marks вне этой границы не участвуют в выборе.`},step:{required:!1,tsType:{name:`number`},description:`Шаг ручного ввода и слайдера, если не заданы marks.`},marksPosition:{required:!1,tsType:{name:`NumberScaleMarksPosition`},description:`Способ визуального размещения marks и бегунка в popover.`,defaultValue:{value:`"value"`,computed:!1}},className:{required:!1,tsType:{name:`string`},description:`Внешний CSS-класс общей обёртки поля.`},error:{required:!1,tsType:{name:`string`},description:`Текст внешней ошибки.`},onClearError:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:`Сбрасывает внешнюю ошибку после успешного commit или выбора в popover.`},marks:{required:!1,tsType:{name:`unknown`},description:"Marks single-слайдера. Single-компонент отдаёт наружу `mark.value`."}}},L.__docgenInfo={description:``,methods:[],displayName:`SliderRangeInput`,props:{label:{required:!1,tsType:{name:`ReactNode`},description:``},description:{required:!1,tsType:{name:`string`},description:``},placeholder:{required:!1,tsType:{name:`string`},description:``},disabled:{required:!1,tsType:{name:`boolean`},description:``},size:{required:!1,tsType:{name:`union`,raw:`"xs" | "sm" | "md" | "lg" | "xl"`,elements:[{name:`literal`,value:`"xs"`},{name:`literal`,value:`"sm"`},{name:`literal`,value:`"md"`},{name:`literal`,value:`"lg"`},{name:`literal`,value:`"xl"`}]},description:``},value:{required:!0,tsType:{name:`V`},description:"Если начальное состояние может быть `null | undefined`\nзначит `onChange` тоже должен ументь сбрасывать.\nПоэтому такой контрол явно должен передавать `UiBaseProps<AnyType | undefined>`"},onChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(value: T) => void`,signature:{arguments:[{type:{name:`C`},name:`value`}],return:{name:`void`}}},description:``},min:{required:!0,tsType:{name:`number`},description:`Минимальная координата шкалы. Marks вне этой границы не участвуют в выборе.`},max:{required:!0,tsType:{name:`number`},description:`Максимальная координата шкалы. Marks вне этой границы не участвуют в выборе.`},step:{required:!1,tsType:{name:`number`},description:`Шаг ручного ввода и слайдера, если не заданы marks.`},marksPosition:{required:!1,tsType:{name:`NumberScaleMarksPosition`},description:`Способ визуального размещения marks и бегунка в popover.`,defaultValue:{value:`"value"`,computed:!1}},className:{required:!1,tsType:{name:`string`},description:`Внешний CSS-класс общей обёртки поля.`},error:{required:!1,tsType:{name:`string`},description:`Текст внешней ошибки.`},onClearError:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:`Сбрасывает внешнюю ошибку после успешного commit или выбора в popover.`},marks:{required:!1,tsType:{name:`unknown`},description:"Marks range-слайдера. `value` задаёт координату на шкале, `outputValue` задаёт публичное значение для потребителя."},readonlyValueText:{required:!1,tsType:{name:`boolean`},description:`Показывает вместо ручных сегментов готовый текст по выбранным marks.
2
- Popover остаётся единственным способом изменить значение через слайдер, а потребитель получает изменение при закрытии popover.`}}}})))()}export{L as n,V as r,I as t};
@@ -1 +0,0 @@
1
- import{t as e}from"./iframe-CyRHAH4o.js";e();
@@ -1 +0,0 @@
1
- import{n as e}from"./rolldown-runtime-C0FnF6B9.js";import{t}from"./react-C21x__mS.js";import{n}from"./iframe-CyRHAH4o.js";import{a as r,i}from"./utils-DUM89eIj.js";import{n as a,t as o}from"./ui.module-CiLQZm_L.js";import{a as s,d as c,f as l}from"./usePickerTriggerController-B-FKRrNu.js";function u({emptyState:e,loadingState:t,errorState:n}){let i=n??t??e;return i==null?null:(0,d.jsx)(`div`,{className:r(a.uiPopupOption,c.status,n!==void 0&&c.statusError),"aria-disabled":!0,children:i})}var d;function f(){return(f=e((()=>{i(),o(),l(),d=n(),u.__docgenInfo={description:``,methods:[],displayName:`PickerStatus`,props:{emptyState:{required:!1,tsType:{name:`ReactNode`},description:``},loadingState:{required:!1,tsType:{name:`ReactNode`},description:``},errorState:{required:!1,tsType:{name:`ReactNode`},description:``}}}})))()}function p({query:e,defaultQuery:t,onQuery:n,resetOnClose:r,triggerMode:i}){let a=e!==void 0,[o,c]=(0,m.useState)(t??``),l=a?e??``:o,u=r??(!i||s(i).resetQueryOnClose),d=e=>{a||c(e),n?.(e)};return{query:l,setQuery:d,clearQuery:()=>d(``),resetQueryOnClose:u}}var m;function h(){return(h=e((()=>{m=t()})))()}export{f as i,p as n,u as r,h as t};
@@ -1 +0,0 @@
1
- import{n as e}from"./rolldown-runtime-C0FnF6B9.js";import{t}from"./react-C21x__mS.js";import{n}from"./iframe-CyRHAH4o.js";import{a as r,i}from"./utils-DUM89eIj.js";import{n as a,r as o,t as s}from"./floating-ui.react-1JhRQUPm.js";import{n as c,t as l}from"./ui.module-CiLQZm_L.js";import{n as u,r as d,t as f}from"./react-4VaPHlD7.js";import{c as p,l as m,o as h,r as g,u as _}from"./Input-B9yXA1bX.js";import{n as v,t as y}from"./hooks-CU6FIrkU.js";function b({id:e,label:t,description:n,disabled:r,size:i,className:a,error:o,children:s}){let{controlId:c,labelId:l,descriptionId:u,errorId:d,describedBy:f}=_({id:e,hasLabel:t!=null,hasDescription:!!n,hasError:!!o});return(0,x.jsx)(h,{label:t,description:n,disabled:r,size:i,className:a,error:o,controlId:c,labelId:l,descriptionId:u,errorId:d,children:s({controlId:c,labelId:l,descriptionId:u,errorId:d,describedBy:f})})}var x;function S(){return(S=e((()=>{p(),m(),x=n(),b.__docgenInfo={description:``,methods:[],displayName:`PickerField`,props:{id:{required:!1,tsType:{name:`string`},description:``},className:{required:!1,tsType:{name:`string`},description:``},error:{required:!1,tsType:{name:`string`},description:``},children:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(context: PickerFieldContext) => ReactNode`,signature:{arguments:[{type:{name:`PickerFieldContext`},name:`context`}],return:{name:`ReactNode`}}},description:``}},composes:[`Omit`]}})))()}var C,w;function T(){return(T=e((()=>{C=t(),w=({as:e,children:t,...n})=>(0,C.createElement)(e||`div`,{...n},t),w.__docgenInfo={description:``,methods:[],displayName:`PolymorphicComponent`,props:{as:{required:!1,tsType:{name:`E`},description:``}}}})))()}var E,D;function O(){return(O=e((()=>{t(),i(),T(),E=n(),D=({as:e,orientation:t=`horizontal`,className:n,...i})=>(0,E.jsx)(w,{as:e,"aria-orientation":t,className:r(n,t===`horizontal`?`separator`:`separatorVertical`),...i}),D.__docgenInfo={description:``,methods:[],displayName:`Separator`,props:{as:{required:!1,tsType:{name:`E`},description:``},orientation:{required:!1,tsType:{name:`union`,raw:`"horizontal" | "vertical"`,elements:[{name:`literal`,value:`"horizontal"`},{name:`literal`,value:`"vertical"`}]},description:``,defaultValue:{value:`"horizontal"`,computed:!1}},className:{required:!1,tsType:{name:`string`},description:``}}}})))()}var k,A,j,M,N,P,F;function I(){return(I=e((()=>{k=`DRJ4hy`,A=`U4CULi`,j=`bupTWA`,M=`GkeyGF`,N=`_8F667e`,P=`OGMk6I`,F={popupLayout:k,popupBody:A,status:j,statusError:M,triggerContainer:N,selectionActionButton:P}})))()}function L(e){e.stopPropagation()}function R({open:e,context:t,floatingStyles:n,listId:i,labelId:o,popupAriaLabel:c,descriptionId:l,activeOptionId:f,ariaMultiselectable:p,popupRole:m=`listbox`,setFloating:h,getFloatingProps:g,onKeyDown:_,initialFocus:v=-1,returnFocus:y=!1,tabIndex:b=0,className:x,maxWidth:S,layoutClassName:C,headerClassName:w,bodyClassName:T,header:E,children:O}){return(0,z.jsx)(d,{children:e&&(0,z.jsx)(a,{children:(0,z.jsx)(s,{context:t,modal:!1,initialFocus:v,returnFocus:y,children:(0,z.jsx)(u.div,{ref:h,style:{...n,maxWidth:S},initial:{opacity:0,scale:.95},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.95},...g({id:i,role:m,tabIndex:b,"aria-labelledby":o,"aria-label":o?void 0:c,"aria-describedby":l,"aria-activedescendant":f,"aria-multiselectable":p||void 0,onMouseDown:L,onKeyDown:_,className:x}),children:(0,z.jsxs)(`div`,{className:r(F.popupLayout,C),children:[E?(0,z.jsxs)(`div`,{className:w,children:[E,(0,z.jsx)(D,{className:`marginBlockSm`})]}):(0,z.jsx)(`div`,{}),(0,z.jsx)(`div`,{className:r(F.popupBody,T),children:O})]})})})})})}var z;function B(){return(B=e((()=>{o(),i(),f(),O(),I(),z=n(),R.__docgenInfo={description:``,methods:[],displayName:`PickerPopup`,props:{open:{required:!0,tsType:{name:`boolean`},description:``},context:{required:!0,tsType:{name:`FloatingContext`},description:``},floatingStyles:{required:!0,tsType:{name:`CSSProperties`},description:``},listId:{required:!0,tsType:{name:`string`},description:``},labelId:{required:!1,tsType:{name:`string`},description:``},popupAriaLabel:{required:!1,tsType:{name:`string`},description:``},descriptionId:{required:!1,tsType:{name:`string`},description:``},activeOptionId:{required:!1,tsType:{name:`string`},description:``},ariaMultiselectable:{required:!1,tsType:{name:`boolean`},description:``},popupRole:{required:!1,tsType:{name:`union`,raw:`"listbox" | "dialog"`,elements:[{name:`literal`,value:`"listbox"`},{name:`literal`,value:`"dialog"`}]},description:``,defaultValue:{value:`"listbox"`,computed:!1}},setFloating:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(node: HTMLElement | null) => void`,signature:{arguments:[{type:{name:`union`,raw:`HTMLElement | null`,elements:[{name:`HTMLElement`},{name:`null`}]},name:`node`}],return:{name:`void`}}},description:``},getFloatingProps:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(userProps?: Record<string, unknown>) => Record<string, unknown>`,signature:{arguments:[{type:{name:`Record`,elements:[{name:`string`},{name:`unknown`}],raw:`Record<string, unknown>`},name:`userProps`}],return:{name:`Record`,elements:[{name:`string`},{name:`unknown`}],raw:`Record<string, unknown>`}}},description:``},onKeyDown:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(event: KeyboardEvent<HTMLElement>) => void`,signature:{arguments:[{type:{name:`KeyboardEvent`,elements:[{name:`HTMLElement`}],raw:`KeyboardEvent<HTMLElement>`},name:`event`}],return:{name:`void`}}},description:``},initialFocus:{required:!1,tsType:{name:`number`},description:``,defaultValue:{value:`-1`,computed:!1}},returnFocus:{required:!1,tsType:{name:`boolean`},description:``,defaultValue:{value:`false`,computed:!1}},tabIndex:{required:!1,tsType:{name:`number`},description:``,defaultValue:{value:`0`,computed:!1}},className:{required:!1,tsType:{name:`string`},description:``},maxWidth:{required:!1,tsType:{name:`CSSProperties["maxWidth"]`,raw:`CSSProperties["maxWidth"]`},description:``},layoutClassName:{required:!1,tsType:{name:`string`},description:``},headerClassName:{required:!1,tsType:{name:`string`},description:``},bodyClassName:{required:!1,tsType:{name:`string`},description:``},header:{required:!1,tsType:{name:`ReactNode`},description:``},children:{required:!0,tsType:{name:`ReactNode`},description:``}}}})))()}var V,H,U;function W(){return(W=e((()=>{V=t(),i(),p(),l(),I(),H=n(),U=(0,V.forwardRef)(({rootRef:e,endAdornment:t,overlay:n,rootClassName:i,inputClassName:a,...o},s)=>(0,H.jsxs)(`div`,{ref:e,className:r(c.uiInputContainer,F.triggerContainer,i),children:[(0,H.jsx)(g,{endAdornment:t,children:({controlClassName:e})=>(0,H.jsx)(`input`,{...o,ref:s,className:r(c.uiInputWithToggle,e,a)})}),n]})),U.displayName=`PickerTriggerInput`,U.__docgenInfo={description:``,methods:[],displayName:`PickerTriggerInput`,props:{rootRef:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(node: HTMLDivElement | null) => void`,signature:{arguments:[{type:{name:`union`,raw:`HTMLDivElement | null`,elements:[{name:`HTMLDivElement`},{name:`null`}]},name:`node`}],return:{name:`void`}}},description:``},endAdornment:{required:!1,tsType:{name:`ReactNode`},description:``},overlay:{required:!1,tsType:{name:`ReactNode`},description:``},rootClassName:{required:!1,tsType:{name:`string`},description:``},inputClassName:{required:!1,tsType:{name:`string`},description:``}},composes:[`Omit`]}})))()}function G(e){switch(e){case`search-single`:return{focusFloatingOnOpen:!1,restoreFocusOnClose:!1,resetQueryOnClose:!0,shouldOpenOnTriggerClick:()=>!1,shouldOpenOnInputChange:e=>!e,shouldFocusReferenceOnToggle:e=>!e,shouldSelectTriggerTextOnFocus:({open:e,currentQuery:t,hasDisplayValue:n})=>!e&&t.length===0&&n};case`search-multi`:return{focusFloatingOnOpen:!1,restoreFocusOnClose:!1,resetQueryOnClose:!0,shouldOpenOnTriggerClick:()=>!1,shouldOpenOnInputChange:e=>!e,shouldFocusReferenceOnToggle:e=>!e,shouldSelectTriggerTextOnFocus:()=>!1};default:return{focusFloatingOnOpen:!0,restoreFocusOnClose:!0,resetQueryOnClose:!1,shouldOpenOnTriggerClick:e=>!e,shouldOpenOnInputChange:()=>!1,shouldFocusReferenceOnToggle:()=>!1,shouldSelectTriggerTextOnFocus:()=>!1}}}function K(){return(K=e((()=>{})))()}function q(e){let t=e.triggerMode?G(e.triggerMode):void 0;return y({...e,focusFloatingOnOpen:e.focusFloatingOnOpen??t?.focusFloatingOnOpen,restoreFocusOnClose:e.restoreFocusOnClose??t?.restoreFocusOnClose})}function J(){return(J=e((()=>{v()})))()}function Y(e){requestAnimationFrame(()=>{e.current?.focus()})}function X({mode:e,open:t,currentQuery:n,hasDisplayValue:r,inputRef:i,setQuery:a,openList:o,close:s,toggleOpen:c,onBeforeOpen:l}){let u=G(e),d=()=>{if(l?.(),o){o();return}c?.()},f=()=>{if(s){s();return}c?.()},p=()=>{t?f():d(),u.shouldFocusReferenceOnToggle(t)&&Y(i)};return{policy:u,handleTriggerInputChange:e=>{a?.(e),u.shouldOpenOnInputChange(t)&&d()},handleTriggerClick:()=>{u.shouldOpenOnTriggerClick(t)&&d()},handleTriggerFocus:e=>{u.shouldSelectTriggerTextOnFocus({open:t,currentQuery:n,hasDisplayValue:r})&&requestAnimationFrame(()=>{e.select()})},handleToggleMouseDown:e=>{e.preventDefault()},handleToggleClick:()=>{p()},handleTriggerKeyDown:({event:e,onActivateWhenOpen:n,enableSpaceActivation:r=!1,enableClosedArrowDownOpen:i=!1,suppressClosedArrowUp:a=!1})=>{if(!t&&a&&e.key===`ArrowUp`){e.preventDefault();return}if(!t&&i&&e.key===`ArrowDown`){e.preventDefault(),p();return}if(e.key===`Enter`){e.preventDefault(),t?n?.():p();return}r&&e.key===` `&&(e.preventDefault(),t?n?.():p())},toggleTrigger:p}}function Z(){return(Z=e((()=>{})))()}export{G as a,W as c,F as d,I as f,S as g,b as h,q as i,R as l,O as m,X as n,K as o,D as p,J as r,U as s,Z as t,B as u};