@ryuzaki13/react-foundation-ui 1.5.13 → 1.5.14

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 (206) hide show
  1. package/dist/listbox/index.js +1 -1
  2. package/dist/listbox/index.js.map +1 -1
  3. package/package.json +1 -1
  4. package/storybook-static/assets/{Badge-Cz9gcxIU.js → Badge-CD1woSdo.js} +1 -1
  5. package/storybook-static/assets/{Badge.stories-PV88uXCB.js → Badge.stories-DPunJSrK.js} +1 -1
  6. package/storybook-static/assets/{BadgeList-BMO51PtO.js → BadgeList-Baj24Y_J.js} +1 -1
  7. package/storybook-static/assets/{Button-BfLxUIid.js → Button-CGuqXzCc.js} +1 -1
  8. package/storybook-static/assets/{Button-DQxw6N8K.js → Button-mnXUdKCZ.js} +1 -1
  9. package/storybook-static/assets/{Button.stories-NlwBLVkf.js → Button.stories-Dr67FbTg.js} +1 -1
  10. package/storybook-static/assets/{CalendarView-C_i7clUL.js → CalendarView-vw1o_xNM.js} +1 -1
  11. package/storybook-static/assets/{CheckBox-3WpAVlwd.js → CheckBox-BJL2UykG.js} +1 -1
  12. package/storybook-static/assets/{CheckBox-Drc-88GM.js → CheckBox-QV3ntveq.js} +1 -1
  13. package/storybook-static/assets/{CheckBox.stories-D4IsLr4P.js → CheckBox.stories-DRQcsnNN.js} +1 -1
  14. package/storybook-static/assets/{Color-6AOWCN3U-CPY8DhM_.js → Color-6AOWCN3U-Bun7MdUD.js} +1 -1
  15. package/storybook-static/assets/{ContextMenu-D2--kuIS.js → ContextMenu-C0ZNiHZl.js} +1 -1
  16. package/storybook-static/assets/{ContextMenu-BjBW8_sr.js → ContextMenu-CNxPWPTI.js} +1 -1
  17. package/storybook-static/assets/{ContextMenu.stories-yGhy89Pi.js → ContextMenu.stories-BkZ0l4Tb.js} +1 -1
  18. package/storybook-static/assets/{DateInput-Dex3NjVs.js → DateInput-BdjPpQBb.js} +1 -1
  19. package/storybook-static/assets/{DateInput-G4c2mjqq.js → DateInput-mz_D_J5f.js} +1 -1
  20. package/storybook-static/assets/{DateInput.stories-5ciPhgGf.js → DateInput.stories-BleJdbF3.js} +1 -1
  21. package/storybook-static/assets/{DateRangePresetSelect-C9M3c98a.js → DateRangePresetSelect-D-8_Suqc.js} +1 -1
  22. package/storybook-static/assets/{DateRangePresetSelect-DJ4HV2xU.js → DateRangePresetSelect-DXJu8742.js} +1 -1
  23. package/storybook-static/assets/{DateRangePresetSelect.stories-C8Ohsfia.js → DateRangePresetSelect.stories-COMQj6gH.js} +1 -1
  24. package/storybook-static/assets/{Detail-CSPYsUEC.js → Detail-CJChG-7Q.js} +1 -1
  25. package/storybook-static/assets/{Detail.stories-LsOTK5pf.js → Detail.stories-CX19zPog.js} +1 -1
  26. package/storybook-static/assets/{Dialog-C8i0iW4a.js → Dialog-FuIbCMO-.js} +1 -1
  27. package/storybook-static/assets/{Dialog-BjEcdbGi.js → Dialog-a4GV2ZQ0.js} +1 -1
  28. package/storybook-static/assets/{Dialog.stories-BnmqXDWO.js → Dialog.stories-D1JgXIdZ.js} +1 -1
  29. package/storybook-static/assets/{Disclosure-Cvsl0gPE.js → Disclosure-BSazy5rN.js} +1 -1
  30. package/storybook-static/assets/{Disclosure.stories-CFfYWULd.js → Disclosure.stories-CES0qFr3.js} +1 -1
  31. package/storybook-static/assets/{DisclosureGroup-ZnY0phsi.js → DisclosureGroup-zBtzBoZj.js} +1 -1
  32. package/storybook-static/assets/{DocsRenderer-JROSPFPF-8jGqLFb9.js → DocsRenderer-JROSPFPF-P9L3PVGp.js} +1 -1
  33. package/storybook-static/assets/{DropZone-DFqqqipb.js → DropZone-DDByDKii.js} +1 -1
  34. package/storybook-static/assets/{DropZone-DvuKp6tN.js → DropZone-jynwO9zp.js} +1 -1
  35. package/storybook-static/assets/{DropZone.stories-B1xdFmz3.js → DropZone.stories-ChV6kmPA.js} +1 -1
  36. package/storybook-static/assets/{DropdownMenu-BrgLHYbc.js → DropdownMenu-DEekn_iq.js} +1 -1
  37. package/storybook-static/assets/{ExpandableActionPanel-CBOJ7TTT.js → ExpandableActionPanel-B9KEphZt.js} +1 -1
  38. package/storybook-static/assets/{ExpandableActionPanel.stories-ColZw5gd.js → ExpandableActionPanel.stories-hJSbWdEi.js} +1 -1
  39. package/storybook-static/assets/{Flex-BT_QGMVX.js → Flex-DGw71nVa.js} +1 -1
  40. package/storybook-static/assets/{Flex.stories-CEgggepS.js → Flex.stories-CisdWxc2.js} +1 -1
  41. package/storybook-static/assets/{FloatingPopover-ClEj7JDK.js → FloatingPopover-BgSpMYSa.js} +1 -1
  42. package/storybook-static/assets/{FormattedTableCell-Cwt_acDE.js → FormattedTableCell-DqGAaLSH.js} +1 -1
  43. package/storybook-static/assets/{Grid-CfILre0m.js → Grid-DqrdfRPP.js} +1 -1
  44. package/storybook-static/assets/{Grid.stories-wQ7jvA5X.js → Grid.stories-VUK1fVo1.js} +1 -1
  45. package/storybook-static/assets/{ImageCropper.stories-BMJDf8-2.js → ImageCropper.stories-C8tsdj0y.js} +1 -1
  46. package/storybook-static/assets/{ImageRenderer-COuwgno_.js → ImageRenderer-y_yPk15t.js} +1 -1
  47. package/storybook-static/assets/{ImageRenderer.stories-DsdXyXKD.js → ImageRenderer.stories-CdfTCmEM.js} +1 -1
  48. package/storybook-static/assets/{ImageView.stories-iNAQGgcZ.js → ImageView.stories-BpJA3U7W.js} +1 -1
  49. package/storybook-static/assets/{ImageViewer.stories-BYAuiSK7.js → ImageViewer.stories-joUGbNuk.js} +2 -2
  50. package/storybook-static/assets/{ImageViewerRuntime-DVlrAVlM.js → ImageViewerRuntime-Bd6bwD2G.js} +1 -1
  51. package/storybook-static/assets/{Input-DCQXBGK4.js → Input-B9yXA1bX.js} +1 -1
  52. package/storybook-static/assets/{Input-BhXx34oj.js → Input-BqHQ13Py.js} +1 -1
  53. package/storybook-static/assets/{Input.stories-cYqQabmU.js → Input.stories-D5_EehUE.js} +1 -1
  54. package/storybook-static/assets/{InputDateTime-BqmrEg_Q.js → InputDateTime-DMUf2anh.js} +1 -1
  55. package/storybook-static/assets/{InputDateTime.stories-C3xQIS7z.js → InputDateTime.stories-CSCBZZSt.js} +1 -1
  56. package/storybook-static/assets/{InputFile-Bth1Jhjf.js → InputFile--7YNcXk1.js} +1 -1
  57. package/storybook-static/assets/{InputFile-BCZ1O6Id.js → InputFile-Bb28M0Jz.js} +1 -1
  58. package/storybook-static/assets/{InputFile.stories-Cn9z-0xo.js → InputFile.stories-BcmVjUTx.js} +1 -1
  59. package/storybook-static/assets/{InputFiles-CURwAma0.js → InputFiles-BCk2pk9f.js} +1 -1
  60. package/storybook-static/assets/{InputFiles-c9zsOv2D.js → InputFiles-DGD8b7Ou.js} +1 -1
  61. package/storybook-static/assets/{InputFiles.stories-m9aTBp1E.js → InputFiles.stories-CEI2y9jM.js} +1 -1
  62. package/storybook-static/assets/{InputFilesList-CokmKz6s.js → InputFilesList-BP0hLe6p.js} +1 -1
  63. package/storybook-static/assets/{InputImage-ONEbMmSy.js → InputImage-CNW2H1oW.js} +1 -1
  64. package/storybook-static/assets/{InputImage-hzPQOP_G.js → InputImage-DGuYPBQF.js} +1 -1
  65. package/storybook-static/assets/{InputImage.stories-DtmL7qrl.js → InputImage.stories-BRqt3EaX.js} +1 -1
  66. package/storybook-static/assets/{InteractiveComponents-D9I5JYap.js → InteractiveComponents-BDlt0WQb.js} +1 -1
  67. package/storybook-static/assets/{InteractiveComponents.stories-Rkp13MQ5.js → InteractiveComponents.stories-CCwZe0gu.js} +1 -1
  68. package/storybook-static/assets/{LayoutPicker-BodO442K.js → LayoutPicker-NTQugPXW.js} +1 -1
  69. package/storybook-static/assets/{LayoutPicker-Dy9IvK0b.js → LayoutPicker-mhDjtSHC.js} +1 -1
  70. package/storybook-static/assets/{LayoutPicker.stories-exb5TXXF.js → LayoutPicker.stories-B7pmo36I.js} +1 -1
  71. package/storybook-static/assets/{Listbox-CQ80dSOo.js → Listbox-CX66_FoN.js} +1 -1
  72. package/storybook-static/assets/{Listbox-CZ1FQQ5X.js → Listbox-CgzrQDwl.js} +1 -1
  73. package/storybook-static/assets/{Listbox.stories-Nfzs72Yd.js → Listbox.stories-BuvQeQ0-.js} +1 -1
  74. package/storybook-static/assets/{Modal--uBl58UW.js → Modal-yA7tk-MI.js} +1 -1
  75. package/storybook-static/assets/{Modal.stories-D77rBBBh.js → Modal.stories-fUsmoWsB.js} +1 -1
  76. package/storybook-static/assets/{ModalManagerProvider-Dwn7kE4K.js → ModalManagerProvider-CpW75Za1.js} +1 -1
  77. package/storybook-static/assets/{MultiSelect-BlTby36f.js → MultiSelect-CAK64RnT.js} +1 -1
  78. package/storybook-static/assets/{MultiSelect-B725mcqy.js → MultiSelect-CoqGVsBf.js} +1 -1
  79. package/storybook-static/assets/{MultiSelect.stories-BEHlAAJJ.js → MultiSelect.stories-BnOcEsh0.js} +1 -1
  80. package/storybook-static/assets/{NoData-DLuw3XVk.js → NoData-BLbA-zp6.js} +1 -1
  81. package/storybook-static/assets/{NotificationsHost-BB5Np8PK.js → NotificationsHost-JM9SHcK4.js} +1 -1
  82. package/storybook-static/assets/{NotificationsHost.stories-DDadi6Mw.js → NotificationsHost.stories-Cq6KBUGr.js} +1 -1
  83. package/storybook-static/assets/{ODataMultiSelect-XFTdhfCe.js → ODataMultiSelect-C000rYJO.js} +1 -1
  84. package/storybook-static/assets/{ODataMultiSelect.stories-V1UHe_oU.js → ODataMultiSelect.stories-D1JrPXno.js} +1 -1
  85. package/storybook-static/assets/{ODataSelect-C01W8jth.js → ODataSelect-D_bcFAMN.js} +1 -1
  86. package/storybook-static/assets/{ODataSelect.stories-GBg5TBT_.js → ODataSelect.stories-k0nZfp60.js} +1 -1
  87. package/storybook-static/assets/{ODataTreeMultiSelect-sGEW_iPs.js → ODataTreeMultiSelect-yatLDsY7.js} +1 -1
  88. package/storybook-static/assets/{ODataTreeMultiSelect.stories-CKN_SvQU.js → ODataTreeMultiSelect.stories-DeTaeKuH.js} +1 -1
  89. package/storybook-static/assets/{ODataTreeSelect-1hCNPZNo.js → ODataTreeSelect-DbxkcIOC.js} +1 -1
  90. package/storybook-static/assets/{ODataTreeSelect.stories-GDmyjoWv.js → ODataTreeSelect.stories-BiL0Ew_l.js} +1 -1
  91. package/storybook-static/assets/{OneStepScroller-dsU38i0h.js → OneStepScroller-CVMtNkB8.js} +1 -1
  92. package/storybook-static/assets/{PeriodSelect-B5IQUCox.js → PeriodSelect-BxUpa6Ti.js} +1 -1
  93. package/storybook-static/assets/{PeriodSelect-Dar6tgT-.js → PeriodSelect-CvIh7s4o.js} +1 -1
  94. package/storybook-static/assets/{PeriodSelect.stories-s4UcTVBB.js → PeriodSelect.stories-9UkxLt3c.js} +1 -1
  95. package/storybook-static/assets/{PickerSelectionToolbar-BrUGVuF4.js → PickerSelectionToolbar-DCyKqj4d.js} +1 -1
  96. package/storybook-static/assets/{PickerTriggerActions-CiB7RNtz.js → PickerTriggerActions-C2ml1dHu.js} +1 -1
  97. package/storybook-static/assets/{Popover-BUpM2SdA.js → Popover-CIkFX8KE.js} +1 -1
  98. package/storybook-static/assets/{Popover-CElnnd4d.js → Popover-lL1gFyV9.js} +1 -1
  99. package/storybook-static/assets/{Popover.stories-CDPYRGg5.js → Popover.stories-qdEo-ssX.js} +1 -1
  100. package/storybook-static/assets/{PresetRangeDateInput-DKbX277t.js → PresetRangeDateInput-BnjHtxAq.js} +1 -1
  101. package/storybook-static/assets/{PresetRangeDateInput-DWsBB7Xe.js → PresetRangeDateInput-CJMd3--R.js} +1 -1
  102. package/storybook-static/assets/{PresetRangeDateInput.stories-CLnxG1Su.js → PresetRangeDateInput.stories-CAeR9ZbD.js} +1 -1
  103. package/storybook-static/assets/{PresetSelect-TONMNVox.js → PresetSelect-DsWB0UAO.js} +1 -1
  104. package/storybook-static/assets/{RadioButton-CHp5HFET.js → RadioButton-BoHDe82U.js} +1 -1
  105. package/storybook-static/assets/{RadioButton-C8cdy1c5.js → RadioButton-D8vPj5e8.js} +1 -1
  106. package/storybook-static/assets/{RadioButton.stories-D-wI-ysI.js → RadioButton.stories-CUj8nWsY.js} +1 -1
  107. package/storybook-static/assets/{RadioGroup-Cyzz_ISM.js → RadioGroup-BdV4BEd8.js} +1 -1
  108. package/storybook-static/assets/{RadioGroup-RnbEh9jf.js → RadioGroup-Ut9gYgVv.js} +1 -1
  109. package/storybook-static/assets/{RadioGroup.stories-DAocx-vl.js → RadioGroup.stories-CqDdGawq.js} +1 -1
  110. package/storybook-static/assets/{Scrollable-BZwDWzCP.js → Scrollable-CYqKWV-X.js} +1 -1
  111. package/storybook-static/assets/{Select-BMWvHZb0.js → Select-CiCBBpv5.js} +1 -1
  112. package/storybook-static/assets/{Select-QJmM58Sy.js → Select-RbjV8dmi.js} +1 -1
  113. package/storybook-static/assets/{Select.stories-Tt0ajJXV.js → Select.stories-LhZxxpT7.js} +1 -1
  114. package/storybook-static/assets/{SelectOptionContent-DZcX0XcL.js → SelectOptionContent-BzRajXPC.js} +1 -1
  115. package/storybook-static/assets/{SerializableSelect-Cb2eKzWt.js → SerializableSelect-Cy7gs4jX.js} +1 -1
  116. package/storybook-static/assets/{SerializableSelect.stories-BMGIdje_.js → SerializableSelect.stories-C2_ryaWY.js} +1 -1
  117. package/storybook-static/assets/{SingleDateTimeInput-ByN30Wn3.js → SingleDateTimeInput-B_UBXx82.js} +1 -1
  118. package/storybook-static/assets/{SingleDateTimeInput--8TJ-hnE.js → SingleDateTimeInput-Dva2NFrn.js} +1 -1
  119. package/storybook-static/assets/{SingleDateTimeInput.stories-CrsfwMCv.js → SingleDateTimeInput.stories-DYt31IoM.js} +1 -1
  120. package/storybook-static/assets/{Slider-eV8LAbRY.js → Slider-1ymlsxh9.js} +1 -1
  121. package/storybook-static/assets/{Slider-B7Zh8pKd.js → Slider-Cbcdmx97.js} +1 -1
  122. package/storybook-static/assets/{Slider.stories-2Fh_zSe4.js → Slider.stories-CP_gKjK0.js} +1 -1
  123. package/storybook-static/assets/{SliderInput-BjWQPhW1.js → SliderInput-XHYB3r06.js} +1 -1
  124. package/storybook-static/assets/{SliderInput-2r2n9oBs.js → SliderInput-paqtqhAm.js} +1 -1
  125. package/storybook-static/assets/{SliderInput.stories-RrseFw59.js → SliderInput.stories-W1GTuM_C.js} +1 -1
  126. package/storybook-static/assets/{Sortable-DHi8kx5A.js → Sortable-CT4fVwTv.js} +1 -1
  127. package/storybook-static/assets/{Sortable.stories-DJoStzvM.js → Sortable.stories-nKc7Upc2.js} +1 -1
  128. package/storybook-static/assets/{Splitter-Dxol4S_V.js → Splitter-N9erAT3u.js} +1 -1
  129. package/storybook-static/assets/{Splitter.stories-BbVOMBqo.js → Splitter.stories-CK-GKi--.js} +1 -1
  130. package/storybook-static/assets/{StateSelect-3OnKvOr4.js → StateSelect-CIPFB33b.js} +1 -1
  131. package/storybook-static/assets/{StateSelect-pbm7Jf8f.js → StateSelect-Dojqy1hR.js} +1 -1
  132. package/storybook-static/assets/{StateSelect.stories-CgTE3-yP.js → StateSelect.stories-C4On1tk0.js} +1 -1
  133. package/storybook-static/assets/{StringToggle.stories-BSJLw3CZ.js → StringToggle.stories-BetJnFMH.js} +1 -1
  134. package/storybook-static/assets/{Switch-BxBEQCPT.js → Switch-D2p3kwTC.js} +1 -1
  135. package/storybook-static/assets/{Switch-BdBKEluZ.js → Switch-DUCOjbqF.js} +1 -1
  136. package/storybook-static/assets/{Switch.stories-D5DDiey7.js → Switch.stories-Blqtc2Hq.js} +1 -1
  137. package/storybook-static/assets/{Table-tNWO7Xkx.js → Table-h5VqBZQC.js} +1 -1
  138. package/storybook-static/assets/{Table.stories-Co6W6DfX.js → Table.stories-DVNQ0tWI.js} +1 -1
  139. package/storybook-static/assets/{Tabs-MhG7k5kZ.js → Tabs-oJ3wBcAV.js} +1 -1
  140. package/storybook-static/assets/{Tabs.stories-6-cDteqF.js → Tabs.stories-CBh5mcQQ.js} +1 -1
  141. package/storybook-static/assets/{TabsBox-CbcUNOlb.js → TabsBox-B9LCP1S7.js} +1 -1
  142. package/storybook-static/assets/{TagInput-BvhI42-e.js → TagInput-DxR2Bj-i.js} +1 -1
  143. package/storybook-static/assets/{TagInput.stories-Bh03CP2k.js → TagInput.stories-0NpZyaKp.js} +1 -1
  144. package/storybook-static/assets/{Text-CvyKTMrH.js → Text-DlyoUTZs.js} +1 -1
  145. package/storybook-static/assets/{Textarea-JurrghA5.js → Textarea--e-7GpNS.js} +1 -1
  146. package/storybook-static/assets/{Textarea-CZORYVJ_.js → Textarea-CvpgjBoz.js} +1 -1
  147. package/storybook-static/assets/{Textarea.stories-BUDqqVKy.js → Textarea.stories-CLl8p2g4.js} +1 -1
  148. package/storybook-static/assets/{TimePanel-DIKKUv5f.js → TimePanel-Fn9pUQDM.js} +1 -1
  149. package/storybook-static/assets/{TimePanel.stories-B1q_i8WF.js → TimePanel.stories-BHUoKMY9.js} +1 -1
  150. package/storybook-static/assets/{Toggle-C3KWroQa.js → Toggle-B6twXbRN.js} +1 -1
  151. package/storybook-static/assets/{Toggle-BGRFjquY.js → Toggle-j_swU_h-.js} +1 -1
  152. package/storybook-static/assets/{Toggle.stories-CqaiA6sq.js → Toggle.stories-BkRbPfci.js} +1 -1
  153. package/storybook-static/assets/{TreeMultiSelect-BJt6pYdc.js → TreeMultiSelect-6SlJwvvJ.js} +1 -1
  154. package/storybook-static/assets/{TreeMultiSelect-BT1UYS2s.js → TreeMultiSelect-86pFYMuR.js} +1 -1
  155. package/storybook-static/assets/{TreeMultiSelect.stories-B6fswq0n.js → TreeMultiSelect.stories-Dvfg-_tX.js} +1 -1
  156. package/storybook-static/assets/{TreePickerBase-Ezb14TOv.js → TreePickerBase-B-C8g39p.js} +1 -1
  157. package/storybook-static/assets/{TreeSelect-CdxWhNPr.js → TreeSelect-B-rvlWXe.js} +1 -1
  158. package/storybook-static/assets/{TreeSelect-6ad8aM5F.js → TreeSelect-BsvnuuDK.js} +1 -1
  159. package/storybook-static/assets/{TreeSelect.stories-BMjSPnlt.js → TreeSelect.stories-Bd7RvBSv.js} +1 -1
  160. package/storybook-static/assets/{TreeTable-B10lvNT_.js → TreeTable-hKPiLJbk.js} +1 -1
  161. package/storybook-static/assets/{TreeTable.stories-BOkFmk-a.js → TreeTable.stories-DW8-8XIt.js} +1 -1
  162. package/storybook-static/assets/{async-Wscr5OK0.js → async-ClBTLJJf.js} +1 -1
  163. package/storybook-static/assets/{blocks-BkGgmJsC.js → blocks-BAkpxLLq.js} +3 -3
  164. package/storybook-static/assets/{browserAndReact-BKmF0BgP.js → browserAndReact-CVEbp_eh.js} +1 -1
  165. package/storybook-static/assets/{check-uBaZUURY.js → check-BI1SJVLE.js} +1 -1
  166. package/storybook-static/assets/{chevron-down-DbISRZCX.js → chevron-down-C8Jy-MyE.js} +1 -1
  167. package/storybook-static/assets/{chevron-left-Cb-kl5mh.js → chevron-left-BY47fHoH.js} +1 -1
  168. package/storybook-static/assets/{chevron-right-D99XGTe7.js → chevron-right-Uoc3pHM2.js} +1 -1
  169. package/storybook-static/assets/{chunk-W22LQPXL-D3-dGAP5.js → chunk-W22LQPXL-CL5_k7w9.js} +1 -1
  170. package/storybook-static/assets/{circle-alert-CxdnePpP.js → circle-alert-DmeiIhJa.js} +1 -1
  171. package/storybook-static/assets/{circle-check-DxbzyOrj.js → circle-check-DiYKn1po.js} +1 -1
  172. package/storybook-static/assets/{components-NKMCS9u_.js → components-CvASwB3y.js} +3 -3
  173. package/storybook-static/assets/{contextMenu-CrE8d-C8.js → contextMenu-CnFw0q-x.js} +1 -1
  174. package/storybook-static/assets/{defaultRenderers-DLjGcYhl.js → defaultRenderers-BvRfeq-t.js} +1 -1
  175. package/storybook-static/assets/{download-B34Dyboo.js → download-9zZQxSfv.js} +1 -1
  176. package/storybook-static/assets/{filesAndExcel-D0WmBd17.js → filesAndExcel-BEg-oUnG.js} +1 -1
  177. package/storybook-static/assets/{floating-ui.react-CHmsuwKl.js → floating-ui.react-1JhRQUPm.js} +1 -1
  178. package/storybook-static/assets/{formatters-B5IRTBCO.js → formatters-CXfVcFH6.js} +1 -1
  179. package/storybook-static/assets/{formatters-runtime-DIIzhbds.js → formatters-runtime-BUROwHGI.js} +1 -1
  180. package/storybook-static/assets/{foundationLib-CVhEJ6js.js → foundationLib-BIERdAtE.js} +1 -1
  181. package/storybook-static/assets/{hooks-BDibLnHt.js → hooks-CU6FIrkU.js} +1 -1
  182. package/storybook-static/assets/{iframe-CD1cMwos.js → iframe-CyRHAH4o.js} +3 -3
  183. package/storybook-static/assets/iframe-DMUTCGyI.js +1 -0
  184. package/storybook-static/assets/{info-YWjqfWxe.js → info-vRwdpcvs.js} +1 -1
  185. package/storybook-static/assets/{odata-D3YkIfXJ.js → odata-BeK1NpdX.js} +1 -1
  186. package/storybook-static/assets/{odataAndTables-C2flJmi6.js → odataAndTables-BsGyKbV-.js} +1 -1
  187. package/storybook-static/assets/{odataFetchFn-DHf6YwiM.js → odataFetchFn-CBB59F7H.js} +1 -1
  188. package/storybook-static/assets/{odataStoryFixtures-C7XqnT73.js → odataStoryFixtures-D7UlbX90.js} +1 -1
  189. package/storybook-static/assets/{persisted-CKfZAtRr.js → persisted-C-zkxkWy.js} +1 -1
  190. package/storybook-static/assets/{pureUtilities-Bwoj6fXN.js → pureUtilities-BhlI4P36.js} +1 -1
  191. package/storybook-static/assets/{react-BONe4qKn.js → react-4VaPHlD7.js} +1 -1
  192. package/storybook-static/assets/{refresh-cw-DpHq4LQP.js → refresh-cw-koABHMz2.js} +1 -1
  193. package/storybook-static/assets/{runtimeAndState-DsHleu6Y.js → runtimeAndState-DCiPKg2b.js} +1 -1
  194. package/storybook-static/assets/{settings-2-Dz6u0Wf2.js → settings-2-B-UnKmoE.js} +1 -1
  195. package/storybook-static/assets/{sortable-VOkfa1Z-.js → sortable-Cof-YMaC.js} +1 -1
  196. package/storybook-static/assets/{syntaxhighlighter-T5IQBZDB-C4OOYkZu.js → syntaxhighlighter-T5IQBZDB-C1dGYx2A.js} +1 -1
  197. package/storybook-static/assets/{trash-2-DTPcXUiI.js → trash-2-DIKrAYpi.js} +1 -1
  198. package/storybook-static/assets/{triangle-alert-DUI5nsd3.js → triangle-alert-3L0K5wrt.js} +1 -1
  199. package/storybook-static/assets/{useODataSelectBase-BpntR4Iz.js → useODataSelectBase-Cn7uL1Y6.js} +1 -1
  200. package/storybook-static/assets/{useODataTreeData-C2vzjXPp.js → useODataTreeData-MmRan049.js} +1 -1
  201. package/storybook-static/assets/{usePickerQuery-BDYoi7Rg.js → usePickerQuery-Dso-ufUa.js} +1 -1
  202. package/storybook-static/assets/{usePickerTriggerController-DAUdKKpa.js → usePickerTriggerController-B-FKRrNu.js} +1 -1
  203. package/storybook-static/assets/{x-B8aXMeuU.js → x-CI99aKu3.js} +1 -1
  204. package/storybook-static/iframe.html +2 -2
  205. package/storybook-static/project.json +1 -1
  206. package/storybook-static/assets/iframe-CTou9CRA.js +0 -1
@@ -62,7 +62,7 @@ function _(_) {
62
62
  ...O,
63
63
  "aria-disabled": x || void 0,
64
64
  tabIndex: x ? -1 : 0,
65
- className: s(e.uiPanel, "scrollable surface1", x && e.disabled),
65
+ className: s(e.uiPanel, "scrollable", x && e.disabled),
66
66
  children: T.map((t, n) => {
67
67
  let r = b ? Array.isArray(R) && R.includes(t.value) : R === t.value, i = n === z;
68
68
  return /* @__PURE__ */ p("li", {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../src/listbox/Listbox.tsx"],"sourcesContent":["import { HTMLAttributes, JSX, KeyboardEvent, ReactNode, useEffect, useId, useLayoutEffect, useMemo, useRef, useState } from \"react\";\n\nimport {\n\tcn,\n\tfindFirstEnabledIndex,\n\tfindLastEnabledIndex,\n\tfindNextEnabledIndex,\n\thandleKeyboardActivation\n} from \"@ryuzaki13/react-foundation-lib/utils\";\nimport { CheckIcon } from \"lucide-react\";\n\nimport uiStyles from \"../ui.module.scss\";\n\ntype ListboxOption<T> = {\n\tvalue: T;\n\tlabel?: string;\n\tdisabled?: boolean;\n};\n\ninterface ListboxBaseProps<T> extends Omit<HTMLAttributes<HTMLUListElement>, \"onChange\" | \"defaultValue\" | \"value\"> {\n\toptions: ListboxOption<T>[];\n\tdisabled?: boolean;\n\tfocusOnMount?: boolean;\n\trenderItem?: (option: ListboxOption<T>, selected: boolean, active: boolean) => ReactNode;\n\tgetKey?: (option: ListboxOption<T>, index: number) => string;\n}\n\n// Вариант для single-select\ninterface ListboxSingleProps<T> extends ListboxBaseProps<T> {\n\tmultiple?: false;\n\tvalue?: T;\n\tdefaultValue?: T;\n\tonChange?: (value: T, option: ListboxOption<T>) => void;\n}\n\n// Вариант для multi-select\ninterface ListboxMultiProps<T> extends ListboxBaseProps<T> {\n\tmultiple: true;\n\tvalue?: T[];\n\tdefaultValue?: T[];\n\tonChange?: (value: T[], option: ListboxOption<T>) => void;\n}\n\ntype ListboxProps<T> = ListboxSingleProps<T> | ListboxMultiProps<T>;\n\nconst isOptionDisabled = <T,>(option: ListboxOption<T>) => option.disabled === true;\n\nfunction getInitialFocusIndex<T>(options: ListboxOption<T>[], value: T | T[] | undefined, multiple: boolean | undefined) {\n\tif (multiple) {\n\t\tif (Array.isArray(value) && value.length > 0) {\n\t\t\tconst selectedIndex = options.findIndex((option) => value.includes(option.value) && !option.disabled);\n\t\t\tif (selectedIndex >= 0) {\n\t\t\t\treturn selectedIndex;\n\t\t\t}\n\t\t}\n\n\t\treturn findFirstEnabledIndex(options, isOptionDisabled);\n\t}\n\n\tif (value !== undefined) {\n\t\tconst selectedIndex = options.findIndex((option) => option.value === value && !option.disabled);\n\t\tif (selectedIndex >= 0) {\n\t\t\treturn selectedIndex;\n\t\t}\n\t}\n\n\treturn findFirstEnabledIndex(options, isOptionDisabled);\n}\n\n/**\n * Компонент выбора одного или нескольких элементов из списка. Поддерживает controlled API, поиск по данным и рендер кастомных опций.\n */\nexport function Listbox<T>(props: ListboxSingleProps<T>): JSX.Element;\nexport function Listbox<T>(props: ListboxMultiProps<T>): JSX.Element;\nexport function Listbox<T>(props: ListboxProps<T>): JSX.Element {\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tconst { value, defaultValue, multiple, disabled, focusOnMount, renderItem, getKey, options, onChange, id: externalId, ...rest } = props;\n\n\tconst isControlled = value !== undefined;\n\tconst autoId = useId();\n\tconst listId = externalId ?? `${autoId}-listbox`;\n\tconst [internalValue, setInternalValue] = useState<T | T[] | undefined>(defaultValue);\n\tconst listRef = useRef<HTMLUListElement>(null);\n\tconst [focusedIndex, setFocusedIndex] = useState(() => getInitialFocusIndex(options, value ?? defaultValue, multiple));\n\t/**\n\t * Прокрутка нужна только после клавиатурной навигации. Это не даёт монтированию и Fast Refresh\n\t * вызывать scrollIntoView, который иначе прокручивает внешнюю страницу до Listbox.\n\t */\n\tconst shouldScrollActiveOptionRef = useRef(false);\n\n\tconst selectedValues = useMemo(\n\t\t() => (isControlled ? value : internalValue) ?? (multiple ? [] : null),\n\t\t[internalValue, isControlled, multiple, value]\n\t);\n\tconst activeIndex = focusedIndex;\n\n\tconst handleSelect = (option: ListboxOption<T>) => {\n\t\tif (disabled || option.disabled) return;\n\n\t\tlet newValue: T | T[];\n\t\tif (props.multiple) {\n\t\t\tconst arr = Array.isArray(selectedValues) ? selectedValues : [];\n\t\t\tnewValue = arr.includes(option.value) ? arr.filter((v) => v !== option.value) : [...arr, option.value];\n\n\t\t\tprops.onChange?.(newValue, option);\n\t\t} else {\n\t\t\tnewValue = option.value;\n\n\t\t\tprops.onChange?.(newValue, option);\n\t\t}\n\n\t\tif (!isControlled) setInternalValue(newValue);\n\t};\n\n\tconst handleKeyDown = (e: KeyboardEvent<HTMLUListElement>) => {\n\t\tif (disabled) return;\n\n\t\tif (e.key === \"ArrowDown\") {\n\t\t\te.preventDefault();\n\t\t\tshouldScrollActiveOptionRef.current = true;\n\t\t\t// setHoveredIndex(null);\n\t\t\tsetFocusedIndex((index) => findNextEnabledIndex(options, index, 1, isOptionDisabled));\n\t\t} else if (e.key === \"ArrowUp\") {\n\t\t\te.preventDefault();\n\t\t\tshouldScrollActiveOptionRef.current = true;\n\t\t\t// setHoveredIndex(null);\n\t\t\tsetFocusedIndex((index) => findNextEnabledIndex(options, index, -1, isOptionDisabled));\n\t\t} else if (e.key === \"Home\") {\n\t\t\te.preventDefault();\n\t\t\tshouldScrollActiveOptionRef.current = true;\n\t\t\t// setHoveredIndex(null);\n\t\t\tsetFocusedIndex(findFirstEnabledIndex(options, isOptionDisabled));\n\t\t} else if (e.key === \"End\") {\n\t\t\te.preventDefault();\n\t\t\tshouldScrollActiveOptionRef.current = true;\n\t\t\t// setHoveredIndex(null);\n\t\t\tsetFocusedIndex(findLastEnabledIndex(options, isOptionDisabled));\n\t\t} else if (\n\t\t\thandleKeyboardActivation(e, () => {\n\t\t\t\tconst activeOption = options[activeIndex];\n\t\t\t\tif (activeOption) {\n\t\t\t\t\thandleSelect(activeOption);\n\t\t\t\t}\n\t\t\t})\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t};\n\n\tuseEffect(() => {\n\t\tif (!shouldScrollActiveOptionRef.current) return;\n\n\t\tshouldScrollActiveOptionRef.current = false;\n\t\tconst el = listRef.current?.querySelectorAll<HTMLElement>('[role=\"option\"]')[activeIndex];\n\t\tif (el) el.scrollIntoView({ block: \"nearest\" });\n\t}, [activeIndex]);\n\n\tuseLayoutEffect(() => {\n\t\tif (focusOnMount) {\n\t\t\tlistRef.current?.focus();\n\t\t}\n\t}, [focusOnMount]);\n\n\treturn (\n\t\t<ul\n\t\t\tref={listRef}\n\t\t\tid={listId}\n\t\t\trole=\"listbox\"\n\t\t\taria-multiselectable={multiple || undefined}\n\t\t\taria-activedescendant={activeIndex >= 0 ? `${listId}-option-${activeIndex}` : undefined}\n\t\t\tonKeyDown={handleKeyDown}\n\t\t\t{...rest}\n\t\t\taria-disabled={disabled || undefined}\n\t\t\ttabIndex={disabled ? -1 : 0}\n\t\t\tclassName={cn(uiStyles.uiPanel, \"scrollable surface1\", disabled && uiStyles.disabled)}>\n\t\t\t{options.map((option, index) => {\n\t\t\t\tconst selected = multiple\n\t\t\t\t\t? Array.isArray(selectedValues) && selectedValues.includes(option.value)\n\t\t\t\t\t: selectedValues === option.value;\n\t\t\t\tconst active = index === activeIndex;\n\n\t\t\t\treturn (\n\t\t\t\t\t<li\n\t\t\t\t\t\tkey={getKey ? getKey(option, index) : index}\n\t\t\t\t\t\tid={`${listId}-option-${index}`}\n\t\t\t\t\t\trole=\"option\"\n\t\t\t\t\t\taria-selected={selected}\n\t\t\t\t\t\taria-disabled={disabled || option.disabled || undefined}\n\t\t\t\t\t\tonMouseDown={(e) => {\n\t\t\t\t\t\t\te.preventDefault(); // чтобы не сбрасывался фокус listbox\n\t\t\t\t\t\t\tif (disabled || option.disabled) {\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsetFocusedIndex(index);\n\t\t\t\t\t\t\thandleSelect(option);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\ttabIndex={-1}\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\tuiStyles.uiPopupOption,\n\t\t\t\t\t\t\t(disabled || option.disabled) && uiStyles.disabled,\n\t\t\t\t\t\t\tactive && uiStyles.uiPopupOptionActive,\n\t\t\t\t\t\t\tselected && uiStyles.selected\n\t\t\t\t\t\t)}>\n\t\t\t\t\t\t{selected ? (\n\t\t\t\t\t\t\t<CheckIcon className={uiStyles.uiPopupOptionIcon} />\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<span className={uiStyles.uiPopupOptionIcon}></span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<div /*className={uiStyles.uiOptionText}*/>\n\t\t\t\t\t\t\t{renderItem ? renderItem(option, selected, active) : (option.label ?? String(option.value))}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</li>\n\t\t\t\t);\n\t\t\t})}\n\t\t</ul>\n\t);\n}\n"],"mappings":";;;;;;AA6CA,IAAM,KAAwB,MAA6B,EAAO,aAAa;AAE/E,SAAS,EAAwB,GAA6B,GAA4B,GAA+B;CACxH,IAAI,GAAU;EACb,IAAI,MAAM,QAAQ,CAAK,KAAK,EAAM,SAAS,GAAG;GAC7C,IAAM,IAAgB,EAAQ,WAAW,MAAW,EAAM,SAAS,EAAO,KAAK,KAAK,CAAC,EAAO,QAAQ;GACpG,IAAI,KAAiB,GACpB,OAAO;EAET;EAEA,OAAO,EAAsB,GAAS,CAAgB;CACvD;CAEA,IAAI,MAAU,KAAA,GAAW;EACxB,IAAM,IAAgB,EAAQ,WAAW,MAAW,EAAO,UAAU,KAAS,CAAC,EAAO,QAAQ;EAC9F,IAAI,KAAiB,GACpB,OAAO;CAET;CAEA,OAAO,EAAsB,GAAS,CAAgB;AACvD;AAOA,SAAgB,EAAW,GAAqC;CAE/D,IAAM,EAAE,UAAO,iBAAc,aAAU,aAAU,iBAAc,eAAY,WAAQ,YAAS,aAAU,IAAI,GAAY,GAAG,MAAS,GAE5H,IAAe,MAAU,KAAA,GACzB,IAAS,EAAM,GACf,IAAS,KAAc,GAAG,EAAO,WACjC,CAAC,GAAe,KAAoB,EAA8B,CAAY,GAC9E,IAAU,EAAyB,IAAI,GACvC,CAAC,GAAc,KAAmB,QAAe,EAAqB,GAAS,KAAS,GAAc,CAAQ,CAAC,GAK/G,IAA8B,EAAO,EAAK,GAE1C,IAAiB,SACf,IAAe,IAAQ,OAAmB,IAAW,CAAC,IAAI,OACjE;EAAC;EAAe;EAAc;EAAU;CAAK,CAC9C,GACM,IAAc,GAEd,KAAgB,MAA6B;EAClD,IAAI,KAAY,EAAO,UAAU;EAEjC,IAAI;EACJ,IAAI,EAAM,UAAU;GACnB,IAAM,IAAM,MAAM,QAAQ,CAAc,IAAI,IAAiB,CAAC;GAG9D,AAFA,IAAW,EAAI,SAAS,EAAO,KAAK,IAAI,EAAI,QAAQ,MAAM,MAAM,EAAO,KAAK,IAAI,CAAC,GAAG,GAAK,EAAO,KAAK,GAErG,EAAM,WAAW,GAAU,CAAM;EAClC,OAGC,AAFA,IAAW,EAAO,OAElB,EAAM,WAAW,GAAU,CAAM;EAGlC,AAAK,KAAc,EAAiB,CAAQ;CAC7C;CAmDA,OAdA,QAAgB;EACf,IAAI,CAAC,EAA4B,SAAS;EAE1C,EAA4B,UAAU;EACtC,IAAM,IAAK,EAAQ,SAAS,iBAA8B,mBAAiB,CAAC,CAAC;EAC7E,AAAI,KAAI,EAAG,eAAe,EAAE,OAAO,UAAU,CAAC;CAC/C,GAAG,CAAC,CAAW,CAAC,GAEhB,QAAsB;EACrB,AAAI,KACH,EAAQ,SAAS,MAAM;CAEzB,GAAG,CAAC,CAAY,CAAC,GAGhB,kBAAC,MAAD;EACC,KAAK;EACL,IAAI;EACJ,MAAK;EACL,wBAAsB,KAAY,KAAA;EAClC,yBAAuB,KAAe,IAAI,GAAG,EAAO,UAAU,MAAgB,KAAA;EAC9E,YAxDqB,MAAuC;GACzD,QAEJ;QAAI,EAAE,QAAQ,aAIb,AAHA,EAAE,eAAe,GACjB,EAA4B,UAAU,IAEtC,GAAiB,MAAU,EAAqB,GAAS,GAAO,GAAG,CAAgB,CAAC;SAC9E,IAAI,EAAE,QAAQ,WAIpB,AAHA,EAAE,eAAe,GACjB,EAA4B,UAAU,IAEtC,GAAiB,MAAU,EAAqB,GAAS,GAAO,IAAI,CAAgB,CAAC;SAC/E,IAAI,EAAE,QAAQ,QAIpB,AAHA,EAAE,eAAe,GACjB,EAA4B,UAAU,IAEtC,EAAgB,EAAsB,GAAS,CAAgB,CAAC;SAC1D,IAAI,EAAE,QAAQ,OAIpB,AAHA,EAAE,eAAe,GACjB,EAA4B,UAAU,IAEtC,EAAgB,EAAqB,GAAS,CAAgB,CAAC;SACzD,IACN,EAAyB,SAAS;KACjC,IAAM,IAAe,EAAQ;KAC7B,AAAI,KACH,EAAa,CAAY;IAE3B,CAAC,GAED;GAAA;EAEF;EAwBE,GAAI;EACJ,iBAAe,KAAY,KAAA;EAC3B,UAAU,IAAW,KAAK;EAC1B,WAAW,EAAG,EAAS,SAAS,uBAAuB,KAAY,EAAS,QAAQ;EACnF,UAAA,EAAQ,KAAK,GAAQ,MAAU;GAC/B,IAAM,IAAW,IACd,MAAM,QAAQ,CAAc,KAAK,EAAe,SAAS,EAAO,KAAK,IACrE,MAAmB,EAAO,OACvB,IAAS,MAAU;GAEzB,OACC,kBAAC,MAAD;IAEC,IAAI,GAAG,EAAO,UAAU;IACxB,MAAK;IACL,iBAAe;IACf,iBAAe,KAAY,EAAO,YAAY,KAAA;IAC9C,cAAc,MAAM;KACnB,EAAE,eAAe,GACb,OAAY,EAAO,cAGvB,EAAgB,CAAK,GACrB,EAAa,CAAM;IACpB;IACA,UAAU;IACV,WAAW,EACV,EAAS,gBACR,KAAY,EAAO,aAAa,EAAS,UAC1C,KAAU,EAAS,qBACnB,KAAY,EAAS,QACtB;IApBD,UAAA,CAsBE,EADA,IACC,IAEA,QAFD,EAAW,WAAW,EAAS,kBAAoB,CAEA,GAEpD,kBAAC,OAAD,EAAA,UACE,IAAa,EAAW,GAAQ,GAAU,CAAM,IAAK,EAAO,SAAS,OAAO,EAAO,KAAK,EACrF,CAAA,CACF;GA5BE,GAAA,IAAS,EAAO,GAAQ,CAAK,IAAI,CA4BnC;EAEN,CAAC;CACE,CAAA;AAEN"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../src/listbox/Listbox.tsx"],"sourcesContent":["import { HTMLAttributes, JSX, KeyboardEvent, ReactNode, useEffect, useId, useLayoutEffect, useMemo, useRef, useState } from \"react\";\n\nimport {\n\tcn,\n\tfindFirstEnabledIndex,\n\tfindLastEnabledIndex,\n\tfindNextEnabledIndex,\n\thandleKeyboardActivation\n} from \"@ryuzaki13/react-foundation-lib/utils\";\nimport { CheckIcon } from \"lucide-react\";\n\nimport uiStyles from \"../ui.module.scss\";\n\ntype ListboxOption<T> = {\n\tvalue: T;\n\tlabel?: string;\n\tdisabled?: boolean;\n};\n\ninterface ListboxBaseProps<T> extends Omit<HTMLAttributes<HTMLUListElement>, \"onChange\" | \"defaultValue\" | \"value\"> {\n\toptions: ListboxOption<T>[];\n\tdisabled?: boolean;\n\tfocusOnMount?: boolean;\n\trenderItem?: (option: ListboxOption<T>, selected: boolean, active: boolean) => ReactNode;\n\tgetKey?: (option: ListboxOption<T>, index: number) => string;\n}\n\n// Вариант для single-select\ninterface ListboxSingleProps<T> extends ListboxBaseProps<T> {\n\tmultiple?: false;\n\tvalue?: T;\n\tdefaultValue?: T;\n\tonChange?: (value: T, option: ListboxOption<T>) => void;\n}\n\n// Вариант для multi-select\ninterface ListboxMultiProps<T> extends ListboxBaseProps<T> {\n\tmultiple: true;\n\tvalue?: T[];\n\tdefaultValue?: T[];\n\tonChange?: (value: T[], option: ListboxOption<T>) => void;\n}\n\ntype ListboxProps<T> = ListboxSingleProps<T> | ListboxMultiProps<T>;\n\nconst isOptionDisabled = <T,>(option: ListboxOption<T>) => option.disabled === true;\n\nfunction getInitialFocusIndex<T>(options: ListboxOption<T>[], value: T | T[] | undefined, multiple: boolean | undefined) {\n\tif (multiple) {\n\t\tif (Array.isArray(value) && value.length > 0) {\n\t\t\tconst selectedIndex = options.findIndex((option) => value.includes(option.value) && !option.disabled);\n\t\t\tif (selectedIndex >= 0) {\n\t\t\t\treturn selectedIndex;\n\t\t\t}\n\t\t}\n\n\t\treturn findFirstEnabledIndex(options, isOptionDisabled);\n\t}\n\n\tif (value !== undefined) {\n\t\tconst selectedIndex = options.findIndex((option) => option.value === value && !option.disabled);\n\t\tif (selectedIndex >= 0) {\n\t\t\treturn selectedIndex;\n\t\t}\n\t}\n\n\treturn findFirstEnabledIndex(options, isOptionDisabled);\n}\n\n/**\n * Компонент выбора одного или нескольких элементов из списка. Поддерживает controlled API, поиск по данным и рендер кастомных опций.\n */\nexport function Listbox<T>(props: ListboxSingleProps<T>): JSX.Element;\nexport function Listbox<T>(props: ListboxMultiProps<T>): JSX.Element;\nexport function Listbox<T>(props: ListboxProps<T>): JSX.Element {\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tconst { value, defaultValue, multiple, disabled, focusOnMount, renderItem, getKey, options, onChange, id: externalId, ...rest } = props;\n\n\tconst isControlled = value !== undefined;\n\tconst autoId = useId();\n\tconst listId = externalId ?? `${autoId}-listbox`;\n\tconst [internalValue, setInternalValue] = useState<T | T[] | undefined>(defaultValue);\n\tconst listRef = useRef<HTMLUListElement>(null);\n\tconst [focusedIndex, setFocusedIndex] = useState(() => getInitialFocusIndex(options, value ?? defaultValue, multiple));\n\t/**\n\t * Прокрутка нужна только после клавиатурной навигации. Это не даёт монтированию и Fast Refresh\n\t * вызывать scrollIntoView, который иначе прокручивает внешнюю страницу до Listbox.\n\t */\n\tconst shouldScrollActiveOptionRef = useRef(false);\n\n\tconst selectedValues = useMemo(\n\t\t() => (isControlled ? value : internalValue) ?? (multiple ? [] : null),\n\t\t[internalValue, isControlled, multiple, value]\n\t);\n\tconst activeIndex = focusedIndex;\n\n\tconst handleSelect = (option: ListboxOption<T>) => {\n\t\tif (disabled || option.disabled) return;\n\n\t\tlet newValue: T | T[];\n\t\tif (props.multiple) {\n\t\t\tconst arr = Array.isArray(selectedValues) ? selectedValues : [];\n\t\t\tnewValue = arr.includes(option.value) ? arr.filter((v) => v !== option.value) : [...arr, option.value];\n\n\t\t\tprops.onChange?.(newValue, option);\n\t\t} else {\n\t\t\tnewValue = option.value;\n\n\t\t\tprops.onChange?.(newValue, option);\n\t\t}\n\n\t\tif (!isControlled) setInternalValue(newValue);\n\t};\n\n\tconst handleKeyDown = (e: KeyboardEvent<HTMLUListElement>) => {\n\t\tif (disabled) return;\n\n\t\tif (e.key === \"ArrowDown\") {\n\t\t\te.preventDefault();\n\t\t\tshouldScrollActiveOptionRef.current = true;\n\t\t\t// setHoveredIndex(null);\n\t\t\tsetFocusedIndex((index) => findNextEnabledIndex(options, index, 1, isOptionDisabled));\n\t\t} else if (e.key === \"ArrowUp\") {\n\t\t\te.preventDefault();\n\t\t\tshouldScrollActiveOptionRef.current = true;\n\t\t\t// setHoveredIndex(null);\n\t\t\tsetFocusedIndex((index) => findNextEnabledIndex(options, index, -1, isOptionDisabled));\n\t\t} else if (e.key === \"Home\") {\n\t\t\te.preventDefault();\n\t\t\tshouldScrollActiveOptionRef.current = true;\n\t\t\t// setHoveredIndex(null);\n\t\t\tsetFocusedIndex(findFirstEnabledIndex(options, isOptionDisabled));\n\t\t} else if (e.key === \"End\") {\n\t\t\te.preventDefault();\n\t\t\tshouldScrollActiveOptionRef.current = true;\n\t\t\t// setHoveredIndex(null);\n\t\t\tsetFocusedIndex(findLastEnabledIndex(options, isOptionDisabled));\n\t\t} else if (\n\t\t\thandleKeyboardActivation(e, () => {\n\t\t\t\tconst activeOption = options[activeIndex];\n\t\t\t\tif (activeOption) {\n\t\t\t\t\thandleSelect(activeOption);\n\t\t\t\t}\n\t\t\t})\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t};\n\n\tuseEffect(() => {\n\t\tif (!shouldScrollActiveOptionRef.current) return;\n\n\t\tshouldScrollActiveOptionRef.current = false;\n\t\tconst el = listRef.current?.querySelectorAll<HTMLElement>('[role=\"option\"]')[activeIndex];\n\t\tif (el) el.scrollIntoView({ block: \"nearest\" });\n\t}, [activeIndex]);\n\n\tuseLayoutEffect(() => {\n\t\tif (focusOnMount) {\n\t\t\tlistRef.current?.focus();\n\t\t}\n\t}, [focusOnMount]);\n\n\treturn (\n\t\t<ul\n\t\t\tref={listRef}\n\t\t\tid={listId}\n\t\t\trole=\"listbox\"\n\t\t\taria-multiselectable={multiple || undefined}\n\t\t\taria-activedescendant={activeIndex >= 0 ? `${listId}-option-${activeIndex}` : undefined}\n\t\t\tonKeyDown={handleKeyDown}\n\t\t\t{...rest}\n\t\t\taria-disabled={disabled || undefined}\n\t\t\ttabIndex={disabled ? -1 : 0}\n\t\t\tclassName={cn(uiStyles.uiPanel, \"scrollable\", disabled && uiStyles.disabled)}>\n\t\t\t{options.map((option, index) => {\n\t\t\t\tconst selected = multiple\n\t\t\t\t\t? Array.isArray(selectedValues) && selectedValues.includes(option.value)\n\t\t\t\t\t: selectedValues === option.value;\n\t\t\t\tconst active = index === activeIndex;\n\n\t\t\t\treturn (\n\t\t\t\t\t<li\n\t\t\t\t\t\tkey={getKey ? getKey(option, index) : index}\n\t\t\t\t\t\tid={`${listId}-option-${index}`}\n\t\t\t\t\t\trole=\"option\"\n\t\t\t\t\t\taria-selected={selected}\n\t\t\t\t\t\taria-disabled={disabled || option.disabled || undefined}\n\t\t\t\t\t\tonMouseDown={(e) => {\n\t\t\t\t\t\t\te.preventDefault(); // чтобы не сбрасывался фокус listbox\n\t\t\t\t\t\t\tif (disabled || option.disabled) {\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsetFocusedIndex(index);\n\t\t\t\t\t\t\thandleSelect(option);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\ttabIndex={-1}\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\tuiStyles.uiPopupOption,\n\t\t\t\t\t\t\t(disabled || option.disabled) && uiStyles.disabled,\n\t\t\t\t\t\t\tactive && uiStyles.uiPopupOptionActive,\n\t\t\t\t\t\t\tselected && uiStyles.selected\n\t\t\t\t\t\t)}>\n\t\t\t\t\t\t{selected ? (\n\t\t\t\t\t\t\t<CheckIcon className={uiStyles.uiPopupOptionIcon} />\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<span className={uiStyles.uiPopupOptionIcon}></span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<div /*className={uiStyles.uiOptionText}*/>\n\t\t\t\t\t\t\t{renderItem ? renderItem(option, selected, active) : (option.label ?? String(option.value))}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</li>\n\t\t\t\t);\n\t\t\t})}\n\t\t</ul>\n\t);\n}\n"],"mappings":";;;;;;AA6CA,IAAM,KAAwB,MAA6B,EAAO,aAAa;AAE/E,SAAS,EAAwB,GAA6B,GAA4B,GAA+B;CACxH,IAAI,GAAU;EACb,IAAI,MAAM,QAAQ,CAAK,KAAK,EAAM,SAAS,GAAG;GAC7C,IAAM,IAAgB,EAAQ,WAAW,MAAW,EAAM,SAAS,EAAO,KAAK,KAAK,CAAC,EAAO,QAAQ;GACpG,IAAI,KAAiB,GACpB,OAAO;EAET;EAEA,OAAO,EAAsB,GAAS,CAAgB;CACvD;CAEA,IAAI,MAAU,KAAA,GAAW;EACxB,IAAM,IAAgB,EAAQ,WAAW,MAAW,EAAO,UAAU,KAAS,CAAC,EAAO,QAAQ;EAC9F,IAAI,KAAiB,GACpB,OAAO;CAET;CAEA,OAAO,EAAsB,GAAS,CAAgB;AACvD;AAOA,SAAgB,EAAW,GAAqC;CAE/D,IAAM,EAAE,UAAO,iBAAc,aAAU,aAAU,iBAAc,eAAY,WAAQ,YAAS,aAAU,IAAI,GAAY,GAAG,MAAS,GAE5H,IAAe,MAAU,KAAA,GACzB,IAAS,EAAM,GACf,IAAS,KAAc,GAAG,EAAO,WACjC,CAAC,GAAe,KAAoB,EAA8B,CAAY,GAC9E,IAAU,EAAyB,IAAI,GACvC,CAAC,GAAc,KAAmB,QAAe,EAAqB,GAAS,KAAS,GAAc,CAAQ,CAAC,GAK/G,IAA8B,EAAO,EAAK,GAE1C,IAAiB,SACf,IAAe,IAAQ,OAAmB,IAAW,CAAC,IAAI,OACjE;EAAC;EAAe;EAAc;EAAU;CAAK,CAC9C,GACM,IAAc,GAEd,KAAgB,MAA6B;EAClD,IAAI,KAAY,EAAO,UAAU;EAEjC,IAAI;EACJ,IAAI,EAAM,UAAU;GACnB,IAAM,IAAM,MAAM,QAAQ,CAAc,IAAI,IAAiB,CAAC;GAG9D,AAFA,IAAW,EAAI,SAAS,EAAO,KAAK,IAAI,EAAI,QAAQ,MAAM,MAAM,EAAO,KAAK,IAAI,CAAC,GAAG,GAAK,EAAO,KAAK,GAErG,EAAM,WAAW,GAAU,CAAM;EAClC,OAGC,AAFA,IAAW,EAAO,OAElB,EAAM,WAAW,GAAU,CAAM;EAGlC,AAAK,KAAc,EAAiB,CAAQ;CAC7C;CAmDA,OAdA,QAAgB;EACf,IAAI,CAAC,EAA4B,SAAS;EAE1C,EAA4B,UAAU;EACtC,IAAM,IAAK,EAAQ,SAAS,iBAA8B,mBAAiB,CAAC,CAAC;EAC7E,AAAI,KAAI,EAAG,eAAe,EAAE,OAAO,UAAU,CAAC;CAC/C,GAAG,CAAC,CAAW,CAAC,GAEhB,QAAsB;EACrB,AAAI,KACH,EAAQ,SAAS,MAAM;CAEzB,GAAG,CAAC,CAAY,CAAC,GAGhB,kBAAC,MAAD;EACC,KAAK;EACL,IAAI;EACJ,MAAK;EACL,wBAAsB,KAAY,KAAA;EAClC,yBAAuB,KAAe,IAAI,GAAG,EAAO,UAAU,MAAgB,KAAA;EAC9E,YAxDqB,MAAuC;GACzD,QAEJ;QAAI,EAAE,QAAQ,aAIb,AAHA,EAAE,eAAe,GACjB,EAA4B,UAAU,IAEtC,GAAiB,MAAU,EAAqB,GAAS,GAAO,GAAG,CAAgB,CAAC;SAC9E,IAAI,EAAE,QAAQ,WAIpB,AAHA,EAAE,eAAe,GACjB,EAA4B,UAAU,IAEtC,GAAiB,MAAU,EAAqB,GAAS,GAAO,IAAI,CAAgB,CAAC;SAC/E,IAAI,EAAE,QAAQ,QAIpB,AAHA,EAAE,eAAe,GACjB,EAA4B,UAAU,IAEtC,EAAgB,EAAsB,GAAS,CAAgB,CAAC;SAC1D,IAAI,EAAE,QAAQ,OAIpB,AAHA,EAAE,eAAe,GACjB,EAA4B,UAAU,IAEtC,EAAgB,EAAqB,GAAS,CAAgB,CAAC;SACzD,IACN,EAAyB,SAAS;KACjC,IAAM,IAAe,EAAQ;KAC7B,AAAI,KACH,EAAa,CAAY;IAE3B,CAAC,GAED;GAAA;EAEF;EAwBE,GAAI;EACJ,iBAAe,KAAY,KAAA;EAC3B,UAAU,IAAW,KAAK;EAC1B,WAAW,EAAG,EAAS,SAAS,cAAc,KAAY,EAAS,QAAQ;EAC1E,UAAA,EAAQ,KAAK,GAAQ,MAAU;GAC/B,IAAM,IAAW,IACd,MAAM,QAAQ,CAAc,KAAK,EAAe,SAAS,EAAO,KAAK,IACrE,MAAmB,EAAO,OACvB,IAAS,MAAU;GAEzB,OACC,kBAAC,MAAD;IAEC,IAAI,GAAG,EAAO,UAAU;IACxB,MAAK;IACL,iBAAe;IACf,iBAAe,KAAY,EAAO,YAAY,KAAA;IAC9C,cAAc,MAAM;KACnB,EAAE,eAAe,GACb,OAAY,EAAO,cAGvB,EAAgB,CAAK,GACrB,EAAa,CAAM;IACpB;IACA,UAAU;IACV,WAAW,EACV,EAAS,gBACR,KAAY,EAAO,aAAa,EAAS,UAC1C,KAAU,EAAS,qBACnB,KAAY,EAAS,QACtB;IApBD,UAAA,CAsBE,EADA,IACC,IAEA,QAFD,EAAW,WAAW,EAAS,kBAAoB,CAEA,GAEpD,kBAAC,OAAD,EAAA,UACE,IAAa,EAAW,GAAQ,GAAU,CAAM,IAAK,EAAO,SAAS,OAAO,EAAO,KAAK,EACrF,CAAA,CACF;GA5BE,GAAA,IAAS,EAAO,GAAQ,CAAK,IAAI,CA4BnC;EAEN,CAAC;CACE,CAAA;AAEN"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ryuzaki13/react-foundation-ui",
3
- "version": "1.5.13",
3
+ "version": "1.5.14",
4
4
  "description": "Reusable React foundation UI primitives and Storybook stories.",
5
5
  "license": "MIT",
6
6
  "author": "Ryuzaki13",
@@ -1,4 +1,4 @@
1
- import{n as e}from"./rolldown-runtime-C0FnF6B9.js";import{n as t}from"./iframe-CD1cMwos.js";import{i as n,r}from"./react-qN2cStNd.js";import{a as i,d as a,f as o,l as s,m as c,n as l,p as u,r as d,u as f}from"./blocks-BkGgmJsC.js";import{a as p,i as m,n as h,o as g,r as _,s as v,t as y}from"./Badge.stories-PV88uXCB.js";function b(e){let t={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...n(),...e.components};return(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)(s,{of:h,parameters:{atomicCanvas:!0,layout:`padded`,docs:{toc:!0}}}),`
1
+ import{n as e}from"./rolldown-runtime-C0FnF6B9.js";import{n as t}from"./iframe-CyRHAH4o.js";import{i as n,r}from"./react-qN2cStNd.js";import{a as i,d as a,f as o,l as s,m as c,n as l,p as u,r as d,u as f}from"./blocks-BAkpxLLq.js";import{a as p,i as m,n as h,o as g,r as _,s as v,t as y}from"./Badge.stories-DPunJSrK.js";function b(e){let t={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...n(),...e.components};return(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)(s,{of:h,parameters:{atomicCanvas:!0,layout:`padded`,docs:{toc:!0}}}),`
2
2
  `,(0,S.jsx)(u,{children:`Badge`}),`
3
3
  `,(0,S.jsx)(o,{children:`Компактная текстовая метка для статусов, категорий, фильтров и коротких служебных пометок`}),`
4
4
  `,(0,S.jsx)(t.p,{children:`Badge подходит для коротких подписей, которые должны быстро читаться и не перегружать интерфейс:`}),`
@@ -1,4 +1,4 @@
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-CD1cMwos.js";import{i,n as a,r as o,t as s}from"./BadgeList-BMO51PtO.js";var c=t({Appearances:()=>h,Basic:()=>p,RemovableList:()=>_,Sizes:()=>g,Tones:()=>m,__namedExportsOrder:()=>v,default:()=>f}),l,u,d,f,p,m,h,g,_,v;function y(){return(y=e((()=>{l=n(),i(),a(),u=r(),{useArgs:d}=__STORYBOOK_MODULE_PREVIEW_API__,f={title:`Shared/UI/Badge`,component:o,args:{children:`Новый`,size:`md`,tone:`info`,appearance:`solid`},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{children:{description:`Текст внутри бейджа.`,control:`text`},size:{description:`Размер бейджа.`,control:`inline-radio`,options:[`xs`,`sm`,`md`,`lg`,`xl`]},tone:{description:`Цветовой тон бейджа.`,control:`inline-radio`,options:[`neutral`,`brand`,`success`,`warning`,`error`,`info`]},appearance:{description:`Форма бейджа.`,control:`inline-radio`,options:[`solid`,`outline`,`ghost`,`transparent`]},onRemove:{description:`Показывает кнопку удаления и вызывает обработчик по клику.`,control:!1}}},p={render:function(){let[e]=d();return(0,u.jsx)(o,{...e})}},m={render:()=>(0,u.jsxs)(s,{children:[(0,u.jsx)(o,{tone:`neutral`,appearance:`outline`,children:`Neutral`}),(0,u.jsx)(o,{tone:`success`,appearance:`solid`,children:`Успешно`}),(0,u.jsx)(o,{tone:`warning`,appearance:`solid`,children:`Внимание`}),(0,u.jsx)(o,{tone:`error`,appearance:`solid`,children:`Ошибка`}),(0,u.jsx)(o,{tone:`info`,appearance:`solid`,children:`Информация`})]})},h={render:()=>(0,u.jsxs)(s,{children:[(0,u.jsx)(o,{tone:`neutral`,appearance:`solid`,children:`Solid`}),(0,u.jsx)(o,{tone:`neutral`,appearance:`outline`,children:`Outline`}),(0,u.jsx)(o,{tone:`info`,appearance:`ghost`,children:`Ghost`}),(0,u.jsx)(o,{tone:`warning`,appearance:`transparent`,children:`Transparent`})]})},g={render:()=>(0,u.jsxs)(s,{children:[(0,u.jsx)(o,{size:`xs`,children:`Extra Small`}),(0,u.jsx)(o,{size:`sm`,children:`Small`}),(0,u.jsx)(o,{size:`md`,children:`Medium`}),(0,u.jsx)(o,{size:`lg`,children:`Large`}),(0,u.jsx)(o,{size:`xl`,children:`Extra Large`})]})},_={render:()=>{let[e,t]=(0,l.useState)([`Фильтр A`,`Фильтр B`,`Фильтр C`]);return(0,u.jsx)(s,{children:e.map(e=>(0,u.jsx)(o,{tone:`info`,appearance:`outline`,onRemove:()=>t(t=>t.filter(t=>t!==e)),children:e},e))})}},p.parameters={...p.parameters,docs:{...p.parameters?.docs,source:{originalSource:`{
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{i,n as a,r as o,t as s}from"./BadgeList-Baj24Y_J.js";var c=t({Appearances:()=>h,Basic:()=>p,RemovableList:()=>_,Sizes:()=>g,Tones:()=>m,__namedExportsOrder:()=>v,default:()=>f}),l,u,d,f,p,m,h,g,_,v;function y(){return(y=e((()=>{l=n(),i(),a(),u=r(),{useArgs:d}=__STORYBOOK_MODULE_PREVIEW_API__,f={title:`Shared/UI/Badge`,component:o,args:{children:`Новый`,size:`md`,tone:`info`,appearance:`solid`},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{children:{description:`Текст внутри бейджа.`,control:`text`},size:{description:`Размер бейджа.`,control:`inline-radio`,options:[`xs`,`sm`,`md`,`lg`,`xl`]},tone:{description:`Цветовой тон бейджа.`,control:`inline-radio`,options:[`neutral`,`brand`,`success`,`warning`,`error`,`info`]},appearance:{description:`Форма бейджа.`,control:`inline-radio`,options:[`solid`,`outline`,`ghost`,`transparent`]},onRemove:{description:`Показывает кнопку удаления и вызывает обработчик по клику.`,control:!1}}},p={render:function(){let[e]=d();return(0,u.jsx)(o,{...e})}},m={render:()=>(0,u.jsxs)(s,{children:[(0,u.jsx)(o,{tone:`neutral`,appearance:`outline`,children:`Neutral`}),(0,u.jsx)(o,{tone:`success`,appearance:`solid`,children:`Успешно`}),(0,u.jsx)(o,{tone:`warning`,appearance:`solid`,children:`Внимание`}),(0,u.jsx)(o,{tone:`error`,appearance:`solid`,children:`Ошибка`}),(0,u.jsx)(o,{tone:`info`,appearance:`solid`,children:`Информация`})]})},h={render:()=>(0,u.jsxs)(s,{children:[(0,u.jsx)(o,{tone:`neutral`,appearance:`solid`,children:`Solid`}),(0,u.jsx)(o,{tone:`neutral`,appearance:`outline`,children:`Outline`}),(0,u.jsx)(o,{tone:`info`,appearance:`ghost`,children:`Ghost`}),(0,u.jsx)(o,{tone:`warning`,appearance:`transparent`,children:`Transparent`})]})},g={render:()=>(0,u.jsxs)(s,{children:[(0,u.jsx)(o,{size:`xs`,children:`Extra Small`}),(0,u.jsx)(o,{size:`sm`,children:`Small`}),(0,u.jsx)(o,{size:`md`,children:`Medium`}),(0,u.jsx)(o,{size:`lg`,children:`Large`}),(0,u.jsx)(o,{size:`xl`,children:`Extra Large`})]})},_={render:()=>{let[e,t]=(0,l.useState)([`Фильтр A`,`Фильтр B`,`Фильтр C`]);return(0,u.jsx)(s,{children:e.map(e=>(0,u.jsx)(o,{tone:`info`,appearance:`outline`,onRemove:()=>t(t=>t.filter(t=>t!==e)),children:e},e))})}},p.parameters={...p.parameters,docs:{...p.parameters?.docs,source:{originalSource:`{
2
2
  render: function Render() {
3
3
  const [args] = useArgs<BadgeStoryArgs>();
4
4
  return <Badge {...args} />;
@@ -1,4 +1,4 @@
1
- import{n as e}from"./rolldown-runtime-C0FnF6B9.js";import{t}from"./react-C21x__mS.js";import{n,t as r}from"./x-B8aXMeuU.js";import{n as i}from"./iframe-CD1cMwos.js";import{a,i as o}from"./utils-DUM89eIj.js";import{a as s,l as c}from"./array-D-_yMMUK-CIRmlF93.js";import{n as l,t as u}from"./FloatingPopover-ClEj7JDK.js";import{a as d,i as f,r as p,t as m}from"./uiClasses-DiXn3Hc-.js";import{n as h,t as g}from"./FlexContainer-LmZIdhq2.js";function _({maxChar:e,placement:t=`left`,closeDelay:n=0,maxWidth:r,children:i,block:a,state:o,textWrap:s,textWrapProps:l}){let d=c(i);if(!d.length||e&&d.length<e)return(0,v.jsx)(`span`,{children:d});let f=s??`div`,p={style:{display:a?`block`:`inline-block`,width:e?`${e-3}ch`:`auto`},className:`textOverflow`},m={...l,...p,style:{...l?.style,...p.style},className:[l?.className,p.className].filter(Boolean).join(` `)};return(0,v.jsx)(u,{state:o,placement:t,openOnHover:!0,content:d,closeDelay:n,maxWidth:r,children:(0,v.jsx)(f,{...m,children:d})})}var v;function y(){return(y=e((()=>{s(),l(),v=i(),_.__docgenInfo={description:``,methods:[],displayName:`TextOverflow`,props:{children:{required:!0,tsType:{name:`string`},description:``},maxChar:{required:!1,tsType:{name:`number`},description:``},maxWidth:{required:!1,tsType:{name:`number`},description:`Максимальная ширина тултипа в em.`},placement:{required:!1,tsType:{name:`Placement`},description:``,defaultValue:{value:`"left"`,computed:!1}},closeDelay:{required:!1,tsType:{name:`number`},description:``,defaultValue:{value:`0`,computed:!1}},block:{required:!1,tsType:{name:`literal`,value:`true`},description:`Для работы text-overflow элемент обязан быть блочным или inline-block.
1
+ import{n as e}from"./rolldown-runtime-C0FnF6B9.js";import{t}from"./react-C21x__mS.js";import{n,t as r}from"./x-CI99aKu3.js";import{n as i}from"./iframe-CyRHAH4o.js";import{a,i as o}from"./utils-DUM89eIj.js";import{a as s,l as c}from"./array-D-_yMMUK-CIRmlF93.js";import{n as l,t as u}from"./FloatingPopover-BgSpMYSa.js";import{a as d,i as f,r as p,t as m}from"./uiClasses-DiXn3Hc-.js";import{n as h,t as g}from"./FlexContainer-LmZIdhq2.js";function _({maxChar:e,placement:t=`left`,closeDelay:n=0,maxWidth:r,children:i,block:a,state:o,textWrap:s,textWrapProps:l}){let d=c(i);if(!d.length||e&&d.length<e)return(0,v.jsx)(`span`,{children:d});let f=s??`div`,p={style:{display:a?`block`:`inline-block`,width:e?`${e-3}ch`:`auto`},className:`textOverflow`},m={...l,...p,style:{...l?.style,...p.style},className:[l?.className,p.className].filter(Boolean).join(` `)};return(0,v.jsx)(u,{state:o,placement:t,openOnHover:!0,content:d,closeDelay:n,maxWidth:r,children:(0,v.jsx)(f,{...m,children:d})})}var v;function y(){return(y=e((()=>{s(),l(),v=i(),_.__docgenInfo={description:``,methods:[],displayName:`TextOverflow`,props:{children:{required:!0,tsType:{name:`string`},description:``},maxChar:{required:!1,tsType:{name:`number`},description:``},maxWidth:{required:!1,tsType:{name:`number`},description:`Максимальная ширина тултипа в em.`},placement:{required:!1,tsType:{name:`Placement`},description:``,defaultValue:{value:`"left"`,computed:!1}},closeDelay:{required:!1,tsType:{name:`number`},description:``,defaultValue:{value:`0`,computed:!1}},block:{required:!1,tsType:{name:`literal`,value:`true`},description:`Для работы text-overflow элемент обязан быть блочным или inline-block.
2
2
  Если в качестве обёртки передается инлайновый компонент, то он будет
3
3
  перезаписан через стили на display: block или inline-block в зависимости
4
4
  от установки данного пропса.`},state:{required:!1,tsType:{name:`union`,raw:`"information" | "error" | "warning" | "success" | "negative"`,elements:[{name:`literal`,value:`"information"`},{name:`literal`,value:`"error"`},{name:`literal`,value:`"warning"`},{name:`literal`,value:`"success"`},{name:`literal`,value:`"negative"`}]},description:``},textWrap:{required:!1,tsType:{name:`T`},description:``},textWrapProps:{required:!1,tsType:{name:`Omit`,elements:[{name:`ComponentProps`,elements:[{name:`T`}],raw:`ComponentProps<T>`},{name:`literal`,value:`"children"`}],raw:`Omit<ComponentProps<T>, "children">`},description:``}}}})))()}var b,x,S,C,w,T,E,D,O,k;function A(){return(A=e((()=>{b=`qBtmnH`,x=`p-HsHY`,S=`u9tQAE`,C=`FRScRz`,w=`W13uQO`,T=`_3IRcM9`,E=`R3ybI7`,D=`DdWAaC`,O=`_5cXBQF`,k={badge:b,passive:x,sizeXs:S,sizeSm:C,sizeMd:w,sizeLg:T,sizeXl:E,content:D,removeButton:O}})))()}function j({children:e,size:t=`sm`,tone:n,appearance:i,className:o,onRemove:s}){let c=n??`neutral`,l=d({tone:n,appearance:i,fallbackTone:c,fallbackAppearance:c===`neutral`?`outline`:`solid`});return(0,M.jsxs)(`div`,{className:a(k.badge,N[t],p(l.tone),m(l.appearance),!s&&k.passive,o),children:[(0,M.jsx)(_,{maxChar:25,placement:`top`,block:!0,textWrapProps:{className:k.content},children:String(e)}),s&&(0,M.jsx)(`button`,{type:`button`,onClick:s,className:k.removeButton,"aria-label":`Удалить бейдж`,"data-ui":`badge-remove-button`,"data-action":`remove-badge`,children:(0,M.jsx)(r,{})})]})}var M,N;function P(){return(P=e((()=>{o(),n(),y(),f(),A(),M=i(),N={xs:k.sizeXs,sm:k.sizeSm,md:k.sizeMd,lg:k.sizeLg,xl:k.sizeXl},j.__docgenInfo={description:`Компактный индикатор для статусов, категорий и коротких служебных меток.`,methods:[],displayName:`Badge`,props:{children:{required:!0,tsType:{name:`union`,raw:`string | number`,elements:[{name:`string`},{name:`number`}]},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:``,defaultValue:{value:`"sm"`,computed:!1}},tone:{required:!1,tsType:{name:`union`,raw:`"neutral" | "brand" | "error" | "warning" | "success" | "info"`,elements:[{name:`literal`,value:`"neutral"`},{name:`literal`,value:`"brand"`},{name:`literal`,value:`"error"`},{name:`literal`,value:`"warning"`},{name:`literal`,value:`"success"`},{name:`literal`,value:`"info"`}]},description:``},appearance:{required:!1,tsType:{name:`union`,raw:`"solid" | "outline" | "ghost" | "transparent"`,elements:[{name:`literal`,value:`"solid"`},{name:`literal`,value:`"outline"`},{name:`literal`,value:`"ghost"`},{name:`literal`,value:`"transparent"`}]},description:``},className:{required:!1,tsType:{name:`string`},description:``},onRemove:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:``}}}})))()}function F({children:e}){return(0,L.jsx)(g,{inline:!0,wrap:!0,gap:`sm`,align:`baseline`,children:I.Children.map(e,(e,t)=>(0,L.jsx)(I.Fragment,{children:e},t))})}var I,L;function R(){return(R=e((()=>{I=t(),h(),L=i(),F.__docgenInfo={description:"Контейнер для группы `Badge`, который выстраивает элементы в единый список с предсказуемыми отступами. Используется для компактного вывода набора меток или фильтров.",methods:[],displayName:`BadgeList`,props:{children:{required:!0,tsType:{name:`Array`,elements:[{name:`ReactElement`,elements:[{name:`union`,raw:`typeof Badge | null | undefined | false`,elements:[{name:`Badge`},{name:`null`},{name:`undefined`},{name:`literal`,value:`false`}]}],raw:`ReactElement<typeof Badge | null | undefined | false>`}],raw:`ReactElement<typeof Badge | null | undefined | false>[]`},description:``}}}})))()}export{P as i,R as n,j as r,F as t};
@@ -1,4 +1,4 @@
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-CD1cMwos.js";import{a as i,i as a}from"./utils-DUM89eIj.js";import{n as o,t as s}from"./FloatingPopover-ClEj7JDK.js";import{n as c,t as l}from"./ui.module-CiLQZm_L.js";import{a as u,i as d,r as f,t as p}from"./uiClasses-DiXn3Hc-.js";var m,h,g,_,v;function y(){return(y=e((()=>{m=`wLOHwj`,h=`lFsM-Y`,g=`LPob63`,_=`tsaGtv`,v={button:m,iconOnly:h,buttonInner:g,buttonIcon:_}})))()}var b,x,S;function C(){return(C=e((()=>{b=t(n(),1),a(),o(),l(),d(),y(),x=r(),S=(0,b.forwardRef)(function({children:e,disabled:t,className:n,icon:r,iconEnd:a,title:o,variant:l,tone:d,appearance:m,type:h=`button`,"aria-label":g,..._},y){let S=b.Children.count(e)>0,C=!!r&&!S,w=u({variant:l,tone:d,appearance:m,fallbackAppearance:d&&d!==`neutral`?`solid`:`outline`}),T=C?g??o:g,E=(0,x.jsx)(`button`,{..._,ref:y,type:h,disabled:t,"aria-label":T,className:i(c.uiElement,c.uiInputControl,v.button,f(w.tone),p(w.appearance),C?v.iconOnly:``,`textNoWrap`,n??``),children:(0,x.jsxs)(`span`,{className:v.buttonInner,children:[r&&!a&&(0,x.jsx)(`span`,{"aria-hidden":`true`,className:v.buttonIcon,children:r}),S&&(0,x.jsx)(`span`,{className:`flexEllipsis`,children:e}),r&&a&&(0,x.jsx)(`span`,{"aria-hidden":`true`,className:v.buttonIcon,children:r})]})});return o?(0,x.jsx)(s,{placement:`bottom`,tooltip:!0,content:(0,x.jsx)(x.Fragment,{children:o}),children:E}):E}),S.__docgenInfo={description:'Базовая кнопка дизайн-системы для пользовательских действий.\nПоддерживает состояния, tone + appearance, иконки и безопасный `type="button"` по умолчанию.',methods:[],displayName:`Button`,props:{variant:{required:!1,tsType:{name:`union`,raw:`| "transparent"
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{n as c,t as l}from"./ui.module-CiLQZm_L.js";import{a as u,i as d,r as f,t as p}from"./uiClasses-DiXn3Hc-.js";var m,h,g,_,v;function y(){return(y=e((()=>{m=`wLOHwj`,h=`lFsM-Y`,g=`LPob63`,_=`tsaGtv`,v={button:m,iconOnly:h,buttonInner:g,buttonIcon:_}})))()}var b,x,S;function C(){return(C=e((()=>{b=t(n(),1),a(),o(),l(),d(),y(),x=r(),S=(0,b.forwardRef)(function({children:e,disabled:t,className:n,icon:r,iconEnd:a,title:o,variant:l,tone:d,appearance:m,type:h=`button`,"aria-label":g,..._},y){let S=b.Children.count(e)>0,C=!!r&&!S,w=u({variant:l,tone:d,appearance:m,fallbackAppearance:d&&d!==`neutral`?`solid`:`outline`}),T=C?g??o:g,E=(0,x.jsx)(`button`,{..._,ref:y,type:h,disabled:t,"aria-label":T,className:i(c.uiElement,c.uiInputControl,v.button,f(w.tone),p(w.appearance),C?v.iconOnly:``,`textNoWrap`,n??``),children:(0,x.jsxs)(`span`,{className:v.buttonInner,children:[r&&!a&&(0,x.jsx)(`span`,{"aria-hidden":`true`,className:v.buttonIcon,children:r}),S&&(0,x.jsx)(`span`,{className:`flexEllipsis`,children:e}),r&&a&&(0,x.jsx)(`span`,{"aria-hidden":`true`,className:v.buttonIcon,children:r})]})});return o?(0,x.jsx)(s,{placement:`bottom`,tooltip:!0,content:(0,x.jsx)(x.Fragment,{children:o}),children:E}):E}),S.__docgenInfo={description:'Базовая кнопка дизайн-системы для пользовательских действий.\nПоддерживает состояния, tone + appearance, иконки и безопасный `type="button"` по умолчанию.',methods:[],displayName:`Button`,props:{variant:{required:!1,tsType:{name:`union`,raw:`| "transparent"
2
2
  | "ghost"
3
3
  | "neutral"
4
4
  | "brand"
@@ -1,4 +1,4 @@
1
- import{n as e}from"./rolldown-runtime-C0FnF6B9.js";import{n as t}from"./iframe-CD1cMwos.js";import{i as n,r}from"./react-qN2cStNd.js";import{a as i,d as a,f as o,l as s,m as c,n as l,p as u,r as d,u as f}from"./blocks-BkGgmJsC.js";import{a as p,i as m,n as h,o as g,r as _,t as v}from"./Button.stories-NlwBLVkf.js";function y(e){let t={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...n(),...e.components};return(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(s,{of:h,parameters:{atomicCanvas:!0,layout:`padded`,docs:{toc:!0}}}),`
1
+ import{n as e}from"./rolldown-runtime-C0FnF6B9.js";import{n as t}from"./iframe-CyRHAH4o.js";import{i as n,r}from"./react-qN2cStNd.js";import{a as i,d as a,f as o,l as s,m as c,n as l,p as u,r as d,u as f}from"./blocks-BAkpxLLq.js";import{a as p,i as m,n as h,o as g,r as _,t as v}from"./Button.stories-Dr67FbTg.js";function y(e){let t={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...n(),...e.components};return(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(s,{of:h,parameters:{atomicCanvas:!0,layout:`padded`,docs:{toc:!0}}}),`
2
2
  `,(0,x.jsx)(u,{children:`Button`}),`
3
3
  `,(0,x.jsx)(o,{children:`Базовая action-кнопка дизайн-системы для пользовательских действий, подтверждений и быстрых операций`}),`
4
4
  `,(0,x.jsxs)(t.p,{children:[(0,x.jsx)(t.code,{children:`Button`}),` используется как универсальная кнопка интерфейса: в формах, тулбарах, модальных окнах, карточках, таблицах и компактных icon-only сценариях.`]}),`
@@ -1,4 +1,4 @@
1
- import{n as e,r as t}from"./rolldown-runtime-C0FnF6B9.js";import{n,t as r}from"./check-uBaZUURY.js";import{n as i,t as a}from"./download-B34Dyboo.js";import{i as o,n as s,r as c}from"./iframe-CD1cMwos.js";import{n as l,t as u}from"./Button-BfLxUIid.js";var d,f;function p(){return(p=e((()=>{o(),d=[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326`,key:`11g9vi`}]],f=c(`bell`,d)})))()}var m,h;function g(){return(g=e((()=>{o(),m=[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]],h=c(`plus`,m)})))()}var _=t({Basic:()=>x,ComposableScheme:()=>C,Variants:()=>S,WithIcons:()=>w,__namedExportsOrder:()=>T,default:()=>b}),v,y,b,x,S,C,w,T;function E(){return(E=e((()=>{p(),n(),i(),g(),l(),v=s(),{useArgs:y}=__STORYBOOK_MODULE_PREVIEW_API__,b={title:`Shared/UI/Button`,component:u,args:{children:`Действие`,variant:`neutralOutline`,disabled:!1,iconEnd:!1},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{children:{description:`Текстовое содержимое кнопки.`,control:`text`},variant:{description:"Готовая схема для обратной совместимости. Если заданы `tone` или `appearance`, они имеют приоритет.",control:`select`,options:[`neutral`,`neutralOutline`,`ghost`,`brand`,`error`,`warning`,`success`,`info`,`brandOutline`,`errorOutline`,`warningOutline`,`successOutline`,`infoOutline`,`transparent`]},tone:{description:`Цветовой тон кнопки.`,control:`inline-radio`,options:[`neutral`,`brand`,`error`,`warning`,`success`,`info`]},appearance:{description:`Визуальная форма кнопки.`,control:`inline-radio`,options:[`solid`,`outline`,`ghost`,`transparent`]},icon:{description:`Иконка слева или справа от текста.`,control:!1},iconEnd:{description:`Перемещает иконку в конец кнопки.`,control:`boolean`},type:{description:"Тип нативной кнопки; по умолчанию безопасный `button`.",control:`select`,options:[`button`,`submit`,`reset`]},disabled:{description:`Блокирует нажатие.`,control:`boolean`}}},x={render:function(){let[e]=y();return(0,v.jsx)(u,{...e})}},S={render:()=>(0,v.jsxs)(`div`,{style:{display:`grid`,gap:12,gridTemplateColumns:`repeat(auto-fit, minmax(180px, 1fr))`},children:[(0,v.jsx)(u,{variant:`neutral`,children:`Neutral Solid`}),(0,v.jsx)(u,{variant:`neutralOutline`,children:`Neutral Outline`}),(0,v.jsx)(u,{variant:`ghost`,children:`Ghost`}),(0,v.jsx)(u,{variant:`brand`,children:`Brand Solid`}),(0,v.jsx)(u,{variant:`brandOutline`,children:`Brand Outline`}),(0,v.jsx)(u,{variant:`info`,children:`Info Solid`}),(0,v.jsx)(u,{variant:`success`,children:`Success Solid`}),(0,v.jsx)(u,{variant:`warning`,children:`Warning Solid`}),(0,v.jsx)(u,{variant:`error`,children:`Error Solid`}),(0,v.jsx)(u,{variant:`infoOutline`,children:`Info Outline`}),(0,v.jsx)(u,{variant:`successOutline`,children:`Success Outline`}),(0,v.jsx)(u,{variant:`warningOutline`,children:`Warning Outline`}),(0,v.jsx)(u,{variant:`errorOutline`,children:`Error Outline`}),(0,v.jsx)(u,{variant:`transparent`,children:`Transparent`})]}),args:{children:`Действие`}},C={render:()=>(0,v.jsxs)(`div`,{style:{display:`grid`,gap:12,gridTemplateColumns:`repeat(auto-fit, minmax(180px, 1fr))`},children:[(0,v.jsx)(u,{tone:`neutral`,appearance:`solid`,children:`Neutral Solid`}),(0,v.jsx)(u,{tone:`neutral`,appearance:`outline`,children:`Neutral Outline`}),(0,v.jsx)(u,{tone:`neutral`,appearance:`ghost`,children:`Neutral Ghost`}),(0,v.jsx)(u,{tone:`brand`,appearance:`solid`,children:`Brand Solid`}),(0,v.jsx)(u,{tone:`brand`,appearance:`outline`,children:`Brand Outline`}),(0,v.jsx)(u,{tone:`brand`,appearance:`ghost`,children:`Brand Ghost`}),(0,v.jsx)(u,{tone:`brand`,appearance:`transparent`,children:`Brand Transparent`}),(0,v.jsx)(u,{tone:`info`,appearance:`outline`,children:`Info Outline`}),(0,v.jsx)(u,{tone:`success`,appearance:`solid`,children:`Success Solid`}),(0,v.jsx)(u,{tone:`error`,appearance:`transparent`,children:`Error Transparent`})]})},w={render:()=>(0,v.jsxs)(`div`,{style:{display:`flex`,gap:12,flexWrap:`wrap`},children:[(0,v.jsx)(u,{icon:(0,v.jsx)(a,{}),children:`Скачать`}),(0,v.jsx)(u,{icon:(0,v.jsx)(h,{}),tone:`info`,appearance:`solid`,children:`Создать`}),(0,v.jsx)(u,{icon:(0,v.jsx)(r,{}),iconEnd:!0,tone:`success`,appearance:`solid`,children:`Подтвердить`}),(0,v.jsx)(u,{icon:(0,v.jsx)(f,{}),title:`Уведомления`})]}),args:{children:`Действие`}},x.parameters={...x.parameters,docs:{...x.parameters?.docs,source:{originalSource:`{
1
+ import{n as e,r as t}from"./rolldown-runtime-C0FnF6B9.js";import{n,t as r}from"./check-BI1SJVLE.js";import{n as i,t as a}from"./download-9zZQxSfv.js";import{i as o,n as s,r as c}from"./iframe-CyRHAH4o.js";import{n as l,t as u}from"./Button-CGuqXzCc.js";var d,f;function p(){return(p=e((()=>{o(),d=[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326`,key:`11g9vi`}]],f=c(`bell`,d)})))()}var m,h;function g(){return(g=e((()=>{o(),m=[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]],h=c(`plus`,m)})))()}var _=t({Basic:()=>x,ComposableScheme:()=>C,Variants:()=>S,WithIcons:()=>w,__namedExportsOrder:()=>T,default:()=>b}),v,y,b,x,S,C,w,T;function E(){return(E=e((()=>{p(),n(),i(),g(),l(),v=s(),{useArgs:y}=__STORYBOOK_MODULE_PREVIEW_API__,b={title:`Shared/UI/Button`,component:u,args:{children:`Действие`,variant:`neutralOutline`,disabled:!1,iconEnd:!1},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{children:{description:`Текстовое содержимое кнопки.`,control:`text`},variant:{description:"Готовая схема для обратной совместимости. Если заданы `tone` или `appearance`, они имеют приоритет.",control:`select`,options:[`neutral`,`neutralOutline`,`ghost`,`brand`,`error`,`warning`,`success`,`info`,`brandOutline`,`errorOutline`,`warningOutline`,`successOutline`,`infoOutline`,`transparent`]},tone:{description:`Цветовой тон кнопки.`,control:`inline-radio`,options:[`neutral`,`brand`,`error`,`warning`,`success`,`info`]},appearance:{description:`Визуальная форма кнопки.`,control:`inline-radio`,options:[`solid`,`outline`,`ghost`,`transparent`]},icon:{description:`Иконка слева или справа от текста.`,control:!1},iconEnd:{description:`Перемещает иконку в конец кнопки.`,control:`boolean`},type:{description:"Тип нативной кнопки; по умолчанию безопасный `button`.",control:`select`,options:[`button`,`submit`,`reset`]},disabled:{description:`Блокирует нажатие.`,control:`boolean`}}},x={render:function(){let[e]=y();return(0,v.jsx)(u,{...e})}},S={render:()=>(0,v.jsxs)(`div`,{style:{display:`grid`,gap:12,gridTemplateColumns:`repeat(auto-fit, minmax(180px, 1fr))`},children:[(0,v.jsx)(u,{variant:`neutral`,children:`Neutral Solid`}),(0,v.jsx)(u,{variant:`neutralOutline`,children:`Neutral Outline`}),(0,v.jsx)(u,{variant:`ghost`,children:`Ghost`}),(0,v.jsx)(u,{variant:`brand`,children:`Brand Solid`}),(0,v.jsx)(u,{variant:`brandOutline`,children:`Brand Outline`}),(0,v.jsx)(u,{variant:`info`,children:`Info Solid`}),(0,v.jsx)(u,{variant:`success`,children:`Success Solid`}),(0,v.jsx)(u,{variant:`warning`,children:`Warning Solid`}),(0,v.jsx)(u,{variant:`error`,children:`Error Solid`}),(0,v.jsx)(u,{variant:`infoOutline`,children:`Info Outline`}),(0,v.jsx)(u,{variant:`successOutline`,children:`Success Outline`}),(0,v.jsx)(u,{variant:`warningOutline`,children:`Warning Outline`}),(0,v.jsx)(u,{variant:`errorOutline`,children:`Error Outline`}),(0,v.jsx)(u,{variant:`transparent`,children:`Transparent`})]}),args:{children:`Действие`}},C={render:()=>(0,v.jsxs)(`div`,{style:{display:`grid`,gap:12,gridTemplateColumns:`repeat(auto-fit, minmax(180px, 1fr))`},children:[(0,v.jsx)(u,{tone:`neutral`,appearance:`solid`,children:`Neutral Solid`}),(0,v.jsx)(u,{tone:`neutral`,appearance:`outline`,children:`Neutral Outline`}),(0,v.jsx)(u,{tone:`neutral`,appearance:`ghost`,children:`Neutral Ghost`}),(0,v.jsx)(u,{tone:`brand`,appearance:`solid`,children:`Brand Solid`}),(0,v.jsx)(u,{tone:`brand`,appearance:`outline`,children:`Brand Outline`}),(0,v.jsx)(u,{tone:`brand`,appearance:`ghost`,children:`Brand Ghost`}),(0,v.jsx)(u,{tone:`brand`,appearance:`transparent`,children:`Brand Transparent`}),(0,v.jsx)(u,{tone:`info`,appearance:`outline`,children:`Info Outline`}),(0,v.jsx)(u,{tone:`success`,appearance:`solid`,children:`Success Solid`}),(0,v.jsx)(u,{tone:`error`,appearance:`transparent`,children:`Error Transparent`})]})},w={render:()=>(0,v.jsxs)(`div`,{style:{display:`flex`,gap:12,flexWrap:`wrap`},children:[(0,v.jsx)(u,{icon:(0,v.jsx)(a,{}),children:`Скачать`}),(0,v.jsx)(u,{icon:(0,v.jsx)(h,{}),tone:`info`,appearance:`solid`,children:`Создать`}),(0,v.jsx)(u,{icon:(0,v.jsx)(r,{}),iconEnd:!0,tone:`success`,appearance:`solid`,children:`Подтвердить`}),(0,v.jsx)(u,{icon:(0,v.jsx)(f,{}),title:`Уведомления`})]}),args:{children:`Действие`}},x.parameters={...x.parameters,docs:{...x.parameters?.docs,source:{originalSource:`{
2
2
  render: function Render() {
3
3
  const [args] = useArgs<ButtonProps>();
4
4
  return <Button {...args} />;
@@ -1 +1 @@
1
- import{n as e}from"./rolldown-runtime-C0FnF6B9.js";import{t}from"./react-C21x__mS.js";import{n,t as r}from"./chevron-left-Cb-kl5mh.js";import{n as i,t as a}from"./chevron-right-D99XGTe7.js";import{i as o,n as s,r as c}from"./iframe-CD1cMwos.js";import{a as l,i as u}from"./utils-DUM89eIj.js";import{C as d,b as f,c as p,h as m,m as h,n as g,o as _,w as v,x as y,y as b}from"./formatters-CVj-3Vn0-BFaHJqZL.js";import{n as x,t as S}from"./Button-BfLxUIid.js";var C,w;function T(){return(T=e((()=>{o(),C=[[`path`,{d:`M8 2v3`,key:`1ioesn`}],[`path`,{d:`M16 2v3`,key:`otl347`}],[`rect`,{x:`3`,y:`3`,width:`18`,height:`18`,rx:`2`,key:`h1oib`}],[`path`,{d:`M3 9h18`,key:`1pudct`}],[`path`,{d:`M8 13h.01`,key:`1sbv64`}],[`path`,{d:`M12 13h.01`,key:`y0uutt`}],[`path`,{d:`M16 13h.01`,key:`wip0gl`}],[`path`,{d:`M8 17h.01`,key:`p3bg7i`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}],[`path`,{d:`M16 17h.01`,key:`ql8jdd`}]],w=c(`calendar-days`,C)})))()}function ee(e){return e===`month`?`month`:e===`year`?`year`:`day`}function E(e,t){return k.indexOf(e)>=k.indexOf(t)}function te(e,t){let n=ee(e);return E(n,t)?n:t}function D(e,t){return!e||!t?!1:e.start.getTime()===t.start.getTime()&&e.end.getTime()===t.end.getTime()}function ne(e,t,n){if(!e||!t||!n)return!1;let r=Math.min(t.start.getTime(),n.start.getTime()),i=Math.max(t.end.getTime(),n.end.getTime());return e.start.getTime()>=r&&e.end.getTime()<=i}function O({date:e,value:t,hoveredDate:n,selectsRange:r,selectionOptions:i}){let a=g(e,i),o=!r&&t instanceof Date?t:null,s=g(o,i);if(!r||!Array.isArray(t))return{selected:_(e,s),range:!1,rangeStart:!1,rangeEnd:!1};let[c,l]=t,u=g(c,i),d=g(l??(c?n:null),i),f=D(a,u),p=D(a,d);return{selected:!1,range:ne(a,u,d)&&!f&&!p,rangeStart:f,rangeEnd:p}}var k,re,ie;function A(){return(A=e((()=>{b(),k=[`day`,`month`,`year`],re=[`day`,`week`,`month`,`year`],ie=[`friday`,`saturday`,`sunday`]})))()}var ae,oe,se,ce,le,ue,de,fe,j,M,N,P,F,I,L,R,z;function B(){return(B=e((()=>{ae=`Dshr-j`,oe=`esetVt`,se=`i-LJYe`,ce=`XZsnCH`,le=`_2KDjTS`,ue=`o-freG`,de=`GcV08-`,fe=`UCrE-I`,j=`L2V3uq`,M=`Te9oCq`,N=`cUF2pQ`,P=`d1L5uw`,F=`LU0M9Y`,I=`MR3y5p`,L=`VDqDpm`,R=`CLR-7m`,z={dayView:ae,weekdays:oe,weekday:se,daysGrid:ce,week:le,day:ue,disabled:de,outsideMonth:fe,periodSelection:j,periodPreview:M,selected:N,range:P,rangeStart:F,rangeEnd:I,weekend:L,now:R}})))()}var V,H,pe,me,U;function he(){return(he=e((()=>{V=t(),b(),u(),B(),H=s(),pe=[`Пн`,`Вт`,`Ср`,`Чт`,`Пт`,`Сб`,`Вс`],me=new Intl.DateTimeFormat(`ru-RU`,{weekday:`long`,year:`numeric`,month:`long`,day:`numeric`}),U=({now:e,currentDate:t,value:n,onChange:r,minDate:i,maxDate:a,selectsRange:o,selectionMode:s=`day`,weekEndDay:c=`sunday`})=>{let[u,f]=(0,V.useState)(null),m={selectionMode:s,weekEndDay:c},v=(()=>{let e=t.getFullYear(),n=t.getMonth(),r=h(e,n,1),i=h(e,n+1,0),a=r.getDay()===0?6:r.getDay()-1,o=42-(a+i.getDate()),s=[],c=h(e,n,0).getDate();for(let t=a;t>0;--t)s.push(h(e,n-1,c-t+1));for(let t=1;t<=i.getDate();t+=1)s.push(h(e,n,t));for(let t=1;t<=o;t+=1)s.push(h(e,n+1,t));let l=[];for(let e=0;e<s.length;e+=7)l.push(s.slice(e,e+7));return l})(),b=o&&Array.isArray(n)?n[0]:null,x=o&&Array.isArray(n)?n[1]:null,S=g(o?null:n,m),C=g(u,m),w=x??(b?C?.end??null:null),T=s===`week`,ee=T&&(!o||!b),E=e=>{if(!o||!b||!w)return!1;let t=d(e).getTime(),n=b.getTime(),r=w.getTime();return t>=Math.min(n,r)&&t<=Math.max(n,r)},te=e=>!y(g(e,m),{minDate:i,maxDate:a}),D=(e,t)=>{t||(T&&f(e),!(!o||!b||x)&&(T||f(e)))};return(0,H.jsxs)(`div`,{className:z.dayView,children:[(0,H.jsx)(`div`,{className:z.weekdays,children:pe.map(e=>(0,H.jsx)(`div`,{className:z.weekday,children:e},e))}),(0,H.jsx)(`div`,{className:z.daysGrid,onMouseLeave:()=>{(T||!x)&&f(null)},children:v.map((n,i)=>(0,H.jsx)(`div`,{className:z.week,children:n.map((n,a)=>{let o=n.getMonth()===t.getMonth(),c=_(n,S),u=ee&&_(n,C),d=E(n),f=p(n,b),m=p(n,w),h=p(n,e),g=te(n);return(0,H.jsx)(`button`,{type:`button`,onClick:()=>!g&&r(n),onMouseEnter:()=>D(n,g),disabled:g,"data-ui":`calendar-day-button`,"data-action":`select-calendar-day`,className:l(z.day,{[z.outsideMonth]:!o,[z.periodSelection]:s===`week`,[z.periodPreview]:u&&!c,[z.selected]:c,[z.range]:d&&!f&&!m,[z.rangeStart]:f,[z.rangeEnd]:m,[z.disabled]:g,[z.weekend]:a>4,[z.now]:h}),"aria-label":me.format(n),"aria-pressed":c||d||f||m,children:n.getDate()},`${i}-${a}`)})},i))})]})},U.__docgenInfo={description:`Отображает сетку дней месяца в календарной семантике без timezone-сдвига.`,methods:[],displayName:`CalendarDayView`,props:{selectionMode:{defaultValue:{value:`"day"`,computed:!1},required:!1},weekEndDay:{defaultValue:{value:`"sunday"`,computed:!1},required:!1}}}})))()}var ge,_e,ve,ye,be,xe,W,Se,G;function Ce(){return(Ce=e((()=>{ge=`p5pRGW`,_e=`pUHpxD`,ve=`lwWv-z`,ye=`_8gn-3z`,be=`b57d-c`,xe=`nGc5FO`,W=`JLqjri`,Se=`UQMYwg`,G={monthView:ge,monthsGrid:_e,month:ve,disabled:ye,range:be,selected:xe,rangeStart:W,rangeEnd:Se}})))()}var we,K,Te,Ee,q;function De(){return(De=e((()=>{we=t(),b(),u(),A(),Ce(),K=s(),Te=new Intl.DateTimeFormat(`ru-RU`,{month:`short`}),Ee=new Intl.DateTimeFormat(`ru-RU`,{month:`long`,year:`numeric`}),q=({currentDate:e,value:t,onChange:n,minDate:r,maxDate:i,selectsRange:a,selectsPeriod:o,selectionMode:s=`day`,weekEndDay:c=`sunday`})=>{let[u,d]=(0,we.useState)(null),f=Array.from({length:12},(e,t)=>t),p=e.getFullYear(),m={selectionMode:s,weekEndDay:c},_=a&&Array.isArray(t)?t[0]:null,v=a&&Array.isArray(t)?t[1]:null,b=e=>Te.format(h(p,e,1)),x=e=>{if(!r&&!i)return!1;let t=h(p,e,1),n=h(p,e+1,0,23,59,59);return o?!y(g(t,m),{minDate:r,maxDate:i}):!!(r&&n<r||i&&t>i)},S=(e,t)=>{!a||!_||v||t||d(e)};return(0,K.jsx)(`div`,{className:G.monthView,children:(0,K.jsx)(`div`,{className:G.monthsGrid,onMouseLeave:()=>{v||d(null)},children:f.map(e=>{let r=x(e),i=h(p,e,1),o=O({date:i,value:t,hoveredDate:u,selectsRange:a,selectionOptions:m});return(0,K.jsx)(`button`,{type:`button`,onClick:()=>!r&&n(i),onMouseEnter:()=>S(i,r),disabled:r,"data-ui":`calendar-month-button`,"data-action":`select-calendar-month`,className:l(G.month,{[G.selected]:o.selected,[G.range]:o.range,[G.rangeStart]:o.rangeStart,[G.rangeEnd]:o.rangeEnd,[G.disabled]:r}),"aria-label":Ee.format(i),"aria-pressed":o.selected||o.range||o.rangeStart||o.rangeEnd,children:b(e)},e)})})})},q.__docgenInfo={description:`Отображает выбор месяца в календарной семантике без timezone-сдвига.`,methods:[],displayName:`CalendarMonthView`,props:{selectionMode:{defaultValue:{value:`"day"`,computed:!1},required:!1},weekEndDay:{defaultValue:{value:`"sunday"`,computed:!1},required:!1}}}})))()}var Oe,ke,J;function Ae(){return(Ae=e((()=>{Oe=`E35KE6`,ke=`L14Qef`,J={calendarView:Oe,calendarHeader:ke}})))()}var je,Me,Ne,Pe,Fe,Ie,Le,Re,Y;function ze(){return(ze=e((()=>{je=`_--xW7O`,Me=`-N-5Jk`,Ne=`hhY92S`,Pe=`IhX7jj`,Fe=`NWNpWj`,Ie=`d1SfcV`,Le=`Gkui4r`,Re=`_0dVZLW`,Y={yearView:je,yearsGrid:Me,year:Ne,disabled:Pe,range:Fe,selected:Ie,rangeStart:Le,rangeEnd:Re}})))()}var Be,X,Z;function Ve(){return(Ve=e((()=>{Be=t(),b(),u(),A(),ze(),X=s(),Z=({currentDate:e,value:t,onChange:n,minDate:r,maxDate:i,selectsRange:a,selectsPeriod:o,selectionMode:s=`day`,weekEndDay:c=`sunday`})=>{let[u,d]=(0,Be.useState)(null),f=Math.floor(e.getFullYear()/12)*12,p=Array.from({length:12},(e,t)=>f+t),m={selectionMode:s,weekEndDay:c},_=a&&Array.isArray(t)?t[0]:null,v=a&&Array.isArray(t)?t[1]:null,b=e=>{if(!r&&!i)return!1;let t=h(e,0,1),n=h(e,11,31,23,59,59);return o?!y(g(t,m),{minDate:r,maxDate:i}):!!(r&&n<r||i&&t>i)},x=(e,t)=>{!a||!_||v||t||d(e)};return(0,X.jsx)(`div`,{className:Y.yearView,children:(0,X.jsx)(`div`,{className:Y.yearsGrid,onMouseLeave:()=>{v||d(null)},children:p.map(e=>{let r=b(e),i=h(e,0,1),o=O({date:i,value:t,hoveredDate:u,selectsRange:a,selectionOptions:m});return(0,X.jsx)(`button`,{type:`button`,onClick:()=>!r&&n(i),onMouseEnter:()=>x(i,r),disabled:r,"data-ui":`calendar-year-button`,"data-action":`select-calendar-year`,className:l(Y.year,{[Y.selected]:o.selected,[Y.range]:o.range,[Y.rangeStart]:o.rangeStart,[Y.rangeEnd]:o.rangeEnd,[Y.disabled]:r}),"aria-label":e.toString(),"aria-pressed":o.selected||o.range||o.rangeStart||o.rangeEnd,children:e},e)})})})},Z.__docgenInfo={description:`Отображает выбор года в календарной семантике без timezone-сдвига.`,methods:[],displayName:`CalendarYearView`,props:{selectionMode:{defaultValue:{value:`"day"`,computed:!1},required:!1},weekEndDay:{defaultValue:{value:`"sunday"`,computed:!1},required:!1}}}})))()}function He(e,t){if(t&&f(e)&&e[0]instanceof Date)return e[0];if(!t&&e instanceof Date)return e}function Ue({view:e,datePickerLevel:t,selectionMode:n=`day`,weekEndDay:i=`sunday`,onViewChange:o,...s}){let[c]=(0,Q.useState)(()=>d(new Date)),l=He(s.value,s.selectsRange),u=l?.getTime()??null,[f,p]=(0,Q.useState)(()=>({sourceValueTime:u,currentDate:l??d(new Date)})),h=l&&f.sourceValueTime!==u?l:f.currentDate,_=s.currentDate??h,b={selectionMode:n,weekEndDay:i},x=e=>{let t=typeof e==`function`?e(_):e;s.currentDate===void 0&&p({sourceValueTime:u,currentDate:t}),s.onCurrentDateChange?.(t)},C=()=>{if(e===`day`){x(e=>m(e,-1));return}if(e===`month`){x(e=>v(e,-1));return}x(e=>v(e,-12))},w=()=>{if(e===`day`){x(e=>m(e,1));return}if(e===`month`){x(e=>v(e,1));return}x(e=>v(e,12))};return(0,$.jsxs)(`div`,{className:J.calendarView,children:[(()=>{let t=``;if(e===`day`)t=_.toLocaleDateString(`ru-RU`,{month:`long`,year:`numeric`});else if(e===`month`)t=_.getFullYear().toString();else{let e=Math.floor(_.getFullYear()/12)*12;t=`${e} - ${e+11}`}return(0,$.jsxs)(`div`,{className:J.calendarHeader,children:[(0,$.jsx)(S,{icon:(0,$.jsx)(r,{}),onClick:C,variant:`ghost`,"aria-label":`Предыдущий`,"data-action":`calendar-previous`}),(0,$.jsx)(S,{onClick:()=>{e===`day`?o(`month`):e===`month`&&o(`year`)},variant:`ghost`,className:`flex1`,"data-ui":`calendar-view-switch-button`,"data-action":`calendar-switch-view`,children:t}),(0,$.jsx)(S,{icon:(0,$.jsx)(a,{}),onClick:w,variant:`ghost`,"aria-label":`Следующий`,"data-ui":`calendar-next-button`,"data-action":`calendar-next`})]})})(),(()=>{let r=e=>{let t=g(e,b);if(!(!t||!y(t,{minDate:s.minDate,maxDate:s.maxDate}))){if(s.selectsRange){let e=null,n=null;if(Array.isArray(s.value)&&([e,n]=s.value),!e||n){s.onChange([t.start,null]);return}let r=g(e,b);if(!r)return;if(t.start<r.start){s.onChange([t.start,r.end]);return}s.onChange([r.start,t.end]);return}s.onChange(t.start)}},a=e=>{if(x(e),n===`month`||!E(`day`,t)){r(e);return}o(`day`)},l=e=>{if(x(e),n===`year`||!E(`month`,t)){r(e);return}o(`month`)};switch(e){case`day`:return(0,$.jsx)(U,{now:c,currentDate:_,value:s.value,onChange:r,minDate:s.minDate,maxDate:s.maxDate,selectsRange:s.selectsRange,selectionMode:n,weekEndDay:i});case`month`:return(0,$.jsx)(q,{currentDate:_,value:s.value,onChange:a,minDate:s.minDate,maxDate:s.maxDate,selectsRange:s.selectsRange,selectsPeriod:n===`month`||!E(`day`,t),selectionMode:n,weekEndDay:i});case`year`:return(0,$.jsx)(Z,{currentDate:_,value:s.value,onChange:l,minDate:s.minDate,maxDate:s.maxDate,selectsRange:s.selectsRange,selectsPeriod:n===`year`||!E(`month`,t),selectionMode:n,weekEndDay:i});default:return null}})()]})}var Q,$;function We(){return(We=e((()=>{Q=t(),b(),n(),i(),x(),A(),he(),De(),Ae(),Ve(),$=s(),Ue.__docgenInfo={description:`Отображает календарь выбора даты в календарной семантике без timezone-сдвига.`,methods:[],displayName:`CalendarView`,props:{view:{required:!0,tsType:{name:`union`,raw:`"day" | "month" | "year"`,elements:[{name:`literal`,value:`"day"`},{name:`literal`,value:`"month"`},{name:`literal`,value:`"year"`}]},description:``},datePickerLevel:{required:!0,tsType:{name:`union`,raw:`"day" | "month" | "year"`,elements:[{name:`literal`,value:`"day"`},{name:`literal`,value:`"month"`},{name:`literal`,value:`"year"`}]},description:``},selectionMode:{required:!1,tsType:{name:`CalendarPeriodSelectionMode`},description:``,defaultValue:{value:`"day"`,computed:!1}},weekEndDay:{required:!1,tsType:{name:`CalendarWeekEndDay`},description:``,defaultValue:{value:`"sunday"`,computed:!1}},onViewChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(view: CalendarType) => void`,signature:{arguments:[{type:{name:`union`,raw:`"day" | "month" | "year"`,elements:[{name:`literal`,value:`"day"`},{name:`literal`,value:`"month"`},{name:`literal`,value:`"year"`}]},name:`view`}],return:{name:`void`}}},description:``},selectsRange:{required:!1,tsType:{name:`boolean`},description:``},value:{required:!0,tsType:{name:`union`,raw:`Date | NullableDateRange | null`,elements:[{name:`Date`},{name:`NullableDateRange`},{name:`null`}]},description:``},onChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(date: Date | NullableDateRange) => void`,signature:{arguments:[{type:{name:`union`,raw:`Date | NullableDateRange`,elements:[{name:`Date`},{name:`NullableDateRange`}]},name:`date`}],return:{name:`void`}}},description:``},minDate:{required:!1,tsType:{name:`Date`},description:``},maxDate:{required:!1,tsType:{name:`Date`},description:``},currentDate:{required:!1,tsType:{name:`Date`},description:``},onCurrentDateChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(date: Date) => void`,signature:{arguments:[{type:{name:`Date`},name:`date`}],return:{name:`void`}}},description:``}}}})))()}export{A as a,w as c,ie as i,T as l,We as n,E as o,re as r,te as s,Ue as t};
1
+ import{n as e}from"./rolldown-runtime-C0FnF6B9.js";import{t}from"./react-C21x__mS.js";import{n,t as r}from"./chevron-left-BY47fHoH.js";import{n as i,t as a}from"./chevron-right-Uoc3pHM2.js";import{i as o,n as s,r as c}from"./iframe-CyRHAH4o.js";import{a as l,i as u}from"./utils-DUM89eIj.js";import{C as d,b as f,c as p,h as m,m as h,n as g,o as _,w as v,x as y,y as b}from"./formatters-CVj-3Vn0-BFaHJqZL.js";import{n as x,t as S}from"./Button-CGuqXzCc.js";var C,w;function T(){return(T=e((()=>{o(),C=[[`path`,{d:`M8 2v3`,key:`1ioesn`}],[`path`,{d:`M16 2v3`,key:`otl347`}],[`rect`,{x:`3`,y:`3`,width:`18`,height:`18`,rx:`2`,key:`h1oib`}],[`path`,{d:`M3 9h18`,key:`1pudct`}],[`path`,{d:`M8 13h.01`,key:`1sbv64`}],[`path`,{d:`M12 13h.01`,key:`y0uutt`}],[`path`,{d:`M16 13h.01`,key:`wip0gl`}],[`path`,{d:`M8 17h.01`,key:`p3bg7i`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}],[`path`,{d:`M16 17h.01`,key:`ql8jdd`}]],w=c(`calendar-days`,C)})))()}function ee(e){return e===`month`?`month`:e===`year`?`year`:`day`}function E(e,t){return k.indexOf(e)>=k.indexOf(t)}function te(e,t){let n=ee(e);return E(n,t)?n:t}function D(e,t){return!e||!t?!1:e.start.getTime()===t.start.getTime()&&e.end.getTime()===t.end.getTime()}function ne(e,t,n){if(!e||!t||!n)return!1;let r=Math.min(t.start.getTime(),n.start.getTime()),i=Math.max(t.end.getTime(),n.end.getTime());return e.start.getTime()>=r&&e.end.getTime()<=i}function O({date:e,value:t,hoveredDate:n,selectsRange:r,selectionOptions:i}){let a=g(e,i),o=!r&&t instanceof Date?t:null,s=g(o,i);if(!r||!Array.isArray(t))return{selected:_(e,s),range:!1,rangeStart:!1,rangeEnd:!1};let[c,l]=t,u=g(c,i),d=g(l??(c?n:null),i),f=D(a,u),p=D(a,d);return{selected:!1,range:ne(a,u,d)&&!f&&!p,rangeStart:f,rangeEnd:p}}var k,re,ie;function A(){return(A=e((()=>{b(),k=[`day`,`month`,`year`],re=[`day`,`week`,`month`,`year`],ie=[`friday`,`saturday`,`sunday`]})))()}var ae,oe,se,ce,le,ue,de,fe,j,M,N,P,F,I,L,R,z;function B(){return(B=e((()=>{ae=`Dshr-j`,oe=`esetVt`,se=`i-LJYe`,ce=`XZsnCH`,le=`_2KDjTS`,ue=`o-freG`,de=`GcV08-`,fe=`UCrE-I`,j=`L2V3uq`,M=`Te9oCq`,N=`cUF2pQ`,P=`d1L5uw`,F=`LU0M9Y`,I=`MR3y5p`,L=`VDqDpm`,R=`CLR-7m`,z={dayView:ae,weekdays:oe,weekday:se,daysGrid:ce,week:le,day:ue,disabled:de,outsideMonth:fe,periodSelection:j,periodPreview:M,selected:N,range:P,rangeStart:F,rangeEnd:I,weekend:L,now:R}})))()}var V,H,pe,me,U;function he(){return(he=e((()=>{V=t(),b(),u(),B(),H=s(),pe=[`Пн`,`Вт`,`Ср`,`Чт`,`Пт`,`Сб`,`Вс`],me=new Intl.DateTimeFormat(`ru-RU`,{weekday:`long`,year:`numeric`,month:`long`,day:`numeric`}),U=({now:e,currentDate:t,value:n,onChange:r,minDate:i,maxDate:a,selectsRange:o,selectionMode:s=`day`,weekEndDay:c=`sunday`})=>{let[u,f]=(0,V.useState)(null),m={selectionMode:s,weekEndDay:c},v=(()=>{let e=t.getFullYear(),n=t.getMonth(),r=h(e,n,1),i=h(e,n+1,0),a=r.getDay()===0?6:r.getDay()-1,o=42-(a+i.getDate()),s=[],c=h(e,n,0).getDate();for(let t=a;t>0;--t)s.push(h(e,n-1,c-t+1));for(let t=1;t<=i.getDate();t+=1)s.push(h(e,n,t));for(let t=1;t<=o;t+=1)s.push(h(e,n+1,t));let l=[];for(let e=0;e<s.length;e+=7)l.push(s.slice(e,e+7));return l})(),b=o&&Array.isArray(n)?n[0]:null,x=o&&Array.isArray(n)?n[1]:null,S=g(o?null:n,m),C=g(u,m),w=x??(b?C?.end??null:null),T=s===`week`,ee=T&&(!o||!b),E=e=>{if(!o||!b||!w)return!1;let t=d(e).getTime(),n=b.getTime(),r=w.getTime();return t>=Math.min(n,r)&&t<=Math.max(n,r)},te=e=>!y(g(e,m),{minDate:i,maxDate:a}),D=(e,t)=>{t||(T&&f(e),!(!o||!b||x)&&(T||f(e)))};return(0,H.jsxs)(`div`,{className:z.dayView,children:[(0,H.jsx)(`div`,{className:z.weekdays,children:pe.map(e=>(0,H.jsx)(`div`,{className:z.weekday,children:e},e))}),(0,H.jsx)(`div`,{className:z.daysGrid,onMouseLeave:()=>{(T||!x)&&f(null)},children:v.map((n,i)=>(0,H.jsx)(`div`,{className:z.week,children:n.map((n,a)=>{let o=n.getMonth()===t.getMonth(),c=_(n,S),u=ee&&_(n,C),d=E(n),f=p(n,b),m=p(n,w),h=p(n,e),g=te(n);return(0,H.jsx)(`button`,{type:`button`,onClick:()=>!g&&r(n),onMouseEnter:()=>D(n,g),disabled:g,"data-ui":`calendar-day-button`,"data-action":`select-calendar-day`,className:l(z.day,{[z.outsideMonth]:!o,[z.periodSelection]:s===`week`,[z.periodPreview]:u&&!c,[z.selected]:c,[z.range]:d&&!f&&!m,[z.rangeStart]:f,[z.rangeEnd]:m,[z.disabled]:g,[z.weekend]:a>4,[z.now]:h}),"aria-label":me.format(n),"aria-pressed":c||d||f||m,children:n.getDate()},`${i}-${a}`)})},i))})]})},U.__docgenInfo={description:`Отображает сетку дней месяца в календарной семантике без timezone-сдвига.`,methods:[],displayName:`CalendarDayView`,props:{selectionMode:{defaultValue:{value:`"day"`,computed:!1},required:!1},weekEndDay:{defaultValue:{value:`"sunday"`,computed:!1},required:!1}}}})))()}var ge,_e,ve,ye,be,xe,W,Se,G;function Ce(){return(Ce=e((()=>{ge=`p5pRGW`,_e=`pUHpxD`,ve=`lwWv-z`,ye=`_8gn-3z`,be=`b57d-c`,xe=`nGc5FO`,W=`JLqjri`,Se=`UQMYwg`,G={monthView:ge,monthsGrid:_e,month:ve,disabled:ye,range:be,selected:xe,rangeStart:W,rangeEnd:Se}})))()}var we,K,Te,Ee,q;function De(){return(De=e((()=>{we=t(),b(),u(),A(),Ce(),K=s(),Te=new Intl.DateTimeFormat(`ru-RU`,{month:`short`}),Ee=new Intl.DateTimeFormat(`ru-RU`,{month:`long`,year:`numeric`}),q=({currentDate:e,value:t,onChange:n,minDate:r,maxDate:i,selectsRange:a,selectsPeriod:o,selectionMode:s=`day`,weekEndDay:c=`sunday`})=>{let[u,d]=(0,we.useState)(null),f=Array.from({length:12},(e,t)=>t),p=e.getFullYear(),m={selectionMode:s,weekEndDay:c},_=a&&Array.isArray(t)?t[0]:null,v=a&&Array.isArray(t)?t[1]:null,b=e=>Te.format(h(p,e,1)),x=e=>{if(!r&&!i)return!1;let t=h(p,e,1),n=h(p,e+1,0,23,59,59);return o?!y(g(t,m),{minDate:r,maxDate:i}):!!(r&&n<r||i&&t>i)},S=(e,t)=>{!a||!_||v||t||d(e)};return(0,K.jsx)(`div`,{className:G.monthView,children:(0,K.jsx)(`div`,{className:G.monthsGrid,onMouseLeave:()=>{v||d(null)},children:f.map(e=>{let r=x(e),i=h(p,e,1),o=O({date:i,value:t,hoveredDate:u,selectsRange:a,selectionOptions:m});return(0,K.jsx)(`button`,{type:`button`,onClick:()=>!r&&n(i),onMouseEnter:()=>S(i,r),disabled:r,"data-ui":`calendar-month-button`,"data-action":`select-calendar-month`,className:l(G.month,{[G.selected]:o.selected,[G.range]:o.range,[G.rangeStart]:o.rangeStart,[G.rangeEnd]:o.rangeEnd,[G.disabled]:r}),"aria-label":Ee.format(i),"aria-pressed":o.selected||o.range||o.rangeStart||o.rangeEnd,children:b(e)},e)})})})},q.__docgenInfo={description:`Отображает выбор месяца в календарной семантике без timezone-сдвига.`,methods:[],displayName:`CalendarMonthView`,props:{selectionMode:{defaultValue:{value:`"day"`,computed:!1},required:!1},weekEndDay:{defaultValue:{value:`"sunday"`,computed:!1},required:!1}}}})))()}var Oe,ke,J;function Ae(){return(Ae=e((()=>{Oe=`E35KE6`,ke=`L14Qef`,J={calendarView:Oe,calendarHeader:ke}})))()}var je,Me,Ne,Pe,Fe,Ie,Le,Re,Y;function ze(){return(ze=e((()=>{je=`_--xW7O`,Me=`-N-5Jk`,Ne=`hhY92S`,Pe=`IhX7jj`,Fe=`NWNpWj`,Ie=`d1SfcV`,Le=`Gkui4r`,Re=`_0dVZLW`,Y={yearView:je,yearsGrid:Me,year:Ne,disabled:Pe,range:Fe,selected:Ie,rangeStart:Le,rangeEnd:Re}})))()}var Be,X,Z;function Ve(){return(Ve=e((()=>{Be=t(),b(),u(),A(),ze(),X=s(),Z=({currentDate:e,value:t,onChange:n,minDate:r,maxDate:i,selectsRange:a,selectsPeriod:o,selectionMode:s=`day`,weekEndDay:c=`sunday`})=>{let[u,d]=(0,Be.useState)(null),f=Math.floor(e.getFullYear()/12)*12,p=Array.from({length:12},(e,t)=>f+t),m={selectionMode:s,weekEndDay:c},_=a&&Array.isArray(t)?t[0]:null,v=a&&Array.isArray(t)?t[1]:null,b=e=>{if(!r&&!i)return!1;let t=h(e,0,1),n=h(e,11,31,23,59,59);return o?!y(g(t,m),{minDate:r,maxDate:i}):!!(r&&n<r||i&&t>i)},x=(e,t)=>{!a||!_||v||t||d(e)};return(0,X.jsx)(`div`,{className:Y.yearView,children:(0,X.jsx)(`div`,{className:Y.yearsGrid,onMouseLeave:()=>{v||d(null)},children:p.map(e=>{let r=b(e),i=h(e,0,1),o=O({date:i,value:t,hoveredDate:u,selectsRange:a,selectionOptions:m});return(0,X.jsx)(`button`,{type:`button`,onClick:()=>!r&&n(i),onMouseEnter:()=>x(i,r),disabled:r,"data-ui":`calendar-year-button`,"data-action":`select-calendar-year`,className:l(Y.year,{[Y.selected]:o.selected,[Y.range]:o.range,[Y.rangeStart]:o.rangeStart,[Y.rangeEnd]:o.rangeEnd,[Y.disabled]:r}),"aria-label":e.toString(),"aria-pressed":o.selected||o.range||o.rangeStart||o.rangeEnd,children:e},e)})})})},Z.__docgenInfo={description:`Отображает выбор года в календарной семантике без timezone-сдвига.`,methods:[],displayName:`CalendarYearView`,props:{selectionMode:{defaultValue:{value:`"day"`,computed:!1},required:!1},weekEndDay:{defaultValue:{value:`"sunday"`,computed:!1},required:!1}}}})))()}function He(e,t){if(t&&f(e)&&e[0]instanceof Date)return e[0];if(!t&&e instanceof Date)return e}function Ue({view:e,datePickerLevel:t,selectionMode:n=`day`,weekEndDay:i=`sunday`,onViewChange:o,...s}){let[c]=(0,Q.useState)(()=>d(new Date)),l=He(s.value,s.selectsRange),u=l?.getTime()??null,[f,p]=(0,Q.useState)(()=>({sourceValueTime:u,currentDate:l??d(new Date)})),h=l&&f.sourceValueTime!==u?l:f.currentDate,_=s.currentDate??h,b={selectionMode:n,weekEndDay:i},x=e=>{let t=typeof e==`function`?e(_):e;s.currentDate===void 0&&p({sourceValueTime:u,currentDate:t}),s.onCurrentDateChange?.(t)},C=()=>{if(e===`day`){x(e=>m(e,-1));return}if(e===`month`){x(e=>v(e,-1));return}x(e=>v(e,-12))},w=()=>{if(e===`day`){x(e=>m(e,1));return}if(e===`month`){x(e=>v(e,1));return}x(e=>v(e,12))};return(0,$.jsxs)(`div`,{className:J.calendarView,children:[(()=>{let t=``;if(e===`day`)t=_.toLocaleDateString(`ru-RU`,{month:`long`,year:`numeric`});else if(e===`month`)t=_.getFullYear().toString();else{let e=Math.floor(_.getFullYear()/12)*12;t=`${e} - ${e+11}`}return(0,$.jsxs)(`div`,{className:J.calendarHeader,children:[(0,$.jsx)(S,{icon:(0,$.jsx)(r,{}),onClick:C,variant:`ghost`,"aria-label":`Предыдущий`,"data-action":`calendar-previous`}),(0,$.jsx)(S,{onClick:()=>{e===`day`?o(`month`):e===`month`&&o(`year`)},variant:`ghost`,className:`flex1`,"data-ui":`calendar-view-switch-button`,"data-action":`calendar-switch-view`,children:t}),(0,$.jsx)(S,{icon:(0,$.jsx)(a,{}),onClick:w,variant:`ghost`,"aria-label":`Следующий`,"data-ui":`calendar-next-button`,"data-action":`calendar-next`})]})})(),(()=>{let r=e=>{let t=g(e,b);if(!(!t||!y(t,{minDate:s.minDate,maxDate:s.maxDate}))){if(s.selectsRange){let e=null,n=null;if(Array.isArray(s.value)&&([e,n]=s.value),!e||n){s.onChange([t.start,null]);return}let r=g(e,b);if(!r)return;if(t.start<r.start){s.onChange([t.start,r.end]);return}s.onChange([r.start,t.end]);return}s.onChange(t.start)}},a=e=>{if(x(e),n===`month`||!E(`day`,t)){r(e);return}o(`day`)},l=e=>{if(x(e),n===`year`||!E(`month`,t)){r(e);return}o(`month`)};switch(e){case`day`:return(0,$.jsx)(U,{now:c,currentDate:_,value:s.value,onChange:r,minDate:s.minDate,maxDate:s.maxDate,selectsRange:s.selectsRange,selectionMode:n,weekEndDay:i});case`month`:return(0,$.jsx)(q,{currentDate:_,value:s.value,onChange:a,minDate:s.minDate,maxDate:s.maxDate,selectsRange:s.selectsRange,selectsPeriod:n===`month`||!E(`day`,t),selectionMode:n,weekEndDay:i});case`year`:return(0,$.jsx)(Z,{currentDate:_,value:s.value,onChange:l,minDate:s.minDate,maxDate:s.maxDate,selectsRange:s.selectsRange,selectsPeriod:n===`year`||!E(`month`,t),selectionMode:n,weekEndDay:i});default:return null}})()]})}var Q,$;function We(){return(We=e((()=>{Q=t(),b(),n(),i(),x(),A(),he(),De(),Ae(),Ve(),$=s(),Ue.__docgenInfo={description:`Отображает календарь выбора даты в календарной семантике без timezone-сдвига.`,methods:[],displayName:`CalendarView`,props:{view:{required:!0,tsType:{name:`union`,raw:`"day" | "month" | "year"`,elements:[{name:`literal`,value:`"day"`},{name:`literal`,value:`"month"`},{name:`literal`,value:`"year"`}]},description:``},datePickerLevel:{required:!0,tsType:{name:`union`,raw:`"day" | "month" | "year"`,elements:[{name:`literal`,value:`"day"`},{name:`literal`,value:`"month"`},{name:`literal`,value:`"year"`}]},description:``},selectionMode:{required:!1,tsType:{name:`CalendarPeriodSelectionMode`},description:``,defaultValue:{value:`"day"`,computed:!1}},weekEndDay:{required:!1,tsType:{name:`CalendarWeekEndDay`},description:``,defaultValue:{value:`"sunday"`,computed:!1}},onViewChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(view: CalendarType) => void`,signature:{arguments:[{type:{name:`union`,raw:`"day" | "month" | "year"`,elements:[{name:`literal`,value:`"day"`},{name:`literal`,value:`"month"`},{name:`literal`,value:`"year"`}]},name:`view`}],return:{name:`void`}}},description:``},selectsRange:{required:!1,tsType:{name:`boolean`},description:``},value:{required:!0,tsType:{name:`union`,raw:`Date | NullableDateRange | null`,elements:[{name:`Date`},{name:`NullableDateRange`},{name:`null`}]},description:``},onChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(date: Date | NullableDateRange) => void`,signature:{arguments:[{type:{name:`union`,raw:`Date | NullableDateRange`,elements:[{name:`Date`},{name:`NullableDateRange`}]},name:`date`}],return:{name:`void`}}},description:``},minDate:{required:!1,tsType:{name:`Date`},description:``},maxDate:{required:!1,tsType:{name:`Date`},description:``},currentDate:{required:!1,tsType:{name:`Date`},description:``},onCurrentDateChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(date: Date) => void`,signature:{arguments:[{type:{name:`Date`},name:`date`}],return:{name:`void`}}},description:``}}}})))()}export{A as a,w as c,ie as i,T as l,We as n,E as o,re as r,te as s,Ue as t};
@@ -1,2 +1,2 @@
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"./check-uBaZUURY.js";import{i as a,n as o,r as s}from"./iframe-CD1cMwos.js";import{a as c,i as l}from"./utils-DUM89eIj.js";import{n as u,t as d}from"./ui.module-CiLQZm_L.js";import{i as f,r as p}from"./uiClasses-DiXn3Hc-.js";import{n as m,t as h}from"./CheckBox.module-BNQm6HXI.js";var g,_;function v(){return(v=e((()=>{a(),g=[[`path`,{d:`M5 12h14`,key:`1ays0h`}]],_=s(`minus`,g)})))()}function y({label:e,description:t,placeholder:n,disabled:r,size:a,className:o,onChange:s,value:l,noWrap:d,id:f,tone:m=`neutral`,indeterminate:g=!1,...v}){let y=(0,b.useId)(),S=f??y,C=t?`${S}-description`:void 0,w=e??n,T=l??!1,E=e=>{e&&(e.indeterminate=g)};return(0,x.jsxs)(`div`,{className:c(u.uiElement,a&&u.uiSizable,a&&u[a],r&&u.disabled,o),"aria-disabled":r||void 0,children:[(0,x.jsxs)(`div`,{className:h.row,children:[(0,x.jsxs)(`div`,{className:c(h.wrapper,p(m)),children:[(0,x.jsx)(`input`,{...v,ref:E,id:S,type:`checkbox`,checked:T,disabled:r,"aria-checked":g?`mixed`:T,"aria-describedby":C,className:c(u.uiSelectionControl,h.input,g&&h.inputIndeterminate),onChange:()=>s?.(!T)}),(0,x.jsx)(`div`,{className:c(u.uiSelectionIcon,h.icon),"aria-hidden":`true`,children:g?(0,x.jsx)(_,{}):(0,x.jsx)(i,{})})]}),w&&(0,x.jsx)(`label`,{htmlFor:S,className:c(u.uiLabelBase,d&&`textNoWrap`),children:w})]}),t&&(0,x.jsx)(`p`,{id:C,className:u.uiDescription,children:t})]})}var b,x;function S(){return(S=e((()=>{b=t(n(),1),l(),r(),v(),d(),f(),m(),x=o(),y.__docgenInfo={description:`Компонент флажка для выбора булевого значения в формах и списках.
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"./check-BI1SJVLE.js";import{i as a,n as o,r as s}from"./iframe-CyRHAH4o.js";import{a as c,i as l}from"./utils-DUM89eIj.js";import{n as u,t as d}from"./ui.module-CiLQZm_L.js";import{i as f,r as p}from"./uiClasses-DiXn3Hc-.js";import{n as m,t as h}from"./CheckBox.module-BNQm6HXI.js";var g,_;function v(){return(v=e((()=>{a(),g=[[`path`,{d:`M5 12h14`,key:`1ays0h`}]],_=s(`minus`,g)})))()}function y({label:e,description:t,placeholder:n,disabled:r,size:a,className:o,onChange:s,value:l,noWrap:d,id:f,tone:m=`neutral`,indeterminate:g=!1,...v}){let y=(0,b.useId)(),S=f??y,C=t?`${S}-description`:void 0,w=e??n,T=l??!1,E=e=>{e&&(e.indeterminate=g)};return(0,x.jsxs)(`div`,{className:c(u.uiElement,a&&u.uiSizable,a&&u[a],r&&u.disabled,o),"aria-disabled":r||void 0,children:[(0,x.jsxs)(`div`,{className:h.row,children:[(0,x.jsxs)(`div`,{className:c(h.wrapper,p(m)),children:[(0,x.jsx)(`input`,{...v,ref:E,id:S,type:`checkbox`,checked:T,disabled:r,"aria-checked":g?`mixed`:T,"aria-describedby":C,className:c(u.uiSelectionControl,h.input,g&&h.inputIndeterminate),onChange:()=>s?.(!T)}),(0,x.jsx)(`div`,{className:c(u.uiSelectionIcon,h.icon),"aria-hidden":`true`,children:g?(0,x.jsx)(_,{}):(0,x.jsx)(i,{})})]}),w&&(0,x.jsx)(`label`,{htmlFor:S,className:c(u.uiLabelBase,d&&`textNoWrap`),children:w})]}),t&&(0,x.jsx)(`p`,{id:C,className:u.uiDescription,children:t})]})}var b,x;function S(){return(S=e((()=>{b=t(n(),1),l(),r(),v(),d(),f(),m(),x=o(),y.__docgenInfo={description:`Компонент флажка для выбора булевого значения в формах и списках.
2
2
  Поддерживает tone + appearance и использует общие selection utility-классы из ui.module.scss.`,methods:[],displayName:`CheckBox`,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:``},tone:{required:!1,tsType:{name:`union`,raw:`"neutral" | "brand" | "error" | "warning" | "success" | "info"`,elements:[{name:`literal`,value:`"neutral"`},{name:`literal`,value:`"brand"`},{name:`literal`,value:`"error"`},{name:`literal`,value:`"warning"`},{name:`literal`,value:`"success"`},{name:`literal`,value:`"info"`}]},description:``,defaultValue:{value:`"neutral"`,computed:!1}},noWrap:{required:!1,tsType:{name:`boolean`},description:``},indeterminate:{required:!1,tsType:{name:`boolean`},description:'Показывает частично выбранную группу и публикует `aria-checked="mixed"`.',defaultValue:{value:`false`,computed:!1}}},composes:[`Omit`]}})))()}export{v as i,S as n,_ as r,y as t};
@@ -1,4 +1,4 @@
1
- import{n as e}from"./rolldown-runtime-C0FnF6B9.js";import{n as t}from"./iframe-CD1cMwos.js";import{i as n,r}from"./react-qN2cStNd.js";import{a as i,d as a,f as o,l as s,m as c,n as l,p as u,r as d,u as f}from"./blocks-BkGgmJsC.js";import{a as p,i as m,n as h,o as g,r as _,t as v}from"./CheckBox.stories-D4IsLr4P.js";function y(e){let t={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...n(),...e.components};return(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(s,{of:v,parameters:{docs:{toc:!0}}}),`
1
+ import{n as e}from"./rolldown-runtime-C0FnF6B9.js";import{n as t}from"./iframe-CyRHAH4o.js";import{i as n,r}from"./react-qN2cStNd.js";import{a as i,d as a,f as o,l as s,m as c,n as l,p as u,r as d,u as f}from"./blocks-BAkpxLLq.js";import{a as p,i as m,n as h,o as g,r as _,t as v}from"./CheckBox.stories-DRQcsnNN.js";function y(e){let t={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...n(),...e.components};return(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(s,{of:v,parameters:{docs:{toc:!0}}}),`
2
2
  `,(0,x.jsx)(u,{children:`CheckBox`}),`
3
3
  `,(0,x.jsx)(o,{children:`Флажок для булевых полей с общими UI-схемами tone и appearance`}),`
4
4
  `,(0,x.jsx)(t.p,{children:`CheckBox уже имеет живые stories, а эта страница собирает их в структурированную документацию с краткими рекомендациями, примерами подключения и API.
@@ -1,4 +1,4 @@
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,t as i}from"./CheckBox-3WpAVlwd.js";import{n as a}from"./iframe-CD1cMwos.js";import{n as o,t as s}from"./createControlledStoryRender-DHsyXc1B.js";var c=t({Controlled:()=>p,Disabled:()=>g,Sizes:()=>h,Tones:()=>m,__namedExportsOrder:()=>_,default:()=>f}),l,u,d,f,p,m,h,g,_;function v(){return(v=e((()=>{l=n(),o(),r(),u=a(),d=s((e,t)=>(0,u.jsx)(i,{...e,value:e.value??!1,onChange:n=>{e.onChange?.(n),t({value:n})}})),f={title:`Shared/UI/CheckBox`,component:i,args:{value:!1,onChange:()=>{}},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{label:{description:`Текст основной подписи чекбокса.`,control:`text`},description:{description:`Дополнительное описание под элементом.`,control:`text`},placeholder:{description:"Текст подписи, если `label` не задан.",control:`text`},value:{description:`Текущее состояние чекбокса.`,control:`boolean`},onChange:{description:`Вызывается при изменении состояния.`,control:!1},disabled:{description:`Блокирует взаимодействие с элементом.`,control:`boolean`},size:{description:`Размер визуального контрола и текста.`,control:`select`,options:[`xs`,`sm`,`md`,`lg`,`xl`]},tone:{description:`Цветовой тон чекбокса.`,control:`inline-radio`,options:[`neutral`,`brand`,`error`,`warning`,`success`,`info`]},noWrap:{description:`Не переносит текст подписи на новую строку.`,control:`boolean`},indeterminate:{description:'Показывает частично выбранное состояние с `aria-checked="mixed"`.',control:`boolean`}}},p={render:d,args:{label:`Принимать условия`,description:`Подтверждение условий использования сервиса.`,value:!1,size:`md`,disabled:!1,tone:`neutral`}},m={render:()=>{let[e,t]=(0,l.useState)({neutral:!0,info:!0,success:!0,warning:!0,error:!0});return(0,u.jsx)(`div`,{style:{display:`grid`,gap:12},children:[`neutral`,`info`,`success`,`warning`,`error`].map(n=>(0,u.jsx)(i,{tone:n,label:`Тон ${n}`,value:e[n],onChange:e=>t(t=>({...t,[n]:e}))},n))})}},h={render:()=>{let[e,t]=(0,l.useState)({xs:!1,sm:!0,md:!1,lg:!0,xl:!1});return(0,u.jsx)(`div`,{style:{display:`grid`,gap:12},children:[`xs`,`sm`,`md`,`lg`,`xl`].map(n=>(0,u.jsx)(i,{size:n,label:`Размер ${n}`,value:e[n],onChange:e=>t(t=>({...t,[n]:e}))},n))})}},g={render:d,args:{label:`Недоступный чекбокс`,description:`Изменение недоступно из-за прав доступа.`,value:!0,disabled:!0,tone:`neutral`}},p.parameters={...p.parameters,docs:{...p.parameters?.docs,source:{originalSource:`{
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,t as i}from"./CheckBox-BJL2UykG.js";import{n as a}from"./iframe-CyRHAH4o.js";import{n as o,t as s}from"./createControlledStoryRender-DHsyXc1B.js";var c=t({Controlled:()=>p,Disabled:()=>g,Sizes:()=>h,Tones:()=>m,__namedExportsOrder:()=>_,default:()=>f}),l,u,d,f,p,m,h,g,_;function v(){return(v=e((()=>{l=n(),o(),r(),u=a(),d=s((e,t)=>(0,u.jsx)(i,{...e,value:e.value??!1,onChange:n=>{e.onChange?.(n),t({value:n})}})),f={title:`Shared/UI/CheckBox`,component:i,args:{value:!1,onChange:()=>{}},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{label:{description:`Текст основной подписи чекбокса.`,control:`text`},description:{description:`Дополнительное описание под элементом.`,control:`text`},placeholder:{description:"Текст подписи, если `label` не задан.",control:`text`},value:{description:`Текущее состояние чекбокса.`,control:`boolean`},onChange:{description:`Вызывается при изменении состояния.`,control:!1},disabled:{description:`Блокирует взаимодействие с элементом.`,control:`boolean`},size:{description:`Размер визуального контрола и текста.`,control:`select`,options:[`xs`,`sm`,`md`,`lg`,`xl`]},tone:{description:`Цветовой тон чекбокса.`,control:`inline-radio`,options:[`neutral`,`brand`,`error`,`warning`,`success`,`info`]},noWrap:{description:`Не переносит текст подписи на новую строку.`,control:`boolean`},indeterminate:{description:'Показывает частично выбранное состояние с `aria-checked="mixed"`.',control:`boolean`}}},p={render:d,args:{label:`Принимать условия`,description:`Подтверждение условий использования сервиса.`,value:!1,size:`md`,disabled:!1,tone:`neutral`}},m={render:()=>{let[e,t]=(0,l.useState)({neutral:!0,info:!0,success:!0,warning:!0,error:!0});return(0,u.jsx)(`div`,{style:{display:`grid`,gap:12},children:[`neutral`,`info`,`success`,`warning`,`error`].map(n=>(0,u.jsx)(i,{tone:n,label:`Тон ${n}`,value:e[n],onChange:e=>t(t=>({...t,[n]:e}))},n))})}},h={render:()=>{let[e,t]=(0,l.useState)({xs:!1,sm:!0,md:!1,lg:!0,xl:!1});return(0,u.jsx)(`div`,{style:{display:`grid`,gap:12},children:[`xs`,`sm`,`md`,`lg`,`xl`].map(n=>(0,u.jsx)(i,{size:n,label:`Размер ${n}`,value:e[n],onChange:e=>t(t=>({...t,[n]:e}))},n))})}},g={render:d,args:{label:`Недоступный чекбокс`,description:`Изменение недоступно из-за прав доступа.`,value:!0,disabled:!0,tone:`neutral`}},p.parameters={...p.parameters,docs:{...p.parameters?.docs,source:{originalSource:`{
2
2
  render: renderCheckBoxStory,
3
3
  args: {
4
4
  label: "Принимать условия",
@@ -1 +1 @@
1
- import{n as e,o as t}from"./rolldown-runtime-C0FnF6B9.js";import{t as n}from"./react-C21x__mS.js";import{a as r,o as i,s as a}from"./iframe-CD1cMwos.js";import{r as o,t as s}from"./chunk-QQBDHPVZ-B98qboss.js";import{a as c,u as l}from"./theming-mTWhffkp.js";import{I as u,W as d,d as f,n as p,o as m,x as h}from"./components-NKMCS9u_.js";function ee(e,t,{signal:n,edges:r}={}){let i,a=null,o=r!=null&&r.includes(`leading`),s=r==null||r.includes(`trailing`),c=()=>{a!==null&&(e.apply(i,a),i=void 0,a=null)},l=()=>{s&&c(),p()},u=null,d=()=>{u!=null&&clearTimeout(u),u=setTimeout(()=>{u=null,l()},t)},f=()=>{u!==null&&(clearTimeout(u),u=null)},p=()=>{f(),i=void 0,a=null},m=()=>{c()},h=function(...e){if(n?.aborted)return;i=this,a=e;let t=u==null;d(),o&&t&&c()};return h.schedule=d,h.cancel=p,h.flush=m,n?.addEventListener(`abort`,p,{once:!0}),h}function g(){return(g=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}function _(e,t){if(e==null)return{};var n,r,i={},a=Object.keys(e);for(r=0;r<a.length;r++)t.indexOf(n=a[r])>=0||(i[n]=e[n]);return i}function v(e){var t=(0,x.useRef)(e),n=(0,x.useRef)(function(e){t.current&&t.current(e)});return t.current=e,n.current}function y(e,t,n){var r=v(n),i=(0,x.useState)(function(){return e.toHsva(t)}),a=i[0],o=i[1],s=(0,x.useRef)({color:t,hsva:a});return(0,x.useEffect)(function(){if(!e.equal(t,s.current.color)){var n=e.toHsva(t);s.current={hsva:n,color:t},o(n)}},[t,e]),(0,x.useEffect)(function(){var t;U(a,s.current.hsva)||e.equal(t=e.fromHsva(a),s.current.color)||(s.current={hsva:a,color:t},r(t))},[a,e,r]),[a,(0,x.useCallback)(function(e){o(function(t){return Object.assign({},t,e)})},[])]}var b,x,S,C,w,T,E,D,O,k,te,ne,A,j,M,N,re,ie,P,ae,oe,se,ce,F,I,L,R,le,z,ue,B,V,H,U,W,de,fe,pe,me,G,K,he,ge,_e,ve,ye,be,xe,Se,Ce,we,Te,Ee,De,Oe,ke,Ae,je,Me,q,Ne,Pe,Fe,J,Ie,Le,Y,X,Re,ze,Be,Z,Ve,He,Q,Ue,$,We;function Ge(){return(Ge=e((()=>{o(),a(),b=t(n(),1),h(),d(),x=t(n(),1),c(),S=r({"../../../node_modules/color-name/index.js"(e,t){t.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}}}),C=r({"../../../node_modules/color-convert/conversions.js"(e,t){var n=S(),r={};for(let e of Object.keys(n))r[n[e]]=e;var i={rgb:{channels:3,labels:`rgb`},hsl:{channels:3,labels:`hsl`},hsv:{channels:3,labels:`hsv`},hwb:{channels:3,labels:`hwb`},cmyk:{channels:4,labels:`cmyk`},xyz:{channels:3,labels:`xyz`},lab:{channels:3,labels:`lab`},lch:{channels:3,labels:`lch`},hex:{channels:1,labels:[`hex`]},keyword:{channels:1,labels:[`keyword`]},ansi16:{channels:1,labels:[`ansi16`]},ansi256:{channels:1,labels:[`ansi256`]},hcg:{channels:3,labels:[`h`,`c`,`g`]},apple:{channels:3,labels:[`r16`,`g16`,`b16`]},gray:{channels:1,labels:[`gray`]}};t.exports=i;for(let e of Object.keys(i)){if(!(`channels`in i[e]))throw Error(`missing channels property: `+e);if(!(`labels`in i[e]))throw Error(`missing channel labels property: `+e);if(i[e].labels.length!==i[e].channels)throw Error(`channel and label counts mismatch: `+e);let{channels:t,labels:n}=i[e];delete i[e].channels,delete i[e].labels,Object.defineProperty(i[e],"channels",{value:t}),Object.defineProperty(i[e],"labels",{value:n})}i.rgb.hsl=function(e){let t=e[0]/255,n=e[1]/255,r=e[2]/255,i=Math.min(t,n,r),a=Math.max(t,n,r),o=a-i,s,c;a===i?s=0:t===a?s=(n-r)/o:n===a?s=2+(r-t)/o:r===a&&(s=4+(t-n)/o),s=Math.min(s*60,360),s<0&&(s+=360);let l=(i+a)/2;return c=a===i?0:l<=.5?o/(a+i):o/(2-a-i),[s,c*100,l*100]},i.rgb.hsv=function(e){let t,n,r,i,a,o=e[0]/255,s=e[1]/255,c=e[2]/255,l=Math.max(o,s,c),u=l-Math.min(o,s,c),d=function(e){return(l-e)/6/u+1/2};return u===0?(i=0,a=0):(a=u/l,t=d(o),n=d(s),r=d(c),o===l?i=r-n:s===l?i=1/3+t-r:c===l&&(i=2/3+n-t),i<0?i+=1:i>1&&--i),[i*360,a*100,l*100]},i.rgb.hwb=function(e){let t=e[0],n=e[1],r=e[2],a=i.rgb.hsl(e)[0],o=1/255*Math.min(t,Math.min(n,r));return r=1-1/255*Math.max(t,Math.max(n,r)),[a,o*100,r*100]},i.rgb.cmyk=function(e){let t=e[0]/255,n=e[1]/255,r=e[2]/255,i=Math.min(1-t,1-n,1-r),a=(1-t-i)/(1-i)||0,o=(1-n-i)/(1-i)||0,s=(1-r-i)/(1-i)||0;return[a*100,o*100,s*100,i*100]};function a(e,t){return(e[0]-t[0])**2+(e[1]-t[1])**2+(e[2]-t[2])**2}i.rgb.keyword=function(e){let t=r[e];if(t)return t;let i=1/0,o;for(let t of Object.keys(n)){let r=n[t],s=a(e,r);s<i&&(i=s,o=t)}return o},i.keyword.rgb=function(e){return n[e]},i.rgb.xyz=function(e){let t=e[0]/255,n=e[1]/255,r=e[2]/255;t=t>.04045?((t+.055)/1.055)**2.4:t/12.92,n=n>.04045?((n+.055)/1.055)**2.4:n/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92;let i=t*.4124+n*.3576+r*.1805,a=t*.2126+n*.7152+r*.0722,o=t*.0193+n*.1192+r*.9505;return[i*100,a*100,o*100]},i.rgb.lab=function(e){let t=i.rgb.xyz(e),n=t[0],r=t[1],a=t[2];return n/=95.047,r/=100,a/=108.883,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,a=a>.008856?a**(1/3):7.787*a+16/116,[116*r-16,500*(n-r),200*(r-a)]},i.hsl.rgb=function(e){let t=e[0]/360,n=e[1]/100,r=e[2]/100,i,a,o;if(n===0)return o=r*255,[o,o,o];i=r<.5?r*(1+n):r+n-r*n;let s=2*r-i,c=[0,0,0];for(let e=0;e<3;e++)a=t+1/3*-(e-1),a<0&&a++,a>1&&a--,o=6*a<1?s+(i-s)*6*a:2*a<1?i:3*a<2?s+(i-s)*(2/3-a)*6:s,c[e]=o*255;return c},i.hsl.hsv=function(e){let t=e[0],n=e[1]/100,r=e[2]/100,i=n,a=Math.max(r,.01);r*=2,n*=r<=1?r:2-r,i*=a<=1?a:2-a;let o=(r+n)/2;return[t,(r===0?2*i/(a+i):2*n/(r+n))*100,o*100]},i.hsv.rgb=function(e){let t=e[0]/60,n=e[1]/100,r=e[2]/100,i=Math.floor(t)%6,a=t-Math.floor(t),o=255*r*(1-n),s=255*r*(1-n*a),c=255*r*(1-n*(1-a));switch(r*=255,i){case 0:return[r,c,o];case 1:return[s,r,o];case 2:return[o,r,c];case 3:return[o,s,r];case 4:return[c,o,r];case 5:return[r,o,s]}},i.hsv.hsl=function(e){let t=e[0],n=e[1]/100,r=e[2]/100,i=Math.max(r,.01),a,o;o=(2-n)*r;let s=(2-n)*i;return a=n*i,a/=s<=1?s:2-s,a||=0,o/=2,[t,a*100,o*100]},i.hwb.rgb=function(e){let t=e[0]/360,n=e[1]/100,r=e[2]/100,i=n+r,a;i>1&&(n/=i,r/=i);let o=Math.floor(6*t),s=1-r;a=6*t-o,o&1&&(a=1-a);let c=n+a*(s-n),l,u,d;switch(o){default:case 6:case 0:l=s,u=c,d=n;break;case 1:l=c,u=s,d=n;break;case 2:l=n,u=s,d=c;break;case 3:l=n,u=c,d=s;break;case 4:l=c,u=n,d=s;break;case 5:l=s,u=n,d=c}return[l*255,u*255,d*255]},i.cmyk.rgb=function(e){let t=e[0]/100,n=e[1]/100,r=e[2]/100,i=e[3]/100,a=1-Math.min(1,t*(1-i)+i),o=1-Math.min(1,n*(1-i)+i),s=1-Math.min(1,r*(1-i)+i);return[a*255,o*255,s*255]},i.xyz.rgb=function(e){let t=e[0]/100,n=e[1]/100,r=e[2]/100,i,a,o;return i=t*3.2406+n*-1.5372+r*-.4986,a=t*-.9689+n*1.8758+r*.0415,o=t*.0557+n*-.204+r*1.057,i=i>.0031308?1.055*i**(1/2.4)-.055:i*12.92,a=a>.0031308?1.055*a**(1/2.4)-.055:a*12.92,o=o>.0031308?1.055*o**(1/2.4)-.055:o*12.92,i=Math.min(Math.max(0,i),1),a=Math.min(Math.max(0,a),1),o=Math.min(Math.max(0,o),1),[i*255,a*255,o*255]},i.xyz.lab=function(e){let t=e[0],n=e[1],r=e[2];return t/=95.047,n/=100,r/=108.883,t=t>.008856?t**(1/3):7.787*t+16/116,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,[116*n-16,500*(t-n),200*(n-r)]},i.lab.xyz=function(e){let t=e[0],n=e[1],r=e[2],i,a,o;a=(t+16)/116,i=n/500+a,o=a-r/200;let s=a**3,c=i**3,l=o**3;return a=s>.008856?s:(a-16/116)/7.787,i=c>.008856?c:(i-16/116)/7.787,o=l>.008856?l:(o-16/116)/7.787,i*=95.047,a*=100,o*=108.883,[i,a,o]},i.lab.lch=function(e){let t=e[0],n=e[1],r=e[2],i;return i=Math.atan2(r,n)*360/2/Math.PI,i<0&&(i+=360),[t,Math.sqrt(n*n+r*r),i]},i.lch.lab=function(e){let t=e[0],n=e[1],r=e[2]/360*2*Math.PI;return[t,n*Math.cos(r),n*Math.sin(r)]},i.rgb.ansi16=function(e,t=null){let[n,r,a]=e,o=t===null?i.rgb.hsv(e)[2]:t;if(o=Math.round(o/50),o===0)return 30;let s=30+(Math.round(a/255)<<2|Math.round(r/255)<<1|Math.round(n/255));return o===2&&(s+=60),s},i.hsv.ansi16=function(e){return i.rgb.ansi16(i.hsv.rgb(e),e[2])},i.rgb.ansi256=function(e){let t=e[0],n=e[1],r=e[2];return t===n&&n===r?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(n/255*5)+Math.round(r/255*5)},i.ansi16.rgb=function(e){let t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];let n=(~~(e>50)+1)*.5;return[(t&1)*n*255,(t>>1&1)*n*255,(t>>2&1)*n*255]},i.ansi256.rgb=function(e){if(e>=232){let t=(e-232)*10+8;return[t,t,t]}e-=16;let t;return[Math.floor(e/36)/5*255,Math.floor((t=e%36)/6)/5*255,t%6/5*255]},i.rgb.hex=function(e){let t=(((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255)).toString(16).toUpperCase();return`000000`.substring(t.length)+t},i.hex.rgb=function(e){let t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];let n=t[0];t[0].length===3&&(n=n.split(``).map(e=>e+e).join(``));let r=parseInt(n,16);return[r>>16&255,r>>8&255,r&255]},i.rgb.hcg=function(e){let t=e[0]/255,n=e[1]/255,r=e[2]/255,i=Math.max(Math.max(t,n),r),a=Math.min(Math.min(t,n),r),o=i-a,s,c;return s=o<1?a/(1-o):0,c=o<=0?0:i===t?(n-r)/o%6:i===n?2+(r-t)/o:4+(t-n)/o,c/=6,c%=1,[c*360,o*100,s*100]},i.hsl.hcg=function(e){let t=e[1]/100,n=e[2]/100,r=n<.5?2*t*n:2*t*(1-n),i=0;return r<1&&(i=(n-.5*r)/(1-r)),[e[0],r*100,i*100]},i.hsv.hcg=function(e){let t=e[1]/100,n=e[2]/100,r=t*n,i=0;return r<1&&(i=(n-r)/(1-r)),[e[0],r*100,i*100]},i.hcg.rgb=function(e){let t=e[0]/360,n=e[1]/100,r=e[2]/100;if(n===0)return[r*255,r*255,r*255];let i=[0,0,0],a=t%1*6,o=a%1,s=1-o,c=0;switch(Math.floor(a)){case 0:i[0]=1,i[1]=o,i[2]=0;break;case 1:i[0]=s,i[1]=1,i[2]=0;break;case 2:i[0]=0,i[1]=1,i[2]=o;break;case 3:i[0]=0,i[1]=s,i[2]=1;break;case 4:i[0]=o,i[1]=0,i[2]=1;break;default:i[0]=1,i[1]=0,i[2]=s}return c=(1-n)*r,[(n*i[0]+c)*255,(n*i[1]+c)*255,(n*i[2]+c)*255]},i.hcg.hsv=function(e){let t=e[1]/100,n=t+e[2]/100*(1-t),r=0;return n>0&&(r=t/n),[e[0],r*100,n*100]},i.hcg.hsl=function(e){let t=e[1]/100,n=e[2]/100*(1-t)+.5*t,r=0;return n>0&&n<.5?r=t/(2*n):n>=.5&&n<1&&(r=t/(2*(1-n))),[e[0],r*100,n*100]},i.hcg.hwb=function(e){let t=e[1]/100,n=t+e[2]/100*(1-t);return[e[0],(n-t)*100,(1-n)*100]},i.hwb.hcg=function(e){let t=e[1]/100,n=1-e[2]/100,r=n-t,i=0;return r<1&&(i=(n-r)/(1-r)),[e[0],r*100,i*100]},i.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]},i.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]},i.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]},i.gray.hsl=function(e){return[0,0,e[0]]},i.gray.hsv=i.gray.hsl,i.gray.hwb=function(e){return[0,100,e[0]]},i.gray.cmyk=function(e){return[0,0,0,e[0]]},i.gray.lab=function(e){return[e[0],0,0]},i.gray.hex=function(e){let t=Math.round(e[0]/100*255)&255,n=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return`000000`.substring(n.length)+n},i.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]}}}),w=r({"../../../node_modules/color-convert/route.js"(e,t){var n=C();function r(){let e={},t=Object.keys(n);for(let n=t.length,r=0;r<n;r++)e[t[r]]={distance:-1,parent:null};return e}function i(e){let t=r(),i=[e];for(t[e].distance=0;i.length;){let e=i.pop(),r=Object.keys(n[e]);for(let n=r.length,a=0;a<n;a++){let n=r[a],o=t[n];o.distance===-1&&(o.distance=t[e].distance+1,o.parent=e,i.unshift(n))}}return t}function a(e,t){return function(n){return t(e(n))}}function o(e,t){let r=[t[e].parent,e],i=n[t[e].parent][e],o=t[e].parent;for(;t[o].parent;)r.unshift(t[o].parent),i=a(n[t[o].parent][o],i),o=t[o].parent;return i.conversion=r,i}t.exports=function(e){let t=i(e),n={},r=Object.keys(t);for(let e=r.length,i=0;i<e;i++){let e=r[i];t[e].parent!==null&&(n[e]=o(e,t))}return n}}}),T=r({"../../../node_modules/color-convert/index.js"(e,t){var n=C(),r=w(),i={},a=Object.keys(n);function o(e){let t=function(...t){let n=t[0];return n==null?n:(n.length>1&&(t=n),e(t))};return`conversion`in e&&(t.conversion=e.conversion),t}function s(e){let t=function(...t){let n=t[0];if(n==null)return n;n.length>1&&(t=n);let r=e(t);if(typeof r==`object`)for(let e=r.length,t=0;t<e;t++)r[t]=Math.round(r[t]);return r};return`conversion`in e&&(t.conversion=e.conversion),t}a.forEach(e=>{i[e]={},Object.defineProperty(i[e],"channels",{value:n[e].channels}),Object.defineProperty(i[e],"labels",{value:n[e].labels});let t=r(e);Object.keys(t).forEach(n=>{let r=t[n];i[e][n]=s(r),i[e][n].raw=o(r)})}),t.exports=i}}),E=i(T(),1),D=function(e,t,n){return t===void 0&&(t=0),n===void 0&&(n=1),e>n?n:e<t?t:e},O=function(e){return`touches`in e},k=function(e){return e&&e.ownerDocument.defaultView||self},te=function(e,t,n){var r=e.getBoundingClientRect(),i=O(t)?(function(e,t){for(var n=0;n<e.length;n++)if(e[n].identifier===t)return e[n];return e[0]})(t.touches,n):t;return{left:D((i.pageX-(r.left+k(e).pageXOffset))/r.width),top:D((i.pageY-(r.top+k(e).pageYOffset))/r.height)}},ne=function(e){!O(e)&&e.preventDefault()},A=x.memo(function(e){var t=e.onMove,n=e.onKey,r=_(e,[`onMove`,`onKey`]),i=(0,x.useRef)(null),a=v(t),o=v(n),s=(0,x.useRef)(null),c=(0,x.useRef)(!1),l=(0,x.useMemo)(function(){var e=function(e){ne(e),(O(e)?e.touches.length>0:e.buttons>0)&&i.current?a(te(i.current,e,s.current)):n(!1)},t=function(){return n(!1)};function n(n){var r=c.current,a=k(i.current),o=n?a.addEventListener:a.removeEventListener;o(r?`touchmove`:`mousemove`,e),o(r?`touchend`:`mouseup`,t)}return[function(e){var t=e.nativeEvent,r=i.current;if(r&&(ne(t),!(function(e,t){return t&&!O(e)})(t,c.current)&&r)){if(O(t)){c.current=!0;var o=t.changedTouches||[];o.length&&(s.current=o[0].identifier)}r.focus(),a(te(r,t,s.current)),n(!0)}},function(e){var t=e.which||e.keyCode;t<37||t>40||(e.preventDefault(),o({left:t===39?.05:t===37?-.05:0,top:t===40?.05:t===38?-.05:0}))},n]},[o,a]),u=l[0],d=l[1],f=l[2];return(0,x.useEffect)(function(){return f},[f]),x.createElement(`div`,g({},r,{onTouchStart:u,onMouseDown:u,className:`react-colorful__interactive`,ref:i,onKeyDown:d,tabIndex:0,role:`slider`}))}),j=function(e){return e.filter(Boolean).join(` `)},M=function(e){var t=e.color,n=e.left,r=e.top,i=r===void 0?.5:r,a=j([`react-colorful__pointer`,e.className]);return x.createElement(`div`,{className:a,style:{top:100*i+`%`,left:100*n+`%`}},x.createElement(`div`,{className:`react-colorful__pointer-fill`,style:{backgroundColor:t}}))},N=function(e,t,n){return t===void 0&&(t=0),n===void 0&&(n=10**t),Math.round(n*e)/n},re={grad:.9,turn:360,rad:360/(2*Math.PI)},ie=function(e){return B(P(e))},P=function(e){return e[0]===`#`&&(e=e.substring(1)),e.length<6?{r:parseInt(e[0]+e[0],16),g:parseInt(e[1]+e[1],16),b:parseInt(e[2]+e[2],16),a:e.length===4?N(parseInt(e[3]+e[3],16)/255,2):1}:{r:parseInt(e.substring(0,2),16),g:parseInt(e.substring(2,4),16),b:parseInt(e.substring(4,6),16),a:e.length===8?N(parseInt(e.substring(6,8),16)/255,2):1}},ae=function(e,t){return t===void 0&&(t=`deg`),Number(e)*(re[t]||1)},oe=function(e){var t=/hsla?\(?\s*(-?\d*\.?\d+)(deg|rad|grad|turn)?[,\s]+(-?\d*\.?\d+)%?[,\s]+(-?\d*\.?\d+)%?,?\s*[/\s]*(-?\d*\.?\d+)?(%)?\s*\)?/i.exec(e);return t?se({h:ae(t[1],t[2]),s:Number(t[3]),l:Number(t[4]),a:t[5]===void 0?1:Number(t[5])/(t[6]?100:1)}):{h:0,s:0,v:0,a:1}},se=function(e){var t=e.s,n=e.l;return{h:e.h,s:(t*=(n<50?n:100-n)/100)>0?2*t/(n+t)*100:0,v:n+t,a:e.a}},ce=function(e){return ue(R(e))},F=function(e){var t=e.s,n=e.v,r=e.a,i=(200-t)*n/100;return{h:N(e.h),s:N(i>0&&i<200?t*n/100/(i<=100?i:200-i)*100:0),l:N(i/2),a:N(r,2)}},I=function(e){var t=F(e);return`hsl(`+t.h+`, `+t.s+`%, `+t.l+`%)`},L=function(e){var t=F(e);return`hsla(`+t.h+`, `+t.s+`%, `+t.l+`%, `+t.a+`)`},R=function(e){var t=e.h,n=e.s,r=e.v,i=e.a;t=t/360*6,n/=100,r/=100;var a=Math.floor(t),o=r*(1-n),s=r*(1-(t-a)*n),c=r*(1-(1-t+a)*n),l=a%6;return{r:N(255*[r,s,o,o,c,r][l]),g:N(255*[c,r,r,s,o,o][l]),b:N(255*[o,o,c,r,r,s][l]),a:N(i,2)}},le=function(e){var t=/rgba?\(?\s*(-?\d*\.?\d+)(%)?[,\s]+(-?\d*\.?\d+)(%)?[,\s]+(-?\d*\.?\d+)(%)?,?\s*[/\s]*(-?\d*\.?\d+)?(%)?\s*\)?/i.exec(e);return t?B({r:Number(t[1])/(t[2]?100/255:1),g:Number(t[3])/(t[4]?100/255:1),b:Number(t[5])/(t[6]?100/255:1),a:t[7]===void 0?1:Number(t[7])/(t[8]?100:1)}):{h:0,s:0,v:0,a:1}},z=function(e){var t=e.toString(16);return t.length<2?`0`+t:t},ue=function(e){var t=e.r,n=e.g,r=e.b,i=e.a,a=i<1?z(N(255*i)):``;return`#`+z(t)+z(n)+z(r)+a},B=function(e){var t=e.r,n=e.g,r=e.b,i=e.a,a=Math.max(t,n,r),o=a-Math.min(t,n,r),s=o?a===t?(n-r)/o:a===n?2+(r-t)/o:4+(t-n)/o:0;return{h:N(60*(s<0?s+6:s)),s:N(a?o/a*100:0),v:N(a/255*100),a:i}},V=x.memo(function(e){var t=e.hue,n=e.onChange,r=j([`react-colorful__hue`,e.className]);return x.createElement(`div`,{className:r},x.createElement(A,{onMove:function(e){n({h:360*e.left})},onKey:function(e){n({h:D(t+360*e.left,0,360)})},"aria-label":`Hue`,"aria-valuenow":N(t),"aria-valuemax":`360`,"aria-valuemin":`0`},x.createElement(M,{className:`react-colorful__hue-pointer`,left:t/360,color:I({h:t,s:100,v:100,a:1})})))}),H=x.memo(function(e){var t=e.hsva,n=e.onChange,r={backgroundColor:I({h:t.h,s:100,v:100,a:1})};return x.createElement(`div`,{className:`react-colorful__saturation`,style:r},x.createElement(A,{onMove:function(e){n({s:100*e.left,v:100-100*e.top})},onKey:function(e){n({s:D(t.s+100*e.left,0,100),v:D(t.v-100*e.top,0,100)})},"aria-label":`Color`,"aria-valuetext":`Saturation `+N(t.s)+`%, Brightness `+N(t.v)+`%`},x.createElement(M,{className:`react-colorful__saturation-pointer`,top:1-t.v/100,left:t.s/100,color:I(t)})))}),U=function(e,t){if(e===t)return!0;for(var n in e)if(e[n]!==t[n])return!1;return!0},W=function(e,t){return e.replace(/\s/g,``)===t.replace(/\s/g,``)},de=function(e,t){return e.toLowerCase()===t.toLowerCase()||U(P(e),P(t))},pe=typeof window<`u`?x.useLayoutEffect:x.useEffect,me=function(){return fe||(typeof __webpack_nonce__<`u`?__webpack_nonce__:void 0)},G=new Map,K=function(e){pe(function(){var t=e.current?e.current.ownerDocument:document;if(t!==void 0&&!G.has(t)){var n=t.createElement(`style`);n.innerHTML=`.react-colorful{position:relative;display:flex;flex-direction:column;width:200px;height:200px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.react-colorful__saturation{position:relative;flex-grow:1;border-color:transparent;border-bottom:12px solid #000;border-radius:8px 8px 0 0;background-image:linear-gradient(0deg,#000,transparent),linear-gradient(90deg,#fff,hsla(0,0%,100%,0))}.react-colorful__alpha-gradient,.react-colorful__pointer-fill{content:"";position:absolute;left:0;top:0;right:0;bottom:0;pointer-events:none;border-radius:inherit}.react-colorful__alpha-gradient,.react-colorful__saturation{box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}.react-colorful__alpha,.react-colorful__hue{position:relative;height:24px}.react-colorful__hue{background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.react-colorful__last-control{border-radius:0 0 8px 8px}.react-colorful__interactive{position:absolute;left:0;top:0;right:0;bottom:0;border-radius:inherit;outline:none;touch-action:none}.react-colorful__pointer{position:absolute;z-index:1;box-sizing:border-box;width:28px;height:28px;transform:translate(-50%,-50%);background-color:#fff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}.react-colorful__interactive:focus .react-colorful__pointer{transform:translate(-50%,-50%) scale(1.1)}.react-colorful__alpha,.react-colorful__alpha-pointer{background-color:#fff;background-image:url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill-opacity=".05"><path d="M8 0h8v8H8zM0 8h8v8H0z"/></svg>')}.react-colorful__saturation-pointer{z-index:3}.react-colorful__hue-pointer{z-index:2}`,G.set(t,n);var r=me();r&&n.setAttribute(`nonce`,r),t.head.appendChild(n)}},[])},he=function(e){var t=e.className,n=e.colorModel,r=e.color,i=r===void 0?n.defaultColor:r,a=e.onChange,o=_(e,[`className`,`colorModel`,`color`,`onChange`]),s=(0,x.useRef)(null);K(s);var c=y(n,i,a),l=c[0],u=c[1],d=j([`react-colorful`,t]);return x.createElement(`div`,g({},o,{ref:s,className:d}),x.createElement(H,{hsva:l,onChange:u}),x.createElement(V,{hue:l.h,onChange:u,className:`react-colorful__last-control`}))},ge={defaultColor:`000`,toHsva:ie,fromHsva:function(e){return ce({h:e.h,s:e.s,v:e.v,a:1})},equal:de},_e=function(e){return x.createElement(he,g({},e,{colorModel:ge}))},ve=function(e){var t=e.className,n=e.hsva,r=e.onChange,i={backgroundImage:`linear-gradient(90deg, `+L(Object.assign({},n,{a:0}))+`, `+L(Object.assign({},n,{a:1}))+`)`},a=j([`react-colorful__alpha`,t]),o=N(100*n.a);return x.createElement(`div`,{className:a},x.createElement(`div`,{className:`react-colorful__alpha-gradient`,style:i}),x.createElement(A,{onMove:function(e){r({a:e.left})},onKey:function(e){r({a:D(n.a+e.left)})},"aria-label":`Alpha`,"aria-valuetext":o+`%`,"aria-valuenow":o,"aria-valuemin":`0`,"aria-valuemax":`100`},x.createElement(M,{className:`react-colorful__alpha-pointer`,left:n.a,color:L(n)})))},ye=function(e){var t=e.className,n=e.colorModel,r=e.color,i=r===void 0?n.defaultColor:r,a=e.onChange,o=_(e,[`className`,`colorModel`,`color`,`onChange`]),s=(0,x.useRef)(null);K(s);var c=y(n,i,a),l=c[0],u=c[1],d=j([`react-colorful`,t]);return x.createElement(`div`,g({},o,{ref:s,className:d}),x.createElement(H,{hsva:l,onChange:u}),x.createElement(V,{hue:l.h,onChange:u}),x.createElement(ve,{hsva:l,onChange:u,className:`react-colorful__last-control`}))},be={defaultColor:`hsla(0, 0%, 0%, 1)`,toHsva:oe,fromHsva:L,equal:W},xe=function(e){return x.createElement(ye,g({},e,{colorModel:be}))},Se={defaultColor:`rgba(0, 0, 0, 1)`,toHsva:le,fromHsva:function(e){var t=R(e);return`rgba(`+t.r+`, `+t.g+`, `+t.b+`, `+t.a+`)`},equal:W},Ce=function(e){return x.createElement(ye,g({},e,{colorModel:Se}))},we=l.div({position:`relative`,maxWidth:250}),Te=l.div({width:200,margin:5,".react-colorful__saturation":{borderRadius:`4px 4px 0 0`},".react-colorful__hue":{boxShadow:`inset 0 0 0 1px rgb(0 0 0 / 5%)`},".react-colorful__last-control":{borderRadius:`0 0 4px 4px`}}),Ee=l.div({display:`grid`,gridTemplateColumns:`repeat(9, 16px)`,gap:6,padding:3,marginTop:5,width:200}),De=e=>`url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill-opacity="0.05" fill="${e?`white`:`black`}"><path d="M8 0h8v8H8zM0 8h8v8H0z"/></svg>')`,Oe=l(p)(({value:e,selected:t,theme:n})=>({width:16,height:16,boxShadow:t?`${n.appBorderColor} 0 0 0 1px inset, ${n.textMutedColor}50 0 0 0 4px`:`${n.appBorderColor} 0 0 0 1px inset`,border:`none`,borderRadius:n.appBorderRadius,"&, &:hover":{background:`unset`,backgroundColor:`unset`,backgroundImage:`linear-gradient(${e}, ${e}), ${De(n.base===`dark`)}`}})),ke=l(m.Input)(({theme:e})=>({width:`100%`,paddingLeft:30,paddingRight:30,boxSizing:`border-box`,fontFamily:e.typography.fonts.base,'[aria-readonly="true"] > &':{background:e.base===`light`?e.color.lighter:`transparent`}})),Ae=l(Oe)(({disabled:e})=>({position:`absolute`,top:4,left:4,zIndex:1,cursor:e?`not-allowed`:`pointer`})),je=l(p)(({theme:e})=>({position:`absolute`,zIndex:1,top:6,right:7,width:20,height:20,padding:4,boxSizing:`border-box`,cursor:`pointer`,color:e.input.color})),Me=(e=>(e.RGB=`rgb`,e.HSL=`hsl`,e.HEX=`hex`,e))(Me||{}),q=Object.values(Me),Ne=/\(([0-9]+),\s*([0-9]+)%?,\s*([0-9]+)%?,?\s*([0-9.]+)?\)/,Pe=/^\s*rgba?\(([0-9]+),\s*([0-9]+),\s*([0-9]+),?\s*([0-9.]+)?\)\s*$/i,Fe=/^\s*hsla?\(([0-9]+),\s*([0-9]+)%,\s*([0-9]+)%,?\s*([0-9.]+)?\)\s*$/i,J=/^\s*#?([0-9a-f]{3}|[0-9a-f]{6})\s*$/i,Ie=/^\s*#?([0-9a-f]{3})\s*$/i,Le={hex:_e,rgb:Ce,hsl:xe},Y={hex:`transparent`,rgb:`rgba(0, 0, 0, 0)`,hsl:`hsla(0, 0%, 0%, 0)`},X=e=>{let t=e?.match(Ne);if(!t)return[0,0,0,1];let[,n,r,i,a=1]=t;return[n,r,i,a].map(Number)},Re=e=>{let[t,n,r,i]=X(e),[a,o,s]=E.default.rgb.hsl([t,n,r])||[0,0,0];return{valid:!0,value:e,keyword:E.default.rgb.keyword([t,n,r]),colorSpace:`rgb`,rgb:e,hsl:`hsla(${a}, ${o}%, ${s}%, ${i})`,hex:`#${E.default.rgb.hex([t,n,r]).toLowerCase()}`}},ze=e=>{let[t,n,r,i]=X(e),[a,o,s]=E.default.hsl.rgb([t,n,r])||[0,0,0];return{valid:!0,value:e,keyword:E.default.hsl.keyword([t,n,r]),colorSpace:`hsl`,rgb:`rgba(${a}, ${o}, ${s}, ${i})`,hsl:e,hex:`#${E.default.hsl.hex([t,n,r]).toLowerCase()}`}},Be=e=>{let t=e.replace(`#`,``),n=E.default.keyword.rgb(t)||E.default.hex.rgb(t),r=E.default.rgb.hsl(n),i=e;/[^#a-f0-9]/i.test(e)?i=t:J.test(e)&&(i=`#${t}`);let a=!0;if(i.startsWith(`#`))a=J.test(i);else try{E.default.keyword.hex(i)}catch{a=!1}return{valid:a,value:i,keyword:E.default.rgb.keyword(n),colorSpace:`hex`,rgb:`rgba(${n[0]}, ${n[1]}, ${n[2]}, 1)`,hsl:`hsla(${r[0]}, ${r[1]}%, ${r[2]}%, 1)`,hex:i}},Z=e=>{if(e)return Pe.test(e)?Re(e):Fe.test(e)?ze(e):Be(e)},Ve=(e,t,n)=>{if(!e||!t?.valid)return Y[n];if(n!==`hex`)return t?.[n]||Y[n];if(!t.hex.startsWith(`#`))try{return`#${E.default.keyword.hex(t.hex)}`}catch{return Y.hex}let r=t.hex.match(Ie);if(!r)return J.test(t.hex)?t.hex:Y.hex;let[i,a,o]=r[1].split(``);return`#${i}${i}${a}${a}${o}${o}`},He=(e,t)=>{let[n,r]=(0,b.useState)(e||``),[i,a]=(0,b.useState)(()=>Z(n)),[o,s]=(0,b.useState)(i?.colorSpace||`hex`);return(0,b.useEffect)(()=>{let t=e||``,n=Z(t);r(t),a(n),s(n?.colorSpace||`hex`)},[e]),{value:n,realValue:(0,b.useMemo)(()=>Ve(n,i,o).toLowerCase(),[n,i,o]),updateValue:(0,b.useCallback)(e=>{let n=Z(e),i=n?.value||e||``;r(i),i===``&&(a(void 0),t(void 0)),n&&(a(n),s(n.colorSpace),t(n.value))},[t]),color:i,colorSpace:o,cycleColorSpace:(0,b.useCallback)(()=>{let e=q[(q.indexOf(o)+1)%q.length];s(e);let n=i?.[e]||``;r(n),t(n)},[i,o,t])}},Q=e=>e.replace(/\s*/,``).toLowerCase(),Ue=(e,t,n,r=27)=>{let[i,a]=(0,b.useState)(t?.valid?[t]:[]);(0,b.useEffect)(()=>{t===void 0&&a([])},[t]);let o=(0,b.useMemo)(()=>{let t=(e||[]).map(e=>typeof e==`string`?Z(e):e.title?{...Z(e.color),keyword:e.title}:Z(e.color)).concat(i).filter(Boolean);if(r===0||r===1/0)return t;let n=Number.isInteger(r)&&r>0?r:27;return t.slice(-n)},[e,i,r]);return{presets:o,addPreset:(0,b.useCallback)(e=>{e?.valid&&(o.some(t=>t&&t[n]&&Q(t[n]||``)===Q(e[n]||``))||a(t=>t.concat(e)))},[n,o])}},$=({name:e,storyId:t,controlsId:n,value:r,onChange:i,onFocus:a,onBlur:o,presetColors:c,maxPresetColors:l,startOpen:d=!1,argType:p,required:m})=>{let{value:h,realValue:g,updateValue:_,color:v,colorSpace:y,cycleColorSpace:x}=He(r,(0,b.useCallback)(ee(i,200),[i])),{presets:S,addPreset:C}=Ue(c??[],v,y,l),w=Le[y],T=!!p?.table?.readonly,E=s(e,t,n);return b.createElement(we,null,b.createElement(`label`,{htmlFor:E,className:`sb-sr-only`},e),b.createElement(ke,{id:E,value:h,onChange:e=>_(e.target.value),onFocus:e=>e.target.select(),readOnly:T,"aria-required":m||void 0,placeholder:`Choose color...`}),b.createElement(f,{ariaLabel:`Color picker`,defaultVisible:d,visible:!T&&void 0,onVisibleChange:()=>v&&C(v),popover:b.createElement(Te,null,b.createElement(w,{color:g===`transparent`?`#000000`:g,onChange:_,onFocus:a,onBlur:o}),S.length>0&&b.createElement(Ee,null,S.map((e,t)=>b.createElement(Oe,{key:`${e?.value||t}-${t}`,variant:`ghost`,padding:`small`,size:`small`,ariaLabel:`Pick this color`,tooltip:e?.keyword||e?.value||``,value:e?.value||``,selected:!!(v&&e&&e[y]&&Q(e[y]||``)===Q(v[y])),onClick:()=>e&&_(e.value||``)}))))},b.createElement(Ae,{variant:`ghost`,padding:`small`,size:`small`,ariaLabel:`Open color picker`,value:g,style:{margin:4},disabled:T})),h?b.createElement(je,{variant:`ghost`,padding:`small`,size:`small`,ariaLabel:`Cycle through color spaces`,disabled:T,onClick:T?void 0:x},b.createElement(u,null)):null)},We=$})))()}Ge();export{$ as ColorControl,We as default};
1
+ import{n as e,o as t}from"./rolldown-runtime-C0FnF6B9.js";import{t as n}from"./react-C21x__mS.js";import{a as r,o as i,s as a}from"./iframe-CyRHAH4o.js";import{r as o,t as s}from"./chunk-QQBDHPVZ-B98qboss.js";import{a as c,u as l}from"./theming-mTWhffkp.js";import{I as u,W as d,d as f,n as p,o as m,x as h}from"./components-CvASwB3y.js";function ee(e,t,{signal:n,edges:r}={}){let i,a=null,o=r!=null&&r.includes(`leading`),s=r==null||r.includes(`trailing`),c=()=>{a!==null&&(e.apply(i,a),i=void 0,a=null)},l=()=>{s&&c(),p()},u=null,d=()=>{u!=null&&clearTimeout(u),u=setTimeout(()=>{u=null,l()},t)},f=()=>{u!==null&&(clearTimeout(u),u=null)},p=()=>{f(),i=void 0,a=null},m=()=>{c()},h=function(...e){if(n?.aborted)return;i=this,a=e;let t=u==null;d(),o&&t&&c()};return h.schedule=d,h.cancel=p,h.flush=m,n?.addEventListener(`abort`,p,{once:!0}),h}function g(){return(g=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}function _(e,t){if(e==null)return{};var n,r,i={},a=Object.keys(e);for(r=0;r<a.length;r++)t.indexOf(n=a[r])>=0||(i[n]=e[n]);return i}function v(e){var t=(0,x.useRef)(e),n=(0,x.useRef)(function(e){t.current&&t.current(e)});return t.current=e,n.current}function y(e,t,n){var r=v(n),i=(0,x.useState)(function(){return e.toHsva(t)}),a=i[0],o=i[1],s=(0,x.useRef)({color:t,hsva:a});return(0,x.useEffect)(function(){if(!e.equal(t,s.current.color)){var n=e.toHsva(t);s.current={hsva:n,color:t},o(n)}},[t,e]),(0,x.useEffect)(function(){var t;U(a,s.current.hsva)||e.equal(t=e.fromHsva(a),s.current.color)||(s.current={hsva:a,color:t},r(t))},[a,e,r]),[a,(0,x.useCallback)(function(e){o(function(t){return Object.assign({},t,e)})},[])]}var b,x,S,C,w,T,E,D,O,k,te,ne,A,j,M,N,re,ie,P,ae,oe,se,ce,F,I,L,R,le,z,ue,B,V,H,U,W,de,fe,pe,me,G,K,he,ge,_e,ve,ye,be,xe,Se,Ce,we,Te,Ee,De,Oe,ke,Ae,je,Me,q,Ne,Pe,Fe,J,Ie,Le,Y,X,Re,ze,Be,Z,Ve,He,Q,Ue,$,We;function Ge(){return(Ge=e((()=>{o(),a(),b=t(n(),1),h(),d(),x=t(n(),1),c(),S=r({"../../../node_modules/color-name/index.js"(e,t){t.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}}}),C=r({"../../../node_modules/color-convert/conversions.js"(e,t){var n=S(),r={};for(let e of Object.keys(n))r[n[e]]=e;var i={rgb:{channels:3,labels:`rgb`},hsl:{channels:3,labels:`hsl`},hsv:{channels:3,labels:`hsv`},hwb:{channels:3,labels:`hwb`},cmyk:{channels:4,labels:`cmyk`},xyz:{channels:3,labels:`xyz`},lab:{channels:3,labels:`lab`},lch:{channels:3,labels:`lch`},hex:{channels:1,labels:[`hex`]},keyword:{channels:1,labels:[`keyword`]},ansi16:{channels:1,labels:[`ansi16`]},ansi256:{channels:1,labels:[`ansi256`]},hcg:{channels:3,labels:[`h`,`c`,`g`]},apple:{channels:3,labels:[`r16`,`g16`,`b16`]},gray:{channels:1,labels:[`gray`]}};t.exports=i;for(let e of Object.keys(i)){if(!(`channels`in i[e]))throw Error(`missing channels property: `+e);if(!(`labels`in i[e]))throw Error(`missing channel labels property: `+e);if(i[e].labels.length!==i[e].channels)throw Error(`channel and label counts mismatch: `+e);let{channels:t,labels:n}=i[e];delete i[e].channels,delete i[e].labels,Object.defineProperty(i[e],"channels",{value:t}),Object.defineProperty(i[e],"labels",{value:n})}i.rgb.hsl=function(e){let t=e[0]/255,n=e[1]/255,r=e[2]/255,i=Math.min(t,n,r),a=Math.max(t,n,r),o=a-i,s,c;a===i?s=0:t===a?s=(n-r)/o:n===a?s=2+(r-t)/o:r===a&&(s=4+(t-n)/o),s=Math.min(s*60,360),s<0&&(s+=360);let l=(i+a)/2;return c=a===i?0:l<=.5?o/(a+i):o/(2-a-i),[s,c*100,l*100]},i.rgb.hsv=function(e){let t,n,r,i,a,o=e[0]/255,s=e[1]/255,c=e[2]/255,l=Math.max(o,s,c),u=l-Math.min(o,s,c),d=function(e){return(l-e)/6/u+1/2};return u===0?(i=0,a=0):(a=u/l,t=d(o),n=d(s),r=d(c),o===l?i=r-n:s===l?i=1/3+t-r:c===l&&(i=2/3+n-t),i<0?i+=1:i>1&&--i),[i*360,a*100,l*100]},i.rgb.hwb=function(e){let t=e[0],n=e[1],r=e[2],a=i.rgb.hsl(e)[0],o=1/255*Math.min(t,Math.min(n,r));return r=1-1/255*Math.max(t,Math.max(n,r)),[a,o*100,r*100]},i.rgb.cmyk=function(e){let t=e[0]/255,n=e[1]/255,r=e[2]/255,i=Math.min(1-t,1-n,1-r),a=(1-t-i)/(1-i)||0,o=(1-n-i)/(1-i)||0,s=(1-r-i)/(1-i)||0;return[a*100,o*100,s*100,i*100]};function a(e,t){return(e[0]-t[0])**2+(e[1]-t[1])**2+(e[2]-t[2])**2}i.rgb.keyword=function(e){let t=r[e];if(t)return t;let i=1/0,o;for(let t of Object.keys(n)){let r=n[t],s=a(e,r);s<i&&(i=s,o=t)}return o},i.keyword.rgb=function(e){return n[e]},i.rgb.xyz=function(e){let t=e[0]/255,n=e[1]/255,r=e[2]/255;t=t>.04045?((t+.055)/1.055)**2.4:t/12.92,n=n>.04045?((n+.055)/1.055)**2.4:n/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92;let i=t*.4124+n*.3576+r*.1805,a=t*.2126+n*.7152+r*.0722,o=t*.0193+n*.1192+r*.9505;return[i*100,a*100,o*100]},i.rgb.lab=function(e){let t=i.rgb.xyz(e),n=t[0],r=t[1],a=t[2];return n/=95.047,r/=100,a/=108.883,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,a=a>.008856?a**(1/3):7.787*a+16/116,[116*r-16,500*(n-r),200*(r-a)]},i.hsl.rgb=function(e){let t=e[0]/360,n=e[1]/100,r=e[2]/100,i,a,o;if(n===0)return o=r*255,[o,o,o];i=r<.5?r*(1+n):r+n-r*n;let s=2*r-i,c=[0,0,0];for(let e=0;e<3;e++)a=t+1/3*-(e-1),a<0&&a++,a>1&&a--,o=6*a<1?s+(i-s)*6*a:2*a<1?i:3*a<2?s+(i-s)*(2/3-a)*6:s,c[e]=o*255;return c},i.hsl.hsv=function(e){let t=e[0],n=e[1]/100,r=e[2]/100,i=n,a=Math.max(r,.01);r*=2,n*=r<=1?r:2-r,i*=a<=1?a:2-a;let o=(r+n)/2;return[t,(r===0?2*i/(a+i):2*n/(r+n))*100,o*100]},i.hsv.rgb=function(e){let t=e[0]/60,n=e[1]/100,r=e[2]/100,i=Math.floor(t)%6,a=t-Math.floor(t),o=255*r*(1-n),s=255*r*(1-n*a),c=255*r*(1-n*(1-a));switch(r*=255,i){case 0:return[r,c,o];case 1:return[s,r,o];case 2:return[o,r,c];case 3:return[o,s,r];case 4:return[c,o,r];case 5:return[r,o,s]}},i.hsv.hsl=function(e){let t=e[0],n=e[1]/100,r=e[2]/100,i=Math.max(r,.01),a,o;o=(2-n)*r;let s=(2-n)*i;return a=n*i,a/=s<=1?s:2-s,a||=0,o/=2,[t,a*100,o*100]},i.hwb.rgb=function(e){let t=e[0]/360,n=e[1]/100,r=e[2]/100,i=n+r,a;i>1&&(n/=i,r/=i);let o=Math.floor(6*t),s=1-r;a=6*t-o,o&1&&(a=1-a);let c=n+a*(s-n),l,u,d;switch(o){default:case 6:case 0:l=s,u=c,d=n;break;case 1:l=c,u=s,d=n;break;case 2:l=n,u=s,d=c;break;case 3:l=n,u=c,d=s;break;case 4:l=c,u=n,d=s;break;case 5:l=s,u=n,d=c}return[l*255,u*255,d*255]},i.cmyk.rgb=function(e){let t=e[0]/100,n=e[1]/100,r=e[2]/100,i=e[3]/100,a=1-Math.min(1,t*(1-i)+i),o=1-Math.min(1,n*(1-i)+i),s=1-Math.min(1,r*(1-i)+i);return[a*255,o*255,s*255]},i.xyz.rgb=function(e){let t=e[0]/100,n=e[1]/100,r=e[2]/100,i,a,o;return i=t*3.2406+n*-1.5372+r*-.4986,a=t*-.9689+n*1.8758+r*.0415,o=t*.0557+n*-.204+r*1.057,i=i>.0031308?1.055*i**(1/2.4)-.055:i*12.92,a=a>.0031308?1.055*a**(1/2.4)-.055:a*12.92,o=o>.0031308?1.055*o**(1/2.4)-.055:o*12.92,i=Math.min(Math.max(0,i),1),a=Math.min(Math.max(0,a),1),o=Math.min(Math.max(0,o),1),[i*255,a*255,o*255]},i.xyz.lab=function(e){let t=e[0],n=e[1],r=e[2];return t/=95.047,n/=100,r/=108.883,t=t>.008856?t**(1/3):7.787*t+16/116,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,[116*n-16,500*(t-n),200*(n-r)]},i.lab.xyz=function(e){let t=e[0],n=e[1],r=e[2],i,a,o;a=(t+16)/116,i=n/500+a,o=a-r/200;let s=a**3,c=i**3,l=o**3;return a=s>.008856?s:(a-16/116)/7.787,i=c>.008856?c:(i-16/116)/7.787,o=l>.008856?l:(o-16/116)/7.787,i*=95.047,a*=100,o*=108.883,[i,a,o]},i.lab.lch=function(e){let t=e[0],n=e[1],r=e[2],i;return i=Math.atan2(r,n)*360/2/Math.PI,i<0&&(i+=360),[t,Math.sqrt(n*n+r*r),i]},i.lch.lab=function(e){let t=e[0],n=e[1],r=e[2]/360*2*Math.PI;return[t,n*Math.cos(r),n*Math.sin(r)]},i.rgb.ansi16=function(e,t=null){let[n,r,a]=e,o=t===null?i.rgb.hsv(e)[2]:t;if(o=Math.round(o/50),o===0)return 30;let s=30+(Math.round(a/255)<<2|Math.round(r/255)<<1|Math.round(n/255));return o===2&&(s+=60),s},i.hsv.ansi16=function(e){return i.rgb.ansi16(i.hsv.rgb(e),e[2])},i.rgb.ansi256=function(e){let t=e[0],n=e[1],r=e[2];return t===n&&n===r?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(n/255*5)+Math.round(r/255*5)},i.ansi16.rgb=function(e){let t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];let n=(~~(e>50)+1)*.5;return[(t&1)*n*255,(t>>1&1)*n*255,(t>>2&1)*n*255]},i.ansi256.rgb=function(e){if(e>=232){let t=(e-232)*10+8;return[t,t,t]}e-=16;let t;return[Math.floor(e/36)/5*255,Math.floor((t=e%36)/6)/5*255,t%6/5*255]},i.rgb.hex=function(e){let t=(((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255)).toString(16).toUpperCase();return`000000`.substring(t.length)+t},i.hex.rgb=function(e){let t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];let n=t[0];t[0].length===3&&(n=n.split(``).map(e=>e+e).join(``));let r=parseInt(n,16);return[r>>16&255,r>>8&255,r&255]},i.rgb.hcg=function(e){let t=e[0]/255,n=e[1]/255,r=e[2]/255,i=Math.max(Math.max(t,n),r),a=Math.min(Math.min(t,n),r),o=i-a,s,c;return s=o<1?a/(1-o):0,c=o<=0?0:i===t?(n-r)/o%6:i===n?2+(r-t)/o:4+(t-n)/o,c/=6,c%=1,[c*360,o*100,s*100]},i.hsl.hcg=function(e){let t=e[1]/100,n=e[2]/100,r=n<.5?2*t*n:2*t*(1-n),i=0;return r<1&&(i=(n-.5*r)/(1-r)),[e[0],r*100,i*100]},i.hsv.hcg=function(e){let t=e[1]/100,n=e[2]/100,r=t*n,i=0;return r<1&&(i=(n-r)/(1-r)),[e[0],r*100,i*100]},i.hcg.rgb=function(e){let t=e[0]/360,n=e[1]/100,r=e[2]/100;if(n===0)return[r*255,r*255,r*255];let i=[0,0,0],a=t%1*6,o=a%1,s=1-o,c=0;switch(Math.floor(a)){case 0:i[0]=1,i[1]=o,i[2]=0;break;case 1:i[0]=s,i[1]=1,i[2]=0;break;case 2:i[0]=0,i[1]=1,i[2]=o;break;case 3:i[0]=0,i[1]=s,i[2]=1;break;case 4:i[0]=o,i[1]=0,i[2]=1;break;default:i[0]=1,i[1]=0,i[2]=s}return c=(1-n)*r,[(n*i[0]+c)*255,(n*i[1]+c)*255,(n*i[2]+c)*255]},i.hcg.hsv=function(e){let t=e[1]/100,n=t+e[2]/100*(1-t),r=0;return n>0&&(r=t/n),[e[0],r*100,n*100]},i.hcg.hsl=function(e){let t=e[1]/100,n=e[2]/100*(1-t)+.5*t,r=0;return n>0&&n<.5?r=t/(2*n):n>=.5&&n<1&&(r=t/(2*(1-n))),[e[0],r*100,n*100]},i.hcg.hwb=function(e){let t=e[1]/100,n=t+e[2]/100*(1-t);return[e[0],(n-t)*100,(1-n)*100]},i.hwb.hcg=function(e){let t=e[1]/100,n=1-e[2]/100,r=n-t,i=0;return r<1&&(i=(n-r)/(1-r)),[e[0],r*100,i*100]},i.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]},i.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]},i.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]},i.gray.hsl=function(e){return[0,0,e[0]]},i.gray.hsv=i.gray.hsl,i.gray.hwb=function(e){return[0,100,e[0]]},i.gray.cmyk=function(e){return[0,0,0,e[0]]},i.gray.lab=function(e){return[e[0],0,0]},i.gray.hex=function(e){let t=Math.round(e[0]/100*255)&255,n=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return`000000`.substring(n.length)+n},i.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]}}}),w=r({"../../../node_modules/color-convert/route.js"(e,t){var n=C();function r(){let e={},t=Object.keys(n);for(let n=t.length,r=0;r<n;r++)e[t[r]]={distance:-1,parent:null};return e}function i(e){let t=r(),i=[e];for(t[e].distance=0;i.length;){let e=i.pop(),r=Object.keys(n[e]);for(let n=r.length,a=0;a<n;a++){let n=r[a],o=t[n];o.distance===-1&&(o.distance=t[e].distance+1,o.parent=e,i.unshift(n))}}return t}function a(e,t){return function(n){return t(e(n))}}function o(e,t){let r=[t[e].parent,e],i=n[t[e].parent][e],o=t[e].parent;for(;t[o].parent;)r.unshift(t[o].parent),i=a(n[t[o].parent][o],i),o=t[o].parent;return i.conversion=r,i}t.exports=function(e){let t=i(e),n={},r=Object.keys(t);for(let e=r.length,i=0;i<e;i++){let e=r[i];t[e].parent!==null&&(n[e]=o(e,t))}return n}}}),T=r({"../../../node_modules/color-convert/index.js"(e,t){var n=C(),r=w(),i={},a=Object.keys(n);function o(e){let t=function(...t){let n=t[0];return n==null?n:(n.length>1&&(t=n),e(t))};return`conversion`in e&&(t.conversion=e.conversion),t}function s(e){let t=function(...t){let n=t[0];if(n==null)return n;n.length>1&&(t=n);let r=e(t);if(typeof r==`object`)for(let e=r.length,t=0;t<e;t++)r[t]=Math.round(r[t]);return r};return`conversion`in e&&(t.conversion=e.conversion),t}a.forEach(e=>{i[e]={},Object.defineProperty(i[e],"channels",{value:n[e].channels}),Object.defineProperty(i[e],"labels",{value:n[e].labels});let t=r(e);Object.keys(t).forEach(n=>{let r=t[n];i[e][n]=s(r),i[e][n].raw=o(r)})}),t.exports=i}}),E=i(T(),1),D=function(e,t,n){return t===void 0&&(t=0),n===void 0&&(n=1),e>n?n:e<t?t:e},O=function(e){return`touches`in e},k=function(e){return e&&e.ownerDocument.defaultView||self},te=function(e,t,n){var r=e.getBoundingClientRect(),i=O(t)?(function(e,t){for(var n=0;n<e.length;n++)if(e[n].identifier===t)return e[n];return e[0]})(t.touches,n):t;return{left:D((i.pageX-(r.left+k(e).pageXOffset))/r.width),top:D((i.pageY-(r.top+k(e).pageYOffset))/r.height)}},ne=function(e){!O(e)&&e.preventDefault()},A=x.memo(function(e){var t=e.onMove,n=e.onKey,r=_(e,[`onMove`,`onKey`]),i=(0,x.useRef)(null),a=v(t),o=v(n),s=(0,x.useRef)(null),c=(0,x.useRef)(!1),l=(0,x.useMemo)(function(){var e=function(e){ne(e),(O(e)?e.touches.length>0:e.buttons>0)&&i.current?a(te(i.current,e,s.current)):n(!1)},t=function(){return n(!1)};function n(n){var r=c.current,a=k(i.current),o=n?a.addEventListener:a.removeEventListener;o(r?`touchmove`:`mousemove`,e),o(r?`touchend`:`mouseup`,t)}return[function(e){var t=e.nativeEvent,r=i.current;if(r&&(ne(t),!(function(e,t){return t&&!O(e)})(t,c.current)&&r)){if(O(t)){c.current=!0;var o=t.changedTouches||[];o.length&&(s.current=o[0].identifier)}r.focus(),a(te(r,t,s.current)),n(!0)}},function(e){var t=e.which||e.keyCode;t<37||t>40||(e.preventDefault(),o({left:t===39?.05:t===37?-.05:0,top:t===40?.05:t===38?-.05:0}))},n]},[o,a]),u=l[0],d=l[1],f=l[2];return(0,x.useEffect)(function(){return f},[f]),x.createElement(`div`,g({},r,{onTouchStart:u,onMouseDown:u,className:`react-colorful__interactive`,ref:i,onKeyDown:d,tabIndex:0,role:`slider`}))}),j=function(e){return e.filter(Boolean).join(` `)},M=function(e){var t=e.color,n=e.left,r=e.top,i=r===void 0?.5:r,a=j([`react-colorful__pointer`,e.className]);return x.createElement(`div`,{className:a,style:{top:100*i+`%`,left:100*n+`%`}},x.createElement(`div`,{className:`react-colorful__pointer-fill`,style:{backgroundColor:t}}))},N=function(e,t,n){return t===void 0&&(t=0),n===void 0&&(n=10**t),Math.round(n*e)/n},re={grad:.9,turn:360,rad:360/(2*Math.PI)},ie=function(e){return B(P(e))},P=function(e){return e[0]===`#`&&(e=e.substring(1)),e.length<6?{r:parseInt(e[0]+e[0],16),g:parseInt(e[1]+e[1],16),b:parseInt(e[2]+e[2],16),a:e.length===4?N(parseInt(e[3]+e[3],16)/255,2):1}:{r:parseInt(e.substring(0,2),16),g:parseInt(e.substring(2,4),16),b:parseInt(e.substring(4,6),16),a:e.length===8?N(parseInt(e.substring(6,8),16)/255,2):1}},ae=function(e,t){return t===void 0&&(t=`deg`),Number(e)*(re[t]||1)},oe=function(e){var t=/hsla?\(?\s*(-?\d*\.?\d+)(deg|rad|grad|turn)?[,\s]+(-?\d*\.?\d+)%?[,\s]+(-?\d*\.?\d+)%?,?\s*[/\s]*(-?\d*\.?\d+)?(%)?\s*\)?/i.exec(e);return t?se({h:ae(t[1],t[2]),s:Number(t[3]),l:Number(t[4]),a:t[5]===void 0?1:Number(t[5])/(t[6]?100:1)}):{h:0,s:0,v:0,a:1}},se=function(e){var t=e.s,n=e.l;return{h:e.h,s:(t*=(n<50?n:100-n)/100)>0?2*t/(n+t)*100:0,v:n+t,a:e.a}},ce=function(e){return ue(R(e))},F=function(e){var t=e.s,n=e.v,r=e.a,i=(200-t)*n/100;return{h:N(e.h),s:N(i>0&&i<200?t*n/100/(i<=100?i:200-i)*100:0),l:N(i/2),a:N(r,2)}},I=function(e){var t=F(e);return`hsl(`+t.h+`, `+t.s+`%, `+t.l+`%)`},L=function(e){var t=F(e);return`hsla(`+t.h+`, `+t.s+`%, `+t.l+`%, `+t.a+`)`},R=function(e){var t=e.h,n=e.s,r=e.v,i=e.a;t=t/360*6,n/=100,r/=100;var a=Math.floor(t),o=r*(1-n),s=r*(1-(t-a)*n),c=r*(1-(1-t+a)*n),l=a%6;return{r:N(255*[r,s,o,o,c,r][l]),g:N(255*[c,r,r,s,o,o][l]),b:N(255*[o,o,c,r,r,s][l]),a:N(i,2)}},le=function(e){var t=/rgba?\(?\s*(-?\d*\.?\d+)(%)?[,\s]+(-?\d*\.?\d+)(%)?[,\s]+(-?\d*\.?\d+)(%)?,?\s*[/\s]*(-?\d*\.?\d+)?(%)?\s*\)?/i.exec(e);return t?B({r:Number(t[1])/(t[2]?100/255:1),g:Number(t[3])/(t[4]?100/255:1),b:Number(t[5])/(t[6]?100/255:1),a:t[7]===void 0?1:Number(t[7])/(t[8]?100:1)}):{h:0,s:0,v:0,a:1}},z=function(e){var t=e.toString(16);return t.length<2?`0`+t:t},ue=function(e){var t=e.r,n=e.g,r=e.b,i=e.a,a=i<1?z(N(255*i)):``;return`#`+z(t)+z(n)+z(r)+a},B=function(e){var t=e.r,n=e.g,r=e.b,i=e.a,a=Math.max(t,n,r),o=a-Math.min(t,n,r),s=o?a===t?(n-r)/o:a===n?2+(r-t)/o:4+(t-n)/o:0;return{h:N(60*(s<0?s+6:s)),s:N(a?o/a*100:0),v:N(a/255*100),a:i}},V=x.memo(function(e){var t=e.hue,n=e.onChange,r=j([`react-colorful__hue`,e.className]);return x.createElement(`div`,{className:r},x.createElement(A,{onMove:function(e){n({h:360*e.left})},onKey:function(e){n({h:D(t+360*e.left,0,360)})},"aria-label":`Hue`,"aria-valuenow":N(t),"aria-valuemax":`360`,"aria-valuemin":`0`},x.createElement(M,{className:`react-colorful__hue-pointer`,left:t/360,color:I({h:t,s:100,v:100,a:1})})))}),H=x.memo(function(e){var t=e.hsva,n=e.onChange,r={backgroundColor:I({h:t.h,s:100,v:100,a:1})};return x.createElement(`div`,{className:`react-colorful__saturation`,style:r},x.createElement(A,{onMove:function(e){n({s:100*e.left,v:100-100*e.top})},onKey:function(e){n({s:D(t.s+100*e.left,0,100),v:D(t.v-100*e.top,0,100)})},"aria-label":`Color`,"aria-valuetext":`Saturation `+N(t.s)+`%, Brightness `+N(t.v)+`%`},x.createElement(M,{className:`react-colorful__saturation-pointer`,top:1-t.v/100,left:t.s/100,color:I(t)})))}),U=function(e,t){if(e===t)return!0;for(var n in e)if(e[n]!==t[n])return!1;return!0},W=function(e,t){return e.replace(/\s/g,``)===t.replace(/\s/g,``)},de=function(e,t){return e.toLowerCase()===t.toLowerCase()||U(P(e),P(t))},pe=typeof window<`u`?x.useLayoutEffect:x.useEffect,me=function(){return fe||(typeof __webpack_nonce__<`u`?__webpack_nonce__:void 0)},G=new Map,K=function(e){pe(function(){var t=e.current?e.current.ownerDocument:document;if(t!==void 0&&!G.has(t)){var n=t.createElement(`style`);n.innerHTML=`.react-colorful{position:relative;display:flex;flex-direction:column;width:200px;height:200px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.react-colorful__saturation{position:relative;flex-grow:1;border-color:transparent;border-bottom:12px solid #000;border-radius:8px 8px 0 0;background-image:linear-gradient(0deg,#000,transparent),linear-gradient(90deg,#fff,hsla(0,0%,100%,0))}.react-colorful__alpha-gradient,.react-colorful__pointer-fill{content:"";position:absolute;left:0;top:0;right:0;bottom:0;pointer-events:none;border-radius:inherit}.react-colorful__alpha-gradient,.react-colorful__saturation{box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}.react-colorful__alpha,.react-colorful__hue{position:relative;height:24px}.react-colorful__hue{background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.react-colorful__last-control{border-radius:0 0 8px 8px}.react-colorful__interactive{position:absolute;left:0;top:0;right:0;bottom:0;border-radius:inherit;outline:none;touch-action:none}.react-colorful__pointer{position:absolute;z-index:1;box-sizing:border-box;width:28px;height:28px;transform:translate(-50%,-50%);background-color:#fff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}.react-colorful__interactive:focus .react-colorful__pointer{transform:translate(-50%,-50%) scale(1.1)}.react-colorful__alpha,.react-colorful__alpha-pointer{background-color:#fff;background-image:url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill-opacity=".05"><path d="M8 0h8v8H8zM0 8h8v8H0z"/></svg>')}.react-colorful__saturation-pointer{z-index:3}.react-colorful__hue-pointer{z-index:2}`,G.set(t,n);var r=me();r&&n.setAttribute(`nonce`,r),t.head.appendChild(n)}},[])},he=function(e){var t=e.className,n=e.colorModel,r=e.color,i=r===void 0?n.defaultColor:r,a=e.onChange,o=_(e,[`className`,`colorModel`,`color`,`onChange`]),s=(0,x.useRef)(null);K(s);var c=y(n,i,a),l=c[0],u=c[1],d=j([`react-colorful`,t]);return x.createElement(`div`,g({},o,{ref:s,className:d}),x.createElement(H,{hsva:l,onChange:u}),x.createElement(V,{hue:l.h,onChange:u,className:`react-colorful__last-control`}))},ge={defaultColor:`000`,toHsva:ie,fromHsva:function(e){return ce({h:e.h,s:e.s,v:e.v,a:1})},equal:de},_e=function(e){return x.createElement(he,g({},e,{colorModel:ge}))},ve=function(e){var t=e.className,n=e.hsva,r=e.onChange,i={backgroundImage:`linear-gradient(90deg, `+L(Object.assign({},n,{a:0}))+`, `+L(Object.assign({},n,{a:1}))+`)`},a=j([`react-colorful__alpha`,t]),o=N(100*n.a);return x.createElement(`div`,{className:a},x.createElement(`div`,{className:`react-colorful__alpha-gradient`,style:i}),x.createElement(A,{onMove:function(e){r({a:e.left})},onKey:function(e){r({a:D(n.a+e.left)})},"aria-label":`Alpha`,"aria-valuetext":o+`%`,"aria-valuenow":o,"aria-valuemin":`0`,"aria-valuemax":`100`},x.createElement(M,{className:`react-colorful__alpha-pointer`,left:n.a,color:L(n)})))},ye=function(e){var t=e.className,n=e.colorModel,r=e.color,i=r===void 0?n.defaultColor:r,a=e.onChange,o=_(e,[`className`,`colorModel`,`color`,`onChange`]),s=(0,x.useRef)(null);K(s);var c=y(n,i,a),l=c[0],u=c[1],d=j([`react-colorful`,t]);return x.createElement(`div`,g({},o,{ref:s,className:d}),x.createElement(H,{hsva:l,onChange:u}),x.createElement(V,{hue:l.h,onChange:u}),x.createElement(ve,{hsva:l,onChange:u,className:`react-colorful__last-control`}))},be={defaultColor:`hsla(0, 0%, 0%, 1)`,toHsva:oe,fromHsva:L,equal:W},xe=function(e){return x.createElement(ye,g({},e,{colorModel:be}))},Se={defaultColor:`rgba(0, 0, 0, 1)`,toHsva:le,fromHsva:function(e){var t=R(e);return`rgba(`+t.r+`, `+t.g+`, `+t.b+`, `+t.a+`)`},equal:W},Ce=function(e){return x.createElement(ye,g({},e,{colorModel:Se}))},we=l.div({position:`relative`,maxWidth:250}),Te=l.div({width:200,margin:5,".react-colorful__saturation":{borderRadius:`4px 4px 0 0`},".react-colorful__hue":{boxShadow:`inset 0 0 0 1px rgb(0 0 0 / 5%)`},".react-colorful__last-control":{borderRadius:`0 0 4px 4px`}}),Ee=l.div({display:`grid`,gridTemplateColumns:`repeat(9, 16px)`,gap:6,padding:3,marginTop:5,width:200}),De=e=>`url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill-opacity="0.05" fill="${e?`white`:`black`}"><path d="M8 0h8v8H8zM0 8h8v8H0z"/></svg>')`,Oe=l(p)(({value:e,selected:t,theme:n})=>({width:16,height:16,boxShadow:t?`${n.appBorderColor} 0 0 0 1px inset, ${n.textMutedColor}50 0 0 0 4px`:`${n.appBorderColor} 0 0 0 1px inset`,border:`none`,borderRadius:n.appBorderRadius,"&, &:hover":{background:`unset`,backgroundColor:`unset`,backgroundImage:`linear-gradient(${e}, ${e}), ${De(n.base===`dark`)}`}})),ke=l(m.Input)(({theme:e})=>({width:`100%`,paddingLeft:30,paddingRight:30,boxSizing:`border-box`,fontFamily:e.typography.fonts.base,'[aria-readonly="true"] > &':{background:e.base===`light`?e.color.lighter:`transparent`}})),Ae=l(Oe)(({disabled:e})=>({position:`absolute`,top:4,left:4,zIndex:1,cursor:e?`not-allowed`:`pointer`})),je=l(p)(({theme:e})=>({position:`absolute`,zIndex:1,top:6,right:7,width:20,height:20,padding:4,boxSizing:`border-box`,cursor:`pointer`,color:e.input.color})),Me=(e=>(e.RGB=`rgb`,e.HSL=`hsl`,e.HEX=`hex`,e))(Me||{}),q=Object.values(Me),Ne=/\(([0-9]+),\s*([0-9]+)%?,\s*([0-9]+)%?,?\s*([0-9.]+)?\)/,Pe=/^\s*rgba?\(([0-9]+),\s*([0-9]+),\s*([0-9]+),?\s*([0-9.]+)?\)\s*$/i,Fe=/^\s*hsla?\(([0-9]+),\s*([0-9]+)%,\s*([0-9]+)%,?\s*([0-9.]+)?\)\s*$/i,J=/^\s*#?([0-9a-f]{3}|[0-9a-f]{6})\s*$/i,Ie=/^\s*#?([0-9a-f]{3})\s*$/i,Le={hex:_e,rgb:Ce,hsl:xe},Y={hex:`transparent`,rgb:`rgba(0, 0, 0, 0)`,hsl:`hsla(0, 0%, 0%, 0)`},X=e=>{let t=e?.match(Ne);if(!t)return[0,0,0,1];let[,n,r,i,a=1]=t;return[n,r,i,a].map(Number)},Re=e=>{let[t,n,r,i]=X(e),[a,o,s]=E.default.rgb.hsl([t,n,r])||[0,0,0];return{valid:!0,value:e,keyword:E.default.rgb.keyword([t,n,r]),colorSpace:`rgb`,rgb:e,hsl:`hsla(${a}, ${o}%, ${s}%, ${i})`,hex:`#${E.default.rgb.hex([t,n,r]).toLowerCase()}`}},ze=e=>{let[t,n,r,i]=X(e),[a,o,s]=E.default.hsl.rgb([t,n,r])||[0,0,0];return{valid:!0,value:e,keyword:E.default.hsl.keyword([t,n,r]),colorSpace:`hsl`,rgb:`rgba(${a}, ${o}, ${s}, ${i})`,hsl:e,hex:`#${E.default.hsl.hex([t,n,r]).toLowerCase()}`}},Be=e=>{let t=e.replace(`#`,``),n=E.default.keyword.rgb(t)||E.default.hex.rgb(t),r=E.default.rgb.hsl(n),i=e;/[^#a-f0-9]/i.test(e)?i=t:J.test(e)&&(i=`#${t}`);let a=!0;if(i.startsWith(`#`))a=J.test(i);else try{E.default.keyword.hex(i)}catch{a=!1}return{valid:a,value:i,keyword:E.default.rgb.keyword(n),colorSpace:`hex`,rgb:`rgba(${n[0]}, ${n[1]}, ${n[2]}, 1)`,hsl:`hsla(${r[0]}, ${r[1]}%, ${r[2]}%, 1)`,hex:i}},Z=e=>{if(e)return Pe.test(e)?Re(e):Fe.test(e)?ze(e):Be(e)},Ve=(e,t,n)=>{if(!e||!t?.valid)return Y[n];if(n!==`hex`)return t?.[n]||Y[n];if(!t.hex.startsWith(`#`))try{return`#${E.default.keyword.hex(t.hex)}`}catch{return Y.hex}let r=t.hex.match(Ie);if(!r)return J.test(t.hex)?t.hex:Y.hex;let[i,a,o]=r[1].split(``);return`#${i}${i}${a}${a}${o}${o}`},He=(e,t)=>{let[n,r]=(0,b.useState)(e||``),[i,a]=(0,b.useState)(()=>Z(n)),[o,s]=(0,b.useState)(i?.colorSpace||`hex`);return(0,b.useEffect)(()=>{let t=e||``,n=Z(t);r(t),a(n),s(n?.colorSpace||`hex`)},[e]),{value:n,realValue:(0,b.useMemo)(()=>Ve(n,i,o).toLowerCase(),[n,i,o]),updateValue:(0,b.useCallback)(e=>{let n=Z(e),i=n?.value||e||``;r(i),i===``&&(a(void 0),t(void 0)),n&&(a(n),s(n.colorSpace),t(n.value))},[t]),color:i,colorSpace:o,cycleColorSpace:(0,b.useCallback)(()=>{let e=q[(q.indexOf(o)+1)%q.length];s(e);let n=i?.[e]||``;r(n),t(n)},[i,o,t])}},Q=e=>e.replace(/\s*/,``).toLowerCase(),Ue=(e,t,n,r=27)=>{let[i,a]=(0,b.useState)(t?.valid?[t]:[]);(0,b.useEffect)(()=>{t===void 0&&a([])},[t]);let o=(0,b.useMemo)(()=>{let t=(e||[]).map(e=>typeof e==`string`?Z(e):e.title?{...Z(e.color),keyword:e.title}:Z(e.color)).concat(i).filter(Boolean);if(r===0||r===1/0)return t;let n=Number.isInteger(r)&&r>0?r:27;return t.slice(-n)},[e,i,r]);return{presets:o,addPreset:(0,b.useCallback)(e=>{e?.valid&&(o.some(t=>t&&t[n]&&Q(t[n]||``)===Q(e[n]||``))||a(t=>t.concat(e)))},[n,o])}},$=({name:e,storyId:t,controlsId:n,value:r,onChange:i,onFocus:a,onBlur:o,presetColors:c,maxPresetColors:l,startOpen:d=!1,argType:p,required:m})=>{let{value:h,realValue:g,updateValue:_,color:v,colorSpace:y,cycleColorSpace:x}=He(r,(0,b.useCallback)(ee(i,200),[i])),{presets:S,addPreset:C}=Ue(c??[],v,y,l),w=Le[y],T=!!p?.table?.readonly,E=s(e,t,n);return b.createElement(we,null,b.createElement(`label`,{htmlFor:E,className:`sb-sr-only`},e),b.createElement(ke,{id:E,value:h,onChange:e=>_(e.target.value),onFocus:e=>e.target.select(),readOnly:T,"aria-required":m||void 0,placeholder:`Choose color...`}),b.createElement(f,{ariaLabel:`Color picker`,defaultVisible:d,visible:!T&&void 0,onVisibleChange:()=>v&&C(v),popover:b.createElement(Te,null,b.createElement(w,{color:g===`transparent`?`#000000`:g,onChange:_,onFocus:a,onBlur:o}),S.length>0&&b.createElement(Ee,null,S.map((e,t)=>b.createElement(Oe,{key:`${e?.value||t}-${t}`,variant:`ghost`,padding:`small`,size:`small`,ariaLabel:`Pick this color`,tooltip:e?.keyword||e?.value||``,value:e?.value||``,selected:!!(v&&e&&e[y]&&Q(e[y]||``)===Q(v[y])),onClick:()=>e&&_(e.value||``)}))))},b.createElement(Ae,{variant:`ghost`,padding:`small`,size:`small`,ariaLabel:`Open color picker`,value:g,style:{margin:4},disabled:T})),h?b.createElement(je,{variant:`ghost`,padding:`small`,size:`small`,ariaLabel:`Cycle through color spaces`,disabled:T,onClick:T?void 0:x},b.createElement(u,null)):null)},We=$})))()}Ge();export{$ as ColorControl,We as default};
@@ -1,4 +1,4 @@
1
- import{n as e}from"./rolldown-runtime-C0FnF6B9.js";import{n as t}from"./iframe-CD1cMwos.js";import{i as n,r}from"./react-qN2cStNd.js";import{a as i,d as a,f as o,l as s,m as c,p as l,r as u,u as d}from"./blocks-BkGgmJsC.js";import{a as f,i as p,n as m,r as h,t as g}from"./ContextMenu.stories-yGhy89Pi.js";function _(e){let t={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...n(),...e.components};return(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(s,{of:m,parameters:{docs:{toc:!0}}}),`
1
+ import{n as e}from"./rolldown-runtime-C0FnF6B9.js";import{n as t}from"./iframe-CyRHAH4o.js";import{i as n,r}from"./react-qN2cStNd.js";import{a as i,d as a,f as o,l as s,m as c,p as l,r as u,u as d}from"./blocks-BAkpxLLq.js";import{a as f,i as p,n as m,r as h,t as g}from"./ContextMenu.stories-BkZ0l4Tb.js";function _(e){let t={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...n(),...e.components};return(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(s,{of:m,parameters:{docs:{toc:!0}}}),`
2
2
  `,(0,y.jsx)(l,{children:`ContextMenu`}),`
3
3
  `,(0,y.jsx)(o,{children:`Контекстные и dropdown-меню для локальных действий в списках, карточках и рабочих областях`}),`
4
4
  `,(0,y.jsx)(t.p,{children:`ContextMenu уже имеет живые stories, а эта страница собирает их в структурированную документацию с краткими рекомендациями, примерами подключения и API.
@@ -1 +1 @@
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-CD1cMwos.js";import{t as i}from"./react-dom-2o2phaJG.js";import{a,i as o}from"./utils-DUM89eIj.js";import{a as s,d as c,g as l,m as u,p as d,r as f}from"./floating-ui.react-CHmsuwKl.js";import{a as p,i as m,n as h,r as g}from"./dom-B3G_GtJw.js";import{n as _}from"./error-BZrNlEUO.js";import{n as v,t as y}from"./ui.module-CiLQZm_L.js";import{n as b,r as x,t as S}from"./react-BONe4qKn.js";function C(e,t){if(e){if(typeof e==`function`){e(t);return}e.current=t}}function w(e,t){return n=>{e?.(n),!n.defaultPrevented&&t(n)}}function T(e,t){return n=>{e?.(n),!n.defaultPrevented&&t(n)}}function E(){return(E=e((()=>{})))()}function D(){let e=(0,O.useContext)(k);if(!e)throw _({hookName:`useMenuContext`,providerName:`MenuRoot`});return e}var O,k;function A(){return(A=e((()=>{O=n(),k=(0,O.createContext)(null)})))()}var j,M;function ee(){return(ee=e((()=>{j=n(),A(),M=({children:e})=>{let{mode:t,open:n,registerTriggerElement:r,onTriggerContextMenu:i,onTriggerKeyDown:a}=D();if(t!==`contextmenu`)throw Error(`ContextMenu.Trigger must be used within <ContextMenu>`);return(0,j.cloneElement)(e,{ref:t=>{let n=e.props.ref;C(n,t),r(t)},"aria-haspopup":`menu`,"aria-expanded":n,onContextMenu:w(e.props.onContextMenu,i),onKeyDown:T(e.props.onKeyDown,a)})},M.__docgenInfo={description:``,methods:[],displayName:`ContextMenuTrigger`,props:{children:{required:!0,tsType:{name:`ReactReactElement`,raw:`React.ReactElement<React.HTMLAttributes<HTMLElement> & { ref?: React.Ref<HTMLElement> }>`,elements:[{name:`intersection`,raw:`React.HTMLAttributes<HTMLElement> & { ref?: React.Ref<HTMLElement> }`,elements:[{name:`ReactHTMLAttributes`,raw:`React.HTMLAttributes<HTMLElement>`,elements:[{name:`HTMLElement`}]},{name:`signature`,type:`object`,raw:`{ ref?: React.Ref<HTMLElement> }`,signature:{properties:[{key:`ref`,value:{name:`ReactRef`,raw:`React.Ref<HTMLElement>`,elements:[{name:`HTMLElement`}],required:!1}}]}}]}]},description:``}}}})))()}var te,ne,re,ie,ae,oe,se,ce,le,ue,de,fe,pe,me,he,N;function P(){return(P=e((()=>{te=`nPfxbm`,ne=`T8GF31`,re=`XM9raj`,ie=`JY0XKk`,ae=`Jj7pGe`,oe=`o7v3XA`,se=`f9wo9l`,ce=`_9IPwGF`,le=`CAmmlz`,ue=`_5KEBWR`,de=`L28onY`,fe=`Pg-1Y3`,pe=`ObIrS2`,me=`_0jf5vt`,he=`zKwsQF`,N={menuPanel:te,menuScroller:ne,menuItem:re,menuItemIcon:ie,menuItemText:ae,menuItemHotKey:oe,radialPanel:se,radialRing:ce,radialCenterButton:le,radialCenterButtonText:ue,radialItems:de,radialItemSlot:fe,radialItem:pe,radialItemIcon:me,radialItemText:he}})))()}var F,ge,I,L;function R(){return(R=e((()=>{F=t(n(),1),g(),o(),S(),ge=i(),P(),A(),I=r(),L=({children:e,className:t,closeOnOutside:n=!0,closeOnEscape:r=!0,disableOutsideClick:i=!1,restoreFocus:o=!0})=>{let{open:s,floatingStyles:c,floatingRef:l,triggerRef:u,setFloating:d,closeMenu:f}=D(),g=(0,F.useCallback)(()=>{let e=l.current;return e?Array.from(e.querySelectorAll(`[data-menu-item="true"]:not([data-disabled="true"])`)):[]},[l]);p({active:s,initialFocus:e=>g()[0]??e,restoreFocus:o,restoreFocusTarget:()=>u.current,containerRef:l}),h({active:s,enabled:r,onDismiss:f,containerRef:l});let _=(0,F.useCallback)(()=>{!s||i||n&&f()},[s,i,n,f]);m([l,u],_);let v=(0,F.useCallback)(e=>{let t=g();if(t.length===0)return;let n=document.activeElement,r=n?t.indexOf(n):-1;if(e.key===`ArrowDown`){e.preventDefault(),t[r>=0?(r+1)%t.length:0]?.focus();return}if(e.key===`ArrowUp`){e.preventDefault(),t[r>=0?(r-1+t.length)%t.length:t.length-1]?.focus();return}if(e.key===`Home`){e.preventDefault(),t[0]?.focus();return}e.key===`End`&&(e.preventDefault(),t[t.length-1]?.focus())},[g]);return typeof document>`u`?null:(0,ge.createPortal)((0,I.jsx)(x,{children:s&&(0,I.jsx)(b.div,{ref:d,style:c,role:`menu`,tabIndex:-1,className:a(N.menuPanel,t),onKeyDown:v,initial:{opacity:0,scale:.96,y:-2},animate:{opacity:1,scale:1,y:0},exit:{opacity:0,scale:.96,y:-2},transition:{duration:.14,ease:`easeOut`},children:(0,I.jsx)(`div`,{className:a(N.menuScroller,`scrollable`),children:typeof e==`function`?e({closeMenu:f}):e})})}),document.body)}})))()}var _e,z;function B(){return(B=e((()=>{n(),o(),y(),_e=r(),z=({children:e,className:t})=>(0,_e.jsx)(`div`,{className:a(v.uiPopupGroupLabel,t),children:e}),z.__docgenInfo={description:``,methods:[],displayName:`MenuGroupLabel`,props:{children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},className:{required:!1,tsType:{name:`string`},description:``}}}})))()}var ve,V,H;function U(){return(U=e((()=>{ve=t(n(),1),o(),y(),P(),A(),V=r(),H=({children:e,icon:t,hotKey:n,className:r,disabled:i,href:o,target:s,rel:c,closeOnSelect:l=!0,onSelect:u})=>{let{closeMenu:d}=D(),f=(0,ve.useCallback)(e=>{if(i){e.preventDefault(),e.stopPropagation();return}u?.(e),!e.defaultPrevented&&l&&d()},[i,u,l,d]),p=a(v.uiPopupOption,N.menuItem,r);return o?(0,V.jsxs)(`a`,{href:o,target:s,rel:c,role:`menuitem`,tabIndex:-1,"aria-disabled":i,"data-menu-item":`true`,"data-disabled":i?`true`:void 0,"data-ui":`context-menu-item`,"data-action":`select-context-menu-item`,className:p,onClick:f,children:[t&&(0,V.jsx)(`span`,{className:a(v.uiPopupOptionIcon,N.menuItemIcon),children:t}),(0,V.jsx)(`span`,{className:a(v.uiOptionText,N.menuItemText),children:e}),n&&(0,V.jsx)(`kbd`,{className:a(v.keyboard,N.menuItemHotKey),children:n})]}):(0,V.jsxs)(`button`,{type:`button`,role:`menuitem`,tabIndex:-1,disabled:i,"data-menu-item":`true`,"data-disabled":i?`true`:void 0,"data-ui":`context-menu-item`,"data-action":`select-context-menu-item`,className:p,onClick:f,children:[t&&(0,V.jsx)(`span`,{className:a(v.uiPopupOptionIcon,N.menuItemIcon),children:t}),(0,V.jsx)(`span`,{className:a(v.uiOptionText,N.menuItemText),children:e}),n&&(0,V.jsx)(`kbd`,{className:a(v.keyboard,N.menuItemHotKey),children:n})]})},H.__docgenInfo={description:``,methods:[],displayName:`MenuItem`,props:{children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},icon:{required:!1,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},hotKey:{required:!1,tsType:{name:`string`},description:``},className:{required:!1,tsType:{name:`string`},description:``},disabled:{required:!1,tsType:{name:`boolean`},description:``},href:{required:!1,tsType:{name:`string`},description:``},target:{required:!1,tsType:{name:`string`},description:``},rel:{required:!1,tsType:{name:`string`},description:``},closeOnSelect:{required:!1,tsType:{name:`boolean`},description:``,defaultValue:{value:`true`,computed:!1}},onSelect:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(event: React.MouseEvent<HTMLElement>) => void`,signature:{arguments:[{type:{name:`ReactMouseEvent`,raw:`React.MouseEvent<HTMLElement>`,elements:[{name:`HTMLElement`}]},name:`event`}],return:{name:`void`}}},description:``}}}})))()}function ye(e){return{x:e.clientX,y:e.clientY}}function be(e){return{x:e.left+e.width/2,y:e.top+e.height/2}}function xe(e,t){return{contextElement:t??void 0,getBoundingClientRect:()=>({x:e.x,y:e.y,top:e.y,left:e.x,bottom:e.y,right:e.x,width:0,height:0,toJSON:()=>{}})}}function Se(e){return{open:!0,source:e.source,anchor:e.anchor}}function Ce(e){return!e.open&&e.anchor===null?e:{open:!1,source:null,anchor:null}}var we;function Te(){return(Te=e((()=>{we={open:!1,source:null,anchor:null}})))()}var W,Ee,G;function K(){return(K=e((()=>{W=t(n(),1),f(),Te(),A(),Ee=r(),G=({children:e,mode:t,placement:n=t===`click`?`bottom-start`:`right-start`,open:r,defaultOpen:i,onOpenChange:a})=>{let[o,f]=(0,W.useState)(we),[p,m]=(0,W.useState)(i??!1),h=r!==void 0,g=h?r:p,_=(0,W.useRef)(null),{refs:v,floatingStyles:y,update:b}=s({placement:n,strategy:t===`contextmenu`?`fixed`:`absolute`,transform:!1,middleware:[d(6),c({padding:8}),u({padding:8})],whileElementsMounted:l}),x=(0,W.useCallback)(e=>{h||m(e),a?.(e),e||f(e=>Ce(e))},[h,a]),S=(0,W.useCallback)(()=>{x(!1)},[x]),C=(0,W.useCallback)((e,t)=>{v.setReference(e),f(Se({source:t,anchor:{type:`element`,element:e}})),x(!0)},[v,x]),w=(0,W.useCallback)((e,t,n)=>{v.setReference(xe(e,n)),f(Se({source:t,anchor:{type:`point`,point:e,contextElement:n}})),x(!0),b()},[v,x,b]),T=(0,W.useCallback)(e=>{_.current=e,t===`click`&&v.setReference(e)},[t,v]),E=(0,W.useCallback)(e=>{if(t!==`click`)return;let n=e.currentTarget;if(g&&o.anchor?.type===`element`&&o.anchor.element===n){S();return}C(n,`click`)},[t,g,o.anchor,S,C]),D=(0,W.useCallback)(e=>{if(t!==`contextmenu`)return;e.preventDefault();let n=e.currentTarget,r=ye(e);w(r,`contextmenu`,n)},[t,w]),O=(0,W.useCallback)(e=>{if(!(e.key===`ContextMenu`||e.shiftKey&&e.key===`F10`))return;e.preventDefault();let n=e.currentTarget;if(t===`click`){C(n,`keyboard`);return}let r=be(n.getBoundingClientRect());w(r,`keyboard`,n)},[t,C,w]),A=g&&o.anchor!==null,j=(0,W.useMemo)(()=>o.anchor?o.anchor.type===`point`?o.anchor.point:be(o.anchor.element.getBoundingClientRect()):null,[o.anchor]),M=(0,W.useMemo)(()=>({mode:t,open:A,openSource:o.source,anchorPoint:j,floatingStyles:y,floatingRef:v.floating,triggerRef:_,setFloating:v.setFloating,registerTriggerElement:T,onTriggerClick:E,onTriggerContextMenu:D,onTriggerKeyDown:O,closeMenu:S}),[t,A,o.source,j,y,v.floating,v.setFloating,T,E,D,O,S]);return(0,Ee.jsx)(k.Provider,{value:M,children:e})},G.__docgenInfo={description:``,methods:[],displayName:`MenuRoot`,props:{children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},mode:{required:!0,tsType:{name:`union`,raw:`"click" | "contextmenu"`,elements:[{name:`literal`,value:`"click"`},{name:`literal`,value:`"contextmenu"`}]},description:``},placement:{required:!1,tsType:{name:`Placement`},description:``,defaultValue:{value:`mode === "click" ? "bottom-start" : "right-start"`,computed:!1}},open:{required:!1,tsType:{name:`boolean`},description:``},defaultOpen:{required:!1,tsType:{name:`boolean`},description:``},onOpenChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(open: boolean) => void`,signature:{arguments:[{type:{name:`boolean`},name:`open`}],return:{name:`void`}}},description:``}}}})))()}var De,q;function J(){return(J=e((()=>{n(),o(),y(),De=r(),q=({className:e})=>(0,De.jsx)(`div`,{role:`separator`,className:a(v.uiPopupOptionSeparator,e)}),q.__docgenInfo={description:``,methods:[],displayName:`MenuSeparator`,props:{className:{required:!1,tsType:{name:`string`},description:``}}}})))()}function Oe(e,t,n){return n<t?t:Math.min(Math.max(e,t),n)}var Y,ke,X,Ae;function je(){return(je=e((()=>{Y=t(n(),1),g(),o(),S(),ke=i(),P(),A(),X=r(),Ae=({children:e,className:t,closeOnOutside:n=!0,closeOnEscape:r=!0,disableOutsideClick:i=!1,restoreFocus:o=!0,radius:s=76,itemSize:c=64,closeLabel:l=`Закрыть`})=>{let{open:u,anchorPoint:d,floatingRef:f,triggerRef:g,setFloating:_,closeMenu:v}=D(),y=typeof e==`function`?e({closeMenu:v}):e,S=(0,Y.useMemo)(()=>Y.Children.toArray(y),[y]),C=S.length,w=s*2+c,T=(0,Y.useMemo)(()=>{if(typeof window>`u`||!d)return null;let e=w/2+8;return{x:Oe(d.x,e,window.innerWidth-e),y:Oe(d.y,e,window.innerHeight-e)}},[d,w]),E=(0,Y.useCallback)(()=>{let e=f.current;return e?Array.from(e.querySelectorAll(`[data-menu-item="true"]:not([data-disabled="true"])`)):[]},[f]);p({active:u,initialFocus:e=>E()[0]??e,restoreFocus:o,restoreFocusTarget:()=>g.current,containerRef:f}),(0,Y.useEffect)(()=>{if(!u||!d)return;let e=0;return e=window.requestAnimationFrame(()=>{(E()[0]??f.current)?.focus()}),()=>window.cancelAnimationFrame(e)},[u,d,E,f]),h({active:u,enabled:r,onDismiss:v,containerRef:f});let O=(0,Y.useCallback)(()=>{!u||i||n&&v()},[u,i,n,v]);m([f,g],O);let k=(0,Y.useCallback)(e=>{let t=E();if(t.length===0)return;let n=document.activeElement,r=n?t.indexOf(n):-1;if(e.key===`ArrowRight`||e.key===`ArrowDown`){e.preventDefault(),t[r>=0?(r+1)%t.length:0]?.focus();return}if(e.key===`ArrowLeft`||e.key===`ArrowUp`){e.preventDefault(),t[r>=0?(r-1+t.length)%t.length:t.length-1]?.focus();return}if(e.key===`Home`){e.preventDefault(),t[0]?.focus();return}e.key===`End`&&(e.preventDefault(),t[t.length-1]?.focus())},[E]);return typeof document>`u`?null:(0,ke.createPortal)((0,X.jsx)(x,{children:u&&T&&(0,X.jsxs)(b.div,{ref:_,style:{"--radial-panel-size":`${w}px`,"--radial-radius":`${s}px`,"--radial-item-size":`${c}px`,left:T.x-w/2,top:T.y-w/2,transformOrigin:`center`},role:`menu`,tabIndex:-1,className:a(N.radialPanel,t),onKeyDown:k,initial:{opacity:0,scale:.78},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.78},transition:{duration:.16,ease:`easeOut`},children:[(0,X.jsx)(`div`,{className:N.radialRing,"aria-hidden":`true`}),(0,X.jsx)(`button`,{type:`button`,role:`menuitem`,className:N.radialCenterButton,"aria-label":l,"data-menu-item":`true`,"data-radial-close":`true`,onClick:v,children:(0,X.jsx)(`span`,{className:N.radialCenterButtonText,children:l})}),(0,X.jsx)(`div`,{className:N.radialItems,children:S.map((e,t)=>{let n=C>0?-90+360/C*t:-90;return(0,X.jsx)(`div`,{className:N.radialItemSlot,style:{"--radial-item-angle":`${n}deg`},children:e},t)})})]})}),document.body)}})))()}var Me,Z,Q;function Ne(){return(Ne=e((()=>{Me=t(n(),1),o(),P(),A(),Z=r(),Q=({children:e,icon:t,className:n,disabled:r,closeOnSelect:i=!0,onSelect:o})=>{let{closeMenu:s}=D(),c=(0,Me.useCallback)(e=>{if(r){e.preventDefault(),e.stopPropagation();return}o?.(e),!e.defaultPrevented&&i&&s()},[r,o,i,s]);return(0,Z.jsxs)(`button`,{type:`button`,role:`menuitem`,tabIndex:-1,disabled:r,"aria-disabled":r,"data-menu-item":`true`,"data-disabled":r?`true`:void 0,"data-ui":`radial-menu-item`,"data-action":`select-radial-menu-item`,className:a(N.radialItem,n),onClick:c,children:[t&&(0,Z.jsx)(`span`,{className:N.radialItemIcon,children:t}),(0,Z.jsx)(`span`,{className:N.radialItemText,children:e})]})},Q.__docgenInfo={description:``,methods:[],displayName:`RadialMenuItem`,props:{children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},icon:{required:!1,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},className:{required:!1,tsType:{name:`string`},description:``},disabled:{required:!1,tsType:{name:`boolean`},description:``},closeOnSelect:{required:!1,tsType:{name:`boolean`},description:``,defaultValue:{value:`true`,computed:!1}},onSelect:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(event: React.MouseEvent<HTMLButtonElement>) => void`,signature:{arguments:[{type:{name:`ReactMouseEvent`,raw:`React.MouseEvent<HTMLButtonElement>`,elements:[{name:`HTMLButtonElement`}]},name:`event`}],return:{name:`void`}}},description:``}}}})))()}var Pe,$,Fe;function Ie(){return(Ie=e((()=>{n(),ee(),R(),B(),U(),K(),J(),je(),Ne(),Pe=r(),$=({children:e,placement:t,open:n,defaultOpen:r,onOpenChange:i})=>(0,Pe.jsx)(G,{mode:`contextmenu`,placement:t,open:n,defaultOpen:r,onOpenChange:i,children:e}),Fe=Object.assign($,{Trigger:M,Content:L,RadialContent:Ae,Item:H,RadialItem:Q,Separator:q,GroupLabel:z}),$.__docgenInfo={description:``,methods:[],displayName:`ContextMenuRoot`,props:{children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},placement:{required:!1,tsType:{name:`Placement`},description:``},open:{required:!1,tsType:{name:`boolean`},description:``},defaultOpen:{required:!1,tsType:{name:`boolean`},description:``},onOpenChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(open: boolean) => void`,signature:{arguments:[{type:{name:`boolean`},name:`open`}],return:{name:`void`}}},description:``}}}})))()}export{w as _,G as a,U as c,L as d,R as f,T as g,C as h,J as i,z as l,D as m,Ie as n,K as o,A as p,q as r,H as s,Fe as t,B as u,E as v};
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{t as i}from"./react-dom-2o2phaJG.js";import{a,i as o}from"./utils-DUM89eIj.js";import{a as s,d as c,g as l,m as u,p as d,r as f}from"./floating-ui.react-1JhRQUPm.js";import{a as p,i as m,n as h,r as g}from"./dom-B3G_GtJw.js";import{n as _}from"./error-BZrNlEUO.js";import{n as v,t as y}from"./ui.module-CiLQZm_L.js";import{n as b,r as x,t as S}from"./react-4VaPHlD7.js";function C(e,t){if(e){if(typeof e==`function`){e(t);return}e.current=t}}function w(e,t){return n=>{e?.(n),!n.defaultPrevented&&t(n)}}function T(e,t){return n=>{e?.(n),!n.defaultPrevented&&t(n)}}function E(){return(E=e((()=>{})))()}function D(){let e=(0,O.useContext)(k);if(!e)throw _({hookName:`useMenuContext`,providerName:`MenuRoot`});return e}var O,k;function A(){return(A=e((()=>{O=n(),k=(0,O.createContext)(null)})))()}var j,M;function ee(){return(ee=e((()=>{j=n(),A(),M=({children:e})=>{let{mode:t,open:n,registerTriggerElement:r,onTriggerContextMenu:i,onTriggerKeyDown:a}=D();if(t!==`contextmenu`)throw Error(`ContextMenu.Trigger must be used within <ContextMenu>`);return(0,j.cloneElement)(e,{ref:t=>{let n=e.props.ref;C(n,t),r(t)},"aria-haspopup":`menu`,"aria-expanded":n,onContextMenu:w(e.props.onContextMenu,i),onKeyDown:T(e.props.onKeyDown,a)})},M.__docgenInfo={description:``,methods:[],displayName:`ContextMenuTrigger`,props:{children:{required:!0,tsType:{name:`ReactReactElement`,raw:`React.ReactElement<React.HTMLAttributes<HTMLElement> & { ref?: React.Ref<HTMLElement> }>`,elements:[{name:`intersection`,raw:`React.HTMLAttributes<HTMLElement> & { ref?: React.Ref<HTMLElement> }`,elements:[{name:`ReactHTMLAttributes`,raw:`React.HTMLAttributes<HTMLElement>`,elements:[{name:`HTMLElement`}]},{name:`signature`,type:`object`,raw:`{ ref?: React.Ref<HTMLElement> }`,signature:{properties:[{key:`ref`,value:{name:`ReactRef`,raw:`React.Ref<HTMLElement>`,elements:[{name:`HTMLElement`}],required:!1}}]}}]}]},description:``}}}})))()}var te,ne,re,ie,ae,oe,se,ce,le,ue,de,fe,pe,me,he,N;function P(){return(P=e((()=>{te=`nPfxbm`,ne=`T8GF31`,re=`XM9raj`,ie=`JY0XKk`,ae=`Jj7pGe`,oe=`o7v3XA`,se=`f9wo9l`,ce=`_9IPwGF`,le=`CAmmlz`,ue=`_5KEBWR`,de=`L28onY`,fe=`Pg-1Y3`,pe=`ObIrS2`,me=`_0jf5vt`,he=`zKwsQF`,N={menuPanel:te,menuScroller:ne,menuItem:re,menuItemIcon:ie,menuItemText:ae,menuItemHotKey:oe,radialPanel:se,radialRing:ce,radialCenterButton:le,radialCenterButtonText:ue,radialItems:de,radialItemSlot:fe,radialItem:pe,radialItemIcon:me,radialItemText:he}})))()}var F,ge,I,L;function R(){return(R=e((()=>{F=t(n(),1),g(),o(),S(),ge=i(),P(),A(),I=r(),L=({children:e,className:t,closeOnOutside:n=!0,closeOnEscape:r=!0,disableOutsideClick:i=!1,restoreFocus:o=!0})=>{let{open:s,floatingStyles:c,floatingRef:l,triggerRef:u,setFloating:d,closeMenu:f}=D(),g=(0,F.useCallback)(()=>{let e=l.current;return e?Array.from(e.querySelectorAll(`[data-menu-item="true"]:not([data-disabled="true"])`)):[]},[l]);p({active:s,initialFocus:e=>g()[0]??e,restoreFocus:o,restoreFocusTarget:()=>u.current,containerRef:l}),h({active:s,enabled:r,onDismiss:f,containerRef:l});let _=(0,F.useCallback)(()=>{!s||i||n&&f()},[s,i,n,f]);m([l,u],_);let v=(0,F.useCallback)(e=>{let t=g();if(t.length===0)return;let n=document.activeElement,r=n?t.indexOf(n):-1;if(e.key===`ArrowDown`){e.preventDefault(),t[r>=0?(r+1)%t.length:0]?.focus();return}if(e.key===`ArrowUp`){e.preventDefault(),t[r>=0?(r-1+t.length)%t.length:t.length-1]?.focus();return}if(e.key===`Home`){e.preventDefault(),t[0]?.focus();return}e.key===`End`&&(e.preventDefault(),t[t.length-1]?.focus())},[g]);return typeof document>`u`?null:(0,ge.createPortal)((0,I.jsx)(x,{children:s&&(0,I.jsx)(b.div,{ref:d,style:c,role:`menu`,tabIndex:-1,className:a(N.menuPanel,t),onKeyDown:v,initial:{opacity:0,scale:.96,y:-2},animate:{opacity:1,scale:1,y:0},exit:{opacity:0,scale:.96,y:-2},transition:{duration:.14,ease:`easeOut`},children:(0,I.jsx)(`div`,{className:a(N.menuScroller,`scrollable`),children:typeof e==`function`?e({closeMenu:f}):e})})}),document.body)}})))()}var _e,z;function B(){return(B=e((()=>{n(),o(),y(),_e=r(),z=({children:e,className:t})=>(0,_e.jsx)(`div`,{className:a(v.uiPopupGroupLabel,t),children:e}),z.__docgenInfo={description:``,methods:[],displayName:`MenuGroupLabel`,props:{children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},className:{required:!1,tsType:{name:`string`},description:``}}}})))()}var ve,V,H;function U(){return(U=e((()=>{ve=t(n(),1),o(),y(),P(),A(),V=r(),H=({children:e,icon:t,hotKey:n,className:r,disabled:i,href:o,target:s,rel:c,closeOnSelect:l=!0,onSelect:u})=>{let{closeMenu:d}=D(),f=(0,ve.useCallback)(e=>{if(i){e.preventDefault(),e.stopPropagation();return}u?.(e),!e.defaultPrevented&&l&&d()},[i,u,l,d]),p=a(v.uiPopupOption,N.menuItem,r);return o?(0,V.jsxs)(`a`,{href:o,target:s,rel:c,role:`menuitem`,tabIndex:-1,"aria-disabled":i,"data-menu-item":`true`,"data-disabled":i?`true`:void 0,"data-ui":`context-menu-item`,"data-action":`select-context-menu-item`,className:p,onClick:f,children:[t&&(0,V.jsx)(`span`,{className:a(v.uiPopupOptionIcon,N.menuItemIcon),children:t}),(0,V.jsx)(`span`,{className:a(v.uiOptionText,N.menuItemText),children:e}),n&&(0,V.jsx)(`kbd`,{className:a(v.keyboard,N.menuItemHotKey),children:n})]}):(0,V.jsxs)(`button`,{type:`button`,role:`menuitem`,tabIndex:-1,disabled:i,"data-menu-item":`true`,"data-disabled":i?`true`:void 0,"data-ui":`context-menu-item`,"data-action":`select-context-menu-item`,className:p,onClick:f,children:[t&&(0,V.jsx)(`span`,{className:a(v.uiPopupOptionIcon,N.menuItemIcon),children:t}),(0,V.jsx)(`span`,{className:a(v.uiOptionText,N.menuItemText),children:e}),n&&(0,V.jsx)(`kbd`,{className:a(v.keyboard,N.menuItemHotKey),children:n})]})},H.__docgenInfo={description:``,methods:[],displayName:`MenuItem`,props:{children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},icon:{required:!1,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},hotKey:{required:!1,tsType:{name:`string`},description:``},className:{required:!1,tsType:{name:`string`},description:``},disabled:{required:!1,tsType:{name:`boolean`},description:``},href:{required:!1,tsType:{name:`string`},description:``},target:{required:!1,tsType:{name:`string`},description:``},rel:{required:!1,tsType:{name:`string`},description:``},closeOnSelect:{required:!1,tsType:{name:`boolean`},description:``,defaultValue:{value:`true`,computed:!1}},onSelect:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(event: React.MouseEvent<HTMLElement>) => void`,signature:{arguments:[{type:{name:`ReactMouseEvent`,raw:`React.MouseEvent<HTMLElement>`,elements:[{name:`HTMLElement`}]},name:`event`}],return:{name:`void`}}},description:``}}}})))()}function ye(e){return{x:e.clientX,y:e.clientY}}function be(e){return{x:e.left+e.width/2,y:e.top+e.height/2}}function xe(e,t){return{contextElement:t??void 0,getBoundingClientRect:()=>({x:e.x,y:e.y,top:e.y,left:e.x,bottom:e.y,right:e.x,width:0,height:0,toJSON:()=>{}})}}function Se(e){return{open:!0,source:e.source,anchor:e.anchor}}function Ce(e){return!e.open&&e.anchor===null?e:{open:!1,source:null,anchor:null}}var we;function Te(){return(Te=e((()=>{we={open:!1,source:null,anchor:null}})))()}var W,Ee,G;function K(){return(K=e((()=>{W=t(n(),1),f(),Te(),A(),Ee=r(),G=({children:e,mode:t,placement:n=t===`click`?`bottom-start`:`right-start`,open:r,defaultOpen:i,onOpenChange:a})=>{let[o,f]=(0,W.useState)(we),[p,m]=(0,W.useState)(i??!1),h=r!==void 0,g=h?r:p,_=(0,W.useRef)(null),{refs:v,floatingStyles:y,update:b}=s({placement:n,strategy:t===`contextmenu`?`fixed`:`absolute`,transform:!1,middleware:[d(6),c({padding:8}),u({padding:8})],whileElementsMounted:l}),x=(0,W.useCallback)(e=>{h||m(e),a?.(e),e||f(e=>Ce(e))},[h,a]),S=(0,W.useCallback)(()=>{x(!1)},[x]),C=(0,W.useCallback)((e,t)=>{v.setReference(e),f(Se({source:t,anchor:{type:`element`,element:e}})),x(!0)},[v,x]),w=(0,W.useCallback)((e,t,n)=>{v.setReference(xe(e,n)),f(Se({source:t,anchor:{type:`point`,point:e,contextElement:n}})),x(!0),b()},[v,x,b]),T=(0,W.useCallback)(e=>{_.current=e,t===`click`&&v.setReference(e)},[t,v]),E=(0,W.useCallback)(e=>{if(t!==`click`)return;let n=e.currentTarget;if(g&&o.anchor?.type===`element`&&o.anchor.element===n){S();return}C(n,`click`)},[t,g,o.anchor,S,C]),D=(0,W.useCallback)(e=>{if(t!==`contextmenu`)return;e.preventDefault();let n=e.currentTarget,r=ye(e);w(r,`contextmenu`,n)},[t,w]),O=(0,W.useCallback)(e=>{if(!(e.key===`ContextMenu`||e.shiftKey&&e.key===`F10`))return;e.preventDefault();let n=e.currentTarget;if(t===`click`){C(n,`keyboard`);return}let r=be(n.getBoundingClientRect());w(r,`keyboard`,n)},[t,C,w]),A=g&&o.anchor!==null,j=(0,W.useMemo)(()=>o.anchor?o.anchor.type===`point`?o.anchor.point:be(o.anchor.element.getBoundingClientRect()):null,[o.anchor]),M=(0,W.useMemo)(()=>({mode:t,open:A,openSource:o.source,anchorPoint:j,floatingStyles:y,floatingRef:v.floating,triggerRef:_,setFloating:v.setFloating,registerTriggerElement:T,onTriggerClick:E,onTriggerContextMenu:D,onTriggerKeyDown:O,closeMenu:S}),[t,A,o.source,j,y,v.floating,v.setFloating,T,E,D,O,S]);return(0,Ee.jsx)(k.Provider,{value:M,children:e})},G.__docgenInfo={description:``,methods:[],displayName:`MenuRoot`,props:{children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},mode:{required:!0,tsType:{name:`union`,raw:`"click" | "contextmenu"`,elements:[{name:`literal`,value:`"click"`},{name:`literal`,value:`"contextmenu"`}]},description:``},placement:{required:!1,tsType:{name:`Placement`},description:``,defaultValue:{value:`mode === "click" ? "bottom-start" : "right-start"`,computed:!1}},open:{required:!1,tsType:{name:`boolean`},description:``},defaultOpen:{required:!1,tsType:{name:`boolean`},description:``},onOpenChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(open: boolean) => void`,signature:{arguments:[{type:{name:`boolean`},name:`open`}],return:{name:`void`}}},description:``}}}})))()}var De,q;function J(){return(J=e((()=>{n(),o(),y(),De=r(),q=({className:e})=>(0,De.jsx)(`div`,{role:`separator`,className:a(v.uiPopupOptionSeparator,e)}),q.__docgenInfo={description:``,methods:[],displayName:`MenuSeparator`,props:{className:{required:!1,tsType:{name:`string`},description:``}}}})))()}function Oe(e,t,n){return n<t?t:Math.min(Math.max(e,t),n)}var Y,ke,X,Ae;function je(){return(je=e((()=>{Y=t(n(),1),g(),o(),S(),ke=i(),P(),A(),X=r(),Ae=({children:e,className:t,closeOnOutside:n=!0,closeOnEscape:r=!0,disableOutsideClick:i=!1,restoreFocus:o=!0,radius:s=76,itemSize:c=64,closeLabel:l=`Закрыть`})=>{let{open:u,anchorPoint:d,floatingRef:f,triggerRef:g,setFloating:_,closeMenu:v}=D(),y=typeof e==`function`?e({closeMenu:v}):e,S=(0,Y.useMemo)(()=>Y.Children.toArray(y),[y]),C=S.length,w=s*2+c,T=(0,Y.useMemo)(()=>{if(typeof window>`u`||!d)return null;let e=w/2+8;return{x:Oe(d.x,e,window.innerWidth-e),y:Oe(d.y,e,window.innerHeight-e)}},[d,w]),E=(0,Y.useCallback)(()=>{let e=f.current;return e?Array.from(e.querySelectorAll(`[data-menu-item="true"]:not([data-disabled="true"])`)):[]},[f]);p({active:u,initialFocus:e=>E()[0]??e,restoreFocus:o,restoreFocusTarget:()=>g.current,containerRef:f}),(0,Y.useEffect)(()=>{if(!u||!d)return;let e=0;return e=window.requestAnimationFrame(()=>{(E()[0]??f.current)?.focus()}),()=>window.cancelAnimationFrame(e)},[u,d,E,f]),h({active:u,enabled:r,onDismiss:v,containerRef:f});let O=(0,Y.useCallback)(()=>{!u||i||n&&v()},[u,i,n,v]);m([f,g],O);let k=(0,Y.useCallback)(e=>{let t=E();if(t.length===0)return;let n=document.activeElement,r=n?t.indexOf(n):-1;if(e.key===`ArrowRight`||e.key===`ArrowDown`){e.preventDefault(),t[r>=0?(r+1)%t.length:0]?.focus();return}if(e.key===`ArrowLeft`||e.key===`ArrowUp`){e.preventDefault(),t[r>=0?(r-1+t.length)%t.length:t.length-1]?.focus();return}if(e.key===`Home`){e.preventDefault(),t[0]?.focus();return}e.key===`End`&&(e.preventDefault(),t[t.length-1]?.focus())},[E]);return typeof document>`u`?null:(0,ke.createPortal)((0,X.jsx)(x,{children:u&&T&&(0,X.jsxs)(b.div,{ref:_,style:{"--radial-panel-size":`${w}px`,"--radial-radius":`${s}px`,"--radial-item-size":`${c}px`,left:T.x-w/2,top:T.y-w/2,transformOrigin:`center`},role:`menu`,tabIndex:-1,className:a(N.radialPanel,t),onKeyDown:k,initial:{opacity:0,scale:.78},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.78},transition:{duration:.16,ease:`easeOut`},children:[(0,X.jsx)(`div`,{className:N.radialRing,"aria-hidden":`true`}),(0,X.jsx)(`button`,{type:`button`,role:`menuitem`,className:N.radialCenterButton,"aria-label":l,"data-menu-item":`true`,"data-radial-close":`true`,onClick:v,children:(0,X.jsx)(`span`,{className:N.radialCenterButtonText,children:l})}),(0,X.jsx)(`div`,{className:N.radialItems,children:S.map((e,t)=>{let n=C>0?-90+360/C*t:-90;return(0,X.jsx)(`div`,{className:N.radialItemSlot,style:{"--radial-item-angle":`${n}deg`},children:e},t)})})]})}),document.body)}})))()}var Me,Z,Q;function Ne(){return(Ne=e((()=>{Me=t(n(),1),o(),P(),A(),Z=r(),Q=({children:e,icon:t,className:n,disabled:r,closeOnSelect:i=!0,onSelect:o})=>{let{closeMenu:s}=D(),c=(0,Me.useCallback)(e=>{if(r){e.preventDefault(),e.stopPropagation();return}o?.(e),!e.defaultPrevented&&i&&s()},[r,o,i,s]);return(0,Z.jsxs)(`button`,{type:`button`,role:`menuitem`,tabIndex:-1,disabled:r,"aria-disabled":r,"data-menu-item":`true`,"data-disabled":r?`true`:void 0,"data-ui":`radial-menu-item`,"data-action":`select-radial-menu-item`,className:a(N.radialItem,n),onClick:c,children:[t&&(0,Z.jsx)(`span`,{className:N.radialItemIcon,children:t}),(0,Z.jsx)(`span`,{className:N.radialItemText,children:e})]})},Q.__docgenInfo={description:``,methods:[],displayName:`RadialMenuItem`,props:{children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},icon:{required:!1,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},className:{required:!1,tsType:{name:`string`},description:``},disabled:{required:!1,tsType:{name:`boolean`},description:``},closeOnSelect:{required:!1,tsType:{name:`boolean`},description:``,defaultValue:{value:`true`,computed:!1}},onSelect:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(event: React.MouseEvent<HTMLButtonElement>) => void`,signature:{arguments:[{type:{name:`ReactMouseEvent`,raw:`React.MouseEvent<HTMLButtonElement>`,elements:[{name:`HTMLButtonElement`}]},name:`event`}],return:{name:`void`}}},description:``}}}})))()}var Pe,$,Fe;function Ie(){return(Ie=e((()=>{n(),ee(),R(),B(),U(),K(),J(),je(),Ne(),Pe=r(),$=({children:e,placement:t,open:n,defaultOpen:r,onOpenChange:i})=>(0,Pe.jsx)(G,{mode:`contextmenu`,placement:t,open:n,defaultOpen:r,onOpenChange:i,children:e}),Fe=Object.assign($,{Trigger:M,Content:L,RadialContent:Ae,Item:H,RadialItem:Q,Separator:q,GroupLabel:z}),$.__docgenInfo={description:``,methods:[],displayName:`ContextMenuRoot`,props:{children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},placement:{required:!1,tsType:{name:`Placement`},description:``},open:{required:!1,tsType:{name:`boolean`},description:``},defaultOpen:{required:!1,tsType:{name:`boolean`},description:``},onOpenChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(open: boolean) => void`,signature:{arguments:[{type:{name:`boolean`},name:`open`}],return:{name:`void`}}},description:``}}}})))()}export{w as _,G as a,U as c,L as d,R as f,T as g,C as h,J as i,z as l,D as m,Ie as n,K as o,A as p,q as r,H as s,Fe as t,B as u,E as v};