@ryuzaki13/react-foundation-ui 1.9.2 → 1.9.3
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/dist/advanced-search/index.js +3 -3
- package/dist/base-table/index.js +1 -1
- package/dist/chunks/{TextEditorLexicalClient-DUWQNLiO.js → TextEditorLexicalClient-B7Y6-3rL.js} +2 -2
- package/dist/chunks/{TextEditorLexicalClient-DUWQNLiO.js.map → TextEditorLexicalClient-B7Y6-3rL.js.map} +1 -1
- package/dist/chunks/{base-table-BuH1DvPd.js → base-table-8aMlH6XB.js} +2 -2
- package/dist/chunks/{base-table-BuH1DvPd.js.map → base-table-8aMlH6XB.js.map} +1 -1
- package/dist/chunks/{misc-aGQBhywJ.js → misc-Csi68Etw.js} +38 -22
- package/dist/chunks/misc-Csi68Etw.js.map +1 -0
- package/dist/chunks/{modal-BIrjOzmE.js → modal-_og-L6rt.js} +2 -2
- package/dist/chunks/{modal-BIrjOzmE.js.map → modal-_og-L6rt.js.map} +1 -1
- package/dist/chunks/picker-DO9HFqJV.js.map +1 -1
- package/dist/chunks/{table-DLkfAmSZ.js → table-DQmVlKDI.js} +2 -2
- package/dist/chunks/{table-DLkfAmSZ.js.map → table-DQmVlKDI.js.map} +1 -1
- package/dist/expandable-action-panel/index.js +1 -1
- package/dist/image/index.js +1 -1
- package/dist/list/index.js +1 -1
- package/dist/misc/Message.d.ts +3 -2
- package/dist/misc/Message.d.ts.map +1 -1
- package/dist/misc/NoData.d.ts +3 -1
- package/dist/misc/NoData.d.ts.map +1 -1
- package/dist/misc/Notice.d.ts +3 -2
- package/dist/misc/Notice.d.ts.map +1 -1
- package/dist/misc/index.js +1 -1
- package/dist/modal/index.js +1 -1
- package/dist/simple-table/index.js +1 -1
- package/dist/styles.css +1 -1
- package/dist/table/index.js +1 -1
- package/dist/tabs/index.js +1 -1
- package/dist/text/Text.d.ts +3 -2
- package/dist/text/Text.d.ts.map +1 -1
- package/dist/text/index.js +20 -15
- package/dist/text/index.js.map +1 -1
- package/dist/text-editor/index.js +2 -2
- package/dist/tree-table/index.js +1 -1
- package/package.json +1 -1
- package/storybook-static/assets/{Badge-D-pmeoPo.js → Badge-C1KbJFb6.js} +1 -1
- package/storybook-static/assets/{Badge.stories-CGi08yx3.js → Badge.stories-CMV5YKMU.js} +1 -1
- package/storybook-static/assets/{BadgeList-DHWViMDX.js → BadgeList-Dp3AYrwv.js} +1 -1
- package/storybook-static/assets/{Button-pdfMd37D.js → Button-B2I2pMcy.js} +1 -1
- package/storybook-static/assets/{Button-CLqpsfhx.js → Button-CcbXFAnn.js} +1 -1
- package/storybook-static/assets/{Button.stories-BZVTOvJA.js → Button.stories-BzQjIelZ.js} +1 -1
- package/storybook-static/assets/{CalendarView-CzaJWzmi.js → CalendarView-BjM9oIc_.js} +1 -1
- package/storybook-static/assets/{CheckBox-64ai70iw.js → CheckBox-BIVJcOqm.js} +1 -1
- package/storybook-static/assets/{CheckBox-DgOTdmRk.js → CheckBox-DX62RRB8.js} +1 -1
- package/storybook-static/assets/{CheckBox.stories-U8N-9vsz.js → CheckBox.stories-CDVi7HoJ.js} +1 -1
- package/storybook-static/assets/{Color-6AOWCN3U-D_VqL99f.js → Color-6AOWCN3U-BQUTqYuX.js} +1 -1
- package/storybook-static/assets/{ContextMenu-I9FsjomS.js → ContextMenu-D1cYiYLX.js} +1 -1
- package/storybook-static/assets/{ContextMenu-CyRQXvyS.js → ContextMenu-DXdSsiE4.js} +1 -1
- package/storybook-static/assets/{ContextMenu.stories-LDSLuKOK.js → ContextMenu.stories-CuHmimS8.js} +1 -1
- package/storybook-static/assets/{CustomOptionButton-Cqnf6bEq.js → CustomOptionButton-7RqaHQyF.js} +1 -1
- package/storybook-static/assets/{DateInput-DShthvqb.js → DateInput-DiEqHlzH.js} +1 -1
- package/storybook-static/assets/{DateInput-BmaD-EQG.js → DateInput-itc81ORI.js} +1 -1
- package/storybook-static/assets/{DateInput.stories-Duzd0cwU.js → DateInput.stories-BKinQKwP.js} +1 -1
- package/storybook-static/assets/{DateRangePresetSelect-Dio3_xDJ.js → DateRangePresetSelect-CXftu_8X.js} +1 -1
- package/storybook-static/assets/{DateRangePresetSelect-COUmb2Vx.js → DateRangePresetSelect-DPcNI2ev.js} +1 -1
- package/storybook-static/assets/{DateRangePresetSelect.stories-Cxu_aV-0.js → DateRangePresetSelect.stories-C6q-yBU_.js} +1 -1
- package/storybook-static/assets/{Detail-DsCqQZkO.js → Detail-TKBhJXM1.js} +1 -1
- package/storybook-static/assets/{Detail.stories-XGcjknqU.js → Detail.stories-DrXBGm1b.js} +1 -1
- package/storybook-static/assets/{Dialog-BRT9AsDt.js → Dialog-CRne1UkS.js} +1 -1
- package/storybook-static/assets/{Dialog-C7ITtEN6.js → Dialog-CllCzJ5n.js} +1 -1
- package/storybook-static/assets/{Dialog.stories-B7IrBY97.js → Dialog.stories-Dr3E6XaP.js} +1 -1
- package/storybook-static/assets/{Disclosure-DzteG75s.js → Disclosure-CEuBeKUQ.js} +1 -1
- package/storybook-static/assets/{Disclosure.stories-_QqDtaTs.js → Disclosure.stories-BSvAGMk4.js} +1 -1
- package/storybook-static/assets/{DisclosureGroup-Bbf9fxj3.js → DisclosureGroup-CJs0KMvV.js} +1 -1
- package/storybook-static/assets/{DocsRenderer-JROSPFPF-CjtyNQHE.js → DocsRenderer-JROSPFPF-Ck6uvxG3.js} +1 -1
- package/storybook-static/assets/{DropZone-DUMdU0YX.js → DropZone-BiG2d1OF.js} +1 -1
- package/storybook-static/assets/{DropZone-8PWjNWl_.js → DropZone-DpsMRYuH.js} +1 -1
- package/storybook-static/assets/{DropZone.stories-V8Ta1BkI.js → DropZone.stories-C3txCzNd.js} +1 -1
- package/storybook-static/assets/{DropdownMenu-CXxRq5UP.js → DropdownMenu-BxLAvF2W.js} +1 -1
- package/storybook-static/assets/{ExpandableActionPanel-fXU-PRSP.js → ExpandableActionPanel-GrT_b2Du.js} +1 -1
- package/storybook-static/assets/{ExpandableActionPanel.stories-D3x_tJbT.js → ExpandableActionPanel.stories-ZjZaIthK.js} +1 -1
- package/storybook-static/assets/{Flex-DIWmrprD.js → Flex-Cv3Qmndv.js} +1 -1
- package/storybook-static/assets/{Flex.stories-Bu9jy9UK.js → Flex.stories-CbGZJhgz.js} +1 -1
- package/storybook-static/assets/{FloatingPopover-BBuuq7e_.js → FloatingPopover-D4NxEU-n.js} +1 -1
- package/storybook-static/assets/{FormattedTableCell-DRS51nVL.js → FormattedTableCell-DQOSRRXD.js} +1 -1
- package/storybook-static/assets/{Grid-CoBEHhHG.js → Grid-CoCaqqJf.js} +1 -1
- package/storybook-static/assets/{Grid.stories-BLyYegDD.js → Grid.stories-V3BXNQmF.js} +1 -1
- package/storybook-static/assets/{ImageCropper.stories-WQblLfwk.js → ImageCropper.stories-CHcshTek.js} +1 -1
- package/storybook-static/assets/{ImageRenderer-CvEiLs3n.js → ImageRenderer-qHPGMl-l.js} +1 -1
- package/storybook-static/assets/{ImageRenderer.stories-H3QxvuDI.js → ImageRenderer.stories-O1ZPo7dd.js} +1 -1
- package/storybook-static/assets/{ImageView.stories-CWc9bhgt.js → ImageView.stories-CbrRE1YO.js} +1 -1
- package/storybook-static/assets/{ImageViewer.stories-bfoT1kl7.js → ImageViewer.stories-CbdAdVl2.js} +2 -2
- package/storybook-static/assets/{ImageViewerRuntime-mq_3W9h-.js → ImageViewerRuntime-DnppwdQ8.js} +1 -1
- package/storybook-static/assets/{Input-BQD61t3p.js → Input-BW_KIjON.js} +1 -1
- package/storybook-static/assets/{Input-nR9--_Sn.js → Input-Eg9_PEo7.js} +1 -1
- package/storybook-static/assets/{Input.stories-BJQZh6Zg.js → Input.stories-CifVnhP6.js} +1 -1
- package/storybook-static/assets/{InputDateTime-CUaeH-mw.js → InputDateTime-d2w9tw72.js} +1 -1
- package/storybook-static/assets/{InputDateTime.stories-Lbh2ZYk_.js → InputDateTime.stories-CbdBjQVo.js} +1 -1
- package/storybook-static/assets/{InputFile-R856c9Zd.js → InputFile-CCFrrpJv.js} +1 -1
- package/storybook-static/assets/{InputFile-CPdH47Ch.js → InputFile-DL7GKeGm.js} +1 -1
- package/storybook-static/assets/{InputFile.stories-C3AVgG7G.js → InputFile.stories-Cvz70MX3.js} +1 -1
- package/storybook-static/assets/{InputFiles-C2p5u9Vb.js → InputFiles-1u5FHnaN.js} +1 -1
- package/storybook-static/assets/{InputFiles-CSoMNZh8.js → InputFiles-DKoTbSyC.js} +1 -1
- package/storybook-static/assets/{InputFiles.stories-DMDmCAMp.js → InputFiles.stories-CW8enyCo.js} +1 -1
- package/storybook-static/assets/{InputFilesList-DZaIPmUx.js → InputFilesList-FAb5sH37.js} +1 -1
- package/storybook-static/assets/{InputImage-2-qtCi5r.js → InputImage-DMEXLyoX.js} +1 -1
- package/storybook-static/assets/{InputImage-DOKRKrNo.js → InputImage-WuRkrpds.js} +1 -1
- package/storybook-static/assets/{InputImage.stories-BDEsw03m.js → InputImage.stories-BdP_AhB9.js} +1 -1
- package/storybook-static/assets/{InteractiveComponents-Ce0tiOzU.js → InteractiveComponents-BMQYO7fl.js} +1 -1
- package/storybook-static/assets/{InteractiveComponents.stories-BPVx0Juv.js → InteractiveComponents.stories-DJirNn_h.js} +1 -1
- package/storybook-static/assets/{LayoutPicker-DW0QJyG3.js → LayoutPicker-BZAwV4lf.js} +1 -1
- package/storybook-static/assets/{LayoutPicker-BVWJI_qE.js → LayoutPicker-C0oo_b-r.js} +1 -1
- package/storybook-static/assets/{LayoutPicker.stories-DXo-xHhW.js → LayoutPicker.stories-C8BzcbMh.js} +1 -1
- package/storybook-static/assets/{Listbox-BK7sooIj.js → Listbox-CaEVOoYD.js} +1 -1
- package/storybook-static/assets/{Listbox-CGf42o5R.js → Listbox-DbnMN1m2.js} +1 -1
- package/storybook-static/assets/{Listbox.stories-BjUhs6uw.js → Listbox.stories-BkEYOlwL.js} +1 -1
- package/storybook-static/assets/{Modal-B-w0Qn5z.js → Modal-DjYwqol2.js} +1 -1
- package/storybook-static/assets/{Modal.stories-D80hKY4h.js → Modal.stories-BchGkw0K.js} +1 -1
- package/storybook-static/assets/{ModalManagerProvider-Ct68PEUb.js → ModalManagerProvider-DTKcyL8t.js} +1 -1
- package/storybook-static/assets/{MultiSelect-C3K-rlW1.js → MultiSelect-Ddsn1hXj.js} +1 -1
- package/storybook-static/assets/{MultiSelect-D3fu3Rng.js → MultiSelect-Dz5E5Pbf.js} +1 -1
- package/storybook-static/assets/{MultiSelect.stories-Do-7Qoxr.js → MultiSelect.stories-DEIKHwy1.js} +1 -1
- package/storybook-static/assets/NoData-CKGcddxk.js +1 -0
- package/storybook-static/assets/{NotificationsHost-CiZ7_lMe.js → NotificationsHost-CEfH53W5.js} +1 -1
- package/storybook-static/assets/{NotificationsHost.stories-5alDu7ay.js → NotificationsHost.stories-MTxFeVoy.js} +1 -1
- package/storybook-static/assets/{ODataMultiSelect-TC_akCg8.js → ODataMultiSelect-CvQSOety.js} +1 -1
- package/storybook-static/assets/{ODataMultiSelect.stories-Cb_JB_ue.js → ODataMultiSelect.stories-DtCodUVW.js} +1 -1
- package/storybook-static/assets/{ODataSelect-CGNcCdVe.js → ODataSelect-C5RMxZjc.js} +1 -1
- package/storybook-static/assets/{ODataSelect.stories-_-j3A_ww.js → ODataSelect.stories-CZ9mL0_j.js} +1 -1
- package/storybook-static/assets/{ODataTreeMultiSelect-BQHB3YBL.js → ODataTreeMultiSelect-0fCn87D6.js} +1 -1
- package/storybook-static/assets/{ODataTreeMultiSelect.stories-BjyDKFRL.js → ODataTreeMultiSelect.stories-DQDCllvF.js} +1 -1
- package/storybook-static/assets/{ODataTreeSelect-YitQpTSy.js → ODataTreeSelect-Bzfdon5Z.js} +1 -1
- package/storybook-static/assets/{ODataTreeSelect.stories-U_KZEI0_.js → ODataTreeSelect.stories-D5scx29T.js} +1 -1
- package/storybook-static/assets/{OneStepScroller-fmozAYPt.js → OneStepScroller-COlpXyui.js} +1 -1
- package/storybook-static/assets/Option-DXh7BISz.css +1 -0
- package/storybook-static/assets/{Option-DQEGVUze.js → Option-wQK2X0Kl.js} +1 -1
- package/storybook-static/assets/{OptionButton-D3a4dDti.js → OptionButton-C_lBxJnN.js} +1 -1
- package/storybook-static/assets/{PeriodSelect-BMbCuQBO.js → PeriodSelect-DgineFIH.js} +1 -1
- package/storybook-static/assets/{PeriodSelect-dA7-_4hS.js → PeriodSelect-heOd8pO8.js} +1 -1
- package/storybook-static/assets/{PeriodSelect.stories-DY9NOupa.js → PeriodSelect.stories-uiPmpg5A.js} +1 -1
- package/storybook-static/assets/{PickerTriggerActions-wPhMVgnp.js → PickerTriggerActions-B567GsTL.js} +1 -1
- package/storybook-static/assets/{Popover-B8ST0SUU.js → Popover-DGySGg9z.js} +1 -1
- package/storybook-static/assets/{Popover-BNkB29Uc.js → Popover-kJOIlyWU.js} +1 -1
- package/storybook-static/assets/{Popover.stories-DnX18DkD.js → Popover.stories-Cv154XF5.js} +1 -1
- package/storybook-static/assets/{PresetRangeDateInput-CM_Xz8Qo.js → PresetRangeDateInput-DvH7YmsA.js} +1 -1
- package/storybook-static/assets/{PresetRangeDateInput-CK8-W11l.js → PresetRangeDateInput-VSoCHhMT.js} +1 -1
- package/storybook-static/assets/{PresetRangeDateInput.stories-C02Fn-pY.js → PresetRangeDateInput.stories-CGlbX94O.js} +1 -1
- package/storybook-static/assets/{PresetSelect-CYw8Ajdz.js → PresetSelect-BcMVurGB.js} +1 -1
- package/storybook-static/assets/{README-Cw47cn6N.js → README-9b6mmXZa.js} +1 -1
- package/storybook-static/assets/{README-CrbuX9mD.js → README-AHbsuUw8.js} +1 -1
- package/storybook-static/assets/{README-D_ikFGHO.js → README-B-DLLxyh.js} +1 -1
- package/storybook-static/assets/{README-Sf9DJLUa.js → README-BOK-j9I7.js} +1 -1
- package/storybook-static/assets/{README-DbQzxhNi.js → README-BV3c8FDT.js} +1 -1
- package/storybook-static/assets/{README-CwhpJ-9r.js → README-B_nDVUsP.js} +1 -1
- package/storybook-static/assets/{README-DxQ-OzBi.js → README-B_t_BiM-.js} +1 -1
- package/storybook-static/assets/{README-C38qTYrj.js → README-Ba5xoJYB.js} +1 -1
- package/storybook-static/assets/{README-EZlYpyPx.js → README-Bdd3XZWr.js} +1 -1
- package/storybook-static/assets/{README-MBWZXJ-M.js → README-Bi4zPzN1.js} +1 -1
- package/storybook-static/assets/{README-BeK_M3wg.js → README-Blg3xPoc.js} +1 -1
- package/storybook-static/assets/{README-DEjCt9ub.js → README-BoZyIQir.js} +1 -1
- package/storybook-static/assets/{README-CrWGrjg7.js → README-BtCpxXgd.js} +1 -1
- package/storybook-static/assets/{README-DRp42BOe.js → README-Bu7OMSUf.js} +1 -1
- package/storybook-static/assets/{README-CsqzAG6g.js → README-C1Of7Jrs.js} +1 -1
- package/storybook-static/assets/{README-C42MsSy4.js → README-C2PSAh21.js} +1 -1
- package/storybook-static/assets/{README-lr_eSJ7J.js → README-CAiHTGCl.js} +1 -1
- package/storybook-static/assets/{README-D04Q8CyG.js → README-CC4dIKt_.js} +1 -1
- package/storybook-static/assets/{README-DLymT6K9.js → README-CCOdpywR.js} +1 -1
- package/storybook-static/assets/{README-C5FjLxuA.js → README-CEaGnPRF.js} +1 -1
- package/storybook-static/assets/{README-C0CGDnH2.js → README-CNnubKZC.js} +1 -1
- package/storybook-static/assets/{README-BBGOcI6a.js → README-CUlzrvUa.js} +1 -1
- package/storybook-static/assets/{README-DMSOqfs6.js → README-CVSfzXX9.js} +1 -1
- package/storybook-static/assets/{README-DoYBJDYk.js → README-CXLCa134.js} +1 -1
- package/storybook-static/assets/{README-x21IHapv.js → README-C_F5QX-F.js} +1 -1
- package/storybook-static/assets/{README-BNpVUgaA.js → README-CeK7FNh1.js} +1 -1
- package/storybook-static/assets/{README-Bl7A8sLU.js → README-CukqSL-4.js} +1 -1
- package/storybook-static/assets/{README-YXqHYgeE.js → README-DAYyheBK.js} +1 -1
- package/storybook-static/assets/{README-BwX7sPxt.js → README-DBYrpsH8.js} +1 -1
- package/storybook-static/assets/{README-ZtiJuf9C.js → README-DCP8j0A2.js} +1 -1
- package/storybook-static/assets/{README-RwM2St3v.js → README-DKaFdYbR.js} +1 -1
- package/storybook-static/assets/{README-CnsDMW_3.js → README-DMZC3tWr.js} +1 -1
- package/storybook-static/assets/{README-fJYxw9zP.js → README-DMvggye-.js} +1 -1
- package/storybook-static/assets/{README-u_QI5_--.js → README-DSNmiIfN.js} +1 -1
- package/storybook-static/assets/{README-By1W0ZcJ.js → README-DVpSJuVZ.js} +1 -1
- package/storybook-static/assets/{README-DQU4h0Nq.js → README-DXqBns-d.js} +1 -1
- package/storybook-static/assets/{README-BejEQLjP.js → README-DY3q19ya.js} +1 -1
- package/storybook-static/assets/{README-D9MXBP9E.js → README-DYgLLZOR.js} +1 -1
- package/storybook-static/assets/{README-CCFtp9RM.js → README-Dbmtpfl0.js} +1 -1
- package/storybook-static/assets/{README-B6dLU45s.js → README-DhImd5pH.js} +1 -1
- package/storybook-static/assets/{README-bJfez2lF.js → README-DiOpga3T.js} +1 -1
- package/storybook-static/assets/{README-OD6zGNzi.js → README-Dj6ep9U_.js} +1 -1
- package/storybook-static/assets/{README-tFtk5xH1.js → README-DjMYJYhe.js} +1 -1
- package/storybook-static/assets/{README-OzTTLW9p.js → README-FwXp4Pjy.js} +1 -1
- package/storybook-static/assets/{README-CbxEORXy.js → README-MP9oEhDT.js} +1 -1
- package/storybook-static/assets/{README-BoHCqxaf.js → README-RFcuJdu5.js} +1 -1
- package/storybook-static/assets/{README-DHtpm6Us.js → README-T0jrvm8P.js} +1 -1
- package/storybook-static/assets/{README-BT0c1NNT.js → README-TEnjnkJ8.js} +1 -1
- package/storybook-static/assets/{README-BkDwEqx6.js → README-_kJbfY6a.js} +1 -1
- package/storybook-static/assets/{README-CgASsgK0.js → README-kgYtNaRd.js} +1 -1
- package/storybook-static/assets/{README-CRcOsdo_.js → README-w1uOSyJu.js} +1 -1
- package/storybook-static/assets/{README-BpYNB7d3.js → README-y0FYYKqJ.js} +1 -1
- package/storybook-static/assets/{RadioButton-BKwZoUg6.js → RadioButton-BQKjKxAe.js} +1 -1
- package/storybook-static/assets/{RadioButton-vgz02PM1.js → RadioButton-o4av6A8a.js} +1 -1
- package/storybook-static/assets/{RadioButton.stories-Bc5VPCMi.js → RadioButton.stories-DcSQNaXN.js} +1 -1
- package/storybook-static/assets/{RadioGroup-B98cXZhV.js → RadioGroup-8EH0MZWC.js} +1 -1
- package/storybook-static/assets/{RadioGroup-ByUKqLsY.js → RadioGroup-C10vUMZk.js} +1 -1
- package/storybook-static/assets/{RadioGroup.stories-C8uNFxeM.js → RadioGroup.stories-BqS79JtE.js} +1 -1
- package/storybook-static/assets/{Scrollable-vBVn7JHY.js → Scrollable-ddtSKo90.js} +1 -1
- package/storybook-static/assets/{Select-BGJrUMYq.js → Select-B5ShJKKc.js} +1 -1
- package/storybook-static/assets/{Select-CADgLOjR.js → Select-BY6ORdvS.js} +1 -1
- package/storybook-static/assets/{Select.stories-CwLYe9m-.js → Select.stories-BSF0Wnux.js} +1 -1
- package/storybook-static/assets/{SerializableSelect-BYjCjotc.js → SerializableSelect-CS19oFlz.js} +1 -1
- package/storybook-static/assets/{SerializableSelect.stories-DlHsqn5K.js → SerializableSelect.stories-BPmCTl6L.js} +1 -1
- package/storybook-static/assets/{SingleDateTimeInput-C4_BV5HM.js → SingleDateTimeInput-BEJu-R1m.js} +1 -1
- package/storybook-static/assets/{SingleDateTimeInput-CDsgpkvr.js → SingleDateTimeInput-CTfMcncR.js} +1 -1
- package/storybook-static/assets/{SingleDateTimeInput.stories-Bb06myx4.js → SingleDateTimeInput.stories-CYxHrxxd.js} +1 -1
- package/storybook-static/assets/{Slider-Gp7yCf2B.js → Slider-BeAKJm-a.js} +1 -1
- package/storybook-static/assets/{Slider-DNBHMBBN.js → Slider-DVzdB5yx.js} +1 -1
- package/storybook-static/assets/{Slider.stories-Qw74zDOU.js → Slider.stories-K2VPtjGi.js} +1 -1
- package/storybook-static/assets/{SliderInput-m6qlhd9T.js → SliderInput-ApivV4in.js} +1 -1
- package/storybook-static/assets/{SliderInput-DIDd4fvb.js → SliderInput-BAfXIzNG.js} +1 -1
- package/storybook-static/assets/{SliderInput.stories-EYZY_whc.js → SliderInput.stories-PcR7jo6v.js} +1 -1
- package/storybook-static/assets/{Sortable-DFEyDyz5.js → Sortable-DiswLDg5.js} +1 -1
- package/storybook-static/assets/{Sortable.stories-BAlAYFiY.js → Sortable.stories-fsl44zmS.js} +1 -1
- package/storybook-static/assets/{Splitter-SOZZvRNs.js → Splitter-Ct-47bE7.js} +1 -1
- package/storybook-static/assets/{Splitter.stories-Cha1ZWaK.js → Splitter.stories-Bz79Lc6H.js} +1 -1
- package/storybook-static/assets/{StateSelect-BJ4hoYZH.js → StateSelect-BIhp7x_B.js} +1 -1
- package/storybook-static/assets/{StateSelect-Dslj_l8w.js → StateSelect-XihqGd4j.js} +1 -1
- package/storybook-static/assets/{StateSelect.stories-DRE5Il6q.js → StateSelect.stories-C3rxpGIl.js} +1 -1
- package/storybook-static/assets/{StringToggle.stories-CfSHZnUU.js → StringToggle.stories-CxLLcq91.js} +1 -1
- package/storybook-static/assets/{Switch-DxWpxu31.js → Switch-CrtYGIaI.js} +1 -1
- package/storybook-static/assets/{Switch-Do7XEsXM.js → Switch-DNR82Wwo.js} +1 -1
- package/storybook-static/assets/{Switch.stories-BLl5AvS5.js → Switch.stories-BPDQ5GN3.js} +1 -1
- package/storybook-static/assets/{Table-CoY0m4yw.js → Table-cJR7vlNL.js} +1 -1
- package/storybook-static/assets/{Table.stories-DVEMEqsC.js → Table.stories-DiKmKEFg.js} +1 -1
- package/storybook-static/assets/{Tabs-BgzEc29K.js → Tabs-m055f4P9.js} +1 -1
- package/storybook-static/assets/{Tabs.stories-DhYUDtCq.js → Tabs.stories-CDKX0533.js} +1 -1
- package/storybook-static/assets/{TabsBox-C92mdkQB.js → TabsBox-C7XivHOT.js} +1 -1
- package/storybook-static/assets/{TagInput-1NRpS8Ri.js → TagInput-9CihyZlQ.js} +1 -1
- package/storybook-static/assets/{TagInput.stories-6n-W9h6r.js → TagInput.stories-Dum4KJFn.js} +1 -1
- package/storybook-static/assets/Text-CCM2eK9R.js +1 -0
- package/storybook-static/assets/{Textarea-BswJHD2r.js → Textarea-C21w8uCg.js} +1 -1
- package/storybook-static/assets/{Textarea-ONyCScQY.js → Textarea-DQZ24GYg.js} +1 -1
- package/storybook-static/assets/{Textarea.stories-DERMMBc9.js → Textarea.stories-yFLMuluS.js} +1 -1
- package/storybook-static/assets/{TimePanel-Coq1CIm5.js → TimePanel-Bogchh-c.js} +1 -1
- package/storybook-static/assets/{TimePanel.stories-CFprcZqB.js → TimePanel.stories-BlP2rln-.js} +1 -1
- package/storybook-static/assets/{Toggle-Cdow7TBH.js → Toggle-C3ZDjRb5.js} +1 -1
- package/storybook-static/assets/{Toggle-DSkDPzCE.js → Toggle-CEtTYP_r.js} +1 -1
- package/storybook-static/assets/{Toggle.stories-ZipmLrer.js → Toggle.stories-BaOfYMcT.js} +1 -1
- package/storybook-static/assets/{TreeMultiSelect-Dc8YThL9.js → TreeMultiSelect-BmYBPzAL.js} +1 -1
- package/storybook-static/assets/{TreeMultiSelect-B0hw5vjj.js → TreeMultiSelect-Bpp3Axoc.js} +1 -1
- package/storybook-static/assets/{TreeMultiSelect.stories-CSuuDWWp.js → TreeMultiSelect.stories-CNmwscoQ.js} +1 -1
- package/storybook-static/assets/{TreePickerBase-CwMnJlJ3.js → TreePickerBase-DyhXguNc.js} +1 -1
- package/storybook-static/assets/{TreeSelect-DIQQA_MU.js → TreeSelect-Dp57_GsP.js} +1 -1
- package/storybook-static/assets/{TreeSelect-D9ki_IER.js → TreeSelect-DuPG1BmQ.js} +1 -1
- package/storybook-static/assets/{TreeSelect.stories-Dyl2bUAf.js → TreeSelect.stories-BRRmTO1d.js} +1 -1
- package/storybook-static/assets/{TreeTable-BRgeJJrs.js → TreeTable-DwX5hSn0.js} +1 -1
- package/storybook-static/assets/{TreeTable.stories-DijudbD_.js → TreeTable.stories-CUUpqLpH.js} +1 -1
- package/storybook-static/assets/{blocks-DnzyqsuS.js → blocks-CBEn2XET.js} +3 -3
- package/storybook-static/assets/{check-DpXCi7hS.js → check-DVP2RrW4.js} +1 -1
- package/storybook-static/assets/{chevron-down-Bmc7hZBq.js → chevron-down-pB5aBt7f.js} +1 -1
- package/storybook-static/assets/{chevron-left-DtTg64Ui.js → chevron-left--IVT8TOE.js} +1 -1
- package/storybook-static/assets/{chevron-right-9wEv32db.js → chevron-right-iLA_AfbS.js} +1 -1
- package/storybook-static/assets/{chunk-W22LQPXL-6p6Sy3YJ.js → chunk-W22LQPXL-YYPDaIiD.js} +1 -1
- package/storybook-static/assets/{circle-alert-BKUGkeBR.js → circle-alert-DOF8EPXy.js} +1 -1
- package/storybook-static/assets/{circle-check-CQXcWljV.js → circle-check-BjGJW_s0.js} +1 -1
- package/storybook-static/assets/{components-DSLVCkYx.js → components-CzWrpiYt.js} +3 -3
- package/storybook-static/assets/{contextMenu-BRCu-DVu.js → contextMenu-BFKXs6m5.js} +1 -1
- package/storybook-static/assets/{download-BKIUXqmB.js → download-4iQ_Vsh9.js} +1 -1
- package/storybook-static/assets/{floating-ui.react-D1TSIEX5.js → floating-ui.react-D3bibiBm.js} +1 -1
- package/storybook-static/assets/{foundationApi-BVlxIz18.js → foundationApi-BV_TLuEz.js} +1 -1
- package/storybook-static/assets/{foundationLib-C6Nzpm6H.js → foundationLib-D_yb9R0g.js} +1 -1
- package/storybook-static/assets/{hooks-Dz5TIKz3.js → hooks-BbSZNRij.js} +1 -1
- package/storybook-static/assets/{iframe-BLnbEFJy.js → iframe-B3pr0MSX.js} +3 -3
- package/storybook-static/assets/iframe-BOWfmfT4.js +1 -0
- package/storybook-static/assets/{info-CvFUhHqx.js → info-BKZSxeDX.js} +1 -1
- package/storybook-static/assets/{odata-CsYW3Ocp.js → odata-49160IRT.js} +1 -1
- package/storybook-static/assets/{odataStoryFixtures-DSPGV87K.js → odataStoryFixtures-1xkPz1fv.js} +1 -1
- package/storybook-static/assets/{react-DZwaF62V.js → react-Dt1l_ilq.js} +1 -1
- package/storybook-static/assets/{refresh-cw-1DqDa3M1.js → refresh-cw-DP6ayqeB.js} +1 -1
- package/storybook-static/assets/{settings-2-al-1wrC3.js → settings-2-CJlqldqu.js} +1 -1
- package/storybook-static/assets/{sortable-C2PPBD_E.js → sortable-BGvg9h6F.js} +1 -1
- package/storybook-static/assets/{syntaxhighlighter-QEQV7K2Y-BtAKFEHm.js → syntaxhighlighter-QEQV7K2Y-Bx8YXbZx.js} +1 -1
- package/storybook-static/assets/{trash-2-CLd3sVAn.js → trash-2-BjN-x0Jv.js} +1 -1
- package/storybook-static/assets/{triangle-alert-BWXLcAPv.js → triangle-alert-BClbPGD8.js} +1 -1
- package/storybook-static/assets/{useODataSelectBase-B3qPzSWr.js → useODataSelectBase-A-C5_yHs.js} +1 -1
- package/storybook-static/assets/{useODataTreeData-D0nwnOOl.js → useODataTreeData-COxjc88A.js} +1 -1
- package/storybook-static/assets/{usePickerQuery-Z34DN8z-.js → usePickerQuery-DNMGmR5c.js} +1 -1
- package/storybook-static/assets/{usePickerTriggerController--hCdDPrv.js → usePickerTriggerController-CK41xnO5.js} +1 -1
- package/storybook-static/assets/{x-Eii7sm5r.js → x-DKa9bKVJ.js} +1 -1
- package/storybook-static/iframe.html +2 -2
- package/storybook-static/project.json +1 -1
- package/dist/chunks/misc-aGQBhywJ.js.map +0 -1
- package/storybook-static/assets/NoData-BgIST5mW.js +0 -1
- package/storybook-static/assets/Option-DFJ-DfU8.css +0 -1
- package/storybook-static/assets/Text-CUscA7_Z.js +0 -1
- package/storybook-static/assets/iframe-C5xZC6P1.js +0 -1
package/storybook-static/assets/{Sortable.stories-BAlAYFiY.js → Sortable.stories-fsl44zmS.js}
RENAMED
|
@@ -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{i as r,n as i,r as a,t as o}from"./sortable-
|
|
1
|
+
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{t as n}from"./react-BZJXY1be.js";import{i as r,n as i,r as a,t as o}from"./sortable-BGvg9h6F.js";import{n as s}from"./iframe-B3pr0MSX.js";var c=t({Basic:()=>S,DisabledItems:()=>T,GridCards:()=>w,HandleOnly:()=>E,HorizontalList:()=>C,NestedContainers:()=>D,SortablePreview:()=>f,__namedExportsOrder:()=>O,default:()=>x});function l(e,t,n){let r=[...e],[i]=r.splice(t,1);return r.splice(n,0,i),r}function u(e){switch(e){case`horizontal`:return{display:`flex`,gap:`var(--space-sm)`,overflowX:`auto`};case`grid`:return{display:`grid`,gap:`var(--space-sm)`,gridTemplateColumns:`repeat(auto-fill, minmax(12rem, 1fr))`};default:return{display:`grid`,gap:`var(--space-sm)`}}}function d(e){let t=e.initialItems,n=new Set(e.disabledIds??[]);return(0,h.jsxs)(`div`,{style:{display:`grid`,gap:12},children:[(0,h.jsx)(o.Root,{onDragEnd:n=>{let r=a({event:n,items:{[e.containerId]:t}});r&&e.onItemsChange(l(t,r.fromIndex,r.toIndex))},children:(0,h.jsx)(o.Container,{containerId:e.containerId,items:t,layout:e.layout,children:(0,h.jsx)(`div`,{style:u(e.layout),children:t.map(t=>(0,h.jsxs)(o.Item,{id:t,disabled:n.has(t),style:{..._,minWidth:e.itemWidth},children:[(0,h.jsx)(o.DragHandle,{title:`Перетащить ${t}`}),(0,h.jsx)(`div`,{children:t})]},t))})})}),(0,h.jsx)(`div`,{style:{fontSize:14,opacity:.8},children:`Порядок элементов изменяется локально в рамках story.`})]})}function f(e){let[t,n]=(0,m.useState)(e.initialItems);return(0,h.jsx)(d,{...e,initialItems:t,onItemsChange:n})}function p({args:e,onTopItemsChange:t}){let n=e.initialItems,[r,i]=(0,m.useState)({"Группа A":[`A.1`,`A.2`,`A.3`],"Группа B":[`B.1`,`B.2`]});return(0,h.jsxs)(`div`,{style:{display:`grid`,gap:12},children:[(0,h.jsx)(o.Root,{onDragEnd:o=>{let s=a({event:o,items:{[e.containerId]:n,...Object.fromEntries(n.map(e=>[`parent:${e}`,r[e]??[]]))}});if(!s)return;if(s.containerId===e.containerId){t(l(n,s.fromIndex,s.toIndex));return}let c=String(s.containerId).slice(7);i(e=>({...e,[c]:l(e[c]??[],s.fromIndex,s.toIndex)}))},children:(0,h.jsx)(o.Container,{containerId:e.containerId,items:n,layout:e.layout,children:(0,h.jsx)(`div`,{style:{display:`grid`,gap:`var(--space-md)`},children:n.map(e=>(0,h.jsxs)(o.Item,{id:e,style:{..._,gridTemplateColumns:`var(--control-height) 1fr`,alignItems:`start`},children:[(0,h.jsx)(o.DragHandle,{title:`Перетащить ${e}`}),(0,h.jsxs)(`div`,{style:{display:`grid`,gap:`var(--space-sm)`},children:[(0,h.jsx)(`strong`,{children:e}),(0,h.jsx)(o.Container,{containerId:`parent:${e}`,items:r[e]??[],children:(0,h.jsx)(`div`,{style:{display:`grid`,gap:`var(--space-xs)`},children:(r[e]??[]).map(e=>(0,h.jsxs)(o.Item,{id:e,style:{..._,background:`var(--surface-1)`},children:[(0,h.jsx)(o.DragHandle,{title:`Перетащить ${e}`}),(0,h.jsx)(`div`,{children:e})]},e))})})]})]},e))})})}),(0,h.jsx)(`div`,{style:{fontSize:14,opacity:.8},children:"Вложенные контейнеры сортируются независимо и используют общий `Sortable.Root`."})]})}var m,h,g,_,v,y,b,x,S,C,w,T,E,D,O;function k(){return(k=e((()=>{m=n(),i(),r(),h=s(),{useArgs:g}=__STORYBOOK_MODULE_PREVIEW_API__,_={display:`grid`,gridTemplateColumns:`var(--control-height) 1fr`,alignItems:`center`,gap:`var(--space-sm)`,padding:`var(--space-sm)`,border:`var(--border)`,borderRadius:`var(--radius-sm)`,background:`var(--surface-0)`},v=[`Alpha`,`Bravo`,`Charlie`,`Delta`],y=[`Фильтры`,`Графики`,`Сводка`,`История`],b=[`Карточка 1`,`Карточка 2`,`Карточка 3`,`Карточка 4`,`Карточка 5`,`Карточка 6`],x={title:`UI/Sortable`,component:f,args:{containerId:`sortable-demo`,layout:`vertical`,initialItems:v,itemWidth:void 0,disabledIds:[]},parameters:{atomicCanvas:!0,layout:`padded`},render:function(e){let[,t]=g();return(0,h.jsx)(d,{...e,onItemsChange:e=>t({initialItems:e})})},argTypes:{containerId:{description:"Идентификатор `SortableContext`, который используется для вычисления reorder внутри контейнера.",control:`text`},layout:{description:`Режим раскладки и стратегия сортировки: вертикальный список, горизонтальный список или grid.`,control:`inline-radio`,options:[`vertical`,`horizontal`,`grid`]},initialItems:{description:`Текущий порядок элементов. После drag-and-drop обновляется в Storybook args.`,control:!1},itemWidth:{description:`Минимальная ширина карточки; полезна для горизонтального режима.`,control:`text`},disabledIds:{description:`Список id, для которых drag-handle отключен.`,control:!1}}},S={},C={args:{containerId:`sortable-horizontal`,layout:`horizontal`,initialItems:y,itemWidth:`12rem`}},w={args:{containerId:`sortable-grid`,layout:`grid`,initialItems:b}},T={args:{containerId:`sortable-disabled`,layout:`vertical`,initialItems:v,disabledIds:[`Bravo`,`Delta`]}},E={args:{containerId:`sortable-handle-only`,layout:`vertical`,initialItems:[`Пункт 1`,`Пункт 2`,`Пункт 3`,`Пункт 4`]}},D={args:{containerId:`top`,layout:`vertical`,initialItems:[`Группа A`,`Группа B`]},render:function(e){let[,t]=g();return(0,h.jsx)(p,{args:e,onTopItemsChange:e=>t({initialItems:e})})}},f.__docgenInfo={description:`Предоставляет самостоятельный React-preview компонента вне Storybook.
|
|
2
2
|
Storybook использует отдельный render ниже, чтобы синхронизировать порядок с args.`,methods:[],displayName:`SortablePreview`,props:{containerId:{required:!0,tsType:{name:`string`},description:``},layout:{required:!0,tsType:{name:`union`,raw:`"vertical" | "horizontal" | "grid"`,elements:[{name:`literal`,value:`"vertical"`},{name:`literal`,value:`"horizontal"`},{name:`literal`,value:`"grid"`}]},description:``},initialItems:{required:!0,tsType:{name:`Array`,elements:[{name:`string`}],raw:`string[]`},description:``},itemWidth:{required:!1,tsType:{name:`string`},description:``},disabledIds:{required:!1,tsType:{name:`Array`,elements:[{name:`string`}],raw:`string[]`},description:``}}},f.parameters={...f.parameters,docs:{...f.parameters?.docs,source:{originalSource:`function SortablePreview(props: SortablePreviewProps) {
|
|
3
3
|
const [items, setItems] = useState(props.initialItems);
|
|
4
4
|
return <SortablePreviewCanvas {...props} initialItems={items} onItemsChange={setItems} />;
|
|
@@ -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-B3pr0MSX.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-CBEn2XET.js";import{a as p,i as m,n as h,o as g,r as _,t as v}from"./Splitter.stories-Bz79Lc6H.js";function y(e){let t={code:`code`,h2:`h2`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...n(),...e.components};return(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(s,{of:p,parameters:{docs:{toc:!0}}}),`
|
|
2
2
|
`,(0,x.jsx)(u,{children:`Splitter`}),`
|
|
3
3
|
`,(0,x.jsx)(o,{children:(0,x.jsx)(t.p,{children:`Компонент для интерактивного разделения рабочей области на две панели с поддержкой вложенности, клавиатуры и ограничений по размеру`})}),`
|
|
4
4
|
`,(0,x.jsxs)(t.p,{children:[(0,x.jsx)(t.code,{children:`Splitter`}),` подходит для интерфейсов, где пользователь должен самостоятельно перераспределять пространство между соседними областями: навигацией и контентом, таблицей и деталями, превью и журналом событий.`]}),`
|
package/storybook-static/assets/{Splitter.stories-Cha1ZWaK.js → Splitter.stories-Bz79Lc6H.js}
RENAMED
|
@@ -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-B3pr0MSX.js";import{a as i,i as a}from"./utils-tg3ibbzi.js";var o,s,c,l,u,d,f;function p(){return(p=e((()=>{o=`wAovST`,s=`QVVMwe`,c=`H43AJ8`,l=`pgo8sW`,u=`_8fCvqA`,d=`t6RFcI`,f={splitter:o,vertical:s,separator:c,horizontal:l,topLeft:u,bottomRight:d}})))()}function m(e,t,n){return Math.min(n,Math.max(t,e))}function h(e,t){return Number.isFinite(e)?m(e,0,1):t}function g(e,t){let n=h(e,E),r=h(t,D);return n<=r?[n,r]:[r,n]}function _(e,t){return e===`vertical`?t.clientX:t.clientY}function v(e,t){return e===`vertical`?t.width:t.height}function y(e,t){if(e===`vertical`){if(t===`ArrowLeft`)return-.02;if(t===`ArrowRight`)return k}if(e===`horizontal`){if(t===`ArrowUp`)return-.02;if(t===`ArrowDown`)return k}return null}function b(e,t){return t===`start`?0:t===`end`?1:e}function x({direction:e,initial:t,min:n,max:r,collapsedPane:i}){let[a,o]=g(n,r),s=(0,w.useRef)(null),c=(0,w.useRef)(null),l=(0,w.useRef)(null),u=(0,w.useRef)(null),d=(0,w.useRef)(null),f=(0,w.useRef)(null),p=(0,w.useRef)(0),x=(0,w.useRef)(m(h(t,O),a,o)),S=(0,w.useRef)(t),[C,T]=(0,w.useState)(()=>m(h(t,O),a,o)),E=(0,w.useRef)(C),D=(0,w.useCallback)(e=>{E.current=e,c.current?.style.setProperty(`flex-basis`,`${b(e,i)*100}%`),l.current?.setAttribute(`aria-valuenow`,`${Math.round(e*100)}`)},[i]),k=()=>{if(f.current!==null&&(cancelAnimationFrame(f.current),f.current=null),d.current===null)return E.current;let e=d.current;return d.current=null,D(e),e},A=e=>{d.current=e,f.current===null&&(f.current=requestAnimationFrame(()=>{f.current=null,d.current!==null&&D(d.current)}))},j=()=>{u.current?.(),u.current=null},M=e=>{k(),T(m(e,a,o))};return(0,w.useLayoutEffect)(()=>{D(C)},[D,C]),(0,w.useEffect)(()=>{T(e=>{let n=S.current!==t;return S.current=t,m(n?h(t,O):e,a,o)})},[t,a,o]),(0,w.useEffect)(()=>()=>{j(),f.current!==null&&cancelAnimationFrame(f.current)},[]),{containerRef:s,topLeftRef:c,separatorRef:l,ratio:C,minRatio:a,maxRatio:o,handleSeparatorPointerDown:t=>{if(t.button!==0)return;t.preventDefault();let n=s.current;if(!n)return;j();try{t.currentTarget.setPointerCapture?.(t.pointerId)}catch{}p.current=_(e,t),x.current=E.current;let r=t=>{let r=v(e,n.getBoundingClientRect());if(r<=0)return;let i=_(e,t)-p.current,s=m(x.current+i/r,a,o);A(s)},i=()=>{j(),T(k())};u.current=()=>{document.removeEventListener(`pointermove`,r),document.removeEventListener(`pointerup`,i),document.removeEventListener(`pointercancel`,i)},document.addEventListener(`pointermove`,r),document.addEventListener(`pointerup`,i),document.addEventListener(`pointercancel`,i)},handleSeparatorKeyDown:t=>{let n=y(e,t.key);if(n!==null){t.preventDefault(),M(E.current+n);return}if(t.key===`Home`){t.preventDefault(),M(a);return}t.key===`End`&&(t.preventDefault(),M(o))}}}function S({className:e,direction:t,left:n,right:r,collapsedPane:a,logic:o}){let{containerRef:s,topLeftRef:c,separatorRef:l,ratio:u,minRatio:d,maxRatio:p,handleSeparatorPointerDown:m,handleSeparatorKeyDown:h}=o,g=b(u,a),_=a===`start`,v=a===`end`,y=a===null;return(0,T.jsxs)(`div`,{ref:s,className:i(f.splitter,f[t],e),children:[(0,T.jsx)(`div`,{ref:c,className:f.topLeft,style:{flexBasis:`${g*100}%`},hidden:_,children:n}),(0,T.jsx)(`div`,{ref:l,hidden:!y,role:`separator`,"aria-orientation":t===`vertical`?`vertical`:`horizontal`,"aria-valuemin":Math.round(d*100),"aria-valuemax":Math.round(p*100),"aria-valuenow":Math.round(u*100),tabIndex:y?0:-1,onPointerDown:m,onKeyDown:h,className:f.separator}),(0,T.jsx)(`div`,{className:f.bottomRight,hidden:v,children:r})]})}function C({direction:e=`vertical`,initial:t=O,min:n=E,max:r=D,className:i,collapsedPane:a=null,children:o}){let[s,c]=w.Children.toArray(o),l=x({direction:e,initial:t,min:n,max:r,collapsedPane:a});return c?(0,T.jsx)(S,{className:i,direction:e,left:s,right:c,collapsedPane:a,logic:l}):s}var w,T,E,D,O,k;function A(){return(A=e((()=>{w=n(),a(),p(),T=r(),E=.1,D=.9,O=.7,k=.02,C.__docgenInfo={description:``,methods:[],displayName:`Splitter`,props:{direction:{defaultValue:{value:`"vertical"`,computed:!1},required:!1},initial:{defaultValue:{value:`0.7`,computed:!1},required:!1},min:{defaultValue:{value:`0.1`,computed:!1},required:!1},max:{defaultValue:{value:`0.9`,computed:!1},required:!1},collapsedPane:{defaultValue:{value:`null`,computed:!1},required:!1}}}})))()}var j=t({Basic:()=>B,Constrained:()=>U,Horizontal:()=>V,NestedFourPanels:()=>H,__namedExportsOrder:()=>W,default:()=>z});function M({children:e}){return(0,L.jsx)(`div`,{style:{height:490},children:e})}function N({title:e,description:t,items:n=[]}){return(0,L.jsxs)(`div`,{style:{height:`100%`,padding:`var(--space-md)`,borderRadius:`var(--radius-md)`,border:`var(--border)`,display:`grid`,alignContent:`start`,gap:`var(--space-md)`},className:`scrollable`,children:[(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`h2`,{children:e}),(0,L.jsx)(`p`,{children:t})]}),n.length>0&&(0,L.jsx)(`div`,{style:{display:`grid`,gap:`var(--space-sm)`},children:n.map(e=>(0,L.jsx)(`div`,{style:{padding:`var(--space-sm) var(--space-md)`,borderRadius:`var(--radius-sm)`,background:`var(--surface-1)`},children:e},e))})]})}function P(e){return(0,L.jsx)(M,{children:(0,L.jsxs)(C,{...e,children:[(0,L.jsx)(N,{title:`Навигация`,description:`Левая панель подходит для фильтров, дерева разделов, списка сущностей или структуры документа.`,items:[`Раздел 1`,`Раздел 2`,`Раздел 3`,`Раздел 4`]}),(0,L.jsx)(N,{title:`Рабочая область`,description:`Правая панель обычно содержит детальный контент: таблицу, карточку объекта, форму или вкладки.`,items:[`Текущий документ`,`История изменений`,`Комментарии`,`Связанные объекты`,`Параметры отображения`]})]})})}function F(e){return(0,L.jsx)(M,{children:(0,L.jsxs)(C,{...e,children:[(0,L.jsxs)(C,{direction:`horizontal`,initial:.58,min:.25,max:.75,children:[(0,L.jsx)(N,{title:`Список`,description:`Верхняя левая панель может держать навигацию или результат поиска.`,items:[`Поиск`,`Фильтр по статусу`,`Группы`,`Быстрые действия`]}),(0,L.jsx)(N,{title:`Подробности`,description:`Нижняя левая панель подходит для связанного контента по выбранному элементу.`,items:[`Свойства`,`Ответственный`,`Теги`,`Контекст`]})]}),(0,L.jsxs)(C,{direction:`horizontal`,initial:.36,min:.2,max:.8,children:[(0,L.jsx)(N,{title:`Превью`,description:`Верхняя правая панель может содержать документ, схему, карту или live-просмотр.`,items:[`Предпросмотр файла`,`Масштаб 100%`,`Слой подсветки`]}),(0,L.jsx)(N,{title:`Журнал`,description:`Нижняя правая панель часто используется для событий, логов или вспомогательных данных.`,items:[`10:31 Импорт завершён`,`10:34 Индексация`,`10:36 Синхронизация`,`10:38 Проверка целостности`]})]})]})})}function I(e){return(0,L.jsx)(M,{children:(0,L.jsxs)(C,{...e,children:[(0,L.jsx)(N,{title:`Фиксированные ограничения`,description:"У этой панели ужаты границы `min` и `max`, поэтому splitter нельзя увести слишком далеко.",items:[`Нажмите на разделитель`,`Используйте стрелки`,`Home = минимум`,`End = максимум`]}),(0,L.jsx)(N,{title:`Проверка доступности`,description:`Сценарий помогает проверить клавиатурное управление, устойчивость границ и отсутствие рывков при drag.`,items:[`ArrowLeft / ArrowRight`,`ArrowUp / ArrowDown`,`Перетаскивание мышью`,`Перетаскивание на тач-устройстве`]})]})})}var L,R,z,B,V,H,U,W;function G(){return(G=e((()=>{A(),L=r(),{useArgs:R}=__STORYBOOK_MODULE_PREVIEW_API__,z={title:`UI/Splitter`,component:C,parameters:{atomicCanvas:!0,layout:`padded`},args:{direction:`vertical`,initial:.45,min:.15,max:.85},argTypes:{direction:{description:`Направление разделения: вертикальное по ширине или горизонтальное по высоте.`,control:`inline-radio`,options:[`vertical`,`horizontal`]},initial:{description:`Начальная доля первой панели в диапазоне от 0 до 1.`,control:{type:`range`,min:0,max:1,step:.01}},min:{description:`Минимальная доля первой панели. Значение автоматически нормализуется в диапазон 0..1.`,control:{type:`range`,min:0,max:1,step:.01}},max:{description:"Максимальная доля первой панели. Если `min` и `max` перепутаны местами, компонент сам исправит диапазон.",control:{type:`range`,min:0,max:1,step:.01}},collapsedPane:{description:`Сворачивает начальную или конечную панель.`,control:`inline-radio`,options:[null,`start`,`end`]},children:{description:`Splitter ожидает ровно два прямых дочерних элемента. Для большего количества областей используйте вложенные Splitter.`,control:!1}}},B={name:`Две панели`,render:function(){let[e]=R();return(0,L.jsx)(P,{...e})}},V={name:`Горизонтальное разделение`,render:function(){let[e]=R();return(0,L.jsx)(P,{...e})},args:{direction:`horizontal`,initial:.55}},H={name:`Четыре панели через вложенность`,render:function(){let[e]=R();return(0,L.jsx)(F,{...e})},args:{initial:.48,min:.25,max:.75}},U={name:`Ограничения и клавиатура`,render:function(){let[e]=R();return(0,L.jsx)(I,{...e})},args:{initial:.35,min:.25,max:.55}},B.parameters={...B.parameters,docs:{...B.parameters?.docs,source:{originalSource:`{
|
|
2
2
|
name: "Две панели",
|
|
3
3
|
render: function Render() {
|
|
4
4
|
const [args] = useArgs<ComponentProps<typeof Splitter>>();
|
|
@@ -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-B3pr0MSX.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-CBEn2XET.js";import{a as p,i as m,n as h,r as g,t as _}from"./StateSelect.stories-C3rxpGIl.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:`StateSelect`}),`
|
|
3
3
|
`,(0,b.jsx)(o,{children:`Специализированный select для выбора визуального статуса или семантического состояния`}),`
|
|
4
4
|
`,(0,b.jsx)(t.p,{children:`StateSelect уже имеет живые stories, а эта страница собирает их в структурированную документацию с краткими рекомендациями, примерами подключения и API.
|
|
@@ -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-B3pr0MSX.js";import{a as r,i}from"./utils-tg3ibbzi.js";import{d as a,l as o,y as s}from"./formatters-D33Uh3si-Df97arf9.js";import{n as c,t as l}from"./Select-BY6ORdvS.js";var u,d,f,p,m,h,g,_,v,y,b,x;function S(){return(S=e((()=>{u=`p4nQdZ`,d=`_94tg5v`,f=`HyK7Zs`,p=`Mm4hrB`,m=`clxxBQ`,h=`_5pJ7o-`,g=`VV6hKN`,_=`cuQNP0`,v=`w7nIOT`,y=`ed-Afj`,b=`Lbxloe`,x={button:u,valueContainer:d,swatch:f,optionsPalette:p,optionsDetailed:m,option:h,optionPalette:g,optionDetailed:_,optionMeta:v,optionMetaIcon:y,optionMetaLabel:b}})))()}function C({state:e,className:t}){return(0,A.jsx)(`span`,{className:r(x.swatch,t),"data-empty":e===`none`?``:void 0,style:{"--state-color":a[e]}})}function w(e){return!!(e?.icon||e?.label)}function T(e,t){return typeof t?.label==`string`&&t.label.trim()?t.label:e||`empty`}function E(e){return w(e)?(0,A.jsxs)(`span`,{className:x.optionMeta,children:[e?.icon?(0,A.jsx)(`span`,{className:x.optionMetaIcon,children:e.icon}):null,e?.label?(0,A.jsx)(`span`,{className:x.optionMetaLabel,children:e.label}):null]}):null}function D(e,t){return(0,A.jsxs)(`div`,{className:x.valueContainer,children:[(0,A.jsx)(C,{state:e}),E(t)]})}function O({label:e,description:t,disabled:n,placeholder:i,size:a,value:s,onChange:c,options:u=o,stateMeta:d,className:f,clearable:p}){let m=(0,k.useMemo)(()=>Array.from(new Set(u)),[u]),h=m.some(e=>w(d?.[e])),g={getOptionKey:e=>e||`__empty_state__`,getOptionLabel:e=>d?.[e]?.label??e,getOptionAriaLabel:e=>T(e,d?.[e]),renderValue:e=>D(e,d?.[e]),renderOption:e=>(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(C,{state:e}),h?E(d?.[e]):null]}),buttonClassName:x.button,optionsContentClassName:r(h?x.optionsDetailed:x.optionsPalette),getOptionClassName:()=>r(x.option,h?x.optionDetailed:x.optionPalette)};return(0,A.jsx)(l,{label:e,description:t,disabled:n,placeholder:i,size:a,value:s,onChange:c,options:m,className:f,clearable:p,...g})}var k,A;function j(){return(j=e((()=>{k=t(),s(),i(),c(),S(),A=n(),O.__docgenInfo={description:`Специализированный селект для выбора цветового или статусного состояния. Используется там, где значению соответствует визуальный swatch.`,methods:[],displayName:`StateSelect`,props:{placeholder:{required:!1,tsType:{name:`string`},description:``},options:{required:!1,tsType:{name:`unknown`},description:``,defaultValue:{value:`DEFAULT_VALUE_STATES`,computed:!0}},stateMeta:{required:!1,tsType:{name:`Partial`,elements:[{name:`Record`,elements:[{name:`State`},{name:`signature`,type:`object`,raw:`{
|
|
2
2
|
label?: string;
|
|
3
3
|
icon?: ReactNode;
|
|
4
4
|
}`,signature:{properties:[{key:`label`,value:{name:`string`,required:!1}},{key:`icon`,value:{name:`ReactNode`,required:!1}}]}}],raw:`Record<State, StateMeta>`}],raw:`Partial<Record<State, StateMeta>>`},description:``},className:{required:!1,tsType:{name:`string`},description:``},clearable:{required:!1,tsType:{name:`boolean`},description:``}},composes:[`Omit`]}})))()}export{j as n,O as t};
|
package/storybook-static/assets/{StateSelect.stories-DRE5Il6q.js → StateSelect.stories-C3rxpGIl.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{n,t as r}from"./circle-check-
|
|
1
|
+
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{n,t as r}from"./circle-check-BjGJW_s0.js";import{i,n as a,r as o,t as s}from"./info-BKZSxeDX.js";import{n as c,t as l}from"./triangle-alert-BClbPGD8.js";import{i as u,n as d,r as f}from"./iframe-B3pr0MSX.js";import{n as p,t as m}from"./StateSelect-XihqGd4j.js";var h,g;function _(){return(_=e((()=>{u(),h=[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M8 12h8`,key:`1wcyev`}]],g=f(`circle-minus`,h)})))()}var v=t({Controlled:()=>C,PaletteOnly:()=>T,WithMeta:()=>w,__namedExportsOrder:()=>E,default:()=>S}),y,b,x,S,C,w,T,E;function D(){return(D=e((()=>{c(),n(),a(),_(),i(),p(),y=d(),{useArgs:b}=__STORYBOOK_MODULE_PREVIEW_API__,{fn:x}=__STORYBOOK_MODULE_TEST__,S={title:`UI/StateSelect`,component:m,args:{label:`Состояние`,description:`Выберите визуальный статус.`,placeholder:`Выберите значение`,value:`information`,onChange:x(),disabled:!1,size:`md`},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{label:{description:`Заголовок поля выбора состояния.`,control:`text`},description:{description:`Описание под заголовком.`,control:`text`},placeholder:{description:`Текст, когда значение не выбрано.`,control:`text`},value:{description:`Текущее состояние.`,control:`select`,options:[``,`none`,`information`,`success`,`warning`,`error`]},onChange:{description:`Вызывается при выборе состояния.`,control:!1},options:{description:`Кастомный набор доступных состояний.`,control:!1},stateMeta:{description:`Кастомные иконки и подписи для значений.`,control:!1},disabled:{description:`Блокирует взаимодействие с полем.`,control:`boolean`},clearable:{description:`Показывает действие очистки выбранного состояния.`,control:`boolean`},size:{description:`Размер поля и подписей.`,control:`select`,options:[`xs`,`sm`,`md`,`lg`,`xl`]}}},C={render:function(e){let[,t]=b();return(0,y.jsx)(m,{...e,value:e.value??`information`,onChange:n=>{e.onChange(n),t({value:n})}})}},w={render:function(e){let[,t]=b();return(0,y.jsx)(m,{...e,value:e.value??`warning`,onChange:n=>{e.onChange(n),t({value:n})},stateMeta:{none:{label:`Без статуса`,icon:(0,y.jsx)(g,{})},information:{label:`Инфо`,icon:(0,y.jsx)(s,{})},success:{label:`Успех`,icon:(0,y.jsx)(r,{})},warning:{label:`Предупреждение`,icon:(0,y.jsx)(l,{})},error:{label:`Ошибка`,icon:(0,y.jsx)(o,{})}}})},args:{value:`warning`}},T={render:function(e){let[,t]=b();return(0,y.jsx)(m,{...e,value:e.value??`none`,onChange:n=>{e.onChange(n),t({value:n})},options:[`none`,`success`,`error`]})},args:{options:[`none`,`success`,`error`],value:`none`}},C.parameters={...C.parameters,docs:{...C.parameters?.docs,source:{originalSource:`{
|
|
2
2
|
render: function Render(args) {
|
|
3
3
|
const [, updateArgs] = useArgs<StateSelectProps>();
|
|
4
4
|
return <StateSelect {...args} value={args.value ?? "information"} onChange={value => {
|
|
@@ -1,3 +1,3 @@
|
|
|
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-B3pr0MSX.js";import{n,t as r}from"./createControlledStoryRender-BouhvX-R.js";import{n as i,t as a}from"./Toggle-C3ZDjRb5.js";function o(e,t){return typeof e==`string`?e:t}var s,c;function l(){return(l=e((()=>{s=`true`,c=`false`})))()}function u({value:e,onChange:t,checkedValue:n,uncheckedValue:r,defaultChecked:i,...l}){let u=o(n,s),f=o(r,c),p=e===u;return(0,d.jsx)(a,{...l,value:p,onChange:e=>t(e?u:f)})}var d;function f(){return(f=e((()=>{l(),i(),d=t(),u.__docgenInfo={description:`Адаптирует boolean-состояние Toggle к паре настраиваемых строковых значений.`,methods:[],displayName:`StringToggle`,props:{checkedValue:{required:!1,tsType:{name:`string`},description:``},uncheckedValue:{required:!1,tsType:{name:`string`},description:``},value:{required:!0,tsType:{name:`string`},description:``},onChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(value: string) => void`,signature:{arguments:[{type:{name:`string`},name:`value`}],return:{name:`void`}}},description:``}}}})))()}var p,m,h,g,_;function v(){return(v=e((()=>{n(),f(),p=t(),m=r((e,t)=>(0,p.jsx)(u,{...e,onChange:n=>{e.onChange(n),t({value:n})}})),h={title:`UI/Toggle/StringToggle`,component:u,args:{value:`ZBP_MANAGER`,onChange:()=>void 0,checkedText:`за клиента`,uncheckedText:`за сделку`,checkedValue:`ZM_MANAGER`,uncheckedValue:`ZBP_MANAGER`},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{label:{description:`Текст подписи переключателя.`,control:`text`},description:{description:`Описание под переключателем.`,control:`text`},placeholder:{description:"Резервная подпись, если `label` не задан.",control:`text`},value:{description:`Текущее строковое значение.`,control:`text`},onChange:{description:`Возвращает строку выбранного состояния.`,control:!1},checkedValue:{description:`Значение включённого состояния.`,control:`text`},uncheckedValue:{description:`Значение выключенного состояния.`,control:`text`},checkedText:{description:`Текст включённого состояния.`,control:`text`},uncheckedText:{description:`Текст выключенного состояния.`,control:`text`},labelPosition:{description:`Положение подписи относительно переключателя.`,control:`inline-radio`,options:[`before`,`after`]},disabled:{description:`Блокирует взаимодействие.`,control:`boolean`},size:{description:`Размер контрола и подписи.`,control:`select`,options:[`xs`,`sm`,`md`,`lg`,`xl`]}}},g={render:m},g.parameters={...g.parameters,docs:{...g.parameters?.docs,source:{originalSource:`{
|
|
2
2
|
render: renderStringToggleStory
|
|
3
3
|
}`,...g.parameters?.docs?.source}}},_=[`ManagerScope`]})))()}v();export{g as ManagerScope,_ as __namedExportsOrder,h as default};
|
|
@@ -1 +1 @@
|
|
|
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"./circle-check-
|
|
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"./circle-check-BjGJW_s0.js";import{i as a,n as o,r as s}from"./iframe-B3pr0MSX.js";import{a as c,i as l}from"./utils-tg3ibbzi.js";import{n as u,t as d}from"./ui.module-31LPbZGK.js";var f,p;function m(){return(m=t((()=>{a(),f=[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M4.929 4.929 19.07 19.071`,key:`196cmz`}]],p=s(`ban`,f)})))()}var h,g,_,v,y;function b(){return(b=t((()=>{h=`Or5LYA`,g=`w0AMfA`,_=`P1x4lq`,v=`-ZVOZo`,y={switchWrapper:h,switch:`qge3io`,iconWrapper:g,auto:_,checked:v}})))()}function x(e){let{label:t,description:n,disabled:r,checkedIcon:a=(0,C.jsx)(i,{}),uncheckedIcon:o=(0,C.jsx)(p,{}),className:s,type:l,id:d,size:f,placeholder:m,onChange:h,value:g,triState:_,...v}=e,b=(0,S.useId)(),x=d??b,w=n?`${x}-description`:void 0,T=t?`${x}-label`:void 0,E=()=>{if(!e.triState){e.onChange(!e.value);return}if(e.value===void 0){e.onChange(!0);return}if(e.value===!0){e.onChange(!1);return}e.value===!1&&e.onChange(void 0)},D=typeof e.value==`boolean`&&e.value,O=e.triState&&typeof e.value!=`boolean`,k=v[`aria-label`]??(t?void 0:`Переключатель`);return(0,C.jsxs)(`div`,{className:c(u.uiElement,r&&u.disabled),"aria-disabled":r||void 0,children:[t&&(0,C.jsxs)(`div`,{id:T,className:u.uiLabel,children:[t,`:`]}),n&&(0,C.jsx)(`p`,{id:w,className:u.uiDescription,children:n}),(0,C.jsx)(`button`,{...v,id:x,type:l??`button`,role:`switch`,disabled:r,"aria-checked":D,"aria-describedby":w,"aria-labelledby":T,"aria-label":k,"aria-disabled":r,"data-ui":`switch`,"data-action":`toggle-switch`,onClick:E,className:c(u.uiInputControl,y.switchWrapper,s),children:(0,C.jsx)(`div`,{className:y.switch,"data-disabled":r||void 0,children:O?(0,C.jsx)(`div`,{className:c(y.iconWrapper,y.auto,y.checked),children:`Auto`}):(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(`div`,{className:c(y.iconWrapper,!e.value&&y.checked),children:o}),(0,C.jsx)(`div`,{className:c(y.iconWrapper,e.value&&y.checked),children:a})]})})})]})}var S,C;function w(){return(w=t((()=>{S=e(n(),1),l(),m(),r(),d(),b(),C=o(),x.__docgenInfo={description:`Переключатель boolean-состояния в виде слайдера. Подходит для быстрых настроек и включения/отключения опций.`,methods:[],displayName:`Switch`}})))()}export{w as n,x as t};
|
|
@@ -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-B3pr0MSX.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-CBEn2XET.js";import{a as p,i as m,n as h,r as g,t as _}from"./Switch.stories-BPDQ5GN3.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:`Switch`}),`
|
|
3
3
|
`,(0,b.jsx)(o,{children:`Переключатель в виде слайдера для быстрых включений, отключений и tri-state сценариев`}),`
|
|
4
4
|
`,(0,b.jsx)(t.p,{children:`Switch уже имеет живые stories, а эта страница собирает их в структурированную документацию с краткими рекомендациями, примерами подключения и API.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{n,t as r}from"./Switch-
|
|
1
|
+
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{n,t as r}from"./Switch-CrtYGIaI.js";import{n as i}from"./iframe-B3pr0MSX.js";import{n as a,t as o}from"./createControlledStoryRender-BouhvX-R.js";var s=t({BiState:()=>f,Disabled:()=>m,TriState:()=>p,__namedExportsOrder:()=>h,default:()=>d}),c,l,u,d,f,p,m,h;function g(){return(g=e((()=>{a(),n(),c=i(),l=o((e,t)=>(0,c.jsx)(r,{...e,triState:!1,value:e.value??!1,onChange:n=>{e.onChange(n),t({value:n})}})),u=o((e,t)=>(0,c.jsxs)(`div`,{style:{display:`grid`,gap:8},children:[(0,c.jsx)(r,{...e,triState:!0,value:e.value,onChange:n=>{e.onChange(n),t({value:n})}}),(0,c.jsxs)(`div`,{children:[`Текущее значение: `,String(e.value)]})]})),d={title:`UI/Switch`,component:r,args:{label:`Режим обработки`,description:`Переключение состояния`,value:!1,onChange:()=>{},triState:!1,disabled:!1},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{label:{description:`Заголовок переключателя.`,control:`text`},description:{description:`Описание под заголовком.`,control:`text`},value:{description:"Текущее значение (`boolean` или `undefined` в tri-state).",control:`boolean`},onChange:{description:`Вызывается при изменении состояния.`,control:!1},triState:{description:"Включает трехсостоянный режим (`undefined → true → false`).",control:`boolean`},checkedIcon:{description:"Кастомная иконка для состояния `true`.",control:!1},uncheckedIcon:{description:"Кастомная иконка для состояния `false`.",control:!1},disabled:{description:`Блокирует переключение.`,control:`boolean`}}},f={render:l},p={render:u,args:{triState:!0,value:void 0}},m={render:l,args:{disabled:!0,value:!0}},f.parameters={...f.parameters,docs:{...f.parameters?.docs,source:{originalSource:`{
|
|
2
2
|
render: renderBiStateSwitchStory
|
|
3
3
|
}`,...f.parameters?.docs?.source}}},p.parameters={...p.parameters,docs:{...p.parameters?.docs,source:{originalSource:`{
|
|
4
4
|
render: renderTriStateSwitchStory,
|
|
@@ -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-B3pr0MSX.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-CBEn2XET.js";import{_ as p,a as m,c as h,d as g,f as _,g as v,h as y,i as b,l as x,m as S,n as C,o as w,p as T,r as E,s as D,t as O,u as k}from"./Table.stories-DiKmKEFg.js";function A(e){let t={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...n(),...e.components};return(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(s,{of:D,parameters:{docs:{toc:!0}}}),`
|
|
2
2
|
`,(0,M.jsx)(u,{children:`Table`}),`
|
|
3
3
|
`,(0,M.jsxs)(o,{children:[`Плоская таблица как React-альтернатива `,(0,M.jsx)(t.code,{children:`sap.m.Table`})]}),`
|
|
4
4
|
`,(0,M.jsxs)(t.p,{children:[(0,M.jsx)(t.code,{children:`Table`}),` предназначен для плоских данных и по поведению осознанно сближен с `,(0,M.jsx)(t.code,{children:`TreeTable`}),`.
|
|
@@ -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-B3pr0MSX.js";import{$ as i,J as a,Q as ee,X as te,Z as ne,_ as re,a as ie,b as ae,d as oe,g as se,i as ce}from"./odata-49160IRT.js";import{i as le,y as ue}from"./formatters-D33Uh3si-Df97arf9.js";import{n as de,t as o}from"./createControlledStoryRender-BouhvX-R.js";import{_ as fe,a as pe,b as me,c as he,d as ge,f as _e,g as ve,h as ye,i as be,l as xe,m as Se,n as Ce,o as we,p as Te,r as Ee,s as De,t as Oe,u as ke,v as Ae,x as je,y as Me}from"./FormattedTableCell-DQOSRRXD.js";var s,Ne,Pe;function c(){return(c=e((()=>{s=`hKghZt`,Ne=`QsLRvS`,Pe={selectedIndicatorCell:s,sentinel:Ne}})))()}function Fe(e,t){return String(t)}function l({title:e,isLoading:t,isFetching:n,data:r,columns:i,selectionMode:a=`none`,selectedRowIds:ee,getRowId:te,className:ne,minHeight:ie,tableClassName:ae,columnVisibility:oe,defaultColumnVisibility:ce,columnOrder:ue,defaultColumnOrder:de,columnSizing:o,defaultColumnSizing:pe,columnPinning:me,defaultColumnPinning:ge,enableColumnResizing:ve=!1,enableColumnReordering:be=!1,columnResizeMinWidth:xe,onColumnVisibilityChange:Se,onColumnOrderChange:Ce,onColumnSizingChange:De,onColumnPinningChange:Me,onRowClick:s,onRowSelectionChange:Ne,onReachEnd:c,getRowCanSelect:l,getRowClassName:f,renderHeaderContextMenu:Ie,renderCellContent:p}){let m=(0,u.useMemo)(()=>r??[],[r]),h=(0,u.useMemo)(()=>ye(i),[i]),g=te??Fe,_=(0,u.useMemo)(()=>new Map(m.map((e,t)=>[g(e,t),e])),[g,m]),Le=(0,u.useMemo)(()=>Array.from(_.keys()),[_]),v=(0,u.useRef)(null),y=(0,u.useRef)(null),{rowSelection:b,activateRowSelection:x}=se({availableRowIds:Le,rowById:_,selectionMode:a,selectedRowIds:ee,onRowSelectionChange:Ne}),{columnVisibility:S,onColumnVisibilityChange:C}=we({columnVisibility:oe,defaultColumnVisibility:ce,onColumnVisibilityChange:Se}),{columnOrder:w,onColumnOrderChange:T}=_e({columnOrder:ue,defaultColumnOrder:de,onColumnOrderChange:Ce}),{columnSizing:E,onColumnSizingChange:D}=he({columnSizing:o,defaultColumnSizing:pe,columnResizeMinWidth:xe,onColumnSizingChange:De}),{columnPinning:O,onColumnPinningChange:k}=ke({columnPinning:me,defaultColumnPinning:ge,onColumnPinningChange:Me}),A=(0,u.useMemo)(()=>({columnOrder:w,columnPinning:O,columnSizing:E,columnVisibility:S}),[w,O,E,S]),j=(0,u.useEffectEvent)(()=>{c?.()});(0,u.useEffect)(()=>{if(!c||!v.current||!y.current||t)return;let e=new IntersectionObserver(e=>{e[0]?.isIntersecting&&j()},{root:v.current,threshold:.1});return e.observe(y.current),()=>e.disconnect()},[t,c,m.length]);let M=je({features:re,data:m,columns:i,state:{columnOrder:w,columnPinning:O,columnSizing:E,columnVisibility:S,rowSelection:b},onColumnOrderChange:T,onColumnPinningChange:k,onColumnSizingChange:D,onColumnVisibilityChange:C,getRowId:(e,t)=>g(e,t),enableMultiRowSelection:a===`multi`,enableRowSelection:e=>a===`none`?!1:!l||l(e.original)}),N=Ae(M,A),P=M.getRowModel().rows,F=(0,u.useMemo)(()=>Te({rows:P,columns:N}),[P,N]),I=N[0]?.id;return(0,d.jsx)(Ee,{table:M,columnState:A,title:e,isLoading:t,isFetching:n,className:ne,minHeight:ie,tableClassName:ae,selectionMode:a,scrollableRef:v,onActivateRow:a!==`none`||s?e=>{x(e.id,e.getCanSelect()),s?.(e.original)}:void 0,isRowInteractive:e=>!!(s||a!==`none`&&e.getCanSelect()),getRowClassName:e=>f?.(e.original),getCellClassName:({row:e,cell:t})=>t.column.id===I&&e.getIsSelected()?Pe.selectedIndicatorCell:void 0,getCellLayout:({cell:e})=>F.get(e.id),renderHeaderContextMenu:Ie,enableColumnResizing:ve,enableColumnReordering:be,columnResizeMinWidth:xe,renderCellContent:e=>{let t=le({field:h.runtimeByColumnId[e.cell.column.id],rawValue:e.cell.getValue(),rowData:e.row.original,rowKind:`plain`}),n=fe({columnId:e.cell.column.id,runtimeByColumnId:h.runtimeByColumnId,customCellColumnIds:h.customCellColumnIds})?(0,d.jsx)(Oe,{displayValue:t,align:e.columnMeta?.align}):e.defaultContent;return p?p({...e,defaultContent:n,displayValue:t}):n},afterTableContent:c?(0,d.jsx)(`div`,{ref:y,className:Pe.sentinel,"aria-hidden":`true`}):null})}var u,d;function f(){return(f=e((()=>{u=n(),ue(),ae(),me(),be(),Se(),ve(),Ce(),Me(),ge(),xe(),De(),pe(),c(),d=r(),l.__docgenInfo={description:"Плоская таблица на базе TanStack Table как React-альтернатива `sap.m.Table`.",methods:[],displayName:`Table`,props:{title:{required:!1,tsType:{name:`string`},description:`Необязательный заголовок над таблицей.`},isLoading:{required:!1,tsType:{name:`boolean`},description:`Признак первичной загрузки.`},isFetching:{required:!1,tsType:{name:`boolean`},description:`Признак фоновой догрузки или обновления данных.`},data:{required:!0,tsType:{name:`union`,raw:`readonly TData[] | undefined | null`,elements:[{name:`unknown`},{name:`undefined`},{name:`null`}]},description:`Плоский источник строк.`},columns:{required:!0,tsType:{name:`unknown`},description:`Описание колонок таблицы.`},selectionMode:{required:!1,tsType:{name:`TableSelectionMode`},description:`Режим выбора строк.`,defaultValue:{value:`"none"`,computed:!1}},selectedRowIds:{required:!1,tsType:{name:`unknown`},description:`Внешний список выбранных строк.
|
|
2
2
|
|
|
3
3
|
Если передан, таблица синхронизирует визуальное выделение с этим набором id.`},getRowId:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(row: TData, index: number) => string`,signature:{arguments:[{type:{name:`TData`},name:`row`},{type:{name:`number`},name:`index`}],return:{name:`string`}}},description:`Стабильный идентификатор строки.
|
|
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-B3pr0MSX.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}from"./blocks-CBEn2XET.js";import{a as f,c as p,i as m,l as h,n as g,o as _,r as v,s as y,t as b,u as x}from"./Tabs.stories-CDKX0533.js";function S(e){let t={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...n(),...e.components};return(0,w.jsxs)(w.Fragment,{children:[(0,w.jsx)(s,{of:h,parameters:{docs:{toc:!0}}}),`
|
|
2
2
|
`,(0,w.jsx)(u,{children:`Tabs`}),`
|
|
3
3
|
`,(0,w.jsx)(o,{children:`Набор tabs-компонентов с разделением простого scroll-сценария и составного panel-layout сценария`}),`
|
|
4
4
|
`,(0,w.jsxs)(t.p,{children:[`После рефакторинга `,(0,w.jsx)(t.code,{children:`tabs`}),` разделены на два независимых сценария:`]}),`
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as e,n as t,r as n}from"./rolldown-runtime-DkW27tQK.js";import{t as r}from"./react-BZJXY1be.js";import{n as i}from"./iframe-
|
|
1
|
+
import{a as e,n as t,r as n}from"./rolldown-runtime-DkW27tQK.js";import{t as r}from"./react-BZJXY1be.js";import{n as i}from"./iframe-B3pr0MSX.js";import{a,i as o}from"./utils-tg3ibbzi.js";import{n as ee,t as s}from"./ui.module-31LPbZGK.js";import{i as c,n as te}from"./uiClasses-Bz6cvlDQ.js";import{n as l,t as u}from"./createControlledStoryRender-BouhvX-R.js";import{n as d,t as f}from"./Scrollable-ddtSKo90.js";import{a as ne,c as p,f as re,i as m,l as h,n as g,o as _,r as ie,s as v,t as y,u as ae}from"./TabsBox-C7XivHOT.js";function oe(e){let{type:t}=e;if(typeof t==`function`){let e=t;return e.displayName??e.name??null}if(typeof t==`object`&&t&&`displayName`in t){let e=t;return typeof e.displayName==`string`?e.displayName:null}return null}function b(e,t){return(0,T.isValidElement)(e)&&oe(e)===t}function x({children:e}){return(0,E.jsx)(E.Fragment,{children:e})}function S({children:e}){return(0,E.jsx)(E.Fragment,{children:e})}function C({children:e}){return(0,E.jsx)(E.Fragment,{children:e})}function w({children:e}){return(0,E.jsx)(E.Fragment,{children:e})}function se(e,t){let n=null,r=null,i=null;for(let a of T.Children.toArray(e)){if(!(0,T.isValidElement)(a))throw Error(`TabsLayout.Tab "${t}" поддерживает только дочерние элементы TabsLayout.Toolbar, TabsLayout.Content и TabsLayout.Footer.`);if(b(a,O)){if(n)throw Error(`TabsLayout.Tab "${t}" содержит более одного блока TabsLayout.Toolbar.`);n=a.props;continue}if(b(a,k)){if(r)throw Error(`TabsLayout.Tab "${t}" содержит более одного блока TabsLayout.Content.`);r=a.props;continue}if(b(a,A)){if(i)throw Error(`TabsLayout.Tab "${t}" содержит более одного блока TabsLayout.Footer.`);i=a.props;continue}throw Error(`TabsLayout.Tab "${t}" поддерживает только дочерние элементы TabsLayout.Toolbar, TabsLayout.Content и TabsLayout.Footer.`)}if(!r)throw Error(`TabsLayout.Tab "${t}" должен содержать блок TabsLayout.Content.`);return{toolbar:n,content:r,footer:i}}function ce(e){return T.Children.toArray(e).map(e=>{if(!b(e,D))throw Error(`TabsLayout принимает только дочерние элементы TabsLayout.Tab.`);return{id:e.props.id,title:e.props.title,disabled:e.props.disabled,...se(e.props.children,e.props.id)}})}var T,E,D,O,k,A,j,M;function N(){return(N=t((()=>{T=e(r(),1),o(),s(),c(),h(),p(),_(),m(),E=i(),D=`TabsLayout.Tab`,O=`TabsLayout.Toolbar`,k=`TabsLayout.Content`,A=`TabsLayout.Footer`,x.displayName=D,S.displayName=O,C.displayName=k,w.displayName=A,j=({children:e,value:t,defaultValue:n,onValueChange:r,className:i,orientation:o=`horizontal`,activationMode:s=`manual`,mountStrategy:c=`lazy`,loop:l=!0,tone:u=`primary`,clean:d=!1,"aria-label":f,"aria-labelledby":p})=>{let m=(0,T.useMemo)(()=>ce(e),[e]),h=ae({items:m,value:t,defaultValue:n,onValueChange:r,orientation:o,activationMode:s,loop:l}),g=a(v.tabsContainer,d?v.clean:ee.uiFilledPanel,v[o],te(u),i),_=a(v.panels,v.layoutPanels);return(0,E.jsxs)(`div`,{className:g,children:[(0,E.jsx)(ie,{items:m,state:h,className:v.tabs,ariaLabel:f,ariaLabelledBy:p}),(0,E.jsx)(`div`,{className:_,children:m.map(e=>{let t=e.id===h.selectedTabId;if(!re({mountStrategy:c,isSelected:t,isVisited:h.isVisited(e.id)}))return null;let n=`${e.toolbar?`auto `:``}minmax(0, 1fr)${e.footer?` auto`:``}`;return(0,E.jsx)(ne,{tabId:e.id,isSelected:t,className:v.panel,getTabElementId:h.getTabElementId,getPanelElementId:h.getPanelElementId,children:(0,E.jsxs)(`div`,{className:v.layoutPanel,style:{gridTemplateRows:n},children:[e.toolbar?(0,E.jsx)(`div`,{className:a(v.layoutSection,e.toolbar.className),children:e.toolbar.children}):null,(0,E.jsx)(`div`,{className:a(v.layoutSection,v.layoutContent,e.content.className),children:e.content.children}),e.footer?(0,E.jsx)(`div`,{className:a(v.layoutSection,e.footer.className),children:e.footer.children}):null]})},e.id)})})]})},j.displayName=`TabsLayout`,M=Object.assign(j,{Tab:x,Toolbar:S,Content:C,Footer:w}),j.__docgenInfo={description:`Compound-оболочка tabs для составных panel-layout сценариев.
|
|
2
2
|
Сам компонент управляет только переключением и каркасом панели.`,methods:[],displayName:`TabsLayout`,props:{value:{required:!1,tsType:{name:`string`},description:``},defaultValue:{required:!1,tsType:{name:`string`},description:``},onValueChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(value: string) => void`,signature:{arguments:[{type:{name:`string`},name:`value`}],return:{name:`void`}}},description:``},orientation:{required:!1,tsType:{name:`union`,raw:`"horizontal" | "vertical"`,elements:[{name:`literal`,value:`"horizontal"`},{name:`literal`,value:`"vertical"`}]},description:``,defaultValue:{value:`"horizontal"`,computed:!1}},activationMode:{required:!1,tsType:{name:`union`,raw:`"automatic" | "manual"`,elements:[{name:`literal`,value:`"automatic"`},{name:`literal`,value:`"manual"`}]},description:``,defaultValue:{value:`"manual"`,computed:!1}},mountStrategy:{required:!1,tsType:{name:`union`,raw:`"unmount" | "lazy" | "keep-mounted"`,elements:[{name:`literal`,value:`"unmount"`},{name:`literal`,value:`"lazy"`},{name:`literal`,value:`"keep-mounted"`}]},description:``,defaultValue:{value:`"lazy"`,computed:!1}},loop:{required:!1,tsType:{name:`boolean`},description:``,defaultValue:{value:`true`,computed:!1}},tone:{required:!1,tsType:{name:`union`,raw:`"primary" | "secondary" | "tertiary"`,elements:[{name:`literal`,value:`"primary"`},{name:`literal`,value:`"secondary"`},{name:`literal`,value:`"tertiary"`}]},description:``,defaultValue:{value:`"primary"`,computed:!1}},clean:{required:!1,tsType:{name:`boolean`},description:``,defaultValue:{value:`false`,computed:!1}},className:{required:!1,tsType:{name:`string`},description:``},"aria-label":{required:!1,tsType:{name:`string`},description:``},"aria-labelledby":{required:!1,tsType:{name:`string`},description:``},children:{required:!0,tsType:{name:`ReactNode`},description:``}}}})))()}var le=n({BoxBasic:()=>K,BoxControlled:()=>q,BoxMountStrategies:()=>Y,BoxVertical:()=>J,DisabledTabs:()=>X,Empty:()=>$,LayoutPanels:()=>Z,Loading:()=>Q,__namedExportsOrder:()=>ue,default:()=>W});function P({label:e}){let[t,n]=(0,I.useState)(0);return(0,L.jsxs)(`div`,{style:z,children:[(0,L.jsxs)(`div`,{children:[`Панель: `,e]}),(0,L.jsxs)(`div`,{children:[`Локальный счётчик: `,t]}),(0,L.jsx)(`button`,{type:`button`,onClick:()=>n(e=>e+1),children:`Увеличить`})]})}function F(e){return u((t,n)=>{let r=t.value??t.defaultValue,i=(0,L.jsx)(y,{...t,value:r,onValueChange:e=>{t.onValueChange?.(e),n({value:e})}});return e===void 0?i:(0,L.jsx)(`div`,{style:{height:e},children:i})})}var I,L,R,z,B,V,H,U,W,G,K,q,J,Y,X,Z,Q,$,ue;function de(){return(de=t((()=>{I=r(),g(),N(),l(),d(),L=i(),{fn:R}=__STORYBOOK_MODULE_TEST__,z={padding:16,display:`grid`,gap:12},B=[{id:`profile`,title:`Профиль`,content:(0,L.jsx)(`div`,{style:z,children:`Карточка пользователя и основные поля профиля.`})},{id:`settings`,title:`Настройки`,content:(0,L.jsx)(`div`,{style:z,children:`Параметры интерфейса, уведомлений и доступа.`})},{id:`history`,title:`История`,content:(0,L.jsx)(`div`,{style:z,children:`Последние действия, комментарии и изменения.`})}],V=[{id:`first`,title:`Первая`,content:(0,L.jsx)(P,{label:`Первая`})},{id:`second`,title:`Вторая`,content:(0,L.jsx)(P,{label:`Вторая`})},{id:`third`,title:`Третья`,content:(0,L.jsx)(P,{label:`Третья`})}],H=[{id:`overview`,title:`Обзор`,content:(0,L.jsx)(`div`,{style:z,children:`Раздел доступен сразу.`})},{id:`analytics`,title:`Аналитика`,disabled:!0,content:(0,L.jsx)(`div`,{style:z,children:`Пока недоступно.`})},{id:`history`,title:`История`,content:(0,L.jsx)(`div`,{style:z,children:`История изменений и действий.`})}],U=Array.from({length:12},(e,t)=>`Элемент ${t+1}`),W={title:`UI/Tabs`,component:y,args:{items:B,value:`profile`,onValueChange:R(),orientation:`horizontal`,activationMode:`automatic`,mountStrategy:`unmount`,isLoading:!1,loadingText:`Загрузка вкладок...`,clean:!1,loop:!0},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{items:{description:"Набор вкладок для `TabsBox`. Каждая вкладка задаётся через `id`, `title`, `content` и опциональный `disabled`.",control:!1},value:{description:`Активная вкладка в controlled-режиме.`,control:`text`},defaultValue:{description:`Начальная вкладка в uncontrolled-режиме.`,control:`text`},onValueChange:{description:`Вызывается при смене активной вкладки.`,control:!1},orientation:{description:`Направление списка вкладок.`,control:`inline-radio`,options:[`horizontal`,`vertical`]},activationMode:{description:"Режим клавиатурной активации: `automatic` меняет вкладку стрелками, `manual` только переводит фокус.",control:`inline-radio`,options:[`automatic`,`manual`]},mountStrategy:{description:"Политика монтирования панелей: `unmount`, `lazy` или `keep-mounted`.",control:`inline-radio`,options:[`unmount`,`lazy`,`keep-mounted`]},clean:{description:`Убирает базовые padding и surface-оформление panel-области.`,control:`boolean`},loop:{description:`Разрешает циклическую навигацию стрелками и Home/End.`,control:`boolean`},isLoading:{description:"Показывает loading-состояние `TabsBox`.",control:`boolean`},loadingText:{description:`Текст внутри loading-состояния.`,control:`text`},"aria-label":{description:"Собственное доступное имя `tablist`, если рядом нет видимого заголовка.",control:`text`},"aria-labelledby":{description:"Ссылка на внешний заголовок `tablist` вместо текстовой ARIA-метки.",control:`text`}}},G=u((e,t)=>{let n=e.value??e.defaultValue??`details`;return(0,L.jsx)(`div`,{style:{height:360},children:(0,L.jsxs)(M,{value:n,defaultValue:e.defaultValue,onValueChange:n=>{e.onValueChange?.(n),t({value:n})},orientation:e.orientation,activationMode:e.activationMode,mountStrategy:e.mountStrategy,loop:e.loop,clean:e.clean,className:e.className,"aria-label":e[`aria-label`],"aria-labelledby":e[`aria-labelledby`],children:[(0,L.jsxs)(M.Tab,{id:`details`,title:`Детали`,children:[(0,L.jsx)(M.Toolbar,{children:(0,L.jsx)(`div`,{className:`surface0 border radiusSm paddingSm`,children:`Панель инструментов вне scroll-области.`})}),(0,L.jsx)(M.Content,{children:(0,L.jsxs)(`div`,{style:{display:`grid`,gridTemplateColumns:`1fr 1fr`,gap:12,height:`100%`},children:[(0,L.jsx)(f,{className:`surface0 border radiusSm paddingSm h100`,children:U.map(e=>(0,L.jsxs)(`div`,{className:`paddingBlockXs`,children:[`Левая колонка: `,e]},`left-${e}`))}),(0,L.jsx)(f,{className:`surface0 border radiusSm paddingSm h100`,children:U.map(e=>(0,L.jsxs)(`div`,{className:`paddingBlockXs`,children:[`Правая колонка: `,e]},`right-${e}`))})]})}),(0,L.jsx)(M.Footer,{children:(0,L.jsx)(`div`,{className:`surface0 border radiusSm paddingSm`,children:`Футер тоже исключён из scroll-контента.`})})]}),(0,L.jsx)(M.Tab,{id:`history`,title:`История`,children:(0,L.jsx)(M.Content,{children:(0,L.jsx)(f,{className:`surface0 border radiusSm paddingSm h100`,children:U.map(e=>(0,L.jsxs)(`div`,{className:`paddingBlockXs`,children:[`История изменения: `,e]},`history-${e}`))})})})]})})}),K={args:{"aria-label":`Основные разделы профиля`},render:F()},q={args:{value:`settings`,"aria-label":`Управляемые вкладки`},render:F()},J={args:{orientation:`vertical`,"aria-label":`Вертикальные вкладки`},render:F(320)},Y={args:{items:V,mountStrategy:`lazy`,"aria-label":`Демонстрация стратегий монтирования`},render:F()},X={args:{items:H,value:`overview`,"aria-label":`Вкладки с недоступным разделом`},render:F()},Z={args:{value:`details`,onValueChange:R(),orientation:`horizontal`,activationMode:`manual`,mountStrategy:`lazy`,clean:!1,loop:!0,"aria-label":`Составные панели документа`},render:G},Q={args:{isLoading:!0,items:B},render:F()},$={args:{items:[],value:void 0},render:F()},K.parameters={...K.parameters,docs:{...K.parameters?.docs,source:{originalSource:`{
|
|
3
3
|
args: {
|
|
4
4
|
"aria-label": "Основные разделы профиля"
|
|
@@ -1,2 +1,2 @@
|
|
|
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-B3pr0MSX.js";import{a as r,i,o as a}from"./utils-tg3ibbzi.js";import{n as o,t as s}from"./ui.module-31LPbZGK.js";import{i as c,n as l}from"./uiClasses-Bz6cvlDQ.js";import{i as u,n as d,r as f,t as p}from"./NoData-CKGcddxk.js";import{n as m,t as h}from"./OneStepScroller-COlpXyui.js";function g(e){return e.find(e=>!e.disabled)?.id??null}function _(e,t){return t?e.find(e=>e.id===t&&!e.disabled)?.id??g(e):g(e)}function v(e){return e.filter(e=>!e.disabled)}function y({mountStrategy:e,isSelected:t,isVisited:n}){return e===`keep-mounted`||t||e===`lazy`&&n}function b(){return(b=e((()=>{})))()}function x({items:e,value:t,defaultValue:n,onValueChange:r,orientation:i=`horizontal`,activationMode:o=`automatic`,loop:s=!0}){let c=t!==void 0,l=(0,S.useMemo)(()=>v(e),[e]),u=l[0]?.id??null,[d,f]=(0,S.useState)(()=>_(e,n)),[p,m]=(0,S.useState)(()=>_(e,t??n)),h=_(e,t??n),[g,y]=(0,S.useState)(()=>h?new Set([h]):new Set),b=(0,S.useId)(),x=(0,S.useRef)({}),C=_(e,c?t:d),w=_(e,p)??C??u,T=(0,S.useMemo)(()=>{if(!C||g.has(C))return g;let e=new Set(g);return e.add(C),e},[C,g]),E=t=>{let n=_(e,t);n&&(y(e=>{if(e.has(n))return e;let t=new Set(e);return t.add(n),t}),c||f(n),r?.(n))},D=e=>{x.current[e]?.focus()},O=e=>{if(l.length<2)return;let t=Math.max(0,l.findIndex(e=>e.id===(w??C??u))),n=a({currentIndex:t,itemCount:l.length,key:e.key,orientation:i,wrap:s});if(n===null)return;e.preventDefault();let r=l[n]?.id;r&&(m(r),D(r),o===`automatic`&&E(r))},k=e=>{let t=e.relatedTarget;t instanceof Node&&e.currentTarget.contains(t)||m(C??u)},A=e=>`${b}-tab-${e}`,j=e=>`${b}-panel-${e}`;return{activationMode:o,orientation:i,selectedTabId:C,tabbableTabId:w,onTabListKeyDown:O,onTabListBlur:k,getTabElementId:A,getPanelElementId:j,getTabButtonProps:e=>{let t=e.id===C,n=e.id===w;return{ref:t=>{x.current[e.id]=t},type:`button`,role:`tab`,id:A(e.id),disabled:e.disabled,"aria-selected":t,"aria-controls":j(e.id),"aria-disabled":e.disabled||void 0,tabIndex:e.disabled?-1:n?0:-1,onFocus:()=>m(e.id),onClick:()=>E(e.id)}},isVisited:e=>T.has(e)}}var S;function C(){return(C=e((()=>{S=t(),i()})))()}var w,T,E,D,O,k,A,j,M,N,P,F,I,L,R,z;function B(){return(B=e((()=>{w=`pcMjuj`,T=`NLOw2z`,E=`ZSAoAa`,D=`psYhsZ`,O=`mNDq9-`,k=`_28F3fs`,A=`g156KO`,j=`C2mO1e`,M=`UKZXTZ`,N=`jiTafe`,P=`nhD0k7`,F=`G8FICe`,I=`W50XHh`,L=`vnjXkU`,R=`Nzvfhw`,z={tabsContainer:w,clean:T,tabs:E,panels:D,horizontal:O,tab:k,vertical:A,panelScrollable:j,selected:M,panel:N,panelBody:P,layoutPanels:F,layoutPanel:I,layoutSection:L,layoutContent:R}})))()}function V({containerClassName:e,tabListClassName:t,panelsClassName:n,panelClassName:i,panelBodyClassName:a,loadingText:o}){return(0,H.jsxs)(`div`,{className:e,children:[(0,H.jsx)(`div`,{className:t,"aria-hidden":`true`,children:(0,H.jsx)(`button`,{type:`button`,disabled:!0,"data-disabled":``,className:r(z.tab,`skeletonLine`),children:`Загрузка...`})}),(0,H.jsx)(`div`,{className:n,"aria-busy":`true`,children:(0,H.jsx)(`div`,{className:i,children:(0,H.jsx)(`div`,{className:a,children:(0,H.jsx)(f,{text:o,className:`radiusSm`})})})})]})}var H;function U(){return(U=e((()=>{i(),u(),B(),H=n(),V.__docgenInfo={description:"Служебное loading-состояние для `TabsBox`.",methods:[],displayName:`TabsLoadingState`,props:{containerClassName:{required:!0,tsType:{name:`string`},description:``},tabListClassName:{required:!0,tsType:{name:`string`},description:``},panelsClassName:{required:!0,tsType:{name:`string`},description:``},panelClassName:{required:!0,tsType:{name:`string`},description:``},panelBodyClassName:{required:!0,tsType:{name:`string`},description:``},loadingText:{required:!1,tsType:{name:`string`},description:``}}}})))()}function W({containerClassName:e,panelsClassName:t,panelClassName:n,panelBodyClassName:r}){return(0,G.jsx)(`div`,{className:e,children:(0,G.jsx)(`div`,{className:t,children:(0,G.jsx)(`div`,{className:n,children:(0,G.jsx)(`div`,{className:r,children:(0,G.jsx)(p,{className:`radiusSm`})})})})})}var G;function K(){return(K=e((()=>{d(),G=n(),W.__docgenInfo={description:"Служебное empty-состояние для `TabsBox`.",methods:[],displayName:`TabsNoDataState`,props:{containerClassName:{required:!0,tsType:{name:`string`},description:``},panelsClassName:{required:!0,tsType:{name:`string`},description:``},panelClassName:{required:!0,tsType:{name:`string`},description:``},panelBodyClassName:{required:!0,tsType:{name:`string`},description:``}}}})))()}function q({tabId:e,isSelected:t,className:n,getTabElementId:r,getPanelElementId:i,children:a}){return(0,J.jsx)(`div`,{role:`tabpanel`,id:i(e),"aria-labelledby":r(e),hidden:!t,className:n,children:a})}var J;function Y(){return(Y=e((()=>{t(),J=n(),q.__docgenInfo={description:``,methods:[],displayName:`TabsPanel`,props:{tabId:{required:!0,tsType:{name:`string`},description:``},isSelected:{required:!0,tsType:{name:`boolean`},description:``},className:{required:!1,tsType:{name:`string`},description:``},getTabElementId:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(tabId: string) => string`,signature:{arguments:[{type:{name:`string`},name:`tabId`}],return:{name:`string`}}},description:``},getPanelElementId:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(tabId: string) => string`,signature:{arguments:[{type:{name:`string`},name:`tabId`}],return:{name:`string`}}},description:``},children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``}}}})))()}function X({items:e,state:t,className:n,ariaLabel:i,ariaLabelledBy:a}){return(0,Z.jsx)(`div`,{className:n,role:`tablist`,"aria-orientation":t.orientation,"aria-label":i,"aria-labelledby":a,onKeyDown:t.onTabListKeyDown,onBlur:t.onTabListBlur,children:(e=>t.orientation===`horizontal`?(0,Z.jsx)(h,{children:e}):(0,Z.jsx)(Z.Fragment,{children:e}))(e.map(e=>(0,Z.jsx)(`button`,{...t.getTabButtonProps(e),"data-ui":`tabs-tab`,"data-action":`select-tab`,className:r(z.tab,`textWrap`,e.id===t.selectedTabId&&z.selected),children:e.title},e.id)))})}var Z;function Q(){return(Q=e((()=>{i(),m(),B(),Z=n(),X.__docgenInfo={description:``,methods:[],displayName:`TabsTabList`,props:{items:{required:!0,tsType:{name:`Array`,elements:[{name:`TabsDescriptor`}],raw:`TabsDescriptor[]`},description:``},state:{required:!0,tsType:{name:`TabsStateModel`},description:``},className:{required:!1,tsType:{name:`string`},description:``},ariaLabel:{required:!1,tsType:{name:`string`},description:``},ariaLabelledBy:{required:!1,tsType:{name:`string`},description:``}}}})))()}function ee({items:e,value:t,defaultValue:n,onValueChange:i,className:a,isLoading:s,loadingText:c,orientation:u=`horizontal`,activationMode:d=`automatic`,mountStrategy:f=`unmount`,loop:p=!0,tone:m=`primary`,clean:h=!1,"aria-label":g,"aria-labelledby":_}){let v=x({items:e,value:t,defaultValue:n,onValueChange:i,orientation:u,activationMode:d,loop:p}),b=r(z.tabsContainer,h?z.clean:o.uiFilledPanel,z[u],l(m),a),S=z.tabs,C=r(z.panels,z.panelScrollable,`scrollable overscroll`),w=z.panel,T=z.panelBody;return s?(0,$.jsx)(V,{containerClassName:b,tabListClassName:S,panelsClassName:C,panelClassName:w,panelBodyClassName:T,loadingText:c}):e.length?(0,$.jsxs)(`div`,{className:b,children:[(0,$.jsx)(X,{items:e,state:v,className:S,ariaLabel:g,ariaLabelledBy:_}),(0,$.jsx)(`div`,{className:C,children:e.map(e=>{let t=e.id===v.selectedTabId;return y({mountStrategy:f,isSelected:t,isVisited:v.isVisited(e.id)})?(0,$.jsx)(q,{tabId:e.id,isSelected:t,className:w,getTabElementId:v.getTabElementId,getPanelElementId:v.getPanelElementId,children:(0,$.jsx)(`div`,{className:T,children:e.content})},e.id):null})})]}):(0,$.jsx)(W,{containerClassName:b,panelsClassName:C,panelClassName:w,panelBodyClassName:T})}var $;function te(){return(te=e((()=>{i(),s(),c(),C(),B(),U(),K(),Y(),Q(),$=n(),ee.__docgenInfo={description:`Простой items-based tabs-компонент.
|
|
2
2
|
Сам управляет областью панели и её прокруткой.`,methods:[],displayName:`TabsBox`,props:{value:{required:!1,tsType:{name:`string`},description:``},defaultValue:{required:!1,tsType:{name:`string`},description:``},onValueChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(value: string) => void`,signature:{arguments:[{type:{name:`string`},name:`value`}],return:{name:`void`}}},description:``},orientation:{required:!1,tsType:{name:`union`,raw:`"horizontal" | "vertical"`,elements:[{name:`literal`,value:`"horizontal"`},{name:`literal`,value:`"vertical"`}]},description:``,defaultValue:{value:`"horizontal"`,computed:!1}},activationMode:{required:!1,tsType:{name:`union`,raw:`"automatic" | "manual"`,elements:[{name:`literal`,value:`"automatic"`},{name:`literal`,value:`"manual"`}]},description:``,defaultValue:{value:`"automatic"`,computed:!1}},mountStrategy:{required:!1,tsType:{name:`union`,raw:`"unmount" | "lazy" | "keep-mounted"`,elements:[{name:`literal`,value:`"unmount"`},{name:`literal`,value:`"lazy"`},{name:`literal`,value:`"keep-mounted"`}]},description:``,defaultValue:{value:`"unmount"`,computed:!1}},loop:{required:!1,tsType:{name:`boolean`},description:``,defaultValue:{value:`true`,computed:!1}},tone:{required:!1,tsType:{name:`union`,raw:`"primary" | "secondary" | "tertiary"`,elements:[{name:`literal`,value:`"primary"`},{name:`literal`,value:`"secondary"`},{name:`literal`,value:`"tertiary"`}]},description:``,defaultValue:{value:`"primary"`,computed:!1}},clean:{required:!1,tsType:{name:`boolean`},description:``,defaultValue:{value:`false`,computed:!1}},className:{required:!1,tsType:{name:`string`},description:``},"aria-label":{required:!1,tsType:{name:`string`},description:``},"aria-labelledby":{required:!1,tsType:{name:`string`},description:``},items:{required:!0,tsType:{name:`Array`,elements:[{name:`TabsBoxItem`}],raw:`TabsBoxItem[]`},description:``},isLoading:{required:!1,tsType:{name:`boolean`},description:``},loadingText:{required:!1,tsType:{name:`string`},description:``}}}})))()}export{q as a,B as c,b as d,y as f,Q as i,C as l,te as n,Y as o,X as r,z as s,ee as t,x as u};
|
|
@@ -1,4 +1,4 @@
|
|
|
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-DKa9bKVJ.js";import{n as i}from"./iframe-B3pr0MSX.js";import{a,i as o}from"./utils-tg3ibbzi.js";import{n as s,t as c}from"./ui.module-31LPbZGK.js";import{d as l,l as u,s as ee,u as d}from"./Input-Eg9_PEo7.js";function f(...e){return e.filter(Boolean).join(` `)||void 0}function p(e){return e.trim()}function m(e){return e}function h(e){return`Удалить тег «${e}»`}var g,_,v,y,b,x,S;function C(){return(C=e((()=>{g=`AoFB3K`,_=`PvaUEA`,v=`FZ-xEM`,y=`-RCqfG`,b=`ggY643`,x=`hiZq-y`,S={control:g,tagList:_,tag:v,tagText:y,removeButton:b,input:x}})))()}function w({ref:e,value:t,onChange:n,label:i,description:o,placeholder:c,size:u,disabled:d,readOnly:g=!1,error:_,onClearError:v,maxTags:y,normalizeTag:b=p,getTagKey:x=m,addOnBlur:C=!0,getRemoveButtonAriaLabel:w=h,tokensAriaLabel:k=`Добавленные теги`,inputClassName:A,className:j,id:M,name:N,form:P,required:te,maxLength:F,onKeyDown:ne,onPaste:re,onBlur:ie,onCompositionStart:ae,onCompositionEnd:oe,"aria-describedby":I,"aria-labelledby":L,...R}){let z=(0,T.useRef)(null),B=(0,T.useRef)(null),V=(0,T.useRef)(!1),[H,U]=(0,T.useState)(``),[W,G]=(0,T.useState)(``),{controlId:K,labelId:q,descriptionId:se,errorId:ce,describedBy:le}=l({id:M,hasLabel:i!=null,hasDescription:!!o,hasError:!!_}),J=y===void 0?1/0:Math.max(0,Math.floor(y)),Y=d||g,X=f(le,I),ue=f(q,L);(0,T.useImperativeHandle)(e,()=>{let e=z.current;if(!e)throw Error(`TagInput: внутренний input недоступен при создании imperative handle.`);return e},[]);let Z=e=>{if(Y)return;v?.();let r=[...t],i=new Set(r.map(e=>x(e))),a=[],o=0,s=!1;for(let t of e){let e=b(t);if(!e)continue;if(F!==void 0&&e.length>F){G(`Тег «${e}» длиннее допустимого значения.`);continue}let n=x(e);if(i.has(n)){o+=1;continue}if(r.length>=J){s=!0;break}i.add(n),r.push(e),a.push(e)}a.length>0?(n(r),G(a.length===1?`Добавлен тег «${a[0]}».`:`Добавлено тегов: ${a.length}.`)):s?G(`Достигнуто максимальное количество тегов: ${J}.`):o>0&&G(`Такой тег уже добавлен.`)},Q=()=>H?(Z(H.split(O)),U(``),!0):!1,$=e=>{if(Y)return;let r=t[e];r!==void 0&&(n(t.filter((t,n)=>n!==e)),v?.(),G(`Удалён тег «${r}».`),z.current?.focus())},de=e=>{if(ne?.(e),!(e.defaultPrevented||e.nativeEvent.isComposing||V.current||Y)){if(e.key===`Enter`||e.key===`,`){(Q()||e.key===`,`)&&e.preventDefault();return}e.key===`Backspace`&&H.length===0&&t.length>0&&(e.preventDefault(),$(t.length-1))}},fe=e=>{if(re?.(e),e.defaultPrevented||Y)return;let t=e.clipboardData.getData(`text`);if(!D.test(t))return;e.preventDefault();let n=e.currentTarget.selectionStart??H.length,r=e.currentTarget.selectionEnd??n,i=`${H.slice(0,n)}${t}${H.slice(r)}`;Z(i.split(O)),U(``)};return(0,E.jsxs)(ee,{label:i,description:o,disabled:d,className:j,size:u,error:_,controlId:K,labelId:q,descriptionId:se,errorId:ce,children:[(0,E.jsxs)(`div`,{ref:B,className:a(s.uiControl,_&&s.invalid,S.control),"data-disabled":d?``:void 0,"data-readonly":g?``:void 0,"data-invalid":_?``:void 0,onClick:()=>z.current?.focus(),children:[t.length>0&&(0,E.jsx)(`ul`,{className:S.tagList,"aria-label":k,children:t.map((e,t)=>(0,E.jsxs)(`li`,{className:S.tag,children:[(0,E.jsx)(`span`,{className:S.tagText,children:e}),!Y&&(0,E.jsx)(`button`,{type:`button`,className:S.removeButton,onClick:e=>{e.stopPropagation(),$(t)},"aria-label":w(e,t),children:(0,E.jsx)(r,{"aria-hidden":`true`})})]},`${x(e)}-${t}`))}),(0,E.jsx)(`input`,{...R,ref:z,id:K,form:P,disabled:d,readOnly:g,required:te&&t.length===0,maxLength:F,value:H,placeholder:t.length===0?c:void 0,"aria-invalid":!!_||void 0,"aria-labelledby":ue,"aria-describedby":X,className:a(S.input,A),onChange:e=>{let t=e.target.value,n=D.test(t);if(V.current)U(t);else if(n){let e=t.split(O),n=D.test(t.at(-1)??``)?``:e.pop()??``;Z(e),U(n)}else U(t);(V.current||!n)&&v?.()},onKeyDown:de,onPaste:fe,onCompositionStart:e=>{V.current=!0,ae?.(e)},onCompositionEnd:e=>{V.current=!1,oe?.(e)},onBlur:e=>{ie?.(e);let t=e.relatedTarget,n=t instanceof Node&&B.current?.contains(t);!e.defaultPrevented&&!n&&C&&!Y&&Q()}}),N&&t.map((e,t)=>(0,E.jsx)(`input`,{type:`hidden`,name:N,value:e,form:P,disabled:d},`${x(e)}-${t}`))]}),(0,E.jsx)(`span`,{className:`visuallyHidden`,"aria-live":`polite`,"aria-atomic":`true`,children:W})]})}var T,E,D,O;function k(){return(k=e((()=>{T=t(),o(),n(),u(),d(),c(),C(),E=i(),D=/[,\r\n]/,O=/[,\r\n]+/,w.__docgenInfo={description:"Controlled-поле для создания коротких строковых тегов.\n\nНовое значение фиксируется по `Enter`, запятой, вставке списка или потере фокуса. Компонент хранит\nтолько незавершённый текст input, а окончательный набор всегда принадлежит потребителю через `value`.",methods:[],displayName:`TagInput`,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:``},ref:{required:!1,tsType:{name:`Ref`,elements:[{name:`HTMLInputElement`}],raw:`Ref<HTMLInputElement>`},description:"Ссылка на внутренний нативный `input`, передаваемая напрямую как React 19 prop."},error:{required:!1,tsType:{name:`string`},description:"Сообщение валидации, связанное с полем через `aria-describedby`."},onClearError:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:`Сбрасывает внешнюю ошибку после изменения черновика или набора тегов.`},readOnly:{required:!1,tsType:{name:`boolean`},description:`Запрещает изменение набора тегов, сохраняя возможность выделять и копировать текст.`,defaultValue:{value:`false`,computed:!1}},maxTags:{required:!1,tsType:{name:`number`},description:`Максимальное количество тегов. Отсутствие значения не ограничивает набор.`},normalizeTag:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(value: string) => string`,signature:{arguments:[{type:{name:`string`},name:`value`}],return:{name:`string`}}},description:`Нормализует введённое значение перед проверкой дубликата и добавлением.
|
|
2
2
|
По умолчанию удаляет пробелы в начале и конце.`,defaultValue:{value:`function defaultNormalizeTag(value: string) {
|
|
3
3
|
return value.trim();
|
|
4
4
|
}`,computed:!1}},getTagKey:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(value: string) => string`,signature:{arguments:[{type:{name:`string`},name:`value`}],return:{name:`string`}}},description:`Возвращает ключ сравнения тегов. Позволяет, например, запретить дубликаты без учёта регистра.
|
package/storybook-static/assets/{TagInput.stories-6n-W9h6r.js → TagInput.stories-Dum4KJFn.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-B3pr0MSX.js";import{n as r,t as i}from"./createControlledStoryRender-BouhvX-R.js";import{n as a,t as o}from"./TagInput-9CihyZlQ.js";var s=t({Controlled:()=>d,ReadOnly:()=>f,__namedExportsOrder:()=>p,default:()=>u}),c,l,u,d,f,p;function m(){return(m=e((()=>{r(),a(),c=n(),l=i((e,t)=>(0,c.jsx)(o,{...e,value:e.value??[],onChange:n=>{e.onChange?.(n),t({value:n})},onClearError:()=>{e.onClearError?.(),t({error:void 0})}})),u={title:`UI/TagInput`,component:o,args:{value:[],onChange:()=>void 0},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{label:{description:`Заголовок поля тегов.`,control:`text`},description:{description:`Описание под заголовком.`,control:`text`},placeholder:{description:`Подсказка для черновика нового тега.`,control:`text`},value:{description:`Controlled-набор добавленных тегов.`,control:`object`},onChange:{description:`Возвращает новый набор после добавления или удаления тега.`,control:!1},error:{description:"Текст ошибки, связанный с полем через `aria-describedby`.",control:`text`},onClearError:{description:`Вызывается после изменения черновика или набора тегов.`,control:!1},disabled:{description:`Блокирует ввод и изменение набора тегов.`,control:`boolean`},size:{description:`Размер поля и подписи.`,control:`select`,options:[`xs`,`sm`,`md`,`lg`,`xl`]},maxTags:{description:`Максимальное количество тегов.`,control:{type:`number`,min:0,step:1}},readOnly:{description:`Показывает теги без действий добавления и удаления, сохраняя возможность копирования.`,control:`boolean`},normalizeTag:{description:`Нормализует введенный тег до проверки дубликата и добавления.`,control:!1},getTagKey:{description:`Формирует ключ для сравнения тегов и поиска дубликатов.`,control:!1},addOnBlur:{description:`Добавляет непустой черновик при уходе фокуса с поля.`,control:`boolean`},getRemoveButtonAriaLabel:{description:`Формирует доступное имя кнопки удаления конкретного тега.`,control:!1},tokensAriaLabel:{description:`Доступное имя списка уже добавленных тегов.`,control:`text`},inputClassName:{description:`CSS-класс внутреннего поля черновика тега.`,control:`text`}}},d={render:l,args:{label:`Теги материала`,description:`Введите значение и нажмите Enter или запятую. Можно вставить сразу несколько строк.`,placeholder:`Добавить тег`,value:[`Новости`,`Колледж`],maxTags:10,getTagKey:e=>e.toLocaleLowerCase(`ru`)}},f={render:l,args:{label:`Теги материала`,value:[`Новости`,`Колледж`],readOnly:!0}},d.parameters={...d.parameters,docs:{...d.parameters?.docs,source:{originalSource:`{
|
|
2
2
|
render: renderTagInputStory,
|
|
3
3
|
args: {
|
|
4
4
|
label: "Теги материала",
|
|
@@ -0,0 +1 @@
|
|
|
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}from"./iframe-B3pr0MSX.js";import{a as i,i as a}from"./utils-tg3ibbzi.js";function o({size:e,color:t,weight:n,italic:r,uppercase:a,wrap:o,className:s}){return(0,c.useMemo)(()=>{let c=[];return e&&c.push(d[e]),n&&c.push(f[n]),o&&c.push(p[o]),r&&c.push(`fontItalic`),a&&c.push(`textUppercase`),t&&c.push(u[t]),i(...c,s)},[e,n,t,r,a,o,s])}function s({children:e,as:t,style:n,role:r,...i}){let a=o(i);return(0,l.jsx)(t||`span`,{role:r,className:a,style:n,children:e})}var c,l,u,d,f,p;function m(){return(m=t((()=>{c=e(n(),1),a(),l=r(),u={primary:`content0`,secondary:`content1`,muted:`content2`,info:`statusInfo`,success:`statusSuccess`,warning:`statusWarning`,error:`statusError`,brand:`statusBrand`,accent:`contentAccent`},d={xs:`fontSizeXs`,sm:`fontSizeSm`,md:`fontSizeMd`,lg:`fontSizeLg`,xl:`fontSizeXl`},f={lighter:`fontLighter`,light:`fontLight`,regular:`fontRegular`,medium:`fontMedium`,bold:`fontBold`,bolder:`fontBolder`},p={wrap:`textWrap`,noWrap:`textNoWrap`},s.__docgenInfo={description:``,methods:[],displayName:`Text`,props:{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:``},color:{required:!1,tsType:{name:`union`,raw:`"primary" | "secondary" | "muted" | "error" | "warning" | "success" | "info" | "brand" | "accent"`,elements:[{name:`literal`,value:`"primary"`},{name:`literal`,value:`"secondary"`},{name:`literal`,value:`"muted"`},{name:`literal`,value:`"error"`},{name:`literal`,value:`"warning"`},{name:`literal`,value:`"success"`},{name:`literal`,value:`"info"`},{name:`literal`,value:`"brand"`},{name:`literal`,value:`"accent"`}]},description:``},weight:{required:!1,tsType:{name:`union`,raw:`"lighter" | "light" | "regular" | "medium" | "bold" | "bolder"`,elements:[{name:`literal`,value:`"lighter"`},{name:`literal`,value:`"light"`},{name:`literal`,value:`"regular"`},{name:`literal`,value:`"medium"`},{name:`literal`,value:`"bold"`},{name:`literal`,value:`"bolder"`}]},description:``},italic:{required:!1,tsType:{name:`boolean`},description:``},uppercase:{required:!1,tsType:{name:`boolean`},description:``},wrap:{required:!1,tsType:{name:`union`,raw:`"wrap" | "noWrap"`,elements:[{name:`literal`,value:`"wrap"`},{name:`literal`,value:`"noWrap"`}]},description:``},className:{required:!1,tsType:{name:`string`},description:``},style:{required:!1,tsType:{name:`CSSProperties`},description:``},role:{required:!1,tsType:{name:`AriaRole`},description:``},children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},as:{required:!1,tsType:{name:`union`,raw:`"code" | "span" | "p" | "div" | "h2" | "h3" | "h4" | "h5" | "h6"`,elements:[{name:`literal`,value:`"code"`},{name:`literal`,value:`"span"`},{name:`literal`,value:`"p"`},{name:`literal`,value:`"div"`},{name:`literal`,value:`"h2"`},{name:`literal`,value:`"h3"`},{name:`literal`,value:`"h4"`},{name:`literal`,value:`"h5"`},{name:`literal`,value:`"h6"`}]},description:``}}}})))()}export{m as n,s as t};
|
|
@@ -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-B3pr0MSX.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-CBEn2XET.js";import{a as p,i as m,n as h,r as g,t as _}from"./Textarea.stories-yFLMuluS.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:`Textarea`}),`
|
|
3
3
|
`,(0,b.jsx)(o,{children:`Многострочное текстовое поле для описаний, комментариев и заметок`}),`
|
|
4
4
|
`,(0,b.jsx)(t.p,{children:`Textarea уже имеет живые stories, а эта страница собирает их в структурированную документацию с краткими рекомендациями, примерами подключения и API.
|
|
@@ -1 +1 @@
|
|
|
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-B3pr0MSX.js";import{a as n,i as r}from"./utils-tg3ibbzi.js";import{n as i,t as a}from"./ui.module-31LPbZGK.js";import{d as o,l as s,s as c,u as l}from"./Input-Eg9_PEo7.js";var u,d;function f(){return(f=e((()=>{u=`TjY2iu`,d={textarea:u}})))()}function p({label:e,description:t,className:r,disabled:a,size:s,value:l,onChange:u,error:f,onClearError:p,id:h,...g}){let{controlId:_,labelId:v,descriptionId:y,errorId:b,describedBy:x}=o({id:h,hasLabel:e!=null,hasDescription:!!t,hasError:!!f});return(0,m.jsx)(c,{label:e,description:t,disabled:a,required:g.required,size:s,error:f,controlId:_,labelId:v,descriptionId:y,errorId:b,children:(0,m.jsx)(`textarea`,{...g,id:_,disabled:a,value:l,"aria-invalid":!!f||void 0,"aria-labelledby":v,"aria-describedby":x,"data-invalid":f?``:void 0,className:n(i.uiControl,d.textarea,`scrollable`,r),onChange:e=>{u?.(e.target.value),f&&p&&p()}})})}var m;function h(){return(h=e((()=>{r(),s(),l(),a(),f(),m=t(),p.__docgenInfo={description:`Многострочное текстовое поле для ввода свободного текста. Поддерживает подпись, описание, ошибки и единый визуальный стиль формы.`,methods:[],displayName:`Textarea`,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:``},error:{required:!1,tsType:{name:`string`},description:``},onClearError:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:``}},composes:[`Omit`]}})))()}export{h as n,p as t};
|
package/storybook-static/assets/{Textarea.stories-DERMMBc9.js → Textarea.stories-yFLMuluS.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-B3pr0MSX.js";import{n as r,t as i}from"./createControlledStoryRender-BouhvX-R.js";import{n as a,t as o}from"./Textarea-DQZ24GYg.js";var s=t({Controlled:()=>d,Disabled:()=>p,WithValue:()=>f,__namedExportsOrder:()=>m,default:()=>u}),c,l,u,d,f,p,m;function h(){return(h=e((()=>{r(),a(),c=n(),l=i((e,t)=>(0,c.jsx)(o,{...e,value:e.value??``,onChange:n=>{e.onChange?.(n),t({value:n})},onClearError:()=>{e.onClearError?.(),t({error:void 0})}})),u={title:`UI/Textarea`,component:o,args:{label:`Комментарий`,description:`Оставьте примечание к документу.`,placeholder:`Введите текст...`,disabled:!1,value:``,onChange:()=>void 0},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},error:{description:`Текст ошибки под полем.`,control:`text`},onClearError:{description:`Вызывается при вводе для сброса внешней ошибки.`,control:!1},disabled:{description:`Блокирует редактирование.`,control:`boolean`},size:{description:`Размер поля и подписи.`,control:`select`,options:[`xs`,`sm`,`md`,`lg`,`xl`]}}},d={args:{value:`Первичный комментарий`},render:l},f={args:{value:`Шаблонный текст для редактирования.`},render:l},p={args:{disabled:!0,value:`Редактирование недоступно.`},render:l},d.parameters={...d.parameters,docs:{...d.parameters?.docs,source:{originalSource:`{
|
|
2
2
|
args: {
|
|
3
3
|
value: "Первичный комментарий"
|
|
4
4
|
},
|
|
@@ -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-B3pr0MSX.js";import{a as r,i}from"./utils-tg3ibbzi.js";import{g as a,s as o}from"./odata-service-CWkHASdw-CXhFi03v.js";import{m as s,y as c}from"./formatters-D33Uh3si-Df97arf9.js";import{i as l,r as u}from"./date-segments-DeoMkKv9.js";function d(e=0,t=0){return s(S,C,w,e,t,0,0)}function f(e=`date-time`){return e===`time`?x:b}function p(e,t=`date-time`){if(e==null)return null;let n=o(e);return n?t===`time`?d(n.getHours(),n.getMinutes()):n:null}function m(e,t,n,r=`date-time`){let i=p(e,r);if(!i)return!1;if(r===`time`){let e=i.getHours()*60+i.getMinutes(),r=t?p(t,`time`):null,a=n?p(n,`time`):null;return!(r&&e<r.getHours()*60+r.getMinutes()||a&&e>a.getHours()*60+a.getMinutes())}return!(t&&i<t||n&&i>n)}function h(e,t){let n=p(t),r=n?.getHours()??0,i=n?.getMinutes()??0;return s(e.getFullYear(),e.getMonth(),e.getDate(),r,i,0,0)}function g(e,t,n,r=`date-time`){return r===`time`?d(t,n):s(e.getFullYear(),e.getMonth(),e.getDate(),t,n,0,0)}function _(e,t,n=`date-time`){return n===`time`?p(e,`time`)??d():p(e,n)??t}function v(e,t,n,r=`date-time`){let i=p(e,r)??e,a=t?p(t,r):null,o=n?p(n,r):null,s=!!a&&i.getFullYear()===a.getFullYear()&&i.getMonth()===a.getMonth()&&i.getDate()===a.getDate(),c=!!o&&i.getFullYear()===o.getFullYear()&&i.getMonth()===o.getMonth()&&i.getDate()===o.getDate(),l=s?a.getHours():0,u=c?o.getHours():23,d=s&&l===u?a.getMinutes():0,f=c&&l===u?o.getMinutes():59,m=l>u||l===u&&d>f;return{disabled:m,minHour:l,maxHour:u,minMinuteByHour:e=>m?0:s&&e===l?a.getMinutes():0,maxMinuteByHour:e=>m?59:c&&e===u?o.getMinutes():59}}function y(e,t,n,r,i,a=`date-time`){let o=v(e,r,i,a);if(o.disabled)return{hours:0,minutes:0};let s=Math.min(Math.max(t,o.minHour),o.maxHour),c=o.minMinuteByHour(s),l=o.maxMinuteByHour(s);return{hours:s,minutes:Math.min(Math.max(n,c),l)}}var b,x,S,C,w;function T(){return(T=e((()=>{u(),c(),a(),b=`dd.MM.yyyy HH:mm`,x=`HH:mm`,S=1970,C=0,w=1,l(x)})))()}function ee(e,t,n,r=`date-time`){let i=v(e,t,n,r),a=e.getHours(),o=e.getMinutes(),s=i.minMinuteByHour(a),c=i.maxMinuteByHour(a);return i.disabled?{disabled:!0,selectedHour:a,selectedMinute:o,hours:[],minutes:[]}:{disabled:!1,selectedHour:a,selectedMinute:o,hours:Array.from({length:i.maxHour-i.minHour+1},(e,t)=>i.minHour+t),minutes:Array.from({length:c-s+1},(e,t)=>s+t)}}function E(){return(E=e((()=>{T()})))()}function D(e,t){return t<=0||e<0?0:e>t-1?t-1:e}function te(e,t){return!Number.isFinite(e)||e<=0?t:Math.max(e,t)}function ne(e,t){return Math.max(1,Math.round(e/Math.max(1,t)))}function re(e,t){return Math.max(0,Math.round(e/2-t/2))}function O(e,t){return Math.max(0,Math.round(e*t))}function ie(e,t,n){return n<=0||t<=0?0:D(Math.round(e/t),n)}var k,A,j,M,N,P,F;function I(){return(I=e((()=>{k=`GLhdJ6`,A=`_2xLNL2`,j=`dgX32S`,M=`WfOtQ9`,N=`XIdSMi`,P=`_--Hsbk`,F={wheelPicker:k,viewport:A,scroller:j,items:M,item:N,selectionFrame:P}})))()}function L({items:e,value:t,onChange:n,ariaLabel:i,disabled:a,className:o,minHeight:s=B,visibleRows:c=V,formatItem:l,getItemKey:u}){let d=(0,R.useRef)(null),f=(0,R.useRef)(null),p=(0,R.useRef)(null),m=(0,R.useMemo)(()=>Math.max(0,e.findIndex(e=>Object.is(e,t))),[e,t]),[h,g]=(0,R.useState)(0),_=te(h,s),v=ne(_,c),y=re(_,v),b=(0,R.useRef)(m),x=(0,R.useCallback)(e=>Math.round(e.clientHeight),[]),S=(0,R.useCallback)(()=>{let t=f.current;if(!t||e.length===0)return;let r=ie(t.scrollTop,v,e.length);t.scrollTo({top:O(r,v),behavior:`smooth`}),r!==b.current&&(b.current=r,n(e[r]))},[v,e,n]),C=(0,R.useCallback)(()=>{p.current!==null&&window.clearTimeout(p.current),p.current=window.setTimeout(()=>{p.current=null,S()},H)},[S]);(0,R.useEffect)(()=>{let e=d.current;if(!e||typeof ResizeObserver>`u`)return;let t=e=>{g(t=>t===e?t:e)},n=new ResizeObserver(n=>{let r=n[0],i=Math.round(r?.contentRect.height??x(e));t(i)});return n.observe(e),t(x(e)),()=>n.disconnect()},[x]),(0,R.useEffect)(()=>{let t=f.current;if(!t||e.length===0)return;let n=D(m,e.length);b.current=n,t.scrollTo({top:O(n,v),behavior:`auto`})},[v,e.length,m]),(0,R.useEffect)(()=>{let e=f.current;if(!e)return;let t=()=>{a||C()},n=t=>{a||(t.preventDefault(),e.scrollTop+=t.deltaY,C())};return e.addEventListener(`scroll`,t,{passive:!0}),e.addEventListener(`wheel`,n,{passive:!1}),()=>{e.removeEventListener(`scroll`,t),e.removeEventListener(`wheel`,n)}},[a,e,n,C]),(0,R.useEffect)(()=>()=>{p.current!==null&&window.clearTimeout(p.current)},[]);let w=t=>{if(a||e.length===0||t.key!==`ArrowUp`&&t.key!==`ArrowDown`)return;t.preventDefault();let r=t.key===`ArrowUp`?-1:1,i=D(m+r,e.length);i!==m&&(b.current=i,n(e[i]))},T={"--wheel-picker-min-height":`${s}px`,"--wheel-picker-viewport-height":`${_}px`,"--wheel-picker-item-height":`${v}px`,"--wheel-picker-edge-padding":`${y}px`};return(0,z.jsx)(`div`,{ref:d,className:r(F.wheelPicker,o),style:T,children:(0,z.jsxs)(`div`,{className:F.viewport,children:[(0,z.jsx)(`div`,{ref:f,className:F.scroller,role:`listbox`,tabIndex:a?-1:0,"aria-label":i,"aria-disabled":a||void 0,onKeyDown:w,children:(0,z.jsx)(`div`,{className:F.items,children:e.map((e,t)=>{let r=t===m;return(0,z.jsx)(`button`,{type:`button`,role:`option`,"aria-selected":r,className:F.item,"data-selected":r?``:void 0,disabled:a,onClick:()=>{b.current=t,n(e)},children:l?.(e)??String(e)},u?.(e,t)??t)})})}),(0,z.jsx)(`div`,{className:F.selectionFrame,"aria-hidden":`true`})]})})}var R,z,B,V,H;function U(){return(U=e((()=>{R=t(),i(),I(),z=n(),B=192,V=7,H=96,L.__docgenInfo={description:`Внутренний wheel-picker со snap-кареткой по центру и блокировкой page scroll.`,methods:[],displayName:`WheelPicker`,props:{items:{required:!0,tsType:{name:`unknown`},description:``},value:{required:!0,tsType:{name:`T`},description:``},onChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(value: T) => void`,signature:{arguments:[{type:{name:`T`},name:`value`}],return:{name:`void`}}},description:``},ariaLabel:{required:!0,tsType:{name:`string`},description:``},disabled:{required:!1,tsType:{name:`boolean`},description:``},className:{required:!1,tsType:{name:`string`},description:``},minHeight:{required:!1,tsType:{name:`number`},description:``,defaultValue:{value:`192`,computed:!1}},visibleRows:{required:!1,tsType:{name:`number`},description:``,defaultValue:{value:`7`,computed:!1}},formatItem:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(item: T) => ReactNode`,signature:{arguments:[{type:{name:`T`},name:`item`}],return:{name:`ReactNode`}}},description:``},getItemKey:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(item: T, index: number) => Key`,signature:{arguments:[{type:{name:`T`},name:`item`},{type:{name:`number`},name:`index`}],return:{name:`Key`}}},description:``}}}})))()}var W,G,K,q,J,Y,X;function Z(){return(Z=e((()=>{W=`_5-SSnO`,G=`s1NHua`,K=`KQC9-8`,q=`WDu02W`,J=`_9mEhfD`,Y=`N-Fzjk`,X={timePanel:W,hint:G,fields:K,field:q,label:J,wheel:Y}})))()}function Q({value:e,disabled:t,minDate:n,maxDate:r,mode:i=`date-time`,onChange:a}){let o=ee(e,n,r,i),s=e=>String(e).padStart(2,`0`);return o.disabled?(0,$.jsx)(`div`,{className:X.timePanel,children:(0,$.jsx)(`p`,{className:X.hint,children:`Для выбранного дня нет доступного времени в заданном диапазоне.`})}):(0,$.jsx)(`div`,{className:X.timePanel,children:(0,$.jsxs)(`div`,{className:X.fields,children:[(0,$.jsxs)(`label`,{className:X.field,children:[(0,$.jsx)(`span`,{className:X.label,children:`Часы`}),(0,$.jsx)(L,{className:X.wheel,items:o.hours,value:o.selectedHour,onChange:e=>a(e,o.selectedMinute),ariaLabel:`Выбор часов`,disabled:t,formatItem:s})]}),(0,$.jsxs)(`label`,{className:X.field,children:[(0,$.jsx)(`span`,{className:X.label,children:`Минуты`}),(0,$.jsx)(L,{className:X.wheel,items:o.minutes,value:o.selectedMinute,onChange:e=>a(o.selectedHour,e),ariaLabel:`Выбор минут`,disabled:t,formatItem:s})]})]})})}var $;function ae(){return(ae=e((()=>{U(),E(),Z(),$=n(),Q.__docgenInfo={description:`Переиспользуемая панель выбора времени поверх internal wheel-picker.`,methods:[],displayName:`TimePanel`,props:{value:{required:!0,tsType:{name:`Date`},description:``},disabled:{required:!1,tsType:{name:`boolean`},description:``},minDate:{required:!1,tsType:{name:`Date`},description:``},maxDate:{required:!1,tsType:{name:`Date`},description:``},mode:{required:!1,tsType:{name:`union`,raw:`"date-time" | "time"`,elements:[{name:`literal`,value:`"date-time"`},{name:`literal`,value:`"time"`}]},description:``,defaultValue:{value:`"date-time"`,computed:!1}},onChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(hours: number, minutes: number) => void`,signature:{arguments:[{type:{name:`number`},name:`hours`},{type:{name:`number`},name:`minutes`}],return:{name:`void`}}},description:``}}}})))()}export{f as a,h as c,_ as d,d as i,g as l,ae as n,T as o,y as r,m as s,Q as t,p as u};
|
package/storybook-static/assets/{TimePanel.stories-CFprcZqB.js → TimePanel.stories-BlP2rln-.js}
RENAMED
|
@@ -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-B3pr0MSX.js";import{n,t as r}from"./createControlledStoryRender-BouhvX-R.js";import{n as i,t as a}from"./TimePanel-Bogchh-c.js";var o,s,c,l,u,d,f;function p(){return(p=e((()=>{n(),i(),o=t(),{fn:s}=__STORYBOOK_MODULE_TEST__,c={title:`UI/Internal/DateTime/TimePanel`,component:a,args:{value:new Date(2026,2,10,12,30,0,0),onChange:s(),disabled:!1,mode:`date-time`},parameters:{atomicCanvas:!0,layout:`centered`},argTypes:{value:{description:`Текущая дата, из которой панель берёт календарный день и время.`,control:!1},disabled:{description:`Блокирует оба wheel-picker-а.`,control:`boolean`},minDate:{description:`Нижняя граница доступного времени для выбранного дня.`,control:`date`},maxDate:{description:`Верхняя граница доступного времени для выбранного дня.`,control:`date`},mode:{description:`Режим вычисления доступного времени.`,control:`inline-radio`,options:[`date-time`,`time`]},onChange:{description:`Вызывается с выбранными часами и минутами.`,control:!1}}},l=r((e,t)=>{let n=e.value;return(0,o.jsx)(`div`,{style:{width:320,minHeight:280},children:(0,o.jsx)(a,{...e,value:n,onChange:(r,i)=>{e.onChange(r,i),t({value:new Date(n.getFullYear(),n.getMonth(),n.getDate(),r,i,0,0)})}})})}),u={render:l},d={render:l,args:{value:new Date(2026,2,10,9,30,0,0),minDate:new Date(2026,2,10,9,15,0,0),maxDate:new Date(2026,2,10,18,30,0,0)}},u.parameters={...u.parameters,docs:{...u.parameters?.docs,source:{originalSource:`{
|
|
2
2
|
render: renderTimePanelStory
|
|
3
3
|
}`,...u.parameters?.docs?.source},description:{story:`Демонстрирует базовую wheel-панель времени.`,...u.parameters?.docs?.description}}},d.parameters={...d.parameters,docs:{...d.parameters?.docs,source:{originalSource:`{
|
|
4
4
|
render: renderTimePanelStory,
|
|
@@ -1 +1 @@
|
|
|
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}from"./iframe-
|
|
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}from"./iframe-B3pr0MSX.js";import{a as i,i as a}from"./utils-tg3ibbzi.js";import{n as o,t as s}from"./ui.module-31LPbZGK.js";var c,l,u,d,f,p,m,h,g;function _(){return(_=t((()=>{c=`FFyoOs`,l=`zPYy7T`,u=`j6ek6R`,d=`HFTPXI`,f=`_0RK4xF`,p=`kDPnKt`,m=`DQHqws`,h=`nCQ9v4`,g={row:c,wrapper:l,input:u,track:d,thumb:f,unchecked:p,checked:m,option:h}})))()}function v({label:e,description:t,placeholder:n,disabled:r,size:a,className:s,onChange:c,value:l,id:u,checkedText:d=`ВКЛ`,uncheckedText:f=`ВЫКЛ`,labelPosition:p=`before`,...m}){let h=(0,y.useId)(),_=u??h,v=t?`${_}-description`:void 0,x=e??n,S=!!l,C=!x&&!m[`aria-label`]?`${f} / ${d}`:void 0,w=x?(0,b.jsx)(`label`,{htmlFor:_,className:o.uiLabel,children:x}):null;return(0,b.jsxs)(`div`,{className:i(o.uiElement,r&&o.disabled,a&&o.uiSizable,a&&o[a],s),"aria-disabled":r||void 0,children:[(0,b.jsxs)(`div`,{className:g.row,children:[p===`before`&&w,(0,b.jsxs)(`div`,{className:g.wrapper,children:[(0,b.jsx)(`input`,{...m,id:_,type:`checkbox`,role:`switch`,checked:S,disabled:r,"aria-checked":S,"aria-describedby":v,"aria-label":C,className:i(o.uiInputControl,g.input),onChange:e=>c?.(e.currentTarget.checked)}),(0,b.jsxs)(`div`,{className:g.track,"data-disabled":r||void 0,"aria-hidden":`true`,children:[(0,b.jsx)(`div`,{className:g.thumb}),(0,b.jsx)(`div`,{className:i(g.option,g.unchecked),children:f}),(0,b.jsx)(`div`,{className:i(g.option,g.checked),children:d})]})]}),p===`after`&&w]}),t&&(0,b.jsx)(`p`,{id:v,className:o.uiDescription,children:t})]})}var y,b;function x(){return(x=t((()=>{y=e(n(),1),a(),s(),_(),b=r(),v.__docgenInfo={description:`Переключаемая кнопка с сохранением активного состояния. Используется для локального выбора режима, фильтра или форматирования.`,methods:[],displayName:`Toggle`,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:``},checkedText:{required:!1,tsType:{name:`string`},description:``,defaultValue:{value:`"ВКЛ"`,computed:!1}},uncheckedText:{required:!1,tsType:{name:`string`},description:``,defaultValue:{value:`"ВЫКЛ"`,computed:!1}},labelPosition:{required:!1,tsType:{name:`union`,raw:`"before" | "after"`,elements:[{name:`literal`,value:`"before"`},{name:`literal`,value:`"after"`}]},description:``,defaultValue:{value:`"before"`,computed:!1}}},composes:[`Omit`]}})))()}export{x as n,v as t};
|
|
@@ -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-B3pr0MSX.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-CBEn2XET.js";import{a as p,i as m,n as h,r as g,t as _}from"./Toggle.stories-BaOfYMcT.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:m,parameters:{docs:{toc:!0}}}),`
|
|
2
2
|
`,(0,b.jsx)(u,{children:`Toggle`}),`
|
|
3
3
|
`,(0,b.jsx)(o,{children:`Переключаемый булев контрол для локальных режимов и простых опций`}),`
|
|
4
4
|
`,(0,b.jsx)(t.p,{children:`Toggle уже имеет живые stories, а эта страница собирает их в структурированную документацию с краткими рекомендациями, примерами подключения и API.
|