@stevederico/skateboard-ui 3.12.0 → 4.1.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 (339) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/README.md +37 -31
  3. package/dist/components/core/Command.js +33 -7
  4. package/dist/shadcn/ui/accordion.d.ts +1 -6
  5. package/dist/shadcn/ui/accordion.js +3 -17
  6. package/dist/shadcn/ui/alert-dialog.d.ts +1 -18
  7. package/dist/shadcn/ui/alert-dialog.js +3 -43
  8. package/dist/shadcn/ui/alert.d.ts +1 -13
  9. package/dist/shadcn/ui/alert.js +3 -28
  10. package/dist/shadcn/ui/aspect-ratio.d.ts +1 -4
  11. package/dist/shadcn/ui/aspect-ratio.js +3 -8
  12. package/dist/shadcn/ui/avatar.d.ts +1 -11
  13. package/dist/shadcn/ui/avatar.js +3 -24
  14. package/dist/shadcn/ui/badge.d.ts +1 -14
  15. package/dist/shadcn/ui/badge.js +3 -33
  16. package/dist/shadcn/ui/breadcrumb.d.ts +1 -10
  17. package/dist/shadcn/ui/breadcrumb.js +3 -37
  18. package/dist/shadcn/ui/button-group.d.ts +1 -13
  19. package/dist/shadcn/ui/button-group.js +3 -36
  20. package/dist/shadcn/ui/button.d.ts +1 -34
  21. package/dist/shadcn/ui/button.js +3 -53
  22. package/dist/shadcn/ui/calendar.d.ts +1 -13
  23. package/dist/shadcn/ui/calendar.js +3 -75
  24. package/dist/shadcn/ui/card.d.ts +1 -11
  25. package/dist/shadcn/ui/card.js +3 -25
  26. package/dist/shadcn/ui/checkbox.d.ts +1 -3
  27. package/dist/shadcn/ui/checkbox.js +3 -9
  28. package/dist/shadcn/ui/collapsible.d.ts +1 -5
  29. package/dist/shadcn/ui/collapsible.js +3 -13
  30. package/dist/shadcn/ui/command.d.ts +1 -19
  31. package/dist/shadcn/ui/command.js +3 -35
  32. package/dist/shadcn/ui/context-menu.d.ts +1 -29
  33. package/dist/shadcn/ui/context-menu.js +3 -52
  34. package/dist/shadcn/ui/dialog.d.ts +1 -17
  35. package/dist/shadcn/ui/dialog.js +3 -38
  36. package/dist/shadcn/ui/drawer.d.ts +1 -13
  37. package/dist/shadcn/ui/drawer.js +3 -196
  38. package/dist/shadcn/ui/dropdown-menu.d.ts +1 -29
  39. package/dist/shadcn/ui/dropdown-menu.js +3 -52
  40. package/dist/shadcn/ui/empty.d.ts +1 -14
  41. package/dist/shadcn/ui/empty.js +3 -33
  42. package/dist/shadcn/ui/field.d.ts +1 -28
  43. package/dist/shadcn/ui/field.js +3 -68
  44. package/dist/shadcn/ui/hover-card.d.ts +1 -5
  45. package/dist/shadcn/ui/hover-card.js +3 -14
  46. package/dist/shadcn/ui/input-group.d.ts +1 -28
  47. package/dist/shadcn/ui/input-group.js +3 -58
  48. package/dist/shadcn/ui/input.d.ts +1 -3
  49. package/dist/shadcn/ui/input.js +3 -8
  50. package/dist/shadcn/ui/item.d.ts +1 -34
  51. package/dist/shadcn/ui/item.js +3 -79
  52. package/dist/shadcn/ui/kbd.d.ts +1 -3
  53. package/dist/shadcn/ui/kbd.js +3 -9
  54. package/dist/shadcn/ui/label.d.ts +1 -3
  55. package/dist/shadcn/ui/label.js +3 -8
  56. package/dist/shadcn/ui/menubar.d.ts +1 -29
  57. package/dist/shadcn/ui/menubar.js +3 -57
  58. package/dist/shadcn/ui/navigation-menu.d.ts +1 -13
  59. package/dist/shadcn/ui/navigation-menu.js +3 -31
  60. package/dist/shadcn/ui/pagination.d.ts +1 -17
  61. package/dist/shadcn/ui/pagination.js +3 -27
  62. package/dist/shadcn/ui/popover.d.ts +1 -9
  63. package/dist/shadcn/ui/popover.js +3 -24
  64. package/dist/shadcn/ui/progress.d.ts +1 -7
  65. package/dist/shadcn/ui/progress.js +3 -20
  66. package/dist/shadcn/ui/radio-group.d.ts +1 -5
  67. package/dist/shadcn/ui/radio-group.js +3 -12
  68. package/dist/shadcn/ui/scroll-area.d.ts +1 -5
  69. package/dist/shadcn/ui/scroll-area.js +3 -12
  70. package/dist/shadcn/ui/select.d.ts +1 -15
  71. package/dist/shadcn/ui/select.js +3 -35
  72. package/dist/shadcn/ui/separator.d.ts +1 -3
  73. package/dist/shadcn/ui/separator.js +3 -8
  74. package/dist/shadcn/ui/sheet.d.ts +1 -14
  75. package/dist/shadcn/ui/sheet.js +3 -38
  76. package/dist/shadcn/ui/sidebar.d.ts +1 -70
  77. package/dist/shadcn/ui/sidebar.js +3 -256
  78. package/dist/shadcn/ui/skeleton.d.ts +1 -2
  79. package/dist/shadcn/ui/skeleton.js +3 -6
  80. package/dist/shadcn/ui/slider.d.ts +1 -3
  81. package/dist/shadcn/ui/slider.js +3 -12
  82. package/dist/shadcn/ui/spinner.d.ts +1 -2
  83. package/dist/shadcn/ui/spinner.js +3 -7
  84. package/dist/shadcn/ui/switch.d.ts +1 -5
  85. package/dist/shadcn/ui/switch.js +3 -8
  86. package/dist/shadcn/ui/table.d.ts +1 -10
  87. package/dist/shadcn/ui/table.js +3 -29
  88. package/dist/shadcn/ui/tabs.d.ts +1 -13
  89. package/dist/shadcn/ui/tabs.js +3 -29
  90. package/dist/shadcn/ui/textarea.d.ts +1 -3
  91. package/dist/shadcn/ui/textarea.js +3 -7
  92. package/dist/shadcn/ui/toggle-group.d.ts +1 -11
  93. package/dist/shadcn/ui/toggle-group.js +3 -25
  94. package/dist/shadcn/ui/toggle.d.ts +1 -15
  95. package/dist/shadcn/ui/toggle.js +3 -26
  96. package/dist/shadcn/ui/tooltip.d.ts +1 -6
  97. package/dist/shadcn/ui/tooltip.js +3 -17
  98. package/dist/ui/accordion.d.ts +21 -0
  99. package/dist/ui/accordion.js +67 -0
  100. package/dist/ui/alert-dialog.d.ts +32 -0
  101. package/dist/ui/alert-dialog.js +102 -0
  102. package/dist/ui/alert.d.ts +13 -0
  103. package/dist/ui/alert.js +28 -0
  104. package/dist/ui/aspect-ratio.d.ts +5 -0
  105. package/dist/ui/aspect-ratio.js +9 -0
  106. package/dist/ui/avatar.d.ts +14 -0
  107. package/dist/ui/avatar.js +49 -0
  108. package/dist/ui/badge.d.ts +22 -0
  109. package/dist/ui/badge.js +26 -0
  110. package/dist/ui/breadcrumb.d.ts +13 -0
  111. package/dist/ui/breadcrumb.js +29 -0
  112. package/dist/ui/button-group.d.ts +21 -0
  113. package/dist/ui/button-group.js +29 -0
  114. package/dist/ui/button.d.ts +38 -0
  115. package/dist/ui/button.js +49 -0
  116. package/dist/ui/calendar.d.ts +13 -0
  117. package/dist/ui/calendar.js +75 -0
  118. package/dist/ui/card.d.ts +11 -0
  119. package/dist/ui/card.js +25 -0
  120. package/dist/ui/checkbox.d.ts +17 -0
  121. package/dist/ui/checkbox.js +25 -0
  122. package/dist/ui/collapsible.d.ts +11 -0
  123. package/dist/ui/collapsible.js +40 -0
  124. package/dist/ui/command.d.ts +19 -0
  125. package/dist/ui/command.js +35 -0
  126. package/dist/ui/context-menu.d.ts +53 -0
  127. package/dist/ui/context-menu.js +372 -0
  128. package/dist/ui/dialog.d.ts +40 -0
  129. package/dist/ui/dialog.js +109 -0
  130. package/dist/ui/drawer.d.ts +36 -0
  131. package/dist/ui/drawer.js +243 -0
  132. package/dist/ui/dropdown-menu.d.ts +61 -0
  133. package/dist/ui/dropdown-menu.js +347 -0
  134. package/dist/ui/empty.d.ts +14 -0
  135. package/dist/ui/empty.js +33 -0
  136. package/dist/ui/field.d.ts +28 -0
  137. package/dist/ui/field.js +68 -0
  138. package/dist/ui/hover-card.d.ts +32 -0
  139. package/dist/ui/hover-card.js +119 -0
  140. package/dist/ui/input-group.d.ts +28 -0
  141. package/dist/ui/input-group.js +58 -0
  142. package/dist/ui/input.d.ts +3 -0
  143. package/dist/ui/input.js +7 -0
  144. package/dist/ui/item.d.ts +41 -0
  145. package/dist/ui/item.js +69 -0
  146. package/dist/ui/kbd.d.ts +4 -0
  147. package/dist/ui/kbd.js +10 -0
  148. package/dist/ui/label.d.ts +3 -0
  149. package/dist/ui/label.js +8 -0
  150. package/dist/ui/menubar.d.ts +59 -0
  151. package/dist/ui/menubar.js +397 -0
  152. package/dist/ui/navigation-menu.d.ts +24 -0
  153. package/dist/ui/navigation-menu.js +203 -0
  154. package/dist/ui/pagination.d.ts +17 -0
  155. package/dist/ui/pagination.js +36 -0
  156. package/dist/ui/popover.d.ts +25 -0
  157. package/dist/ui/popover.js +126 -0
  158. package/dist/ui/portal.d.ts +7 -0
  159. package/dist/ui/portal.js +12 -0
  160. package/dist/ui/progress.d.ts +15 -0
  161. package/dist/ui/progress.js +36 -0
  162. package/dist/ui/radio-group.d.ts +17 -0
  163. package/dist/ui/radio-group.js +66 -0
  164. package/dist/ui/scroll-area.d.ts +9 -0
  165. package/dist/ui/scroll-area.js +72 -0
  166. package/dist/ui/select.d.ts +37 -0
  167. package/dist/ui/select.js +226 -0
  168. package/dist/ui/separator.d.ts +14 -0
  169. package/dist/ui/separator.js +13 -0
  170. package/dist/ui/sheet.d.ts +31 -0
  171. package/dist/ui/sheet.js +121 -0
  172. package/dist/ui/sidebar.d.ts +86 -0
  173. package/dist/ui/sidebar.js +211 -0
  174. package/dist/ui/skeleton.d.ts +3 -0
  175. package/dist/ui/skeleton.js +7 -0
  176. package/dist/ui/slider.d.ts +18 -0
  177. package/dist/ui/slider.js +94 -0
  178. package/dist/ui/slot.d.ts +27 -0
  179. package/dist/ui/slot.js +62 -0
  180. package/dist/ui/spinner.d.ts +3 -0
  181. package/dist/ui/spinner.js +8 -0
  182. package/dist/ui/switch.d.ts +17 -0
  183. package/dist/ui/switch.js +23 -0
  184. package/dist/ui/table.d.ts +10 -0
  185. package/dist/ui/table.js +29 -0
  186. package/dist/ui/tabs.d.ts +29 -0
  187. package/dist/ui/tabs.js +96 -0
  188. package/dist/ui/textarea.d.ts +3 -0
  189. package/dist/ui/textarea.js +7 -0
  190. package/dist/ui/toggle-group.d.ts +23 -0
  191. package/dist/ui/toggle-group.js +52 -0
  192. package/dist/ui/toggle.d.ts +25 -0
  193. package/dist/ui/toggle.js +41 -0
  194. package/dist/ui/tooltip.d.ts +25 -0
  195. package/dist/ui/tooltip.js +90 -0
  196. package/dist/ui/use-controllable-state.d.ts +10 -0
  197. package/dist/ui/use-controllable-state.js +17 -0
  198. package/dist/ui/use-dismiss.d.ts +10 -0
  199. package/dist/ui/use-dismiss.js +51 -0
  200. package/dist/ui/use-floating.d.ts +42 -0
  201. package/dist/ui/use-floating.js +136 -0
  202. package/dist/ui/use-presence.d.ts +8 -0
  203. package/dist/ui/use-presence.js +48 -0
  204. package/dist/ui/use-typeahead.d.ts +19 -0
  205. package/dist/ui/use-typeahead.js +64 -0
  206. package/package.json +6 -1
  207. package/dist/shadcn/lib/base-ui/LICENSE +0 -21
  208. package/dist/shadcn/lib/base-ui/_chunk-000kmre8.js +0 -150
  209. package/dist/shadcn/lib/base-ui/_chunk-1vw45v38.js +0 -64
  210. package/dist/shadcn/lib/base-ui/_chunk-23rx7haq.js +0 -81
  211. package/dist/shadcn/lib/base-ui/_chunk-242gh8ph.js +0 -230
  212. package/dist/shadcn/lib/base-ui/_chunk-26cc610z.js +0 -6
  213. package/dist/shadcn/lib/base-ui/_chunk-2z044bba.js +0 -5890
  214. package/dist/shadcn/lib/base-ui/_chunk-3cpd1vjz.js +0 -13
  215. package/dist/shadcn/lib/base-ui/_chunk-3enq1vat.js +0 -82
  216. package/dist/shadcn/lib/base-ui/_chunk-3xpke33f.js +0 -23
  217. package/dist/shadcn/lib/base-ui/_chunk-451nqgsa.js +0 -6
  218. package/dist/shadcn/lib/base-ui/_chunk-4maf6pas.js +0 -11
  219. package/dist/shadcn/lib/base-ui/_chunk-4zhfq4d3.js +0 -16
  220. package/dist/shadcn/lib/base-ui/_chunk-5gaqyne5.js +0 -21
  221. package/dist/shadcn/lib/base-ui/_chunk-5tt5hk59.js +0 -4
  222. package/dist/shadcn/lib/base-ui/_chunk-5tze5c8q.js +0 -13
  223. package/dist/shadcn/lib/base-ui/_chunk-5xmdvndx.js +0 -225
  224. package/dist/shadcn/lib/base-ui/_chunk-6adaer33.js +0 -435
  225. package/dist/shadcn/lib/base-ui/_chunk-6ejf1z1r.js +0 -9
  226. package/dist/shadcn/lib/base-ui/_chunk-6kqramh9.js +0 -27
  227. package/dist/shadcn/lib/base-ui/_chunk-7b9dc493.js +0 -14
  228. package/dist/shadcn/lib/base-ui/_chunk-8a9vv8am.js +0 -89
  229. package/dist/shadcn/lib/base-ui/_chunk-8ctgmf06.js +0 -129
  230. package/dist/shadcn/lib/base-ui/_chunk-8ganmsbg.js +0 -54
  231. package/dist/shadcn/lib/base-ui/_chunk-8xaqxgck.js +0 -15
  232. package/dist/shadcn/lib/base-ui/_chunk-95tf2rxq.js +0 -62
  233. package/dist/shadcn/lib/base-ui/_chunk-9x63vfqj.js +0 -70
  234. package/dist/shadcn/lib/base-ui/_chunk-ase0ydtt.js +0 -9
  235. package/dist/shadcn/lib/base-ui/_chunk-b0nc8wq7.js +0 -34
  236. package/dist/shadcn/lib/base-ui/_chunk-b5ya6xds.js +0 -10
  237. package/dist/shadcn/lib/base-ui/_chunk-b6dkjkbw.js +0 -43
  238. package/dist/shadcn/lib/base-ui/_chunk-c2bz952e.js +0 -19
  239. package/dist/shadcn/lib/base-ui/_chunk-cdgfsr3q.js +0 -15
  240. package/dist/shadcn/lib/base-ui/_chunk-cdj8cpx5.js +0 -347
  241. package/dist/shadcn/lib/base-ui/_chunk-cgptgywc.js +0 -104
  242. package/dist/shadcn/lib/base-ui/_chunk-cwvtvwc7.js +0 -35
  243. package/dist/shadcn/lib/base-ui/_chunk-dan0mva4.js +0 -23
  244. package/dist/shadcn/lib/base-ui/_chunk-dzvjwv25.js +0 -0
  245. package/dist/shadcn/lib/base-ui/_chunk-e13rsb6b.js +0 -184
  246. package/dist/shadcn/lib/base-ui/_chunk-e56mpvk1.js +0 -118
  247. package/dist/shadcn/lib/base-ui/_chunk-e6k2ecs7.js +0 -48
  248. package/dist/shadcn/lib/base-ui/_chunk-ebyxgtb4.js +0 -29
  249. package/dist/shadcn/lib/base-ui/_chunk-f2wttwrf.js +0 -39
  250. package/dist/shadcn/lib/base-ui/_chunk-fdzctasg.js +0 -38
  251. package/dist/shadcn/lib/base-ui/_chunk-ffpjy0ta.js +0 -39
  252. package/dist/shadcn/lib/base-ui/_chunk-fqry7pew.js +0 -603
  253. package/dist/shadcn/lib/base-ui/_chunk-ghn1tzt8.js +0 -84
  254. package/dist/shadcn/lib/base-ui/_chunk-gy0bpkmx.js +0 -12
  255. package/dist/shadcn/lib/base-ui/_chunk-hm5h9vsk.js +0 -16
  256. package/dist/shadcn/lib/base-ui/_chunk-htdj1jps.js +0 -833
  257. package/dist/shadcn/lib/base-ui/_chunk-j29xjete.js +0 -146
  258. package/dist/shadcn/lib/base-ui/_chunk-j3qkyd10.js +0 -50
  259. package/dist/shadcn/lib/base-ui/_chunk-ktvsd5k6.js +0 -2386
  260. package/dist/shadcn/lib/base-ui/_chunk-kw8nnq00.js +0 -546
  261. package/dist/shadcn/lib/base-ui/_chunk-m307wpdj.js +0 -18
  262. package/dist/shadcn/lib/base-ui/_chunk-mnd0j7v9.js +0 -15
  263. package/dist/shadcn/lib/base-ui/_chunk-n11h505c.js +0 -32
  264. package/dist/shadcn/lib/base-ui/_chunk-p0e2qacz.js +0 -26
  265. package/dist/shadcn/lib/base-ui/_chunk-pv7b791x.js +0 -106
  266. package/dist/shadcn/lib/base-ui/_chunk-q5cg71p7.js +0 -83
  267. package/dist/shadcn/lib/base-ui/_chunk-qbezxj1g.js +0 -385
  268. package/dist/shadcn/lib/base-ui/_chunk-qmsqz6nt.js +0 -15
  269. package/dist/shadcn/lib/base-ui/_chunk-rrh8rt4v.js +0 -65
  270. package/dist/shadcn/lib/base-ui/_chunk-s5pwkz8v.js +0 -25
  271. package/dist/shadcn/lib/base-ui/_chunk-svxv97ph.js +0 -218
  272. package/dist/shadcn/lib/base-ui/_chunk-t7ppm3t0.js +0 -68
  273. package/dist/shadcn/lib/base-ui/_chunk-vg16xxmb.js +0 -52
  274. package/dist/shadcn/lib/base-ui/_chunk-vgkfmtbe.js +0 -21
  275. package/dist/shadcn/lib/base-ui/_chunk-watha94s.js +0 -14
  276. package/dist/shadcn/lib/base-ui/_chunk-wdqynnjf.js +0 -35
  277. package/dist/shadcn/lib/base-ui/_chunk-wx2nxg0p.js +0 -15
  278. package/dist/shadcn/lib/base-ui/_chunk-x11e1k9r.js +0 -0
  279. package/dist/shadcn/lib/base-ui/_chunk-x8xehj6d.js +0 -302
  280. package/dist/shadcn/lib/base-ui/_chunk-xcqbtm2f.js +0 -28
  281. package/dist/shadcn/lib/base-ui/_chunk-ytnp24gq.js +0 -328
  282. package/dist/shadcn/lib/base-ui/_chunk-yzr7eg4b.js +0 -6
  283. package/dist/shadcn/lib/base-ui/_chunk-zk4mtm9m.js +0 -9
  284. package/dist/shadcn/lib/base-ui/accordion.d.ts +0 -447
  285. package/dist/shadcn/lib/base-ui/accordion.js +0 -630
  286. package/dist/shadcn/lib/base-ui/alert-dialog.d.ts +0 -1467
  287. package/dist/shadcn/lib/base-ui/alert-dialog.js +0 -98
  288. package/dist/shadcn/lib/base-ui/avatar.d.ts +0 -123
  289. package/dist/shadcn/lib/base-ui/avatar.js +0 -235
  290. package/dist/shadcn/lib/base-ui/button.d.ts +0 -84
  291. package/dist/shadcn/lib/base-ui/button.js +0 -51
  292. package/dist/shadcn/lib/base-ui/checkbox.d.ts +0 -341
  293. package/dist/shadcn/lib/base-ui/checkbox.js +0 -501
  294. package/dist/shadcn/lib/base-ui/collapsible.d.ts +0 -291
  295. package/dist/shadcn/lib/base-ui/collapsible.js +0 -264
  296. package/dist/shadcn/lib/base-ui/context-menu.d.ts +0 -2213
  297. package/dist/shadcn/lib/base-ui/context-menu.js +0 -323
  298. package/dist/shadcn/lib/base-ui/dialog.d.ts +0 -1448
  299. package/dist/shadcn/lib/base-ui/dialog.js +0 -79
  300. package/dist/shadcn/lib/base-ui/input.d.ts +0 -506
  301. package/dist/shadcn/lib/base-ui/input.js +0 -1027
  302. package/dist/shadcn/lib/base-ui/menu.d.ts +0 -2275
  303. package/dist/shadcn/lib/base-ui/menu.js +0 -60
  304. package/dist/shadcn/lib/base-ui/menubar.d.ts +0 -48
  305. package/dist/shadcn/lib/base-ui/menubar.js +0 -156
  306. package/dist/shadcn/lib/base-ui/merge-props.d.ts +0 -70
  307. package/dist/shadcn/lib/base-ui/merge-props.js +0 -15
  308. package/dist/shadcn/lib/base-ui/navigation-menu.d.ts +0 -825
  309. package/dist/shadcn/lib/base-ui/navigation-menu.js +0 -1849
  310. package/dist/shadcn/lib/base-ui/popover.d.ts +0 -1743
  311. package/dist/shadcn/lib/base-ui/popover.js +0 -1089
  312. package/dist/shadcn/lib/base-ui/preview-card.d.ts +0 -1608
  313. package/dist/shadcn/lib/base-ui/preview-card.js +0 -919
  314. package/dist/shadcn/lib/base-ui/progress.d.ts +0 -172
  315. package/dist/shadcn/lib/base-ui/progress.js +0 -272
  316. package/dist/shadcn/lib/base-ui/radio-group.d.ts +0 -260
  317. package/dist/shadcn/lib/base-ui/radio-group.js +0 -239
  318. package/dist/shadcn/lib/base-ui/radio.d.ts +0 -176
  319. package/dist/shadcn/lib/base-ui/radio.js +0 -387
  320. package/dist/shadcn/lib/base-ui/scroll-area.d.ts +0 -241
  321. package/dist/shadcn/lib/base-ui/scroll-area.js +0 -1055
  322. package/dist/shadcn/lib/base-ui/select.d.ts +0 -1266
  323. package/dist/shadcn/lib/base-ui/select.js +0 -2450
  324. package/dist/shadcn/lib/base-ui/separator.d.ts +0 -76
  325. package/dist/shadcn/lib/base-ui/separator.js +0 -11
  326. package/dist/shadcn/lib/base-ui/slider.d.ts +0 -551
  327. package/dist/shadcn/lib/base-ui/slider.js +0 -1583
  328. package/dist/shadcn/lib/base-ui/switch.d.ts +0 -313
  329. package/dist/shadcn/lib/base-ui/switch.js +0 -326
  330. package/dist/shadcn/lib/base-ui/tabs.d.ts +0 -406
  331. package/dist/shadcn/lib/base-ui/tabs.js +0 -915
  332. package/dist/shadcn/lib/base-ui/toggle-group.d.ts +0 -235
  333. package/dist/shadcn/lib/base-ui/toggle-group.js +0 -145
  334. package/dist/shadcn/lib/base-ui/toggle.d.ts +0 -224
  335. package/dist/shadcn/lib/base-ui/toggle.js +0 -127
  336. package/dist/shadcn/lib/base-ui/tooltip.d.ts +0 -1656
  337. package/dist/shadcn/lib/base-ui/tooltip.js +0 -920
  338. package/dist/shadcn/lib/base-ui/use-render.d.ts +0 -87
  339. package/dist/shadcn/lib/base-ui/use-render.js +0 -15
@@ -1,104 +0,0 @@
1
- import {
2
- FOCUSABLE_ATTRIBUTE,
3
- TYPEABLE_SELECTOR,
4
- isJSDOM
5
- } from "./_chunk-rrh8rt4v.js";
6
- import {
7
- isElement,
8
- isHTMLElement,
9
- isShadowRoot
10
- } from "./_chunk-000kmre8.js";
11
-
12
- // node_modules/@base-ui/react/esm/internals/shadowDom.js
13
- function activeElement(doc) {
14
- let element = doc.activeElement;
15
- while (element?.shadowRoot?.activeElement != null) {
16
- element = element.shadowRoot.activeElement;
17
- }
18
- return element;
19
- }
20
- function contains(parent, child) {
21
- if (!parent || !child) {
22
- return false;
23
- }
24
- const rootNode = child.getRootNode?.();
25
- if (parent.contains(child)) {
26
- return true;
27
- }
28
- if (rootNode && isShadowRoot(rootNode)) {
29
- let next = child;
30
- while (next) {
31
- if (parent === next) {
32
- return true;
33
- }
34
- next = next.parentNode || next.host;
35
- }
36
- }
37
- return false;
38
- }
39
- function getTarget(event) {
40
- if ("composedPath" in event) {
41
- return event.composedPath()[0];
42
- }
43
- return event.target;
44
- }
45
-
46
- // node_modules/@base-ui/react/esm/floating-ui-react/utils/element.js
47
- function isTargetInsideEnabledTrigger(target, triggerElements) {
48
- if (!isElement(target)) {
49
- return false;
50
- }
51
- const targetElement = target;
52
- if (triggerElements.hasElement(targetElement)) {
53
- return !targetElement.hasAttribute("data-trigger-disabled");
54
- }
55
- for (const [, trigger] of triggerElements.entries()) {
56
- if (contains(trigger, targetElement)) {
57
- return !trigger.hasAttribute("data-trigger-disabled");
58
- }
59
- }
60
- return false;
61
- }
62
- function isEventTargetWithin(event, node) {
63
- if (node == null) {
64
- return false;
65
- }
66
- if ("composedPath" in event) {
67
- return event.composedPath().includes(node);
68
- }
69
- const eventAgain = event;
70
- return eventAgain.target != null && node.contains(eventAgain.target);
71
- }
72
- function isRootElement(element) {
73
- return element.matches("html,body");
74
- }
75
- function isTypeableElement(element) {
76
- return isHTMLElement(element) && element.matches(TYPEABLE_SELECTOR);
77
- }
78
- function isInteractiveElement(element) {
79
- return element?.closest(`button,a[href],[role="button"],select,[tabindex]:not([tabindex="-1"]),${TYPEABLE_SELECTOR}`) != null;
80
- }
81
- function isTypeableCombobox(element) {
82
- if (!element) {
83
- return false;
84
- }
85
- return element.getAttribute("role") === "combobox" && isTypeableElement(element);
86
- }
87
- function matchesFocusVisible(element) {
88
- if (!element || isJSDOM) {
89
- return true;
90
- }
91
- try {
92
- return element.matches(":focus-visible");
93
- } catch (_e) {
94
- return true;
95
- }
96
- }
97
- function getFloatingFocusElement(floatingElement) {
98
- if (!floatingElement) {
99
- return null;
100
- }
101
- return floatingElement.hasAttribute(FOCUSABLE_ATTRIBUTE) ? floatingElement : floatingElement.querySelector(`[${FOCUSABLE_ATTRIBUTE}]`) || floatingElement;
102
- }
103
-
104
- export { activeElement, contains, getTarget, isTargetInsideEnabledTrigger, isEventTargetWithin, isRootElement, isTypeableElement, isInteractiveElement, isTypeableCombobox, matchesFocusVisible, getFloatingFocusElement };
@@ -1,35 +0,0 @@
1
- import {
2
- SafeReact
3
- } from "./_chunk-5tze5c8q.js";
4
- import {
5
- useRefWithInit
6
- } from "./_chunk-x8xehj6d.js";
7
-
8
- // node_modules/@base-ui/utils/esm/useStableCallback.js
9
- "use client";
10
- var useInsertionEffect = SafeReact.useInsertionEffect;
11
- var useSafeInsertionEffect = useInsertionEffect && useInsertionEffect !== SafeReact.useLayoutEffect ? useInsertionEffect : (fn) => fn();
12
- function useStableCallback(callback) {
13
- const stable = useRefWithInit(createStableCallback).current;
14
- stable.next = callback;
15
- useSafeInsertionEffect(stable.effect);
16
- return stable.trampoline;
17
- }
18
- function createStableCallback() {
19
- const stable = {
20
- next: undefined,
21
- callback: assertNotCalled,
22
- trampoline: (...args) => stable.callback?.(...args),
23
- effect: () => {
24
- stable.callback = stable.next;
25
- }
26
- };
27
- return stable;
28
- }
29
- function assertNotCalled() {
30
- if (true) {
31
- throw new Error("Base UI: Cannot call an event handler while rendering.");
32
- }
33
- }
34
-
35
- export { useStableCallback };
@@ -1,23 +0,0 @@
1
- // node_modules/@base-ui/utils/esm/visuallyHidden.js
2
- var visuallyHiddenBase = {
3
- clipPath: "inset(50%)",
4
- overflow: "hidden",
5
- whiteSpace: "nowrap",
6
- border: 0,
7
- padding: 0,
8
- width: 1,
9
- height: 1,
10
- margin: -1
11
- };
12
- var visuallyHidden = {
13
- ...visuallyHiddenBase,
14
- position: "fixed",
15
- top: 0,
16
- left: 0
17
- };
18
- var visuallyHiddenInput = {
19
- ...visuallyHiddenBase,
20
- position: "absolute"
21
- };
22
-
23
- export { visuallyHidden, visuallyHiddenInput };
File without changes
@@ -1,184 +0,0 @@
1
- import {
2
- resolveRef
3
- } from "./_chunk-zk4mtm9m.js";
4
- import {
5
- AnimationFrame,
6
- useAnimationFrame
7
- } from "./_chunk-8a9vv8am.js";
8
- import {
9
- useStableCallback
10
- } from "./_chunk-cwvtvwc7.js";
11
- import {
12
- useIsoLayoutEffect
13
- } from "./_chunk-5tze5c8q.js";
14
-
15
- // node_modules/@base-ui/react/esm/internals/useTransitionStatus.js
16
- import * as React from "react";
17
- "use client";
18
- function useTransitionStatus(open, enableIdleState = false, deferEndingState = false) {
19
- const [transitionStatus, setTransitionStatus] = React.useState(open && enableIdleState ? "idle" : undefined);
20
- const [mounted, setMounted] = React.useState(open);
21
- if (open && !mounted) {
22
- setMounted(true);
23
- setTransitionStatus("starting");
24
- }
25
- if (!open && mounted && transitionStatus !== "ending" && !deferEndingState) {
26
- setTransitionStatus("ending");
27
- }
28
- if (!open && !mounted && transitionStatus === "ending") {
29
- setTransitionStatus(undefined);
30
- }
31
- useIsoLayoutEffect(() => {
32
- if (!open && mounted && transitionStatus !== "ending" && deferEndingState) {
33
- const frame = AnimationFrame.request(() => {
34
- setTransitionStatus("ending");
35
- });
36
- return () => {
37
- AnimationFrame.cancel(frame);
38
- };
39
- }
40
- return;
41
- }, [open, mounted, transitionStatus, deferEndingState]);
42
- useIsoLayoutEffect(() => {
43
- if (!open || enableIdleState) {
44
- return;
45
- }
46
- const frame = AnimationFrame.request(() => {
47
- setTransitionStatus(undefined);
48
- });
49
- return () => {
50
- AnimationFrame.cancel(frame);
51
- };
52
- }, [enableIdleState, open]);
53
- useIsoLayoutEffect(() => {
54
- if (!open || !enableIdleState) {
55
- return;
56
- }
57
- if (open && mounted && transitionStatus !== "idle") {
58
- setTransitionStatus("starting");
59
- }
60
- const frame = AnimationFrame.request(() => {
61
- setTransitionStatus("idle");
62
- });
63
- return () => {
64
- AnimationFrame.cancel(frame);
65
- };
66
- }, [enableIdleState, open, mounted, transitionStatus]);
67
- return {
68
- mounted,
69
- setMounted,
70
- transitionStatus
71
- };
72
- }
73
-
74
- // node_modules/@base-ui/react/esm/internals/stateAttributesMapping.js
75
- var TransitionStatusDataAttributes = /* @__PURE__ */ function(TransitionStatusDataAttributes2) {
76
- TransitionStatusDataAttributes2["startingStyle"] = "data-starting-style";
77
- TransitionStatusDataAttributes2["endingStyle"] = "data-ending-style";
78
- return TransitionStatusDataAttributes2;
79
- }({});
80
- var STARTING_HOOK = {
81
- [TransitionStatusDataAttributes.startingStyle]: ""
82
- };
83
- var ENDING_HOOK = {
84
- [TransitionStatusDataAttributes.endingStyle]: ""
85
- };
86
- var transitionStatusMapping = {
87
- transitionStatus(value) {
88
- if (value === "starting") {
89
- return STARTING_HOOK;
90
- }
91
- if (value === "ending") {
92
- return ENDING_HOOK;
93
- }
94
- return null;
95
- }
96
- };
97
-
98
- // node_modules/@base-ui/react/esm/internals/useAnimationsFinished.js
99
- import * as ReactDOM from "react-dom";
100
- "use client";
101
- function useAnimationsFinished(elementOrRef, waitForStartingStyleRemoved = false, treatAbortedAsFinished = true) {
102
- const frame = useAnimationFrame();
103
- return useStableCallback((fnToExecute, signal = null) => {
104
- frame.cancel();
105
- const element = resolveRef(elementOrRef);
106
- if (element == null) {
107
- return;
108
- }
109
- const resolvedElement = element;
110
- const done = () => {
111
- ReactDOM.flushSync(fnToExecute);
112
- };
113
- if (typeof resolvedElement.getAnimations !== "function" || globalThis.BASE_UI_ANIMATIONS_DISABLED) {
114
- fnToExecute();
115
- return;
116
- }
117
- function exec() {
118
- Promise.all(resolvedElement.getAnimations().map((animation) => animation.finished)).then(() => {
119
- if (!signal?.aborted) {
120
- done();
121
- }
122
- }).catch(() => {
123
- if (treatAbortedAsFinished) {
124
- if (!signal?.aborted) {
125
- done();
126
- }
127
- return;
128
- }
129
- const currentAnimations = resolvedElement.getAnimations();
130
- if (!signal?.aborted && currentAnimations.length > 0 && currentAnimations.some((animation) => animation.pending || animation.playState !== "finished")) {
131
- exec();
132
- }
133
- });
134
- }
135
- if (waitForStartingStyleRemoved) {
136
- const startingStyleAttribute = TransitionStatusDataAttributes.startingStyle;
137
- if (!resolvedElement.hasAttribute(startingStyleAttribute)) {
138
- frame.request(exec);
139
- return;
140
- }
141
- const attributeObserver = new MutationObserver(() => {
142
- if (!resolvedElement.hasAttribute(startingStyleAttribute)) {
143
- attributeObserver.disconnect();
144
- exec();
145
- }
146
- });
147
- attributeObserver.observe(resolvedElement, {
148
- attributes: true,
149
- attributeFilter: [startingStyleAttribute]
150
- });
151
- signal?.addEventListener("abort", () => attributeObserver.disconnect(), {
152
- once: true
153
- });
154
- return;
155
- }
156
- frame.request(exec);
157
- });
158
- }
159
-
160
- // node_modules/@base-ui/react/esm/internals/useOpenChangeComplete.js
161
- import * as React2 from "react";
162
- "use client";
163
- function useOpenChangeComplete(parameters) {
164
- const {
165
- enabled = true,
166
- open,
167
- ref,
168
- onComplete: onCompleteParam
169
- } = parameters;
170
- const onComplete = useStableCallback(onCompleteParam);
171
- const runOnceAnimationsFinish = useAnimationsFinished(ref, open, false);
172
- React2.useEffect(() => {
173
- if (!enabled) {
174
- return;
175
- }
176
- const abortController = new AbortController;
177
- runOnceAnimationsFinish(onComplete, abortController.signal);
178
- return () => {
179
- abortController.abort();
180
- };
181
- }, [enabled, open, onComplete, runOnceAnimationsFinish]);
182
- }
183
-
184
- export { useTransitionStatus, TransitionStatusDataAttributes, transitionStatusMapping, useAnimationsFinished, useOpenChangeComplete };
@@ -1,118 +0,0 @@
1
- import {
2
- EMPTY_OBJECT
3
- } from "./_chunk-x8xehj6d.js";
4
- import {
5
- __export
6
- } from "./_chunk-svxv97ph.js";
7
-
8
- // node_modules/@base-ui/react/esm/internals/reason-parts.js
9
- var exports_reason_parts = {};
10
- __export(exports_reason_parts, {
11
- windowResize: () => windowResize,
12
- wheel: () => wheel,
13
- triggerPress: () => triggerPress,
14
- triggerHover: () => triggerHover,
15
- triggerFocus: () => triggerFocus,
16
- trackPress: () => trackPress,
17
- swipe: () => swipe,
18
- siblingOpen: () => siblingOpen,
19
- scrub: () => scrub,
20
- pointer: () => pointer,
21
- outsidePress: () => outsidePress,
22
- none: () => none,
23
- missing: () => missing,
24
- listNavigation: () => listNavigation,
25
- linkPress: () => linkPress,
26
- keyboard: () => keyboard,
27
- itemPress: () => itemPress,
28
- inputPress: () => inputPress,
29
- inputPaste: () => inputPaste,
30
- inputClear: () => inputClear,
31
- inputChange: () => inputChange,
32
- inputBlur: () => inputBlur,
33
- initial: () => initial,
34
- incrementPress: () => incrementPress,
35
- imperativeAction: () => imperativeAction,
36
- focusOut: () => focusOut,
37
- escapeKey: () => escapeKey,
38
- drag: () => drag,
39
- disabled: () => disabled,
40
- decrementPress: () => decrementPress,
41
- closeWatcher: () => closeWatcher,
42
- closePress: () => closePress,
43
- clearPress: () => clearPress,
44
- chipRemovePress: () => chipRemovePress,
45
- cancelOpen: () => cancelOpen
46
- });
47
- var none = "none";
48
- var triggerPress = "trigger-press";
49
- var triggerHover = "trigger-hover";
50
- var triggerFocus = "trigger-focus";
51
- var outsidePress = "outside-press";
52
- var itemPress = "item-press";
53
- var closePress = "close-press";
54
- var linkPress = "link-press";
55
- var clearPress = "clear-press";
56
- var chipRemovePress = "chip-remove-press";
57
- var trackPress = "track-press";
58
- var incrementPress = "increment-press";
59
- var decrementPress = "decrement-press";
60
- var inputChange = "input-change";
61
- var inputClear = "input-clear";
62
- var inputBlur = "input-blur";
63
- var inputPaste = "input-paste";
64
- var inputPress = "input-press";
65
- var focusOut = "focus-out";
66
- var escapeKey = "escape-key";
67
- var closeWatcher = "close-watcher";
68
- var listNavigation = "list-navigation";
69
- var keyboard = "keyboard";
70
- var pointer = "pointer";
71
- var drag = "drag";
72
- var wheel = "wheel";
73
- var scrub = "scrub";
74
- var cancelOpen = "cancel-open";
75
- var siblingOpen = "sibling-open";
76
- var disabled = "disabled";
77
- var missing = "missing";
78
- var initial = "initial";
79
- var imperativeAction = "imperative-action";
80
- var swipe = "swipe";
81
- var windowResize = "window-resize";
82
-
83
- // node_modules/@base-ui/react/esm/internals/createBaseUIEventDetails.js
84
- function createChangeEventDetails(reason, event, trigger, customProperties) {
85
- let canceled = false;
86
- let allowPropagation = false;
87
- const custom = customProperties ?? EMPTY_OBJECT;
88
- const details = {
89
- reason,
90
- event: event ?? new Event("base-ui"),
91
- cancel() {
92
- canceled = true;
93
- },
94
- allowPropagation() {
95
- allowPropagation = true;
96
- },
97
- get isCanceled() {
98
- return canceled;
99
- },
100
- get isPropagationAllowed() {
101
- return allowPropagation;
102
- },
103
- trigger,
104
- ...custom
105
- };
106
- return details;
107
- }
108
- function createGenericEventDetails(reason, event, customProperties) {
109
- const custom = customProperties ?? EMPTY_OBJECT;
110
- const details = {
111
- reason,
112
- event: event ?? new Event("base-ui"),
113
- ...custom
114
- };
115
- return details;
116
- }
117
-
118
- export { exports_reason_parts, createChangeEventDetails, createGenericEventDetails };
@@ -1,48 +0,0 @@
1
- import {
2
- clamp
3
- } from "./_chunk-yzr7eg4b.js";
4
-
5
- // node_modules/@base-ui/react/esm/utils/styles.js
6
- import { jsx as _jsx } from "react/jsx-runtime";
7
- var DISABLE_SCROLLBAR_CLASS_NAME = "base-ui-disable-scrollbar";
8
- var styleDisableScrollbar = {
9
- className: DISABLE_SCROLLBAR_CLASS_NAME,
10
- getElement(nonce) {
11
- return /* @__PURE__ */ _jsx("style", {
12
- nonce,
13
- href: DISABLE_SCROLLBAR_CLASS_NAME,
14
- precedence: "base-ui:low",
15
- children: `.${DISABLE_SCROLLBAR_CLASS_NAME}{scrollbar-width:none}.${DISABLE_SCROLLBAR_CLASS_NAME}::-webkit-scrollbar{display:none}`
16
- });
17
- }
18
- };
19
- if (true)
20
- styleDisableScrollbar.getElement.displayName = "styleDisableScrollbar.getElement";
21
-
22
- // node_modules/@base-ui/react/esm/utils/scrollEdges.js
23
- var SCROLL_EDGE_TOLERANCE_PX = 1;
24
- function getMaxScrollOffset(scrollSize, clientSize) {
25
- return Math.max(0, scrollSize - clientSize);
26
- }
27
- function normalizeScrollOffset(value, max) {
28
- if (max <= 0) {
29
- return 0;
30
- }
31
- const clamped = clamp(value, 0, max);
32
- const startDistance = clamped;
33
- const endDistance = max - clamped;
34
- const withinStartTolerance = startDistance <= SCROLL_EDGE_TOLERANCE_PX;
35
- const withinEndTolerance = endDistance <= SCROLL_EDGE_TOLERANCE_PX;
36
- if (withinStartTolerance && withinEndTolerance) {
37
- return startDistance <= endDistance ? 0 : max;
38
- }
39
- if (withinStartTolerance) {
40
- return 0;
41
- }
42
- if (withinEndTolerance) {
43
- return max;
44
- }
45
- return clamped;
46
- }
47
-
48
- export { styleDisableScrollbar, SCROLL_EDGE_TOLERANCE_PX, getMaxScrollOffset, normalizeScrollOffset };
@@ -1,29 +0,0 @@
1
- import {
2
- useScrollLock
3
- } from "./_chunk-ytnp24gq.js";
4
- import {
5
- ownerDocument
6
- } from "./_chunk-451nqgsa.js";
7
- import {
8
- useIsoLayoutEffect
9
- } from "./_chunk-5tze5c8q.js";
10
-
11
- // node_modules/@base-ui/react/esm/utils/useAnchoredPopupScrollLock.js
12
- import * as React from "react";
13
- "use client";
14
- var VIEWPORT_WIDTH_TOLERANCE_PX = 20;
15
- function useAnchoredPopupScrollLock(enabled, touchOpen, positionerElement, referenceElement) {
16
- const [touchOpenShouldLockScroll, setTouchOpenShouldLockScroll] = React.useState(false);
17
- useIsoLayoutEffect(() => {
18
- if (!enabled || !touchOpen || positionerElement == null) {
19
- setTouchOpenShouldLockScroll(false);
20
- return;
21
- }
22
- const viewportWidth = ownerDocument(positionerElement).documentElement.clientWidth;
23
- const popupWidth = positionerElement.offsetWidth;
24
- setTouchOpenShouldLockScroll(viewportWidth > 0 && popupWidth > 0 && popupWidth >= viewportWidth - VIEWPORT_WIDTH_TOLERANCE_PX);
25
- }, [enabled, touchOpen, positionerElement]);
26
- useScrollLock(enabled && (!touchOpen || touchOpenShouldLockScroll), referenceElement);
27
- }
28
-
29
- export { useAnchoredPopupScrollLock };
@@ -1,39 +0,0 @@
1
- import {
2
- useCompositeItem
3
- } from "./_chunk-j3qkyd10.js";
4
- import {
5
- EMPTY_ARRAY,
6
- EMPTY_OBJECT,
7
- useRenderElement
8
- } from "./_chunk-x8xehj6d.js";
9
-
10
- // node_modules/@base-ui/react/esm/internals/composite/item/CompositeItem.js
11
- "use client";
12
- function CompositeItem(componentProps) {
13
- const {
14
- render,
15
- className,
16
- style,
17
- state = EMPTY_OBJECT,
18
- props = EMPTY_ARRAY,
19
- refs = EMPTY_ARRAY,
20
- metadata,
21
- stateAttributesMapping,
22
- tag = "div",
23
- ...elementProps
24
- } = componentProps;
25
- const {
26
- compositeProps,
27
- compositeRef
28
- } = useCompositeItem({
29
- metadata
30
- });
31
- return useRenderElement(tag, componentProps, {
32
- state,
33
- ref: [...refs, compositeRef],
34
- props: [compositeProps, ...props, elementProps],
35
- stateAttributesMapping
36
- });
37
- }
38
-
39
- export { CompositeItem };
@@ -1,38 +0,0 @@
1
- import {
2
- useFloatingPortalNode
3
- } from "./_chunk-2z044bba.js";
4
-
5
- // node_modules/@base-ui/react/esm/utils/FloatingPortalLite.js
6
- import * as React from "react";
7
- import * as ReactDOM from "react-dom";
8
- import { jsxs as _jsxs } from "react/jsx-runtime";
9
- "use client";
10
- var FloatingPortalLite = /* @__PURE__ */ React.forwardRef(function FloatingPortalLite2(componentProps, forwardedRef) {
11
- const {
12
- children,
13
- container,
14
- className,
15
- render,
16
- style,
17
- ...elementProps
18
- } = componentProps;
19
- const {
20
- portalNode,
21
- portalSubtree
22
- } = useFloatingPortalNode({
23
- container,
24
- ref: forwardedRef,
25
- componentProps,
26
- elementProps
27
- });
28
- if (!portalSubtree && !portalNode) {
29
- return null;
30
- }
31
- return /* @__PURE__ */ _jsxs(React.Fragment, {
32
- children: [portalSubtree, portalNode && /* @__PURE__ */ ReactDOM.createPortal(children, portalNode)]
33
- });
34
- });
35
- if (true)
36
- FloatingPortalLite.displayName = "FloatingPortalLite";
37
-
38
- export { FloatingPortalLite };
@@ -1,39 +0,0 @@
1
- // node_modules/@base-ui/react/esm/utils/formatNumber.js
2
- var cache = new Map;
3
- function getFormatter(locale, options) {
4
- const optionsString = JSON.stringify({
5
- locale,
6
- options
7
- });
8
- const cachedFormatter = cache.get(optionsString);
9
- if (cachedFormatter) {
10
- return cachedFormatter;
11
- }
12
- const formatter = new Intl.NumberFormat(locale, options);
13
- cache.set(optionsString, formatter);
14
- return formatter;
15
- }
16
- function formatNumber(value, locale, options) {
17
- if (value == null) {
18
- return "";
19
- }
20
- return getFormatter(locale, options).format(value);
21
- }
22
- function formatNumberValue(value, locale, format) {
23
- if (value == null) {
24
- return "";
25
- }
26
- if (!format) {
27
- return formatNumber(value / 100, locale, {
28
- style: "percent"
29
- });
30
- }
31
- return formatNumber(value, locale, format);
32
- }
33
-
34
- // node_modules/@base-ui/react/esm/utils/valueToPercent.js
35
- function valueToPercent(value, min, max) {
36
- return (value - min) * 100 / (max - min);
37
- }
38
-
39
- export { formatNumber, formatNumberValue, valueToPercent };