@accelint/design-system 0.3.2 → 0.4.0

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 (498) hide show
  1. package/README.md +11 -7
  2. package/dist/chunk-PZ5AY32C.js +9 -0
  3. package/dist/chunk-PZ5AY32C.js.map +1 -0
  4. package/dist/components/aria/aria.d.ts +32 -0
  5. package/dist/components/aria/aria.js +39 -0
  6. package/dist/components/aria/aria.js.map +1 -0
  7. package/dist/components/aria/index.d.ts +3 -0
  8. package/dist/components/aria/index.js +4 -0
  9. package/dist/components/aria/index.js.map +1 -0
  10. package/dist/components/button/button.css.d.ts +41 -0
  11. package/dist/components/button/button.css.js +12 -0
  12. package/dist/components/button/button.css.js.map +1 -0
  13. package/dist/components/button/button.d.ts +47 -0
  14. package/dist/components/button/button.js +104 -0
  15. package/dist/components/button/button.js.map +1 -0
  16. package/dist/components/button/index.d.ts +8 -0
  17. package/dist/components/button/index.js +6 -0
  18. package/dist/components/button/index.js.map +1 -0
  19. package/dist/components/button/types.d.ts +32 -0
  20. package/dist/components/button/types.js +3 -0
  21. package/dist/components/button/types.js.map +1 -0
  22. package/dist/components/checkbox/checkbox.css.d.ts +44 -0
  23. package/dist/components/checkbox/checkbox.css.js +14 -0
  24. package/dist/components/checkbox/checkbox.css.js.map +1 -0
  25. package/dist/components/checkbox/checkbox.d.ts +30 -0
  26. package/dist/components/checkbox/checkbox.js +123 -0
  27. package/dist/components/checkbox/checkbox.js.map +1 -0
  28. package/dist/components/checkbox/index.d.ts +9 -0
  29. package/dist/components/checkbox/index.js +6 -0
  30. package/dist/components/checkbox/index.js.map +1 -0
  31. package/dist/components/checkbox/types.d.ts +41 -0
  32. package/dist/components/checkbox/types.js +3 -0
  33. package/dist/components/checkbox/types.js.map +1 -0
  34. package/dist/components/chip/chip.css.d.ts +41 -0
  35. package/dist/components/chip/chip.css.js +12 -0
  36. package/dist/components/chip/chip.css.js.map +1 -0
  37. package/dist/components/chip/chip.d.ts +41 -0
  38. package/dist/components/chip/chip.js +171 -0
  39. package/dist/components/chip/chip.js.map +1 -0
  40. package/dist/components/chip/index.d.ts +11 -0
  41. package/dist/components/chip/index.js +6 -0
  42. package/dist/components/chip/index.js.map +1 -0
  43. package/dist/components/chip/types.d.ts +37 -0
  44. package/dist/components/chip/types.js +3 -0
  45. package/dist/components/chip/types.js.map +1 -0
  46. package/dist/components/collection/collection.d.ts +17 -0
  47. package/dist/components/collection/collection.js +22 -0
  48. package/dist/components/collection/collection.js.map +1 -0
  49. package/dist/components/collection/index.d.ts +6 -0
  50. package/dist/components/collection/index.js +4 -0
  51. package/dist/components/collection/index.js.map +1 -0
  52. package/dist/components/combo-box/combo-box.css.d.ts +35 -0
  53. package/dist/components/combo-box/combo-box.css.js +12 -0
  54. package/dist/components/combo-box/combo-box.css.js.map +1 -0
  55. package/dist/components/combo-box/combo-box.d.ts +21 -0
  56. package/dist/components/combo-box/combo-box.js +116 -0
  57. package/dist/components/combo-box/combo-box.js.map +1 -0
  58. package/dist/components/combo-box/index.d.ts +13 -0
  59. package/dist/components/combo-box/index.js +6 -0
  60. package/dist/components/combo-box/index.js.map +1 -0
  61. package/dist/components/combo-box/types.d.ts +38 -0
  62. package/dist/components/combo-box/types.js +3 -0
  63. package/dist/components/combo-box/types.js.map +1 -0
  64. package/dist/components/dialog/dialog.css.d.ts +45 -0
  65. package/dist/components/dialog/dialog.css.js +12 -0
  66. package/dist/components/dialog/dialog.css.js.map +1 -0
  67. package/dist/components/dialog/dialog.d.ts +29 -0
  68. package/dist/components/dialog/dialog.js +186 -0
  69. package/dist/components/dialog/dialog.js.map +1 -0
  70. package/dist/components/dialog/index.d.ts +11 -0
  71. package/dist/components/dialog/index.js +6 -0
  72. package/dist/components/dialog/index.js.map +1 -0
  73. package/dist/components/dialog/types.d.ts +53 -0
  74. package/dist/components/dialog/types.js +3 -0
  75. package/dist/components/dialog/types.js.map +1 -0
  76. package/dist/components/drawer/drawer.css.d.ts +48 -0
  77. package/dist/components/drawer/drawer.css.js +14 -0
  78. package/dist/components/drawer/drawer.css.js.map +1 -0
  79. package/dist/components/drawer/drawer.d.ts +28 -0
  80. package/dist/components/drawer/drawer.js +304 -0
  81. package/dist/components/drawer/drawer.js.map +1 -0
  82. package/dist/components/drawer/index.d.ts +16 -0
  83. package/dist/components/drawer/index.js +6 -0
  84. package/dist/components/drawer/index.js.map +1 -0
  85. package/dist/components/drawer/types.d.ts +77 -0
  86. package/dist/components/drawer/types.js +3 -0
  87. package/dist/components/drawer/types.js.map +1 -0
  88. package/dist/components/element/element.d.ts +16 -0
  89. package/dist/components/element/element.js +24 -0
  90. package/dist/components/element/element.js.map +1 -0
  91. package/dist/components/element/index.d.ts +5 -0
  92. package/dist/components/element/index.js +5 -0
  93. package/dist/components/element/index.js.map +1 -0
  94. package/dist/components/element/types.d.ts +24 -0
  95. package/dist/components/element/types.js +3 -0
  96. package/dist/components/element/types.js.map +1 -0
  97. package/dist/components/group/group.css.d.ts +20 -0
  98. package/dist/components/group/group.css.js +11 -0
  99. package/dist/components/group/group.css.js.map +1 -0
  100. package/dist/components/group/group.d.ts +16 -0
  101. package/dist/components/group/group.js +61 -0
  102. package/dist/components/group/group.js.map +1 -0
  103. package/dist/components/group/index.d.ts +6 -0
  104. package/dist/components/group/index.js +6 -0
  105. package/dist/components/group/index.js.map +1 -0
  106. package/dist/components/group/types.d.ts +38 -0
  107. package/dist/components/group/types.js +3 -0
  108. package/dist/components/group/types.js.map +1 -0
  109. package/dist/components/icon/icon.css.d.ts +23 -0
  110. package/dist/components/icon/icon.css.js +12 -0
  111. package/dist/components/icon/icon.css.js.map +1 -0
  112. package/dist/components/icon/icon.d.ts +17 -0
  113. package/dist/components/icon/icon.js +39 -0
  114. package/dist/components/icon/icon.js.map +1 -0
  115. package/dist/components/icon/index.d.ts +5 -0
  116. package/dist/components/icon/index.js +6 -0
  117. package/dist/components/icon/index.js.map +1 -0
  118. package/dist/components/icon/types.d.ts +16 -0
  119. package/dist/components/icon/types.js +3 -0
  120. package/dist/components/icon/types.js.map +1 -0
  121. package/dist/components/index.d.ts +93 -0
  122. package/dist/components/index.js +31 -0
  123. package/dist/components/index.js.map +1 -0
  124. package/dist/components/input/index.d.ts +6 -0
  125. package/dist/components/input/index.js +6 -0
  126. package/dist/components/input/index.js.map +1 -0
  127. package/dist/components/input/input.css.d.ts +34 -0
  128. package/dist/components/input/input.css.js +12 -0
  129. package/dist/components/input/input.css.js.map +1 -0
  130. package/dist/components/input/input.d.ts +13 -0
  131. package/dist/components/input/input.js +141 -0
  132. package/dist/components/input/input.js.map +1 -0
  133. package/dist/components/input/types.d.ts +47 -0
  134. package/dist/components/input/types.js +3 -0
  135. package/dist/components/input/types.js.map +1 -0
  136. package/dist/components/menu/index.d.ts +8 -0
  137. package/dist/components/menu/index.js +6 -0
  138. package/dist/components/menu/index.js.map +1 -0
  139. package/dist/components/menu/menu.css.d.ts +83 -0
  140. package/dist/components/menu/menu.css.js +13 -0
  141. package/dist/components/menu/menu.css.js.map +1 -0
  142. package/dist/components/menu/menu.d.ts +32 -0
  143. package/dist/components/menu/menu.js +252 -0
  144. package/dist/components/menu/menu.js.map +1 -0
  145. package/dist/components/menu/types.d.ts +51 -0
  146. package/dist/components/menu/types.js +3 -0
  147. package/dist/components/menu/types.js.map +1 -0
  148. package/dist/components/merge-provider/index.d.ts +5 -0
  149. package/dist/components/merge-provider/index.js +5 -0
  150. package/dist/components/merge-provider/index.js.map +1 -0
  151. package/dist/components/merge-provider/merge-provider.d.ts +20 -0
  152. package/dist/components/merge-provider/merge-provider.js +46 -0
  153. package/dist/components/merge-provider/merge-provider.js.map +1 -0
  154. package/dist/components/merge-provider/types.d.ts +8 -0
  155. package/dist/components/merge-provider/types.js +3 -0
  156. package/dist/components/merge-provider/types.js.map +1 -0
  157. package/dist/components/number-field/index.d.ts +12 -0
  158. package/dist/components/number-field/index.js +5 -0
  159. package/dist/components/number-field/index.js.map +1 -0
  160. package/dist/components/number-field/number-field.css.d.ts +40 -0
  161. package/dist/components/number-field/number-field.css.js +12 -0
  162. package/dist/components/number-field/number-field.css.js.map +1 -0
  163. package/dist/components/number-field/number-field.d.ts +20 -0
  164. package/dist/components/number-field/number-field.js +125 -0
  165. package/dist/components/number-field/number-field.js.map +1 -0
  166. package/dist/components/number-field/types.d.ts +38 -0
  167. package/dist/components/number-field/types.js +3 -0
  168. package/dist/components/number-field/types.js.map +1 -0
  169. package/dist/components/options/index.d.ts +8 -0
  170. package/dist/components/options/index.js +6 -0
  171. package/dist/components/options/index.js.map +1 -0
  172. package/dist/components/options/options.css.d.ts +87 -0
  173. package/dist/components/options/options.css.js +14 -0
  174. package/dist/components/options/options.css.js.map +1 -0
  175. package/dist/components/options/options.d.ts +28 -0
  176. package/dist/components/options/options.js +253 -0
  177. package/dist/components/options/options.js.map +1 -0
  178. package/dist/components/options/types.d.ts +52 -0
  179. package/dist/components/options/types.js +3 -0
  180. package/dist/components/options/types.js.map +1 -0
  181. package/dist/components/picker/index.d.ts +6 -0
  182. package/dist/components/picker/index.js +6 -0
  183. package/dist/components/picker/index.js.map +1 -0
  184. package/dist/components/picker/picker.css.d.ts +37 -0
  185. package/dist/components/picker/picker.css.js +13 -0
  186. package/dist/components/picker/picker.css.js.map +1 -0
  187. package/dist/components/picker/picker.d.ts +24 -0
  188. package/dist/components/picker/picker.js +113 -0
  189. package/dist/components/picker/picker.js.map +1 -0
  190. package/dist/components/picker/picker.stories.css.d.ts +5 -0
  191. package/dist/components/picker/picker.stories.css.js +10 -0
  192. package/dist/components/picker/picker.stories.css.js.map +1 -0
  193. package/dist/components/picker/types.d.ts +30 -0
  194. package/dist/components/picker/types.js +3 -0
  195. package/dist/components/picker/types.js.map +1 -0
  196. package/dist/components/popover/index.d.ts +14 -0
  197. package/dist/components/popover/index.js +6 -0
  198. package/dist/components/popover/index.js.map +1 -0
  199. package/dist/components/popover/popover.css.d.ts +45 -0
  200. package/dist/components/popover/popover.css.js +12 -0
  201. package/dist/components/popover/popover.css.js.map +1 -0
  202. package/dist/components/popover/popover.d.ts +22 -0
  203. package/dist/components/popover/popover.js +139 -0
  204. package/dist/components/popover/popover.js.map +1 -0
  205. package/dist/components/popover/types.d.ts +39 -0
  206. package/dist/components/popover/types.js +3 -0
  207. package/dist/components/popover/types.js.map +1 -0
  208. package/dist/components/query-builder/action-element.d.ts +23 -0
  209. package/dist/components/query-builder/action-element.js +26 -0
  210. package/dist/components/query-builder/action-element.js.map +1 -0
  211. package/dist/components/query-builder/constants.d.ts +25 -0
  212. package/dist/components/query-builder/constants.js +25 -0
  213. package/dist/components/query-builder/constants.js.map +1 -0
  214. package/dist/components/query-builder/dataset-sample.d.ts +95 -0
  215. package/dist/components/query-builder/dataset-sample.js +288 -0
  216. package/dist/components/query-builder/dataset-sample.js.map +1 -0
  217. package/dist/components/query-builder/group.d.ts +9 -0
  218. package/dist/components/query-builder/group.js +396 -0
  219. package/dist/components/query-builder/group.js.map +1 -0
  220. package/dist/components/query-builder/index.d.ts +23 -0
  221. package/dist/components/query-builder/index.js +8 -0
  222. package/dist/components/query-builder/index.js.map +1 -0
  223. package/dist/components/query-builder/query-builder.css.d.ts +116 -0
  224. package/dist/components/query-builder/query-builder.css.js +14 -0
  225. package/dist/components/query-builder/query-builder.css.js.map +1 -0
  226. package/dist/components/query-builder/query-builder.d.ts +23 -0
  227. package/dist/components/query-builder/query-builder.js +196 -0
  228. package/dist/components/query-builder/query-builder.js.map +1 -0
  229. package/dist/components/query-builder/rule.d.ts +7 -0
  230. package/dist/components/query-builder/rule.js +401 -0
  231. package/dist/components/query-builder/rule.js.map +1 -0
  232. package/dist/components/query-builder/types.d.ts +146 -0
  233. package/dist/components/query-builder/types.js +3 -0
  234. package/dist/components/query-builder/types.js.map +1 -0
  235. package/dist/components/query-builder/utils.d.ts +32 -0
  236. package/dist/components/query-builder/utils.js +25 -0
  237. package/dist/components/query-builder/utils.js.map +1 -0
  238. package/dist/components/query-builder/value-editor.d.ts +24 -0
  239. package/dist/components/query-builder/value-editor.js +207 -0
  240. package/dist/components/query-builder/value-editor.js.map +1 -0
  241. package/dist/components/query-builder/value-selector.d.ts +6 -0
  242. package/dist/components/query-builder/value-selector.js +77 -0
  243. package/dist/components/query-builder/value-selector.js.map +1 -0
  244. package/dist/components/radio/index.d.ts +7 -0
  245. package/dist/components/radio/index.js +6 -0
  246. package/dist/components/radio/index.js.map +1 -0
  247. package/dist/components/radio/radio.css.d.ts +41 -0
  248. package/dist/components/radio/radio.css.js +14 -0
  249. package/dist/components/radio/radio.css.js.map +1 -0
  250. package/dist/components/radio/radio.d.ts +23 -0
  251. package/dist/components/radio/radio.js +114 -0
  252. package/dist/components/radio/radio.js.map +1 -0
  253. package/dist/components/radio/types.d.ts +32 -0
  254. package/dist/components/radio/types.js +3 -0
  255. package/dist/components/radio/types.js.map +1 -0
  256. package/dist/components/search-field/index.d.ts +12 -0
  257. package/dist/components/search-field/index.js +6 -0
  258. package/dist/components/search-field/index.js.map +1 -0
  259. package/dist/components/search-field/search-field.css.d.ts +28 -0
  260. package/dist/components/search-field/search-field.css.js +11 -0
  261. package/dist/components/search-field/search-field.css.js.map +1 -0
  262. package/dist/components/search-field/search-field.d.ts +21 -0
  263. package/dist/components/search-field/search-field.js +92 -0
  264. package/dist/components/search-field/search-field.js.map +1 -0
  265. package/dist/components/search-field/types.d.ts +34 -0
  266. package/dist/components/search-field/types.js +3 -0
  267. package/dist/components/search-field/types.js.map +1 -0
  268. package/dist/components/select/index.d.ts +12 -0
  269. package/dist/components/select/index.js +6 -0
  270. package/dist/components/select/index.js.map +1 -0
  271. package/dist/components/select/select.css.d.ts +37 -0
  272. package/dist/components/select/select.css.js +12 -0
  273. package/dist/components/select/select.css.js.map +1 -0
  274. package/dist/components/select/select.d.ts +20 -0
  275. package/dist/components/select/select.js +109 -0
  276. package/dist/components/select/select.js.map +1 -0
  277. package/dist/components/select/types.d.ts +36 -0
  278. package/dist/components/select/types.js +3 -0
  279. package/dist/components/select/types.js.map +1 -0
  280. package/dist/components/switch/index.d.ts +6 -0
  281. package/dist/components/switch/index.js +6 -0
  282. package/dist/components/switch/index.js.map +1 -0
  283. package/dist/components/switch/switch.css.d.ts +31 -0
  284. package/dist/components/switch/switch.css.js +12 -0
  285. package/dist/components/switch/switch.css.js.map +1 -0
  286. package/dist/components/switch/switch.d.ts +10 -0
  287. package/dist/components/switch/switch.js +60 -0
  288. package/dist/components/switch/switch.js.map +1 -0
  289. package/dist/components/switch/types.d.ts +21 -0
  290. package/dist/components/switch/types.js +3 -0
  291. package/dist/components/switch/types.js.map +1 -0
  292. package/dist/components/tabs/index.d.ts +8 -0
  293. package/dist/components/tabs/index.js +6 -0
  294. package/dist/components/tabs/index.js.map +1 -0
  295. package/dist/components/tabs/tabs.css.d.ts +57 -0
  296. package/dist/components/tabs/tabs.css.js +15 -0
  297. package/dist/components/tabs/tabs.css.js.map +1 -0
  298. package/dist/components/tabs/tabs.d.ts +75 -0
  299. package/dist/components/tabs/tabs.js +258 -0
  300. package/dist/components/tabs/tabs.js.map +1 -0
  301. package/dist/components/tabs/types.d.ts +84 -0
  302. package/dist/components/tabs/types.js +3 -0
  303. package/dist/components/tabs/types.js.map +1 -0
  304. package/dist/components/text-field/index.d.ts +9 -0
  305. package/dist/components/text-field/index.js +5 -0
  306. package/dist/components/text-field/index.js.map +1 -0
  307. package/dist/components/text-field/text-field.css.d.ts +28 -0
  308. package/dist/components/text-field/text-field.css.js +12 -0
  309. package/dist/components/text-field/text-field.css.js.map +1 -0
  310. package/dist/components/text-field/text-field.d.ts +62 -0
  311. package/dist/components/text-field/text-field.js +91 -0
  312. package/dist/components/text-field/text-field.js.map +1 -0
  313. package/dist/components/text-field/types.d.ts +28 -0
  314. package/dist/components/text-field/types.js +3 -0
  315. package/dist/components/text-field/types.js.map +1 -0
  316. package/dist/components/textarea/index.d.ts +6 -0
  317. package/dist/components/textarea/index.js +6 -0
  318. package/dist/components/textarea/index.js.map +1 -0
  319. package/dist/components/textarea/textarea.css.d.ts +37 -0
  320. package/dist/components/textarea/textarea.css.js +12 -0
  321. package/dist/components/textarea/textarea.css.js.map +1 -0
  322. package/dist/components/textarea/textarea.d.ts +19 -0
  323. package/dist/components/textarea/textarea.js +134 -0
  324. package/dist/components/textarea/textarea.js.map +1 -0
  325. package/dist/components/textarea/types.d.ts +42 -0
  326. package/dist/components/textarea/types.js +3 -0
  327. package/dist/components/textarea/types.js.map +1 -0
  328. package/dist/components/tooltip/index.d.ts +7 -0
  329. package/dist/components/tooltip/index.js +6 -0
  330. package/dist/components/tooltip/index.js.map +1 -0
  331. package/dist/components/tooltip/tooltip.css.d.ts +30 -0
  332. package/dist/components/tooltip/tooltip.css.js +12 -0
  333. package/dist/components/tooltip/tooltip.css.js.map +1 -0
  334. package/dist/components/tooltip/tooltip.d.ts +30 -0
  335. package/dist/components/tooltip/tooltip.js +112 -0
  336. package/dist/components/tooltip/tooltip.js.map +1 -0
  337. package/dist/components/tooltip/types.d.ts +41 -0
  338. package/dist/components/tooltip/types.js +3 -0
  339. package/dist/components/tooltip/types.js.map +1 -0
  340. package/dist/components/tree/index.d.ts +17 -0
  341. package/dist/components/tree/index.js +6 -0
  342. package/dist/components/tree/index.js.map +1 -0
  343. package/dist/components/tree/tree.css.d.ts +89 -0
  344. package/dist/components/tree/tree.css.js +15 -0
  345. package/dist/components/tree/tree.css.js.map +1 -0
  346. package/dist/components/tree/tree.d.ts +29 -0
  347. package/dist/components/tree/tree.js +488 -0
  348. package/dist/components/tree/tree.js.map +1 -0
  349. package/dist/components/tree/types.d.ts +121 -0
  350. package/dist/components/tree/types.js +3 -0
  351. package/dist/components/tree/types.js.map +1 -0
  352. package/dist/components/tree/utils.d.ts +12 -0
  353. package/dist/components/tree/utils.js +89 -0
  354. package/dist/components/tree/utils.js.map +1 -0
  355. package/dist/hooks/index.d.ts +52 -0
  356. package/dist/hooks/index.js +11 -0
  357. package/dist/hooks/index.js.map +1 -0
  358. package/dist/hooks/use-collection-render/index.d.ts +3 -0
  359. package/dist/hooks/use-collection-render/index.js +4 -0
  360. package/dist/hooks/use-collection-render/index.js.map +1 -0
  361. package/dist/hooks/use-collection-render/use-collection-render.d.ts +11 -0
  362. package/dist/hooks/use-collection-render/use-collection-render.js +27 -0
  363. package/dist/hooks/use-collection-render/use-collection-render.js.map +1 -0
  364. package/dist/hooks/use-context-props/index.d.ts +3 -0
  365. package/dist/hooks/use-context-props/index.js +4 -0
  366. package/dist/hooks/use-context-props/index.js.map +1 -0
  367. package/dist/hooks/use-context-props/use-context-props.d.ts +10 -0
  368. package/dist/hooks/use-context-props/use-context-props.js +18 -0
  369. package/dist/hooks/use-context-props/use-context-props.js.map +1 -0
  370. package/dist/hooks/use-defaults/index.d.ts +37 -0
  371. package/dist/hooks/use-defaults/index.js +5 -0
  372. package/dist/hooks/use-defaults/index.js.map +1 -0
  373. package/dist/hooks/use-defaults/types.d.ts +83 -0
  374. package/dist/hooks/use-defaults/types.js +3 -0
  375. package/dist/hooks/use-defaults/types.js.map +1 -0
  376. package/dist/hooks/use-defaults/use-defaults.d.ts +96 -0
  377. package/dist/hooks/use-defaults/use-defaults.js +36 -0
  378. package/dist/hooks/use-defaults/use-defaults.js.map +1 -0
  379. package/dist/hooks/use-propagating-press/index.d.ts +2 -0
  380. package/dist/hooks/use-propagating-press/index.js +4 -0
  381. package/dist/hooks/use-propagating-press/index.js.map +1 -0
  382. package/dist/hooks/use-propagating-press/use-propagating-press.d.ts +13 -0
  383. package/dist/hooks/use-propagating-press/use-propagating-press.js +21 -0
  384. package/dist/hooks/use-propagating-press/use-propagating-press.js.map +1 -0
  385. package/dist/hooks/use-slot/index.d.ts +2 -0
  386. package/dist/hooks/use-slot/index.js +4 -0
  387. package/dist/hooks/use-slot/index.js.map +1 -0
  388. package/dist/hooks/use-slot/use-slot.d.ts +16 -0
  389. package/dist/hooks/use-slot/use-slot.js +21 -0
  390. package/dist/hooks/use-slot/use-slot.js.map +1 -0
  391. package/dist/hooks/use-theme/index.d.ts +43 -0
  392. package/dist/hooks/use-theme/index.js +5 -0
  393. package/dist/hooks/use-theme/index.js.map +1 -0
  394. package/dist/hooks/use-theme/types.d.ts +104 -0
  395. package/dist/hooks/use-theme/types.js +3 -0
  396. package/dist/hooks/use-theme/types.js.map +1 -0
  397. package/dist/hooks/use-theme/use-theme.css.d.ts +3 -0
  398. package/dist/hooks/use-theme/use-theme.css.js +8 -0
  399. package/dist/hooks/use-theme/use-theme.css.js.map +1 -0
  400. package/dist/hooks/use-theme/use-theme.d.ts +55 -0
  401. package/dist/hooks/use-theme/use-theme.js +108 -0
  402. package/dist/hooks/use-theme/use-theme.js.map +1 -0
  403. package/dist/hooks/use-tree/index.d.ts +4 -0
  404. package/dist/hooks/use-tree/index.js +4 -0
  405. package/dist/hooks/use-tree/index.js.map +1 -0
  406. package/dist/hooks/use-tree/use-tree.d.ts +7 -0
  407. package/dist/hooks/use-tree/use-tree.js +257 -0
  408. package/dist/hooks/use-tree/use-tree.js.map +1 -0
  409. package/dist/hooks/use-tree/utils.d.ts +10 -0
  410. package/dist/hooks/use-tree/utils.js +84 -0
  411. package/dist/hooks/use-tree/utils.js.map +1 -0
  412. package/dist/hooks/use-update-effect/index.d.ts +1 -0
  413. package/dist/hooks/use-update-effect/index.js +4 -0
  414. package/dist/hooks/use-update-effect/index.js.map +1 -0
  415. package/dist/hooks/use-update-effect/use-update-effect.d.ts +3 -0
  416. package/dist/hooks/use-update-effect/use-update-effect.js +23 -0
  417. package/dist/hooks/use-update-effect/use-update-effect.js.map +1 -0
  418. package/dist/index.css +90 -53
  419. package/dist/index.d.ts +113 -757
  420. package/dist/index.js +5 -5278
  421. package/dist/index.js.map +1 -1
  422. package/dist/ladle/actions.d.ts +3 -0
  423. package/dist/ladle/actions.js +26 -0
  424. package/dist/ladle/actions.js.map +1 -0
  425. package/dist/ladle/index.d.ts +1 -0
  426. package/dist/ladle/index.js +4 -0
  427. package/dist/ladle/index.js.map +1 -0
  428. package/dist/styles/index.d.ts +6 -0
  429. package/dist/styles/index.js +9 -0
  430. package/dist/styles/index.js.map +1 -0
  431. package/dist/styles/layers.css.d.ts +18 -0
  432. package/dist/styles/layers.css.js +8 -0
  433. package/dist/styles/layers.css.js.map +1 -0
  434. package/dist/styles/reset.css.d.ts +2 -0
  435. package/dist/styles/reset.css.js +3 -0
  436. package/dist/styles/reset.css.js.map +1 -0
  437. package/dist/styles/space.css.d.ts +2 -0
  438. package/dist/styles/space.css.js +3 -0
  439. package/dist/styles/space.css.js.map +1 -0
  440. package/dist/styles/surfaces.css.d.ts +6 -0
  441. package/dist/styles/surfaces.css.js +8 -0
  442. package/dist/styles/surfaces.css.js.map +1 -0
  443. package/dist/styles/theme.css.d.ts +337 -0
  444. package/dist/styles/theme.css.js +35 -0
  445. package/dist/styles/theme.css.js.map +1 -0
  446. package/dist/styles/typography.css.d.ts +21 -0
  447. package/dist/styles/typography.css.js +12 -0
  448. package/dist/styles/typography.css.js.map +1 -0
  449. package/dist/test/setup.d.ts +2 -0
  450. package/dist/test/setup.js +6879 -0
  451. package/dist/test/setup.js.map +1 -0
  452. package/dist/types/deckgl.d.ts +3 -0
  453. package/dist/types/deckgl.js +3 -0
  454. package/dist/types/deckgl.js.map +1 -0
  455. package/dist/types/generic.d.ts +5 -0
  456. package/dist/types/generic.js +3 -0
  457. package/dist/types/generic.js.map +1 -0
  458. package/dist/types/index.d.ts +10 -0
  459. package/dist/types/index.js +3 -0
  460. package/dist/types/index.js.map +1 -0
  461. package/dist/types/props.d.ts +6 -0
  462. package/dist/types/props.js +3 -0
  463. package/dist/types/props.js.map +1 -0
  464. package/dist/types/react-aria.d.ts +94 -0
  465. package/dist/types/react-aria.js +3 -0
  466. package/dist/types/react-aria.js.map +1 -0
  467. package/dist/types/react.d.d.ts +6 -0
  468. package/dist/types/react.d.js +3 -0
  469. package/dist/types/react.d.js.map +1 -0
  470. package/dist/types/use-tree.d.ts +55 -0
  471. package/dist/types/use-tree.js +3 -0
  472. package/dist/types/use-tree.js.map +1 -0
  473. package/dist/types/vanilla-extract.d.ts +18 -0
  474. package/dist/types/vanilla-extract.js +3 -0
  475. package/dist/types/vanilla-extract.js.map +1 -0
  476. package/dist/utils/css.d.ts +142 -0
  477. package/dist/utils/css.js +165 -0
  478. package/dist/utils/css.js.map +1 -0
  479. package/dist/utils/events.d.ts +11 -0
  480. package/dist/utils/events.js +10 -0
  481. package/dist/utils/events.js.map +1 -0
  482. package/dist/utils/index.d.ts +10 -0
  483. package/dist/utils/index.js +7 -0
  484. package/dist/utils/index.js.map +1 -0
  485. package/dist/utils/props.d.ts +32 -0
  486. package/dist/utils/props.js +145 -0
  487. package/dist/utils/props.js.map +1 -0
  488. package/dist/utils/validators.d.ts +52 -0
  489. package/dist/utils/validators.js +42 -0
  490. package/dist/utils/validators.js.map +1 -0
  491. package/dist/vanilla.d.ts +66 -5
  492. package/dist/vanilla.js +27 -1
  493. package/dist/vanilla.js.map +1 -1
  494. package/package.json +30 -21
  495. package/dist/chunk-4ZUGQMUD.js +0 -419
  496. package/dist/chunk-4ZUGQMUD.js.map +0 -1
  497. package/dist/index.css.map +0 -1
  498. package/dist/vanilla-Ibcop5d3.d.ts +0 -2627
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/tree/tree.tsx"],"names":["RACButtonContext"],"mappings":"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","file":"tree.js","sourcesContent":["import { noop } from '@accelint/core';\nimport { usePress } from '@react-aria/interactions';\nimport type { Key } from '@react-types/shared';\nimport { createContext, useCallback, useContext, useMemo } from 'react';\nimport {\n DEFAULT_SLOT,\n DropIndicator,\n GridList,\n GridListItem,\n Provider,\n ButtonContext as RACButtonContext,\n useDragAndDrop,\n type ContextValue,\n type DropTarget,\n type GridListItemRenderProps,\n type GridListRenderProps,\n type ButtonProps as RACButtonProps,\n type TextProps,\n} from 'react-aria-components';\nimport { useDefaultProps, useTheme, useTree } from '../../hooks';\nimport { bodies } from '../../styles';\nimport { callRenderProps, inlineVars, mergeClassNames } from '../../utils';\nimport { AriaTextContext } from '../aria';\nimport {\n Button,\n ButtonContext,\n ToggleButtonContext,\n type ButtonProps,\n type ToggleButtonProps,\n} from '../button';\nimport { CheckboxContext, type CheckboxProps } from '../checkbox';\nimport { GroupContext, type GroupProps } from '../group';\nimport { Icon } from '../icon';\nimport { MergeProvider } from '../merge-provider';\nimport {\n treeClassNames,\n treeGroupStateVars,\n treeIndicatorStateVars,\n treeItemStateVars,\n treeStateVars,\n} from './tree.css';\nimport type {\n TreeGroupProps,\n TreeIndicatorRenderProps,\n TreeItemProps,\n TreeMapping,\n TreeProps,\n TreeStateContextValue,\n} from './types';\nimport { createDragAndDropHandlers } from './utils';\n\nconst emptyTree = {\n key: '',\n parentKey: '',\n children: [],\n value: { id: '', label: '' },\n};\n\nconst defaultMapping: TreeMapping = {\n actions: {\n sm: {},\n lg: {},\n },\n button: {\n sm: { size: 'sm', variant: 'icon' },\n lg: { size: 'md', variant: 'icon' },\n },\n description: {\n sm: bodies.sm,\n lg: bodies.md,\n },\n drag: {\n sm: {},\n lg: {},\n },\n expansion: {\n sm: {},\n lg: {},\n },\n visibility: {\n sm: {},\n lg: {},\n },\n};\n\nconst defaultSize = 'lg';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const TreeStateContext = createContext<TreeStateContextValue<any>>({\n allowsDragging: true,\n allowsExpansion: true,\n allowsVisibility: false,\n lookup: {},\n selectedKeys: new Set(),\n selectionMode: 'none',\n tree: emptyTree,\n actions: {\n append: noop,\n getItem: () => emptyTree,\n insert: noop,\n insertAfter: noop,\n insertBefore: noop,\n move: noop,\n prepend: noop,\n remove: noop,\n removeSelectedItems: noop,\n revertIsExpanded: noop,\n setSelectedKeys: noop,\n toggleIsExpanded: noop,\n toggleIsSelected: noop,\n toggleIsViewable: noop,\n update: noop,\n },\n});\n\nfunction defaultRenderEmptyState({ isDropTarget }: GridListRenderProps) {\n return isDropTarget ? 'Add to this group' : 'Nothing to see here';\n}\n\n/**\n * By default Tree only works as an uncontrolled input. However, if you need to use the Tree\n * as a controlled input (passing state changes to the \"nodes\" props), you will need to add a\n * \"key\" prop that is a hash of the \"nodes\" prop to trigger a rerender of the component and\n * abandon it's previous state. Unfortunately, the underlying hooks don't provide a good way\n * to update the internal state of the Tree onces it's been initialized.\n */\nexport function Tree<T>(props: TreeProps<T>) {\n props = useDefaultProps(props as TreeProps<unknown>, 'Tree') as TreeProps<T>;\n\n const {\n children: childrenProp,\n allowsDragging = false,\n allowsExpansion = true,\n allowsVisibility = false,\n classNames: classNamesProps,\n disabledBehavior = 'all',\n keyboardNavigationBehavior = 'arrow',\n mapping: mappingProp,\n nodes,\n provider,\n renderDragPreview,\n renderEmptyState: renderEmptyStateProp = defaultRenderEmptyState,\n selectionBehavior = 'replace',\n selectionMode = 'none',\n showTreeLines = true,\n size = defaultSize,\n onAction,\n onScroll,\n onSelectionChange,\n onUpdate,\n ...rest\n } = props;\n\n const state = useTree({\n allowsExpansion,\n allowsVisibility,\n nodes,\n selectionMode,\n onSelectionChange,\n onUpdate,\n });\n\n const theme = useTheme();\n\n const mapping = useMemo(\n () => ({\n ...defaultMapping,\n ...mappingProp,\n }),\n [mappingProp],\n );\n\n const classNames = useMemo(\n () =>\n mergeClassNames(treeClassNames, theme.Tree, classNamesProps, {\n item: {\n description: mapping.description[size],\n },\n }) ?? {},\n [theme.Tree, classNamesProps, mapping, size],\n );\n\n const renderEmptyState = useCallback(\n (renderProps: GridListRenderProps) => (\n <div className={classNames?.empty}>\n {renderEmptyStateProp(renderProps)}\n </div>\n ),\n [classNames?.empty, renderEmptyStateProp],\n );\n\n const context = useMemo<\n [[typeof TreeStateContext, TreeStateContextValue<T>]]\n >(\n () => [\n [\n TreeStateContext,\n {\n ...state,\n allowsDragging,\n classNames,\n disabledBehavior,\n keyboardNavigationBehavior,\n renderDragPreview,\n renderEmptyState,\n selectionBehavior,\n selectionMode,\n showTreeLines,\n size,\n onAction,\n onScroll,\n },\n ],\n ],\n [\n state,\n allowsDragging,\n classNames,\n disabledBehavior,\n keyboardNavigationBehavior,\n renderDragPreview,\n renderEmptyState,\n selectionBehavior,\n selectionMode,\n showTreeLines,\n size,\n onAction,\n onScroll,\n ],\n );\n\n const style = useMemo(\n () =>\n inlineVars(treeStateVars, {\n allowsDragging,\n allowsExpansion: state.allowsExpansion,\n allowsVisibility: state.allowsVisibility,\n showTreeLines,\n size,\n }),\n [\n allowsDragging,\n state.allowsExpansion,\n state.allowsVisibility,\n showTreeLines,\n size,\n ],\n );\n\n const children = useMemo(() => {\n const treeGroupProps = {\n ...rest,\n id: state.tree.key,\n nodes: state.tree.children,\n };\n\n return provider ? (\n callRenderProps(childrenProp, { ...state, treeGroupProps })\n ) : (\n <TreeGroup {...treeGroupProps}>{childrenProp}</TreeGroup>\n );\n }, [rest, provider, childrenProp, state]);\n\n return (\n <Provider values={context}>\n <div className={classNames?.tree?.container} style={style}>\n <div className={classNames?.tree?.tree}>{children}</div>\n </div>\n </Provider>\n );\n}\n\nexport function TreeGroup<T>({\n id,\n children,\n nodes,\n types = ['all'],\n ...rest\n}: TreeGroupProps<T>) {\n const {\n actions,\n allowsDragging,\n classNames,\n disabledBehavior,\n keyboardNavigationBehavior,\n lookup,\n renderDragPreview,\n renderEmptyState,\n selectedKeys,\n selectionBehavior,\n selectionMode,\n onAction,\n onScroll,\n } = useContext(TreeStateContext);\n\n const acceptedDragTypes = useMemo(\n () => types.map((type) => `tree-${type}`),\n [types],\n );\n\n // This function cannot be treated as a component and will throw errors if implemented as one (with hooks)\n const renderDropIndicator = useCallback(\n (target: DropTarget) => (\n <DropIndicator\n className={classNames?.indicator?.container}\n // eslint-disable-next-line react-perf/jsx-no-new-function-as-prop, react/jsx-no-bind\n style={(renderProps: TreeIndicatorRenderProps) =>\n inlineVars(treeIndicatorStateVars, {\n ...renderProps,\n dropPosition:\n 'dropPosition' in target ? target.dropPosition : 'root',\n })\n }\n target={target}\n >\n <div className={classNames?.indicator?.indicator} />\n </DropIndicator>\n ),\n [classNames?.indicator?.container, classNames?.indicator?.indicator],\n );\n\n const { dragAndDropHooks } = useDragAndDrop({\n isDisabled: !allowsDragging,\n renderDragPreview,\n renderDropIndicator,\n ...createDragAndDropHandlers(id, acceptedDragTypes, lookup, actions),\n });\n\n const style = useCallback(\n (renderProps: GridListRenderProps) =>\n inlineVars(treeGroupStateVars, { ...renderProps, count: nodes.length }),\n [nodes.length],\n );\n\n const indices = useMemo(\n () =>\n nodes.reduce<Record<Key, number>>((acc, node, index) => {\n acc[node.key] = index;\n\n return acc;\n }, {}),\n [nodes],\n );\n\n return (\n <GridList\n {...rest}\n className={classNames?.group}\n disabledBehavior={disabledBehavior}\n dragAndDropHooks={dragAndDropHooks}\n items={nodes}\n keyboardNavigationBehavior={keyboardNavigationBehavior}\n renderEmptyState={renderEmptyState}\n selectedKeys={selectedKeys}\n selectionBehavior={selectionBehavior}\n selectionMode={selectionMode}\n style={style}\n onAction={onAction}\n onScroll={onScroll}\n >\n {(item) => (\n <TreeItem\n index={indices[item.key] ?? -1}\n node={item}\n isFirstChild={indices[item.key] === 0}\n isLastChild={indices[item.key] === nodes.length - 1}\n >\n {children}\n </TreeItem>\n )}\n </GridList>\n );\n}\n\ntype TreeItemContexts = [\n [\n typeof ToggleButtonContext,\n ContextValue<ToggleButtonProps, HTMLButtonElement>,\n ],\n [typeof AriaTextContext, ContextValue<TextProps, HTMLSpanElement>],\n [\n typeof GroupContext,\n ContextValue<GroupProps<ButtonProps, HTMLButtonElement>, HTMLDivElement>,\n ],\n [typeof CheckboxContext, ContextValue<CheckboxProps, HTMLLabelElement>],\n [typeof ButtonContext, ContextValue<ButtonProps, HTMLButtonElement>],\n [typeof RACButtonContext, ContextValue<RACButtonProps, HTMLButtonElement>],\n];\n\nconst contextBlocker: TreeItemContexts = [\n [ToggleButtonContext, null],\n [AriaTextContext, null],\n [GroupContext, null],\n [CheckboxContext, null],\n [ButtonContext, null],\n [RACButtonContext, null],\n];\n\nexport function TreeItem<T>({\n children: childrenProp,\n index,\n mapping: mappingProp,\n node,\n isFirstChild,\n isLastChild,\n ...rest\n}: TreeItemProps<T>) {\n const {\n actions,\n allowsExpansion,\n classNames,\n size: sizeProp,\n } = useContext(TreeStateContext);\n\n const mapping = useMemo(\n () => ({\n ...defaultMapping,\n ...mappingProp,\n }),\n [mappingProp],\n );\n\n const selection = useMemo(() => new Set([node.key]), [node.key]);\n\n const handleToggleExpansion = useCallback(\n () => actions.toggleIsExpanded(selection),\n [actions, selection],\n );\n\n const handleToggleSelection = useCallback(\n () => actions.toggleIsSelected(selection),\n [actions, selection],\n );\n\n const handleToggleVisibility = useCallback(\n () => actions.toggleIsViewable(selection),\n [actions, selection],\n );\n\n const { pressProps } = usePress({\n onPress: handleToggleExpansion,\n });\n\n const style = useCallback(\n (renderProps: GridListItemRenderProps) =>\n inlineVars(treeItemStateVars, {\n ...renderProps,\n count: node.children.length,\n index,\n isExpanded: 'nodes' in node.value ? !!node.value.isExpanded : false,\n isFirstChild,\n isGroup: 'nodes' in node.value,\n isLastChild,\n isViewable: !!node.value.isViewable,\n isVisible: !!node.value.isVisible,\n }),\n [node.children.length, node.value, index, isFirstChild, isLastChild],\n );\n\n const context = useMemo<TreeItemContexts>(() => {\n const size = sizeProp ?? defaultSize;\n const buttonProps = mapping.button[size] ?? {};\n\n return [\n [\n ToggleButtonContext,\n {\n slots: {\n [DEFAULT_SLOT]: buttonProps,\n expansion: {\n ...buttonProps,\n ...mapping.expansion[size],\n classNames: classNames?.item?.expansion,\n isSelected:\n 'nodes' in node.value ? !!node.value.isExpanded : undefined,\n onPress: handleToggleExpansion,\n },\n visibility: {\n ...buttonProps,\n ...mapping.visibility[size],\n classNames: classNames?.item?.visibility,\n isSelected: !!node.value.isViewable,\n onPress: handleToggleVisibility,\n },\n },\n },\n ],\n [\n AriaTextContext,\n {\n slots: {\n [DEFAULT_SLOT]: {},\n description: {\n ...('nodes' in node.value ? pressProps : {}),\n className: classNames?.item?.description,\n children: node.value.label,\n },\n },\n },\n ],\n [\n GroupContext,\n {\n slots: {\n [DEFAULT_SLOT]: {},\n actions: {\n classNames: classNames?.item?.actions,\n context: ButtonContext,\n values: buttonProps,\n },\n },\n },\n ],\n [\n CheckboxContext,\n {\n slots: {\n [DEFAULT_SLOT]: {},\n selection: {\n classNames: classNames?.item?.selection,\n onChange: handleToggleSelection,\n },\n },\n },\n ],\n [\n ButtonContext,\n {\n slots: {\n [DEFAULT_SLOT]: buttonProps,\n drag: {\n ...buttonProps,\n ...mapping.drag[size],\n classNames: classNames?.item?.drag,\n },\n // We use a non-interactive Button for the lines to try and simplify the\n // consistent use of space when rendered in alignment with other Buttons\n lines: {\n ...buttonProps,\n classNames: classNames?.item?.lines,\n isDisabled: true,\n },\n },\n },\n ],\n // Need to expand the RAC ButtonContext to allow for additional slots\n [RACButtonContext, { slots: { [DEFAULT_SLOT]: {}, lines: {} } }],\n ];\n }, [\n classNames?.item?.lines,\n classNames?.item?.expansion,\n classNames?.item?.visibility,\n classNames?.item?.description,\n classNames?.item?.actions,\n classNames?.item?.selection,\n classNames?.item?.drag,\n mapping,\n node,\n pressProps,\n sizeProp,\n handleToggleExpansion,\n handleToggleSelection,\n handleToggleVisibility,\n ]);\n\n /**\n * We need to block the above contexts from being passed into the TreeGroup\n * so that each TreeItem has a distinct context. We only use MergeProvider\n * for the above contexts because the GridListItem provides contexts that\n * we need to merge with\n */\n const children = useCallback(\n (renderProps: GridListItemRenderProps) => (\n <MergeProvider values={context}>\n <div className={classNames?.item?.item}>\n {node.parentKey && (\n <Button slot='lines'>\n <Icon />\n </Button>\n )}\n <div className={classNames?.item?.bar}>\n {callRenderProps(childrenProp, {\n ...renderProps,\n node,\n })}\n </div>\n {'nodes' in node.value &&\n (!allowsExpansion || node.value.isExpanded) && (\n <Provider values={contextBlocker}>\n <TreeGroup\n id={node.key}\n nodes={node.children}\n types={node.value.types}\n aria-label={node.value.label}\n >\n {childrenProp}\n </TreeGroup>\n </Provider>\n )}\n </div>\n </MergeProvider>\n ),\n [\n context,\n classNames?.item?.item,\n classNames?.item?.bar,\n node,\n childrenProp,\n allowsExpansion,\n ],\n );\n\n return (\n <GridListItem\n {...rest}\n className={classNames?.item?.container}\n style={style}\n textValue={node.value.label}\n >\n {children}\n </GridListItem>\n );\n}\n"]}
@@ -0,0 +1,121 @@
1
+ import { AriaLabelingProps } from '@react-types/shared';
2
+ import { ReactNode } from 'react';
3
+ import { GridListRenderProps, GridListItemRenderProps, DropPosition, GridListProps, SlotProps, GridListItemProps, DragAndDropOptions, Key } from 'react-aria-components';
4
+ import { PartialDeep } from 'type-fest';
5
+ import { AsType } from '../../types/generic.js';
6
+ import { OmitProtectedProps } from '../../types/props.js';
7
+ import { RenderPropsChildren } from '../../types/react-aria.js';
8
+ import { UseTreeResult, TreeNode, TreeGroupNode, UseTreeOptions } from '../../types/use-tree.js';
9
+ import { ButtonClassNames, ButtonProps } from '../button/types.js';
10
+ import { CheckboxClassNames } from '../checkbox/types.js';
11
+ import { GroupClassNames } from '../group/types.js';
12
+ import '@react-stately/data';
13
+ import '../icon/types.js';
14
+
15
+ type TreeClassNames = PartialDeep<{
16
+ tree: {
17
+ container: string;
18
+ tree: string;
19
+ };
20
+ empty: string;
21
+ group: string;
22
+ indicator: {
23
+ container: string;
24
+ indicator: string;
25
+ };
26
+ item: {
27
+ container: string;
28
+ item: string;
29
+ bar: string;
30
+ lines: ButtonClassNames;
31
+ visibility: ButtonClassNames;
32
+ expansion: ButtonClassNames;
33
+ description: string;
34
+ actions: GroupClassNames;
35
+ selection: CheckboxClassNames;
36
+ drag: ButtonClassNames;
37
+ };
38
+ }>;
39
+ type TreeSizes = 'sm' | 'lg';
40
+ type TreeMapping = {
41
+ actions: Partial<Record<TreeSizes, OmitProtectedProps<ButtonProps>>>;
42
+ button: Partial<Record<TreeSizes, OmitProtectedProps<ButtonProps>>>;
43
+ description: Partial<Record<TreeSizes, string>>;
44
+ drag: Partial<Record<TreeSizes, OmitProtectedProps<ButtonProps>>>;
45
+ expansion: Partial<Record<TreeSizes, OmitProtectedProps<ButtonProps>>>;
46
+ visibility: Partial<Record<TreeSizes, OmitProtectedProps<ButtonProps>>>;
47
+ };
48
+ type TreeRenderProps<T> = UseTreeResult<T> & {
49
+ treeGroupProps: Omit<TreeGroupProps<T>, 'children'>;
50
+ };
51
+ type TreeGroupRenderProps = Omit<GridListRenderProps, 'state'>;
52
+ type TreeIndicatorRenderProps = {
53
+ /**
54
+ * Whether the drop indicator is currently the active drop target.
55
+ * @selector [data-drop-target]
56
+ */
57
+ isDropTarget: boolean;
58
+ };
59
+ type TreeItemRenderProps<T> = AsType<GridListItemRenderProps> & {
60
+ node: TreeNode<T>;
61
+ };
62
+ type BaseProps<T> = {
63
+ children: RenderPropsChildren<TreeItemRenderProps<T>>;
64
+ mapping?: TreeMapping;
65
+ classNames?: TreeClassNames;
66
+ };
67
+ type BaseTreeProps<T> = Pick<DragAndDropOptions, 'renderDragPreview' | 'renderDropIndicator'> & ({
68
+ /**
69
+ * Tree defaults to automatically rendering the base TreeGroup, pass true
70
+ * to switch rendering modes to enable renderProps children that provides
71
+ * access to the internal state context and allows for customization of
72
+ * layout, but requires that a TreeGroup be manually implemented
73
+ */
74
+ provider?: false;
75
+ children: RenderPropsChildren<TreeItemRenderProps<T>>;
76
+ } | {
77
+ provider: true;
78
+ children: Exclude<RenderPropsChildren<TreeRenderProps<T>>, ReactNode>;
79
+ }) & {
80
+ allowsDragging?: boolean;
81
+ classNames?: TreeClassNames;
82
+ mapping?: TreeMapping;
83
+ showTreeLines?: boolean;
84
+ size?: TreeSizes;
85
+ };
86
+ type BaseTreeGroupProps<T> = {
87
+ id: Key;
88
+ nodes: TreeNode<T>[];
89
+ };
90
+ type BaseTreeItemProps<T> = {
91
+ index: number;
92
+ node: TreeNode<T>;
93
+ isFirstChild: boolean;
94
+ isLastChild: boolean;
95
+ };
96
+ type TreeState = Required<Pick<TreeRenderProps<unknown>, 'allowsExpansion' | 'allowsVisibility'>> & Required<Pick<BaseTreeProps<unknown>, 'allowsDragging' | 'showTreeLines' | 'size'>>;
97
+ type TreeGroupState = TreeGroupRenderProps & {
98
+ /**
99
+ * The number of items in group
100
+ */
101
+ count: number;
102
+ };
103
+ type TreeIndicatorState = TreeIndicatorRenderProps & {
104
+ dropPosition: DropPosition | 'root';
105
+ };
106
+ type TreeItemState = Omit<TreeItemRenderProps<unknown>, 'node'> & Required<Pick<TreeGroupNode<unknown>, 'isExpanded' | 'isViewable' | 'isVisible'>> & Omit<BaseTreeItemProps<unknown>, 'node'> & {
107
+ /**
108
+ * The number of children
109
+ */
110
+ count: number;
111
+ /**
112
+ * If item has children
113
+ */
114
+ isGroup: boolean;
115
+ };
116
+ type TreeStateContextValue<T> = UseTreeResult<T> & Pick<TreeProps<T>, 'allowsDragging' | 'classNames' | 'disabledBehavior' | 'keyboardNavigationBehavior' | 'renderDragPreview' | 'renderEmptyState' | 'selectionBehavior' | 'selectionMode' | 'showTreeLines' | 'size' | 'onAction' | 'onScroll'>;
117
+ type TreeProps<T> = AriaLabelingProps & Omit<GridListProps<T>, 'id' | 'children' | 'className' | 'dependencies' | 'disallowEmptySelection' | 'items' | 'renderDropIndicator' | 'style'> & UseTreeOptions<T> & BaseTreeProps<T>;
118
+ type TreeGroupProps<T> = Omit<GridListProps<T>, 'id' | 'children' | 'className' | 'dependencies' | 'items' | 'style'> & Pick<TreeGroupNode<T>, 'types'> & BaseTreeGroupProps<T> & BaseProps<T>;
119
+ type TreeItemProps<T> = SlotProps & Omit<GridListItemProps, 'children' | 'className' | 'style'> & BaseTreeItemProps<T> & BaseProps<T>;
120
+
121
+ export type { TreeClassNames, TreeGroupProps, TreeGroupRenderProps, TreeGroupState, TreeIndicatorRenderProps, TreeIndicatorState, TreeItemProps, TreeItemRenderProps, TreeItemState, TreeMapping, TreeProps, TreeRenderProps, TreeSizes, TreeState, TreeStateContextValue };
@@ -0,0 +1,3 @@
1
+
2
+ //# sourceMappingURL=types.js.map
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"types.js"}
@@ -0,0 +1,12 @@
1
+ import { Key, DropOperation, DropItem, TextDropItem } from '@react-types/shared';
2
+ import { DragAndDropOptions } from 'react-aria-components';
3
+ import { TreeNode, UseTreeResult } from '../../types/use-tree.js';
4
+ import '@react-stately/data';
5
+
6
+ declare function createDragAndDropHandlers<T>(id: Key, acceptedDragTypes: string[], lookup: Record<Key, TreeNode<T>>, actions: UseTreeResult<T>['actions']): DragAndDropOptions;
7
+ declare function getDropOperation(): DropOperation;
8
+ declare function processDroppedItems(items: DropItem[], acceptedDragTypes: string[]): Promise<any[]>;
9
+ declare function processDroppedItem(item: TextDropItem, acceptedDragTypes: string[]): Promise<any>;
10
+ declare function getDroppedItemPayload(item: TextDropItem, acceptedDragTypes: string[]): Promise<string>;
11
+
12
+ export { createDragAndDropHandlers, getDropOperation, getDroppedItemPayload, processDroppedItem, processDroppedItems };
@@ -0,0 +1,89 @@
1
+ import '../../chunk-PZ5AY32C.js';
2
+ import { isTextDropItem } from '@react-aria/dnd';
3
+
4
+ function createDragAndDropHandlers(id, acceptedDragTypes, lookup, actions) {
5
+ return {
6
+ acceptedDragTypes,
7
+ getDropOperation,
8
+ getItems: (keys) => [...keys].map((key) => {
9
+ const node = lookup[key]?.value;
10
+ if (!node) {
11
+ return {};
12
+ }
13
+ const payload = JSON.stringify(node);
14
+ return [
15
+ "all",
16
+ "type" in node ? node.type : void 0,
17
+ ..."types" in node ? node.types ?? [] : []
18
+ ].reduce((acc, type) => {
19
+ if (!type) return acc;
20
+ acc[`tree-${type}`] = payload;
21
+ return acc;
22
+ }, {});
23
+ }),
24
+ onDragEnd: () => actions.revertIsExpanded(),
25
+ onDragStart: ({ keys }) => actions.toggleIsExpanded(keys, false, true),
26
+ onInsert: ({ items, target }) => {
27
+ (async () => {
28
+ const processedItems = await processDroppedItems(
29
+ items,
30
+ acceptedDragTypes
31
+ );
32
+ actions.remove(...processedItems.map((item) => item.id));
33
+ if (target.dropPosition === "before") {
34
+ actions.insertBefore(target.key, ...processedItems);
35
+ } else if (target.dropPosition === "after") {
36
+ actions.insertAfter(target.key, ...processedItems);
37
+ }
38
+ })();
39
+ },
40
+ onReorder({ keys, target }) {
41
+ const values = Array.from(keys).flatMap((key) => {
42
+ const value = lookup[key]?.value;
43
+ if (value) {
44
+ return [value];
45
+ }
46
+ return [];
47
+ });
48
+ actions.remove(...keys);
49
+ if (target.dropPosition === "before") {
50
+ actions.insertBefore(target.key, ...values);
51
+ } else if (target.dropPosition === "after") {
52
+ actions.insertAfter(target.key, ...values);
53
+ }
54
+ },
55
+ onRootDrop: ({ items }) => {
56
+ (async () => {
57
+ const processedItems = await processDroppedItems(
58
+ items,
59
+ acceptedDragTypes
60
+ );
61
+ actions.remove(...processedItems.map((item) => item.id));
62
+ actions.append(id, ...processedItems);
63
+ })();
64
+ }
65
+ };
66
+ }
67
+ function getDropOperation() {
68
+ return "move";
69
+ }
70
+ async function processDroppedItems(items, acceptedDragTypes) {
71
+ return await Promise.all(
72
+ items.filter(isTextDropItem).map((item) => processDroppedItem(item, acceptedDragTypes))
73
+ );
74
+ }
75
+ async function processDroppedItem(item, acceptedDragTypes) {
76
+ const payload = await getDroppedItemPayload(item, acceptedDragTypes);
77
+ return payload ? JSON.parse(payload) : Promise.reject(new Error("No supported type payload"));
78
+ }
79
+ async function getDroppedItemPayload(item, acceptedDragTypes) {
80
+ return await Promise.any(
81
+ acceptedDragTypes.map(
82
+ async (type) => await item.getText(type) ?? Promise.reject(new Error("Unsupported type"))
83
+ )
84
+ );
85
+ }
86
+
87
+ export { createDragAndDropHandlers, getDropOperation, getDroppedItemPayload, processDroppedItem, processDroppedItems };
88
+ //# sourceMappingURL=utils.js.map
89
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/tree/utils.ts"],"names":[],"mappings":"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","file":"utils.js","sourcesContent":["import type {\n DropItem,\n DropOperation,\n Key,\n TextDropItem,\n} from '@react-types/shared';\nimport { isTextDropItem } from '@react-aria/dnd';\nimport type { DragAndDropOptions } from 'react-aria-components';\nimport type { TreeNode, UseTreeResult } from '../../types';\n\nexport function createDragAndDropHandlers<T>(\n id: Key,\n acceptedDragTypes: string[],\n lookup: Record<Key, TreeNode<T>>,\n actions: UseTreeResult<T>['actions'],\n): DragAndDropOptions {\n return {\n acceptedDragTypes,\n getDropOperation,\n getItems: (keys: Set<Key>) =>\n [...keys].map((key) => {\n const node = lookup[key]?.value;\n\n if (!node) {\n return {};\n }\n\n const payload = JSON.stringify(node);\n\n return [\n 'all',\n 'type' in node ? node.type : undefined,\n ...('types' in node ? (node.types ?? []) : []),\n ].reduce<Record<string, string>>((acc, type) => {\n if (!type) return acc;\n\n acc[`tree-${type}`] = payload;\n\n return acc;\n }, {});\n }),\n onDragEnd: () => actions.revertIsExpanded(),\n onDragStart: ({ keys }) => actions.toggleIsExpanded(keys, false, true),\n onInsert: ({ items, target }) => {\n // Wrap async return function where void expected, fuck SQ\n (async () => {\n const processedItems = await processDroppedItems(\n items,\n acceptedDragTypes,\n );\n\n actions.remove(...processedItems.map((item) => item.id));\n\n if (target.dropPosition === 'before') {\n actions.insertBefore(target.key, ...processedItems);\n } else if (target.dropPosition === 'after') {\n actions.insertAfter(target.key, ...processedItems);\n }\n })();\n },\n onReorder({ keys, target }) {\n const values = Array.from(keys).flatMap((key) => {\n const value = lookup[key]?.value;\n\n if (value) {\n return [value];\n }\n\n return [];\n });\n\n actions.remove(...keys);\n\n if (target.dropPosition === 'before') {\n actions.insertBefore(target.key, ...values);\n } else if (target.dropPosition === 'after') {\n actions.insertAfter(target.key, ...values);\n }\n },\n onRootDrop: ({ items }) => {\n // See above, thanks SQ for ensuring high quality code\n (async () => {\n const processedItems = await processDroppedItems(\n items,\n acceptedDragTypes,\n );\n\n actions.remove(...processedItems.map((item) => item.id));\n\n actions.append(id, ...processedItems);\n })();\n },\n };\n}\n\nexport function getDropOperation(): DropOperation {\n return 'move';\n}\n\nexport async function processDroppedItems(\n items: DropItem[],\n acceptedDragTypes: string[],\n) {\n return await Promise.all(\n items\n .filter(isTextDropItem)\n .map((item) => processDroppedItem(item, acceptedDragTypes)),\n );\n}\n\nexport async function processDroppedItem(\n item: TextDropItem,\n acceptedDragTypes: string[],\n) {\n const payload = await getDroppedItemPayload(item, acceptedDragTypes);\n\n return payload\n ? JSON.parse(payload)\n : Promise.reject(new Error('No supported type payload'));\n}\n\nexport async function getDroppedItemPayload(\n item: TextDropItem,\n acceptedDragTypes: string[],\n) {\n return await Promise.any(\n acceptedDragTypes.map(\n async (type) =>\n (await item.getText(type)) ??\n Promise.reject(new Error('Unsupported type')),\n ),\n );\n}\n"]}
@@ -0,0 +1,52 @@
1
+ export { useCollectionRender } from './use-collection-render/use-collection-render.js';
2
+ export { useContextProps } from './use-context-props/use-context-props.js';
3
+ export { DefaultsProvider, useDefaultProps, useDefaults } from './use-defaults/use-defaults.js';
4
+ export { DefaultsContext, DefaultsProviderProps } from './use-defaults/types.js';
5
+ export { usePropagatingPress } from './use-propagating-press/use-propagating-press.js';
6
+ export { useSlot } from './use-slot/use-slot.js';
7
+ export { ThemeContext, ThemeProviderProps, ThemeVars } from './use-theme/types.js';
8
+ export { ThemeProvider, useTheme } from './use-theme/use-theme.js';
9
+ export { useTree } from './use-tree/use-tree.js';
10
+ export { useUpdateEffect } from './use-update-effect/use-update-effect.js';
11
+ import '@react-types/shared';
12
+ import 'react';
13
+ import 'react-aria-components';
14
+ import 'react/jsx-runtime';
15
+ import '../components/button/types.js';
16
+ import '../types/props.js';
17
+ import '../types/react-aria.js';
18
+ import '../components/icon/types.js';
19
+ import '../components/checkbox/types.js';
20
+ import 'type-fest';
21
+ import '../components/chip/types.js';
22
+ import '../types/generic.js';
23
+ import '../components/combo-box/types.js';
24
+ import '../components/input/types.js';
25
+ import '../components/options/types.js';
26
+ import '../components/dialog/types.js';
27
+ import '../components/group/types.js';
28
+ import '../components/drawer/types.js';
29
+ import '@react-aria/overlays';
30
+ import '@react-stately/overlays';
31
+ import '../components/tabs/types.js';
32
+ import '../components/menu/types.js';
33
+ import '../components/number-field/types.js';
34
+ import '../components/picker/types.js';
35
+ import '../components/popover/types.js';
36
+ import '../components/radio/types.js';
37
+ import '../components/select/types.js';
38
+ import '../components/switch/types.js';
39
+ import '../components/textarea/types.js';
40
+ import '../components/search-field/types.js';
41
+ import '../components/text-field/types.js';
42
+ import '../components/tooltip/types.js';
43
+ import '../components/tree/types.js';
44
+ import '../types/use-tree.js';
45
+ import '@react-stately/data';
46
+ import '@react-aria/interactions';
47
+ import '../components/query-builder/types.js';
48
+ import 'react-querybuilder';
49
+ import '../types/vanilla-extract.js';
50
+ import '@vanilla-extract/css';
51
+ import '../utils/css.js';
52
+ import '../types/deckgl.js';
@@ -0,0 +1,11 @@
1
+ import '../chunk-PZ5AY32C.js';
2
+ export { useCollectionRender } from './use-collection-render/index.js';
3
+ export { useContextProps } from './use-context-props/index.js';
4
+ export { DefaultsProvider, useDefaultProps, useDefaults } from './use-defaults/index.js';
5
+ export { usePropagatingPress } from './use-propagating-press/index.js';
6
+ export { useSlot } from './use-slot/index.js';
7
+ export { ThemeProvider, useTheme } from './use-theme/index.js';
8
+ export { useTree } from './use-tree/index.js';
9
+ export { useUpdateEffect } from './use-update-effect/index.js';
10
+ //# sourceMappingURL=index.js.map
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"index.js","sourcesContent":[]}
@@ -0,0 +1,3 @@
1
+ export { useCollectionRender } from './use-collection-render.js';
2
+ import '@react-types/shared';
3
+ import 'react';
@@ -0,0 +1,4 @@
1
+ import '../../chunk-PZ5AY32C.js';
2
+ export { useCollectionRender } from './use-collection-render.js';
3
+ //# sourceMappingURL=index.js.map
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"index.js","sourcesContent":[]}
@@ -0,0 +1,11 @@
1
+ import { Collection, Node, ItemDropTarget } from '@react-types/shared';
2
+ import { ReactNode } from 'react';
3
+
4
+ /**
5
+ * Copied from RAC, unexported hook: https://github.com/adobe/react-spectrum/blob/main/packages/react-aria-components/src/Collection.tsx#L148
6
+ *
7
+ * Hook serves as the basis of the root and branch renderers for Collections: https://github.com/adobe/react-spectrum/blob/main/packages/react-aria-components/src/Collection.tsx#L139
8
+ */
9
+ declare function useCollectionRender(collection: Collection<Node<unknown>>, parent: Node<unknown> | null, renderDropIndicator?: (target: ItemDropTarget) => ReactNode): ReactNode;
10
+
11
+ export { useCollectionRender };
@@ -0,0 +1,27 @@
1
+ import '../../chunk-PZ5AY32C.js';
2
+ import { useCachedChildren } from '@react-aria/collections';
3
+ import { jsxs, Fragment } from 'react/jsx-runtime';
4
+
5
+ function useCollectionRender(collection, parent, renderDropIndicator) {
6
+ return useCachedChildren({
7
+ items: parent ? collection.getChildren(parent.key) : collection,
8
+ dependencies: [renderDropIndicator],
9
+ children(node) {
10
+ const rendered = node.render(node);
11
+ if (!renderDropIndicator || node.type !== "item") {
12
+ return rendered;
13
+ }
14
+ const { key } = node;
15
+ const keyAfter = collection.getKeyAfter(key);
16
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
17
+ renderDropIndicator({ type: "item", key, dropPosition: "before" }),
18
+ rendered,
19
+ (keyAfter == null || collection.getItem(keyAfter)?.type !== "item") && renderDropIndicator({ type: "item", key, dropPosition: "after" })
20
+ ] });
21
+ }
22
+ });
23
+ }
24
+
25
+ export { useCollectionRender };
26
+ //# sourceMappingURL=use-collection-render.js.map
27
+ //# sourceMappingURL=use-collection-render.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/hooks/use-collection-render/use-collection-render.tsx"],"names":[],"mappings":";;;;AASO,SAAS,mBAAA,CACd,UACA,EAAA,MAAA,EACA,mBACA,EAAA;AACA,EAAA,OAAO,iBAAkB,CAAA;AAAA,IACvB,OAAO,MAAS,GAAA,UAAA,CAAW,WAAa,CAAA,MAAA,CAAO,GAAG,CAAI,GAAA,UAAA;AAAA,IACtD,YAAA,EAAc,CAAC,mBAAmB,CAAA;AAAA,IAClC,SAAS,IAAM,EAAA;AACb,MAAM,MAAA,QAAA,GAAW,IAAK,CAAA,MAAA,CAAQ,IAAI,CAAA;AAElC,MAAA,IAAI,CAAC,mBAAA,IAAuB,IAAK,CAAA,IAAA,KAAS,MAAQ,EAAA;AAChD,QAAO,OAAA,QAAA;AAAA;AAGT,MAAM,MAAA,EAAE,KAAQ,GAAA,IAAA;AAChB,MAAM,MAAA,QAAA,GAAW,UAAW,CAAA,WAAA,CAAY,GAAG,CAAA;AAE3C,MAAA,uBAEK,IAAA,CAAA,QAAA,EAAA,EAAA,QAAA,EAAA;AAAA,QAAA,mBAAA,CAAoB,EAAE,IAAM,EAAA,MAAA,EAAQ,GAAK,EAAA,YAAA,EAAc,UAAU,CAAA;AAAA,QACjE,QAAA;AAAA,QAAA,CACC,QAAY,IAAA,IAAA,IACZ,UAAW,CAAA,OAAA,CAAQ,QAAQ,CAAG,EAAA,IAAA,KAAS,MACvC,KAAA,mBAAA,CAAoB,EAAE,IAAM,EAAA,MAAA,EAAQ,GAAK,EAAA,YAAA,EAAc,SAAS;AAAA,OACpE,EAAA,CAAA;AAAA;AAEJ,GACD,CAAA;AACH","file":"use-collection-render.js","sourcesContent":["import { useCachedChildren } from '@react-aria/collections';\nimport type { Collection, ItemDropTarget, Node } from '@react-types/shared';\nimport type { ReactNode } from 'react';\n\n/**\n * Copied from RAC, unexported hook: https://github.com/adobe/react-spectrum/blob/main/packages/react-aria-components/src/Collection.tsx#L148\n *\n * Hook serves as the basis of the root and branch renderers for Collections: https://github.com/adobe/react-spectrum/blob/main/packages/react-aria-components/src/Collection.tsx#L139\n */\nexport function useCollectionRender(\n collection: Collection<Node<unknown>>,\n parent: Node<unknown> | null,\n renderDropIndicator?: (target: ItemDropTarget) => ReactNode,\n) {\n return useCachedChildren({\n items: parent ? collection.getChildren!(parent.key) : collection,\n dependencies: [renderDropIndicator],\n children(node) {\n const rendered = node.render!(node);\n\n if (!renderDropIndicator || node.type !== 'item') {\n return rendered;\n }\n\n const { key } = node;\n const keyAfter = collection.getKeyAfter(key);\n\n return (\n <>\n {renderDropIndicator({ type: 'item', key, dropPosition: 'before' })}\n {rendered}\n {(keyAfter == null ||\n collection.getItem(keyAfter)?.type !== 'item') &&\n renderDropIndicator({ type: 'item', key, dropPosition: 'after' })}\n </>\n );\n },\n });\n}\n"]}
@@ -0,0 +1,3 @@
1
+ export { useContextProps } from './use-context-props.js';
2
+ import 'react';
3
+ import 'react-aria-components';
@@ -0,0 +1,4 @@
1
+ import '../../chunk-PZ5AY32C.js';
2
+ export { useContextProps } from './use-context-props.js';
3
+ //# sourceMappingURL=index.js.map
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"index.js","sourcesContent":[]}
@@ -0,0 +1,10 @@
1
+ import { ForwardedRef, Context, RefObject } from 'react';
2
+ import { SlotProps, ContextValue } from 'react-aria-components';
3
+
4
+ /**
5
+ * Reimplementation of React Aria's useContextProps, to utilize our own
6
+ * mergeProps which handles renderProps and classNames
7
+ */
8
+ declare function useContextProps<T, U extends SlotProps, E extends Element>(props: T & SlotProps, ref: ForwardedRef<E>, context: Context<ContextValue<U, E>>): [T, RefObject<E | null>];
9
+
10
+ export { useContextProps };
@@ -0,0 +1,18 @@
1
+ import '../../chunk-PZ5AY32C.js';
2
+ import { useObjectRef, mergeRefs } from '@react-aria/utils';
3
+ import { useMemo } from 'react';
4
+ import { useSlottedContext } from 'react-aria-components';
5
+ import { mergeProps } from '../../utils/index.js';
6
+
7
+ function useContextProps(props, ref, context) {
8
+ const value = useSlottedContext(context, props.slot) ?? {};
9
+ const { ref: contextRef, ...contextProps } = value;
10
+ return [
11
+ mergeProps(contextProps, props),
12
+ useObjectRef(useMemo(() => mergeRefs(ref, contextRef), [ref, contextRef]))
13
+ ];
14
+ }
15
+
16
+ export { useContextProps };
17
+ //# sourceMappingURL=use-context-props.js.map
18
+ //# sourceMappingURL=use-context-props.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/hooks/use-context-props/use-context-props.ts"],"names":[],"mappings":";;;;;;AAkBO,SAAS,eAAA,CACd,KACA,EAAA,GAAA,EACA,OAC0B,EAAA;AAC1B,EAAA,MAAM,QAAS,iBAAkB,CAAA,OAAA,EAAS,KAAM,CAAA,IAAI,KAAK,EAAC;AAI1D,EAAA,MAAM,EAAE,GAAA,EAAK,UAAY,EAAA,GAAG,cAAiB,GAAA,KAAA;AAE7C,EAAO,OAAA;AAAA,IACL,UAAA,CAAW,cAA4B,KAAK,CAAA;AAAA,IAC5C,YAAA,CAAa,OAAQ,CAAA,MAAM,SAAU,CAAA,GAAA,EAAK,UAAU,CAAA,EAAG,CAAC,GAAA,EAAK,UAAU,CAAC,CAAC;AAAA,GAC3E;AACF","file":"use-context-props.js","sourcesContent":["import { mergeRefs, useObjectRef } from '@react-aria/utils';\nimport {\n type Context,\n type ForwardedRef,\n type RefObject,\n useMemo,\n} from 'react';\nimport {\n type ContextValue,\n type SlotProps,\n useSlottedContext,\n} from 'react-aria-components';\nimport { mergeProps } from '../../utils';\n\n/**\n * Reimplementation of React Aria's useContextProps, to utilize our own\n * mergeProps which handles renderProps and classNames\n */\nexport function useContextProps<T, U extends SlotProps, E extends Element>(\n props: T & SlotProps,\n ref: ForwardedRef<E>,\n context: Context<ContextValue<U, E>>,\n): [T, RefObject<E | null>] {\n const value = (useSlottedContext(context, props.slot) ?? {}) as Partial<T> & {\n ref?: ForwardedRef<E>;\n };\n\n const { ref: contextRef, ...contextProps } = value;\n\n return [\n mergeProps(contextProps as Partial<T>, props) as T,\n useObjectRef(useMemo(() => mergeRefs(ref, contextRef), [ref, contextRef])),\n ];\n}\n"]}
@@ -0,0 +1,37 @@
1
+ export { DefaultsProvider, useDefaultProps, useDefaults } from './use-defaults.js';
2
+ export { DefaultsContext, DefaultsProviderProps } from './types.js';
3
+ import 'react/jsx-runtime';
4
+ import '../../components/button/types.js';
5
+ import 'react-aria-components';
6
+ import '../../types/props.js';
7
+ import '../../types/react-aria.js';
8
+ import 'react';
9
+ import '../../components/icon/types.js';
10
+ import '../../components/checkbox/types.js';
11
+ import '@react-types/shared';
12
+ import 'type-fest';
13
+ import '../../components/chip/types.js';
14
+ import '../../types/generic.js';
15
+ import '../../components/combo-box/types.js';
16
+ import '../../components/input/types.js';
17
+ import '../../components/options/types.js';
18
+ import '../../components/dialog/types.js';
19
+ import '../../components/group/types.js';
20
+ import '../../components/drawer/types.js';
21
+ import '@react-aria/overlays';
22
+ import '@react-stately/overlays';
23
+ import '../../components/tabs/types.js';
24
+ import '../../components/menu/types.js';
25
+ import '../../components/number-field/types.js';
26
+ import '../../components/picker/types.js';
27
+ import '../../components/popover/types.js';
28
+ import '../../components/radio/types.js';
29
+ import '../../components/select/types.js';
30
+ import '../../components/switch/types.js';
31
+ import '../../components/textarea/types.js';
32
+ import '../../components/search-field/types.js';
33
+ import '../../components/text-field/types.js';
34
+ import '../../components/tooltip/types.js';
35
+ import '../../components/tree/types.js';
36
+ import '../../types/use-tree.js';
37
+ import '@react-stately/data';
@@ -0,0 +1,5 @@
1
+ import '../../chunk-PZ5AY32C.js';
2
+ export { DefaultsProvider, useDefaultProps, useDefaults } from './use-defaults.js';
3
+ import './types.js';
4
+ //# sourceMappingURL=index.js.map
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"index.js","sourcesContent":[]}
@@ -0,0 +1,83 @@
1
+ import { PropsWithChildren } from 'react';
2
+ import { ButtonProps, LinkButtonProps, ToggleButtonProps } from '../../components/button/types.js';
3
+ import { CheckboxProps, CheckboxGroupProps } from '../../components/checkbox/types.js';
4
+ import { ChipProps, ChipGroupProps } from '../../components/chip/types.js';
5
+ import { ComboBoxProps } from '../../components/combo-box/types.js';
6
+ import { DialogProps } from '../../components/dialog/types.js';
7
+ import { DrawerProps, DrawerTabProps, DrawerTabListProps } from '../../components/drawer/types.js';
8
+ import { IconProps } from '../../components/icon/types.js';
9
+ import { InputProps } from '../../components/input/types.js';
10
+ import { MenuProps, MenuListProps, MenuItemProps } from '../../components/menu/types.js';
11
+ import { NumberFieldProps } from '../../components/number-field/types.js';
12
+ import { OptionsProps, OptionsListProps, OptionsItemProps } from '../../components/options/types.js';
13
+ import { PickerProps } from '../../components/picker/types.js';
14
+ import { PopoverProps } from '../../components/popover/types.js';
15
+ import { RadioProps, RadioGroupProps } from '../../components/radio/types.js';
16
+ import { SearchFieldProps } from '../../components/search-field/types.js';
17
+ import { SelectProps } from '../../components/select/types.js';
18
+ import { SwitchProps } from '../../components/switch/types.js';
19
+ import { TabProps, TabListProps, TabPanelProps, TabPanelsProps, TabsProps } from '../../components/tabs/types.js';
20
+ import { TextFieldProps } from '../../components/text-field/types.js';
21
+ import { TextAreaProps } from '../../components/textarea/types.js';
22
+ import { TooltipProps, TooltipTargetProps } from '../../components/tooltip/types.js';
23
+ import { TreeProps } from '../../components/tree/types.js';
24
+ import { OmitProtectedProps } from '../../types/props.js';
25
+ import 'react-aria-components';
26
+ import '../../types/react-aria.js';
27
+ import '@react-types/shared';
28
+ import 'type-fest';
29
+ import '../../types/generic.js';
30
+ import '../../components/group/types.js';
31
+ import '@react-aria/overlays';
32
+ import '@react-stately/overlays';
33
+ import '../../types/use-tree.js';
34
+ import '@react-stately/data';
35
+
36
+ type DefaultsOf<T extends Record<string, object>> = {
37
+ [K in keyof T]?: OmitProtectedProps<T[K]>;
38
+ };
39
+ type DefaultsContext = DefaultsOf<{
40
+ Button: ButtonProps;
41
+ Checkbox: CheckboxProps;
42
+ CheckboxGroup: CheckboxGroupProps;
43
+ Chip: ChipProps;
44
+ ChipGroup: ChipGroupProps;
45
+ ComboBox: ComboBoxProps<object>;
46
+ Dialog: DialogProps;
47
+ Drawer: DrawerProps;
48
+ DrawerTab: DrawerTabProps;
49
+ DrawerTabList: DrawerTabListProps<unknown>;
50
+ Icon: IconProps;
51
+ Input: InputProps;
52
+ LinkButton: LinkButtonProps;
53
+ Menu: MenuProps;
54
+ MenuList: MenuListProps<unknown>;
55
+ MenuItem: MenuItemProps<unknown>;
56
+ NumberField: NumberFieldProps;
57
+ Options: OptionsProps;
58
+ OptionsList: OptionsListProps<object>;
59
+ OptionsItem: OptionsItemProps<object>;
60
+ Picker: PickerProps<unknown>;
61
+ Popover: PopoverProps;
62
+ Radio: RadioProps;
63
+ RadioGroup: RadioGroupProps;
64
+ SearchField: SearchFieldProps;
65
+ Select: SelectProps<object>;
66
+ Switch: SwitchProps;
67
+ Tab: TabProps;
68
+ TabList: TabListProps<unknown>;
69
+ TabPanel: TabPanelProps;
70
+ TabPanels: TabPanelsProps;
71
+ Tabs: TabsProps;
72
+ TextArea: TextAreaProps;
73
+ TextField: TextFieldProps;
74
+ ToggleButton: ToggleButtonProps;
75
+ Tooltip: TooltipProps;
76
+ TooltipTarget: TooltipTargetProps;
77
+ Tree: TreeProps<unknown>;
78
+ }>;
79
+ type DefaultsProviderProps = PropsWithChildren<{
80
+ defaults: DefaultsContext;
81
+ }>;
82
+
83
+ export type { DefaultsContext, DefaultsProviderProps };