@ryuzaki13/react-foundation-ui 1.2.14 → 1.2.16

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 (207) hide show
  1. package/dist/chunks/{TextEditorLexicalClient-D4hmfP5B.js → TextEditorLexicalClient-CVTrglWP.js} +2 -2
  2. package/dist/chunks/{TextEditorLexicalClient-D4hmfP5B.js.map → TextEditorLexicalClient-CVTrglWP.js.map} +1 -1
  3. package/dist/chunks/{date-input-BcVfIUJT.js → date-input-DBJisPRz.js} +2 -2
  4. package/dist/chunks/{date-input-BcVfIUJT.js.map → date-input-DBJisPRz.js.map} +1 -1
  5. package/dist/chunks/{radio-group-CEY_kdz8.js → radio-group-CM9Lg_nc.js} +3 -3
  6. package/dist/chunks/radio-group-CM9Lg_nc.js.map +1 -0
  7. package/dist/date-input/index.js +1 -1
  8. package/dist/period-select/PeriodSelect.d.ts +12 -2
  9. package/dist/period-select/PeriodSelect.d.ts.map +1 -1
  10. package/dist/period-select/index.js +39 -31
  11. package/dist/period-select/index.js.map +1 -1
  12. package/dist/period-select/lib/periodSelect.d.ts +18 -1
  13. package/dist/period-select/lib/periodSelect.d.ts.map +1 -1
  14. package/dist/preset-range-date-input/index.js +1 -1
  15. package/dist/radio-group/index.js +1 -1
  16. package/dist/styles.css +1 -1
  17. package/dist/text-editor/index.js +1 -1
  18. package/package.json +1 -1
  19. package/storybook-static/assets/{Badge-BzE3KIAJ.js → Badge-xtkCi9dr.js} +1 -1
  20. package/storybook-static/assets/{Badge.stories-Ua5ECmTZ.js → Badge.stories-CKrFIQ5F.js} +1 -1
  21. package/storybook-static/assets/{Button-BZr1CHbJ.js → Button-CaaN67yU.js} +1 -1
  22. package/storybook-static/assets/{Button-BDbg6LF9.js → Button-DH3mbrYe.js} +1 -1
  23. package/storybook-static/assets/{Button.stories-1yBm6GWr.js → Button.stories-CgQQj0tp.js} +1 -1
  24. package/storybook-static/assets/{CheckBox-CLhSjwoM.js → CheckBox-BDQK30OS.js} +1 -1
  25. package/storybook-static/assets/{CheckBox-ClU3a73b.js → CheckBox-DfDQTQbJ.js} +1 -1
  26. package/storybook-static/assets/{CheckBox.stories-CbmUeuSm.js → CheckBox.stories-Djc--F9u.js} +1 -1
  27. package/storybook-static/assets/{Color-KMSTOMOX-D4RUKQAg.js → Color-KMSTOMOX-DQy0eoyu.js} +1 -1
  28. package/storybook-static/assets/{ContextMenu-BeUIbLy4.js → ContextMenu-0JP128xU.js} +1 -1
  29. package/storybook-static/assets/{ContextMenu.stories-BnWm5LcX.js → ContextMenu.stories-DakD2D_c.js} +1 -1
  30. package/storybook-static/assets/{DateInput-B0gFyLyA.js → DateInput-Dz9JLuHe.js} +1 -1
  31. package/storybook-static/assets/{DateInput-Cn-GfCPV.js → DateInput-JDcWMGze.js} +1 -1
  32. package/storybook-static/assets/{DateInput.stories-DcXiRksA.js → DateInput.stories-DFgf-v7q.js} +1 -1
  33. package/storybook-static/assets/{DateRangePresetSelect-BUeFvFRM.js → DateRangePresetSelect-BsiagzJO.js} +1 -1
  34. package/storybook-static/assets/{DateRangePresetSelect-IS9Vac0n.js → DateRangePresetSelect-CauxR1zA.js} +1 -1
  35. package/storybook-static/assets/{DateRangePresetSelect.stories-Bl9jJVtx.js → DateRangePresetSelect.stories-CGjeE149.js} +1 -1
  36. package/storybook-static/assets/{Detail-C2vADWKT.js → Detail-Dd9tgzP1.js} +1 -1
  37. package/storybook-static/assets/{Detail.stories-CG8rLdIH.js → Detail.stories-BKh6pL2G.js} +1 -1
  38. package/storybook-static/assets/{Dialog-DW2xBHt6.js → Dialog-Chd71KoW.js} +1 -1
  39. package/storybook-static/assets/{Dialog.stories-Dmhd1CnG.js → Dialog.stories-BHdYaLjQ.js} +1 -1
  40. package/storybook-static/assets/{Disclosure-DyNlfi6e.js → Disclosure-kpIMvWyk.js} +1 -1
  41. package/storybook-static/assets/{Disclosure.stories-zLaWezA0.js → Disclosure.stories-DYbw038T.js} +1 -1
  42. package/storybook-static/assets/{DocsRenderer-JROSPFPF-BGRkR42g.js → DocsRenderer-JROSPFPF-CfQJHmsz.js} +2 -2
  43. package/storybook-static/assets/{DropZone-Bh46a7nG.js → DropZone-D0wMosH7.js} +1 -1
  44. package/storybook-static/assets/{DropZone.stories-tbKrHK8P.js → DropZone.stories-CUNTD4nI.js} +1 -1
  45. package/storybook-static/assets/{DropdownMenu-yMdkX2Bv.js → DropdownMenu-DH7_UG28.js} +1 -1
  46. package/storybook-static/assets/{ExpandableActionPanel.stories-CjeHh0nI.js → ExpandableActionPanel.stories-OOg3t6Di.js} +1 -1
  47. package/storybook-static/assets/{Flex-Czbc0vf5.js → Flex-C-9AF37J.js} +1 -1
  48. package/storybook-static/assets/{Flex-CQStJ89L.js → Flex-TiBvMgmo.js} +1 -1
  49. package/storybook-static/assets/{Flex.stories-B-HTukqp.js → Flex.stories-QmHIoBfR.js} +1 -1
  50. package/storybook-static/assets/{Grid-Bk5IrBSw.js → Grid-BW2BrkVN.js} +1 -1
  51. package/storybook-static/assets/{Grid-D4NYv4pO.js → Grid-CE88HqQy.js} +1 -1
  52. package/storybook-static/assets/{Grid.stories-DfS-GHuB.js → Grid.stories-Cv1PU0l_.js} +1 -1
  53. package/storybook-static/assets/{ImageCropper.stories-C6jSY7JQ.js → ImageCropper.stories-D8nIQ30F.js} +1 -1
  54. package/storybook-static/assets/{ImageRenderer-DgEmIXI4.js → ImageRenderer-DlVtAEXb.js} +1 -1
  55. package/storybook-static/assets/{ImageRenderer.stories-B2JjQW3m.js → ImageRenderer.stories-Cc3KtBM7.js} +1 -1
  56. package/storybook-static/assets/{ImageView.stories-CLs0y4jG.js → ImageView.stories-CbfjiLPT.js} +1 -1
  57. package/storybook-static/assets/{ImageViewer.stories-Z8cchtBV.js → ImageViewer.stories-DhXW_-mP.js} +2 -2
  58. package/storybook-static/assets/{ImageViewerRuntime-BS7rtbW8.js → ImageViewerRuntime-BWpa3n31.js} +1 -1
  59. package/storybook-static/assets/{Input-BcGJZS3l.js → Input-0F3FSpLU.js} +1 -1
  60. package/storybook-static/assets/{Input-DW_06dLV.js → Input-nJNr-IY6.js} +1 -1
  61. package/storybook-static/assets/{Input.stories-BTtd1YEu.js → Input.stories-rTgTeYrT.js} +1 -1
  62. package/storybook-static/assets/{InputDateTime-iehYEtxN.js → InputDateTime-aEtaZ8Iq.js} +1 -1
  63. package/storybook-static/assets/{InputDateTime.stories-D3xNpsu2.js → InputDateTime.stories-CDbaYQhG.js} +1 -1
  64. package/storybook-static/assets/{InputFile-D0tb340S.js → InputFile-CHOQ5bIv.js} +1 -1
  65. package/storybook-static/assets/{InputFile.stories-Pq8Ecwjd.js → InputFile.stories-Bl5M5l2c.js} +1 -1
  66. package/storybook-static/assets/{InputFiles-BgeARUDm.js → InputFiles-CXTmn9Yb.js} +1 -1
  67. package/storybook-static/assets/{InputFiles-INybw4J2.js → InputFiles-CyFz3ody.js} +1 -1
  68. package/storybook-static/assets/{InputFiles.stories-M5lZ8X0M.js → InputFiles.stories-BlVsiC7g.js} +1 -1
  69. package/storybook-static/assets/{InputImage-C7QJAYSm.js → InputImage-DUzYflL7.js} +1 -1
  70. package/storybook-static/assets/{InputImage.stories-5nA4aJ5_.js → InputImage.stories-Df0Llqmo.js} +1 -1
  71. package/storybook-static/assets/{LayoutPicker-CKstYA7F.js → LayoutPicker-BG0KYH1a.js} +1 -1
  72. package/storybook-static/assets/{LayoutPicker.stories-Bqc3KZvm.js → LayoutPicker.stories-BgRYBl0Z.js} +1 -1
  73. package/storybook-static/assets/{Listbox-BMf88cSk.js → Listbox-yqiBfOkE.js} +1 -1
  74. package/storybook-static/assets/{Listbox.stories-CI8WogUC.js → Listbox.stories-C4hehlvL.js} +1 -1
  75. package/storybook-static/assets/{Modal-DRZIE7SJ.js → Modal-Db6pP1_Q.js} +1 -1
  76. package/storybook-static/assets/{Modal.stories-DPulwYmq.js → Modal.stories-Bd9W4X7v.js} +1 -1
  77. package/storybook-static/assets/{MultiSelect-Bh_df5tS.js → MultiSelect-75Epu0vT.js} +1 -1
  78. package/storybook-static/assets/{MultiSelect-DCqMGCpJ.js → MultiSelect-CCwvk_RE.js} +1 -1
  79. package/storybook-static/assets/{MultiSelect.stories-BF_ltH3y.js → MultiSelect.stories-DTUXExXJ.js} +1 -1
  80. package/storybook-static/assets/{NotificationsHost-VOO9Rjru.js → NotificationsHost-BRTN_qeJ.js} +1 -1
  81. package/storybook-static/assets/{NotificationsHost.stories-BQebLt7E.js → NotificationsHost.stories-GLqI5DeR.js} +1 -1
  82. package/storybook-static/assets/{ODataMultiSelect-2apHcEfR.js → ODataMultiSelect-BWAoROx6.js} +1 -1
  83. package/storybook-static/assets/{ODataMultiSelect-D6JwbRE_.js → ODataMultiSelect-BlmT8jHo.js} +1 -1
  84. package/storybook-static/assets/{ODataMultiSelect.stories-XXcgbIRB.js → ODataMultiSelect.stories-BmlUlRUM.js} +1 -1
  85. package/storybook-static/assets/{ODataSelect-DhXlSsXp.js → ODataSelect-B3KH30W0.js} +1 -1
  86. package/storybook-static/assets/{ODataSelect-Bkdgov0g.js → ODataSelect-BmqsSYir.js} +1 -1
  87. package/storybook-static/assets/{ODataSelect.stories-BCjsAT_n.js → ODataSelect.stories-CG4HA3Kl.js} +1 -1
  88. package/storybook-static/assets/{ODataTreeMultiSelect-BQZSzY8Q.js → ODataTreeMultiSelect-ymv5wCyN.js} +1 -1
  89. package/storybook-static/assets/{ODataTreeMultiSelect.stories-xqkAPvud.js → ODataTreeMultiSelect.stories-B8NCLBVe.js} +1 -1
  90. package/storybook-static/assets/{ODataTreeSelect-A4VYwwdU.js → ODataTreeSelect-8PsAgZ2H.js} +1 -1
  91. package/storybook-static/assets/{ODataTreeSelect.stories-DgeUmjcS.js → ODataTreeSelect.stories-DHzvb-PZ.js} +1 -1
  92. package/storybook-static/assets/PeriodSelect-CwlLJiZv.js +56 -0
  93. package/storybook-static/assets/PeriodSelect.stories-C4invndl.js +64 -0
  94. package/storybook-static/assets/{Popover-Cm1Cjnlt.js → Popover-CLBzKrX3.js} +1 -1
  95. package/storybook-static/assets/{Popover.stories-CRqWnuti.js → Popover.stories-CCgMSOWy.js} +1 -1
  96. package/storybook-static/assets/{PresetRangeDateInput-CSC649o5.js → PresetRangeDateInput-lUb07N8N.js} +1 -1
  97. package/storybook-static/assets/{PresetRangeDateInput.stories-CJAb-3Tk.js → PresetRangeDateInput.stories-BgfljGMW.js} +1 -1
  98. package/storybook-static/assets/{RadioButton-BmXY3NdM.js → RadioButton-DGLBKGD5.js} +1 -1
  99. package/storybook-static/assets/{RadioButton.stories-BipvtuUA.js → RadioButton.stories-CMOj57A_.js} +1 -1
  100. package/storybook-static/assets/{RadioGroup-DHfbcL2R.js → RadioGroup-BzVcNqDG.js} +1 -1
  101. package/storybook-static/assets/RadioGroup-CypQbkYZ.js +1 -0
  102. package/storybook-static/assets/RadioGroup-DSogQ0Gh.css +1 -0
  103. package/storybook-static/assets/{RadioGroup.stories-C62fFzzV.js → RadioGroup.stories-BKf-vKr2.js} +1 -1
  104. package/storybook-static/assets/{Select-Ch13M3mQ.js → Select-BTWHtPG7.js} +1 -1
  105. package/storybook-static/assets/{Select-Fy8jN7iP.js → Select-rbSj1Ivy.js} +1 -1
  106. package/storybook-static/assets/{Select.stories-BW7wzvZe.js → Select.stories-CUdtpib6.js} +1 -1
  107. package/storybook-static/assets/{SelectOptionContent-CVUpvR-7.js → SelectOptionContent-Duik8EFr.js} +1 -1
  108. package/storybook-static/assets/{SerializableSelect-CTvWTB2q.js → SerializableSelect-C5uFdEp7.js} +1 -1
  109. package/storybook-static/assets/{SerializableSelect-Dso6qEq4.js → SerializableSelect-n2j6L_D2.js} +1 -1
  110. package/storybook-static/assets/{SerializableSelect.stories-B5fxANJn.js → SerializableSelect.stories-BuohYsxG.js} +1 -1
  111. package/storybook-static/assets/{SingleDateTimeInput-bZX5vdCS.js → SingleDateTimeInput-DjCwwZnM.js} +1 -1
  112. package/storybook-static/assets/{SingleDateTimeInput.stories-BMya0oXg.js → SingleDateTimeInput.stories-DF-06Elf.js} +1 -1
  113. package/storybook-static/assets/{Slider-BAIxquDG.js → Slider-MPMI6E09.js} +1 -1
  114. package/storybook-static/assets/{Slider.stories-utpaC-ia.js → Slider.stories-B7VReG6n.js} +1 -1
  115. package/storybook-static/assets/{SliderInput-DF4oIloP.js → SliderInput-DK-haMxX.js} +1 -1
  116. package/storybook-static/assets/{SliderInput.stories-CRVFeI1D.js → SliderInput.stories-DSyrGoH4.js} +1 -1
  117. package/storybook-static/assets/{Sortable-Bv8jz10S.js → Sortable-BqBEFdrB.js} +1 -1
  118. package/storybook-static/assets/{Sortable.stories-DNxX4jDX.js → Sortable.stories-BxkGVbDP.js} +1 -1
  119. package/storybook-static/assets/{Splitter-Bvffqr8i.js → Splitter-Ct-iSKjC.js} +1 -1
  120. package/storybook-static/assets/{Splitter.stories-BVU-GNaK.js → Splitter.stories-DswknDVG.js} +1 -1
  121. package/storybook-static/assets/{StateSelect-BH4CyjC5.js → StateSelect-DBzu5XP5.js} +1 -1
  122. package/storybook-static/assets/{StateSelect.stories-Dpi8ZcDt.js → StateSelect.stories-CXMU7n3r.js} +1 -1
  123. package/storybook-static/assets/{Switch-Cqc2HRLW.js → Switch-BhJaHAGg.js} +1 -1
  124. package/storybook-static/assets/{Switch.stories-B-o_zmuu.js → Switch.stories-IvY14JXy.js} +1 -1
  125. package/storybook-static/assets/{Table-B7TdHBCU.js → Table-BA4-lz0u.js} +1 -1
  126. package/storybook-static/assets/{Table.stories-CSoxR6jv.js → Table.stories-DC5fB33Z.js} +1 -1
  127. package/storybook-static/assets/{Tabs-D5HBzPiY.js → Tabs-C_-pUBUJ.js} +1 -1
  128. package/storybook-static/assets/{Tabs.stories-PAzw7Dlb.js → Tabs.stories-CBrZTQ-N.js} +1 -1
  129. package/storybook-static/assets/{TagInput.stories-3ReNXVbh.js → TagInput.stories-B3CUuGFC.js} +1 -1
  130. package/storybook-static/assets/{Textarea-BOzNLgC6.js → Textarea-gBiqDDXW.js} +1 -1
  131. package/storybook-static/assets/{Textarea.stories-bq8yhANY.js → Textarea.stories-DxzLiHyn.js} +1 -1
  132. package/storybook-static/assets/{TimePanel-DmVlBlDJ.js → TimePanel-DABqHFxp.js} +1 -1
  133. package/storybook-static/assets/{TimePanel.stories-DWZe2l26.js → TimePanel.stories-DP1YMy06.js} +1 -1
  134. package/storybook-static/assets/{Toggle-YHELkLqx.js → Toggle-mrhp4D2Y.js} +1 -1
  135. package/storybook-static/assets/{Toggle.stories-D6NM__CI.js → Toggle.stories-DmxXXXzj.js} +1 -1
  136. package/storybook-static/assets/{TreeMultiSelect-nF6wFwPQ.js → TreeMultiSelect-BtbWQoOj.js} +1 -1
  137. package/storybook-static/assets/{TreeMultiSelect-Dt8PaMtr.js → TreeMultiSelect-DCoqMl3k.js} +1 -1
  138. package/storybook-static/assets/{TreeMultiSelect.stories-DhfU07N3.js → TreeMultiSelect.stories-CiA44Tbt.js} +1 -1
  139. package/storybook-static/assets/{TreePickerBase-CN5yE22C.js → TreePickerBase-DzunMFi5.js} +1 -1
  140. package/storybook-static/assets/{TreeSelect-BbH2issG.js → TreeSelect-BCO44FR8.js} +1 -1
  141. package/storybook-static/assets/{TreeSelect-DCTNqVLJ.js → TreeSelect-yWmCDjA7.js} +1 -1
  142. package/storybook-static/assets/{TreeSelect.stories--9JI132F.js → TreeSelect.stories-s4tRpy7q.js} +1 -1
  143. package/storybook-static/assets/{TreeTable-CNvQIhsI.js → TreeTable-BHNmIkVt.js} +1 -1
  144. package/storybook-static/assets/{TreeTable.stories-DdO4RDEk.js → TreeTable.stories-UZXvm4os.js} +1 -1
  145. package/storybook-static/assets/{WithTooltip-7X4HQR7L-B2lbg1FZ.js → WithTooltip-7X4HQR7L-CkyaWCvT.js} +1 -1
  146. package/storybook-static/assets/{async-DZRJqhWL.js → async-DyfEsUOx.js} +1 -1
  147. package/storybook-static/assets/{base-table-B2rD9HeU.js → base-table-M5XWh_jH.js} +1 -1
  148. package/storybook-static/assets/{blocks-BHuImGbL.js → blocks-DpCAfXPL.js} +6 -6
  149. package/storybook-static/assets/{button-DGtlPvuJ.js → button-BVVHoFwa.js} +1 -1
  150. package/storybook-static/assets/{check-box-DeH-6UWx.js → check-box-DUXqcF-J.js} +1 -1
  151. package/storybook-static/assets/{chunk-3LY4VQVK-CgGzJ6QG.js → chunk-3LY4VQVK-BwmsA2Rg.js} +1 -1
  152. package/storybook-static/assets/{chunk-LITCR56V-Ds2BJwUB.js → chunk-LITCR56V-B2njGr_K.js} +1 -1
  153. package/storybook-static/assets/{contextMenu-Buq9lqVJ.js → contextMenu-ByKFXgTt.js} +1 -1
  154. package/storybook-static/assets/{date-C28FxYJN.js → date-Bt7LFtSg.js} +1 -1
  155. package/storybook-static/assets/{error-C5kTCpJk.js → error-C0eOM80t.js} +1 -1
  156. package/storybook-static/assets/{file-CwwWpMSP.js → file-Zu7A9e9D.js} +1 -1
  157. package/storybook-static/assets/{flex-5zISG9Jc.js → flex-D5GVt1MM.js} +1 -1
  158. package/storybook-static/assets/{floating-ui.react-7HjCasCd.js → floating-ui.react-m4KUKbwu.js} +1 -1
  159. package/storybook-static/assets/formatter-L2YTDE3Q-DZKQpsEf.js +1 -0
  160. package/storybook-static/assets/{formatters-BvxAGVeJ.js → formatters-D0rqrkc6.js} +1 -1
  161. package/storybook-static/assets/{formulas-DwBh9TSt.js → formulas-CzAOrD6u.js} +1 -1
  162. package/storybook-static/assets/grid-CsX1FHk0.js +1 -0
  163. package/storybook-static/assets/{hooks-CL6WXb32.js → hooks-BfyDIPET.js} +1 -1
  164. package/storybook-static/assets/{iframe-D5Bxpr_P.js → iframe-DJavOMzO.js} +3 -3
  165. package/storybook-static/assets/{input-CV_S26po.js → input-R6hd2E_Y.js} +1 -1
  166. package/storybook-static/assets/{mdx-react-shim-DTmE8sHb.js → mdx-react-shim-Uqc1i8V9.js} +1 -1
  167. package/storybook-static/assets/{media-DOXiQvKm.js → media-2SJWDb7s.js} +1 -1
  168. package/storybook-static/assets/{misc-C4eqPY8Q.js → misc-5uqTnmbl.js} +1 -1
  169. package/storybook-static/assets/{notifications-DzIpqqDe.js → notifications-BefQ0AQC.js} +1 -1
  170. package/storybook-static/assets/{number-CiPyI49v.js → number-C777LTv3.js} +1 -1
  171. package/storybook-static/assets/{odata-Cdjr_13P.js → odata-BlULCQl_.js} +1 -1
  172. package/storybook-static/assets/odata-service-CjrwtO-a.js +1 -0
  173. package/storybook-static/assets/{odataFetchFn-5oA806GG.js → odataFetchFn-D1n2YZ5p.js} +1 -1
  174. package/storybook-static/assets/{odataStoryFixtures-CYeyJ4EJ.js → odataStoryFixtures-D3tc67Mp.js} +1 -1
  175. package/storybook-static/assets/{persisted-B8lPMVbx.js → persisted-DwRDWL3r.js} +1 -1
  176. package/storybook-static/assets/{picker-fFmVfvJ2.js → picker-zma3rQke.js} +1 -1
  177. package/storybook-static/assets/{popover-Bkx-kueF.js → popover-BxMxQqNC.js} +1 -1
  178. package/storybook-static/assets/{preset-select-BsTcZQD4.js → preset-select-C2V0FLJB.js} +1 -1
  179. package/storybook-static/assets/{pwa-BUVV-ASt.js → pwa-BwmyFla8.js} +1 -1
  180. package/storybook-static/assets/{queryClient-BbpnSB7G.js → queryClient-CVTaWWa-.js} +1 -1
  181. package/storybook-static/assets/{react-18-DKMWiFiE.js → react-18-VWMxMR2Q.js} +1 -1
  182. package/storybook-static/assets/{react-DBQ_9riD.js → react-DewH2VGS.js} +1 -1
  183. package/storybook-static/assets/{react-dom-BORNa2yW.js → react-dom-gm7HNzSd.js} +1 -1
  184. package/storybook-static/assets/select-Chy_MAxf.js +1 -0
  185. package/storybook-static/assets/{slider-B_2ta5qX.js → slider-Liezjg2n.js} +1 -1
  186. package/storybook-static/assets/{sortable-fm1V05nH.js → sortable-DCOi5LoM.js} +1 -1
  187. package/storybook-static/assets/{syntaxhighlighter-RTCFPKCB-Cha-c1Dj.js → syntaxhighlighter-RTCFPKCB-DpHyskQO.js} +1 -1
  188. package/storybook-static/assets/{text-CJkmBtCb.js → text-DCD-LDXt.js} +1 -1
  189. package/storybook-static/assets/{theming-BLNJzZ-f.js → theming-BAqUlJ0w.js} +1 -1
  190. package/storybook-static/assets/ui-DyOaVl2J.js +1 -0
  191. package/storybook-static/assets/{useODataSelectBase-BgVM9NkS.js → useODataSelectBase-D_XcSN43.js} +1 -1
  192. package/storybook-static/assets/{useODataTreeData-BQjC6a1R.js → useODataTreeData-CQURFDlR.js} +1 -1
  193. package/storybook-static/assets/{utils-LKT2AuXL.js → utils-BCcqwWnK.js} +1 -1
  194. package/storybook-static/assets/{valueState-DmkiFIaF.js → valueState-_2GTEAkP.js} +1 -1
  195. package/storybook-static/iframe.html +1 -1
  196. package/storybook-static/index.json +1 -1
  197. package/storybook-static/project.json +1 -1
  198. package/dist/chunks/radio-group-CEY_kdz8.js.map +0 -1
  199. package/storybook-static/assets/PeriodSelect-BzkAbTjx.js +0 -51
  200. package/storybook-static/assets/PeriodSelect.stories-i12jUffi.js +0 -47
  201. package/storybook-static/assets/RadioGroup-BMD9LbW8.js +0 -1
  202. package/storybook-static/assets/RadioGroup-hi7uePOA.css +0 -1
  203. package/storybook-static/assets/formatter-L2YTDE3Q-CGLz6w8k.js +0 -1
  204. package/storybook-static/assets/grid-BoJLHyn-.js +0 -1
  205. package/storybook-static/assets/odata-service-CKEAyQU6.js +0 -1
  206. package/storybook-static/assets/select-DdmNDdpr.js +0 -1
  207. package/storybook-static/assets/ui-BOZe6RmJ.js +0 -1
@@ -1 +1 @@
1
- {"generatedAt":1785146582343,"hasCustomBabel":false,"hasCustomWebpack":false,"hasStaticDirs":false,"hasStorybookEslint":false,"refCount":0,"metaFramework":{"name":"tanstack-react","packageName":"@tanstack/react-router","version":"1.170.17"},"knownPackages":{"testPackages":{"@storybook/addon-vitest":"10.4.6","@testing-library/dom":"10.4.1","@testing-library/react":"16.3.2","@testing-library/user-event":"^14.6.1","@vitest/browser":"4.1.10","playwright":"1.61.1","vitest":"4.1.10"},"stateManagementPackages":{"zustand":"^5.0.14"},"dataFetchingPackages":{"@tanstack/react-query":"^5.101.1"},"routerPackages":{"@tanstack/react-router":"^1.170.16"}},"hasRouterPackage":false,"packageManager":{"type":"npm","version":"11.7.0","agent":"npm","nodeLinker":"node_modules"},"preview":{"usesGlobals":false},"framework":{"name":"@storybook/react-vite","options":{}},"builder":"@storybook/builder-vite","renderer":"@storybook/react","portableStoriesFileCount":0,"applicationFileCount":9,"storybookVersion":"10.4.6","storybookVersionSpecifier":"^10.4.6","language":"typescript","storybookPackages":{"@storybook/react-vite":{"version":"10.4.6"},"storybook":{}},"addons":{"@chromatic-com/storybook":{"version":"5.2.1"},"@storybook/addon-docs":{"version":"10.4.6"},"@storybook/addon-a11y":{"version":"10.4.6"},"@storybook/addon-vitest":{"version":"10.4.6"}},"packageJsonType":"module"}
1
+ {"generatedAt":1785304795674,"hasCustomBabel":false,"hasCustomWebpack":false,"hasStaticDirs":false,"hasStorybookEslint":false,"refCount":0,"metaFramework":{"name":"tanstack-react","packageName":"@tanstack/react-router","version":"1.170.17"},"knownPackages":{"testPackages":{"@storybook/addon-vitest":"10.4.6","@testing-library/dom":"10.4.1","@testing-library/react":"16.3.2","@testing-library/user-event":"^14.6.1","@vitest/browser":"4.1.10","playwright":"1.61.1","vitest":"4.1.10"},"stateManagementPackages":{"zustand":"^5.0.14"},"dataFetchingPackages":{"@tanstack/react-query":"^5.101.1"},"routerPackages":{"@tanstack/react-router":"^1.170.16"}},"hasRouterPackage":false,"packageManager":{"type":"npm","version":"11.7.0","agent":"npm","nodeLinker":"node_modules"},"preview":{"usesGlobals":false},"framework":{"name":"@storybook/react-vite","options":{}},"builder":"@storybook/builder-vite","renderer":"@storybook/react","portableStoriesFileCount":0,"applicationFileCount":9,"storybookVersion":"10.4.6","storybookVersionSpecifier":"^10.4.6","language":"typescript","storybookPackages":{"@storybook/react-vite":{"version":"10.4.6"},"storybook":{}},"addons":{"@chromatic-com/storybook":{"version":"5.2.1"},"@storybook/addon-docs":{"version":"10.4.6"},"@storybook/addon-a11y":{"version":"10.4.6"},"@storybook/addon-vitest":{"version":"10.4.6"}},"packageJsonType":"module"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"radio-group-CEY_kdz8.js","names":[],"sources":["../../src/radio-group/RadioGroup.module.scss","../../src/radio-group/RadioGroup.tsx"],"sourcesContent":[".radioGroup {\n\tdisplay: flex;\n\talign-content: flex-start;\n\tflex-wrap: wrap;\n\t// min-height: var(--control-height);\n\theight: auto;\n\n\t&.noWrap {\n\t\tflex-wrap: nowrap;\n\t}\n\n\t&.horizontal {\n\t\tflex-direction: row;\n\t}\n\n\t&.vertical {\n\t\tflex-direction: column;\n\t\talign-content: stretch;\n\t}\n}\n\n.radioItem {\n\tdisplay: block;\n\tflex: 1 0 0;\n\tcolor: var(--content-2);\n\tborder-radius: var(--radius-xs);\n\tpadding: 0 var(--space-md);\n\tmargin: var(--border-width);\n\t// baseInputControl = --control-height, + borderTop/Bottom + transparentLineTop/Bottom\n\tmin-height: calc(var(--control-height) - calc(var(--border-width) * 4));\n\n\tcursor: pointer;\n\n\t&:hover {\n\t\tcolor: var(--content-accent);\n\t\t// background-color: var(--surface-1);\n\t}\n\n\t&.checked {\n\t\tcolor: var(--status-info-on-fill);\n\t\tbackground-color: var(--status-info-fill);\n\t\t// border-color: var(--border-0);\n\t}\n\n\t&:disabled {\n\t\topacity: var(--disabled-opacity);\n\t}\n}\n","import React, { createContext, KeyboardEvent, ReactNode, useCallback, useContext, useId, useLayoutEffect, useMemo, useState } from \"react\";\n\nimport { cn, getRovingFocusTargetIndex, handleKeyboardActivation } from \"@ryuzaki13/react-foundation-lib/utils\";\n\nimport uiStyles from \"../ui.module.scss\";\n\nimport styles from \"./RadioGroup.module.scss\";\n\ninterface RadioGroupContextValue {\n\tvalue?: unknown;\n\tonChange?: (value: unknown) => void;\n\tdisabled?: boolean;\n\torientation: \"vertical\" | \"horizontal\";\n\tgroupId: string;\n\tlabelId?: string;\n\tdescriptionId?: string;\n\tfirstOptionId?: string;\n\tregisterOption: (optionId: string) => () => void;\n}\n\nconst RadioGroupContext = createContext<RadioGroupContextValue | null>(null);\n\ninterface RadioGroupProps<T> {\n\tvalue?: T;\n\tonChange?: (value: T) => void;\n\tlabel?: string;\n\tdescription?: string;\n\tdisabled?: boolean;\n\tclassName?: string;\n\tnoWrap?: true;\n\torientation?: \"vertical\" | \"horizontal\";\n\t\"aria-label\"?: string;\n\tchildren: React.ReactNode;\n}\n\n/**\n * Группа радиокнопок с общим состоянием выбранного значения. Обеспечивает единый API выбора и контекст для дочерних опций.\n */\nexport function RadioGroup<T>({\n\tvalue,\n\tonChange,\n\tlabel,\n\tdescription,\n\tdisabled,\n\tclassName,\n\tnoWrap,\n\torientation = \"horizontal\",\n\t\"aria-label\": ariaLabel,\n\tchildren\n}: RadioGroupProps<T>) {\n\tconst groupId = useId();\n\tconst labelId = label ? `${groupId}-label` : undefined;\n\tconst descriptionId = description ? `${groupId}-description` : undefined;\n\tconst [registeredOptionIds, setRegisteredOptionIds] = useState<string[]>([]);\n\tconst handleChange = useCallback((nextValue: unknown) => onChange?.(nextValue as T), [onChange]);\n\n\t/**\n\t * Хранит порядок опций внутри группы, чтобы при отсутствии выбранного значения\n\t * оставлять ровно один tab stop на первой доступной радиокнопке.\n\t */\n\tconst registerOption = useCallback((optionId: string) => {\n\t\tsetRegisteredOptionIds((currentIds) => (currentIds.includes(optionId) ? currentIds : [...currentIds, optionId]));\n\n\t\treturn () => {\n\t\t\tsetRegisteredOptionIds((currentIds) => currentIds.filter((currentId) => currentId !== optionId));\n\t\t};\n\t}, []);\n\n\tconst contextValue = useMemo(\n\t\t() => ({\n\t\t\tvalue,\n\t\t\tonChange: handleChange,\n\t\t\tdisabled,\n\t\t\torientation,\n\t\t\tgroupId,\n\t\t\tlabelId,\n\t\t\tdescriptionId,\n\t\t\tfirstOptionId: registeredOptionIds[0],\n\t\t\tregisterOption\n\t\t}),\n\t\t[descriptionId, disabled, groupId, handleChange, labelId, orientation, registerOption, registeredOptionIds, value]\n\t);\n\n\treturn (\n\t\t<div className={cn(uiStyles.uiElement, disabled && uiStyles.disabled, className)}>\n\t\t\t{label && (\n\t\t\t\t<div id={labelId} className={uiStyles.uiLabel}>\n\t\t\t\t\t{label}\n\t\t\t\t</div>\n\t\t\t)}\n\t\t\t{description && (\n\t\t\t\t<div id={descriptionId} className={uiStyles.uiDescription}>\n\t\t\t\t\t{description}\n\t\t\t\t</div>\n\t\t\t)}\n\n\t\t\t<RadioGroupContext.Provider value={contextValue}>\n\t\t\t\t<div\n\t\t\t\t\trole=\"radiogroup\"\n\t\t\t\t\taria-labelledby={labelId}\n\t\t\t\t\taria-label={labelId ? undefined : ariaLabel}\n\t\t\t\t\taria-describedby={descriptionId}\n\t\t\t\t\taria-disabled={disabled || undefined}\n\t\t\t\t\tdata-disabled={disabled || undefined}\n\t\t\t\t\tclassName={cn(uiStyles.uiInputControl, styles.radioGroup, noWrap && styles.noWrap, styles[orientation])}>\n\t\t\t\t\t{children}\n\t\t\t\t</div>\n\t\t\t</RadioGroupContext.Provider>\n\t\t</div>\n\t);\n}\n\ninterface OptionProps<T> {\n\tvalue: T;\n\tlabel: ReactNode;\n\tdescription?: ReactNode;\n\tclassName?: string;\n}\n\n/**\n * Опция внутри `RadioGroup`, представляющая одно выбираемое значение. Отрисовывает подпись, описание и состояние выбора.\n */\nexport function Option<T>({ value, label, description, className }: OptionProps<T>) {\n\tconst context = useContext(RadioGroupContext);\n\tconst optionId = useId();\n\tconst registerOption = context?.registerOption;\n\n\tuseLayoutEffect(() => {\n\t\tif (!registerOption) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn registerOption(optionId);\n\t}, [registerOption, optionId]);\n\n\tif (!context) {\n\t\treturn (\n\t\t\t<div className={cn(styles.radioItem, className)}>\n\t\t\t\t<p className=\"textNoWrap\">{label}</p>\n\t\t\t\t{description && <div className=\"fontSizeSm content2\">{description}</div>}\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst isChecked = Object.is(context.value, value);\n\tconst isDisabled = context.disabled === true;\n\tconst isFallbackTabStop = context.value === undefined && context.firstOptionId === optionId;\n\n\tconst handleChange = () => {\n\t\tif (isDisabled || isChecked) {\n\t\t\treturn;\n\t\t}\n\n\t\tcontext.onChange?.(value);\n\t};\n\n\t// TODO: логика переиспользуемая, надо вынести в хук\n\tconst handleKeyDown = (event: KeyboardEvent<HTMLButtonElement>) => {\n\t\tif (isDisabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (handleKeyboardActivation(event, handleChange)) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst currentTarget = event.currentTarget;\n\t\tconst groupElement = currentTarget.closest<HTMLElement>('[role=\"radiogroup\"]');\n\t\tconst radioItems = Array.from(groupElement?.querySelectorAll<HTMLButtonElement>('[role=\"radio\"]:not([disabled])') ?? []);\n\n\t\tif (!radioItems.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst currentIndex = radioItems.indexOf(currentTarget);\n\t\tif (currentIndex === -1) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst nextIndex = getRovingFocusTargetIndex({\n\t\t\tcurrentIndex,\n\t\t\titemCount: radioItems.length,\n\t\t\tkey: event.key,\n\t\t\torientation: context.orientation\n\t\t});\n\n\t\tif (nextIndex === null) {\n\t\t\treturn;\n\t\t}\n\n\t\tevent.preventDefault();\n\t\tradioItems[nextIndex]?.focus();\n\t\tradioItems[nextIndex]?.click();\n\t};\n\n\treturn (\n\t\t<button\n\t\t\tid={`${context.groupId}-option-${optionId}`}\n\t\t\ttype=\"button\"\n\t\t\trole=\"radio\"\n\t\t\taria-checked={isChecked}\n\t\t\tdisabled={isDisabled}\n\t\t\ttabIndex={isChecked || isFallbackTabStop ? 0 : -1}\n\t\t\tclassName={cn(styles.radioItem, isChecked && styles.checked, className)}\n\t\t\tdata-ui=\"radio-option\"\n\t\t\tdata-action=\"select-radio-option\"\n\t\t\tonClick={handleChange}\n\t\t\tonKeyDown={handleKeyDown}>\n\t\t\t<p className=\"textNoWrap\">{label}</p>\n\t\t\t{description && <div className=\"fontSizeSm\">{description}</div>}\n\t\t</button>\n\t);\n}\n\nRadioGroup.Option = Option;\n"],"mappings":"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"}
@@ -1,51 +0,0 @@
1
- import{i as e}from"./preload-helper-B45gAKPr.js";import{t}from"./iframe-D5Bxpr_P.js";import{E as n,a as r,d as i,f as a,l as o,m as s,n as c,p as l,r as u,u as d}from"./blocks-BHuImGbL.js";import{t as f}from"./mdx-react-shim-DTmE8sHb.js";import{AllAllowedOptionsDisabled as p,AutoSwitchByRange as m,Controlled as h,Disabled as g,MonthAndYear as _,n as v,t as y}from"./PeriodSelect.stories-i12jUffi.js";function b(e){let t={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...n(),...e.components};return(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)(o,{of:y,parameters:{docs:{toc:!0}}}),`
2
- `,(0,S.jsx)(l,{children:`PeriodSelect`}),`
3
- `,(0,S.jsx)(a,{children:`Выбор периода детализации дат с ограничением вариантов по связанному диапазону`}),`
4
- `,(0,S.jsxs)(t.p,{children:[`PeriodSelect используется для выбора уровня детализации: `,(0,S.jsx)(t.code,{children:`day`}),`, `,(0,S.jsx)(t.code,{children:`week`}),`, `,(0,S.jsx)(t.code,{children:`month`}),` или `,(0,S.jsx)(t.code,{children:`year`}),`. Компонент хранит только id выбранного периода, а недоступность вариантов вычисляет по переданному `,(0,S.jsx)(t.code,{children:`dateRange`}),` и порогам `,(0,S.jsx)(t.code,{children:`maxDayRangeDays`}),` / `,(0,S.jsx)(t.code,{children:`maxWeekRangeWeeks`}),`.`]}),`
5
- `,(0,S.jsxs)(t.p,{children:[`Prop `,(0,S.jsx)(t.code,{children:`presetIds`}),` ограничивает встроенный каталог разрешенными вариантами. Независимо от порядка id в конфигурации контрол отображает их в каноническом порядке `,(0,S.jsx)(t.code,{children:`day → week → month → year`}),`. Отсутствующий, пустой или полностью невалидный список безопасно заменяется полным встроенным набором. Собственный `,(0,S.jsx)(t.code,{children:`options`}),` имеет приоритет над `,(0,S.jsx)(t.code,{children:`presetIds`}),`.`]}),`
6
- `,(0,S.jsx)(t.h2,{id:`основной-сценарий`,children:`Основной сценарий`}),`
7
- `,(0,S.jsx)(d,{}),`
8
- `,(0,S.jsx)(r,{of:h}),`
9
- `,(0,S.jsx)(t.pre,{children:(0,S.jsx)(t.code,{className:`language-tsx`,children:`import { useState } from "react";
10
-
11
- import { PeriodSelect, type PeriodSelectPresetId } from "@ryuzaki13/react-foundation-ui/period-select";
12
-
13
- export function Example() {
14
- const [value, setValue] = useState<PeriodSelectPresetId | undefined>("month");
15
- const dateRange = [new Date(2026, 2, 1), new Date(2026, 2, 14)] as const;
16
-
17
- return (
18
- <PeriodSelect
19
- label="Период"
20
- value={value}
21
- onChange={setValue}
22
- presetIds={["month", "year"]}
23
- dateRange={dateRange}
24
- maxDayRangeDays={31}
25
- />
26
- );
27
- }
28
- `})}),`
29
- `,(0,S.jsx)(t.h2,{id:`практические-рекомендации`,children:`Практические рекомендации`}),`
30
- `,(0,S.jsxs)(t.ul,{children:[`
31
- `,(0,S.jsxs)(t.li,{children:[`Передавайте `,(0,S.jsx)(t.code,{children:`dateRange`}),`, если период должен зависеть от выбранного диапазона дат.`]}),`
32
- `,(0,S.jsxs)(t.li,{children:[`Используйте `,(0,S.jsx)(t.code,{children:`presetIds`}),`, когда runtime должен предлагать только разрешенные уровни детализации; порядок массива не управляет порядком Select.`]}),`
33
- `,(0,S.jsxs)(t.li,{children:[`Настраивайте `,(0,S.jsx)(t.code,{children:`maxDayRangeDays`}),` и `,(0,S.jsx)(t.code,{children:`maxWeekRangeWeeks`}),` в конфиге параметрического контрола, а не в потребителях runtime.`]}),`
34
- `,(0,S.jsxs)(t.li,{children:[`Если `,(0,S.jsx)(t.code,{children:`dateRange`}),` временно блокирует все разрешенные варианты, Select показывает пустое значение, но не очищает внешний controlled-id. После появления доступного варианта отображение восстанавливается без потери runtime-параметра.`]}),`
35
- `,(0,S.jsxs)(t.li,{children:[`В story `,(0,S.jsx)(t.code,{children:`Controlled`}),` значения обновляются через `,(0,S.jsx)(t.code,{children:`useArgs`}),`, поэтому Controls и сам Select остаются синхронизированы.`]}),`
36
- `]}),`
37
- `,(0,S.jsx)(t.h2,{id:`сценарии-использования`,children:`Сценарии использования`}),`
38
- `,(0,S.jsx)(t.h3,{id:`контролируемый-выбор-с-редактированием-props-через-storybook-controls`,children:`Контролируемый выбор с редактированием props через Storybook Controls`}),`
39
- `,(0,S.jsx)(u,{of:h}),`
40
- `,(0,S.jsx)(t.h3,{id:`автопереключение-при-слишком-большом-диапазоне`,children:`Автопереключение при слишком большом диапазоне`}),`
41
- `,(0,S.jsx)(u,{of:m}),`
42
- `,(0,S.jsx)(t.h3,{id:`ограничение-выбора-месяцами-и-годами`,children:`Ограничение выбора месяцами и годами`}),`
43
- `,(0,S.jsx)(u,{of:_}),`
44
- `,(0,S.jsx)(t.h3,{id:`временно-недоступны-все-разрешенные-варианты`,children:`Временно недоступны все разрешенные варианты`}),`
45
- `,(0,S.jsx)(u,{of:p}),`
46
- `,(0,S.jsx)(t.h3,{id:`заблокированное-состояние`,children:`Заблокированное состояние`}),`
47
- `,(0,S.jsx)(u,{of:g}),`
48
- `,(0,S.jsx)(t.h2,{id:`api`,children:`API`}),`
49
- `,(0,S.jsx)(c,{of:y}),`
50
- `,(0,S.jsx)(t.h2,{id:`все-сторисы`,children:`Все сторисы`}),`
51
- `,(0,S.jsx)(i,{includePrimary:!1})]})}function x(e={}){let{wrapper:t}={...n(),...e.components};return t?(0,S.jsx)(t,{...e,children:(0,S.jsx)(b,{...e})}):b(e)}var S;e((()=>{S=t(),f(),s(),v()}))();export{x as default};
@@ -1,47 +0,0 @@
1
- import{a as e,c as t,i as n}from"./preload-helper-B45gAKPr.js";import{pn as r,t as i}from"./iframe-D5Bxpr_P.js";import{i as a,t as o}from"./text-CJkmBtCb.js";import{P as s,_ as c,o as l,t as u}from"./formatters-BvxAGVeJ.js";import{t as d}from"./DateInput-Cn-GfCPV.js";import{a as f,c as p,i as m,n as h,s as g,t as _}from"./preset-select-BsTcZQD4.js";import{i as v}from"./Grid-Bk5IrBSw.js";import{t as y}from"./grid-BoJLHyn-.js";var b=n((()=>{}));function x(e){return typeof e==`string`&&k.has(e)}function S(e,t=O){let n=m(e,x,t),r=n.length>0?n:O,i=new Set(r);return O.filter(e=>i.has(e))}function C(e,t=D){return g(e,t)}function w({maxDayRangeDays:e,maxWeekRangeWeeks:t}={}){let n=s(e),r=s(t);return D.map(e=>e.id===`day`&&n!==void 0?{...e,maxRangeDays:n}:e.id===`week`&&r!==void 0?{...e,maxRangeDays:r*7}:{...e})}function T(e,t){let n=s(e.maxRangeDays);if(n===void 0||t===void 0)return!1;let r=c(t);return r!==null&&r>n}function E(e,t,n){if(t.length===0)return;let r=e===void 0?-1:t.findIndex(t=>t.id===e),i=r>=0?t[r]:void 0;return i&&!T(i,n)?i.id:(r>=0?t.slice(r+1):t).find(e=>!T(e,n))?.id??t.find(e=>!T(e,n))?.id}var D,O,k,A=n((()=>{u(),f(),D=Object.freeze([{id:`day`,label:`по дням`},{id:`week`,label:`по неделям`},{id:`month`,label:`по месяцам`},{id:`year`,label:`по годам`}]),O=Object.freeze([`day`,`week`,`month`,`year`]),k=new Set(D.map(e=>e.id))})),j=n((()=>{b(),A()}));function M({value:e,onChange:t,options:n,presetIds:r,dateRange:i,maxDayRangeDays:a,maxWeekRangeWeeks:o,...s}){let c=(0,N.useMemo)(()=>n??C(S(r),w({maxDayRangeDays:a,maxWeekRangeWeeks:o})),[a,o,n,r]),l=(0,N.useMemo)(()=>E(e,c,i),[i,c,e]),u=(0,N.useRef)(null),d=(0,N.useEffectEvent)(()=>{if(l===void 0||l===e){u.current=null;return}let n=u.current;n&&n.value===e&&n.availableValue===l||(u.current={value:e,availableValue:l},t(l))});return(0,N.useEffect)(()=>{d()},[l,e]),(0,P.jsx)(h,{...s,options:c,value:l,onChange:t,getOptionDisabled:e=>T(e,i)})}var N,P,F=n((()=>{N=t(r(),1),_(),j(),P=i(),M.__docgenInfo={description:`Select периода детализации, который может ограничивать доступные варианты по диапазону дат.`,methods:[],displayName:`PeriodSelect`,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:!1,tsType:{name:`unknown`},description:``},presetIds:{required:!1,tsType:{name:`unknown`},description:`Разрешенные встроенные варианты периода. Значение нормализуется в канонический
2
- порядок, а пустой либо невалидный список безопасно заменяется полным набором.
3
- Не применяется, когда передан собственный \`options\`.`},dateRange:{required:!1,tsType:{name:`DateRangeInput`},description:``},maxDayRangeDays:{required:!1,tsType:{name:`number`},description:``},maxWeekRangeWeeks:{required:!1,tsType:{name:`number`},description:``}}}})),I=n((()=>{j(),F()})),L=e({AllAllowedOptionsDisabled:()=>Y,AutoSwitchByRange:()=>q,Controlled:()=>K,Disabled:()=>X,MonthAndYear:()=>J,__namedExportsOrder:()=>Z,default:()=>G});function R(e){return e!==void 0&&l(e)?e:null}function z(e){let[,t]=V(),n=R(e.dateRange),r=c(e.dateRange??null);return(0,B.jsxs)(v,{gap:`md`,children:[(0,B.jsx)(M,{...e,onChange:n=>{e.onChange(n),t({value:n})}}),(0,B.jsx)(d,{label:`Связанный диапазон дат`,placeholder:`дд.мм.гггг - дд.мм.гггг`,value:n,onChange:e=>t({dateRange:e??void 0})}),(0,B.jsxs)(a,{as:`p`,color:`secondary`,"aria-live":`polite`,children:[`Выбрано: `,(0,B.jsx)(a,{as:`code`,children:e.value??`не выбрано`}),`. Дней в диапазоне:`,` `,(0,B.jsx)(a,{as:`code`,children:r??`не задано`}),`.`]})]})}var B,V,H,U,W,G,K,q,J,Y,X,Z,Q=n((()=>{u(),p(),y(),o(),I(),B=i(),{useArgs:V}=__STORYBOOK_MODULE_PREVIEW_API__,{fn:H}=__STORYBOOK_MODULE_TEST__,U=[new Date(2026,2,1,0,0,0),new Date(2026,2,14,23,59,59)],W=[new Date(2026,0,1,0,0,0),new Date(2026,4,20,23,59,59)],G={title:`Shared/UI/PeriodSelect`,component:M,args:{label:`Период детализации`,description:`Выберите уровень группировки дат.`,placeholder:`Выберите период`,value:`day`,onChange:H(),presetIds:O,dateRange:U,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:O},onChange:{description:`Вызывается с id выбранного периода.`,control:!1},options:{description:"Кастомный список периодов по контракту `PeriodSelectOption`; имеет приоритет над `presetIds`.",control:!1},presetIds:{description:"Разрешенные встроенные периоды. Порядок отображения остается `day → week → month → year`.",control:`check`,options:O},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`]}}},K={name:`Контролируемый выбор`,render:function(e){return(0,B.jsx)(z,{...e})}},q={name:`Автопереключение по диапазону`,args:{value:`day`,dateRange:W,maxDayRangeDays:31,maxWeekRangeWeeks:8},render:function(e){return(0,B.jsx)(z,{...e})}},J={name:`Только месяцы и годы`,args:{value:`month`,presetIds:[`month`,`year`]},render:function(e){return(0,B.jsx)(z,{...e})}},Y={name:`Все разрешенные варианты недоступны`,args:{value:`day`,presetIds:[`day`,`week`],dateRange:W,maxDayRangeDays:31,maxWeekRangeWeeks:8},render:function(e){return(0,B.jsx)(z,{...e})}},X={name:`Заблокированный контрол`,args:{disabled:!0,value:`week`}},K.parameters={...K.parameters,docs:{...K.parameters?.docs,source:{originalSource:`{
4
- name: "Контролируемый выбор",
5
- render: function Render(args) {
6
- return <PeriodSelectStoryCanvas {...args} />;
7
- }
8
- }`,...K.parameters?.docs?.source},description:{story:"Контролируемый сценарий синхронизирует `value` и `dateRange` через Storybook args.",...K.parameters?.docs?.description}}},q.parameters={...q.parameters,docs:{...q.parameters?.docs,source:{originalSource:`{
9
- name: "Автопереключение по диапазону",
10
- args: {
11
- value: "day",
12
- dateRange: longDateRange,
13
- maxDayRangeDays: 31,
14
- maxWeekRangeWeeks: 8
15
- },
16
- render: function Render(args) {
17
- return <PeriodSelectStoryCanvas {...args} />;
18
- }
19
- }`,...q.parameters?.docs?.source},description:{story:"Длинный диапазон блокирует `day` и `week`, поэтому контрол переключает значение на ближайший доступный период.",...q.parameters?.docs?.description}}},J.parameters={...J.parameters,docs:{...J.parameters?.docs,source:{originalSource:`{
20
- name: "Только месяцы и годы",
21
- args: {
22
- value: "month",
23
- presetIds: ["month", "year"]
24
- },
25
- render: function Render(args) {
26
- return <PeriodSelectStoryCanvas {...args} />;
27
- }
28
- }`,...J.parameters?.docs?.source},description:{story:`Allow-list ограничивает встроенный каталог двумя крупными уровнями детализации.`,...J.parameters?.docs?.description}}},Y.parameters={...Y.parameters,docs:{...Y.parameters?.docs,source:{originalSource:`{
29
- name: "Все разрешенные варианты недоступны",
30
- args: {
31
- value: "day",
32
- presetIds: ["day", "week"],
33
- dateRange: longDateRange,
34
- maxDayRangeDays: 31,
35
- maxWeekRangeWeeks: 8
36
- },
37
- render: function Render(args) {
38
- return <PeriodSelectStoryCanvas {...args} />;
39
- }
40
- }`,...Y.parameters?.docs?.source},description:{story:`При длинном диапазоне все разрешенные варианты временно недоступны; внешний
41
- controlled-id сохраняется, и после сокращения диапазона отображение восстанавливается.`,...Y.parameters?.docs?.description}}},X.parameters={...X.parameters,docs:{...X.parameters?.docs,source:{originalSource:`{
42
- name: "Заблокированный контрол",
43
- args: {
44
- disabled: true,
45
- value: "week"
46
- }
47
- }`,...X.parameters?.docs?.source}}},Z=[`Controlled`,`AutoSwitchByRange`,`MonthAndYear`,`AllAllowedOptionsDisabled`,`Disabled`]}));Q();export{Y as AllAllowedOptionsDisabled,q as AutoSwitchByRange,K as Controlled,X as Disabled,J as MonthAndYear,Z as __namedExportsOrder,G as default,Q as n,L as t};
@@ -1 +0,0 @@
1
- import{c as e,i as t}from"./preload-helper-B45gAKPr.js";import{pn as n,t as r}from"./iframe-D5Bxpr_P.js";import{a as i,i as a,n as o,o as s}from"./utils-LKT2AuXL.js";import{n as c,t as l}from"./ui.module-wFHXkJzp.js";var u,d,f,p,m,h,g,_=t((()=>{u=`nINbA6`,d=`GL-UWx`,f=`_6PeF-i`,p=`_5wP4aR`,m=`S3MnZI`,h=`KHJ0ja`,g={radioGroup:u,noWrap:d,horizontal:f,vertical:p,radioItem:m,checked:h}}));function v({value:e,onChange:t,label:n,description:r,disabled:a,className:o,noWrap:s,orientation:l=`horizontal`,"aria-label":u,children:d}){let f=(0,b.useId)(),p=n?`${f}-label`:void 0,m=r?`${f}-description`:void 0,[h,_]=(0,b.useState)([]),v=(0,b.useCallback)(e=>t?.(e),[t]),y=(0,b.useCallback)(e=>(_(t=>t.includes(e)?t:[...t,e]),()=>{_(t=>t.filter(t=>t!==e))}),[]),C=(0,b.useMemo)(()=>({value:e,onChange:v,disabled:a,orientation:l,groupId:f,labelId:p,descriptionId:m,firstOptionId:h[0],registerOption:y}),[m,a,f,v,p,l,y,h,e]);return(0,x.jsxs)(`div`,{className:i(c.uiElement,a&&c.disabled,o),children:[n&&(0,x.jsx)(`div`,{id:p,className:c.uiLabel,children:n}),r&&(0,x.jsx)(`div`,{id:m,className:c.uiDescription,children:r}),(0,x.jsx)(S.Provider,{value:C,children:(0,x.jsx)(`div`,{role:`radiogroup`,"aria-labelledby":p,"aria-label":p?void 0:u,"aria-describedby":m,"aria-disabled":a||void 0,"data-disabled":a||void 0,className:i(c.uiInputControl,g.radioGroup,s&&g.noWrap,g[l]),children:d})})]})}function y({value:e,label:t,description:n,className:r}){let a=(0,b.useContext)(S),c=(0,b.useId)(),l=a?.registerOption;if((0,b.useLayoutEffect)(()=>{if(l)return l(c)},[l,c]),!a)return(0,x.jsxs)(`div`,{className:i(g.radioItem,r),children:[(0,x.jsx)(`p`,{className:`textNoWrap`,children:t}),n&&(0,x.jsx)(`div`,{className:`fontSizeSm content2`,children:n})]});let u=Object.is(a.value,e),d=a.disabled===!0,f=a.value===void 0&&a.firstOptionId===c,p=()=>{d||u||a.onChange?.(e)};return(0,x.jsxs)(`button`,{id:`${a.groupId}-option-${c}`,type:`button`,role:`radio`,"aria-checked":u,disabled:d,tabIndex:u||f?0:-1,className:i(g.radioItem,u&&g.checked,r),"data-ui":`radio-option`,"data-action":`select-radio-option`,onClick:p,onKeyDown:e=>{if(d||o(e,p))return;let t=e.currentTarget,n=t.closest(`[role="radiogroup"]`),r=Array.from(n?.querySelectorAll(`[role="radio"]:not([disabled])`)??[]);if(!r.length)return;let i=r.indexOf(t);if(i===-1)return;let c=s({currentIndex:i,itemCount:r.length,key:e.key,orientation:a.orientation});c!==null&&(e.preventDefault(),r[c]?.focus(),r[c]?.click())},children:[(0,x.jsx)(`p`,{className:`textNoWrap`,children:t}),n&&(0,x.jsx)(`div`,{className:`fontSizeSm`,children:n})]})}var b,x,S,C=t((()=>{b=e(n(),1),a(),l(),_(),x=r(),S=(0,b.createContext)(null),v.Option=y,v.__docgenInfo={description:`Группа радиокнопок с общим состоянием выбранного значения. Обеспечивает единый API выбора и контекст для дочерних опций.`,methods:[{name:`Option`,docblock:null,modifiers:[`static`],params:[{name:`{ value, label, description, className }: OptionProps<T>`,optional:!1,type:{name:`OptionProps`,elements:[{name:`T`}],raw:`OptionProps<T>`,alias:`OptionProps`}}],returns:null}],displayName:`RadioGroup`,props:{value:{required:!1,tsType:{name:`T`},description:``},onChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(value: T) => void`,signature:{arguments:[{type:{name:`T`},name:`value`}],return:{name:`void`}}},description:``},label:{required:!1,tsType:{name:`string`},description:``},description:{required:!1,tsType:{name:`string`},description:``},disabled:{required:!1,tsType:{name:`boolean`},description:``},className:{required:!1,tsType:{name:`string`},description:``},noWrap:{required:!1,tsType:{name:`literal`,value:`true`},description:``},orientation:{required:!1,tsType:{name:`union`,raw:`"vertical" | "horizontal"`,elements:[{name:`literal`,value:`"vertical"`},{name:`literal`,value:`"horizontal"`}]},description:``,defaultValue:{value:`"horizontal"`,computed:!1}},"aria-label":{required:!1,tsType:{name:`string`},description:``},children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``}}},y.__docgenInfo={description:"Опция внутри `RadioGroup`, представляющая одно выбираемое значение. Отрисовывает подпись, описание и состояние выбора.",methods:[],displayName:`Option`,props:{value:{required:!0,tsType:{name:`T`},description:``},label:{required:!0,tsType:{name:`ReactNode`},description:``},description:{required:!1,tsType:{name:`ReactNode`},description:``},className:{required:!1,tsType:{name:`string`},description:``}}}}));export{C as n,v as t};
@@ -1 +0,0 @@
1
- .nINbA6{flex-wrap:wrap;align-content:flex-start;height:auto;display:flex}.nINbA6.GL-UWx{flex-wrap:nowrap}.nINbA6._6PeF-i{flex-direction:row}.nINbA6._5wP4aR{flex-direction:column;align-content:stretch}.S3MnZI{color:var(--content-2);border-radius:var(--radius-xs);padding:0 var(--space-md);margin:var(--border-width);min-height:calc(var(--control-height) - var(--border-width) * 4);cursor:pointer;flex:1 0 0;display:block}.S3MnZI:hover{color:var(--content-accent)}.S3MnZI.KHJ0ja{color:var(--status-info-on-fill);background-color:var(--status-info-fill)}.S3MnZI:disabled{opacity:var(--disabled-opacity)}
@@ -1 +0,0 @@
1
- import{i as e}from"./preload-helper-B45gAKPr.js";import{in as t,rn as n}from"./iframe-D5Bxpr_P.js";import{i as r,n as i,r as a,t as o}from"./chunk-3LY4VQVK-CgGzJ6QG.js";var s;e((()=>{a(),i(),t(),s=(0,n(r(),1).default)(2)(async(e,t)=>e===!1?t:o(t))}))();export{s as formatter};
@@ -1 +0,0 @@
1
- import{i as e}from"./preload-helper-B45gAKPr.js";import{a as t,n,r}from"./Grid-Bk5IrBSw.js";var i=e((()=>{n(),t(),r()}));export{i as t};
@@ -1 +0,0 @@
1
- import{i as e}from"./preload-helper-B45gAKPr.js";import{N as t}from"./formatters-BvxAGVeJ.js";var n=e((()=>{t()}));export{n as t};
@@ -1 +0,0 @@
1
- import{i as e}from"./preload-helper-B45gAKPr.js";import{n as t}from"./Select-Ch13M3mQ.js";import{n}from"./ODataSelect-DhXlSsXp.js";import{n as r}from"./SerializableSelect-Dso6qEq4.js";var i=e((()=>{n(),t(),r()}));export{i as t};
@@ -1 +0,0 @@
1
- import{i as e}from"./preload-helper-B45gAKPr.js";import{a as t,r as n}from"./DateInput-Cn-GfCPV.js";var r=e((()=>{t(),n()}));export{r as t};