@ryuzaki13/react-foundation-ui 1.8.12 → 1.8.13
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.
- package/package.json +2 -2
- package/storybook-static/assets/{Badge-CveIo2LZ.js → Badge-BFhBl7yM.js} +1 -1
- package/storybook-static/assets/{Badge.stories-Bd8M64xJ.js → Badge.stories-BEu55X4s.js} +1 -1
- package/storybook-static/assets/{BadgeList-xT41a0VL.js → BadgeList-mqmnGtRR.js} +1 -1
- package/storybook-static/assets/{Button-C5bBSb3k.js → Button-CESdnWrO.js} +1 -1
- package/storybook-static/assets/{Button-DkDgfpHL.js → Button-_YPAu9sd.js} +1 -1
- package/storybook-static/assets/{Button.stories-CeKPeGK5.js → Button.stories-B0Y_T17B.js} +1 -1
- package/storybook-static/assets/{CalendarView-CEqcrblx.js → CalendarView-DLuO2Ywz.js} +1 -1
- package/storybook-static/assets/{CheckBox-DKeFkdOt.js → CheckBox-CGiNmAPT.js} +1 -1
- package/storybook-static/assets/{CheckBox-OVvAarW-.js → CheckBox-l0pbBm9z.js} +1 -1
- package/storybook-static/assets/{CheckBox.stories-CfZ0p1yo.js → CheckBox.stories-ROPAnqh8.js} +1 -1
- package/storybook-static/assets/{Color-6AOWCN3U-BWW7zrfs.js → Color-6AOWCN3U-kPaRN0HS.js} +1 -1
- package/storybook-static/assets/{ContextMenu-xn2GtiLR.js → ContextMenu-Bob4DtRn.js} +1 -1
- package/storybook-static/assets/{ContextMenu-kia7is1N.js → ContextMenu-DxfUAeJS.js} +1 -1
- package/storybook-static/assets/{ContextMenu.stories-CYuy9uXF.js → ContextMenu.stories-DCJmWy5n.js} +1 -1
- package/storybook-static/assets/{CustomOptionButton-C4w-APws.js → CustomOptionButton-DuEz9CXt.js} +1 -1
- package/storybook-static/assets/{DateInput-BiUFIihm.js → DateInput-BQ8SoeLE.js} +1 -1
- package/storybook-static/assets/{DateInput-DAzE5mCE.js → DateInput-DmNLD4Dz.js} +1 -1
- package/storybook-static/assets/{DateInput.stories-BcowGCRD.js → DateInput.stories-sTpYf7Ob.js} +1 -1
- package/storybook-static/assets/{DateRangePresetSelect-CQm4dNLR.js → DateRangePresetSelect-DRq4eJ2n.js} +1 -1
- package/storybook-static/assets/{DateRangePresetSelect-RIyqNBk9.js → DateRangePresetSelect-fgJfLaLO.js} +1 -1
- package/storybook-static/assets/{DateRangePresetSelect.stories-ypGyuGfy.js → DateRangePresetSelect.stories-ib7Qh_BB.js} +1 -1
- package/storybook-static/assets/{Detail-CEypL2Nh.js → Detail-CJniLn1R.js} +1 -1
- package/storybook-static/assets/{Detail.stories-DNkT7B-u.js → Detail.stories-BXjdNaL-.js} +1 -1
- package/storybook-static/assets/{Dialog-BVFFQJDH.js → Dialog-D6a_qzr3.js} +1 -1
- package/storybook-static/assets/{Dialog-DD0grLG3.js → Dialog-DOYnnXlU.js} +1 -1
- package/storybook-static/assets/{Dialog.stories-DSCypHqR.js → Dialog.stories-B1cZLRK3.js} +1 -1
- package/storybook-static/assets/{Disclosure-DauUgrev.js → Disclosure-Chh5o_0s.js} +1 -1
- package/storybook-static/assets/{Disclosure.stories-B1qB8vQZ.js → Disclosure.stories-Cvdvf7V8.js} +1 -1
- package/storybook-static/assets/{DisclosureGroup-D9oCCeHf.js → DisclosureGroup-CRnQOgVj.js} +1 -1
- package/storybook-static/assets/{DocsRenderer-JROSPFPF-CmSf6tXp.js → DocsRenderer-JROSPFPF-BBiErkeC.js} +1 -1
- package/storybook-static/assets/{DropZone-D8hbPCAv.js → DropZone-Bm5gqdi9.js} +1 -1
- package/storybook-static/assets/{DropZone-D42ueN1w.js → DropZone-C4L7JAlq.js} +1 -1
- package/storybook-static/assets/{DropZone.stories-DO-T_Bh4.js → DropZone.stories-BhA9q8Qv.js} +1 -1
- package/storybook-static/assets/{DropdownMenu-CknJDoji.js → DropdownMenu-DtZNSUHF.js} +1 -1
- package/storybook-static/assets/{ExpandableActionPanel-Dqi_bo3c.js → ExpandableActionPanel-0ugXlJy_.js} +1 -1
- package/storybook-static/assets/{ExpandableActionPanel.stories-BD9QZGZN.js → ExpandableActionPanel.stories-CLgMlA9k.js} +1 -1
- package/storybook-static/assets/{Flex-CaVn1IOP.js → Flex-CJlia-8f.js} +1 -1
- package/storybook-static/assets/{Flex.stories-Bp9Y6q6b.js → Flex.stories-DCvfi1EY.js} +1 -1
- package/storybook-static/assets/{FloatingPopover-U7tx-Jlw.js → FloatingPopover-CsnfPiwV.js} +1 -1
- package/storybook-static/assets/{FormattedTableCell-pmmhsAbN.js → FormattedTableCell-Dz5xWVYO.js} +1 -1
- package/storybook-static/assets/{Grid-CEpMNurH.js → Grid-C-KwTRAM.js} +1 -1
- package/storybook-static/assets/{Grid.stories-BM-gO5DN.js → Grid.stories-CzbqknNR.js} +1 -1
- package/storybook-static/assets/{ImageCropper.stories-BWz5XU6U.js → ImageCropper.stories-DaE-gm-b.js} +1 -1
- package/storybook-static/assets/{ImageRenderer-BTYZEX5t.js → ImageRenderer-IsNCXCrZ.js} +1 -1
- package/storybook-static/assets/{ImageRenderer.stories-Dz2STM95.js → ImageRenderer.stories-BbsjUEfJ.js} +1 -1
- package/storybook-static/assets/{ImageView.stories-DBVe0an3.js → ImageView.stories-DY0UITYz.js} +1 -1
- package/storybook-static/assets/{ImageViewer.stories-C4Px97lD.js → ImageViewer.stories--9q9b9nv.js} +2 -2
- package/storybook-static/assets/{ImageViewerRuntime-TJtlJVfa.js → ImageViewerRuntime-CNEH3XGN.js} +1 -1
- package/storybook-static/assets/{Input-CIPgijvW.js → Input-DLubbE7P.js} +1 -1
- package/storybook-static/assets/{Input-D8io9jVS.js → Input-Dw2JblYt.js} +1 -1
- package/storybook-static/assets/{Input.stories-SUk3aYaC.js → Input.stories-DQeyDULG.js} +1 -1
- package/storybook-static/assets/{InputDateTime-DA5pIDuE.js → InputDateTime-BRzl8Vrt.js} +1 -1
- package/storybook-static/assets/{InputDateTime.stories-DeudzDSU.js → InputDateTime.stories-BJTj5v8J.js} +1 -1
- package/storybook-static/assets/{InputFile-CGAC7ruP.js → InputFile-B8UroZji.js} +1 -1
- package/storybook-static/assets/{InputFile-C5mp5Y5I.js → InputFile-DPftxjGw.js} +1 -1
- package/storybook-static/assets/{InputFile.stories-Cx1xQ6PE.js → InputFile.stories-C7yyqHqc.js} +1 -1
- package/storybook-static/assets/{InputFiles-B7OBcPJN.js → InputFiles-BQVXHVLy.js} +1 -1
- package/storybook-static/assets/{InputFiles-Hzl89Ghf.js → InputFiles-UD_9S7-N.js} +1 -1
- package/storybook-static/assets/{InputFiles.stories-CG6QjDZH.js → InputFiles.stories-DjjJS5pZ.js} +1 -1
- package/storybook-static/assets/{InputFilesList-B6htWHF1.js → InputFilesList-BNjijD3Y.js} +1 -1
- package/storybook-static/assets/{InputImage-BTa4S4Wp.js → InputImage-C-pHr-Sx.js} +1 -1
- package/storybook-static/assets/{InputImage-CQnoblAE.js → InputImage-DbcbqIhY.js} +1 -1
- package/storybook-static/assets/{InputImage.stories-CEI44Eyz.js → InputImage.stories-D-TC9r9t.js} +1 -1
- package/storybook-static/assets/{InteractiveComponents-B0ypWz1x.js → InteractiveComponents-DbhWgM9y.js} +1 -1
- package/storybook-static/assets/{InteractiveComponents.stories-BadApta9.js → InteractiveComponents.stories-B4mkVSea.js} +1 -1
- package/storybook-static/assets/{LayoutPicker-C_Uz7Tnj.js → LayoutPicker-BoV_E3qt.js} +1 -1
- package/storybook-static/assets/{LayoutPicker-COB9GlV_.js → LayoutPicker-w1EsRpYP.js} +1 -1
- package/storybook-static/assets/{LayoutPicker.stories-Btp0IcaL.js → LayoutPicker.stories--ChGnGxf.js} +1 -1
- package/storybook-static/assets/{Listbox-AAaZGSAl.js → Listbox-CzZRsr6a.js} +1 -1
- package/storybook-static/assets/{Listbox-CyfuZw7w.js → Listbox-qZdTi11b.js} +1 -1
- package/storybook-static/assets/{Listbox.stories-NDKQmjyQ.js → Listbox.stories-C9k_1850.js} +1 -1
- package/storybook-static/assets/{Modal-BJDnJ4zv.js → Modal-DCpul8QM.js} +1 -1
- package/storybook-static/assets/{Modal.stories-D_X5lTLO.js → Modal.stories-Cy0Xd4LF.js} +1 -1
- package/storybook-static/assets/{ModalManagerProvider-ShDjozpW.js → ModalManagerProvider-BrPVMcHV.js} +1 -1
- package/storybook-static/assets/{MultiSelect-DqXfrjcH.js → MultiSelect-BEQdl-F4.js} +1 -1
- package/storybook-static/assets/{MultiSelect-B5CElQ3-.js → MultiSelect-Dy4X94E2.js} +1 -1
- package/storybook-static/assets/{MultiSelect.stories-fB3mcFmx.js → MultiSelect.stories-FuzejJmz.js} +1 -1
- package/storybook-static/assets/{NoData-DDb0G7T8.js → NoData-BsQ9EfkA.js} +1 -1
- package/storybook-static/assets/{NotificationsHost-CIGL-pKX.js → NotificationsHost-BSrODvw7.js} +1 -1
- package/storybook-static/assets/{NotificationsHost.stories-B_MRb3fs.js → NotificationsHost.stories-DeiWspcY.js} +1 -1
- package/storybook-static/assets/{ODataMultiSelect-DQAitH4N.js → ODataMultiSelect-BEz9gcd2.js} +1 -1
- package/storybook-static/assets/{ODataMultiSelect.stories-DwW221S9.js → ODataMultiSelect.stories-BwMgAkbE.js} +1 -1
- package/storybook-static/assets/{ODataSelect-tiZhOIhE.js → ODataSelect-BgC7GHOv.js} +1 -1
- package/storybook-static/assets/{ODataSelect.stories-BhaatPjK.js → ODataSelect.stories-DEIRAB-s.js} +1 -1
- package/storybook-static/assets/{ODataTreeMultiSelect-B9WqJ-Un.js → ODataTreeMultiSelect-WyZZuX0_.js} +1 -1
- package/storybook-static/assets/{ODataTreeMultiSelect.stories-CAfKuhfU.js → ODataTreeMultiSelect.stories-B6cxuagy.js} +1 -1
- package/storybook-static/assets/{ODataTreeSelect-Cel1phxZ.js → ODataTreeSelect-OJGi3-S7.js} +1 -1
- package/storybook-static/assets/{ODataTreeSelect.stories-BpBCpBA9.js → ODataTreeSelect.stories-wGRGErCH.js} +1 -1
- package/storybook-static/assets/{OneStepScroller-BSeGbz02.js → OneStepScroller-DycQ3RuL.js} +1 -1
- package/storybook-static/assets/{Option-BBtQ3GdK.js → Option-taxbFfjo.js} +1 -1
- package/storybook-static/assets/{OptionButton-B9nZuqqW.js → OptionButton-Q0QaPCII.js} +1 -1
- package/storybook-static/assets/{PeriodSelect-DA_zjcdA.js → PeriodSelect-DUJ2nF3F.js} +1 -1
- package/storybook-static/assets/{PeriodSelect-BGvhR3to.js → PeriodSelect-DnM7x-uC.js} +1 -1
- package/storybook-static/assets/{PeriodSelect.stories-DDP1eXyM.js → PeriodSelect.stories-Db0bqe3J.js} +1 -1
- package/storybook-static/assets/{PickerTriggerActions-BgvzqRBd.js → PickerTriggerActions-CGJd7xmR.js} +1 -1
- package/storybook-static/assets/{Popover-C0NebUMz.js → Popover-B6oidz5p.js} +1 -1
- package/storybook-static/assets/{Popover-BQql18MF.js → Popover-Tbhf8T81.js} +1 -1
- package/storybook-static/assets/{Popover.stories-CIyDUtlz.js → Popover.stories-DE1LxZvv.js} +1 -1
- package/storybook-static/assets/{PresetRangeDateInput-BsgzPwCV.js → PresetRangeDateInput-CQ5FfmrL.js} +1 -1
- package/storybook-static/assets/{PresetRangeDateInput-htbxc3ni.js → PresetRangeDateInput-DfgoR0My.js} +1 -1
- package/storybook-static/assets/{PresetRangeDateInput.stories-ClHM5Kah.js → PresetRangeDateInput.stories-CgoYAYBG.js} +1 -1
- package/storybook-static/assets/{PresetSelect-Dcx0BOTx.js → PresetSelect-BPtAknAr.js} +1 -1
- package/storybook-static/assets/{README-BSh5XUR9.js → README--TpGcM95.js} +1 -1
- package/storybook-static/assets/{README-ByALXSEH.js → README-4iBHWAP5.js} +1 -1
- package/storybook-static/assets/{README-CHbo4O3Z.js → README-98KIgy5G.js} +1 -1
- package/storybook-static/assets/{README-eHCINzP3.js → README-B6II8p0W.js} +1 -1
- package/storybook-static/assets/{README-DDBqoI-T.js → README-B6vU5_7I.js} +1 -1
- package/storybook-static/assets/README-BFJVjjZR.js +325 -0
- package/storybook-static/assets/README-BIT4HlFP.js +441 -0
- package/storybook-static/assets/{README-DvAlDsh9.js → README-BK6Epio1.js} +1 -1
- package/storybook-static/assets/{README-5M8ajrJp.js → README-BRlPB5_k.js} +1 -1
- package/storybook-static/assets/{README-CH_6ZIO2.js → README-BTFpEaXG.js} +1 -1
- package/storybook-static/assets/{README-DnA-4W65.js → README-BWhXgC_o.js} +1 -1
- package/storybook-static/assets/{README-Byo6DxIF.js → README-BbNHvOoR.js} +1 -1
- package/storybook-static/assets/{README-Bqnqu1bC.js → README-BbunUo8b.js} +1 -1
- package/storybook-static/assets/{README-CsoHGRve.js → README-BmYpfZKr.js} +1 -1
- package/storybook-static/assets/{README-C8E1O7DQ.js → README-Bu5uvhAT.js} +1 -1
- package/storybook-static/assets/{README-DE2wk9-v.js → README-Bx6fvSBE.js} +1 -1
- package/storybook-static/assets/{README-Am6Fa6-b.js → README-Bx6gIGiA.js} +1 -1
- package/storybook-static/assets/README-ByhxsX44.js +324 -0
- package/storybook-static/assets/{README-qHKxXU95.js → README-Byi1FFpw.js} +1 -1
- package/storybook-static/assets/{README-D9OypaFB.js → README-C3Is3a3B.js} +1 -1
- package/storybook-static/assets/{README-CNHemCS2.js → README-C6prwAXw.js} +1 -1
- package/storybook-static/assets/{README-BmhhWWEk.js → README-C9S83J_G.js} +1 -1
- package/storybook-static/assets/{README-CM-7E-Jf.js → README-CGgxP5Zo.js} +1 -1
- package/storybook-static/assets/{README-BIq-FXcN.js → README-CJ2ZVG2U.js} +1 -1
- package/storybook-static/assets/{README-B45Cwj2a.js → README-CNGCAm5d.js} +1 -1
- package/storybook-static/assets/{README-CAGQnLsv.js → README-Cb_q420B.js} +1 -1
- package/storybook-static/assets/{README-BxjYCoYA.js → README-CtIDPNJ3.js} +1 -1
- package/storybook-static/assets/{README-C9eh0JLs.js → README-CzO3Dchr.js} +1 -1
- package/storybook-static/assets/{README-DEj2wSK0.js → README-D0rzQthv.js} +1 -1
- package/storybook-static/assets/{README-Dl92E69Z.js → README-DEQu7djz.js} +1 -1
- package/storybook-static/assets/{README-BYSgTTZt.js → README-DFihT_sm.js} +1 -1
- package/storybook-static/assets/{README-CIGfHKKE.js → README-DMiWsyv_.js} +1 -1
- package/storybook-static/assets/{README-B3bFglqG.js → README-DOx8lXXk.js} +1 -1
- package/storybook-static/assets/{README-CWfPiPIB.js → README-DPhDjr43.js} +1 -1
- package/storybook-static/assets/{README-DJHVgrpj.js → README-D_NqWPa9.js} +1 -1
- package/storybook-static/assets/README-DhJ5Rb1w.js +355 -0
- package/storybook-static/assets/{README-DV4fCpqN.js → README-DlwhWCvQ.js} +1 -1
- package/storybook-static/assets/README-Dxi73a2Q.js +740 -0
- package/storybook-static/assets/README-Dycov6NP.js +583 -0
- package/storybook-static/assets/README-GTBkSG4_.js +3591 -0
- package/storybook-static/assets/{README-ui-uanyg.js → README-Gfd9tLTw.js} +1 -1
- package/storybook-static/assets/{README-B6ltJiw3.js → README-Kfawetke.js} +1 -1
- package/storybook-static/assets/{README-DjCArsA5.js → README-UDBM7ZMT.js} +1 -1
- package/storybook-static/assets/{README-DIbfpC-2.js → README-VTWQxLm_.js} +1 -1
- package/storybook-static/assets/README-YHNWrTZv.js +400 -0
- package/storybook-static/assets/README-_0Otw0eD.js +448 -0
- package/storybook-static/assets/{README-Ss-3t1nX.js → README-aw2Xu9xu.js} +1 -1
- package/storybook-static/assets/{README-BuMMG4_N.js → README-eg1emlll.js} +1 -1
- package/storybook-static/assets/{README-B6Nq7NCU.js → README-iqQHdhZ4.js} +1 -1
- package/storybook-static/assets/{README-BB_JPejH.js → README-llxZAtCj.js} +1 -1
- package/storybook-static/assets/{README-5NhzH8VL.js → README-wFnEIGl4.js} +1 -1
- package/storybook-static/assets/{README-CeK4kfFO.js → README-webB1yH0.js} +1 -1
- package/storybook-static/assets/{README-C3UcjOGB.js → README-wtreGRCe.js} +1 -1
- package/storybook-static/assets/{RadioButton-YIQXt0wx.js → RadioButton-CNOLDk_o.js} +1 -1
- package/storybook-static/assets/{RadioButton-CWtjclwT.js → RadioButton-Ce05_q7s.js} +1 -1
- package/storybook-static/assets/{RadioButton.stories-Ah-CBpeC.js → RadioButton.stories-CPd4lTl0.js} +1 -1
- package/storybook-static/assets/{RadioGroup-BnO-GL7A.js → RadioGroup-BtfD5Szd.js} +1 -1
- package/storybook-static/assets/{RadioGroup-CUS0etBD.js → RadioGroup-Ccm7G-dv.js} +1 -1
- package/storybook-static/assets/{RadioGroup.stories-DGwCawtU.js → RadioGroup.stories-D-RRPHwi.js} +1 -1
- package/storybook-static/assets/{Scrollable-D85fA6pO.js → Scrollable-DvdBIeig.js} +1 -1
- package/storybook-static/assets/{Select-gRnfvfGh.js → Select-8PV9PBKF.js} +1 -1
- package/storybook-static/assets/{Select-CGCxJjL9.js → Select-G04B41FM.js} +1 -1
- package/storybook-static/assets/{Select.stories-CMwt4F9i.js → Select.stories-Cf6CBhV8.js} +1 -1
- package/storybook-static/assets/{SerializableSelect-BLXfKJ38.js → SerializableSelect-CdQdHIVp.js} +1 -1
- package/storybook-static/assets/{SerializableSelect.stories-Bca1a9ZU.js → SerializableSelect.stories-0AKUGpbS.js} +1 -1
- package/storybook-static/assets/{SingleDateTimeInput-CyeQN0Rd.js → SingleDateTimeInput-DWT1ORhL.js} +1 -1
- package/storybook-static/assets/{SingleDateTimeInput-xrmZckzw.js → SingleDateTimeInput-DattLt6w.js} +1 -1
- package/storybook-static/assets/{SingleDateTimeInput.stories-BYFTQM9z.js → SingleDateTimeInput.stories-BLJV3jzV.js} +1 -1
- package/storybook-static/assets/{Slider-D8GtXVGI.js → Slider-DKEI4cDd.js} +1 -1
- package/storybook-static/assets/{Slider-1yJ3uVeR.js → Slider-Dci-mJt_.js} +1 -1
- package/storybook-static/assets/{Slider.stories-CyQ3ns_C.js → Slider.stories-Dp7oQueF.js} +1 -1
- package/storybook-static/assets/{SliderInput-ISSx9vH_.js → SliderInput-BGPQmlgY.js} +1 -1
- package/storybook-static/assets/{SliderInput-BOzHhEUA.js → SliderInput-BhjqGOKt.js} +1 -1
- package/storybook-static/assets/{SliderInput.stories-7ooTghrS.js → SliderInput.stories-DXNhRU3X.js} +1 -1
- package/storybook-static/assets/{Sortable-CCLiMmfZ.js → Sortable-CMd9l1Gd.js} +1 -1
- package/storybook-static/assets/{Sortable.stories-B36szI6t.js → Sortable.stories-BN1cFEFJ.js} +1 -1
- package/storybook-static/assets/{Splitter-DQGhgRwx.js → Splitter-GL65TlI9.js} +1 -1
- package/storybook-static/assets/{Splitter.stories-Hsq1wYaq.js → Splitter.stories-q5PlI6rB.js} +1 -1
- package/storybook-static/assets/{StateSelect-C6hldFgO.js → StateSelect-Byik5-iZ.js} +1 -1
- package/storybook-static/assets/{StateSelect-DieNn4VC.js → StateSelect-CT0JF2V6.js} +1 -1
- package/storybook-static/assets/{StateSelect.stories-CvAhDMix.js → StateSelect.stories-pPEPmgnN.js} +1 -1
- package/storybook-static/assets/{StringToggle.stories-CUT1tvt-.js → StringToggle.stories-BQlFmCE7.js} +1 -1
- package/storybook-static/assets/{Switch-CX9p_uYU.js → Switch--xGPiYk-.js} +1 -1
- package/storybook-static/assets/{Switch-nEMRtcWe.js → Switch-DhaLI9CG.js} +1 -1
- package/storybook-static/assets/{Switch.stories-CPsHa2_m.js → Switch.stories-5DisgIyj.js} +1 -1
- package/storybook-static/assets/{Table-BhtITVtj.js → Table-Bf6MicdG.js} +1 -1
- package/storybook-static/assets/{Table.stories-nWNhSydG.js → Table.stories-CS7rQgj9.js} +1 -1
- package/storybook-static/assets/{Tabs-DMQFh2BJ.js → Tabs-B4y4y8Ap.js} +1 -1
- package/storybook-static/assets/{Tabs.stories-D23_xvom.js → Tabs.stories-C0SpdGkh.js} +1 -1
- package/storybook-static/assets/{TabsBox-B5BsD_j_.js → TabsBox-C5LLLhnj.js} +1 -1
- package/storybook-static/assets/{TagInput-DO17z100.js → TagInput-D4BpuCoH.js} +1 -1
- package/storybook-static/assets/{TagInput.stories-CMMFnIzb.js → TagInput.stories-rn2wtZP_.js} +1 -1
- package/storybook-static/assets/{Text-ClnbDqRk.js → Text-BhBt9e7C.js} +1 -1
- package/storybook-static/assets/{Textarea-DkhohiNc.js → Textarea-B-Hz7ujq.js} +1 -1
- package/storybook-static/assets/{Textarea-C2IO_zsP.js → Textarea-BHHxY5sd.js} +1 -1
- package/storybook-static/assets/{Textarea.stories-NL6Aq8Vc.js → Textarea.stories-CZ2kWz20.js} +1 -1
- package/storybook-static/assets/{TimePanel-DNEPDlSW.js → TimePanel-Cg8fgFsn.js} +1 -1
- package/storybook-static/assets/{TimePanel.stories-DlfdPsz1.js → TimePanel.stories-BxdwtK2e.js} +1 -1
- package/storybook-static/assets/{Toggle-Cc6Ca-HI.js → Toggle-BWwfk9fi.js} +1 -1
- package/storybook-static/assets/{Toggle-3U5CceQN.js → Toggle-Ce9rbjBc.js} +1 -1
- package/storybook-static/assets/{Toggle.stories-BR-hVLDp.js → Toggle.stories-0fzcmzKy.js} +1 -1
- package/storybook-static/assets/{TreeMultiSelect-D9hMQN2O.js → TreeMultiSelect-B06Y0lIc.js} +1 -1
- package/storybook-static/assets/{TreeMultiSelect-B0oBc-4y.js → TreeMultiSelect-CrAdR_jM.js} +1 -1
- package/storybook-static/assets/{TreeMultiSelect.stories-CslpbvPR.js → TreeMultiSelect.stories-CAVoj56E.js} +1 -1
- package/storybook-static/assets/{TreePickerBase-B_dMCe45.js → TreePickerBase-qU2xPlar.js} +1 -1
- package/storybook-static/assets/{TreeSelect-2lj0Q8gm.js → TreeSelect-BIHydJFy.js} +1 -1
- package/storybook-static/assets/{TreeSelect-DEKNYF2b.js → TreeSelect-BKnWu0C7.js} +1 -1
- package/storybook-static/assets/{TreeSelect.stories-CVDxn8Vm.js → TreeSelect.stories-Dp_8ybAf.js} +1 -1
- package/storybook-static/assets/{TreeTable-CBIpzYRL.js → TreeTable-pVXjU9dG.js} +1 -1
- package/storybook-static/assets/{TreeTable.stories-BMzrr2Kc.js → TreeTable.stories-CV_8Ui6R.js} +1 -1
- package/storybook-static/assets/{blocks-B5YBxaaS.js → blocks-BY40djCc.js} +3 -3
- package/storybook-static/assets/{check-BjtdCRaW.js → check-CVkPTDzp.js} +1 -1
- package/storybook-static/assets/{chevron-down-B4u-y8Z1.js → chevron-down-BtNO4Vhe.js} +1 -1
- package/storybook-static/assets/{chevron-left-BQfWs7Ah.js → chevron-left-kceSK3sZ.js} +1 -1
- package/storybook-static/assets/{chevron-right-ChokKd-f.js → chevron-right-BA_LO2El.js} +1 -1
- package/storybook-static/assets/{chunk-W22LQPXL-meOkhzk4.js → chunk-W22LQPXL-yJiFPv6e.js} +1 -1
- package/storybook-static/assets/{circle-alert-B1AnDRf_.js → circle-alert-B2m4a1zz.js} +1 -1
- package/storybook-static/assets/{circle-check-JYnlcC1F.js → circle-check-Cfjhotlm.js} +1 -1
- package/storybook-static/assets/{components-C_wl1sL5.js → components-D6yV8PLX.js} +3 -3
- package/storybook-static/assets/{contextMenu-B-TUGs_1.js → contextMenu-B0pQBIW0.js} +1 -1
- package/storybook-static/assets/{download-eR3X8I-h.js → download-Lba8elK9.js} +1 -1
- package/storybook-static/assets/{floating-ui.react-D95VPQ0b.js → floating-ui.react-BFNvfMpU.js} +1 -1
- package/storybook-static/assets/{foundationApi-QhHXpYLB.js → foundationApi-DZhnQ2cC.js} +1 -1
- package/storybook-static/assets/{foundationLib-CEAjnstw.js → foundationLib-CoVTo22U.js} +1 -1
- package/storybook-static/assets/{hooks-awde7r2r.js → hooks-Cc6eXN6U.js} +1 -1
- package/storybook-static/assets/iframe-BXM-JBuH.js +1 -0
- package/storybook-static/assets/{iframe-FSp_AjJa.js → iframe-o7sH2IXC.js} +3 -3
- package/storybook-static/assets/{info-12vmb1sT.js → info-BpsVP_dM.js} +1 -1
- package/storybook-static/assets/{odata-C0Kpvttz.js → odata-CXsbxsRY.js} +1 -1
- package/storybook-static/assets/{odataStoryFixtures-BXZnk_C7.js → odataStoryFixtures-Dj_bzRqh.js} +1 -1
- package/storybook-static/assets/{react-BlCqWuXr.js → react-DeJ0JTHb.js} +1 -1
- package/storybook-static/assets/{refresh-cw-Bf5ufPte.js → refresh-cw-BvGyjEXe.js} +1 -1
- package/storybook-static/assets/{settings-2-DR-dTXIC.js → settings-2-BdXxnHos.js} +1 -1
- package/storybook-static/assets/{sortable-B5e5yb_-.js → sortable-XkyN-9r5.js} +1 -1
- package/storybook-static/assets/{syntaxhighlighter-QEQV7K2Y-EVJARTec.js → syntaxhighlighter-QEQV7K2Y-Cafn3LV1.js} +1 -1
- package/storybook-static/assets/{trash-2-QP7TS18H.js → trash-2-uPH9-fND.js} +1 -1
- package/storybook-static/assets/{triangle-alert-qw19mxHr.js → triangle-alert-tT01vSMw.js} +1 -1
- package/storybook-static/assets/{useODataSelectBase-Csu_Cct9.js → useODataSelectBase-B2LlOwPZ.js} +1 -1
- package/storybook-static/assets/{useODataTreeData-BAv-Twqf.js → useODataTreeData-CU7Rqcb9.js} +1 -1
- package/storybook-static/assets/{usePickerQuery-Da-XM_Y0.js → usePickerQuery-D8GHQ6KR.js} +1 -1
- package/storybook-static/assets/{usePickerTriggerController-C0TdC2Pz.js → usePickerTriggerController-CcK1jmDy.js} +1 -1
- package/storybook-static/assets/{x-aCjYTirW.js → x-BlAURbAH.js} +1 -1
- package/storybook-static/iframe.html +2 -2
- package/storybook-static/project.json +1 -1
- package/storybook-static/assets/README--LCKbep-.js +0 -110
- package/storybook-static/assets/README-BXJneZAJ.js +0 -147
- package/storybook-static/assets/README-C6BOdXNV.js +0 -322
- package/storybook-static/assets/README-CC00hlZK.js +0 -527
- package/storybook-static/assets/README-Cj2e6HrF.js +0 -178
- package/storybook-static/assets/README-DN9HKtp_.js +0 -124
- package/storybook-static/assets/README-DNricOkt.js +0 -136
- package/storybook-static/assets/README-DoCA4JXf.js +0 -273
- package/storybook-static/assets/README-tm9QH9cF.js +0 -103
- package/storybook-static/assets/iframe-DzQq_POR.js +0 -1
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{a as e,n as t}from"./rolldown-runtime-DkW27tQK.js";import{t as n}from"./react-BZJXY1be.js";import{n as r,t as i}from"./x-
|
|
1
|
+
import{a as e,n as t}from"./rolldown-runtime-DkW27tQK.js";import{t as n}from"./react-BZJXY1be.js";import{n as r,t as i}from"./x-BlAURbAH.js";import{n as a}from"./iframe-o7sH2IXC.js";import{a as o,i as s}from"./utils-tg3ibbzi.js";import{g as c,p as l}from"./odata-service-CWkHASdw-DlmSiioz.js";import{n as u,t as d}from"./ui.module-Cat84Nza.js";var f,p,m,h,g,_,v,y,b;function x(){return(x=t((()=>{f=`lRn5ye`,p=`ce5HAY`,m=`_8TObqB`,h=`Gx3Wbd`,g=`cpwaYo`,_=`itlmix`,v=`aITEGl`,y=`ekyJIt`,b={controlLayout:f,input:p,inputNumber:m,controlWithEndAdornment:h,controlEndAdornment:g,endAdornmentGroup:_,clearButton:v,error:y}})))()}function S({id:e,hasLabel:t,hasDescription:n,hasError:r}){let i=(0,C.useId)(),a=e??i,o=t?`${a}-label`:void 0,s=n?`${a}-description`:void 0,c=r?`${a}-error`:void 0;return{controlId:a,labelId:o,descriptionId:s,errorId:c,describedBy:[s,c].filter(Boolean).join(` `)||void 0}}var C;function w(){return(w=t((()=>{C=n()})))()}function T({label:e,controlId:t,labelId:n}){return(0,L.jsx)(`label`,{id:n,htmlFor:t,className:u.uiLabel,children:e})}function E(){return(0,L.jsx)(`div`,{className:o(u.uiInputControlFake,`skeletonLine`)})}function D({label:e,description:t,size:n,disabled:r,isLoading:i,className:a}){let{controlId:s,labelId:c,descriptionId:l}=S({hasLabel:e!=null,hasDescription:!!t});return(0,L.jsxs)(`div`,{className:o(u.uiElement,u.uiSizable,n&&u[n],u.disabled,a),"aria-disabled":r||void 0,children:[e&&(0,L.jsx)(T,{label:e,controlId:s,labelId:c}),t&&(0,L.jsx)(`p`,{id:l,className:u.uiDescription,children:t}),(0,L.jsx)(`div`,{className:o(u.uiInputControlFake,i&&`skeletonLine`)})]})}function O(e){return(0,L.jsx)(D,{...e,isLoading:!0})}function k({label:e,description:t,disabled:n,className:r,error:i,size:a,controlId:s,labelId:c,descriptionId:l,errorId:d,required:f,children:p}){return(0,L.jsxs)(`div`,{className:o(u.uiElement,u.uiSizable,a&&u[a],n&&u.disabled,f&&u.required,r),"aria-disabled":n||void 0,children:[e&&(0,L.jsx)(T,{label:e,controlId:s,labelId:c}),t&&(0,L.jsx)(`p`,{id:l,className:u.uiDescription,children:t}),(0,L.jsxs)(`div`,{className:b.controlLayout,children:[p,i&&(0,L.jsx)(`p`,{id:d,className:b.error,role:`alert`,children:i})]})]})}function A({className:e,endAdornment:t,endAdornmentClassName:n,endAdornmentWidth:r,children:i}){let a=t!=null,s=a&&r?{"--input-end-adornment-width":r}:void 0;return(0,L.jsxs)(`div`,{className:o(b.controlLayout,e),style:s,children:[i({controlClassName:a?b.controlWithEndAdornment:void 0}),a&&(0,L.jsx)(`div`,{className:o(b.controlEndAdornment,n),children:t})]})}function j({onClick:e,disabled:t,className:n,ariaLabel:r=`Очистить значение`}){return(0,L.jsx)(`button`,{type:`button`,disabled:t||!e,className:o(b.clearButton,n),onClick:e,"aria-label":r,children:(0,L.jsx)(i,{})})}function M(e,t,n){if(n)return n;if(e&&t)return`calc((var(--control-height) * 2) + var(--space-xs))`;if(e||t)return`var(--control-height)`}function N({endAdornment:e,onClear:t,disabled:n}){if(!(e==null&&!t))return(0,L.jsxs)(`div`,{className:b.endAdornmentGroup,children:[e,t&&(0,L.jsx)(j,{onClick:t,disabled:n})]})}function P({label:e,description:t,disabled:n,className:r,onClear:i,error:a,onClearError:s,onChange:c,value:l,size:d,allowedPattern:f,endAdornment:p,endAdornmentClassName:m,endAdornmentWidth:h,type:g=`text`,..._}){let[v,y]=(0,I.useState)(!1),x=e=>{let t=e.target.value;f!==void 0&&y(t!==``&&!f.test(t)),c(t),a&&s&&s()},C=!!(l&&l.length>0),w=C?a:void 0,{controlId:T,labelId:E,descriptionId:D,errorId:O,describedBy:j}=S({id:_.id,hasLabel:e!=null,hasDescription:!!t,hasError:!!w}),P=C&&(!!a||v),F=N({endAdornment:p,onClear:i,disabled:n||!C}),R=M(p!=null,!!i,h);return(0,L.jsx)(k,{label:e,description:t,disabled:n,required:_.required,className:r,size:d,error:w,controlId:T,labelId:E,descriptionId:D,errorId:O,children:(0,L.jsx)(A,{endAdornment:F,endAdornmentClassName:m,endAdornmentWidth:R,children:({controlClassName:e})=>(0,L.jsx)(`input`,{..._,id:T,type:g,disabled:n,value:l,"aria-invalid":P||void 0,"aria-labelledby":E,"aria-describedby":j,"data-invalid":P?``:void 0,className:o(u.uiInputControl,b.input,e),onChange:x})})})}function F({label:e,description:t,disabled:n,className:r,onClear:i,error:a,onClearError:s,onChange:c,value:d,size:f,endAdornment:p,endAdornmentClassName:m,endAdornmentWidth:h,...g}){let _=g,{controlId:v,labelId:y,descriptionId:x,errorId:C,describedBy:w}=S({id:g.id,hasLabel:e!=null,hasDescription:!!t,hasError:!!a}),T=(0,I.useRef)(null),E=(0,I.useRef)(null),D=d!==void 0&&typeof d==`number`&&!isNaN(d)?String(d):``;(0,I.useLayoutEffect)(()=>{let e=E.current;if(e&&Object.is(e.value,d)){T.current&&T.current.value!==e.raw&&(T.current.value=e.raw);return}E.current=null,T.current&&T.current.value!==D&&(T.current.value=D)},[D,d]);let O=i?()=>{i()}:void 0,j=e=>{let t=e.target.value,n=l(t);E.current={value:n,raw:t},c(n),a&&s&&s()},P=N({endAdornment:p,onClear:O,disabled:n}),F=M(p!=null,!!O,h);return(0,L.jsx)(k,{label:e,description:t,disabled:n,required:g.required,className:r,size:f,error:a,controlId:v,labelId:y,descriptionId:x,errorId:C,children:(0,L.jsx)(A,{endAdornment:P,endAdornmentClassName:m,endAdornmentWidth:F,children:({controlClassName:e})=>(0,L.jsx)(`input`,{..._,ref:T,id:v,type:`number`,inputMode:`decimal`,disabled:n,defaultValue:D,"aria-labelledby":y,"aria-describedby":w,className:o(u.uiInputControl,b.input,b.inputNumber,e),onChange:j})})})}var I,L,R;function z(){return(z=t((()=>{I=e(n(),1),c(),s(),r(),d(),x(),w(),L=a(),R=P,E.__docgenInfo={description:``,methods:[],displayName:`InputLoadingFrame`},D.__docgenInfo={description:``,methods:[],displayName:`InputUIFrame`,props:{isLoading:{required:!1,tsType:{name:`boolean`},description:``}}},O.__docgenInfo={description:``,methods:[],displayName:`InputUILoading`},k.__docgenInfo={description:`Низкоуровневая оболочка поля ввода с общими элементами оформления.`,methods:[],displayName:`InputUI`,props:{className:{required:!1,tsType:{name:`string`},description:``},error:{required:!1,tsType:{name:`string`},description:``},controlId:{required:!1,tsType:{name:`string`},description:``},labelId:{required:!1,tsType:{name:`string`},description:``},descriptionId:{required:!1,tsType:{name:`string`},description:``},errorId:{required:!1,tsType:{name:`string`},description:``},required:{required:!1,tsType:{name:`boolean`},description:``},children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``}},composes:[`Omit`]},A.__docgenInfo={description:``,methods:[],displayName:`InputControl`,props:{className:{required:!1,tsType:{name:`string`},description:``},endAdornment:{required:!1,tsType:{name:`ReactNode`},description:``},endAdornmentClassName:{required:!1,tsType:{name:`string`},description:``},endAdornmentWidth:{required:!1,tsType:{name:`string`},description:``},children:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(props: InputControlRenderProps) => ReactNode`,signature:{arguments:[{type:{name:`InputControlRenderProps`},name:`props`}],return:{name:`ReactNode`}}},description:``}}},j.__docgenInfo={description:``,methods:[],displayName:`InputClearButton`,props:{onClick:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:``},disabled:{required:!1,tsType:{name:`boolean`},description:``},className:{required:!1,tsType:{name:`string`},description:``},ariaLabel:{required:!1,tsType:{name:`string`},description:``,defaultValue:{value:`"Очистить значение"`,computed:!1}}}},P.__docgenInfo={description:`Базовое текстовое поле ввода для строковых значений.`,methods:[],displayName:`InputText`,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:`T`},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:``},onClear:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:``},error:{required:!1,tsType:{name:`string`},description:``},onClearError:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:``},defaultValue:{required:!1,tsType:{name:`string`},description:``},endAdornment:{required:!1,tsType:{name:`ReactNode`},description:``},endAdornmentClassName:{required:!1,tsType:{name:`string`},description:``},endAdornmentWidth:{required:!1,tsType:{name:`string`},description:``},type:{required:!1,tsType:{name:`union`,raw:`"email" | "password" | "search" | "tel" | "text" | "url"`,elements:[{name:`literal`,value:`"email"`},{name:`literal`,value:`"password"`},{name:`literal`,value:`"search"`},{name:`literal`,value:`"tel"`},{name:`literal`,value:`"text"`},{name:`literal`,value:`"url"`}]},description:``,defaultValue:{value:`"text"`,computed:!1}},allowedPattern:{required:!1,tsType:{name:`RegExp`},description:`Регулярное выражение для валидации всего введённого значения.
|
|
2
2
|
При несоответствии поле подсвечивается как невалидное, но текст не удаляется.
|
|
3
3
|
Пример: \`/^\\d*$/\``}},composes:[`Omit`]},F.__docgenInfo={description:`Числовое поле ввода с нормализацией значения и защитой от промежуточного невалидного ввода.`,methods:[],displayName:`InputNumber`,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:``},onClear:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:``},error:{required:!1,tsType:{name:`string`},description:``},onClearError:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:``},defaultValue:{required:!1,tsType:{name:`T`},description:``},endAdornment:{required:!1,tsType:{name:`ReactNode`},description:``},endAdornmentClassName:{required:!1,tsType:{name:`string`},description:``},endAdornmentWidth:{required:!1,tsType:{name:`string`},description:``}},composes:[`Omit`]}})))()}export{F as a,O as c,S as d,E as i,z as l,j as n,P as o,A as r,k as s,R as t,w as u};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{n as t}from"./iframe-
|
|
1
|
+
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{n as t}from"./iframe-o7sH2IXC.js";import{i as n,r}from"./react-Bl2r1tuC.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-BY40djCc.js";import{a as p,i as m,n as h,o as g,r as _,t as v}from"./Input.stories-DQeyDULG.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:`Input`}),`
|
|
3
3
|
`,(0,x.jsx)(o,{children:`Базовое текстовое и числовое поле для форм, фильтров и служебных панелей`}),`
|
|
4
4
|
`,(0,x.jsx)(t.p,{children:`Input уже имеет живые stories, а эта страница собирает их в структурированную документацию с краткими рекомендациями, примерами подключения и API.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{n}from"./iframe-
|
|
1
|
+
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{n}from"./iframe-o7sH2IXC.js";import{n as r,t as i}from"./createControlledStoryRender-BouhvX-R.js";import{a,l as o,o as s}from"./Input-DLubbE7P.js";var c=t({NumberControlled:()=>m,PatternValidation:()=>h,TextControlled:()=>p,WithError:()=>g,__namedExportsOrder:()=>_,default:()=>f}),l,u,d,f,p,m,h,g,_;function v(){return(v=e((()=>{r(),o(),l=n(),u=i((e,t)=>(0,l.jsx)(s,{...e,value:e.value??``,onChange:n=>{e.onChange?.(n),t({value:n})},onClear:e.onClear?()=>{e.onClear?.(),t({value:``})}:void 0,onClearError:()=>{e.onClearError?.(),t({error:void 0})}})),d=i((e,t)=>(0,l.jsx)(a,{...e,onChange:n=>{e.onChange?.(n),t({value:n})},onClear:e.onClear?()=>{e.onClear?.(),t({value:void 0})}:void 0,onClearError:()=>{e.onClearError?.(),t({error:void 0})}})),f={title:`Shared/UI/Input`,component:s,args:{value:``,onChange:()=>{}},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{label:{description:`Заголовок поля.`,control:`text`},description:{description:`Описание под заголовком.`,control:`text`},placeholder:{description:`Плейсхолдер нативного поля ввода.`,control:`text`},value:{description:`Текущее значение поля.`,control:`text`},onChange:{description:`Вызывается при изменении значения.`,control:!1},onClear:{description:`Callback кнопки очистки справа.`,control:!1},error:{description:`Текст ошибки под полем.`,control:`text`},onClearError:{description:`Вызывается при вводе для сброса внешней ошибки.`,control:!1},type:{description:`Семантика текстового значения для нативного ввода.`,control:`select`,options:[`text`,`email`,`password`,`search`,`tel`,`url`]},disabled:{description:`Блокирует редактирование.`,control:`boolean`},size:{description:`Размер поля и подписи.`,control:`select`,options:[`xs`,`sm`,`md`,`lg`,`xl`]},allowedPattern:{description:`Регулярное выражение для валидации введенной строки.`,control:!1},endAdornment:{description:`Дополнительный элемент справа внутри поля.`,control:!1},endAdornmentClassName:{description:`CSS-класс контейнера дополнительного элемента справа.`,control:`text`},endAdornmentWidth:{description:`Явная ширина области дополнительного элемента справа.`,control:`text`}}},p={render:u,args:{label:`Наименование`,description:`Пример обычного текстового поля.`,placeholder:`Введите значение`,value:``,size:`md`,onClear:()=>{}}},m={render:d,args:{label:`Количество`,description:`Числовой ввод с min/max.`,placeholder:`0`,value:25,min:0,max:100,onChange:()=>{},onClear:()=>{}},argTypes:{value:{description:`Текущее числовое значение поля.`,control:`number`}},parameters:{controls:{exclude:[`type`,`allowedPattern`]}}},h={render:u,args:{label:`Только цифры`,description:"`allowedPattern` подсвечивает невалидный ввод.",placeholder:`12345`,value:``,allowedPattern:/^\d*$/}},g={render:u,args:{label:`Логин`,value:`admin`,error:`Логин уже занят`,onClear:()=>{},onClearError:()=>{}}},p.parameters={...p.parameters,docs:{...p.parameters?.docs,source:{originalSource:`{
|
|
2
2
|
render: renderInputTextStory,
|
|
3
3
|
args: {
|
|
4
4
|
label: "Наименование",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{n as t}from"./iframe-
|
|
1
|
+
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{n as t}from"./iframe-o7sH2IXC.js";import{i as n,r}from"./react-Bl2r1tuC.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-BY40djCc.js";import{a as p,i as m,n as h,o as g,r as _,t as v}from"./InputDateTime.stories-BJTj5v8J.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:m,parameters:{docs:{toc:!0}}}),`
|
|
2
2
|
`,(0,x.jsx)(u,{children:`InputDateTime`}),`
|
|
3
3
|
`,(0,x.jsx)(o,{children:`Маскированный ввод даты, времени и объединенного значения дата-время`}),`
|
|
4
4
|
`,(0,x.jsx)(t.p,{children:`InputDateTime уже имеет живые stories, а эта страница собирает их в структурированную документацию с краткими рекомендациями, примерами подключения и API.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{t as n}from"./react-BZJXY1be.js";import{n as r}from"./iframe-
|
|
1
|
+
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{t as n}from"./react-BZJXY1be.js";import{n as r}from"./iframe-o7sH2IXC.js";import{a as i,i as a}from"./utils-tg3ibbzi.js";import{n as o,t as s}from"./ui.module-Cat84Nza.js";import{d as c,l,n as u,r as d,s as f,u as p}from"./Input-DLubbE7P.js";import{a as m,i as h,n as g,r as _}from"./date-segments-DeoMkKv9.js";var v,y,b;function x(){return(x=e((()=>{v=`t1iysX`,y=`_-4oX-p`,b={segmentInput:v,separator:y}})))()}function S(e){return h(e).map(e=>e.kind===`editable`?{...e,type:e.id}:e)}function C(e,t){let n=g(e,t),r=new Map;return t.forEach((e,t)=>{e.kind===`editable`&&r.set(e.type,n.get(t)??``)}),r}function w(e,t){let n=new Map;return e.forEach((e,r)=>{e.kind===`editable`&&n.set(r,t.get(e.type)??``)}),m(e,n)}function T(){return(T=e((()=>{_()})))()}function E(e,t){let n=C(e,t),r=new Map;return t.forEach((e,t)=>{e.kind===`editable`&&r.set(t,n.get(e.type)??``)}),r}function D(e){let t=[];return e.forEach((e,n)=>{e.kind===`editable`&&t.push(n)}),t}function O({mask:e,value:t,onChange:n,onClearError:r,disabled:i}){let a=(0,k.useMemo)(()=>S(e),[e]),o=(0,k.useMemo)(()=>D(a),[a]),s=(0,k.useMemo)(()=>E(t,a),[t,a]),[c,l]=(0,k.useState)(null),[u,d]=(0,k.useState)(()=>t?.getTime()),f=t?.getTime();f!==u&&(d(f),l(null));let p=c??s,m=(0,k.useRef)(new Map),h=(0,k.useRef)(0),[g,_]=(0,k.useState)(!1),v=(0,k.useCallback)(e=>{let t=new Map;a.forEach((n,r)=>{n.kind===`editable`&&t.set(n.type,e.get(r)??``)});let r=w(a,t);r!==null&&n(r)},[a,n]),y=(0,k.useCallback)((e,t=!0)=>{let n=m.current.get(e);n&&(n.focus(),t&&requestAnimationFrame(()=>n.select()))},[]),b=(0,k.useCallback)(e=>{let t=o.indexOf(e);return t<o.length-1?o[t+1]:null},[o]),x=(0,k.useCallback)(e=>{let t=o.indexOf(e);return t>0?o[t-1]:null},[o]),C=(0,k.useCallback)((e,t)=>e.padStart(t.length,`0`),[]);return{segments:a,segmentValues:p,isFocused:g,registerRef:(0,k.useCallback)(e=>t=>{t?m.current.set(e,t):m.current.delete(e)},[]),handleInput:(0,k.useCallback)(e=>t=>{if(i)return;let n=a[e],o=t.target.value.replace(/\D/g,``).slice(0,n.length),s=new Map(p);if(s.set(e,o),l(s),r?.(),o.length===n.length){let t=b(e);t!==null&&requestAnimationFrame(()=>y(t))}v(s)},[i,a,p,r,b,y,v]),handleKeyDown:(0,k.useCallback)(e=>t=>{if(i)return;let n=a[e],r=p.get(e)??``,o=t.currentTarget;switch(t.key){case`ArrowRight`:if(o.selectionStart===r.length||r===``){t.preventDefault();let n=b(e);n!==null&&y(n)}break;case`ArrowLeft`:if(o.selectionStart===0||r===``){t.preventDefault();let n=x(e);n!==null&&y(n)}break;case`ArrowUp`:{t.preventDefault();let i=r===``?n.min:parseInt(r,10)+1;i>n.max&&(i=n.min);let a=C(i.toString(),n),s=new Map(p);s.set(e,a),l(s),v(s),requestAnimationFrame(()=>o.select());break}case`ArrowDown`:{t.preventDefault();let i=r===``?n.max:parseInt(r,10)-1;i<n.min&&(i=n.max);let a=C(i.toString(),n),s=new Map(p);s.set(e,a),l(s),v(s),requestAnimationFrame(()=>o.select());break}case`Backspace`:if(r===``){t.preventDefault();let n=x(e);n!==null&&y(n)}break;case`Delete`:{t.preventDefault();let n=new Map(p);n.set(e,``),l(n),v(n);break}}},[i,a,p,b,x,y,C,v]),handleFocus:(0,k.useCallback)(()=>e=>{e.target.select()},[]),handleContainerFocus:(0,k.useCallback)(()=>{clearTimeout(h.current),_(!0)},[]),handleContainerBlur:(0,k.useCallback)(()=>{h.current=window.setTimeout(()=>{_(!1),l(null)},0)},[]),focusFirstEmpty:(0,k.useCallback)(()=>{let e=o.find(e=>!(p.get(e)??``))??o[o.length-1];e!==void 0&&y(e)},[o,p,y])}}var k;function A(){return(A=e((()=>{k=n(),T()})))()}function j({mask:e,value:t,onChange:n,label:r,description:a,disabled:s,size:l,className:p,error:m,onClearError:h,onClear:g,"aria-label":_}){let{segments:v,segmentValues:y,registerRef:x,handleInput:S,handleKeyDown:C,handleFocus:w,handleContainerFocus:T,handleContainerBlur:E,focusFirstEmpty:D}=O({mask:e,value:t,onChange:n,onClearError:h,disabled:s}),{controlId:k,labelId:A,descriptionId:j,errorId:M,describedBy:N}=c({hasLabel:r!=null,hasDescription:!!a,hasError:!!m});return(0,F.jsx)(f,{label:r,description:a,disabled:s,className:p,size:l,error:m,labelId:A,descriptionId:j,errorId:M,children:(0,F.jsx)(d,{endAdornment:g?(0,F.jsx)(u,{onClick:g,disabled:s}):void 0,endAdornmentWidth:g?`var(--control-height)`:void 0,children:({controlClassName:e})=>(0,F.jsx)(`div`,{id:k,className:i(o.uiInputControlFake,e),"data-invalid":m?``:void 0,"data-disabled":s||void 0,role:`group`,"aria-invalid":!!m||void 0,"aria-label":_||(typeof r==`string`?r:void 0),"aria-labelledby":_?void 0:A,"aria-describedby":N,onFocus:T,onBlur:E,onClick:e=>{e.target===e.currentTarget&&D()},children:v.map((e,t)=>e.kind===`literal`?(0,F.jsx)(`span`,{className:b.separator,"data-disabled":s||void 0,children:e.text},t):(0,F.jsx)(`input`,{ref:x(t),type:`text`,inputMode:`numeric`,className:b.segmentInput,style:{width:`${e.length+.5}ch`},value:y.get(t)??``,placeholder:e.placeholder,maxLength:e.length,disabled:s,"aria-label":e.type,autoComplete:`off`,onChange:S(t),onKeyDown:C(t),onFocus:w()},t))})})})}function M({mask:e=`YYYY.MM.DD`,...t}){return(0,F.jsx)(j,{mask:e,...t})}function N({mask:e=`hh:mm`,...t}){return(0,F.jsx)(j,{mask:e,...t})}function P({mask:e=`YYYY.MM.DD hh:mm`,...t}){return(0,F.jsx)(j,{mask:e,...t})}var F;function I(){return(I=e((()=>{a(),l(),p(),s(),x(),A(),F=r(),M.__docgenInfo={description:``,methods:[],displayName:`InputDate`,props:{mask:{required:!1,tsType:{name:`string`},description:``,defaultValue:{value:`"YYYY.MM.DD"`,computed:!1}}}},N.__docgenInfo={description:``,methods:[],displayName:`InputTime`,props:{mask:{required:!1,tsType:{name:`string`},description:``,defaultValue:{value:`"hh:mm"`,computed:!1}}}},P.__docgenInfo={description:``,methods:[],displayName:`InputDateTime`,props:{mask:{required:!1,tsType:{name:`string`},description:``,defaultValue:{value:`"YYYY.MM.DD hh:mm"`,computed:!1}}}}})))()}var L=t({CustomMask:()=>K,DateAndTime:()=>G,DateOnly:()=>U,TimeOnly:()=>W,__namedExportsOrder:()=>q,default:()=>H});function R({component:e,...t}){let[,n]=B();return(0,z.jsx)(e,{...t,onChange:e=>{t.onChange(e),n({value:e})},onClear:()=>{t.onClear?.(),n({value:void 0})},onClearError:()=>{t.onClearError?.(),n({error:void 0})}})}var z,B,V,H,U,W,G,K,q;function J(){return(J=e((()=>{I(),z=r(),{useArgs:B}=__STORYBOOK_MODULE_PREVIEW_API__,{fn:V}=__STORYBOOK_MODULE_TEST__,H={title:`Shared/UI/InputDateTime`,component:M,args:{value:void 0,onChange:V()},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{label:{description:`Заголовок поля.`,control:`text`},description:{description:`Описание под заголовком.`,control:`text`},placeholder:{description:`Общий placeholder-параметр сегментного поля.`,control:`text`},value:{description:"Текущее значение в виде `Date`.",control:!1},onChange:{description:`Вызывается при формировании валидной даты/времени.`,control:!1},mask:{description:"Маска сегментов (`YYYY`, `MM`, `DD`, `hh`, `mm`, `ss`).",control:`text`},error:{description:`Текст ошибки под полем.`,control:`text`},onClearError:{description:`Сброс внешней ошибки при вводе.`,control:!1},onClear:{description:`Очищает значение и активирует кнопку очистки.`,control:!1},disabled:{description:`Блокирует редактирование сегментов.`,control:`boolean`},size:{description:`Размер поля и подписи.`,control:`select`,options:[`xs`,`sm`,`md`,`lg`,`xl`]},"aria-label":{description:`Явное доступное имя контейнера сегментного ввода; заменяет связь с видимой подписью.`,control:`text`}}},U={render:function(e){return(0,z.jsx)(R,{...e,component:M})},args:{label:`Дата`,description:`Формат по умолчанию: YYYY.MM.DD`,value:new Date(2026,2,5)}},W={render:function(e){return(0,z.jsx)(R,{...e,component:N})},args:{label:`Время`,description:`Формат по умолчанию: hh:mm`,value:new Date(2026,2,5,14,30,0)}},G={render:function(e){return(0,z.jsx)(R,{...e,component:P})},args:{label:`Дата и время`,description:`Комбинированный ввод даты и времени.`,value:new Date(2026,2,5,9,15,0)}},K={render:function(e){return(0,z.jsx)(R,{...e,component:P})},args:{label:`Кастомная маска`,description:`Добавлены секунды: YYYY.MM.DD hh:mm:ss`,mask:`YYYY.MM.DD hh:mm:ss`,value:new Date(2026,2,5,9,15,42)}},U.parameters={...U.parameters,docs:{...U.parameters?.docs,source:{originalSource:`{
|
|
2
2
|
render: function Render(args) {
|
|
3
3
|
return <InputDateTimeStoryCanvas {...args} component={InputDate} />;
|
|
4
4
|
},
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{n as t}from"./iframe-
|
|
1
|
+
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{n as t}from"./iframe-o7sH2IXC.js";import{i as n,r}from"./react-Bl2r1tuC.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-BY40djCc.js";import{a as p,i as m,n as h,r as g,t as _}from"./InputFile.stories-C7yyqHqc.js";function v(e){let t={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...n(),...e.components};return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(s,{of:g,parameters:{docs:{toc:!0}}}),`
|
|
2
2
|
`,(0,b.jsx)(u,{children:`InputFile`}),`
|
|
3
3
|
`,(0,b.jsx)(o,{children:`Контрол для выбора одного файла с поддержкой предварительного значения и бинарного режима`}),`
|
|
4
4
|
`,(0,b.jsx)(t.p,{children:`InputFile уже имеет живые stories, а эта страница собирает их в структурированную документацию с краткими рекомендациями, примерами подключения и API.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{t}from"./react-BZJXY1be.js";import{n}from"./iframe-
|
|
1
|
+
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{t}from"./react-BZJXY1be.js";import{n}from"./iframe-o7sH2IXC.js";import{a as r,i,n as a}from"./utils-tg3ibbzi.js";import{n as o,t as s}from"./ui.module-Cat84Nza.js";import{d as c,l,n as u,r as d,s as f,u as p}from"./Input-DLubbE7P.js";import{a as m,i as h,o as g,r as _,s as v}from"./file-CwRoWxeB.js";var y,b,x,S;function C(){return(C=e((()=>{y=`Ggxyuj`,b=`fthcmO`,x=`wyY60X`,S={control:y,fileName:b,hiddenInput:x}})))()}function w(e){let{value:t,onClear:n,onReadError:i,accept:s,allowedMime:l,maxBytes:p,label:h,description:y,placeholder:b=`Выберите файл`,disabled:x,size:C,error:w,onClearError:D,className:O}=e;m(l),g(s);let k=(0,T.useRef)(null),{controlId:A,labelId:j,descriptionId:M,errorId:N,describedBy:P}=c({hasLabel:h!=null,hasDescription:!!y,hasError:!!w}),F=(0,T.useCallback)(async t=>{let n=t.target.files?.[0];if(n){t.target.value=``,w&&D&&D();try{if(e.readMode===`array-buffer`){let t=await v(n,{allowedMime:l,maxBytes:p,mode:`array-buffer`});e.onChange(t);return}let t=await v(n,{allowedMime:l,maxBytes:p});e.onChange(t)}catch(e){e instanceof _&&i&&i(e)}}},[e,l,p,i,w,D]),I=(0,T.useCallback)(()=>{k.current?.click()},[]);return(0,E.jsxs)(f,{label:h,description:y,disabled:x,className:O,size:C,error:w,controlId:A,labelId:j,descriptionId:M,errorId:N,children:[(0,E.jsx)(`input`,{ref:k,id:A,type:`file`,accept:(s??l)?.join(`,`),disabled:x,className:S.hiddenInput,onChange:F,tabIndex:-1}),(0,E.jsx)(d,{endAdornment:n?(0,E.jsx)(u,{onClick:n,disabled:x}):void 0,endAdornmentWidth:n?`var(--control-height)`:void 0,children:({controlClassName:e})=>(0,E.jsx)(`div`,{role:`button`,tabIndex:x?-1:0,onClick:I,onKeyDown:e=>a(e,I,{disabled:x}),className:r(o.uiInputControl,S.control,e,!!w&&o.invalid),"data-disabled":x||void 0,"aria-invalid":!!w||void 0,"aria-disabled":x,"aria-labelledby":j,"aria-describedby":P,children:t?(0,E.jsx)(`span`,{className:S.fileName,children:t.meta.name}):(0,E.jsx)(`span`,{className:o.uiPlaceholder,children:b})})})]})}var T,E;function D(){return(D=e((()=>{T=t(),h(),i(),l(),p(),s(),C(),E=n(),w.__docgenInfo={description:'InputFile — компонент выбора одного файла.\n\nВизуально идентичен InputText: поле с label, description, placeholder,\nкнопкой очистки (крестик) и блоком ошибки.\n\nПри клике открывается нативный диалог выбора файла.\nПосле выбора файл читается через readFile, результат передаётся в onChange.\n\nInputFile позволяет выбрать один файл и передаёт наружу типизированный результат чтения.\nЕсли `readMode` не задан или равен `"data-url"`, в `onChange` приходит объект с `dataUrl`.\nЕсли `readMode` равен `"array-buffer"`, в `onChange` приходит объект с `buffer`.',methods:[],displayName:`InputFile`}})))()}export{D as n,w as t};
|
package/storybook-static/assets/{InputFile.stories-Cx1xQ6PE.js → InputFile.stories-C7yyqHqc.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{n}from"./iframe-
|
|
1
|
+
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{n}from"./iframe-o7sH2IXC.js";import{n as r,t as i}from"./createControlledStoryRender-BouhvX-R.js";import{n as a,t as o}from"./InputFile-DPftxjGw.js";var s=t({ArrayBufferMode:()=>g,Controlled:()=>m,WithInitialValue:()=>h,__namedExportsOrder:()=>_,default:()=>d}),c,l,u,d,f,p,m,h,g,_;function v(){return(v=e((()=>{r(),a(),c=n(),{fn:l}=__STORYBOOK_MODULE_TEST__,u=(e,t=`application/pdf`)=>{let n=new File([`demo-file`],e,{type:t,lastModified:17040672e5});return{mode:`data-url`,meta:{name:n.name,mime:n.type,size:n.size,lastModified:n.lastModified},dataUrl:`data:${t};base64,ZGVtby1maWxl`,file:n}},d={title:`Shared/UI/InputFile`,component:o,args:{value:void 0,onChange:l(),readMode:`data-url`},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{label:{description:`Заголовок поля загрузки.`,control:`text`},description:{description:`Описание под заголовком.`,control:`text`},placeholder:{description:`Текст в поле, пока файл не выбран.`,control:`text`},value:{description:`Текущий результат чтения выбранного файла.`,control:!1},onChange:{description:`Вызывается после успешного чтения файла.`,control:!1},onReadError:{description:`Вызывается при ошибке чтения или валидации файла.`,control:!1},onClear:{description:`Очищает выбранный файл и показывает кнопку очистки.`,control:!1},accept:{description:"HTML `accept` для нативного диалога выбора файла.",control:`object`},allowedMime:{description:`Белый список MIME-типов для readFile-валидации.`,control:!1},maxBytes:{description:`Максимальный размер файла в байтах.`,control:`number`},readMode:{description:`Режим чтения файла: data-url или array-buffer.`,control:`inline-radio`,options:[`data-url`,`array-buffer`]},error:{description:`Текст ошибки под полем.`,control:`text`},onClearError:{description:`Callback сброса ошибки при повторном выборе файла.`,control:!1},disabled:{description:`Блокирует выбор файла.`,control:`boolean`},size:{description:`Размер визуального контрола.`,control:`select`,options:[`xs`,`sm`,`md`,`lg`,`xl`]}}},f=i((e,t)=>{let n={...e,onChange:n=>{e.onChange(n),t({value:n})},onClear:()=>{e.onClear?.(),t({value:void 0})},onClearError:()=>{e.onClearError?.(),t({error:void 0})}};return(0,c.jsx)(o,{...n})}),p=i((e,t)=>{let n={...e,onChange:n=>{e.onChange(n),t({value:n})},onClear:()=>{e.onClear?.(),t({value:void 0})},onClearError:()=>{e.onClearError?.(),t({error:void 0})}};return(0,c.jsx)(o,{...n})}),m={render:f,args:{label:`Документ`,description:`Загрузите один файл.`,placeholder:`Выберите файл`,accept:[`.pdf`,`.docx`],readMode:`data-url`,value:void 0}},h={render:f,args:{label:`Файл с предзаполнением`,description:`Демонстрация состояния после успешной загрузки.`,value:u(`report.pdf`)}},g={render:p,args:{label:`Двоичное чтение`,description:"Режим `array-buffer` для дальнейшей бинарной обработки.",readMode:`array-buffer`,accept:[`.zip`,`.pdf`],value:void 0}},m.parameters={...m.parameters,docs:{...m.parameters?.docs,source:{originalSource:`{
|
|
2
2
|
render: renderInputFileDataUrlStory,
|
|
3
3
|
args: {
|
|
4
4
|
label: "Документ",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{n as t}from"./iframe-
|
|
1
|
+
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{n as t}from"./iframe-o7sH2IXC.js";import{i as n,r}from"./react-Bl2r1tuC.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-BY40djCc.js";import{a as p,i as m,n as h,r as g,t as _}from"./InputFiles.stories-DjjJS5pZ.js";function v(e){let t={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...n(),...e.components};return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(s,{of:h,parameters:{docs:{toc:!0}}}),`
|
|
2
2
|
`,(0,b.jsx)(u,{children:`InputFiles`}),`
|
|
3
3
|
`,(0,b.jsx)(o,{children:`Выбор и хранение нескольких файлов в контролируемом режиме`}),`
|
|
4
4
|
`,(0,b.jsx)(t.p,{children:`InputFiles уже имеет живые stories, а эта страница собирает их в структурированную документацию с краткими рекомендациями, примерами подключения и API.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{t}from"./react-BZJXY1be.js";import{n}from"./iframe-
|
|
1
|
+
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{t}from"./react-BZJXY1be.js";import{n}from"./iframe-o7sH2IXC.js";import{a as r,i,n as a}from"./utils-tg3ibbzi.js";import{n as o,t as s}from"./ui.module-Cat84Nza.js";import{d as c,l,r as u,s as d,u as f}from"./Input-DLubbE7P.js";import{a as p,i as m,o as h,r as g,s as _}from"./file-CwRoWxeB.js";import{i as v,n as y,r as b,t as x}from"./InputFilesList-BNjijD3Y.js";function S(e){let{value:t,onReadError:n,accept:i,allowedMime:s,maxBytes:l,maxFiles:f,label:m,description:v,placeholder:y=`Выберите файлы`,disabled:S,size:T,error:E,onClearError:D,className:O}=e;p(s),h(i);let k=(0,C.useRef)(null),{controlId:A,labelId:j,descriptionId:M,errorId:N,describedBy:P}=c({hasLabel:m!=null,hasDescription:!!v,hasError:!!E}),F=typeof f==`number`&&t.length>=f,I=(0,C.useCallback)(async r=>{let i=r.target.files;if(!i||i.length===0)return;let a=Array.from(i);r.target.value=``,E&&D&&D();let o=typeof f==`number`?f-t.length:a.length,c=a.slice(0,o);if(e.readMode===`array-buffer`){let t=[];for(let e of c)try{let n=await _(e,{allowedMime:s,maxBytes:l,mode:`array-buffer`});t.push(n)}catch(e){e instanceof g&&n&&n(e)}t.length>0&&e.onChange([...e.value,...t]);return}let u=[];for(let e of c)try{let t=await _(e,{allowedMime:s,maxBytes:l});u.push(t)}catch(e){e instanceof g&&n&&n(e)}u.length>0&&e.onChange([...e.value,...u])},[e,f,t.length,s,l,n,E,D]),L=(0,C.useCallback)(()=>{k.current?.click()},[]),R=(e.readMode,(0,w.jsx)(x,{files:e.value,onChange:e.onChange}));return(0,w.jsxs)(d,{label:m,description:v,disabled:S,className:O,size:T,error:E,controlId:A,labelId:j,descriptionId:M,errorId:N,children:[(0,w.jsx)(`input`,{ref:k,id:A,type:`file`,accept:(i??s)?.join(`,`),multiple:!0,disabled:S||F,className:b.hiddenInput,onChange:I,tabIndex:-1}),(0,w.jsx)(u,{children:()=>(0,w.jsx)(`div`,{role:`button`,tabIndex:S||F?-1:0,onClick:L,onKeyDown:e=>a(e,L,{disabled:S||F}),className:r(o.uiInputControl,b.control,!!E&&`invalid`),"data-disabled":S||void 0,"aria-invalid":!!E||void 0,"aria-disabled":S||F,"aria-labelledby":j,"aria-describedby":P,children:(0,w.jsx)(`span`,{className:o.uiPlaceholder,children:F?`Максимум ${f} файлов`:y})})}),R]})}var C,w;function T(){return(T=e((()=>{C=t(),m(),i(),l(),f(),s(),v(),y(),w=n(),S.__docgenInfo={description:'InputFiles — компонент выбора нескольких файлов.\n\nПоле стилизовано как InputText. При клике открывается нативный\nдиалог с multiple. Каждый выбранный файл читается через readFile\nи добавляется в массив value.\n\nСписок выбранных файлов отображается под полем.\nКаждый файл можно удалить кнопкой «крестик».\n\nInputFiles типизирует массив по `readMode`.\nЕсли `readMode` не задан или равен `"data-url"`, в `value` и `onChange`\nиспользуется массив объектов с `dataUrl`. Если `readMode` равен\n`"array-buffer"`, используется массив объектов с `buffer`.',methods:[],displayName:`InputFiles`}})))()}export{T as n,S as t};
|
package/storybook-static/assets/{InputFiles.stories-CG6QjDZH.js → InputFiles.stories-DjjJS5pZ.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{n}from"./iframe-
|
|
1
|
+
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{n}from"./iframe-o7sH2IXC.js";import{n as r,t as i}from"./createControlledStoryRender-BouhvX-R.js";import{n as a,t as o}from"./InputFiles-UD_9S7-N.js";var s=t({Controlled:()=>p,LimitReached:()=>h,WithInitialFiles:()=>m,__namedExportsOrder:()=>g,default:()=>d}),c,l,u,d,f,p,m,h,g;function _(){return(_=e((()=>{r(),a(),c=n(),{fn:l}=__STORYBOOK_MODULE_TEST__,u=(e,t=`application/pdf`)=>{let n=new File([`demo-file`],e,{type:t,lastModified:17040672e5});return{mode:`data-url`,meta:{name:n.name,mime:n.type,size:n.size,lastModified:n.lastModified},dataUrl:`data:${t};base64,ZGVtby1maWxl`,file:n}},d={title:`Shared/UI/InputFiles`,component:o,args:{value:[],onChange:l(),readMode:`data-url`},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{label:{description:`Заголовок поля множественной загрузки.`,control:`text`},description:{description:`Описание под заголовком.`,control:`text`},placeholder:{description:`Текст в поле, пока список файлов пуст.`,control:`text`},value:{description:`Массив результатов чтения выбранных файлов.`,control:!1},onChange:{description:`Вызывается с новым массивом файлов после добавления/удаления.`,control:!1},onReadError:{description:`Вызывается при ошибке чтения отдельного файла.`,control:!1},accept:{description:"HTML `accept` для диалога выбора файлов.",control:`object`},allowedMime:{description:`Список допустимых MIME-типов при валидации.`,control:!1},maxBytes:{description:`Максимальный размер одного файла в байтах.`,control:`number`},readMode:{description:`Режим чтения: data-url или array-buffer.`,control:`inline-radio`,options:[`data-url`,`array-buffer`]},maxFiles:{description:`Лимит количества файлов в списке.`,control:`number`},error:{description:`Текст ошибки под полем.`,control:`text`},onClearError:{description:`Вызывается при выборе новых файлов для сброса ошибки.`,control:!1},disabled:{description:`Полностью блокирует выбор файлов.`,control:`boolean`},size:{description:`Размер визуального контрола.`,control:`select`,options:[`xs`,`sm`,`md`,`lg`,`xl`]}}},f=i((e,t)=>(0,c.jsx)(o,{...e,onChange:n=>{e.onChange(n),t({value:n})},onClearError:()=>{e.onClearError?.(),t({error:void 0})}})),p={render:f,args:{label:`Вложения`,description:`Можно выбрать несколько файлов.`,placeholder:`Выберите файлы`,accept:[`.pdf`,`.png`,`.jpg`],maxFiles:5,value:[]}},m={render:f,args:{label:`Предзаполненный список`,description:`Иллюстрация удаления файлов из уже заполненного значения.`,value:[u(`contract.pdf`),u(`diagram.png`,`image/png`)]}},h={render:f,args:{label:`Лимит файлов`,description:`После достижения лимита поле выбора блокируется.`,maxFiles:2,value:[u(`first.pdf`),u(`second.pdf`)]}},p.parameters={...p.parameters,docs:{...p.parameters?.docs,source:{originalSource:`{
|
|
2
2
|
render: renderInputFilesStory,
|
|
3
3
|
args: {
|
|
4
4
|
label: "Вложения",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{t}from"./react-BZJXY1be.js";import{n,t as r}from"./x-
|
|
1
|
+
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{t}from"./react-BZJXY1be.js";import{n,t as r}from"./x-BlAURbAH.js";import{n as i}from"./iframe-o7sH2IXC.js";import{a,i as o}from"./utils-tg3ibbzi.js";var s,c,l,u,d,f,p;function m(){return(m=e((()=>{s=`h9SMea`,c=`rUyh0y`,l=`Q0CY1r`,u=`AJuYXd`,d=`CKKkOD`,f=`UgxhS1`,p={control:s,hiddenInput:c,fileList:l,fileItem:u,fileItemName:d,removeButton:f}})))()}function h({files:e,onChange:t}){let n=(0,g.useCallback)(n=>{t(e.filter((e,t)=>t!==n))},[e,t]);return!e||!e.length?null:(0,_.jsx)(`ul`,{className:p.fileList,children:e.map((e,t)=>(0,_.jsxs)(`li`,{className:p.fileItem,children:[(0,_.jsx)(`span`,{className:p.fileItemName,children:e.meta.name}),(0,_.jsx)(`button`,{type:`button`,className:a(p.removeButton,`flexCenter`),onClick:()=>n(t),"aria-label":`Удалить ${e.meta.name}`,children:(0,_.jsx)(r,{})})]},`${e.meta.name}-${e.meta.lastModified}`))})}var g,_;function v(){return(v=e((()=>{g=t(),o(),n(),m(),_=i(),h.__docgenInfo={description:``,methods:[],displayName:`InputFilesList`,props:{files:{required:!0,tsType:{name:`Array`,elements:[{name:`TFile`}],raw:`TFile[]`},description:``},onChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(files: TFile[]) => void`,signature:{arguments:[{type:{name:`Array`,elements:[{name:`TFile`}],raw:`TFile[]`},name:`files`}],return:{name:`void`}}},description:``}}}})))()}export{m as i,v as n,p as r,h as t};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{t}from"./react-BZJXY1be.js";import{n}from"./iframe-
|
|
1
|
+
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{t}from"./react-BZJXY1be.js";import{n}from"./iframe-o7sH2IXC.js";import{a as r,i,n as a}from"./utils-tg3ibbzi.js";import{n as o,t as s}from"./ui.module-Cat84Nza.js";import{d as c,l,n as u,r as d,s as f,u as p}from"./Input-DLubbE7P.js";import{i as m,n as h,t as g}from"./file-CwRoWxeB.js";var _,v,y,b;function x(){return(x=e((()=>{_=`EV-Vji`,v=`A5-T93`,y=`V1Rhiv`,b={control:_,fileName:v,hiddenInput:y}})))()}function S({value:e,onChange:t,onClear:n,onReadError:i,allowedMime:s,maxBytes:l,readMode:p,label:m,description:_,placeholder:v=`Выберите изображение`,disabled:y,size:x,error:S,onClearError:T,className:E}){let D=(0,C.useRef)(null),{controlId:O,labelId:k,descriptionId:A,errorId:j,describedBy:M}=c({hasLabel:m!=null,hasDescription:!!_,hasError:!!S}),N=(0,C.useCallback)(e=>p===`array-buffer`?g(e,{allowedMime:s,maxBytes:l,mode:`array-buffer`}):g(e,{allowedMime:s,maxBytes:l}),[s,l,p]),P=(0,C.useMemo)(()=>s&&s.length>0?s.join(`,`):`image/*`,[s]),F=(0,C.useCallback)(async e=>{let n=e.target.files?.[0];if(n){e.target.value=``,S&&T&&T();try{t(await N(n))}catch(e){e instanceof h&&i&&i(e)}}},[N,t,i,S,T]),I=(0,C.useCallback)(()=>{D.current?.click()},[]);return(0,w.jsxs)(f,{label:m,description:_,disabled:y,className:E,size:x,error:S,controlId:O,labelId:k,descriptionId:A,errorId:j,children:[(0,w.jsx)(`input`,{ref:D,id:O,type:`file`,accept:P,disabled:y,className:b.hiddenInput,onChange:F,tabIndex:-1}),(0,w.jsx)(d,{endAdornment:n?(0,w.jsx)(u,{onClick:n,disabled:y}):void 0,endAdornmentWidth:n?`var(--control-height)`:void 0,children:({controlClassName:t})=>(0,w.jsx)(`div`,{role:`button`,tabIndex:y?-1:0,onClick:I,onKeyDown:e=>a(e,I,{disabled:y}),className:r(o.uiInputControl,b.control,t,!!S&&`invalid`),"data-disabled":y||void 0,"aria-invalid":!!S||void 0,"aria-disabled":y,"aria-labelledby":k,"aria-describedby":M,children:e?(0,w.jsx)(`span`,{className:b.fileName,children:e.meta.name}):(0,w.jsx)(`span`,{className:o.uiPlaceholder,children:v})})})]})}var C,w;function T(){return(T=e((()=>{C=t(),m(),i(),l(),p(),s(),x(),w=n(),S.__docgenInfo={description:`InputImage — компонент выбора одного изображения.
|
|
2
2
|
|
|
3
3
|
Визуально идентичен InputText. Под капотом использует readImageFile,
|
|
4
4
|
который валидирует что файл — изображение и извлекает его размеры.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{n as t}from"./iframe-
|
|
1
|
+
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{n as t}from"./iframe-o7sH2IXC.js";import{i as n,r}from"./react-Bl2r1tuC.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-BY40djCc.js";import{a as p,i as m,n as h,r as g,t as _}from"./InputImage.stories-D-TC9r9t.js";function v(e){let t={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...n(),...e.components};return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(s,{of:g,parameters:{docs:{toc:!0}}}),`
|
|
2
2
|
`,(0,b.jsx)(u,{children:`InputImage`}),`
|
|
3
3
|
`,(0,b.jsx)(o,{children:`Контрол загрузки и предварительного просмотра изображения в формах и карточках`}),`
|
|
4
4
|
`,(0,b.jsx)(t.p,{children:`InputImage уже имеет живые stories, а эта страница собирает их в структурированную документацию с краткими рекомендациями, примерами подключения и API.
|
package/storybook-static/assets/{InputImage.stories-CEI44Eyz.js → InputImage.stories-D-TC9r9t.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{n}from"./iframe-
|
|
1
|
+
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{n}from"./iframe-o7sH2IXC.js";import{n as r,t as i}from"./createControlledStoryRender-BouhvX-R.js";import{n as a,t as o}from"./InputImage-C-pHr-Sx.js";var s=t({ArrayBufferMode:()=>g,Controlled:()=>m,WithInitialImage:()=>h,__namedExportsOrder:()=>_,default:()=>f}),c,l,u,d,f,p,m,h,g,_;function v(){return(v=e((()=>{r(),a(),c=n(),{useArgs:l}=__STORYBOOK_MODULE_PREVIEW_API__,{fn:u}=__STORYBOOK_MODULE_TEST__,d=(e=`avatar.png`)=>{let t=new File([`image-demo`],e,{type:`image/png`,lastModified:17040672e5});return{mode:`data-url`,meta:{name:t.name,mime:t.type,size:t.size,lastModified:t.lastModified},dataUrl:`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8/x8AAusB9YxM9a0AAAAASUVORK5CYII=`,file:t,dimensions:{width:1,height:1}}},f={title:`Shared/UI/InputImage`,component:o,args:{value:void 0,onChange:u(),readMode:`data-url`},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{label:{description:`Заголовок поля выбора изображения.`,control:`text`},description:{description:`Описание под заголовком.`,control:`text`},placeholder:{description:`Текст до выбора изображения.`,control:`text`},value:{description:`Результат чтения выбранного изображения.`,control:!1},onChange:{description:`Вызывается после успешного чтения изображения.`,control:!1},onReadError:{description:`Вызывается при ошибке валидации или чтения изображения.`,control:!1},onClear:{description:`Очищает выбранное изображение.`,control:!1},allowedMime:{description:`Разрешенные MIME-типы изображений.`,control:!1},maxBytes:{description:`Максимальный размер изображения в байтах.`,control:`number`},readMode:{description:`Режим чтения: data-url или array-buffer.`,control:`inline-radio`,options:[`data-url`,`array-buffer`]},error:{description:`Текст ошибки под полем.`,control:`text`},onClearError:{description:`Сброс ошибки при повторном выборе изображения.`,control:!1},disabled:{description:`Блокирует взаимодействие с полем.`,control:`boolean`},size:{description:`Размер визуального контрола.`,control:`select`,options:[`xs`,`sm`,`md`,`lg`,`xl`]}}},p=i((e,t)=>(0,c.jsx)(o,{...e,onChange:n=>{e.onChange(n),t({value:n})},onClear:()=>{e.onClear?.(),t({value:void 0})},onClearError:()=>{e.onClearError?.(),t({error:void 0})}})),m={render:p,args:{label:`Аватар`,description:`Выберите одно изображение профиля.`,placeholder:`Выберите изображение`,readMode:`data-url`,allowedMime:[`image/png`,`image/jpeg`,`image/webp`],value:void 0}},h={render:function(e){let[,t]=l(),n=e.value;return(0,c.jsxs)(`div`,{style:{display:`grid`,gap:12},children:[(0,c.jsx)(o,{...e,onChange:n=>{e.onChange(n),t({value:n})},onClear:()=>{e.onClear?.(),t({value:void 0})},onClearError:()=>{e.onClearError?.(),t({error:void 0})}}),n?.mode===`data-url`&&(0,c.jsx)(`img`,{src:n.dataUrl,alt:`Предпросмотр`,style:{width:96,height:96,objectFit:`cover`,border:`1px solid var(--border-0)`}})]})},args:{label:`Изображение с предпросмотром`,description:`Сторис показывает, что значение можно использовать для preview.`,value:d()}},g={render:p,args:{label:`Двоичный режим`,description:`Используется, когда изображение нужно обработать как бинарные данные.`,readMode:`array-buffer`,value:void 0}},m.parameters={...m.parameters,docs:{...m.parameters?.docs,source:{originalSource:`{
|
|
2
2
|
render: renderInputImageStory,
|
|
3
3
|
args: {
|
|
4
4
|
label: "Аватар",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{n as t}from"./iframe-
|
|
1
|
+
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{n as t}from"./iframe-o7sH2IXC.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a,r as o}from"./blocks-BY40djCc.js";import{n as ee,r as te,s as ne}from"./Badge.stories-BEu55X4s.js";import{n as re,o as ie,t as ae}from"./Button.stories-B0Y_T17B.js";import{n as oe,o as s,t as c}from"./CheckBox.stories-ROPAnqh8.js";import{a as l,i as u,n as d,t as f}from"./ContextMenu.stories-DCJmWy5n.js";import{n as p,o as m,r as h,t as g}from"./DateInput.stories-sTpYf7Ob.js";import{n as _,r as v,t as y}from"./DateRangePresetSelect.stories-ib7Qh_BB.js";import{r as b,s as x,t as S}from"./SingleDateTimeInput.stories-BLJV3jzV.js";import{i as C,n as w,t as T}from"./Dialog.stories-B1cZLRK3.js";import{a as E,n as D,t as O}from"./Disclosure.stories-Cvdvf7V8.js";import{a as k,r as A,t as j}from"./DropZone.stories-BhA9q8Qv.js";import{n as M,r as N,t as P}from"./ExpandableActionPanel.stories-CLgMlA9k.js";import{a as F,n as I,r as L}from"./InputFile.stories-C7yyqHqc.js";import{a as R,n as z,t as B}from"./InputFiles.stories-DjjJS5pZ.js";import{a as V,n as H,r as U}from"./InputImage.stories-D-TC9r9t.js";import{i as W,n as G,o as K,t as q}from"./Input.stories-DQeyDULG.js";import{c as se,o as ce,t as le}from"./LayoutPicker.stories--ChGnGxf.js";import{a as ue,o as de,r as J}from"./Listbox.stories-C9k_1850.js";import{n as fe,s as pe,t as me}from"./Modal.stories-Cy0Xd4LF.js";import{a as he,o as ge,t as _e}from"./MultiSelect.stories-FuzejJmz.js";import{c as ve,i as ye,s as be}from"./PeriodSelect.stories-Db0bqe3J.js";import{i as xe,o as Se,r as Ce}from"./Popover.stories-DE1LxZvv.js";import{n as we,r as Te,t as Ee}from"./PresetRangeDateInput.stories-CgoYAYBG.js";import{a as De,i as Oe,t as ke}from"./RadioButton.stories-CPd4lTl0.js";import{a as Ae,r as je,t as Me}from"./RadioGroup.stories-D-RRPHwi.js";import{c as Ne,s as Pe,t as Fe}from"./Select.stories-Cf6CBhV8.js";import{l as Y,o as Ie,s as Le,u as Re}from"./Slider.stories-Dp7oQueF.js";import{c as ze,d as Be,t as Ve,u as X}from"./SliderInput.stories-DXNhRU3X.js";import{a as He,r as Ue,t as We}from"./StateSelect.stories-pPEPmgnN.js";import{a as Ge,r as Ke,t as qe}from"./Switch.stories-5DisgIyj.js";import{l as Je,t as Ye,u as Xe}from"./Tabs.stories-C0SpdGkh.js";import{n as Ze,r as Qe,t as $e}from"./TagInput.stories-rn2wtZP_.js";import{a as et,r as tt,t as nt}from"./Textarea.stories-CZ2kWz20.js";import{a as rt,i as it,t as at}from"./Toggle.stories-0fzcmzKy.js";import{c as ot,l as st,n as ct}from"./TreeMultiSelect.stories-CAVoj56E.js";function Z(e){let t={code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,p:`p`,...n(),...e.components};return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(i,{title:`Development/Interactive components/Catalog`}),`
|
|
2
2
|
`,(0,Q.jsx)(t.h1,{id:`каталог-интерактивных-компонентов`,children:`Каталог интерактивных компонентов`}),`
|
|
3
3
|
`,(0,Q.jsxs)(t.p,{children:[`Эта страница собирает существующие CSF-сторисы в одном месте. Каждый canvas использует канонический сценарий компонента, поэтому его состояние, `,(0,Q.jsx)(t.code,{children:`args`}),` и обработчики остаются в исходной story, а не дублируются в development-витрине.`]}),`
|
|
4
4
|
`,(0,Q.jsx)(t.h2,{id:`поля-ввода-и-простые-переключатели`,children:`Поля ввода и простые переключатели`}),`
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as e,n as t}from"./rolldown-runtime-DkW27tQK.js";import{t as n}from"./react-BZJXY1be.js";import{n as r,t as i}from"./Switch-CX9p_uYU.js";import{i as a,n as o,r as s,t as ee}from"./DisclosureGroup-D9oCCeHf.js";import{n as c,t as te}from"./ExpandableActionPanel-Dqi_bo3c.js";import{n as ne,t as l}from"./RadioGroup-BnO-GL7A.js";import{n as u,t as re}from"./RadioButton-YIQXt0wx.js";import{n as d,t as ie}from"./SingleDateTimeInput-xrmZckzw.js";import{n as f,t as p}from"./CheckBox-DKeFkdOt.js";import{n as m,t as ae}from"./DropZone-D42ueN1w.js";import{n as h}from"./iframe-FSp_AjJa.js";import{n as oe,t as g}from"./Text-ClnbDqRk.js";import{n as se,t as _}from"./Popover-C0NebUMz.js";import{i as ce,n as v,r as y,t as le}from"./BadgeList-xT41a0VL.js";import{n as b,t as x}from"./Button-DkDgfpHL.js";import{n as S,t as C}from"./ContextMenu-xn2GtiLR.js";import{a as ue,i as de,n as fe,r as pe,s as me,t as he}from"./ModalManagerProvider-ShDjozpW.js";import{a as w,l as T,o as E,t as D}from"./Input-CIPgijvW.js";import{n as O,t as ge}from"./GridContainer-fKYgDsLl.js";import{n as _e,t as k}from"./DropdownMenu-CknJDoji.js";import{n as ve,r as ye}from"./DateInput-BiUFIihm.js";import{n as A,t as j}from"./Select-CGCxJjL9.js";import{n as M,t as be}from"./DateRangePresetSelect-RIyqNBk9.js";import{n as xe,t as Se}from"./Dialog-BVFFQJDH.js";import{n as Ce,t as we}from"./InputFiles-Hzl89Ghf.js";import{n as Te,t as Ee}from"./InputFile-C5mp5Y5I.js";import{n as De,t as Oe}from"./InputImage-BTa4S4Wp.js";import{n as ke,t as Ae}from"./LayoutPicker-COB9GlV_.js";import{n as je,t as Me}from"./Listbox-AAaZGSAl.js";import{n as Ne,t as Pe}from"./MultiSelect-DqXfrjcH.js";import{n as Fe,t as Ie}from"./PeriodSelect-DA_zjcdA.js";import{n as Le,t as Re}from"./PresetRangeDateInput-BsgzPwCV.js";import{i as ze,r as Be,t as Ve}from"./Slider-1yJ3uVeR.js";import{n as N,r as He,t as Ue}from"./SliderInput-ISSx9vH_.js";import{n as We,t as Ge}from"./StateSelect-C6hldFgO.js";import{n as Ke,t as P}from"./TabsBox-B5BsD_j_.js";import{n as qe,t as Je}from"./TagInput-DO17z100.js";import{n as F,t as Ye}from"./Textarea-DkhohiNc.js";import{n as I,t as Xe}from"./Toggle-Cc6Ca-HI.js";import{n as Ze,t as L}from"./TreeMultiSelect-D9hMQN2O.js";import{n as Qe,t as $e}from"./treeStoryFixtures-DXHh9GL3.js";function et({onChange:e,...t}){let[n,r]=(0,R.useState)(()=>t.defaultValue??t.value??``),[i,a]=(0,R.useState)(()=>t.defaultValue??t.value??``),o=t=>{let n=t.trim();n!==i&&(a(n),e(n))},s=()=>{r(``),a(``),e(``)},ee=e=>{e.key===`Enter`&&(e.preventDefault(),o(n))},c=()=>{o(n)},te=e=>{r(e)};return(0,z.jsx)(D,{...t,value:n,onChange:te,onKeyDown:ee,onBlur:c,onClear:s})}var R,z;function B(){return(B=t((()=>{R=e(n(),1),T(),z=h(),et.__docgenInfo={description:``,methods:[],displayName:`InputSearch`,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:`T`},description:"Если начальное состояние может быть `null | undefined`\nзначит `onChange` тоже должен ументь сбрасывать.\nПоэтому такой контрол явно должен передавать `UiBaseProps<AnyType | undefined>`"},onChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(value: string) => void`,signature:{arguments:[{type:{name:`string`},name:`value`}],return:{name:`void`}}},description:``},onClear:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:``},error:{required:!1,tsType:{name:`string`},description:``},onClearError:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:``},defaultValue:{required:!1,tsType:{name:`string`},description:``},endAdornment:{required:!1,tsType:{name:`ReactNode`},description:``},endAdornmentClassName:{required:!1,tsType:{name:`string`},description:``},endAdornmentWidth:{required:!1,tsType:{name:`string`},description:``}},composes:[`Omit`]}})))()}function V({title:e,children:t}){return(0,W.jsxs)(`section`,{style:G,children:[(0,W.jsx)(`div`,{style:K,children:e}),t]})}function tt({initialValue:e={},label:t=`TreeMultiSelect`,description:n,optionsLayout:r=`tree`,nodes:i=$e,defaultExpandedCodeKeys:a}){let[o,s]=(0,U.useState)(e);return(0,W.jsxs)(`div`,{style:{display:`grid`,gap:12,maxWidth:520},children:[(0,W.jsx)(L,{label:t,description:n,nodes:i,value:o,onChange:s,optionsLayout:r,defaultExpandedCodeKeys:a}),(0,W.jsxs)(`div`,{style:{fontSize:`var(--font-size-sm)`,color:`var(--content-1)`},children:[`Текущее значение: `,JSON.stringify(o)]})]})}function H(){let[e,t]=(0,U.useState)(`Значение`),[n,r]=(0,U.useState)(42),[a,o]=(0,U.useState)(``),[c,ne]=(0,U.useState)(`Комментарий`),[u,d]=(0,U.useState)(!0),[f,m]=(0,U.useState)(!1),[h,oe]=(0,U.useState)(`first`),[se,ce]=(0,U.useState)(!0),[v,b]=(0,U.useState)(!1),[S,fe]=(0,U.useState)(3),[me,T]=(0,U.useState)(),[D,O]=(0,U.useState)([0,0]),[_e,ye]=(0,U.useState)(60),[A,M]=(0,U.useState)(J[0]),[xe,Ce]=(0,U.useState)([Y[0]]),[Te,De]=(0,U.useState)([`UI`,`Стили`]),[ke,je]=(0,U.useState)(`week`),[Ne,Fe]=(0,U.useState)(`information`),[Le,ze]=(0,U.useState)(`two-columns`),[He,We]=(0,U.useState)(new Date(2026,2,10)),[Ke,qe]=(0,U.useState)(new Date(2026,2,10,10,30)),[F,I]=(0,U.useState)(`today`),[Ze,L]=(0,U.useState)([new Date(2026,2,1),new Date(2026,2,10)]),[Qe,$e]=(0,U.useState)(`month`),[R,z]=(0,U.useState)(),[B,H]=(0,U.useState)([]),[G,K]=(0,U.useState)(),[X,Z]=(0,U.useState)([]),[at,Q]=(0,U.useState)(!1),[ot,$]=(0,U.useState)(!1),[st,ct]=(0,U.useState)();return(0,W.jsxs)(`div`,{style:nt,children:[(0,W.jsxs)(V,{title:`Text`,children:[(0,W.jsx)(g,{color:`primary`,children:`Основной`}),(0,W.jsx)(g,{color:`secondary`,children:`Дополнительный`}),(0,W.jsx)(g,{color:`muted`,children:`Приглушенный`}),(0,W.jsx)(g,{color:`accent`,children:`Акцентированный`}),(0,W.jsx)(g,{color:`brand`,children:`Брендовый`}),(0,W.jsx)(g,{color:`info`,children:`Информация`}),(0,W.jsx)(g,{color:`success`,children:`Успешно`}),(0,W.jsx)(g,{color:`warning`,children:`Предупреждение`}),(0,W.jsx)(g,{color:`error`,children:`Ошибка`})]}),(0,W.jsx)(V,{title:`Badge`,children:(0,W.jsxs)(le,{children:[(0,W.jsx)(y,{tone:`neutral`,appearance:`outline`,children:`Neutral`}),(0,W.jsx)(y,{tone:`success`,appearance:`solid`,children:`Успешно`}),(0,W.jsx)(y,{tone:`warning`,appearance:`solid`,children:`Внимание`}),(0,W.jsx)(y,{tone:`error`,appearance:`solid`,children:`Ошибка`}),(0,W.jsx)(y,{tone:`info`,appearance:`solid`,children:`Информация`})]})}),(0,W.jsx)(V,{title:`Button`,children:(0,W.jsxs)(ge,{gap:`sm`,templateColumns:`1fr 1fr`,children:[(0,W.jsx)(x,{variant:`transparent`,children:`Действие`}),(0,W.jsx)(x,{variant:`ghost`,children:`Действие`}),(0,W.jsx)(x,{variant:`neutralOutline`,children:`Действие`}),(0,W.jsx)(x,{variant:`infoOutline`,children:`Действие`}),(0,W.jsx)(x,{variant:`successOutline`,children:`Действие`}),(0,W.jsx)(x,{variant:`warningOutline`,children:`Действие`}),(0,W.jsx)(x,{variant:`errorOutline`,children:`Действие`}),(0,W.jsx)(x,{variant:`neutral`,children:`Действие`}),(0,W.jsx)(x,{variant:`info`,children:`Действие`}),(0,W.jsx)(x,{variant:`success`,children:`Действие`}),(0,W.jsx)(x,{variant:`warning`,children:`Действие`}),(0,W.jsx)(x,{variant:`error`,children:`Действие`})]})}),(0,W.jsxs)(V,{title:`InputText`,children:[(0,W.jsx)(E,{label:`Текст`,description:`Поле ввода текста`,placeholder:`Введите текст`,disabled:!0,value:e,onChange:t}),(0,W.jsx)(E,{label:`Текст`,description:`Поле ввода текста`,placeholder:`Введите текст`,value:e,onChange:t}),(0,W.jsx)(E,{required:!0,label:`Текст`,description:`Поле ввода текста`,placeholder:`Введите текст`,value:e,onChange:t,onClear:()=>t(``)})]}),(0,W.jsxs)(V,{title:`InputNumber`,children:[(0,W.jsx)(w,{label:`Количество`,description:`Поле ввода числа`,placeholder:`Введите число`,value:n,min:0,onChange:r,disabled:!0}),(0,W.jsx)(w,{label:`Количество`,description:`Поле ввода числа`,placeholder:`Введите число`,value:n,min:0,onChange:r,required:!0}),(0,W.jsx)(w,{label:`Количество`,description:`Поле ввода числа`,placeholder:`Введите число`,value:n,min:0,onChange:r}),(0,W.jsx)(w,{label:`Количество`,description:`Поле ввода числа`,placeholder:`Введите число`,value:n,min:0,onChange:r,onClear:()=>r(void 0)})]}),(0,W.jsx)(V,{title:`InputSearch`,children:(0,W.jsx)(et,{label:`Поиск`,placeholder:`Найти`,value:a,onChange:o})}),(0,W.jsx)(V,{title:`Textarea`,children:(0,W.jsx)(Ye,{label:`Комментарий`,required:!0,placeholder:`Многострочный комментарий`,rows:6,value:c,onChange:ne})}),(0,W.jsxs)(V,{title:`CheckBox`,children:[(0,W.jsx)(p,{label:`Опция`,description:`Описание чекбокса`,disabled:!0,value:u,onChange:d}),(0,W.jsx)(p,{label:`Опция`,description:`Описание чекбокса`,value:u,onChange:d}),(0,W.jsx)(p,{label:`Опция`,description:`Описание чекбокса`,value:u,onChange:d,indeterminate:!0})]}),(0,W.jsxs)(V,{title:`RadioButton`,children:[(0,W.jsx)(re,{label:`Опция`,description:`Описание радиокнопки`,disabled:!0,value:f,onChange:m}),(0,W.jsx)(re,{label:`Опция`,description:`Описание радиокнопки`,name:`radio-1`,value:f,onChange:m}),(0,W.jsx)(re,{label:`Опция`,description:`Описание радиокнопки`,name:`radio-1`,value:f,onChange:m})]}),(0,W.jsxs)(V,{title:`RadioGroup`,children:[(0,W.jsxs)(l,{label:`Радио группа`,description:`Вертикальная группа`,value:h,onChange:oe,orientation:`vertical`,"aria-label":`Вариант`,children:[(0,W.jsx)(l.Option,{value:`first`,label:`Первый`}),(0,W.jsx)(l.Option,{value:`second`,label:`Второй`}),(0,W.jsx)(l.Option,{value:`third`,label:`Третий`,description:`Новая опциональная опция`})]}),(0,W.jsxs)(l,{label:`Радио группа`,description:`Горизонтальная группа`,value:h,onChange:oe,orientation:`horizontal`,"aria-label":`Вариант`,children:[(0,W.jsx)(l.Option,{value:`first`,label:`Первый`}),(0,W.jsx)(l.Option,{value:`second`,label:`Второй`}),(0,W.jsx)(l.Option,{value:`third`,label:`Третий`,description:`Новая опциональная опция`})]})]}),(0,W.jsx)(V,{title:`Switch`,children:(0,W.jsx)(i,{label:`Уведомления`,description:`Устаревный компонент`,value:se,onChange:ce})}),(0,W.jsxs)(V,{title:`Toggle`,children:[(0,W.jsx)(Xe,{label:`Режим`,description:`Переключатель состояния`,value:v,onChange:b,checkedText:`Вкл`,uncheckedText:`Выкл`}),(0,W.jsx)(Xe,{label:`Режим`,description:`Переключатель состояния`,labelPosition:`after`,value:v,onChange:b,checkedText:`Вкл`,uncheckedText:`Выкл`})]}),(0,W.jsxs)(V,{title:`Slider`,children:[(0,W.jsx)(Ve,{label:`Уровень`,description:`Простой слайдер`,value:S,min:0,max:100,onChange:fe}),(0,W.jsx)(Ve,{label:`Уровень`,description:`Простой слайдер`,disabled:!0,marks:[{value:1,label:`m1`},{value:2,label:`m2`},{value:3,label:`m3`},{value:4,label:`m4`},{value:5,label:`m5`},{value:6,label:`m6`}],marksPosition:`index`,value:S,min:0,max:100,onChange:fe}),(0,W.jsx)(Be,{label:`Уровень`,description:`Диапазон`,marks:[{value:0,label:`m1`},{value:1,label:`m2`},{value:2,label:`m3`},{value:3,label:`m4`}],marksPosition:`index`,value:me,min:0,max:100,onChange:T})]}),(0,W.jsxs)(V,{title:`SliderInput`,children:[(0,W.jsx)(Ue,{label:`Порог`,value:_e,min:0,max:100,onChange:ye}),(0,W.jsx)(N,{label:`Порог`,value:D,onChange:O,min:0,max:100,marks:[{value:0,label:`0`},{value:20,label:`20`},{value:40,label:`40`},{value:60,label:`60`},{value:80,label:`80`},{value:100,label:`100`}]}),(0,W.jsx)(N,{label:`Срок: открытые границы и дни в фильтре`,description:"Крайние marks отдают null, обычные marks отдают дни через `outputValue`.",min:0,max:25,marks:[{value:0,label:`-`,outputValue:null},{value:1,label:`1м.`,outputValue:30},{value:3,label:`3м.`,outputValue:90},{value:6,label:`6м.`,outputValue:180},{value:12,label:`1г.`,outputValue:360},{value:18,label:`1.5г.`,outputValue:540},{value:24,label:`2г.`,outputValue:720},{value:25,label:`-`,outputValue:null}],value:D,onChange:O}),(0,W.jsx)(N,{label:`Срок текстом`,description:`В поле выводится готовый текст по marks, а изменение через popover коммитится при закрытии.`,placeholder:`Любой срок`,readonlyValueText:!0,min:0,max:25,marks:[{value:0,label:`-`,outputValue:null},{value:1,label:`1м.`,outputValue:30},{value:3,label:`3м.`,outputValue:90},{value:6,label:`6м.`,outputValue:180},{value:12,label:`1г.`,outputValue:360},{value:18,label:`1.5г.`,outputValue:540},{value:24,label:`2г.`,outputValue:720},{value:25,label:`-`,outputValue:null}],marksPosition:`index`,value:D,onChange:O})]}),(0,W.jsxs)(V,{title:`Select`,children:[(0,W.jsx)(j,{label:`Статус`,description:`searchable`,searchable:!0,options:J,value:A,onChange:M,getOptionKey:e=>e.id,getOptionLabel:e=>e.label}),(0,W.jsx)(j,{label:`Статус`,description:`disabled`,disabled:!0,options:J,value:A,onChange:M,getOptionKey:e=>e.id,getOptionLabel:e=>e.label}),(0,W.jsx)(j,{label:`Статус`,description:`Пример использования низкоуровневого Select со строковыми значениями.`,placeholder:`Выберите статус`,options:J,value:A,onChange:M,getOptionKey:e=>e.id,getOptionLabel:e=>e.label}),(0,W.jsx)(j,{label:`Подразделение`,description:`Выберите подразделение из списка.`,placeholder:`Не выбрано`,options:it,value:st,onChange:ct,getOptionKey:e=>e.id,getOptionLabel:e=>e.name,getOptionCode:e=>e.code,getOptionDisabled:e=>e.disabled??!1,getOptionGroup:e=>({key:e.direction,label:e.direction}),optionsMaxWidth:`40em`})]}),(0,W.jsx)(V,{title:`MultiSelect`,children:(0,W.jsx)(Pe,{label:`Города`,items:Y,value:xe,query:``,codeKey:`code`,textKey:`label`,onChange:Ce,onQuery:()=>void 0,onOpen:()=>void 0,onClose:()=>void 0})}),(0,W.jsx)(V,{title:`TreeMultiSelect`,children:(0,W.jsx)(tt,{})}),(0,W.jsx)(V,{title:`TagInput`,children:(0,W.jsx)(Je,{label:`Теги`,placeholder:`Добавить`,value:Te,onChange:De})}),(0,W.jsx)(V,{title:`Listbox`,children:(0,W.jsx)(Me,{options:rt,value:ke,onChange:e=>je(e)})}),(0,W.jsx)(V,{title:`StateSelect`,children:(0,W.jsx)(Ge,{label:`Состояние`,value:Ne,onChange:Fe})}),(0,W.jsx)(V,{title:`LayoutPicker`,children:(0,W.jsx)(Ae,{label:`Раскладка`,value:Le,onChange:ze,showPlaceholder:!0})}),(0,W.jsx)(V,{title:`SingleDateInput`,children:(0,W.jsx)(ve,{label:`Дата`,value:He,onChange:We,selectionMode:`week`})}),(0,W.jsx)(V,{title:`SingleDateTimeInput`,children:(0,W.jsx)(ie,{label:`Дата и время`,value:Ke,onChange:qe})}),(0,W.jsx)(V,{title:`DateRangePresetSelect`,children:(0,W.jsx)(be,{label:`Период`,value:F??void 0,onChange:e=>I(e??null),onRangeChange:e=>L(e?.range??null),referenceDate:new Date(2026,2,10,12)})}),(0,W.jsx)(V,{title:`PresetRangeDateInput`,children:(0,W.jsx)(Re,{value:Ze,onChange:L,presetId:F??null,onPresetIdChange:e=>I(e??null),referenceDate:new Date(2026,2,10,12),presetLabel:`Быстрый диапазон`})}),(0,W.jsx)(V,{title:`PeriodSelect`,children:(0,W.jsx)(Ie,{label:`Группировка`,value:Qe,onChange:$e})}),(0,W.jsx)(V,{title:`InputFile`,children:(0,W.jsx)(Ee,{label:`Файл`,placeholder:`Выберите файл`,value:R,onChange:z,onClear:()=>z(void 0),readMode:`data-url`})}),(0,W.jsx)(V,{title:`InputFiles`,children:(0,W.jsx)(we,{label:`Файлы`,placeholder:`Выберите файлы`,value:B,onChange:H,readMode:`data-url`})}),(0,W.jsx)(V,{title:`InputImage`,children:(0,W.jsx)(Oe,{label:`Изображение`,value:G,onChange:K,onClear:()=>K(void 0)})}),(0,W.jsx)(V,{title:`DropZone`,children:(0,W.jsx)(ae,{value:X,multiple:!0,readMode:`data-url`,onChange:e=>Z(e),children:(0,W.jsx)(`div`,{style:{display:`grid`,placeItems:`center`,minHeight:`6em`,textAlign:`center`},children:X.length?`Файлов: ${X.length}`:`Перетащите файлы`})})}),(0,W.jsxs)(V,{title:`TabsBox`,children:[(0,W.jsx)(P,{defaultValue:`first`,items:[{id:`first`,title:`Первый`,content:`Содержимое`},{id:`second`,title:`Второй`,content:`Другая панель`},{id:`third`,title:`Ещё одна`,content:`Ещё одна панель`},{id:`quat`,title:`Четвертая`,content:`Четвертая панель`},{id:`five`,title:`Пятая`,content:`Пятая панель`}]}),(0,W.jsx)(P,{defaultValue:`first`,clean:!0,items:[{id:`first`,title:`Первый`,content:`Содержимое`},{id:`second`,title:`Второй`,content:`Другая панель`},{id:`third`,title:`Ещё одна`,content:`Ещё одна панель`},{id:`quat`,title:`Четвертая`,content:`Четвертая панель`},{id:`five`,title:`Пятая`,content:`Пятая панель`}]})]}),(0,W.jsxs)(V,{title:`TabsBox`,children:[(0,W.jsx)(P,{defaultValue:`first`,orientation:`vertical`,items:[{id:`first`,title:`Первый`,content:`Содержимое`},{id:`second`,title:`Второй`,content:`Другая панель`},{id:`third`,title:`Ещё одна`,content:`Другая панель`},{id:`quat`,title:`Четвертая`,content:`Другая панель`}]}),(0,W.jsx)(P,{defaultValue:`first`,orientation:`vertical`,clean:!0,items:[{id:`first`,title:`Первый`,content:`Содержимое`},{id:`second`,title:`Второй`,content:`Другая панель`},{id:`third`,title:`Ещё одна`,content:`Другая панель`},{id:`quat`,title:`Четвертая`,content:`Другая панель`}]})]}),(0,W.jsxs)(V,{title:`Disclosure`,children:[(0,W.jsxs)(ee,{children:[(0,W.jsx)(s,{label:`Раскрыть 1`,children:`Содержимое панели 1`}),(0,W.jsx)(s,{label:`Раскрыть 2`,children:`Содержимое панели 2`}),(0,W.jsx)(s,{label:`Раскрыть 3`,children:`Содержимое панели 3`}),(0,W.jsx)(s,{label:`Раскрыть 4`,children:`Содержимое панели 4`})]}),(0,W.jsx)(s,{label:`Раскрыть 1`,tone:`secondary`,children:`Содержимое панели 1`})]}),(0,W.jsx)(V,{title:`ExpandableActionPanel`,children:(0,W.jsx)(te,{children:(0,W.jsx)(x,{variant:`transparent`,children:`Действие`})})}),(0,W.jsx)(V,{title:`Popover`,children:(0,W.jsxs)(_,{children:[(0,W.jsx)(_.Trigger,{children:(0,W.jsx)(x,{style:q,children:`Открыть`})}),(0,W.jsx)(_.Content,{children:({setClose:e})=>(0,W.jsxs)(`div`,{style:{display:`grid`,gap:`0.75em`,padding:`1em`,maxWidth:`14em`},children:[(0,W.jsx)(`div`,{children:`Содержимое popover`}),(0,W.jsx)(x,{onClick:e,children:`Закрыть`})]})})]})}),(0,W.jsx)(V,{title:`DropdownMenu`,children:(0,W.jsxs)(k,{children:[(0,W.jsx)(k.Trigger,{children:(0,W.jsx)(x,{style:q,children:`Действия`})}),(0,W.jsxs)(k.Content,{children:[(0,W.jsx)(k.Item,{children:`Редактировать`}),(0,W.jsx)(k.Item,{children:`Удалить`})]})]})}),(0,W.jsx)(V,{title:`ContextMenu`,children:(0,W.jsxs)(C,{children:[(0,W.jsx)(C.Trigger,{children:(0,W.jsx)(`div`,{style:{display:`grid`,placeItems:`center`,minHeight:`6em`,padding:`0.75em`,border:`var(--border)`,borderRadius:`var(--radius-sm)`,textAlign:`center`},children:`Правая кнопка мыши`})}),(0,W.jsxs)(C.Content,{children:[(0,W.jsx)(C.Item,{children:`Переименовать`}),(0,W.jsx)(C.Item,{children:`Удалить`})]})]})}),(0,W.jsxs)(V,{title:`Dialog`,children:[(0,W.jsx)(x,{style:q,onClick:()=>Q(!0),children:`Открыть диалог`}),(0,W.jsx)(Se,{title:`Подтверждение`,description:`Подтвердите действие`,open:at,onClose:()=>Q(!1),children:(0,W.jsx)(x,{onClick:()=>Q(!1),children:`Закрыть`})})]}),(0,W.jsx)(V,{title:`Modal`,children:(0,W.jsxs)(he,{children:[(0,W.jsx)(x,{style:q,onClick:()=>$(!0),children:`Открыть модалку`}),(0,W.jsxs)(pe,{title:`Параметры`,isOpen:ot,onClose:()=>$(!1),children:[(0,W.jsx)(de,{children:`Содержимое модального окна`}),(0,W.jsx)(ue,{children:(0,W.jsx)(x,{onClick:()=>$(!1),children:`Готово`})})]})]})})]})}var U,W,nt,G,K,q,J,Y,rt,it,X,Z,at;function Q(){return(Q=t((()=>{U=n(),ce(),v(),b(),f(),S(),_e(),ye(),M(),d(),xe(),a(),o(),m(),c(),O(),T(),Te(),Ce(),De(),B(),ke(),je(),me(),fe(),Ne(),Fe(),se(),Le(),u(),ne(),A(),ze(),He(),We(),r(),Ke(),qe(),oe(),F(),I(),Ze(),Qe(),W=h(),nt={display:`grid`,gridTemplateColumns:`repeat(auto-fit, minmax(var(--ui-width-xl), 1fr))`,alignItems:`start`,gap:`2em`,padding:`2em`,background:`var(--surface-2)`},G={display:`grid`,alignContent:`start`,gridTemplateColumns:`100%`,gap:`0.5em`,padding:`1em`,overflow:`hidden`,borderRadius:`var(--radius-md)`,background:`var(--surface-1)`,boxShadow:`var(--shadow-lg)`},K={fontWeight:700,color:`var(--content-0)`},q={width:`100%`},J=[{id:`draft`,label:`Черновик`},{id:`review`,label:`На согласовании`},{id:`published`,label:`Опубликован`}],Y=[{code:`EKB`,label:`Екатеринбург`},{code:`KZN`,label:`Казань`},{code:`MOW`,label:`Москва`}],rt=[{value:`day`,label:`День`},{value:`week`,label:`Неделя`},{value:`month`,label:`Месяц`}],it=[{id:1,name:`Отдел продаж`,code:`SLS`,manager:`Елена Миронова`,direction:`Коммерческий блок`},{id:2,name:`Закупки`,code:`PRC`,manager:`Антон Мелихов`,direction:`Коммерческий блок`},{id:3,name:`Логистика`,code:`LGS`,manager:`Мария Климова`,direction:`Операционный блок`,disabled:!0},{id:4,name:`Поддержка клиентов`,code:`SUP`,manager:`Ирина Белова`,direction:`Операционный блок`}],X={title:`Development/Interactive components`,component:H,parameters:{layout:`fullscreen`,docs:{description:{component:`Быстрая витрина интерактивных UI-компонентов для разработки и проверки общих стилей.`}}}},Z={},H.__docgenInfo={description:``,methods:[],displayName:`InteractiveComponents`},H.parameters={...H.parameters,docs:{...H.parameters?.docs,source:{originalSource:`function InteractiveComponents() {
|
|
1
|
+
import{a as e,n as t}from"./rolldown-runtime-DkW27tQK.js";import{t as n}from"./react-BZJXY1be.js";import{n as r,t as i}from"./Switch--xGPiYk-.js";import{i as a,n as o,r as s,t as ee}from"./DisclosureGroup-CRnQOgVj.js";import{n as c,t as te}from"./ExpandableActionPanel-0ugXlJy_.js";import{n as ne,t as l}from"./RadioGroup-BtfD5Szd.js";import{n as u,t as re}from"./RadioButton-CNOLDk_o.js";import{n as d,t as ie}from"./SingleDateTimeInput-DattLt6w.js";import{n as f,t as p}from"./CheckBox-CGiNmAPT.js";import{n as m,t as ae}from"./DropZone-C4L7JAlq.js";import{n as h}from"./iframe-o7sH2IXC.js";import{n as oe,t as g}from"./Text-BhBt9e7C.js";import{n as se,t as _}from"./Popover-B6oidz5p.js";import{i as ce,n as v,r as y,t as le}from"./BadgeList-mqmnGtRR.js";import{n as b,t as x}from"./Button-_YPAu9sd.js";import{n as S,t as C}from"./ContextMenu-Bob4DtRn.js";import{a as ue,i as de,n as fe,r as pe,s as me,t as he}from"./ModalManagerProvider-BrPVMcHV.js";import{a as w,l as T,o as E,t as D}from"./Input-DLubbE7P.js";import{n as O,t as ge}from"./GridContainer-fKYgDsLl.js";import{n as _e,t as k}from"./DropdownMenu-DtZNSUHF.js";import{n as ve,r as ye}from"./DateInput-BQ8SoeLE.js";import{n as A,t as j}from"./Select-G04B41FM.js";import{n as M,t as be}from"./DateRangePresetSelect-fgJfLaLO.js";import{n as xe,t as Se}from"./Dialog-D6a_qzr3.js";import{n as Ce,t as we}from"./InputFiles-UD_9S7-N.js";import{n as Te,t as Ee}from"./InputFile-DPftxjGw.js";import{n as De,t as Oe}from"./InputImage-C-pHr-Sx.js";import{n as ke,t as Ae}from"./LayoutPicker-w1EsRpYP.js";import{n as je,t as Me}from"./Listbox-CzZRsr6a.js";import{n as Ne,t as Pe}from"./MultiSelect-BEQdl-F4.js";import{n as Fe,t as Ie}from"./PeriodSelect-DUJ2nF3F.js";import{n as Le,t as Re}from"./PresetRangeDateInput-CQ5FfmrL.js";import{i as ze,r as Be,t as Ve}from"./Slider-Dci-mJt_.js";import{n as N,r as He,t as Ue}from"./SliderInput-BGPQmlgY.js";import{n as We,t as Ge}from"./StateSelect-Byik5-iZ.js";import{n as Ke,t as P}from"./TabsBox-C5LLLhnj.js";import{n as qe,t as Je}from"./TagInput-D4BpuCoH.js";import{n as F,t as Ye}from"./Textarea-B-Hz7ujq.js";import{n as I,t as Xe}from"./Toggle-BWwfk9fi.js";import{n as Ze,t as L}from"./TreeMultiSelect-B06Y0lIc.js";import{n as Qe,t as $e}from"./treeStoryFixtures-DXHh9GL3.js";function et({onChange:e,...t}){let[n,r]=(0,R.useState)(()=>t.defaultValue??t.value??``),[i,a]=(0,R.useState)(()=>t.defaultValue??t.value??``),o=t=>{let n=t.trim();n!==i&&(a(n),e(n))},s=()=>{r(``),a(``),e(``)},ee=e=>{e.key===`Enter`&&(e.preventDefault(),o(n))},c=()=>{o(n)},te=e=>{r(e)};return(0,z.jsx)(D,{...t,value:n,onChange:te,onKeyDown:ee,onBlur:c,onClear:s})}var R,z;function B(){return(B=t((()=>{R=e(n(),1),T(),z=h(),et.__docgenInfo={description:``,methods:[],displayName:`InputSearch`,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:`T`},description:"Если начальное состояние может быть `null | undefined`\nзначит `onChange` тоже должен ументь сбрасывать.\nПоэтому такой контрол явно должен передавать `UiBaseProps<AnyType | undefined>`"},onChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(value: string) => void`,signature:{arguments:[{type:{name:`string`},name:`value`}],return:{name:`void`}}},description:``},onClear:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:``},error:{required:!1,tsType:{name:`string`},description:``},onClearError:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:``},defaultValue:{required:!1,tsType:{name:`string`},description:``},endAdornment:{required:!1,tsType:{name:`ReactNode`},description:``},endAdornmentClassName:{required:!1,tsType:{name:`string`},description:``},endAdornmentWidth:{required:!1,tsType:{name:`string`},description:``}},composes:[`Omit`]}})))()}function V({title:e,children:t}){return(0,W.jsxs)(`section`,{style:G,children:[(0,W.jsx)(`div`,{style:K,children:e}),t]})}function tt({initialValue:e={},label:t=`TreeMultiSelect`,description:n,optionsLayout:r=`tree`,nodes:i=$e,defaultExpandedCodeKeys:a}){let[o,s]=(0,U.useState)(e);return(0,W.jsxs)(`div`,{style:{display:`grid`,gap:12,maxWidth:520},children:[(0,W.jsx)(L,{label:t,description:n,nodes:i,value:o,onChange:s,optionsLayout:r,defaultExpandedCodeKeys:a}),(0,W.jsxs)(`div`,{style:{fontSize:`var(--font-size-sm)`,color:`var(--content-1)`},children:[`Текущее значение: `,JSON.stringify(o)]})]})}function H(){let[e,t]=(0,U.useState)(`Значение`),[n,r]=(0,U.useState)(42),[a,o]=(0,U.useState)(``),[c,ne]=(0,U.useState)(`Комментарий`),[u,d]=(0,U.useState)(!0),[f,m]=(0,U.useState)(!1),[h,oe]=(0,U.useState)(`first`),[se,ce]=(0,U.useState)(!0),[v,b]=(0,U.useState)(!1),[S,fe]=(0,U.useState)(3),[me,T]=(0,U.useState)(),[D,O]=(0,U.useState)([0,0]),[_e,ye]=(0,U.useState)(60),[A,M]=(0,U.useState)(J[0]),[xe,Ce]=(0,U.useState)([Y[0]]),[Te,De]=(0,U.useState)([`UI`,`Стили`]),[ke,je]=(0,U.useState)(`week`),[Ne,Fe]=(0,U.useState)(`information`),[Le,ze]=(0,U.useState)(`two-columns`),[He,We]=(0,U.useState)(new Date(2026,2,10)),[Ke,qe]=(0,U.useState)(new Date(2026,2,10,10,30)),[F,I]=(0,U.useState)(`today`),[Ze,L]=(0,U.useState)([new Date(2026,2,1),new Date(2026,2,10)]),[Qe,$e]=(0,U.useState)(`month`),[R,z]=(0,U.useState)(),[B,H]=(0,U.useState)([]),[G,K]=(0,U.useState)(),[X,Z]=(0,U.useState)([]),[at,Q]=(0,U.useState)(!1),[ot,$]=(0,U.useState)(!1),[st,ct]=(0,U.useState)();return(0,W.jsxs)(`div`,{style:nt,children:[(0,W.jsxs)(V,{title:`Text`,children:[(0,W.jsx)(g,{color:`primary`,children:`Основной`}),(0,W.jsx)(g,{color:`secondary`,children:`Дополнительный`}),(0,W.jsx)(g,{color:`muted`,children:`Приглушенный`}),(0,W.jsx)(g,{color:`accent`,children:`Акцентированный`}),(0,W.jsx)(g,{color:`brand`,children:`Брендовый`}),(0,W.jsx)(g,{color:`info`,children:`Информация`}),(0,W.jsx)(g,{color:`success`,children:`Успешно`}),(0,W.jsx)(g,{color:`warning`,children:`Предупреждение`}),(0,W.jsx)(g,{color:`error`,children:`Ошибка`})]}),(0,W.jsx)(V,{title:`Badge`,children:(0,W.jsxs)(le,{children:[(0,W.jsx)(y,{tone:`neutral`,appearance:`outline`,children:`Neutral`}),(0,W.jsx)(y,{tone:`success`,appearance:`solid`,children:`Успешно`}),(0,W.jsx)(y,{tone:`warning`,appearance:`solid`,children:`Внимание`}),(0,W.jsx)(y,{tone:`error`,appearance:`solid`,children:`Ошибка`}),(0,W.jsx)(y,{tone:`info`,appearance:`solid`,children:`Информация`})]})}),(0,W.jsx)(V,{title:`Button`,children:(0,W.jsxs)(ge,{gap:`sm`,templateColumns:`1fr 1fr`,children:[(0,W.jsx)(x,{variant:`transparent`,children:`Действие`}),(0,W.jsx)(x,{variant:`ghost`,children:`Действие`}),(0,W.jsx)(x,{variant:`neutralOutline`,children:`Действие`}),(0,W.jsx)(x,{variant:`infoOutline`,children:`Действие`}),(0,W.jsx)(x,{variant:`successOutline`,children:`Действие`}),(0,W.jsx)(x,{variant:`warningOutline`,children:`Действие`}),(0,W.jsx)(x,{variant:`errorOutline`,children:`Действие`}),(0,W.jsx)(x,{variant:`neutral`,children:`Действие`}),(0,W.jsx)(x,{variant:`info`,children:`Действие`}),(0,W.jsx)(x,{variant:`success`,children:`Действие`}),(0,W.jsx)(x,{variant:`warning`,children:`Действие`}),(0,W.jsx)(x,{variant:`error`,children:`Действие`})]})}),(0,W.jsxs)(V,{title:`InputText`,children:[(0,W.jsx)(E,{label:`Текст`,description:`Поле ввода текста`,placeholder:`Введите текст`,disabled:!0,value:e,onChange:t}),(0,W.jsx)(E,{label:`Текст`,description:`Поле ввода текста`,placeholder:`Введите текст`,value:e,onChange:t}),(0,W.jsx)(E,{required:!0,label:`Текст`,description:`Поле ввода текста`,placeholder:`Введите текст`,value:e,onChange:t,onClear:()=>t(``)})]}),(0,W.jsxs)(V,{title:`InputNumber`,children:[(0,W.jsx)(w,{label:`Количество`,description:`Поле ввода числа`,placeholder:`Введите число`,value:n,min:0,onChange:r,disabled:!0}),(0,W.jsx)(w,{label:`Количество`,description:`Поле ввода числа`,placeholder:`Введите число`,value:n,min:0,onChange:r,required:!0}),(0,W.jsx)(w,{label:`Количество`,description:`Поле ввода числа`,placeholder:`Введите число`,value:n,min:0,onChange:r}),(0,W.jsx)(w,{label:`Количество`,description:`Поле ввода числа`,placeholder:`Введите число`,value:n,min:0,onChange:r,onClear:()=>r(void 0)})]}),(0,W.jsx)(V,{title:`InputSearch`,children:(0,W.jsx)(et,{label:`Поиск`,placeholder:`Найти`,value:a,onChange:o})}),(0,W.jsx)(V,{title:`Textarea`,children:(0,W.jsx)(Ye,{label:`Комментарий`,required:!0,placeholder:`Многострочный комментарий`,rows:6,value:c,onChange:ne})}),(0,W.jsxs)(V,{title:`CheckBox`,children:[(0,W.jsx)(p,{label:`Опция`,description:`Описание чекбокса`,disabled:!0,value:u,onChange:d}),(0,W.jsx)(p,{label:`Опция`,description:`Описание чекбокса`,value:u,onChange:d}),(0,W.jsx)(p,{label:`Опция`,description:`Описание чекбокса`,value:u,onChange:d,indeterminate:!0})]}),(0,W.jsxs)(V,{title:`RadioButton`,children:[(0,W.jsx)(re,{label:`Опция`,description:`Описание радиокнопки`,disabled:!0,value:f,onChange:m}),(0,W.jsx)(re,{label:`Опция`,description:`Описание радиокнопки`,name:`radio-1`,value:f,onChange:m}),(0,W.jsx)(re,{label:`Опция`,description:`Описание радиокнопки`,name:`radio-1`,value:f,onChange:m})]}),(0,W.jsxs)(V,{title:`RadioGroup`,children:[(0,W.jsxs)(l,{label:`Радио группа`,description:`Вертикальная группа`,value:h,onChange:oe,orientation:`vertical`,"aria-label":`Вариант`,children:[(0,W.jsx)(l.Option,{value:`first`,label:`Первый`}),(0,W.jsx)(l.Option,{value:`second`,label:`Второй`}),(0,W.jsx)(l.Option,{value:`third`,label:`Третий`,description:`Новая опциональная опция`})]}),(0,W.jsxs)(l,{label:`Радио группа`,description:`Горизонтальная группа`,value:h,onChange:oe,orientation:`horizontal`,"aria-label":`Вариант`,children:[(0,W.jsx)(l.Option,{value:`first`,label:`Первый`}),(0,W.jsx)(l.Option,{value:`second`,label:`Второй`}),(0,W.jsx)(l.Option,{value:`third`,label:`Третий`,description:`Новая опциональная опция`})]})]}),(0,W.jsx)(V,{title:`Switch`,children:(0,W.jsx)(i,{label:`Уведомления`,description:`Устаревный компонент`,value:se,onChange:ce})}),(0,W.jsxs)(V,{title:`Toggle`,children:[(0,W.jsx)(Xe,{label:`Режим`,description:`Переключатель состояния`,value:v,onChange:b,checkedText:`Вкл`,uncheckedText:`Выкл`}),(0,W.jsx)(Xe,{label:`Режим`,description:`Переключатель состояния`,labelPosition:`after`,value:v,onChange:b,checkedText:`Вкл`,uncheckedText:`Выкл`})]}),(0,W.jsxs)(V,{title:`Slider`,children:[(0,W.jsx)(Ve,{label:`Уровень`,description:`Простой слайдер`,value:S,min:0,max:100,onChange:fe}),(0,W.jsx)(Ve,{label:`Уровень`,description:`Простой слайдер`,disabled:!0,marks:[{value:1,label:`m1`},{value:2,label:`m2`},{value:3,label:`m3`},{value:4,label:`m4`},{value:5,label:`m5`},{value:6,label:`m6`}],marksPosition:`index`,value:S,min:0,max:100,onChange:fe}),(0,W.jsx)(Be,{label:`Уровень`,description:`Диапазон`,marks:[{value:0,label:`m1`},{value:1,label:`m2`},{value:2,label:`m3`},{value:3,label:`m4`}],marksPosition:`index`,value:me,min:0,max:100,onChange:T})]}),(0,W.jsxs)(V,{title:`SliderInput`,children:[(0,W.jsx)(Ue,{label:`Порог`,value:_e,min:0,max:100,onChange:ye}),(0,W.jsx)(N,{label:`Порог`,value:D,onChange:O,min:0,max:100,marks:[{value:0,label:`0`},{value:20,label:`20`},{value:40,label:`40`},{value:60,label:`60`},{value:80,label:`80`},{value:100,label:`100`}]}),(0,W.jsx)(N,{label:`Срок: открытые границы и дни в фильтре`,description:"Крайние marks отдают null, обычные marks отдают дни через `outputValue`.",min:0,max:25,marks:[{value:0,label:`-`,outputValue:null},{value:1,label:`1м.`,outputValue:30},{value:3,label:`3м.`,outputValue:90},{value:6,label:`6м.`,outputValue:180},{value:12,label:`1г.`,outputValue:360},{value:18,label:`1.5г.`,outputValue:540},{value:24,label:`2г.`,outputValue:720},{value:25,label:`-`,outputValue:null}],value:D,onChange:O}),(0,W.jsx)(N,{label:`Срок текстом`,description:`В поле выводится готовый текст по marks, а изменение через popover коммитится при закрытии.`,placeholder:`Любой срок`,readonlyValueText:!0,min:0,max:25,marks:[{value:0,label:`-`,outputValue:null},{value:1,label:`1м.`,outputValue:30},{value:3,label:`3м.`,outputValue:90},{value:6,label:`6м.`,outputValue:180},{value:12,label:`1г.`,outputValue:360},{value:18,label:`1.5г.`,outputValue:540},{value:24,label:`2г.`,outputValue:720},{value:25,label:`-`,outputValue:null}],marksPosition:`index`,value:D,onChange:O})]}),(0,W.jsxs)(V,{title:`Select`,children:[(0,W.jsx)(j,{label:`Статус`,description:`searchable`,searchable:!0,options:J,value:A,onChange:M,getOptionKey:e=>e.id,getOptionLabel:e=>e.label}),(0,W.jsx)(j,{label:`Статус`,description:`disabled`,disabled:!0,options:J,value:A,onChange:M,getOptionKey:e=>e.id,getOptionLabel:e=>e.label}),(0,W.jsx)(j,{label:`Статус`,description:`Пример использования низкоуровневого Select со строковыми значениями.`,placeholder:`Выберите статус`,options:J,value:A,onChange:M,getOptionKey:e=>e.id,getOptionLabel:e=>e.label}),(0,W.jsx)(j,{label:`Подразделение`,description:`Выберите подразделение из списка.`,placeholder:`Не выбрано`,options:it,value:st,onChange:ct,getOptionKey:e=>e.id,getOptionLabel:e=>e.name,getOptionCode:e=>e.code,getOptionDisabled:e=>e.disabled??!1,getOptionGroup:e=>({key:e.direction,label:e.direction}),optionsMaxWidth:`40em`})]}),(0,W.jsx)(V,{title:`MultiSelect`,children:(0,W.jsx)(Pe,{label:`Города`,items:Y,value:xe,query:``,codeKey:`code`,textKey:`label`,onChange:Ce,onQuery:()=>void 0,onOpen:()=>void 0,onClose:()=>void 0})}),(0,W.jsx)(V,{title:`TreeMultiSelect`,children:(0,W.jsx)(tt,{})}),(0,W.jsx)(V,{title:`TagInput`,children:(0,W.jsx)(Je,{label:`Теги`,placeholder:`Добавить`,value:Te,onChange:De})}),(0,W.jsx)(V,{title:`Listbox`,children:(0,W.jsx)(Me,{options:rt,value:ke,onChange:e=>je(e)})}),(0,W.jsx)(V,{title:`StateSelect`,children:(0,W.jsx)(Ge,{label:`Состояние`,value:Ne,onChange:Fe})}),(0,W.jsx)(V,{title:`LayoutPicker`,children:(0,W.jsx)(Ae,{label:`Раскладка`,value:Le,onChange:ze,showPlaceholder:!0})}),(0,W.jsx)(V,{title:`SingleDateInput`,children:(0,W.jsx)(ve,{label:`Дата`,value:He,onChange:We,selectionMode:`week`})}),(0,W.jsx)(V,{title:`SingleDateTimeInput`,children:(0,W.jsx)(ie,{label:`Дата и время`,value:Ke,onChange:qe})}),(0,W.jsx)(V,{title:`DateRangePresetSelect`,children:(0,W.jsx)(be,{label:`Период`,value:F??void 0,onChange:e=>I(e??null),onRangeChange:e=>L(e?.range??null),referenceDate:new Date(2026,2,10,12)})}),(0,W.jsx)(V,{title:`PresetRangeDateInput`,children:(0,W.jsx)(Re,{value:Ze,onChange:L,presetId:F??null,onPresetIdChange:e=>I(e??null),referenceDate:new Date(2026,2,10,12),presetLabel:`Быстрый диапазон`})}),(0,W.jsx)(V,{title:`PeriodSelect`,children:(0,W.jsx)(Ie,{label:`Группировка`,value:Qe,onChange:$e})}),(0,W.jsx)(V,{title:`InputFile`,children:(0,W.jsx)(Ee,{label:`Файл`,placeholder:`Выберите файл`,value:R,onChange:z,onClear:()=>z(void 0),readMode:`data-url`})}),(0,W.jsx)(V,{title:`InputFiles`,children:(0,W.jsx)(we,{label:`Файлы`,placeholder:`Выберите файлы`,value:B,onChange:H,readMode:`data-url`})}),(0,W.jsx)(V,{title:`InputImage`,children:(0,W.jsx)(Oe,{label:`Изображение`,value:G,onChange:K,onClear:()=>K(void 0)})}),(0,W.jsx)(V,{title:`DropZone`,children:(0,W.jsx)(ae,{value:X,multiple:!0,readMode:`data-url`,onChange:e=>Z(e),children:(0,W.jsx)(`div`,{style:{display:`grid`,placeItems:`center`,minHeight:`6em`,textAlign:`center`},children:X.length?`Файлов: ${X.length}`:`Перетащите файлы`})})}),(0,W.jsxs)(V,{title:`TabsBox`,children:[(0,W.jsx)(P,{defaultValue:`first`,items:[{id:`first`,title:`Первый`,content:`Содержимое`},{id:`second`,title:`Второй`,content:`Другая панель`},{id:`third`,title:`Ещё одна`,content:`Ещё одна панель`},{id:`quat`,title:`Четвертая`,content:`Четвертая панель`},{id:`five`,title:`Пятая`,content:`Пятая панель`}]}),(0,W.jsx)(P,{defaultValue:`first`,clean:!0,items:[{id:`first`,title:`Первый`,content:`Содержимое`},{id:`second`,title:`Второй`,content:`Другая панель`},{id:`third`,title:`Ещё одна`,content:`Ещё одна панель`},{id:`quat`,title:`Четвертая`,content:`Четвертая панель`},{id:`five`,title:`Пятая`,content:`Пятая панель`}]})]}),(0,W.jsxs)(V,{title:`TabsBox`,children:[(0,W.jsx)(P,{defaultValue:`first`,orientation:`vertical`,items:[{id:`first`,title:`Первый`,content:`Содержимое`},{id:`second`,title:`Второй`,content:`Другая панель`},{id:`third`,title:`Ещё одна`,content:`Другая панель`},{id:`quat`,title:`Четвертая`,content:`Другая панель`}]}),(0,W.jsx)(P,{defaultValue:`first`,orientation:`vertical`,clean:!0,items:[{id:`first`,title:`Первый`,content:`Содержимое`},{id:`second`,title:`Второй`,content:`Другая панель`},{id:`third`,title:`Ещё одна`,content:`Другая панель`},{id:`quat`,title:`Четвертая`,content:`Другая панель`}]})]}),(0,W.jsxs)(V,{title:`Disclosure`,children:[(0,W.jsxs)(ee,{children:[(0,W.jsx)(s,{label:`Раскрыть 1`,children:`Содержимое панели 1`}),(0,W.jsx)(s,{label:`Раскрыть 2`,children:`Содержимое панели 2`}),(0,W.jsx)(s,{label:`Раскрыть 3`,children:`Содержимое панели 3`}),(0,W.jsx)(s,{label:`Раскрыть 4`,children:`Содержимое панели 4`})]}),(0,W.jsx)(s,{label:`Раскрыть 1`,tone:`secondary`,children:`Содержимое панели 1`})]}),(0,W.jsx)(V,{title:`ExpandableActionPanel`,children:(0,W.jsx)(te,{children:(0,W.jsx)(x,{variant:`transparent`,children:`Действие`})})}),(0,W.jsx)(V,{title:`Popover`,children:(0,W.jsxs)(_,{children:[(0,W.jsx)(_.Trigger,{children:(0,W.jsx)(x,{style:q,children:`Открыть`})}),(0,W.jsx)(_.Content,{children:({setClose:e})=>(0,W.jsxs)(`div`,{style:{display:`grid`,gap:`0.75em`,padding:`1em`,maxWidth:`14em`},children:[(0,W.jsx)(`div`,{children:`Содержимое popover`}),(0,W.jsx)(x,{onClick:e,children:`Закрыть`})]})})]})}),(0,W.jsx)(V,{title:`DropdownMenu`,children:(0,W.jsxs)(k,{children:[(0,W.jsx)(k.Trigger,{children:(0,W.jsx)(x,{style:q,children:`Действия`})}),(0,W.jsxs)(k.Content,{children:[(0,W.jsx)(k.Item,{children:`Редактировать`}),(0,W.jsx)(k.Item,{children:`Удалить`})]})]})}),(0,W.jsx)(V,{title:`ContextMenu`,children:(0,W.jsxs)(C,{children:[(0,W.jsx)(C.Trigger,{children:(0,W.jsx)(`div`,{style:{display:`grid`,placeItems:`center`,minHeight:`6em`,padding:`0.75em`,border:`var(--border)`,borderRadius:`var(--radius-sm)`,textAlign:`center`},children:`Правая кнопка мыши`})}),(0,W.jsxs)(C.Content,{children:[(0,W.jsx)(C.Item,{children:`Переименовать`}),(0,W.jsx)(C.Item,{children:`Удалить`})]})]})}),(0,W.jsxs)(V,{title:`Dialog`,children:[(0,W.jsx)(x,{style:q,onClick:()=>Q(!0),children:`Открыть диалог`}),(0,W.jsx)(Se,{title:`Подтверждение`,description:`Подтвердите действие`,open:at,onClose:()=>Q(!1),children:(0,W.jsx)(x,{onClick:()=>Q(!1),children:`Закрыть`})})]}),(0,W.jsx)(V,{title:`Modal`,children:(0,W.jsxs)(he,{children:[(0,W.jsx)(x,{style:q,onClick:()=>$(!0),children:`Открыть модалку`}),(0,W.jsxs)(pe,{title:`Параметры`,isOpen:ot,onClose:()=>$(!1),children:[(0,W.jsx)(de,{children:`Содержимое модального окна`}),(0,W.jsx)(ue,{children:(0,W.jsx)(x,{onClick:()=>$(!1),children:`Готово`})})]})]})})]})}var U,W,nt,G,K,q,J,Y,rt,it,X,Z,at;function Q(){return(Q=t((()=>{U=n(),ce(),v(),b(),f(),S(),_e(),ye(),M(),d(),xe(),a(),o(),m(),c(),O(),T(),Te(),Ce(),De(),B(),ke(),je(),me(),fe(),Ne(),Fe(),se(),Le(),u(),ne(),A(),ze(),He(),We(),r(),Ke(),qe(),oe(),F(),I(),Ze(),Qe(),W=h(),nt={display:`grid`,gridTemplateColumns:`repeat(auto-fit, minmax(var(--ui-width-xl), 1fr))`,alignItems:`start`,gap:`2em`,padding:`2em`,background:`var(--surface-2)`},G={display:`grid`,alignContent:`start`,gridTemplateColumns:`100%`,gap:`0.5em`,padding:`1em`,overflow:`hidden`,borderRadius:`var(--radius-md)`,background:`var(--surface-1)`,boxShadow:`var(--shadow-lg)`},K={fontWeight:700,color:`var(--content-0)`},q={width:`100%`},J=[{id:`draft`,label:`Черновик`},{id:`review`,label:`На согласовании`},{id:`published`,label:`Опубликован`}],Y=[{code:`EKB`,label:`Екатеринбург`},{code:`KZN`,label:`Казань`},{code:`MOW`,label:`Москва`}],rt=[{value:`day`,label:`День`},{value:`week`,label:`Неделя`},{value:`month`,label:`Месяц`}],it=[{id:1,name:`Отдел продаж`,code:`SLS`,manager:`Елена Миронова`,direction:`Коммерческий блок`},{id:2,name:`Закупки`,code:`PRC`,manager:`Антон Мелихов`,direction:`Коммерческий блок`},{id:3,name:`Логистика`,code:`LGS`,manager:`Мария Климова`,direction:`Операционный блок`,disabled:!0},{id:4,name:`Поддержка клиентов`,code:`SUP`,manager:`Ирина Белова`,direction:`Операционный блок`}],X={title:`Development/Interactive components`,component:H,parameters:{layout:`fullscreen`,docs:{description:{component:`Быстрая витрина интерактивных UI-компонентов для разработки и проверки общих стилей.`}}}},Z={},H.__docgenInfo={description:``,methods:[],displayName:`InteractiveComponents`},H.parameters={...H.parameters,docs:{...H.parameters?.docs,source:{originalSource:`function InteractiveComponents() {
|
|
2
2
|
const [text, setText] = useState("Значение");
|
|
3
3
|
const [number, setNumber] = useState<number | undefined>(42);
|
|
4
4
|
const [search, setSearch] = useState("");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{n as t}from"./iframe-
|
|
1
|
+
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{n as t}from"./iframe-o7sH2IXC.js";import{i as n,r}from"./react-Bl2r1tuC.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-BY40djCc.js";import{a as p,c as m,i as h,n as g,o as _,r as v,s as y,t as b}from"./LayoutPicker.stories--ChGnGxf.js";function x(e){let t={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...n(),...e.components};return(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(s,{of:_,parameters:{docs:{toc:!0}}}),`
|
|
2
2
|
`,(0,C.jsx)(u,{children:`LayoutPicker`}),`
|
|
3
3
|
`,(0,C.jsx)(o,{children:`Контролируемый выбор layout-пресета со схематичным превью`}),`
|
|
4
4
|
`,(0,C.jsxs)(t.p,{children:[(0,C.jsx)(t.code,{children:`LayoutPicker`}),` нужен для выбора схемы размещения независимых областей: графиков, панелей, секций дашборда или другого UI, где сама раскладка хранится во внешней модели.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{t}from"./react-BZJXY1be.js";import{n}from"./iframe-FSp_AjJa.js";import{a as r,i}from"./utils-tg3ibbzi.js";import{c as a,i as o,l as s,m as c,n as l,p as u,r as d,s as f,t as p,u as m}from"./usePickerTriggerController-C0TdC2Pz.js";import{n as h,t as g}from"./Option-BBtQ3GdK.js";import{n as _,t as v}from"./CustomOptionButton-C4w-APws.js";function y(e,t){return{gridTemplateColumns:`repeat(${e.columns}, minmax(0, 1fr))`,gridTemplateRows:`repeat(${e.rows}, minmax(${t??0}em, 1fr))`}}function b(e){return{gridColumn:`${e.column} / span ${e.columnSpan??1}`,gridRow:`${e.row} / span ${e.rowSpan??1}`}}var x;function S(){return(S=e((()=>{x=[{id:`1x1`,label:`1x1`,columns:1,rows:1,cells:[{id:`c11`,row:1,column:1}]},{id:`1x2`,label:`1x2`,columns:2,rows:1,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2}]},{id:`1x3`,label:`1x3`,columns:3,rows:1,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c13`,row:1,column:3}]},{id:`2x1`,label:`2x1`,columns:1,rows:2,cells:[{id:`c11`,row:1,column:1},{id:`c21`,row:2,column:1}]},{id:`2x2`,label:`2x2`,columns:2,rows:2,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2}]},{id:`2x3`,label:`2x3`,columns:3,rows:2,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c13`,row:1,column:3},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c23`,row:2,column:3}]},{id:`3x1`,label:`3x1`,columns:1,rows:3,cells:[{id:`c11`,row:1,column:1},{id:`c21`,row:2,column:1},{id:`c31`,row:3,column:1}]},{id:`3x2`,label:`3x2`,columns:2,rows:3,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2}]},{id:`3x3`,label:`3x3`,columns:3,rows:3,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c13`,row:1,column:3},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c23`,row:2,column:3},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2},{id:`c33`,row:3,column:3}]},{id:`4x1`,label:`4x1`,columns:1,rows:4,cells:[{id:`c11`,row:1,column:1},{id:`c21`,row:2,column:1},{id:`c31`,row:3,column:1},{id:`c41`,row:4,column:1}]},{id:`4x2`,label:`4x2`,columns:2,rows:4,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2},{id:`c41`,row:4,column:1},{id:`c42`,row:4,column:2}]},{id:`4x3`,label:`4x3`,columns:3,rows:4,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c13`,row:1,column:3},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c23`,row:2,column:3},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2},{id:`c33`,row:3,column:3},{id:`c41`,row:4,column:1},{id:`c42`,row:4,column:2},{id:`c43`,row:4,column:3}]},{id:`2x2-l`,label:`Большая слева + две справа`,columns:2,rows:2,cells:[{id:`left`,row:1,column:1,rowSpan:2},{id:`rt`,row:1,column:2},{id:`rb`,row:2,column:2}]},{id:`2x2-r`,label:`Две слева + большая справа`,columns:2,rows:2,cells:[{id:`lt`,row:1,column:1},{id:`lb`,row:2,column:1},{id:`right`,row:1,column:2,rowSpan:2}]},{id:`2x2-t`,label:`Широкая сверху + две снизу`,columns:2,rows:2,cells:[{id:`top`,row:1,column:1,columnSpan:2},{id:`bl`,row:2,column:1},{id:`br`,row:2,column:2}]},{id:`2x2-b`,label:`Две сверху + широкая снизу`,columns:2,rows:2,cells:[{id:`tl`,row:1,column:1},{id:`tr`,row:1,column:2},{id:`bottom`,row:2,column:1,columnSpan:2}]},{id:`3x2-t`,label:`Широкая сверху + 2x2`,columns:2,rows:3,cells:[{id:`top`,row:1,column:1,columnSpan:2},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2}]},{id:`3x2-b`,label:`2x2 + широкая снизу`,columns:2,rows:3,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`bottom`,row:3,column:1,columnSpan:2}]},{id:`3x2-m`,label:`Широкая по центру`,columns:2,rows:3,cells:[{id:`tl`,row:1,column:1},{id:`tr`,row:1,column:2},{id:`middle`,row:2,column:1,columnSpan:2},{id:`bl`,row:3,column:1},{id:`br`,row:3,column:2}]},{id:`3x3-l`,label:`Большая слева + 2x3 справа`,columns:3,rows:3,cells:[{id:`left`,row:1,column:1,rowSpan:3},{id:`c12`,row:1,column:2},{id:`c13`,row:1,column:3},{id:`c22`,row:2,column:2},{id:`c23`,row:2,column:3},{id:`c32`,row:3,column:2},{id:`c33`,row:3,column:3}]},{id:`3x3-r`,label:`2x3 слева + большая справа`,columns:3,rows:3,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`right`,row:1,column:3,rowSpan:3},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2}]},{id:`3x3-t`,label:`Широкая сверху + 2x3`,columns:3,rows:3,cells:[{id:`top`,row:1,column:1,columnSpan:3},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c23`,row:2,column:3},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2},{id:`c33`,row:3,column:3}]},{id:`3x3-b`,label:`2x3 + широкая снизу`,columns:3,rows:3,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c13`,row:1,column:3},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c23`,row:2,column:3},{id:`bottom`,row:3,column:1,columnSpan:3}]},{id:`4x2-t`,label:`Широкая сверху + 3x2`,columns:2,rows:4,cells:[{id:`top`,row:1,column:1,columnSpan:2},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2},{id:`c41`,row:4,column:1},{id:`c42`,row:4,column:2}]},{id:`4x2-b`,label:`3x2 + широкая снизу`,columns:2,rows:4,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2},{id:`bottom`,row:4,column:1,columnSpan:2}]},{id:`4x3-t`,label:`Широкая сверху + 3x3`,columns:3,rows:4,cells:[{id:`top`,row:1,column:1,columnSpan:3},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c23`,row:2,column:3},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2},{id:`c33`,row:3,column:3},{id:`c41`,row:4,column:1},{id:`c42`,row:4,column:2},{id:`c43`,row:4,column:3}]},{id:`4x3-b`,label:`3x3 + широкая снизу`,columns:3,rows:4,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c13`,row:1,column:3},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c23`,row:2,column:3},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2},{id:`c33`,row:3,column:3},{id:`bottom`,row:4,column:1,columnSpan:3}]}]})))()}var C,w,T,E,D,O,k,A,j,M,N,P;function F(){return(F=e((()=>{C=`SmdPit`,w=`giOtGs`,T=`_57Tr0T`,E=`Tkhulr`,D=`VQlniu`,O=`wb39Kf`,k=`VrHnjN`,A=`vNV6Q2`,j=`koxYU-`,M=`k8xLa2`,N=`_5pd3Bb`,P={triggerText:C,popup:w,popupLayout:T,popupBody:E,options:D,option:O,previewCell:k,optionPreviewWrap:A,preview:j,previewPlaceholder:M,previewCompact:N}})))()}function I({preset:e,compact:t=!1}){return(0,z.jsx)(`span`,{className:r(P.preview,t&&P.previewCompact),style:y(e),"aria-hidden":`true`,"data-ui":`layout-picker-preview`,children:e.cells.map(t=>(0,z.jsx)(`span`,{className:P.previewCell,style:b(t)},`${e.id}:${t.id}`))})}function L({id:e,label:t,description:n,value:i,onChange:a,presets:c=x,disabled:d,getPresetDisabled:p,placeholder:m=B,showPlaceholder:h=!1,size:_,ariaLabel:y,className:b,triggerClassName:S,popupClassName:C,placement:w=`bottom-start`}){let T=(0,R.useRef)(null),[E,D]=(0,R.useState)(!1),O=c.findIndex(e=>e.id===i),k=O>=0?c[O]:void 0,A=k?.label??m,{activeIndex:j,context:M,floatingStyles:N,getFloatingProps:F,setReference:L,setFloating:V,setOptionRef:H,close:U,openList:W,toggleOpen:G,selectOption:K,selectActiveOption:q,handleReferenceKeyDown:J,handleFloatingKeyDown:Y,getOptionId:X,getActiveOptionId:Z}=o({options:c,selectedIndex:O,open:E,onOpenChange:D,getOptionDisabled:p,onSelect:e=>a(e.id),disabled:d,placement:w,triggerMode:`display`}),Q=l({mode:`display`,open:E,currentQuery:``,hasDisplayValue:k!==void 0,inputRef:T,openList:W,close:U,toggleOpen:G}),$=e=>{T.current=e};return(0,z.jsx)(u,{id:e,label:t,description:n,disabled:d,size:_,className:b,children:({controlId:e,labelId:n,describedBy:i})=>{let a=`${e}-listbox`;return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(f,{ref:$,rootRef:L,id:e,type:`button`,disabled:d,open:E,optionCount:c.length,label:t,placeholder:m,readOnly:!0,autoComplete:`off`,role:`combobox`,value:A,selectedValue:k?(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(I,{preset:k,compact:!0}),h?(0,z.jsx)(`span`,{className:P.triggerText,"data-ui":`layout-picker-selected-label`,children:k.label}):null]}):void 0,hasSelection:k!==void 0,showSelectedValue:k!==void 0,onToggleMouseDown:Q.handleToggleMouseDown,onToggleClick:Q.handleToggleClick,openAriaLabel:`Открыть список layout`,closeAriaLabel:`Закрыть список layout`,"aria-haspopup":`listbox`,"aria-expanded":E,"aria-controls":E?a:void 0,"aria-labelledby":n,"aria-describedby":i,"aria-autocomplete":`none`,"aria-activedescendant":E?Z(a):void 0,"aria-label":n?void 0:y??`Выбрать layout. Текущее значение: ${A}`,"data-ui":`layout-picker-trigger`,rootClassName:S,onClick:Q.handleTriggerClick,onFocus:e=>{Q.handleTriggerFocus(e.currentTarget)},onKeyDown:e=>{J(e),!e.defaultPrevented&&Q.handleTriggerKeyDown({event:e,onActivateWhenOpen:q,enableSpaceActivation:!0})}}),(0,z.jsx)(s,{open:E,context:M,floatingStyles:N,listId:a,labelId:n,descriptionId:i,activeOptionId:Z(a),setFloating:V,getFloatingProps:F,onKeyDown:Y,className:r(P.popup,C),layoutClassName:P.popupLayout,bodyClassName:P.popupBody,children:(0,z.jsx)(`div`,{className:P.options,children:c.map((e,t)=>{let n=t===O,r=t===j,i=p?.(e)??!1,o=X(a,t);return(0,z.jsx)(g,{id:o,ref:e=>H(t,e),role:`option`,"aria-selected":n,"aria-disabled":i||void 0,"aria-label":e.description?`${e.label}. ${e.description}`:e.label,className:P.option,active:r,selected:n,disabled:i,"data-ui":`layout-picker-option`,"data-selected":n||void 0,children:(0,z.jsx)(v,{tabIndex:-1,disabled:i,onMouseDown:e=>e.preventDefault(),onClick:()=>K(e),children:(0,z.jsx)(`span`,{className:P.optionPreviewWrap,children:(0,z.jsx)(I,{preset:e})})})},e.id)})})})]})}})}var R,z,B;function V(){return(V=e((()=>{R=t(),i(),_(),h(),c(),m(),a(),d(),p(),S(),F(),z=n(),B=`Выберите раскладку`,L.__docgenInfo={description:`Контрол выбора layout-пресета. Не хранит бизнес-логику содержимого ячеек.`,methods:[],displayName:`LayoutPicker`,props:{label:{required:!1,tsType:{name:`ReactNode`},description:``},description:{required:!1,tsType:{name:`string`},description:``},placeholder:{required:!1,tsType:{name:`string`},description:``,defaultValue:{value:`"Выберите раскладку"`,computed:!1}},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:``},id:{required:!1,tsType:{name:`string`},description:``},presets:{required:!1,tsType:{name:`unknown`},description:``,defaultValue:{value:`[
|
|
1
|
+
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{t}from"./react-BZJXY1be.js";import{n}from"./iframe-o7sH2IXC.js";import{a as r,i}from"./utils-tg3ibbzi.js";import{c as a,i as o,l as s,m as c,n as l,p as u,r as d,s as f,t as p,u as m}from"./usePickerTriggerController-CcK1jmDy.js";import{n as h,t as g}from"./Option-taxbFfjo.js";import{n as _,t as v}from"./CustomOptionButton-DuEz9CXt.js";function y(e,t){return{gridTemplateColumns:`repeat(${e.columns}, minmax(0, 1fr))`,gridTemplateRows:`repeat(${e.rows}, minmax(${t??0}em, 1fr))`}}function b(e){return{gridColumn:`${e.column} / span ${e.columnSpan??1}`,gridRow:`${e.row} / span ${e.rowSpan??1}`}}var x;function S(){return(S=e((()=>{x=[{id:`1x1`,label:`1x1`,columns:1,rows:1,cells:[{id:`c11`,row:1,column:1}]},{id:`1x2`,label:`1x2`,columns:2,rows:1,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2}]},{id:`1x3`,label:`1x3`,columns:3,rows:1,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c13`,row:1,column:3}]},{id:`2x1`,label:`2x1`,columns:1,rows:2,cells:[{id:`c11`,row:1,column:1},{id:`c21`,row:2,column:1}]},{id:`2x2`,label:`2x2`,columns:2,rows:2,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2}]},{id:`2x3`,label:`2x3`,columns:3,rows:2,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c13`,row:1,column:3},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c23`,row:2,column:3}]},{id:`3x1`,label:`3x1`,columns:1,rows:3,cells:[{id:`c11`,row:1,column:1},{id:`c21`,row:2,column:1},{id:`c31`,row:3,column:1}]},{id:`3x2`,label:`3x2`,columns:2,rows:3,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2}]},{id:`3x3`,label:`3x3`,columns:3,rows:3,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c13`,row:1,column:3},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c23`,row:2,column:3},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2},{id:`c33`,row:3,column:3}]},{id:`4x1`,label:`4x1`,columns:1,rows:4,cells:[{id:`c11`,row:1,column:1},{id:`c21`,row:2,column:1},{id:`c31`,row:3,column:1},{id:`c41`,row:4,column:1}]},{id:`4x2`,label:`4x2`,columns:2,rows:4,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2},{id:`c41`,row:4,column:1},{id:`c42`,row:4,column:2}]},{id:`4x3`,label:`4x3`,columns:3,rows:4,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c13`,row:1,column:3},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c23`,row:2,column:3},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2},{id:`c33`,row:3,column:3},{id:`c41`,row:4,column:1},{id:`c42`,row:4,column:2},{id:`c43`,row:4,column:3}]},{id:`2x2-l`,label:`Большая слева + две справа`,columns:2,rows:2,cells:[{id:`left`,row:1,column:1,rowSpan:2},{id:`rt`,row:1,column:2},{id:`rb`,row:2,column:2}]},{id:`2x2-r`,label:`Две слева + большая справа`,columns:2,rows:2,cells:[{id:`lt`,row:1,column:1},{id:`lb`,row:2,column:1},{id:`right`,row:1,column:2,rowSpan:2}]},{id:`2x2-t`,label:`Широкая сверху + две снизу`,columns:2,rows:2,cells:[{id:`top`,row:1,column:1,columnSpan:2},{id:`bl`,row:2,column:1},{id:`br`,row:2,column:2}]},{id:`2x2-b`,label:`Две сверху + широкая снизу`,columns:2,rows:2,cells:[{id:`tl`,row:1,column:1},{id:`tr`,row:1,column:2},{id:`bottom`,row:2,column:1,columnSpan:2}]},{id:`3x2-t`,label:`Широкая сверху + 2x2`,columns:2,rows:3,cells:[{id:`top`,row:1,column:1,columnSpan:2},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2}]},{id:`3x2-b`,label:`2x2 + широкая снизу`,columns:2,rows:3,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`bottom`,row:3,column:1,columnSpan:2}]},{id:`3x2-m`,label:`Широкая по центру`,columns:2,rows:3,cells:[{id:`tl`,row:1,column:1},{id:`tr`,row:1,column:2},{id:`middle`,row:2,column:1,columnSpan:2},{id:`bl`,row:3,column:1},{id:`br`,row:3,column:2}]},{id:`3x3-l`,label:`Большая слева + 2x3 справа`,columns:3,rows:3,cells:[{id:`left`,row:1,column:1,rowSpan:3},{id:`c12`,row:1,column:2},{id:`c13`,row:1,column:3},{id:`c22`,row:2,column:2},{id:`c23`,row:2,column:3},{id:`c32`,row:3,column:2},{id:`c33`,row:3,column:3}]},{id:`3x3-r`,label:`2x3 слева + большая справа`,columns:3,rows:3,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`right`,row:1,column:3,rowSpan:3},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2}]},{id:`3x3-t`,label:`Широкая сверху + 2x3`,columns:3,rows:3,cells:[{id:`top`,row:1,column:1,columnSpan:3},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c23`,row:2,column:3},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2},{id:`c33`,row:3,column:3}]},{id:`3x3-b`,label:`2x3 + широкая снизу`,columns:3,rows:3,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c13`,row:1,column:3},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c23`,row:2,column:3},{id:`bottom`,row:3,column:1,columnSpan:3}]},{id:`4x2-t`,label:`Широкая сверху + 3x2`,columns:2,rows:4,cells:[{id:`top`,row:1,column:1,columnSpan:2},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2},{id:`c41`,row:4,column:1},{id:`c42`,row:4,column:2}]},{id:`4x2-b`,label:`3x2 + широкая снизу`,columns:2,rows:4,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2},{id:`bottom`,row:4,column:1,columnSpan:2}]},{id:`4x3-t`,label:`Широкая сверху + 3x3`,columns:3,rows:4,cells:[{id:`top`,row:1,column:1,columnSpan:3},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c23`,row:2,column:3},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2},{id:`c33`,row:3,column:3},{id:`c41`,row:4,column:1},{id:`c42`,row:4,column:2},{id:`c43`,row:4,column:3}]},{id:`4x3-b`,label:`3x3 + широкая снизу`,columns:3,rows:4,cells:[{id:`c11`,row:1,column:1},{id:`c12`,row:1,column:2},{id:`c13`,row:1,column:3},{id:`c21`,row:2,column:1},{id:`c22`,row:2,column:2},{id:`c23`,row:2,column:3},{id:`c31`,row:3,column:1},{id:`c32`,row:3,column:2},{id:`c33`,row:3,column:3},{id:`bottom`,row:4,column:1,columnSpan:3}]}]})))()}var C,w,T,E,D,O,k,A,j,M,N,P;function F(){return(F=e((()=>{C=`SmdPit`,w=`giOtGs`,T=`_57Tr0T`,E=`Tkhulr`,D=`VQlniu`,O=`wb39Kf`,k=`VrHnjN`,A=`vNV6Q2`,j=`koxYU-`,M=`k8xLa2`,N=`_5pd3Bb`,P={triggerText:C,popup:w,popupLayout:T,popupBody:E,options:D,option:O,previewCell:k,optionPreviewWrap:A,preview:j,previewPlaceholder:M,previewCompact:N}})))()}function I({preset:e,compact:t=!1}){return(0,z.jsx)(`span`,{className:r(P.preview,t&&P.previewCompact),style:y(e),"aria-hidden":`true`,"data-ui":`layout-picker-preview`,children:e.cells.map(t=>(0,z.jsx)(`span`,{className:P.previewCell,style:b(t)},`${e.id}:${t.id}`))})}function L({id:e,label:t,description:n,value:i,onChange:a,presets:c=x,disabled:d,getPresetDisabled:p,placeholder:m=B,showPlaceholder:h=!1,size:_,ariaLabel:y,className:b,triggerClassName:S,popupClassName:C,placement:w=`bottom-start`}){let T=(0,R.useRef)(null),[E,D]=(0,R.useState)(!1),O=c.findIndex(e=>e.id===i),k=O>=0?c[O]:void 0,A=k?.label??m,{activeIndex:j,context:M,floatingStyles:N,getFloatingProps:F,setReference:L,setFloating:V,setOptionRef:H,close:U,openList:W,toggleOpen:G,selectOption:K,selectActiveOption:q,handleReferenceKeyDown:J,handleFloatingKeyDown:Y,getOptionId:X,getActiveOptionId:Z}=o({options:c,selectedIndex:O,open:E,onOpenChange:D,getOptionDisabled:p,onSelect:e=>a(e.id),disabled:d,placement:w,triggerMode:`display`}),Q=l({mode:`display`,open:E,currentQuery:``,hasDisplayValue:k!==void 0,inputRef:T,openList:W,close:U,toggleOpen:G}),$=e=>{T.current=e};return(0,z.jsx)(u,{id:e,label:t,description:n,disabled:d,size:_,className:b,children:({controlId:e,labelId:n,describedBy:i})=>{let a=`${e}-listbox`;return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(f,{ref:$,rootRef:L,id:e,type:`button`,disabled:d,open:E,optionCount:c.length,label:t,placeholder:m,readOnly:!0,autoComplete:`off`,role:`combobox`,value:A,selectedValue:k?(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(I,{preset:k,compact:!0}),h?(0,z.jsx)(`span`,{className:P.triggerText,"data-ui":`layout-picker-selected-label`,children:k.label}):null]}):void 0,hasSelection:k!==void 0,showSelectedValue:k!==void 0,onToggleMouseDown:Q.handleToggleMouseDown,onToggleClick:Q.handleToggleClick,openAriaLabel:`Открыть список layout`,closeAriaLabel:`Закрыть список layout`,"aria-haspopup":`listbox`,"aria-expanded":E,"aria-controls":E?a:void 0,"aria-labelledby":n,"aria-describedby":i,"aria-autocomplete":`none`,"aria-activedescendant":E?Z(a):void 0,"aria-label":n?void 0:y??`Выбрать layout. Текущее значение: ${A}`,"data-ui":`layout-picker-trigger`,rootClassName:S,onClick:Q.handleTriggerClick,onFocus:e=>{Q.handleTriggerFocus(e.currentTarget)},onKeyDown:e=>{J(e),!e.defaultPrevented&&Q.handleTriggerKeyDown({event:e,onActivateWhenOpen:q,enableSpaceActivation:!0})}}),(0,z.jsx)(s,{open:E,context:M,floatingStyles:N,listId:a,labelId:n,descriptionId:i,activeOptionId:Z(a),setFloating:V,getFloatingProps:F,onKeyDown:Y,className:r(P.popup,C),layoutClassName:P.popupLayout,bodyClassName:P.popupBody,children:(0,z.jsx)(`div`,{className:P.options,children:c.map((e,t)=>{let n=t===O,r=t===j,i=p?.(e)??!1,o=X(a,t);return(0,z.jsx)(g,{id:o,ref:e=>H(t,e),role:`option`,"aria-selected":n,"aria-disabled":i||void 0,"aria-label":e.description?`${e.label}. ${e.description}`:e.label,className:P.option,active:r,selected:n,disabled:i,"data-ui":`layout-picker-option`,"data-selected":n||void 0,children:(0,z.jsx)(v,{tabIndex:-1,disabled:i,onMouseDown:e=>e.preventDefault(),onClick:()=>K(e),children:(0,z.jsx)(`span`,{className:P.optionPreviewWrap,children:(0,z.jsx)(I,{preset:e})})})},e.id)})})})]})}})}var R,z,B;function V(){return(V=e((()=>{R=t(),i(),_(),h(),c(),m(),a(),d(),p(),S(),F(),z=n(),B=`Выберите раскладку`,L.__docgenInfo={description:`Контрол выбора layout-пресета. Не хранит бизнес-логику содержимого ячеек.`,methods:[],displayName:`LayoutPicker`,props:{label:{required:!1,tsType:{name:`ReactNode`},description:``},description:{required:!1,tsType:{name:`string`},description:``},placeholder:{required:!1,tsType:{name:`string`},description:``,defaultValue:{value:`"Выберите раскладку"`,computed:!1}},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:``},id:{required:!1,tsType:{name:`string`},description:``},presets:{required:!1,tsType:{name:`unknown`},description:``,defaultValue:{value:`[
|
|
2
2
|
{
|
|
3
3
|
id: "1x1",
|
|
4
4
|
label: "1x1",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{t as n}from"./react-BZJXY1be.js";import{n as r}from"./iframe-
|
|
1
|
+
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{t as n}from"./react-BZJXY1be.js";import{n as r}from"./iframe-o7sH2IXC.js";import{i,n as a,r as o,t as s}from"./LayoutPicker-w1EsRpYP.js";var c,l,u,d,f,p,m,h,g,_;function v(){return(v=e((()=>{c=`buT8ds`,l=`vDpJVR`,u=`-GMI1h`,d=`Xgkzn9`,f=`X--lo-`,p=`W5rEjx`,m=`BgilL7`,h=`ALGrVl`,g=`IrqK1d`,_={canvas:c,toolbar:l,summary:u,summaryItem:d,summaryValue:f,muted:p,layoutPreview:m,layoutCell:h,layoutCellTitle:g}})))()}var y=t({Controlled:()=>A,CustomPresets:()=>M,Disabled:()=>F,DisabledPresets:()=>N,InToolbar:()=>P,Placeholder:()=>j,__namedExportsOrder:()=>I,default:()=>k});function b(e,t){return t.find(t=>t.id===e)}function x({value:e,presets:t}){let n=b(e,t);return(0,T.jsxs)(`div`,{className:_.summary,"aria-live":`polite`,children:[(0,T.jsxs)(`div`,{className:_.summaryItem,children:[(0,T.jsx)(`span`,{children:`ID`}),(0,T.jsx)(`span`,{className:_.summaryValue,children:e||`не выбрано`})]}),(0,T.jsxs)(`div`,{className:_.summaryItem,children:[(0,T.jsx)(`span`,{children:`Название`}),(0,T.jsx)(`span`,{className:_.summaryValue,children:n?.label??`Layout не выбран`})]}),(0,T.jsxs)(`div`,{className:_.summaryItem,children:[(0,T.jsx)(`span`,{children:`Сетка`}),(0,T.jsx)(`span`,{className:_.summaryValue,children:n?`${n.columns} x ${n.rows}`:`нет данных`})]}),(0,T.jsxs)(`div`,{className:_.summaryItem,children:[(0,T.jsx)(`span`,{children:`Ячеек`}),(0,T.jsx)(`span`,{className:_.summaryValue,children:n?.cells.length??0})]})]})}function S({value:e,presets:t}){let n=b(e,t);if(!n)return null;let r=n.columns,i=n.rows,a=n.cells;return(0,T.jsx)(`div`,{className:_.layoutPreview,style:{gridTemplateColumns:`repeat(${r}, minmax(0, 1fr))`,gridTemplateRows:`repeat(${i}, minmax(0, 1fr))`},children:a.map((e,t)=>(0,T.jsxs)(`div`,{className:_.layoutCell,style:{gridColumn:`${e.column} / span ${e.columnSpan}`,gridRow:`${e.row} / span ${e.rowSpan}`},children:[(0,T.jsxs)(`span`,{className:_.layoutCellTitle,children:[`Область `,t+1]}),(0,T.jsxs)(`span`,{className:_.muted,children:[`Колонка `,e.column,`, строка `,e.row,`; span `,e.columnSpan,` x `,e.rowSpan]})]},e.id))})}function C(){let[e,t]=(0,w.useState)(`1x2`);return(0,T.jsxs)(`div`,{className:_.canvas,children:[(0,T.jsx)(`div`,{className:_.toolbar,children:(0,T.jsx)(s,{label:`Layout панели`,value:e,onChange:t,ariaLabel:`Выбрать layout панели`})}),(0,T.jsx)(x,{value:e,presets:o}),(0,T.jsx)(S,{value:e,presets:o})]})}var w,T,E,D,O,k,A,j,M,N,P,F,I;function L(){return(L=e((()=>{w=n(),i(),a(),v(),T=r(),{useArgs:E}=__STORYBOOK_MODULE_PREVIEW_API__,{fn:D}=__STORYBOOK_MODULE_TEST__,O=[{id:`dashboard-summary`,label:`Сводка + детали`,description:`Один широкий блок сверху и две области детализации снизу.`,columns:2,rows:2,cells:[{id:`summary`,column:1,columnSpan:2,row:1,rowSpan:1},{id:`left-detail`,column:1,columnSpan:1,row:2,rowSpan:1},{id:`right-detail`,column:2,columnSpan:1,row:2,rowSpan:1}]},{id:`dashboard-main-aside`,label:`Основной блок + сайдбар`,description:`Большая рабочая область слева и вертикальная колонка справа.`,columns:3,rows:2,cells:[{id:`main`,column:1,columnSpan:2,row:1,rowSpan:2},{id:`aside-top`,column:3,columnSpan:1,row:1,rowSpan:1},{id:`aside-bottom`,column:3,columnSpan:1,row:2,rowSpan:1}]},{id:`dashboard-quad`,label:`Четыре равных блока`,description:`Плотная сетка для сравнения нескольких независимых виджетов.`,columns:2,rows:2,cells:[{id:`top-left`,column:1,columnSpan:1,row:1,rowSpan:1},{id:`top-right`,column:2,columnSpan:1,row:1,rowSpan:1},{id:`bottom-left`,column:1,columnSpan:1,row:2,rowSpan:1},{id:`bottom-right`,column:2,columnSpan:1,row:2,rowSpan:1}]}],k={title:`Shared/UI/LayoutPicker`,component:s,args:{label:`Layout панели`,description:`Выберите схему размещения областей.`,value:o[0].id,onChange:D(),presets:o,disabled:!1,placeholder:`Выберите layout`,showPlaceholder:!1,ariaLabel:`Выбрать layout`,placement:`bottom-start`},parameters:{atomicCanvas:!0,layout:`padded`,docs:{description:{component:`Контролируемый выбор layout-пресета со схематичным превью. Компонент хранит только UI-состояние popup и возвращает наружу ID выбранного пресета.`}}},argTypes:{id:{description:"ID кнопки выбора. Если не передан, компонент создаёт стабильный `useId`.",control:`text`},label:{description:`Заголовок поля.`,control:`text`},description:{description:`Описание под заголовком.`,control:`text`},value:{description:`ID текущего выбранного layout-пресета.`,control:`text`},onChange:{description:`Вызывается с ID выбранного layout-пресета.`,control:!1},presets:{description:"Список layout-пресетов. По умолчанию используется `DEFAULT_LAYOUT_PICKER_PRESETS`.",control:!1},disabled:{description:`Блокирует кнопку выбора и открытие popup.`,control:`boolean`},getPresetDisabled:{description:`Позволяет заблокировать отдельные пресеты внутри popup.`,control:!1},placeholder:{description:"Текст, который можно явно показать рядом с превью через `showPlaceholder`.",control:`text`},showPlaceholder:{description:"Показывает рядом с превью именно строку `placeholder`. По умолчанию trigger содержит только иконку.",control:`boolean`},ariaLabel:{description:`Доступное имя trigger-кнопки. Если не передано, строится из текущего значения.`,control:`text`},size:{description:"Размер поля из общего `UiBaseProps`.",control:`select`,options:[`xs`,`sm`,`md`,`lg`,`xl`]},className:{description:`Дополнительный CSS-класс корневого контейнера.`,control:`text`},triggerClassName:{description:`Дополнительный CSS-класс trigger-кнопки.`,control:`text`},popupClassName:{description:`Дополнительный CSS-класс popup.`,control:`text`},placement:{description:`Позиционирование popup относительно trigger.`,control:`select`,options:[`bottom-start`,`bottom-end`,`top-start`,`top-end`,`right-start`,`left-start`]}}},A={args:{value:`2x1`},name:`Контролируемый выбор`,render:function(e){let[,t]=E(),n=e.presets??o;return(0,T.jsxs)(`div`,{className:_.canvas,children:[(0,T.jsx)(s,{...e,presets:n,onChange:n=>{e.onChange(n),t({value:n})}}),(0,T.jsx)(x,{value:e.value??``,presets:n})]})}},j={name:`Без выбранного значения`,render:e=>{let[t,n]=(0,w.useState)(``),r=e.presets??o;return(0,T.jsxs)(`div`,{className:_.canvas,children:[(0,T.jsx)(s,{...e,value:t,presets:r,placeholder:`Layout ещё не выбран`,showPlaceholder:!0,onChange:t=>{n(t),e.onChange(t)}}),(0,T.jsx)(x,{value:t,presets:r})]})},args:{value:``}},M={name:`Кастомные пресеты`,render:e=>{let[t,n]=(0,w.useState)(O[0].id);return(0,T.jsxs)(`div`,{className:_.canvas,children:[(0,T.jsx)(s,{...e,value:t,presets:O,ariaLabel:`Выбрать layout дашборда`,onChange:t=>{n(t),e.onChange(t)}}),(0,T.jsx)(x,{value:t,presets:O}),(0,T.jsx)(S,{value:t,presets:O})]})},args:{value:O[0].id,presets:O}},N={name:`Заблокированные пресеты`,render:e=>{let[t,n]=(0,w.useState)(`1x1`);return(0,T.jsxs)(`div`,{className:_.canvas,children:[(0,T.jsx)(s,{...e,value:t,getPresetDisabled:e=>e.id===`1x2`||e.id===`2x2-l`,onChange:t=>{n(t),e.onChange(t)}}),(0,T.jsx)(`div`,{className:_.muted,children:`Пресеты с двумя колонками в этом сценарии недоступны.`}),(0,T.jsx)(x,{value:t,presets:o})]})}},P={name:`В панели настройки`,render:()=>(0,T.jsx)(C,{})},F={name:`Заблокированный контрол`,args:{disabled:!0,value:`1x2`}},A.parameters={...A.parameters,docs:{...A.parameters?.docs,source:{originalSource:`{
|
|
2
2
|
args: {
|
|
3
3
|
value: "2x1"
|
|
4
4
|
},
|