@ryuzaki13/react-foundation-ui 1.0.8 → 1.0.12

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 (633) hide show
  1. package/README.md +457 -10
  2. package/dist/advanced-search/index.js +11 -11
  3. package/dist/badge/index.js +1 -1
  4. package/dist/base-table/index.js +1 -1
  5. package/dist/button/index.js +2 -23
  6. package/dist/check-box/index.js +1 -1
  7. package/dist/chunks/{CalendarView-DjeTJkTT.js → CalendarView-DCQjO2ho.js} +2 -2
  8. package/dist/chunks/{CalendarView-DjeTJkTT.js.map → CalendarView-DCQjO2ho.js.map} +1 -1
  9. package/dist/chunks/{odata-DSW7z3nh.js → SelectOptionContent-lfEtHXfO.js} +404 -381
  10. package/dist/chunks/SelectOptionContent-lfEtHXfO.js.map +1 -0
  11. package/dist/chunks/{TextEditorLexicalClient-16S18Yir.js → TextEditorLexicalClient-Bca3FOUs.js} +8 -8
  12. package/dist/chunks/{TextEditorLexicalClient-16S18Yir.js.map → TextEditorLexicalClient-Bca3FOUs.js.map} +1 -1
  13. package/dist/chunks/{BadgeList-DYgun2rf.js → badge-BfbLPk0z.js} +2 -2
  14. package/dist/chunks/badge-BfbLPk0z.js.map +1 -0
  15. package/dist/chunks/{base-table-CoQlKABk.js → base-table-CiYSRI_J.js} +4 -4
  16. package/dist/chunks/{base-table-CoQlKABk.js.map → base-table-CiYSRI_J.js.map} +1 -1
  17. package/dist/chunks/button-CC0Jdx1j.js +72 -0
  18. package/dist/chunks/button-CC0Jdx1j.js.map +1 -0
  19. package/dist/chunks/{CheckBox-BowNqqd3.js → check-box-BowNqqd3.js} +1 -1
  20. package/dist/chunks/check-box-BowNqqd3.js.map +1 -0
  21. package/dist/chunks/{DropdownMenu-DQeR3y7M.js → context-menu-DQeR3y7M.js} +1 -1
  22. package/dist/chunks/context-menu-DQeR3y7M.js.map +1 -0
  23. package/dist/chunks/{DateInput-BTJ-QTUx.js → date-input-DjAQ75n9.js} +5 -5
  24. package/dist/chunks/date-input-DjAQ75n9.js.map +1 -0
  25. package/dist/chunks/{DateRangePresetSelect-UgsfaOeM.js → date-range-preset-select-UgsfaOeM.js} +1 -1
  26. package/dist/chunks/date-range-preset-select-UgsfaOeM.js.map +1 -0
  27. package/dist/chunks/{Flex-DUYSL5TE.js → flex-CPO6xlPR.js} +38 -33
  28. package/dist/chunks/{Flex-DUYSL5TE.js.map → flex-CPO6xlPR.js.map} +1 -1
  29. package/dist/chunks/{Grid-ByIIytjh.js → grid-ByIIytjh.js} +1 -1
  30. package/dist/chunks/{Grid-ByIIytjh.js.map → grid-ByIIytjh.js.map} +1 -1
  31. package/dist/chunks/{Input-anSjiM9b.js → input-CZLUUggm.js} +10 -2
  32. package/dist/chunks/input-CZLUUggm.js.map +1 -0
  33. package/dist/chunks/{InputFiles-XBQxkHdB.js → input-files-aB8iaqGk.js} +5 -5
  34. package/dist/chunks/input-files-aB8iaqGk.js.map +1 -0
  35. package/dist/chunks/{input-search-B_njjJuV.js → input-search-eMvnvgV0.js} +2 -2
  36. package/dist/chunks/{input-search-B_njjJuV.js.map → input-search-eMvnvgV0.js.map} +1 -1
  37. package/dist/chunks/{misc-DoqZBMof.js → misc-1PxS8OWD.js} +2 -2
  38. package/dist/chunks/{misc-DoqZBMof.js.map → misc-1PxS8OWD.js.map} +1 -1
  39. package/dist/chunks/{modal-ByNRME3b.js → modal-C0j0hEIt.js} +5 -5
  40. package/dist/chunks/{modal-ByNRME3b.js.map → modal-C0j0hEIt.js.map} +1 -1
  41. package/dist/chunks/multi-select-r0ekR6Bh.js +541 -0
  42. package/dist/chunks/multi-select-r0ekR6Bh.js.map +1 -0
  43. package/dist/chunks/{picker-Du7Y4-el.js → picker-beNX-cW9.js} +11 -11
  44. package/dist/chunks/{picker-Du7Y4-el.js.map → picker-beNX-cW9.js.map} +1 -1
  45. package/dist/chunks/{RadioGroup-B9XjkcOy.js → radio-group-B9XjkcOy.js} +1 -1
  46. package/dist/chunks/radio-group-B9XjkcOy.js.map +1 -0
  47. package/dist/chunks/select-CFbZS7fx.js +284 -0
  48. package/dist/chunks/select-CFbZS7fx.js.map +1 -0
  49. package/dist/chunks/{table-Dc3AqMzP.js → table-BR2VqeEg.js} +2 -2
  50. package/dist/chunks/{table-Dc3AqMzP.js.map → table-BR2VqeEg.js.map} +1 -1
  51. package/dist/chunks/{toolbar-BCZNdRXM.js → toolbar-XCDeS2Li.js} +2 -2
  52. package/dist/chunks/{toolbar-BCZNdRXM.js.map → toolbar-XCDeS2Li.js.map} +1 -1
  53. package/dist/chunks/{useODataSelectBase-BbeKdq6x.js → useODataSelectBase-BxAvhDww.js} +2 -2
  54. package/dist/chunks/{useODataSelectBase-BbeKdq6x.js.map → useODataSelectBase-BxAvhDww.js.map} +1 -1
  55. package/dist/context-menu/index.js +1 -1
  56. package/dist/date-input/index.js +2 -2
  57. package/dist/date-range-preset-select/index.js +1 -1
  58. package/dist/date-time-input/index.js +458 -2
  59. package/dist/date-time-input/index.js.map +1 -0
  60. package/dist/detail/index.js +80 -2
  61. package/dist/detail/index.js.map +1 -0
  62. package/dist/dialog/index.js +50 -2
  63. package/dist/dialog/index.js.map +1 -0
  64. package/dist/disclosure/index.js +49 -2
  65. package/dist/disclosure/index.js.map +1 -0
  66. package/dist/drop-zone/index.js +98 -2
  67. package/dist/drop-zone/index.js.map +1 -0
  68. package/dist/errors/index.js +1 -1
  69. package/dist/expandable-action-panel/index.js +82 -2
  70. package/dist/expandable-action-panel/index.js.map +1 -0
  71. package/dist/flex/index.js +2 -14
  72. package/dist/grid/index.js +1 -1
  73. package/dist/image/index.js +5 -5
  74. package/dist/input/index.js +2 -14
  75. package/dist/input-date-time/index.js +258 -2
  76. package/dist/input-date-time/index.js.map +1 -0
  77. package/dist/input-file/index.js +105 -2
  78. package/dist/input-file/index.js.map +1 -0
  79. package/dist/input-files/index.js +1 -1
  80. package/dist/input-image/index.js +100 -2
  81. package/dist/input-image/index.js.map +1 -0
  82. package/dist/input-search/index.js +1 -1
  83. package/dist/layout-picker/index.js +1171 -2
  84. package/dist/layout-picker/index.js.map +1 -0
  85. package/dist/list/index.js +2 -2
  86. package/dist/listbox/index.js +81 -2
  87. package/dist/listbox/index.js.map +1 -0
  88. package/dist/misc/index.js +1 -1
  89. package/dist/modal/index.js +1 -1
  90. package/dist/multi-select/index.js +2 -3
  91. package/dist/notifications/index.js +151 -3
  92. package/dist/notifications/index.js.map +1 -0
  93. package/dist/picker/index.js +1 -1
  94. package/dist/preset-range-date-input/index.js +52 -3
  95. package/dist/preset-range-date-input/index.js.map +1 -1
  96. package/dist/preset-select/index.js +1 -1
  97. package/dist/radio-button/index.js +48 -2
  98. package/dist/radio-button/index.js.map +1 -0
  99. package/dist/radio-group/index.js +1 -1
  100. package/dist/select/index.js +2 -4
  101. package/dist/simple-table/index.js +1 -1
  102. package/dist/slider/index.js +695 -2
  103. package/dist/slider/index.js.map +1 -0
  104. package/dist/splitter/index.js +168 -2
  105. package/dist/splitter/index.js.map +1 -0
  106. package/dist/state-select/index.js +78 -2
  107. package/dist/state-select/index.js.map +1 -0
  108. package/dist/styles.css +1 -1
  109. package/dist/switch/index.js +81 -2
  110. package/dist/switch/index.js.map +1 -0
  111. package/dist/table/index.js +1 -1
  112. package/dist/table-sorting/index.js +1 -1
  113. package/dist/tabs/index.js +384 -2
  114. package/dist/tabs/index.js.map +1 -0
  115. package/dist/text-editor/index.js +3 -3
  116. package/dist/text-editor/toolbar/index.js +1 -1
  117. package/dist/textarea/index.js +44 -2
  118. package/dist/textarea/index.js.map +1 -0
  119. package/dist/toggle/index.js +73 -2
  120. package/dist/toggle/index.js.map +1 -0
  121. package/dist/toolbar/index.js +2 -3
  122. package/dist/toolbar/index.js.map +1 -1
  123. package/dist/tree-select/index.js +569 -89
  124. package/dist/tree-select/index.js.map +1 -1
  125. package/dist/tree-table/index.js +1 -1
  126. package/package.json +5 -304
  127. package/src/styles/_base.scss +11 -3
  128. package/src/styles/config/_index.scss +97 -113
  129. package/src/styles/mixins/_mixin.scss +4 -4
  130. package/src/styles/themes/dark/_default.scss +0 -17
  131. package/storybook-static/assets/Badge-Cr7bAbxa.css +1 -0
  132. package/storybook-static/assets/Badge-Q8iX86Mn.js +139 -0
  133. package/storybook-static/assets/Badge.stories-BEMBzR2f.js +51 -0
  134. package/storybook-static/assets/Button-BN8Cuwsy.css +1 -0
  135. package/storybook-static/assets/Button-BUkCW8Zg.js +12 -0
  136. package/storybook-static/assets/Button-CfX05aoR.js +124 -0
  137. package/storybook-static/assets/Button.stories-BoNLZb6w.js +75 -0
  138. package/storybook-static/assets/CheckBox-B1xm2kwz.css +1 -0
  139. package/storybook-static/assets/CheckBox-CcXGzkSE.js +42 -0
  140. package/storybook-static/assets/CheckBox-DTSi8Yok.js +2 -0
  141. package/storybook-static/assets/CheckBox.module-Hr3mvdAC.js +1 -0
  142. package/storybook-static/assets/CheckBox.stories-Bo53TxC7.js +60 -0
  143. package/storybook-static/assets/Color-KMSTOMOX-Mbprgrbi.js +1 -0
  144. package/storybook-static/assets/ContextMenu-DYlSojIE.js +40 -0
  145. package/storybook-static/assets/ContextMenu.stories-BJr53bsq.js +90 -0
  146. package/storybook-static/assets/DateInput-Bc-MiPp1.css +1 -0
  147. package/storybook-static/assets/DateInput-BrmilavO.js +40 -0
  148. package/storybook-static/assets/DateInput-C72jV86j.js +1 -0
  149. package/storybook-static/assets/DateInput.stories-0hU_T1iZ.js +115 -0
  150. package/storybook-static/assets/DateRangePresetSelect-BklzgpCR.js +3 -0
  151. package/storybook-static/assets/DateRangePresetSelect-C7gJVkMB.js +30 -0
  152. package/storybook-static/assets/DateRangePresetSelect.stories-DQKDcAdP.js +11 -0
  153. package/storybook-static/assets/Detail-BKSBSfTO.css +1 -0
  154. package/storybook-static/assets/Detail-BMu0MY4h.js +40 -0
  155. package/storybook-static/assets/Detail.stories-CgBJjWQd.js +44 -0
  156. package/storybook-static/assets/Dialog-M7Uy3LiO.js +40 -0
  157. package/storybook-static/assets/Dialog.stories-BZ0opvaJ.js +31 -0
  158. package/storybook-static/assets/Disclosure-BXnfHC6v.js +29 -0
  159. package/storybook-static/assets/Disclosure-zNgXNDkm.css +1 -0
  160. package/storybook-static/assets/Disclosure.stories-C7wh6KJU.js +35 -0
  161. package/storybook-static/assets/DocsRenderer-JROSPFPF-BjXFJaat.js +2 -0
  162. package/storybook-static/assets/DropZone-C7HIN5ml.css +1 -0
  163. package/storybook-static/assets/DropZone-cd1aCNT1.js +36 -0
  164. package/storybook-static/assets/DropZone.stories-CVu731Lk.js +44 -0
  165. package/storybook-static/assets/DropdownMenu-B97Ad5Dg.js +1 -0
  166. package/storybook-static/assets/DropdownMenu-BgzIzwzM.css +1 -0
  167. package/storybook-static/assets/ExpandableActionPanel-D7q9two4.css +1 -0
  168. package/storybook-static/assets/ExpandableActionPanel.stories-k-eTxMyV.js +20 -0
  169. package/storybook-static/assets/Flex-BQkqAqL5.js +61 -0
  170. package/storybook-static/assets/Flex-C_VnI9xY.js +3 -0
  171. package/storybook-static/assets/Flex-IXK2se1Y.css +1 -0
  172. package/storybook-static/assets/Flex.stories-C1VO9Ct3.js +300 -0
  173. package/storybook-static/assets/Grid-Dr3BuEgd.js +61 -0
  174. package/storybook-static/assets/Grid-K9R_IHaw.css +1 -0
  175. package/storybook-static/assets/Grid-y8wKyEwc.js +163 -0
  176. package/storybook-static/assets/Grid.stories-6WUp6Tof.js +495 -0
  177. package/storybook-static/assets/Input-B7DWcGCL.js +3 -0
  178. package/storybook-static/assets/Input-BioMOZju.css +1 -0
  179. package/storybook-static/assets/Input-yly8wxYE.js +39 -0
  180. package/storybook-static/assets/Input.stories-CkVqvY-C.js +38 -0
  181. package/storybook-static/assets/InputDateTime-Cv8gmBe0.css +1 -0
  182. package/storybook-static/assets/InputDateTime-DHirw8rp.js +39 -0
  183. package/storybook-static/assets/InputDateTime.stories-Dci_81MA.js +35 -0
  184. package/storybook-static/assets/InputFile-DBFfWIkJ.js +37 -0
  185. package/storybook-static/assets/InputFile-hNjZ_wlG.css +1 -0
  186. package/storybook-static/assets/InputFile.stories-Bar27dP5.js +36 -0
  187. package/storybook-static/assets/InputFiles-ByK52qUe.css +1 -0
  188. package/storybook-static/assets/InputFiles-DPz7PiOC.js +1 -0
  189. package/storybook-static/assets/InputFiles-tULKp1KR.js +37 -0
  190. package/storybook-static/assets/InputFiles.stories-CkZ8et32.js +33 -0
  191. package/storybook-static/assets/InputImage-C-pnIXhT.css +1 -0
  192. package/storybook-static/assets/InputImage-D8VckxKl.js +37 -0
  193. package/storybook-static/assets/InputImage.stories-Dq8ORce3.js +51 -0
  194. package/storybook-static/assets/LayoutPicker-9tLTatHF.css +1 -0
  195. package/storybook-static/assets/LayoutPicker-l3XFAkqv.js +65 -0
  196. package/storybook-static/assets/LayoutPicker.stories-BjUmm2cg.js +449 -0
  197. package/storybook-static/assets/Listbox-B_6QVPAJ.js +38 -0
  198. package/storybook-static/assets/Listbox.stories-Cf_ApbmT.js +47 -0
  199. package/storybook-static/assets/Modal-BL_cTIW7.css +1 -0
  200. package/storybook-static/assets/Modal-BzienAaa.js +54 -0
  201. package/storybook-static/assets/Modal.stories-cPIHRa9a.js +180 -0
  202. package/storybook-static/assets/MultiSelect-CK2D25RA.js +56 -0
  203. package/storybook-static/assets/MultiSelect-CUQV67Ev.css +1 -0
  204. package/storybook-static/assets/MultiSelect-CjGBd2pC.js +2 -0
  205. package/storybook-static/assets/MultiSelect.stories--f_FoBzR.js +29 -0
  206. package/storybook-static/assets/NotificationsHost-D5Pvn4eu.css +1 -0
  207. package/storybook-static/assets/NotificationsHost-DKmlmqh0.js +44 -0
  208. package/storybook-static/assets/NotificationsHost.stories-1bPUJXfm.js +25 -0
  209. package/storybook-static/assets/ODataMultiSelect-BWUXuzlr.js +53 -0
  210. package/storybook-static/assets/ODataMultiSelect.stories-DA0f6SUG.js +73 -0
  211. package/storybook-static/assets/ODataSelect-D7GAFOcM.js +1 -0
  212. package/storybook-static/assets/ODataSelect-aNdHSjo_.js +52 -0
  213. package/storybook-static/assets/ODataSelect.stories-CjXA9Y9l.js +73 -0
  214. package/storybook-static/assets/ODataTreeMultiSelect-DKodulQ8.js +17 -0
  215. package/storybook-static/assets/ODataTreeMultiSelect.stories-BjRcb4W0.js +24 -0
  216. package/storybook-static/assets/ODataTreeSelect-Ck8HCh74.js +16 -0
  217. package/storybook-static/assets/ODataTreeSelect.stories-BgDj08mH.js +21 -0
  218. package/storybook-static/assets/PeriodSelect-Db7QmUfi.js +35 -0
  219. package/storybook-static/assets/PeriodSelect.stories-BI6yLRCK.js +23 -0
  220. package/storybook-static/assets/Popover-DR-r8iC5.js +45 -0
  221. package/storybook-static/assets/Popover.stories-ReRFMWiO.js +69 -0
  222. package/storybook-static/assets/PresetRangeDateInput-tSpiPAT9.js +31 -0
  223. package/storybook-static/assets/PresetRangeDateInput.stories-LVQa2_DG.js +15 -0
  224. package/storybook-static/assets/RadioButton-C-RjN-wY.css +1 -0
  225. package/storybook-static/assets/RadioButton-sEzdlL1y.js +38 -0
  226. package/storybook-static/assets/RadioButton.stories-CR0km0zF.js +36 -0
  227. package/storybook-static/assets/RadioGroup-BtNCd3Je.js +1 -0
  228. package/storybook-static/assets/RadioGroup-D-J7t20C.css +1 -0
  229. package/storybook-static/assets/RadioGroup-DR0H6Z0w.js +42 -0
  230. package/storybook-static/assets/RadioGroup.stories-FEqmkrs7.js +42 -0
  231. package/storybook-static/assets/Select-CO4ZHP9h.css +1 -0
  232. package/storybook-static/assets/Select-CUAevk01.js +57 -0
  233. package/storybook-static/assets/Select-DYVS7SCZ.js +9 -0
  234. package/storybook-static/assets/Select.stories-Df_c0IfC.js +37 -0
  235. package/storybook-static/assets/SelectOptionContent-B7W0Mned.js +1 -0
  236. package/storybook-static/assets/SerializableSelect-D63xBqOT.js +48 -0
  237. package/storybook-static/assets/SerializableSelect-DwCnuBgv.js +4 -0
  238. package/storybook-static/assets/SerializableSelect.stories-BLPXVOtP.js +43 -0
  239. package/storybook-static/assets/SingleDateTimeInput-mOllNfg2.css +1 -0
  240. package/storybook-static/assets/SingleDateTimeInput-xMkDodYz.js +53 -0
  241. package/storybook-static/assets/SingleDateTimeInput.stories-kcuSwx76.js +78 -0
  242. package/storybook-static/assets/Slider-BHZgpCjC.js +63 -0
  243. package/storybook-static/assets/Slider.stories-Bias_Soq.js +77 -0
  244. package/storybook-static/assets/SliderInput-jzFZcWr7.js +58 -0
  245. package/storybook-static/assets/SliderInput.stories-B7w8bp86.js +67 -0
  246. package/storybook-static/assets/Sortable-DcmDaPBw.js +72 -0
  247. package/storybook-static/assets/Sortable.stories-CwhHGCih.js +141 -0
  248. package/storybook-static/assets/Splitter-Bn7AJiD_.js +83 -0
  249. package/storybook-static/assets/Splitter-D-LmmQad.css +1 -0
  250. package/storybook-static/assets/Splitter.stories-CSvjKF-O.js +22 -0
  251. package/storybook-static/assets/StateSelect-MIGiXD10.js +36 -0
  252. package/storybook-static/assets/StateSelect-pIMkhj9A.css +1 -0
  253. package/storybook-static/assets/StateSelect.stories-BGDCnVqb.js +47 -0
  254. package/storybook-static/assets/Switch-C5zxOq_O.js +36 -0
  255. package/storybook-static/assets/Switch-DGYGWtPw.css +1 -0
  256. package/storybook-static/assets/Switch.stories-BmCl_Ts5.js +26 -0
  257. package/storybook-static/assets/Table-BGvRn9y0.css +1 -0
  258. package/storybook-static/assets/Table-CoySXvs5.js +197 -0
  259. package/storybook-static/assets/Table.stories-CA7ARhwC.js +122 -0
  260. package/storybook-static/assets/Tabs-BLkTB6pp.css +1 -0
  261. package/storybook-static/assets/Tabs-CQdzU18E.js +72 -0
  262. package/storybook-static/assets/Tabs.stories-SBWTpiy2.js +58 -0
  263. package/storybook-static/assets/Textarea-Bo-I0cnE.js +37 -0
  264. package/storybook-static/assets/Textarea-CPNMR88I.css +1 -0
  265. package/storybook-static/assets/Textarea.stories-C1wO9PKR.js +27 -0
  266. package/storybook-static/assets/TimePanel-0-mzaXky.js +1 -0
  267. package/storybook-static/assets/TimePanel-Bh98qsCo.css +1 -0
  268. package/storybook-static/assets/TimePanel.stories-C1VM13qN.js +25 -0
  269. package/storybook-static/assets/Toggle-B9H63WWC.js +37 -0
  270. package/storybook-static/assets/Toggle-DHulCX3T.css +1 -0
  271. package/storybook-static/assets/Toggle.stories-CKlGFcZW.js +30 -0
  272. package/storybook-static/assets/TreeMultiSelect-AXIl2Ge2.js +15 -0
  273. package/storybook-static/assets/TreeMultiSelect-Ci3bUpmv.js +1 -0
  274. package/storybook-static/assets/TreeMultiSelect.stories-CXGt4Q_u.js +14 -0
  275. package/storybook-static/assets/TreePickerBase-Md6Mt9qF.js +19 -0
  276. package/storybook-static/assets/TreePickerBase-qreyVjhY.css +1 -0
  277. package/storybook-static/assets/TreeSelect-BWoURakw.js +15 -0
  278. package/storybook-static/assets/TreeSelect-bOgRYtQQ.js +1 -0
  279. package/storybook-static/assets/TreeSelect.stories-By0h6wRi.js +16 -0
  280. package/storybook-static/assets/TreeTable--ZoksUiw.css +1 -0
  281. package/storybook-static/assets/TreeTable-C52Jh7O_.js +175 -0
  282. package/storybook-static/assets/TreeTable.stories-BH9Q8NPP.js +83 -0
  283. package/storybook-static/assets/WithTooltip-7X4HQR7L-DQXHhZoH.js +9 -0
  284. package/storybook-static/assets/axe-GLfyhAYL.js +20 -0
  285. package/storybook-static/assets/base-table-BNO0lnTL.css +1 -0
  286. package/storybook-static/assets/base-table-BSkQBgdx.js +18 -0
  287. package/storybook-static/assets/blocks-CwEU-ME1.js +285 -0
  288. package/storybook-static/assets/button-Bl3Hu8CS.js +1 -0
  289. package/storybook-static/assets/check-box-BrnNQnSi.js +1 -0
  290. package/storybook-static/assets/chunk-242VQQM5-Dtm7LRbQ.js +1 -0
  291. package/storybook-static/assets/chunk-3LY4VQVK-BxHCYS2R.js +6 -0
  292. package/storybook-static/assets/chunk-LITCR56V-euffoZAN.js +18 -0
  293. package/storybook-static/assets/contextMenu-Do6qEwKB.js +2 -0
  294. package/storybook-static/assets/date-segments-CzU9k5bl.js +1 -0
  295. package/storybook-static/assets/error-RVOk7zpw.js +1 -0
  296. package/storybook-static/assets/file-hArYcyES.js +1 -0
  297. package/storybook-static/assets/flex-DuYzsEBQ.js +1 -0
  298. package/storybook-static/assets/floating-ui.react-BR04wkLx.js +1 -0
  299. package/storybook-static/assets/formatter-L2YTDE3Q-Cdp-Jp2M.js +1 -0
  300. package/storybook-static/assets/formatters-yIBztcem.js +3 -0
  301. package/storybook-static/assets/grid-D0WOuGlB.js +1 -0
  302. package/storybook-static/assets/hooks-BEB2Gqy0.js +5 -0
  303. package/storybook-static/assets/iframe-SfMJGCsn.js +1117 -0
  304. package/storybook-static/assets/input-Be5K9_B7.js +1 -0
  305. package/storybook-static/assets/jsx-runtime-BBQGix-2.js +1 -0
  306. package/storybook-static/assets/lucide-react-CK2oyDtF.js +1 -0
  307. package/storybook-static/assets/matchers-JIUQ3HVY-BPS-eazD.js +28 -0
  308. package/storybook-static/assets/mdx-react-shim-DnKFgFHy.js +1 -0
  309. package/storybook-static/assets/media-Djn0SUaN.js +1 -0
  310. package/storybook-static/assets/misc-CPvLzCFJ.js +5 -0
  311. package/storybook-static/assets/misc-CerLA5Xh.css +1 -0
  312. package/storybook-static/assets/notifications-Zk996KvR.js +1 -0
  313. package/storybook-static/assets/odata-C2BNbnc9.js +1 -0
  314. package/storybook-static/assets/odata-service-8sDCOQ3I.js +1 -0
  315. package/storybook-static/assets/odataStoryFixtures-BBfdskiC.js +25 -0
  316. package/storybook-static/assets/picker-BmTTr59E.css +1 -0
  317. package/storybook-static/assets/picker-De4ZbESe.js +1 -0
  318. package/storybook-static/assets/popover-BiQHI7Wi.css +1 -0
  319. package/storybook-static/assets/popover-DWA5VOMQ.js +2 -0
  320. package/storybook-static/assets/preload-helper-B45gAKPr.js +1 -0
  321. package/storybook-static/assets/preset-select-DozCGhmu.js +5 -0
  322. package/storybook-static/assets/react-18-CfpYK14y.js +9 -0
  323. package/storybook-static/assets/react-BWN-5oQj.js +9 -0
  324. package/storybook-static/assets/react-dom-CncQzc_h.js +1 -0
  325. package/storybook-static/assets/select-BPvMbVDe.js +1 -0
  326. package/storybook-static/assets/slider-39Mty47U.js +2 -0
  327. package/storybook-static/assets/slider-DMDFRH6B.css +1 -0
  328. package/storybook-static/assets/sortable-CgCCp3dq.js +1 -0
  329. package/storybook-static/assets/sortable-DiBavgm0.css +1 -0
  330. package/storybook-static/assets/syntaxhighlighter-RTCFPKCB-Di6cCrDX.js +6 -0
  331. package/storybook-static/assets/text-BxA8yj6Z.js +4 -0
  332. package/storybook-static/assets/theming-DZauqOKI.js +39 -0
  333. package/storybook-static/assets/treeStoryFixtures-Cd984L7t.js +1 -0
  334. package/storybook-static/assets/ui-CmVy0trY.js +1 -0
  335. package/storybook-static/assets/ui-ZWM9zG1I.css +1 -0
  336. package/storybook-static/assets/ui.module-DS2qtZts.js +1 -0
  337. package/storybook-static/assets/uiClasses-CZ_HVS3Y.js +1 -0
  338. package/storybook-static/assets/useODataSelectBase-D33B4x2W.js +1 -0
  339. package/storybook-static/assets/useODataTreeData-CDdzN-LC.js +1 -0
  340. package/storybook-static/assets/utils-CReRlw17.js +1 -0
  341. package/storybook-static/favicon-wrapper.svg +46 -0
  342. package/storybook-static/favicon.svg +1 -0
  343. package/storybook-static/iframe.html +709 -0
  344. package/storybook-static/index.html +146 -0
  345. package/storybook-static/index.json +1 -0
  346. package/storybook-static/nunito-sans-bold-italic.woff2 +0 -0
  347. package/storybook-static/nunito-sans-bold.woff2 +0 -0
  348. package/storybook-static/nunito-sans-italic.woff2 +0 -0
  349. package/storybook-static/nunito-sans-regular.woff2 +0 -0
  350. package/storybook-static/project.json +1 -0
  351. package/storybook-static/sb-addons/a11y-2/manager-bundle.js +57 -0
  352. package/storybook-static/sb-addons/docs-1/manager-bundle.js +3 -0
  353. package/storybook-static/sb-addons/storybook-core-server-presets-0/common-manager-bundle.js +630 -0
  354. package/storybook-static/sb-common-assets/favicon-wrapper.svg +46 -0
  355. package/storybook-static/sb-common-assets/favicon.svg +1 -0
  356. package/storybook-static/sb-common-assets/nunito-sans-bold-italic.woff2 +0 -0
  357. package/storybook-static/sb-common-assets/nunito-sans-bold.woff2 +0 -0
  358. package/storybook-static/sb-common-assets/nunito-sans-italic.woff2 +0 -0
  359. package/storybook-static/sb-common-assets/nunito-sans-regular.woff2 +0 -0
  360. package/storybook-static/sb-manager/globals-runtime.js +76714 -0
  361. package/storybook-static/sb-manager/globals.js +24 -0
  362. package/storybook-static/sb-manager/manager-stores.js +23 -0
  363. package/storybook-static/sb-manager/runtime.js +27451 -0
  364. package/storybook-static/vite-inject-mocker-entry.js +2 -0
  365. package/dist/badge/stories/Badge.stories.d.ts +0 -54
  366. package/dist/badge/stories/Badge.stories.d.ts.map +0 -1
  367. package/dist/badge/stories/Badge.stories.js +0 -147
  368. package/dist/badge/stories/Badge.stories.js.map +0 -1
  369. package/dist/button/index.js.map +0 -1
  370. package/dist/button/stories/Button.stories.d.ts +0 -69
  371. package/dist/button/stories/Button.stories.d.ts.map +0 -1
  372. package/dist/button/stories/Button.stories.js +0 -223
  373. package/dist/button/stories/Button.stories.js.map +0 -1
  374. package/dist/check-box/stories/CheckBox.stories.d.ts +0 -58
  375. package/dist/check-box/stories/CheckBox.stories.d.ts.map +0 -1
  376. package/dist/check-box/stories/CheckBox.stories.js +0 -150
  377. package/dist/check-box/stories/CheckBox.stories.js.map +0 -1
  378. package/dist/chunks/BadgeList-DYgun2rf.js.map +0 -1
  379. package/dist/chunks/Button-CCWuggdA.js +0 -55
  380. package/dist/chunks/Button-CCWuggdA.js.map +0 -1
  381. package/dist/chunks/CheckBox-BowNqqd3.js.map +0 -1
  382. package/dist/chunks/DateInput-BTJ-QTUx.js.map +0 -1
  383. package/dist/chunks/DateRangePresetSelect-UgsfaOeM.js.map +0 -1
  384. package/dist/chunks/Detail-DHDMsg8q.js +0 -80
  385. package/dist/chunks/Detail-DHDMsg8q.js.map +0 -1
  386. package/dist/chunks/Dialog-CFIvGxER.js +0 -50
  387. package/dist/chunks/Dialog-CFIvGxER.js.map +0 -1
  388. package/dist/chunks/DisclosureGroup-CfRTkl6Z.js +0 -49
  389. package/dist/chunks/DisclosureGroup-CfRTkl6Z.js.map +0 -1
  390. package/dist/chunks/DropZone-DgDMu4Iw.js +0 -98
  391. package/dist/chunks/DropZone-DgDMu4Iw.js.map +0 -1
  392. package/dist/chunks/DropdownMenu-DQeR3y7M.js.map +0 -1
  393. package/dist/chunks/Input-anSjiM9b.js.map +0 -1
  394. package/dist/chunks/InputDateTime-BGLJ_pbV.js +0 -258
  395. package/dist/chunks/InputDateTime-BGLJ_pbV.js.map +0 -1
  396. package/dist/chunks/InputFile-B5E0prk_.js +0 -105
  397. package/dist/chunks/InputFile-B5E0prk_.js.map +0 -1
  398. package/dist/chunks/InputFiles-XBQxkHdB.js.map +0 -1
  399. package/dist/chunks/InputImage-Bs6cFQIo.js +0 -100
  400. package/dist/chunks/InputImage-Bs6cFQIo.js.map +0 -1
  401. package/dist/chunks/LabeledExpandableActionPanel-D3kUvmFH.js +0 -82
  402. package/dist/chunks/LabeledExpandableActionPanel-D3kUvmFH.js.map +0 -1
  403. package/dist/chunks/Listbox-BZlp5qHz.js +0 -81
  404. package/dist/chunks/Listbox-BZlp5qHz.js.map +0 -1
  405. package/dist/chunks/MultiSelect-DblDAklj.js +0 -422
  406. package/dist/chunks/MultiSelect-DblDAklj.js.map +0 -1
  407. package/dist/chunks/NotificationsHost-_icJx4xR.js +0 -151
  408. package/dist/chunks/NotificationsHost-_icJx4xR.js.map +0 -1
  409. package/dist/chunks/PresetRangeDateInput-Bytk5sAs.js +0 -53
  410. package/dist/chunks/PresetRangeDateInput-Bytk5sAs.js.map +0 -1
  411. package/dist/chunks/RadioButton-D0uA0rX_.js +0 -48
  412. package/dist/chunks/RadioButton-D0uA0rX_.js.map +0 -1
  413. package/dist/chunks/RadioGroup-B9XjkcOy.js.map +0 -1
  414. package/dist/chunks/Select-ClBs-16a.js +0 -182
  415. package/dist/chunks/Select-ClBs-16a.js.map +0 -1
  416. package/dist/chunks/SelectOptionContent-CI7wq9Oi.js +0 -27
  417. package/dist/chunks/SelectOptionContent-CI7wq9Oi.js.map +0 -1
  418. package/dist/chunks/SerializableSelect-Ds8wp2_p.js +0 -33
  419. package/dist/chunks/SerializableSelect-Ds8wp2_p.js.map +0 -1
  420. package/dist/chunks/SingleDateTimeInput-kXrkLAAI.js +0 -331
  421. package/dist/chunks/SingleDateTimeInput-kXrkLAAI.js.map +0 -1
  422. package/dist/chunks/Splitter-BFkVGVRb.js +0 -168
  423. package/dist/chunks/Splitter-BFkVGVRb.js.map +0 -1
  424. package/dist/chunks/StateSelect-BzUsurDe.js +0 -78
  425. package/dist/chunks/StateSelect-BzUsurDe.js.map +0 -1
  426. package/dist/chunks/Switch-B57Qmy1z.js +0 -81
  427. package/dist/chunks/Switch-B57Qmy1z.js.map +0 -1
  428. package/dist/chunks/Textarea-CLyGS1h9.js +0 -44
  429. package/dist/chunks/Textarea-CLyGS1h9.js.map +0 -1
  430. package/dist/chunks/TimePanel-b4saqoUY.js +0 -135
  431. package/dist/chunks/TimePanel-b4saqoUY.js.map +0 -1
  432. package/dist/chunks/Toggle-DVqOQXmt.js +0 -73
  433. package/dist/chunks/Toggle-DVqOQXmt.js.map +0 -1
  434. package/dist/chunks/TreeMultiSelect-mIG8VKx8.js +0 -40
  435. package/dist/chunks/TreeMultiSelect-mIG8VKx8.js.map +0 -1
  436. package/dist/chunks/TreePickerBase-C9HEABt5.js +0 -423
  437. package/dist/chunks/TreePickerBase-C9HEABt5.js.map +0 -1
  438. package/dist/chunks/TreeSelect-B9rb_fbI.js +0 -37
  439. package/dist/chunks/TreeSelect-B9rb_fbI.js.map +0 -1
  440. package/dist/chunks/layout-picker-CSLuIUVZ.js +0 -1171
  441. package/dist/chunks/layout-picker-CSLuIUVZ.js.map +0 -1
  442. package/dist/chunks/multi-select-ei7LHBCv.js +0 -126
  443. package/dist/chunks/multi-select-ei7LHBCv.js.map +0 -1
  444. package/dist/chunks/odata-DSW7z3nh.js.map +0 -1
  445. package/dist/chunks/select-Ds7_EAGN.js +0 -81
  446. package/dist/chunks/select-Ds7_EAGN.js.map +0 -1
  447. package/dist/chunks/slider-uU26AeGu.js +0 -695
  448. package/dist/chunks/slider-uU26AeGu.js.map +0 -1
  449. package/dist/chunks/tabs-DlnVVMJl.js +0 -384
  450. package/dist/chunks/tabs-DlnVVMJl.js.map +0 -1
  451. package/dist/chunks/treeStoryFixtures-Bhm3Gdky.js +0 -113
  452. package/dist/chunks/treeStoryFixtures-Bhm3Gdky.js.map +0 -1
  453. package/dist/context-menu/stories/ContextMenu.stories.d.ts +0 -16
  454. package/dist/context-menu/stories/ContextMenu.stories.d.ts.map +0 -1
  455. package/dist/context-menu/stories/ContextMenu.stories.js +0 -136
  456. package/dist/context-menu/stories/ContextMenu.stories.js.map +0 -1
  457. package/dist/date-input/stories/DateInput.stories.d.ts +0 -132
  458. package/dist/date-input/stories/DateInput.stories.d.ts.map +0 -1
  459. package/dist/date-input/stories/DateInput.stories.js +0 -247
  460. package/dist/date-input/stories/DateInput.stories.js.map +0 -1
  461. package/dist/date-range-preset-select/stories/DateRangePresetSelect.stories.d.ts +0 -22
  462. package/dist/date-range-preset-select/stories/DateRangePresetSelect.stories.d.ts.map +0 -1
  463. package/dist/date-range-preset-select/stories/DateRangePresetSelect.stories.js +0 -41
  464. package/dist/date-range-preset-select/stories/DateRangePresetSelect.stories.js.map +0 -1
  465. package/dist/date-time-input/stories/SingleDateTimeInput.stories.d.ts +0 -95
  466. package/dist/date-time-input/stories/SingleDateTimeInput.stories.d.ts.map +0 -1
  467. package/dist/date-time-input/stories/SingleDateTimeInput.stories.js +0 -195
  468. package/dist/date-time-input/stories/SingleDateTimeInput.stories.js.map +0 -1
  469. package/dist/date-time-input/stories/TimePanel.stories.d.ts +0 -26
  470. package/dist/date-time-input/stories/TimePanel.stories.d.ts.map +0 -1
  471. package/dist/date-time-input/stories/TimePanel.stories.js +0 -53
  472. package/dist/date-time-input/stories/TimePanel.stories.js.map +0 -1
  473. package/dist/detail/stories/Detail.stories.d.ts +0 -67
  474. package/dist/detail/stories/Detail.stories.d.ts.map +0 -1
  475. package/dist/detail/stories/Detail.stories.js +0 -170
  476. package/dist/detail/stories/Detail.stories.js.map +0 -1
  477. package/dist/dialog/stories/Dialog.stories.d.ts +0 -50
  478. package/dist/dialog/stories/Dialog.stories.d.ts.map +0 -1
  479. package/dist/dialog/stories/Dialog.stories.js +0 -89
  480. package/dist/dialog/stories/Dialog.stories.js.map +0 -1
  481. package/dist/disclosure/stories/Disclosure.stories.d.ts +0 -35
  482. package/dist/disclosure/stories/Disclosure.stories.d.ts.map +0 -1
  483. package/dist/disclosure/stories/Disclosure.stories.js +0 -70
  484. package/dist/disclosure/stories/Disclosure.stories.js.map +0 -1
  485. package/dist/drop-zone/stories/DropZone.stories.d.ts +0 -63
  486. package/dist/drop-zone/stories/DropZone.stories.d.ts.map +0 -1
  487. package/dist/drop-zone/stories/DropZone.stories.js +0 -97
  488. package/dist/drop-zone/stories/DropZone.stories.js.map +0 -1
  489. package/dist/expandable-action-panel/stories/ExpandableActionPanel.stories.d.ts +0 -44
  490. package/dist/expandable-action-panel/stories/ExpandableActionPanel.stories.d.ts.map +0 -1
  491. package/dist/expandable-action-panel/stories/ExpandableActionPanel.stories.js +0 -117
  492. package/dist/expandable-action-panel/stories/ExpandableActionPanel.stories.js.map +0 -1
  493. package/dist/flex/index.js.map +0 -1
  494. package/dist/flex/stories/Flex.stories.d.ts +0 -24
  495. package/dist/flex/stories/Flex.stories.d.ts.map +0 -1
  496. package/dist/flex/stories/Flex.stories.js +0 -607
  497. package/dist/flex/stories/Flex.stories.js.map +0 -1
  498. package/dist/grid/stories/Grid.stories.d.ts +0 -24
  499. package/dist/grid/stories/Grid.stories.d.ts.map +0 -1
  500. package/dist/grid/stories/Grid.stories.js +0 -840
  501. package/dist/grid/stories/Grid.stories.js.map +0 -1
  502. package/dist/input/index.js.map +0 -1
  503. package/dist/input/stories/Input.stories.d.ts +0 -69
  504. package/dist/input/stories/Input.stories.d.ts.map +0 -1
  505. package/dist/input/stories/Input.stories.js +0 -132
  506. package/dist/input/stories/Input.stories.js.map +0 -1
  507. package/dist/input-date-time/stories/InputDateTime.stories.d.ts +0 -69
  508. package/dist/input-date-time/stories/InputDateTime.stories.d.ts.map +0 -1
  509. package/dist/input-date-time/stories/InputDateTime.stories.js +0 -125
  510. package/dist/input-date-time/stories/InputDateTime.stories.js.map +0 -1
  511. package/dist/input-file/stories/InputFile.stories.d.ts +0 -85
  512. package/dist/input-file/stories/InputFile.stories.d.ts.map +0 -1
  513. package/dist/input-file/stories/InputFile.stories.js +0 -158
  514. package/dist/input-file/stories/InputFile.stories.js.map +0 -1
  515. package/dist/input-files/stories/InputFiles.stories.d.ts +0 -86
  516. package/dist/input-files/stories/InputFiles.stories.d.ts.map +0 -1
  517. package/dist/input-files/stories/InputFiles.stories.js +0 -158
  518. package/dist/input-files/stories/InputFiles.stories.js.map +0 -1
  519. package/dist/input-image/stories/InputImage.stories.d.ts +0 -81
  520. package/dist/input-image/stories/InputImage.stories.d.ts.map +0 -1
  521. package/dist/input-image/stories/InputImage.stories.js +0 -174
  522. package/dist/input-image/stories/InputImage.stories.js.map +0 -1
  523. package/dist/layout-picker/stories/LayoutPicker.stories.d.ts +0 -873
  524. package/dist/layout-picker/stories/LayoutPicker.stories.d.ts.map +0 -1
  525. package/dist/layout-picker/stories/LayoutPicker.stories.js +0 -422
  526. package/dist/layout-picker/stories/LayoutPicker.stories.js.map +0 -1
  527. package/dist/listbox/stories/Listbox.stories.d.ts +0 -76
  528. package/dist/listbox/stories/Listbox.stories.d.ts.map +0 -1
  529. package/dist/listbox/stories/Listbox.stories.js +0 -140
  530. package/dist/listbox/stories/Listbox.stories.js.map +0 -1
  531. package/dist/modal/stories/Modal.stories.d.ts +0 -74
  532. package/dist/modal/stories/Modal.stories.d.ts.map +0 -1
  533. package/dist/modal/stories/Modal.stories.js +0 -320
  534. package/dist/modal/stories/Modal.stories.js.map +0 -1
  535. package/dist/multi-select/ui/stories/MultiSelect.stories.d.ts +0 -67
  536. package/dist/multi-select/ui/stories/MultiSelect.stories.d.ts.map +0 -1
  537. package/dist/multi-select/ui/stories/MultiSelect.stories.js +0 -114
  538. package/dist/multi-select/ui/stories/MultiSelect.stories.js.map +0 -1
  539. package/dist/multi-select/ui/stories/ODataMultiSelect.stories.d.ts +0 -44
  540. package/dist/multi-select/ui/stories/ODataMultiSelect.stories.d.ts.map +0 -1
  541. package/dist/notifications/ui/stories/NotificationsHost.stories.d.ts +0 -21
  542. package/dist/notifications/ui/stories/NotificationsHost.stories.d.ts.map +0 -1
  543. package/dist/notifications/ui/stories/NotificationsHost.stories.js +0 -326
  544. package/dist/notifications/ui/stories/NotificationsHost.stories.js.map +0 -1
  545. package/dist/period-select/stories/PeriodSelect.stories.d.ts +0 -96
  546. package/dist/period-select/stories/PeriodSelect.stories.d.ts.map +0 -1
  547. package/dist/period-select/stories/PeriodSelect.stories.js +0 -166
  548. package/dist/period-select/stories/PeriodSelect.stories.js.map +0 -1
  549. package/dist/popover/stories/Popover.stories.d.ts +0 -10
  550. package/dist/popover/stories/Popover.stories.d.ts.map +0 -1
  551. package/dist/popover/stories/Popover.stories.js +0 -75
  552. package/dist/popover/stories/Popover.stories.js.map +0 -1
  553. package/dist/preset-range-date-input/ui/stories/PresetRangeDateInput.stories.d.ts +0 -22
  554. package/dist/preset-range-date-input/ui/stories/PresetRangeDateInput.stories.d.ts.map +0 -1
  555. package/dist/preset-range-date-input/ui/stories/PresetRangeDateInput.stories.js +0 -45
  556. package/dist/preset-range-date-input/ui/stories/PresetRangeDateInput.stories.js.map +0 -1
  557. package/dist/radio-button/stories/RadioButton.stories.d.ts +0 -60
  558. package/dist/radio-button/stories/RadioButton.stories.d.ts.map +0 -1
  559. package/dist/radio-button/stories/RadioButton.stories.js +0 -121
  560. package/dist/radio-button/stories/RadioButton.stories.js.map +0 -1
  561. package/dist/radio-group/stories/RadioGroup.stories.d.ts +0 -74
  562. package/dist/radio-group/stories/RadioGroup.stories.d.ts.map +0 -1
  563. package/dist/radio-group/stories/RadioGroup.stories.js +0 -146
  564. package/dist/radio-group/stories/RadioGroup.stories.js.map +0 -1
  565. package/dist/select/stories/ODataSelect.stories.d.ts +0 -46
  566. package/dist/select/stories/ODataSelect.stories.d.ts.map +0 -1
  567. package/dist/select/stories/Select.stories.d.ts +0 -127
  568. package/dist/select/stories/Select.stories.d.ts.map +0 -1
  569. package/dist/select/stories/Select.stories.js +0 -214
  570. package/dist/select/stories/Select.stories.js.map +0 -1
  571. package/dist/select/stories/SerializableSelect.stories.d.ts +0 -91
  572. package/dist/select/stories/SerializableSelect.stories.d.ts.map +0 -1
  573. package/dist/select/stories/SerializableSelect.stories.js +0 -165
  574. package/dist/select/stories/SerializableSelect.stories.js.map +0 -1
  575. package/dist/select/stories/odataStoryCollection.d.ts +0 -2
  576. package/dist/select/stories/odataStoryCollection.d.ts.map +0 -1
  577. package/dist/select/stories/odataStoryFixtures.d.ts +0 -35
  578. package/dist/select/stories/odataStoryFixtures.d.ts.map +0 -1
  579. package/dist/slider/stories/Slider.stories.d.ts +0 -29
  580. package/dist/slider/stories/Slider.stories.d.ts.map +0 -1
  581. package/dist/slider/stories/Slider.stories.js +0 -310
  582. package/dist/slider/stories/Slider.stories.js.map +0 -1
  583. package/dist/slider/stories/SliderInput.stories.d.ts +0 -30
  584. package/dist/slider/stories/SliderInput.stories.d.ts.map +0 -1
  585. package/dist/slider/stories/SliderInput.stories.js +0 -282
  586. package/dist/slider/stories/SliderInput.stories.js.map +0 -1
  587. package/dist/sortable/stories/Sortable.stories.d.ts +0 -58
  588. package/dist/sortable/stories/Sortable.stories.d.ts.map +0 -1
  589. package/dist/sortable/stories/Sortable.stories.js +0 -255
  590. package/dist/sortable/stories/Sortable.stories.js.map +0 -1
  591. package/dist/splitter/stories/Splitter.stories.d.ts +0 -66
  592. package/dist/splitter/stories/Splitter.stories.d.ts.map +0 -1
  593. package/dist/splitter/stories/Splitter.stories.js +0 -223
  594. package/dist/splitter/stories/Splitter.stories.js.map +0 -1
  595. package/dist/state-select/stories/StateSelect.stories.d.ts +0 -70
  596. package/dist/state-select/stories/StateSelect.stories.d.ts.map +0 -1
  597. package/dist/state-select/stories/StateSelect.stories.js +0 -145
  598. package/dist/state-select/stories/StateSelect.stories.js.map +0 -1
  599. package/dist/switch/stories/Switch.stories.d.ts +0 -59
  600. package/dist/switch/stories/Switch.stories.d.ts.map +0 -1
  601. package/dist/switch/stories/Switch.stories.js +0 -90
  602. package/dist/switch/stories/Switch.stories.js.map +0 -1
  603. package/dist/table/stories/Table.stories.d.ts +0 -155
  604. package/dist/table/stories/Table.stories.d.ts.map +0 -1
  605. package/dist/tabs/stories/Tabs.stories.d.ts +0 -94
  606. package/dist/tabs/stories/Tabs.stories.d.ts.map +0 -1
  607. package/dist/tabs/stories/Tabs.stories.js +0 -283
  608. package/dist/tabs/stories/Tabs.stories.js.map +0 -1
  609. package/dist/textarea/stories/Textarea.stories.d.ts +0 -64
  610. package/dist/textarea/stories/Textarea.stories.d.ts.map +0 -1
  611. package/dist/textarea/stories/Textarea.stories.js +0 -98
  612. package/dist/textarea/stories/Textarea.stories.js.map +0 -1
  613. package/dist/toggle/stories/Toggle.stories.d.ts +0 -61
  614. package/dist/toggle/stories/Toggle.stories.d.ts.map +0 -1
  615. package/dist/toggle/stories/Toggle.stories.js +0 -102
  616. package/dist/toggle/stories/Toggle.stories.js.map +0 -1
  617. package/dist/tree-select/stories/ODataTreeMultiSelect.stories.d.ts +0 -55
  618. package/dist/tree-select/stories/ODataTreeMultiSelect.stories.d.ts.map +0 -1
  619. package/dist/tree-select/stories/ODataTreeSelect.stories.d.ts +0 -54
  620. package/dist/tree-select/stories/ODataTreeSelect.stories.d.ts.map +0 -1
  621. package/dist/tree-select/stories/TreeMultiSelect.stories.d.ts +0 -35
  622. package/dist/tree-select/stories/TreeMultiSelect.stories.d.ts.map +0 -1
  623. package/dist/tree-select/stories/TreeMultiSelect.stories.js +0 -64
  624. package/dist/tree-select/stories/TreeMultiSelect.stories.js.map +0 -1
  625. package/dist/tree-select/stories/TreeSelect.stories.d.ts +0 -35
  626. package/dist/tree-select/stories/TreeSelect.stories.d.ts.map +0 -1
  627. package/dist/tree-select/stories/TreeSelect.stories.js +0 -66
  628. package/dist/tree-select/stories/TreeSelect.stories.js.map +0 -1
  629. package/dist/tree-select/stories/treeStoryFixtures.d.ts +0 -3
  630. package/dist/tree-select/stories/treeStoryFixtures.d.ts.map +0 -1
  631. package/dist/tree-table/stories/TreeTable.stories.d.ts +0 -158
  632. package/dist/tree-table/stories/TreeTable.stories.d.ts.map +0 -1
  633. package/src/styles/fonts.scss +0 -47
@@ -0,0 +1,36 @@
1
+ import{i as e}from"./preload-helper-B45gAKPr.js";import{E as t,a as n,d as r,f as i,l as a,m as o,n as s,p as c,r as l,u}from"./blocks-CwEU-ME1.js";import{t as d}from"./jsx-runtime-BBQGix-2.js";import{t as f}from"./mdx-react-shim-DnKFgFHy.js";import{Controlled as p,PaletteOnly as m,WithMeta as h,n as g,t as _}from"./StateSelect.stories-BGDCnVqb.js";function v(e){let o={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...t(),...e.components};return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(a,{of:_,parameters:{docs:{toc:!0}}}),`
2
+ `,(0,b.jsx)(c,{children:`StateSelect`}),`
3
+ `,(0,b.jsx)(i,{children:`Специализированный select для выбора визуального статуса или семантического состояния`}),`
4
+ `,(0,b.jsx)(o.p,{children:`StateSelect уже имеет живые stories, а эта страница собирает их в структурированную документацию с краткими рекомендациями, примерами подключения и API.
5
+ Ниже можно быстро проверить базовый сценарий, а затем перейти к отдельным режимам использования и состояниям компонента. Отдельно разобраны контролируемые сценарии.`}),`
6
+ `,(0,b.jsx)(o.h2,{id:`основной-сценарий`,children:`Основной сценарий`}),`
7
+ `,(0,b.jsx)(u,{}),`
8
+ `,(0,b.jsx)(n,{of:p}),`
9
+ `,(0,b.jsx)(o.pre,{children:(0,b.jsx)(o.code,{className:`language-tsx`,children:`import { useState } from "react";
10
+
11
+ import { StateSelect } from "@/shared/ui";
12
+
13
+ export function Example() {
14
+ const [value, setValue] = useState("information");
15
+
16
+ return <StateSelect label="Состояние" value={value} onChange={setValue} />;
17
+ }
18
+ `})}),`
19
+ `,(0,b.jsx)(o.h2,{id:`практические-рекомендации`,children:`Практические рекомендации`}),`
20
+ `,(0,b.jsxs)(o.ul,{children:[`
21
+ `,(0,b.jsx)(o.li,{children:`Если состояние должно жить во внешней форме или модели, ориентируйтесь на контролируемый режим из документации.`}),`
22
+ `]}),`
23
+ `,(0,b.jsx)(o.h2,{id:`сценарии-использования`,children:`Сценарии использования`}),`
24
+ `,(0,b.jsx)(o.h3,{id:`компонент-работает-в-контролируемом-режиме-когда-состояние-хранится-во-внешнем-компоненте`,children:`Компонент работает в контролируемом режиме, когда состояние хранится во внешнем компоненте`}),`
25
+ `,(0,b.jsx)(o.p,{children:`Компонент работает в контролируемом режиме, когда состояние хранится во внешнем компоненте.`}),`
26
+ `,(0,b.jsx)(l,{of:p}),`
27
+ `,(0,b.jsx)(o.h3,{id:`кастомизация-подписей-и-иконок-состояний`,children:`Кастомизация подписей и иконок состояний`}),`
28
+ `,(0,b.jsx)(o.p,{children:`Кастомизация подписей и иконок состояний.`}),`
29
+ `,(0,b.jsx)(l,{of:h}),`
30
+ `,(0,b.jsx)(o.h3,{id:`ограниченный-набор-доступных-состояний`,children:`Ограниченный набор доступных состояний`}),`
31
+ `,(0,b.jsx)(o.p,{children:`Ограниченный набор доступных состояний.`}),`
32
+ `,(0,b.jsx)(l,{of:m}),`
33
+ `,(0,b.jsx)(o.h2,{id:`api`,children:`API`}),`
34
+ `,(0,b.jsx)(s,{of:_}),`
35
+ `,(0,b.jsx)(o.h2,{id:`все-сторисы`,children:`Все сторисы`}),`
36
+ `,(0,b.jsx)(r,{includePrimary:!1})]})}function y(e={}){let{wrapper:n}={...t(),...e.components};return n?(0,b.jsx)(n,{...e,children:(0,b.jsx)(v,{...e})}):v(e)}var b;e((()=>{b=d(),f(),o(),g()}))();export{y as default};
@@ -0,0 +1 @@
1
+ .p4nQdZ{padding-left:var(--space-sm)}._94tg5v{align-items:center;gap:var(--space-sm);width:100%;min-width:0;min-height:1.5em;display:flex}.HyK7Zs{--state-color:transparent;border-radius:var(--radius-xs);border:var(--border-width) solid var(--border-0);background-color:var(--state-color);flex-shrink:0;width:1.25em;height:1.25em;display:inline-block}.HyK7Zs[data-empty]{background-color:var(--surface-0);background-image:repeating-linear-gradient(135deg, var(--border-0), var(--border-0) .25em, transparent .25em, transparent .5em)}.Mm4hrB{--input-width:auto;gap:var(--space-xs);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.clxxBQ{--input-width:16em}._5pJ7o-{border-radius:var(--radius-sm);-webkit-user-select:none;user-select:none;outline:none}.VV6hKN{padding:var(--space-sm);justify-content:center;align-items:center;min-width:2.25em;display:flex}.cuQNP0{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);display:flex}.w7nIOT{align-items:center;gap:var(--space-xs);min-width:0;display:inline-flex}.ed-Afj{align-items:center;display:inline-flex}.Lbxloe{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}
@@ -0,0 +1,47 @@
1
+ import{a as e,c as t,i as n}from"./preload-helper-B45gAKPr.js";import{C as r}from"./iframe-SfMJGCsn.js";import{t as i}from"./jsx-runtime-BBQGix-2.js";import{a,i as o}from"./utils-CReRlw17.js";import{J as s,K as c,O as l,W as u,o as d,t as f}from"./lucide-react-CK2oyDtF.js";import{d as p,n as m,t as h}from"./formatters-yIBztcem.js";import{t as g}from"./Select-DYVS7SCZ.js";import{t as _}from"./select-BPvMbVDe.js";var v,y,b,x,S,C,w,T,E,D,O,k,A=n((()=>{v=`p4nQdZ`,y=`_94tg5v`,b=`HyK7Zs`,x=`Mm4hrB`,S=`clxxBQ`,C=`_5pJ7o-`,w=`VV6hKN`,T=`cuQNP0`,E=`w7nIOT`,D=`ed-Afj`,O=`Lbxloe`,k={button:v,valueContainer:y,swatch:b,optionsPalette:x,optionsDetailed:S,option:C,optionPalette:w,optionDetailed:T,optionMeta:E,optionMetaIcon:D,optionMetaLabel:O}}));function j({state:e,className:t}){return(0,R.jsx)(`span`,{className:a(k.swatch,t),"data-empty":e===`none`?``:void 0,style:{"--state-color":p[e]}})}function M(e){return!!(e?.icon||e?.label)}function N(e,t){return typeof t?.label==`string`&&t.label.trim()?t.label:e||`empty`}function P(e){return M(e)?(0,R.jsxs)(`span`,{className:k.optionMeta,children:[e?.icon?(0,R.jsx)(`span`,{className:k.optionMetaIcon,children:e.icon}):null,e?.label?(0,R.jsx)(`span`,{className:k.optionMetaLabel,children:e.label}):null]}):null}function F(e,t){return(0,R.jsxs)(`div`,{className:k.valueContainer,children:[(0,R.jsx)(j,{state:e}),P(t)]})}function I({label:e,description:t,disabled:n,placeholder:r,size:i,value:o,onChange:s,options:c=m,stateMeta:l,className:u,clearable:d}){let f=(0,L.useMemo)(()=>Array.from(new Set(c)),[c]),p=f.some(e=>M(l?.[e]));return(0,R.jsx)(g,{label:e,description:t,disabled:n,placeholder:r,size:i,value:o,onChange:s,options:f,className:u,clearable:d,getOptionKey:e=>e||`__empty_state__`,getOptionLabel:e=>l?.[e]?.label??e,getOptionAriaLabel:e=>N(e,l?.[e]),renderValue:e=>F(e,l?.[e]),renderOption:e=>(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(j,{state:e}),p?P(l?.[e]):null]}),buttonClassName:k.button,optionsContentClassName:a(p?k.optionsDetailed:k.optionsPalette),getOptionClassName:()=>a(k.option,p?k.optionDetailed:k.optionPalette)})}var L,R,z=n((()=>{L=t(r(),1),h(),o(),_(),A(),R=i(),I.__docgenInfo={description:`Специализированный селект для выбора цветового или статусного состояния. Используется там, где значению соответствует визуальный swatch.`,methods:[],displayName:`StateSelect`,props:{placeholder:{required:!1,tsType:{name:`string`},description:``},options:{required:!1,tsType:{name:`unknown`},description:``,defaultValue:{value:`DEFAULT_VALUE_STATES`,computed:!0}},stateMeta:{required:!1,tsType:{name:`Partial`,elements:[{name:`Record`,elements:[{name:`State`},{name:`signature`,type:`object`,raw:`{
2
+ label?: ReactNode;
3
+ icon?: ReactNode;
4
+ }`,signature:{properties:[{key:`label`,value:{name:`ReactNode`,required:!1}},{key:`icon`,value:{name:`ReactNode`,required:!1}}]}}],raw:`Record<State, StateMeta>`}],raw:`Partial<Record<State, StateMeta>>`},description:``},className:{required:!1,tsType:{name:`string`},description:``},clearable:{required:!1,tsType:{name:`boolean`},description:``}},composes:[`Omit`]}})),B=e({Controlled:()=>W,PaletteOnly:()=>K,WithMeta:()=>G,__namedExportsOrder:()=>q,default:()=>U}),V,H,U,W,G,K,q,J=n((()=>{V=t(r(),1),f(),z(),H=i(),U={title:`Shared/UI/StateSelect`,component:I,args:{label:`Состояние`,description:`Выберите визуальный статус.`,placeholder:`Выберите значение`,value:`information`,onChange:()=>{},disabled:!1,size:`md`},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{label:{description:`Заголовок поля выбора состояния.`,control:`text`},description:{description:`Описание под заголовком.`,control:`text`},placeholder:{description:`Текст, когда значение не выбрано.`,control:`text`},value:{description:`Текущее состояние.`,control:`select`,options:[``,`none`,`information`,`success`,`warning`,`error`]},onChange:{description:`Вызывается при выборе состояния.`,control:!1},options:{description:`Кастомный набор доступных состояний.`,control:!1},stateMeta:{description:`Кастомные иконки и подписи для значений.`,control:!1},disabled:{description:`Блокирует взаимодействие с полем.`,control:`boolean`},size:{description:`Размер поля и подписей.`,control:`select`,options:[`xs`,`sm`,`md`,`lg`,`xl`]},className:{description:`Дополнительный CSS-класс.`,control:`text`}}},W={render:e=>{let[t,n]=(0,V.useState)(`information`);return(0,H.jsx)(I,{...e,value:t,onChange:n})}},G={render:e=>{let[t,n]=(0,V.useState)(`warning`);return(0,H.jsx)(I,{...e,value:t,onChange:n,stateMeta:{none:{label:`Без статуса`,icon:(0,H.jsx)(c,{})},information:{label:`Инфо`,icon:(0,H.jsx)(l,{})},success:{label:`Успех`,icon:(0,H.jsx)(s,{})},warning:{label:`Предупреждение`,icon:(0,H.jsx)(d,{})},error:{label:`Ошибка`,icon:(0,H.jsx)(u,{})}}})},args:{value:`warning`}},K={render:e=>{let[t,n]=(0,V.useState)(`none`);return(0,H.jsx)(I,{...e,value:t,onChange:n,options:[`none`,`success`,`error`]})},args:{options:[`none`,`success`,`error`],value:`none`}},W.parameters={...W.parameters,docs:{...W.parameters?.docs,source:{originalSource:`{
5
+ render: args => {
6
+ const [value, setValue] = useState<State | undefined>("information");
7
+ return <StateSelect {...args} value={value} onChange={setValue} />;
8
+ }
9
+ }`,...W.parameters?.docs?.source}}},G.parameters={...G.parameters,docs:{...G.parameters?.docs,source:{originalSource:`{
10
+ render: args => {
11
+ const [value, setValue] = useState<State | undefined>("warning");
12
+ return <StateSelect {...args} value={value} onChange={setValue} stateMeta={{
13
+ none: {
14
+ label: "Без статуса",
15
+ icon: <MinusCircleIcon />
16
+ },
17
+ information: {
18
+ label: "Инфо",
19
+ icon: <InfoIcon />
20
+ },
21
+ success: {
22
+ label: "Успех",
23
+ icon: <CheckCircle2Icon />
24
+ },
25
+ warning: {
26
+ label: "Предупреждение",
27
+ icon: <AlertTriangleIcon />
28
+ },
29
+ error: {
30
+ label: "Ошибка",
31
+ icon: <XCircleIcon />
32
+ }
33
+ }} />;
34
+ },
35
+ args: {
36
+ value: "warning"
37
+ }
38
+ }`,...G.parameters?.docs?.source}}},K.parameters={...K.parameters,docs:{...K.parameters?.docs,source:{originalSource:`{
39
+ render: args => {
40
+ const [value, setValue] = useState<State | undefined>("none");
41
+ return <StateSelect {...args} value={value} onChange={setValue} options={["none", "success", "error"]} />;
42
+ },
43
+ args: {
44
+ options: ["none", "success", "error"],
45
+ value: "none"
46
+ }
47
+ }`,...K.parameters?.docs?.source}}},q=[`Controlled`,`WithMeta`,`PaletteOnly`]}));J();export{W as Controlled,K as PaletteOnly,G as WithMeta,q as __namedExportsOrder,U as default,J as n,B as t};
@@ -0,0 +1,36 @@
1
+ import{i as e}from"./preload-helper-B45gAKPr.js";import{E as t,a as n,d as r,f as i,l as a,m as o,n as s,p as c,r as l,u}from"./blocks-CwEU-ME1.js";import{t as d}from"./jsx-runtime-BBQGix-2.js";import{t as f}from"./mdx-react-shim-DnKFgFHy.js";import{BiState as p,Disabled as m,TriState as h,n as g,t as _}from"./Switch.stories-BmCl_Ts5.js";function v(e){let o={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...t(),...e.components};return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(a,{of:_,parameters:{docs:{toc:!0}}}),`
2
+ `,(0,b.jsx)(c,{children:`Switch`}),`
3
+ `,(0,b.jsx)(i,{children:`Переключатель в виде слайдера для быстрых включений, отключений и tri-state сценариев`}),`
4
+ `,(0,b.jsx)(o.p,{children:`Switch уже имеет живые stories, а эта страница собирает их в структурированную документацию с краткими рекомендациями, примерами подключения и API.
5
+ Ниже можно быстро проверить базовый сценарий, а затем перейти к отдельным режимам использования и состояниям компонента. Отдельно разобраны заблокированные состояния.`}),`
6
+ `,(0,b.jsx)(o.h2,{id:`основной-сценарий`,children:`Основной сценарий`}),`
7
+ `,(0,b.jsx)(u,{}),`
8
+ `,(0,b.jsx)(n,{of:p}),`
9
+ `,(0,b.jsx)(o.pre,{children:(0,b.jsx)(o.code,{className:`language-tsx`,children:`import { useState } from "react";
10
+
11
+ import { Switch } from "@/shared/ui";
12
+
13
+ export function Example() {
14
+ const [value, setValue] = useState(undefined);
15
+
16
+ return <Switch triState label="Автовыбор" value={value} onChange={setValue} />;
17
+ }
18
+ `})}),`
19
+ `,(0,b.jsx)(o.h2,{id:`практические-рекомендации`,children:`Практические рекомендации`}),`
20
+ `,(0,b.jsxs)(o.ul,{children:[`
21
+ `,(0,b.jsx)(o.li,{children:`Заблокированное состояние лучше проверять отдельно, чтобы убедиться, что визуально и поведенчески оно остается понятным.`}),`
22
+ `]}),`
23
+ `,(0,b.jsx)(o.h2,{id:`сценарии-использования`,children:`Сценарии использования`}),`
24
+ `,(0,b.jsx)(o.h3,{id:`классический-двухсостоянный-режим`,children:`Классический двухсостоянный режим`}),`
25
+ `,(0,b.jsx)(o.p,{children:`Классический двухсостоянный режим.`}),`
26
+ `,(0,b.jsx)(l,{of:p}),`
27
+ `,(0,b.jsx)(o.h3,{id:`трехсостояние-с-промежуточным-значением`,children:`Трехсостояние с промежуточным значением`}),`
28
+ `,(0,b.jsx)(o.p,{children:`Трехсостояние с промежуточным значением.`}),`
29
+ `,(0,b.jsx)(l,{of:h}),`
30
+ `,(0,b.jsx)(o.h3,{id:`проверка-поведения-в-заблокированном-состоянии`,children:`Проверка поведения в заблокированном состоянии`}),`
31
+ `,(0,b.jsx)(o.p,{children:`Проверка поведения в заблокированном состоянии.`}),`
32
+ `,(0,b.jsx)(l,{of:m}),`
33
+ `,(0,b.jsx)(o.h2,{id:`api`,children:`API`}),`
34
+ `,(0,b.jsx)(s,{of:_}),`
35
+ `,(0,b.jsx)(o.h2,{id:`все-сторисы`,children:`Все сторисы`}),`
36
+ `,(0,b.jsx)(r,{includePrimary:!1})]})}function y(e={}){let{wrapper:n}={...t(),...e.components};return n?(0,b.jsx)(n,{...e,children:(0,b.jsx)(v,{...e})}):v(e)}var b;e((()=>{b=d(),f(),o(),g()}))();export{y as default};
@@ -0,0 +1 @@
1
+ .Or5LYA{--size:calc(var(--control-height) - calc(var(--border-width) * 4));padding:0 var(--border-width);display:block}.qge3io{width:calc(var(--control-height) * 2);justify-content:space-between;display:flex}.qge3io[data-disabled] svg{color:var(--content-2)}.w0AMfA{border-radius:var(--radius-xs);width:var(--size);height:var(--size);opacity:.25;justify-content:center;align-items:center;display:flex}.w0AMfA svg{color:var(--content-0);display:block}.w0AMfA.P1x4lq{flex:100%;width:100%}.w0AMfA.-ZVOZo{background-color:var(--surface-2);opacity:1}
@@ -0,0 +1,26 @@
1
+ import{a as e,c as t,i as n}from"./preload-helper-B45gAKPr.js";import{C as r}from"./iframe-SfMJGCsn.js";import{t as i}from"./jsx-runtime-BBQGix-2.js";import{a,i as o}from"./utils-CReRlw17.js";import{J as s,t as c,vt as l}from"./lucide-react-CK2oyDtF.js";import{n as u,t as d}from"./ui.module-DS2qtZts.js";var f,p,m,h,g,_=n((()=>{f=`Or5LYA`,p=`w0AMfA`,m=`P1x4lq`,h=`-ZVOZo`,g={switchWrapper:f,switch:`qge3io`,iconWrapper:p,auto:m,checked:h}}));function v(e){let{label:t,description:n,disabled:r,checkedIcon:i=(0,b.jsx)(s,{}),uncheckedIcon:o=(0,b.jsx)(l,{}),className:c,type:d,id:f,size:p,placeholder:m,onChange:h,value:_,triState:v,...x}=e,S=(0,y.useId)(),C=f??S,w=n?`${C}-description`:void 0,T=t?`${C}-label`:void 0,E=()=>{if(!e.triState){e.onChange(!e.value);return}if(e.value===void 0){e.onChange(!0);return}if(e.value===!0){e.onChange(!1);return}e.value===!1&&e.onChange(void 0)},D=typeof e.value==`boolean`?e.value:!1,O=e.triState&&typeof e.value!=`boolean`,k=x[`aria-label`]??(t?void 0:`Переключатель`);return(0,b.jsxs)(`div`,{className:a(u.uiElement,r&&u.disabled),"aria-disabled":r||void 0,children:[t&&(0,b.jsxs)(`div`,{id:T,className:u.uiLabel,children:[t,`:`]}),n&&(0,b.jsx)(`p`,{id:w,className:u.uiDescription,children:n}),(0,b.jsx)(`button`,{...x,id:C,type:d??`button`,role:`switch`,disabled:r,"aria-checked":D,"aria-describedby":w,"aria-labelledby":T,"aria-label":k,"aria-disabled":r,"data-ui":`switch`,"data-action":`toggle-switch`,onClick:E,className:a(u.uiInputControl,g.switchWrapper,c),children:(0,b.jsx)(`div`,{className:g.switch,"data-disabled":r||void 0,children:O?(0,b.jsx)(`div`,{className:a(g.iconWrapper,g.auto,g.checked),children:`Auto`}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(`div`,{className:a(g.iconWrapper,!e.value&&g.checked),children:o}),(0,b.jsx)(`div`,{className:a(g.iconWrapper,e.value&&g.checked),children:i})]})})})]})}var y,b,x=n((()=>{y=t(r(),1),o(),c(),d(),_(),b=i(),v.__docgenInfo={description:`Переключатель boolean-состояния в виде слайдера. Подходит для быстрых настроек и включения/отключения опций.`,methods:[],displayName:`Switch`}})),S=e({BiState:()=>E,Disabled:()=>O,TriState:()=>D,__namedExportsOrder:()=>k,default:()=>T}),C,w,T,E,D,O,k,A=n((()=>{C=t(r(),1),x(),w=i(),T={title:`Shared/UI/Switch`,component:v,args:{label:`Режим обработки`,description:`Переключение состояния`,value:!1,onChange:()=>{},triState:!1,disabled:!1},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{label:{description:`Заголовок переключателя.`,control:`text`},description:{description:`Описание под заголовком.`,control:`text`},value:{description:"Текущее значение (`boolean` или `undefined` в tri-state).",control:!1},onChange:{description:`Вызывается при изменении состояния.`,control:!1},triState:{description:"Включает трехсостоянный режим (`undefined → true → false`).",control:`boolean`},checkedIcon:{description:"Кастомная иконка для состояния `true`.",control:!1},uncheckedIcon:{description:"Кастомная иконка для состояния `false`.",control:!1},disabled:{description:`Блокирует переключение.`,control:`boolean`}}},E={render:e=>{let[t,n]=(0,C.useState)(!1);return(0,w.jsx)(v,{...e,value:t,onChange:n,triState:!1})}},D={render:e=>{let[t,n]=(0,C.useState)(void 0);return(0,w.jsxs)(`div`,{style:{display:`grid`,gap:8},children:[(0,w.jsx)(v,{...e,value:t,onChange:n,triState:!0}),(0,w.jsxs)(`div`,{children:[`Текущее значение: `,String(t)]})]})},args:{triState:!0,value:void 0}},O={args:{disabled:!0,value:!0}},E.parameters={...E.parameters,docs:{...E.parameters?.docs,source:{originalSource:`{
2
+ render: args => {
3
+ const [value, setValue] = useState(false);
4
+ return <Switch {...args} value={value} onChange={setValue} triState={false} />;
5
+ }
6
+ }`,...E.parameters?.docs?.source}}},D.parameters={...D.parameters,docs:{...D.parameters?.docs,source:{originalSource:`{
7
+ render: args => {
8
+ const [value, setValue] = useState<boolean | undefined>(undefined);
9
+ return <div style={{
10
+ display: "grid",
11
+ gap: 8
12
+ }}>
13
+ <Switch {...args} value={value} onChange={setValue} triState />
14
+ <div>Текущее значение: {String(value)}</div>
15
+ </div>;
16
+ },
17
+ args: {
18
+ triState: true,
19
+ value: undefined
20
+ }
21
+ }`,...D.parameters?.docs?.source}}},O.parameters={...O.parameters,docs:{...O.parameters?.docs,source:{originalSource:`{
22
+ args: {
23
+ disabled: true,
24
+ value: true
25
+ }
26
+ }`,...O.parameters?.docs?.source}}},k=[`BiState`,`TriState`,`Disabled`]}));A();export{E as BiState,O as Disabled,D as TriState,k as __namedExportsOrder,T as default,A as n,S as t};
@@ -0,0 +1 @@
1
+ .hKghZt{box-shadow:inset .1875rem 0 0 var(--content-accent)}.QsLRvS{height:1px}
@@ -0,0 +1,197 @@
1
+ import{i as e}from"./preload-helper-B45gAKPr.js";import{E as t,a as n,d as r,f as i,l as a,m as o,n as s,p as c,r as l,u}from"./blocks-CwEU-ME1.js";import{t as d}from"./jsx-runtime-BBQGix-2.js";import{t as f}from"./mdx-react-shim-DnKFgFHy.js";import{Basic as p,Empty as m,Fetching as h,Loading as g,MultiSelect as _,ReachEnd as v,WithColumnPinning as y,WithDisabledRows as b,WithFormattingPipeline as x,WithFormulaColumn as S,WithHiddenZero as C,WithMergedDuplicates as w,WithODataMetadataAdapter as T,WithUseODataTableColumnsBuildHook as E,WithUseODataTableColumnsEnrichHook as D,n as O,t as k}from"./Table.stories-CA7ARhwC.js";function A(e){let o={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...t(),...e.components};return(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(a,{of:k,parameters:{docs:{toc:!0}}}),`
2
+ `,(0,M.jsx)(c,{children:`Table`}),`
3
+ `,(0,M.jsxs)(i,{children:[`Плоская таблица как React-альтернатива `,(0,M.jsx)(o.code,{children:`sap.m.Table`})]}),`
4
+ `,(0,M.jsxs)(o.p,{children:[(0,M.jsx)(o.code,{children:`Table`}),` предназначен для плоских данных и по поведению осознанно сближен с `,(0,M.jsx)(o.code,{children:`TreeTable`}),`.
5
+ Оба компонента используют общий табличный каркас, поэтому здесь совпадают states загрузки, визуальная структура, обработка выбора строк и клавиатурная активация.
6
+ `,(0,M.jsx)(o.code,{children:`Table`}),` также поддерживает декларативное форматирование через `,(0,M.jsx)(o.code,{children:`meta.formatting`}),`, formulas, безопасное pipeline-formatting и optional OData adapter.`]}),`
7
+ `,(0,M.jsx)(o.h2,{id:`основной-сценарий`,children:`Основной сценарий`}),`
8
+ `,(0,M.jsx)(u,{}),`
9
+ `,(0,M.jsx)(n,{of:p}),`
10
+ `,(0,M.jsx)(o.pre,{children:(0,M.jsx)(o.code,{className:`language-tsx`,children:`import { Table, type TableColumnDef } from "@/shared/ui";
11
+
12
+ interface DealRow {
13
+ id: string;
14
+ number: string;
15
+ client: string;
16
+ amount: string;
17
+ }
18
+
19
+ const columns: TableColumnDef<DealRow>[] = [
20
+ {
21
+ id: "number",
22
+ accessorKey: "number",
23
+ header: "Номер",
24
+ meta: { width: "9em" }
25
+ },
26
+ {
27
+ id: "client",
28
+ accessorKey: "client",
29
+ header: "Клиент",
30
+ meta: { width: "14em" }
31
+ },
32
+ {
33
+ id: "amount",
34
+ accessorKey: "amount",
35
+ header: "Сумма",
36
+ meta: { width: "10em", align: "right" }
37
+ }
38
+ ];
39
+
40
+ export function Example({ rows }: { rows: DealRow[] }) {
41
+ return <Table data={rows} columns={columns} getRowId={(row) => row.id} selectionMode="single" height="20em" />;
42
+ }
43
+ `})}),`
44
+ `,(0,M.jsx)(o.h2,{id:`форматирование-ячеек`,children:`Форматирование ячеек`}),`
45
+ `,(0,M.jsxs)(o.p,{children:[(0,M.jsx)(o.code,{children:`meta.formatting`}),` добавляет к колонке декларативный runtime-контракт:`]}),`
46
+ `,(0,M.jsxs)(o.ul,{children:[`
47
+ `,(0,M.jsxs)(o.li,{children:[`typed formatting по `,(0,M.jsx)(o.code,{children:`role/type`}),`;`]}),`
48
+ `,(0,M.jsx)(o.li,{children:`formula-based вычисление значения;`}),`
49
+ `,(0,M.jsxs)(o.li,{children:[`pipeline display-formatting (`,(0,M.jsx)(o.code,{children:`normalizeLeadingZeros`}),`, `,(0,M.jsx)(o.code,{children:`resolveValueState`}),`, `,(0,M.jsx)(o.code,{children:`typedValueFormat`}),`);`]}),`
50
+ `,(0,M.jsxs)(o.li,{children:[(0,M.jsx)(o.code,{children:`emptyWhenZero`}),` для скрытия нулевых значений;`]}),`
51
+ `,(0,M.jsxs)(o.li,{children:[(0,M.jsx)(o.code,{children:`overflowTooltip`}),` для длинного текста.`]}),`
52
+ `]}),`
53
+ `,(0,M.jsx)(o.p,{children:`Важно:`}),`
54
+ `,(0,M.jsxs)(o.ul,{children:[`
55
+ `,(0,M.jsxs)(o.li,{children:[(0,M.jsx)(o.code,{children:`meta.formatting`}),` применяется только если у колонки нет кастомного `,(0,M.jsx)(o.code,{children:`cell`}),`;`]}),`
56
+ `,(0,M.jsx)(o.li,{children:`formulas и pipeline компилируются один раз на снимок колонок;`}),`
57
+ `,(0,M.jsxs)(o.li,{children:[`ошибки formula/pipeline не роняют таблицу и не подставляют универсальный `,(0,M.jsx)(o.code,{children:`0`}),`;`]}),`
58
+ `,(0,M.jsxs)(o.li,{children:[`OData adapter остаётся внешней прослойкой, а не частью `,(0,M.jsx)(o.code,{children:`Table`}),`.`]}),`
59
+ `]}),`
60
+ `,(0,M.jsx)(o.pre,{children:(0,M.jsx)(o.code,{className:`language-tsx`,children:`const columns: TableColumnDef<Row>[] = [
61
+ {
62
+ id: "amount",
63
+ accessorKey: "amount",
64
+ header: "Сумма",
65
+ meta: {
66
+ align: "right",
67
+ formatting: {
68
+ role: "measure",
69
+ type: "decimal",
70
+ emptyWhenZero: true
71
+ }
72
+ }
73
+ }
74
+ ];
75
+ `})}),`
76
+ `,(0,M.jsxs)(o.p,{children:[`Для OData-сценариев можно не прописывать `,(0,M.jsx)(o.code,{children:`role/type`}),` вручную, а обогатить колонки через adapter:`]}),`
77
+ `,(0,M.jsx)(o.pre,{children:(0,M.jsx)(o.code,{className:`language-tsx`,children:`import { enrichTableColumnsWithODataFormatting } from "@ryuzaki13/react-foundation-lib/table";
78
+
79
+ const columns = enrichTableColumnsWithODataFormatting(manualColumns, metadata.columns);
80
+ `})}),`
81
+ `,(0,M.jsx)(o.h2,{id:`слияние-дубликатов`,children:`Слияние дубликатов`}),`
82
+ `,(0,M.jsxs)(o.p,{children:[(0,M.jsx)(o.code,{children:`meta.mergeDuplicates`}),` включает display-only слияние подряд идущих одинаковых raw-значений без изменения структуры строк.`]}),`
83
+ `,(0,M.jsx)(o.p,{children:`Важно:`}),`
84
+ `,(0,M.jsxs)(o.ul,{children:[`
85
+ `,(0,M.jsxs)(o.li,{children:[`сравнение идёт по `,(0,M.jsx)(o.code,{children:`cell.getValue()`}),`, а не по formatted display;`]}),`
86
+ `,(0,M.jsx)(o.li,{children:`объединяются только подряд идущие строки;`}),`
87
+ `,(0,M.jsxs)(o.li,{children:[(0,M.jsx)(o.code,{children:`null`}),`, `,(0,M.jsx)(o.code,{children:`undefined`}),` и пустая строка `,(0,M.jsx)(o.code,{children:`""`}),` не объединяются;`]}),`
88
+ `,(0,M.jsx)(o.li,{children:`повторяющееся значение остаётся только в первой строке группы, а ниже рендерятся пустые ячейки;`}),`
89
+ `,(0,M.jsx)(o.li,{children:`если сервер не отсортировал данные так, чтобы дубликаты шли подряд, слияния не будет.`}),`
90
+ `]}),`
91
+ `,(0,M.jsx)(o.pre,{children:(0,M.jsx)(o.code,{className:`language-tsx`,children:`const columns: TableColumnDef<Row>[] = [
92
+ {
93
+ id: "division",
94
+ accessorKey: "division",
95
+ header: "Дивизион",
96
+ meta: {
97
+ mergeDuplicates: true
98
+ }
99
+ }
100
+ ];
101
+ `})}),`
102
+ `,(0,M.jsxs)(o.h2,{id:`хук-useodatatablecolumns`,children:[`Хук `,(0,M.jsx)(o.code,{children:`useODataTableColumns`})]}),`
103
+ `,(0,M.jsxs)(o.p,{children:[`Наиболее частый кейс - работать не с pure-helper напрямую, а с hook-слоем `,(0,M.jsx)(o.code,{children:`useODataTableColumns(...)`}),`.`]}),`
104
+ `,(0,M.jsxs)(o.p,{children:[(0,M.jsx)(o.code,{children:`build`}),` стоит выбирать, когда колонки можно полностью собрать из `,(0,M.jsx)(o.code,{children:`metadata.columns`}),`:`]}),`
105
+ `,(0,M.jsx)(o.pre,{children:(0,M.jsx)(o.code,{className:`language-tsx`,children:`import { useODataTableColumns } from "@ryuzaki13/react-foundation-api/odata";
106
+ import { Table } from "@/shared/ui";
107
+
108
+ function DealsTable({ rows }: { rows: DealRow[] }) {
109
+ const { columns, metadata, isLoading } = useODataTableColumns<DealRow>({
110
+ service: "ZSD_SALES_SRV",
111
+ entity: "DealSet",
112
+ mode: "build"
113
+ });
114
+
115
+ return (
116
+ <Table
117
+ title={metadata?.title ?? "Сделки"}
118
+ data={rows}
119
+ columns={columns}
120
+ isLoading={isLoading}
121
+ getRowId={(row) => row.id}
122
+ selectionMode="single"
123
+ />
124
+ );
125
+ }
126
+ `})}),`
127
+ `,(0,M.jsxs)(o.p,{children:[(0,M.jsx)(o.code,{children:`enrich`}),` подходит, когда колонки уже описаны вручную и нужно только дозаполнить `,(0,M.jsx)(o.code,{children:`meta.formatting.role/type`}),`:`]}),`
128
+ `,(0,M.jsx)(o.pre,{children:(0,M.jsx)(o.code,{className:`language-tsx`,children:`import { useODataTableColumns } from "@ryuzaki13/react-foundation-api/odata";
129
+ import { Table } from "@/shared/ui";
130
+
131
+ const manualColumns: TableColumnDef<DealRow>[] = [
132
+ { id: "product", accessorKey: "product", header: "Позиция" },
133
+ { id: "createdAt", accessorKey: "createdAt", header: "Создано" },
134
+ { id: "totalAmount", accessorKey: "totalAmount", header: "Итог", meta: { align: "right" } }
135
+ ];
136
+
137
+ function DealsTable({ rows }: { rows: DealRow[] }) {
138
+ const { columns, isLoading } = useODataTableColumns<DealRow>({
139
+ service: "ZSD_SALES_SRV",
140
+ entity: "DealSet",
141
+ mode: "enrich",
142
+ columns: manualColumns
143
+ });
144
+
145
+ return <Table data={rows} columns={columns} isLoading={isLoading} getRowId={(row) => row.id} selectionMode="single" />;
146
+ }
147
+ `})}),`
148
+ `,(0,M.jsx)(o.p,{children:`Практическая семантика хука:`}),`
149
+ `,(0,M.jsxs)(o.ul,{children:[`
150
+ `,(0,M.jsxs)(o.li,{children:[(0,M.jsx)(o.code,{children:`columns`}),` уже готовы для прямой передачи в `,(0,M.jsx)(o.code,{children:`Table`}),`;`]}),`
151
+ `,(0,M.jsxs)(o.li,{children:[(0,M.jsx)(o.code,{children:`metadata`}),` можно использовать для заголовка, пустых состояний или дополнительной UI-подписи;`]}),`
152
+ `,(0,M.jsxs)(o.li,{children:[(0,M.jsx)(o.code,{children:`isLoading`}),` нужно прокидывать в `,(0,M.jsx)(o.code,{children:`Table`}),`, чтобы сохранить единое табличное состояние загрузки;`]}),`
153
+ `,(0,M.jsxs)(o.li,{children:[`сам `,(0,M.jsx)(o.code,{children:`Table`}),` остаётся OData-независимым и получает только готовые `,(0,M.jsx)(o.code,{children:`columns`}),`.`]}),`
154
+ `]}),`
155
+ `,(0,M.jsx)(o.h2,{id:`что-важно-знать`,children:`Что важно знать`}),`
156
+ `,(0,M.jsxs)(o.ul,{children:[`
157
+ `,(0,M.jsx)(o.li,{children:`Компонент принимает именно плоский массив строк и не содержит древовидной логики.`}),`
158
+ `,(0,M.jsxs)(o.li,{children:[`Поведение `,(0,M.jsx)(o.code,{children:`selectionMode`}),` идентично `,(0,M.jsx)(o.code,{children:`TreeTable`}),`: `,(0,M.jsx)(o.code,{children:`single`}),` не снимает выбор повторным кликом по уже выбранной строке.`]}),`
159
+ `,(0,M.jsxs)(o.li,{children:[(0,M.jsx)(o.code,{children:`height`}),` и ширины колонок можно задавать строками в `,(0,M.jsx)(o.code,{children:`em`}),`, `,(0,M.jsx)(o.code,{children:`rem`}),`, `,(0,M.jsx)(o.code,{children:`%`}),` и других CSS-единицах; числовые значения трактуются как `,(0,M.jsx)(o.code,{children:`em`}),`.`]}),`
160
+ `,(0,M.jsxs)(o.li,{children:[(0,M.jsx)(o.code,{children:`onReachEnd`}),` срабатывает внутри scroll-контейнера и подходит для постепенной догрузки длинного списка.`]}),`
161
+ `,(0,M.jsxs)(o.li,{children:[(0,M.jsx)(o.code,{children:`Table`}),` не зависит от OData напрямую и продолжает работать на plain local data без metadata.`]}),`
162
+ `]}),`
163
+ `,(0,M.jsx)(o.h2,{id:`сценарии`,children:`Сценарии`}),`
164
+ `,(0,M.jsx)(o.h3,{id:`базовый-режим`,children:`Базовый режим`}),`
165
+ `,(0,M.jsx)(l,{of:p}),`
166
+ `,(0,M.jsx)(o.h3,{id:`left-pinning-столбцов`,children:`Left-pinning столбцов`}),`
167
+ `,(0,M.jsx)(l,{of:y}),`
168
+ `,(0,M.jsx)(o.h3,{id:`множественный-выбор`,children:`Множественный выбор`}),`
169
+ `,(0,M.jsx)(l,{of:_}),`
170
+ `,(0,M.jsx)(o.h3,{id:`строки-с-ограничением-выбора`,children:`Строки с ограничением выбора`}),`
171
+ `,(0,M.jsx)(l,{of:b}),`
172
+ `,(0,M.jsx)(o.h3,{id:`фоновое-обновление-данных`,children:`Фоновое обновление данных`}),`
173
+ `,(0,M.jsx)(l,{of:h}),`
174
+ `,(0,M.jsx)(o.h3,{id:`пустая-таблица`,children:`Пустая таблица`}),`
175
+ `,(0,M.jsx)(l,{of:m}),`
176
+ `,(0,M.jsx)(o.h3,{id:`достижение-конца-списка`,children:`Достижение конца списка`}),`
177
+ `,(0,M.jsx)(l,{of:v}),`
178
+ `,(0,M.jsx)(o.h3,{id:`первичная-загрузка`,children:`Первичная загрузка`}),`
179
+ `,(0,M.jsx)(l,{of:g}),`
180
+ `,(0,M.jsx)(o.h3,{id:`formula-based-колонка`,children:`Formula-based колонка`}),`
181
+ `,(0,M.jsx)(l,{of:S}),`
182
+ `,(0,M.jsx)(o.h3,{id:`pipeline-display-formatting`,children:`Pipeline display-formatting`}),`
183
+ `,(0,M.jsx)(l,{of:x}),`
184
+ `,(0,M.jsx)(o.h3,{id:`скрытие-нулевых-значений`,children:`Скрытие нулевых значений`}),`
185
+ `,(0,M.jsx)(l,{of:C}),`
186
+ `,(0,M.jsx)(o.h3,{id:`слияние-дубликатов-1`,children:`Слияние дубликатов`}),`
187
+ `,(0,M.jsx)(l,{of:w}),`
188
+ `,(0,M.jsx)(o.h3,{id:`odata-metadata-adapter`,children:`OData metadata adapter`}),`
189
+ `,(0,M.jsx)(l,{of:T}),`
190
+ `,(0,M.jsx)(o.h3,{id:`useodatatablecolumns-build`,children:`useODataTableColumns: build`}),`
191
+ `,(0,M.jsx)(l,{of:E}),`
192
+ `,(0,M.jsx)(o.h3,{id:`useodatatablecolumns-enrich`,children:`useODataTableColumns: enrich`}),`
193
+ `,(0,M.jsx)(l,{of:D}),`
194
+ `,(0,M.jsx)(o.h2,{id:`api`,children:`API`}),`
195
+ `,(0,M.jsx)(s,{of:k}),`
196
+ `,(0,M.jsx)(o.h2,{id:`все-stories`,children:`Все stories`}),`
197
+ `,(0,M.jsx)(r,{includePrimary:!1})]})}function j(e={}){let{wrapper:n}={...t(),...e.components};return n?(0,M.jsx)(n,{...e,children:(0,M.jsx)(A,{...e})}):A(e)}var M;e((()=>{M=d(),f(),o(),O()}))();export{j as default};
@@ -0,0 +1,122 @@
1
+ import{a as e,c as t,i as n}from"./preload-helper-B45gAKPr.js";import{C as r}from"./iframe-SfMJGCsn.js";import{t as i}from"./jsx-runtime-BBQGix-2.js";import{t as a,w as ee}from"./formatters-yIBztcem.js";import{D as te,E as o,T as ne,c as re,l as ie,s as ae,t as s,v as c,w as oe}from"./odata-C2BNbnc9.js";import{C as se,S as ce,d as le,g as ue,i as de,l as fe,m as pe,n as me,p as he,s as ge,t as l,v as _e,x as u,y as ve}from"./base-table-BSkQBgdx.js";var d,f,p,ye=n((()=>{d=`hKghZt`,f=`QsLRvS`,p={selectedIndicatorCell:d,sentinel:f}}));function be(e,t){return String(t)}function m({title:e,isLoading:t,isFetching:n,data:r,columns:i,selectionMode:a=`none`,selectedRowIds:te,getRowId:o,className:ne,minHeight:ie,tableClassName:ae,columnVisibility:s,defaultColumnVisibility:c,columnOrder:oe,defaultColumnOrder:l,columnSizing:u,defaultColumnSizing:d,columnPinning:f,defaultColumnPinning:ye,enableColumnResizing:m=!1,enableColumnReordering:xe=!1,columnResizeMinWidth:_,onColumnVisibilityChange:Se,onColumnOrderChange:Ce,onColumnSizingChange:we,onColumnPinningChange:Te,onRowClick:v,onRowSelectionChange:y,onReachEnd:b,getRowCanSelect:x,getRowClassName:S,renderHeaderContextMenu:C,renderCellContent:w}){let T=(0,h.useMemo)(()=>r??[],[r]),E=(0,h.useMemo)(()=>ue(i),[i]),D=o??be,O=(0,h.useMemo)(()=>new Map(T.map((e,t)=>[D(e,t),e])),[D,T]),k=(0,h.useMemo)(()=>Array.from(O.keys()),[O]),A=(0,h.useRef)(null),j=(0,h.useRef)(null),{rowSelection:M,activateRowSelection:N}=re({availableRowIds:k,rowById:O,selectionMode:a,selectedRowIds:te,onRowSelectionChange:y}),{columnVisibility:P,onColumnVisibilityChange:F}=ge({columnVisibility:s,defaultColumnVisibility:c,onColumnVisibilityChange:Se}),{columnOrder:I,onColumnOrderChange:L}=he({columnOrder:oe,defaultColumnOrder:l,onColumnOrderChange:Ce}),{columnSizing:R,onColumnSizingChange:z}=fe({columnSizing:u,defaultColumnSizing:d,columnResizeMinWidth:_,onColumnSizingChange:we}),{columnPinning:B,onColumnPinningChange:V}=le({columnPinning:f,defaultColumnPinning:ye,onColumnPinningChange:Te}),H=(0,h.useMemo)(()=>({columnOrder:I,columnPinning:B,columnSizing:R,columnVisibility:P}),[I,B,R,P]),U=(0,h.useEffectEvent)(()=>{b?.()});(0,h.useEffect)(()=>{if(!b||!A.current||!j.current||t)return;let e=new IntersectionObserver(e=>{e[0]?.isIntersecting&&U()},{root:A.current,threshold:.1});return e.observe(j.current),()=>e.disconnect()},[t,b,T.length]);let W=ce({data:T,columns:i,state:{columnOrder:I,columnPinning:B,columnSizing:R,columnVisibility:P,rowSelection:M},onColumnOrderChange:L,onColumnPinningChange:V,onColumnSizingChange:z,onColumnVisibilityChange:F,getRowId:(e,t)=>D(e,t),getCoreRowModel:se(),enableMultiRowSelection:a===`multi`,enableRowSelection:e=>a===`none`?!1:x?x(e.original):!0}),G=ve(W,H),K=W.getRowModel().rows,q=(0,h.useMemo)(()=>pe({rows:K,columns:G}),[K,G]),J=G[0]?.id;return(0,g.jsx)(de,{table:W,columnState:H,title:e,isLoading:t,isFetching:n,className:ne,minHeight:ie,tableClassName:ae,selectionMode:a,scrollableRef:A,onActivateRow:a!==`none`||v?e=>{N(e.id,e.getCanSelect()),v?.(e.original)}:void 0,isRowInteractive:e=>!!(v||a!==`none`&&e.getCanSelect()),getRowClassName:e=>S?.(e.original),getCellClassName:({row:e,cell:t})=>t.column.id===J&&e.getIsSelected()?p.selectedIndicatorCell:void 0,getCellLayout:({cell:e})=>q.get(e.id),renderHeaderContextMenu:C,enableColumnResizing:m,enableColumnReordering:xe,columnResizeMinWidth:_,renderCellContent:e=>{let t=ee({field:E.runtimeByColumnId[e.cell.column.id],rawValue:e.cell.getValue(),rowData:e.row.original,rowKind:`plain`}),n=_e({columnId:e.cell.column.id,runtimeByColumnId:E.runtimeByColumnId,customCellColumnIds:E.customCellColumnIds})?(0,g.jsx)(me,{displayValue:t,align:e.columnMeta?.align}):e.defaultContent;return w?w({...e,defaultContent:n,displayValue:t}):n},afterTableContent:b?(0,g.jsx)(`div`,{ref:j,className:p.sentinel,"aria-hidden":`true`}):null})}var h,g,xe=n((()=>{h=t(r(),1),a(),c(),u(),l(),ye(),g=i(),m.__docgenInfo={description:"Плоская таблица на базе TanStack Table как React-альтернатива `sap.m.Table`.",methods:[],displayName:`Table`,props:{title:{required:!1,tsType:{name:`string`},description:`Необязательный заголовок над таблицей.`},isLoading:{required:!1,tsType:{name:`boolean`},description:`Признак первичной загрузки.`},isFetching:{required:!1,tsType:{name:`boolean`},description:`Признак фоновой догрузки или обновления данных.`},data:{required:!0,tsType:{name:`union`,raw:`readonly TData[] | undefined | null`,elements:[{name:`unknown`},{name:`undefined`},{name:`null`}]},description:`Плоский источник строк.`},columns:{required:!0,tsType:{name:`unknown`},description:`Описание колонок таблицы.`},selectionMode:{required:!1,tsType:{name:`TableSelectionMode`},description:`Режим выбора строк.`,defaultValue:{value:`"none"`,computed:!1}},selectedRowIds:{required:!1,tsType:{name:`unknown`},description:`Внешний список выбранных строк.
2
+
3
+ Если передан, таблица синхронизирует визуальное выделение с этим набором id.`},getRowId:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(row: TData, index: number) => string`,signature:{arguments:[{type:{name:`TData`},name:`row`},{type:{name:`number`},name:`index`}],return:{name:`string`}}},description:`Стабильный идентификатор строки.
4
+
5
+ Если не задан, используется индекс строки.`},className:{required:!1,tsType:{name:`string`},description:`Дополнительный CSS-класс корневого контейнера.`},minHeight:{required:!1,tsType:{name:`union`,raw:"`${number}em` | `${number}%`",elements:[{name:`literal`,value:"`${number}em`"},{name:`literal`,value:"`${number}%`"}]},description:``},tableClassName:{required:!1,tsType:{name:`string`},description:"Дополнительный CSS-класс тега `table`."},columnVisibility:{required:!1,tsType:{name:`VisibilityState`},description:`Внешнее controlled-состояние видимости колонок.`},defaultColumnVisibility:{required:!1,tsType:{name:`VisibilityState`},description:`Стартовое uncontrolled-состояние видимости колонок.`},columnOrder:{required:!1,tsType:{name:`unknown`},description:`Внешнее controlled-состояние порядка колонок.`},defaultColumnOrder:{required:!1,tsType:{name:`unknown`},description:`Стартовое uncontrolled-состояние порядка колонок.`},columnSizing:{required:!1,tsType:{name:`TableColumnSizingState`},description:`Внешнее controlled-состояние ширин колонок в px.`},defaultColumnSizing:{required:!1,tsType:{name:`TableColumnSizingState`},description:`Стартовое uncontrolled-состояние ширин колонок в px.`},columnPinning:{required:!1,tsType:{name:`TableColumnPinningState`},description:`Внешнее controlled-состояние left-pinning для колонок.`},defaultColumnPinning:{required:!1,tsType:{name:`TableColumnPinningState`},description:`Стартовое uncontrolled-состояние left-pinning для колонок.`},enableColumnResizing:{required:!1,tsType:{name:`boolean`},description:`Включает изменение ширины колонок через header-handle.`,defaultValue:{value:`false`,computed:!1}},enableColumnReordering:{required:!1,tsType:{name:`boolean`},description:`Включает изменение порядка колонок через drag&drop заголовков.`,defaultValue:{value:`false`,computed:!1}},columnResizeMinWidth:{required:!1,tsType:{name:`number`},description:`Минимальная ширина колонки при resize в px.`},onColumnVisibilityChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(state: VisibilityState) => void`,signature:{arguments:[{type:{name:`VisibilityState`},name:`state`}],return:{name:`void`}}},description:`Вызывается после изменения видимости колонок.`},onColumnOrderChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(state: TableColumnOrderState) => void`,signature:{arguments:[{type:{name:`TableColumnOrderState`},name:`state`}],return:{name:`void`}}},description:`Вызывается после изменения порядка колонок.`},onColumnSizingChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(state: TableColumnSizingState) => void`,signature:{arguments:[{type:{name:`TableColumnSizingState`},name:`state`}],return:{name:`void`}}},description:`Вызывается после изменения ширины колонок.`},onColumnPinningChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(state: TableColumnPinningState) => void`,signature:{arguments:[{type:{name:`TableColumnPinningState`},name:`state`}],return:{name:`void`}}},description:`Вызывается после изменения left-pinning state.`},onRowClick:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(row: TData) => void`,signature:{arguments:[{type:{name:`TData`},name:`row`}],return:{name:`void`}}},description:`Вызывается при активации строки кликом или клавиатурой.`},onRowSelectionChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(rows: TData[]) => void`,signature:{arguments:[{type:{name:`Array`,elements:[{name:`TData`}],raw:`TData[]`},name:`rows`}],return:{name:`void`}}},description:`Вызывается после изменения выбранных строк.`},onReachEnd:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:`Вызывается при достижении конца таблицы внутри scroll-контейнера.`},getRowCanSelect:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(row: TData) => boolean`,signature:{arguments:[{type:{name:`TData`},name:`row`}],return:{name:`boolean`}}},description:`Позволяет запретить выбор отдельных строк.`},getRowClassName:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(row: TData) => string | undefined`,signature:{arguments:[{type:{name:`TData`},name:`row`}],return:{name:`union`,raw:`string | undefined`,elements:[{name:`string`},{name:`undefined`}]}}},description:`Позволяет добавить CSS-класс для конкретной строки.`},renderHeaderContextMenu:{required:!1,tsType:{name:`BaseTableProps["renderHeaderContextMenu"]`,raw:`BaseTableProps<TData>["renderHeaderContextMenu"]`},description:`Контекстное меню заголовка колонки. Используется для общих runtime-действий
6
+ вроде server sorting без встраивания доменной логики в shared-таблицу.`},renderCellContent:{required:!1,tsType:{name:`BaseTableProps["renderCellContent"]`,raw:`BaseTableProps<TData>["renderCellContent"]`},description:"Тонкая точка расширения содержимого ячейки поверх стандартного форматирования.\n\nВ отличие от `column.cell`, этот слот не отключает общий formatting-runtime:\n`defaultContent` уже содержит отформатированное значение, если оно применимо."}}}})),_=e({Basic:()=>R,Empty:()=>U,Fetching:()=>H,Loading:()=>G,MultiSelect:()=>B,ReachEnd:()=>W,WithColumnPinning:()=>z,WithDisabledRows:()=>V,WithFormattingPipeline:()=>q,WithFormulaColumn:()=>K,WithHiddenZero:()=>J,WithMergedDuplicates:()=>Y,WithODataMetadataAdapter:()=>X,WithUseODataTableColumnsBuildHook:()=>Z,WithUseODataTableColumnsEnrichHook:()=>Q,__namedExportsOrder:()=>$,default:()=>L});function Se(){return{version:1,plan:{steps:[{id:`state`,type:`resolveValueState`,config:{resolver:{kind:`threshold`,thresholds:[100],states:[`success`,`warning`],invalidState:`none`},icon:{enabled:!0,showValue:!0,position:`right`}}},{id:`typed`,type:`typedValueFormat`}]}}}function Ce(e){return[`odata`,`metadata`,{service:e}]}function we(){let{columns:e,metadata:t,isLoading:n}=s({service:N,target:P,mode:`build`});return(0,y.jsxs)(`div`,{style:{display:`grid`,gap:`0.75em`},children:[(0,y.jsxs)(`div`,{children:[`Режим build: hook собрал `,e.length,` колонки из metadata`,t?` для сущности «${t.title}».`:`.`]}),(0,y.jsx)(m,{title:`useODataTableColumns: build`,data:w,columns:e,selectionMode:`none`,isLoading:n,getRowId:e=>e.id})]})}function Te(){let{columns:e,metadata:t,isLoading:n}=s({service:N,target:P,mode:`enrich`,columns:j});return(0,y.jsxs)(`div`,{style:{display:`grid`,gap:`0.75em`},children:[(0,y.jsxs)(`div`,{children:[`Режим enrich: hook сохранил ручные заголовки и дополнил formatting-контекст`,t?` из metadata «${t.title}».`:`.`]}),(0,y.jsx)(m,{title:`useODataTableColumns: enrich`,data:w,columns:e,selectionMode:`none`,isLoading:n,getRowId:e=>e.id})]})}var v,y,b,x,S,C,w,T,E,D,O,k,A,j,M,N,P,F,I,L,R,z,B,V,H,U,W,G,K,q,J,Y,X,Z,Q,$,Ee=n((()=>{v=t(r(),1),ae(),ne(),c(),o(),xe(),y=i(),b=[{id:`1`,number:`450001`,client:`Северсталь`,manager:`Иван Петров`,amount:`1 250 000`,status:`Новая`},{id:`2`,number:`450002`,client:`ММК`,manager:`Анна Смирнова`,amount:`980 000`,status:`В работе`},{id:`3`,number:`450003`,client:`НЛМК`,manager:`Олег Николаев`,amount:`1 540 000`,status:`Согласование`},{id:`4`,number:`450004`,client:`ЕВРАЗ`,manager:`Мария Кузнецова`,amount:`760 000`,status:`Отгружена`},{id:`5`,number:`450005`,client:`ТМК`,manager:`Дмитрий Волков`,amount:`1 120 000`,status:`Закрыта`}],x=[...b,{id:`6`,number:`450006`,client:`ОМК`,manager:`Елена Андреева`,amount:`680 000`,status:`Архив`,isLocked:!0}],S=Array.from({length:18},(e,t)=>({id:String(t+1),number:`4600${String(t+1).padStart(2,`0`)}`,client:`Клиент ${t+1}`,manager:`Менеджер ${t+1}`,amount:`${850+t*15} 000`,status:t%2==0?`В работе`:`Согласование`})),C=[{id:`number`,accessorKey:`number`,header:`Номер`,meta:{width:9}},{id:`client`,accessorKey:`client`,header:`Клиент`,meta:{width:14}},{id:`manager`,accessorKey:`manager`,header:`Менеджер`,meta:{width:12}},{id:`amount`,accessorKey:`amount`,header:`Сумма`,meta:{width:10,align:`right`}},{id:`status`,accessorKey:`status`,header:`Статус`,meta:{width:11}}],w=[{id:`fmt-1`,product:`Лист горячекатаный`,purchasePrice:80,salePrice:120,healthScore:35,pendingAmount:0,createdAt:`2026-03-18T09:15:00.000Z`,totalAmount:1520.5},{id:`fmt-2`,product:`Рулон оцинкованный`,purchasePrice:95,salePrice:150,healthScore:125,pendingAmount:320,createdAt:`2026-03-19T11:40:00.000Z`,totalAmount:2140},{id:`fmt-3`,product:`Арматура`,purchasePrice:60,salePrice:90,healthScore:70,pendingAmount:0,createdAt:`2026-03-20T07:05:00.000Z`,totalAmount:980.75}],T=[{id:`merge-1`,division:`ДВД`,department:`Продажи`,employee:`Иван Петров`},{id:`merge-2`,division:`ДВД`,department:`Продажи`,employee:`Анна Смирнова`},{id:`merge-3`,division:`ДВД`,department:`Продажи`,employee:`Олег Николаев`},{id:`merge-4`,division:`УД`,department:`Логистика`,employee:`Мария Кузнецова`},{id:`merge-5`,division:`УД`,department:`Логистика`,employee:`Дмитрий Волков`},{id:`merge-6`,division:`УД`,department:`Логистика`,employee:`Елена Андреева`},{id:`merge-7`,division:`УД`,department:`Логистика`,employee:`Николай Орлов`}],E=[{id:`division`,accessorKey:`division`,header:`Дивизион`,meta:{width:10,mergeDuplicates:!0}},{id:`department`,accessorKey:`department`,header:`Подразделение`,meta:{width:12}},{id:`employee`,accessorKey:`employee`,header:`Сотрудник`,meta:{width:14}}],D=[{id:`product`,accessorKey:`product`,header:`Товар`,meta:{width:16}},{id:`purchasePrice`,accessorKey:`purchasePrice`,header:`Закупка`,meta:{width:9,align:`right`,formatting:{role:`measure`,type:`decimal`}}},{id:`salePrice`,accessorKey:`salePrice`,header:`Продажа`,meta:{width:9,align:`right`,formatting:{role:`measure`,type:`decimal`}}},{id:`markup`,accessorFn:()=>void 0,header:`Наценка`,meta:{width:9,align:`right`,formatting:{role:`measure`,type:`decimal`,formulaId:`markup`,formulaDependencies:[`purchasePrice`,`salePrice`],purelyDerived:!0}}}],O=[{id:`product`,accessorKey:`product`,header:`Товар`,meta:{width:16}},{id:`healthScore`,accessorKey:`healthScore`,header:`Индекс риска`,meta:{width:10,align:`right`,formatting:{role:`measure`,type:`decimal`,formattersPipeline:Se()}}}],k=[{id:`product`,accessorKey:`product`,header:`Товар`,meta:{width:16}},{id:`pendingAmount`,accessorKey:`pendingAmount`,header:`Резерв`,meta:{width:9,align:`right`,formatting:{role:`measure`,type:`decimal`,emptyWhenZero:!0}}}],A=[{id:`product`,type:`string`,originalType:`Edm.String`,label:`Товар`,semanticType:`none`,sortable:!0,filterable:!0,role:`dimension`},{id:`createdAt`,type:`datetime`,originalType:`Edm.DateTime`,label:`Дата создания`,semanticType:`none`,sortable:!0,filterable:!0,role:`dimension`},{id:`totalAmount`,type:`decimal`,originalType:`Edm.Decimal`,label:`Сумма`,semanticType:`none`,sortable:!0,filterable:!0,role:`measure`}],j=[{id:`product`,accessorKey:`product`,header:`Позиция`,meta:{width:16}},{id:`createdAt`,accessorKey:`createdAt`,header:`Создано`,meta:{width:12}},{id:`totalAmount`,accessorKey:`totalAmount`,header:`Итог`,meta:{width:9,align:`right`}}],M=ie(j,A),N=`ZDEMO_DEALS_SRV`,P=`DealSet`,F={title:`Портфель сделок`,columns:A},I=(e,t)=>(0,y.jsx)(te,{client:(0,v.useMemo)(()=>{let e=oe({}),n=t.parameters.odataService,r=t.parameters.odataEntity,i=t.parameters.odataMetadata;return n&&r&&i&&e.setQueryData(Ce(n),{entities:{[r]:i},functionImports:{}}),e},[t.parameters.odataEntity,t.parameters.odataMetadata,t.parameters.odataService]),children:e()}),L={title:`Shared/UI/Table`,component:m,args:{title:`Сделки`,data:b,columns:C,getRowId:e=>e.id,selectionMode:`single`},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{data:{description:`Плоский источник данных.`,control:!1},columns:{description:`Колонки таблицы.`,control:!1},title:{description:`Заголовок таблицы.`,control:`text`},selectionMode:{description:`Режим выбора строк.`,control:`inline-radio`,options:[`none`,`single`,`multi`]},getRowId:{description:`Функция получения стабильного id строки.`,control:!1},columnPinning:{description:`Controlled-состояние закрепления колонок слева.`,control:!1},defaultColumnPinning:{description:`Стартовое uncontrolled-состояние закрепления колонок слева.`,control:!1},onColumnPinningChange:{description:`Вызывается после изменения закрепления колонок слева.`,control:!1},getRowCanSelect:{description:`Позволяет запретить выбор отдельных строк.`,control:!1},getRowClassName:{description:`Позволяет добавить CSS-класс для конкретной строки.`,control:!1},onRowClick:{description:`Вызывается при активации строки.`,control:!1},onRowSelectionChange:{description:`Вызывается после изменения выбранных строк.`,control:!1},onReachEnd:{description:`Вызывается при достижении конца списка внутри scroll-контейнера.`,control:!1},isLoading:{description:`Первичная загрузка таблицы.`,control:`boolean`},isFetching:{description:`Фоновое обновление уже загруженных данных.`,control:`boolean`}}},R={},z={render:e=>{let[t,n]=(0,v.useState)({left:[`number`]});return(0,y.jsxs)(`div`,{style:{display:`grid`,gap:`0.75em`},children:[(0,y.jsxs)(`div`,{style:{display:`flex`,gap:`0.5em`,flexWrap:`wrap`},children:[(0,y.jsx)(`button`,{type:`button`,onClick:()=>n({left:[`number`]}),children:`Закрепить «Номер»`}),(0,y.jsx)(`button`,{type:`button`,onClick:()=>n({left:[`number`,`client`]}),children:`Закрепить «Номер» и «Клиент»`}),(0,y.jsx)(`button`,{type:`button`,onClick:()=>n({left:[]}),children:`Снять закрепление`})]}),(0,y.jsxs)(`div`,{children:[`Закреплено слева: `,t.left?.length?t.left.join(`, `):`ничего`]}),(0,y.jsx)(m,{...e,columnPinning:t,onColumnPinningChange:n})]})}},B={render:e=>{let[t,n]=(0,v.useState)([]);return(0,y.jsxs)(`div`,{style:{display:`grid`,gap:`0.75em`},children:[(0,y.jsxs)(`div`,{children:[`Выбрано: `,t.length>0?t.join(`, `):`ничего`]}),(0,y.jsx)(m,{...e,selectionMode:`multi`,onRowSelectionChange:e=>n(e.map(e=>e.number))})]})}},V={args:{data:x,selectionMode:`multi`,getRowCanSelect:e=>!e.isLocked},render:e=>{let[t,n]=(0,v.useState)([]);return(0,y.jsxs)(`div`,{style:{display:`grid`,gap:`0.75em`},children:[(0,y.jsx)(`div`,{children:`Строка со статусом «Архив» остаётся видимой, но не участвует в выборе.`}),(0,y.jsxs)(`div`,{children:[`Выбрано: `,t.length>0?t.join(`, `):`ничего`]}),(0,y.jsx)(m,{...e,onRowSelectionChange:e=>n(e.map(e=>e.number))})]})}},H={args:{isFetching:!0}},U={args:{data:[]}},W={args:{data:S},render:e=>{let[t,n]=(0,v.useState)(0);return(0,y.jsxs)(`div`,{style:{display:`grid`,gap:`0.75em`},children:[(0,y.jsxs)(`div`,{children:[`Событие достижения конца: `,t]}),(0,y.jsx)(m,{...e,onReachEnd:()=>n(e=>e+1)})]})}},G={args:{isLoading:!0}},K={render:()=>(0,y.jsx)(m,{title:`Формула наценки`,data:w,columns:D,selectionMode:`none`,getRowId:e=>e.id})},q={render:()=>(0,y.jsx)(m,{title:`Pipeline форматирования`,data:w,columns:O,selectionMode:`none`,getRowId:e=>e.id})},J={render:()=>(0,y.jsx)(m,{title:`Скрытие нулей`,data:w,columns:k,selectionMode:`none`,getRowId:e=>e.id})},Y={render:()=>(0,y.jsx)(m,{title:`Слияние дубликатов`,data:T,columns:E,selectionMode:`none`,getRowId:e=>e.id})},X={render:()=>(0,y.jsx)(m,{title:`OData metadata adapter`,data:w,columns:M,selectionMode:`none`,getRowId:e=>e.id})},Z={decorators:[I],parameters:{odataService:N,odataEntity:P,odataMetadata:F},render:()=>(0,y.jsx)(we,{})},Q={decorators:[I],parameters:{odataService:N,odataEntity:P,odataMetadata:F},render:()=>(0,y.jsx)(Te,{})},R.parameters={...R.parameters,docs:{...R.parameters?.docs,source:{originalSource:`{}`,...R.parameters?.docs?.source},description:{story:`Базовый сценарий плоской таблицы с одиночным выбором.`,...R.parameters?.docs?.description}}},z.parameters={...z.parameters,docs:{...z.parameters?.docs,source:{originalSource:`{
7
+ render: args => {
8
+ const [columnPinning, setColumnPinning] = useState<{
9
+ left?: string[];
10
+ }>({
11
+ left: ["number"]
12
+ });
13
+ return <div style={{
14
+ display: "grid",
15
+ gap: "0.75em"
16
+ }}>
17
+ <div style={{
18
+ display: "flex",
19
+ gap: "0.5em",
20
+ flexWrap: "wrap"
21
+ }}>
22
+ <button type="button" onClick={() => setColumnPinning({
23
+ left: ["number"]
24
+ })}>
25
+ Закрепить «Номер»
26
+ </button>
27
+ <button type="button" onClick={() => setColumnPinning({
28
+ left: ["number", "client"]
29
+ })}>
30
+ Закрепить «Номер» и «Клиент»
31
+ </button>
32
+ <button type="button" onClick={() => setColumnPinning({
33
+ left: []
34
+ })}>
35
+ Снять закрепление
36
+ </button>
37
+ </div>
38
+ <div>Закреплено слева: {columnPinning.left?.length ? columnPinning.left.join(", ") : "ничего"}</div>
39
+ <Table {...args} columnPinning={columnPinning} onColumnPinningChange={setColumnPinning} />
40
+ </div>;
41
+ }
42
+ }`,...z.parameters?.docs?.source},description:{story:`Демонстрирует controlled left-pinning через внешний story-state без встроенного UI таблицы.`,...z.parameters?.docs?.description}}},B.parameters={...B.parameters,docs:{...B.parameters?.docs,source:{originalSource:`{
43
+ render: args => {
44
+ const [selectedNumbers, setSelectedNumbers] = useState<string[]>([]);
45
+ return <div style={{
46
+ display: "grid",
47
+ gap: "0.75em"
48
+ }}>
49
+ <div>Выбрано: {selectedNumbers.length > 0 ? selectedNumbers.join(", ") : "ничего"}</div>
50
+ <Table {...args} selectionMode="multi" onRowSelectionChange={rows => setSelectedNumbers(rows.map(row => row.number))} />
51
+ </div>;
52
+ }
53
+ }`,...B.parameters?.docs?.source},description:{story:`Множественный выбор с отображением текущего результата.`,...B.parameters?.docs?.description}}},V.parameters={...V.parameters,docs:{...V.parameters?.docs,source:{originalSource:`{
54
+ args: {
55
+ data: nonSelectableRows,
56
+ selectionMode: "multi",
57
+ getRowCanSelect: row => !row.isLocked
58
+ },
59
+ render: args => {
60
+ const [selectedNumbers, setSelectedNumbers] = useState<string[]>([]);
61
+ return <div style={{
62
+ display: "grid",
63
+ gap: "0.75em"
64
+ }}>
65
+ <div>Строка со статусом «Архив» остаётся видимой, но не участвует в выборе.</div>
66
+ <div>Выбрано: {selectedNumbers.length > 0 ? selectedNumbers.join(", ") : "ничего"}</div>
67
+ <Table {...args} onRowSelectionChange={rows => setSelectedNumbers(rows.map(row => row.number))} />
68
+ </div>;
69
+ }
70
+ }`,...V.parameters?.docs?.source},description:{story:`Часть строк можно показать, но запретить выбирать.`,...V.parameters?.docs?.description}}},H.parameters={...H.parameters,docs:{...H.parameters?.docs,source:{originalSource:`{
71
+ args: {
72
+ isFetching: true
73
+ }
74
+ }`,...H.parameters?.docs?.source},description:{story:`Сценарий фонового обновления данных без очистки таблицы.`,...H.parameters?.docs?.description}}},U.parameters={...U.parameters,docs:{...U.parameters?.docs,source:{originalSource:`{
75
+ args: {
76
+ data: []
77
+ }
78
+ }`,...U.parameters?.docs?.source},description:{story:`Пустой источник данных.`,...U.parameters?.docs?.description}}},W.parameters={...W.parameters,docs:{...W.parameters?.docs,source:{originalSource:`{
79
+ args: {
80
+ data: reachEndRows
81
+ },
82
+ render: args => {
83
+ const [reachEndCount, setReachEndCount] = useState(0);
84
+ return <div style={{
85
+ display: "grid",
86
+ gap: "0.75em"
87
+ }}>
88
+ <div>Событие достижения конца: {reachEndCount}</div>
89
+ <Table {...args} onReachEnd={() => setReachEndCount(current => current + 1)} />
90
+ </div>;
91
+ }
92
+ }`,...W.parameters?.docs?.source},description:{story:`Демонстрация callback при достижении конца списка.`,...W.parameters?.docs?.description}}},G.parameters={...G.parameters,docs:{...G.parameters?.docs,source:{originalSource:`{
93
+ args: {
94
+ isLoading: true
95
+ }
96
+ }`,...G.parameters?.docs?.source},description:{story:`Состояние первичной загрузки.`,...G.parameters?.docs?.description}}},K.parameters={...K.parameters,docs:{...K.parameters?.docs,source:{originalSource:`{
97
+ render: () => <Table title="Формула наценки" data={formattingRows} columns={formulaColumns} selectionMode="none" getRowId={row => row.id} />
98
+ }`,...K.parameters?.docs?.source},description:{story:"Сценарий с formula-based колонкой без кастомного `cell`.",...K.parameters?.docs?.description}}},q.parameters={...q.parameters,docs:{...q.parameters?.docs,source:{originalSource:`{
99
+ render: () => <Table title="Pipeline форматирования" data={formattingRows} columns={pipelineColumns} selectionMode="none" getRowId={row => row.id} />
100
+ }`,...q.parameters?.docs?.source},description:{story:`Сценарий с pipeline display-formatting и value-state.`,...q.parameters?.docs?.description}}},J.parameters={...J.parameters,docs:{...J.parameters?.docs,source:{originalSource:`{
101
+ render: () => <Table title="Скрытие нулей" data={formattingRows} columns={hiddenZeroColumns} selectionMode="none" getRowId={row => row.id} />
102
+ }`,...J.parameters?.docs?.source},description:{story:"Сценарий со скрытием нулевых значений через `emptyWhenZero`.",...J.parameters?.docs?.description}}},Y.parameters={...Y.parameters,docs:{...Y.parameters?.docs,source:{originalSource:`{
103
+ render: () => <Table title="Слияние дубликатов" data={divisionMergeRows} columns={divisionMergeColumns} selectionMode="none" getRowId={row => row.id} />
104
+ }`,...Y.parameters?.docs?.source},description:{story:`Сценарий со display-only слиянием подряд идущих дубликатов через пустые ячейки и CSS-склейку.`,...Y.parameters?.docs?.description}}},X.parameters={...X.parameters,docs:{...X.parameters?.docs,source:{originalSource:`{
105
+ render: () => <Table title="OData metadata adapter" data={formattingRows} columns={adapterColumns} selectionMode="none" getRowId={row => row.id} />
106
+ }`,...X.parameters?.docs?.source},description:{story:`Сценарий со статическим OData metadata adapter в режиме enrich.`,...X.parameters?.docs?.description}}},Z.parameters={...Z.parameters,docs:{...Z.parameters?.docs,source:{originalSource:`{
107
+ decorators: [withMockedHookODataMetadata],
108
+ parameters: {
109
+ odataService: HOOK_ODATA_SERVICE,
110
+ odataEntity: HOOK_ODATA_ENTITY,
111
+ odataMetadata: hookMetadata
112
+ },
113
+ render: () => <HookBuildTableStory />
114
+ }`,...Z.parameters?.docs?.source},description:{story:"Реальный hook-сценарий `useODataTableColumns(...)` в режиме build.",...Z.parameters?.docs?.description}}},Q.parameters={...Q.parameters,docs:{...Q.parameters?.docs,source:{originalSource:`{
115
+ decorators: [withMockedHookODataMetadata],
116
+ parameters: {
117
+ odataService: HOOK_ODATA_SERVICE,
118
+ odataEntity: HOOK_ODATA_ENTITY,
119
+ odataMetadata: hookMetadata
120
+ },
121
+ render: () => <HookEnrichTableStory />
122
+ }`,...Q.parameters?.docs?.source},description:{story:"Реальный hook-сценарий `useODataTableColumns(...)` в режиме enrich.",...Q.parameters?.docs?.description}}},$=[`Basic`,`WithColumnPinning`,`MultiSelect`,`WithDisabledRows`,`Fetching`,`Empty`,`ReachEnd`,`Loading`,`WithFormulaColumn`,`WithFormattingPipeline`,`WithHiddenZero`,`WithMergedDuplicates`,`WithODataMetadataAdapter`,`WithUseODataTableColumnsBuildHook`,`WithUseODataTableColumnsEnrichHook`]}));Ee();export{R as Basic,U as Empty,H as Fetching,G as Loading,B as MultiSelect,W as ReachEnd,z as WithColumnPinning,V as WithDisabledRows,q as WithFormattingPipeline,K as WithFormulaColumn,J as WithHiddenZero,Y as WithMergedDuplicates,X as WithODataMetadataAdapter,Z as WithUseODataTableColumnsBuildHook,Q as WithUseODataTableColumnsEnrichHook,$ as __namedExportsOrder,L as default,Ee as n,_ as t};
@@ -0,0 +1 @@
1
+ .pcMjuj{--tabs-border:none;--tabs-panel-border:none;--tabs-panel-padding:var(--space-md);--tabs-panel-bg:var(--surface-1);gap:var(--space-sm);min-width:0;height:100%;min-height:0;display:grid;overflow:hidden}.ITP5v-{--tabs-border:var(--border);--tabs-panel-border:var(--border)}.kzs94N{--tabs-panel-padding:0;--tabs-panel-bg:none;--tabs-panel-border:none}.ZSAoAa{gap:var(--space-xs);border:var(--tabs-border);background-color:var(--surface-1);min-width:0;padding:var(--space-xs);display:flex}.psYhsZ{border:var(--tabs-panel-border);background-color:var(--tabs-panel-bg);min-width:0;min-height:0}.ZSAoAa,.psYhsZ{border-radius:var(--radius-sm)}.mNDq9-{grid-template-rows:auto minmax(0,1fr)}.g156KO{grid-template-columns:10em minmax(0,1fr);min-height:0}.g156KO .ZSAoAa{flex-direction:column}.C2mO1e{overflow:auto}._28F3fs{text-align:left;min-height:var(--control-height);padding:var(--space-xs) var(--space-md);color:var(--content-2);border-radius:var(--radius-sm);font-variation-settings:"wght" 700;flex-shrink:0;font-weight:700;position:relative}._28F3fs:hover{cursor:pointer;color:var(--content-accent)}._28F3fs.UKZXTZ{color:var(--status-neutral-on-fill);background-color:var(--status-neutral-fill);border-color:var(--border-0);box-shadow:var(--shadow-xs)}._28F3fs:disabled{cursor:not-allowed;color:var(--content-2);background-color:var(--surface-2)}.jiTafe{min-width:0;height:100%;min-height:0;padding:0}.nhD0k7{min-width:0;height:100%;min-height:0;padding:var(--tabs-panel-padding)}.G8FICe{overflow:hidden}.W50XHh{gap:var(--space-md);min-width:0;height:100%;min-height:0;padding:var(--tabs-panel-padding);display:grid}.vnjXkU{min-width:0}.Nzvfhw{min-height:0}