@soxa-ui/react 0.0.0-stage → 0.3.0-beta.1

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 (456) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +253 -2
  3. package/dist/adapter/common/aria.d.ts +6 -0
  4. package/dist/adapter/common/aria.js +22 -0
  5. package/dist/adapter/common/icon.d.ts +9 -0
  6. package/dist/adapter/common/icon.js +22 -0
  7. package/dist/adapter/common/index.d.ts +6 -0
  8. package/dist/adapter/common/naming.d.ts +6 -0
  9. package/dist/adapter/common/naming.js +8 -0
  10. package/dist/adapter/common/profile.d.ts +3 -0
  11. package/dist/adapter/common/profile.js +8 -0
  12. package/dist/adapter/common/root.d.ts +67 -0
  13. package/dist/adapter/common/root.js +83 -0
  14. package/dist/adapter/common/slots.d.ts +15 -0
  15. package/dist/adapter/common/slots.js +23 -0
  16. package/dist/adapter/elevator/Elevate.d.ts +16 -0
  17. package/dist/adapter/elevator/Elevate.js +22 -0
  18. package/dist/adapter/elevator/elevator.class.d.ts +14 -0
  19. package/dist/adapter/elevator/elevator.class.js +23 -0
  20. package/dist/adapter/elevator/index.d.ts +3 -0
  21. package/dist/adapter/elevator/layer.d.ts +6 -0
  22. package/dist/adapter/elevator/layer.js +5 -0
  23. package/dist/adapter/elevator/scope.class.d.ts +19 -0
  24. package/dist/adapter/elevator/scope.class.js +31 -0
  25. package/dist/adapter/index.d.ts +5 -0
  26. package/dist/adapter/locale/LocaleProvider.d.ts +19 -0
  27. package/dist/adapter/locale/LocaleProvider.js +29 -0
  28. package/dist/adapter/locale/context.d.ts +3 -0
  29. package/dist/adapter/locale/context.js +7 -0
  30. package/dist/adapter/locale/index.d.ts +2 -0
  31. package/dist/adapter/runtime/NativeInput.d.ts +24 -0
  32. package/dist/adapter/runtime/NativeInput.js +40 -0
  33. package/dist/adapter/runtime/NativeTextarea.d.ts +10 -0
  34. package/dist/adapter/runtime/NativeTextarea.js +24 -0
  35. package/dist/adapter/runtime/Teleport.d.ts +14 -0
  36. package/dist/adapter/runtime/Teleport.js +82 -0
  37. package/dist/adapter/runtime/accepting.d.ts +10 -0
  38. package/dist/adapter/runtime/accepting.js +18 -0
  39. package/dist/adapter/runtime/click-action.class.d.ts +14 -0
  40. package/dist/adapter/runtime/click-action.class.js +26 -0
  41. package/dist/adapter/runtime/drafts.class.d.ts +24 -0
  42. package/dist/adapter/runtime/drafts.class.js +41 -0
  43. package/dist/adapter/runtime/event-callbacks.class.d.ts +29 -0
  44. package/dist/adapter/runtime/event-callbacks.class.js +44 -0
  45. package/dist/adapter/runtime/index.d.ts +16 -0
  46. package/dist/adapter/runtime/root-ref.class.d.ts +39 -0
  47. package/dist/adapter/runtime/root-ref.class.js +86 -0
  48. package/dist/adapter/runtime/stable-snapshot.class.d.ts +20 -0
  49. package/dist/adapter/runtime/stable-snapshot.class.js +43 -0
  50. package/dist/adapter/runtime/useAdapter.d.ts +39 -0
  51. package/dist/adapter/runtime/useAdapter.js +78 -0
  52. package/dist/adapter/runtime/useAdapterContext.d.ts +22 -0
  53. package/dist/adapter/runtime/useAdapterContext.js +128 -0
  54. package/dist/adapter/runtime/useClickAction.d.ts +6 -0
  55. package/dist/adapter/runtime/useClickAction.js +16 -0
  56. package/dist/adapter/runtime/useComponent.d.ts +15 -0
  57. package/dist/adapter/runtime/useComponent.js +13 -0
  58. package/dist/adapter/runtime/useRootElement.d.ts +6 -0
  59. package/dist/adapter/runtime/useRootElement.js +13 -0
  60. package/dist/adapter/runtime/withRenderBoundary.d.ts +7 -0
  61. package/dist/adapter/runtime/withRenderBoundary.js +13 -0
  62. package/dist/adapter/toasts/index.d.ts +3 -0
  63. package/dist/adapter/toasts/render.d.ts +6 -0
  64. package/dist/adapter/toasts/render.js +17 -0
  65. package/dist/adapter/toasts/types.d.ts +6 -0
  66. package/dist/adapter/toasts/useToasts.d.ts +8 -0
  67. package/dist/adapter/toasts/useToasts.js +19 -0
  68. package/dist/components/accordion/Accordion.d.ts +14 -0
  69. package/dist/components/accordion/Accordion.js +40 -0
  70. package/dist/components/accordion/base.component.d.ts +6 -0
  71. package/dist/components/accordion/index.d.ts +6 -0
  72. package/dist/components/accordion/index.js +7 -0
  73. package/dist/components/accordion/item/Item.d.ts +6 -0
  74. package/dist/components/accordion/item/Item.js +68 -0
  75. package/dist/components/accordion/item/base.component.d.ts +9 -0
  76. package/dist/components/accordion/item/index.d.ts +2 -0
  77. package/dist/components/accordion/item/setup.component.d.ts +17 -0
  78. package/dist/components/accordion/item/setup.component.js +23 -0
  79. package/dist/components/accordion/setup.component.d.ts +15 -0
  80. package/dist/components/accordion/setup.component.js +26 -0
  81. package/dist/components/button/Button.d.ts +15 -0
  82. package/dist/components/button/Button.js +38 -0
  83. package/dist/components/button/base.component.d.ts +7 -0
  84. package/dist/components/button/index.d.ts +2 -0
  85. package/dist/components/button/setup.component.d.ts +22 -0
  86. package/dist/components/button/setup.component.js +12 -0
  87. package/dist/components/calendar/Calendar.d.ts +7 -0
  88. package/dist/components/calendar/Calendar.js +190 -0
  89. package/dist/components/calendar/base.component.d.ts +7 -0
  90. package/dist/components/calendar/index.d.ts +7 -0
  91. package/dist/components/calendar/index.js +8 -0
  92. package/dist/components/calendar/item/Item.d.ts +3 -0
  93. package/dist/components/calendar/item/Item.js +26 -0
  94. package/dist/components/calendar/item/base.component.d.ts +7 -0
  95. package/dist/components/calendar/item/index.d.ts +2 -0
  96. package/dist/components/calendar/item/setup.component.d.ts +13 -0
  97. package/dist/components/calendar/item/setup.component.js +20 -0
  98. package/dist/components/calendar/setup.component.d.ts +15 -0
  99. package/dist/components/calendar/setup.component.js +26 -0
  100. package/dist/components/check-box/CheckBox.d.ts +4 -0
  101. package/dist/components/check-box/CheckBox.js +49 -0
  102. package/dist/components/check-box/base.component.d.ts +7 -0
  103. package/dist/components/check-box/index.d.ts +2 -0
  104. package/dist/components/check-box/setup.component.d.ts +27 -0
  105. package/dist/components/check-box/setup.component.js +13 -0
  106. package/dist/components/component/base.component.d.ts +5 -0
  107. package/dist/components/component/index.d.ts +1 -0
  108. package/dist/components/component-view/ComponentView.d.ts +4 -0
  109. package/dist/components/component-view/ComponentView.js +22 -0
  110. package/dist/components/component-view/base.component.d.ts +5 -0
  111. package/dist/components/component-view/index.d.ts +2 -0
  112. package/dist/components/component-view/setup.component.d.ts +9 -0
  113. package/dist/components/component-view/setup.component.js +12 -0
  114. package/dist/components/control/base.component.d.ts +5 -0
  115. package/dist/components/control/index.d.ts +1 -0
  116. package/dist/components/control/setup.component.d.ts +22 -0
  117. package/dist/components/date-input/DateInput.d.ts +4 -0
  118. package/dist/components/date-input/DateInput.js +88 -0
  119. package/dist/components/date-input/base.component.d.ts +6 -0
  120. package/dist/components/date-input/index.d.ts +2 -0
  121. package/dist/components/date-input/setup.component.d.ts +27 -0
  122. package/dist/components/date-input/setup.component.js +13 -0
  123. package/dist/components/date-picker/DatePicker.d.ts +9 -0
  124. package/dist/components/date-picker/DatePicker.js +148 -0
  125. package/dist/components/date-picker/base.component.d.ts +6 -0
  126. package/dist/components/date-picker/index.d.ts +2 -0
  127. package/dist/components/date-picker/setup.component.d.ts +60 -0
  128. package/dist/components/date-picker/setup.component.js +26 -0
  129. package/dist/components/dialog/Dialog.d.ts +7 -0
  130. package/dist/components/dialog/Dialog.js +88 -0
  131. package/dist/components/dialog/base.component.d.ts +6 -0
  132. package/dist/components/dialog/index.d.ts +2 -0
  133. package/dist/components/dialog/setup.component.d.ts +29 -0
  134. package/dist/components/dialog/setup.component.js +12 -0
  135. package/dist/components/drag-and-drop/DragAndDrop.d.ts +4 -0
  136. package/dist/components/drag-and-drop/DragAndDrop.js +16 -0
  137. package/dist/components/drag-and-drop/base.component.d.ts +6 -0
  138. package/dist/components/drag-and-drop/index.d.ts +2 -0
  139. package/dist/components/drag-and-drop/setup.component.d.ts +6 -0
  140. package/dist/components/drag-and-drop/setup.component.js +12 -0
  141. package/dist/components/drawer/Drawer.d.ts +7 -0
  142. package/dist/components/drawer/Drawer.js +75 -0
  143. package/dist/components/drawer/base.component.d.ts +6 -0
  144. package/dist/components/drawer/index.d.ts +2 -0
  145. package/dist/components/drawer/setup.component.d.ts +29 -0
  146. package/dist/components/drawer/setup.component.js +12 -0
  147. package/dist/components/field/Field.d.ts +4 -0
  148. package/dist/components/field/Field.js +58 -0
  149. package/dist/components/field/base.component.d.ts +5 -0
  150. package/dist/components/field/index.d.ts +2 -0
  151. package/dist/components/field/setup.component.d.ts +10 -0
  152. package/dist/components/field/setup.component.js +13 -0
  153. package/dist/components/frame/Frame.d.ts +7 -0
  154. package/dist/components/frame/Frame.js +30 -0
  155. package/dist/components/frame/base.component.d.ts +5 -0
  156. package/dist/components/frame/index.d.ts +2 -0
  157. package/dist/components/frame/setup.component.d.ts +33 -0
  158. package/dist/components/frame/setup.component.js +12 -0
  159. package/dist/components/icon/Icon.d.ts +7 -0
  160. package/dist/components/icon/Icon.js +17 -0
  161. package/dist/components/icon/base.component.d.ts +5 -0
  162. package/dist/components/icon/index.d.ts +2 -0
  163. package/dist/components/icon/setup.component.d.ts +19 -0
  164. package/dist/components/icon/setup.component.js +12 -0
  165. package/dist/components/index.d.ts +43 -0
  166. package/dist/components/input/Input.d.ts +4 -0
  167. package/dist/components/input/Input.js +65 -0
  168. package/dist/components/input/base.component.d.ts +7 -0
  169. package/dist/components/input/index.d.ts +2 -0
  170. package/dist/components/input/setup.component.d.ts +27 -0
  171. package/dist/components/input/setup.component.js +13 -0
  172. package/dist/components/input-control/base.component.d.ts +6 -0
  173. package/dist/components/input-control/index.d.ts +1 -0
  174. package/dist/components/input-control/setup.component.d.ts +26 -0
  175. package/dist/components/interactive/base.component.d.ts +5 -0
  176. package/dist/components/interactive/index.d.ts +1 -0
  177. package/dist/components/interactive/setup.component.d.ts +9 -0
  178. package/dist/components/item-row/ItemRow.d.ts +13 -0
  179. package/dist/components/item-row/ItemRow.js +19 -0
  180. package/dist/components/item-row/index.d.ts +2 -0
  181. package/dist/components/item-row/setup.component.d.ts +22 -0
  182. package/dist/components/item-row/setup.component.js +12 -0
  183. package/dist/components/label/Label.d.ts +7 -0
  184. package/dist/components/label/Label.js +31 -0
  185. package/dist/components/label/base.component.d.ts +5 -0
  186. package/dist/components/label/index.d.ts +2 -0
  187. package/dist/components/label/setup.component.d.ts +9 -0
  188. package/dist/components/label/setup.component.js +12 -0
  189. package/dist/components/list-box/ListBox.d.ts +8 -0
  190. package/dist/components/list-box/ListBox.js +67 -0
  191. package/dist/components/list-box/base.component.d.ts +9 -0
  192. package/dist/components/list-box/group/Group.d.ts +7 -0
  193. package/dist/components/list-box/group/Group.js +34 -0
  194. package/dist/components/list-box/group/base.component.d.ts +6 -0
  195. package/dist/components/list-box/group/index.d.ts +2 -0
  196. package/dist/components/list-box/group/setup.component.d.ts +9 -0
  197. package/dist/components/list-box/group/setup.component.js +12 -0
  198. package/dist/components/list-box/index.d.ts +9 -0
  199. package/dist/components/list-box/index.js +11 -0
  200. package/dist/components/list-box/item/Item.d.ts +6 -0
  201. package/dist/components/list-box/item/Item.js +57 -0
  202. package/dist/components/list-box/item/base.component.d.ts +8 -0
  203. package/dist/components/list-box/item/index.d.ts +2 -0
  204. package/dist/components/list-box/item/setup.component.d.ts +19 -0
  205. package/dist/components/list-box/item/setup.component.js +23 -0
  206. package/dist/components/list-box/setup.component.d.ts +15 -0
  207. package/dist/components/list-box/setup.component.js +26 -0
  208. package/dist/components/menu/Menu.d.ts +7 -0
  209. package/dist/components/menu/Menu.js +47 -0
  210. package/dist/components/menu/base.component.d.ts +6 -0
  211. package/dist/components/menu/checkbox-item/CheckboxItem.d.ts +6 -0
  212. package/dist/components/menu/checkbox-item/CheckboxItem.js +61 -0
  213. package/dist/components/menu/checkbox-item/base.component.d.ts +8 -0
  214. package/dist/components/menu/checkbox-item/index.d.ts +2 -0
  215. package/dist/components/menu/checkbox-item/setup.component.d.ts +17 -0
  216. package/dist/components/menu/checkbox-item/setup.component.js +23 -0
  217. package/dist/components/menu/group/Group.d.ts +4 -0
  218. package/dist/components/menu/group/Group.js +31 -0
  219. package/dist/components/menu/group/base.component.d.ts +6 -0
  220. package/dist/components/menu/group/index.d.ts +2 -0
  221. package/dist/components/menu/group/setup.component.d.ts +9 -0
  222. package/dist/components/menu/group/setup.component.js +12 -0
  223. package/dist/components/menu/index.d.ts +23 -0
  224. package/dist/components/menu/index.js +23 -0
  225. package/dist/components/menu/item/Item.d.ts +3 -0
  226. package/dist/components/menu/item/Item.js +42 -0
  227. package/dist/components/menu/item/base.component.d.ts +8 -0
  228. package/dist/components/menu/item/index.d.ts +2 -0
  229. package/dist/components/menu/item/setup.component.d.ts +17 -0
  230. package/dist/components/menu/item/setup.component.js +23 -0
  231. package/dist/components/menu/popover-item/PopoverItem.d.ts +6 -0
  232. package/dist/components/menu/popover-item/PopoverItem.js +72 -0
  233. package/dist/components/menu/popover-item/base.component.d.ts +8 -0
  234. package/dist/components/menu/popover-item/index.d.ts +2 -0
  235. package/dist/components/menu/popover-item/setup.component.d.ts +24 -0
  236. package/dist/components/menu/popover-item/setup.component.js +26 -0
  237. package/dist/components/menu/radio-group/RadioGroup.d.ts +4 -0
  238. package/dist/components/menu/radio-group/RadioGroup.js +31 -0
  239. package/dist/components/menu/radio-group/base.component.d.ts +5 -0
  240. package/dist/components/menu/radio-group/index.d.ts +2 -0
  241. package/dist/components/menu/radio-group/setup.component.d.ts +9 -0
  242. package/dist/components/menu/radio-group/setup.component.js +12 -0
  243. package/dist/components/menu/radio-item/RadioItem.d.ts +3 -0
  244. package/dist/components/menu/radio-item/RadioItem.js +50 -0
  245. package/dist/components/menu/radio-item/base.component.d.ts +9 -0
  246. package/dist/components/menu/radio-item/index.d.ts +2 -0
  247. package/dist/components/menu/radio-item/setup.component.d.ts +17 -0
  248. package/dist/components/menu/radio-item/setup.component.js +23 -0
  249. package/dist/components/menu/separator/Separator.d.ts +4 -0
  250. package/dist/components/menu/separator/Separator.js +18 -0
  251. package/dist/components/menu/separator/base.component.d.ts +5 -0
  252. package/dist/components/menu/separator/index.d.ts +2 -0
  253. package/dist/components/menu/separator/setup.component.d.ts +9 -0
  254. package/dist/components/menu/separator/setup.component.js +12 -0
  255. package/dist/components/menu/setup.component.d.ts +16 -0
  256. package/dist/components/menu/setup.component.js +29 -0
  257. package/dist/components/menu/submenu/Submenu.d.ts +22 -0
  258. package/dist/components/menu/submenu/Submenu.js +117 -0
  259. package/dist/components/menu/submenu/base.component.d.ts +9 -0
  260. package/dist/components/menu/submenu/index.d.ts +2 -0
  261. package/dist/components/menu/submenu/setup.component.d.ts +25 -0
  262. package/dist/components/menu/submenu/setup.component.js +37 -0
  263. package/dist/components/number-input/NumberInput.d.ts +4 -0
  264. package/dist/components/number-input/NumberInput.js +108 -0
  265. package/dist/components/number-input/base.component.d.ts +7 -0
  266. package/dist/components/number-input/index.d.ts +2 -0
  267. package/dist/components/number-input/setup.component.d.ts +27 -0
  268. package/dist/components/number-input/setup.component.js +13 -0
  269. package/dist/components/pagination/Pagination.d.ts +7 -0
  270. package/dist/components/pagination/Pagination.js +80 -0
  271. package/dist/components/pagination/base.component.d.ts +6 -0
  272. package/dist/components/pagination/index.d.ts +2 -0
  273. package/dist/components/pagination/item/Item.d.ts +3 -0
  274. package/dist/components/pagination/item/Item.js +34 -0
  275. package/dist/components/pagination/item/base.component.d.ts +5 -0
  276. package/dist/components/pagination/item/index.d.ts +2 -0
  277. package/dist/components/pagination/item/setup.component.d.ts +11 -0
  278. package/dist/components/pagination/item/setup.component.js +23 -0
  279. package/dist/components/pagination/setup.component.d.ts +15 -0
  280. package/dist/components/pagination/setup.component.js +26 -0
  281. package/dist/components/popover/Popover.d.ts +7 -0
  282. package/dist/components/popover/Popover.js +68 -0
  283. package/dist/components/popover/base.component.d.ts +6 -0
  284. package/dist/components/popover/index.d.ts +2 -0
  285. package/dist/components/popover/setup.component.d.ts +34 -0
  286. package/dist/components/popover/setup.component.js +17 -0
  287. package/dist/components/progress-linear/ProgressLinear.d.ts +7 -0
  288. package/dist/components/progress-linear/ProgressLinear.js +24 -0
  289. package/dist/components/progress-linear/base.component.d.ts +5 -0
  290. package/dist/components/progress-linear/index.d.ts +2 -0
  291. package/dist/components/progress-linear/setup.component.d.ts +17 -0
  292. package/dist/components/progress-linear/setup.component.js +12 -0
  293. package/dist/components/progress-spinner/ProgressSpinner.d.ts +7 -0
  294. package/dist/components/progress-spinner/ProgressSpinner.js +50 -0
  295. package/dist/components/progress-spinner/base.component.d.ts +5 -0
  296. package/dist/components/progress-spinner/index.d.ts +2 -0
  297. package/dist/components/progress-spinner/setup.component.d.ts +17 -0
  298. package/dist/components/progress-spinner/setup.component.js +12 -0
  299. package/dist/components/radio-group/RadioGroup.d.ts +4 -0
  300. package/dist/components/radio-group/RadioGroup.js +30 -0
  301. package/dist/components/radio-group/base.component.d.ts +7 -0
  302. package/dist/components/radio-group/index.d.ts +7 -0
  303. package/dist/components/radio-group/index.js +8 -0
  304. package/dist/components/radio-group/item/Item.d.ts +3 -0
  305. package/dist/components/radio-group/item/Item.js +46 -0
  306. package/dist/components/radio-group/item/base.component.d.ts +9 -0
  307. package/dist/components/radio-group/item/index.d.ts +2 -0
  308. package/dist/components/radio-group/item/setup.component.d.ts +42 -0
  309. package/dist/components/radio-group/item/setup.component.js +30 -0
  310. package/dist/components/radio-group/setup.component.d.ts +16 -0
  311. package/dist/components/radio-group/setup.component.js +27 -0
  312. package/dist/components/rating/Rating.d.ts +4 -0
  313. package/dist/components/rating/Rating.js +55 -0
  314. package/dist/components/rating/base.component.d.ts +6 -0
  315. package/dist/components/rating/index.d.ts +2 -0
  316. package/dist/components/rating/setup.component.d.ts +27 -0
  317. package/dist/components/rating/setup.component.js +13 -0
  318. package/dist/components/scroller/Scroller.d.ts +7 -0
  319. package/dist/components/scroller/Scroller.js +64 -0
  320. package/dist/components/scroller/base.component.d.ts +6 -0
  321. package/dist/components/scroller/index.d.ts +2 -0
  322. package/dist/components/scroller/setup.component.d.ts +22 -0
  323. package/dist/components/scroller/setup.component.js +12 -0
  324. package/dist/components/select/Select.d.ts +7 -0
  325. package/dist/components/select/Select.js +116 -0
  326. package/dist/components/select/base.component.d.ts +8 -0
  327. package/dist/components/select/group/Group.d.ts +7 -0
  328. package/dist/components/select/group/Group.js +34 -0
  329. package/dist/components/select/group/base.component.d.ts +6 -0
  330. package/dist/components/select/group/index.d.ts +2 -0
  331. package/dist/components/select/group/setup.component.d.ts +9 -0
  332. package/dist/components/select/group/setup.component.js +12 -0
  333. package/dist/components/select/index.d.ts +9 -0
  334. package/dist/components/select/index.js +11 -0
  335. package/dist/components/select/item/Item.d.ts +6 -0
  336. package/dist/components/select/item/Item.js +58 -0
  337. package/dist/components/select/item/base.component.d.ts +8 -0
  338. package/dist/components/select/item/index.d.ts +2 -0
  339. package/dist/components/select/item/setup.component.d.ts +19 -0
  340. package/dist/components/select/item/setup.component.js +23 -0
  341. package/dist/components/select/setup.component.d.ts +27 -0
  342. package/dist/components/select/setup.component.js +30 -0
  343. package/dist/components/skeleton/Skeleton.d.ts +4 -0
  344. package/dist/components/skeleton/Skeleton.js +23 -0
  345. package/dist/components/skeleton/base.component.d.ts +5 -0
  346. package/dist/components/skeleton/index.d.ts +2 -0
  347. package/dist/components/skeleton/setup.component.d.ts +11 -0
  348. package/dist/components/skeleton/setup.component.js +12 -0
  349. package/dist/components/slider/Slider.d.ts +4 -0
  350. package/dist/components/slider/Slider.js +72 -0
  351. package/dist/components/slider/base.component.d.ts +6 -0
  352. package/dist/components/slider/index.d.ts +2 -0
  353. package/dist/components/slider/setup.component.d.ts +23 -0
  354. package/dist/components/slider/setup.component.js +13 -0
  355. package/dist/components/stylable/base.component.d.ts +5 -0
  356. package/dist/components/stylable/index.d.ts +1 -0
  357. package/dist/components/stylable/setup.component.d.ts +9 -0
  358. package/dist/components/switch/Switch.d.ts +4 -0
  359. package/dist/components/switch/Switch.js +42 -0
  360. package/dist/components/switch/base.component.d.ts +7 -0
  361. package/dist/components/switch/index.d.ts +2 -0
  362. package/dist/components/switch/setup.component.d.ts +27 -0
  363. package/dist/components/switch/setup.component.js +13 -0
  364. package/dist/components/table/Table.d.ts +9 -0
  365. package/dist/components/table/Table.js +83 -0
  366. package/dist/components/table/base.component.d.ts +7 -0
  367. package/dist/components/table/column/Column.d.ts +7 -0
  368. package/dist/components/table/column/Column.js +66 -0
  369. package/dist/components/table/column/base.component.d.ts +6 -0
  370. package/dist/components/table/column/index.d.ts +2 -0
  371. package/dist/components/table/column/setup.component.d.ts +19 -0
  372. package/dist/components/table/column/setup.component.js +16 -0
  373. package/dist/components/table/index.d.ts +9 -0
  374. package/dist/components/table/index.js +11 -0
  375. package/dist/components/table/row/Cells.d.ts +14 -0
  376. package/dist/components/table/row/Cells.js +29 -0
  377. package/dist/components/table/row/Row.d.ts +6 -0
  378. package/dist/components/table/row/Row.js +43 -0
  379. package/dist/components/table/row/base.component.d.ts +7 -0
  380. package/dist/components/table/row/index.d.ts +2 -0
  381. package/dist/components/table/row/setup.component.d.ts +11 -0
  382. package/dist/components/table/row/setup.component.js +23 -0
  383. package/dist/components/table/setup.component.d.ts +18 -0
  384. package/dist/components/table/setup.component.js +27 -0
  385. package/dist/components/tabs/Tabs.d.ts +9 -0
  386. package/dist/components/tabs/Tabs.js +53 -0
  387. package/dist/components/tabs/base.component.d.ts +9 -0
  388. package/dist/components/tabs/content/Content.d.ts +4 -0
  389. package/dist/components/tabs/content/Content.js +18 -0
  390. package/dist/components/tabs/content/base.component.d.ts +7 -0
  391. package/dist/components/tabs/content/index.d.ts +2 -0
  392. package/dist/components/tabs/content/setup.component.d.ts +17 -0
  393. package/dist/components/tabs/content/setup.component.js +20 -0
  394. package/dist/components/tabs/index.d.ts +9 -0
  395. package/dist/components/tabs/index.js +11 -0
  396. package/dist/components/tabs/item/Item.d.ts +6 -0
  397. package/dist/components/tabs/item/Item.js +64 -0
  398. package/dist/components/tabs/item/base.component.d.ts +9 -0
  399. package/dist/components/tabs/item/index.d.ts +2 -0
  400. package/dist/components/tabs/item/setup.component.d.ts +17 -0
  401. package/dist/components/tabs/item/setup.component.js +23 -0
  402. package/dist/components/tabs/setup.component.d.ts +15 -0
  403. package/dist/components/tabs/setup.component.js +26 -0
  404. package/dist/components/tags/Tags.d.ts +7 -0
  405. package/dist/components/tags/Tags.js +36 -0
  406. package/dist/components/tags/base.component.d.ts +6 -0
  407. package/dist/components/tags/index.d.ts +6 -0
  408. package/dist/components/tags/index.js +7 -0
  409. package/dist/components/tags/item/Item.d.ts +6 -0
  410. package/dist/components/tags/item/Item.js +63 -0
  411. package/dist/components/tags/item/base.component.d.ts +8 -0
  412. package/dist/components/tags/item/index.d.ts +2 -0
  413. package/dist/components/tags/item/setup.component.d.ts +15 -0
  414. package/dist/components/tags/item/setup.component.js +23 -0
  415. package/dist/components/tags/setup.component.d.ts +15 -0
  416. package/dist/components/tags/setup.component.js +26 -0
  417. package/dist/components/textable/base.component.d.ts +5 -0
  418. package/dist/components/textable/index.d.ts +1 -0
  419. package/dist/components/textable/setup.component.d.ts +22 -0
  420. package/dist/components/textarea/Textarea.d.ts +4 -0
  421. package/dist/components/textarea/Textarea.js +35 -0
  422. package/dist/components/textarea/base.component.d.ts +7 -0
  423. package/dist/components/textarea/index.d.ts +2 -0
  424. package/dist/components/textarea/setup.component.d.ts +29 -0
  425. package/dist/components/textarea/setup.component.js +13 -0
  426. package/dist/components/toasts/Toasts.d.ts +7 -0
  427. package/dist/components/toasts/Toasts.js +43 -0
  428. package/dist/components/toasts/base.component.d.ts +7 -0
  429. package/dist/components/toasts/index.d.ts +2 -0
  430. package/dist/components/toasts/item/Item.d.ts +3 -0
  431. package/dist/components/toasts/item/Item.js +88 -0
  432. package/dist/components/toasts/item/base.component.d.ts +6 -0
  433. package/dist/components/toasts/item/index.d.ts +2 -0
  434. package/dist/components/toasts/item/setup.component.d.ts +13 -0
  435. package/dist/components/toasts/item/setup.component.js +20 -0
  436. package/dist/components/toasts/setup.component.d.ts +13 -0
  437. package/dist/components/toasts/setup.component.js +26 -0
  438. package/dist/components/tooltip/Tooltip.d.ts +4 -0
  439. package/dist/components/tooltip/Tooltip.js +34 -0
  440. package/dist/components/tooltip/base.component.d.ts +6 -0
  441. package/dist/components/tooltip/index.d.ts +2 -0
  442. package/dist/components/tooltip/setup.component.d.ts +26 -0
  443. package/dist/components/tooltip/setup.component.js +17 -0
  444. package/dist/components/value-control/base.component.d.ts +6 -0
  445. package/dist/components/value-control/index.d.ts +1 -0
  446. package/dist/components/value-control/setup.component.d.ts +22 -0
  447. package/dist/components/virtual/Virtual.d.ts +4 -0
  448. package/dist/components/virtual/Virtual.js +16 -0
  449. package/dist/components/virtual/base.component.d.ts +6 -0
  450. package/dist/components/virtual/index.d.ts +2 -0
  451. package/dist/components/virtual/setup.component.d.ts +6 -0
  452. package/dist/components/virtual/setup.component.js +12 -0
  453. package/dist/index.d.ts +10 -0
  454. package/dist/index.js +60 -0
  455. package/dist/types.d.ts +25 -0
  456. package/package.json +60 -4
@@ -0,0 +1,116 @@
1
+ "use client";
2
+ import { toAriaProps } from "../../adapter/common/aria.js";
3
+ import { toControlAttrs, toReactStyle, toRootForward, toRootProps } from "../../adapter/common/root.js";
4
+ import { hasSlot, relaySlot, renderSlot } from "../../adapter/common/slots.js";
5
+ import { roleIcon } from "../../adapter/common/icon.js";
6
+ import { Elevate } from "../../adapter/elevator/Elevate.js";
7
+ import { Icon } from "../icon/Icon.js";
8
+ import { Frame } from "../frame/Frame.js";
9
+ import { Input } from "../input/Input.js";
10
+ import { Tags } from "../tags/index.js";
11
+ import { SelectItem } from "./item/Item.js";
12
+ import { SelectGroup } from "./group/Group.js";
13
+ import { useSetupSelect } from "./setup.component.js";
14
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
15
+ //#region src/components/select/Select.tsx
16
+ /** Стрелка без слота — компонент на роль: `tag` у Icon — корень, а не роль. */
17
+ var ArrowIcon = roleIcon("arrowDown");
18
+ /**
19
+ * Ряд тегов поля — только в `multiple`. Ключ — инстанс тегов:
20
+ * AGENTS.md (React), «Пересобранный инстанс и `key`».
21
+ */
22
+ function drawTags(props, tags, engine) {
23
+ if (!tags || !engine) return null;
24
+ return renderSlot(props.tags, {
25
+ tags,
26
+ engine
27
+ }) ?? /* @__PURE__ */ jsx(Tags, {
28
+ embedded: "select.tags",
29
+ className: "so-select__tags",
30
+ ctrl: tags,
31
+ engine
32
+ }, tags.uid);
33
+ }
34
+ /** Опция из данных со слотами Select или распорка окна на месте пропущенных. */
35
+ function drawEntry(props, entry) {
36
+ if (entry.kind === "filler") return /* @__PURE__ */ jsx("div", {
37
+ className: "so-select__filler",
38
+ "aria-hidden": "true",
39
+ style: toReactStyle(entry.style)
40
+ }, entry.key);
41
+ return /* @__PURE__ */ jsx(SelectItem, {
42
+ ctrl: entry.item,
43
+ leading: renderSlot(props["item-leading"], { item: entry.item }),
44
+ trailing: renderSlot(props["item-trailing"], { item: entry.item }),
45
+ "indicator-icon": relaySlot(props["item-indicator-icon"], { item: entry.item }),
46
+ children: relaySlot(props.item, { item: entry.item })
47
+ }, entry.key);
48
+ }
49
+ /** Ключи записи (число), группы и разделителя секции не пересекаются. */
50
+ function drawSection(props, section, separated) {
51
+ const entries = section.entries.map((entry) => drawEntry(props, entry));
52
+ const separator = separated ? [/* @__PURE__ */ jsx("div", {
53
+ className: "so-select__separator",
54
+ "aria-hidden": "true"
55
+ }, `separator:${section.key}`)] : [];
56
+ if (!section.group) return [...separator, ...entries];
57
+ return [...separator, /* @__PURE__ */ jsx(SelectGroup, {
58
+ label: section.group.label,
59
+ children: entries
60
+ }, section.key)];
61
+ }
62
+ /**
63
+ * Select — поле выбора из списка (Combobox, select-only или `editable`): поле и панель со списком.
64
+ * docs/agents/patterns.md, «Готовые паттерны» (Select).
65
+ */
66
+ function Select(props) {
67
+ const { ref, forwardProps, state, rootElement, field, layer } = useSetupSelect(props);
68
+ const { rendered, attrs, aria, dataset, size, open, panelPlacement, panelFlip, autoFitWidth, panelDataset, handleRendered, contentRendered, listAria, drawnSections, groupSeparators, shown, tags, tags_engine, dismiss_ownerAttribute, id } = state;
69
+ if (!rendered) return null;
70
+ return /* @__PURE__ */ jsx("div", {
71
+ ...toRootProps(ref, state, [dataset, attrs], toRootForward(forwardProps)),
72
+ children: /* @__PURE__ */ jsxs(Elevate, {
73
+ layer,
74
+ children: [renderSlot(props.field, { field }) ?? /* @__PURE__ */ jsx(Input, {
75
+ embedded: "select.field",
76
+ className: "so-select__field",
77
+ ctrl: field,
78
+ id,
79
+ clear: props.clear,
80
+ leading: /* @__PURE__ */ jsxs(Fragment, { children: [drawTags(props, tags, tags_engine), renderSlot(props.leading)] }),
81
+ trailing: /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("span", {
82
+ className: "so-select__arrow",
83
+ children: renderSlot(props["arrow-icon"]) ?? /* @__PURE__ */ jsx(Icon, {
84
+ embedded: "select.arrow",
85
+ tag: ArrowIcon,
86
+ size
87
+ })
88
+ }), renderSlot(props.trailing)] }),
89
+ ...toAriaProps(aria),
90
+ ...toControlAttrs(forwardProps)
91
+ }, field.uid), /* @__PURE__ */ jsxs(Frame, {
92
+ embedded: "select.frame",
93
+ className: "so-select__panel",
94
+ visible: state.visible && open,
95
+ strategy: "fixed",
96
+ anchor_anchor: rootElement,
97
+ anchor_placement: panelPlacement,
98
+ anchor_flip: panelFlip,
99
+ anchor_matchWidth: autoFitWidth,
100
+ anchor_offset: 4,
101
+ ...toAriaProps(panelDataset),
102
+ ...toAriaProps(dismiss_ownerAttribute),
103
+ children: [handleRendered ? /* @__PURE__ */ jsx("div", {
104
+ className: "so-select__handle",
105
+ "aria-hidden": "true"
106
+ }) : null, /* @__PURE__ */ jsxs("div", {
107
+ className: "so-select__list",
108
+ ...toAriaProps(listAria),
109
+ children: [hasSlot(props.children) ? renderSlot(props.children) : contentRendered ? drawnSections?.flatMap((section, index) => drawSection(props, section, groupSeparators === true && index > 0)) : null, shown?.length === 0 ? renderSlot(props.empty) : null]
110
+ })]
111
+ })]
112
+ })
113
+ });
114
+ }
115
+ //#endregion
116
+ export { Select };
@@ -0,0 +1,8 @@
1
+ import type { ISelect } from '@soxa-ui/core';
2
+ import type { SelectCollectionDescriptor, SelectDescriptor } from '@soxa-ui/setup';
3
+ import type { EventProps, TDomAttributes, TFieldAttributes, UseDomProps } from '../../types';
4
+ /** Колбэки обоих контекстов Select — свой и фасада коллекции — пропсы одного компонента. */
5
+ export type SelectEventProps = EventProps<typeof SelectDescriptor> & EventProps<typeof SelectCollectionDescriptor>;
6
+ /** Атрибуты Select: класс и стиль — корню, остальное — `<input>` поля. */
7
+ export type SelectAttributes = TDomAttributes<typeof SelectDescriptor, TFieldAttributes, SelectEventProps>;
8
+ export type SelectProps = UseDomProps<typeof SelectDescriptor, ISelect, SelectEventProps, TFieldAttributes>;
@@ -0,0 +1,7 @@
1
+ import type { ReactElement } from 'react';
2
+ import type { SelectGroupProps } from './base.component';
3
+ /**
4
+ * SelectGroup — опции списка панели под общей подписью.
5
+ * docs/agents/patterns.md, «Граница переиспользования между похожими компонентами (критично)».
6
+ */
7
+ export declare function SelectGroup(props: SelectGroupProps): ReactElement | null;
@@ -0,0 +1,34 @@
1
+ "use client";
2
+ import { toAriaProps } from "../../../adapter/common/aria.js";
3
+ import { toRootProps } from "../../../adapter/common/root.js";
4
+ import { renderSlot } from "../../../adapter/common/slots.js";
5
+ import { Elevate } from "../../../adapter/elevator/Elevate.js";
6
+ import { useSetupSelectGroup } from "./setup.component.js";
7
+ import { jsx, jsxs } from "react/jsx-runtime";
8
+ //#region src/components/select/group/Group.tsx
9
+ /**
10
+ * SelectGroup — опции списка панели под общей подписью.
11
+ * docs/agents/patterns.md, «Граница переиспользования между похожими компонентами (критично)».
12
+ */
13
+ function SelectGroup(props) {
14
+ const { ref, forwardProps, state, layer } = useSetupSelectGroup(props);
15
+ const { rendered, tag, label, labelAria, attrs, aria, dataset } = state;
16
+ if (!rendered) return null;
17
+ return /* @__PURE__ */ jsxs(tag, {
18
+ ...toRootProps(ref, state, [
19
+ attrs,
20
+ aria,
21
+ dataset
22
+ ], forwardProps),
23
+ children: [label ? /* @__PURE__ */ jsx("div", {
24
+ className: "so-select-group__label",
25
+ ...toAriaProps(labelAria),
26
+ children: label
27
+ }) : null, /* @__PURE__ */ jsx(Elevate, {
28
+ layer,
29
+ children: renderSlot(props.children)
30
+ })]
31
+ });
32
+ }
33
+ //#endregion
34
+ export { SelectGroup };
@@ -0,0 +1,6 @@
1
+ import type { IItemGroup } from '@soxa-ui/core';
2
+ import type { SelectGroupDescriptor } from '@soxa-ui/setup';
3
+ import type { EventProps, UseDomProps } from '../../../types';
4
+ export type SelectGroupEventProps = EventProps<typeof SelectGroupDescriptor>;
5
+ /** Пропсы группы: подпись — проп `label`, опции — дети. */
6
+ export type SelectGroupProps = UseDomProps<typeof SelectGroupDescriptor, IItemGroup, SelectGroupEventProps>;
@@ -0,0 +1,2 @@
1
+ export * from './base.component';
2
+ export { SelectGroup } from './Group';
@@ -0,0 +1,9 @@
1
+ import type { SelectGroupProps } from './base.component';
2
+ export declare function useSetupSelectGroup(props: SelectGroupProps): import("../../../adapter").TComponentBinding<import("@soxa-ui/setup").TContextContract<import("@soxa-ui/core").IItemGroup<import("@soxa-ui/core").IItemGroupProps, import("@soxa-ui/core").TItemGroupEvents>, {
3
+ props: object & {} & {} & {};
4
+ events: object & {
5
+ "element:removed": () => void;
6
+ "element:ready": (element: Element) => void;
7
+ } & {} & {};
8
+ outputs: object & {} & {} & {};
9
+ }>, SelectGroupProps>;
@@ -0,0 +1,12 @@
1
+ "use client";
2
+ import { useComponent } from "../../../adapter/runtime/useComponent.js";
3
+ import { SelectGroupDescriptor, TItemGroupExtension } from "@soxa-ui/setup";
4
+ //#region src/components/select/group/setup.component.ts
5
+ function useSetupSelectGroup(props) {
6
+ return useComponent((create, elevator) => create(SelectGroupDescriptor(), {
7
+ ctrl: props.ctrl,
8
+ props
9
+ }).use(TItemGroupExtension, { elevator }), props);
10
+ }
11
+ //#endregion
12
+ export { useSetupSelectGroup };
@@ -0,0 +1,9 @@
1
+ import { Select as SelectComponent } from './Select';
2
+ import { SelectGroup } from './group';
3
+ export * from './base.component';
4
+ export * from './item';
5
+ export * from './group';
6
+ export declare const Select: typeof SelectComponent & {
7
+ Item: import("react").NamedExoticComponent<import("./item").SelectItemProps>;
8
+ Group: typeof SelectGroup;
9
+ };
@@ -0,0 +1,11 @@
1
+ import { SelectItem } from "./item/Item.js";
2
+ import { SelectGroup } from "./group/Group.js";
3
+ import { Select as Select$1 } from "./Select.js";
4
+ import { withParts } from "@soxa-ui/setup";
5
+ //#region src/components/select/index.ts
6
+ var Select = withParts(Select$1, {
7
+ Item: SelectItem,
8
+ Group: SelectGroup
9
+ });
10
+ //#endregion
11
+ export { Select };
@@ -0,0 +1,6 @@
1
+ import type { SelectItemProps } from './base.component';
2
+ /**
3
+ * SelectItem — опция списка панели: корень по `tag` и строка-опция — `ItemRow` на `span`
4
+ * (под этот тег написан `TSelectItem._ariaTag`).
5
+ */
6
+ export declare const SelectItem: import("react").NamedExoticComponent<SelectItemProps>;
@@ -0,0 +1,58 @@
1
+ "use client";
2
+ import { toAriaProps } from "../../../adapter/common/aria.js";
3
+ import { toControlAttrs, toRootForward, toRootProps } from "../../../adapter/common/root.js";
4
+ import { renderSlot } from "../../../adapter/common/slots.js";
5
+ import { roleIcon } from "../../../adapter/common/icon.js";
6
+ import { useClickAction } from "../../../adapter/runtime/useClickAction.js";
7
+ import { withRenderBoundary } from "../../../adapter/runtime/withRenderBoundary.js";
8
+ import { Icon } from "../../icon/Icon.js";
9
+ import { ItemRow } from "../../item-row/ItemRow.js";
10
+ import { useSetupSelectItem } from "./setup.component.js";
11
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
12
+ //#region src/components/select/item/Item.tsx
13
+ /** Отметка без слота — иконка из пакета по роли, компонент на роль один на модуль. */
14
+ var CheckIcon = roleIcon("check");
15
+ /**
16
+ * SelectItem — опция списка панели: корень по `tag` и строка-опция — `ItemRow` на `span`
17
+ * (под этот тег написан `TSelectItem._ariaTag`).
18
+ */
19
+ var SelectItem = withRenderBoundary(function SelectItem(props) {
20
+ const { ref, forwardProps, state, context } = useSetupSelectItem(props);
21
+ const choose = useClickAction(() => context?.adapters.select.choose());
22
+ const { rendered, tag, text, disabled, size, variant, selected, indicator, aria, dataset, attrs } = state;
23
+ if (!rendered) return null;
24
+ const Tag = tag;
25
+ const chosen = selected ?? false;
26
+ const row = toControlAttrs(forwardProps);
27
+ const mark = /* @__PURE__ */ jsx("span", {
28
+ className: "so-select-item__indicator",
29
+ "aria-hidden": "true",
30
+ children: renderSlot(props["indicator-icon"], { selected: chosen }) ?? (chosen ? /* @__PURE__ */ jsx(Icon, {
31
+ embedded: "select.indicator",
32
+ tag: CheckIcon,
33
+ size
34
+ }) : null)
35
+ });
36
+ return /* @__PURE__ */ jsx(Tag, {
37
+ ...toRootProps(ref, state, [dataset, attrs], toRootForward(forwardProps)),
38
+ children: /* @__PURE__ */ jsx(ItemRow, {
39
+ embedded: "select.row",
40
+ tag: "span",
41
+ size,
42
+ variant,
43
+ disabled,
44
+ ...toAriaProps(aria),
45
+ ...toAriaProps(dataset),
46
+ ...row,
47
+ ref: choose,
48
+ leading: /* @__PURE__ */ jsxs(Fragment, { children: [indicator === "start" ? mark : null, renderSlot(props.leading)] }),
49
+ trailing: /* @__PURE__ */ jsxs(Fragment, { children: [renderSlot(props.trailing), indicator === "end" ? mark : null] }),
50
+ children: renderSlot(props.children, {
51
+ text: text ?? "",
52
+ selected: chosen
53
+ }) ?? text
54
+ })
55
+ });
56
+ });
57
+ //#endregion
58
+ export { SelectItem };
@@ -0,0 +1,8 @@
1
+ import type { HTMLAttributes } from 'react';
2
+ import type { ISelectItem } from '@soxa-ui/core';
3
+ import type { SelectCollectionItemDescriptor, SelectItemDescriptor } from '@soxa-ui/setup';
4
+ import type { EventProps, TDomAttributes, UseDomProps } from '../../../types';
5
+ export type SelectItemEventProps = EventProps<typeof SelectItemDescriptor> & EventProps<typeof SelectCollectionItemDescriptor>;
6
+ /** Атрибуты опции: класс и стиль — корню, остальное — строке с `role="option"`. */
7
+ export type SelectItemAttributes = TDomAttributes<typeof SelectItemDescriptor, HTMLAttributes<HTMLElement>, SelectItemEventProps>;
8
+ export type SelectItemProps = UseDomProps<typeof SelectItemDescriptor, ISelectItem, SelectItemEventProps>;
@@ -0,0 +1,2 @@
1
+ export * from './base.component';
2
+ export { SelectItem } from './Item';
@@ -0,0 +1,19 @@
1
+ import type { SelectItemProps } from './base.component';
2
+ export declare function useSetupSelectItem(props: SelectItemProps): {
3
+ context: import("@soxa-ui/core").TItemContext<import("@soxa-ui/core").ISelectItem<import("@soxa-ui/core").ISelectItemProps, import("@soxa-ui/core").TSelectItemEvents>, import("@soxa-ui/core").TSelectCollectionExtensions> | undefined;
4
+ ref: (el: Element | null) => void;
5
+ plugins: import("@soxa-ui/plugins").IPluginBundle | null;
6
+ ctrl: object & import("@soxa-ui/core").ISelectItem<import("@soxa-ui/core").ISelectItemProps, import("@soxa-ui/core").TSelectItemEvents>;
7
+ root: import("../../../adapter").TRootSource;
8
+ forwardProps: Partial<SelectItemProps>;
9
+ bindRef: (el: Element | null) => void;
10
+ state: import("@soxa-ui/setup").TInstanceState<object & import("@soxa-ui/core").ISelectItem<import("@soxa-ui/core").ISelectItemProps, import("@soxa-ui/core").TSelectItemEvents>> & import("@soxa-ui/setup").TInstanceState<object & {} & {} & {} & {
11
+ aria_label?: string | undefined;
12
+ aria_labelledBy?: string | undefined;
13
+ aria_describedBy?: string | undefined;
14
+ } & {} & {} & {
15
+ id?: string | undefined;
16
+ }> & import("@soxa-ui/setup").TInstanceState<object & {} & {} & {} & {} & {} & {
17
+ readonly listItem_highlighted: boolean;
18
+ } & {}> & import("@soxa-ui/setup").TInstanceState<object & import("@soxa-ui/core").TSelectItemCollectionFacade> & object;
19
+ };
@@ -0,0 +1,23 @@
1
+ "use client";
2
+ import { useAdapter, useCollectionAdapter } from "../../../adapter/runtime/useAdapter.js";
3
+ import { useAdapterContext } from "../../../adapter/runtime/useAdapterContext.js";
4
+ import { SelectCollectionItemDescriptor, SelectItemDescriptor, TCollectionItemExtension } from "@soxa-ui/setup";
5
+ //#region src/components/select/item/setup.component.ts
6
+ function useSetupSelectItem(props) {
7
+ const { contexts: [adapter, item] } = useAdapterContext((create, elevator) => {
8
+ const adapter = create(SelectItemDescriptor(), {
9
+ ctrl: props.ctrl,
10
+ props
11
+ });
12
+ return [adapter, create(SelectCollectionItemDescriptor(), { props }, { bundle: adapter.bundle }).use(TCollectionItemExtension, {
13
+ adapter,
14
+ elevator
15
+ })];
16
+ });
17
+ return {
18
+ ...useCollectionAdapter(useAdapter(adapter, props), item, props),
19
+ context: item.instance.context
20
+ };
21
+ }
22
+ //#endregion
23
+ export { useSetupSelectItem };
@@ -0,0 +1,27 @@
1
+ import type { SelectProps } from './base.component';
2
+ export declare function useSetupSelect(props: SelectProps): {
3
+ rootElement: Element | null;
4
+ field: import("@soxa-ui/core").IInput;
5
+ layer: import("../../adapter").TElevatorLayer;
6
+ ref: (el: Element | null) => void;
7
+ plugins: import("@soxa-ui/plugins").IPluginBundle | null;
8
+ ctrl: object & import("@soxa-ui/core").ISelect<import("@soxa-ui/core").ISelectProps, import("@soxa-ui/core").TSelectEvents>;
9
+ root: import("../../adapter").TRootSource;
10
+ forwardProps: Partial<SelectProps>;
11
+ bindRef: (el: Element | null) => void;
12
+ state: import("@soxa-ui/setup").TInstanceState<object & import("@soxa-ui/core").ISelect<import("@soxa-ui/core").ISelectProps, import("@soxa-ui/core").TSelectEvents>> & import("@soxa-ui/setup").TInstanceState<object & {} & {} & {} & {
13
+ aria_label?: string | undefined;
14
+ aria_labelledBy?: string | undefined;
15
+ aria_describedBy?: string | undefined;
16
+ } & {
17
+ id?: string | undefined;
18
+ } & {} & {} & {} & {} & {} & {} & {
19
+ dismiss_enabled?: boolean | undefined;
20
+ } & {} & {} & {} & {} & {}> & import("@soxa-ui/setup").TInstanceState<object & {} & {} & {} & {} & {} & {} & {} & {} & {} & {} & {} & {
21
+ readonly dismiss_ownerAttribute: Record<string, string>;
22
+ } & {} & {
23
+ readonly keyboard_highlightedUid: string | number | null;
24
+ } & {
25
+ readonly editable_query: string;
26
+ } & {} & {}> & import("@soxa-ui/setup").TInstanceState<object & import("@soxa-ui/core").TSelectCollectionFacade> & object;
27
+ };
@@ -0,0 +1,30 @@
1
+ "use client";
2
+ import { useAdapter, useCollectionAdapter } from "../../adapter/runtime/useAdapter.js";
3
+ import { useAdapterContext } from "../../adapter/runtime/useAdapterContext.js";
4
+ import { useRootElement } from "../../adapter/runtime/useRootElement.js";
5
+ import { SelectCollectionDescriptor, SelectDescriptor, TCollectionExtension, TFieldControlExtension, TVirtualCollectionExtension } from "@soxa-ui/setup";
6
+ //#region src/components/select/setup.component.ts
7
+ function useSetupSelect(props) {
8
+ const { contexts: [adapter, collectionAdapter], layer } = useAdapterContext((create, elevator) => {
9
+ const adapter = create(SelectDescriptor(), {
10
+ ctrl: props.ctrl,
11
+ props
12
+ }).use(TFieldControlExtension, { elevator });
13
+ return [adapter, create(SelectCollectionDescriptor(), {
14
+ props,
15
+ options: {
16
+ owner: adapter.instance,
17
+ engine: props.engine
18
+ }
19
+ }, { bundle: adapter.bundle }).use(TCollectionExtension, { elevator }).use(TVirtualCollectionExtension, { elevator })];
20
+ });
21
+ const binding = useCollectionAdapter(useAdapter(adapter, props), collectionAdapter, props);
22
+ return {
23
+ ...binding,
24
+ rootElement: useRootElement(binding.root),
25
+ field: adapter.instance.field,
26
+ layer
27
+ };
28
+ }
29
+ //#endregion
30
+ export { useSetupSelect };
@@ -0,0 +1,4 @@
1
+ import type { ReactElement } from 'react';
2
+ import type { SkeletonProps } from './base.component';
3
+ /** Skeleton — заглушка поверх будущего содержимого; корень с содержимым есть всегда. */
4
+ export declare function Skeleton(props: SkeletonProps): ReactElement;
@@ -0,0 +1,23 @@
1
+ "use client";
2
+ import { toRootProps } from "../../adapter/common/root.js";
3
+ import { renderSlot } from "../../adapter/common/slots.js";
4
+ import { useSetupSkeleton } from "./setup.component.js";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
6
+ //#region src/components/skeleton/Skeleton.tsx
7
+ /** Skeleton — заглушка поверх будущего содержимого; корень с содержимым есть всегда. */
8
+ function Skeleton(props) {
9
+ const { ref, forwardProps, state } = useSetupSkeleton(props);
10
+ const { tag, classes, layout_styles, present, aria, attrs } = state;
11
+ return /* @__PURE__ */ jsxs(tag, {
12
+ ...toRootProps(ref, {
13
+ classes,
14
+ layout_styles
15
+ }, [attrs, aria], forwardProps),
16
+ children: [present ? /* @__PURE__ */ jsx("div", {
17
+ className: "so-skeleton__placeholder",
18
+ "aria-hidden": "true"
19
+ }) : null, renderSlot(props.children)]
20
+ });
21
+ }
22
+ //#endregion
23
+ export { Skeleton };
@@ -0,0 +1,5 @@
1
+ import type { ISkeleton } from '@soxa-ui/core';
2
+ import type { SkeletonDescriptor } from '@soxa-ui/setup';
3
+ import type { EventProps, UseDomProps } from '../../types';
4
+ export type SkeletonEventProps = EventProps<typeof SkeletonDescriptor>;
5
+ export type SkeletonProps = UseDomProps<typeof SkeletonDescriptor, ISkeleton, SkeletonEventProps>;
@@ -0,0 +1,2 @@
1
+ export * from './base.component';
2
+ export { Skeleton } from './Skeleton';
@@ -0,0 +1,11 @@
1
+ import type { SkeletonProps } from './base.component';
2
+ export declare function useSetupSkeleton(props: SkeletonProps): import("../../adapter").TComponentBinding<import("@soxa-ui/setup").TContextContract<import("@soxa-ui/core").ISkeleton, {
3
+ props: object & {} & {} & {};
4
+ events: object & {
5
+ "element:removed": () => void;
6
+ "element:ready": (element: Element) => void;
7
+ } & {} & {};
8
+ outputs: object & {} & {} & {
9
+ readonly layout_styles: Record<string, string | number>;
10
+ };
11
+ }>, SkeletonProps>;
@@ -0,0 +1,12 @@
1
+ "use client";
2
+ import { useComponent } from "../../adapter/runtime/useComponent.js";
3
+ import { SkeletonDescriptor } from "@soxa-ui/setup";
4
+ //#region src/components/skeleton/setup.component.ts
5
+ function useSetupSkeleton(props) {
6
+ return useComponent((create) => create(SkeletonDescriptor(), {
7
+ ctrl: props.ctrl,
8
+ props
9
+ }), props);
10
+ }
11
+ //#endregion
12
+ export { useSetupSkeleton };
@@ -0,0 +1,4 @@
1
+ import type { ReactElement } from 'react';
2
+ import type { SliderProps } from './base.component';
3
+ /** Slider — ползунок, ручек одна или несколько: docs/agents/patterns.md, «Готовые паттерны». */
4
+ export declare function Slider(props: SliderProps): ReactElement | null;
@@ -0,0 +1,72 @@
1
+ "use client";
2
+ import { toAriaProps } from "../../adapter/common/aria.js";
3
+ import { toReactStyle, toRootProps } from "../../adapter/common/root.js";
4
+ import { renderSlot } from "../../adapter/common/slots.js";
5
+ import { NativeInput } from "../../adapter/runtime/NativeInput.js";
6
+ import { elevated } from "../../adapter/elevator/Elevate.js";
7
+ import { useSetupSlider } from "./setup.component.js";
8
+ import { jsx, jsxs } from "react/jsx-runtime";
9
+ //#region src/components/slider/Slider.tsx
10
+ /** Slider — ползунок, ручек одна или несколько: docs/agents/patterns.md, «Готовые паттерны». */
11
+ function Slider(props) {
12
+ const { ref, forwardProps, state, layer } = useSetupSlider(props);
13
+ const { rendered, tag, attrs, rootAria, dataset, name, disabled, thumbs, shownMarks, rangeStyle, tooltipRendered } = state;
14
+ if (!rendered) return null;
15
+ return /* @__PURE__ */ jsx(tag, {
16
+ ...toRootProps(ref, state, [
17
+ attrs,
18
+ rootAria,
19
+ dataset
20
+ ], forwardProps),
21
+ children: /* @__PURE__ */ jsxs("span", {
22
+ className: "so-slider__track",
23
+ children: [
24
+ /* @__PURE__ */ jsx("span", {
25
+ className: "so-slider__range",
26
+ style: toReactStyle(rangeStyle)
27
+ }),
28
+ shownMarks && shownMarks.length > 0 ? /* @__PURE__ */ jsx("span", {
29
+ className: "so-slider__marks",
30
+ "aria-hidden": "true",
31
+ children: shownMarks.map((mark, index) => /* @__PURE__ */ jsx("span", {
32
+ className: "so-slider__mark",
33
+ style: toReactStyle(mark.style),
34
+ ...toAriaProps(mark.dataset),
35
+ children: /* @__PURE__ */ jsx("span", {
36
+ className: "so-slider__mark-label",
37
+ children: elevated(layer, renderSlot(props.mark, {
38
+ value: mark.value,
39
+ label: mark.label
40
+ })) ?? mark.label
41
+ })
42
+ }, index))
43
+ }) : null,
44
+ thumbs?.map((thumb, index) => /* @__PURE__ */ jsxs("span", {
45
+ className: "so-slider__thumb",
46
+ style: toReactStyle(thumb.style),
47
+ ...toAriaProps(thumb.dataset),
48
+ children: [/* @__PURE__ */ jsx(NativeInput, {
49
+ className: "so-slider__input",
50
+ type: "range",
51
+ min: thumb.min,
52
+ max: thumb.max,
53
+ step: thumb.step,
54
+ name,
55
+ disabled,
56
+ ...toAriaProps(thumb.aria),
57
+ live: { value: thumb.value }
58
+ }), tooltipRendered ? /* @__PURE__ */ jsx("span", {
59
+ className: "so-slider__tooltip",
60
+ "aria-hidden": "true",
61
+ children: elevated(layer, renderSlot(props.thumb, {
62
+ value: thumb.value,
63
+ index
64
+ })) ?? thumb.value
65
+ }) : null]
66
+ }, index))
67
+ ]
68
+ })
69
+ });
70
+ }
71
+ //#endregion
72
+ export { Slider };
@@ -0,0 +1,6 @@
1
+ import type { ISlider } from '@soxa-ui/core';
2
+ import type { SliderDescriptor } from '@soxa-ui/setup';
3
+ import type { EventProps, UseDomProps } from '../../types';
4
+ export type SliderEventProps = EventProps<typeof SliderDescriptor>;
5
+ /** Пропсы Slider: атрибуты — корню целиком, полей столько, сколько ручек. */
6
+ export type SliderProps = UseDomProps<typeof SliderDescriptor, ISlider, SliderEventProps>;
@@ -0,0 +1,2 @@
1
+ export * from './base.component';
2
+ export { Slider } from './Slider';
@@ -0,0 +1,23 @@
1
+ import type { SliderProps } from './base.component';
2
+ /** Поле формы `Field` над ползунком: ошибку и ссылки на части ползунок берёт от него лифтом. */
3
+ export declare function useSetupSlider(props: SliderProps): import("../../adapter").TComponentBinding<import("@soxa-ui/setup").TContextContract<import("@soxa-ui/core").ISlider, {
4
+ props: object & {} & {} & {} & {
5
+ aria_label?: string | undefined;
6
+ aria_labelledBy?: string | undefined;
7
+ aria_describedBy?: string | undefined;
8
+ } & {} & {} & {};
9
+ events: object & {
10
+ "element:removed": () => void;
11
+ "element:ready": (element: Element) => void;
12
+ } & {} & {
13
+ "aria:change:label": (payload: import("@soxa-ui/core").TValuePayload<string | undefined>) => void;
14
+ "aria:change:labelledBy": (payload: import("@soxa-ui/core").TValuePayload<string | undefined>) => void;
15
+ "aria:change:describedBy": (payload: import("@soxa-ui/core").TValuePayload<string | undefined>) => void;
16
+ } & {
17
+ "action:blur": (event: FocusEvent) => void;
18
+ "action:click": (event: MouseEvent) => void;
19
+ "action:focus": (event: FocusEvent) => void;
20
+ "action:press": (event: MouseEvent) => void;
21
+ } & {} & {};
22
+ outputs: object & {} & {} & {} & {} & {} & {} & {};
23
+ }>, SliderProps>;
@@ -0,0 +1,13 @@
1
+ "use client";
2
+ import { useComponent } from "../../adapter/runtime/useComponent.js";
3
+ import { SliderDescriptor, TFieldControlExtension } from "@soxa-ui/setup";
4
+ //#region src/components/slider/setup.component.ts
5
+ /** Поле формы `Field` над ползунком: ошибку и ссылки на части ползунок берёт от него лифтом. */
6
+ function useSetupSlider(props) {
7
+ return useComponent((create, elevator) => create(SliderDescriptor(), {
8
+ ctrl: props.ctrl,
9
+ props
10
+ }).use(TFieldControlExtension, { elevator }), props);
11
+ }
12
+ //#endregion
13
+ export { useSetupSlider };
@@ -0,0 +1,5 @@
1
+ import type { IStylable } from '@soxa-ui/core';
2
+ import type { StylableDescriptor } from '@soxa-ui/setup';
3
+ import type { EventProps, UseProps } from '../../types';
4
+ export type StylableEventProps = EventProps<typeof StylableDescriptor>;
5
+ export type StylableProps = UseProps<typeof StylableDescriptor, IStylable, StylableEventProps>;
@@ -0,0 +1 @@
1
+ export * from './base.component';
@@ -0,0 +1,9 @@
1
+ import type { StylableProps } from './base.component';
2
+ export declare function useSetupStylable(props: StylableProps): import("../../adapter").TComponentBinding<import("@soxa-ui/setup").TContextContract<import("@soxa-ui/core").IStylable<import("@soxa-ui/core").IStylableProps, import("@soxa-ui/core").TStylableEvents>, {
3
+ props: object & {} & {};
4
+ events: object & {
5
+ "element:removed": () => void;
6
+ "element:ready": (element: Element) => void;
7
+ } & {};
8
+ outputs: object & {} & {};
9
+ }>, StylableProps>;