@ryuzaki13/react-foundation-ui 1.8.6 → 1.8.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (281) hide show
  1. package/dist/chunks/date-input-g6l1iDmf.js.map +1 -1
  2. package/package.json +4 -4
  3. package/storybook-static/assets/{Badge-CV8uR5lW.js → Badge-C4U4sxtF.js} +1 -1
  4. package/storybook-static/assets/{Badge.stories-DqTFDEB6.js → Badge.stories-DHmJTpdf.js} +1 -1
  5. package/storybook-static/assets/{BadgeList-CVWvhSS7.js → BadgeList-BOs5ycWn.js} +1 -1
  6. package/storybook-static/assets/{Button-C5Z6nJ9s.js → Button-BTtYeCS_.js} +1 -1
  7. package/storybook-static/assets/{Button-DtySOeyD.js → Button-Bkb3wQw6.js} +1 -1
  8. package/storybook-static/assets/{Button.stories--Wr67DaY.js → Button.stories-DgFLAdcg.js} +1 -1
  9. package/storybook-static/assets/{CalendarView-ZzqQ8UIe.js → CalendarView-BIFHbOTr.js} +1 -1
  10. package/storybook-static/assets/{CheckBox-BfNP6vO6.js → CheckBox-76M-N56J.js} +1 -1
  11. package/storybook-static/assets/{CheckBox-BBNTe4u8.js → CheckBox-D4u-58g8.js} +1 -1
  12. package/storybook-static/assets/{CheckBox.module-CoYygdZx.js → CheckBox.module-BOAVN-Ny.js} +1 -1
  13. package/storybook-static/assets/{CheckBox.stories-B4Sv2TXp.js → CheckBox.stories-Caw6-hSQ.js} +1 -1
  14. package/storybook-static/assets/{Color-6AOWCN3U-Ce5w8Y2l.js → Color-6AOWCN3U-CPYGaU3y.js} +1 -1
  15. package/storybook-static/assets/{ContextMenu-D-lV53Zc.js → ContextMenu-CUWt-eg1.js} +1 -1
  16. package/storybook-static/assets/{ContextMenu-Boi0R7-s.js → ContextMenu-gfYYiVdR.js} +1 -1
  17. package/storybook-static/assets/{ContextMenu.stories-D_rxDbLk.js → ContextMenu.stories-BuQS57wW.js} +1 -1
  18. package/storybook-static/assets/{CustomOptionButton-VYfjUfhW.js → CustomOptionButton-Be7sd0Lb.js} +1 -1
  19. package/storybook-static/assets/{DateInput-f-RcBdOb.js → DateInput-B4oviF7J.js} +1 -1
  20. package/storybook-static/assets/{DateInput-q2hPsJcH.js → DateInput-BQGUMYsW.js} +1 -1
  21. package/storybook-static/assets/{DateInput.stories-zQzjIsfx.js → DateInput.stories-D6q7J1C4.js} +1 -1
  22. package/storybook-static/assets/{DateRangePresetSelect-DQBOF8f5.js → DateRangePresetSelect-BAxaG0HP.js} +1 -1
  23. package/storybook-static/assets/{DateRangePresetSelect-Ciikik1_.js → DateRangePresetSelect-Cq6pOZPu.js} +1 -1
  24. package/storybook-static/assets/{DateRangePresetSelect.stories-BF8IP5Ep.js → DateRangePresetSelect.stories-d4HFbao6.js} +1 -1
  25. package/storybook-static/assets/{Detail-CEl8URNQ.js → Detail-DlETcWVp.js} +1 -1
  26. package/storybook-static/assets/{Detail.stories-Mr3ypLAA.js → Detail.stories-BEwFXEZH.js} +1 -1
  27. package/storybook-static/assets/{Dialog-Dj2y3EO1.js → Dialog-Bk8aoiOf.js} +1 -1
  28. package/storybook-static/assets/{Dialog-BydPFV17.js → Dialog-D63TJr1M.js} +1 -1
  29. package/storybook-static/assets/{Dialog.stories-C1WlZdyp.js → Dialog.stories-BR7NqeZj.js} +1 -1
  30. package/storybook-static/assets/{Disclosure-DH77E5hY.js → Disclosure-zQK54WKU.js} +1 -1
  31. package/storybook-static/assets/{Disclosure.stories-B9ZVczUX.js → Disclosure.stories-CNLpB5YJ.js} +1 -1
  32. package/storybook-static/assets/{DisclosureGroup-CIoFeosY.js → DisclosureGroup-C_nZSLZw.js} +1 -1
  33. package/storybook-static/assets/{DocsRenderer-JROSPFPF-CbJN3X6f.js → DocsRenderer-JROSPFPF-CoU8mWAw.js} +2 -2
  34. package/storybook-static/assets/{DropZone-CR7xRn_b.js → DropZone-CUz1Q4bA.js} +1 -1
  35. package/storybook-static/assets/{DropZone-DTBV-X-J.js → DropZone-Y5hvED_x.js} +1 -1
  36. package/storybook-static/assets/{DropZone.stories-Cw_og1Cs.js → DropZone.stories-BH4FSM4P.js} +1 -1
  37. package/storybook-static/assets/{DropdownMenu-CVIeHT8N.js → DropdownMenu-Bi6-5Gqf.js} +1 -1
  38. package/storybook-static/assets/{ExpandableActionPanel-D8U6v8X7.js → ExpandableActionPanel-BfWj887r.js} +1 -1
  39. package/storybook-static/assets/{ExpandableActionPanel.stories-D42CZyOc.js → ExpandableActionPanel.stories-CGxcwRMU.js} +1 -1
  40. package/storybook-static/assets/{Flex-Bcsl0U5O.js → Flex-Dm-Qfvzk.js} +1 -1
  41. package/storybook-static/assets/{Flex.stories-C0vSa3mh.js → Flex.stories-B3zMz03s.js} +1 -1
  42. package/storybook-static/assets/{FlexContainer-LmZIdhq2.js → FlexContainer-BWyPlTMB.js} +1 -1
  43. package/storybook-static/assets/{FlexItem-vkDYa5tA.js → FlexItem-pu3E11Sf.js} +1 -1
  44. package/storybook-static/assets/{FloatingPopover-DvU3oc_q.js → FloatingPopover-NMRTnqfo.js} +1 -1
  45. package/storybook-static/assets/FormattedTableCell-BISjHrBJ.js +15 -0
  46. package/storybook-static/assets/{Grid-BCzygAqy.js → Grid-CzO0Ae1r.js} +1 -1
  47. package/storybook-static/assets/{Grid-Wl0Y0YAh.js → Grid-vZyA-712.js} +1 -1
  48. package/storybook-static/assets/{Grid.stories-G6gMmKCP.js → Grid.stories-BQqK0zom.js} +1 -1
  49. package/storybook-static/assets/{GridContainer-qDguE1HS.js → GridContainer-fKYgDsLl.js} +1 -1
  50. package/storybook-static/assets/{ImageCropper.stories-u6rOvDbd.js → ImageCropper.stories-Ca4MZWOW.js} +3 -3
  51. package/storybook-static/assets/{ImageRenderer-BYIRHN5G.js → ImageRenderer-BWIk_76e.js} +1 -1
  52. package/storybook-static/assets/{ImageRenderer.stories-BMEHEIVH.js → ImageRenderer.stories-C1FfOcFD.js} +1 -1
  53. package/storybook-static/assets/{ImageView.stories-DiEA93Yz.js → ImageView.stories-DyuR7kdq.js} +1 -1
  54. package/storybook-static/assets/{ImageViewer.stories-DyxctGxM.js → ImageViewer.stories-PcvOFYqC.js} +2 -2
  55. package/storybook-static/assets/{ImageViewerRuntime--h_3C2s0.js → ImageViewerRuntime-BiI7Xukq.js} +2 -2
  56. package/storybook-static/assets/{Input-CViRQ_rj.js → Input-CsD-x1BQ.js} +1 -1
  57. package/storybook-static/assets/{Input-B2kOwWOU.js → Input-D_4GoCLl.js} +1 -1
  58. package/storybook-static/assets/{Input.stories-D9eo9MWc.js → Input.stories-D-1urO1N.js} +1 -1
  59. package/storybook-static/assets/{InputDateTime-T9_iyG4G.js → InputDateTime-CFQanHxB.js} +1 -1
  60. package/storybook-static/assets/{InputDateTime.stories-DzegljaN.js → InputDateTime.stories-Q4Ao5Tat.js} +1 -1
  61. package/storybook-static/assets/{InputFile-CA3YpXnm.js → InputFile-Bj8PXGY3.js} +1 -1
  62. package/storybook-static/assets/{InputFile-Cvdj6RfC.js → InputFile-DM6fBXUx.js} +1 -1
  63. package/storybook-static/assets/{InputFile.stories-C18UaXPS.js → InputFile.stories-DC27BYoQ.js} +1 -1
  64. package/storybook-static/assets/{InputFiles-nS_qsXY7.js → InputFiles-D59MGS0Z.js} +1 -1
  65. package/storybook-static/assets/{InputFiles-C4OkTG9M.js → InputFiles-teFj6f6X.js} +1 -1
  66. package/storybook-static/assets/{InputFiles.stories-BYd0Pe0R.js → InputFiles.stories-DX5UEvYR.js} +1 -1
  67. package/storybook-static/assets/{InputFilesList-CXPf7Ui_.js → InputFilesList-BD4Y0gN-.js} +1 -1
  68. package/storybook-static/assets/{InputImage-kd50L1Gf.js → InputImage-DmsFGNLJ.js} +1 -1
  69. package/storybook-static/assets/{InputImage-jDVIxP7S.js → InputImage-Du6jGDmY.js} +1 -1
  70. package/storybook-static/assets/{InputImage.stories-D-xmS4Qj.js → InputImage.stories-u0hrr-Da.js} +1 -1
  71. package/storybook-static/assets/{InteractiveComponents-D13nzSK7.js → InteractiveComponents-BLQiSO3p.js} +1 -1
  72. package/storybook-static/assets/{InteractiveComponents.stories-yITzDh-Y.js → InteractiveComponents.stories-BxIVvRz5.js} +1 -1
  73. package/storybook-static/assets/{LayoutPicker-BfYXGIKb.js → LayoutPicker-TecE4x6w.js} +1 -1
  74. package/storybook-static/assets/{LayoutPicker-9FVo0bF3.js → LayoutPicker-xUooYcbS.js} +1 -1
  75. package/storybook-static/assets/{LayoutPicker.stories-B-UnuGFM.js → LayoutPicker.stories-YDMnmhJ4.js} +1 -1
  76. package/storybook-static/assets/{Listbox-9LVlsDzw.js → Listbox-D2k8QfTs.js} +1 -1
  77. package/storybook-static/assets/{Listbox-C53-i-L6.js → Listbox-DplAn6ND.js} +1 -1
  78. package/storybook-static/assets/{Listbox.stories-CCN72ABE.js → Listbox.stories-Bg3_UQD4.js} +1 -1
  79. package/storybook-static/assets/{Modal-CoXpuByh.js → Modal-4OdkCwCv.js} +1 -1
  80. package/storybook-static/assets/{Modal.stories-DAj_oPSt.js → Modal.stories-BwawDSGR.js} +1 -1
  81. package/storybook-static/assets/{ModalManagerProvider-C7pGT0B3.js → ModalManagerProvider-CYR_xbpx.js} +1 -1
  82. package/storybook-static/assets/{MultiSelect-DqeGNK15.js → MultiSelect-CXn1CY9G.js} +1 -1
  83. package/storybook-static/assets/{MultiSelect-DZ2krz-D.js → MultiSelect-iwbCRD9H.js} +1 -1
  84. package/storybook-static/assets/{MultiSelect.stories-BoVHXMbn.js → MultiSelect.stories-BSjAL2ua.js} +1 -1
  85. package/storybook-static/assets/{NoData-N6Pbu0LD.js → NoData-6Scjk2OD.js} +1 -1
  86. package/storybook-static/assets/{NotificationsHost--uPz1G3j.js → NotificationsHost-DK3A-iq7.js} +1 -1
  87. package/storybook-static/assets/{NotificationsHost.stories-B-X-Ljxs.js → NotificationsHost.stories-BRmPf9Q7.js} +1 -1
  88. package/storybook-static/assets/{ODataMultiSelect-7U6nJdqB.js → ODataMultiSelect-CuNGV1QU.js} +1 -1
  89. package/storybook-static/assets/{ODataMultiSelect.stories-B-t6MsOr.js → ODataMultiSelect.stories-CyAonfZC.js} +1 -1
  90. package/storybook-static/assets/{ODataSelect-Dy-fSgE6.js → ODataSelect-vhh4NJS_.js} +1 -1
  91. package/storybook-static/assets/{ODataSelect.stories-DhqHtcmD.js → ODataSelect.stories-aJBFF45H.js} +1 -1
  92. package/storybook-static/assets/{ODataTreeMultiSelect-Ol0nuytU.js → ODataTreeMultiSelect-vPtlTloF.js} +1 -1
  93. package/storybook-static/assets/{ODataTreeMultiSelect.stories-BupVzhbY.js → ODataTreeMultiSelect.stories-DTBAF628.js} +1 -1
  94. package/storybook-static/assets/{ODataTreeSelect-EkpDmDyk.js → ODataTreeSelect-BCVVLB9M.js} +1 -1
  95. package/storybook-static/assets/{ODataTreeSelect.stories-CFdbwyEg.js → ODataTreeSelect.stories-CptC0p6O.js} +1 -1
  96. package/storybook-static/assets/{OneStepScroller-rmyPl9f5.js → OneStepScroller-DerjCiL3.js} +1 -1
  97. package/storybook-static/assets/{Option-72PrSDkj.js → Option-DkAw9S3l.js} +1 -1
  98. package/storybook-static/assets/{OptionButton-Br8QoJL7.js → OptionButton-CGurT23Z.js} +1 -1
  99. package/storybook-static/assets/{PeriodSelect-C5Xk-g4Y.js → PeriodSelect-DOO139ke.js} +1 -1
  100. package/storybook-static/assets/{PeriodSelect-DEZVGWGR.js → PeriodSelect-TrGTMIid.js} +1 -1
  101. package/storybook-static/assets/{PeriodSelect.stories-BVBP97HW.js → PeriodSelect.stories-B3GEgBZ1.js} +1 -1
  102. package/storybook-static/assets/{PickerTriggerActions-DSmRHX1I.js → PickerTriggerActions-CKVPuKEC.js} +1 -1
  103. package/storybook-static/assets/{Popover-BpbeIq6-.js → Popover-BNItmUQ9.js} +1 -1
  104. package/storybook-static/assets/{Popover-1KQwBxEJ.js → Popover-DgXqO0PN.js} +1 -1
  105. package/storybook-static/assets/{Popover.stories-6RDZ0TND.js → Popover.stories-bX5S41pH.js} +1 -1
  106. package/storybook-static/assets/{PresetRangeDateInput-BdkKzY69.js → PresetRangeDateInput-B4FYPy8g.js} +1 -1
  107. package/storybook-static/assets/{PresetRangeDateInput-CDhgmyFs.js → PresetRangeDateInput-GSnnpZzy.js} +1 -1
  108. package/storybook-static/assets/{PresetRangeDateInput.stories-BoE41IUK.js → PresetRangeDateInput.stories-Ca0mIo33.js} +1 -1
  109. package/storybook-static/assets/{PresetSelect-CA5AyOOy.js → PresetSelect-B_KRl4SQ.js} +1 -1
  110. package/storybook-static/assets/README-1RIcD7RV.js +694 -0
  111. package/storybook-static/assets/README-B1XUsXZj.js +334 -0
  112. package/storybook-static/assets/README-BH78sIZ_.js +288 -0
  113. package/storybook-static/assets/README-BgeYwR6t.js +347 -0
  114. package/storybook-static/assets/README-BhsUMTSk.js +860 -0
  115. package/storybook-static/assets/README-Bj88Ecb7.js +876 -0
  116. package/storybook-static/assets/README-C9saKIyr.js +417 -0
  117. package/storybook-static/assets/README-CP1S4LYF.js +1309 -0
  118. package/storybook-static/assets/README-Cc-guFb0.js +1487 -0
  119. package/storybook-static/assets/README-CheO0E1A.js +282 -0
  120. package/storybook-static/assets/README-CiuVVUgE.js +420 -0
  121. package/storybook-static/assets/README-CvRg9lqh.js +273 -0
  122. package/storybook-static/assets/README-DCdV2RQL.js +1093 -0
  123. package/storybook-static/assets/README-DyNQqotW.js +338 -0
  124. package/storybook-static/assets/README-W1rhe8Sk.js +648 -0
  125. package/storybook-static/assets/{RadioButton-IDzSzftl.js → RadioButton-CA9DN5bY.js} +1 -1
  126. package/storybook-static/assets/{RadioButton-DCoo55ld.js → RadioButton-DcXbcFW1.js} +1 -1
  127. package/storybook-static/assets/{RadioButton.stories-BEk1uc2x.js → RadioButton.stories-1_kzxnXY.js} +1 -1
  128. package/storybook-static/assets/{RadioGroup-CbBmuFtC.js → RadioGroup-bEwTHCyS.js} +1 -1
  129. package/storybook-static/assets/{RadioGroup-VSiqFUI1.js → RadioGroup-mfYgdfXM.js} +1 -1
  130. package/storybook-static/assets/{RadioGroup.stories-DR7Vskyy.js → RadioGroup.stories-CecdqPms.js} +1 -1
  131. package/storybook-static/assets/{Scrollable-CDZ18AWy.js → Scrollable-1fdTDJHK.js} +1 -1
  132. package/storybook-static/assets/{Select-IWQpo0LQ.js → Select-CvQZGS1G.js} +1 -1
  133. package/storybook-static/assets/{Select-YjugVUKX.js → Select-Df5Md2Cm.js} +1 -1
  134. package/storybook-static/assets/{Select.stories-4JpnXfaB.js → Select.stories-M4M80KTq.js} +1 -1
  135. package/storybook-static/assets/{SerializableSelect-oxnbV26a.js → SerializableSelect-CnsGo9Ep.js} +1 -1
  136. package/storybook-static/assets/{SerializableSelect.stories-CjVcuU4t.js → SerializableSelect.stories-BJ6MlNDx.js} +1 -1
  137. package/storybook-static/assets/{SingleDateTimeInput-DFPke7bv.js → SingleDateTimeInput-BCV0gfB9.js} +1 -1
  138. package/storybook-static/assets/{SingleDateTimeInput-CQ1_ABKA.js → SingleDateTimeInput-DJH7zSIz.js} +1 -1
  139. package/storybook-static/assets/{SingleDateTimeInput.stories--Nky_yBh.js → SingleDateTimeInput.stories-DgEwAFe8.js} +1 -1
  140. package/storybook-static/assets/{Slider-DGVl0dbV.js → Slider-D504FPH3.js} +1 -1
  141. package/storybook-static/assets/{Slider-L7pqW7xG.js → Slider-cLRAHPLi.js} +1 -1
  142. package/storybook-static/assets/{Slider.stories-DkqUavTk.js → Slider.stories-EI314Iff.js} +1 -1
  143. package/storybook-static/assets/{SliderInput-B7U8M2UN.js → SliderInput-Bt0H8rgN.js} +1 -1
  144. package/storybook-static/assets/{SliderInput-Dn5-Dt4w.js → SliderInput-E5p3n3VY.js} +1 -1
  145. package/storybook-static/assets/{SliderInput.stories-B9WBQOiA.js → SliderInput.stories-CDYPq7fP.js} +1 -1
  146. package/storybook-static/assets/{Sortable-DxdXjG1a.js → Sortable-Bzd7JK4E.js} +1 -1
  147. package/storybook-static/assets/{Sortable.stories-D1rp2l9M.js → Sortable.stories-DNGbmn2a.js} +1 -1
  148. package/storybook-static/assets/{Splitter-yZpkev96.js → Splitter-DSf48AOW.js} +1 -1
  149. package/storybook-static/assets/{Splitter.stories-C3TCKNhu.js → Splitter.stories-DUKsOqNN.js} +1 -1
  150. package/storybook-static/assets/{StateSelect-DZjPblfU.js → StateSelect-BxuKIsLa.js} +1 -1
  151. package/storybook-static/assets/{StateSelect-CaAFL9Jr.js → StateSelect-HKOT6kq9.js} +1 -1
  152. package/storybook-static/assets/{StateSelect.stories-D7EwT0sO.js → StateSelect.stories-CbLvq7ou.js} +1 -1
  153. package/storybook-static/assets/{StringToggle.stories-DuaWy2LK.js → StringToggle.stories-DOKL-aWy.js} +1 -1
  154. package/storybook-static/assets/{Switch-C0GQ2oXw.js → Switch-CLAfhk73.js} +1 -1
  155. package/storybook-static/assets/{Switch-DCNQT47U.js → Switch-CVTjSEq1.js} +1 -1
  156. package/storybook-static/assets/{Switch.stories-CAIEfQb6.js → Switch.stories-CL5Xe_HQ.js} +1 -1
  157. package/storybook-static/assets/{Table-Be1uta4G.js → Table-DKc19RME.js} +1 -1
  158. package/storybook-static/assets/Table.stories-CJ9DR1S-.js +207 -0
  159. package/storybook-static/assets/{Tabs-Co7Z92UK.js → Tabs-De_4F0H3.js} +1 -1
  160. package/storybook-static/assets/{Tabs.stories-D84U8aJM.js → Tabs.stories-DPAvvkh9.js} +2 -2
  161. package/storybook-static/assets/{TabsBox-CUpOXGdh.js → TabsBox-Cy5CICcb.js} +1 -1
  162. package/storybook-static/assets/{TagInput-BbLK6uxZ.js → TagInput-7n98ftvD.js} +1 -1
  163. package/storybook-static/assets/{TagInput.stories-D34JCfyM.js → TagInput.stories-B6JAb3XA.js} +1 -1
  164. package/storybook-static/assets/{Text-DtJw3wMU.js → Text-CjSG8mvD.js} +1 -1
  165. package/storybook-static/assets/{Textarea-Cz6RWJdh.js → Textarea-CQqwaJ0Q.js} +1 -1
  166. package/storybook-static/assets/{Textarea-C9MWeqLC.js → Textarea-Dea29_yQ.js} +1 -1
  167. package/storybook-static/assets/{Textarea.stories-DqK16XGS.js → Textarea.stories-BZf3Cu4S.js} +1 -1
  168. package/storybook-static/assets/{TimePanel-DcZ-UUgO.js → TimePanel-CPZ4jOw2.js} +1 -1
  169. package/storybook-static/assets/{TimePanel.stories-BafOmX3I.js → TimePanel.stories-y5Lp9sMG.js} +1 -1
  170. package/storybook-static/assets/{Toggle-CgU6o7qM.js → Toggle-CJHzo9mB.js} +1 -1
  171. package/storybook-static/assets/{Toggle-oYTkCbEJ.js → Toggle-s7SzQ11W.js} +1 -1
  172. package/storybook-static/assets/{Toggle.stories-CbmOBWIu.js → Toggle.stories-Dk3C5Le5.js} +1 -1
  173. package/storybook-static/assets/{TreeMultiSelect-B4WfXc4Z.js → TreeMultiSelect-CxXF7pQE.js} +1 -1
  174. package/storybook-static/assets/{TreeMultiSelect-DN_CYg-F.js → TreeMultiSelect-DfeggvLr.js} +1 -1
  175. package/storybook-static/assets/{TreeMultiSelect.stories-DYVj6Rm6.js → TreeMultiSelect.stories-DKiHT_6L.js} +1 -1
  176. package/storybook-static/assets/{TreePickerBase-8gA_hIXn.js → TreePickerBase-DKJJDVC_.js} +1 -1
  177. package/storybook-static/assets/{TreeSelect-CTtmHF-B.js → TreeSelect-2E1KhJMi.js} +1 -1
  178. package/storybook-static/assets/{TreeSelect-2bjYl5ox.js → TreeSelect-h23orAoA.js} +1 -1
  179. package/storybook-static/assets/{TreeSelect.stories-BEAY61pJ.js → TreeSelect.stories-DO06yaS0.js} +1 -1
  180. package/storybook-static/assets/{TreeTable-B4BaHybr.js → TreeTable-ByV2_E0S.js} +1 -1
  181. package/storybook-static/assets/{TreeTable.stories-lLwH2Gzl.js → TreeTable.stories-D4gbQx59.js} +2 -2
  182. package/storybook-static/assets/{WithTooltip-7X4HQR7L-Cakt_JaX.js → WithTooltip-7X4HQR7L-DQ4Qthn2.js} +1 -1
  183. package/storybook-static/assets/{array-D-_yMMUK-CIRmlF93.js → array-D-_yMMUK-BQ0uu1hZ.js} +1 -1
  184. package/storybook-static/assets/{async-DFALSYBD.js → async-BI7SlYp0.js} +1 -1
  185. package/storybook-static/assets/axe-_9eNhXQJ.js +20 -0
  186. package/storybook-static/assets/{blocks-Dr191OF5.js → blocks-B8F5vBhs.js} +6 -6
  187. package/storybook-static/assets/check-mlY_aVEI.js +1 -0
  188. package/storybook-static/assets/chevron-down-C7c-TcEc.js +1 -0
  189. package/storybook-static/assets/chevron-left-2LrGBhDY.js +1 -0
  190. package/storybook-static/assets/chevron-right-D6NN1_UQ.js +1 -0
  191. package/storybook-static/assets/{chunk-242VQQM5-BMWWiybC.js → chunk-242VQQM5-bHL6qIJq.js} +1 -1
  192. package/storybook-static/assets/{chunk-DRQKCCAG-CqE-Zrl9.js → chunk-DRQKCCAG-DvsmU7ha.js} +1 -1
  193. package/storybook-static/assets/{chunk-IMSF75WX-yvVUwIQZ.js → chunk-IMSF75WX-CGYlPTyG.js} +1 -1
  194. package/storybook-static/assets/{chunk-KJHJLCBK-D-yQfkOi.js → chunk-KJHJLCBK-yRlRMfNs.js} +1 -1
  195. package/storybook-static/assets/{chunk-QQBDHPVZ-B98qboss.js → chunk-QQBDHPVZ-DC5n6Pix.js} +1 -1
  196. package/storybook-static/assets/{chunk-W22LQPXL-BR_vFDlt.js → chunk-W22LQPXL-5sD3hVeE.js} +1 -1
  197. package/storybook-static/assets/{circle-alert-Is-jAV5H.js → circle-alert-H_7GSXFp.js} +1 -1
  198. package/storybook-static/assets/circle-check-B0voRIBT.js +1 -0
  199. package/storybook-static/assets/{components-DqFIc_sf.js → components-Bw-2TeQP.js} +12 -12
  200. package/storybook-static/assets/{contextMenu-CWKJO78E.js → contextMenu-B8JusItT.js} +1 -1
  201. package/storybook-static/assets/{createControlledStoryRender-DHsyXc1B.js → createControlledStoryRender-BouhvX-R.js} +1 -1
  202. package/storybook-static/assets/{date-segments-D3HouZ37.js → date-segments-DeoMkKv9.js} +1 -1
  203. package/storybook-static/assets/{defaultRenderers-V5HI39JH.js → defaultRenderers-BHXboKuy.js} +1 -1
  204. package/storybook-static/assets/{dom-B3G_GtJw.js → dom-DBd_DWF8.js} +1 -1
  205. package/storybook-static/assets/{download-B61X2hm8.js → download-CSY7aIz0.js} +1 -1
  206. package/storybook-static/assets/{error-BZrNlEUO.js → error-De9R4E_F.js} +1 -1
  207. package/storybook-static/assets/{file-vPGnhPr-.js → file-CwRoWxeB.js} +1 -1
  208. package/storybook-static/assets/floating-ui.react-D7RwPYeO.js +1 -0
  209. package/storybook-static/assets/formatter-L2YTDE3Q-CRGuSxAF.js +1 -0
  210. package/storybook-static/assets/{formatters-CBgrBeSA-DY6OIAc8.js → formatters-CBgrBeSA-CqB1pZxS.js} +1 -1
  211. package/storybook-static/assets/{foundationLib-10USAmEi.js → foundationLib-BoYGVeXe.js} +1 -1
  212. package/storybook-static/assets/{hooks-C8GJ9Cvf.js → hooks-DQXvhAPr.js} +2 -2
  213. package/storybook-static/assets/iframe-B8PAuhnL.js +1 -0
  214. package/storybook-static/assets/{iframe-Bu7ux79g.js → iframe-CViB2sFm.js} +23 -23
  215. package/storybook-static/assets/{info-CnuHFdaB.js → info-MrQcS8jn.js} +1 -1
  216. package/storybook-static/assets/{matchers-JIUQ3HVY-DvR2XErZ.js → matchers-JIUQ3HVY-C789_MAK.js} +1 -1
  217. package/storybook-static/assets/{media-BycWpjAl.js → media-D9cE2tzi.js} +1 -1
  218. package/storybook-static/assets/odata-CBGaUmRT.js +1 -0
  219. package/storybook-static/assets/{odata-service-B6TxBSLm-BW9QLSrS.js → odata-service-B6TxBSLm-Bq8Ya67E.js} +1 -1
  220. package/storybook-static/assets/{odataFetchFn-CAzdQ6ar.js → odataFetchFn-CPO8XIYX.js} +1 -1
  221. package/storybook-static/assets/{odataStoryFixtures-CX6euJaD.js → odataStoryFixtures--SWu2yC_.js} +2 -2
  222. package/storybook-static/assets/{persisted-BKBboERB.js → persisted-B2dfNRCz.js} +1 -1
  223. package/storybook-static/assets/{preload-helper-BHmFeTtP.js → preload-helper-wdlQj8DP.js} +1 -1
  224. package/storybook-static/assets/react-18-D4o7zN8K.js +9 -0
  225. package/storybook-static/assets/{react-C21x__mS.js → react-BZJXY1be.js} +1 -1
  226. package/storybook-static/assets/{react-qN2cStNd.js → react-Bl2r1tuC.js} +1 -1
  227. package/storybook-static/assets/{react-CvkUhHUq.js → react-GkniIHEK.js} +1 -1
  228. package/storybook-static/assets/{react-dom-2o2phaJG.js → react-dom-BzEl8usk.js} +1 -1
  229. package/storybook-static/assets/react-iQQwtFPL.js +9 -0
  230. package/storybook-static/assets/{refresh-cw-ByNiehPJ.js → refresh-cw-_wTFfhR2.js} +1 -1
  231. package/storybook-static/assets/{rolldown-runtime-C0FnF6B9.js → rolldown-runtime-DkW27tQK.js} +1 -1
  232. package/storybook-static/assets/{settings-2-BGG8WBgX.js → settings-2-BqduNJjJ.js} +1 -1
  233. package/storybook-static/assets/{shim-BUMlC1GG.js → shim-DlYORV19.js} +1 -1
  234. package/storybook-static/assets/{sortable-6C6S-hq-.js → sortable-D-m6SEp7.js} +1 -1
  235. package/storybook-static/assets/syntaxhighlighter-QEQV7K2Y-CEo9I1qZ.js +6 -0
  236. package/storybook-static/assets/{theming-mTWhffkp.js → theming-Cvtrnj7n.js} +1 -1
  237. package/storybook-static/assets/{trash-2-EYPGQg68.js → trash-2-65ZF92zp.js} +1 -1
  238. package/storybook-static/assets/{treeStoryFixtures-Ci7STpiz.js → treeStoryFixtures-DXHh9GL3.js} +1 -1
  239. package/storybook-static/assets/{triangle-alert-qcSLqRkW.js → triangle-alert-k_CRNi0k.js} +1 -1
  240. package/storybook-static/assets/{ui.module-D4CuGr8r.js → ui.module-Cat84Nza.js} +1 -1
  241. package/storybook-static/assets/{uiClasses-CVGbL980.js → uiClasses-B9c6dZuu.js} +1 -1
  242. package/storybook-static/assets/{useFlexClasses-Gn9spXEB.js → useFlexClasses-SgVG37Bb.js} +1 -1
  243. package/storybook-static/assets/{useODataSelectBase-LQU24QnI.js → useODataSelectBase-Ck_hduYv.js} +1 -1
  244. package/storybook-static/assets/{useODataTreeData-0I485gNf.js → useODataTreeData-DTrxPY_k.js} +1 -1
  245. package/storybook-static/assets/usePickerDefaultFilter-5Q1pAV4d.js +1 -0
  246. package/storybook-static/assets/{usePickerQuery-B0a5nSeM.js → usePickerQuery-DdeWtJWc.js} +1 -1
  247. package/storybook-static/assets/{usePickerTriggerController-DMRm063p.js → usePickerTriggerController-D8hxWmGo.js} +1 -1
  248. package/storybook-static/assets/{utils-DUM89eIj.js → utils-tg3ibbzi.js} +1 -1
  249. package/storybook-static/assets/x-C5XG0bD4.js +1 -0
  250. package/storybook-static/iframe.html +7 -7
  251. package/storybook-static/index.json +1 -1
  252. package/storybook-static/project.json +1 -1
  253. package/storybook-static/sb-addons/chromatic-com-storybook-1/manager-bundle.js +35 -33
  254. package/storybook-static/sb-manager/globals-runtime.js +7 -7
  255. package/storybook-static/sb-manager/globals.js +1 -1
  256. package/storybook-static/sb-manager/runtime.js +88 -89
  257. package/storybook-static/vite-inject-mocker-entry.js +2 -2
  258. package/storybook-static/assets/FormattedTableCell-CGREP0wz.js +0 -15
  259. package/storybook-static/assets/Table.stories-ByUJbaZl.js +0 -207
  260. package/storybook-static/assets/axe-Bq-2xuso.js +0 -20
  261. package/storybook-static/assets/browserAndReact-BDUP5jYY.js +0 -70
  262. package/storybook-static/assets/check-D56EYchd.js +0 -1
  263. package/storybook-static/assets/chevron-down-CzEzTRkp.js +0 -1
  264. package/storybook-static/assets/chevron-left-Dl69q13G.js +0 -1
  265. package/storybook-static/assets/chevron-right-CJNjsAmt.js +0 -1
  266. package/storybook-static/assets/circle-check-6tyIZ3Kl.js +0 -1
  267. package/storybook-static/assets/filesAndExcel-Bs3kqlsI.js +0 -92
  268. package/storybook-static/assets/floating-ui.react-bhmHzD7p.js +0 -1
  269. package/storybook-static/assets/formatter-L2YTDE3Q-x0raBH34.js +0 -1
  270. package/storybook-static/assets/formatters-NGPd1d-h.js +0 -202
  271. package/storybook-static/assets/formatters-runtime-CCfGWt-f.js +0 -329
  272. package/storybook-static/assets/iframe-BEvUkaBB.js +0 -1
  273. package/storybook-static/assets/odata-BslPtJet.js +0 -1
  274. package/storybook-static/assets/odataAndTables-Cyl3UJOz.js +0 -77
  275. package/storybook-static/assets/pureUtilities-Bj6GraNW.js +0 -30
  276. package/storybook-static/assets/react-18-CgkwBzTo.js +0 -9
  277. package/storybook-static/assets/react-CjYyitxm.js +0 -9
  278. package/storybook-static/assets/runtimeAndState-mq-BaPyx.js +0 -93
  279. package/storybook-static/assets/syntaxhighlighter-T5IQBZDB-B5rzfkHU.js +0 -6
  280. package/storybook-static/assets/usePickerDefaultFilter-Be420WNF.js +0 -1
  281. package/storybook-static/assets/x-FZLq51ZK.js +0 -1
@@ -0,0 +1,288 @@
1
+ import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{n as t}from"./iframe-CViB2sFm.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{l as i,m as a}from"./blocks-B8F5vBhs.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
+ `,(0,c.jsx)(t.h1,{id:`value-state`,children:`Value state`}),`
3
+ `,(0,c.jsxs)(t.p,{children:[(0,c.jsx)(t.code,{children:`valueState`}),` преобразует обычное значение в семантическое состояние интерфейса:`]}),`
4
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`type State = "" | "none" | "information" | "success" | "warning" | "error";
5
+ `})}),`
6
+ `,(0,c.jsxs)(t.p,{children:[`Например, статус `,(0,c.jsx)(t.code,{children:`DONE`}),` можно связать с `,(0,c.jsx)(t.code,{children:`success`}),`, а число меньше 50 — с `,(0,c.jsx)(t.code,{children:`error`}),`. Модуль ничего не рисует: он вычисляет state, предоставляет CSS class/token helpers и используется formatter pipeline.`]}),`
7
+ `,(0,c.jsxs)(t.p,{children:[`Функции импортируются из `,(0,c.jsx)(t.code,{children:`formatters`}),`, а общий тип `,(0,c.jsx)(t.code,{children:`State`}),` — из `,(0,c.jsx)(t.code,{children:`types`}),`:`]}),`
8
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`import { createFixedResolver, createThresholdResolver, resolveValueState } from "@ryuzaki13/react-foundation-lib/formatters";
9
+ import type { State } from "@ryuzaki13/react-foundation-lib/types";
10
+ `})}),`
11
+ `,(0,c.jsxs)(t.p,{children:[`Отдельного package subpath `,(0,c.jsx)(t.code,{children:`formatters/valueState`}),` нет.`]}),`
12
+ `,(0,c.jsx)(t.h2,{id:`быстрый-выбор`,children:`Быстрый выбор`}),`
13
+ `,(0,c.jsxs)(t.table,{children:[(0,c.jsx)(t.thead,{children:(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.th,{children:`Данные`}),(0,c.jsx)(t.th,{children:`API`}),(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.td,{children:(0,c.jsx)(t.code,{children:`createFixedResolver`})}),(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`DONE → success`})})]}),(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.td,{children:`Числовые диапазоны`}),(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`createThresholdResolver`})}),(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`< 50 → error`})})]}),(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.td,{children:`Нужен сериализуемый короткий id`}),(0,c.jsxs)(t.td,{children:[(0,c.jsx)(t.code,{children:`registerFixedResolver`}),`, `,(0,c.jsx)(t.code,{children:`registerThresholdResolver`})]}),(0,c.jsx)(t.td,{children:`id для runtime-конфига`})]}),(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.td,{children:`Применить resolver по id`}),(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`resolveValueState`})}),(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`(id, value) → State`})})]}),(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.td,{children:`Получить CSS class`}),(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`resolveValueStateClassName`})}),(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`success → statusSuccess`})})]}),(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.td,{children:`Получить цветовой token`}),(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`VALUE_STATE_COLOR_TOKENS`})}),(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`success → CSS variable`})})]})]})]}),`
14
+ `,(0,c.jsxs)(t.h2,{id:`что-означает-каждый-state`,children:[`Что означает каждый `,(0,c.jsx)(t.code,{children:`State`})]}),`
15
+ `,(0,c.jsxs)(t.table,{children:[(0,c.jsx)(t.thead,{children:(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.th,{children:`State`}),(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:`""`})}),(0,c.jsx)(t.td,{children:`Пустое состояние; поддержано базовым контрактом`})]}),(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`none`})}),(0,c.jsx)(t.td,{children:`Нейтральное значение без специального статуса`})]}),(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`information`})}),(0,c.jsx)(t.td,{children:`Информационное состояние`})]}),(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`success`})}),(0,c.jsx)(t.td,{children:`Успех или нормальное положительное значение`})]}),(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`warning`})}),(0,c.jsx)(t.td,{children:`Предупреждение, требующее внимания`})]}),(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`error`})}),(0,c.jsx)(t.td,{children:`Ошибка или критическое значение`})]})]})]}),`
16
+ `,(0,c.jsx)(t.p,{children:`Смысл остаётся семантическим. Конкретный цвет, иконку и доступный текст определяет UI.`}),`
17
+ `,(0,c.jsx)(t.h2,{id:`fixed-resolver-точное-сопоставление`,children:`Fixed resolver: точное сопоставление`}),`
18
+ `,(0,c.jsx)(t.h3,{id:`createfixedresolverconfig`,children:(0,c.jsx)(t.code,{children:`createFixedResolver(config)`})}),`
19
+ `,(0,c.jsxs)(t.p,{children:[`Возвращает функцию `,(0,c.jsx)(t.code,{children:`(value: unknown) => State`}),`:`]}),`
20
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`const resolveStatus = createFixedResolver({
21
+ entries: {
22
+ DONE: "success",
23
+ WAITING: "warning",
24
+ FAILED: "error"
25
+ },
26
+ fallbackState: "none"
27
+ });
28
+
29
+ resolveStatus("DONE"); // "success"
30
+ resolveStatus("WAITING"); // "warning"
31
+ resolveStatus("UNKNOWN"); // "none"
32
+ `})}),`
33
+ `,(0,c.jsxs)(t.p,{children:[(0,c.jsx)(t.code,{children:`fallbackState`}),` по умолчанию равен `,(0,c.jsx)(t.code,{children:`none`}),`.`]}),`
34
+ `,(0,c.jsx)(t.h3,{id:`как-сравниваются-значения`,children:`Как сравниваются значения`}),`
35
+ `,(0,c.jsxs)(t.p,{children:[`Для `,(0,c.jsx)(t.code,{children:`null`}),` и `,(0,c.jsx)(t.code,{children:`undefined`}),` сразу возвращается fallback. Остальные значения превращаются через `,(0,c.jsx)(t.code,{children:`String(value)`}),` и ищутся по точному ключу `,(0,c.jsx)(t.code,{children:`entries`}),`:`]}),`
36
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`const resolve = createFixedResolver({
37
+ entries: {
38
+ "1": "success",
39
+ true: "information",
40
+ " DONE ": "warning"
41
+ }
42
+ });
43
+
44
+ resolve(1); // "success"
45
+ resolve("1"); // "success"
46
+ resolve(true); // "information"
47
+ resolve("DONE"); // "none"
48
+ resolve(" DONE "); // "warning"
49
+ `})}),`
50
+ `,(0,c.jsxs)(t.p,{children:[`Trim, изменение регистра и глубокая сериализация объектов не выполняются. Объект обычно превращается в `,(0,c.jsx)(t.code,{children:`"[object Object]"`}),`, поэтому fixed resolver предназначен прежде всего для scalar-кодов.`]}),`
51
+ `,(0,c.jsx)(t.h3,{id:`snapshot-entries`,children:`Snapshot entries`}),`
52
+ `,(0,c.jsxs)(t.p,{children:[`При создании resolver-а entries копируются во внутренний `,(0,c.jsx)(t.code,{children:`Map`}),`. Последующая мутация исходного объекта не меняет уже созданную функцию:`]}),`
53
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`const entries = { A: "success" as const };
54
+ const resolve = createFixedResolver({ entries });
55
+
56
+ entries.A = "error"; // если тип был насильно ослаблен
57
+ resolve("A"); // всё ещё исходный state
58
+ `})}),`
59
+ `,(0,c.jsx)(t.h2,{id:`threshold-resolver-числовые-сегменты`,children:`Threshold resolver: числовые сегменты`}),`
60
+ `,(0,c.jsx)(t.h3,{id:`простые-пороги`,children:`Простые пороги`}),`
61
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`const resolveProgress = createThresholdResolver({
62
+ thresholds: [50, 80],
63
+ states: ["error", "warning", "success"],
64
+ invalidState: "none"
65
+ });
66
+
67
+ resolveProgress(20); // "error"
68
+ resolveProgress(50); // "warning"
69
+ resolveProgress(79); // "warning"
70
+ resolveProgress(80); // "success"
71
+ resolveProgress(100); // "success"
72
+ `})}),`
73
+ `,(0,c.jsxs)(t.p,{children:[`Пороги сортируются по возрастанию. Для `,(0,c.jsx)(t.code,{children:`N`}),` thresholds всегда нужно передать `,(0,c.jsx)(t.code,{children:`N + 1`}),` states:`]}),`
74
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-text`,children:`(-∞, threshold 1) → states[0]
75
+ [threshold 1, threshold 2) → states[1]
76
+ [threshold 2, +∞) → states[2]
77
+ `})}),`
78
+ `,(0,c.jsxs)(t.p,{children:[`Если количество не совпадает, создание/регистрация выбрасывает `,(0,c.jsx)(t.code,{children:`Error`}),`.`]}),`
79
+ `,(0,c.jsxs)(t.h3,{id:`граница-upper-и-lower`,children:[`Граница `,(0,c.jsx)(t.code,{children:`upper`}),` и `,(0,c.jsx)(t.code,{children:`lower`})]}),`
80
+ `,(0,c.jsxs)(t.p,{children:[`Число в `,(0,c.jsx)(t.code,{children:`thresholds`}),` эквивалентно объекту с `,(0,c.jsx)(t.code,{children:`boundary: "upper"`}),`:`]}),`
81
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`50
82
+ // то же самое:
83
+ { value: 50, boundary: "upper" }
84
+ `})}),`
85
+ `,(0,c.jsxs)(t.ul,{children:[`
86
+ `,(0,c.jsxs)(t.li,{children:[(0,c.jsx)(t.code,{children:`upper`}),`: само пороговое значение относится к верхнему сегменту;`]}),`
87
+ `,(0,c.jsxs)(t.li,{children:[(0,c.jsx)(t.code,{children:`lower`}),`: само пороговое значение остаётся в нижнем сегменте.`]}),`
88
+ `]}),`
89
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`const upper = createThresholdResolver({
90
+ thresholds: [{ value: 50, boundary: "upper" }],
91
+ states: ["error", "success"]
92
+ });
93
+
94
+ upper(49); // "error"
95
+ upper(50); // "success"
96
+ `})}),`
97
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`const lower = createThresholdResolver({
98
+ thresholds: [{ value: 50, boundary: "lower" }],
99
+ states: ["error", "success"]
100
+ });
101
+
102
+ lower(50); // "error"
103
+ lower(51); // "success"
104
+ `})}),`
105
+ `,(0,c.jsx)(t.h3,{id:`преобразование-входа-в-число`,children:`Преобразование входа в число`}),`
106
+ `,(0,c.jsxs)(t.p,{children:[`Пустая строка, `,(0,c.jsx)(t.code,{children:`null`}),` и `,(0,c.jsx)(t.code,{children:`undefined`}),` сразу дают `,(0,c.jsx)(t.code,{children:`invalidState`}),`. Остальное преобразуется унарным `,(0,c.jsx)(t.code,{children:`+`}),` и должно стать конечным числом:`]}),`
107
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`const resolve = createThresholdResolver({
108
+ thresholds: [10],
109
+ states: ["warning", "success"],
110
+ invalidState: "error"
111
+ });
112
+
113
+ resolve("9"); // "warning"
114
+ resolve("10"); // "success"
115
+ resolve(""); // "error"
116
+ resolve("abc"); // "error"
117
+ resolve(Infinity); // "error"
118
+ resolve(false); // "warning", потому что +false === 0
119
+ `})}),`
120
+ `,(0,c.jsxs)(t.p,{children:[`Это JavaScript-преобразование, а не SAP-like `,(0,c.jsx)(t.code,{children:`parseNumber`}),`: строка `,(0,c.jsx)(t.code,{children:`"1 234,5"`}),` не будет прочитана как число. Нормализуйте внешний источник заранее, если это требуется.`]}),`
121
+ `,(0,c.jsx)(t.h3,{id:`сортировка-и-states`,children:`Сортировка и states`}),`
122
+ `,(0,c.jsxs)(t.p,{children:[`Thresholds сортируются, но массив `,(0,c.jsx)(t.code,{children:`states`}),` не переставляется. Он уже должен описывать сегменты в возрастающем порядке:`]}),`
123
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`createThresholdResolver({
124
+ thresholds: [80, 50], // будет отсортировано как [50, 80]
125
+ states: ["error", "warning", "success"] // порядок сегментов остаётся таким
126
+ });
127
+ `})}),`
128
+ `,(0,c.jsxs)(t.p,{children:[`Дублирующиеся числовые пороги допускаются, но приводят к `,(0,c.jsx)(t.code,{children:`console.warn`}),`. Лучше не использовать их: между одинаковыми границами получается пустой сегмент.`]}),`
129
+ `,(0,c.jsx)(t.p,{children:`Threshold values не проверяются отдельно на finite. Передавайте только конечные числа.`}),`
130
+ `,(0,c.jsx)(t.h2,{id:`прямая-функция-и-регистрация-по-id`,children:`Прямая функция и регистрация по id`}),`
131
+ `,(0,c.jsx)(t.p,{children:`У обоих видов есть две формы API:`}),`
132
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`const fn = createFixedResolver(config);
133
+ const id = registerFixedResolver(config);
134
+ `})}),`
135
+ `,(0,c.jsxs)(t.h3,{id:`когда-использовать-create`,children:[`Когда использовать `,(0,c.jsx)(t.code,{children:`create*`})]}),`
136
+ `,(0,c.jsx)(t.p,{children:`Когда resolver нужен непосредственно в коде:`}),`
137
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`const state = resolveStatus(row.status);
138
+ `})}),`
139
+ `,(0,c.jsxs)(t.h3,{id:`когда-использовать-register`,children:[`Когда использовать `,(0,c.jsx)(t.code,{children:`register*`})]}),`
140
+ `,(0,c.jsx)(t.p,{children:`Когда нужно хранить короткий id и разрешать функцию через общий runtime:`}),`
141
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`const resolverId = registerThresholdResolver(config);
142
+ const state = resolveValueState(resolverId, row.value);
143
+ `})}),`
144
+ `,(0,c.jsxs)(t.p,{children:[`Обе формы регистрируют resolver в общем module-level реестре. `,(0,c.jsx)(t.code,{children:`create*`}),` не является изолированной функцией вне реестра.`]}),`
145
+ `,(0,c.jsx)(t.h2,{id:`дедупликация`,children:`Дедупликация`}),`
146
+ `,(0,c.jsx)(t.p,{children:`Идентичные конфигурации используют одну регистрацию:`}),`
147
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`const firstId = registerFixedResolver({
148
+ entries: { A: "success", B: "error" }
149
+ });
150
+
151
+ const secondId = registerFixedResolver({
152
+ entries: { B: "error", A: "success" }
153
+ });
154
+
155
+ firstId === secondId; // true
156
+ `})}),`
157
+ `,(0,c.jsx)(t.p,{children:`Для fixed resolver ключи entries сортируются. Для threshold resolver пороги нормализуются и сортируются. В канонический ключ также входят states, границы и fallback/invalid state.`}),`
158
+ `,(0,c.jsxs)(t.p,{children:[`Идентичные вызовы `,(0,c.jsx)(t.code,{children:`create*`}),` возвращают одну и ту же function reference:`]}),`
159
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`createFixedResolver(config) === createFixedResolver(config); // true
160
+ `})}),`
161
+ `,(0,c.jsx)(t.h2,{id:`реестр-resolver-ов`,children:`Реестр resolver-ов`}),`
162
+ `,(0,c.jsx)(t.h3,{id:`resolvevaluestateid-value`,children:(0,c.jsx)(t.code,{children:`resolveValueState(id, value)`})}),`
163
+ `,(0,c.jsxs)(t.p,{children:[`Находит функцию и применяет её. Неизвестный id безопасно возвращает `,(0,c.jsx)(t.code,{children:`none`}),`:`]}),`
164
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`resolveValueState("unknown", 10); // "none"
165
+ `})}),`
166
+ `,(0,c.jsx)(t.h3,{id:`getvaluestateresolverid`,children:(0,c.jsx)(t.code,{children:`getValueStateResolver(id)`})}),`
167
+ `,(0,c.jsxs)(t.p,{children:[`Возвращает функцию либо `,(0,c.jsx)(t.code,{children:`undefined`}),`:`]}),`
168
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`const resolver = getValueStateResolver(id);
169
+ const state = resolver?.(value) ?? "none";
170
+ `})}),`
171
+ `,(0,c.jsx)(t.h3,{id:`getvaluestateresolverids`,children:(0,c.jsx)(t.code,{children:`getValueStateResolverIds()`})}),`
172
+ `,(0,c.jsx)(t.p,{children:`Возвращает новый массив всех id в порядке регистрации.`}),`
173
+ `,(0,c.jsx)(t.h3,{id:`resetvaluestateresolvers`,children:(0,c.jsx)(t.code,{children:`resetValueStateResolvers()`})}),`
174
+ `,(0,c.jsx)(t.p,{children:`Полностью очищает оба индекса. Функция предназначена прежде всего для тестов.`}),`
175
+ `,(0,c.jsx)(t.p,{children:`После сброса:`}),`
176
+ `,(0,c.jsxs)(t.ul,{children:[`
177
+ `,(0,c.jsxs)(t.li,{children:[`старый id больше не разрешается через `,(0,c.jsx)(t.code,{children:`resolveValueState`}),`;`]}),`
178
+ `,(0,c.jsx)(t.li,{children:`уже полученная function reference продолжает работать;`}),`
179
+ `,(0,c.jsx)(t.li,{children:`повторная регистрация снова создаст запись.`}),`
180
+ `]}),`
181
+ `,(0,c.jsx)(t.p,{children:`Не очищайте реестр в работающем приложении, если pipeline executors зависят от id.`}),`
182
+ `,(0,c.jsx)(t.h2,{id:`низкоуровневый-registry-api`,children:`Низкоуровневый registry API`}),`
183
+ `,(0,c.jsx)(t.h3,{id:`computeshorthashinput`,children:(0,c.jsx)(t.code,{children:`computeShortHash(input)`})}),`
184
+ `,(0,c.jsxs)(t.p,{children:[`Вычисляет детерминированный djb2-подобный 32-bit hash и кодирует его в base36 с префиксом `,(0,c.jsx)(t.code,{children:`id_`}),`:`]}),`
185
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`const id = computeShortHash("fixed|A:success|none");
186
+ `})}),`
187
+ `,(0,c.jsx)(t.p,{children:`Это не криптографический hash. Он не подходит для паролей, подписей, контроля целостности и security-решений.`}),`
188
+ `,(0,c.jsx)(t.p,{children:`Коллизии отдельно не разрешаются: два разных canonical keys теоретически могут получить одинаковый id. Поэтому id — runtime-деталь дедупликации, а не долговечный бизнес-идентификатор или ключ БД.`}),`
189
+ `,(0,c.jsx)(t.h3,{id:`registerresolvercanonicalkey-compilefunction`,children:(0,c.jsx)(t.code,{children:`registerResolver(canonicalKey, compileFunction)`})}),`
190
+ `,(0,c.jsxs)(t.p,{children:[`Низкоуровневая регистрация произвольного `,(0,c.jsx)(t.code,{children:`ValueStateResolver`}),`:`]}),`
191
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`const registration = registerResolver("custom|v1", () => (value) => (value === "ok" ? "success" : "none"));
192
+
193
+ registration.id;
194
+ registration.isNew;
195
+ `})}),`
196
+ `,(0,c.jsxs)(t.p,{children:[`Если canonical key уже известен, `,(0,c.jsx)(t.code,{children:`compileFunction`}),` не вызывается и возвращается `,(0,c.jsx)(t.code,{children:`{ isNew: false }`}),`.`]}),`
197
+ `,(0,c.jsxs)(t.p,{children:[`Выбирайте canonical key детерминированно и включайте в него все параметры, влияющие на результат. В обычном приложении предпочитайте `,(0,c.jsx)(t.code,{children:`registerFixedResolver`}),` или `,(0,c.jsx)(t.code,{children:`registerThresholdResolver`}),`.`]}),`
198
+ `,(0,c.jsx)(t.h3,{id:`findresolverbycanonicalkeycanonicalkey`,children:(0,c.jsx)(t.code,{children:`findResolverByCanonicalKey(canonicalKey)`})}),`
199
+ `,(0,c.jsxs)(t.p,{children:[`Возвращает существующую функцию по точному canonical key либо `,(0,c.jsx)(t.code,{children:`undefined`}),`. Это инфраструктурный helper для дедупликации.`]}),`
200
+ `,(0,c.jsx)(t.h2,{id:`presentation-api`,children:`Presentation API`}),`
201
+ `,(0,c.jsx)(t.h3,{id:`default_value_states`,children:(0,c.jsx)(t.code,{children:`DEFAULT_VALUE_STATES`})}),`
202
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`["none", "information", "success", "warning", "error"];
203
+ `})}),`
204
+ `,(0,c.jsxs)(t.p,{children:[`Список подходит для UI выбора state. Пустой state `,(0,c.jsx)(t.code,{children:`""`}),` намеренно не включён.`]}),`
205
+ `,(0,c.jsx)(t.h3,{id:`value_state_color_tokens`,children:(0,c.jsx)(t.code,{children:`VALUE_STATE_COLOR_TOKENS`})}),`
206
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`{
207
+ "": "transparent",
208
+ none: "var(--content-1)",
209
+ information: "var(--status-info-text)",
210
+ success: "var(--status-success-text)",
211
+ warning: "var(--status-warning-text)",
212
+ error: "var(--status-error-text)"
213
+ }
214
+ `})}),`
215
+ `,(0,c.jsxs)(t.p,{children:[`Объект экспортируется как изменяемый `,(0,c.jsx)(t.code,{children:`Record`}),`, но его следует считать общей read-only таблицей. Не мутируйте токены глобально; тему меняйте через значения CSS variables.`]}),`
216
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`const color = VALUE_STATE_COLOR_TOKENS[state];
217
+ `})}),`
218
+ `,(0,c.jsx)(t.h3,{id:`resolvevaluestateclassnamestate-fallbackclassname`,children:(0,c.jsx)(t.code,{children:`resolveValueStateClassName(state, fallbackClassName?)`})}),`
219
+ `,(0,c.jsxs)(t.table,{children:[(0,c.jsx)(t.thead,{children:(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.th,{children:`State`}),(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:`success`})}),(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`statusSuccess`})})]}),(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`warning`})}),(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`statusWarning`})})]}),(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`error`})}),(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`statusError`})})]}),(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`information`})}),(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`statusInfo`})})]}),(0,c.jsxs)(t.tr,{children:[(0,c.jsxs)(t.td,{children:[(0,c.jsx)(t.code,{children:`none`}),` или `,(0,c.jsx)(t.code,{children:`""`})]}),(0,c.jsxs)(t.td,{children:[`fallback либо `,(0,c.jsx)(t.code,{children:`undefined`})]})]})]})]}),`
220
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`resolveValueStateClassName("success"); // "statusSuccess"
221
+ resolveValueStateClassName("none"); // undefined
222
+ resolveValueStateClassName("none", "neutral"); // "neutral"
223
+ `})}),`
224
+ `,(0,c.jsx)(t.p,{children:`Функция возвращает имена классов, но не импортирует CSS и не гарантирует наличие стилей в consumer.`}),`
225
+ `,(0,c.jsx)(t.h2,{id:`использование-с-formatter-pipeline`,children:`Использование с formatter pipeline`}),`
226
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`const pipeline = {
227
+ version: 1,
228
+ plan: {
229
+ steps: [
230
+ {
231
+ id: "state",
232
+ type: "resolveValueState",
233
+ config: {
234
+ resolver: {
235
+ kind: "threshold",
236
+ thresholds: [50, 80],
237
+ states: ["error", "warning", "success"]
238
+ },
239
+ icon: {
240
+ enabled: true,
241
+ showValue: true,
242
+ position: "left"
243
+ }
244
+ }
245
+ }
246
+ ]
247
+ }
248
+ } as const;
249
+ `})}),`
250
+ `,(0,c.jsxs)(t.p,{children:[`Pipeline регистрирует resolver на этапе компиляции, вычисляет state до typed formatting и возвращает state/icon-параметры UI. Подробности: `,(0,c.jsx)(t.a,{href:`../pipeline/README.mdx#%D1%88%D0%B0%D0%B3-resolvevaluestate`,children:`pipeline/README.mdx`}),`.`]}),`
251
+ `,(0,c.jsx)(t.h2,{id:`тестирование`,children:`Тестирование`}),`
252
+ `,(0,c.jsx)(t.p,{children:`Изолируйте глобальный реестр:`}),`
253
+ `,(0,c.jsx)(t.pre,{children:(0,c.jsx)(t.code,{className:`language-ts`,children:`import { beforeEach } from "vitest";
254
+ import { resetValueStateResolvers } from "@ryuzaki13/react-foundation-lib/formatters";
255
+
256
+ beforeEach(() => {
257
+ resetValueStateResolvers();
258
+ });
259
+ `})}),`
260
+ `,(0,c.jsx)(t.p,{children:`Для threshold resolver обязательно проверяйте:`}),`
261
+ `,(0,c.jsxs)(t.ul,{children:[`
262
+ `,(0,c.jsx)(t.li,{children:`значение меньше первого порога;`}),`
263
+ `,(0,c.jsx)(t.li,{children:`точное равенство каждому порогу;`}),`
264
+ `,(0,c.jsx)(t.li,{children:`значение между порогами;`}),`
265
+ `,(0,c.jsx)(t.li,{children:`значение выше последнего порога;`}),`
266
+ `,(0,c.jsx)(t.li,{children:`пустые и невалидные входы;`}),`
267
+ `,(0,c.jsxs)(t.li,{children:[(0,c.jsx)(t.code,{children:`lower`}),` и `,(0,c.jsx)(t.code,{children:`upper`}),`, если граница настраивается.`]}),`
268
+ `]}),`
269
+ `,(0,c.jsx)(t.p,{children:`Для fixed resolver проверяйте точный регистр, пробелы, numeric/string keys и fallback.`}),`
270
+ `,(0,c.jsx)(t.h2,{id:`частые-ошибки`,children:`Частые ошибки`}),`
271
+ `,(0,c.jsx)(t.h3,{id:`ожидать-trim-и-case-insensitive-fixed-lookup`,children:`Ожидать trim и case-insensitive fixed lookup`}),`
272
+ `,(0,c.jsxs)(t.p,{children:[(0,c.jsx)(t.code,{children:`"DONE"`}),`, `,(0,c.jsx)(t.code,{children:`"done"`}),` и `,(0,c.jsx)(t.code,{children:`" DONE "`}),` — разные ключи. Нормализуйте значение отдельно, только если это часть вашего контракта.`]}),`
273
+ `,(0,c.jsx)(t.h3,{id:`перепутать-количество-states`,children:`Перепутать количество states`}),`
274
+ `,(0,c.jsx)(t.p,{children:`Два порога образуют три сегмента, поэтому нужны три states.`}),`
275
+ `,(0,c.jsx)(t.h3,{id:`неправильно-понять-boundary`,children:`Неправильно понять boundary`}),`
276
+ `,(0,c.jsxs)(t.p,{children:[(0,c.jsx)(t.code,{children:`upper`}),` означает, что точный threshold уже относится к верхнему сегменту. Для включения порога в нижний используйте `,(0,c.jsx)(t.code,{children:`lower`}),`.`]}),`
277
+ `,(0,c.jsx)(t.h3,{id:`сохранить-hash-id-как-вечный-бизнес-ключ`,children:`Сохранить hash id как вечный бизнес-ключ`}),`
278
+ `,(0,c.jsx)(t.p,{children:`Алгоритм не криптографический и не обрабатывает коллизии. Храните сериализуемую resolver-конфигурацию, а id считайте runtime-производной.`}),`
279
+ `,(0,c.jsx)(t.h3,{id:`очищать-реестр-после-компиляции`,children:`Очищать реестр после компиляции`}),`
280
+ `,(0,c.jsxs)(t.p,{children:[`Pipeline executor хранит id и после reset начнёт получать `,(0,c.jsx)(t.code,{children:`none`}),`.`]}),`
281
+ `,(0,c.jsx)(t.h2,{id:`api-справка`,children:`API-справка`}),`
282
+ `,(0,c.jsxs)(t.table,{children:[(0,c.jsx)(t.thead,{children:(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.th,{children:`Семейство`}),(0,c.jsx)(t.th,{children:`Публичный API`})]})}),(0,c.jsxs)(t.tbody,{children:[(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.td,{children:`Fixed`}),(0,c.jsxs)(t.td,{children:[(0,c.jsx)(t.code,{children:`createFixedResolver`}),`, `,(0,c.jsx)(t.code,{children:`registerFixedResolver`}),`, `,(0,c.jsx)(t.code,{children:`FixedValueStateResolverConfig`})]})]}),(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.td,{children:`Threshold`}),(0,c.jsxs)(t.td,{children:[(0,c.jsx)(t.code,{children:`createThresholdResolver`}),`, `,(0,c.jsx)(t.code,{children:`registerThresholdResolver`}),`, `,(0,c.jsx)(t.code,{children:`ThresholdBoundary`}),`, `,(0,c.jsx)(t.code,{children:`ThresholdDefinition`}),`, `,(0,c.jsx)(t.code,{children:`ThresholdValueStateResolverConfig`})]})]}),(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.td,{children:`Registry`}),(0,c.jsxs)(t.td,{children:[(0,c.jsx)(t.code,{children:`computeShortHash`}),`, `,(0,c.jsx)(t.code,{children:`registerResolver`}),`, `,(0,c.jsx)(t.code,{children:`findResolverByCanonicalKey`}),`, `,(0,c.jsx)(t.code,{children:`resolveValueState`}),`, `,(0,c.jsx)(t.code,{children:`getValueStateResolver`}),`, `,(0,c.jsx)(t.code,{children:`getValueStateResolverIds`}),`, `,(0,c.jsx)(t.code,{children:`resetValueStateResolvers`})]})]}),(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.td,{children:`Presentation`}),(0,c.jsxs)(t.td,{children:[(0,c.jsx)(t.code,{children:`DEFAULT_VALUE_STATES`}),`, `,(0,c.jsx)(t.code,{children:`VALUE_STATE_COLOR_TOKENS`}),`, `,(0,c.jsx)(t.code,{children:`resolveValueStateClassName`})]})]}),(0,c.jsxs)(t.tr,{children:[(0,c.jsx)(t.td,{children:`Function type`}),(0,c.jsx)(t.td,{children:(0,c.jsx)(t.code,{children:`ValueStateResolver`})})]})]})]}),`
283
+ `,(0,c.jsx)(t.h2,{id:`связанная-документация`,children:`Связанная документация`}),`
284
+ `,(0,c.jsxs)(t.ul,{children:[`
285
+ `,(0,c.jsx)(t.li,{children:(0,c.jsxs)(t.a,{href:`../README.mdx`,children:[`Обзор `,(0,c.jsx)(t.code,{children:`formatters`})]})}),`
286
+ `,(0,c.jsx)(t.li,{children:(0,c.jsx)(t.a,{href:`../pipeline/README.mdx`,children:`Formatter pipeline`})}),`
287
+ `,(0,c.jsx)(t.li,{children:(0,c.jsx)(t.a,{href:`../number/README.mdx`,children:`Числовые форматтеры`})}),`
288
+ `]})]})}function s(e={}){let{wrapper:t}={...n(),...e.components};return t?(0,c.jsx)(t,{...e,children:(0,c.jsx)(o,{...e})}):o(e)}var c;function l(){return(l=e((()=>{c=t(),r(),a()})))()}l();export{s as default};