@ryuzaki13/react-foundation-ui 3.7.1 → 3.7.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (304) hide show
  1. package/dist/barcode-scanner/index.js +1 -1
  2. package/dist/base-table/index.js +1 -1
  3. package/dist/chunks/{TextEditorLexicalClient-DrSVnvOe.js → TextEditorLexicalClient-U-sTxmCU.js} +2 -2
  4. package/dist/chunks/{TextEditorLexicalClient-DrSVnvOe.js.map → TextEditorLexicalClient-U-sTxmCU.js.map} +1 -1
  5. package/dist/chunks/{base-table-BBp5WMDM.js → base-table-BMesCx6H.js} +2 -2
  6. package/dist/chunks/{base-table-BBp5WMDM.js.map → base-table-BMesCx6H.js.map} +1 -1
  7. package/dist/chunks/{misc-Cm_LDrUD.js → misc-BjdDK6mm.js} +7 -4
  8. package/dist/chunks/misc-BjdDK6mm.js.map +1 -0
  9. package/dist/chunks/{modal-Dz5TzkTB.js → modal-CBGNsqrq.js} +2 -2
  10. package/dist/chunks/{modal-Dz5TzkTB.js.map → modal-CBGNsqrq.js.map} +1 -1
  11. package/dist/chunks/{table-BDY9Zw--.js → table-OvvWkKfy.js} +2 -2
  12. package/dist/chunks/{table-BDY9Zw--.js.map → table-OvvWkKfy.js.map} +1 -1
  13. package/dist/expandable-action-panel/index.js +1 -1
  14. package/dist/image/index.js +1 -1
  15. package/dist/list/index.js +1 -1
  16. package/dist/misc/Message.d.ts +5 -5
  17. package/dist/misc/Message.d.ts.map +1 -1
  18. package/dist/misc/NoData.d.ts +4 -4
  19. package/dist/misc/NoData.d.ts.map +1 -1
  20. package/dist/misc/Notice.d.ts +4 -4
  21. package/dist/misc/Notice.d.ts.map +1 -1
  22. package/dist/misc/index.js +1 -1
  23. package/dist/modal/index.js +1 -1
  24. package/dist/simple-table/index.js +1 -1
  25. package/dist/table/index.js +1 -1
  26. package/dist/tabs/index.js +1 -1
  27. package/dist/text/Text.d.ts +4 -4
  28. package/dist/text/Text.d.ts.map +1 -1
  29. package/dist/text/index.js +12 -3
  30. package/dist/text/index.js.map +1 -1
  31. package/dist/text-editor/index.js +2 -2
  32. package/dist/tree-table/index.js +1 -1
  33. package/package.json +1 -1
  34. package/src/styles/_normalize.scss +18 -2
  35. package/storybook-static/assets/{Badge-DTUYnjUJ.js → Badge-N7TTS2Qv.js} +1 -1
  36. package/storybook-static/assets/{Badge.stories-rjlZcsBa.js → Badge.stories-CZ4eNFRT.js} +1 -1
  37. package/storybook-static/assets/{BadgeList-xlIWwEkW.js → BadgeList-XWgY35J_.js} +1 -1
  38. package/storybook-static/assets/{BarcodeScannerDialog.stories-qfMXeaVE.js → BarcodeScannerDialog.stories-RKc8JXEq.js} +1 -1
  39. package/storybook-static/assets/{Button-CBG6iR1d.js → Button-BoRyYxuJ.js} +1 -1
  40. package/storybook-static/assets/{Button-CdRjxwHf.js → Button-C5XH9g7m.js} +1 -1
  41. package/storybook-static/assets/{Button.stories-DbtwVXli.js → Button.stories-CVEAe43z.js} +1 -1
  42. package/storybook-static/assets/{CalendarView-BX0PAy5V.js → CalendarView-DQZVa-ZS.js} +1 -1
  43. package/storybook-static/assets/{CheckBox-4raP7tMo.js → CheckBox-C2dbhFSU.js} +1 -1
  44. package/storybook-static/assets/{CheckBox-Dxyvwx9w.js → CheckBox-J40Pp81h.js} +1 -1
  45. package/storybook-static/assets/{CheckBox.stories-HBKpJ12Q.js → CheckBox.stories-jsjceobr.js} +1 -1
  46. package/storybook-static/assets/{Color-6AOWCN3U-Bmlc4WNM.js → Color-6AOWCN3U-Cj-Xpdfc.js} +1 -1
  47. package/storybook-static/assets/{ContextMenu-CvsCDdTo.js → ContextMenu-BU_IpFHt.js} +1 -1
  48. package/storybook-static/assets/{ContextMenu-Cs3dFpcR.js → ContextMenu-Dpe67Am8.js} +1 -1
  49. package/storybook-static/assets/{ContextMenu.stories-DUco2ooo.js → ContextMenu.stories-v2KNkDpk.js} +1 -1
  50. package/storybook-static/assets/{DateInput-C876uAev.js → DateInput-CeFnc3YV.js} +1 -1
  51. package/storybook-static/assets/{DateInput-BzH2yWLd.js → DateInput-D8x1utHB.js} +1 -1
  52. package/storybook-static/assets/{DateInput.stories-B96RHwnv.js → DateInput.stories-Cneaqom9.js} +1 -1
  53. package/storybook-static/assets/{DateRangePresetSelect-Dt6gakU3.js → DateRangePresetSelect-D1U665ZV.js} +1 -1
  54. package/storybook-static/assets/{DateRangePresetSelect-CDIZjlZR.js → DateRangePresetSelect-D6c17i4N.js} +1 -1
  55. package/storybook-static/assets/{DateRangePresetSelect.stories-CowdHg25.js → DateRangePresetSelect.stories-HHeHjx7a.js} +1 -1
  56. package/storybook-static/assets/{Detail-5gzUBcgn.js → Detail-fWkjhZkd.js} +1 -1
  57. package/storybook-static/assets/{Detail.stories-BmfI0TB_.js → Detail.stories-CPHvW61V.js} +1 -1
  58. package/storybook-static/assets/{Dialog-DGjQw2Fl.js → Dialog-1NkV075o.js} +1 -1
  59. package/storybook-static/assets/{Dialog-B6cxAYUL.js → Dialog-CkWBDhcJ.js} +1 -1
  60. package/storybook-static/assets/{Dialog.stories-DGN5bZB0.js → Dialog.stories-XdLdsT_7.js} +1 -1
  61. package/storybook-static/assets/{Disclosure-BD6JU91g.js → Disclosure-7Pfz0K6D.js} +1 -1
  62. package/storybook-static/assets/{Disclosure.stories-Blp4sjjH.js → Disclosure.stories-BJ9pLY9g.js} +1 -1
  63. package/storybook-static/assets/{DisclosureGroup-DSs17wh1.js → DisclosureGroup-CjW0PrEp.js} +1 -1
  64. package/storybook-static/assets/{DocsRenderer-JROSPFPF-DjsQFu6U.js → DocsRenderer-JROSPFPF-C8wfSdP-.js} +1 -1
  65. package/storybook-static/assets/{DropZone-BWY1s904.js → DropZone-AKl4p3I3.js} +1 -1
  66. package/storybook-static/assets/{DropZone-CBJ8D9YW.js → DropZone-ys80gxro.js} +1 -1
  67. package/storybook-static/assets/{DropZone.stories-BYg0y5zw.js → DropZone.stories-CkdAjHgn.js} +1 -1
  68. package/storybook-static/assets/{DropdownMenu-DyxhrZHn.js → DropdownMenu-BEqzbYZS.js} +1 -1
  69. package/storybook-static/assets/{ExpandableActionPanel-utF3k6nI.js → ExpandableActionPanel-fhUjk-cY.js} +1 -1
  70. package/storybook-static/assets/{ExpandableActionPanel.stories-6eYg64t8.js → ExpandableActionPanel.stories-Gpb-tox4.js} +1 -1
  71. package/storybook-static/assets/{Flex-CpoGbzxR.js → Flex-DZRqpDFi.js} +1 -1
  72. package/storybook-static/assets/{Flex.stories-DZ2R5uxU.js → Flex.stories-UhFPvGp2.js} +1 -1
  73. package/storybook-static/assets/{FlexContainer-BK3kWiEq.js → FlexContainer-MzhoLOkU.js} +1 -1
  74. package/storybook-static/assets/{FlexItem-CmF4ezss.js → FlexItem-D6ugs6g9.js} +1 -1
  75. package/storybook-static/assets/{FloatingPopover-beid_uAU.js → FloatingPopover-CFBC4Bci.js} +1 -1
  76. package/storybook-static/assets/{FormattedTableCell-BCzWQE6v.js → FormattedTableCell-DLo0sThy.js} +1 -1
  77. package/storybook-static/assets/{Grid-DQAYnIjp.js → Grid-CNZWUPzG.js} +1 -1
  78. package/storybook-static/assets/{Grid-CbETXUvg.js → Grid-HsZeiyOU.js} +1 -1
  79. package/storybook-static/assets/{Grid.stories-QZi3H8un.js → Grid.stories-B8jOD3c1.js} +1 -1
  80. package/storybook-static/assets/{GridContainer-Dx_kHFve.js → GridContainer-BwVz0B-U.js} +1 -1
  81. package/storybook-static/assets/{ImageCropper.stories-hu3ETBrw.js → ImageCropper.stories-6NEFqOis.js} +1 -1
  82. package/storybook-static/assets/{ImageRenderer-oV4w6Hxt.js → ImageRenderer-DzwEj0Aj.js} +1 -1
  83. package/storybook-static/assets/{ImageRenderer.stories-DzsFGL36.js → ImageRenderer.stories-y_e0ibwH.js} +1 -1
  84. package/storybook-static/assets/{ImageView.stories-CKQ-ebNE.js → ImageView.stories-CSVwox9Z.js} +1 -1
  85. package/storybook-static/assets/{ImageViewer.stories-WppljG-8.js → ImageViewer.stories-CS_YEAYX.js} +2 -2
  86. package/storybook-static/assets/{ImageViewerRuntime-BPONS1mi.js → ImageViewerRuntime-BO8tewcN.js} +1 -1
  87. package/storybook-static/assets/{Input-BOFE5lvG.js → Input-CrTvKMZA.js} +1 -1
  88. package/storybook-static/assets/{Input-DMvnYoIe.js → Input-IOoH9rK7.js} +1 -1
  89. package/storybook-static/assets/{Input.stories-BqUmk40r.js → Input.stories-Dbb9kblN.js} +1 -1
  90. package/storybook-static/assets/{InputDateTime-D3pmNdmh.js → InputDateTime-mAiaQ-EP.js} +1 -1
  91. package/storybook-static/assets/{InputDateTime.stories-kvtjuevO.js → InputDateTime.stories-9HWPpWG5.js} +1 -1
  92. package/storybook-static/assets/{InputFile-CKwYU9U_.js → InputFile-BCcb55FM.js} +1 -1
  93. package/storybook-static/assets/{InputFile-DBXedT6h.js → InputFile-BZGWL9n1.js} +1 -1
  94. package/storybook-static/assets/{InputFile.stories-ehK-UK6n.js → InputFile.stories-D9O4obVV.js} +1 -1
  95. package/storybook-static/assets/{InputFiles-B7Xf4zSp.js → InputFiles-CAReQq9J.js} +1 -1
  96. package/storybook-static/assets/{InputFiles-BuMatkQD.js → InputFiles-DDpAORbI.js} +1 -1
  97. package/storybook-static/assets/{InputFiles.stories-DqZRcFkG.js → InputFiles.stories-fL_mU75Q.js} +1 -1
  98. package/storybook-static/assets/{InputFilesList-DPPmTQ1K.js → InputFilesList-Cv9wayyk.js} +1 -1
  99. package/storybook-static/assets/{InputImage-YPK4ZSDe.js → InputImage-DWcKoQ0d.js} +1 -1
  100. package/storybook-static/assets/{InputImage-XIGsJtM-.js → InputImage-UdIhL-vf.js} +1 -1
  101. package/storybook-static/assets/{InputImage.stories-CZiBoenh.js → InputImage.stories-CxTgzXbf.js} +1 -1
  102. package/storybook-static/assets/{InteractiveComponents-CSvun0IP.js → InteractiveComponents-COhqxgKn.js} +1 -1
  103. package/storybook-static/assets/{InteractiveComponents.stories-DY0ygaRD.js → InteractiveComponents.stories-B3rJsddR.js} +1 -1
  104. package/storybook-static/assets/{LayoutPicker-BXfi7odv.js → LayoutPicker-0g5TQZVT.js} +1 -1
  105. package/storybook-static/assets/{LayoutPicker-3jtKH77d.js → LayoutPicker-fpdamdP-.js} +1 -1
  106. package/storybook-static/assets/{LayoutPicker.stories-CmGAGY2E.js → LayoutPicker.stories-DJUPRATa.js} +1 -1
  107. package/storybook-static/assets/{Listbox-CVPng_Wi.js → Listbox-Bal9DNA3.js} +1 -1
  108. package/storybook-static/assets/{Listbox-B7mjWKH_.js → Listbox-D5mCAcNR.js} +1 -1
  109. package/storybook-static/assets/{Listbox.stories-DAyqK_9S.js → Listbox.stories-CTnb_vYJ.js} +1 -1
  110. package/storybook-static/assets/{Modal-Chsv1ktM.js → Modal-BFTjU0LV.js} +1 -1
  111. package/storybook-static/assets/{Modal-BPnqryDJ.js → Modal-YY2ryhcC.js} +1 -1
  112. package/storybook-static/assets/{Modal.stories-BrUWLwmT.js → Modal.stories-Bcvnm15h.js} +1 -1
  113. package/storybook-static/assets/{ModalManagerProvider-Bzz6KbJq.js → ModalManagerProvider-CsK7NAeM.js} +1 -1
  114. package/storybook-static/assets/{MultiSelect-odpQ0Zm5.js → MultiSelect-CX1cB0ke.js} +1 -1
  115. package/storybook-static/assets/{MultiSelect-BZQy9Xsb.js → MultiSelect-Dk0jWbh9.js} +1 -1
  116. package/storybook-static/assets/{MultiSelect.stories-B2wnVhGS.js → MultiSelect.stories-C3Eg3TQp.js} +1 -1
  117. package/storybook-static/assets/NoData-DJx81tUM.js +1 -0
  118. package/storybook-static/assets/{NotificationsHost-Bp69wBpO.js → NotificationsHost-Dcof6Z1b.js} +1 -1
  119. package/storybook-static/assets/{NotificationsHost.stories-H0M2_6Ql.js → NotificationsHost.stories-pXfpgslS.js} +1 -1
  120. package/storybook-static/assets/{ODataMultiSelect-BWrI3liD.js → ODataMultiSelect-CCRS1GoI.js} +1 -1
  121. package/storybook-static/assets/{ODataMultiSelect.stories-g6CYTf9s.js → ODataMultiSelect.stories-f5KHk1YQ.js} +1 -1
  122. package/storybook-static/assets/{ODataSelect-CEoeJfMu.js → ODataSelect-BUtMtwBZ.js} +1 -1
  123. package/storybook-static/assets/{ODataSelect.stories-BgqAo36O.js → ODataSelect.stories-B3jJy_QR.js} +1 -1
  124. package/storybook-static/assets/{ODataTreeMultiSelect-DP0bwv4M.js → ODataTreeMultiSelect-BszLcV06.js} +1 -1
  125. package/storybook-static/assets/{ODataTreeMultiSelect.stories-DYdYFhcJ.js → ODataTreeMultiSelect.stories-CgxgXf7a.js} +1 -1
  126. package/storybook-static/assets/{ODataTreeSelect-B_bhHDSr.js → ODataTreeSelect-BSfNud7e.js} +1 -1
  127. package/storybook-static/assets/{ODataTreeSelect.stories-C5ygaR7b.js → ODataTreeSelect.stories-CDCwhzxS.js} +1 -1
  128. package/storybook-static/assets/{OneStepScroller-Dp5Iva_A.js → OneStepScroller-COeOkIbc.js} +1 -1
  129. package/storybook-static/assets/{Option-DtZ6Qlvd.js → Option-bwHoGQv8.js} +1 -1
  130. package/storybook-static/assets/{OptionButton-BQo4zeny.js → OptionButton-De-ZxLXT.js} +1 -1
  131. package/storybook-static/assets/{OptionContent-Yz54kdhn.js → OptionContent-DQaLQXLA.js} +1 -1
  132. package/storybook-static/assets/{OptionContentContainer-DL2-HjT2.js → OptionContentContainer-6tnrh_LU.js} +1 -1
  133. package/storybook-static/assets/{PeriodSelect-iGcNtPrN.js → PeriodSelect--oDBtc26.js} +1 -1
  134. package/storybook-static/assets/{PeriodSelect-ClMxvzvw.js → PeriodSelect-vXz-Ou6a.js} +1 -1
  135. package/storybook-static/assets/{PeriodSelect.stories-LNVQiPZe.js → PeriodSelect.stories-DJC_pVtZ.js} +1 -1
  136. package/storybook-static/assets/{PickerField-BEMDq9NM.js → PickerField-DnQWhjJ_.js} +1 -1
  137. package/storybook-static/assets/{PickerTriggerActions-D6nW7xw5.js → PickerTriggerActions-X1w-sf4Z.js} +1 -1
  138. package/storybook-static/assets/{Popover-C-MzjE4n.js → Popover-C67Fn57w.js} +1 -1
  139. package/storybook-static/assets/{Popover-BTz7W53N.js → Popover-kA6Ul50P.js} +1 -1
  140. package/storybook-static/assets/{Popover.stories-CI98uwbF.js → Popover.stories-BtCQVTbh.js} +1 -1
  141. package/storybook-static/assets/{PresetRangeDateInput-CA4KuCnV.js → PresetRangeDateInput-DFsGAIDV.js} +1 -1
  142. package/storybook-static/assets/{PresetRangeDateInput-DPfbbRXi.js → PresetRangeDateInput-Hh6Kokt2.js} +1 -1
  143. package/storybook-static/assets/{PresetRangeDateInput.stories-D5HMDaN8.js → PresetRangeDateInput.stories-le5XNwoY.js} +1 -1
  144. package/storybook-static/assets/{PresetSelect-CBFkq_MZ.js → PresetSelect-Cvhd58ho.js} +1 -1
  145. package/storybook-static/assets/{README-IU1lQ3yM.js → README--HJNBCpM.js} +1 -1
  146. package/storybook-static/assets/{README-CPUclLXO.js → README-061U6qZN.js} +1 -1
  147. package/storybook-static/assets/{README-BiowDKRn.js → README-2QmAumcF.js} +1 -1
  148. package/storybook-static/assets/{README-D74YjDJd.js → README-2dKbz_Q2.js} +1 -1
  149. package/storybook-static/assets/{README-D8rLYV25.js → README-2q8XRHPL.js} +1 -1
  150. package/storybook-static/assets/{README-BaHSujqA.js → README-6p6bxsVB.js} +1 -1
  151. package/storybook-static/assets/{README-DbhmYFzX.js → README-B-X1t-fF.js} +1 -1
  152. package/storybook-static/assets/{README-CE7L7eIW.js → README-B3DBkxOD.js} +1 -1
  153. package/storybook-static/assets/{README-CsZoOp9e.js → README-B3HIOr2U.js} +1 -1
  154. package/storybook-static/assets/{README-DZA9maG5.js → README-B9VIixXY.js} +1 -1
  155. package/storybook-static/assets/{README-D3_68wtX.js → README-BMNpkR5K.js} +1 -1
  156. package/storybook-static/assets/{README-PFHdcB2Q.js → README-BMWvZae5.js} +1 -1
  157. package/storybook-static/assets/{README-BdyEui6q.js → README-BWpZzr3H.js} +1 -1
  158. package/storybook-static/assets/{README-Da6Nl1Ll.js → README-BaJfhz7B.js} +1 -1
  159. package/storybook-static/assets/{README-BhCbRil6.js → README-BgKWjFWy.js} +1 -1
  160. package/storybook-static/assets/{README-CUuFCVw8.js → README-Bq74Zc-F.js} +1 -1
  161. package/storybook-static/assets/{README-By8-yszE.js → README-BspOOhZg.js} +1 -1
  162. package/storybook-static/assets/{README-BY1Kg6xN.js → README-BxTbRe2W.js} +1 -1
  163. package/storybook-static/assets/{README-DE0GwuA6.js → README-BzUiHcKS.js} +1 -1
  164. package/storybook-static/assets/{README--OEk0Qmq.js → README-CeMyidID.js} +1 -1
  165. package/storybook-static/assets/{README-CJOB-kej.js → README-Cg1J-xOm.js} +1 -1
  166. package/storybook-static/assets/{README-bsNRkuj0.js → README-CgvxsXrP.js} +1 -1
  167. package/storybook-static/assets/{README-CU0zq6IL.js → README-CngplKih.js} +1 -1
  168. package/storybook-static/assets/{README-DcUxIvbg.js → README-CnwMU4Kg.js} +1 -1
  169. package/storybook-static/assets/{README-BRKPiLo6.js → README-Coev8mjF.js} +1 -1
  170. package/storybook-static/assets/{README-B72Uf36c.js → README-Comw5ega.js} +1 -1
  171. package/storybook-static/assets/{README-D1jzSNUb.js → README-CrsW0Puo.js} +1 -1
  172. package/storybook-static/assets/{README-DGWMICIa.js → README-CtQgnBLP.js} +1 -1
  173. package/storybook-static/assets/{README-CT2RZVHo.js → README-CvKj08UC.js} +1 -1
  174. package/storybook-static/assets/{README-Dr92oepc.js → README-D3YvT5g-.js} +1 -1
  175. package/storybook-static/assets/{README-DiXrdaJ_.js → README-DH8lHpBN.js} +1 -1
  176. package/storybook-static/assets/{README-KN1rC4P4.js → README-DKHH5zAE.js} +1 -1
  177. package/storybook-static/assets/{README-NVT3zwjJ.js → README-DLeltHmc.js} +1 -1
  178. package/storybook-static/assets/{README-KCCeREhX.js → README-DNgsn9Ku.js} +1 -1
  179. package/storybook-static/assets/{README-B6KY4Oml.js → README-DPdKbKJM.js} +1 -1
  180. package/storybook-static/assets/{README-CuWuOeTb.js → README-DR7Woszz.js} +1 -1
  181. package/storybook-static/assets/{README-CtvayE8p.js → README-DRduvn_p.js} +1 -1
  182. package/storybook-static/assets/{README-Cy5W56vi.js → README-DcvosoQm.js} +1 -1
  183. package/storybook-static/assets/{README-vfpe_LWh.js → README-DekoYyat.js} +1 -1
  184. package/storybook-static/assets/{README-BtmHHjrx.js → README-DfE4penM.js} +1 -1
  185. package/storybook-static/assets/{README-xnGLJkj-.js → README-DmruIMqo.js} +1 -1
  186. package/storybook-static/assets/{README-CRovKmdk.js → README-DrtdeRN9.js} +1 -1
  187. package/storybook-static/assets/{README-DiX-h2b0.js → README-DryPhus6.js} +1 -1
  188. package/storybook-static/assets/{README-iF6KmOih.js → README-DwARVSao.js} +1 -1
  189. package/storybook-static/assets/{README-xRzBwPsx.js → README-EGa3ZjmS.js} +1 -1
  190. package/storybook-static/assets/{README-Bc8GTovB.js → README-O0s2sxXs.js} +1 -1
  191. package/storybook-static/assets/{README-eAQUctyx.js → README-O7wgtnSy.js} +1 -1
  192. package/storybook-static/assets/{README-O4Hp1X2l.js → README-QDc0w7Jv.js} +1 -1
  193. package/storybook-static/assets/{README-BZRJIzio.js → README-RZO_uP7L.js} +1 -1
  194. package/storybook-static/assets/{README-DeBp5e_z.js → README-Sigvpk8C.js} +1 -1
  195. package/storybook-static/assets/{README-HMss6sQH.js → README-WOEeFz5a.js} +1 -1
  196. package/storybook-static/assets/{README-CQimRT6Y.js → README-Xp8Uuad4.js} +1 -1
  197. package/storybook-static/assets/{README-CtjmyPW7.js → README-yGFGKsS_.js} +1 -1
  198. package/storybook-static/assets/{RadioButton-QWhy6_MB.js → RadioButton-BCajWAI3.js} +1 -1
  199. package/storybook-static/assets/{RadioButton-4iBITH-x.js → RadioButton-DG1DD0gf.js} +1 -1
  200. package/storybook-static/assets/{RadioButton.stories-1zA_8wcS.js → RadioButton.stories-DyHW_fep.js} +1 -1
  201. package/storybook-static/assets/{RadioGroup-BSIdg5x1.js → RadioGroup-6t7xFI0x.js} +1 -1
  202. package/storybook-static/assets/{RadioGroup-CN92lZlY.js → RadioGroup-Cbd5qOD5.js} +1 -1
  203. package/storybook-static/assets/{RadioGroup.stories-JC6Z3CpL.js → RadioGroup.stories-PN3bZo3G.js} +1 -1
  204. package/storybook-static/assets/{Scrollable-DbBJQWBv.js → Scrollable-C2TiVA3M.js} +1 -1
  205. package/storybook-static/assets/{Scrollable-SCMKAvuD.js → Scrollable-C6ZGERHZ.js} +1 -1
  206. package/storybook-static/assets/{Scrollable.stories-CawNbs8Y.js → Scrollable.stories-6BfhSFRC.js} +1 -1
  207. package/storybook-static/assets/{Select-BHTlNaX3.js → Select-B0ZGZVqy.js} +1 -1
  208. package/storybook-static/assets/{Select-D_kHX5a5.js → Select-CI0KgOY3.js} +1 -1
  209. package/storybook-static/assets/{Select.stories-DcY5-Hlt.js → Select.stories-BVw9XsbK.js} +1 -1
  210. package/storybook-static/assets/{Separator-DOk-N_yT.js → Separator-D1ffhGPJ.js} +1 -1
  211. package/storybook-static/assets/{Separator-BWje1Oue.js → Separator-dN7mdfZp.js} +1 -1
  212. package/storybook-static/assets/{Separator.stories-DT-_4yle.js → Separator.stories-DpFP6iWL.js} +1 -1
  213. package/storybook-static/assets/{SerializableSelect-Cg-gWCzu.js → SerializableSelect-BsOrzfxp.js} +1 -1
  214. package/storybook-static/assets/{SerializableSelect.stories-DAg_4E3g.js → SerializableSelect.stories-DAIDh0_H.js} +1 -1
  215. package/storybook-static/assets/{ShimmerText-h0A5FdJn.js → ShimmerText-X3gq6f6C.js} +1 -1
  216. package/storybook-static/assets/{ShimmerText.stories-MnbWai5o.js → ShimmerText.stories-DWmO_VrU.js} +1 -1
  217. package/storybook-static/assets/{SingleDateTimeInput-CqPmAWWa.js → SingleDateTimeInput-BaJq-KMP.js} +1 -1
  218. package/storybook-static/assets/{SingleDateTimeInput-DOqiD7di.js → SingleDateTimeInput-CdYPmecY.js} +1 -1
  219. package/storybook-static/assets/{SingleDateTimeInput.stories-C-uI6_Du.js → SingleDateTimeInput.stories-BiahcqLS.js} +1 -1
  220. package/storybook-static/assets/{Slider-p_L-JzII.js → Slider-D3bvu3eQ.js} +1 -1
  221. package/storybook-static/assets/{Slider-Djs-5-SX.js → Slider-DLRdVvn-.js} +1 -1
  222. package/storybook-static/assets/{Slider.stories-fhuweHOJ.js → Slider.stories-8p_CzqEh.js} +1 -1
  223. package/storybook-static/assets/{SliderInput-nagryhRL.js → SliderInput-8ElYbtJS.js} +1 -1
  224. package/storybook-static/assets/{SliderInput-CIVj_06t.js → SliderInput-DLL7a4cP.js} +1 -1
  225. package/storybook-static/assets/{SliderInput.stories-BLikqr-O.js → SliderInput.stories-C8BcMOzg.js} +1 -1
  226. package/storybook-static/assets/{Sortable-D0KOh-TL.js → Sortable-DpxABdon.js} +1 -1
  227. package/storybook-static/assets/{Sortable.stories-BGdtffqB.js → Sortable.stories-B7GaBXv5.js} +1 -1
  228. package/storybook-static/assets/{Splitter-BsvN-OLk.js → Splitter-DdYGFBm_.js} +1 -1
  229. package/storybook-static/assets/{Splitter.stories-cuiQiJ7g.js → Splitter.stories-DTPeXrgN.js} +1 -1
  230. package/storybook-static/assets/{StateSelect-B29YeAsu.js → StateSelect-CuDUPJah.js} +1 -1
  231. package/storybook-static/assets/{StateSelect-Dbu1AJzp.js → StateSelect-DTX6NkDK.js} +1 -1
  232. package/storybook-static/assets/{StateSelect.stories-ChvBFaM2.js → StateSelect.stories-DlNNhqsx.js} +1 -1
  233. package/storybook-static/assets/{StatusIndicator-CsQ0EPOR.js → StatusIndicator-CXdze7Ot.js} +1 -1
  234. package/storybook-static/assets/{StatusIndicator.stories-CanvyqtM.js → StatusIndicator.stories-VtkfECUE.js} +1 -1
  235. package/storybook-static/assets/{StringToggle.stories-D-btA7Hm.js → StringToggle.stories-DIY2OTX6.js} +1 -1
  236. package/storybook-static/assets/{Switch-C2aUtr7H.js → Switch-Di1MD5bL.js} +1 -1
  237. package/storybook-static/assets/{Switch-DeDHWbqw.js → Switch-GFA-CYqe.js} +1 -1
  238. package/storybook-static/assets/{Switch.stories-BcNfmPSy.js → Switch.stories-BjNagQV8.js} +1 -1
  239. package/storybook-static/assets/{Table-D9AgOQn3.js → Table-B00IepIK.js} +1 -1
  240. package/storybook-static/assets/{Table.stories-Czm2C6Rx.js → Table.stories-KJEyTRSW.js} +1 -1
  241. package/storybook-static/assets/{TableEditor.stories-CXR7o59m.js → TableEditor.stories-k5UXsooZ.js} +1 -1
  242. package/storybook-static/assets/{Tabs-sOp2l3XO.js → Tabs-CBxkDczi.js} +1 -1
  243. package/storybook-static/assets/{Tabs.stories-YkP11K26.js → Tabs.stories-BM1i3ziX.js} +1 -1
  244. package/storybook-static/assets/{TabsBox-CfOR1G6c.js → TabsBox-3talTXj9.js} +1 -1
  245. package/storybook-static/assets/{TagInput-C_yNW134.js → TagInput-C6cW_cNV.js} +1 -1
  246. package/storybook-static/assets/{TagInput.stories-D4vh6Kh3.js → TagInput.stories-DNLoGJ-k.js} +1 -1
  247. package/storybook-static/assets/Text-DzkDOPZL.js +1 -0
  248. package/storybook-static/assets/{Textarea-CQ9_SeR-.js → Textarea-BFtWH8r-.js} +1 -1
  249. package/storybook-static/assets/{Textarea-B50-dJyP.js → Textarea-ExUAB-2K.js} +1 -1
  250. package/storybook-static/assets/{Textarea.stories-CpEKjfqY.js → Textarea.stories-DdNwYADY.js} +1 -1
  251. package/storybook-static/assets/{TimePanel-CaX_CWTW.js → TimePanel-BueBD57v.js} +1 -1
  252. package/storybook-static/assets/{TimePanel.stories-BHKIw5mZ.js → TimePanel.stories-Cr6qxFfF.js} +1 -1
  253. package/storybook-static/assets/{Toggle-ADeGxXl0.js → Toggle-BgN7jq-i.js} +1 -1
  254. package/storybook-static/assets/{Toggle-njM2fKQc.js → Toggle-Dw6JMQg3.js} +1 -1
  255. package/storybook-static/assets/{Toggle.stories-DDWsGMoy.js → Toggle.stories-Cf3hmhmr.js} +1 -1
  256. package/storybook-static/assets/{TreeMultiSelect-DY7zN0tt.js → TreeMultiSelect-B7SgXFRk.js} +1 -1
  257. package/storybook-static/assets/{TreeMultiSelect-Z4AV1Wgg.js → TreeMultiSelect-VYZmn-lZ.js} +1 -1
  258. package/storybook-static/assets/{TreeMultiSelect.stories-BhkFA2S-.js → TreeMultiSelect.stories-LSYE-78i.js} +1 -1
  259. package/storybook-static/assets/{TreePickerBase-DRCzJjx6.js → TreePickerBase-Bl8om1rJ.js} +1 -1
  260. package/storybook-static/assets/{TreeSelect-DQADRaC3.js → TreeSelect-CVLDx1Ai.js} +1 -1
  261. package/storybook-static/assets/{TreeSelect-q5pDp_Os.js → TreeSelect-DneZ5NIX.js} +1 -1
  262. package/storybook-static/assets/{TreeSelect.stories-yLxVaaSY.js → TreeSelect.stories-BsU-1nOT.js} +1 -1
  263. package/storybook-static/assets/{TreeTable-BeZoDjBE.js → TreeTable-CCUoHGEP.js} +1 -1
  264. package/storybook-static/assets/{TreeTable.stories-B2u51xrR.js → TreeTable.stories-CXp7jvM_.js} +1 -1
  265. package/storybook-static/assets/{blocks-D29TdvdI.js → blocks-Bppn5-KH.js} +3 -3
  266. package/storybook-static/assets/{check-B9kjGnTr.js → check-CvfeVsHq.js} +1 -1
  267. package/storybook-static/assets/{chevron-down-D0ncXJ67.js → chevron-down-CfxBez03.js} +1 -1
  268. package/storybook-static/assets/{chevron-left-CGtvJ_7j.js → chevron-left-DRwQ73um.js} +1 -1
  269. package/storybook-static/assets/{chevron-right-1d8Q7foW.js → chevron-right-DbvEG8mf.js} +1 -1
  270. package/storybook-static/assets/{chunk-W22LQPXL-KzPuU6n9.js → chunk-W22LQPXL-BfFvW6Ss.js} +1 -1
  271. package/storybook-static/assets/{circle-alert-Dbad7hvh.js → circle-alert-Cpr21MVa.js} +1 -1
  272. package/storybook-static/assets/{circle-check-DvnBN33e.js → circle-check-DMt1ZS5p.js} +1 -1
  273. package/storybook-static/assets/{components-Pq5w8We2.js → components-Cy_FY4UP.js} +3 -3
  274. package/storybook-static/assets/{contextMenu-ChSRpnE7.js → contextMenu-BNMsxsu5.js} +1 -1
  275. package/storybook-static/assets/{download-Dt_hINTs.js → download-D4vej-uF.js} +1 -1
  276. package/storybook-static/assets/{floating-ui.react-CFUzDHMb.js → floating-ui.react-CLjyfe7A.js} +1 -1
  277. package/storybook-static/assets/{foundationApi-DHs4bOpI.js → foundationApi-C18hRUhm.js} +1 -1
  278. package/storybook-static/assets/{foundationLib-D1fm6WoY.js → foundationLib-CtFj89oT.js} +1 -1
  279. package/storybook-static/assets/{hooks-DrbZUNnJ.js → hooks-U9X1emn_.js} +1 -1
  280. package/storybook-static/assets/iframe-CBERSIIV.js +1 -0
  281. package/storybook-static/assets/iframe-CfHCpaxi.css +1 -0
  282. package/storybook-static/assets/{iframe-CizMDlW9.js → iframe-CrZ65S2_.js} +3 -3
  283. package/storybook-static/assets/{info-Cjey-oKN.js → info-j0_BRMfK.js} +1 -1
  284. package/storybook-static/assets/{odata-BEQC_wjB.js → odata-BZXjjmIA.js} +1 -1
  285. package/storybook-static/assets/{odataStoryFixtures-CmSF4OYc.js → odataStoryFixtures-Dn8NsbHo.js} +1 -1
  286. package/storybook-static/assets/{react-DlE-cCYf.js → react-bfZFd9lm.js} +1 -1
  287. package/storybook-static/assets/{refresh-cw-6kuFzwuj.js → refresh-cw-BgWa0Vq-.js} +1 -1
  288. package/storybook-static/assets/{settings-2-Dp2kvtlU.js → settings-2-CiLgvRh5.js} +1 -1
  289. package/storybook-static/assets/{sortable-YgZpYlFI.js → sortable-CAfAy9HU.js} +1 -1
  290. package/storybook-static/assets/{syntaxhighlighter-QEQV7K2Y-Bgf_-1Oe.js → syntaxhighlighter-QEQV7K2Y-CgAHmmdu.js} +1 -1
  291. package/storybook-static/assets/{trash-2-CPnjzHnW.js → trash-2-Bxu8R_FZ.js} +1 -1
  292. package/storybook-static/assets/{triangle-alert-ELZCks0j.js → triangle-alert-Mt32EGrB.js} +1 -1
  293. package/storybook-static/assets/{useODataSelectBase-C_9p8iq2.js → useODataSelectBase-CbaR4HhR.js} +1 -1
  294. package/storybook-static/assets/{useODataTreeData-X3d38mxf.js → useODataTreeData-CYjZ8ZLD.js} +1 -1
  295. package/storybook-static/assets/{usePickerQuery-Dn0Nghs1.js → usePickerQuery-RLVy71A8.js} +1 -1
  296. package/storybook-static/assets/{usePickerTriggerController-BBzr2WZB.js → usePickerTriggerController-J34au709.js} +1 -1
  297. package/storybook-static/assets/{x-Buig9MSV.js → x-D4JI8CHm.js} +1 -1
  298. package/storybook-static/iframe.html +3 -3
  299. package/storybook-static/project.json +1 -1
  300. package/dist/chunks/misc-Cm_LDrUD.js.map +0 -1
  301. package/storybook-static/assets/NoData-gI3QuiQP.js +0 -1
  302. package/storybook-static/assets/Text-IQqUM-6S.js +0 -1
  303. package/storybook-static/assets/iframe-CrGqOhca.js +0 -1
  304. package/storybook-static/assets/iframe-DTZMIxtj.css +0 -1
@@ -1,4 +1,4 @@
1
- import { a as e, c as t, d as ee, i as n, n as r, o as i, p as te, r as ne, s as re, t as ie } from "./base-table-BBp5WMDM.js";
1
+ import { a as e, c as t, d as ee, i as n, n as r, o as i, p as te, r as ne, s as re, t as ie } from "./base-table-BMesCx6H.js";
2
2
  import { jsx as a } from "react/jsx-runtime";
3
3
  import { useEffect as ae, useEffectEvent as o, useMemo as s, useRef as c } from "react";
4
4
  import { formatPipelineDisplayValue as l } from "@ryuzaki13/react-foundation-lib/formatters";
@@ -138,4 +138,4 @@ function m({ title: m, isLoading: h, isFetching: se, data: g, columns: _, select
138
138
  //#endregion
139
139
  export { m as t };
140
140
 
141
- //# sourceMappingURL=table-BDY9Zw--.js.map
141
+ //# sourceMappingURL=table-OvvWkKfy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"table-BDY9Zw--.js","names":[],"sources":["../../src/table/Table.module.scss","../../src/table/Table.tsx"],"sourcesContent":[".selectedIndicatorCell {\n\tbox-shadow: inset 0.1875rem 0 0 var(--accent-text);\n}\n\n.sentinel {\n\theight: 1px;\n}\n","import { useEffect, useEffectEvent, useMemo, useRef } from \"react\";\n\nimport { formatPipelineDisplayValue } from \"@ryuzaki13/react-foundation-lib/formatters\";\nimport { TableFormulaRowData } from \"@ryuzaki13/react-foundation-lib/formulas\";\nimport {\n\ttype FoundationTableRow,\n\tfoundationTableFeatures,\n\ttype TableColumnDef,\n\ttype TableColumnOrderState,\n\ttype TableColumnSizingState,\n\ttype TableColumnVisibilityState,\n\ttype TableSelectionMode,\n\tuseTableRowSelection\n} from \"@ryuzaki13/react-foundation-lib/table\";\nimport { useTable } from \"@tanstack/react-table\";\n\nimport {\n\tBaseTable,\n\tbuildBaseTableMergedCellsLayout,\n\tbuildTableFormattingSnapshot,\n\tFormattedTableCell,\n\tgetOrderedVisibleLeafColumns,\n\tshouldUseTableFormatting,\n\tuseTableColumnOrder,\n\tuseTableColumnPinning,\n\tuseTableColumnSizing,\n\tuseTableColumnVisibility,\n\ttype BaseTableColumnState,\n\ttype BaseTableProps,\n\ttype TableColumnPinningState\n} from \"../base-table\";\n\nimport styles from \"./Table.module.scss\";\n\n/**\n * Возвращает индекс как строковый id, если внешний id не передан.\n */\nfunction defaultGetRowId<TData>(_row: TData, index: number): string {\n\treturn String(index);\n}\n\n/**\n * Пропсы компонента Table.\n *\n * Компонент предназначен для плоских данных и по API осознанно сближен с TreeTable.\n */\nexport interface TableProps<TData extends object> {\n\t/**\n\t * Необязательный заголовок над таблицей.\n\t */\n\ttitle?: string;\n\t/**\n\t * Признак первичной загрузки.\n\t */\n\tisLoading?: boolean;\n\t/**\n\t * Признак фоновой догрузки или обновления данных.\n\t */\n\tisFetching?: boolean;\n\t/**\n\t * Плоский источник строк.\n\t */\n\tdata: readonly TData[] | undefined | null;\n\t/**\n\t * Описание колонок таблицы.\n\t */\n\tcolumns: readonly TableColumnDef<TData>[];\n\t/**\n\t * Режим выбора строк.\n\t */\n\tselectionMode?: TableSelectionMode;\n\t/**\n\t * Внешний список выбранных строк.\n\t *\n\t * Если передан, таблица синхронизирует визуальное выделение с этим набором id.\n\t */\n\tselectedRowIds?: readonly string[];\n\t/**\n\t * Стабильный идентификатор строки.\n\t *\n\t * Если не задан, используется индекс строки.\n\t */\n\tgetRowId?: (row: TData, index: number) => string;\n\t/**\n\t * Дополнительный CSS-класс корневого контейнера.\n\t */\n\tclassName?: string;\n\tminHeight?: `${number}em` | `${number}%`;\n\t/**\n\t * Дополнительный CSS-класс тега `table`.\n\t */\n\ttableClassName?: string;\n\t/**\n\t * Внешнее controlled-состояние видимости колонок.\n\t */\n\tcolumnVisibility?: TableColumnVisibilityState;\n\t/**\n\t * Стартовое uncontrolled-состояние видимости колонок.\n\t */\n\tdefaultColumnVisibility?: TableColumnVisibilityState;\n\t/**\n\t * Внешнее controlled-состояние порядка колонок.\n\t */\n\tcolumnOrder?: readonly string[];\n\t/**\n\t * Стартовое uncontrolled-состояние порядка колонок.\n\t */\n\tdefaultColumnOrder?: readonly string[];\n\t/**\n\t * Внешнее controlled-состояние ширин колонок в px.\n\t */\n\tcolumnSizing?: TableColumnSizingState;\n\t/**\n\t * Стартовое uncontrolled-состояние ширин колонок в px.\n\t */\n\tdefaultColumnSizing?: TableColumnSizingState;\n\t/**\n\t * Внешнее controlled-состояние start-pinning для колонок.\n\t */\n\tcolumnPinning?: TableColumnPinningState;\n\t/**\n\t * Стартовое uncontrolled-состояние start-pinning для колонок.\n\t */\n\tdefaultColumnPinning?: TableColumnPinningState;\n\t/**\n\t * Включает изменение ширины колонок через header-handle.\n\t */\n\tenableColumnResizing?: boolean;\n\t/**\n\t * Включает изменение порядка колонок через drag&drop заголовков.\n\t */\n\tenableColumnReordering?: boolean;\n\t/**\n\t * Минимальная ширина колонки при resize в px.\n\t */\n\tcolumnResizeMinWidth?: number;\n\t/**\n\t * Вызывается после изменения видимости колонок.\n\t */\n\tonColumnVisibilityChange?: (state: TableColumnVisibilityState) => void;\n\t/**\n\t * Вызывается после изменения порядка колонок.\n\t */\n\tonColumnOrderChange?: (state: TableColumnOrderState) => void;\n\t/**\n\t * Вызывается после изменения ширины колонок.\n\t */\n\tonColumnSizingChange?: (state: TableColumnSizingState) => void;\n\t/**\n\t * Вызывается после изменения start-pinning state.\n\t */\n\tonColumnPinningChange?: (state: TableColumnPinningState) => void;\n\t/**\n\t * Вызывается при активации строки кликом или клавиатурой.\n\t */\n\tonRowClick?: (row: TData) => void;\n\t/**\n\t * Вызывается после изменения выбранных строк.\n\t */\n\tonRowSelectionChange?: (rows: TData[]) => void;\n\t/**\n\t * Вызывается при достижении конца таблицы внутри scroll-контейнера.\n\t */\n\tonReachEnd?: () => void;\n\t/**\n\t * Позволяет запретить выбор отдельных строк.\n\t */\n\tgetRowCanSelect?: (row: TData) => boolean;\n\t/**\n\t * Позволяет добавить CSS-класс для конкретной строки.\n\t */\n\tgetRowClassName?: (row: TData) => string | undefined;\n\t/**\n\t * Контекстное меню заголовка колонки. Используется для общих runtime-действий\n\t * вроде server sorting без встраивания доменной логики в shared-таблицу.\n\t */\n\trenderHeaderContextMenu?: BaseTableProps<TData>[\"renderHeaderContextMenu\"];\n\t/**\n\t * Тонкая точка расширения содержимого ячейки поверх стандартного форматирования.\n\t *\n\t * В отличие от `column.cell`, этот слот не отключает общий formatting-runtime:\n\t * `defaultContent` уже содержит отформатированное значение, если оно применимо.\n\t */\n\trenderCellContent?: BaseTableProps<TData>[\"renderCellContent\"];\n}\n\n/**\n * Плоская таблица на базе TanStack Table как React-альтернатива `sap.m.Table`.\n */\nexport function Table<TData extends object>({\n\ttitle,\n\tisLoading,\n\tisFetching,\n\tdata,\n\tcolumns,\n\tselectionMode = \"none\",\n\tselectedRowIds,\n\tgetRowId,\n\tclassName,\n\tminHeight,\n\ttableClassName,\n\tcolumnVisibility,\n\tdefaultColumnVisibility,\n\tcolumnOrder,\n\tdefaultColumnOrder,\n\tcolumnSizing,\n\tdefaultColumnSizing,\n\tcolumnPinning,\n\tdefaultColumnPinning,\n\tenableColumnResizing = false,\n\tenableColumnReordering = false,\n\tcolumnResizeMinWidth,\n\tonColumnVisibilityChange,\n\tonColumnOrderChange,\n\tonColumnSizingChange,\n\tonColumnPinningChange,\n\tonRowClick,\n\tonRowSelectionChange,\n\tonReachEnd,\n\tgetRowCanSelect,\n\tgetRowClassName,\n\trenderHeaderContextMenu,\n\trenderCellContent\n}: TableProps<TData>) {\n\tconst tableData = useMemo(() => data ?? [], [data]);\n\tconst formattingSnapshot = useMemo(() => buildTableFormattingSnapshot(columns), [columns]);\n\tconst resolveRowId = getRowId ?? defaultGetRowId<TData>;\n\tconst rowById = useMemo(() => new Map(tableData.map((row, index) => [resolveRowId(row, index), row])), [resolveRowId, tableData]);\n\tconst availableRowIds = useMemo(() => Array.from(rowById.keys()), [rowById]);\n\tconst scrollableRef = useRef<HTMLDivElement | null>(null);\n\tconst sentinelRef = useRef<HTMLDivElement | null>(null);\n\n\tconst { rowSelection, activateRowSelection } = useTableRowSelection({\n\t\tavailableRowIds,\n\t\trowById,\n\t\tselectionMode,\n\t\tselectedRowIds,\n\t\tonRowSelectionChange\n\t});\n\tconst { columnVisibility: resolvedColumnVisibility, onColumnVisibilityChange: handleColumnVisibilityChange } = useTableColumnVisibility(\n\t\t{\n\t\t\tcolumnVisibility,\n\t\t\tdefaultColumnVisibility,\n\t\t\tonColumnVisibilityChange\n\t\t}\n\t);\n\tconst { columnOrder: resolvedColumnOrder, onColumnOrderChange: handleColumnOrderChange } = useTableColumnOrder({\n\t\tcolumnOrder,\n\t\tdefaultColumnOrder,\n\t\tonColumnOrderChange\n\t});\n\tconst { columnSizing: resolvedColumnSizing, onColumnSizingChange: handleColumnSizingChange } = useTableColumnSizing({\n\t\tcolumnSizing,\n\t\tdefaultColumnSizing,\n\t\tcolumnResizeMinWidth,\n\t\tonColumnSizingChange\n\t});\n\tconst { columnPinning: resolvedColumnPinning, onColumnPinningChange: handleColumnPinningChange } = useTableColumnPinning({\n\t\tcolumnPinning,\n\t\tdefaultColumnPinning,\n\t\tonColumnPinningChange\n\t});\n\tconst baseTableColumnState = useMemo<BaseTableColumnState>(\n\t\t() => ({\n\t\t\tcolumnOrder: resolvedColumnOrder,\n\t\t\tcolumnPinning: resolvedColumnPinning,\n\t\t\tcolumnSizing: resolvedColumnSizing,\n\t\t\tcolumnVisibility: resolvedColumnVisibility\n\t\t}),\n\t\t[resolvedColumnOrder, resolvedColumnPinning, resolvedColumnSizing, resolvedColumnVisibility]\n\t);\n\n\tconst emitReachEnd = useEffectEvent(() => {\n\t\tonReachEnd?.();\n\t});\n\n\tuseEffect(() => {\n\t\tif (!onReachEnd || !scrollableRef.current || !sentinelRef.current || isLoading) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst observer = new IntersectionObserver(\n\t\t\t(entries) => {\n\t\t\t\tconst entry = entries[0];\n\n\t\t\t\tif (entry?.isIntersecting) {\n\t\t\t\t\temitReachEnd();\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\troot: scrollableRef.current,\n\t\t\t\tthreshold: 0.1\n\t\t\t}\n\t\t);\n\n\t\tobserver.observe(sentinelRef.current);\n\n\t\treturn () => observer.disconnect();\n\t}, [isLoading, onReachEnd, tableData.length]);\n\n\tconst table = useTable({\n\t\tfeatures: foundationTableFeatures,\n\t\tdata: tableData as TData[],\n\t\tcolumns: columns as TableColumnDef<TData>[],\n\t\tstate: {\n\t\t\tcolumnOrder: resolvedColumnOrder,\n\t\t\tcolumnPinning: resolvedColumnPinning,\n\t\t\tcolumnSizing: resolvedColumnSizing,\n\t\t\tcolumnVisibility: resolvedColumnVisibility,\n\t\t\trowSelection\n\t\t},\n\t\tonColumnOrderChange: handleColumnOrderChange,\n\t\tonColumnPinningChange: handleColumnPinningChange,\n\t\tonColumnSizingChange: handleColumnSizingChange,\n\t\tonColumnVisibilityChange: handleColumnVisibilityChange,\n\t\tgetRowId: (row, index) => resolveRowId(row, index),\n\t\tenableMultiRowSelection: selectionMode === \"multi\",\n\t\tenableRowSelection: (row) => {\n\t\t\tif (selectionMode === \"none\") {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn getRowCanSelect ? getRowCanSelect(row.original) : true;\n\t\t}\n\t});\n\n\tconst visibleLeafColumns = getOrderedVisibleLeafColumns(table, baseTableColumnState);\n\tconst rowModelRows = table.getRowModel().rows;\n\tconst mergedCellLayout = useMemo(\n\t\t() =>\n\t\t\tbuildBaseTableMergedCellsLayout({\n\t\t\t\trows: rowModelRows,\n\t\t\t\tcolumns: visibleLeafColumns\n\t\t\t}),\n\t\t[rowModelRows, visibleLeafColumns]\n\t);\n\tconst leadingColumnId = visibleLeafColumns[0]?.id;\n\n\t/**\n\t * Активирует строку: обновляет выбор в соответствии с режимом и вызывает внешний callback.\n\t */\n\tconst activateRow = (row: FoundationTableRow<TData>) => {\n\t\tactivateRowSelection(row.id, row.getCanSelect());\n\t\tonRowClick?.(row.original);\n\t};\n\n\treturn (\n\t\t<BaseTable\n\t\t\ttable={table}\n\t\t\tcolumnState={baseTableColumnState}\n\t\t\ttitle={title}\n\t\t\tisLoading={isLoading}\n\t\t\tisFetching={isFetching}\n\t\t\tclassName={className}\n\t\t\tminHeight={minHeight}\n\t\t\ttableClassName={tableClassName}\n\t\t\tselectionMode={selectionMode}\n\t\t\tscrollableRef={scrollableRef}\n\t\t\tonActivateRow={selectionMode !== \"none\" || onRowClick ? activateRow : undefined}\n\t\t\tisRowInteractive={(row) => Boolean(onRowClick || (selectionMode !== \"none\" && row.getCanSelect()))}\n\t\t\tgetRowClassName={(row) => getRowClassName?.(row.original)}\n\t\t\tgetCellClassName={({ row, cell }) =>\n\t\t\t\tcell.column.id === leadingColumnId && row.getIsSelected() ? styles.selectedIndicatorCell : undefined\n\t\t\t}\n\t\t\tgetCellLayout={({ cell }) => mergedCellLayout.get(cell.id)}\n\t\t\trenderHeaderContextMenu={renderHeaderContextMenu}\n\t\t\tenableColumnResizing={enableColumnResizing}\n\t\t\tenableColumnReordering={enableColumnReordering}\n\t\t\tcolumnResizeMinWidth={columnResizeMinWidth}\n\t\t\trenderCellContent={(args) => {\n\t\t\t\tconst displayValue = formatPipelineDisplayValue({\n\t\t\t\t\tfield: formattingSnapshot.runtimeByColumnId[args.cell.column.id],\n\t\t\t\t\trawValue: args.cell.getValue(),\n\t\t\t\t\trowData: args.row.original as TableFormulaRowData,\n\t\t\t\t\trowKind: \"plain\"\n\t\t\t\t});\n\t\t\t\tconst defaultContent = !shouldUseTableFormatting({\n\t\t\t\t\tcolumnId: args.cell.column.id,\n\t\t\t\t\truntimeByColumnId: formattingSnapshot.runtimeByColumnId,\n\t\t\t\t\tcustomCellColumnIds: formattingSnapshot.customCellColumnIds\n\t\t\t\t}) ? (\n\t\t\t\t\targs.defaultContent\n\t\t\t\t) : (\n\t\t\t\t\t<FormattedTableCell displayValue={displayValue} align={args.columnMeta?.align} />\n\t\t\t\t);\n\n\t\t\t\tif (renderCellContent) {\n\t\t\t\t\treturn renderCellContent({\n\t\t\t\t\t\t...args,\n\t\t\t\t\t\tdefaultContent,\n\t\t\t\t\t\tdisplayValue\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\treturn defaultContent;\n\t\t\t}}\n\t\t\tafterTableContent={onReachEnd ? <div ref={sentinelRef} className={styles.sentinel} aria-hidden=\"true\" /> : null}\n\t\t/>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"table-OvvWkKfy.js","names":[],"sources":["../../src/table/Table.module.scss","../../src/table/Table.tsx"],"sourcesContent":[".selectedIndicatorCell {\n\tbox-shadow: inset 0.1875rem 0 0 var(--accent-text);\n}\n\n.sentinel {\n\theight: 1px;\n}\n","import { useEffect, useEffectEvent, useMemo, useRef } from \"react\";\n\nimport { formatPipelineDisplayValue } from \"@ryuzaki13/react-foundation-lib/formatters\";\nimport { TableFormulaRowData } from \"@ryuzaki13/react-foundation-lib/formulas\";\nimport {\n\ttype FoundationTableRow,\n\tfoundationTableFeatures,\n\ttype TableColumnDef,\n\ttype TableColumnOrderState,\n\ttype TableColumnSizingState,\n\ttype TableColumnVisibilityState,\n\ttype TableSelectionMode,\n\tuseTableRowSelection\n} from \"@ryuzaki13/react-foundation-lib/table\";\nimport { useTable } from \"@tanstack/react-table\";\n\nimport {\n\tBaseTable,\n\tbuildBaseTableMergedCellsLayout,\n\tbuildTableFormattingSnapshot,\n\tFormattedTableCell,\n\tgetOrderedVisibleLeafColumns,\n\tshouldUseTableFormatting,\n\tuseTableColumnOrder,\n\tuseTableColumnPinning,\n\tuseTableColumnSizing,\n\tuseTableColumnVisibility,\n\ttype BaseTableColumnState,\n\ttype BaseTableProps,\n\ttype TableColumnPinningState\n} from \"../base-table\";\n\nimport styles from \"./Table.module.scss\";\n\n/**\n * Возвращает индекс как строковый id, если внешний id не передан.\n */\nfunction defaultGetRowId<TData>(_row: TData, index: number): string {\n\treturn String(index);\n}\n\n/**\n * Пропсы компонента Table.\n *\n * Компонент предназначен для плоских данных и по API осознанно сближен с TreeTable.\n */\nexport interface TableProps<TData extends object> {\n\t/**\n\t * Необязательный заголовок над таблицей.\n\t */\n\ttitle?: string;\n\t/**\n\t * Признак первичной загрузки.\n\t */\n\tisLoading?: boolean;\n\t/**\n\t * Признак фоновой догрузки или обновления данных.\n\t */\n\tisFetching?: boolean;\n\t/**\n\t * Плоский источник строк.\n\t */\n\tdata: readonly TData[] | undefined | null;\n\t/**\n\t * Описание колонок таблицы.\n\t */\n\tcolumns: readonly TableColumnDef<TData>[];\n\t/**\n\t * Режим выбора строк.\n\t */\n\tselectionMode?: TableSelectionMode;\n\t/**\n\t * Внешний список выбранных строк.\n\t *\n\t * Если передан, таблица синхронизирует визуальное выделение с этим набором id.\n\t */\n\tselectedRowIds?: readonly string[];\n\t/**\n\t * Стабильный идентификатор строки.\n\t *\n\t * Если не задан, используется индекс строки.\n\t */\n\tgetRowId?: (row: TData, index: number) => string;\n\t/**\n\t * Дополнительный CSS-класс корневого контейнера.\n\t */\n\tclassName?: string;\n\tminHeight?: `${number}em` | `${number}%`;\n\t/**\n\t * Дополнительный CSS-класс тега `table`.\n\t */\n\ttableClassName?: string;\n\t/**\n\t * Внешнее controlled-состояние видимости колонок.\n\t */\n\tcolumnVisibility?: TableColumnVisibilityState;\n\t/**\n\t * Стартовое uncontrolled-состояние видимости колонок.\n\t */\n\tdefaultColumnVisibility?: TableColumnVisibilityState;\n\t/**\n\t * Внешнее controlled-состояние порядка колонок.\n\t */\n\tcolumnOrder?: readonly string[];\n\t/**\n\t * Стартовое uncontrolled-состояние порядка колонок.\n\t */\n\tdefaultColumnOrder?: readonly string[];\n\t/**\n\t * Внешнее controlled-состояние ширин колонок в px.\n\t */\n\tcolumnSizing?: TableColumnSizingState;\n\t/**\n\t * Стартовое uncontrolled-состояние ширин колонок в px.\n\t */\n\tdefaultColumnSizing?: TableColumnSizingState;\n\t/**\n\t * Внешнее controlled-состояние start-pinning для колонок.\n\t */\n\tcolumnPinning?: TableColumnPinningState;\n\t/**\n\t * Стартовое uncontrolled-состояние start-pinning для колонок.\n\t */\n\tdefaultColumnPinning?: TableColumnPinningState;\n\t/**\n\t * Включает изменение ширины колонок через header-handle.\n\t */\n\tenableColumnResizing?: boolean;\n\t/**\n\t * Включает изменение порядка колонок через drag&drop заголовков.\n\t */\n\tenableColumnReordering?: boolean;\n\t/**\n\t * Минимальная ширина колонки при resize в px.\n\t */\n\tcolumnResizeMinWidth?: number;\n\t/**\n\t * Вызывается после изменения видимости колонок.\n\t */\n\tonColumnVisibilityChange?: (state: TableColumnVisibilityState) => void;\n\t/**\n\t * Вызывается после изменения порядка колонок.\n\t */\n\tonColumnOrderChange?: (state: TableColumnOrderState) => void;\n\t/**\n\t * Вызывается после изменения ширины колонок.\n\t */\n\tonColumnSizingChange?: (state: TableColumnSizingState) => void;\n\t/**\n\t * Вызывается после изменения start-pinning state.\n\t */\n\tonColumnPinningChange?: (state: TableColumnPinningState) => void;\n\t/**\n\t * Вызывается при активации строки кликом или клавиатурой.\n\t */\n\tonRowClick?: (row: TData) => void;\n\t/**\n\t * Вызывается после изменения выбранных строк.\n\t */\n\tonRowSelectionChange?: (rows: TData[]) => void;\n\t/**\n\t * Вызывается при достижении конца таблицы внутри scroll-контейнера.\n\t */\n\tonReachEnd?: () => void;\n\t/**\n\t * Позволяет запретить выбор отдельных строк.\n\t */\n\tgetRowCanSelect?: (row: TData) => boolean;\n\t/**\n\t * Позволяет добавить CSS-класс для конкретной строки.\n\t */\n\tgetRowClassName?: (row: TData) => string | undefined;\n\t/**\n\t * Контекстное меню заголовка колонки. Используется для общих runtime-действий\n\t * вроде server sorting без встраивания доменной логики в shared-таблицу.\n\t */\n\trenderHeaderContextMenu?: BaseTableProps<TData>[\"renderHeaderContextMenu\"];\n\t/**\n\t * Тонкая точка расширения содержимого ячейки поверх стандартного форматирования.\n\t *\n\t * В отличие от `column.cell`, этот слот не отключает общий formatting-runtime:\n\t * `defaultContent` уже содержит отформатированное значение, если оно применимо.\n\t */\n\trenderCellContent?: BaseTableProps<TData>[\"renderCellContent\"];\n}\n\n/**\n * Плоская таблица на базе TanStack Table как React-альтернатива `sap.m.Table`.\n */\nexport function Table<TData extends object>({\n\ttitle,\n\tisLoading,\n\tisFetching,\n\tdata,\n\tcolumns,\n\tselectionMode = \"none\",\n\tselectedRowIds,\n\tgetRowId,\n\tclassName,\n\tminHeight,\n\ttableClassName,\n\tcolumnVisibility,\n\tdefaultColumnVisibility,\n\tcolumnOrder,\n\tdefaultColumnOrder,\n\tcolumnSizing,\n\tdefaultColumnSizing,\n\tcolumnPinning,\n\tdefaultColumnPinning,\n\tenableColumnResizing = false,\n\tenableColumnReordering = false,\n\tcolumnResizeMinWidth,\n\tonColumnVisibilityChange,\n\tonColumnOrderChange,\n\tonColumnSizingChange,\n\tonColumnPinningChange,\n\tonRowClick,\n\tonRowSelectionChange,\n\tonReachEnd,\n\tgetRowCanSelect,\n\tgetRowClassName,\n\trenderHeaderContextMenu,\n\trenderCellContent\n}: TableProps<TData>) {\n\tconst tableData = useMemo(() => data ?? [], [data]);\n\tconst formattingSnapshot = useMemo(() => buildTableFormattingSnapshot(columns), [columns]);\n\tconst resolveRowId = getRowId ?? defaultGetRowId<TData>;\n\tconst rowById = useMemo(() => new Map(tableData.map((row, index) => [resolveRowId(row, index), row])), [resolveRowId, tableData]);\n\tconst availableRowIds = useMemo(() => Array.from(rowById.keys()), [rowById]);\n\tconst scrollableRef = useRef<HTMLDivElement | null>(null);\n\tconst sentinelRef = useRef<HTMLDivElement | null>(null);\n\n\tconst { rowSelection, activateRowSelection } = useTableRowSelection({\n\t\tavailableRowIds,\n\t\trowById,\n\t\tselectionMode,\n\t\tselectedRowIds,\n\t\tonRowSelectionChange\n\t});\n\tconst { columnVisibility: resolvedColumnVisibility, onColumnVisibilityChange: handleColumnVisibilityChange } = useTableColumnVisibility(\n\t\t{\n\t\t\tcolumnVisibility,\n\t\t\tdefaultColumnVisibility,\n\t\t\tonColumnVisibilityChange\n\t\t}\n\t);\n\tconst { columnOrder: resolvedColumnOrder, onColumnOrderChange: handleColumnOrderChange } = useTableColumnOrder({\n\t\tcolumnOrder,\n\t\tdefaultColumnOrder,\n\t\tonColumnOrderChange\n\t});\n\tconst { columnSizing: resolvedColumnSizing, onColumnSizingChange: handleColumnSizingChange } = useTableColumnSizing({\n\t\tcolumnSizing,\n\t\tdefaultColumnSizing,\n\t\tcolumnResizeMinWidth,\n\t\tonColumnSizingChange\n\t});\n\tconst { columnPinning: resolvedColumnPinning, onColumnPinningChange: handleColumnPinningChange } = useTableColumnPinning({\n\t\tcolumnPinning,\n\t\tdefaultColumnPinning,\n\t\tonColumnPinningChange\n\t});\n\tconst baseTableColumnState = useMemo<BaseTableColumnState>(\n\t\t() => ({\n\t\t\tcolumnOrder: resolvedColumnOrder,\n\t\t\tcolumnPinning: resolvedColumnPinning,\n\t\t\tcolumnSizing: resolvedColumnSizing,\n\t\t\tcolumnVisibility: resolvedColumnVisibility\n\t\t}),\n\t\t[resolvedColumnOrder, resolvedColumnPinning, resolvedColumnSizing, resolvedColumnVisibility]\n\t);\n\n\tconst emitReachEnd = useEffectEvent(() => {\n\t\tonReachEnd?.();\n\t});\n\n\tuseEffect(() => {\n\t\tif (!onReachEnd || !scrollableRef.current || !sentinelRef.current || isLoading) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst observer = new IntersectionObserver(\n\t\t\t(entries) => {\n\t\t\t\tconst entry = entries[0];\n\n\t\t\t\tif (entry?.isIntersecting) {\n\t\t\t\t\temitReachEnd();\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\troot: scrollableRef.current,\n\t\t\t\tthreshold: 0.1\n\t\t\t}\n\t\t);\n\n\t\tobserver.observe(sentinelRef.current);\n\n\t\treturn () => observer.disconnect();\n\t}, [isLoading, onReachEnd, tableData.length]);\n\n\tconst table = useTable({\n\t\tfeatures: foundationTableFeatures,\n\t\tdata: tableData as TData[],\n\t\tcolumns: columns as TableColumnDef<TData>[],\n\t\tstate: {\n\t\t\tcolumnOrder: resolvedColumnOrder,\n\t\t\tcolumnPinning: resolvedColumnPinning,\n\t\t\tcolumnSizing: resolvedColumnSizing,\n\t\t\tcolumnVisibility: resolvedColumnVisibility,\n\t\t\trowSelection\n\t\t},\n\t\tonColumnOrderChange: handleColumnOrderChange,\n\t\tonColumnPinningChange: handleColumnPinningChange,\n\t\tonColumnSizingChange: handleColumnSizingChange,\n\t\tonColumnVisibilityChange: handleColumnVisibilityChange,\n\t\tgetRowId: (row, index) => resolveRowId(row, index),\n\t\tenableMultiRowSelection: selectionMode === \"multi\",\n\t\tenableRowSelection: (row) => {\n\t\t\tif (selectionMode === \"none\") {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn getRowCanSelect ? getRowCanSelect(row.original) : true;\n\t\t}\n\t});\n\n\tconst visibleLeafColumns = getOrderedVisibleLeafColumns(table, baseTableColumnState);\n\tconst rowModelRows = table.getRowModel().rows;\n\tconst mergedCellLayout = useMemo(\n\t\t() =>\n\t\t\tbuildBaseTableMergedCellsLayout({\n\t\t\t\trows: rowModelRows,\n\t\t\t\tcolumns: visibleLeafColumns\n\t\t\t}),\n\t\t[rowModelRows, visibleLeafColumns]\n\t);\n\tconst leadingColumnId = visibleLeafColumns[0]?.id;\n\n\t/**\n\t * Активирует строку: обновляет выбор в соответствии с режимом и вызывает внешний callback.\n\t */\n\tconst activateRow = (row: FoundationTableRow<TData>) => {\n\t\tactivateRowSelection(row.id, row.getCanSelect());\n\t\tonRowClick?.(row.original);\n\t};\n\n\treturn (\n\t\t<BaseTable\n\t\t\ttable={table}\n\t\t\tcolumnState={baseTableColumnState}\n\t\t\ttitle={title}\n\t\t\tisLoading={isLoading}\n\t\t\tisFetching={isFetching}\n\t\t\tclassName={className}\n\t\t\tminHeight={minHeight}\n\t\t\ttableClassName={tableClassName}\n\t\t\tselectionMode={selectionMode}\n\t\t\tscrollableRef={scrollableRef}\n\t\t\tonActivateRow={selectionMode !== \"none\" || onRowClick ? activateRow : undefined}\n\t\t\tisRowInteractive={(row) => Boolean(onRowClick || (selectionMode !== \"none\" && row.getCanSelect()))}\n\t\t\tgetRowClassName={(row) => getRowClassName?.(row.original)}\n\t\t\tgetCellClassName={({ row, cell }) =>\n\t\t\t\tcell.column.id === leadingColumnId && row.getIsSelected() ? styles.selectedIndicatorCell : undefined\n\t\t\t}\n\t\t\tgetCellLayout={({ cell }) => mergedCellLayout.get(cell.id)}\n\t\t\trenderHeaderContextMenu={renderHeaderContextMenu}\n\t\t\tenableColumnResizing={enableColumnResizing}\n\t\t\tenableColumnReordering={enableColumnReordering}\n\t\t\tcolumnResizeMinWidth={columnResizeMinWidth}\n\t\t\trenderCellContent={(args) => {\n\t\t\t\tconst displayValue = formatPipelineDisplayValue({\n\t\t\t\t\tfield: formattingSnapshot.runtimeByColumnId[args.cell.column.id],\n\t\t\t\t\trawValue: args.cell.getValue(),\n\t\t\t\t\trowData: args.row.original as TableFormulaRowData,\n\t\t\t\t\trowKind: \"plain\"\n\t\t\t\t});\n\t\t\t\tconst defaultContent = !shouldUseTableFormatting({\n\t\t\t\t\tcolumnId: args.cell.column.id,\n\t\t\t\t\truntimeByColumnId: formattingSnapshot.runtimeByColumnId,\n\t\t\t\t\tcustomCellColumnIds: formattingSnapshot.customCellColumnIds\n\t\t\t\t}) ? (\n\t\t\t\t\targs.defaultContent\n\t\t\t\t) : (\n\t\t\t\t\t<FormattedTableCell displayValue={displayValue} align={args.columnMeta?.align} />\n\t\t\t\t);\n\n\t\t\t\tif (renderCellContent) {\n\t\t\t\t\treturn renderCellContent({\n\t\t\t\t\t\t...args,\n\t\t\t\t\t\tdefaultContent,\n\t\t\t\t\t\tdisplayValue\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\treturn defaultContent;\n\t\t\t}}\n\t\t\tafterTableContent={onReachEnd ? <div ref={sentinelRef} className={styles.sentinel} aria-hidden=\"true\" /> : null}\n\t\t/>\n\t);\n}\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { n as e } from "../chunks/button-DudCl375.js";
2
- import { l as t } from "../chunks/misc-Cm_LDrUD.js";
2
+ import { l as t } from "../chunks/misc-BjdDK6mm.js";
3
3
  import { cn as n } from "@ryuzaki13/react-foundation-lib/utils";
4
4
  import { ChevronsLeftIcon as r, ChevronsRightIcon as i } from "lucide-react";
5
5
  import { jsx as a, jsxs as o } from "react/jsx-runtime";
@@ -1,6 +1,6 @@
1
1
  import { n as e } from "../chunks/button-DudCl375.js";
2
2
  import { r as t } from "../chunks/grid-CFuzBigM.js";
3
- import { i as n, n as r, r as i } from "../chunks/modal-Dz5TzkTB.js";
3
+ import { i as n, n as r, r as i } from "../chunks/modal-CBGNsqrq.js";
4
4
  import { s as a } from "../chunks/input-CuRK9Vbz.js";
5
5
  import { t as o } from "../chunks/input-files-B8j6Pb_M.js";
6
6
  import { Fragment as s, jsx as c, jsxs as l } from "react/jsx-runtime";
@@ -1,5 +1,5 @@
1
1
  import { t as e } from "../chunks/grid-CFuzBigM.js";
2
- import { c as t, h as n } from "../chunks/misc-Cm_LDrUD.js";
2
+ import { c as t, h as n } from "../chunks/misc-BjdDK6mm.js";
3
3
  import { cn as r } from "@ryuzaki13/react-foundation-lib/utils";
4
4
  import { jsx as i } from "react/jsx-runtime";
5
5
  import a, { Children as o, useLayoutEffect as s, useReducer as c, useRef as l, useState as u } from "react";
@@ -1,12 +1,12 @@
1
- import { AriaRole, PropsWithChildren } from "react";
2
- import { TextColor } from "../text";
3
- interface MessageProps extends PropsWithChildren {
1
+ import { type AriaAttributes, type AriaRole, type PropsWithChildren } from "react";
2
+ import { type TextColor } from "../text";
3
+ type MessageProps = PropsWithChildren<Readonly<{
4
4
  className?: string;
5
5
  color?: TextColor;
6
6
  minHeight?: string | number;
7
7
  uppercase?: boolean;
8
8
  role?: AriaRole;
9
- }
10
- export declare function Message({ className, children, color, role, minHeight, uppercase }: MessageProps): import("react").JSX.Element;
9
+ }>> & AriaAttributes;
10
+ export declare function Message({ className, children, color, role, minHeight, uppercase, ...ariaAttributes }: MessageProps): import("react").JSX.Element;
11
11
  export {};
12
12
  //# sourceMappingURL=Message.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Message.d.ts","sourceRoot":"","sources":["../../src/misc/Message.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAKpD,OAAO,EAAQ,SAAS,EAAE,MAAM,SAAS,CAAC;AAE1C,UAAU,YAAa,SAAQ,iBAAiB;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,QAAQ,CAAC;CAChB;AAED,wBAAgB,OAAO,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAe,EAAE,IAAI,EAAE,SAAS,EAAE,SAAgB,EAAE,EAAE,YAAY,+BAQhH"}
1
+ {"version":3,"file":"Message.d.ts","sourceRoot":"","sources":["../../src/misc/Message.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,QAAQ,EAAE,KAAK,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAKnF,OAAO,EAAQ,KAAK,SAAS,EAAE,MAAM,SAAS,CAAC;AAE/C,KAAK,YAAY,GAAG,iBAAiB,CACpC,QAAQ,CAAC;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,QAAQ,CAAC;CAChB,CAAC,CACF,GACA,cAAc,CAAC;AAEhB,wBAAgB,OAAO,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAe,EAAE,IAAI,EAAE,SAAS,EAAE,SAAgB,EAAE,GAAG,cAAc,EAAE,EAAE,YAAY,+BAQnI"}
@@ -1,10 +1,10 @@
1
- import { AriaRole } from "react";
2
- interface NoDataProps {
1
+ import { type AriaAttributes, type AriaRole } from "react";
2
+ type NoDataProps = Readonly<{
3
3
  className?: string;
4
4
  text?: string;
5
5
  minHeight?: string | number;
6
6
  role?: AriaRole;
7
- }
8
- export declare function NoData({ className, text, role, minHeight }: NoDataProps): import("react").JSX.Element;
7
+ }> & AriaAttributes;
8
+ export declare function NoData({ className, text, role, minHeight, ...ariaAttributes }: NoDataProps): import("react").JSX.Element;
9
9
  export {};
10
10
  //# sourceMappingURL=NoData.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NoData.d.ts","sourceRoot":"","sources":["../../src/misc/NoData.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAIjC,UAAU,WAAW;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,IAAI,CAAC,EAAE,QAAQ,CAAC;CAChB;AAED,wBAAgB,MAAM,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,SAAiB,EAAE,EAAE,WAAW,+BAM/E"}
1
+ {"version":3,"file":"NoData.d.ts","sourceRoot":"","sources":["../../src/misc/NoData.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,QAAQ,EAAE,MAAM,OAAO,CAAC;AAI3D,KAAK,WAAW,GAAG,QAAQ,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,IAAI,CAAC,EAAE,QAAQ,CAAC;CAChB,CAAC,GACD,cAAc,CAAC;AAEhB,wBAAgB,MAAM,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,SAAiB,EAAE,GAAG,cAAc,EAAE,EAAE,WAAW,+BAMlG"}
@@ -1,9 +1,9 @@
1
- import { AriaRole, PropsWithChildren } from "react";
2
- interface NoticeProps extends PropsWithChildren {
1
+ import { type AriaAttributes, type AriaRole, type PropsWithChildren } from "react";
2
+ type NoticeProps = PropsWithChildren<Readonly<{
3
3
  isError?: boolean;
4
4
  className?: string;
5
5
  role?: AriaRole;
6
- }
7
- export declare function Notice({ className, isError, role, children }: NoticeProps): import("react").JSX.Element;
6
+ }>> & AriaAttributes;
7
+ export declare function Notice({ className, isError, role, children, ...ariaAttributes }: NoticeProps): import("react").JSX.Element;
8
8
  export {};
9
9
  //# sourceMappingURL=Notice.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Notice.d.ts","sourceRoot":"","sources":["../../src/misc/Notice.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAIpD,UAAU,WAAY,SAAQ,iBAAiB;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,QAAQ,CAAC;CAChB;AAED,wBAAgB,MAAM,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,WAAW,+BAMzE"}
1
+ {"version":3,"file":"Notice.d.ts","sourceRoot":"","sources":["../../src/misc/Notice.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,QAAQ,EAAE,KAAK,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAInF,KAAK,WAAW,GAAG,iBAAiB,CACnC,QAAQ,CAAC;IACR,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,QAAQ,CAAC;CAChB,CAAC,CACF,GACA,cAAc,CAAC;AAEhB,wBAAgB,MAAM,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,cAAc,EAAE,EAAE,WAAW,+BAM5F"}
@@ -1,2 +1,2 @@
1
- import { _ as e, a as t, b as n, c as r, d as i, f as a, g as o, h as s, i as c, l, m as u, n as d, o as f, p, r as m, s as h, t as g, u as _, v, y } from "../chunks/misc-Cm_LDrUD.js";
1
+ import { _ as e, a as t, b as n, c as r, d as i, f as a, g as o, h as s, i as c, l, m as u, n as d, o as f, p, r as m, s as h, t as g, u as _, v, y } from "../chunks/misc-BjdDK6mm.js";
2
2
  export { n as AnimatedLogo, y as AnimatedLogoSegment, v as CopyTextWrapper, d as ErrorIcon, e as IconWrapper, m as InformationIcon, u as LazyDynamicComponent, a as LazyValue, s as LoadingMessage, o as Message, i as NoData, _ as Notice, l as OneStepScroller, c as RenderStateIcon, r as Scrollable, p as SkeletonLine, t as StateIcon, g as StateWrapper, f as SuccessIcon, h as WarningIcon };
@@ -1,2 +1,2 @@
1
- import { a as e, i as t, n, o as r, r as i, s as a, t as o } from "../chunks/modal-Dz5TzkTB.js";
1
+ import { a as e, i as t, n, o as r, r as i, s as a, t as o } from "../chunks/modal-CBGNsqrq.js";
2
2
  export { n as Modal, i as ModalContent, t as ModalFooter, r as ModalManagerContext, o as ModalManagerProvider, e as ModalToolbar, a as useModalManager };
@@ -1,4 +1,4 @@
1
- import { t as e } from "../chunks/table-BDY9Zw--.js";
1
+ import { t as e } from "../chunks/table-OvvWkKfy.js";
2
2
  import { jsx as t } from "react/jsx-runtime";
3
3
  import { useMemo as n } from "react";
4
4
  //#region src/simple-table/SimpleTable.tsx
@@ -1,2 +1,2 @@
1
- import { t as e } from "../chunks/table-BDY9Zw--.js";
1
+ import { t as e } from "../chunks/table-OvvWkKfy.js";
2
2
  export { e as Table };
@@ -1,6 +1,6 @@
1
1
  import { t as e } from "../chunks/ui.module-oRwY3Zli.js";
2
2
  import { n as t } from "../chunks/uiClasses-CQj47jkF.js";
3
- import { d as n, h as r, l as i } from "../chunks/misc-Cm_LDrUD.js";
3
+ import { d as n, h as r, l as i } from "../chunks/misc-BjdDK6mm.js";
4
4
  import { cn as a, getRovingFocusTargetIndex as o } from "@ryuzaki13/react-foundation-lib/utils";
5
5
  import { Fragment as s, jsx as c, jsxs as l } from "react/jsx-runtime";
6
6
  import { Children as u, isValidElement as d, useId as f, useMemo as p, useRef as m, useState as h } from "react";
@@ -1,4 +1,4 @@
1
- import React, { AriaRole, CSSProperties } from "react";
1
+ import { type AriaAttributes, type AriaRole, type CSSProperties, type ReactNode } from "react";
2
2
  export type TextSize = "xs" | "sm" | "md" | "lg" | "xl";
3
3
  export type TextColor = "primary" | "secondary" | "muted" | "error" | "warning" | "success" | "info" | "brand" | "accent";
4
4
  export type TextWeight = "lighter" | "light" | "regular" | "medium" | "bold" | "bolder";
@@ -14,10 +14,10 @@ interface BaseTextProps {
14
14
  style?: CSSProperties;
15
15
  role?: AriaRole;
16
16
  }
17
- interface TextProps extends BaseTextProps {
18
- children: React.ReactNode;
17
+ interface TextProps extends BaseTextProps, AriaAttributes {
18
+ children: ReactNode;
19
19
  as?: "code" | "span" | "p" | "div" | "h2" | "h3" | "h4" | "h5" | "h6";
20
20
  }
21
- export declare function Text({ children, as, style, role, ...props }: TextProps): React.JSX.Element;
21
+ export declare function Text({ children, as, style, role, size, color, weight, italic, uppercase, wrap, className, ...ariaAttributes }: TextProps): import("react").JSX.Element;
22
22
  export {};
23
23
  //# sourceMappingURL=Text.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Text.d.ts","sourceRoot":"","sources":["../../src/text/Text.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAW,MAAM,OAAO,CAAC;AAIhE,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AACxD,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AAC1H,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC;AACxF,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC;AAoCzC,UAAU,aAAa;IACtB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,IAAI,CAAC,EAAE,QAAQ,CAAC;CAChB;AAED,UAAU,SAAU,SAAQ,aAAa;IACxC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,GAAG,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;CACtE;AA6BD,wBAAgB,IAAI,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,SAAS,qBAStE"}
1
+ {"version":3,"file":"Text.d.ts","sourceRoot":"","sources":["../../src/text/Text.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,QAAQ,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAW,MAAM,OAAO,CAAC;AAIxG,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AACxD,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AAC1H,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC;AACxF,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC;AAoCzC,UAAU,aAAa;IACtB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,IAAI,CAAC,EAAE,QAAQ,CAAC;CAChB;AAED,UAAU,SAAU,SAAQ,aAAa,EAAE,cAAc;IACxD,QAAQ,EAAE,SAAS,CAAC;IACpB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,GAAG,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;CACtE;AA6BD,wBAAgB,IAAI,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,cAAc,EAAE,EAAE,SAAS,+BASxI"}
@@ -50,11 +50,20 @@ function u({ size: e, color: n, weight: i, italic: a, uppercase: u, wrap: d, cla
50
50
  f
51
51
  ]);
52
52
  }
53
- function d({ children: e, as: t, style: r, role: i, ...a }) {
54
- let o = u(a);
53
+ function d({ children: e, as: t, style: r, role: i, size: a, color: o, weight: s, italic: c, uppercase: l, wrap: d, className: f, ...p }) {
54
+ let m = u({
55
+ size: a,
56
+ color: o,
57
+ weight: s,
58
+ italic: c,
59
+ uppercase: l,
60
+ wrap: d,
61
+ className: f
62
+ });
55
63
  return /* @__PURE__ */ n(t || "span", {
64
+ ...p,
56
65
  role: i,
57
- className: o,
66
+ className: m,
58
67
  style: r,
59
68
  children: e
60
69
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../src/text/HighlightText.tsx","../../src/text/Text.tsx","../../src/text/TextOverflow.tsx"],"sourcesContent":["export function HighlightText({ text, highlight }: { text: string; highlight?: string }) {\n\tif (!highlight) return text;\n\treturn text\n\t\t.split(new RegExp(`(${highlight})`, \"gi\"))\n\t\t.map((part, i) => (part.toLowerCase() === highlight.toLowerCase() ? <mark key={i}>{part}</mark> : part));\n}\n","import React, { AriaRole, CSSProperties, useMemo } from \"react\";\n\nimport { cn } from \"@ryuzaki13/react-foundation-lib/utils\";\n\nexport type TextSize = \"xs\" | \"sm\" | \"md\" | \"lg\" | \"xl\";\nexport type TextColor = \"primary\" | \"secondary\" | \"muted\" | \"error\" | \"warning\" | \"success\" | \"info\" | \"brand\" | \"accent\";\nexport type TextWeight = \"lighter\" | \"light\" | \"regular\" | \"medium\" | \"bold\" | \"bolder\";\nexport type TextWrap = \"wrap\" | \"noWrap\";\n\nconst textColors: Record<TextColor, string> = {\n\tprimary: \"content0\",\n\tsecondary: \"content1\",\n\tmuted: \"content2\",\n\tinfo: \"statusInfo\",\n\tsuccess: \"statusSuccess\",\n\twarning: \"statusWarning\",\n\terror: \"statusError\",\n\tbrand: \"statusBrand\",\n\taccent: \"contentAccent\"\n};\n\nconst textSizes: Record<TextSize, string> = {\n\txs: \"fontSizeXs\",\n\tsm: \"fontSizeSm\",\n\tmd: \"fontSizeMd\",\n\tlg: \"fontSizeLg\",\n\txl: \"fontSizeXl\"\n};\n\nconst textWeights: Record<TextWeight, string> = {\n\tlighter: \"fontLighter\",\n\tlight: \"fontLight\",\n\tregular: \"fontRegular\",\n\tmedium: \"fontMedium\",\n\tbold: \"fontBold\",\n\tbolder: \"fontBolder\"\n};\n\nconst textWraps: Record<TextWrap, string> = {\n\twrap: \"textWrap\",\n\tnoWrap: \"textNoWrap\"\n};\n\ninterface BaseTextProps {\n\tsize?: TextSize;\n\tcolor?: TextColor;\n\tweight?: TextWeight;\n\titalic?: boolean;\n\tuppercase?: boolean;\n\twrap?: TextWrap;\n\tclassName?: string;\n\tstyle?: CSSProperties;\n\trole?: AriaRole;\n}\n\ninterface TextProps extends BaseTextProps {\n\tchildren: React.ReactNode;\n\tas?: \"code\" | \"span\" | \"p\" | \"div\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\";\n}\n\nfunction useTextStyles({ size, color, weight, italic, uppercase, wrap, className }: BaseTextProps) {\n\treturn useMemo(() => {\n\t\tconst classes: string[] = [];\n\n\t\tif (size) {\n\t\t\tclasses.push(textSizes[size]);\n\t\t}\n\n\t\tif (weight) {\n\t\t\tclasses.push(textWeights[weight]);\n\t\t}\n\n\t\tif (wrap) {\n\t\t\tclasses.push(textWraps[wrap]);\n\t\t}\n\n\t\tif (italic) classes.push(\"fontItalic\");\n\t\tif (uppercase) classes.push(\"textUppercase\");\n\n\t\tif (color) {\n\t\t\tclasses.push(textColors[color]);\n\t\t}\n\n\t\treturn cn(...classes, className);\n\t}, [size, weight, color, italic, uppercase, wrap, className]);\n}\n\nexport function Text({ children, as, style, role, ...props }: TextProps) {\n\tconst classes = useTextStyles(props);\n\tconst Component = as || \"span\";\n\n\treturn (\n\t\t<Component role={role} className={classes} style={style}>\n\t\t\t{children}\n\t\t</Component>\n\t);\n}\n","import { ComponentProps, ComponentType } from \"react\";\n\nimport { Placement } from \"@floating-ui/react\";\nimport { normalizeTextWithFallback } from \"@ryuzaki13/react-foundation-lib/formatters\";\n\nimport { FloatingPopover } from \"../popover\";\n\n// Базовые пропсы которые всегда будут\ninterface BaseTextOverflowProps {\n\tchildren: string;\n\tmaxChar?: number;\n\t/**\n\t * Максимальная ширина тултипа в em.\n\t */\n\tmaxWidth?: number;\n\tplacement?: Placement;\n\tcloseDelay?: number;\n\t/**\n\t * Для работы text-overflow элемент обязан быть блочным или inline-block.\n\t * Если в качестве обёртки передается инлайновый компонент, то он будет\n\t * перезаписан через стили на display: block или inline-block в зависимости\n\t * от установки данного пропса.\n\t */\n\tblock?: true;\n\tstate?: \"information\" | \"error\" | \"warning\" | \"success\" | \"negative\";\n}\n\n// Базовые пропсы которые должен принимать textWrap компонент\ninterface RequiredWrapperProps {\n\tstyle?: React.CSSProperties;\n\tclassName?: string;\n\tchildren: string;\n}\n\n// Дженерик для пропсов которые зависят от textWrap компонента\ninterface TextOverflowProps<\n\tT extends ComponentType<RequiredWrapperProps> = ComponentType<RequiredWrapperProps>\n> extends BaseTextOverflowProps {\n\ttextWrap?: T;\n\ttextWrapProps?: Omit<ComponentProps<T>, \"children\">;\n}\n\nexport function TextOverflow<T extends ComponentType<RequiredWrapperProps>>({\n\tmaxChar,\n\tplacement = \"left\",\n\tcloseDelay = 0,\n\tmaxWidth,\n\tchildren,\n\tblock,\n\tstate,\n\ttextWrap,\n\ttextWrapProps\n}: TextOverflowProps<T>) {\n\tconst textContent = normalizeTextWithFallback(children);\n\tif (!textContent.length || (maxChar && textContent.length < maxChar)) return <span>{textContent}</span>;\n\n\tconst TextWrapper = textWrap ?? \"div\";\n\n\tconst baseWrapperProps = {\n\t\tstyle: { display: block ? \"block\" : \"inline-block\", width: maxChar ? `${maxChar - 3}ch` : \"auto\" },\n\t\tclassName: \"textOverflow\"\n\t};\n\n\t// Правильный порядок слияния: baseWrapperProps приоритетнее\n\tconst mergedProps = {\n\t\t...textWrapProps,\n\t\t...baseWrapperProps,\n\t\tstyle: {\n\t\t\t...textWrapProps?.style,\n\t\t\t...baseWrapperProps.style // width приоритетнее\n\t\t},\n\t\tclassName: [textWrapProps?.className, baseWrapperProps.className].filter(Boolean).join(\" \")\n\t};\n\n\treturn (\n\t\t<FloatingPopover state={state} placement={placement} openOnHover content={textContent} closeDelay={closeDelay} maxWidth={maxWidth}>\n\t\t\t<TextWrapper {...mergedProps}>{textContent}</TextWrapper>\n\t\t</FloatingPopover>\n\t);\n}\n"],"mappings":";;;;;;AAAA,SAAgB,EAAc,EAAE,SAAM,gBAAmD;CAExF,OADK,IACE,EACL,MAAU,OAAO,IAAI,EAAU,IAAI,IAAI,CAAC,CAAC,CACzC,KAAK,GAAM,MAAO,EAAK,YAAY,MAAM,EAAU,YAAY,IAAI,kBAAC,QAAD,EAAA,UAAe,EAAW,GAAf,CAAe,IAAI,CAAK,IAHjF;AAIxB;;;ACIA,IAAM,IAAwC;CAC7C,SAAS;CACT,WAAW;CACX,OAAO;CACP,MAAM;CACN,SAAS;CACT,SAAS;CACT,OAAO;CACP,OAAO;CACP,QAAQ;AACT,GAEM,IAAsC;CAC3C,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;AACL,GAEM,IAA0C;CAC/C,SAAS;CACT,OAAO;CACP,SAAS;CACT,QAAQ;CACR,MAAM;CACN,QAAQ;AACT,GAEM,IAAsC;CAC3C,MAAM;CACN,QAAQ;AACT;AAmBA,SAAS,EAAc,EAAE,SAAM,UAAO,WAAQ,WAAQ,cAAW,SAAM,gBAA4B;CAClG,OAAO,QAAc;EACpB,IAAM,IAAoB,CAAC;EAqB3B,OAnBI,KACH,EAAQ,KAAK,EAAU,EAAK,GAGzB,KACH,EAAQ,KAAK,EAAY,EAAO,GAG7B,KACH,EAAQ,KAAK,EAAU,EAAK,GAGzB,KAAQ,EAAQ,KAAK,YAAY,GACjC,KAAW,EAAQ,KAAK,eAAe,GAEvC,KACH,EAAQ,KAAK,EAAW,EAAM,GAGxB,EAAG,GAAG,GAAS,CAAS;CAChC,GAAG;EAAC;EAAM;EAAQ;EAAO;EAAQ;EAAW;EAAM;CAAS,CAAC;AAC7D;AAEA,SAAgB,EAAK,EAAE,aAAU,OAAI,UAAO,SAAM,GAAG,KAAoB;CACxE,IAAM,IAAU,EAAc,CAAK;CAGnC,OACC,kBAHiB,KAAM,QAGvB;EAAiB;EAAM,WAAW;EAAgB;EAChD;CACS,CAAA;AAEb;;;ACtDA,SAAgB,EAA4D,EAC3E,YACA,eAAY,QACZ,gBAAa,GACb,aACA,aACA,UACA,UACA,aACA,oBACwB;CACxB,IAAM,IAAc,EAA0B,CAAQ;CACtD,IAAI,CAAC,EAAY,UAAW,KAAW,EAAY,SAAS,GAAU,OAAO,kBAAC,QAAD,EAAA,UAAO,EAAkB,CAAA;CAEtG,IAAM,IAAc,KAAY,OAE1B,IAAmB;EACxB,OAAO;GAAE,SAAS,IAAQ,UAAU;GAAgB,OAAO,IAAU,GAAG,IAAU,EAAE,MAAM;EAAO;EACjG,WAAW;CACZ,GAGM,IAAc;EACnB,GAAG;EACH,GAAG;EACH,OAAO;GACN,GAAG,GAAe;GAClB,GAAG,EAAiB;EACrB;EACA,WAAW,CAAC,GAAe,WAAW,EAAiB,SAAS,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,KAAK,GAAG;CAC3F;CAEA,OACC,kBAAC,GAAD;EAAwB;EAAkB;EAAW,aAAA;EAAY,SAAS;EAAyB;EAAsB;EACxH,UAAA,kBAAC,GAAD;GAAa,GAAI;GAAc,UAAA;EAAyB,CAAA;CACxC,CAAA;AAEnB"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../src/text/HighlightText.tsx","../../src/text/Text.tsx","../../src/text/TextOverflow.tsx"],"sourcesContent":["export function HighlightText({ text, highlight }: { text: string; highlight?: string }) {\n\tif (!highlight) return text;\n\treturn text\n\t\t.split(new RegExp(`(${highlight})`, \"gi\"))\n\t\t.map((part, i) => (part.toLowerCase() === highlight.toLowerCase() ? <mark key={i}>{part}</mark> : part));\n}\n","import { type AriaAttributes, type AriaRole, type CSSProperties, type ReactNode, useMemo } from \"react\";\n\nimport { cn } from \"@ryuzaki13/react-foundation-lib/utils\";\n\nexport type TextSize = \"xs\" | \"sm\" | \"md\" | \"lg\" | \"xl\";\nexport type TextColor = \"primary\" | \"secondary\" | \"muted\" | \"error\" | \"warning\" | \"success\" | \"info\" | \"brand\" | \"accent\";\nexport type TextWeight = \"lighter\" | \"light\" | \"regular\" | \"medium\" | \"bold\" | \"bolder\";\nexport type TextWrap = \"wrap\" | \"noWrap\";\n\nconst textColors: Record<TextColor, string> = {\n\tprimary: \"content0\",\n\tsecondary: \"content1\",\n\tmuted: \"content2\",\n\tinfo: \"statusInfo\",\n\tsuccess: \"statusSuccess\",\n\twarning: \"statusWarning\",\n\terror: \"statusError\",\n\tbrand: \"statusBrand\",\n\taccent: \"contentAccent\"\n};\n\nconst textSizes: Record<TextSize, string> = {\n\txs: \"fontSizeXs\",\n\tsm: \"fontSizeSm\",\n\tmd: \"fontSizeMd\",\n\tlg: \"fontSizeLg\",\n\txl: \"fontSizeXl\"\n};\n\nconst textWeights: Record<TextWeight, string> = {\n\tlighter: \"fontLighter\",\n\tlight: \"fontLight\",\n\tregular: \"fontRegular\",\n\tmedium: \"fontMedium\",\n\tbold: \"fontBold\",\n\tbolder: \"fontBolder\"\n};\n\nconst textWraps: Record<TextWrap, string> = {\n\twrap: \"textWrap\",\n\tnoWrap: \"textNoWrap\"\n};\n\ninterface BaseTextProps {\n\tsize?: TextSize;\n\tcolor?: TextColor;\n\tweight?: TextWeight;\n\titalic?: boolean;\n\tuppercase?: boolean;\n\twrap?: TextWrap;\n\tclassName?: string;\n\tstyle?: CSSProperties;\n\trole?: AriaRole;\n}\n\ninterface TextProps extends BaseTextProps, AriaAttributes {\n\tchildren: ReactNode;\n\tas?: \"code\" | \"span\" | \"p\" | \"div\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\";\n}\n\nfunction useTextStyles({ size, color, weight, italic, uppercase, wrap, className }: BaseTextProps) {\n\treturn useMemo(() => {\n\t\tconst classes: string[] = [];\n\n\t\tif (size) {\n\t\t\tclasses.push(textSizes[size]);\n\t\t}\n\n\t\tif (weight) {\n\t\t\tclasses.push(textWeights[weight]);\n\t\t}\n\n\t\tif (wrap) {\n\t\t\tclasses.push(textWraps[wrap]);\n\t\t}\n\n\t\tif (italic) classes.push(\"fontItalic\");\n\t\tif (uppercase) classes.push(\"textUppercase\");\n\n\t\tif (color) {\n\t\t\tclasses.push(textColors[color]);\n\t\t}\n\n\t\treturn cn(...classes, className);\n\t}, [size, weight, color, italic, uppercase, wrap, className]);\n}\n\nexport function Text({ children, as, style, role, size, color, weight, italic, uppercase, wrap, className, ...ariaAttributes }: TextProps) {\n\tconst classes = useTextStyles({ size, color, weight, italic, uppercase, wrap, className });\n\tconst Component = as || \"span\";\n\n\treturn (\n\t\t<Component {...ariaAttributes} role={role} className={classes} style={style}>\n\t\t\t{children}\n\t\t</Component>\n\t);\n}\n","import { ComponentProps, ComponentType } from \"react\";\n\nimport { Placement } from \"@floating-ui/react\";\nimport { normalizeTextWithFallback } from \"@ryuzaki13/react-foundation-lib/formatters\";\n\nimport { FloatingPopover } from \"../popover\";\n\n// Базовые пропсы которые всегда будут\ninterface BaseTextOverflowProps {\n\tchildren: string;\n\tmaxChar?: number;\n\t/**\n\t * Максимальная ширина тултипа в em.\n\t */\n\tmaxWidth?: number;\n\tplacement?: Placement;\n\tcloseDelay?: number;\n\t/**\n\t * Для работы text-overflow элемент обязан быть блочным или inline-block.\n\t * Если в качестве обёртки передается инлайновый компонент, то он будет\n\t * перезаписан через стили на display: block или inline-block в зависимости\n\t * от установки данного пропса.\n\t */\n\tblock?: true;\n\tstate?: \"information\" | \"error\" | \"warning\" | \"success\" | \"negative\";\n}\n\n// Базовые пропсы которые должен принимать textWrap компонент\ninterface RequiredWrapperProps {\n\tstyle?: React.CSSProperties;\n\tclassName?: string;\n\tchildren: string;\n}\n\n// Дженерик для пропсов которые зависят от textWrap компонента\ninterface TextOverflowProps<\n\tT extends ComponentType<RequiredWrapperProps> = ComponentType<RequiredWrapperProps>\n> extends BaseTextOverflowProps {\n\ttextWrap?: T;\n\ttextWrapProps?: Omit<ComponentProps<T>, \"children\">;\n}\n\nexport function TextOverflow<T extends ComponentType<RequiredWrapperProps>>({\n\tmaxChar,\n\tplacement = \"left\",\n\tcloseDelay = 0,\n\tmaxWidth,\n\tchildren,\n\tblock,\n\tstate,\n\ttextWrap,\n\ttextWrapProps\n}: TextOverflowProps<T>) {\n\tconst textContent = normalizeTextWithFallback(children);\n\tif (!textContent.length || (maxChar && textContent.length < maxChar)) return <span>{textContent}</span>;\n\n\tconst TextWrapper = textWrap ?? \"div\";\n\n\tconst baseWrapperProps = {\n\t\tstyle: { display: block ? \"block\" : \"inline-block\", width: maxChar ? `${maxChar - 3}ch` : \"auto\" },\n\t\tclassName: \"textOverflow\"\n\t};\n\n\t// Правильный порядок слияния: baseWrapperProps приоритетнее\n\tconst mergedProps = {\n\t\t...textWrapProps,\n\t\t...baseWrapperProps,\n\t\tstyle: {\n\t\t\t...textWrapProps?.style,\n\t\t\t...baseWrapperProps.style // width приоритетнее\n\t\t},\n\t\tclassName: [textWrapProps?.className, baseWrapperProps.className].filter(Boolean).join(\" \")\n\t};\n\n\treturn (\n\t\t<FloatingPopover state={state} placement={placement} openOnHover content={textContent} closeDelay={closeDelay} maxWidth={maxWidth}>\n\t\t\t<TextWrapper {...mergedProps}>{textContent}</TextWrapper>\n\t\t</FloatingPopover>\n\t);\n}\n"],"mappings":";;;;;;AAAA,SAAgB,EAAc,EAAE,SAAM,gBAAmD;CAExF,OADK,IACE,EACL,MAAU,OAAO,IAAI,EAAU,IAAI,IAAI,CAAC,CAAC,CACzC,KAAK,GAAM,MAAO,EAAK,YAAY,MAAM,EAAU,YAAY,IAAI,kBAAC,QAAD,EAAA,UAAe,EAAW,GAAf,CAAe,IAAI,CAAK,IAHjF;AAIxB;;;ACIA,IAAM,IAAwC;CAC7C,SAAS;CACT,WAAW;CACX,OAAO;CACP,MAAM;CACN,SAAS;CACT,SAAS;CACT,OAAO;CACP,OAAO;CACP,QAAQ;AACT,GAEM,IAAsC;CAC3C,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;AACL,GAEM,IAA0C;CAC/C,SAAS;CACT,OAAO;CACP,SAAS;CACT,QAAQ;CACR,MAAM;CACN,QAAQ;AACT,GAEM,IAAsC;CAC3C,MAAM;CACN,QAAQ;AACT;AAmBA,SAAS,EAAc,EAAE,SAAM,UAAO,WAAQ,WAAQ,cAAW,SAAM,gBAA4B;CAClG,OAAO,QAAc;EACpB,IAAM,IAAoB,CAAC;EAqB3B,OAnBI,KACH,EAAQ,KAAK,EAAU,EAAK,GAGzB,KACH,EAAQ,KAAK,EAAY,EAAO,GAG7B,KACH,EAAQ,KAAK,EAAU,EAAK,GAGzB,KAAQ,EAAQ,KAAK,YAAY,GACjC,KAAW,EAAQ,KAAK,eAAe,GAEvC,KACH,EAAQ,KAAK,EAAW,EAAM,GAGxB,EAAG,GAAG,GAAS,CAAS;CAChC,GAAG;EAAC;EAAM;EAAQ;EAAO;EAAQ;EAAW;EAAM;CAAS,CAAC;AAC7D;AAEA,SAAgB,EAAK,EAAE,aAAU,OAAI,UAAO,SAAM,SAAM,UAAO,WAAQ,WAAQ,cAAW,SAAM,cAAW,GAAG,KAA6B;CAC1I,IAAM,IAAU,EAAc;EAAE;EAAM;EAAO;EAAQ;EAAQ;EAAW;EAAM;CAAU,CAAC;CAGzF,OACC,kBAHiB,KAAM,QAGvB;EAAW,GAAI;EAAsB;EAAM,WAAW;EAAgB;EACpE;CACS,CAAA;AAEb;;;ACtDA,SAAgB,EAA4D,EAC3E,YACA,eAAY,QACZ,gBAAa,GACb,aACA,aACA,UACA,UACA,aACA,oBACwB;CACxB,IAAM,IAAc,EAA0B,CAAQ;CACtD,IAAI,CAAC,EAAY,UAAW,KAAW,EAAY,SAAS,GAAU,OAAO,kBAAC,QAAD,EAAA,UAAO,EAAkB,CAAA;CAEtG,IAAM,IAAc,KAAY,OAE1B,IAAmB;EACxB,OAAO;GAAE,SAAS,IAAQ,UAAU;GAAgB,OAAO,IAAU,GAAG,IAAU,EAAE,MAAM;EAAO;EACjG,WAAW;CACZ,GAGM,IAAc;EACnB,GAAG;EACH,GAAG;EACH,OAAO;GACN,GAAG,GAAe;GAClB,GAAG,EAAiB;EACrB;EACA,WAAW,CAAC,GAAe,WAAW,EAAiB,SAAS,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,KAAK,GAAG;CAC3F;CAEA,OACC,kBAAC,GAAD;EAAwB;EAAkB;EAAW,aAAA;EAAY,SAAS;EAAyB;EAAsB;EACxH,UAAA,kBAAC,GAAD;GAAa,GAAI;GAAc,UAAA;EAAyB,CAAA;CACxC,CAAA;AAEnB"}
@@ -1,9 +1,9 @@
1
- import { m as e } from "../chunks/misc-Cm_LDrUD.js";
1
+ import { m as e } from "../chunks/misc-BjdDK6mm.js";
2
2
  import { a as t, n, t as r } from "../chunks/types-CxXyru6U.js";
3
3
  import { jsx as i } from "react/jsx-runtime";
4
4
  //#region src/text-editor/TextEditorLexical.tsx
5
5
  function a() {
6
- return import("../chunks/TextEditorLexicalClient-DrSVnvOe.js").then((e) => ({ TextEditorLexicalClient: e.TextEditorLexicalClient }));
6
+ return import("../chunks/TextEditorLexicalClient-U-sTxmCU.js").then((e) => ({ TextEditorLexicalClient: e.TextEditorLexicalClient }));
7
7
  }
8
8
  function o(t) {
9
9
  return /* @__PURE__ */ i(e, {
@@ -1,4 +1,4 @@
1
- import { a as e, c as t, d as n, i as r, n as i, o as ee, p as te, r as ne, s as re, t as ie } from "../chunks/base-table-BBp5WMDM.js";
1
+ import { a as e, c as t, d as n, i as r, n as i, o as ee, p as te, r as ne, s as re, t as ie } from "../chunks/base-table-BMesCx6H.js";
2
2
  import { cn as ae } from "@ryuzaki13/react-foundation-lib/utils";
3
3
  import { ChevronDownIcon as a, ChevronRightIcon as o } from "lucide-react";
4
4
  import { jsx as s, jsxs as c } from "react/jsx-runtime";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ryuzaki13/react-foundation-ui",
3
- "version": "3.7.1",
3
+ "version": "3.7.3",
4
4
  "description": "Reusable React foundation UI primitives and Storybook stories.",
5
5
  "license": "MIT",
6
6
  "author": "Ryuzaki13",
@@ -141,14 +141,30 @@ html,
141
141
  }
142
142
 
143
143
  &:hover {
144
- color: var(--info-fill);
144
+ color: var(--accent-text-hover);
145
145
  }
146
146
 
147
147
  &:active {
148
- color: var(--error-fill);
148
+ color: var(--accent-text-active);
149
149
  }
150
150
  }
151
151
 
152
+ .actionLink {
153
+ @extend .link;
154
+
155
+ display: inline-flex;
156
+ align-items: center;
157
+ justify-content: center;
158
+ justify-self: start;
159
+ gap: var(--space-xs);
160
+ min-block-size: var(--control-height);
161
+ padding-inline: var(--space-md);
162
+ border-radius: var(--radius-md);
163
+
164
+ font-weight: 600;
165
+ text-decoration: none;
166
+ }
167
+
152
168
  a:not([class]) {
153
169
  @extend .link;
154
170
 
@@ -1,4 +1,4 @@
1
- import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{n as t}from"./iframe-CizMDlW9.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{a as i,d as a,f as o,l as s,m as c,n as l,p as u,r as d,u as f}from"./blocks-D29TdvdI.js";import{a as p,i as m,n as h,o as g,r as _,s as v,t as y}from"./Badge.stories-rjlZcsBa.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)(s,{of:h,parameters:{atomicCanvas:!0,layout:`padded`,docs:{toc:!0}}}),`
1
+ import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{n as t}from"./iframe-CrZ65S2_.js";import{i as n,r}from"./react-Bl2r1tuC.js";import{a as i,d as a,f as o,l as s,m as c,n as l,p as u,r as d,u as f}from"./blocks-Bppn5-KH.js";import{a as p,i as m,n as h,o as g,r as _,s as v,t as y}from"./Badge.stories-CZ4eNFRT.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)(s,{of:h,parameters:{atomicCanvas:!0,layout:`padded`,docs:{toc:!0}}}),`
2
2
  `,(0,S.jsx)(u,{children:`Badge`}),`
3
3
  `,(0,S.jsx)(o,{children:`Компактная текстовая метка для статусов, категорий, фильтров и коротких служебных пометок`}),`
4
4
  `,(0,S.jsx)(t.p,{children:`Badge подходит для коротких подписей, которые должны быстро читаться и не перегружать интерфейс:`}),`
@@ -1,4 +1,4 @@
1
- import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{t as n}from"./react-BZJXY1be.js";import{n as r}from"./iframe-CizMDlW9.js";import{i,n as a,r as o,t as s}from"./BadgeList-xlIWwEkW.js";var c=t({Appearances:()=>h,Basic:()=>p,RemovableList:()=>_,Sizes:()=>g,Tones:()=>m,__namedExportsOrder:()=>v,default:()=>f}),l,u,d,f,p,m,h,g,_,v;function y(){return(y=e((()=>{l=n(),i(),a(),u=r(),{useArgs:d}=__STORYBOOK_MODULE_PREVIEW_API__,f={title:`UI/Badge`,component:o,args:{children:`Новый`,size:`md`,tone:`info`,appearance:`solid`},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{children:{description:`Текст внутри бейджа.`,control:`text`},size:{description:`Размер бейджа.`,control:`inline-radio`,options:[`xs`,`sm`,`md`,`lg`,`xl`]},tone:{description:`Цветовой тон бейджа.`,control:`inline-radio`,options:[`neutral`,`accent`,`brand`,`success`,`warning`,`error`,`info`]},appearance:{description:`Форма бейджа.`,control:`inline-radio`,options:[`solid`,`outline`,`ghost`,`transparent`]},onRemove:{description:`Показывает кнопку удаления и вызывает обработчик по клику.`,control:!1}}},p={render:function(){let[e]=d();return(0,u.jsx)(o,{...e})}},m={render:()=>(0,u.jsxs)(s,{children:[(0,u.jsx)(o,{tone:`neutral`,appearance:`outline`,children:`Neutral`}),(0,u.jsx)(o,{tone:`accent`,appearance:`solid`,children:`Акцент`}),(0,u.jsx)(o,{tone:`brand`,appearance:`solid`,children:`Бренд`}),(0,u.jsx)(o,{tone:`success`,appearance:`solid`,children:`Успешно`}),(0,u.jsx)(o,{tone:`warning`,appearance:`solid`,children:`Внимание`}),(0,u.jsx)(o,{tone:`error`,appearance:`solid`,children:`Ошибка`}),(0,u.jsx)(o,{tone:`info`,appearance:`solid`,children:`Информация`})]})},h={render:()=>(0,u.jsxs)(s,{children:[(0,u.jsx)(o,{tone:`neutral`,appearance:`solid`,children:`Solid`}),(0,u.jsx)(o,{tone:`neutral`,appearance:`outline`,children:`Outline`}),(0,u.jsx)(o,{tone:`info`,appearance:`ghost`,children:`Ghost`}),(0,u.jsx)(o,{tone:`warning`,appearance:`transparent`,children:`Transparent`})]})},g={render:()=>(0,u.jsxs)(s,{children:[(0,u.jsx)(o,{size:`xs`,children:`Extra Small`}),(0,u.jsx)(o,{size:`sm`,children:`Small`}),(0,u.jsx)(o,{size:`md`,children:`Medium`}),(0,u.jsx)(o,{size:`lg`,children:`Large`}),(0,u.jsx)(o,{size:`xl`,children:`Extra Large`})]})},_={render:()=>{let[e,t]=(0,l.useState)([`Фильтр A`,`Фильтр B`,`Фильтр C`]);return(0,u.jsx)(s,{children:e.map(e=>(0,u.jsx)(o,{tone:`info`,appearance:`outline`,onRemove:()=>t(t=>t.filter(t=>t!==e)),children:e},e))})}},p.parameters={...p.parameters,docs:{...p.parameters?.docs,source:{originalSource:`{
1
+ import{n as e,r as t}from"./rolldown-runtime-DkW27tQK.js";import{t as n}from"./react-BZJXY1be.js";import{n as r}from"./iframe-CrZ65S2_.js";import{i,n as a,r as o,t as s}from"./BadgeList-XWgY35J_.js";var c=t({Appearances:()=>h,Basic:()=>p,RemovableList:()=>_,Sizes:()=>g,Tones:()=>m,__namedExportsOrder:()=>v,default:()=>f}),l,u,d,f,p,m,h,g,_,v;function y(){return(y=e((()=>{l=n(),i(),a(),u=r(),{useArgs:d}=__STORYBOOK_MODULE_PREVIEW_API__,f={title:`UI/Badge`,component:o,args:{children:`Новый`,size:`md`,tone:`info`,appearance:`solid`},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{children:{description:`Текст внутри бейджа.`,control:`text`},size:{description:`Размер бейджа.`,control:`inline-radio`,options:[`xs`,`sm`,`md`,`lg`,`xl`]},tone:{description:`Цветовой тон бейджа.`,control:`inline-radio`,options:[`neutral`,`accent`,`brand`,`success`,`warning`,`error`,`info`]},appearance:{description:`Форма бейджа.`,control:`inline-radio`,options:[`solid`,`outline`,`ghost`,`transparent`]},onRemove:{description:`Показывает кнопку удаления и вызывает обработчик по клику.`,control:!1}}},p={render:function(){let[e]=d();return(0,u.jsx)(o,{...e})}},m={render:()=>(0,u.jsxs)(s,{children:[(0,u.jsx)(o,{tone:`neutral`,appearance:`outline`,children:`Neutral`}),(0,u.jsx)(o,{tone:`accent`,appearance:`solid`,children:`Акцент`}),(0,u.jsx)(o,{tone:`brand`,appearance:`solid`,children:`Бренд`}),(0,u.jsx)(o,{tone:`success`,appearance:`solid`,children:`Успешно`}),(0,u.jsx)(o,{tone:`warning`,appearance:`solid`,children:`Внимание`}),(0,u.jsx)(o,{tone:`error`,appearance:`solid`,children:`Ошибка`}),(0,u.jsx)(o,{tone:`info`,appearance:`solid`,children:`Информация`})]})},h={render:()=>(0,u.jsxs)(s,{children:[(0,u.jsx)(o,{tone:`neutral`,appearance:`solid`,children:`Solid`}),(0,u.jsx)(o,{tone:`neutral`,appearance:`outline`,children:`Outline`}),(0,u.jsx)(o,{tone:`info`,appearance:`ghost`,children:`Ghost`}),(0,u.jsx)(o,{tone:`warning`,appearance:`transparent`,children:`Transparent`})]})},g={render:()=>(0,u.jsxs)(s,{children:[(0,u.jsx)(o,{size:`xs`,children:`Extra Small`}),(0,u.jsx)(o,{size:`sm`,children:`Small`}),(0,u.jsx)(o,{size:`md`,children:`Medium`}),(0,u.jsx)(o,{size:`lg`,children:`Large`}),(0,u.jsx)(o,{size:`xl`,children:`Extra Large`})]})},_={render:()=>{let[e,t]=(0,l.useState)([`Фильтр A`,`Фильтр B`,`Фильтр C`]);return(0,u.jsx)(s,{children:e.map(e=>(0,u.jsx)(o,{tone:`info`,appearance:`outline`,onRemove:()=>t(t=>t.filter(t=>t!==e)),children:e},e))})}},p.parameters={...p.parameters,docs:{...p.parameters?.docs,source:{originalSource:`{
2
2
  render: function Render() {
3
3
  const [args] = useArgs<BadgeStoryArgs>();
4
4
  return <Badge {...args} />;
@@ -1,4 +1,4 @@
1
- import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{t}from"./react-BZJXY1be.js";import{n,t as r}from"./x-Buig9MSV.js";import{n as i}from"./iframe-CizMDlW9.js";import{a,i as o}from"./utils-tg3ibbzi.js";import{c as s,i as c}from"./array-D-_yMMUK-DnJ_b27D.js";import{n as l,t as u}from"./FloatingPopover-beid_uAU.js";import{a as d,i as f,r as p,t as m}from"./uiClasses-Bar5W7-L.js";import{n as h,t as g}from"./FlexContainer-BK3kWiEq.js";function _({maxChar:e,placement:t=`left`,closeDelay:n=0,maxWidth:r,children:i,block:a,state:o,textWrap:c,textWrapProps:l}){let d=s(i);if(!d.length||e&&d.length<e)return(0,v.jsx)(`span`,{children:d});let f=c??`div`,p={style:{display:a?`block`:`inline-block`,width:e?`${e-3}ch`:`auto`},className:`textOverflow`},m={...l,...p,style:{...l?.style,...p.style},className:[l?.className,p.className].filter(Boolean).join(` `)};return(0,v.jsx)(u,{state:o,placement:t,openOnHover:!0,content:d,closeDelay:n,maxWidth:r,children:(0,v.jsx)(f,{...m,children:d})})}var v;function y(){return(y=e((()=>{c(),l(),v=i(),_.__docgenInfo={description:``,methods:[],displayName:`TextOverflow`,props:{children:{required:!0,tsType:{name:`string`},description:``},maxChar:{required:!1,tsType:{name:`number`},description:``},maxWidth:{required:!1,tsType:{name:`number`},description:`Максимальная ширина тултипа в em.`},placement:{required:!1,tsType:{name:`Placement`},description:``,defaultValue:{value:`"left"`,computed:!1}},closeDelay:{required:!1,tsType:{name:`number`},description:``,defaultValue:{value:`0`,computed:!1}},block:{required:!1,tsType:{name:`literal`,value:`true`},description:`Для работы text-overflow элемент обязан быть блочным или inline-block.
1
+ import{n as e}from"./rolldown-runtime-DkW27tQK.js";import{t}from"./react-BZJXY1be.js";import{n,t as r}from"./x-D4JI8CHm.js";import{n as i}from"./iframe-CrZ65S2_.js";import{a,i as o}from"./utils-tg3ibbzi.js";import{c as s,i as c}from"./array-D-_yMMUK-DnJ_b27D.js";import{n as l,t as u}from"./FloatingPopover-CFBC4Bci.js";import{a as d,i as f,r as p,t as m}from"./uiClasses-Bar5W7-L.js";import{n as h,t as g}from"./FlexContainer-MzhoLOkU.js";function _({maxChar:e,placement:t=`left`,closeDelay:n=0,maxWidth:r,children:i,block:a,state:o,textWrap:c,textWrapProps:l}){let d=s(i);if(!d.length||e&&d.length<e)return(0,v.jsx)(`span`,{children:d});let f=c??`div`,p={style:{display:a?`block`:`inline-block`,width:e?`${e-3}ch`:`auto`},className:`textOverflow`},m={...l,...p,style:{...l?.style,...p.style},className:[l?.className,p.className].filter(Boolean).join(` `)};return(0,v.jsx)(u,{state:o,placement:t,openOnHover:!0,content:d,closeDelay:n,maxWidth:r,children:(0,v.jsx)(f,{...m,children:d})})}var v;function y(){return(y=e((()=>{c(),l(),v=i(),_.__docgenInfo={description:``,methods:[],displayName:`TextOverflow`,props:{children:{required:!0,tsType:{name:`string`},description:``},maxChar:{required:!1,tsType:{name:`number`},description:``},maxWidth:{required:!1,tsType:{name:`number`},description:`Максимальная ширина тултипа в em.`},placement:{required:!1,tsType:{name:`Placement`},description:``,defaultValue:{value:`"left"`,computed:!1}},closeDelay:{required:!1,tsType:{name:`number`},description:``,defaultValue:{value:`0`,computed:!1}},block:{required:!1,tsType:{name:`literal`,value:`true`},description:`Для работы text-overflow элемент обязан быть блочным или inline-block.
2
2
  Если в качестве обёртки передается инлайновый компонент, то он будет
3
3
  перезаписан через стили на display: block или inline-block в зависимости
4
4
  от установки данного пропса.`},state:{required:!1,tsType:{name:`union`,raw:`"information" | "error" | "warning" | "success" | "negative"`,elements:[{name:`literal`,value:`"information"`},{name:`literal`,value:`"error"`},{name:`literal`,value:`"warning"`},{name:`literal`,value:`"success"`},{name:`literal`,value:`"negative"`}]},description:``},textWrap:{required:!1,tsType:{name:`T`},description:``},textWrapProps:{required:!1,tsType:{name:`Omit`,elements:[{name:`ComponentProps`,elements:[{name:`T`}],raw:`ComponentProps<T>`},{name:`literal`,value:`"children"`}],raw:`Omit<ComponentProps<T>, "children">`},description:``}}}})))()}var b,x,S,C,w,T,E,D,O,k;function A(){return(A=e((()=>{b=`qBtmnH`,x=`p-HsHY`,S=`u9tQAE`,C=`FRScRz`,w=`W13uQO`,T=`_3IRcM9`,E=`R3ybI7`,D=`DdWAaC`,O=`_5cXBQF`,k={badge:b,passive:x,sizeXs:S,sizeSm:C,sizeMd:w,sizeLg:T,sizeXl:E,content:D,removeButton:O}})))()}function j({children:e,size:t=`sm`,tone:n,appearance:i,className:o,onRemove:s}){let c=n??`neutral`,l=d({tone:n,appearance:i,fallbackTone:c,fallbackAppearance:c===`neutral`?`outline`:`solid`});return(0,M.jsxs)(`div`,{className:a(k.badge,N[t],p(l.tone),m(l.appearance),!s&&k.passive,o),children:[(0,M.jsx)(_,{maxChar:25,placement:`top`,block:!0,textWrapProps:{className:k.content},children:String(e)}),s&&(0,M.jsx)(`button`,{type:`button`,onClick:s,className:k.removeButton,"aria-label":`Удалить бейдж`,"data-ui":`badge-remove-button`,"data-action":`remove-badge`,children:(0,M.jsx)(r,{})})]})}var M,N;function P(){return(P=e((()=>{o(),n(),y(),f(),A(),M=i(),N={xs:k.sizeXs,sm:k.sizeSm,md:k.sizeMd,lg:k.sizeLg,xl:k.sizeXl},j.__docgenInfo={description:`Компактный индикатор для статусов, категорий и коротких служебных меток.`,methods:[],displayName:`Badge`,props:{children:{required:!0,tsType:{name:`union`,raw:`string | number`,elements:[{name:`string`},{name:`number`}]},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:``,defaultValue:{value:`"sm"`,computed:!1}},tone:{required:!1,tsType:{name:`union`,raw:`"accent" | "neutral" | "brand" | "error" | "warning" | "success" | "info"`,elements:[{name:`literal`,value:`"accent"`},{name:`literal`,value:`"neutral"`},{name:`literal`,value:`"brand"`},{name:`literal`,value:`"error"`},{name:`literal`,value:`"warning"`},{name:`literal`,value:`"success"`},{name:`literal`,value:`"info"`}]},description:``},appearance:{required:!1,tsType:{name:`union`,raw:`"solid" | "outline" | "ghost" | "transparent"`,elements:[{name:`literal`,value:`"solid"`},{name:`literal`,value:`"outline"`},{name:`literal`,value:`"ghost"`},{name:`literal`,value:`"transparent"`}]},description:``},className:{required:!1,tsType:{name:`string`},description:``},onRemove:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:``}}}})))()}function F({children:e}){return(0,L.jsx)(g,{inline:!0,wrap:!0,gap:`sm`,align:`baseline`,children:I.Children.map(e,(e,t)=>(0,L.jsx)(I.Fragment,{children:e},t))})}var I,L;function R(){return(R=e((()=>{I=t(),h(),L=i(),F.__docgenInfo={description:"Контейнер для группы `Badge`, который выстраивает элементы в единый список с предсказуемыми отступами. Используется для компактного вывода набора меток или фильтров.",methods:[],displayName:`BadgeList`,props:{children:{required:!0,tsType:{name:`Array`,elements:[{name:`ReactElement`,elements:[{name:`union`,raw:`typeof Badge | null | undefined | false`,elements:[{name:`Badge`},{name:`null`},{name:`undefined`},{name:`literal`,value:`false`}]}],raw:`ReactElement<typeof Badge | null | undefined | false>`}],raw:`ReactElement<typeof Badge | null | undefined | false>[]`},description:``}}}})))()}export{P as i,R as n,j as r,F as t};