@ryuzaki13/react-foundation-ui 1.8.14 → 1.8.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunks/picker-BcB3rSQt.js.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +1 -1
- package/storybook-static/assets/{Badge-Sv6eRVzK.js → Badge-Cd8wL2_5.js} +1 -1
- package/storybook-static/assets/{Badge.stories-DVmquAc-.js → Badge.stories-qmcgnZqp.js} +1 -1
- package/storybook-static/assets/{BadgeList-CDdjSFhA.js → BadgeList-D_recioK.js} +1 -1
- package/storybook-static/assets/{Button-CkXBOqtg.js → Button-mFmU1oOO.js} +1 -1
- package/storybook-static/assets/{Button-DLdmu_Qa.js → Button-r1m3WVSm.js} +1 -1
- package/storybook-static/assets/{Button.stories-BhhPN3cO.js → Button.stories-KC_rNhgy.js} +1 -1
- package/storybook-static/assets/{CalendarView-Cz74PFcU.js → CalendarView-Ca-92AB8.js} +1 -1
- package/storybook-static/assets/{CheckBox-DcH3qwbm.js → CheckBox-PjOM6PPb.js} +1 -1
- package/storybook-static/assets/{CheckBox-8sW-kpX-.js → CheckBox-_CT1F9ZI.js} +1 -1
- package/storybook-static/assets/{CheckBox.stories-BA9MwVIi.js → CheckBox.stories-CskXA_JJ.js} +1 -1
- package/storybook-static/assets/{Color-6AOWCN3U-DW9_SixM.js → Color-6AOWCN3U-DZxFz7kD.js} +1 -1
- package/storybook-static/assets/{ContextMenu-6XIB9-E_.js → ContextMenu-BO54N0H5.js} +1 -1
- package/storybook-static/assets/{ContextMenu-oCfsHX5G.js → ContextMenu-BU04Ps17.js} +1 -1
- package/storybook-static/assets/{ContextMenu.stories-DsRiGv-d.js → ContextMenu.stories-DResblYn.js} +1 -1
- package/storybook-static/assets/{CustomOptionButton-By6XsDCG.js → CustomOptionButton-DNEfpxa7.js} +1 -1
- package/storybook-static/assets/{DateInput-CD_CDw8L.js → DateInput-2J6-7drW.js} +1 -1
- package/storybook-static/assets/{DateInput-CMxzQRo_.js → DateInput-Bf45fonQ.js} +1 -1
- package/storybook-static/assets/{DateInput.stories-BL0d4llb.js → DateInput.stories-BFRRZEeq.js} +1 -1
- package/storybook-static/assets/{DateRangePresetSelect-BeEhwdah.js → DateRangePresetSelect-B65sw1lG.js} +1 -1
- package/storybook-static/assets/{DateRangePresetSelect-393Izw7W.js → DateRangePresetSelect-C9PLmxCa.js} +1 -1
- package/storybook-static/assets/{DateRangePresetSelect.stories-BKRFlABX.js → DateRangePresetSelect.stories-kyRkdliY.js} +1 -1
- package/storybook-static/assets/{Detail-BbQSGgu7.js → Detail-j86sQMaj.js} +1 -1
- package/storybook-static/assets/{Detail.stories-BMD_2zWN.js → Detail.stories-BuMO8Gt-.js} +1 -1
- package/storybook-static/assets/{Dialog-CAM8VuM7.js → Dialog-0hxZqrhn.js} +1 -1
- package/storybook-static/assets/{Dialog-Dw9rG9oU.js → Dialog-CCDasyH8.js} +1 -1
- package/storybook-static/assets/{Dialog.stories-C3NKTM84.js → Dialog.stories-BP9A6sTr.js} +1 -1
- package/storybook-static/assets/{Disclosure-CRP1Wrwg.js → Disclosure--fLgwSlX.js} +1 -1
- package/storybook-static/assets/{Disclosure.stories-uOnVxNv4.js → Disclosure.stories-CtKC0jM5.js} +1 -1
- package/storybook-static/assets/{DisclosureGroup-CV9aHNnL.js → DisclosureGroup-Bx82uKUx.js} +1 -1
- package/storybook-static/assets/{DocsRenderer-JROSPFPF-Dt6sU0Wy.js → DocsRenderer-JROSPFPF-BjLzZKur.js} +1 -1
- package/storybook-static/assets/{DropZone-UOOd3d_D.js → DropZone-BZIVV2iW.js} +1 -1
- package/storybook-static/assets/{DropZone-1-qIEJTI.js → DropZone-pi2vfqkg.js} +1 -1
- package/storybook-static/assets/{DropZone.stories-P0P8n3BX.js → DropZone.stories-yl0Iutrj.js} +1 -1
- package/storybook-static/assets/{DropdownMenu-CIkQkHEe.js → DropdownMenu-C9AAgqp1.js} +1 -1
- package/storybook-static/assets/{ExpandableActionPanel-BVxtZtja.js → ExpandableActionPanel-PwZx0riF.js} +1 -1
- package/storybook-static/assets/{ExpandableActionPanel.stories-Bw-Nbxjl.js → ExpandableActionPanel.stories-BGPaWW2r.js} +1 -1
- package/storybook-static/assets/{Flex-v3qGyymY.js → Flex-Cx_mK6Wv.js} +1 -1
- package/storybook-static/assets/{Flex.stories-BZWj9Yqq.js → Flex.stories-BaUUOqvt.js} +1 -1
- package/storybook-static/assets/{FloatingPopover-CBzRVsZl.js → FloatingPopover-B2gHujX_.js} +1 -1
- package/storybook-static/assets/{FormattedTableCell-woQYObYH.js → FormattedTableCell-D13-RWK3.js} +1 -1
- package/storybook-static/assets/{Grid-BuA8kbGl.js → Grid-BsEEqRWi.js} +1 -1
- package/storybook-static/assets/{Grid.stories-DkQGjuPs.js → Grid.stories-BFCff6aq.js} +1 -1
- package/storybook-static/assets/{ImageCropper.stories-DWU8FP_b.js → ImageCropper.stories-BV3XnFOB.js} +1 -1
- package/storybook-static/assets/{ImageRenderer-BYrN4S_Z.js → ImageRenderer-Dm25cMqu.js} +1 -1
- package/storybook-static/assets/{ImageRenderer.stories-ChjsjhPh.js → ImageRenderer.stories-jpNl-qca.js} +1 -1
- package/storybook-static/assets/{ImageView.stories-CWkyOzLP.js → ImageView.stories-ENY_p3Tr.js} +1 -1
- package/storybook-static/assets/{ImageViewer.stories-BAJJBDHc.js → ImageViewer.stories-DYDopb5z.js} +2 -2
- package/storybook-static/assets/{ImageViewerRuntime-DGLE97-e.js → ImageViewerRuntime-BnX6E5BX.js} +1 -1
- package/storybook-static/assets/{Input-B8ZadIiC.js → Input-CUuoFQuS.js} +1 -1
- package/storybook-static/assets/{Input-BoKPLAe2.js → Input-D6v6vXs2.js} +1 -1
- package/storybook-static/assets/{Input.stories-JHdz5Jsc.js → Input.stories-Bl11Boc0.js} +1 -1
- package/storybook-static/assets/{InputDateTime-D0IxugsL.js → InputDateTime-Btte1yb6.js} +1 -1
- package/storybook-static/assets/{InputDateTime.stories-Ba0D7xF9.js → InputDateTime.stories-DED8uY8v.js} +1 -1
- package/storybook-static/assets/{InputFile--u_0dj3Y.js → InputFile-0mGcNzjQ.js} +1 -1
- package/storybook-static/assets/{InputFile-BTJBqn1m.js → InputFile-D03Y9DS1.js} +1 -1
- package/storybook-static/assets/{InputFile.stories-CwpNYB5J.js → InputFile.stories-Dwn11IMZ.js} +1 -1
- package/storybook-static/assets/{InputFiles-DwMvXQb3.js → InputFiles-DNv9_Zl9.js} +1 -1
- package/storybook-static/assets/{InputFiles-B6vhWm7I.js → InputFiles-DxZWFfGH.js} +1 -1
- package/storybook-static/assets/{InputFiles.stories-5oCc9HHg.js → InputFiles.stories-6RMS6Do3.js} +1 -1
- package/storybook-static/assets/{InputFilesList-D51n4iSR.js → InputFilesList-B8p3HnCy.js} +1 -1
- package/storybook-static/assets/{InputImage-bnYOQAkQ.js → InputImage-Dn09jypu.js} +1 -1
- package/storybook-static/assets/{InputImage-DPnitmQk.js → InputImage-Zz-edaAa.js} +1 -1
- package/storybook-static/assets/{InputImage.stories-uf2LvY4r.js → InputImage.stories-DxTFle9L.js} +1 -1
- package/storybook-static/assets/{InteractiveComponents-CJn1YMhT.js → InteractiveComponents-DUg07Olo.js} +1 -1
- package/storybook-static/assets/{InteractiveComponents.stories-fFTx5yhl.js → InteractiveComponents.stories-N4s2n_Ls.js} +1 -1
- package/storybook-static/assets/{LayoutPicker-C_NUvbsk.js → LayoutPicker-5H2ojo6P.js} +1 -1
- package/storybook-static/assets/{LayoutPicker-BPBdZChZ.js → LayoutPicker-Dn11ot6_.js} +1 -1
- package/storybook-static/assets/{LayoutPicker.stories-DBzM8rRy.js → LayoutPicker.stories-LxtmabZA.js} +1 -1
- package/storybook-static/assets/{Listbox-Cqgq5Wny.js → Listbox-CHr5iujw.js} +1 -1
- package/storybook-static/assets/{Listbox-D7jP8mCo.js → Listbox-mLHxtn2O.js} +1 -1
- package/storybook-static/assets/{Listbox.stories-X2jhmC90.js → Listbox.stories-CsXyGW1Q.js} +1 -1
- package/storybook-static/assets/{Modal-QiGhxbkR.js → Modal-BI1dVE-m.js} +1 -1
- package/storybook-static/assets/{Modal.stories-CPLTAhHy.js → Modal.stories-BHW8jSr8.js} +1 -1
- package/storybook-static/assets/{ModalManagerProvider-DpbTvfL4.js → ModalManagerProvider-CeMOCTK8.js} +1 -1
- package/storybook-static/assets/{MultiSelect-CJN6yc1C.js → MultiSelect-C6YHy5R-.js} +1 -1
- package/storybook-static/assets/{MultiSelect-DeAFY3RP.js → MultiSelect-DpEKWJmz.js} +1 -1
- package/storybook-static/assets/{MultiSelect.stories-DHrCaM8r.js → MultiSelect.stories-D02Hsz16.js} +1 -1
- package/storybook-static/assets/{NoData-Cw6KaFFK.js → NoData-C-yIjnFD.js} +1 -1
- package/storybook-static/assets/{NotificationsHost-BjEs_A2p.js → NotificationsHost-CJ8NevoN.js} +1 -1
- package/storybook-static/assets/{NotificationsHost.stories-DUyWIJ9o.js → NotificationsHost.stories-Deeqj-vL.js} +1 -1
- package/storybook-static/assets/{ODataMultiSelect-DsGVEtfr.js → ODataMultiSelect-BM8MOWSh.js} +1 -1
- package/storybook-static/assets/{ODataMultiSelect.stories-CV8LD8fz.js → ODataMultiSelect.stories-HDwtUh6c.js} +1 -1
- package/storybook-static/assets/{ODataSelect-nPkCWP7P.js → ODataSelect-DRV0B3jq.js} +1 -1
- package/storybook-static/assets/{ODataSelect.stories-BT5zNMAw.js → ODataSelect.stories-Z2JAZ57N.js} +1 -1
- package/storybook-static/assets/{ODataTreeMultiSelect-BnA7iZbw.js → ODataTreeMultiSelect-DKdF_F6p.js} +1 -1
- package/storybook-static/assets/{ODataTreeMultiSelect.stories-Ddu-3L1X.js → ODataTreeMultiSelect.stories-VuY_QHoo.js} +1 -1
- package/storybook-static/assets/{ODataTreeSelect-Df18JZjH.js → ODataTreeSelect-B-XFZOpe.js} +1 -1
- package/storybook-static/assets/{ODataTreeSelect.stories-CnbN0_2o.js → ODataTreeSelect.stories-Ab-RXekm.js} +1 -1
- package/storybook-static/assets/{OneStepScroller-pCI7NBLQ.js → OneStepScroller-9mds5c53.js} +1 -1
- package/storybook-static/assets/Option-B2xqGECu.css +1 -0
- package/storybook-static/assets/{Option-rYnCuHwV.js → Option-DfkEWwzD.js} +1 -1
- package/storybook-static/assets/{OptionButton-dRTEtcWJ.js → OptionButton-DWahCIT8.js} +1 -1
- package/storybook-static/assets/{PeriodSelect-BbxmKATg.js → PeriodSelect-BW3YoxkQ.js} +1 -1
- package/storybook-static/assets/{PeriodSelect-QdYqbYVi.js → PeriodSelect-Dq-W37HF.js} +1 -1
- package/storybook-static/assets/{PeriodSelect.stories-C_w6x_nb.js → PeriodSelect.stories-BjQPbsn1.js} +1 -1
- package/storybook-static/assets/{PickerTriggerActions-B9PzXuqb.js → PickerTriggerActions-VPjVDsB8.js} +1 -1
- package/storybook-static/assets/{Popover-C7EBSl-A.js → Popover-Bpkc-QNI.js} +1 -1
- package/storybook-static/assets/{Popover-DTIeV8sp.js → Popover-CRYM_B6x.js} +1 -1
- package/storybook-static/assets/{Popover.stories-DdK6opAj.js → Popover.stories-CujicoB1.js} +1 -1
- package/storybook-static/assets/{PresetRangeDateInput-BuzCEA0N.js → PresetRangeDateInput-KZTPa5UU.js} +1 -1
- package/storybook-static/assets/{PresetRangeDateInput-wM7gI2RF.js → PresetRangeDateInput-_UvZ2UBk.js} +1 -1
- package/storybook-static/assets/{PresetRangeDateInput.stories-BHzW7J5Y.js → PresetRangeDateInput.stories-B22ecf4X.js} +1 -1
- package/storybook-static/assets/{PresetSelect-qwyBKXya.js → PresetSelect-V3Q5wvgb.js} +1 -1
- package/storybook-static/assets/{README-BRAIrWZ5.js → README-3HMf3yqR.js} +1 -1
- package/storybook-static/assets/{README-DFH1zDp2.js → README-AQt7qJ7W.js} +1 -1
- package/storybook-static/assets/{README-rhPk9fCo.js → README-BAjxvhwh.js} +1 -1
- package/storybook-static/assets/{README-Bdo7L8re.js → README-BB7Lgly2.js} +1 -1
- package/storybook-static/assets/{README-Bt-vDWJK.js → README-BEQrIZ5L.js} +1 -1
- package/storybook-static/assets/{README-CYOVpnIy.js → README-BLSofAtH.js} +1 -1
- package/storybook-static/assets/{README-dokGlpDu.js → README-BNJPNc8i.js} +1 -1
- package/storybook-static/assets/{README-DLaJrEGM.js → README-BOv7ezhv.js} +1 -1
- package/storybook-static/assets/{README-CiQrgj9L.js → README-BQRECe8d.js} +1 -1
- package/storybook-static/assets/{README-CAN_sUOj.js → README-BRnBh6Tu.js} +1 -1
- package/storybook-static/assets/{README-kQRTlSA-.js → README-BRpU8Fmy.js} +1 -1
- package/storybook-static/assets/{README-Cjkxz5fF.js → README-BnVgUfhv.js} +1 -1
- package/storybook-static/assets/{README-Dy9sTa_6.js → README-BpkW8U_K.js} +1 -1
- package/storybook-static/assets/{README-BcQVOGWd.js → README-Br1dErfo.js} +1 -1
- package/storybook-static/assets/{README-C3kroViK.js → README-Bs6F_Q3w.js} +1 -1
- package/storybook-static/assets/{README-Ci8Dg8Od.js → README-ByLk-5zd.js} +1 -1
- package/storybook-static/assets/{README-CAu_o5w0.js → README-C36uF9yM.js} +1 -1
- package/storybook-static/assets/{README-DIqS0sM9.js → README-C3BIg5v-.js} +1 -1
- package/storybook-static/assets/{README-UoSNP7Tk.js → README-CDdbM2Np.js} +1 -1
- package/storybook-static/assets/{README-Cl_7GagY.js → README-CEEqW78q.js} +1 -1
- package/storybook-static/assets/{README-CjAvZYa8.js → README-CK26ng6m.js} +1 -1
- package/storybook-static/assets/{README-B6UdiKEB.js → README-CKG6cGUV.js} +1 -1
- package/storybook-static/assets/{README-CV3k61OS.js → README-CKbCeGtT.js} +1 -1
- package/storybook-static/assets/{README-CB8w2VUq.js → README-CPMEu0i6.js} +1 -1
- package/storybook-static/assets/{README-OYzQVQte.js → README-CQv7zPT0.js} +1 -1
- package/storybook-static/assets/{README-D1mTncLb.js → README-CjEYaXjX.js} +1 -1
- package/storybook-static/assets/{README-rzRXnvCP.js → README-Cwuvy0IL.js} +1 -1
- package/storybook-static/assets/{README-BbvZ3Kxp.js → README-D-1skID-.js} +1 -1
- package/storybook-static/assets/{README-a5ZgliOG.js → README-D4wzYKw5.js} +1 -1
- package/storybook-static/assets/{README-CnncCyVQ.js → README-DAcezYb8.js} +1 -1
- package/storybook-static/assets/{README-CJ5dluvT.js → README-DD6e3Ydn.js} +1 -1
- package/storybook-static/assets/{README-CrjrH7U6.js → README-DDF9EAsj.js} +1 -1
- package/storybook-static/assets/{README-Bs5hFsTF.js → README-DQMX-YcN.js} +1 -1
- package/storybook-static/assets/{README-BB1nn-L1.js → README-DQiDg0Ej.js} +1 -1
- package/storybook-static/assets/{README-BZ5VcRb-.js → README-DU0PNr5g.js} +1 -1
- package/storybook-static/assets/{README-BLliGbp2.js → README-DVDC23OS.js} +1 -1
- package/storybook-static/assets/{README-CeyhIAvP.js → README-DhZIv1bb.js} +1 -1
- package/storybook-static/assets/{README-CqqJTDcO.js → README-DizFKrIu.js} +1 -1
- package/storybook-static/assets/{README-DO23FJAl.js → README-DqOV9xsd.js} +1 -1
- package/storybook-static/assets/{README-3kx1b1eN.js → README-DtFQrkdB.js} +1 -1
- package/storybook-static/assets/{README-BS_UTHKY.js → README-Dy7OTSF0.js} +1 -1
- package/storybook-static/assets/{README-C1-upl_v.js → README-KdXavYiv.js} +1 -1
- package/storybook-static/assets/{README-JtT-ZtO0.js → README-LsX8KGnt.js} +1 -1
- package/storybook-static/assets/{README-B1TFddGZ.js → README-Voaet1kf.js} +1 -1
- package/storybook-static/assets/{README-CMdJkXoj.js → README-b5MI0JTI.js} +1 -1
- package/storybook-static/assets/{README-BxWQjG0l.js → README-b7R84daq.js} +1 -1
- package/storybook-static/assets/{README-CUjyWC3m.js → README-hPA4N5GJ.js} +1 -1
- package/storybook-static/assets/{README-twVQ7X9P.js → README-kwAqsQcU.js} +1 -1
- package/storybook-static/assets/{README-DeAPv0Mf.js → README-qNxuNw1o.js} +1 -1
- package/storybook-static/assets/{README-C5VbGqji.js → README-r-PjVZ4j.js} +1 -1
- package/storybook-static/assets/{README-rDh9Q6yY.js → README-sT7fyFbS.js} +1 -1
- package/storybook-static/assets/{README-Bl5v6SbZ.js → README-xoMblSgw.js} +1 -1
- package/storybook-static/assets/{README-BUwRENpH.js → README-zz7qZ-kP.js} +1 -1
- package/storybook-static/assets/{RadioButton-B_oQ8Wlu.js → RadioButton-Bdj7tRvi.js} +1 -1
- package/storybook-static/assets/{RadioButton-Baxj9d9s.js → RadioButton-C5mgdhJV.js} +1 -1
- package/storybook-static/assets/{RadioButton.stories-CsHPV3Wm.js → RadioButton.stories-68HY8Tq3.js} +1 -1
- package/storybook-static/assets/{RadioGroup-PH_lOUuL.js → RadioGroup-B2_rfL8_.js} +1 -1
- package/storybook-static/assets/{RadioGroup-Dz0J0QJk.js → RadioGroup-Btm4bb1t.js} +1 -1
- package/storybook-static/assets/{RadioGroup.stories-B3Nbh5ui.js → RadioGroup.stories-CTIJUhxX.js} +1 -1
- package/storybook-static/assets/{Scrollable-BnVRtd7g.js → Scrollable-DgEQLGqG.js} +1 -1
- package/storybook-static/assets/{Select-CqFdLQiM.js → Select-CmRKt9b9.js} +1 -1
- package/storybook-static/assets/{Select-DlCmYtXt.js → Select-DYvqpskM.js} +1 -1
- package/storybook-static/assets/{Select.stories-wUtNe9Ec.js → Select.stories-DujGCH5v.js} +1 -1
- package/storybook-static/assets/{SerializableSelect-Cxj4rBI9.js → SerializableSelect-Bi82ktzK.js} +1 -1
- package/storybook-static/assets/{SerializableSelect.stories-D8S4jMFa.js → SerializableSelect.stories-DeDjYO8N.js} +1 -1
- package/storybook-static/assets/{SingleDateTimeInput-B00ILEN6.js → SingleDateTimeInput-D99JYks1.js} +1 -1
- package/storybook-static/assets/{SingleDateTimeInput-Z6TGUUj6.js → SingleDateTimeInput-Dl-IhEW3.js} +1 -1
- package/storybook-static/assets/{SingleDateTimeInput.stories-CV6Nv9qi.js → SingleDateTimeInput.stories-xnJ7YLK0.js} +1 -1
- package/storybook-static/assets/{Slider-Dk01oltE.js → Slider-CaSDog2H.js} +1 -1
- package/storybook-static/assets/{Slider-B9FxWdEJ.js → Slider-cWqU8bNG.js} +1 -1
- package/storybook-static/assets/{Slider.stories-VNmcaz3A.js → Slider.stories-BLDOG5FI.js} +1 -1
- package/storybook-static/assets/{SliderInput-E86RlSIn.js → SliderInput-CaJdS2i0.js} +1 -1
- package/storybook-static/assets/{SliderInput-V3uHOcZ2.js → SliderInput-Rr6wAXtQ.js} +1 -1
- package/storybook-static/assets/{SliderInput.stories-Bwl2rOaJ.js → SliderInput.stories-BAVJpHS2.js} +1 -1
- package/storybook-static/assets/{Sortable-DaGz4_X2.js → Sortable-Cbc2J4vg.js} +1 -1
- package/storybook-static/assets/{Sortable.stories-Ba8gP0xY.js → Sortable.stories-BaOT8ABG.js} +1 -1
- package/storybook-static/assets/{Splitter-BIsxdfsl.js → Splitter-Bs2oNH3V.js} +1 -1
- package/storybook-static/assets/{Splitter.stories-DlgVxAnv.js → Splitter.stories-mKXGWtPi.js} +1 -1
- package/storybook-static/assets/{StateSelect-3pOCDdLu.js → StateSelect-BZ6KJPLV.js} +1 -1
- package/storybook-static/assets/{StateSelect-Q0-lss-x.js → StateSelect-QEzHQr08.js} +1 -1
- package/storybook-static/assets/{StateSelect.stories-B2W4sd0y.js → StateSelect.stories-DUwa5Z9a.js} +1 -1
- package/storybook-static/assets/{StringToggle.stories-CwhsQCkG.js → StringToggle.stories-CTZgmKuF.js} +1 -1
- package/storybook-static/assets/{Switch-8ZMASw90.js → Switch-Bu7xZxcM.js} +1 -1
- package/storybook-static/assets/{Switch-CxoCcf-H.js → Switch-DQf6-y-M.js} +1 -1
- package/storybook-static/assets/{Switch.stories-Ceo-Mw04.js → Switch.stories-CLldFQjp.js} +1 -1
- package/storybook-static/assets/{Table-nJgo4qpK.js → Table-Dy4kTsgo.js} +1 -1
- package/storybook-static/assets/{Table.stories-CSCZ9sFd.js → Table.stories-DItrtEro.js} +1 -1
- package/storybook-static/assets/{Tabs-D-gRjKef.js → Tabs-Cou2-9__.js} +1 -1
- package/storybook-static/assets/{Tabs.stories-EQ3VUnt-.js → Tabs.stories-Db-FIby8.js} +1 -1
- package/storybook-static/assets/{TabsBox-NrlLIwhz.js → TabsBox-DNC_y4n9.js} +1 -1
- package/storybook-static/assets/{TagInput-Drf7SeTu.js → TagInput-BvbklpLy.js} +1 -1
- package/storybook-static/assets/{TagInput.stories-BcM6J6I9.js → TagInput.stories-D3CMF9Sv.js} +1 -1
- package/storybook-static/assets/{Text-Ck_6UUKY.js → Text-CsENWaU0.js} +1 -1
- package/storybook-static/assets/{Textarea-DFko4W6r.js → Textarea-C6Hs-eqJ.js} +1 -1
- package/storybook-static/assets/{Textarea-C7SEoYQa.js → Textarea-DFI5Ws1q.js} +1 -1
- package/storybook-static/assets/{Textarea.stories-BW5QBRXP.js → Textarea.stories-B0FsLDeK.js} +1 -1
- package/storybook-static/assets/{TimePanel-BcCaEcjP.js → TimePanel-eOsTI1dD.js} +1 -1
- package/storybook-static/assets/{TimePanel.stories-OjUebxOe.js → TimePanel.stories-B9l1v3Dv.js} +1 -1
- package/storybook-static/assets/{Toggle-Cs5KD8Kd.js → Toggle-CGszrbXe.js} +1 -1
- package/storybook-static/assets/{Toggle-BN83AOrV.js → Toggle-CZKgT4N3.js} +1 -1
- package/storybook-static/assets/{Toggle.stories-UtFKPdYx.js → Toggle.stories-C_PUmN6S.js} +1 -1
- package/storybook-static/assets/{TreeMultiSelect-04RqLe9P.js → TreeMultiSelect-D83bkKbO.js} +1 -1
- package/storybook-static/assets/{TreeMultiSelect-CN_rnzFe.js → TreeMultiSelect-DAW7XHTo.js} +1 -1
- package/storybook-static/assets/{TreeMultiSelect.stories-BbYabVXc.js → TreeMultiSelect.stories-B6-GbDaH.js} +1 -1
- package/storybook-static/assets/{TreePickerBase-FDlZpaH2.js → TreePickerBase-BjfNILPl.js} +1 -1
- package/storybook-static/assets/{TreeSelect-DGSc7Vg9.js → TreeSelect-BHgUefe4.js} +1 -1
- package/storybook-static/assets/{TreeSelect-DT6WnSjM.js → TreeSelect-C-Z5-9OC.js} +1 -1
- package/storybook-static/assets/{TreeSelect.stories-C3jdjFQY.js → TreeSelect.stories-CBRtO9Kj.js} +1 -1
- package/storybook-static/assets/{TreeTable-_ymCr62E.js → TreeTable-DU7jAfe0.js} +1 -1
- package/storybook-static/assets/{TreeTable.stories-DHShLIUZ.js → TreeTable.stories-BuLbhkTe.js} +1 -1
- package/storybook-static/assets/{blocks-DcVVTXzf.js → blocks-DkP-disW.js} +3 -3
- package/storybook-static/assets/{check-5jIlw3QY.js → check-Byph9hF2.js} +1 -1
- package/storybook-static/assets/{chevron-down-CkkAjpRn.js → chevron-down-Cw1FtGoD.js} +1 -1
- package/storybook-static/assets/{chevron-left-DNKAotw1.js → chevron-left-nghJb29y.js} +1 -1
- package/storybook-static/assets/{chevron-right-CYbSLSbL.js → chevron-right-V6j6RRCv.js} +1 -1
- package/storybook-static/assets/{chunk-W22LQPXL-CfJS6YKX.js → chunk-W22LQPXL-BkQl_PH8.js} +1 -1
- package/storybook-static/assets/{circle-alert-DXlaxNFD.js → circle-alert-DgyD41ma.js} +1 -1
- package/storybook-static/assets/{circle-check-BEKmaVgA.js → circle-check-BM0j7r-l.js} +1 -1
- package/storybook-static/assets/{components-tbVBP-zS.js → components-BK9LfJzq.js} +3 -3
- package/storybook-static/assets/{contextMenu-DsufH6U8.js → contextMenu-BoxcMgou.js} +1 -1
- package/storybook-static/assets/{download-C9jGmfx6.js → download-aeiRfPxZ.js} +1 -1
- package/storybook-static/assets/{floating-ui.react-YV96fWnb.js → floating-ui.react-BJVEMSdr.js} +1 -1
- package/storybook-static/assets/{foundationApi-DoAXLuxI.js → foundationApi-Cvd7KXQf.js} +1 -1
- package/storybook-static/assets/{foundationLib-C7xkVQAX.js → foundationLib-YaTlXhRE.js} +1 -1
- package/storybook-static/assets/{hooks-pjRWWXeZ.js → hooks-DKYy0I_A.js} +1 -1
- package/storybook-static/assets/{iframe--RU38UHO.js → iframe-B3ihFulv.js} +3 -3
- package/storybook-static/assets/iframe-awhs6Z_E.js +1 -0
- package/storybook-static/assets/{info-CI9KvIum.js → info-C5owkkN0.js} +1 -1
- package/storybook-static/assets/{odata-bRglfPOU.js → odata-DlmzpDS_.js} +1 -1
- package/storybook-static/assets/{odataStoryFixtures-B8p8bkan.js → odataStoryFixtures-DhTYIcsn.js} +1 -1
- package/storybook-static/assets/{react-pQ8GL5b8.js → react-CtnlOSTm.js} +1 -1
- package/storybook-static/assets/{refresh-cw-BJlS8-cO.js → refresh-cw-MQmDpoTF.js} +1 -1
- package/storybook-static/assets/{settings-2-CDqhDJH7.js → settings-2-D9zikB_Q.js} +1 -1
- package/storybook-static/assets/{sortable-CPlbom2V.js → sortable-BOK4domV.js} +1 -1
- package/storybook-static/assets/{syntaxhighlighter-QEQV7K2Y-Dh9tQsbp.js → syntaxhighlighter-QEQV7K2Y-7Y8VrHOy.js} +1 -1
- package/storybook-static/assets/{trash-2-B3rSNw_b.js → trash-2-Dqzyyc3b.js} +1 -1
- package/storybook-static/assets/{triangle-alert-zaUE1fxx.js → triangle-alert-CEwrrnW4.js} +1 -1
- package/storybook-static/assets/{useODataSelectBase-DH9eFTxr.js → useODataSelectBase-CyWP1bEx.js} +1 -1
- package/storybook-static/assets/{useODataTreeData-BrcEV-bK.js → useODataTreeData-B1cOjoqN.js} +1 -1
- package/storybook-static/assets/{usePickerQuery-BbTJGOEV.js → usePickerQuery-D0p27nY5.js} +1 -1
- package/storybook-static/assets/{usePickerTriggerController-DNei2G7n.js → usePickerTriggerController-glJ8CgZA.js} +1 -1
- package/storybook-static/assets/{x-BiHHkto5.js → x-DRl6_8D4.js} +1 -1
- package/storybook-static/iframe.html +2 -2
- package/storybook-static/project.json +1 -1
- package/storybook-static/assets/Option-D4QaJs-4.css +0 -1
- package/storybook-static/assets/iframe-BpGl-WdJ.js +0 -1
|
@@ -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-B3ihFulv.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-DkP-disW.js";import{a as p,c as m,i as h,n as g,o as _,r as v,s as y,t as b}from"./PeriodSelect.stories-BjQPbsn1.js";function x(e){let t={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...n(),...e.components};return(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(s,{of:y,parameters:{docs:{toc:!0}}}),`
|
|
2
2
|
`,(0,C.jsx)(u,{children:`PeriodSelect`}),`
|
|
3
3
|
`,(0,C.jsx)(o,{children:`Выбор периода детализации дат с ограничением вариантов по связанному диапазону`}),`
|
|
4
4
|
`,(0,C.jsxs)(t.p,{children:[`PeriodSelect используется для выбора уровня детализации: `,(0,C.jsx)(t.code,{children:`day`}),`, `,(0,C.jsx)(t.code,{children:`week`}),`, `,(0,C.jsx)(t.code,{children:`month`}),` или `,(0,C.jsx)(t.code,{children:`year`}),`. Компонент хранит только id выбранного периода, а недоступность вариантов вычисляет по переданному `,(0,C.jsx)(t.code,{children:`dateRange`}),` и порогам `,(0,C.jsx)(t.code,{children:`maxDayRangeDays`}),` / `,(0,C.jsx)(t.code,{children:`maxWeekRangeWeeks`}),`.`]}),`
|
|
@@ -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-B3ihFulv.js";import{n as r,t as i}from"./Text-CsENWaU0.js";import{a,b as o,y as s}from"./formatters-D33Uh3si-CxrG0jsB.js";import{n as c,t as l}from"./createControlledStoryRender-BouhvX-R.js";import{n as u,t as d}from"./GridContainer-fKYgDsLl.js";import{r as f,t as p}from"./DateInput-2J6-7drW.js";import{i as m,n as h,r as g,t as _}from"./PeriodSelect-BW3YoxkQ.js";var v=t({AllAllowedOptionsDisabled:()=>A,AlternativeLabels:()=>k,AutoSwitchByRange:()=>D,Controlled:()=>E,Disabled:()=>j,MonthAndYear:()=>O,__namedExportsOrder:()=>M,default:()=>w});function y(e){return e!==void 0&&o(e)?e:null}var b,x,S,C,w,T,E,D,O,k,A,j,M;function N(){return(N=e((()=>{s(),f(),c(),u(),r(),m(),h(),b=n(),{fn:x}=__STORYBOOK_MODULE_TEST__,S=[new Date(2026,2,1,0,0,0),new Date(2026,2,14,23,59,59)],C=[new Date(2026,0,1,0,0,0),new Date(2026,4,20,23,59,59)],w={title:`Shared/UI/PeriodSelect`,component:_,args:{label:`Период детализации`,description:`Выберите уровень группировки дат.`,placeholder:`Выберите период`,value:`day`,onChange:x(),presetIds:g,dateRange:S,maxDayRangeDays:31,maxWeekRangeWeeks:26,disabled:!1,size:`md`},parameters:{atomicCanvas:!0,layout:`padded`,docs:{description:{component:`Select периода детализации дат. Компонент работает с id периода и может блокировать слишком детальные варианты по переданному диапазону дат.`}}},argTypes:{label:{description:`Заголовок поля.`,control:`text`},description:{description:`Описание под заголовком.`,control:`text`},placeholder:{description:`Текст, когда период не выбран.`,control:`text`},value:{description:`Текущий id периода.`,control:`select`,options:g},onChange:{description:`Вызывается с id выбранного периода.`,control:!1},options:{description:"Кастомный список периодов по контракту `PeriodSelectOption`; имеет приоритет над `presetIds`, `labels` и порогами диапазона.",control:!1},labels:{description:`Частичные подписи встроенных периодов поверх канонического каталога.`,control:`object`},presetIds:{description:"Разрешенные встроенные периоды. Порядок отображения остается `day → week → month → year`.",control:`check`,options:g},dateRange:{description:`Диапазон дат, по которому вычисляются заблокированные периоды.`,control:!1},maxDayRangeDays:{description:"Максимальное количество дней, при котором доступен период `day`.",control:{type:`number`,min:1,step:1}},maxWeekRangeWeeks:{description:"Максимальное количество недель, при котором доступен период `week`.",control:{type:`number`,min:1,step:1}},disabled:{description:`Блокирует взаимодействие с полем.`,control:`boolean`},size:{description:`Размер поля и подписей.`,control:`select`,options:[`xs`,`sm`,`md`,`lg`,`xl`]}}},T=l((e,t)=>{let n=y(e.dateRange),r=a(e.dateRange??null);return(0,b.jsxs)(d,{gap:`md`,children:[(0,b.jsx)(_,{...e,onChange:n=>{e.onChange(n),t({value:n})}}),(0,b.jsx)(p,{label:`Связанный диапазон дат`,placeholder:`дд.мм.гггг - дд.мм.гггг`,value:n,onChange:e=>t({dateRange:e??void 0})}),(0,b.jsxs)(i,{as:`p`,color:`secondary`,"aria-live":`polite`,children:[`Выбрано: `,(0,b.jsx)(i,{as:`code`,children:e.value??`не выбрано`}),`. Дней в диапазоне:`,` `,(0,b.jsx)(i,{as:`code`,children:r??`не задано`}),`.`]})]})}),E={name:`Контролируемый выбор`,render:T},D={name:`Автопереключение по диапазону`,args:{value:`day`,dateRange:C,maxDayRangeDays:31,maxWeekRangeWeeks:8},render:T},O={name:`Только месяцы и годы`,args:{value:`month`,presetIds:[`month`,`year`]},render:T},k={name:`Альтернативные подписи`,args:{value:`month`,labels:{day:`за день`,week:`за неделю`,month:`за месяц`,year:`за год`}},render:T},A={name:`Все разрешенные варианты недоступны`,args:{value:`day`,presetIds:[`day`,`week`],dateRange:C,maxDayRangeDays:31,maxWeekRangeWeeks:8},render:T},j={name:`Заблокированный контрол`,args:{disabled:!0,value:`week`}},E.parameters={...E.parameters,docs:{...E.parameters?.docs,source:{originalSource:`{
|
|
2
2
|
name: "Контролируемый выбор",
|
|
3
3
|
render: renderPeriodSelectStory
|
|
4
4
|
}`,...E.parameters?.docs?.source},description:{story:"Контролируемый сценарий синхронизирует `value` и `dateRange` через Storybook args.",...E.parameters?.docs?.description}}},D.parameters={...D.parameters,docs:{...D.parameters?.docs,source:{originalSource:`{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{n as t,t as n}from"./chevron-down-
|
|
1
|
+
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{n as t,t as n}from"./chevron-down-Cw1FtGoD.js";import{n as r}from"./iframe-B3ihFulv.js";import{a as i,i as a}from"./utils-tg3ibbzi.js";import{n as o,t as s}from"./ui.module-BDnTp43_.js";function c({open:e,disabled:t,children:r,onToggleMouseDown:a,onToggleClick:s,openAriaLabel:c=`Открыть список`,closeAriaLabel:u=`Закрыть список`}){return(0,l.jsxs)(`div`,{className:o.uiToggleButtonContainer,"data-disabled":t||void 0,children:[r,(0,l.jsx)(`div`,{className:o.uiButtonSeparator}),(0,l.jsx)(`button`,{type:`button`,disabled:t,"aria-label":e?u:c,className:o.uiToggleButton,onMouseDown:a,onClick:s,children:(0,l.jsx)(n,{className:i(o.uiToggleIcon,e&&o.uiToggleIconOpen)})})]})}var l;function u(){return(u=e((()=>{a(),t(),s(),l=r(),c.__docgenInfo={description:``,methods:[],displayName:`PickerTriggerActions`,props:{open:{required:!0,tsType:{name:`boolean`},description:``},disabled:{required:!1,tsType:{name:`boolean`},description:``},children:{required:!1,tsType:{name:`ReactNode`},description:``},onToggleMouseDown:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(event: MouseEvent<HTMLButtonElement>) => void`,signature:{arguments:[{type:{name:`MouseEvent`,elements:[{name:`HTMLButtonElement`}],raw:`MouseEvent<HTMLButtonElement>`},name:`event`}],return:{name:`void`}}},description:``},onToggleClick:{required:!0,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:``},openAriaLabel:{required:!1,tsType:{name:`string`},description:``,defaultValue:{value:`"Открыть список"`,computed:!1}},closeAriaLabel:{required:!1,tsType:{name:`string`},description:``,defaultValue:{value:`"Закрыть список"`,computed:!1}}}}})))()}export{u as n,c as t};
|
|
@@ -1,2 +1,2 @@
|
|
|
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-B3ihFulv.js";import{a as i,i as a}from"./utils-tg3ibbzi.js";import{a as o,d as s,g as c,l,m as u,n as d,p as f,r as p}from"./floating-ui.react-BJVEMSdr.js";import{a as m,i as h,n as g,r as _}from"./dom-DBd_DWF8.js";import{i as v,r as y}from"./FloatingPopover-B2gHujX_.js";import{n as b}from"./error-De9R4E_F.js";var x,S,C,w;function T(){return(T=t((()=>{x=`JK2Y7t`,S=`_5QtpCJ`,C=`hZuysP`,w={popover:x,primary:S,secondary:C}})))()}function E(){let e=(0,D.useContext)(O);if(!e)throw b({hookName:`usePopoverContext`,providerName:`Popover`});return e}var D,O;function k(){return(k=t((()=>{D=n(),O=(0,D.createContext)(null)})))()}var A,j,M;function N(){return(N=t((()=>{A=e(n(),1),p(),_(),a(),v(),T(),k(),j=r(),M=({children:e,onClose:t,closeOnOutside:n=!0,closeOnEscape:r=!0,disableOutsideClick:a=!1,background:o=`secondary`})=>{let{open:s,setOpen:c,refs:l,floatingStyles:u,middlewareData:f,placement:p,arrowRef:_}=E(),v=(0,A.useRef)(null),b=(0,A.useCallback)(e=>{v.current=e,l.setFloating(e)},[l]),x=m({active:s,initialFocus:`container`,restoreFocus:!0,containerRef:v}),S=(0,A.useCallback)(()=>{s&&(c(!1),t?.())},[c,t,s]);g({active:s,enabled:r,onDismiss:S,containerRef:x});let C=(0,A.useCallback)(()=>{!s||a||n&&S()},[s,a,n,S]);return h([l.floating,l.reference],C),s?(0,j.jsx)(d,{children:(0,j.jsxs)(`div`,{ref:b,style:u,className:i(w.popover,w[o]),role:`dialog`,"aria-modal":`true`,tabIndex:-1,children:[typeof e==`function`?e({setClose:S}):e,(0,j.jsx)(y,{ref:_,placement:p,middlewareData:f})]})}):null},M.__docgenInfo={description:`Содержимое Popover, отображаемое в портале.`,methods:[],displayName:`PopoverContent`,props:{children:{required:!0,tsType:{name:`union`,raw:`React.ReactNode | ((ctx: { setClose: () => void }) => React.ReactNode)`,elements:[{name:`ReactReactNode`,raw:`React.ReactNode`},{name:`unknown`}]},description:``},onClose:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:``},closeOnOutside:{required:!1,tsType:{name:`boolean`},description:``,defaultValue:{value:`true`,computed:!1}},closeOnEscape:{required:!1,tsType:{name:`boolean`},description:``,defaultValue:{value:`true`,computed:!1}},disableOutsideClick:{required:!1,tsType:{name:`boolean`},description:``,defaultValue:{value:`false`,computed:!1}},background:{required:!1,tsType:{name:`union`,raw:`"primary" | "secondary"`,elements:[{name:`literal`,value:`"primary"`},{name:`literal`,value:`"secondary"`}]},description:``,defaultValue:{value:`"secondary"`,computed:!1}}}}})))()}var P,F;function I(){return(I=t((()=>{P=n(),k(),F=({passive:e,children:t})=>{let{open:n,setOpen:r,refs:i}=E(),a=(0,P.useCallback)(n=>{t.props.onClick&&t.props.onClick(n),!n.defaultPrevented&&(n.preventDefault(),n.stopPropagation(),!e&&r(e=>!e))},[t,r,e]);return(0,P.cloneElement)(t,{ref:i.setReference,"aria-expanded":n,onClick:a})},F.__docgenInfo={description:``,methods:[],displayName:`PopoverTrigger`,props:{passive:{required:!1,tsType:{name:`literal`,value:`true`},description:``},children:{required:!0,tsType:{name:`ReactReactElement`,raw:`React.ReactElement<React.HTMLAttributes<Element> & { ref?: React.Ref<Element> }>`,elements:[{name:`intersection`,raw:`React.HTMLAttributes<Element> & { ref?: React.Ref<Element> }`,elements:[{name:`ReactHTMLAttributes`,raw:`React.HTMLAttributes<Element>`,elements:[{name:`Element`}]},{name:`signature`,type:`object`,raw:`{ ref?: React.Ref<Element> }`,signature:{properties:[{key:`ref`,value:{name:`ReactRef`,raw:`React.Ref<Element>`,elements:[{name:`Element`}],required:!1}}]}}]}]},description:``}}}})))()}var L,R,z,B;function V(){return(V=t((()=>{L=e(n(),1),p(),N(),k(),I(),R=r(),z=({children:e,open:t,defaultOpen:n,onOpenChange:r,placement:i=`bottom`})=>{let[a,d]=(0,L.useState)(n??!1),p=t!==void 0,m=p?t:a,h=(0,L.useCallback)(e=>{let t=typeof e==`function`?e(m):e;p||d(t),r?.(t)},[p,r,m]),g=(0,L.useRef)(null),{refs:_,floatingStyles:v,middlewareData:y,placement:b}=o({open:m,onOpenChange:h,placement:i,middleware:[f(8),s(),u({padding:16}),l({element:g.current})],whileElementsMounted:c});return(0,R.jsx)(O.Provider,{value:{open:m,setOpen:h,refs:_,floatingStyles:v,placement:b,middlewareData:y,arrowRef:g},children:e})},B=Object.assign(z,{Trigger:F,Content:M}),z.__docgenInfo={description:`Контролируемый Popover.
|
|
2
2
|
Используется в связке с Popover.Trigger и Popover.Content.`,methods:[],displayName:`PopoverRoot`,props:{children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``},placement:{required:!1,tsType:{name:`Placement`},description:``,defaultValue:{value:`"bottom"`,computed:!1}},open:{required:!1,tsType:{name:`boolean`},description:``},defaultOpen:{required:!1,tsType:{name:`boolean`},description:``},onOpenChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(open: boolean) => void`,signature:{arguments:[{type:{name:`boolean`},name:`open`}],return:{name:`void`}}},description:``}}}})))()}export{V as n,B 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-B3ihFulv.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-DkP-disW.js";import{a as p,i as m,n as h,o as g,r as _,t as v}from"./Popover.stories-CujicoB1.js";function y(e){let t={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...n(),...e.components};return(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(s,{of:m,parameters:{docs:{toc:!0}}}),`
|
|
2
2
|
`,(0,x.jsx)(u,{children:`Popover`}),`
|
|
3
3
|
`,(0,x.jsx)(o,{children:`Всплывающий контейнер, привязанный к trigger-элементу и поддерживающий управляемое открытие`}),`
|
|
4
4
|
`,(0,x.jsx)(t.p,{children:`Popover уже имеет живые stories, а эта страница собирает их в структурированную документацию с краткими рекомендациями, примерами подключения и API.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{t as n}from"./react-BZJXY1be.js";import{n as r}from"./iframe
|
|
1
|
+
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{t as n}from"./react-BZJXY1be.js";import{n as r}from"./iframe-B3ihFulv.js";import{n as i,t as a}from"./Popover-Bpkc-QNI.js";import{n as o,t as s}from"./Button-mFmU1oOO.js";import{n as c,t as l}from"./createControlledStoryRender-BouhvX-R.js";import{l as u,t as d}from"./Input-CUuoFQuS.js";var f=t({AnchorPlacement:()=>w,Controlled:()=>C,Default:()=>S,WithInteractiveContent:()=>T,__namedExportsOrder:()=>E,default:()=>x});function p({args:e,updateArgs:t,trigger:n,children:r}){return(0,_.jsxs)(a,{placement:e.placement,open:e.open,defaultOpen:e.defaultOpen,onOpenChange:n=>{e.onOpenChange?.(n),t({open:n})},children:[(0,_.jsx)(a.Trigger,{passive:e.passive,children:n(e.open===!0)}),(0,_.jsx)(a.Content,{onClose:()=>e.onClose?.(),closeOnOutside:e.closeOnOutside,closeOnEscape:e.closeOnEscape,disableOutsideClick:e.disableOutsideClick,background:e.background,children:r})]})}function m(e,t){return l((n,r)=>(0,_.jsx)(p,{args:n,updateArgs:r,trigger:e,children:t}))}function h({args:e,updateArgs:t}){let[n,r]=(0,g.useState)(``);return(0,_.jsx)(p,{args:e,updateArgs:t,trigger:()=>(0,_.jsx)(`button`,{type:`button`,children:`Форма`}),children:e=>(0,_.jsxs)(`form`,{onSubmit:t=>{t.preventDefault(),e.setClose()},style:{display:`flex`,flexDirection:`column`,gap:8,padding:12,width:180},children:[(0,_.jsx)(d,{label:`Имя`,placeholder:`Введите имя`,value:n,onChange:r}),(0,_.jsx)(s,{children:`Отправить`})]})})}var g,_,v,y,b,x,S,C,w,T,E;function D(){return(D=e((()=>{g=n(),o(),c(),u(),i(),_=r(),{useArgs:v}=__STORYBOOK_MODULE_PREVIEW_API__,{fn:y}=__STORYBOOK_MODULE_TEST__,b=[`top`,`top-start`,`top-end`,`right`,`right-start`,`right-end`,`bottom`,`bottom-start`,`bottom-end`,`left`,`left-start`,`left-end`],x={title:`Shared/UI/Popover`,component:a,args:{children:null,placement:`bottom`,open:!1,defaultOpen:!1,onOpenChange:y(),onClose:y(),closeOnOutside:!0,closeOnEscape:!0,disableOutsideClick:!1,background:`secondary`},parameters:{atomicCanvas:!0,layout:`centered`},argTypes:{children:{description:"Композиция из `Popover.Trigger` и `Popover.Content`.",control:!1},placement:{description:`Предпочтительное положение панели относительно trigger.`,control:`select`,options:b},open:{description:`Контролируемая видимость popover.`,control:`boolean`},defaultOpen:{description:`Начальная видимость в uncontrolled-режиме.`,control:`boolean`},onOpenChange:{description:`Вызывается при открытии и закрытии popover.`,control:!1},passive:{description:`Оставляет trigger пассивным: он получает reference, но не переключает popover по клику.`,control:`boolean`},onClose:{description:"Вызывается после закрытия Content через Escape, клик снаружи или `setClose`.",control:!1},closeOnOutside:{description:`Закрывает Content по клику снаружи.`,control:`boolean`},closeOnEscape:{description:`Закрывает Content по клавише Escape.`,control:`boolean`},disableOutsideClick:{description:`Игнорирует клики снаружи Content.`,control:`boolean`},background:{description:`Тема фона Content.`,control:`inline-radio`,options:[`primary`,`secondary`]}}},S={render:m(()=>(0,_.jsx)(`button`,{type:`button`,children:`Открыть`}),e=>(0,_.jsxs)(`div`,{style:{padding:12,maxWidth:160},children:[(0,_.jsx)(`p`,{children:`Пример простого поповера`}),(0,_.jsx)(`button`,{type:`button`,onClick:e.setClose,children:`Закрыть`})]}))},C={render:m(e=>(0,_.jsx)(`button`,{type:`button`,children:e?`Закрыть`:`Открыть`}),(0,_.jsx)(`div`,{style:{padding:12},children:`Контролируемый режим`}))},w={render:function(){let[e,t]=v(),n=(n,r)=>{e.onOpenChange?.(n),t(n?{open:!0,placement:r}:{open:!1})};return(0,_.jsx)(`div`,{style:{display:`flex`,gap:32,flexWrap:`wrap`,justifyContent:`center`},children:b.map(t=>(0,_.jsxs)(a,{placement:t,open:e.open===!0&&e.placement===t,defaultOpen:e.defaultOpen,onOpenChange:e=>n(e,t),children:[(0,_.jsx)(a.Trigger,{passive:e.passive,children:(0,_.jsx)(`button`,{type:`button`,children:t})}),(0,_.jsx)(a.Content,{onClose:()=>e.onClose?.(),closeOnOutside:e.closeOnOutside,closeOnEscape:e.closeOnEscape,disableOutsideClick:e.disableOutsideClick,background:e.background,children:(0,_.jsx)(`div`,{style:{padding:8},children:t})})]},t))})}},T={render:l((e,t)=>(0,_.jsx)(h,{args:e,updateArgs:t}))},S.parameters={...S.parameters,docs:{...S.parameters?.docs,source:{originalSource:`{
|
|
2
2
|
render: createPopoverStoryRender(() => <button type="button">Открыть</button>, ctx => <div style={{
|
|
3
3
|
padding: 12,
|
|
4
4
|
maxWidth: 160
|
|
@@ -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-B3ihFulv.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-DkP-disW.js";import{n as p,r as m,t as h}from"./PresetRangeDateInput.stories-B22ecf4X.js";function g(e){let t={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...n(),...e.components};return(0,v.jsxs)(v.Fragment,{children:[(0,v.jsx)(s,{of:p,parameters:{docs:{toc:!0}}}),`
|
|
2
2
|
`,(0,v.jsx)(u,{children:`PresetRangeDateInput`}),`
|
|
3
3
|
`,(0,v.jsx)(o,{children:`Составной контрол диапазона дат с синхронизацией ручного ввода и готовых пресетов`}),`
|
|
4
4
|
`,(0,v.jsx)(t.p,{children:`PresetRangeDateInput уже имеет живые stories, а эта страница собирает их в структурированную документацию с краткими рекомендациями, примерами подключения и API.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{t}from"./react-BZJXY1be.js";import{n}from"./iframe
|
|
1
|
+
import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{t}from"./react-BZJXY1be.js";import{n}from"./iframe-B3ihFulv.js";import{n as r,t as i}from"./FlexContainer-BWyPlTMB.js";import{r as a,t as o}from"./DateInput-2J6-7drW.js";import{a as s,c,l,n as u,o as d,r as f,s as p,t as m}from"./DateRangePresetSelect-C9PLmxCa.js";function h(e){return e??`__empty__`}function g({value:e,onChange:t,presetId:n,onPresetIdChange:r,referenceDate:a,presetIds:s,presetOptions:u,presetLabel:g,presetDescription:y,presetPlaceholder:b=`Выберите пресет диапазона`,presetDisabled:x,...S}){let[C]=(0,_.useState)(()=>new Date),w=a??C,T=(0,_.useMemo)(()=>u??c(d(s,f)),[s,u]),E=e??null,D=(0,_.useMemo)(()=>p(E,w,T),[E,T,w]),O=n??D??void 0,k=(0,_.useRef)(``),A=(0,_.useCallback)(e=>{if(!r)return;let t=h(e);t!==k.current&&(k.current=t,r(e))},[r]),j=e=>{let n=l(e,w,T);if(!n){A(null);return}A(n.id),t(n.range)},M=e=>{t(e),A(p(e,w,T))};return(0,v.jsxs)(i,{gap:`sm`,align:`end`,children:[(0,v.jsx)(m,{size:S.size,label:g,description:y,placeholder:b,disabled:x??S.disabled,value:O,onChange:j,options:T,referenceDate:w}),(0,v.jsx)(o,{...S,value:E,onChange:M})]})}var _,v;function y(){return(y=e((()=>{_=t(),a(),u(),s(),r(),v=n(),g.__docgenInfo={description:`Составной компонент выбора диапазона дат через пресет или ручной ввод.`,methods:[],displayName:`PresetRangeDateInput`,props:{presetId:{required:!1,tsType:{name:`union`,raw:`DateRangePresetOption["id"] | null`,elements:[{name:`DateRangePresetOption["id"]`,raw:`DateRangePresetOption["id"]`},{name:`null`}]},description:``},onPresetIdChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(presetId: DateRangePresetOption["id"] | null) => void`,signature:{arguments:[{type:{name:`union`,raw:`DateRangePresetOption["id"] | null`,elements:[{name:`DateRangePresetOption["id"]`,raw:`DateRangePresetOption["id"]`},{name:`null`}]},name:`presetId`}],return:{name:`void`}}},description:``},referenceDate:{required:!1,tsType:{name:`Date`},description:``},presetIds:{required:!1,tsType:{name:`unknown`},description:``},presetOptions:{required:!1,tsType:{name:`unknown`},description:``},presetLabel:{required:!1,tsType:{name:`ReactNode`},description:``},presetDescription:{required:!1,tsType:{name:`string`},description:``},presetPlaceholder:{required:!1,tsType:{name:`string`},description:``,defaultValue:{value:`"Выберите пресет диапазона"`,computed:!1}},presetDisabled:{required:!1,tsType:{name:`boolean`},description:``}},composes:[`Omit`]}})))()}export{y as n,g as t};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{a as n,i as r,r as i}from"./CalendarView-
|
|
1
|
+
import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{a as n,i as r,r as i}from"./CalendarView-Ca-92AB8.js";import{n as a}from"./iframe-B3ihFulv.js";import{n as o,t as s}from"./Text-CsENWaU0.js";import{n as c,t as l}from"./FlexContainer-BWyPlTMB.js";import{n as u,t as d}from"./createControlledStoryRender-BouhvX-R.js";import{a as f,r as p}from"./DateRangePresetSelect-C9PLmxCa.js";import{n as m,t as h}from"./PresetRangeDateInput-_UvZ2UBk.js";var g=t({Default:()=>x,__namedExportsOrder:()=>S,default:()=>y}),_,v,y,b,x,S;function C(){return(C=e((()=>{n(),f(),u(),c(),o(),m(),_=a(),{fn:v}=__STORYBOOK_MODULE_TEST__,y={title:`Shared/UI/PresetRangeDateInput`,component:h,args:{label:`Диапазон дат`,placeholder:`дд.мм.гггг - дд.мм.гггг`,value:[new Date(2026,2,10,0,0,0),new Date(2026,2,10,23,59,59)],onChange:v(),presetId:`today`,onPresetIdChange:v(),referenceDate:new Date(2026,2,10,12,0,0),presetLabel:`Быстрый диапазон`,size:`md`},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{presetId:{description:"Контролируемый ID выбранного быстрого пресета. `null` снимает внешний выбор.",control:`select`,options:[...p,null]},onPresetIdChange:{description:`Вызывается, когда выбор пресета меняется из-за preset или ручного диапазона.`,control:!1},referenceDate:{description:`Опорная дата для вычисления встроенных быстрых диапазонов.`,control:`date`},presetIds:{description:"Разрешённые встроенные ID пресетов, если не передан `presetOptions`.",control:`check`,options:p},presetOptions:{description:`Кастомный каталог быстрых диапазонов с функциями вычисления.`,control:!1},presetLabel:{description:`Заголовок поля быстрого выбора.`,control:`text`},presetDescription:{description:`Описание под полем быстрого выбора.`,control:`text`},presetPlaceholder:{description:`Текст до выбора быстрого диапазона.`,control:`text`},presetDisabled:{description:`Блокирует только выбор быстрого пресета.`,control:`boolean`},label:{description:`Заголовок ручного поля диапазона.`,control:`text`},description:{description:`Описание ручного поля диапазона.`,control:`text`},placeholder:{description:`Текст до выбора ручного диапазона.`,control:`text`},value:{description:`Текущий ручной диапазон дат.`,control:!1},onChange:{description:`Вызывается при изменении ручного диапазона или выборе пресета.`,control:!1},error:{description:`Текст внешней ошибки ручного поля.`,control:`text`},onClearError:{description:`Сбрасывает внешнюю ошибку после ввода или выбора.`,control:!1},minDate:{description:`Минимально доступная дата ручного диапазона.`,control:`date`},maxDate:{description:`Максимально доступная дата ручного диапазона.`,control:`date`},datePreset:{description:`Пресет форматирования выбранного ручного диапазона.`,control:`text`},datePickerLevel:{description:`Минимальный уровень навигации календаря ручного поля.`,control:`select`,options:[`day`,`month`,`year`]},selectionMode:{description:`Размер периода, который выбирает ручное поле.`,control:`select`,options:i},weekEndDay:{description:`Последний включённый день недели в режиме week.`,control:`select`,options:r},allowSelectionModeChange:{description:`Показывает runtime-переключатель размера периода.`,control:`boolean`},selectionModeOptions:{description:`Ограничивает доступные режимы в runtime-переключателе.`,control:`check`,options:i},onSelectionModeChange:{description:`Вызывается при runtime-смене размера периода.`,control:!1},disabled:{description:"Блокирует ручное поле и, если `presetDisabled` не задан, быстрый выбор.",control:`boolean`},size:{description:`Размер обоих полей.`,control:`select`,options:[`xs`,`sm`,`md`,`lg`,`xl`]}}},b=d((e,t)=>(0,_.jsxs)(_.Fragment,{children:[(0,_.jsx)(l,{gap:`sm`,align:`end`,children:(0,_.jsx)(h,{...e,value:e.value??null,onChange:n=>{e.onChange(n),t({value:n})},onPresetIdChange:n=>{e.onPresetIdChange?.(n),t({presetId:n})},onSelectionModeChange:n=>{e.onSelectionModeChange?.(n),t({selectionMode:n})},onClearError:()=>{e.onClearError?.(),t({error:void 0})}})}),(0,_.jsxs)(s,{as:`p`,className:`marginBlockSm`,children:[`Активный presetId: `,(0,_.jsx)(s,{as:`code`,children:e.presetId??`null`})]})]})),x={render:b},x.parameters={...x.parameters,docs:{...x.parameters?.docs,source:{originalSource:`{
|
|
2
2
|
render: renderPresetRangeDateInputStory
|
|
3
3
|
}`,...x.parameters?.docs?.source},description:{story:`Демонстрирует совместную работу пресета и ручного диапазона.`,...x.parameters?.docs?.description}}},S=[`Default`]})))()}export{g as n,C as r,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-B3ihFulv.js";import{n,t as r}from"./Select-DYvqpskM.js";function i(e,t,n=[]){if(!Array.isArray(e))return[...n];let r=[];for(let n of e)!t(n)||r.includes(n)||r.push(n);return r}function a(e,t){let n=new Map(t.map(e=>[e.id,e])),r=[],i=new Set;for(let t of e){if(i.has(t))continue;let e=n.get(t);e&&(r.push(e),i.add(t))}return r}function o(e,t){return e?t.find(t=>t.id===e)??null:null}function s(){return(s=e((()=>{})))()}function c({options:e,value:t,onChange:n,getOptionDisabled:i,getOptionCode:a,getOptionAriaLabel:s,renderOption:c,renderValue:u,className:d,buttonClassName:f,optionsClassName:p,clearable:m,...h}){let g=o(t,e)??void 0;return(0,l.jsx)(r,{...h,options:e,value:g,onChange:e=>n(e?.id),getOptionKey:e=>e.id,getOptionLabel:e=>e.label,getOptionCode:a,getOptionDisabled:i,getOptionAriaLabel:s,renderOption:c,renderValue:u,className:d,buttonClassName:f,optionsClassName:p,clearable:m})}var l;function u(){return(u=e((()=>{n(),l=t(),c.__docgenInfo={description:"Базовый Select для пресетов с контрактом `id/label`.",methods:[],displayName:`PresetSelect`,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:``},options:{required:!0,tsType:{name:`unknown`},description:``},getOptionDisabled:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(option: TOption) => boolean`,signature:{arguments:[{type:{name:`TOption`},name:`option`}],return:{name:`boolean`}}},description:``},getOptionCode:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(option: TOption) => string`,signature:{arguments:[{type:{name:`TOption`},name:`option`}],return:{name:`string`}}},description:``},getOptionAriaLabel:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(option: TOption) => string`,signature:{arguments:[{type:{name:`TOption`},name:`option`}],return:{name:`string`}}},description:``},renderOption:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(option: TOption, state: SelectOptionState) => ReactNode`,signature:{arguments:[{type:{name:`TOption`},name:`option`},{type:{name:`signature`,type:`object`,raw:`{
|
|
2
2
|
active: boolean;
|
|
3
3
|
selected: boolean;
|
|
4
4
|
disabled: boolean;
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,blockquote:`blockquote`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/API/Utils`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`общие-утилиты-ryuzaki13react-foundation-libutils`,children:[`Общие утилиты `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/utils`})]}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Модуль `,(0,c.jsx)(t.code,{children:`utils`}),` объединяет небольшие технические функции, которые нужны в разных частях React- и TypeScript-приложения:`]}),`
|
|
4
4
|
`,(0,c.jsxs)(t.ul,{children:[`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,strong:`strong`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/Errors/Error Report`}),`
|
|
2
2
|
`,(0,c.jsx)(t.h1,{id:`error-report`,children:`Error Report`}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Модуль `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/error-report`}),` собирает клиентскую диагностику ошибки в структурированный draft и временно хранит последние drafts в `,(0,c.jsx)(t.code,{children:`sessionStorage`}),`.`]}),`
|
|
4
4
|
`,(0,c.jsx)(t.p,{children:`Он умеет объединить:`}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/HTTP/SEO`}),`
|
|
2
2
|
`,(0,c.jsx)(t.h1,{id:`seo`,children:`SEO`}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Модуль `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/seo`}),` собирает единый набор SEO-описаний страницы:`]}),`
|
|
4
4
|
`,(0,c.jsxs)(t.ul,{children:[`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,blockquote:`blockquote`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/API/Hooks`}),`
|
|
2
2
|
`,(0,c.jsx)(t.h1,{id:`react-и-browser-hooks`,children:`React и browser hooks`}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Модуль `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/hooks`}),` содержит общие React hooks для задач, которые повторяются в разных приложениях:`]}),`
|
|
4
4
|
`,(0,c.jsxs)(t.ul,{children:[`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/Interaction/Context Menu State`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`состояние-и-anchors-контекстного-меню-через-ryuzaki13react-foundation-libcontext-menu`,children:[`Состояние и anchors контекстного меню через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/context-menu`})]}),`
|
|
3
3
|
`,(0,c.jsx)(t.p,{children:`Модуль описывает открытое/закрытое состояние контекстного меню, источник открытия и два вида anchor: DOM element или экранная точка. Также он создаёт virtual anchor для Floating UI.`}),`
|
|
4
4
|
`,(0,c.jsx)(t.p,{children:`Модуль не содержит React hook и не рисует меню.`}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation API/Errors/Error Report Delivery`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`доставка-error-reports-через-ryuzaki13react-foundation-apierror-report`,children:[`Доставка error reports через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-api/error-report`})]}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Модуль превращает сохранённый черновик отчёта из `,(0,c.jsx)(t.code,{children:`foundation-lib`}),` в delivery body, вызывает adapter приложения и обновляет статус черновика.`]}),`
|
|
4
4
|
`,(0,c.jsx)(t.h2,{id:`граница-ответственности`,children:`Граница ответственности`}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,strong:`strong`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/Infrastructure/PWA`}),`
|
|
2
2
|
`,(0,c.jsx)(t.h1,{id:`pwa`,children:`PWA`}),`
|
|
3
3
|
`,(0,c.jsx)(t.p,{children:`Модуль PWA состоит из двух публичных входов с разной ответственностью:`}),`
|
|
4
4
|
`,(0,c.jsxs)(t.table,{children:[(0,c.jsx)(t.thead,{children:(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.th,{children:`Import path`}),(0,c.jsx)(t.th,{children:`Что содержит`})]})}),(0,c.jsxs)(t.tbody,{children:[(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/pwa`})}),(0,c.jsx)(t.td,{children:`React-hook обновления Service Worker и все функции cache policy`})]}),(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/pwa/sw-cache-policy`})}),(0,c.jsxs)(t.td,{children:[`Только чистый parser/builder политики `,(0,c.jsx)(t.code,{children:`x-sw-cache`}),`, без React update-flow`]})]})]})]}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/API/Formatters/Value State`}),`
|
|
2
2
|
`,(0,c.jsx)(t.h1,{id:`value-state`,children:`Value state`}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[(0,c.jsx)(t.code,{children:`valueState`}),` преобразует обычное значение в семантическое состояние интерфейса:`]}),`
|
|
4
4
|
`,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`type State = "" | "none" | "information" | "success" | "warning" | "error";
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/API/Formatters/Pipeline`}),`
|
|
2
2
|
`,(0,c.jsx)(t.h1,{id:`formatter-pipeline`,children:`Formatter pipeline`}),`
|
|
3
3
|
`,(0,c.jsx)(t.p,{children:`Formatter pipeline — конфигурируемая последовательность преобразований значения ячейки. Она умеет:`}),`
|
|
4
4
|
`,(0,c.jsxs)(t.ul,{children:[`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation API/Transport/HTTP`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`обычный-http-через-ryuzaki13react-foundation-apihttp`,children:[`Обычный HTTP через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-api/http`})]}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Модуль выполняет нейтральные HTTP/REST запросы и создаёт функции, совместимые с TanStack Query. Внешний payload остаётся `,(0,c.jsx)(t.code,{children:`unknown`}),`, пока consumer явно не проверит его через `,(0,c.jsx)(t.code,{children:`parse`}),`.`]}),`
|
|
4
4
|
`,(0,c.jsx)(t.h2,{id:`содержание`,children:`Содержание`}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/API/Formulas`}),`
|
|
2
2
|
`,(0,c.jsx)(t.h1,{id:`табличные-формулы`,children:`Табличные формулы`}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Модуль `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/formulas`}),` предоставляет безопасную инфраструктуру для заранее написанных клиентских формул таблицы.`]}),`
|
|
4
4
|
`,(0,c.jsx)(t.p,{children:`Формула получает значения других полей текущей строки, выполняет синхронный расчёт и возвращает конечное JavaScript-число. Например, она может вычислить сумму, разницу, отношение или процент для calculated-колонки.`}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={code:`code`,h1:`h1`,h2:`h2`,li:`li`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/Data/Presets`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`общие-preset-helpers-через-ryuzaki13react-foundation-libpresets`,children:[`Общие preset helpers через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/presets`})]}),`
|
|
3
3
|
`,(0,c.jsx)(t.p,{children:`Модуль проверяет восстановленные preset ids, сопоставляет их с option objects и ищет одну option по id.`}),`
|
|
4
4
|
`,(0,c.jsx)(t.h2,{id:`установка-и-импорт`,children:`Установка и импорт`}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,blockquote:`blockquote`,code:`code`,h1:`h1`,h2:`h2`,li:`li`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/HTTP/Headers and Text Response`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`http-headers-и-текстовые-ответы-через-ryuzaki13react-foundation-libhttp`,children:[`HTTP headers и текстовые ответы через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/http`})]}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Модуль создаёт стандартный набор HTTP-заголовков запрета кеширования и обычный `,(0,c.jsx)(t.code,{children:`Response`}),` с UTF-8 plain text.`]}),`
|
|
4
4
|
`,(0,c.jsx)(t.h2,{id:`содержание`,children:`Содержание`}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/Data/Range Output`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`подстановка-открытых-границ-через-ryuzaki13react-foundation-librange-output`,children:[`Подстановка открытых границ через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/range-output`})]}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Модуль хранит в UI открытые границы диапазона как `,(0,c.jsx)(t.code,{children:`null`}),`, но позволяет подставить конкретные значения при внешнем выводе или сохранении.`]}),`
|
|
4
4
|
`,(0,c.jsx)(t.h2,{id:`содержание`,children:`Содержание`}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/Data/XML`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`простые-xml-helpers-через-ryuzaki13react-foundation-libxml`,children:[`Простые XML helpers через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/xml`})]}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Модуль экранирует XML-текст, строит последовательность простых полей и читает текст первого тега через `,(0,c.jsx)(t.code,{children:`DOMParser`}),`.`]}),`
|
|
4
4
|
`,(0,c.jsx)(t.h2,{id:`содержание`,children:`Содержание`}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,li:`li`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/Data/Currency`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`валютные-подписи-через-ryuzaki13react-foundation-libcurrency`,children:[`Валютные подписи через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/currency`})]}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Модуль связывает общий OData-параметр `,(0,c.jsx)(t.code,{children:`p_curr`}),` с отображаемой подписью показателя. Он определяет один из двух режимов валюты и добавляет соответствующий суффикс к label.`]}),`
|
|
4
4
|
`,(0,c.jsx)(t.h2,{id:`содержание`,children:`Содержание`}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/API/Formatters/Обзор`}),`
|
|
2
2
|
`,(0,c.jsx)(t.h1,{id:`ryuzaki13react-foundation-libformatters`,children:(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/formatters`})}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[(0,c.jsx)(t.code,{children:`formatters`}),` — большой модуль подготовки значений для интерфейса и transport-контрактов. Он работает с датами, числами, строками, boolean/ABAP-флагами, ФИО, российскими телефонами, ведущими нулями и семантическими состояниями. Для таблиц модуль также предоставляет конфигурируемый formatter pipeline и row-based формулы.`]}),`
|
|
4
4
|
`,(0,c.jsx)(t.p,{children:`Документация разделена по предметным областям, чтобы разработчику не приходилось читать один огромный файл. Этот README объясняет общие правила, помогает выбрать API и подробно описывает небольшие helpers верхнего уровня.`}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,blockquote:`blockquote`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation API/SAP/Transport Requests`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`sap-transport-requests-через-ryuzaki13react-foundation-apitransport`,children:[`SAP transport requests через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-api/transport`})]}),`
|
|
3
3
|
`,(0,c.jsx)(t.p,{children:`Модуль получает transport requests текущего пользователя из SAP UI2 OData endpoints и нормализует workbench/customizing records.`}),`
|
|
4
4
|
`,(0,c.jsxs)(t.blockquote,{children:[`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={code:`code`,h1:`h1`,h2:`h2`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/Errors/Missing Context`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`ошибка-отсутствующего-react-context-через-ryuzaki13react-foundation-liberror`,children:[`Ошибка отсутствующего React context через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/error`})]}),`
|
|
3
3
|
`,(0,c.jsx)(t.p,{children:`Модуль создаёт единообразное диагностическое сообщение, когда custom hook вызван вне нужного Provider.`}),`
|
|
4
4
|
`,(0,c.jsx)(t.h2,{id:`установка-и-импорт`,children:`Установка и импорт`}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/API/Media`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`адаптивность-и-media-queries-через-ryuzaki13react-foundation-libmedia`,children:[`Адаптивность и media queries через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/media`})]}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Модуль `,(0,c.jsx)(t.code,{children:`media`}),` содержит общий низкоуровневый контракт адаптивности для React-приложений:`]}),`
|
|
4
4
|
`,(0,c.jsxs)(t.ul,{children:[`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/Data/Bounded Copy Stack`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`ограниченный-стек-копий-через-ryuzaki13react-foundation-libbounded-copy-stack`,children:[`Ограниченный стек копий через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/bounded-copy-stack`})]}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Модуль хранит небольшой список последних скопированных сущностей. Новый элемент помещается в начало, повтор по `,(0,c.jsx)(t.code,{children:`fingerprint`}),` обновляет существующую запись, а старые записи удаляются при превышении лимита.`]}),`
|
|
4
4
|
`,(0,c.jsxs)(t.p,{children:[`Документ рассчитан на разработчика без доступа к исходникам пакета. Ниже объясняются структура элемента, различие `,(0,c.jsx)(t.code,{children:`id`}),` и `,(0,c.jsx)(t.code,{children:`fingerprint`}),`, порядок записей, ссылки на payload и все граничные случаи.`]}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,h4:`h4`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/API/DOM`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`browser-dom-и-focus-helpers-через-ryuzaki13react-foundation-libdom`,children:[`Browser DOM и focus helpers через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/dom`})]}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Модуль `,(0,c.jsx)(t.code,{children:`dom`}),` содержит небольшие browser helpers и React hooks для типовых инфраструктурных задач:`]}),`
|
|
4
4
|
`,(0,c.jsxs)(t.ul,{children:[`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={code:`code`,h1:`h1`,h2:`h2`,li:`li`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/React/Virtualizer Pagination`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`дозагрузка-virtualized-списка-через-ryuzaki13react-foundation-libvirtualizer`,children:[`Дозагрузка virtualized списка через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/virtualizer`})]}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[(0,c.jsx)(t.code,{children:`useFetchNextPageEffect`}),` вызывает `,(0,c.jsx)(t.code,{children:`fetchNextPage`}),`, когда последняя отрендеренная virtual item достигает конца уже загруженного списка.`]}),`
|
|
4
4
|
`,(0,c.jsx)(t.h2,{id:`установка-и-импорт`,children:`Установка и импорт`}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/Browser/Three Scene`}),`
|
|
2
2
|
`,(0,c.jsx)(t.h1,{id:`three-scene`,children:`Three Scene`}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Модуль `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/three-scene`}),` проверяет, можно ли безопасно показывать необязательную Three.js/WebGL-сцену, и помогает отключить её до конца браузерной сессии.`]}),`
|
|
4
4
|
`,(0,c.jsx)(t.p,{children:`Модуль не импортирует Three.js, не создаёт renderer и не управляет canvas. Его задача — принять раннее решение: загружать тяжёлую 3D-сцену или показать облегчённую альтернативу.`}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/API/Crypto`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`идентификаторы-и-строковые-hash-через-ryuzaki13react-foundation-libcrypto`,children:[`Идентификаторы и строковые hash через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/crypto`})]}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Модуль `,(0,c.jsx)(t.code,{children:`crypto`}),` предоставляет небольшие функции для двух разных задач:`]}),`
|
|
4
4
|
`,(0,c.jsxs)(t.ul,{children:[`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/API/Formatters/Boolean`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`boolean-и-abap-boolean-через-ryuzaki13react-foundation-libformatters`,children:[`Boolean и ABAP boolean через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/formatters`})]}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Подмодуль `,(0,c.jsx)(t.code,{children:`boolean`}),` преобразует значения между JavaScript `,(0,c.jsx)(t.code,{children:`boolean`}),` и двухсимвольным ABAP-контрактом:`]}),`
|
|
4
4
|
`,(0,c.jsxs)(t.ul,{children:[`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,strong:`strong`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/Infrastructure/Notifications`}),`
|
|
2
2
|
`,(0,c.jsx)(t.h1,{id:`notifications`,children:`Notifications`}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Модуль `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/notifications`}),` хранит очередь коротких уведомлений и предоставляет два способа управления ею:`]}),`
|
|
4
4
|
`,(0,c.jsxs)(t.ul,{children:[`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/API/Formatters/Number`}),`
|
|
2
2
|
`,(0,c.jsx)(t.h1,{id:`числовые-форматтеры`,children:`Числовые форматтеры`}),`
|
|
3
3
|
`,(0,c.jsx)(t.p,{children:`Модуль форматирует числа для интерфейса, читает распространённые SAP-подобные числовые строки и управляет реестром именованных presets.`}),`
|
|
4
4
|
`,(0,c.jsx)(t.p,{children:`Все API доступны через один публичный entrypoint:`}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/API/Binary`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`работа-с-бинарными-данными-через-ryuzaki13react-foundation-libbinary`,children:[`Работа с бинарными данными через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/binary`})]}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Модуль `,(0,c.jsx)(t.code,{children:`binary`}),` преобразует строковое бинарное содержимое в браузерный `,(0,c.jsx)(t.code,{children:`Blob`}),`, определяет предполагаемый MIME-тип документа и предоставляет React hook для типового сценария «base64 → `,(0,c.jsx)(t.code,{children:`{ blob, mime }`}),`».`]}),`
|
|
4
4
|
`,(0,c.jsx)(t.p,{children:`Основной сценарий:`}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,h4:`h4`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/API/Array`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`работа-с-массивами-через-ryuzaki13react-foundation-libarray`,children:[`Работа с массивами через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/array`})]}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Модуль `,(0,c.jsx)(t.code,{children:`array`}),` содержит небольшие типизированные функции для типовых операций с массивами:`]}),`
|
|
4
4
|
`,(0,c.jsxs)(t.ul,{children:[`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation API/OData/OData V2 and SAP Gateway`}),`
|
|
2
2
|
`,(0,c.jsx)(t.h1,{id:`odata-v2-и-sap-gateway`,children:`OData V2 и SAP Gateway`}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Entrypoint `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-api/odata`}),` — основной API-модуль для browser-приложений, работающих с SAP Gateway и OData V2.`]}),`
|
|
4
4
|
`,(0,c.jsx)(t.p,{children:`Он объединяет:`}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/Data/Number Scale`}),`
|
|
2
2
|
`,(0,c.jsx)(t.h1,{id:`number-scale`,children:`Number Scale`}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/number-scale`}),` содержит чистую математику для slider, range, числовой шкалы и управления значением с клавиатуры. Модуль не содержит React-компонентов и не рисует ползунок.`]}),`
|
|
4
4
|
`,(0,c.jsx)(t.p,{children:`Он решает четыре связанные задачи:`}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/Date/Segments`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`сегменты-даты-и-времени-через-ryuzaki13react-foundation-libdate-segments`,children:[`Сегменты даты и времени через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-lib/date-segments`})]}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[`Модуль разбирает строковую маску на редактируемые сегменты и литералы, преобразует `,(0,c.jsx)(t.code,{children:`Date`}),` в значения полей и строго собирает `,(0,c.jsx)(t.code,{children:`Date`}),` обратно. Он предназначен для segment-based date/time inputs.`]}),`
|
|
4
4
|
`,(0,c.jsx)(t.p,{children:`Документ объясняет маски, индексы, local time, двухзначный год, неполный ввод и все публичные типы.`}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,strong:`strong`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation API/Query/Persisted Records`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`сохранённые-записи-через-ryuzaki13react-foundation-apipersisted`,children:[`Сохранённые записи через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-api/persisted`})]}),`
|
|
3
3
|
`,(0,c.jsxs)(t.p,{children:[(0,c.jsx)(t.code,{children:`persisted`}),` — специализированный слой поверх TanStack Query для данных, которые пользователь сохраняет и позднее восстанавливает: presets, variants, view configs и другие versioned records.`]}),`
|
|
4
4
|
`,(0,c.jsxs)(t.p,{children:[`Слово `,(0,c.jsx)(t.code,{children:`persisted`}),` здесь означает backend-сущности «сохранённая запись». Это не то же самое, что persistence TanStack Query cache в IndexedDB.`]}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,strong:`strong`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation API/Query/Generic Resource`}),`
|
|
2
2
|
`,(0,c.jsxs)(t.h1,{id:`generic-resources-через-ryuzaki13react-foundation-apiresource`,children:[`Generic resources через `,(0,c.jsx)(t.code,{children:`@ryuzaki13/react-foundation-api/resource`})]}),`
|
|
3
3
|
`,(0,c.jsx)(t.p,{children:`Модуль описывает transport-agnostic ресурс поверх TanStack Query: стабильные query keys, проверку scope, произвольные read/write operations и cache strategies после mutation.`}),`
|
|
4
4
|
`,(0,c.jsx)(t.h2,{id:`для-кого-этот-документ`,children:`Для кого этот документ`}),`
|
|
@@ -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-B3ihFulv.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-DkP-disW.js";function o(e){let t={a:`a`,code:`code`,h1:`h1`,h2:`h2`,h3:`h3`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,table:`table`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,...n(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i,{title:`Foundation Lib/API/Formatters/Strings`}),`
|
|
2
2
|
`,(0,c.jsx)(t.h1,{id:`строковые-форматтеры`,children:`Строковые форматтеры`}),`
|
|
3
3
|
`,(0,c.jsx)(t.p,{children:`Модуль содержит небольшие предсказуемые функции для подготовки пользовательского текста: обрезки пробелов, безопасного преобразования в строку, удаления ведущих нулей, сокращения длинного текста и выбора русской формы слова.`}),`
|
|
4
4
|
`,(0,c.jsx)(t.p,{children:`Все функции экспортируются через один публичный entrypoint:`}),`
|