@ryuzaki13/react-foundation-ui 1.0.8 → 1.0.11

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 (631) hide show
  1. package/dist/advanced-search/index.js +11 -11
  2. package/dist/badge/index.js +1 -1
  3. package/dist/base-table/index.js +1 -1
  4. package/dist/button/index.js +2 -23
  5. package/dist/check-box/index.js +1 -1
  6. package/dist/chunks/{CalendarView-DjeTJkTT.js → CalendarView-DCQjO2ho.js} +2 -2
  7. package/dist/chunks/{CalendarView-DjeTJkTT.js.map → CalendarView-DCQjO2ho.js.map} +1 -1
  8. package/dist/chunks/{odata-DSW7z3nh.js → SelectOptionContent-lfEtHXfO.js} +404 -381
  9. package/dist/chunks/SelectOptionContent-lfEtHXfO.js.map +1 -0
  10. package/dist/chunks/{TextEditorLexicalClient-16S18Yir.js → TextEditorLexicalClient-Bca3FOUs.js} +8 -8
  11. package/dist/chunks/{TextEditorLexicalClient-16S18Yir.js.map → TextEditorLexicalClient-Bca3FOUs.js.map} +1 -1
  12. package/dist/chunks/{BadgeList-DYgun2rf.js → badge-BfbLPk0z.js} +2 -2
  13. package/dist/chunks/badge-BfbLPk0z.js.map +1 -0
  14. package/dist/chunks/{base-table-CoQlKABk.js → base-table-CiYSRI_J.js} +4 -4
  15. package/dist/chunks/{base-table-CoQlKABk.js.map → base-table-CiYSRI_J.js.map} +1 -1
  16. package/dist/chunks/button-CC0Jdx1j.js +72 -0
  17. package/dist/chunks/button-CC0Jdx1j.js.map +1 -0
  18. package/dist/chunks/{CheckBox-BowNqqd3.js → check-box-BowNqqd3.js} +1 -1
  19. package/dist/chunks/check-box-BowNqqd3.js.map +1 -0
  20. package/dist/chunks/{DropdownMenu-DQeR3y7M.js → context-menu-DQeR3y7M.js} +1 -1
  21. package/dist/chunks/context-menu-DQeR3y7M.js.map +1 -0
  22. package/dist/chunks/{DateInput-BTJ-QTUx.js → date-input-DjAQ75n9.js} +5 -5
  23. package/dist/chunks/date-input-DjAQ75n9.js.map +1 -0
  24. package/dist/chunks/{DateRangePresetSelect-UgsfaOeM.js → date-range-preset-select-UgsfaOeM.js} +1 -1
  25. package/dist/chunks/date-range-preset-select-UgsfaOeM.js.map +1 -0
  26. package/dist/chunks/{Flex-DUYSL5TE.js → flex-CPO6xlPR.js} +38 -33
  27. package/dist/chunks/{Flex-DUYSL5TE.js.map → flex-CPO6xlPR.js.map} +1 -1
  28. package/dist/chunks/{Grid-ByIIytjh.js → grid-ByIIytjh.js} +1 -1
  29. package/dist/chunks/{Grid-ByIIytjh.js.map → grid-ByIIytjh.js.map} +1 -1
  30. package/dist/chunks/{Input-anSjiM9b.js → input-CZLUUggm.js} +10 -2
  31. package/dist/chunks/input-CZLUUggm.js.map +1 -0
  32. package/dist/chunks/{InputFiles-XBQxkHdB.js → input-files-aB8iaqGk.js} +5 -5
  33. package/dist/chunks/input-files-aB8iaqGk.js.map +1 -0
  34. package/dist/chunks/{input-search-B_njjJuV.js → input-search-eMvnvgV0.js} +2 -2
  35. package/dist/chunks/{input-search-B_njjJuV.js.map → input-search-eMvnvgV0.js.map} +1 -1
  36. package/dist/chunks/{misc-DoqZBMof.js → misc-1PxS8OWD.js} +2 -2
  37. package/dist/chunks/{misc-DoqZBMof.js.map → misc-1PxS8OWD.js.map} +1 -1
  38. package/dist/chunks/{modal-ByNRME3b.js → modal-C0j0hEIt.js} +5 -5
  39. package/dist/chunks/{modal-ByNRME3b.js.map → modal-C0j0hEIt.js.map} +1 -1
  40. package/dist/chunks/multi-select-r0ekR6Bh.js +541 -0
  41. package/dist/chunks/multi-select-r0ekR6Bh.js.map +1 -0
  42. package/dist/chunks/{picker-Du7Y4-el.js → picker-beNX-cW9.js} +11 -11
  43. package/dist/chunks/{picker-Du7Y4-el.js.map → picker-beNX-cW9.js.map} +1 -1
  44. package/dist/chunks/{RadioGroup-B9XjkcOy.js → radio-group-B9XjkcOy.js} +1 -1
  45. package/dist/chunks/radio-group-B9XjkcOy.js.map +1 -0
  46. package/dist/chunks/select-CFbZS7fx.js +284 -0
  47. package/dist/chunks/select-CFbZS7fx.js.map +1 -0
  48. package/dist/chunks/{table-Dc3AqMzP.js → table-BR2VqeEg.js} +2 -2
  49. package/dist/chunks/{table-Dc3AqMzP.js.map → table-BR2VqeEg.js.map} +1 -1
  50. package/dist/chunks/{toolbar-BCZNdRXM.js → toolbar-XCDeS2Li.js} +2 -2
  51. package/dist/chunks/{toolbar-BCZNdRXM.js.map → toolbar-XCDeS2Li.js.map} +1 -1
  52. package/dist/chunks/{useODataSelectBase-BbeKdq6x.js → useODataSelectBase-BxAvhDww.js} +2 -2
  53. package/dist/chunks/{useODataSelectBase-BbeKdq6x.js.map → useODataSelectBase-BxAvhDww.js.map} +1 -1
  54. package/dist/context-menu/index.js +1 -1
  55. package/dist/date-input/index.js +2 -2
  56. package/dist/date-range-preset-select/index.js +1 -1
  57. package/dist/date-time-input/index.js +458 -2
  58. package/dist/date-time-input/index.js.map +1 -0
  59. package/dist/detail/index.js +80 -2
  60. package/dist/detail/index.js.map +1 -0
  61. package/dist/dialog/index.js +50 -2
  62. package/dist/dialog/index.js.map +1 -0
  63. package/dist/disclosure/index.js +49 -2
  64. package/dist/disclosure/index.js.map +1 -0
  65. package/dist/drop-zone/index.js +98 -2
  66. package/dist/drop-zone/index.js.map +1 -0
  67. package/dist/errors/index.js +1 -1
  68. package/dist/expandable-action-panel/index.js +82 -2
  69. package/dist/expandable-action-panel/index.js.map +1 -0
  70. package/dist/flex/index.js +2 -14
  71. package/dist/grid/index.js +1 -1
  72. package/dist/image/index.js +5 -5
  73. package/dist/input/index.js +2 -14
  74. package/dist/input-date-time/index.js +258 -2
  75. package/dist/input-date-time/index.js.map +1 -0
  76. package/dist/input-file/index.js +105 -2
  77. package/dist/input-file/index.js.map +1 -0
  78. package/dist/input-files/index.js +1 -1
  79. package/dist/input-image/index.js +100 -2
  80. package/dist/input-image/index.js.map +1 -0
  81. package/dist/input-search/index.js +1 -1
  82. package/dist/layout-picker/index.js +1171 -2
  83. package/dist/layout-picker/index.js.map +1 -0
  84. package/dist/list/index.js +2 -2
  85. package/dist/listbox/index.js +81 -2
  86. package/dist/listbox/index.js.map +1 -0
  87. package/dist/misc/index.js +1 -1
  88. package/dist/modal/index.js +1 -1
  89. package/dist/multi-select/index.js +2 -3
  90. package/dist/notifications/index.js +151 -3
  91. package/dist/notifications/index.js.map +1 -0
  92. package/dist/picker/index.js +1 -1
  93. package/dist/preset-range-date-input/index.js +52 -3
  94. package/dist/preset-range-date-input/index.js.map +1 -1
  95. package/dist/preset-select/index.js +1 -1
  96. package/dist/radio-button/index.js +48 -2
  97. package/dist/radio-button/index.js.map +1 -0
  98. package/dist/radio-group/index.js +1 -1
  99. package/dist/select/index.js +2 -4
  100. package/dist/simple-table/index.js +1 -1
  101. package/dist/slider/index.js +695 -2
  102. package/dist/slider/index.js.map +1 -0
  103. package/dist/splitter/index.js +168 -2
  104. package/dist/splitter/index.js.map +1 -0
  105. package/dist/state-select/index.js +78 -2
  106. package/dist/state-select/index.js.map +1 -0
  107. package/dist/styles.css +1 -1
  108. package/dist/switch/index.js +81 -2
  109. package/dist/switch/index.js.map +1 -0
  110. package/dist/table/index.js +1 -1
  111. package/dist/table-sorting/index.js +1 -1
  112. package/dist/tabs/index.js +384 -2
  113. package/dist/tabs/index.js.map +1 -0
  114. package/dist/text-editor/index.js +3 -3
  115. package/dist/text-editor/toolbar/index.js +1 -1
  116. package/dist/textarea/index.js +44 -2
  117. package/dist/textarea/index.js.map +1 -0
  118. package/dist/toggle/index.js +73 -2
  119. package/dist/toggle/index.js.map +1 -0
  120. package/dist/toolbar/index.js +2 -3
  121. package/dist/toolbar/index.js.map +1 -1
  122. package/dist/tree-select/index.js +569 -89
  123. package/dist/tree-select/index.js.map +1 -1
  124. package/dist/tree-table/index.js +1 -1
  125. package/package.json +5 -304
  126. package/src/styles/_base.scss +11 -3
  127. package/src/styles/config/_index.scss +21 -37
  128. package/src/styles/themes/dark/_default.scss +0 -17
  129. package/storybook-static/assets/Badge-Cr7bAbxa.css +1 -0
  130. package/storybook-static/assets/Badge-Q8iX86Mn.js +139 -0
  131. package/storybook-static/assets/Badge.stories-BEMBzR2f.js +51 -0
  132. package/storybook-static/assets/Button-BN8Cuwsy.css +1 -0
  133. package/storybook-static/assets/Button-BUkCW8Zg.js +12 -0
  134. package/storybook-static/assets/Button-CfX05aoR.js +124 -0
  135. package/storybook-static/assets/Button.stories-BoNLZb6w.js +75 -0
  136. package/storybook-static/assets/CheckBox-B1xm2kwz.css +1 -0
  137. package/storybook-static/assets/CheckBox-CcXGzkSE.js +42 -0
  138. package/storybook-static/assets/CheckBox-DTSi8Yok.js +2 -0
  139. package/storybook-static/assets/CheckBox.module-Hr3mvdAC.js +1 -0
  140. package/storybook-static/assets/CheckBox.stories-Bo53TxC7.js +60 -0
  141. package/storybook-static/assets/Color-KMSTOMOX-Mbprgrbi.js +1 -0
  142. package/storybook-static/assets/ContextMenu-DYlSojIE.js +40 -0
  143. package/storybook-static/assets/ContextMenu.stories-BJr53bsq.js +90 -0
  144. package/storybook-static/assets/DateInput-Bc-MiPp1.css +1 -0
  145. package/storybook-static/assets/DateInput-BrmilavO.js +40 -0
  146. package/storybook-static/assets/DateInput-C72jV86j.js +1 -0
  147. package/storybook-static/assets/DateInput.stories-0hU_T1iZ.js +115 -0
  148. package/storybook-static/assets/DateRangePresetSelect-BklzgpCR.js +3 -0
  149. package/storybook-static/assets/DateRangePresetSelect-C7gJVkMB.js +30 -0
  150. package/storybook-static/assets/DateRangePresetSelect.stories-DQKDcAdP.js +11 -0
  151. package/storybook-static/assets/Detail-BKSBSfTO.css +1 -0
  152. package/storybook-static/assets/Detail-BMu0MY4h.js +40 -0
  153. package/storybook-static/assets/Detail.stories-CgBJjWQd.js +44 -0
  154. package/storybook-static/assets/Dialog-M7Uy3LiO.js +40 -0
  155. package/storybook-static/assets/Dialog.stories-BZ0opvaJ.js +31 -0
  156. package/storybook-static/assets/Disclosure-BXnfHC6v.js +29 -0
  157. package/storybook-static/assets/Disclosure-zNgXNDkm.css +1 -0
  158. package/storybook-static/assets/Disclosure.stories-C7wh6KJU.js +35 -0
  159. package/storybook-static/assets/DocsRenderer-JROSPFPF-BjXFJaat.js +2 -0
  160. package/storybook-static/assets/DropZone-C7HIN5ml.css +1 -0
  161. package/storybook-static/assets/DropZone-cd1aCNT1.js +36 -0
  162. package/storybook-static/assets/DropZone.stories-CVu731Lk.js +44 -0
  163. package/storybook-static/assets/DropdownMenu-B97Ad5Dg.js +1 -0
  164. package/storybook-static/assets/DropdownMenu-BgzIzwzM.css +1 -0
  165. package/storybook-static/assets/ExpandableActionPanel-D7q9two4.css +1 -0
  166. package/storybook-static/assets/ExpandableActionPanel.stories-k-eTxMyV.js +20 -0
  167. package/storybook-static/assets/Flex-BQkqAqL5.js +61 -0
  168. package/storybook-static/assets/Flex-C_VnI9xY.js +3 -0
  169. package/storybook-static/assets/Flex-IXK2se1Y.css +1 -0
  170. package/storybook-static/assets/Flex.stories-C1VO9Ct3.js +300 -0
  171. package/storybook-static/assets/Grid-Dr3BuEgd.js +61 -0
  172. package/storybook-static/assets/Grid-K9R_IHaw.css +1 -0
  173. package/storybook-static/assets/Grid-y8wKyEwc.js +163 -0
  174. package/storybook-static/assets/Grid.stories-6WUp6Tof.js +495 -0
  175. package/storybook-static/assets/Input-B7DWcGCL.js +3 -0
  176. package/storybook-static/assets/Input-BioMOZju.css +1 -0
  177. package/storybook-static/assets/Input-yly8wxYE.js +39 -0
  178. package/storybook-static/assets/Input.stories-CkVqvY-C.js +38 -0
  179. package/storybook-static/assets/InputDateTime-Cv8gmBe0.css +1 -0
  180. package/storybook-static/assets/InputDateTime-DHirw8rp.js +39 -0
  181. package/storybook-static/assets/InputDateTime.stories-Dci_81MA.js +35 -0
  182. package/storybook-static/assets/InputFile-DBFfWIkJ.js +37 -0
  183. package/storybook-static/assets/InputFile-hNjZ_wlG.css +1 -0
  184. package/storybook-static/assets/InputFile.stories-Bar27dP5.js +36 -0
  185. package/storybook-static/assets/InputFiles-ByK52qUe.css +1 -0
  186. package/storybook-static/assets/InputFiles-DPz7PiOC.js +1 -0
  187. package/storybook-static/assets/InputFiles-tULKp1KR.js +37 -0
  188. package/storybook-static/assets/InputFiles.stories-CkZ8et32.js +33 -0
  189. package/storybook-static/assets/InputImage-C-pnIXhT.css +1 -0
  190. package/storybook-static/assets/InputImage-D8VckxKl.js +37 -0
  191. package/storybook-static/assets/InputImage.stories-Dq8ORce3.js +51 -0
  192. package/storybook-static/assets/LayoutPicker-9tLTatHF.css +1 -0
  193. package/storybook-static/assets/LayoutPicker-l3XFAkqv.js +65 -0
  194. package/storybook-static/assets/LayoutPicker.stories-BjUmm2cg.js +449 -0
  195. package/storybook-static/assets/Listbox-B_6QVPAJ.js +38 -0
  196. package/storybook-static/assets/Listbox.stories-Cf_ApbmT.js +47 -0
  197. package/storybook-static/assets/Modal-BL_cTIW7.css +1 -0
  198. package/storybook-static/assets/Modal-BzienAaa.js +54 -0
  199. package/storybook-static/assets/Modal.stories-cPIHRa9a.js +180 -0
  200. package/storybook-static/assets/MultiSelect-CK2D25RA.js +56 -0
  201. package/storybook-static/assets/MultiSelect-CUQV67Ev.css +1 -0
  202. package/storybook-static/assets/MultiSelect-CjGBd2pC.js +2 -0
  203. package/storybook-static/assets/MultiSelect.stories--f_FoBzR.js +29 -0
  204. package/storybook-static/assets/NotificationsHost-D5Pvn4eu.css +1 -0
  205. package/storybook-static/assets/NotificationsHost-DKmlmqh0.js +44 -0
  206. package/storybook-static/assets/NotificationsHost.stories-1bPUJXfm.js +25 -0
  207. package/storybook-static/assets/ODataMultiSelect-BWUXuzlr.js +53 -0
  208. package/storybook-static/assets/ODataMultiSelect.stories-DA0f6SUG.js +73 -0
  209. package/storybook-static/assets/ODataSelect-D7GAFOcM.js +1 -0
  210. package/storybook-static/assets/ODataSelect-aNdHSjo_.js +52 -0
  211. package/storybook-static/assets/ODataSelect.stories-CjXA9Y9l.js +73 -0
  212. package/storybook-static/assets/ODataTreeMultiSelect-DKodulQ8.js +17 -0
  213. package/storybook-static/assets/ODataTreeMultiSelect.stories-BjRcb4W0.js +24 -0
  214. package/storybook-static/assets/ODataTreeSelect-Ck8HCh74.js +16 -0
  215. package/storybook-static/assets/ODataTreeSelect.stories-BgDj08mH.js +21 -0
  216. package/storybook-static/assets/PeriodSelect-Db7QmUfi.js +35 -0
  217. package/storybook-static/assets/PeriodSelect.stories-BI6yLRCK.js +23 -0
  218. package/storybook-static/assets/Popover-DR-r8iC5.js +45 -0
  219. package/storybook-static/assets/Popover.stories-ReRFMWiO.js +69 -0
  220. package/storybook-static/assets/PresetRangeDateInput-tSpiPAT9.js +31 -0
  221. package/storybook-static/assets/PresetRangeDateInput.stories-LVQa2_DG.js +15 -0
  222. package/storybook-static/assets/RadioButton-C-RjN-wY.css +1 -0
  223. package/storybook-static/assets/RadioButton-sEzdlL1y.js +38 -0
  224. package/storybook-static/assets/RadioButton.stories-CR0km0zF.js +36 -0
  225. package/storybook-static/assets/RadioGroup-BtNCd3Je.js +1 -0
  226. package/storybook-static/assets/RadioGroup-D-J7t20C.css +1 -0
  227. package/storybook-static/assets/RadioGroup-DR0H6Z0w.js +42 -0
  228. package/storybook-static/assets/RadioGroup.stories-FEqmkrs7.js +42 -0
  229. package/storybook-static/assets/Select-CO4ZHP9h.css +1 -0
  230. package/storybook-static/assets/Select-CUAevk01.js +57 -0
  231. package/storybook-static/assets/Select-DYVS7SCZ.js +9 -0
  232. package/storybook-static/assets/Select.stories-Df_c0IfC.js +37 -0
  233. package/storybook-static/assets/SelectOptionContent-B7W0Mned.js +1 -0
  234. package/storybook-static/assets/SerializableSelect-D63xBqOT.js +48 -0
  235. package/storybook-static/assets/SerializableSelect-DwCnuBgv.js +4 -0
  236. package/storybook-static/assets/SerializableSelect.stories-BLPXVOtP.js +43 -0
  237. package/storybook-static/assets/SingleDateTimeInput-mOllNfg2.css +1 -0
  238. package/storybook-static/assets/SingleDateTimeInput-xMkDodYz.js +53 -0
  239. package/storybook-static/assets/SingleDateTimeInput.stories-kcuSwx76.js +78 -0
  240. package/storybook-static/assets/Slider-BHZgpCjC.js +63 -0
  241. package/storybook-static/assets/Slider.stories-Bias_Soq.js +77 -0
  242. package/storybook-static/assets/SliderInput-jzFZcWr7.js +58 -0
  243. package/storybook-static/assets/SliderInput.stories-B7w8bp86.js +67 -0
  244. package/storybook-static/assets/Sortable-DcmDaPBw.js +72 -0
  245. package/storybook-static/assets/Sortable.stories-CwhHGCih.js +141 -0
  246. package/storybook-static/assets/Splitter-Bn7AJiD_.js +83 -0
  247. package/storybook-static/assets/Splitter-D-LmmQad.css +1 -0
  248. package/storybook-static/assets/Splitter.stories-CSvjKF-O.js +22 -0
  249. package/storybook-static/assets/StateSelect-MIGiXD10.js +36 -0
  250. package/storybook-static/assets/StateSelect-pIMkhj9A.css +1 -0
  251. package/storybook-static/assets/StateSelect.stories-BGDCnVqb.js +47 -0
  252. package/storybook-static/assets/Switch-C5zxOq_O.js +36 -0
  253. package/storybook-static/assets/Switch-DGYGWtPw.css +1 -0
  254. package/storybook-static/assets/Switch.stories-BmCl_Ts5.js +26 -0
  255. package/storybook-static/assets/Table-BGvRn9y0.css +1 -0
  256. package/storybook-static/assets/Table-CoySXvs5.js +197 -0
  257. package/storybook-static/assets/Table.stories-CA7ARhwC.js +122 -0
  258. package/storybook-static/assets/Tabs-BLkTB6pp.css +1 -0
  259. package/storybook-static/assets/Tabs-CQdzU18E.js +72 -0
  260. package/storybook-static/assets/Tabs.stories-SBWTpiy2.js +58 -0
  261. package/storybook-static/assets/Textarea-Bo-I0cnE.js +37 -0
  262. package/storybook-static/assets/Textarea-CPNMR88I.css +1 -0
  263. package/storybook-static/assets/Textarea.stories-C1wO9PKR.js +27 -0
  264. package/storybook-static/assets/TimePanel-0-mzaXky.js +1 -0
  265. package/storybook-static/assets/TimePanel-Bh98qsCo.css +1 -0
  266. package/storybook-static/assets/TimePanel.stories-C1VM13qN.js +25 -0
  267. package/storybook-static/assets/Toggle-B9H63WWC.js +37 -0
  268. package/storybook-static/assets/Toggle-DHulCX3T.css +1 -0
  269. package/storybook-static/assets/Toggle.stories-CKlGFcZW.js +30 -0
  270. package/storybook-static/assets/TreeMultiSelect-AXIl2Ge2.js +15 -0
  271. package/storybook-static/assets/TreeMultiSelect-Ci3bUpmv.js +1 -0
  272. package/storybook-static/assets/TreeMultiSelect.stories-CXGt4Q_u.js +14 -0
  273. package/storybook-static/assets/TreePickerBase-Md6Mt9qF.js +19 -0
  274. package/storybook-static/assets/TreePickerBase-qreyVjhY.css +1 -0
  275. package/storybook-static/assets/TreeSelect-BWoURakw.js +15 -0
  276. package/storybook-static/assets/TreeSelect-bOgRYtQQ.js +1 -0
  277. package/storybook-static/assets/TreeSelect.stories-By0h6wRi.js +16 -0
  278. package/storybook-static/assets/TreeTable--ZoksUiw.css +1 -0
  279. package/storybook-static/assets/TreeTable-C52Jh7O_.js +175 -0
  280. package/storybook-static/assets/TreeTable.stories-BH9Q8NPP.js +83 -0
  281. package/storybook-static/assets/WithTooltip-7X4HQR7L-DQXHhZoH.js +9 -0
  282. package/storybook-static/assets/axe-GLfyhAYL.js +20 -0
  283. package/storybook-static/assets/base-table-BNO0lnTL.css +1 -0
  284. package/storybook-static/assets/base-table-BSkQBgdx.js +18 -0
  285. package/storybook-static/assets/blocks-CwEU-ME1.js +285 -0
  286. package/storybook-static/assets/button-Bl3Hu8CS.js +1 -0
  287. package/storybook-static/assets/check-box-BrnNQnSi.js +1 -0
  288. package/storybook-static/assets/chunk-242VQQM5-Dtm7LRbQ.js +1 -0
  289. package/storybook-static/assets/chunk-3LY4VQVK-BxHCYS2R.js +6 -0
  290. package/storybook-static/assets/chunk-LITCR56V-euffoZAN.js +18 -0
  291. package/storybook-static/assets/contextMenu-Do6qEwKB.js +2 -0
  292. package/storybook-static/assets/date-segments-CzU9k5bl.js +1 -0
  293. package/storybook-static/assets/error-RVOk7zpw.js +1 -0
  294. package/storybook-static/assets/file-hArYcyES.js +1 -0
  295. package/storybook-static/assets/flex-DuYzsEBQ.js +1 -0
  296. package/storybook-static/assets/floating-ui.react-BR04wkLx.js +1 -0
  297. package/storybook-static/assets/formatter-L2YTDE3Q-Cdp-Jp2M.js +1 -0
  298. package/storybook-static/assets/formatters-yIBztcem.js +3 -0
  299. package/storybook-static/assets/grid-D0WOuGlB.js +1 -0
  300. package/storybook-static/assets/hooks-BEB2Gqy0.js +5 -0
  301. package/storybook-static/assets/iframe-SfMJGCsn.js +1117 -0
  302. package/storybook-static/assets/input-Be5K9_B7.js +1 -0
  303. package/storybook-static/assets/jsx-runtime-BBQGix-2.js +1 -0
  304. package/storybook-static/assets/lucide-react-CK2oyDtF.js +1 -0
  305. package/storybook-static/assets/matchers-JIUQ3HVY-BPS-eazD.js +28 -0
  306. package/storybook-static/assets/mdx-react-shim-DnKFgFHy.js +1 -0
  307. package/storybook-static/assets/media-Djn0SUaN.js +1 -0
  308. package/storybook-static/assets/misc-CPvLzCFJ.js +5 -0
  309. package/storybook-static/assets/misc-CerLA5Xh.css +1 -0
  310. package/storybook-static/assets/notifications-Zk996KvR.js +1 -0
  311. package/storybook-static/assets/odata-C2BNbnc9.js +1 -0
  312. package/storybook-static/assets/odata-service-8sDCOQ3I.js +1 -0
  313. package/storybook-static/assets/odataStoryFixtures-BBfdskiC.js +25 -0
  314. package/storybook-static/assets/picker-BmTTr59E.css +1 -0
  315. package/storybook-static/assets/picker-De4ZbESe.js +1 -0
  316. package/storybook-static/assets/popover-BiQHI7Wi.css +1 -0
  317. package/storybook-static/assets/popover-DWA5VOMQ.js +2 -0
  318. package/storybook-static/assets/preload-helper-B45gAKPr.js +1 -0
  319. package/storybook-static/assets/preset-select-DozCGhmu.js +5 -0
  320. package/storybook-static/assets/react-18-CfpYK14y.js +9 -0
  321. package/storybook-static/assets/react-BWN-5oQj.js +9 -0
  322. package/storybook-static/assets/react-dom-CncQzc_h.js +1 -0
  323. package/storybook-static/assets/select-BPvMbVDe.js +1 -0
  324. package/storybook-static/assets/slider-39Mty47U.js +2 -0
  325. package/storybook-static/assets/slider-DMDFRH6B.css +1 -0
  326. package/storybook-static/assets/sortable-CgCCp3dq.js +1 -0
  327. package/storybook-static/assets/sortable-DiBavgm0.css +1 -0
  328. package/storybook-static/assets/syntaxhighlighter-RTCFPKCB-Di6cCrDX.js +6 -0
  329. package/storybook-static/assets/text-BxA8yj6Z.js +4 -0
  330. package/storybook-static/assets/theming-DZauqOKI.js +39 -0
  331. package/storybook-static/assets/treeStoryFixtures-Cd984L7t.js +1 -0
  332. package/storybook-static/assets/ui-CmVy0trY.js +1 -0
  333. package/storybook-static/assets/ui-ZWM9zG1I.css +1 -0
  334. package/storybook-static/assets/ui.module-DS2qtZts.js +1 -0
  335. package/storybook-static/assets/uiClasses-CZ_HVS3Y.js +1 -0
  336. package/storybook-static/assets/useODataSelectBase-D33B4x2W.js +1 -0
  337. package/storybook-static/assets/useODataTreeData-CDdzN-LC.js +1 -0
  338. package/storybook-static/assets/utils-CReRlw17.js +1 -0
  339. package/storybook-static/favicon-wrapper.svg +46 -0
  340. package/storybook-static/favicon.svg +1 -0
  341. package/storybook-static/iframe.html +709 -0
  342. package/storybook-static/index.html +146 -0
  343. package/storybook-static/index.json +1 -0
  344. package/storybook-static/nunito-sans-bold-italic.woff2 +0 -0
  345. package/storybook-static/nunito-sans-bold.woff2 +0 -0
  346. package/storybook-static/nunito-sans-italic.woff2 +0 -0
  347. package/storybook-static/nunito-sans-regular.woff2 +0 -0
  348. package/storybook-static/project.json +1 -0
  349. package/storybook-static/sb-addons/a11y-2/manager-bundle.js +57 -0
  350. package/storybook-static/sb-addons/docs-1/manager-bundle.js +3 -0
  351. package/storybook-static/sb-addons/storybook-core-server-presets-0/common-manager-bundle.js +630 -0
  352. package/storybook-static/sb-common-assets/favicon-wrapper.svg +46 -0
  353. package/storybook-static/sb-common-assets/favicon.svg +1 -0
  354. package/storybook-static/sb-common-assets/nunito-sans-bold-italic.woff2 +0 -0
  355. package/storybook-static/sb-common-assets/nunito-sans-bold.woff2 +0 -0
  356. package/storybook-static/sb-common-assets/nunito-sans-italic.woff2 +0 -0
  357. package/storybook-static/sb-common-assets/nunito-sans-regular.woff2 +0 -0
  358. package/storybook-static/sb-manager/globals-runtime.js +76714 -0
  359. package/storybook-static/sb-manager/globals.js +24 -0
  360. package/storybook-static/sb-manager/manager-stores.js +23 -0
  361. package/storybook-static/sb-manager/runtime.js +27451 -0
  362. package/storybook-static/vite-inject-mocker-entry.js +2 -0
  363. package/dist/badge/stories/Badge.stories.d.ts +0 -54
  364. package/dist/badge/stories/Badge.stories.d.ts.map +0 -1
  365. package/dist/badge/stories/Badge.stories.js +0 -147
  366. package/dist/badge/stories/Badge.stories.js.map +0 -1
  367. package/dist/button/index.js.map +0 -1
  368. package/dist/button/stories/Button.stories.d.ts +0 -69
  369. package/dist/button/stories/Button.stories.d.ts.map +0 -1
  370. package/dist/button/stories/Button.stories.js +0 -223
  371. package/dist/button/stories/Button.stories.js.map +0 -1
  372. package/dist/check-box/stories/CheckBox.stories.d.ts +0 -58
  373. package/dist/check-box/stories/CheckBox.stories.d.ts.map +0 -1
  374. package/dist/check-box/stories/CheckBox.stories.js +0 -150
  375. package/dist/check-box/stories/CheckBox.stories.js.map +0 -1
  376. package/dist/chunks/BadgeList-DYgun2rf.js.map +0 -1
  377. package/dist/chunks/Button-CCWuggdA.js +0 -55
  378. package/dist/chunks/Button-CCWuggdA.js.map +0 -1
  379. package/dist/chunks/CheckBox-BowNqqd3.js.map +0 -1
  380. package/dist/chunks/DateInput-BTJ-QTUx.js.map +0 -1
  381. package/dist/chunks/DateRangePresetSelect-UgsfaOeM.js.map +0 -1
  382. package/dist/chunks/Detail-DHDMsg8q.js +0 -80
  383. package/dist/chunks/Detail-DHDMsg8q.js.map +0 -1
  384. package/dist/chunks/Dialog-CFIvGxER.js +0 -50
  385. package/dist/chunks/Dialog-CFIvGxER.js.map +0 -1
  386. package/dist/chunks/DisclosureGroup-CfRTkl6Z.js +0 -49
  387. package/dist/chunks/DisclosureGroup-CfRTkl6Z.js.map +0 -1
  388. package/dist/chunks/DropZone-DgDMu4Iw.js +0 -98
  389. package/dist/chunks/DropZone-DgDMu4Iw.js.map +0 -1
  390. package/dist/chunks/DropdownMenu-DQeR3y7M.js.map +0 -1
  391. package/dist/chunks/Input-anSjiM9b.js.map +0 -1
  392. package/dist/chunks/InputDateTime-BGLJ_pbV.js +0 -258
  393. package/dist/chunks/InputDateTime-BGLJ_pbV.js.map +0 -1
  394. package/dist/chunks/InputFile-B5E0prk_.js +0 -105
  395. package/dist/chunks/InputFile-B5E0prk_.js.map +0 -1
  396. package/dist/chunks/InputFiles-XBQxkHdB.js.map +0 -1
  397. package/dist/chunks/InputImage-Bs6cFQIo.js +0 -100
  398. package/dist/chunks/InputImage-Bs6cFQIo.js.map +0 -1
  399. package/dist/chunks/LabeledExpandableActionPanel-D3kUvmFH.js +0 -82
  400. package/dist/chunks/LabeledExpandableActionPanel-D3kUvmFH.js.map +0 -1
  401. package/dist/chunks/Listbox-BZlp5qHz.js +0 -81
  402. package/dist/chunks/Listbox-BZlp5qHz.js.map +0 -1
  403. package/dist/chunks/MultiSelect-DblDAklj.js +0 -422
  404. package/dist/chunks/MultiSelect-DblDAklj.js.map +0 -1
  405. package/dist/chunks/NotificationsHost-_icJx4xR.js +0 -151
  406. package/dist/chunks/NotificationsHost-_icJx4xR.js.map +0 -1
  407. package/dist/chunks/PresetRangeDateInput-Bytk5sAs.js +0 -53
  408. package/dist/chunks/PresetRangeDateInput-Bytk5sAs.js.map +0 -1
  409. package/dist/chunks/RadioButton-D0uA0rX_.js +0 -48
  410. package/dist/chunks/RadioButton-D0uA0rX_.js.map +0 -1
  411. package/dist/chunks/RadioGroup-B9XjkcOy.js.map +0 -1
  412. package/dist/chunks/Select-ClBs-16a.js +0 -182
  413. package/dist/chunks/Select-ClBs-16a.js.map +0 -1
  414. package/dist/chunks/SelectOptionContent-CI7wq9Oi.js +0 -27
  415. package/dist/chunks/SelectOptionContent-CI7wq9Oi.js.map +0 -1
  416. package/dist/chunks/SerializableSelect-Ds8wp2_p.js +0 -33
  417. package/dist/chunks/SerializableSelect-Ds8wp2_p.js.map +0 -1
  418. package/dist/chunks/SingleDateTimeInput-kXrkLAAI.js +0 -331
  419. package/dist/chunks/SingleDateTimeInput-kXrkLAAI.js.map +0 -1
  420. package/dist/chunks/Splitter-BFkVGVRb.js +0 -168
  421. package/dist/chunks/Splitter-BFkVGVRb.js.map +0 -1
  422. package/dist/chunks/StateSelect-BzUsurDe.js +0 -78
  423. package/dist/chunks/StateSelect-BzUsurDe.js.map +0 -1
  424. package/dist/chunks/Switch-B57Qmy1z.js +0 -81
  425. package/dist/chunks/Switch-B57Qmy1z.js.map +0 -1
  426. package/dist/chunks/Textarea-CLyGS1h9.js +0 -44
  427. package/dist/chunks/Textarea-CLyGS1h9.js.map +0 -1
  428. package/dist/chunks/TimePanel-b4saqoUY.js +0 -135
  429. package/dist/chunks/TimePanel-b4saqoUY.js.map +0 -1
  430. package/dist/chunks/Toggle-DVqOQXmt.js +0 -73
  431. package/dist/chunks/Toggle-DVqOQXmt.js.map +0 -1
  432. package/dist/chunks/TreeMultiSelect-mIG8VKx8.js +0 -40
  433. package/dist/chunks/TreeMultiSelect-mIG8VKx8.js.map +0 -1
  434. package/dist/chunks/TreePickerBase-C9HEABt5.js +0 -423
  435. package/dist/chunks/TreePickerBase-C9HEABt5.js.map +0 -1
  436. package/dist/chunks/TreeSelect-B9rb_fbI.js +0 -37
  437. package/dist/chunks/TreeSelect-B9rb_fbI.js.map +0 -1
  438. package/dist/chunks/layout-picker-CSLuIUVZ.js +0 -1171
  439. package/dist/chunks/layout-picker-CSLuIUVZ.js.map +0 -1
  440. package/dist/chunks/multi-select-ei7LHBCv.js +0 -126
  441. package/dist/chunks/multi-select-ei7LHBCv.js.map +0 -1
  442. package/dist/chunks/odata-DSW7z3nh.js.map +0 -1
  443. package/dist/chunks/select-Ds7_EAGN.js +0 -81
  444. package/dist/chunks/select-Ds7_EAGN.js.map +0 -1
  445. package/dist/chunks/slider-uU26AeGu.js +0 -695
  446. package/dist/chunks/slider-uU26AeGu.js.map +0 -1
  447. package/dist/chunks/tabs-DlnVVMJl.js +0 -384
  448. package/dist/chunks/tabs-DlnVVMJl.js.map +0 -1
  449. package/dist/chunks/treeStoryFixtures-Bhm3Gdky.js +0 -113
  450. package/dist/chunks/treeStoryFixtures-Bhm3Gdky.js.map +0 -1
  451. package/dist/context-menu/stories/ContextMenu.stories.d.ts +0 -16
  452. package/dist/context-menu/stories/ContextMenu.stories.d.ts.map +0 -1
  453. package/dist/context-menu/stories/ContextMenu.stories.js +0 -136
  454. package/dist/context-menu/stories/ContextMenu.stories.js.map +0 -1
  455. package/dist/date-input/stories/DateInput.stories.d.ts +0 -132
  456. package/dist/date-input/stories/DateInput.stories.d.ts.map +0 -1
  457. package/dist/date-input/stories/DateInput.stories.js +0 -247
  458. package/dist/date-input/stories/DateInput.stories.js.map +0 -1
  459. package/dist/date-range-preset-select/stories/DateRangePresetSelect.stories.d.ts +0 -22
  460. package/dist/date-range-preset-select/stories/DateRangePresetSelect.stories.d.ts.map +0 -1
  461. package/dist/date-range-preset-select/stories/DateRangePresetSelect.stories.js +0 -41
  462. package/dist/date-range-preset-select/stories/DateRangePresetSelect.stories.js.map +0 -1
  463. package/dist/date-time-input/stories/SingleDateTimeInput.stories.d.ts +0 -95
  464. package/dist/date-time-input/stories/SingleDateTimeInput.stories.d.ts.map +0 -1
  465. package/dist/date-time-input/stories/SingleDateTimeInput.stories.js +0 -195
  466. package/dist/date-time-input/stories/SingleDateTimeInput.stories.js.map +0 -1
  467. package/dist/date-time-input/stories/TimePanel.stories.d.ts +0 -26
  468. package/dist/date-time-input/stories/TimePanel.stories.d.ts.map +0 -1
  469. package/dist/date-time-input/stories/TimePanel.stories.js +0 -53
  470. package/dist/date-time-input/stories/TimePanel.stories.js.map +0 -1
  471. package/dist/detail/stories/Detail.stories.d.ts +0 -67
  472. package/dist/detail/stories/Detail.stories.d.ts.map +0 -1
  473. package/dist/detail/stories/Detail.stories.js +0 -170
  474. package/dist/detail/stories/Detail.stories.js.map +0 -1
  475. package/dist/dialog/stories/Dialog.stories.d.ts +0 -50
  476. package/dist/dialog/stories/Dialog.stories.d.ts.map +0 -1
  477. package/dist/dialog/stories/Dialog.stories.js +0 -89
  478. package/dist/dialog/stories/Dialog.stories.js.map +0 -1
  479. package/dist/disclosure/stories/Disclosure.stories.d.ts +0 -35
  480. package/dist/disclosure/stories/Disclosure.stories.d.ts.map +0 -1
  481. package/dist/disclosure/stories/Disclosure.stories.js +0 -70
  482. package/dist/disclosure/stories/Disclosure.stories.js.map +0 -1
  483. package/dist/drop-zone/stories/DropZone.stories.d.ts +0 -63
  484. package/dist/drop-zone/stories/DropZone.stories.d.ts.map +0 -1
  485. package/dist/drop-zone/stories/DropZone.stories.js +0 -97
  486. package/dist/drop-zone/stories/DropZone.stories.js.map +0 -1
  487. package/dist/expandable-action-panel/stories/ExpandableActionPanel.stories.d.ts +0 -44
  488. package/dist/expandable-action-panel/stories/ExpandableActionPanel.stories.d.ts.map +0 -1
  489. package/dist/expandable-action-panel/stories/ExpandableActionPanel.stories.js +0 -117
  490. package/dist/expandable-action-panel/stories/ExpandableActionPanel.stories.js.map +0 -1
  491. package/dist/flex/index.js.map +0 -1
  492. package/dist/flex/stories/Flex.stories.d.ts +0 -24
  493. package/dist/flex/stories/Flex.stories.d.ts.map +0 -1
  494. package/dist/flex/stories/Flex.stories.js +0 -607
  495. package/dist/flex/stories/Flex.stories.js.map +0 -1
  496. package/dist/grid/stories/Grid.stories.d.ts +0 -24
  497. package/dist/grid/stories/Grid.stories.d.ts.map +0 -1
  498. package/dist/grid/stories/Grid.stories.js +0 -840
  499. package/dist/grid/stories/Grid.stories.js.map +0 -1
  500. package/dist/input/index.js.map +0 -1
  501. package/dist/input/stories/Input.stories.d.ts +0 -69
  502. package/dist/input/stories/Input.stories.d.ts.map +0 -1
  503. package/dist/input/stories/Input.stories.js +0 -132
  504. package/dist/input/stories/Input.stories.js.map +0 -1
  505. package/dist/input-date-time/stories/InputDateTime.stories.d.ts +0 -69
  506. package/dist/input-date-time/stories/InputDateTime.stories.d.ts.map +0 -1
  507. package/dist/input-date-time/stories/InputDateTime.stories.js +0 -125
  508. package/dist/input-date-time/stories/InputDateTime.stories.js.map +0 -1
  509. package/dist/input-file/stories/InputFile.stories.d.ts +0 -85
  510. package/dist/input-file/stories/InputFile.stories.d.ts.map +0 -1
  511. package/dist/input-file/stories/InputFile.stories.js +0 -158
  512. package/dist/input-file/stories/InputFile.stories.js.map +0 -1
  513. package/dist/input-files/stories/InputFiles.stories.d.ts +0 -86
  514. package/dist/input-files/stories/InputFiles.stories.d.ts.map +0 -1
  515. package/dist/input-files/stories/InputFiles.stories.js +0 -158
  516. package/dist/input-files/stories/InputFiles.stories.js.map +0 -1
  517. package/dist/input-image/stories/InputImage.stories.d.ts +0 -81
  518. package/dist/input-image/stories/InputImage.stories.d.ts.map +0 -1
  519. package/dist/input-image/stories/InputImage.stories.js +0 -174
  520. package/dist/input-image/stories/InputImage.stories.js.map +0 -1
  521. package/dist/layout-picker/stories/LayoutPicker.stories.d.ts +0 -873
  522. package/dist/layout-picker/stories/LayoutPicker.stories.d.ts.map +0 -1
  523. package/dist/layout-picker/stories/LayoutPicker.stories.js +0 -422
  524. package/dist/layout-picker/stories/LayoutPicker.stories.js.map +0 -1
  525. package/dist/listbox/stories/Listbox.stories.d.ts +0 -76
  526. package/dist/listbox/stories/Listbox.stories.d.ts.map +0 -1
  527. package/dist/listbox/stories/Listbox.stories.js +0 -140
  528. package/dist/listbox/stories/Listbox.stories.js.map +0 -1
  529. package/dist/modal/stories/Modal.stories.d.ts +0 -74
  530. package/dist/modal/stories/Modal.stories.d.ts.map +0 -1
  531. package/dist/modal/stories/Modal.stories.js +0 -320
  532. package/dist/modal/stories/Modal.stories.js.map +0 -1
  533. package/dist/multi-select/ui/stories/MultiSelect.stories.d.ts +0 -67
  534. package/dist/multi-select/ui/stories/MultiSelect.stories.d.ts.map +0 -1
  535. package/dist/multi-select/ui/stories/MultiSelect.stories.js +0 -114
  536. package/dist/multi-select/ui/stories/MultiSelect.stories.js.map +0 -1
  537. package/dist/multi-select/ui/stories/ODataMultiSelect.stories.d.ts +0 -44
  538. package/dist/multi-select/ui/stories/ODataMultiSelect.stories.d.ts.map +0 -1
  539. package/dist/notifications/ui/stories/NotificationsHost.stories.d.ts +0 -21
  540. package/dist/notifications/ui/stories/NotificationsHost.stories.d.ts.map +0 -1
  541. package/dist/notifications/ui/stories/NotificationsHost.stories.js +0 -326
  542. package/dist/notifications/ui/stories/NotificationsHost.stories.js.map +0 -1
  543. package/dist/period-select/stories/PeriodSelect.stories.d.ts +0 -96
  544. package/dist/period-select/stories/PeriodSelect.stories.d.ts.map +0 -1
  545. package/dist/period-select/stories/PeriodSelect.stories.js +0 -166
  546. package/dist/period-select/stories/PeriodSelect.stories.js.map +0 -1
  547. package/dist/popover/stories/Popover.stories.d.ts +0 -10
  548. package/dist/popover/stories/Popover.stories.d.ts.map +0 -1
  549. package/dist/popover/stories/Popover.stories.js +0 -75
  550. package/dist/popover/stories/Popover.stories.js.map +0 -1
  551. package/dist/preset-range-date-input/ui/stories/PresetRangeDateInput.stories.d.ts +0 -22
  552. package/dist/preset-range-date-input/ui/stories/PresetRangeDateInput.stories.d.ts.map +0 -1
  553. package/dist/preset-range-date-input/ui/stories/PresetRangeDateInput.stories.js +0 -45
  554. package/dist/preset-range-date-input/ui/stories/PresetRangeDateInput.stories.js.map +0 -1
  555. package/dist/radio-button/stories/RadioButton.stories.d.ts +0 -60
  556. package/dist/radio-button/stories/RadioButton.stories.d.ts.map +0 -1
  557. package/dist/radio-button/stories/RadioButton.stories.js +0 -121
  558. package/dist/radio-button/stories/RadioButton.stories.js.map +0 -1
  559. package/dist/radio-group/stories/RadioGroup.stories.d.ts +0 -74
  560. package/dist/radio-group/stories/RadioGroup.stories.d.ts.map +0 -1
  561. package/dist/radio-group/stories/RadioGroup.stories.js +0 -146
  562. package/dist/radio-group/stories/RadioGroup.stories.js.map +0 -1
  563. package/dist/select/stories/ODataSelect.stories.d.ts +0 -46
  564. package/dist/select/stories/ODataSelect.stories.d.ts.map +0 -1
  565. package/dist/select/stories/Select.stories.d.ts +0 -127
  566. package/dist/select/stories/Select.stories.d.ts.map +0 -1
  567. package/dist/select/stories/Select.stories.js +0 -214
  568. package/dist/select/stories/Select.stories.js.map +0 -1
  569. package/dist/select/stories/SerializableSelect.stories.d.ts +0 -91
  570. package/dist/select/stories/SerializableSelect.stories.d.ts.map +0 -1
  571. package/dist/select/stories/SerializableSelect.stories.js +0 -165
  572. package/dist/select/stories/SerializableSelect.stories.js.map +0 -1
  573. package/dist/select/stories/odataStoryCollection.d.ts +0 -2
  574. package/dist/select/stories/odataStoryCollection.d.ts.map +0 -1
  575. package/dist/select/stories/odataStoryFixtures.d.ts +0 -35
  576. package/dist/select/stories/odataStoryFixtures.d.ts.map +0 -1
  577. package/dist/slider/stories/Slider.stories.d.ts +0 -29
  578. package/dist/slider/stories/Slider.stories.d.ts.map +0 -1
  579. package/dist/slider/stories/Slider.stories.js +0 -310
  580. package/dist/slider/stories/Slider.stories.js.map +0 -1
  581. package/dist/slider/stories/SliderInput.stories.d.ts +0 -30
  582. package/dist/slider/stories/SliderInput.stories.d.ts.map +0 -1
  583. package/dist/slider/stories/SliderInput.stories.js +0 -282
  584. package/dist/slider/stories/SliderInput.stories.js.map +0 -1
  585. package/dist/sortable/stories/Sortable.stories.d.ts +0 -58
  586. package/dist/sortable/stories/Sortable.stories.d.ts.map +0 -1
  587. package/dist/sortable/stories/Sortable.stories.js +0 -255
  588. package/dist/sortable/stories/Sortable.stories.js.map +0 -1
  589. package/dist/splitter/stories/Splitter.stories.d.ts +0 -66
  590. package/dist/splitter/stories/Splitter.stories.d.ts.map +0 -1
  591. package/dist/splitter/stories/Splitter.stories.js +0 -223
  592. package/dist/splitter/stories/Splitter.stories.js.map +0 -1
  593. package/dist/state-select/stories/StateSelect.stories.d.ts +0 -70
  594. package/dist/state-select/stories/StateSelect.stories.d.ts.map +0 -1
  595. package/dist/state-select/stories/StateSelect.stories.js +0 -145
  596. package/dist/state-select/stories/StateSelect.stories.js.map +0 -1
  597. package/dist/switch/stories/Switch.stories.d.ts +0 -59
  598. package/dist/switch/stories/Switch.stories.d.ts.map +0 -1
  599. package/dist/switch/stories/Switch.stories.js +0 -90
  600. package/dist/switch/stories/Switch.stories.js.map +0 -1
  601. package/dist/table/stories/Table.stories.d.ts +0 -155
  602. package/dist/table/stories/Table.stories.d.ts.map +0 -1
  603. package/dist/tabs/stories/Tabs.stories.d.ts +0 -94
  604. package/dist/tabs/stories/Tabs.stories.d.ts.map +0 -1
  605. package/dist/tabs/stories/Tabs.stories.js +0 -283
  606. package/dist/tabs/stories/Tabs.stories.js.map +0 -1
  607. package/dist/textarea/stories/Textarea.stories.d.ts +0 -64
  608. package/dist/textarea/stories/Textarea.stories.d.ts.map +0 -1
  609. package/dist/textarea/stories/Textarea.stories.js +0 -98
  610. package/dist/textarea/stories/Textarea.stories.js.map +0 -1
  611. package/dist/toggle/stories/Toggle.stories.d.ts +0 -61
  612. package/dist/toggle/stories/Toggle.stories.d.ts.map +0 -1
  613. package/dist/toggle/stories/Toggle.stories.js +0 -102
  614. package/dist/toggle/stories/Toggle.stories.js.map +0 -1
  615. package/dist/tree-select/stories/ODataTreeMultiSelect.stories.d.ts +0 -55
  616. package/dist/tree-select/stories/ODataTreeMultiSelect.stories.d.ts.map +0 -1
  617. package/dist/tree-select/stories/ODataTreeSelect.stories.d.ts +0 -54
  618. package/dist/tree-select/stories/ODataTreeSelect.stories.d.ts.map +0 -1
  619. package/dist/tree-select/stories/TreeMultiSelect.stories.d.ts +0 -35
  620. package/dist/tree-select/stories/TreeMultiSelect.stories.d.ts.map +0 -1
  621. package/dist/tree-select/stories/TreeMultiSelect.stories.js +0 -64
  622. package/dist/tree-select/stories/TreeMultiSelect.stories.js.map +0 -1
  623. package/dist/tree-select/stories/TreeSelect.stories.d.ts +0 -35
  624. package/dist/tree-select/stories/TreeSelect.stories.d.ts.map +0 -1
  625. package/dist/tree-select/stories/TreeSelect.stories.js +0 -66
  626. package/dist/tree-select/stories/TreeSelect.stories.js.map +0 -1
  627. package/dist/tree-select/stories/treeStoryFixtures.d.ts +0 -3
  628. package/dist/tree-select/stories/treeStoryFixtures.d.ts.map +0 -1
  629. package/dist/tree-table/stories/TreeTable.stories.d.ts +0 -158
  630. package/dist/tree-table/stories/TreeTable.stories.d.ts.map +0 -1
  631. package/src/styles/fonts.scss +0 -47
@@ -0,0 +1,72 @@
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}from"./blocks-CwEU-ME1.js";import{t as u}from"./jsx-runtime-BBQGix-2.js";import{t as d}from"./mdx-react-shim-DnKFgFHy.js";import{BoxBasic as f,BoxControlled as p,BoxMountStrategies as m,BoxVertical as h,DisabledTabs as g,Empty as _,LayoutPanels as v,LegacyTabs as y,Loading as b,n as x,t as S}from"./Tabs.stories-SBWTpiy2.js";function C(e){let o={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...t(),...e.components};return(0,T.jsxs)(T.Fragment,{children:[(0,T.jsx)(a,{of:S,parameters:{docs:{toc:!0}}}),`
2
+ `,(0,T.jsx)(c,{children:`Tabs`}),`
3
+ `,(0,T.jsx)(i,{children:`Набор tabs-компонентов с разделением простого scroll-сценария и составного panel-layout сценария`}),`
4
+ `,(0,T.jsxs)(o.p,{children:[`После рефакторинга `,(0,T.jsx)(o.code,{children:`tabs`}),` разделены на два независимых сценария:`]}),`
5
+ `,(0,T.jsxs)(o.ul,{children:[`
6
+ `,(0,T.jsxs)(o.li,{children:[(0,T.jsx)(o.code,{children:`TabsBox`}),` — простой items-based компонент, который сам управляет областью панели и её прокруткой.`]}),`
7
+ `,(0,T.jsxs)(o.li,{children:[(0,T.jsx)(o.code,{children:`TabsLayout`}),` — compound-компонент, который управляет только переключением вкладок и каркасом панели.`]}),`
8
+ `,(0,T.jsxs)(o.li,{children:[(0,T.jsx)(o.code,{children:`Tabs`}),` — deprecated-совместимость для старого API. Используется только как переходный фасад.`]}),`
9
+ `]}),`
10
+ `,(0,T.jsx)(o.h2,{id:`что-выбрать`,children:`Что выбрать`}),`
11
+ `,(0,T.jsxs)(o.ul,{children:[`
12
+ `,(0,T.jsxs)(o.li,{children:[`Выбирай `,(0,T.jsx)(o.code,{children:`TabsBox`}),`, если у вкладки один основной scroll-контент и встроенный padding подходит по умолчанию.`]}),`
13
+ `,(0,T.jsxs)(o.li,{children:[`Выбирай `,(0,T.jsx)(o.code,{children:`TabsLayout`}),`, если внутри панели нужны `,(0,T.jsx)(o.code,{children:`toolbar`}),`, `,(0,T.jsx)(o.code,{children:`footer`}),` или несколько независимых scroll-областей.`]}),`
14
+ `,(0,T.jsxs)(o.li,{children:[`Используй `,(0,T.jsx)(o.code,{children:`Tabs`}),` только для постепенной миграции существующего кода.`]}),`
15
+ `]}),`
16
+ `,(0,T.jsx)(o.h2,{id:`tabsbox`,children:`TabsBox`}),`
17
+ `,(0,T.jsx)(l,{of:f}),`
18
+ `,(0,T.jsx)(n,{of:f}),`
19
+ `,(0,T.jsx)(o.pre,{children:(0,T.jsx)(o.code,{className:`language-tsx`,children:`import { TabsBox, type TabsBoxItem } from "@/shared/ui";
20
+
21
+ const items: TabsBoxItem[] = [
22
+ { id: "profile", title: "Профиль", content: <div>Содержимое профиля</div> },
23
+ { id: "settings", title: "Настройки", content: <div>Содержимое настроек</div> }
24
+ ];
25
+
26
+ export function Example() {
27
+ return <TabsBox items={items} aria-label="Разделы профиля" />;
28
+ }
29
+ `})}),`
30
+ `,(0,T.jsxs)(o.p,{children:[(0,T.jsx)(o.code,{children:`TabsBox`}),` сохраняет встроенный padding панели, поддерживает `,(0,T.jsx)(o.code,{children:`loading`}),`/`,(0,T.jsx)(o.code,{children:`empty`}),` и остаётся подходящим дефолтом для модалок, карточек и классических вкладок с одним scroll-контейнером.`]}),`
31
+ `,(0,T.jsxs)(o.h3,{id:`сценарии-tabsbox`,children:[`Сценарии `,(0,T.jsx)(o.code,{children:`TabsBox`})]}),`
32
+ `,(0,T.jsx)(l,{of:p}),`
33
+ `,(0,T.jsx)(l,{of:h}),`
34
+ `,(0,T.jsx)(l,{of:m}),`
35
+ `,(0,T.jsx)(l,{of:g}),`
36
+ `,(0,T.jsx)(l,{of:b}),`
37
+ `,(0,T.jsx)(l,{of:_}),`
38
+ `,(0,T.jsx)(o.h2,{id:`tabslayout`,children:`TabsLayout`}),`
39
+ `,(0,T.jsx)(l,{of:v}),`
40
+ `,(0,T.jsx)(o.pre,{children:(0,T.jsx)(o.code,{className:`language-tsx`,children:`import { Scrollable, TabsLayout } from "@/shared/ui";
41
+
42
+ export function Example() {
43
+ return (
44
+ <TabsLayout bordered h100 aria-label="Панели документа">
45
+ <TabsLayout.Tab id="details" title="Детали">
46
+ <TabsLayout.Toolbar>Панель инструментов</TabsLayout.Toolbar>
47
+ <TabsLayout.Content>
48
+ <Scrollable className="h100">Контент сам управляет scroll.</Scrollable>
49
+ </TabsLayout.Content>
50
+ <TabsLayout.Footer>Футер панели</TabsLayout.Footer>
51
+ </TabsLayout.Tab>
52
+ </TabsLayout>
53
+ );
54
+ }
55
+ `})}),`
56
+ `,(0,T.jsxs)(o.p,{children:[`Семантика `,(0,T.jsx)(o.code,{children:`TabsLayout`}),` после рефакторинга:`]}),`
57
+ `,(0,T.jsxs)(o.ul,{children:[`
58
+ `,(0,T.jsxs)(o.li,{children:[(0,T.jsx)(o.code,{children:`Toolbar`}),` и `,(0,T.jsx)(o.code,{children:`Footer`}),` всегда исключены из scroll-контента.`]}),`
59
+ `,(0,T.jsxs)(o.li,{children:[(0,T.jsx)(o.code,{children:`Content`}),` не получает встроенный `,(0,T.jsx)(o.code,{children:`overflow`}),` и не оборачивается во внутренний padding от tabs-компонента.`]}),`
60
+ `,(0,T.jsxs)(o.li,{children:[(0,T.jsx)(o.code,{children:`loading`}),` и `,(0,T.jsx)(o.code,{children:`empty`}),` состояния рендерятся снаружи вызывающим кодом.`]}),`
61
+ `]}),`
62
+ `,(0,T.jsx)(o.h2,{id:`deprecated-tabs`,children:`Deprecated Tabs`}),`
63
+ `,(0,T.jsx)(l,{of:y}),`
64
+ `,(0,T.jsxs)(o.p,{children:[(0,T.jsx)(o.code,{children:`Tabs`}),` сохранён только для обратной совместимости. Семантика до/после:`]}),`
65
+ `,(0,T.jsxs)(o.ul,{children:[`
66
+ `,(0,T.jsx)(o.li,{children:`До: один публичный компонент пытался одновременно управлять и tabs-state, и layout панели, и scroll-сценариями.`}),`
67
+ `,(0,T.jsxs)(o.li,{children:[`После: `,(0,T.jsx)(o.code,{children:`Tabs`}),` остаётся тонким фасадом над `,(0,T.jsx)(o.code,{children:`TabsBox`}),`, а новые сценарии идут через отдельные `,(0,T.jsx)(o.code,{children:`TabsBox`}),` и `,(0,T.jsx)(o.code,{children:`TabsLayout`}),`.`]}),`
68
+ `]}),`
69
+ `,(0,T.jsx)(o.h2,{id:`api`,children:`API`}),`
70
+ `,(0,T.jsx)(s,{of:S}),`
71
+ `,(0,T.jsx)(o.h2,{id:`все-сторисы`,children:`Все сторисы`}),`
72
+ `,(0,T.jsx)(r,{includePrimary:!1})]})}function w(e={}){let{wrapper:n}={...t(),...e.components};return n?(0,T.jsx)(n,{...e,children:(0,T.jsx)(C,{...e})}):C(e)}var T;e((()=>{T=u(),d(),o(),x()}))();export{w as default};
@@ -0,0 +1,58 @@
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,o as ee}from"./utils-CReRlw17.js";import{c as s,i as c,o as l,t as u,u as d}from"./misc-CPvLzCFJ.js";function f(e){return e.find(e=>!e.disabled)?.id??null}function p(e,t){return t?e.find(e=>e.id===t&&!e.disabled)?.id??f(e):f(e)}function m(e){return e.filter(e=>!e.disabled)}function h({mountStrategy:e,isSelected:t,isVisited:n}){return e===`keep-mounted`||t||e===`lazy`&&n}var g=n((()=>{}));function _({items:e,value:t,defaultValue:n,onValueChange:r,orientation:i=`horizontal`,activationMode:a=`automatic`,loop:o=!0}){let s=t!==void 0,c=(0,v.useMemo)(()=>m(e),[e]),l=c[0]?.id??null,[u,d]=(0,v.useState)(()=>p(e,n)),[f,h]=(0,v.useState)(()=>p(e,t??n)),g=p(e,t??n),[_,y]=(0,v.useState)(()=>g?new Set([g]):new Set),b=(0,v.useId)(),x=(0,v.useRef)({}),S=p(e,s?t:u),C=p(e,f)??S??l,te=(0,v.useMemo)(()=>{if(!S||_.has(S))return _;let e=new Set(_);return e.add(S),e},[S,_]),w=t=>{let n=p(e,t);n&&(y(e=>{if(e.has(n))return e;let t=new Set(e);return t.add(n),t}),s||d(n),r?.(n))},ne=e=>{x.current[e]?.focus()},re=e=>{if(c.length<2)return;let t=ee({currentIndex:Math.max(0,c.findIndex(e=>e.id===(C??S??l))),itemCount:c.length,key:e.key,orientation:i,wrap:o});if(t===null)return;e.preventDefault();let n=c[t]?.id;n&&(h(n),ne(n),a===`automatic`&&w(n))},ie=e=>{let t=e.relatedTarget;t instanceof Node&&e.currentTarget.contains(t)||h(S??l)},T=e=>`${b}-tab-${e}`,E=e=>`${b}-panel-${e}`;return{activationMode:a,orientation:i,selectedTabId:S,tabbableTabId:C,onTabListKeyDown:re,onTabListBlur:ie,getTabElementId:T,getPanelElementId:E,getTabButtonProps:e=>{let t=e.id===S,n=e.id===C;return{ref:t=>{x.current[e.id]=t},type:`button`,role:`tab`,id:T(e.id),disabled:e.disabled,"aria-selected":t,"aria-controls":E(e.id),"aria-disabled":e.disabled||void 0,tabIndex:e.disabled?-1:n?0:-1,onFocus:()=>h(e.id),onClick:()=>w(e.id)}},isVisited:e=>te.has(e)}}var v,y=n((()=>{v=t(r(),1),o(),g()})),b,x,S,C,te,w,ne,re,ie,T,E,ae,oe,se,ce,le,D,O=n((()=>{b=`pcMjuj`,x=`ITP5v-`,S=`kzs94N`,C=`ZSAoAa`,te=`psYhsZ`,w=`mNDq9-`,ne=`g156KO`,re=`C2mO1e`,ie=`_28F3fs`,T=`UKZXTZ`,E=`jiTafe`,ae=`nhD0k7`,oe=`G8FICe`,se=`W50XHh`,ce=`vnjXkU`,le=`Nzvfhw`,D={tabsContainer:b,bordered:x,cleanPanel:S,tabs:C,panels:te,horizontal:w,vertical:ne,panelScrollable:re,tab:ie,selected:T,panel:E,panelBody:ae,layoutPanels:oe,layoutPanel:se,layoutSection:ce,layoutContent:le}}));function ue({containerClassName:e,tabListClassName:t,panelsClassName:n,panelClassName:r,panelBodyClassName:i,loadingText:o}){return(0,k.jsxs)(`div`,{className:e,children:[(0,k.jsx)(`div`,{className:t,"aria-hidden":`true`,children:(0,k.jsx)(`button`,{type:`button`,disabled:!0,"data-disabled":``,className:a(D.tab,`skeletonLine`),children:`Загрузка...`})}),(0,k.jsx)(`div`,{className:n,"aria-busy":`true`,children:(0,k.jsx)(`div`,{className:r,children:(0,k.jsx)(`div`,{className:i,children:(0,k.jsx)(d,{text:o,className:`radiusSm`})})})})]})}var k,de=n((()=>{o(),u(),O(),k=i(),ue.__docgenInfo={description:"Служебное loading-состояние для `TabsBox`.",methods:[],displayName:`TabsLoadingState`,props:{containerClassName:{required:!0,tsType:{name:`string`},description:``},tabListClassName:{required:!0,tsType:{name:`string`},description:``},panelsClassName:{required:!0,tsType:{name:`string`},description:``},panelClassName:{required:!0,tsType:{name:`string`},description:``},panelBodyClassName:{required:!0,tsType:{name:`string`},description:``},loadingText:{required:!1,tsType:{name:`string`},description:``}}}}));function fe({containerClassName:e,panelsClassName:t,panelClassName:n,panelBodyClassName:r}){return(0,A.jsx)(`div`,{className:e,children:(0,A.jsx)(`div`,{className:t,children:(0,A.jsx)(`div`,{className:n,children:(0,A.jsx)(`div`,{className:r,children:(0,A.jsx)(s,{className:`radiusSm`})})})})})}var A,pe=n((()=>{u(),A=i(),fe.__docgenInfo={description:"Служебное empty-состояние для `TabsBox`.",methods:[],displayName:`TabsNoDataState`,props:{containerClassName:{required:!0,tsType:{name:`string`},description:``},panelsClassName:{required:!0,tsType:{name:`string`},description:``},panelClassName:{required:!0,tsType:{name:`string`},description:``},panelBodyClassName:{required:!0,tsType:{name:`string`},description:``}}}}));function me({tabId:e,isSelected:t,className:n,getTabElementId:r,getPanelElementId:i,children:a}){return(0,he.jsx)(`div`,{role:`tabpanel`,id:i(e),"aria-labelledby":r(e),hidden:!t,className:n,children:a})}var he,ge=n((()=>{r(),he=i(),me.__docgenInfo={description:``,methods:[],displayName:`TabsPanel`,props:{tabId:{required:!0,tsType:{name:`string`},description:``},isSelected:{required:!0,tsType:{name:`boolean`},description:``},className:{required:!1,tsType:{name:`string`},description:``},getTabElementId:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(tabId: string) => string`,signature:{arguments:[{type:{name:`string`},name:`tabId`}],return:{name:`string`}}},description:``},getPanelElementId:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(tabId: string) => string`,signature:{arguments:[{type:{name:`string`},name:`tabId`}],return:{name:`string`}}},description:``},children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``}}}}));function _e({items:e,state:t,className:n,ariaLabel:r,ariaLabelledBy:i}){return(0,j.jsx)(`div`,{className:n,role:`tablist`,"aria-orientation":t.orientation,"aria-label":r,"aria-labelledby":i,onKeyDown:t.onTabListKeyDown,onBlur:t.onTabListBlur,children:(e=>t.orientation===`horizontal`?(0,j.jsx)(l,{children:e}):(0,j.jsx)(j.Fragment,{children:e}))(e.map(e=>(0,j.jsx)(`button`,{...t.getTabButtonProps(e),"data-ui":`tabs-tab`,"data-action":`select-tab`,className:a(D.tab,`textWrap`,e.id===t.selectedTabId&&D.selected),children:e.title},e.id)))})}var j,ve=n((()=>{o(),u(),O(),j=i(),_e.__docgenInfo={description:``,methods:[],displayName:`TabsTabList`,props:{items:{required:!0,tsType:{name:`Array`,elements:[{name:`TabsDescriptor`}],raw:`TabsDescriptor[]`},description:``},state:{required:!0,tsType:{name:`TabsStateModel`},description:``},className:{required:!1,tsType:{name:`string`},description:``},ariaLabel:{required:!1,tsType:{name:`string`},description:``},ariaLabelledBy:{required:!1,tsType:{name:`string`},description:``}}}}));function M({items:e,value:t,defaultValue:n,onValueChange:r,className:i,isLoading:o,loadingText:ee,cleanPanel:s,bordered:c=!1,orientation:l=`horizontal`,activationMode:u=`automatic`,mountStrategy:d=`unmount`,loop:f=!0,"aria-label":p,"aria-labelledby":m}){let g=_({items:e,value:t,defaultValue:n,onValueChange:r,orientation:l,activationMode:u,loop:f}),v=a(D.tabsContainer,D[l],c&&D.bordered,s&&D.cleanPanel,i),y=D.tabs,b=a(D.panels,D.panelScrollable,`scrollable overscroll`),x=D.panel,S=D.panelBody;return o?(0,N.jsx)(ue,{containerClassName:v,tabListClassName:y,panelsClassName:b,panelClassName:x,panelBodyClassName:S,loadingText:ee}):e.length?(0,N.jsxs)(`div`,{className:v,children:[(0,N.jsx)(_e,{items:e,state:g,className:y,ariaLabel:p,ariaLabelledBy:m}),(0,N.jsx)(`div`,{className:b,children:e.map(e=>{let t=e.id===g.selectedTabId;return h({mountStrategy:d,isSelected:t,isVisited:g.isVisited(e.id)})?(0,N.jsx)(me,{tabId:e.id,isSelected:t,className:x,getTabElementId:g.getTabElementId,getPanelElementId:g.getPanelElementId,children:(0,N.jsx)(`div`,{className:S,children:e.content})},e.id):null})})]}):(0,N.jsx)(fe,{containerClassName:v,panelsClassName:b,panelClassName:x,panelBodyClassName:S})}var N,ye=n((()=>{o(),g(),y(),O(),de(),pe(),ge(),ve(),N=i(),M.__docgenInfo={description:`Простой items-based tabs-компонент.
2
+ Сам управляет областью панели и её прокруткой.`,methods:[],displayName:`TabsBox`,props:{value:{required:!1,tsType:{name:`string`},description:``},defaultValue:{required:!1,tsType:{name:`string`},description:``},onValueChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(value: string) => void`,signature:{arguments:[{type:{name:`string`},name:`value`}],return:{name:`void`}}},description:``},orientation:{required:!1,tsType:{name:`union`,raw:`"horizontal" | "vertical"`,elements:[{name:`literal`,value:`"horizontal"`},{name:`literal`,value:`"vertical"`}]},description:``,defaultValue:{value:`"horizontal"`,computed:!1}},activationMode:{required:!1,tsType:{name:`union`,raw:`"automatic" | "manual"`,elements:[{name:`literal`,value:`"automatic"`},{name:`literal`,value:`"manual"`}]},description:``,defaultValue:{value:`"automatic"`,computed:!1}},mountStrategy:{required:!1,tsType:{name:`union`,raw:`"unmount" | "lazy" | "keep-mounted"`,elements:[{name:`literal`,value:`"unmount"`},{name:`literal`,value:`"lazy"`},{name:`literal`,value:`"keep-mounted"`}]},description:``,defaultValue:{value:`"unmount"`,computed:!1}},loop:{required:!1,tsType:{name:`boolean`},description:``,defaultValue:{value:`true`,computed:!1}},cleanPanel:{required:!1,tsType:{name:`boolean`},description:``},bordered:{required:!1,tsType:{name:`boolean`},description:``,defaultValue:{value:`false`,computed:!1}},className:{required:!1,tsType:{name:`string`},description:``},"aria-label":{required:!1,tsType:{name:`string`},description:``},"aria-labelledby":{required:!1,tsType:{name:`string`},description:``},items:{required:!0,tsType:{name:`Array`,elements:[{name:`TabsBoxItem`}],raw:`TabsBoxItem[]`},description:``},isLoading:{required:!1,tsType:{name:`boolean`},description:``},loadingText:{required:!1,tsType:{name:`string`},description:``}}}}));function be({onChange:e,onValueChange:t,...n}){return(0,xe.jsx)(M,{...n,onValueChange:n=>{t?.(n),e?.(n)}})}var xe,Se=n((()=>{ye(),xe=i(),be.__docgenInfo={description:"@deprecated Используйте `TabsBox` для простого сценария и `TabsLayout` для составных layout-сценариев.",methods:[],displayName:`Tabs`,props:{value:{required:!1,tsType:{name:`string`},description:``},defaultValue:{required:!1,tsType:{name:`string`},description:``},onValueChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(value: string) => void`,signature:{arguments:[{type:{name:`string`},name:`value`}],return:{name:`void`}}},description:``},orientation:{required:!1,tsType:{name:`union`,raw:`"horizontal" | "vertical"`,elements:[{name:`literal`,value:`"horizontal"`},{name:`literal`,value:`"vertical"`}]},description:``},activationMode:{required:!1,tsType:{name:`union`,raw:`"automatic" | "manual"`,elements:[{name:`literal`,value:`"automatic"`},{name:`literal`,value:`"manual"`}]},description:``},mountStrategy:{required:!1,tsType:{name:`union`,raw:`"unmount" | "lazy" | "keep-mounted"`,elements:[{name:`literal`,value:`"unmount"`},{name:`literal`,value:`"lazy"`},{name:`literal`,value:`"keep-mounted"`}]},description:``},loop:{required:!1,tsType:{name:`boolean`},description:``},cleanPanel:{required:!1,tsType:{name:`boolean`},description:``},bordered:{required:!1,tsType:{name:`boolean`},description:``},className:{required:!1,tsType:{name:`string`},description:``},"aria-label":{required:!1,tsType:{name:`string`},description:``},"aria-labelledby":{required:!1,tsType:{name:`string`},description:``},items:{required:!0,tsType:{name:`Array`,elements:[{name:`TabsBoxItem`}],raw:`TabsBoxItem[]`},description:``},isLoading:{required:!1,tsType:{name:`boolean`},description:``},loadingText:{required:!1,tsType:{name:`string`},description:``},onChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(value: string) => void`,signature:{arguments:[{type:{name:`string`},name:`value`}],return:{name:`void`}}},description:``}}}}));function Ce(e){let{type:t}=e;if(typeof t==`function`){let e=t;return e.displayName??e.name??null}if(typeof t==`object`&&t&&`displayName`in t){let e=t;return typeof e.displayName==`string`?e.displayName:null}return null}function P(e,t){return(0,F.isValidElement)(e)&&Ce(e)===t}function we({children:e}){return(0,I.jsx)(I.Fragment,{children:e})}function Te({children:e}){return(0,I.jsx)(I.Fragment,{children:e})}function Ee({children:e}){return(0,I.jsx)(I.Fragment,{children:e})}function De({children:e}){return(0,I.jsx)(I.Fragment,{children:e})}function Oe(e,t){let n=null,r=null,i=null;for(let a of F.Children.toArray(e)){if(!(0,F.isValidElement)(a))throw Error(`TabsLayout.Tab "${t}" поддерживает только дочерние элементы TabsLayout.Toolbar, TabsLayout.Content и TabsLayout.Footer.`);if(P(a,L)){if(n)throw Error(`TabsLayout.Tab "${t}" содержит более одного блока TabsLayout.Toolbar.`);n=a.props;continue}if(P(a,je)){if(r)throw Error(`TabsLayout.Tab "${t}" содержит более одного блока TabsLayout.Content.`);r=a.props;continue}if(P(a,Me)){if(i)throw Error(`TabsLayout.Tab "${t}" содержит более одного блока TabsLayout.Footer.`);i=a.props;continue}throw Error(`TabsLayout.Tab "${t}" поддерживает только дочерние элементы TabsLayout.Toolbar, TabsLayout.Content и TabsLayout.Footer.`)}if(!r)throw Error(`TabsLayout.Tab "${t}" должен содержать блок TabsLayout.Content.`);return{toolbar:n,content:r,footer:i}}function ke(e){return F.Children.toArray(e).map(e=>{if(!P(e,Ae))throw Error(`TabsLayout принимает только дочерние элементы TabsLayout.Tab.`);return{id:e.props.id,title:e.props.title,disabled:e.props.disabled,...Oe(e.props.children,e.props.id)}})}var F,I,Ae,L,je,Me,R,z,Ne=n((()=>{F=t(r(),1),o(),g(),y(),O(),ge(),ve(),I=i(),Ae=`TabsLayout.Tab`,L=`TabsLayout.Toolbar`,je=`TabsLayout.Content`,Me=`TabsLayout.Footer`,we.displayName=Ae,Te.displayName=L,Ee.displayName=je,De.displayName=Me,R=({children:e,value:t,defaultValue:n,onValueChange:r,className:i,bordered:o,cleanPanel:ee,orientation:s=`horizontal`,activationMode:c=`manual`,mountStrategy:l=`lazy`,loop:u=!0,"aria-label":d,"aria-labelledby":f})=>{let p=(0,F.useMemo)(()=>ke(e),[e]),m=_({items:p,value:t,defaultValue:n,onValueChange:r,orientation:s,activationMode:c,loop:u}),g=a(D.tabsContainer,D[s],o&&D.bordered,ee&&D.cleanPanel,i),v=a(D.panels,D.layoutPanels);return(0,I.jsxs)(`div`,{className:g,children:[(0,I.jsx)(_e,{items:p,state:m,className:D.tabs,ariaLabel:d,ariaLabelledBy:f}),(0,I.jsx)(`div`,{className:v,children:p.map(e=>{let t=e.id===m.selectedTabId;if(!h({mountStrategy:l,isSelected:t,isVisited:m.isVisited(e.id)}))return null;let n=`${e.toolbar?`auto `:``}minmax(0, 1fr)${e.footer?` auto`:``}`;return(0,I.jsx)(me,{tabId:e.id,isSelected:t,className:D.panel,getTabElementId:m.getTabElementId,getPanelElementId:m.getPanelElementId,children:(0,I.jsxs)(`div`,{className:D.layoutPanel,style:{gridTemplateRows:n},children:[e.toolbar?(0,I.jsx)(`div`,{className:a(D.layoutSection,e.toolbar.className),children:e.toolbar.children}):null,(0,I.jsx)(`div`,{className:a(D.layoutSection,D.layoutContent,e.content.className),children:e.content.children}),e.footer?(0,I.jsx)(`div`,{className:a(D.layoutSection,e.footer.className),children:e.footer.children}):null]})},e.id)})})]})},R.displayName=`TabsLayout`,z=Object.assign(R,{Tab:we,Toolbar:Te,Content:Ee,Footer:De}),R.__docgenInfo={description:`Compound-оболочка tabs для составных panel-layout сценариев.
3
+ Сам компонент управляет только переключением и каркасом панели.`,methods:[],displayName:`TabsLayout`,props:{value:{required:!1,tsType:{name:`string`},description:``},defaultValue:{required:!1,tsType:{name:`string`},description:``},onValueChange:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(value: string) => void`,signature:{arguments:[{type:{name:`string`},name:`value`}],return:{name:`void`}}},description:``},orientation:{required:!1,tsType:{name:`union`,raw:`"horizontal" | "vertical"`,elements:[{name:`literal`,value:`"horizontal"`},{name:`literal`,value:`"vertical"`}]},description:``,defaultValue:{value:`"horizontal"`,computed:!1}},activationMode:{required:!1,tsType:{name:`union`,raw:`"automatic" | "manual"`,elements:[{name:`literal`,value:`"automatic"`},{name:`literal`,value:`"manual"`}]},description:``,defaultValue:{value:`"manual"`,computed:!1}},mountStrategy:{required:!1,tsType:{name:`union`,raw:`"unmount" | "lazy" | "keep-mounted"`,elements:[{name:`literal`,value:`"unmount"`},{name:`literal`,value:`"lazy"`},{name:`literal`,value:`"keep-mounted"`}]},description:``,defaultValue:{value:`"lazy"`,computed:!1}},loop:{required:!1,tsType:{name:`boolean`},description:``,defaultValue:{value:`true`,computed:!1}},cleanPanel:{required:!1,tsType:{name:`boolean`},description:``},bordered:{required:!1,tsType:{name:`boolean`},description:``},className:{required:!1,tsType:{name:`string`},description:``},"aria-label":{required:!1,tsType:{name:`string`},description:``},"aria-labelledby":{required:!1,tsType:{name:`string`},description:``},children:{required:!0,tsType:{name:`ReactReactNode`,raw:`React.ReactNode`},description:``}}}})),Pe=n((()=>{Se(),ye(),Ne()})),Fe=e({BoxBasic:()=>G,BoxControlled:()=>K,BoxMountStrategies:()=>J,BoxVertical:()=>q,DisabledTabs:()=>Y,Empty:()=>$,LayoutPanels:()=>X,LegacyTabs:()=>Z,Loading:()=>Q,__namedExportsOrder:()=>Ve,default:()=>Be});function Ie({label:e}){let[t,n]=(0,B.useState)(0);return(0,V.jsxs)(`div`,{style:H,children:[(0,V.jsxs)(`div`,{children:[`Панель: `,e]}),(0,V.jsxs)(`div`,{children:[`Локальный счётчик: `,t]}),(0,V.jsx)(`button`,{type:`button`,onClick:()=>n(e=>e+1),children:`Увеличить`})]})}function Le(){let[e,t]=(0,B.useState)(`details`);return(0,V.jsx)(`div`,{style:{height:360},children:(0,V.jsxs)(z,{value:e,onValueChange:t,bordered:!0,"aria-label":`Составные панели документа`,children:[(0,V.jsxs)(z.Tab,{id:`details`,title:`Детали`,children:[(0,V.jsx)(z.Toolbar,{children:(0,V.jsx)(`div`,{className:`surface0 border radiusSm paddingSm`,children:`Панель инструментов вне scroll-области.`})}),(0,V.jsx)(z.Content,{children:(0,V.jsxs)(`div`,{style:{display:`grid`,gridTemplateColumns:`1fr 1fr`,gap:12,height:`100%`},children:[(0,V.jsx)(c,{className:`surface0 border radiusSm paddingSm h100`,children:W.map(e=>(0,V.jsxs)(`div`,{className:`paddingBlockXs`,children:[`Левая колонка: `,e]},`left-${e}`))}),(0,V.jsx)(c,{className:`surface0 border radiusSm paddingSm h100`,children:W.map(e=>(0,V.jsxs)(`div`,{className:`paddingBlockXs`,children:[`Правая колонка: `,e]},`right-${e}`))})]})}),(0,V.jsx)(z.Footer,{children:(0,V.jsx)(`div`,{className:`surface0 border radiusSm paddingSm`,children:`Футер тоже исключён из scroll-контента.`})})]}),(0,V.jsx)(z.Tab,{id:`history`,title:`История`,children:(0,V.jsx)(z.Content,{children:(0,V.jsx)(c,{className:`surface0 border radiusSm paddingSm h100`,children:W.map(e=>(0,V.jsxs)(`div`,{className:`paddingBlockXs`,children:[`История изменения: `,e]},`history-${e}`))})})})]})})}var B,V,H,U,Re,ze,W,Be,G,K,q,J,Y,X,Z,Q,$,Ve,He=n((()=>{B=t(r(),1),Pe(),u(),V=i(),H={padding:16,display:`grid`,gap:12},U=[{id:`profile`,title:`Профиль`,content:(0,V.jsx)(`div`,{style:H,children:`Карточка пользователя и основные поля профиля.`})},{id:`settings`,title:`Настройки`,content:(0,V.jsx)(`div`,{style:H,children:`Параметры интерфейса, уведомлений и доступа.`})},{id:`history`,title:`История`,content:(0,V.jsx)(`div`,{style:H,children:`Последние действия, комментарии и изменения.`})}],Re=[{id:`first`,title:`Первая`,content:(0,V.jsx)(Ie,{label:`Первая`})},{id:`second`,title:`Вторая`,content:(0,V.jsx)(Ie,{label:`Вторая`})},{id:`third`,title:`Третья`,content:(0,V.jsx)(Ie,{label:`Третья`})}],ze=[{id:`overview`,title:`Обзор`,content:(0,V.jsx)(`div`,{style:H,children:`Раздел доступен сразу.`})},{id:`analytics`,title:`Аналитика`,disabled:!0,content:(0,V.jsx)(`div`,{style:H,children:`Пока недоступно.`})},{id:`history`,title:`История`,content:(0,V.jsx)(`div`,{style:H,children:`История изменений и действий.`})}],W=Array.from({length:12},(e,t)=>`Элемент ${t+1}`),Be={title:`Shared/UI/Tabs`,component:M,args:{items:U,orientation:`horizontal`,activationMode:`automatic`,mountStrategy:`unmount`,isLoading:!1,loadingText:`Загрузка вкладок...`,bordered:!1,loop:!0},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{items:{description:"Набор вкладок для `TabsBox`. Каждая вкладка задаётся через `id`, `title`, `content` и опциональный `disabled`.",control:!1},value:{description:`Активная вкладка в controlled-режиме.`,control:`text`},defaultValue:{description:`Начальная вкладка в uncontrolled-режиме.`,control:`text`},onValueChange:{description:`Вызывается при смене активной вкладки.`,control:!1},orientation:{description:`Направление списка вкладок.`,control:`inline-radio`,options:[`horizontal`,`vertical`]},activationMode:{description:"Режим клавиатурной активации: `automatic` меняет вкладку стрелками, `manual` только переводит фокус.",control:`inline-radio`,options:[`automatic`,`manual`]},mountStrategy:{description:"Политика монтирования панелей: `unmount`, `lazy` или `keep-mounted`.",control:`inline-radio`,options:[`unmount`,`lazy`,`keep-mounted`]},bordered:{description:`Добавляет рамку вокруг области панелей.`,control:`boolean`},loop:{description:`Разрешает циклическую навигацию стрелками и Home/End.`,control:`boolean`},className:{description:`Дополнительный CSS-класс корневого контейнера.`,control:`text`},isLoading:{description:"Показывает loading-состояние `TabsBox`.",control:`boolean`},loadingText:{description:`Текст внутри loading-состояния.`,control:`text`},"aria-label":{description:"Текстовая подпись для `tablist`, если рядом нет видимого заголовка.",control:`text`},"aria-labelledby":{description:"Ссылка на внешний заголовок `tablist`.",control:`text`}}},G={args:{"aria-label":`Основные разделы профиля`}},K={render:e=>{let[t,n]=(0,B.useState)(`settings`);return(0,V.jsx)(M,{...e,value:t,onValueChange:n})},args:{value:`settings`,"aria-label":`Управляемые вкладки`}},q={render:e=>(0,V.jsx)(`div`,{style:{height:320},children:(0,V.jsx)(M,{...e})}),args:{orientation:`vertical`,bordered:!0,"aria-label":`Вертикальные вкладки`}},J={render:e=>(0,V.jsx)(M,{...e,items:Re}),args:{mountStrategy:`lazy`,"aria-label":`Демонстрация стратегий монтирования`}},Y={args:{items:ze,"aria-label":`Вкладки с недоступным разделом`}},X={render:()=>(0,V.jsx)(Le,{})},Z={render:e=>(0,V.jsx)(be,{...e,items:U,"aria-label":`Устаревший совместимый API`}),parameters:{docs:{description:{story:"Совместимый фасад поверх `TabsBox`. Новый функционал добавляется только в `TabsBox` и `TabsLayout`."}}}},Q={args:{isLoading:!0,items:U}},$={args:{items:[]}},G.parameters={...G.parameters,docs:{...G.parameters?.docs,source:{originalSource:`{
4
+ args: {
5
+ "aria-label": "Основные разделы профиля"
6
+ }
7
+ }`,...G.parameters?.docs?.source}}},K.parameters={...K.parameters,docs:{...K.parameters?.docs,source:{originalSource:`{
8
+ render: args => {
9
+ const [value, setValue] = useState("settings");
10
+ return <TabsBox {...args} value={value} onValueChange={setValue} />;
11
+ },
12
+ args: {
13
+ value: "settings",
14
+ "aria-label": "Управляемые вкладки"
15
+ }
16
+ }`,...K.parameters?.docs?.source}}},q.parameters={...q.parameters,docs:{...q.parameters?.docs,source:{originalSource:`{
17
+ render: args => <div style={{
18
+ height: 320
19
+ }}>
20
+ <TabsBox {...args} />
21
+ </div>,
22
+ args: {
23
+ orientation: "vertical",
24
+ bordered: true,
25
+ "aria-label": "Вертикальные вкладки"
26
+ }
27
+ }`,...q.parameters?.docs?.source}}},J.parameters={...J.parameters,docs:{...J.parameters?.docs,source:{originalSource:`{
28
+ render: args => <TabsBox {...args} items={lifecycleItems} />,
29
+ args: {
30
+ mountStrategy: "lazy",
31
+ "aria-label": "Демонстрация стратегий монтирования"
32
+ }
33
+ }`,...J.parameters?.docs?.source}}},Y.parameters={...Y.parameters,docs:{...Y.parameters?.docs,source:{originalSource:`{
34
+ args: {
35
+ items: disabledItems,
36
+ "aria-label": "Вкладки с недоступным разделом"
37
+ }
38
+ }`,...Y.parameters?.docs?.source}}},X.parameters={...X.parameters,docs:{...X.parameters?.docs,source:{originalSource:`{
39
+ render: () => <LayoutStory />
40
+ }`,...X.parameters?.docs?.source}}},Z.parameters={...Z.parameters,docs:{...Z.parameters?.docs,source:{originalSource:`{
41
+ render: args => <Tabs {...args} items={demoItems} aria-label="Устаревший совместимый API" />,
42
+ parameters: {
43
+ docs: {
44
+ description: {
45
+ story: "Совместимый фасад поверх \`TabsBox\`. Новый функционал добавляется только в \`TabsBox\` и \`TabsLayout\`."
46
+ }
47
+ }
48
+ }
49
+ }`,...Z.parameters?.docs?.source}}},Q.parameters={...Q.parameters,docs:{...Q.parameters?.docs,source:{originalSource:`{
50
+ args: {
51
+ isLoading: true,
52
+ items: demoItems
53
+ }
54
+ }`,...Q.parameters?.docs?.source}}},$.parameters={...$.parameters,docs:{...$.parameters?.docs,source:{originalSource:`{
55
+ args: {
56
+ items: []
57
+ }
58
+ }`,...$.parameters?.docs?.source}}},Ve=[`BoxBasic`,`BoxControlled`,`BoxVertical`,`BoxMountStrategies`,`DisabledTabs`,`LayoutPanels`,`LegacyTabs`,`Loading`,`Empty`]}));He();export{G as BoxBasic,K as BoxControlled,J as BoxMountStrategies,q as BoxVertical,Y as DisabledTabs,$ as Empty,X as LayoutPanels,Z as LegacyTabs,Q as Loading,Ve as __namedExportsOrder,Be as default,He as n,Fe as t};
@@ -0,0 +1,37 @@
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,Disabled as m,WithValue as h,n as g,t as _}from"./Textarea.stories-C1wO9PKR.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:`Textarea`}),`
3
+ `,(0,b.jsx)(i,{children:`Многострочное текстовое поле для описаний, комментариев и заметок`}),`
4
+ `,(0,b.jsx)(o.p,{children:`Textarea уже имеет живые 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 { Textarea } from "@/shared/ui";
12
+
13
+ export function Example() {
14
+ const [value, setValue] = useState("");
15
+
16
+ return <Textarea label="Комментарий" value={value} onChange={setValue} placeholder="Введите текст" />;
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
+ `,(0,b.jsx)(o.li,{children:`Заблокированное состояние лучше проверять отдельно, чтобы убедиться, что визуально и поведенчески оно остается понятным.`}),`
23
+ `]}),`
24
+ `,(0,b.jsx)(o.h2,{id:`сценарии-использования`,children:`Сценарии использования`}),`
25
+ `,(0,b.jsx)(o.h3,{id:`компонент-работает-в-контролируемом-режиме-когда-состояние-хранится-во-внешнем-компоненте`,children:`Компонент работает в контролируемом режиме, когда состояние хранится во внешнем компоненте`}),`
26
+ `,(0,b.jsx)(o.p,{children:`Компонент работает в контролируемом режиме, когда состояние хранится во внешнем компоненте.`}),`
27
+ `,(0,b.jsx)(l,{of:p}),`
28
+ `,(0,b.jsx)(o.h3,{id:`компонент-с-уже-заданным-значением`,children:`Компонент с уже заданным значением`}),`
29
+ `,(0,b.jsx)(o.p,{children:`Компонент с уже заданным значением.`}),`
30
+ `,(0,b.jsx)(l,{of:h}),`
31
+ `,(0,b.jsx)(o.h3,{id:`проверка-поведения-в-заблокированном-состоянии`,children:`Проверка поведения в заблокированном состоянии`}),`
32
+ `,(0,b.jsx)(o.p,{children:`Проверка поведения в заблокированном состоянии.`}),`
33
+ `,(0,b.jsx)(l,{of:m}),`
34
+ `,(0,b.jsx)(o.h2,{id:`api`,children:`API`}),`
35
+ `,(0,b.jsx)(s,{of:_}),`
36
+ `,(0,b.jsx)(o.h2,{id:`все-сторисы`,children:`Все сторисы`}),`
37
+ `,(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
+ .TjY2iu{resize:vertical;width:100%;min-height:6em;padding:var(--space-sm);display:block}
@@ -0,0 +1,27 @@
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{n as s,t as c}from"./ui.module-DS2qtZts.js";import{o as l,u}from"./Input-B7DWcGCL.js";import{t as d}from"./input-Be5K9_B7.js";var f,p,m=n((()=>{f=`TjY2iu`,p={textarea:f}}));function h({label:e,description:t,className:n,disabled:r,size:i,value:o,onChange:c,error:d,onClearError:f,id:m,...h}){let{controlId:_,labelId:v,descriptionId:y,errorId:b,describedBy:x}=u({id:m,hasLabel:e!=null,hasDescription:!!t,hasError:!!d});return(0,g.jsx)(l,{label:e,description:t,disabled:r,size:i,error:d,controlId:_,labelId:v,descriptionId:y,errorId:b,children:(0,g.jsx)(`textarea`,{...h,id:_,disabled:r,value:o,"aria-invalid":!!d||void 0,"aria-labelledby":v,"aria-describedby":x,"data-invalid":d?``:void 0,className:a(s.uiControl,p.textarea,`scrollable`,n),onChange:e=>{c?.(e.target.value),d&&f&&f()}})})}var g,_=n((()=>{o(),d(),c(),m(),g=i(),h.__docgenInfo={description:`Многострочное текстовое поле для ввода свободного текста. Поддерживает подпись, описание, ошибки и единый визуальный стиль формы.`,methods:[],displayName:`Textarea`,props:{label:{required:!1,tsType:{name:`ReactNode`},description:``},description:{required:!1,tsType:{name:`string`},description:``},placeholder:{required:!1,tsType:{name:`string`},description:``},disabled:{required:!1,tsType:{name:`boolean`},description:``},size:{required:!1,tsType:{name:`union`,raw:`"xs" | "sm" | "md" | "lg" | "xl"`,elements:[{name:`literal`,value:`"xs"`},{name:`literal`,value:`"sm"`},{name:`literal`,value:`"md"`},{name:`literal`,value:`"lg"`},{name:`literal`,value:`"xl"`}]},description:``},value:{required:!0,tsType:{name:`V`},description:"Если начальное состояние может быть `null | undefined`\nзначит `onChange` тоже должен ументь сбрасывать.\nПоэтому такой контрол явно должен передавать `UiBaseProps<AnyType | undefined>`"},onChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(value: T) => void`,signature:{arguments:[{type:{name:`C`},name:`value`}],return:{name:`void`}}},description:``},error:{required:!1,tsType:{name:`string`},description:``},onClearError:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:``}},composes:[`Omit`]}})),v=e({Controlled:()=>S,Disabled:()=>w,WithValue:()=>C,__namedExportsOrder:()=>T,default:()=>x}),y,b,x,S,C,w,T,E=n((()=>{y=t(r(),1),_(),b=i(),x={title:`Shared/UI/Textarea`,component:h,args:{label:`Комментарий`,description:`Оставьте примечание к документу.`,placeholder:`Введите текст...`,rows:4,disabled:!1,value:``,onChange:()=>void 0},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{label:{description:`Заголовок текстовой области.`,control:`text`},description:{description:`Описание под заголовком.`,control:`text`},placeholder:{description:`Плейсхолдер поля ввода.`,control:`text`},value:{description:`Текущее значение текстовой области.`,control:`text`},onChange:{description:`Вызывается при изменении текста.`,control:!1},rows:{description:`Количество видимых строк.`,control:`number`},cols:{description:`Ширина в количестве символов.`,control:`number`},disabled:{description:`Блокирует редактирование.`,control:`boolean`},className:{description:`Дополнительный CSS-класс.`,control:`text`}}},S={args:{value:``,onChange:()=>void 0},render:e=>{let[t,n]=(0,y.useState)(`Первичный комментарий`);return(0,b.jsx)(h,{...e,value:t,onChange:n})}},C={args:{rows:5,value:``,onChange:()=>void 0},render:e=>{let[t,n]=(0,y.useState)(`Шаблонный текст для редактирования.`);return(0,b.jsx)(h,{...e,value:t,onChange:n})}},w={args:{disabled:!0,value:`Редактирование недоступно.`,onChange:()=>void 0},render:e=>(0,b.jsx)(h,{...e})},S.parameters={...S.parameters,docs:{...S.parameters?.docs,source:{originalSource:`{
2
+ args: {
3
+ value: "",
4
+ onChange: () => undefined
5
+ },
6
+ render: args => {
7
+ const [value, setValue] = useState("Первичный комментарий");
8
+ return <Textarea {...args} value={value} onChange={setValue} />;
9
+ }
10
+ }`,...S.parameters?.docs?.source}}},C.parameters={...C.parameters,docs:{...C.parameters?.docs,source:{originalSource:`{
11
+ args: {
12
+ rows: 5,
13
+ value: "",
14
+ onChange: () => undefined
15
+ },
16
+ render: args => {
17
+ const [value, setValue] = useState("Шаблонный текст для редактирования.");
18
+ return <Textarea {...args} value={value} onChange={setValue} />;
19
+ }
20
+ }`,...C.parameters?.docs?.source}}},w.parameters={...w.parameters,docs:{...w.parameters?.docs,source:{originalSource:`{
21
+ args: {
22
+ disabled: true,
23
+ value: "Редактирование недоступно.",
24
+ onChange: () => undefined
25
+ },
26
+ render: args => <Textarea {...args} />
27
+ }`,...w.parameters?.docs?.source}}},T=[`Controlled`,`WithValue`,`Disabled`]}));E();export{S as Controlled,w as Disabled,C as WithValue,T as __namedExportsOrder,x as default,E as n,v as t};
@@ -0,0 +1 @@
1
+ import{c as e,i as t}from"./preload-helper-B45gAKPr.js";import{C as n}from"./iframe-SfMJGCsn.js";import{t as r}from"./jsx-runtime-BBQGix-2.js";import{a as i,i as a}from"./utils-CReRlw17.js";import{R as o,t as s,v as c}from"./formatters-yIBztcem.js";import{i as l,r as u}from"./date-segments-CzU9k5bl.js";function d(e=0,t=0){return c(S,C,w,e,t,0,0)}function f(e=`date-time`){return e===`time`?x:b}function p(e,t=`date-time`){if(e==null)return null;let n=o(e);return n?t===`time`?d(n.getHours(),n.getMinutes()):n:null}function m(e,t,n,r=`date-time`){let i=p(e,r);if(!i)return!1;if(r===`time`){let e=i.getHours()*60+i.getMinutes(),r=t?p(t,`time`):null,a=n?p(n,`time`):null;return!(r&&e<r.getHours()*60+r.getMinutes()||a&&e>a.getHours()*60+a.getMinutes())}return!(t&&i<t||n&&i>n)}function h(e,t){let n=p(t),r=n?.getHours()??0,i=n?.getMinutes()??0;return c(e.getFullYear(),e.getMonth(),e.getDate(),r,i,0,0)}function g(e,t,n,r=`date-time`){return r===`time`?d(t,n):c(e.getFullYear(),e.getMonth(),e.getDate(),t,n,0,0)}function _(e,t,n=`date-time`){return n===`time`?p(e,`time`)??d():p(e,n)??t}function v(e,t,n,r=`date-time`){let i=p(e,r)??e,a=t?p(t,r):null,o=n?p(n,r):null,s=!!a&&i.getFullYear()===a.getFullYear()&&i.getMonth()===a.getMonth()&&i.getDate()===a.getDate(),c=!!o&&i.getFullYear()===o.getFullYear()&&i.getMonth()===o.getMonth()&&i.getDate()===o.getDate(),l=s?a.getHours():0,u=c?o.getHours():23,d=s&&l===u?a.getMinutes():0,f=c&&l===u?o.getMinutes():59,m=l>u||l===u&&d>f;return{disabled:m,minHour:l,maxHour:u,minMinuteByHour:e=>m?0:s&&e===l?a.getMinutes():0,maxMinuteByHour:e=>m?59:c&&e===u?o.getMinutes():59}}function y(e,t,n,r,i,a=`date-time`){let o=v(e,r,i,a);if(o.disabled)return{hours:0,minutes:0};let s=Math.min(Math.max(t,o.minHour),o.maxHour),c=o.minMinuteByHour(s),l=o.maxMinuteByHour(s);return{hours:s,minutes:Math.min(Math.max(n,c),l)}}var b,x,S,C,w,T=t((()=>{u(),s(),b=`dd.MM.yyyy HH:mm`,x=`HH:mm`,S=1970,C=0,w=1,l(x)}));function ee(e,t,n,r=`date-time`){let i=v(e,t,n,r),a=e.getHours(),o=e.getMinutes(),s=i.minMinuteByHour(a),c=i.maxMinuteByHour(a);return i.disabled?{disabled:!0,selectedHour:a,selectedMinute:o,hours:[],minutes:[]}:{disabled:!1,selectedHour:a,selectedMinute:o,hours:Array.from({length:i.maxHour-i.minHour+1},(e,t)=>i.minHour+t),minutes:Array.from({length:c-s+1},(e,t)=>s+t)}}var te=t((()=>{T()}));function E(e,t){return t<=0||e<0?0:e>t-1?t-1:e}function D(e,t){return!Number.isFinite(e)||e<=0?t:Math.max(e,t)}function ne(e,t){return Math.max(1,Math.round(e/Math.max(1,t)))}function re(e,t){return Math.max(0,Math.round(e/2-t/2))}function O(e,t){return Math.max(0,Math.round(e*t))}function k(e,t,n){return n<=0||t<=0?0:E(Math.round(e/t),n)}var A=t((()=>{})),j,M,N,P,F,I,L,R=t((()=>{j=`GLhdJ6`,M=`_2xLNL2`,N=`dgX32S`,P=`WfOtQ9`,F=`XIdSMi`,I=`_--Hsbk`,L={wheelPicker:j,viewport:M,scroller:N,items:P,item:F,selectionFrame:I}}));function z({items:e,value:t,onChange:n,ariaLabel:r,disabled:a,className:o,minHeight:s=H,visibleRows:c=U,formatItem:l,getItemKey:u}){let d=(0,B.useRef)(null),f=(0,B.useRef)(null),p=(0,B.useRef)(null),m=(0,B.useMemo)(()=>Math.max(0,e.findIndex(e=>Object.is(e,t))),[e,t]),[h,g]=(0,B.useState)(0),_=D(h,s),v=ne(_,c),y=re(_,v),b=(0,B.useRef)(m),x=(0,B.useCallback)(e=>Math.round(e.clientHeight),[]),S=(0,B.useCallback)(()=>{let t=f.current;if(!t||e.length===0)return;let r=k(t.scrollTop,v,e.length);t.scrollTo({top:O(r,v),behavior:`smooth`}),r!==b.current&&(b.current=r,n(e[r]))},[v,e,n]),C=(0,B.useCallback)(()=>{p.current!==null&&window.clearTimeout(p.current),p.current=window.setTimeout(()=>{p.current=null,S()},W)},[S]);(0,B.useEffect)(()=>{let e=d.current;if(!e||typeof ResizeObserver>`u`)return;let t=e=>{g(t=>t===e?t:e)},n=new ResizeObserver(n=>{let r=n[0],i=Math.round(r?.contentRect.height??x(e));t(i)});return n.observe(e),t(x(e)),()=>n.disconnect()},[x]),(0,B.useEffect)(()=>{let t=f.current;if(!t||e.length===0)return;let n=E(m,e.length);b.current=n,t.scrollTo({top:O(n,v),behavior:`auto`})},[v,e.length,m]),(0,B.useEffect)(()=>{let e=f.current;if(!e)return;let t=()=>{a||C()},n=t=>{a||(t.preventDefault(),e.scrollTop+=t.deltaY,C())};return e.addEventListener(`scroll`,t,{passive:!0}),e.addEventListener(`wheel`,n,{passive:!1}),()=>{e.removeEventListener(`scroll`,t),e.removeEventListener(`wheel`,n)}},[a,e,n,C]),(0,B.useEffect)(()=>()=>{p.current!==null&&window.clearTimeout(p.current)},[]);let w=t=>{if(a||e.length===0||t.key!==`ArrowUp`&&t.key!==`ArrowDown`)return;t.preventDefault();let r=t.key===`ArrowUp`?-1:1,i=E(m+r,e.length);i!==m&&(b.current=i,n(e[i]))},T={"--wheel-picker-min-height":`${s}px`,"--wheel-picker-viewport-height":`${_}px`,"--wheel-picker-item-height":`${v}px`,"--wheel-picker-edge-padding":`${y}px`};return(0,V.jsx)(`div`,{ref:d,className:i(L.wheelPicker,o),style:T,children:(0,V.jsxs)(`div`,{className:L.viewport,children:[(0,V.jsx)(`div`,{ref:f,className:L.scroller,role:`listbox`,tabIndex:a?-1:0,"aria-label":r,"aria-disabled":a||void 0,onKeyDown:w,children:(0,V.jsx)(`div`,{className:L.items,children:e.map((e,t)=>{let r=t===m;return(0,V.jsx)(`button`,{type:`button`,role:`option`,"aria-selected":r,className:L.item,"data-selected":r?``:void 0,disabled:a,onClick:()=>{b.current=t,n(e)},children:l?.(e)??String(e)},u?.(e,t)??t)})})}),(0,V.jsx)(`div`,{className:L.selectionFrame,"aria-hidden":`true`})]})})}var B,V,H,U,W,ie=t((()=>{B=e(n(),1),a(),A(),R(),V=r(),H=192,U=7,W=96,z.__docgenInfo={description:`Внутренний wheel-picker со snap-кареткой по центру и блокировкой page scroll.`,methods:[],displayName:`WheelPicker`,props:{items:{required:!0,tsType:{name:`unknown`},description:``},value:{required:!0,tsType:{name:`T`},description:``},onChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(value: T) => void`,signature:{arguments:[{type:{name:`T`},name:`value`}],return:{name:`void`}}},description:``},ariaLabel:{required:!0,tsType:{name:`string`},description:``},disabled:{required:!1,tsType:{name:`boolean`},description:``},className:{required:!1,tsType:{name:`string`},description:``},minHeight:{required:!1,tsType:{name:`number`},description:``,defaultValue:{value:`192`,computed:!1}},visibleRows:{required:!1,tsType:{name:`number`},description:``,defaultValue:{value:`7`,computed:!1}},formatItem:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(item: T) => ReactNode`,signature:{arguments:[{type:{name:`T`},name:`item`}],return:{name:`ReactNode`}}},description:``},getItemKey:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(item: T, index: number) => Key`,signature:{arguments:[{type:{name:`T`},name:`item`},{type:{name:`number`},name:`index`}],return:{name:`Key`}}},description:``}}}})),ae=t((()=>{ie()})),G,K,q,J,Y,X,Z,oe=t((()=>{G=`_5-SSnO`,K=`s1NHua`,q=`KQC9-8`,J=`WDu02W`,Y=`_9mEhfD`,X=`N-Fzjk`,Z={timePanel:G,hint:K,fields:q,field:J,label:Y,wheel:X}}));function Q({value:e,disabled:t,minDate:n,maxDate:r,mode:i=`date-time`,onChange:a}){let o=ee(e,n,r,i),s=e=>String(e).padStart(2,`0`);return o.disabled?(0,$.jsx)(`div`,{className:Z.timePanel,children:(0,$.jsx)(`p`,{className:Z.hint,children:`Для выбранного дня нет доступного времени в заданном диапазоне.`})}):(0,$.jsx)(`div`,{className:Z.timePanel,children:(0,$.jsxs)(`div`,{className:Z.fields,children:[(0,$.jsxs)(`label`,{className:Z.field,children:[(0,$.jsx)(`span`,{className:Z.label,children:`Часы`}),(0,$.jsx)(z,{className:Z.wheel,items:o.hours,value:o.selectedHour,onChange:e=>a(e,o.selectedMinute),ariaLabel:`Выбор часов`,disabled:t,formatItem:s})]}),(0,$.jsxs)(`label`,{className:Z.field,children:[(0,$.jsx)(`span`,{className:Z.label,children:`Минуты`}),(0,$.jsx)(z,{className:Z.wheel,items:o.minutes,value:o.selectedMinute,onChange:e=>a(o.selectedHour,e),ariaLabel:`Выбор минут`,disabled:t,formatItem:s})]})]})})}var $,se=t((()=>{ae(),te(),oe(),$=r(),Q.__docgenInfo={description:`Переиспользуемая панель выбора времени поверх internal wheel-picker.`,methods:[],displayName:`TimePanel`,props:{value:{required:!0,tsType:{name:`Date`},description:``},disabled:{required:!1,tsType:{name:`boolean`},description:``},minDate:{required:!1,tsType:{name:`Date`},description:``},maxDate:{required:!1,tsType:{name:`Date`},description:``},mode:{required:!1,tsType:{name:`union`,raw:`"date-time" | "time"`,elements:[{name:`literal`,value:`"date-time"`},{name:`literal`,value:`"time"`}]},description:``,defaultValue:{value:`"date-time"`,computed:!1}},onChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(hours: number, minutes: number) => void`,signature:{arguments:[{type:{name:`number`},name:`hours`},{type:{name:`number`},name:`minutes`}],return:{name:`void`}}},description:``}}}}));export{f as a,h as c,_ as d,d as i,g as l,se as n,T as o,y as r,m as s,Q as t,p as u};
@@ -0,0 +1 @@
1
+ .GLhdJ6{--wheel-picker-min-height:10em;--wheel-picker-viewport-height:var(--wheel-picker-min-height);--wheel-picker-item-height:calc(var(--wheel-picker-viewport-height) / 7);--wheel-picker-edge-padding:calc((var(--wheel-picker-viewport-height) / 2) - (var(--wheel-picker-item-height) / 2));min-height:var(--wheel-picker-min-height);border:var(--border);border-radius:var(--radius-sm);background:linear-gradient(to bottom, var(--surface-0), transparent 18%, transparent 82%, var(--surface-0)), var(--surface-1);height:100%;position:relative;overflow:hidden}._2xLNL2{height:var(--wheel-picker-viewport-height);position:relative}.dgX32S{overscroll-behavior:contain;scroll-snap-type:y mandatory;scrollbar-width:none;height:100%;padding-block:var(--wheel-picker-edge-padding);outline:none;overflow-y:auto}.dgX32S::-webkit-scrollbar{display:none}.dgX32S:focus-visible{outline:var(--focus-width) solid var(--focus-ring);outline-offset:var(--focus-offset)}.WfOtQ9{display:grid}.XIdSMi{height:var(--wheel-picker-item-height);padding:0 var(--space-sm);scroll-snap-align:center;color:var(--content-2);font-family:var(--font-family-mono);font-variant-numeric:tabular-nums;transition:color var(--transition-fast) ease, background-color var(--transition-fast) ease, font-variation-settings var(--transition-fast) ease;background:0 0;justify-content:center;align-items:center;display:flex}.XIdSMi[data-selected]{color:var(--content-0);font-variation-settings:"wght" 600;font-weight:600}.XIdSMi:hover:not(:disabled){background:color-mix(in srgb, var(--surface-accent) 40%, transparent)}.XIdSMi:disabled{cursor:default}._--Hsbk{height:var(--wheel-picker-item-height);border-top:var(--border);border-bottom:var(--border);background:color-mix(in srgb, var(--surface-accent) 28%, transparent);pointer-events:none;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}._5-SSnO{height:100%}.s1NHua{font-size:var(--font-size-xs);color:var(--content-1)}.KQC9-8{gap:var(--space-sm);grid-template-columns:repeat(2,minmax(0,1fr));height:100%;min-height:10em;display:grid}.WDu02W{gap:var(--space-xs);grid-template-rows:auto 1fr;min-height:0;display:grid}._9mEhfD{color:var(--content-1)}.N-Fzjk{min-height:10em}
@@ -0,0 +1,25 @@
1
+ import{c as e,i as t}from"./preload-helper-B45gAKPr.js";import{C as n}from"./iframe-SfMJGCsn.js";import{t as r}from"./jsx-runtime-BBQGix-2.js";import{n as i,t as a}from"./TimePanel-0-mzaXky.js";var o,s,c,l,u,d;t((()=>{o=e(n(),1),i(),s=r(),c={title:`Shared/UI/Internal/DateTime/TimePanel`,component:a,args:{value:new Date(2026,2,10,12,30,0,0),onChange:()=>{}},parameters:{atomicCanvas:!0,layout:`centered`}},l={render:e=>{let[t,n]=(0,o.useState)(e.value);return(0,s.jsx)(`div`,{style:{width:320,minHeight:280},children:(0,s.jsx)(a,{...e,value:t,onChange:(e,r)=>{n(new Date(t.getFullYear(),t.getMonth(),t.getDate(),e,r,0,0))}})})}},u={render:e=>{let[t,n]=(0,o.useState)(new Date(2026,2,10,9,30,0,0));return(0,s.jsx)(`div`,{style:{width:320,minHeight:280},children:(0,s.jsx)(a,{...e,value:t,minDate:new Date(2026,2,10,9,15,0,0),maxDate:new Date(2026,2,10,18,30,0,0),onChange:(e,r)=>{n(new Date(t.getFullYear(),t.getMonth(),t.getDate(),e,r,0,0))}})})}},l.parameters={...l.parameters,docs:{...l.parameters?.docs,source:{originalSource:`{
2
+ render: args => {
3
+ const [value, setValue] = useState<Date>(args.value);
4
+ return <div style={{
5
+ width: 320,
6
+ minHeight: 280
7
+ }}>
8
+ <TimePanel {...args} value={value} onChange={(hours, minutes) => {
9
+ setValue(new Date(value.getFullYear(), value.getMonth(), value.getDate(), hours, minutes, 0, 0));
10
+ }} />
11
+ </div>;
12
+ }
13
+ }`,...l.parameters?.docs?.source},description:{story:`Демонстрирует базовую wheel-панель времени.`,...l.parameters?.docs?.description}}},u.parameters={...u.parameters,docs:{...u.parameters?.docs,source:{originalSource:`{
14
+ render: args => {
15
+ const [value, setValue] = useState<Date>(new Date(2026, 2, 10, 9, 30, 0, 0));
16
+ return <div style={{
17
+ width: 320,
18
+ minHeight: 280
19
+ }}>
20
+ <TimePanel {...args} value={value} minDate={new Date(2026, 2, 10, 9, 15, 0, 0)} maxDate={new Date(2026, 2, 10, 18, 30, 0, 0)} onChange={(hours, minutes) => {
21
+ setValue(new Date(value.getFullYear(), value.getMonth(), value.getDate(), hours, minutes, 0, 0));
22
+ }} />
23
+ </div>;
24
+ }
25
+ }`,...u.parameters?.docs?.source},description:{story:`Показывает ограничение диапазона на том же календарном дне.`,...u.parameters?.docs?.description}}},d=[`Default`,`WithLimits`]}))();export{l as Default,u as WithLimits,d as __namedExportsOrder,c as default};
@@ -0,0 +1,37 @@
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,Disabled as m,LabelAfter as h,n as g,t as _}from"./Toggle.stories-CKlGFcZW.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:`Toggle`}),`
3
+ `,(0,b.jsx)(i,{children:`Переключаемый булев контрол для локальных режимов и простых опций`}),`
4
+ `,(0,b.jsx)(o.p,{children:`Toggle уже имеет живые 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 { Toggle } from "@/shared/ui";
12
+
13
+ export function Example() {
14
+ const [enabled, setEnabled] = useState(false);
15
+
16
+ return <Toggle label="Режим просмотра" value={enabled} onChange={setEnabled} />;
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
+ `,(0,b.jsx)(o.li,{children:`Заблокированное состояние лучше проверять отдельно, чтобы убедиться, что визуально и поведенчески оно остается понятным.`}),`
23
+ `]}),`
24
+ `,(0,b.jsx)(o.h2,{id:`сценарии-использования`,children:`Сценарии использования`}),`
25
+ `,(0,b.jsx)(o.h3,{id:`компонент-работает-в-контролируемом-режиме-когда-состояние-хранится-во-внешнем-компоненте`,children:`Компонент работает в контролируемом режиме, когда состояние хранится во внешнем компоненте`}),`
26
+ `,(0,b.jsx)(o.p,{children:`Компонент работает в контролируемом режиме, когда состояние хранится во внешнем компоненте.`}),`
27
+ `,(0,b.jsx)(l,{of:p}),`
28
+ `,(0,b.jsx)(o.h3,{id:`размещение-подписи-после-контрола`,children:`Размещение подписи после контрола`}),`
29
+ `,(0,b.jsx)(o.p,{children:`Размещение подписи после контрола.`}),`
30
+ `,(0,b.jsx)(l,{of:h}),`
31
+ `,(0,b.jsx)(o.h3,{id:`проверка-поведения-в-заблокированном-состоянии`,children:`Проверка поведения в заблокированном состоянии`}),`
32
+ `,(0,b.jsx)(o.p,{children:`Проверка поведения в заблокированном состоянии.`}),`
33
+ `,(0,b.jsx)(l,{of:m}),`
34
+ `,(0,b.jsx)(o.h2,{id:`api`,children:`API`}),`
35
+ `,(0,b.jsx)(s,{of:_}),`
36
+ `,(0,b.jsx)(o.h2,{id:`все-сторисы`,children:`Все сторисы`}),`
37
+ `,(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
+ .FFyoOs{align-items:center;gap:var(--space-sm);display:flex}.zPYy7T{min-width:calc(var(--drp-ui-width-xs,var(--ui-width-xs)) - var(--width-add));flex:1 0 auto;display:flex;position:relative}.j6ek6R{appearance:none;cursor:pointer;width:100%;margin:0;padding:0}.j6ek6R:checked+.HFTPXI ._0RK4xF{transform:translate(100%)}.j6ek6R:checked+.HFTPXI .kDPnKt{color:var(--content-2)}.j6ek6R:checked+.HFTPXI .DQHqws{color:var(--status-neutral-on-fill)}.j6ek6R:focus-visible+.HFTPXI{outline:var(--focus-width) solid var(--focus-ring);outline-offset:var(--focus-offset)}.HFTPXI .kDPnKt{color:var(--status-neutral-on-fill)}.HFTPXI .DQHqws{color:var(--content-2)}.HFTPXI{inset:calc(var(--border-width) * 2);pointer-events:none;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;min-width:6.5em;padding:0;display:grid;position:absolute;overflow:hidden}.HFTPXI[data-disabled] ._0RK4xF{opacity:var(--disabled-opacity)}.nCQ9v4{padding:0 var(--space-sm);white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;z-index:1;transition:color var(--transition-fast) linear;justify-content:center;align-items:center;line-height:1;display:inline-flex;position:relative}._0RK4xF{border-radius:var(--radius-xs);background-color:var(--status-neutral-fill);width:50%;height:100%;transition:transform var(--transition-fast) ease-in-out, opacity var(--transition-fast) ease-in-out;position:absolute;top:0;left:0}
@@ -0,0 +1,30 @@
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{n as s,t as c}from"./ui.module-DS2qtZts.js";var l,u,d,f,p,m,h,g,_,v=n((()=>{l=`FFyoOs`,u=`zPYy7T`,d=`j6ek6R`,f=`HFTPXI`,p=`_0RK4xF`,m=`kDPnKt`,h=`DQHqws`,g=`nCQ9v4`,_={row:l,wrapper:u,input:d,track:f,thumb:p,unchecked:m,checked:h,option:g}}));function y({label:e,description:t,placeholder:n,disabled:r,size:i,className:o,onChange:c,value:l,id:u,checkedText:d=`ВКЛ`,uncheckedText:f=`ВЫКЛ`,labelPosition:p=`before`,...m}){let h=(0,b.useId)(),g=u??h,v=t?`${g}-description`:void 0,y=e??n,S=!!l,C=!y&&!m[`aria-label`]?`${f} / ${d}`:void 0,w=y?(0,x.jsx)(`label`,{htmlFor:g,className:s.uiLabel,children:y}):null;return(0,x.jsxs)(`div`,{className:a(s.uiElement,r&&s.disabled,i&&s.uiSizable,i&&s[i],o),"aria-disabled":r||void 0,children:[(0,x.jsxs)(`div`,{className:_.row,children:[p===`before`&&w,(0,x.jsxs)(`div`,{className:_.wrapper,children:[(0,x.jsx)(`input`,{...m,id:g,type:`checkbox`,role:`switch`,checked:S,disabled:r,"aria-checked":S,"aria-describedby":v,"aria-label":C,className:a(s.uiInputControl,_.input),onChange:e=>c?.(e.currentTarget.checked)}),(0,x.jsxs)(`div`,{className:_.track,"data-disabled":r||void 0,"aria-hidden":`true`,children:[(0,x.jsx)(`div`,{className:_.thumb}),(0,x.jsx)(`div`,{className:a(_.option,_.unchecked),children:f}),(0,x.jsx)(`div`,{className:a(_.option,_.checked),children:d})]})]}),p===`after`&&w]}),t&&(0,x.jsx)(`p`,{id:v,className:s.uiDescription,children:t})]})}var b,x,S=n((()=>{b=t(r(),1),o(),c(),v(),x=i(),y.__docgenInfo={description:`Переключаемая кнопка с сохранением активного состояния. Используется для локального выбора режима, фильтра или форматирования.`,methods:[],displayName:`Toggle`,props:{label:{required:!1,tsType:{name:`ReactNode`},description:``},description:{required:!1,tsType:{name:`string`},description:``},placeholder:{required:!1,tsType:{name:`string`},description:``},disabled:{required:!1,tsType:{name:`boolean`},description:``},size:{required:!1,tsType:{name:`union`,raw:`"xs" | "sm" | "md" | "lg" | "xl"`,elements:[{name:`literal`,value:`"xs"`},{name:`literal`,value:`"sm"`},{name:`literal`,value:`"md"`},{name:`literal`,value:`"lg"`},{name:`literal`,value:`"xl"`}]},description:``},value:{required:!0,tsType:{name:`V`},description:"Если начальное состояние может быть `null | undefined`\nзначит `onChange` тоже должен ументь сбрасывать.\nПоэтому такой контрол явно должен передавать `UiBaseProps<AnyType | undefined>`"},onChange:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(value: T) => void`,signature:{arguments:[{type:{name:`C`},name:`value`}],return:{name:`void`}}},description:``},checkedText:{required:!1,tsType:{name:`string`},description:``,defaultValue:{value:`"ВКЛ"`,computed:!1}},uncheckedText:{required:!1,tsType:{name:`string`},description:``,defaultValue:{value:`"ВЫКЛ"`,computed:!1}},labelPosition:{required:!1,tsType:{name:`union`,raw:`"before" | "after"`,elements:[{name:`literal`,value:`"before"`},{name:`literal`,value:`"after"`}]},description:``,defaultValue:{value:`"before"`,computed:!1}}},composes:[`Omit`]}})),C=e({Controlled:()=>D,Disabled:()=>k,LabelAfter:()=>O,__namedExportsOrder:()=>A,default:()=>E}),w,T,E,D,O,k,A,j=n((()=>{w=t(r(),1),S(),T=i(),E={title:`Shared/UI/Toggle`,component:y,args:{value:!1,onChange:()=>{}},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{label:{description:`Текст подписи переключателя.`,control:`text`},description:{description:`Описание под переключателем.`,control:`text`},value:{description:`Текущее значение переключателя.`,control:`boolean`},onChange:{description:`Вызывается при изменении значения.`,control:!1},checkedText:{description:`Текст для включенного состояния.`,control:`text`},uncheckedText:{description:`Текст для выключенного состояния.`,control:`text`},labelPosition:{description:`Положение подписи относительно переключателя.`,control:`inline-radio`,options:[`before`,`after`]},disabled:{description:`Блокирует взаимодействие.`,control:`boolean`},size:{description:`Размер контрола и подписи.`,control:`select`,options:[`xs`,`sm`,`md`,`lg`,`xl`]}}},D={render:e=>{let[t,n]=(0,w.useState)(e.value??!1);return(0,T.jsx)(y,{...e,value:t,onChange:n})},args:{label:`Режим синхронизации`,description:`Мгновенное переключение состояния.`,value:!1,checkedText:`ВКЛ`,uncheckedText:`ВЫКЛ`,labelPosition:`before`}},O={render:e=>{let[t,n]=(0,w.useState)(e.value??!0);return(0,T.jsx)(y,{...e,value:t,onChange:n})},args:{label:`Уведомления`,value:!0,labelPosition:`after`}},k={args:{label:`Недоступный переключатель`,value:!0,disabled:!0}},D.parameters={...D.parameters,docs:{...D.parameters?.docs,source:{originalSource:`{
2
+ render: args => {
3
+ const [value, setValue] = useState(args.value ?? false);
4
+ return <Toggle {...args} value={value} onChange={setValue} />;
5
+ },
6
+ args: {
7
+ label: "Режим синхронизации",
8
+ description: "Мгновенное переключение состояния.",
9
+ value: false,
10
+ checkedText: "ВКЛ",
11
+ uncheckedText: "ВЫКЛ",
12
+ labelPosition: "before"
13
+ }
14
+ }`,...D.parameters?.docs?.source}}},O.parameters={...O.parameters,docs:{...O.parameters?.docs,source:{originalSource:`{
15
+ render: args => {
16
+ const [value, setValue] = useState(args.value ?? true);
17
+ return <Toggle {...args} value={value} onChange={setValue} />;
18
+ },
19
+ args: {
20
+ label: "Уведомления",
21
+ value: true,
22
+ labelPosition: "after"
23
+ }
24
+ }`,...O.parameters?.docs?.source}}},k.parameters={...k.parameters,docs:{...k.parameters?.docs,source:{originalSource:`{
25
+ args: {
26
+ label: "Недоступный переключатель",
27
+ value: true,
28
+ disabled: true
29
+ }
30
+ }`,...k.parameters?.docs?.source}}},A=[`Controlled`,`LabelAfter`,`Disabled`]}));j();export{D as Controlled,k as Disabled,O as LabelAfter,A as __namedExportsOrder,E as default,j as n,C as t};
@@ -0,0 +1,15 @@
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,MixedSelection as m,ParentCompression as h,n as g,t as _}from"./TreeMultiSelect.stories-CXGt4Q_u.js";function v(e){let o={code:`code`,h2:`h2`,p:`p`,...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:`TreeMultiSelect`}),`
3
+ `,(0,b.jsx)(i,{children:`Мультивыбор узлов дерева с компрессией subtree в parent`}),`
4
+ `,(0,b.jsxs)(o.p,{children:[(0,b.jsx)(o.code,{children:`TreeMultiSelect`}),` хранит наружу не “все листья”, а канонизированный frontier по уровням дерева.`]}),`
5
+ `,(0,b.jsx)(o.h2,{id:`основной-сценарий`,children:`Основной сценарий`}),`
6
+ `,(0,b.jsx)(u,{}),`
7
+ `,(0,b.jsx)(n,{of:p}),`
8
+ `,(0,b.jsx)(o.h2,{id:`сценарии`,children:`Сценарии`}),`
9
+ `,(0,b.jsx)(l,{of:p}),`
10
+ `,(0,b.jsx)(l,{of:h}),`
11
+ `,(0,b.jsx)(l,{of:m}),`
12
+ `,(0,b.jsx)(o.h2,{id:`api`,children:`API`}),`
13
+ `,(0,b.jsx)(s,{of:_}),`
14
+ `,(0,b.jsx)(o.h2,{id:`все-сторисы`,children:`Все сторисы`}),`
15
+ `,(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
+ import{c as e,i as t}from"./preload-helper-B45gAKPr.js";import{C as n}from"./iframe-SfMJGCsn.js";import{t as r}from"./jsx-runtime-BBQGix-2.js";import{a as i,i as a,n as o,o as s,r as c,s as l,t as u}from"./TreePickerBase-Md6Mt9qF.js";function d(e,t){if(e.size!==0){if(e.size===1){let n=t.nodeById.get([...e][0]);return n?n.code&&n.code!==n.label?`${n.label} · ${n.code}`:n.label:void 0}return`Выбрано ${e.size} узл.`}}function f({label:e,description:t,disabled:n,placeholder:r=`Выберите значения`,size:i,nodes:o,value:f,onChange:h,query:g,defaultQuery:_,onQuery:v,isLoading:y,error:b}){let x=(0,p.useMemo)(()=>c(o),[o]),S=(0,p.useMemo)(()=>l(f,x),[x,f]),C=(0,p.useMemo)(()=>a(S,x),[S,x]),w=(0,p.useMemo)(()=>d(S,x),[S,x]);return(0,m.jsx)(u,{label:e,description:t,disabled:n,placeholder:r,size:i,nodes:o,selectedIds:C.selectedIds,partialIds:C.partialIds,selectionMode:`multi`,triggerMode:`search`,selectedSummary:w,query:g,defaultQuery:_,onQuery:v,onNodeActivate:e=>h(s(f,e.id,x)),onClearSelection:()=>h({}),isLoading:y,error:b})}var p,m,h=t((()=>{p=e(n(),1),i(),o(),m=r(),f.__docgenInfo={description:``,methods:[],displayName:`TreeMultiSelect`,props:{nodes:{required:!0,tsType:{name:`unknown`},description:``},placeholder:{required:!1,tsType:{name:`string`},description:``,defaultValue:{value:`"Выберите значения"`,computed:!1}},query:{required:!1,tsType:{name:`string`},description:``},defaultQuery:{required:!1,tsType:{name:`string`},description:``},onQuery:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(value: string) => void`,signature:{arguments:[{type:{name:`string`},name:`value`}],return:{name:`void`}}},description:``},isLoading:{required:!1,tsType:{name:`boolean`},description:``},error:{required:!1,tsType:{name:`string`},description:``}},composes:[`Omit`]}}));export{h as n,f as t};
@@ -0,0 +1,14 @@
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{n as a,t as o}from"./TreeMultiSelect-Ci3bUpmv.js";import{n as s,t as c}from"./treeStoryFixtures-Cd984L7t.js";var l=e({Basic:()=>m,MixedSelection:()=>g,ParentCompression:()=>h,__namedExportsOrder:()=>_,default:()=>p});function u({initialValue:e={},label:t=`TreeMultiSelect`,description:n}){let[r,i]=(0,d.useState)(e);return(0,f.jsxs)(`div`,{style:{display:`grid`,gap:12,maxWidth:520},children:[(0,f.jsx)(o,{label:t,description:n,nodes:c,value:r,onChange:i}),(0,f.jsxs)(`div`,{style:{fontSize:`var(--font-size-sm)`,color:`var(--content-1)`},children:[`Текущее значение: `,JSON.stringify(r)]})]})}var d,f,p,m,h,g,_,v=n((()=>{d=t(r(),1),a(),s(),f=i(),p={title:`Shared/UI/TreeMultiSelect`,component:o,parameters:{atomicCanvas:!0,layout:`padded`},args:{label:`Выбор узлов`,description:`Мультивыбор с канонизацией subtree в ближайший parent.`,nodes:c,value:{},onChange:()=>{}},argTypes:{nodes:{control:!1},value:{control:!1},onChange:{control:!1}}},m={render:()=>(0,f.jsx)(u,{initialValue:{OWNER:[`P0001`]}})},h={render:()=>(0,f.jsx)(u,{label:`Компрессия parent`,description:`Когда выбран весь subtree, наружу может уйти только родительский узел.`,initialValue:{REGION:[`R01`]}})},g={render:()=>(0,f.jsx)(u,{label:`Смешанный выбор`,description:`Пример mixed frontier по соседним уровням.`,initialValue:{BRANCH:[`B0101`],OWNER:[`P0004`]}})},m.parameters={...m.parameters,docs:{...m.parameters?.docs,source:{originalSource:`{
2
+ render: () => <StatefulTreeMultiSelect initialValue={{
3
+ OWNER: ["P0001"]
4
+ }} />
5
+ }`,...m.parameters?.docs?.source}}},h.parameters={...h.parameters,docs:{...h.parameters?.docs,source:{originalSource:`{
6
+ render: () => <StatefulTreeMultiSelect label="Компрессия parent" description="Когда выбран весь subtree, наружу может уйти только родительский узел." initialValue={{
7
+ REGION: ["R01"]
8
+ }} />
9
+ }`,...h.parameters?.docs?.source}}},g.parameters={...g.parameters,docs:{...g.parameters?.docs,source:{originalSource:`{
10
+ render: () => <StatefulTreeMultiSelect label="Смешанный выбор" description="Пример mixed frontier по соседним уровням." initialValue={{
11
+ BRANCH: ["B0101"],
12
+ OWNER: ["P0004"]
13
+ }} />
14
+ }`,...g.parameters?.docs?.source}}},_=[`Basic`,`ParentCompression`,`MixedSelection`]}));v();export{m as Basic,g as MixedSelection,h as ParentCompression,_ as __namedExportsOrder,p as default,v as n,l as t};
@@ -0,0 +1,19 @@
1
+ import{c as e,i as t}from"./preload-helper-B45gAKPr.js";import{C as n}from"./iframe-SfMJGCsn.js";import{t as r}from"./jsx-runtime-BBQGix-2.js";import{a as i,i as a}from"./utils-CReRlw17.js";import{E as o,it as s,n as c,t as l,ut as u}from"./lucide-react-CK2oyDtF.js";import{n as ee,t as d}from"./ui.module-DS2qtZts.js";import{a as te}from"./Input-B7DWcGCL.js";import{t as f}from"./input-Be5K9_B7.js";import{T as ne,b as re,g as ie,l as ae,m as oe,r as se,s as ce,t as p,v as le}from"./picker-De4ZbESe.js";import{n as ue,t as de}from"./SelectOptionContent-B7W0Mned.js";function m(e,t){return`${e}::${t}`}function fe(e){let t=new Map,n=new Map,r=new Map,i=new Map,a=new Map,o=0,s=(e,c)=>{t.set(e.id,e),n.set(e.id,c),i.set(e.id,o++),a.set(m(e.codeKey,e.value),e.id);let l=(e.children??[]).map(e=>e.id);r.set(e.id,l);for(let t of e.children??[])s(t,e.id)};for(let t of e)s(t);return{rootIds:e.map(e=>e.id),nodeById:t,parentById:n,childrenById:r,preorderIndexById:i,nodeIdByCodeValue:a}}function pe(e,t){if(e)return t.nodeIdByCodeValue.get(m(e.codeKey,e.value))}function h(e,t){let n=new Set;if(!e)return n;for(let[r,i]of Object.entries(e))for(let e of i){let i=t.nodeIdByCodeValue.get(m(r,e));i&&n.add(i)}return x(n,t)}function g(e,t){let n=[...e].sort((e,n)=>(t.preorderIndexById.get(e)??2**53-1)-(t.preorderIndexById.get(n)??2**53-1)),r={};for(let e of n){let n=t.nodeById.get(e);n&&(r[n.codeKey]=r[n.codeKey]??[],r[n.codeKey].push(n.value))}return r}function _(e,t){let n=[],r=t.parentById.get(e);for(;r;)n.push(r),r=t.parentById.get(r);return n}function v(e,t,n){let r=n.parentById.get(e);for(;r;){if(r===t)return!0;r=n.parentById.get(r)}return!1}function y(e,t,n){for(let r of[...e])v(r,t,n)&&e.delete(r)}function b(e,t,n){if(t.has(e))return!0;let r=n.childrenById.get(e)??[];return r.length===0?!1:r.every(e=>b(e,t,n))}function x(e,t){let n=new Set(e);for(let e of[...n])_(e,t).some(e=>n.has(e))&&n.delete(e);let r=[...t.nodeById.keys()].sort((e,n)=>(t.preorderIndexById.get(n)??0)-(t.preorderIndexById.get(e)??0));for(let e of r){let r=t.childrenById.get(e)??[];r.length===0||n.has(e)||r.every(e=>b(e,n,t))&&(y(n,e,t),n.add(e))}return n}function S(e,t,n){let r=n.parentById.get(t);for(;r;){if(e.has(r)){e.delete(r);for(let t of n.childrenById.get(r)??[])e.add(t);return!0}r=n.parentById.get(r)}return!1}function me(e,t,n){return t.has(e)?!0:_(e,n).some(e=>t.has(e))}function C(e,t,n,r){let i=n.childrenById.get(e)??[];if(t.has(e))return r.selectedIds.add(e),{selected:!0,partial:!1};if(i.length===0)return{selected:!1,partial:!1};let a=i.map(e=>C(e,t,n,r)),o=a.every(e=>e.selected&&!e.partial),s=a.some(e=>e.selected||e.partial);return o?(r.selectedIds.add(e),{selected:!0,partial:!1}):s?(r.partialIds.add(e),{selected:!1,partial:!0}):{selected:!1,partial:!1}}function w(e,t){let n={selectedIds:new Set,partialIds:new Set};for(let r of t.rootIds)C(r,e,t,n);return n}function T(e,t,n){let r=h(e,n),i=e=>{if(me(e,r,n)){if(r.has(e)){r.delete(e);return}S(r,e,n)&&i(e);return}y(r,e,n),r.add(e)};return i(t),g(x(r,n),n)}function E(e,t,n){let r=t.parentById.get(e);for(;r;)n.add(r),r=t.parentById.get(r)}function he(e,t){let n=new Set;for(let r of e)E(r,t,n);return n}function D(e,t,n){let r=(e.children??[]).map(e=>D(e,t,n)).filter(e=>!!e);return!e.searchText.toLowerCase().includes(t)&&r.length===0?null:(r.length>0&&n.add(e.id),r.length===0?e:{...e,children:r})}function ge(e,t){let n=t.trim().toLowerCase();if(!n)return{nodes:[...e],expandedIds:new Set};let r=new Set;return{nodes:e.map(e=>D(e,n,r)).filter(e=>!!e),expandedIds:r}}function _e(e,t){let n=[],r=(e,i,a)=>{let o=(e.children?.length??0)>0,s=o&&t.has(e.id);if(n.push({node:e,level:i,parentId:a,hasChildren:o,isExpanded:s,isLeaf:!o}),s)for(let t of e.children??[])r(t,i+1,e.id)};for(let t of e)r(t,0);return n}var O=t((()=>{})),k,A,j,M,N,P,F,I,L,R,z,B,V,H,U,W,G,K,q,J=t((()=>{k=`eMqOwq`,A=`JKstO-`,j=`hKgr8e`,M=`_6EH37F`,N=`o5NWnX`,P=`ibSd-S`,F=`lXezvv`,I=`FMlLGX`,L=`d2Zt7U`,R=`_8PN4hs`,z=`_4JEoen`,B=`GS8eEC`,V=`T8gVno`,H=`o6stdX`,U=`I5zvhe`,W=`KQ0PBI`,G=`_7hAQQA`,K=`XeUHNc`,q={treeRow:k,treeRowSelected:A,treeRowActive:j,treeNodeButton:M,treeIndent:N,treeExpander:P,treeExpanderPlaceholder:F,treeExpanderIcon:I,treeExpanderIconExpanded:L,treeSelection:R,treeSelectionChecked:z,treeSelectionPartial:B,treeSelectionIcon:V,treeSummary:H,inputWithOverlay:U,valueOverlay:W,treeActions:G,treeClearButton:K}}));function ve({node:e,level:t,highlight:n,hasChildren:r,isExpanded:a,selected:c,partial:l,selectionMode:ee,onToggleExpand:d}){return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`span`,{className:q.treeIndent,style:{"--tree-level":t},"aria-hidden":`true`}),r?(0,Y.jsx)(`button`,{type:`button`,className:q.treeExpander,onClick:e=>{e.stopPropagation(),d?.()},"aria-label":a?`Свернуть ветку`:`Развернуть ветку`,"data-ui":`tree-select-expander`,"data-action":a?`collapse-tree-select-node`:`expand-tree-select-node`,children:(0,Y.jsx)(s,{className:i(q.treeExpanderIcon,a&&q.treeExpanderIconExpanded)})}):(0,Y.jsx)(`span`,{className:q.treeExpanderPlaceholder,"aria-hidden":`true`}),ee===`multi`&&(0,Y.jsx)(`span`,{className:i(q.treeSelection,c&&q.treeSelectionChecked,l&&q.treeSelectionPartial),"aria-hidden":`true`,children:c?(0,Y.jsx)(u,{className:q.treeSelectionIcon}):l?(0,Y.jsx)(o,{className:q.treeSelectionIcon}):null}),(0,Y.jsx)(de,{label:e.label,code:e.code,highlight:n})]})}var Y,X=t((()=>{a(),l(),ue(),J(),Y=r(),ve.__docgenInfo={description:``,methods:[],displayName:`TreeNodeContent`,props:{node:{required:!0,tsType:{name:`signature`,type:`object`,raw:`{
2
+ id: string;
3
+ codeKey: string;
4
+ value: string;
5
+ label: string;
6
+ code?: string;
7
+ searchText: string;
8
+ children?: TreeSelectNode[];
9
+ disabled?: boolean;
10
+ }`,signature:{properties:[{key:`id`,value:{name:`string`,required:!0}},{key:`codeKey`,value:{name:`string`,required:!0}},{key:`value`,value:{name:`string`,required:!0}},{key:`label`,value:{name:`string`,required:!0}},{key:`code`,value:{name:`string`,required:!1}},{key:`searchText`,value:{name:`string`,required:!0}},{key:`children`,value:{name:`Array`,elements:[{name:`TreeSelectNode`}],raw:`TreeSelectNode[]`,required:!1}},{key:`disabled`,value:{name:`boolean`,required:!1}}]}},description:``},level:{required:!0,tsType:{name:`number`},description:``},highlight:{required:!1,tsType:{name:`string`},description:``},hasChildren:{required:!0,tsType:{name:`boolean`},description:``},isExpanded:{required:!0,tsType:{name:`boolean`},description:``},selected:{required:!0,tsType:{name:`boolean`},description:``},partial:{required:!0,tsType:{name:`boolean`},description:``},selectionMode:{required:!0,tsType:{name:`union`,raw:`"single" | "multi"`,elements:[{name:`literal`,value:`"single"`},{name:`literal`,value:`"multi"`}]},description:``},onToggleExpand:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:``}}}}));function Z({label:e,description:t,disabled:n,placeholder:r,size:a,nodes:o,selectedIds:s,partialIds:l,selectionMode:u,triggerMode:d=`display`,selectedSummary:f,selectedSummaryText:p,query:ue,defaultQuery:de,onQuery:m,onNodeActivate:pe,onClearSelection:h,isLoading:g,error:_}){let v=(0,Q.useRef)(null),y=(0,Q.useRef)(!1),[b,x]=(0,Q.useState)(()=>new Set),S=d===`search`?`search-single`:`display`,me=(0,Q.useMemo)(()=>fe(o),[o]),{query:C,setQuery:w}=ce({open:!0,query:ue,defaultQuery:de,onQuery:m,triggerMode:`display`}),{nodes:T,expandedIds:E}=(0,Q.useMemo)(()=>ge(o,C),[o,C]),D=(0,Q.useMemo)(()=>he(s,me),[s,me]),O=(0,Q.useMemo)(()=>new Set([...b,...E,...D]),[b,E,D]),k=(0,Q.useMemo)(()=>_e(T,O),[T,O]),{open:A,activeIndex:j,context:M,floatingStyles:N,getFloatingProps:P,setReference:F,setFloating:I,setOptionRef:L,close:R,openList:z,toggleOpen:B,selectOption:V,handleReferenceKeyDown:H,handleFloatingKeyDown:U,getOptionId:W,getActiveOptionId:G}=ae({options:k,selectedIndex:(0,Q.useMemo)(()=>k.findIndex(e=>s.has(e.node.id)),[s,k]),onSelect:e=>pe(e.node),disabled:n||g,closeOnSelect:u===`single`,allowOpenWithoutOptions:!0,triggerMode:S}),K=s.size>0,J=d===`search`&&(A||C.length>0),Y=J?C:p??``,X=d===`display`&&!!f,Z=se({mode:S,open:A,currentQuery:C,hasDisplayValue:!!p,inputRef:v,setQuery:w,openList:z,close:R,toggleOpen:B});(0,Q.useEffect)(()=>{y.current&&!A&&Z.policy.resetQueryOnClose&&w(``),y.current=A},[A,w,Z.policy.resetQueryOnClose]);let ye=e=>{v.current=e},be=()=>{h?.(),w(``),R()},xe=e=>{e.hasChildren&&x(t=>{let n=new Set(t);return n.has(e.node.id)?n.delete(e.node.id):n.add(e.node.id),n})};return(0,$.jsx)(ne,{label:e,description:t,disabled:n,placeholder:r,size:a,children:({controlId:e,labelId:t,describedBy:a})=>{let o=`${e}-listbox`;return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(oe,{ref:ye,rootRef:F,id:e,type:`text`,role:`combobox`,autoComplete:`off`,disabled:n||g,readOnly:d!==`search`,value:d===`display`&&X?``:Y,placeholder:d===`search`?!p||J?r:void 0:K?void 0:r,"aria-labelledby":t,"aria-describedby":a,"aria-haspopup":`listbox`,"aria-expanded":A,"aria-controls":A?o:void 0,"aria-autocomplete":d===`search`?`list`:`none`,"aria-activedescendant":A&&k.length>0?G(o):void 0,inputClassName:i(K&&q.treeSummary,X&&q.inputWithOverlay),overlay:X?(0,$.jsx)(`div`,{className:q.valueOverlay,children:f}):void 0,endAdornment:(0,$.jsx)(ie,{open:A,disabled:n||g,onToggleMouseDown:Z.handleToggleMouseDown,onToggleClick:Z.handleToggleClick,children:K&&h?(0,$.jsx)(`button`,{type:`button`,className:q.treeClearButton,onMouseDown:e=>{e.preventDefault(),e.stopPropagation()},onClick:e=>{e.preventDefault(),e.stopPropagation(),be()},"aria-label":`Очистить выбор`,children:(0,$.jsx)(c,{})}):null}),onChange:e=>{d===`search`&&Z.handleTriggerInputChange(e.target.value)},onClick:Z.handleTriggerClick,onFocus:e=>{Z.handleTriggerFocus(e.currentTarget)},onKeyDown:e=>{H(e),!e.defaultPrevented&&Z.handleTriggerKeyDown({event:e,onActivateWhenOpen:()=>{let e=j>=0?k[j]:void 0;e&&V(e)},enableSpaceActivation:d===`display`})}}),(0,$.jsx)(re,{open:A,context:M,floatingStyles:N,listId:o,labelId:t,descriptionId:a,activeOptionId:k.length>0?G(o):void 0,setFloating:I,getFloatingProps:P,onKeyDown:U,className:i(ee.uiPopupOptions,`scrollable`),header:d===`display`?(0,$.jsx)(te,{value:C,onChange:w,onClear:()=>w(``),placeholder:`Поиск по дереву`,onKeyDown:e=>{e.key!==`Escape`&&e.key!==`Tab`&&e.stopPropagation()},onClick:e=>{e.stopPropagation()}}):void 0,children:(0,$.jsx)(`div`,{className:``,children:k.length===0?(0,$.jsx)(le,{errorState:_,loadingState:g?`Загрузка...`:void 0,emptyState:!_&&!g?`Нет данных`:void 0}):k.map((e,t)=>{let n=s.has(e.node.id),r=!n&&l.has(e.node.id),a=t===j;return(0,$.jsx)(`div`,{id:W(o,t),ref:e=>L(t,e),role:`option`,"aria-selected":n,className:i(q.treeRow,a&&q.treeRowActive,n&&q.treeRowSelected),onMouseDown:e=>{e.preventDefault()},onClick:()=>V(e),children:(0,$.jsx)(`div`,{className:q.treeNodeButton,children:(0,$.jsx)(ve,{node:e.node,level:e.level,highlight:C,hasChildren:e.hasChildren,isExpanded:e.isExpanded,selected:n,partial:r,selectionMode:u,onToggleExpand:()=>xe(e)})})},e.node.id)})})})]})}})}var Q,$,ye=t((()=>{Q=e(n(),1),a(),l(),f(),p(),d(),O(),X(),J(),$=r(),Z.__docgenInfo={description:``,methods:[],displayName:`TreePickerBase`,props:{nodes:{required:!0,tsType:{name:`unknown`},description:``},selectedIds:{required:!0,tsType:{name:`Set`,elements:[{name:`string`}],raw:`Set<string>`},description:``},partialIds:{required:!0,tsType:{name:`Set`,elements:[{name:`string`}],raw:`Set<string>`},description:``},selectionMode:{required:!0,tsType:{name:`union`,raw:`"single" | "multi"`,elements:[{name:`literal`,value:`"single"`},{name:`literal`,value:`"multi"`}]},description:``},triggerMode:{required:!1,tsType:{name:`union`,raw:`"display" | "search"`,elements:[{name:`literal`,value:`"display"`},{name:`literal`,value:`"search"`}]},description:``,defaultValue:{value:`"display"`,computed:!1}},selectedSummary:{required:!1,tsType:{name:`ReactNode`},description:``},selectedSummaryText:{required:!1,tsType:{name:`string`},description:``},query:{required:!1,tsType:{name:`string`},description:``},defaultQuery:{required:!1,tsType:{name:`string`},description:``},onQuery:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(value: string) => void`,signature:{arguments:[{type:{name:`string`},name:`value`}],return:{name:`void`}}},description:``},onNodeActivate:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(node: TreeSelectNode) => void`,signature:{arguments:[{type:{name:`signature`,type:`object`,raw:`{
11
+ id: string;
12
+ codeKey: string;
13
+ value: string;
14
+ label: string;
15
+ code?: string;
16
+ searchText: string;
17
+ children?: TreeSelectNode[];
18
+ disabled?: boolean;
19
+ }`,signature:{properties:[{key:`id`,value:{name:`string`,required:!0}},{key:`codeKey`,value:{name:`string`,required:!0}},{key:`value`,value:{name:`string`,required:!0}},{key:`label`,value:{name:`string`,required:!0}},{key:`code`,value:{name:`string`,required:!1}},{key:`searchText`,value:{name:`string`,required:!0}},{key:`children`,value:{name:`Array`,elements:[{name:`TreeSelectNode`}],raw:`TreeSelectNode[]`,required:!1}},{key:`disabled`,value:{name:`boolean`,required:!1}}]}},name:`node`}],return:{name:`void`}}},description:``},onClearSelection:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:``},isLoading:{required:!1,tsType:{name:`boolean`},description:``},error:{required:!1,tsType:{name:`string`},description:``}}}}));export{O as a,pe as c,w as i,ye as n,T as o,fe as r,h as s,Z as t};
@@ -0,0 +1 @@
1
+ .eMqOwq{border-radius:var(--radius-sm);cursor:pointer;align-items:stretch;display:flex}.eMqOwq:focus{outline:var(--focus-width) solid var(--focus-ring);outline-offset:var(--focus-offset);background-color:var(--surface-accent);border-color:var(--border-1);cursor:pointer}.eMqOwq:hover{background-color:var(--surface-accent);cursor:pointer}.JKstO-{background-color:var(--surface-2);color:var(--content-accent);cursor:default}.hKgr8e{background-color:var(--surface-1)}._6EH37F{align-items:center;gap:var(--space-xs);width:100%;padding:var(--space-xs) var(--space-xs) var(--space-xs) 0;text-align:left;border-radius:var(--radius-sm);background:0 0;display:flex}.o5NWnX{width:calc(var(--tree-level) * 1em);flex-shrink:0}.ibSd-S,.lXezvv{flex-shrink:0;justify-content:center;align-items:center;width:1.5em;height:1.5em;display:inline-flex}.ibSd-S{border-radius:var(--radius-sm);color:var(--content-2);background:0 0;border:none}.ibSd-S:hover{color:var(--content-0);background-color:var(--surface-0)}.FMlLGX{transition:transform var(--transition-fast) ease}.d2Zt7U{transform:rotate(90deg)}._8PN4hs{border:var(--border);border-radius:var(--radius-xs);background-color:var(--surface-0);color:#0000;flex-shrink:0;justify-content:center;align-items:center;width:1em;height:1em;display:inline-flex}._4JEoen{background-color:var(--status-info-text);border-color:var(--status-info-text);color:var(--white)}.GS8eEC{background-color:var(--surface-1);border-color:var(--status-info-text);color:var(--status-info-text)}.T8gVno{width:.75rem;height:.75rem}.o6stdX{padding-right:calc(var(--control-height) * 2)}.I5zvhe{color:#0000;caret-color:#0000}.KQ0PBI{inset:0 calc(var(--control-height) * 2) 0 var(--space-md);pointer-events:none;align-items:center;display:flex;position:absolute;overflow:hidden}._7hAQQA{align-items:center;height:100%;display:flex;position:absolute;top:0;right:0}.XeUHNc{color:var(--status-error-text)}
@@ -0,0 +1,15 @@
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,SelectParent as h,n as g,t as _}from"./TreeSelect.stories-By0h6wRi.js";function v(e){let o={code:`code`,h2:`h2`,p:`p`,...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:`TreeSelect`}),`
3
+ `,(0,b.jsx)(i,{children:`Single-select для выбора одного узла из дерева`}),`
4
+ `,(0,b.jsxs)(o.p,{children:[(0,b.jsx)(o.code,{children:`TreeSelect`}),` подходит для сценариев, где выбор должен происходить по одному узлу, но пользователь работает не с плоским списком, а с иерархией.`]}),`
5
+ `,(0,b.jsx)(o.h2,{id:`основной-сценарий`,children:`Основной сценарий`}),`
6
+ `,(0,b.jsx)(u,{}),`
7
+ `,(0,b.jsx)(n,{of:p}),`
8
+ `,(0,b.jsx)(o.h2,{id:`сценарии`,children:`Сценарии`}),`
9
+ `,(0,b.jsx)(l,{of:p}),`
10
+ `,(0,b.jsx)(l,{of:h}),`
11
+ `,(0,b.jsx)(l,{of:m}),`
12
+ `,(0,b.jsx)(o.h2,{id:`api`,children:`API`}),`
13
+ `,(0,b.jsx)(s,{of:_}),`
14
+ `,(0,b.jsx)(o.h2,{id:`все-сторисы`,children:`Все сторисы`}),`
15
+ `,(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
+ import{c as e,i as t}from"./preload-helper-B45gAKPr.js";import{C as n}from"./iframe-SfMJGCsn.js";import{t as r}from"./jsx-runtime-BBQGix-2.js";import{a as i,c as a,n as o,r as s,t as c}from"./TreePickerBase-Md6Mt9qF.js";function l(e){if(e)return e.code&&e.code!==e.label?`${e.label} · ${e.code}`:e.label}function u({label:e,description:t,disabled:n,placeholder:r=`Выберите значение`,size:i,nodes:o,value:u,onChange:p,query:m,defaultQuery:h,onQuery:g,isLoading:_,error:v,clearable:y=!1}){let b=(0,d.useMemo)(()=>s(o),[o]),x=a(u,b),S=x?b.nodeById.get(x):void 0;return(0,f.jsx)(c,{label:e,description:t,disabled:n,placeholder:r,size:i,nodes:o,selectedIds:x?new Set([x]):new Set,partialIds:new Set,selectionMode:`single`,triggerMode:`search`,selectedSummaryText:l(S),query:m,defaultQuery:h,onQuery:g,onNodeActivate:e=>p({codeKey:e.codeKey,value:e.value}),onClearSelection:y?()=>p(void 0):void 0,isLoading:_,error:v})}var d,f,p=t((()=>{d=e(n(),1),i(),o(),f=r(),u.__docgenInfo={description:``,methods:[],displayName:`TreeSelect`,props:{nodes:{required:!0,tsType:{name:`unknown`},description:``},placeholder:{required:!1,tsType:{name:`string`},description:``,defaultValue:{value:`"Выберите значение"`,computed:!1}},query:{required:!1,tsType:{name:`string`},description:``},defaultQuery:{required:!1,tsType:{name:`string`},description:``},onQuery:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(value: string) => void`,signature:{arguments:[{type:{name:`string`},name:`value`}],return:{name:`void`}}},description:``},isLoading:{required:!1,tsType:{name:`boolean`},description:``},error:{required:!1,tsType:{name:`string`},description:``},clearable:{required:!1,tsType:{name:`boolean`},description:``,defaultValue:{value:`false`,computed:!1}}},composes:[`Omit`]}}));export{p as n,u as t};
@@ -0,0 +1,16 @@
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{n as a,t as o}from"./TreeSelect-bOgRYtQQ.js";import{n as s,t as c}from"./treeStoryFixtures-Cd984L7t.js";var l=e({Basic:()=>m,Empty:()=>g,SelectParent:()=>h,__namedExportsOrder:()=>_,default:()=>p});function u({initialValue:e,label:t=`TreeSelect`,description:n}){let[r,i]=(0,d.useState)(e);return(0,f.jsxs)(`div`,{style:{display:`grid`,gap:12,maxWidth:520},children:[(0,f.jsx)(o,{label:t,description:n,nodes:c,value:r,onChange:i}),(0,f.jsxs)(`div`,{style:{fontSize:`var(--font-size-sm)`,color:`var(--content-1)`},children:[`Текущее значение: `,r?`${r.codeKey}=${r.value}`:`пусто`]})]})}var d,f,p,m,h,g,_,v=n((()=>{d=t(r(),1),a(),s(),f=i(),p={title:`Shared/UI/TreeSelect`,component:o,parameters:{atomicCanvas:!0,layout:`padded`},args:{label:`Выбор узла`,description:`Single-select поверх дерева. Можно выбрать любой узел.`,nodes:c,value:void 0,onChange:()=>{}},argTypes:{nodes:{control:!1},value:{control:!1},onChange:{control:!1}}},m={render:()=>(0,f.jsx)(u,{initialValue:{codeKey:`BRANCH`,value:`B0101`}})},h={render:()=>(0,f.jsx)(u,{label:`Выбор родителя`,description:`Проверка single-select сценария, когда выбирается не leaf, а промежуточный узел.`,initialValue:{codeKey:`REGION`,value:`R01`}})},g={args:{nodes:[],description:`Состояние без доступных узлов.`}},m.parameters={...m.parameters,docs:{...m.parameters?.docs,source:{originalSource:`{
2
+ render: () => <StatefulTreeSelect initialValue={{
3
+ codeKey: "BRANCH",
4
+ value: "B0101"
5
+ }} />
6
+ }`,...m.parameters?.docs?.source}}},h.parameters={...h.parameters,docs:{...h.parameters?.docs,source:{originalSource:`{
7
+ render: () => <StatefulTreeSelect label="Выбор родителя" description="Проверка single-select сценария, когда выбирается не leaf, а промежуточный узел." initialValue={{
8
+ codeKey: "REGION",
9
+ value: "R01"
10
+ }} />
11
+ }`,...h.parameters?.docs?.source}}},g.parameters={...g.parameters,docs:{...g.parameters?.docs,source:{originalSource:`{
12
+ args: {
13
+ nodes: [],
14
+ description: "Состояние без доступных узлов."
15
+ }
16
+ }`,...g.parameters?.docs?.source}}},_=[`Basic`,`SelectParent`,`Empty`]}));v();export{m as Basic,g as Empty,h as SelectParent,_ as __namedExportsOrder,p as default,v as n,l as t};
@@ -0,0 +1 @@
1
+ .jOS9rT{padding-inline-start:var(--space-sm)}.zHOAf7{box-shadow:inset .1875rem 0 0 var(--content-accent)}.j48cXg{align-items:center;gap:var(--space-xs);min-width:0;display:flex}.mf4-Kr{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.p8pb0F{border-radius:var(--radius-xs);width:1.5rem;height:1.5rem;color:var(--content-0);cursor:pointer;background:0 0;border:0;flex:0 0 1.5rem;justify-content:center;align-items:center;padding:0;display:inline-flex}.p8pb0F:hover,.p8pb0F:focus-visible{background-color:var(--surface-2)}.KIudLf{flex:0 0 1.5rem;width:1.5rem;height:1.5rem}.bJsPGU{height:1px}