love-ui 1.2.12 → 1.2.14

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 (988) hide show
  1. package/dist/index.js +8 -7
  2. package/dist/mcp-server.js +1 -1
  3. package/package.json +3 -2
  4. package/packages/loveui-skills/SKILL.md +99 -0
  5. package/packages/loveui-skills/agents/openai.yaml +11 -0
  6. package/packages/loveui-skills/references/design-directions.md +60 -0
  7. package/packages/loveui-skills/references/mcp-catalog-workflow.md +68 -0
  8. package/packages/loveui-skills/references/page-blueprints.md +76 -0
  9. package/packages/loveui-skills/references/quality-gates.md +51 -0
  10. package/public/r/accordion-controlled.json +1 -1
  11. package/public/r/accordion-demo.json +1 -1
  12. package/public/r/accordion-multiple.json +1 -1
  13. package/public/r/accordion-single.json +1 -1
  14. package/public/r/alert-demo.json +1 -1
  15. package/public/r/alert-dialog-demo.json +1 -1
  16. package/public/r/alert-error.json +1 -1
  17. package/public/r/alert-info.json +1 -1
  18. package/public/r/alert-success.json +1 -1
  19. package/public/r/alert-warning.json +1 -1
  20. package/public/r/alert-with-icon-action.json +1 -1
  21. package/public/r/alert-with-icon.json +1 -1
  22. package/public/r/announcement-tagless.json +1 -1
  23. package/public/r/announcement-themes.json +1 -1
  24. package/public/r/announcement.json +1 -1
  25. package/public/r/autocomplete-async.json +1 -1
  26. package/public/r/autocomplete-autohighlight.json +1 -1
  27. package/public/r/autocomplete-demo.json +1 -1
  28. package/public/r/autocomplete-disabled.json +1 -1
  29. package/public/r/autocomplete-form.json +1 -1
  30. package/public/r/autocomplete-grouped.json +1 -1
  31. package/public/r/autocomplete-inline.json +1 -1
  32. package/public/r/autocomplete-lg.json +1 -1
  33. package/public/r/autocomplete-limit.json +1 -1
  34. package/public/r/autocomplete-sm.json +1 -1
  35. package/public/r/autocomplete-with-clear.json +1 -1
  36. package/public/r/autocomplete-with-label.json +1 -1
  37. package/public/r/autocomplete-with-trigger-clear.json +1 -1
  38. package/public/r/avatar-demo.json +1 -1
  39. package/public/r/avatar-fallback.json +1 -1
  40. package/public/r/avatar-group.json +1 -1
  41. package/public/r/avatar-radius.json +1 -1
  42. package/public/r/avatar-size.json +1 -1
  43. package/public/r/avatar-stack-hover.json +1 -1
  44. package/public/r/avatar-stack.json +1 -1
  45. package/public/r/badge-demo.json +1 -1
  46. package/public/r/badge-destructive.json +1 -1
  47. package/public/r/badge-error.json +1 -1
  48. package/public/r/badge-info.json +1 -1
  49. package/public/r/badge-lg.json +1 -1
  50. package/public/r/badge-outline.json +1 -1
  51. package/public/r/badge-secondary.json +1 -1
  52. package/public/r/badge-sm.json +1 -1
  53. package/public/r/badge-success.json +1 -1
  54. package/public/r/badge-warning.json +1 -1
  55. package/public/r/badge-with-icon.json +1 -1
  56. package/public/r/badge-with-link.json +1 -1
  57. package/public/r/banner-inset.json +1 -1
  58. package/public/r/banner-themes.json +1 -1
  59. package/public/r/banner.json +1 -1
  60. package/public/r/bookmarks.json +206 -0
  61. package/public/r/breadcrumb-custom-separator.json +1 -1
  62. package/public/r/breadcrumb-demo.json +1 -1
  63. package/public/r/button-demo.json +1 -1
  64. package/public/r/button-destructive-outline.json +1 -1
  65. package/public/r/button-destructive.json +1 -1
  66. package/public/r/button-disabled.json +1 -1
  67. package/public/r/button-ghost.json +1 -1
  68. package/public/r/button-lg.json +1 -1
  69. package/public/r/button-link.json +1 -1
  70. package/public/r/button-loading.json +1 -1
  71. package/public/r/button-outline.json +1 -1
  72. package/public/r/button-secondary.json +1 -1
  73. package/public/r/button-sm.json +1 -1
  74. package/public/r/button-with-icon.json +1 -1
  75. package/public/r/button-with-link.json +1 -1
  76. package/public/r/button-xl.json +1 -1
  77. package/public/r/button-xs.json +1 -1
  78. package/public/r/calendar-headless.json +1 -1
  79. package/public/r/calendar-rac.json +16 -0
  80. package/public/r/calendar.json +1 -1
  81. package/public/r/card-demo.json +1 -1
  82. package/public/r/chart.json +15 -0
  83. package/public/r/checkbox-card.json +1 -1
  84. package/public/r/checkbox-demo.json +1 -1
  85. package/public/r/checkbox-disabled.json +1 -1
  86. package/public/r/checkbox-form.json +1 -1
  87. package/public/r/checkbox-group-demo.json +1 -1
  88. package/public/r/checkbox-group-disabled.json +1 -1
  89. package/public/r/checkbox-group-form.json +1 -1
  90. package/public/r/checkbox-group-nested-parent.json +1 -1
  91. package/public/r/checkbox-group-parent.json +1 -1
  92. package/public/r/checkbox-tree.json +12 -0
  93. package/public/r/checkbox-with-description.json +1 -1
  94. package/public/r/choicebox-inline.json +1 -1
  95. package/public/r/choicebox.json +1 -1
  96. package/public/r/codebase.json +1 -1
  97. package/public/r/collaborative-canvas.json +1 -1
  98. package/public/r/collapsible-demo.json +1 -1
  99. package/public/r/combobox-autohighlight.json +1 -1
  100. package/public/r/combobox-controlled.json +1 -1
  101. package/public/r/combobox-create-new.json +1 -1
  102. package/public/r/combobox-demo.json +1 -1
  103. package/public/r/combobox-disabled.json +1 -1
  104. package/public/r/combobox-fixed-width.json +1 -1
  105. package/public/r/combobox-form.json +1 -1
  106. package/public/r/combobox-grouped.json +1 -1
  107. package/public/r/combobox-lg.json +1 -1
  108. package/public/r/combobox-multiple-form.json +1 -1
  109. package/public/r/combobox-multiple.json +1 -1
  110. package/public/r/combobox-sm.json +1 -1
  111. package/public/r/combobox-with-clear.json +1 -1
  112. package/public/r/combobox-with-inner-input.json +1 -1
  113. package/public/r/combobox-with-label.json +1 -1
  114. package/public/r/command.json +18 -0
  115. package/public/r/comp-01.json +22 -0
  116. package/public/r/comp-02.json +23 -0
  117. package/public/r/comp-03.json +23 -0
  118. package/public/r/comp-04.json +23 -0
  119. package/public/r/comp-05.json +22 -0
  120. package/public/r/comp-06.json +23 -0
  121. package/public/r/comp-07.json +22 -0
  122. package/public/r/comp-08.json +23 -0
  123. package/public/r/comp-09.json +22 -0
  124. package/public/r/comp-10.json +22 -0
  125. package/public/r/comp-100.json +23 -0
  126. package/public/r/comp-101.json +23 -0
  127. package/public/r/comp-102.json +23 -0
  128. package/public/r/comp-103.json +23 -0
  129. package/public/r/comp-104.json +23 -0
  130. package/public/r/comp-105.json +23 -0
  131. package/public/r/comp-106.json +22 -0
  132. package/public/r/comp-107.json +22 -0
  133. package/public/r/comp-108.json +23 -0
  134. package/public/r/comp-109.json +22 -0
  135. package/public/r/comp-11.json +22 -0
  136. package/public/r/comp-110.json +22 -0
  137. package/public/r/comp-111.json +21 -0
  138. package/public/r/comp-112.json +21 -0
  139. package/public/r/comp-113.json +22 -0
  140. package/public/r/comp-114.json +23 -0
  141. package/public/r/comp-115.json +22 -0
  142. package/public/r/comp-116.json +22 -0
  143. package/public/r/comp-117.json +23 -0
  144. package/public/r/comp-118.json +23 -0
  145. package/public/r/comp-119.json +27 -0
  146. package/public/r/comp-12.json +22 -0
  147. package/public/r/comp-120.json +27 -0
  148. package/public/r/comp-121.json +27 -0
  149. package/public/r/comp-122.json +27 -0
  150. package/public/r/comp-123.json +22 -0
  151. package/public/r/comp-124.json +22 -0
  152. package/public/r/comp-125.json +31 -0
  153. package/public/r/comp-126.json +31 -0
  154. package/public/r/comp-127.json +21 -0
  155. package/public/r/comp-128.json +21 -0
  156. package/public/r/comp-129.json +24 -0
  157. package/public/r/comp-13.json +22 -0
  158. package/public/r/comp-130.json +23 -0
  159. package/public/r/comp-131.json +23 -0
  160. package/public/r/comp-132.json +23 -0
  161. package/public/r/comp-133.json +23 -0
  162. package/public/r/comp-134.json +23 -0
  163. package/public/r/comp-135.json +24 -0
  164. package/public/r/comp-136.json +23 -0
  165. package/public/r/comp-137.json +23 -0
  166. package/public/r/comp-138.json +25 -0
  167. package/public/r/comp-139.json +23 -0
  168. package/public/r/comp-14.json +22 -0
  169. package/public/r/comp-140.json +23 -0
  170. package/public/r/comp-141.json +23 -0
  171. package/public/r/comp-142.json +25 -0
  172. package/public/r/comp-143.json +23 -0
  173. package/public/r/comp-144.json +24 -0
  174. package/public/r/comp-145.json +24 -0
  175. package/public/r/comp-146.json +24 -0
  176. package/public/r/comp-147.json +24 -0
  177. package/public/r/comp-148.json +25 -0
  178. package/public/r/comp-149.json +24 -0
  179. package/public/r/comp-15.json +22 -0
  180. package/public/r/comp-150.json +21 -0
  181. package/public/r/comp-151.json +23 -0
  182. package/public/r/comp-152.json +23 -0
  183. package/public/r/comp-153.json +23 -0
  184. package/public/r/comp-154.json +23 -0
  185. package/public/r/comp-155.json +23 -0
  186. package/public/r/comp-156.json +25 -0
  187. package/public/r/comp-157.json +27 -0
  188. package/public/r/comp-158.json +24 -0
  189. package/public/r/comp-159.json +24 -0
  190. package/public/r/comp-16.json +22 -0
  191. package/public/r/comp-160.json +24 -0
  192. package/public/r/comp-161.json +24 -0
  193. package/public/r/comp-162.json +24 -0
  194. package/public/r/comp-163.json +28 -0
  195. package/public/r/comp-164.json +24 -0
  196. package/public/r/comp-165.json +24 -0
  197. package/public/r/comp-166.json +25 -0
  198. package/public/r/comp-167.json +24 -0
  199. package/public/r/comp-168.json +24 -0
  200. package/public/r/comp-169.json +23 -0
  201. package/public/r/comp-17.json +25 -0
  202. package/public/r/comp-170.json +25 -0
  203. package/public/r/comp-171.json +28 -0
  204. package/public/r/comp-172.json +23 -0
  205. package/public/r/comp-173.json +23 -0
  206. package/public/r/comp-174.json +23 -0
  207. package/public/r/comp-175.json +23 -0
  208. package/public/r/comp-176.json +23 -0
  209. package/public/r/comp-177.json +23 -0
  210. package/public/r/comp-178.json +23 -0
  211. package/public/r/comp-179.json +24 -0
  212. package/public/r/comp-18.json +25 -0
  213. package/public/r/comp-180.json +23 -0
  214. package/public/r/comp-181.json +25 -0
  215. package/public/r/comp-182.json +24 -0
  216. package/public/r/comp-183.json +25 -0
  217. package/public/r/comp-184.json +25 -0
  218. package/public/r/comp-185.json +24 -0
  219. package/public/r/comp-186.json +25 -0
  220. package/public/r/comp-187.json +25 -0
  221. package/public/r/comp-188.json +25 -0
  222. package/public/r/comp-189.json +23 -0
  223. package/public/r/comp-19.json +23 -0
  224. package/public/r/comp-190.json +23 -0
  225. package/public/r/comp-191.json +24 -0
  226. package/public/r/comp-192.json +23 -0
  227. package/public/r/comp-193.json +23 -0
  228. package/public/r/comp-194.json +24 -0
  229. package/public/r/comp-195.json +23 -0
  230. package/public/r/comp-196.json +24 -0
  231. package/public/r/comp-197.json +23 -0
  232. package/public/r/comp-198.json +23 -0
  233. package/public/r/comp-199.json +23 -0
  234. package/public/r/comp-20.json +23 -0
  235. package/public/r/comp-200.json +25 -0
  236. package/public/r/comp-201.json +22 -0
  237. package/public/r/comp-202.json +22 -0
  238. package/public/r/comp-203.json +23 -0
  239. package/public/r/comp-204.json +23 -0
  240. package/public/r/comp-205.json +23 -0
  241. package/public/r/comp-206.json +24 -0
  242. package/public/r/comp-207.json +23 -0
  243. package/public/r/comp-208.json +23 -0
  244. package/public/r/comp-209.json +23 -0
  245. package/public/r/comp-21.json +23 -0
  246. package/public/r/comp-210.json +24 -0
  247. package/public/r/comp-211.json +24 -0
  248. package/public/r/comp-212.json +23 -0
  249. package/public/r/comp-213.json +23 -0
  250. package/public/r/comp-214.json +23 -0
  251. package/public/r/comp-215.json +24 -0
  252. package/public/r/comp-216.json +22 -0
  253. package/public/r/comp-217.json +22 -0
  254. package/public/r/comp-218.json +25 -0
  255. package/public/r/comp-219.json +23 -0
  256. package/public/r/comp-22.json +23 -0
  257. package/public/r/comp-220.json +24 -0
  258. package/public/r/comp-221.json +23 -0
  259. package/public/r/comp-222.json +26 -0
  260. package/public/r/comp-223.json +26 -0
  261. package/public/r/comp-224.json +23 -0
  262. package/public/r/comp-225.json +24 -0
  263. package/public/r/comp-226.json +26 -0
  264. package/public/r/comp-227.json +26 -0
  265. package/public/r/comp-228.json +26 -0
  266. package/public/r/comp-229.json +30 -0
  267. package/public/r/comp-23.json +24 -0
  268. package/public/r/comp-230.json +30 -0
  269. package/public/r/comp-231.json +32 -0
  270. package/public/r/comp-232.json +31 -0
  271. package/public/r/comp-233.json +30 -0
  272. package/public/r/comp-234.json +28 -0
  273. package/public/r/comp-235.json +28 -0
  274. package/public/r/comp-236.json +24 -0
  275. package/public/r/comp-237.json +26 -0
  276. package/public/r/comp-238.json +26 -0
  277. package/public/r/comp-239.json +26 -0
  278. package/public/r/comp-24.json +23 -0
  279. package/public/r/comp-240.json +23 -0
  280. package/public/r/comp-241.json +24 -0
  281. package/public/r/comp-242.json +23 -0
  282. package/public/r/comp-243.json +23 -0
  283. package/public/r/comp-244.json +23 -0
  284. package/public/r/comp-245.json +23 -0
  285. package/public/r/comp-246.json +23 -0
  286. package/public/r/comp-247.json +23 -0
  287. package/public/r/comp-248.json +23 -0
  288. package/public/r/comp-249.json +24 -0
  289. package/public/r/comp-25.json +24 -0
  290. package/public/r/comp-250.json +25 -0
  291. package/public/r/comp-251.json +25 -0
  292. package/public/r/comp-252.json +25 -0
  293. package/public/r/comp-253.json +25 -0
  294. package/public/r/comp-254.json +35 -0
  295. package/public/r/comp-255.json +30 -0
  296. package/public/r/comp-256.json +25 -0
  297. package/public/r/comp-257.json +25 -0
  298. package/public/r/comp-258.json +32 -0
  299. package/public/r/comp-259.json +26 -0
  300. package/public/r/comp-26.json +24 -0
  301. package/public/r/comp-260.json +26 -0
  302. package/public/r/comp-261.json +24 -0
  303. package/public/r/comp-262.json +31 -0
  304. package/public/r/comp-263.json +25 -0
  305. package/public/r/comp-264.json +33 -0
  306. package/public/r/comp-265.json +32 -0
  307. package/public/r/comp-266.json +24 -0
  308. package/public/r/comp-267.json +19 -0
  309. package/public/r/comp-268.json +19 -0
  310. package/public/r/comp-269.json +19 -0
  311. package/public/r/comp-27.json +24 -0
  312. package/public/r/comp-270.json +19 -0
  313. package/public/r/comp-271.json +19 -0
  314. package/public/r/comp-272.json +19 -0
  315. package/public/r/comp-273.json +19 -0
  316. package/public/r/comp-274.json +19 -0
  317. package/public/r/comp-275.json +19 -0
  318. package/public/r/comp-276.json +19 -0
  319. package/public/r/comp-277.json +21 -0
  320. package/public/r/comp-278.json +21 -0
  321. package/public/r/comp-279.json +23 -0
  322. package/public/r/comp-28.json +24 -0
  323. package/public/r/comp-280.json +23 -0
  324. package/public/r/comp-281.json +23 -0
  325. package/public/r/comp-282.json +23 -0
  326. package/public/r/comp-283.json +23 -0
  327. package/public/r/comp-284.json +23 -0
  328. package/public/r/comp-285.json +23 -0
  329. package/public/r/comp-286.json +23 -0
  330. package/public/r/comp-287.json +24 -0
  331. package/public/r/comp-288.json +23 -0
  332. package/public/r/comp-289.json +24 -0
  333. package/public/r/comp-29.json +24 -0
  334. package/public/r/comp-290.json +24 -0
  335. package/public/r/comp-291.json +24 -0
  336. package/public/r/comp-292.json +24 -0
  337. package/public/r/comp-293.json +26 -0
  338. package/public/r/comp-294.json +24 -0
  339. package/public/r/comp-295.json +23 -0
  340. package/public/r/comp-296.json +23 -0
  341. package/public/r/comp-297.json +30 -0
  342. package/public/r/comp-298.json +26 -0
  343. package/public/r/comp-299.json +28 -0
  344. package/public/r/comp-30.json +23 -0
  345. package/public/r/comp-300.json +29 -0
  346. package/public/r/comp-301.json +24 -0
  347. package/public/r/comp-302.json +18 -0
  348. package/public/r/comp-303.json +18 -0
  349. package/public/r/comp-304.json +18 -0
  350. package/public/r/comp-305.json +21 -0
  351. package/public/r/comp-306.json +21 -0
  352. package/public/r/comp-307.json +21 -0
  353. package/public/r/comp-308.json +21 -0
  354. package/public/r/comp-309.json +21 -0
  355. package/public/r/comp-31.json +21 -0
  356. package/public/r/comp-310.json +23 -0
  357. package/public/r/comp-311.json +20 -0
  358. package/public/r/comp-312.json +21 -0
  359. package/public/r/comp-313.json +26 -0
  360. package/public/r/comp-314.json +26 -0
  361. package/public/r/comp-315.json +24 -0
  362. package/public/r/comp-316.json +25 -0
  363. package/public/r/comp-317.json +24 -0
  364. package/public/r/comp-318.json +24 -0
  365. package/public/r/comp-319.json +24 -0
  366. package/public/r/comp-32.json +21 -0
  367. package/public/r/comp-320.json +27 -0
  368. package/public/r/comp-321.json +28 -0
  369. package/public/r/comp-322.json +27 -0
  370. package/public/r/comp-323.json +30 -0
  371. package/public/r/comp-324.json +28 -0
  372. package/public/r/comp-325.json +29 -0
  373. package/public/r/comp-326.json +30 -0
  374. package/public/r/comp-327.json +30 -0
  375. package/public/r/comp-328.json +37 -0
  376. package/public/r/comp-329.json +38 -0
  377. package/public/r/comp-33.json +18 -0
  378. package/public/r/comp-330.json +27 -0
  379. package/public/r/comp-331.json +42 -0
  380. package/public/r/comp-332.json +25 -0
  381. package/public/r/comp-333.json +29 -0
  382. package/public/r/comp-334.json +22 -0
  383. package/public/r/comp-335.json +22 -0
  384. package/public/r/comp-336.json +22 -0
  385. package/public/r/comp-337.json +22 -0
  386. package/public/r/comp-338.json +22 -0
  387. package/public/r/comp-339.json +22 -0
  388. package/public/r/comp-34.json +27 -0
  389. package/public/r/comp-340.json +22 -0
  390. package/public/r/comp-341.json +22 -0
  391. package/public/r/comp-342.json +22 -0
  392. package/public/r/comp-343.json +22 -0
  393. package/public/r/comp-344.json +22 -0
  394. package/public/r/comp-345.json +22 -0
  395. package/public/r/comp-346.json +22 -0
  396. package/public/r/comp-347.json +22 -0
  397. package/public/r/comp-348.json +22 -0
  398. package/public/r/comp-349.json +22 -0
  399. package/public/r/comp-35.json +27 -0
  400. package/public/r/comp-350.json +22 -0
  401. package/public/r/comp-351.json +22 -0
  402. package/public/r/comp-352.json +24 -0
  403. package/public/r/comp-353.json +24 -0
  404. package/public/r/comp-354.json +23 -0
  405. package/public/r/comp-355.json +23 -0
  406. package/public/r/comp-356.json +23 -0
  407. package/public/r/comp-357.json +23 -0
  408. package/public/r/comp-358.json +23 -0
  409. package/public/r/comp-359.json +24 -0
  410. package/public/r/comp-36.json +26 -0
  411. package/public/r/comp-360.json +25 -0
  412. package/public/r/comp-361.json +23 -0
  413. package/public/r/comp-362.json +24 -0
  414. package/public/r/comp-363.json +27 -0
  415. package/public/r/comp-364.json +26 -0
  416. package/public/r/comp-365.json +24 -0
  417. package/public/r/comp-366.json +23 -0
  418. package/public/r/comp-367.json +23 -0
  419. package/public/r/comp-368.json +23 -0
  420. package/public/r/comp-369.json +23 -0
  421. package/public/r/comp-37.json +23 -0
  422. package/public/r/comp-370.json +23 -0
  423. package/public/r/comp-371.json +24 -0
  424. package/public/r/comp-372.json +24 -0
  425. package/public/r/comp-373.json +25 -0
  426. package/public/r/comp-374.json +26 -0
  427. package/public/r/comp-375.json +25 -0
  428. package/public/r/comp-376.json +26 -0
  429. package/public/r/comp-377.json +27 -0
  430. package/public/r/comp-378.json +24 -0
  431. package/public/r/comp-379.json +24 -0
  432. package/public/r/comp-38.json +23 -0
  433. package/public/r/comp-380.json +24 -0
  434. package/public/r/comp-381.json +26 -0
  435. package/public/r/comp-382.json +25 -0
  436. package/public/r/comp-383.json +26 -0
  437. package/public/r/comp-384.json +24 -0
  438. package/public/r/comp-385.json +24 -0
  439. package/public/r/comp-386.json +24 -0
  440. package/public/r/comp-387.json +28 -0
  441. package/public/r/comp-388.json +26 -0
  442. package/public/r/comp-389.json +24 -0
  443. package/public/r/comp-39.json +23 -0
  444. package/public/r/comp-390.json +23 -0
  445. package/public/r/comp-391.json +23 -0
  446. package/public/r/comp-392.json +23 -0
  447. package/public/r/comp-393.json +23 -0
  448. package/public/r/comp-394.json +24 -0
  449. package/public/r/comp-395.json +24 -0
  450. package/public/r/comp-396.json +24 -0
  451. package/public/r/comp-397.json +25 -0
  452. package/public/r/comp-398.json +26 -0
  453. package/public/r/comp-399.json +26 -0
  454. package/public/r/comp-40.json +23 -0
  455. package/public/r/comp-400.json +20 -0
  456. package/public/r/comp-401.json +19 -0
  457. package/public/r/comp-402.json +19 -0
  458. package/public/r/comp-403.json +19 -0
  459. package/public/r/comp-404.json +19 -0
  460. package/public/r/comp-405.json +19 -0
  461. package/public/r/comp-406.json +19 -0
  462. package/public/r/comp-407.json +19 -0
  463. package/public/r/comp-408.json +19 -0
  464. package/public/r/comp-409.json +22 -0
  465. package/public/r/comp-41.json +29 -0
  466. package/public/r/comp-410.json +22 -0
  467. package/public/r/comp-411.json +22 -0
  468. package/public/r/comp-412.json +19 -0
  469. package/public/r/comp-413.json +22 -0
  470. package/public/r/comp-414.json +22 -0
  471. package/public/r/comp-415.json +22 -0
  472. package/public/r/comp-416.json +23 -0
  473. package/public/r/comp-417.json +22 -0
  474. package/public/r/comp-418.json +23 -0
  475. package/public/r/comp-419.json +23 -0
  476. package/public/r/comp-42.json +30 -0
  477. package/public/r/comp-420.json +23 -0
  478. package/public/r/comp-421.json +23 -0
  479. package/public/r/comp-422.json +23 -0
  480. package/public/r/comp-423.json +24 -0
  481. package/public/r/comp-424.json +22 -0
  482. package/public/r/comp-425.json +23 -0
  483. package/public/r/comp-426.json +23 -0
  484. package/public/r/comp-427.json +23 -0
  485. package/public/r/comp-428.json +23 -0
  486. package/public/r/comp-429.json +23 -0
  487. package/public/r/comp-43.json +32 -0
  488. package/public/r/comp-430.json +23 -0
  489. package/public/r/comp-431.json +23 -0
  490. package/public/r/comp-432.json +23 -0
  491. package/public/r/comp-433.json +24 -0
  492. package/public/r/comp-434.json +24 -0
  493. package/public/r/comp-435.json +24 -0
  494. package/public/r/comp-436.json +24 -0
  495. package/public/r/comp-437.json +25 -0
  496. package/public/r/comp-438.json +23 -0
  497. package/public/r/comp-439.json +24 -0
  498. package/public/r/comp-44.json +25 -0
  499. package/public/r/comp-440.json +25 -0
  500. package/public/r/comp-441.json +25 -0
  501. package/public/r/comp-442.json +24 -0
  502. package/public/r/comp-443.json +24 -0
  503. package/public/r/comp-444.json +24 -0
  504. package/public/r/comp-445.json +24 -0
  505. package/public/r/comp-446.json +24 -0
  506. package/public/r/comp-447.json +25 -0
  507. package/public/r/comp-448.json +23 -0
  508. package/public/r/comp-449.json +23 -0
  509. package/public/r/comp-45.json +25 -0
  510. package/public/r/comp-450.json +23 -0
  511. package/public/r/comp-451.json +23 -0
  512. package/public/r/comp-452.json +23 -0
  513. package/public/r/comp-453.json +25 -0
  514. package/public/r/comp-454.json +22 -0
  515. package/public/r/comp-455.json +22 -0
  516. package/public/r/comp-456.json +22 -0
  517. package/public/r/comp-457.json +21 -0
  518. package/public/r/comp-458.json +22 -0
  519. package/public/r/comp-459.json +26 -0
  520. package/public/r/comp-46.json +26 -0
  521. package/public/r/comp-460.json +26 -0
  522. package/public/r/comp-461.json +27 -0
  523. package/public/r/comp-462.json +27 -0
  524. package/public/r/comp-463.json +30 -0
  525. package/public/r/comp-464.json +29 -0
  526. package/public/r/comp-465.json +29 -0
  527. package/public/r/comp-466.json +21 -0
  528. package/public/r/comp-467.json +23 -0
  529. package/public/r/comp-468.json +21 -0
  530. package/public/r/comp-469.json +21 -0
  531. package/public/r/comp-47.json +32 -0
  532. package/public/r/comp-470.json +21 -0
  533. package/public/r/comp-471.json +21 -0
  534. package/public/r/comp-472.json +23 -0
  535. package/public/r/comp-473.json +24 -0
  536. package/public/r/comp-474.json +22 -0
  537. package/public/r/comp-475.json +22 -0
  538. package/public/r/comp-476.json +21 -0
  539. package/public/r/comp-477.json +31 -0
  540. package/public/r/comp-478.json +36 -0
  541. package/public/r/comp-479.json +28 -0
  542. package/public/r/comp-48.json +32 -0
  543. package/public/r/comp-480.json +30 -0
  544. package/public/r/comp-481.json +34 -0
  545. package/public/r/comp-482.json +33 -0
  546. package/public/r/comp-483.json +37 -0
  547. package/public/r/comp-484.json +41 -0
  548. package/public/r/comp-485.json +43 -0
  549. package/public/r/comp-486.json +23 -0
  550. package/public/r/comp-487.json +26 -0
  551. package/public/r/comp-488.json +27 -0
  552. package/public/r/comp-489.json +28 -0
  553. package/public/r/comp-49.json +32 -0
  554. package/public/r/comp-490.json +23 -0
  555. package/public/r/comp-491.json +24 -0
  556. package/public/r/comp-492.json +25 -0
  557. package/public/r/comp-493.json +23 -0
  558. package/public/r/comp-494.json +23 -0
  559. package/public/r/comp-495.json +24 -0
  560. package/public/r/comp-496.json +23 -0
  561. package/public/r/comp-497.json +24 -0
  562. package/public/r/comp-498.json +24 -0
  563. package/public/r/comp-499.json +24 -0
  564. package/public/r/comp-50.json +32 -0
  565. package/public/r/comp-500.json +25 -0
  566. package/public/r/comp-501.json +25 -0
  567. package/public/r/comp-502.json +26 -0
  568. package/public/r/comp-503.json +27 -0
  569. package/public/r/comp-504.json +28 -0
  570. package/public/r/comp-505.json +28 -0
  571. package/public/r/comp-506.json +26 -0
  572. package/public/r/comp-507.json +27 -0
  573. package/public/r/comp-508.json +25 -0
  574. package/public/r/comp-509.json +25 -0
  575. package/public/r/comp-51.json +23 -0
  576. package/public/r/comp-510.json +24 -0
  577. package/public/r/comp-511.json +27 -0
  578. package/public/r/comp-512.json +27 -0
  579. package/public/r/comp-513.json +21 -0
  580. package/public/r/comp-514.json +21 -0
  581. package/public/r/comp-515.json +21 -0
  582. package/public/r/comp-516.json +22 -0
  583. package/public/r/comp-517.json +22 -0
  584. package/public/r/comp-518.json +21 -0
  585. package/public/r/comp-519.json +21 -0
  586. package/public/r/comp-52.json +23 -0
  587. package/public/r/comp-520.json +22 -0
  588. package/public/r/comp-521.json +22 -0
  589. package/public/r/comp-522.json +21 -0
  590. package/public/r/comp-523.json +21 -0
  591. package/public/r/comp-524.json +21 -0
  592. package/public/r/comp-525.json +21 -0
  593. package/public/r/comp-526.json +22 -0
  594. package/public/r/comp-527.json +23 -0
  595. package/public/r/comp-528.json +22 -0
  596. package/public/r/comp-529.json +22 -0
  597. package/public/r/comp-53.json +24 -0
  598. package/public/r/comp-530.json +22 -0
  599. package/public/r/comp-531.json +22 -0
  600. package/public/r/comp-532.json +22 -0
  601. package/public/r/comp-533.json +22 -0
  602. package/public/r/comp-534.json +22 -0
  603. package/public/r/comp-535.json +22 -0
  604. package/public/r/comp-536.json +22 -0
  605. package/public/r/comp-537.json +22 -0
  606. package/public/r/comp-538.json +22 -0
  607. package/public/r/comp-539.json +22 -0
  608. package/public/r/comp-54.json +26 -0
  609. package/public/r/comp-540.json +21 -0
  610. package/public/r/comp-541.json +21 -0
  611. package/public/r/comp-542.json +124 -0
  612. package/public/r/comp-543.json +29 -0
  613. package/public/r/comp-544.json +26 -0
  614. package/public/r/comp-545.json +29 -0
  615. package/public/r/comp-546.json +29 -0
  616. package/public/r/comp-547.json +29 -0
  617. package/public/r/comp-548.json +29 -0
  618. package/public/r/comp-549.json +29 -0
  619. package/public/r/comp-55.json +27 -0
  620. package/public/r/comp-550.json +29 -0
  621. package/public/r/comp-551.json +30 -0
  622. package/public/r/comp-552.json +29 -0
  623. package/public/r/comp-553.json +29 -0
  624. package/public/r/comp-554.json +36 -0
  625. package/public/r/comp-555.json +23 -0
  626. package/public/r/comp-556.json +23 -0
  627. package/public/r/comp-557.json +23 -0
  628. package/public/r/comp-558.json +23 -0
  629. package/public/r/comp-559.json +23 -0
  630. package/public/r/comp-56.json +26 -0
  631. package/public/r/comp-560.json +23 -0
  632. package/public/r/comp-561.json +25 -0
  633. package/public/r/comp-562.json +23 -0
  634. package/public/r/comp-563.json +23 -0
  635. package/public/r/comp-564.json +24 -0
  636. package/public/r/comp-565.json +20 -0
  637. package/public/r/comp-566.json +20 -0
  638. package/public/r/comp-567.json +20 -0
  639. package/public/r/comp-568.json +20 -0
  640. package/public/r/comp-569.json +20 -0
  641. package/public/r/comp-57.json +26 -0
  642. package/public/r/comp-570.json +20 -0
  643. package/public/r/comp-571.json +23 -0
  644. package/public/r/comp-572.json +23 -0
  645. package/public/r/comp-573.json +20 -0
  646. package/public/r/comp-574.json +22 -0
  647. package/public/r/comp-575.json +20 -0
  648. package/public/r/comp-576.json +21 -0
  649. package/public/r/comp-577.json +23 -0
  650. package/public/r/comp-578.json +28 -0
  651. package/public/r/comp-579.json +28 -0
  652. package/public/r/comp-58.json +25 -0
  653. package/public/r/comp-580.json +29 -0
  654. package/public/r/comp-581.json +45 -0
  655. package/public/r/comp-582.json +42 -0
  656. package/public/r/comp-583.json +41 -0
  657. package/public/r/comp-584.json +41 -0
  658. package/public/r/comp-585.json +41 -0
  659. package/public/r/comp-586.json +34 -0
  660. package/public/r/comp-587.json +29 -0
  661. package/public/r/comp-588.json +33 -0
  662. package/public/r/comp-589.json +37 -0
  663. package/public/r/comp-59.json +22 -0
  664. package/public/r/comp-590.json +40 -0
  665. package/public/r/comp-591.json +29 -0
  666. package/public/r/comp-592.json +41 -0
  667. package/public/r/comp-593.json +36 -0
  668. package/public/r/comp-594.json +33 -0
  669. package/public/r/comp-595.json +22 -0
  670. package/public/r/comp-596.json +26 -0
  671. package/public/r/comp-597.json +22 -0
  672. package/public/r/comp-598.json +22 -0
  673. package/public/r/comp-599.json +22 -0
  674. package/public/r/comp-60.json +23 -0
  675. package/public/r/comp-600.json +17 -0
  676. package/public/r/comp-601.json +20 -0
  677. package/public/r/comp-602.json +17 -0
  678. package/public/r/comp-603.json +20 -0
  679. package/public/r/comp-604.json +17 -0
  680. package/public/r/comp-605.json +17 -0
  681. package/public/r/comp-606.json +20 -0
  682. package/public/r/comp-607.json +20 -0
  683. package/public/r/comp-608.json +20 -0
  684. package/public/r/comp-609.json +20 -0
  685. package/public/r/comp-61.json +23 -0
  686. package/public/r/comp-610.json +23 -0
  687. package/public/r/comp-611.json +23 -0
  688. package/public/r/comp-612.json +17 -0
  689. package/public/r/comp-613.json +20 -0
  690. package/public/r/comp-614.json +17 -0
  691. package/public/r/comp-615.json +26 -0
  692. package/public/r/comp-616.json +26 -0
  693. package/public/r/comp-617.json +26 -0
  694. package/public/r/comp-62.json +23 -0
  695. package/public/r/comp-63.json +22 -0
  696. package/public/r/comp-64.json +23 -0
  697. package/public/r/comp-65.json +22 -0
  698. package/public/r/comp-66.json +22 -0
  699. package/public/r/comp-67.json +23 -0
  700. package/public/r/comp-68.json +24 -0
  701. package/public/r/comp-69.json +24 -0
  702. package/public/r/comp-70.json +24 -0
  703. package/public/r/comp-71.json +22 -0
  704. package/public/r/comp-72.json +21 -0
  705. package/public/r/comp-73.json +18 -0
  706. package/public/r/comp-74.json +27 -0
  707. package/public/r/comp-75.json +22 -0
  708. package/public/r/comp-76.json +23 -0
  709. package/public/r/comp-77.json +22 -0
  710. package/public/r/comp-78.json +21 -0
  711. package/public/r/comp-79.json +22 -0
  712. package/public/r/comp-80.json +21 -0
  713. package/public/r/comp-81.json +21 -0
  714. package/public/r/comp-82.json +22 -0
  715. package/public/r/comp-83.json +21 -0
  716. package/public/r/comp-84.json +21 -0
  717. package/public/r/comp-85.json +22 -0
  718. package/public/r/comp-86.json +22 -0
  719. package/public/r/comp-87.json +21 -0
  720. package/public/r/comp-88.json +22 -0
  721. package/public/r/comp-89.json +21 -0
  722. package/public/r/comp-90.json +22 -0
  723. package/public/r/comp-91.json +22 -0
  724. package/public/r/comp-92.json +22 -0
  725. package/public/r/comp-93.json +22 -0
  726. package/public/r/comp-94.json +24 -0
  727. package/public/r/comp-95.json +26 -0
  728. package/public/r/comp-96.json +21 -0
  729. package/public/r/comp-97.json +21 -0
  730. package/public/r/comp-98.json +22 -0
  731. package/public/r/comp-99.json +23 -0
  732. package/public/r/comparison-event-handlers.json +1 -1
  733. package/public/r/comparison-hover.json +1 -1
  734. package/public/r/comparison.json +1 -1
  735. package/public/r/context-menu.json +16 -0
  736. package/public/r/contribution-graph-custom-footer.json +1 -1
  737. package/public/r/credit-card-apple.json +1 -1
  738. package/public/r/credit-card-back.json +1 -1
  739. package/public/r/credit-card.json +1 -1
  740. package/public/r/cropper.json +15 -0
  741. package/public/r/cursor-color.json +1 -1
  742. package/public/r/cursor-message.json +1 -1
  743. package/public/r/cursor-name-message.json +1 -1
  744. package/public/r/cursor-name.json +1 -1
  745. package/public/r/cursor.json +1 -1
  746. package/public/r/dashboard-1.json +263 -0
  747. package/public/r/dashboard-2.json +264 -0
  748. package/public/r/dashboard-3.json +225 -0
  749. package/public/r/datefield-rac.json +15 -0
  750. package/public/r/deck-controlled.json +1 -1
  751. package/public/r/deck-product-cards.json +1 -1
  752. package/public/r/deck.json +1 -1
  753. package/public/r/dialog-close-confirmation.json +1 -1
  754. package/public/r/dialog-demo.json +1 -1
  755. package/public/r/dialog-from-menu.json +1 -1
  756. package/public/r/dialog-nested.json +1 -1
  757. package/public/r/dialog-stack-controlled.json +1 -1
  758. package/public/r/dialog-stack-navigation.json +1 -1
  759. package/public/r/dialog-stack-six.json +1 -1
  760. package/public/r/dialog-stack.json +1 -1
  761. package/public/r/dropdown-menu.json +15 -0
  762. package/public/r/dropzone-custom-empty-state.json +1 -1
  763. package/public/r/dropzone-image-preview.json +1 -1
  764. package/public/r/editor.json +1 -1
  765. package/public/r/emails.json +243 -0
  766. package/public/r/empty-demo.json +1 -1
  767. package/public/r/example-app-calendar.json +323 -0
  768. package/public/r/field-2.json +19 -0
  769. package/public/r/field-autocomplete.json +1 -1
  770. package/public/r/field-checkbox-group.json +1 -1
  771. package/public/r/field-checkbox.json +1 -1
  772. package/public/r/field-combobox-multiple.json +1 -1
  773. package/public/r/field-combobox.json +1 -1
  774. package/public/r/field-complete-form.json +1 -1
  775. package/public/r/field-demo.json +1 -1
  776. package/public/r/field-disabled.json +1 -1
  777. package/public/r/field-error.json +1 -1
  778. package/public/r/field-number-field.json +1 -1
  779. package/public/r/field-radio.json +1 -1
  780. package/public/r/field-required.json +1 -1
  781. package/public/r/field-select.json +1 -1
  782. package/public/r/field-slider.json +1 -1
  783. package/public/r/field-switch.json +1 -1
  784. package/public/r/field-textarea.json +1 -1
  785. package/public/r/field-validity.json +1 -1
  786. package/public/r/fieldset-demo.json +1 -1
  787. package/public/r/files.json +195 -0
  788. package/public/r/form-demo.json +1 -1
  789. package/public/r/form-zod.json +1 -1
  790. package/public/r/form.json +1 -1
  791. package/public/r/frame-demo.json +1 -1
  792. package/public/r/gantt-lanes.json +1 -1
  793. package/public/r/gantt-no-sidebar.json +1 -1
  794. package/public/r/gantt-read-only.json +1 -1
  795. package/public/r/gantt.json +1 -1
  796. package/public/r/glimpse-custom.json +1 -1
  797. package/public/r/glimpse.json +1 -1
  798. package/public/r/gooey-toast-demo.json +1 -1
  799. package/public/r/gooey-toast-promise.json +1 -1
  800. package/public/r/gooey-toast-states.json +1 -1
  801. package/public/r/gooey-toast-with-button.json +1 -1
  802. package/public/r/group-demo.json +1 -1
  803. package/public/r/group-with-input.json +1 -1
  804. package/public/r/hero.json +1 -1
  805. package/public/r/hover-card.json +15 -0
  806. package/public/r/image-crop-circular.json +1 -1
  807. package/public/r/image-crop-custom.json +1 -1
  808. package/public/r/image-crop.json +1 -1
  809. package/public/r/image-zoom-background.json +1 -1
  810. package/public/r/image-zoom-margin.json +1 -1
  811. package/public/r/image-zoom.json +1 -1
  812. package/public/r/input-demo.json +1 -1
  813. package/public/r/input-disabled.json +1 -1
  814. package/public/r/input-file.json +1 -1
  815. package/public/r/input-group.json +20 -0
  816. package/public/r/input-lg.json +1 -1
  817. package/public/r/input-sm.json +1 -1
  818. package/public/r/input-with-button.json +1 -1
  819. package/public/r/input-with-label.json +1 -1
  820. package/public/r/kanban-simple.json +1 -1
  821. package/public/r/kanban.json +1 -1
  822. package/public/r/kbd.json +12 -0
  823. package/public/r/leads.json +271 -0
  824. package/public/r/list-simple.json +1 -1
  825. package/public/r/list.json +1 -1
  826. package/public/r/maps.json +188 -0
  827. package/public/r/menu-checkbox.json +1 -1
  828. package/public/r/menu-close-on-click.json +1 -1
  829. package/public/r/menu-demo.json +1 -1
  830. package/public/r/menu-group-labels.json +1 -1
  831. package/public/r/menu-hover.json +1 -1
  832. package/public/r/menu-link.json +1 -1
  833. package/public/r/menu-nested.json +1 -1
  834. package/public/r/menu-radio-group.json +1 -1
  835. package/public/r/meter-demo.json +1 -1
  836. package/public/r/meter-with-formatted-value.json +1 -1
  837. package/public/r/meter-with-range.json +1 -1
  838. package/public/r/mini-calendar-controlled.json +1 -1
  839. package/public/r/multiselect.json +15 -0
  840. package/public/r/navigation-menu.json +12 -0
  841. package/public/r/number-field-form.json +1 -1
  842. package/public/r/number-field-with-label.json +1 -1
  843. package/public/r/number-field-with-scrub.json +1 -1
  844. package/public/r/number-field-with-step.json +1 -1
  845. package/public/r/pill-avatar-group.json +1 -1
  846. package/public/r/pill-delta.json +1 -1
  847. package/public/r/pill-icon.json +1 -1
  848. package/public/r/pill-indicator.json +1 -1
  849. package/public/r/pill-status.json +1 -1
  850. package/public/r/pill.json +1 -1
  851. package/public/r/popover-demo.json +1 -1
  852. package/public/r/popover-with-close.json +1 -1
  853. package/public/r/preview-card-demo.json +1 -1
  854. package/public/r/pricing.json +1 -1
  855. package/public/r/progress-with-formatted-value.json +1 -1
  856. package/public/r/progress-with-label-value.json +1 -1
  857. package/public/r/radio-group-card.json +1 -1
  858. package/public/r/radio-group-demo.json +1 -1
  859. package/public/r/radio-group-disabled.json +1 -1
  860. package/public/r/radio-group-form.json +1 -1
  861. package/public/r/radio-group-with-description.json +1 -1
  862. package/public/r/reel-custom.json +1 -1
  863. package/public/r/reel-images.json +1 -1
  864. package/public/r/reel-minimal.json +1 -1
  865. package/public/r/reel.json +1 -1
  866. package/public/r/registry.json +18217 -0
  867. package/public/r/relative-time-controlled.json +1 -1
  868. package/public/r/relative-time-format-date.json +1 -1
  869. package/public/r/relative-time-format-time.json +1 -1
  870. package/public/r/relative-time.json +1 -1
  871. package/public/r/rentals.json +187 -0
  872. package/public/r/roadmap.json +1 -1
  873. package/public/r/sandbox-no-file-explorer.json +1 -1
  874. package/public/r/sandbox.json +1 -1
  875. package/public/r/scroll-area-both.json +1 -1
  876. package/public/r/scroll-area-demo.json +1 -1
  877. package/public/r/scroll-area-horizontal.json +1 -1
  878. package/public/r/select-demo.json +1 -1
  879. package/public/r/select-disabled.json +1 -1
  880. package/public/r/select-form.json +1 -1
  881. package/public/r/select-lg.json +1 -1
  882. package/public/r/select-native.json +12 -0
  883. package/public/r/select-sm.json +1 -1
  884. package/public/r/select-with-groups.json +1 -1
  885. package/public/r/select-without-alignment.json +1 -1
  886. package/public/r/select.json +1 -1
  887. package/public/r/separator-demo.json +1 -1
  888. package/public/r/sheet-demo.json +1 -1
  889. package/public/r/sheet-position.json +1 -1
  890. package/public/r/sidebar-nav.json +22 -0
  891. package/public/r/skeleton-demo.json +1 -1
  892. package/public/r/skeleton.json +1 -1
  893. package/public/r/slider-form.json +1 -1
  894. package/public/r/slider-with-label-value.json +1 -1
  895. package/public/r/sonner.json +16 -0
  896. package/public/r/stats-card.json +22 -0
  897. package/public/r/status-custom.json +1 -1
  898. package/public/r/stepper.json +15 -0
  899. package/public/r/stories-images.json +1 -1
  900. package/public/r/switch-card.json +1 -1
  901. package/public/r/switch-demo.json +1 -1
  902. package/public/r/switch-disabled.json +1 -1
  903. package/public/r/switch-form.json +1 -1
  904. package/public/r/switch-with-description.json +1 -1
  905. package/public/r/table-demo.json +1 -1
  906. package/public/r/table-framed.json +1 -1
  907. package/public/r/table-simple.json +1 -1
  908. package/public/r/table.json +1 -1
  909. package/public/r/tabs-demo.json +1 -1
  910. package/public/r/tabs-underline-vertical.json +1 -1
  911. package/public/r/tabs-underline.json +1 -1
  912. package/public/r/tabs-vertical.json +1 -1
  913. package/public/r/tags-create.json +1 -1
  914. package/public/r/tags-filter.json +1 -1
  915. package/public/r/tags.json +1 -1
  916. package/public/r/template-auth-eight.json +28 -0
  917. package/public/r/template-auth-five.json +28 -0
  918. package/public/r/template-auth-four.json +29 -0
  919. package/public/r/template-auth-nine.json +28 -0
  920. package/public/r/template-auth-one.json +49 -0
  921. package/public/r/template-auth-seven.json +29 -0
  922. package/public/r/template-auth-six.json +28 -0
  923. package/public/r/template-auth-three.json +49 -0
  924. package/public/r/template-auth-two.json +44 -0
  925. package/public/r/template-hero-eight.json +83 -0
  926. package/public/r/template-hero-eleven.json +29 -0
  927. package/public/r/template-hero-five.json +35 -0
  928. package/public/r/template-hero-four.json +35 -0
  929. package/public/r/template-hero-fourteen.json +101 -0
  930. package/public/r/template-hero-nine.json +74 -0
  931. package/public/r/template-hero-one.json +90 -0
  932. package/public/r/template-hero-seven.json +83 -0
  933. package/public/r/template-hero-six.json +83 -0
  934. package/public/r/template-hero-ten.json +77 -0
  935. package/public/r/template-hero-thirteen.json +101 -0
  936. package/public/r/template-hero-three.json +35 -0
  937. package/public/r/template-hero-twelve.json +30 -0
  938. package/public/r/template-hero-two.json +96 -0
  939. package/public/r/template-logo-cloud-five.json +68 -0
  940. package/public/r/template-logo-cloud-four.json +71 -0
  941. package/public/r/template-logo-cloud-one.json +89 -0
  942. package/public/r/template-logo-cloud-three.json +71 -0
  943. package/public/r/template-logo-cloud-two.json +74 -0
  944. package/public/r/textarea-demo.json +1 -1
  945. package/public/r/textarea-disabled.json +1 -1
  946. package/public/r/textarea-form.json +1 -1
  947. package/public/r/textarea-lg.json +1 -1
  948. package/public/r/textarea-sm.json +1 -1
  949. package/public/r/textarea-with-label.json +1 -1
  950. package/public/r/ticker-inline.json +1 -1
  951. package/public/r/timeline.json +15 -0
  952. package/public/r/toast-demo.json +1 -1
  953. package/public/r/toast-heights.json +1 -1
  954. package/public/r/toast-loading.json +1 -1
  955. package/public/r/toast-promise.json +1 -1
  956. package/public/r/toast-with-action.json +1 -1
  957. package/public/r/toast-with-status.json +1 -1
  958. package/public/r/toggle-demo.json +1 -1
  959. package/public/r/toggle-disabled.json +1 -1
  960. package/public/r/toggle-group-demo.json +1 -1
  961. package/public/r/toggle-group-disabled.json +1 -1
  962. package/public/r/toggle-group-lg.json +1 -1
  963. package/public/r/toggle-group-multiple.json +1 -1
  964. package/public/r/toggle-group-outline-with-separator.json +1 -1
  965. package/public/r/toggle-group-outline.json +1 -1
  966. package/public/r/toggle-group-sm.json +1 -1
  967. package/public/r/toggle-group-with-disabled-item.json +1 -1
  968. package/public/r/toggle-icon-group.json +1 -1
  969. package/public/r/toggle-lg.json +1 -1
  970. package/public/r/toggle-outline.json +1 -1
  971. package/public/r/toggle-sm.json +1 -1
  972. package/public/r/toggle-with-icon.json +1 -1
  973. package/public/r/toolbar-demo.json +1 -1
  974. package/public/r/tooltip-demo.json +1 -1
  975. package/public/r/tooltip-grouped.json +1 -1
  976. package/public/r/tree-controlled.json +1 -1
  977. package/public/r/tree-custom-icons.json +1 -1
  978. package/public/r/tree-no-lines.json +1 -1
  979. package/public/r/tree-simple.json +1 -1
  980. package/public/r/tree.json +1 -1
  981. package/public/r/typography.json +1 -1
  982. package/public/r/ui.json +5 -0
  983. package/public/r/use-character-limit.json +12 -0
  984. package/public/r/use-file-upload.json +12 -0
  985. package/public/r/use-pagination.json +12 -0
  986. package/public/r/use-slider-with-input.json +12 -0
  987. package/public/r/use-toast.json +12 -0
  988. package/public/r/utils.json +16 -0
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/accordion-single.tsx",
11
- "content": "import {\n Accordion,\n AccordionItem,\n AccordionPanel,\n AccordionTrigger,\n} from \"@/registry/default/ui/accordion\"\n\nexport default function AccordionSingleDemo() {\n return (\n <Accordion className=\"w-full\" multiple={false}>\n <AccordionItem value=\"item-1\">\n <AccordionTrigger>What is Base UI?</AccordionTrigger>\n <AccordionPanel>\n Base UI is a library of high-quality unstyled React components for\n design systems and web apps.\n </AccordionPanel>\n </AccordionItem>\n <AccordionItem value=\"item-2\">\n <AccordionTrigger>How do I get started?</AccordionTrigger>\n <AccordionPanel>\n Head to the \"Quick start\" guide in the docs. If you've used unstyled\n libraries before, you'll feel at home.\n </AccordionPanel>\n </AccordionItem>\n <AccordionItem value=\"item-3\">\n <AccordionTrigger>Can I use it for my project?</AccordionTrigger>\n <AccordionPanel>\n Of course! Base UI is free and open source.\n </AccordionPanel>\n </AccordionItem>\n </Accordion>\n )\n}\n",
11
+ "content": "import {\n Accordion,\n AccordionItem,\n AccordionPanel,\n AccordionTrigger,\n} from \"@/registry/default/ui/accordion\"\n\nexport default function AccordionSingleDemo() {\n return (\n <Accordion className=\"w-full\" multiple={false}>\n <AccordionItem value=\"item-1\">\n <AccordionTrigger>Updated What is Base UI?</AccordionTrigger>\n <AccordionPanel>\n Updated Base UI is a library of high-quality unstyled React components\n for design systems and web apps.\n </AccordionPanel>\n </AccordionItem>\n <AccordionItem value=\"item-2\">\n <AccordionTrigger>Updated How do I get started?</AccordionTrigger>\n <AccordionPanel>\n Updated Head to the \"Quick start\" guide in the docs. If you've used\n unstyled libraries before, you'll feel at home.\n </AccordionPanel>\n </AccordionItem>\n <AccordionItem value=\"item-3\">\n <AccordionTrigger>\n Updated Can I use it for my project?\n </AccordionTrigger>\n <AccordionPanel>\n Updated Of course! Base UI is free and open source.\n </AccordionPanel>\n </AccordionItem>\n </Accordion>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/alert-demo.tsx",
11
- "content": "import {\n Alert,\n AlertDescription,\n AlertTitle,\n} from \"@/registry/default/ui/alert\"\n\nexport default function AlertDemo() {\n return (\n <Alert>\n <AlertTitle>Heads up!</AlertTitle>\n <AlertDescription>\n <p>Describe what can be done about it here.</p>\n </AlertDescription>\n </Alert>\n )\n}\n",
11
+ "content": "import {\n Alert,\n AlertDescription,\n AlertTitle,\n} from \"@/registry/default/ui/alert\"\n\nexport default function AlertDemo() {\n return (\n <Alert>\n <AlertTitle>Updated Heads up!</AlertTitle>\n <AlertDescription>\n <p>Updated Describe what can be done about it here.</p>\n </AlertDescription>\n </Alert>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -9,7 +9,7 @@
9
9
  "files": [
10
10
  {
11
11
  "path": "registry/default/examples/alert-dialog-demo.tsx",
12
- "content": "import {\n AlertDialog,\n AlertDialogClose,\n AlertDialogDescription,\n AlertDialogFooter,\n AlertDialogHeader,\n AlertDialogPopup,\n AlertDialogTitle,\n AlertDialogTrigger,\n} from \"@/registry/default/ui/alert-dialog\"\nimport { Button } from \"@/registry/default/ui/button\"\n\nexport default function AlertDialogDemo() {\n return (\n <AlertDialog>\n <AlertDialogTrigger render={<Button variant=\"destructive-outline\" />}>\n Delete Account\n </AlertDialogTrigger>\n <AlertDialogPopup>\n <AlertDialogHeader>\n <AlertDialogTitle>Are you absolutely sure?</AlertDialogTitle>\n <AlertDialogDescription>\n This action cannot be undone. This will permanently delete your\n account and remove your data from our servers.\n </AlertDialogDescription>\n </AlertDialogHeader>\n <AlertDialogFooter>\n <AlertDialogClose render={<Button variant=\"ghost\" />}>\n Cancel\n </AlertDialogClose>\n <AlertDialogClose render={<Button variant=\"destructive\" />}>\n Delete Account\n </AlertDialogClose>\n </AlertDialogFooter>\n </AlertDialogPopup>\n </AlertDialog>\n )\n}\n",
12
+ "content": "import {\n AlertDialog,\n AlertDialogClose,\n AlertDialogDescription,\n AlertDialogFooter,\n AlertDialogHeader,\n AlertDialogPopup,\n AlertDialogTitle,\n AlertDialogTrigger,\n} from \"@/registry/default/ui/alert-dialog\"\nimport { Button } from \"@/registry/default/ui/button\"\n\nexport default function AlertDialogDemo() {\n return (\n <AlertDialog>\n <AlertDialogTrigger render={<Button variant=\"destructive-outline\" />}>\n Updated Delete Account\n </AlertDialogTrigger>\n <AlertDialogPopup>\n <AlertDialogHeader>\n <AlertDialogTitle>Updated Are you absolutely sure?</AlertDialogTitle>\n <AlertDialogDescription>\n Updated This action cannot be undone. This will permanently delete\n your account and remove your data from our servers.\n </AlertDialogDescription>\n </AlertDialogHeader>\n <AlertDialogFooter>\n <AlertDialogClose render={<Button variant=\"ghost\" />}>\n Updated Cancel\n </AlertDialogClose>\n <AlertDialogClose render={<Button variant=\"destructive\" />}>\n Updated Delete Account\n </AlertDialogClose>\n </AlertDialogFooter>\n </AlertDialogPopup>\n </AlertDialog>\n )\n}\n",
13
13
  "type": "registry:example"
14
14
  }
15
15
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/alert-error.tsx",
11
- "content": "import { CircleAlertIcon } from \"lucide-react\"\n\nimport {\n Alert,\n AlertDescription,\n AlertTitle,\n} from \"@/registry/default/ui/alert\"\n\nexport default function AlertWarning() {\n return (\n <Alert variant=\"error\">\n <CircleAlertIcon />\n <AlertTitle>Heads up!</AlertTitle>\n <AlertDescription>\n Describe what can be done about it here.\n </AlertDescription>\n </Alert>\n )\n}\n",
11
+ "content": "import { CircleAlertIcon } from \"lucide-react\"\n\nimport {\n Alert,\n AlertDescription,\n AlertTitle,\n} from \"@/registry/default/ui/alert\"\n\nexport default function AlertWarning() {\n return (\n <Alert variant=\"error\">\n <CircleAlertIcon />\n <AlertTitle>Updated Heads up!</AlertTitle>\n <AlertDescription>\n Updated Describe what can be done about it here.\n </AlertDescription>\n </Alert>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/alert-info.tsx",
11
- "content": "import { InfoIcon } from \"lucide-react\"\n\nimport {\n Alert,\n AlertDescription,\n AlertTitle,\n} from \"@/registry/default/ui/alert\"\n\nexport default function AlertInfo() {\n return (\n <Alert variant=\"info\">\n <InfoIcon />\n <AlertTitle>Heads up!</AlertTitle>\n <AlertDescription>\n Describe what can be done about it here.\n </AlertDescription>\n </Alert>\n )\n}\n",
11
+ "content": "import { InfoIcon } from \"lucide-react\"\n\nimport {\n Alert,\n AlertDescription,\n AlertTitle,\n} from \"@/registry/default/ui/alert\"\n\nexport default function AlertInfo() {\n return (\n <Alert variant=\"info\">\n <InfoIcon />\n <AlertTitle>Updated Heads up!</AlertTitle>\n <AlertDescription>\n Updated Describe what can be done about it here.\n </AlertDescription>\n </Alert>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/alert-success.tsx",
11
- "content": "import { CircleCheckIcon } from \"lucide-react\"\n\nimport {\n Alert,\n AlertDescription,\n AlertTitle,\n} from \"@/registry/default/ui/alert\"\nimport { Button } from \"@/registry/default/ui/button\"\n\nexport default function AlertSuccess() {\n return (\n <Alert variant=\"success\">\n <CircleCheckIcon />\n <AlertTitle>Heads up!</AlertTitle>\n <AlertDescription>\n Describe what can be done about it here.\n </AlertDescription>\n </Alert>\n )\n}\n",
11
+ "content": "import { CircleCheckIcon } from \"lucide-react\"\n\nimport {\n Alert,\n AlertDescription,\n AlertTitle,\n} from \"@/registry/default/ui/alert\"\nimport { Button } from \"@/registry/default/ui/button\"\n\nexport default function AlertSuccess() {\n return (\n <Alert variant=\"success\">\n <CircleCheckIcon />\n <AlertTitle>Updated Heads up!</AlertTitle>\n <AlertDescription>\n Updated Describe what can be done about it here.\n </AlertDescription>\n </Alert>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/alert-warning.tsx",
11
- "content": "import { TriangleAlertIcon } from \"lucide-react\"\n\nimport {\n Alert,\n AlertDescription,\n AlertTitle,\n} from \"@/registry/default/ui/alert\"\n\nexport default function AlertWarning() {\n return (\n <Alert variant=\"warning\">\n <TriangleAlertIcon />\n <AlertTitle>Heads up!</AlertTitle>\n <AlertDescription>\n Describe what can be done about it here.\n </AlertDescription>\n </Alert>\n )\n}\n",
11
+ "content": "import { TriangleAlertIcon } from \"lucide-react\"\n\nimport {\n Alert,\n AlertDescription,\n AlertTitle,\n} from \"@/registry/default/ui/alert\"\n\nexport default function AlertWarning() {\n return (\n <Alert variant=\"warning\">\n <TriangleAlertIcon />\n <AlertTitle>Updated Heads up!</AlertTitle>\n <AlertDescription>\n Updated Describe what can be done about it here.\n </AlertDescription>\n </Alert>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -9,7 +9,7 @@
9
9
  "files": [
10
10
  {
11
11
  "path": "registry/default/examples/alert-with-icon-action.tsx",
12
- "content": "import { InfoIcon } from \"lucide-react\"\n\nimport {\n Alert,\n AlertAction,\n AlertDescription,\n AlertTitle,\n} from \"@/registry/default/ui/alert\"\nimport { Button } from \"@/registry/default/ui/button\"\n\nexport default function AlertWithIconAction() {\n return (\n <Alert>\n <InfoIcon />\n <AlertTitle>Heads up!</AlertTitle>\n <AlertDescription>\n Describe what can be done about it here.\n </AlertDescription>\n <AlertAction>\n <Button variant=\"ghost\" size=\"xs\">\n Dismiss\n </Button>\n <Button size=\"xs\">Ok</Button>\n </AlertAction>\n </Alert>\n )\n}\n",
12
+ "content": "import { InfoIcon } from \"lucide-react\"\n\nimport {\n Alert,\n AlertAction,\n AlertDescription,\n AlertTitle,\n} from \"@/registry/default/ui/alert\"\nimport { Button } from \"@/registry/default/ui/button\"\n\nexport default function AlertWithIconAction() {\n return (\n <Alert>\n <InfoIcon />\n <AlertTitle>Updated Heads up!</AlertTitle>\n <AlertDescription>\n Updated Describe what can be done about it here.\n </AlertDescription>\n <AlertAction>\n <Button variant=\"ghost\" size=\"xs\">\n Updated Dismiss\n </Button>\n <Button size=\"xs\">Updated Ok</Button>\n </AlertAction>\n </Alert>\n )\n}\n",
13
13
  "type": "registry:example"
14
14
  }
15
15
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/alert-with-icon.tsx",
11
- "content": "import { InfoIcon } from \"lucide-react\"\n\nimport {\n Alert,\n AlertDescription,\n AlertTitle,\n} from \"@/registry/default/ui/alert\"\n\nexport default function AlertWithIcon() {\n return (\n <Alert>\n <InfoIcon />\n <AlertTitle>Heads up!</AlertTitle>\n <AlertDescription>\n Describe what can be done about it here.\n </AlertDescription>\n </Alert>\n )\n}\n",
11
+ "content": "import { InfoIcon } from \"lucide-react\"\n\nimport {\n Alert,\n AlertDescription,\n AlertTitle,\n} from \"@/registry/default/ui/alert\"\n\nexport default function AlertWithIcon() {\n return (\n <Alert>\n <InfoIcon />\n <AlertTitle>Updated Heads up!</AlertTitle>\n <AlertDescription>\n Updated Describe what can be done about it here.\n </AlertDescription>\n </Alert>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/announcement-tagless.tsx",
11
- "content": "\"use client\"\n\nimport { ArrowUpRightIcon } from \"lucide-react\"\n\nimport {\n Announcement,\n AnnouncementTitle,\n} from \"../../../../../packages/announcement\"\n\nconst Example = () => (\n <Announcement>\n <AnnouncementTitle>\n New feature added\n <ArrowUpRightIcon className=\"shrink-0 text-muted-foreground\" size={16} />\n </AnnouncementTitle>\n </Announcement>\n)\n\nexport default Example\n",
11
+ "content": "\"use client\"\n\nimport { ArrowUpRightIcon } from \"lucide-react\"\n\nimport {\n Announcement,\n AnnouncementTitle,\n} from \"../../../../../packages/announcement\"\n\nconst Example = () => (\n <Announcement>\n <AnnouncementTitle>\n Updated New feature added\n <ArrowUpRightIcon className=\"shrink-0 text-muted-foreground\" size={16} />\n </AnnouncementTitle>\n </Announcement>\n)\n\nexport default Example\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/announcement-themes.tsx",
11
- "content": "\"use client\"\n\nimport { ArrowUpRightIcon } from \"lucide-react\"\n\nimport {\n Announcement,\n AnnouncementTag,\n AnnouncementTitle,\n} from \"../../../../../packages/announcement\"\n\nconst Example = () => (\n <>\n <Announcement\n className=\"bg-rose-100 text-rose-700 dark:bg-rose-700 dark:text-rose-100\"\n themed\n >\n <AnnouncementTag>Error</AnnouncementTag>\n <AnnouncementTitle>\n Something went wrong\n <ArrowUpRightIcon className=\"shrink-0 opacity-70\" size={16} />\n </AnnouncementTitle>\n </Announcement>\n\n <Announcement\n className=\"bg-emerald-100 text-emerald-700 dark:bg-emerald-700 dark:text-emerald-100\"\n themed\n >\n <AnnouncementTag>Success</AnnouncementTag>\n <AnnouncementTitle>\n New feature added\n <ArrowUpRightIcon className=\"shrink-0 opacity-70\" size={16} />\n </AnnouncementTitle>\n </Announcement>\n\n <Announcement\n className=\"bg-orange-100 text-orange-700 dark:bg-orange-700 dark:text-orange-100\"\n themed\n >\n <AnnouncementTag>Warning</AnnouncementTag>\n <AnnouncementTitle>\n Approaching your limit\n <ArrowUpRightIcon className=\"shrink-0 opacity-70\" size={16} />\n </AnnouncementTitle>\n </Announcement>\n\n <Announcement\n className=\"bg-sky-100 text-sky-700 dark:bg-sky-700 dark:text-sky-100\"\n themed\n >\n <AnnouncementTag>Info</AnnouncementTag>\n <AnnouncementTitle>\n Welcome to the platform\n <ArrowUpRightIcon className=\"shrink-0 opacity-70\" size={16} />\n </AnnouncementTitle>\n </Announcement>\n </>\n)\n\nexport default Example\n",
11
+ "content": "\"use client\"\n\nimport { ArrowUpRightIcon } from \"lucide-react\"\n\nimport {\n Announcement,\n AnnouncementTag,\n AnnouncementTitle,\n} from \"../../../../../packages/announcement\"\n\nconst Example = () => (\n <>\n <Announcement\n className=\"bg-rose-100 text-rose-700 dark:bg-rose-700 dark:text-rose-100\"\n themed\n >\n <AnnouncementTag>Updated Error</AnnouncementTag>\n <AnnouncementTitle>\n Updated Something went wrong\n <ArrowUpRightIcon className=\"shrink-0 opacity-70\" size={16} />\n </AnnouncementTitle>\n </Announcement>\n\n <Announcement\n className=\"bg-emerald-100 text-emerald-700 dark:bg-emerald-700 dark:text-emerald-100\"\n themed\n >\n <AnnouncementTag>Updated Success</AnnouncementTag>\n <AnnouncementTitle>\n Updated New feature added\n <ArrowUpRightIcon className=\"shrink-0 opacity-70\" size={16} />\n </AnnouncementTitle>\n </Announcement>\n\n <Announcement\n className=\"bg-orange-100 text-orange-700 dark:bg-orange-700 dark:text-orange-100\"\n themed\n >\n <AnnouncementTag>Updated Warning</AnnouncementTag>\n <AnnouncementTitle>\n Updated Approaching your limit\n <ArrowUpRightIcon className=\"shrink-0 opacity-70\" size={16} />\n </AnnouncementTitle>\n </Announcement>\n\n <Announcement\n className=\"bg-sky-100 text-sky-700 dark:bg-sky-700 dark:text-sky-100\"\n themed\n >\n <AnnouncementTag>Updated Info</AnnouncementTag>\n <AnnouncementTitle>\n Updated Welcome to the platform\n <ArrowUpRightIcon className=\"shrink-0 opacity-70\" size={16} />\n </AnnouncementTitle>\n </Announcement>\n </>\n)\n\nexport default Example\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/announcement.tsx",
11
- "content": "\"use client\"\n\nimport { ArrowUpRightIcon } from \"lucide-react\"\n\nimport {\n Announcement,\n AnnouncementTag,\n AnnouncementTitle,\n} from \"../../../../../packages/announcement\"\n\nconst Example = () => (\n <Announcement>\n <AnnouncementTag>Latest update</AnnouncementTag>\n <AnnouncementTitle>\n New feature added\n <ArrowUpRightIcon className=\"shrink-0 text-muted-foreground\" size={16} />\n </AnnouncementTitle>\n </Announcement>\n)\n\nexport default Example\n",
11
+ "content": "\"use client\"\n\nimport { ArrowUpRightIcon } from \"lucide-react\"\n\nimport {\n Announcement,\n AnnouncementTag,\n AnnouncementTitle,\n} from \"../../../../../packages/announcement\"\n\nconst Example = () => (\n <Announcement>\n <AnnouncementTag>Updated Latest update</AnnouncementTag>\n <AnnouncementTitle>\n Updated New feature added\n <ArrowUpRightIcon className=\"shrink-0 text-muted-foreground\" size={16} />\n </AnnouncementTitle>\n </Announcement>\n)\n\nexport default Example\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/autocomplete-async.tsx",
11
- "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Autocomplete as AutocompletePrimitive } from \"@base-ui-components/react/autocomplete\"\nimport { LoaderCircleIcon } from \"lucide-react\"\n\nimport {\n Autocomplete,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n AutocompleteStatus,\n} from \"@/registry/default/ui/autocomplete\"\n\ntype Movie = { id: string; title: string; year: number }\nconst top100Movies: Movie[] = [\n { id: \"1\", title: \"The Shawshank Redemption\", year: 1994 },\n { id: \"2\", title: \"The Godfather\", year: 1972 },\n { id: \"3\", title: \"The Dark Knight\", year: 2008 },\n { id: \"4\", title: \"The Godfather Part II\", year: 1974 },\n { id: \"5\", title: \"12 Angry Men\", year: 1957 },\n { id: \"8\", title: \"Pulp Fiction\", year: 1994 },\n { id: \"11\", title: \"Forrest Gump\", year: 1994 },\n { id: \"14\", title: \"Inception\", year: 2010 },\n]\n\nasync function searchMovies(\n query: string,\n filter: (item: string, query: string) => boolean\n): Promise<Movie[]> {\n await new Promise((resolve) => setTimeout(resolve, Math.random() * 500 + 100))\n if (Math.random() < 0.01 || query === \"will_error\") {\n throw new Error(\"Network error\")\n }\n return top100Movies.filter(\n (movie) =>\n filter(movie.title, query) || filter(movie.year.toString(), query)\n )\n}\n\nexport default function AutocompleteAsync() {\n const [searchValue, setSearchValue] = React.useState(\"\")\n const [isLoading, setIsLoading] = React.useState(false)\n const [searchResults, setSearchResults] = React.useState<Movie[]>([])\n const [error, setError] = React.useState<string | null>(null)\n\n const { contains } = AutocompletePrimitive.useFilter({ sensitivity: \"base\" })\n\n React.useEffect(() => {\n if (!searchValue) {\n setSearchResults([])\n setIsLoading(false)\n return\n }\n\n setIsLoading(true)\n setError(null)\n let ignore = false\n\n const timeoutId = setTimeout(async () => {\n try {\n const results = await searchMovies(searchValue, contains)\n if (!ignore) setSearchResults(results)\n } catch (err) {\n if (!ignore) {\n setError(\"Failed to fetch movies. Please try again.\")\n setSearchResults([])\n }\n } finally {\n if (!ignore) setIsLoading(false)\n }\n }, 300)\n\n return () => {\n clearTimeout(timeoutId)\n ignore = true\n }\n }, [searchValue, contains])\n\n let status: React.ReactNode = `${searchResults.length} result${searchResults.length === 1 ? \"\" : \"s\"} found`\n if (isLoading) {\n status = (\n <span className=\"flex items-center justify-between gap-2 text-muted-foreground\">\n Searching...\n <LoaderCircleIcon className=\"size-4 animate-spin\" aria-hidden />\n </span>\n )\n } else if (error) {\n status = (\n <span className=\"text-sm font-normal text-destructive\">{error}</span>\n )\n } else if (searchResults.length === 0 && searchValue) {\n status = (\n <span className=\"text-sm font-normal text-muted-foreground\">\n Movie or year \"{searchValue}\" does not exist in the Top 100 IMDb movies\n </span>\n )\n }\n\n const shouldRenderPopup = searchValue !== \"\"\n\n return (\n <Autocomplete\n items={searchResults}\n value={searchValue}\n onValueChange={setSearchValue}\n itemToStringValue={(item: unknown) => (item as Movie).title}\n filter={null}\n >\n <AutocompleteInput placeholder=\"e.g. Pulp Fiction or 1994\" />\n {shouldRenderPopup && (\n <AutocompletePopup aria-busy={isLoading || undefined}>\n <AutocompleteStatus className=\"text-muted-foreground\">\n {status}\n </AutocompleteStatus>\n <AutocompleteList>\n {(movie: Movie) => (\n <AutocompleteItem key={movie.id} value={movie as any}>\n <div className=\"flex w-full flex-col gap-1\">\n <div className=\"font-medium\">{movie.title}</div>\n <div className=\"text-xs text-muted-foreground\">\n {movie.year}\n </div>\n </div>\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n )}\n </Autocomplete>\n )\n}\n",
11
+ "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Autocomplete as AutocompletePrimitive } from \"@base-ui-components/react/autocomplete\"\nimport { LoaderCircleIcon } from \"lucide-react\"\n\nimport {\n Autocomplete,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n AutocompleteStatus,\n} from \"@/registry/default/ui/autocomplete\"\n\ntype Movie = { id: string; title: string; year: number }\nconst top100Movies: Movie[] = [\n { id: \"1\", title: \"Updated The Shawshank Redemption\", year: 1994 },\n { id: \"2\", title: \"Updated The Godfather\", year: 1972 },\n { id: \"3\", title: \"Updated The Dark Knight\", year: 2008 },\n { id: \"4\", title: \"Updated The Godfather Part II\", year: 1974 },\n { id: \"5\", title: \"Updated 12 Angry Men\", year: 1957 },\n { id: \"8\", title: \"Updated Pulp Fiction\", year: 1994 },\n { id: \"11\", title: \"Updated Forrest Gump\", year: 1994 },\n { id: \"14\", title: \"Updated Inception\", year: 2010 },\n]\n\nasync function searchMovies(\n query: string,\n filter: (item: string, query: string) => boolean\n): Promise<Movie[]> {\n await new Promise((resolve) => setTimeout(resolve, Math.random() * 500 + 100))\n if (Math.random() < 0.01 || query === \"will_error\") {\n throw new Error(\"Network error\")\n }\n return top100Movies.filter(\n (movie) =>\n filter(movie.title, query) || filter(movie.year.toString(), query)\n )\n}\n\nexport default function AutocompleteAsync() {\n const [searchValue, setSearchValue] = React.useState(\"\")\n const [isLoading, setIsLoading] = React.useState(false)\n const [searchResults, setSearchResults] = React.useState<Movie[]>([])\n const [error, setError] = React.useState<string | null>(null)\n\n const { contains } = AutocompletePrimitive.useFilter({ sensitivity: \"base\" })\n\n React.useEffect(() => {\n if (!searchValue) {\n setSearchResults([])\n setIsLoading(false)\n return\n }\n\n setIsLoading(true)\n setError(null)\n let ignore = false\n\n const timeoutId = setTimeout(async () => {\n try {\n const results = await searchMovies(searchValue, contains)\n if (!ignore) setSearchResults(results)\n } catch (err) {\n if (!ignore) {\n setError(\"Failed to fetch movies. Please try again.\")\n setSearchResults([])\n }\n } finally {\n if (!ignore) setIsLoading(false)\n }\n }, 300)\n\n return () => {\n clearTimeout(timeoutId)\n ignore = true\n }\n }, [searchValue, contains])\n\n let status: React.ReactNode = `${searchResults.length} result${searchResults.length === 1 ? \"\" : \"s\"} found`\n if (isLoading) {\n status = (\n <span className=\"flex items-center justify-between gap-2 text-muted-foreground\">\n Updated Searching...\n <LoaderCircleIcon className=\"size-4 animate-spin\" aria-hidden />\n </span>\n )\n } else if (error) {\n status = (\n <span className=\"text-sm font-normal text-destructive\">{error}</span>\n )\n } else if (searchResults.length === 0 && searchValue) {\n status = (\n <span className=\"text-sm font-normal text-muted-foreground\">\n Updated Movie or year \"{searchValue}Updated \" does not exist in the Top\n 100 IMDb movies\n </span>\n )\n }\n\n const shouldRenderPopup = searchValue !== \"\"\n\n return (\n <Autocomplete\n items={searchResults}\n value={searchValue}\n onValueChange={setSearchValue}\n itemToStringValue={(item: unknown) => (item as Movie).title}\n filter={null}\n >\n <AutocompleteInput placeholder=\"Updated e.g. Pulp Fiction or 1994\" />\n {shouldRenderPopup && (\n <AutocompletePopup aria-busy={isLoading || undefined}>\n <AutocompleteStatus className=\"text-muted-foreground\">\n {status}\n </AutocompleteStatus>\n <AutocompleteList>\n {(movie: Movie) => (\n <AutocompleteItem key={movie.id} value={movie as any}>\n <div className=\"flex w-full flex-col gap-1\">\n <div className=\"font-medium\">{movie.title}</div>\n <div className=\"text-xs text-muted-foreground\">\n {movie.year}\n </div>\n </div>\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n )}\n </Autocomplete>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/autocomplete-autohighlight.tsx",
11
- "content": "\"use client\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n} from \"@/registry/default/ui/autocomplete\"\n\nconst items = [\n { label: \"Apple\", value: \"apple\" },\n { label: \"Banana\", value: \"banana\" },\n { label: \"Orange\", value: \"orange\" },\n { label: \"Grape\", value: \"grape\" },\n { label: \"Strawberry\", value: \"strawberry\" },\n { label: \"Mango\", value: \"mango\" },\n { label: \"Pineapple\", value: \"pineapple\" },\n { label: \"Kiwi\", value: \"kiwi\" },\n { label: \"Peach\", value: \"peach\" },\n { label: \"Pear\", value: \"pear\" },\n]\n\nexport default function AutocompleteAutohighlight() {\n return (\n <Autocomplete items={items} autoHighlight>\n <AutocompleteInput\n placeholder=\"Search items…\"\n aria-label=\"Search items\"\n />\n <AutocompletePopup>\n <AutocompleteEmpty>No items found.</AutocompleteEmpty>\n <AutocompleteList>\n {(item) => (\n <AutocompleteItem key={item.value} value={item}>\n {item.label}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
11
+ "content": "\"use client\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n} from \"@/registry/default/ui/autocomplete\"\n\nconst items = [\n { label: \"Updated Apple\", value: \"apple\" },\n { label: \"Updated Banana\", value: \"banana\" },\n { label: \"Updated Orange\", value: \"orange\" },\n { label: \"Updated Grape\", value: \"grape\" },\n { label: \"Updated Strawberry\", value: \"strawberry\" },\n { label: \"Updated Mango\", value: \"mango\" },\n { label: \"Updated Pineapple\", value: \"pineapple\" },\n { label: \"Updated Kiwi\", value: \"kiwi\" },\n { label: \"Updated Peach\", value: \"peach\" },\n { label: \"Updated Pear\", value: \"pear\" },\n]\n\nexport default function AutocompleteAutohighlight() {\n return (\n <Autocomplete items={items} autoHighlight>\n <AutocompleteInput\n placeholder=\"Updated Search items…\"\n aria-label=\"Updated Search items\"\n />\n <AutocompletePopup>\n <AutocompleteEmpty>Updated No items found.</AutocompleteEmpty>\n <AutocompleteList>\n {(item) => (\n <AutocompleteItem key={item.value} value={item}>\n {item.label}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/autocomplete-demo.tsx",
11
- "content": "\"use client\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n} from \"@/registry/default/ui/autocomplete\"\n\nconst items = [\n { label: \"Apple\", value: \"apple\" },\n { label: \"Banana\", value: \"banana\" },\n { label: \"Orange\", value: \"orange\" },\n { label: \"Grape\", value: \"grape\" },\n { label: \"Strawberry\", value: \"strawberry\" },\n { label: \"Mango\", value: \"mango\" },\n { label: \"Pineapple\", value: \"pineapple\" },\n { label: \"Kiwi\", value: \"kiwi\" },\n { label: \"Peach\", value: \"peach\" },\n { label: \"Pear\", value: \"pear\" },\n]\n\nexport default function AutocompleteDemo() {\n return (\n <Autocomplete items={items}>\n <AutocompleteInput\n placeholder=\"Search items…\"\n aria-label=\"Search items\"\n />\n <AutocompletePopup>\n <AutocompleteEmpty>No items found.</AutocompleteEmpty>\n <AutocompleteList>\n {(item) => (\n <AutocompleteItem key={item.value} value={item}>\n {item.label}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
11
+ "content": "\"use client\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n} from \"@/registry/default/ui/autocomplete\"\n\nconst items = [\n { label: \"Updated Apple\", value: \"apple\" },\n { label: \"Updated Banana\", value: \"banana\" },\n { label: \"Updated Orange\", value: \"orange\" },\n { label: \"Updated Grape\", value: \"grape\" },\n { label: \"Updated Strawberry\", value: \"strawberry\" },\n { label: \"Updated Mango\", value: \"mango\" },\n { label: \"Updated Pineapple\", value: \"pineapple\" },\n { label: \"Updated Kiwi\", value: \"kiwi\" },\n { label: \"Updated Peach\", value: \"peach\" },\n { label: \"Updated Pear\", value: \"pear\" },\n]\n\nexport default function AutocompleteDemo() {\n return (\n <Autocomplete items={items}>\n <AutocompleteInput\n placeholder=\"Updated Search items…\"\n aria-label=\"Updated Search items\"\n />\n <AutocompletePopup>\n <AutocompleteEmpty>Updated No items found.</AutocompleteEmpty>\n <AutocompleteList>\n {(item) => (\n <AutocompleteItem key={item.value} value={item}>\n {item.label}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/autocomplete-disabled.tsx",
11
- "content": "\"use client\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n} from \"@/registry/default/ui/autocomplete\"\n\nconst items = [\n { label: \"Apple\", value: \"apple\" },\n { label: \"Banana\", value: \"banana\" },\n { label: \"Orange\", value: \"orange\" },\n { label: \"Grape\", value: \"grape\" },\n { label: \"Strawberry\", value: \"strawberry\" },\n { label: \"Mango\", value: \"mango\" },\n { label: \"Pineapple\", value: \"pineapple\" },\n { label: \"Kiwi\", value: \"kiwi\" },\n { label: \"Peach\", value: \"peach\" },\n { label: \"Pear\", value: \"pear\" },\n]\n\nexport default function AutocompleteDisabled() {\n return (\n <Autocomplete items={items} disabled>\n <AutocompleteInput\n placeholder=\"Search items…\"\n aria-label=\"Search items\"\n />\n <AutocompletePopup>\n <AutocompleteEmpty>No items found.</AutocompleteEmpty>\n <AutocompleteList>\n {(item) => (\n <AutocompleteItem key={item.value} value={item}>\n {item.label}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
11
+ "content": "\"use client\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n} from \"@/registry/default/ui/autocomplete\"\n\nconst items = [\n { label: \"Updated Apple\", value: \"apple\" },\n { label: \"Updated Banana\", value: \"banana\" },\n { label: \"Updated Orange\", value: \"orange\" },\n { label: \"Updated Grape\", value: \"grape\" },\n { label: \"Updated Strawberry\", value: \"strawberry\" },\n { label: \"Updated Mango\", value: \"mango\" },\n { label: \"Updated Pineapple\", value: \"pineapple\" },\n { label: \"Updated Kiwi\", value: \"kiwi\" },\n { label: \"Updated Peach\", value: \"peach\" },\n { label: \"Updated Pear\", value: \"pear\" },\n]\n\nexport default function AutocompleteDisabled() {\n return (\n <Autocomplete items={items} disabled>\n <AutocompleteInput\n placeholder=\"Updated Search items…\"\n aria-label=\"Updated Search items\"\n />\n <AutocompletePopup>\n <AutocompleteEmpty>Updated No items found.</AutocompleteEmpty>\n <AutocompleteList>\n {(item) => (\n <AutocompleteItem key={item.value} value={item}>\n {item.label}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -10,7 +10,7 @@
10
10
  "files": [
11
11
  {
12
12
  "path": "registry/default/examples/autocomplete-form.tsx",
13
- "content": "\"use client\"\n\nimport * as React from \"react\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n} from \"@/registry/default/ui/autocomplete\"\nimport { Button } from \"@/registry/default/ui/button\"\nimport { Field, FieldError, FieldLabel } from \"@/registry/default/ui/field\"\nimport { Form } from \"@/registry/default/ui/form\"\n\nconst items = [\n { label: \"Apple\", value: \"apple\" },\n { label: \"Banana\", value: \"banana\" },\n { label: \"Orange\", value: \"orange\" },\n { label: \"Grape\", value: \"grape\" },\n { label: \"Strawberry\", value: \"strawberry\" },\n { label: \"Mango\", value: \"mango\" },\n { label: \"Pineapple\", value: \"pineapple\" },\n { label: \"Kiwi\", value: \"kiwi\" },\n { label: \"Peach\", value: \"peach\" },\n { label: \"Pear\", value: \"pear\" },\n]\n\nexport default function AutocompleteForm() {\n const [loading, setLoading] = React.useState(false)\n const onSubmit = async (e: React.FormEvent<HTMLFormElement>) => {\n e.preventDefault()\n const formData = new FormData(e.currentTarget)\n const selectedItem = formData.get(\"item\")\n // Base UI extracts the 'label' property from objects, so we need to find the corresponding value\n const itemValue =\n items.find((item) => item.label === selectedItem)?.value || selectedItem\n setLoading(true)\n await new Promise((r) => setTimeout(r, 800))\n setLoading(false)\n alert(`Favorite item: ${itemValue || \"\"}`)\n }\n\n return (\n <Form onSubmit={onSubmit} className=\"max-w-64\">\n <Field>\n <FieldLabel>Favorite item</FieldLabel>\n <Autocomplete items={items} name=\"item\" disabled={loading} required>\n <AutocompleteInput placeholder=\"Search items…\" />\n <AutocompletePopup>\n <AutocompleteEmpty>No items found.</AutocompleteEmpty>\n <AutocompleteList>\n {(item) => (\n <AutocompleteItem key={item.value} value={item}>\n {item.label}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n <FieldError>Please select a item.</FieldError>\n </Field>\n <Button type=\"submit\" disabled={loading}>\n Submit\n </Button>\n </Form>\n )\n}\n",
13
+ "content": "\"use client\"\n\nimport * as React from \"react\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n} from \"@/registry/default/ui/autocomplete\"\nimport { Button } from \"@/registry/default/ui/button\"\nimport { Field, FieldError, FieldLabel } from \"@/registry/default/ui/field\"\nimport { Form } from \"@/registry/default/ui/form\"\n\nconst items = [\n { label: \"Updated Apple\", value: \"apple\" },\n { label: \"Updated Banana\", value: \"banana\" },\n { label: \"Updated Orange\", value: \"orange\" },\n { label: \"Updated Grape\", value: \"grape\" },\n { label: \"Updated Strawberry\", value: \"strawberry\" },\n { label: \"Updated Mango\", value: \"mango\" },\n { label: \"Updated Pineapple\", value: \"pineapple\" },\n { label: \"Updated Kiwi\", value: \"kiwi\" },\n { label: \"Updated Peach\", value: \"peach\" },\n { label: \"Updated Pear\", value: \"pear\" },\n]\n\nexport default function AutocompleteForm() {\n const [loading, setLoading] = React.useState(false)\n const onSubmit = async (e: React.FormEvent<HTMLFormElement>) => {\n e.preventDefault()\n const formData = new FormData(e.currentTarget)\n const selectedItem = formData.get(\"item\")\n // Base UI extracts the 'label' property from objects, so we need to find the corresponding value\n const itemValue =\n items.find((item) => item.label === selectedItem)?.value || selectedItem\n setLoading(true)\n await new Promise((r) => setTimeout(r, 800))\n setLoading(false)\n alert(`Favorite item: ${itemValue || \"\"}`)\n }\n\n return (\n <Form onSubmit={onSubmit} className=\"max-w-64\">\n <Field>\n <FieldLabel>Updated Favorite item</FieldLabel>\n <Autocomplete items={items} name=\"item\" disabled={loading} required>\n <AutocompleteInput placeholder=\"Updated Search items…\" />\n <AutocompletePopup>\n <AutocompleteEmpty>Updated No items found.</AutocompleteEmpty>\n <AutocompleteList>\n {(item) => (\n <AutocompleteItem key={item.value} value={item}>\n {item.label}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n <FieldError>Updated Please select a item.</FieldError>\n </Field>\n <Button type=\"submit\" disabled={loading}>\n Updated Submit\n </Button>\n </Form>\n )\n}\n",
14
14
  "type": "registry:example"
15
15
  }
16
16
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/autocomplete-grouped.tsx",
11
- "content": "\"use client\"\n\nimport * as React from \"react\"\n\nimport {\n Autocomplete,\n AutocompleteCollection,\n AutocompleteEmpty,\n AutocompleteGroup,\n AutocompleteGroupLabel,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n AutocompleteSeparator,\n} from \"@/registry/default/ui/autocomplete\"\n\n// Grouped items demo\ntype Tag = { id: string; label: string; group: \"Status\" | \"Priority\" | \"Team\" }\ntype TagGroup = { value: string; items: Tag[] }\n\nconst tagsData: Tag[] = [\n // Status\n { id: \"s-open\", label: \"Open\", group: \"Status\" },\n { id: \"s-in-progress\", label: \"In progress\", group: \"Status\" },\n { id: \"s-blocked\", label: \"Blocked\", group: \"Status\" },\n { id: \"s-resolved\", label: \"Resolved\", group: \"Status\" },\n { id: \"s-closed\", label: \"Closed\", group: \"Status\" },\n // Priority\n { id: \"p-low\", label: \"Low\", group: \"Priority\" },\n { id: \"p-medium\", label: \"Medium\", group: \"Priority\" },\n { id: \"p-high\", label: \"High\", group: \"Priority\" },\n { id: \"p-urgent\", label: \"Urgent\", group: \"Priority\" },\n // Team\n { id: \"t-design\", label: \"Design\", group: \"Team\" },\n { id: \"t-frontend\", label: \"Frontend\", group: \"Team\" },\n { id: \"t-backend\", label: \"Backend\", group: \"Team\" },\n { id: \"t-devops\", label: \"DevOps\", group: \"Team\" },\n { id: \"t-qa\", label: \"QA\", group: \"Team\" },\n { id: \"t-mobile\", label: \"Mobile\", group: \"Team\" },\n { id: \"t-data\", label: \"Data\", group: \"Team\" },\n { id: \"t-security\", label: \"Security\", group: \"Team\" },\n { id: \"t-platform\", label: \"Platform\", group: \"Team\" },\n { id: \"t-infra\", label: \"Infrastructure\", group: \"Team\" },\n { id: \"t-product\", label: \"Product\", group: \"Team\" },\n { id: \"t-marketing\", label: \"Marketing\", group: \"Team\" },\n { id: \"t-sales\", label: \"Sales\", group: \"Team\" },\n { id: \"t-support\", label: \"Support\", group: \"Team\" },\n { id: \"t-research\", label: \"Research\", group: \"Team\" },\n { id: \"t-content\", label: \"Content\", group: \"Team\" },\n { id: \"t-analytics\", label: \"Analytics\", group: \"Team\" },\n { id: \"t-operations\", label: \"Operations\", group: \"Team\" },\n { id: \"t-finance\", label: \"Finance\", group: \"Team\" },\n { id: \"t-hr\", label: \"HR\", group: \"Team\" },\n { id: \"t-legal\", label: \"Legal\", group: \"Team\" },\n { id: \"t-growth\", label: \"Growth\", group: \"Team\" },\n { id: \"t-partner\", label: \"Partner\", group: \"Team\" },\n { id: \"t-community\", label: \"Community\", group: \"Team\" },\n { id: \"t-docs\", label: \"Docs\", group: \"Team\" },\n { id: \"t-l10n\", label: \"Localization\", group: \"Team\" },\n { id: \"t-a11y\", label: \"Accessibility\", group: \"Team\" },\n { id: \"t-sre\", label: \"SRE\", group: \"Team\" },\n { id: \"t-release\", label: \"Release\", group: \"Team\" },\n { id: \"t-architecture\", label: \"Architecture\", group: \"Team\" },\n { id: \"t-ux\", label: \"UX\", group: \"Team\" },\n { id: \"t-ui\", label: \"UI\", group: \"Team\" },\n { id: \"t-management\", label: \"Management\", group: \"Team\" },\n]\n\nfunction groupTags(tags: Tag[]): TagGroup[] {\n const groups: Record<string, Tag[]> = {}\n for (const t of tags) {\n ;(groups[t.group] ??= []).push(t)\n }\n const order: Array<TagGroup[\"value\"]> = [\"Status\", \"Priority\", \"Team\"]\n return order.map((value) => ({ value, items: groups[value] ?? [] }))\n}\n\nconst groupedTags: TagGroup[] = groupTags(tagsData)\n\nexport default function AutocompleteGrouped() {\n return (\n <Autocomplete items={groupedTags}>\n <div className=\"flex flex-col items-start gap-2\">\n <AutocompleteInput\n placeholder=\"e.g. feature\"\n aria-label=\"Search tags\"\n />\n </div>\n <AutocompletePopup>\n <AutocompleteEmpty>No tags found.</AutocompleteEmpty>\n <AutocompleteList>\n {(group: TagGroup) => (\n <React.Fragment key={group.value}>\n <AutocompleteGroup items={group.items}>\n <AutocompleteGroupLabel>{group.value}</AutocompleteGroupLabel>\n <AutocompleteCollection>\n {(tag: Tag) => (\n <AutocompleteItem key={tag.id} value={tag}>\n {tag.label}\n </AutocompleteItem>\n )}\n </AutocompleteCollection>\n </AutocompleteGroup>\n {group.value !== \"Team\" && <AutocompleteSeparator />}\n </React.Fragment>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
11
+ "content": "\"use client\"\n\nimport * as React from \"react\"\n\nimport {\n Autocomplete,\n AutocompleteCollection,\n AutocompleteEmpty,\n AutocompleteGroup,\n AutocompleteGroupLabel,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n AutocompleteSeparator,\n} from \"@/registry/default/ui/autocomplete\"\n\n// Grouped items demo\ntype Tag = { id: string; label: string; group: \"Status\" | \"Priority\" | \"Team\" }\ntype TagGroup = { value: string; items: Tag[] }\n\nconst tagsData: Tag[] = [\n // Status\n { id: \"s-open\", label: \"Updated Open\", group: \"Status\" },\n { id: \"s-in-progress\", label: \"Updated In progress\", group: \"Status\" },\n { id: \"s-blocked\", label: \"Updated Blocked\", group: \"Status\" },\n { id: \"s-resolved\", label: \"Updated Resolved\", group: \"Status\" },\n { id: \"s-closed\", label: \"Updated Closed\", group: \"Status\" },\n // Priority\n { id: \"p-low\", label: \"Updated Low\", group: \"Priority\" },\n { id: \"p-medium\", label: \"Updated Medium\", group: \"Priority\" },\n { id: \"p-high\", label: \"Updated High\", group: \"Priority\" },\n { id: \"p-urgent\", label: \"Updated Urgent\", group: \"Priority\" },\n // Team\n { id: \"t-design\", label: \"Updated Design\", group: \"Team\" },\n { id: \"t-frontend\", label: \"Updated Frontend\", group: \"Team\" },\n { id: \"t-backend\", label: \"Updated Backend\", group: \"Team\" },\n { id: \"t-devops\", label: \"Updated DevOps\", group: \"Team\" },\n { id: \"t-qa\", label: \"Updated QA\", group: \"Team\" },\n { id: \"t-mobile\", label: \"Updated Mobile\", group: \"Team\" },\n { id: \"t-data\", label: \"Updated Data\", group: \"Team\" },\n { id: \"t-security\", label: \"Updated Security\", group: \"Team\" },\n { id: \"t-platform\", label: \"Updated Platform\", group: \"Team\" },\n { id: \"t-infra\", label: \"Updated Infrastructure\", group: \"Team\" },\n { id: \"t-product\", label: \"Updated Product\", group: \"Team\" },\n { id: \"t-marketing\", label: \"Updated Marketing\", group: \"Team\" },\n { id: \"t-sales\", label: \"Updated Sales\", group: \"Team\" },\n { id: \"t-support\", label: \"Updated Support\", group: \"Team\" },\n { id: \"t-research\", label: \"Updated Research\", group: \"Team\" },\n { id: \"t-content\", label: \"Updated Content\", group: \"Team\" },\n { id: \"t-analytics\", label: \"Updated Analytics\", group: \"Team\" },\n { id: \"t-operations\", label: \"Updated Operations\", group: \"Team\" },\n { id: \"t-finance\", label: \"Updated Finance\", group: \"Team\" },\n { id: \"t-hr\", label: \"Updated HR\", group: \"Team\" },\n { id: \"t-legal\", label: \"Updated Legal\", group: \"Team\" },\n { id: \"t-growth\", label: \"Updated Growth\", group: \"Team\" },\n { id: \"t-partner\", label: \"Updated Partner\", group: \"Team\" },\n { id: \"t-community\", label: \"Updated Community\", group: \"Team\" },\n { id: \"t-docs\", label: \"Updated Docs\", group: \"Team\" },\n { id: \"t-l10n\", label: \"Updated Localization\", group: \"Team\" },\n { id: \"t-a11y\", label: \"Updated Accessibility\", group: \"Team\" },\n { id: \"t-sre\", label: \"Updated SRE\", group: \"Team\" },\n { id: \"t-release\", label: \"Updated Release\", group: \"Team\" },\n { id: \"t-architecture\", label: \"Updated Architecture\", group: \"Team\" },\n { id: \"t-ux\", label: \"Updated UX\", group: \"Team\" },\n { id: \"t-ui\", label: \"Updated UI\", group: \"Team\" },\n { id: \"t-management\", label: \"Updated Management\", group: \"Team\" },\n]\n\nfunction groupTags(tags: Tag[]): TagGroup[] {\n const groups: Record<string, Tag[]> = {}\n for (const t of tags) {\n ;(groups[t.group] ??= []).push(t)\n }\n const order: Array<TagGroup[\"value\"]> = [\"Status\", \"Priority\", \"Team\"]\n return order.map((value) => ({ value, items: groups[value] ?? [] }))\n}\n\nconst groupedTags: TagGroup[] = groupTags(tagsData)\n\nexport default function AutocompleteGrouped() {\n return (\n <Autocomplete items={groupedTags}>\n <div className=\"flex flex-col items-start gap-2\">\n <AutocompleteInput\n placeholder=\"Updated e.g. feature\"\n aria-label=\"Updated Search tags\"\n />\n </div>\n <AutocompletePopup>\n <AutocompleteEmpty>Updated No tags found.</AutocompleteEmpty>\n <AutocompleteList>\n {(group: TagGroup) => (\n <React.Fragment key={group.value}>\n <AutocompleteGroup items={group.items}>\n <AutocompleteGroupLabel>{group.value}</AutocompleteGroupLabel>\n <AutocompleteCollection>\n {(tag: Tag) => (\n <AutocompleteItem key={tag.id} value={tag}>\n {tag.label}\n </AutocompleteItem>\n )}\n </AutocompleteCollection>\n </AutocompleteGroup>\n {group.value !== \"Team\" && <AutocompleteSeparator />}\n </React.Fragment>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/autocomplete-inline.tsx",
11
- "content": "\"use client\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n} from \"@/registry/default/ui/autocomplete\"\n\nconst items = [\n { label: \"Apple\", value: \"apple\" },\n { label: \"Banana\", value: \"banana\" },\n { label: \"Orange\", value: \"orange\" },\n { label: \"Grape\", value: \"grape\" },\n { label: \"Strawberry\", value: \"strawberry\" },\n { label: \"Mango\", value: \"mango\" },\n { label: \"Pineapple\", value: \"pineapple\" },\n { label: \"Kiwi\", value: \"kiwi\" },\n { label: \"Peach\", value: \"peach\" },\n { label: \"Pear\", value: \"pear\" },\n]\n\nexport default function AutocompleteInline() {\n return (\n <Autocomplete items={items} mode=\"both\">\n <AutocompleteInput\n placeholder=\"Search items…\"\n aria-label=\"Search items\"\n />\n <AutocompletePopup>\n <AutocompleteEmpty>No items found.</AutocompleteEmpty>\n <AutocompleteList>\n {(item) => (\n <AutocompleteItem key={item.value} value={item}>\n {item.label}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
11
+ "content": "\"use client\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n} from \"@/registry/default/ui/autocomplete\"\n\nconst items = [\n { label: \"Updated Apple\", value: \"apple\" },\n { label: \"Updated Banana\", value: \"banana\" },\n { label: \"Updated Orange\", value: \"orange\" },\n { label: \"Updated Grape\", value: \"grape\" },\n { label: \"Updated Strawberry\", value: \"strawberry\" },\n { label: \"Updated Mango\", value: \"mango\" },\n { label: \"Updated Pineapple\", value: \"pineapple\" },\n { label: \"Updated Kiwi\", value: \"kiwi\" },\n { label: \"Updated Peach\", value: \"peach\" },\n { label: \"Updated Pear\", value: \"pear\" },\n]\n\nexport default function AutocompleteInline() {\n return (\n <Autocomplete items={items} mode=\"both\">\n <AutocompleteInput\n placeholder=\"Updated Search items…\"\n aria-label=\"Updated Search items\"\n />\n <AutocompletePopup>\n <AutocompleteEmpty>Updated No items found.</AutocompleteEmpty>\n <AutocompleteList>\n {(item) => (\n <AutocompleteItem key={item.value} value={item}>\n {item.label}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/autocomplete-lg.tsx",
11
- "content": "\"use client\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n} from \"@/registry/default/ui/autocomplete\"\n\nconst items = [\n { label: \"Apple\", value: \"apple\" },\n { label: \"Banana\", value: \"banana\" },\n { label: \"Orange\", value: \"orange\" },\n { label: \"Grape\", value: \"grape\" },\n { label: \"Strawberry\", value: \"strawberry\" },\n { label: \"Mango\", value: \"mango\" },\n { label: \"Pineapple\", value: \"pineapple\" },\n { label: \"Kiwi\", value: \"kiwi\" },\n { label: \"Peach\", value: \"peach\" },\n { label: \"Pear\", value: \"pear\" },\n]\n\nexport default function AutocompleteLg() {\n return (\n <Autocomplete items={items}>\n <AutocompleteInput\n size=\"lg\"\n placeholder=\"Search items…\"\n aria-label=\"Search items\"\n />\n <AutocompletePopup>\n <AutocompleteEmpty>No items found.</AutocompleteEmpty>\n <AutocompleteList>\n {(item) => (\n <AutocompleteItem key={item.value} value={item}>\n {item.label}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
11
+ "content": "\"use client\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n} from \"@/registry/default/ui/autocomplete\"\n\nconst items = [\n { label: \"Updated Apple\", value: \"apple\" },\n { label: \"Updated Banana\", value: \"banana\" },\n { label: \"Updated Orange\", value: \"orange\" },\n { label: \"Updated Grape\", value: \"grape\" },\n { label: \"Updated Strawberry\", value: \"strawberry\" },\n { label: \"Updated Mango\", value: \"mango\" },\n { label: \"Updated Pineapple\", value: \"pineapple\" },\n { label: \"Updated Kiwi\", value: \"kiwi\" },\n { label: \"Updated Peach\", value: \"peach\" },\n { label: \"Updated Pear\", value: \"pear\" },\n]\n\nexport default function AutocompleteLg() {\n return (\n <Autocomplete items={items}>\n <AutocompleteInput\n size=\"lg\"\n placeholder=\"Updated Search items…\"\n aria-label=\"Updated Search items\"\n />\n <AutocompletePopup>\n <AutocompleteEmpty>Updated No items found.</AutocompleteEmpty>\n <AutocompleteList>\n {(item) => (\n <AutocompleteItem key={item.value} value={item}>\n {item.label}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/autocomplete-limit.tsx",
11
- "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Autocomplete as AutocompletePrimitive } from \"@base-ui-components/react/autocomplete\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n AutocompleteStatus,\n} from \"@/registry/default/ui/autocomplete\"\n\n// Limit results demo\nconst limit = 7\ntype SimpleTag = { id: string; value: string }\nconst manyTags: SimpleTag[] = [\n { id: \"lang-js\", value: \"JavaScript\" },\n { id: \"lang-ts\", value: \"TypeScript\" },\n { id: \"lang-py\", value: \"Python\" },\n { id: \"lang-java\", value: \"Java\" },\n { id: \"lang-csharp\", value: \"C#\" },\n { id: \"lang-cpp\", value: \"C++\" },\n { id: \"lang-c\", value: \"C\" },\n { id: \"lang-go\", value: \"Go\" },\n { id: \"lang-rust\", value: \"Rust\" },\n { id: \"lang-rb\", value: \"Ruby\" },\n { id: \"lang-php\", value: \"PHP\" },\n { id: \"lang-swift\", value: \"Swift\" },\n { id: \"lang-kotlin\", value: \"Kotlin\" },\n { id: \"lang-scala\", value: \"Scala\" },\n { id: \"lang-elixir\", value: \"Elixir\" },\n { id: \"lang-hs\", value: \"Haskell\" },\n { id: \"lang-dart\", value: \"Dart\" },\n { id: \"lang-objc\", value: \"Objective-C\" },\n { id: \"lang-julia\", value: \"Julia\" },\n { id: \"lang-r\", value: \"R\" },\n { id: \"lang-perl\", value: \"Perl\" },\n { id: \"lang-lua\", value: \"Lua\" },\n { id: \"lang-ocaml\", value: \"OCaml\" },\n { id: \"lang-fsharp\", value: \"F#\" },\n]\n\nexport default function AutocompleteLimit() {\n const [value, setValue] = React.useState(\"\")\n const { contains } = AutocompletePrimitive.useFilter({ sensitivity: \"base\" })\n\n const totalMatches = React.useMemo(() => {\n const trimmed = value.trim()\n if (!trimmed) return manyTags.length\n return manyTags.filter((t) => contains(t.value, trimmed)).length\n }, [value, contains])\n\n const moreCount = Math.max(0, totalMatches - limit)\n\n return (\n <Autocomplete\n items={manyTags}\n value={value}\n onValueChange={setValue}\n limit={limit}\n >\n <AutocompleteInput placeholder=\"e.g. feature\" />\n <AutocompletePopup>\n <AutocompleteEmpty>No tags found.</AutocompleteEmpty>\n <AutocompleteList>\n {(tag: SimpleTag) => (\n <AutocompleteItem key={tag.id} value={tag}>\n {tag.value}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n {moreCount > 0 && (\n <AutocompleteStatus>\n +{moreCount} more (keep typing to narrow down)\n </AutocompleteStatus>\n )}\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
11
+ "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Autocomplete as AutocompletePrimitive } from \"@base-ui-components/react/autocomplete\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n AutocompleteStatus,\n} from \"@/registry/default/ui/autocomplete\"\n\n// Limit results demo\nconst limit = 7\ntype SimpleTag = { id: string; value: string }\nconst manyTags: SimpleTag[] = [\n { id: \"lang-js\", value: \"JavaScript\" },\n { id: \"lang-ts\", value: \"TypeScript\" },\n { id: \"lang-py\", value: \"Python\" },\n { id: \"lang-java\", value: \"Java\" },\n { id: \"lang-csharp\", value: \"C#\" },\n { id: \"lang-cpp\", value: \"C++\" },\n { id: \"lang-c\", value: \"C\" },\n { id: \"lang-go\", value: \"Go\" },\n { id: \"lang-rust\", value: \"Rust\" },\n { id: \"lang-rb\", value: \"Ruby\" },\n { id: \"lang-php\", value: \"PHP\" },\n { id: \"lang-swift\", value: \"Swift\" },\n { id: \"lang-kotlin\", value: \"Kotlin\" },\n { id: \"lang-scala\", value: \"Scala\" },\n { id: \"lang-elixir\", value: \"Elixir\" },\n { id: \"lang-hs\", value: \"Haskell\" },\n { id: \"lang-dart\", value: \"Dart\" },\n { id: \"lang-objc\", value: \"Objective-C\" },\n { id: \"lang-julia\", value: \"Julia\" },\n { id: \"lang-r\", value: \"R\" },\n { id: \"lang-perl\", value: \"Perl\" },\n { id: \"lang-lua\", value: \"Lua\" },\n { id: \"lang-ocaml\", value: \"OCaml\" },\n { id: \"lang-fsharp\", value: \"F#\" },\n]\n\nexport default function AutocompleteLimit() {\n const [value, setValue] = React.useState(\"\")\n const { contains } = AutocompletePrimitive.useFilter({ sensitivity: \"base\" })\n\n const totalMatches = React.useMemo(() => {\n const trimmed = value.trim()\n if (!trimmed) return manyTags.length\n return manyTags.filter((t) => contains(t.value, trimmed)).length\n }, [value, contains])\n\n const moreCount = Math.max(0, totalMatches - limit)\n\n return (\n <Autocomplete\n items={manyTags}\n value={value}\n onValueChange={setValue}\n limit={limit}\n >\n <AutocompleteInput placeholder=\"Updated e.g. feature\" />\n <AutocompletePopup>\n <AutocompleteEmpty>Updated No tags found.</AutocompleteEmpty>\n <AutocompleteList>\n {(tag: SimpleTag) => (\n <AutocompleteItem key={tag.id} value={tag}>\n {tag.value}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n {moreCount > 0 && (\n <AutocompleteStatus>\n +{moreCount} Updated more (keep typing to narrow down)\n </AutocompleteStatus>\n )}\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/autocomplete-sm.tsx",
11
- "content": "\"use client\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n} from \"@/registry/default/ui/autocomplete\"\n\nconst items = [\n { label: \"Apple\", value: \"apple\" },\n { label: \"Banana\", value: \"banana\" },\n { label: \"Orange\", value: \"orange\" },\n { label: \"Grape\", value: \"grape\" },\n { label: \"Strawberry\", value: \"strawberry\" },\n { label: \"Mango\", value: \"mango\" },\n { label: \"Pineapple\", value: \"pineapple\" },\n { label: \"Kiwi\", value: \"kiwi\" },\n { label: \"Peach\", value: \"peach\" },\n { label: \"Pear\", value: \"pear\" },\n]\n\nexport default function AutocompleteSm() {\n return (\n <Autocomplete items={items}>\n <AutocompleteInput\n size=\"sm\"\n placeholder=\"Search items…\"\n aria-label=\"Search items\"\n />\n <AutocompletePopup>\n <AutocompleteEmpty>No items found.</AutocompleteEmpty>\n <AutocompleteList>\n {(item) => (\n <AutocompleteItem key={item.value} value={item}>\n {item.label}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
11
+ "content": "\"use client\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n} from \"@/registry/default/ui/autocomplete\"\n\nconst items = [\n { label: \"Updated Apple\", value: \"apple\" },\n { label: \"Updated Banana\", value: \"banana\" },\n { label: \"Updated Orange\", value: \"orange\" },\n { label: \"Updated Grape\", value: \"grape\" },\n { label: \"Updated Strawberry\", value: \"strawberry\" },\n { label: \"Updated Mango\", value: \"mango\" },\n { label: \"Updated Pineapple\", value: \"pineapple\" },\n { label: \"Updated Kiwi\", value: \"kiwi\" },\n { label: \"Updated Peach\", value: \"peach\" },\n { label: \"Updated Pear\", value: \"pear\" },\n]\n\nexport default function AutocompleteSm() {\n return (\n <Autocomplete items={items}>\n <AutocompleteInput\n size=\"sm\"\n placeholder=\"Updated Search items…\"\n aria-label=\"Updated Search items\"\n />\n <AutocompletePopup>\n <AutocompleteEmpty>Updated No items found.</AutocompleteEmpty>\n <AutocompleteList>\n {(item) => (\n <AutocompleteItem key={item.value} value={item}>\n {item.label}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/autocomplete-with-clear.tsx",
11
- "content": "\"use client\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n} from \"@/registry/default/ui/autocomplete\"\n\nconst items = [\n { label: \"Apple\", value: \"apple\" },\n { label: \"Banana\", value: \"banana\" },\n { label: \"Orange\", value: \"orange\" },\n { label: \"Grape\", value: \"grape\" },\n { label: \"Strawberry\", value: \"strawberry\" },\n { label: \"Mango\", value: \"mango\" },\n { label: \"Pineapple\", value: \"pineapple\" },\n { label: \"Kiwi\", value: \"kiwi\" },\n { label: \"Peach\", value: \"peach\" },\n { label: \"Pear\", value: \"pear\" },\n]\n\nexport default function AutocompleteWithClear() {\n return (\n <Autocomplete items={items}>\n <AutocompleteInput\n placeholder=\"Search items…\"\n aria-label=\"Search items\"\n showClear\n />\n <AutocompletePopup>\n <AutocompleteEmpty>No items found.</AutocompleteEmpty>\n <AutocompleteList>\n {(item) => (\n <AutocompleteItem key={item.value} value={item}>\n {item.label}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
11
+ "content": "\"use client\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n} from \"@/registry/default/ui/autocomplete\"\n\nconst items = [\n { label: \"Updated Apple\", value: \"apple\" },\n { label: \"Updated Banana\", value: \"banana\" },\n { label: \"Updated Orange\", value: \"orange\" },\n { label: \"Updated Grape\", value: \"grape\" },\n { label: \"Updated Strawberry\", value: \"strawberry\" },\n { label: \"Updated Mango\", value: \"mango\" },\n { label: \"Updated Pineapple\", value: \"pineapple\" },\n { label: \"Updated Kiwi\", value: \"kiwi\" },\n { label: \"Updated Peach\", value: \"peach\" },\n { label: \"Updated Pear\", value: \"pear\" },\n]\n\nexport default function AutocompleteWithClear() {\n return (\n <Autocomplete items={items}>\n <AutocompleteInput\n placeholder=\"Updated Search items…\"\n aria-label=\"Updated Search items\"\n showClear\n />\n <AutocompletePopup>\n <AutocompleteEmpty>Updated No items found.</AutocompleteEmpty>\n <AutocompleteList>\n {(item) => (\n <AutocompleteItem key={item.value} value={item}>\n {item.label}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -9,7 +9,7 @@
9
9
  "files": [
10
10
  {
11
11
  "path": "registry/default/examples/autocomplete-with-label.tsx",
12
- "content": "\"use client\"\n\nimport { useId } from \"react\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n} from \"@/registry/default/ui/autocomplete\"\nimport { Label } from \"@/registry/default/ui/label\"\n\nconst items = [\n { label: \"Apple\", value: \"apple\" },\n { label: \"Banana\", value: \"banana\" },\n { label: \"Orange\", value: \"orange\" },\n { label: \"Grape\", value: \"grape\" },\n { label: \"Strawberry\", value: \"strawberry\" },\n { label: \"Mango\", value: \"mango\" },\n { label: \"Pineapple\", value: \"pineapple\" },\n { label: \"Kiwi\", value: \"kiwi\" },\n { label: \"Peach\", value: \"peach\" },\n { label: \"Pear\", value: \"pear\" },\n]\n\nexport default function AutocompleteWithLabel() {\n const id = useId()\n return (\n <Autocomplete items={items}>\n <div className=\"flex flex-col items-start gap-2\">\n <Label htmlFor={id}>Fruits</Label>\n <AutocompleteInput\n id={id}\n placeholder=\"Search items…\"\n aria-label=\"Search items\"\n />\n </div>\n <AutocompletePopup>\n <AutocompleteEmpty>No items found.</AutocompleteEmpty>\n <AutocompleteList>\n {(item) => (\n <AutocompleteItem key={item.value} value={item}>\n {item.label}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
12
+ "content": "\"use client\"\n\nimport { useId } from \"react\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n} from \"@/registry/default/ui/autocomplete\"\nimport { Label } from \"@/registry/default/ui/label\"\n\nconst items = [\n { label: \"Updated Apple\", value: \"apple\" },\n { label: \"Updated Banana\", value: \"banana\" },\n { label: \"Updated Orange\", value: \"orange\" },\n { label: \"Updated Grape\", value: \"grape\" },\n { label: \"Updated Strawberry\", value: \"strawberry\" },\n { label: \"Updated Mango\", value: \"mango\" },\n { label: \"Updated Pineapple\", value: \"pineapple\" },\n { label: \"Updated Kiwi\", value: \"kiwi\" },\n { label: \"Updated Peach\", value: \"peach\" },\n { label: \"Updated Pear\", value: \"pear\" },\n]\n\nexport default function AutocompleteWithLabel() {\n const id = useId()\n return (\n <Autocomplete items={items}>\n <div className=\"flex flex-col items-start gap-2\">\n <Label htmlFor={id}>Updated Fruits</Label>\n <AutocompleteInput\n id={id}\n placeholder=\"Updated Search items…\"\n aria-label=\"Updated Search items\"\n />\n </div>\n <AutocompletePopup>\n <AutocompleteEmpty>Updated No items found.</AutocompleteEmpty>\n <AutocompleteList>\n {(item) => (\n <AutocompleteItem key={item.value} value={item}>\n {item.label}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
13
13
  "type": "registry:example"
14
14
  }
15
15
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/autocomplete-with-trigger-clear.tsx",
11
- "content": "\"use client\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n} from \"@/registry/default/ui/autocomplete\"\n\nconst items = [\n { label: \"Apple\", value: \"apple\" },\n { label: \"Banana\", value: \"banana\" },\n { label: \"Orange\", value: \"orange\" },\n { label: \"Grape\", value: \"grape\" },\n { label: \"Strawberry\", value: \"strawberry\" },\n { label: \"Mango\", value: \"mango\" },\n { label: \"Pineapple\", value: \"pineapple\" },\n { label: \"Kiwi\", value: \"kiwi\" },\n { label: \"Peach\", value: \"peach\" },\n { label: \"Pear\", value: \"pear\" },\n]\n\nexport default function AutocompleteWithTriggerClear() {\n return (\n <Autocomplete items={items}>\n <AutocompleteInput\n placeholder=\"Search items…\"\n aria-label=\"Search items\"\n showTrigger\n showClear\n />\n <AutocompletePopup>\n <AutocompleteEmpty>No items found.</AutocompleteEmpty>\n <AutocompleteList>\n {(item) => (\n <AutocompleteItem key={item.value} value={item}>\n {item.label}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
11
+ "content": "\"use client\"\n\nimport {\n Autocomplete,\n AutocompleteEmpty,\n AutocompleteInput,\n AutocompleteItem,\n AutocompleteList,\n AutocompletePopup,\n} from \"@/registry/default/ui/autocomplete\"\n\nconst items = [\n { label: \"Updated Apple\", value: \"apple\" },\n { label: \"Updated Banana\", value: \"banana\" },\n { label: \"Updated Orange\", value: \"orange\" },\n { label: \"Updated Grape\", value: \"grape\" },\n { label: \"Updated Strawberry\", value: \"strawberry\" },\n { label: \"Updated Mango\", value: \"mango\" },\n { label: \"Updated Pineapple\", value: \"pineapple\" },\n { label: \"Updated Kiwi\", value: \"kiwi\" },\n { label: \"Updated Peach\", value: \"peach\" },\n { label: \"Updated Pear\", value: \"pear\" },\n]\n\nexport default function AutocompleteWithTriggerClear() {\n return (\n <Autocomplete items={items}>\n <AutocompleteInput\n placeholder=\"Updated Search items…\"\n aria-label=\"Updated Search items\"\n showTrigger\n showClear\n />\n <AutocompletePopup>\n <AutocompleteEmpty>Updated No items found.</AutocompleteEmpty>\n <AutocompleteList>\n {(item) => (\n <AutocompleteItem key={item.value} value={item}>\n {item.label}\n </AutocompleteItem>\n )}\n </AutocompleteList>\n </AutocompletePopup>\n </Autocomplete>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/avatar-demo.tsx",
11
- "content": "import {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/default/ui/avatar\"\n\nexport default function AvatarDemo() {\n return (\n <Avatar>\n <AvatarImage\n src=\"https://images.unsplash.com/photo-1543610892-0b1f7e6d8ac1?w=128&h=128&dpr=2&q=80\"\n alt=\"Luke Tracy\"\n />\n <AvatarFallback>LT</AvatarFallback>\n </Avatar>\n )\n}\n",
11
+ "content": "import {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/default/ui/avatar\"\n\nexport default function AvatarDemo() {\n return (\n <Avatar>\n <AvatarImage\n src=\"https://images.unsplash.com/photo-1543610892-0b1f7e6d8ac1?w=128&h=128&dpr=2&q=80\"\n alt=\"Updated Luke Tracy\"\n />\n <AvatarFallback>Updated LT</AvatarFallback>\n </Avatar>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/avatar-fallback.tsx",
11
- "content": "import { Avatar, AvatarFallback } from \"@/registry/default/ui/avatar\"\n\nexport default function AvatarFallbackDemo() {\n return (\n <Avatar>\n <AvatarFallback>LT</AvatarFallback>\n </Avatar>\n )\n}\n",
11
+ "content": "import { Avatar, AvatarFallback } from \"@/registry/default/ui/avatar\"\n\nexport default function AvatarFallbackDemo() {\n return (\n <Avatar>\n <AvatarFallback>Updated LT</AvatarFallback>\n </Avatar>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/avatar-group.tsx",
11
- "content": "import {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/default/ui/avatar\"\n\nexport default function AvatarGroupDemo() {\n return (\n <div className=\"flex -space-x-[0.6rem]\">\n <Avatar className=\"ring-2 ring-background\">\n <AvatarImage\n src=\"https://images.unsplash.com/photo-1543610892-0b1f7e6d8ac1?w=96&h=96&dpr=2&q=80\"\n alt=\"U1\"\n />\n <AvatarFallback>U1</AvatarFallback>\n </Avatar>\n <Avatar className=\"ring-2 ring-background\">\n <AvatarImage\n src=\"https://images.unsplash.com/photo-1628157588553-5eeea00af15c?w=96&h=96&dpr=2&q=80\"\n alt=\"U2\"\n />\n <AvatarFallback>U2</AvatarFallback>\n </Avatar>\n <Avatar className=\"ring-2 ring-background\">\n <AvatarImage\n src=\"https://images.unsplash.com/photo-1655874819398-c6dfbec68ac7?w=96&h=96&dpr=2&q=80\"\n alt=\"U3\"\n />\n <AvatarFallback>U3</AvatarFallback>\n </Avatar>\n </div>\n )\n}\n",
11
+ "content": "import {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/default/ui/avatar\"\n\nexport default function AvatarGroupDemo() {\n return (\n <div className=\"flex -space-x-[0.6rem]\">\n <Avatar className=\"ring-2 ring-background\">\n <AvatarImage\n src=\"https://images.unsplash.com/photo-1543610892-0b1f7e6d8ac1?w=96&h=96&dpr=2&q=80\"\n alt=\"Updated U1\"\n />\n <AvatarFallback>Updated U1</AvatarFallback>\n </Avatar>\n <Avatar className=\"ring-2 ring-background\">\n <AvatarImage\n src=\"https://images.unsplash.com/photo-1628157588553-5eeea00af15c?w=96&h=96&dpr=2&q=80\"\n alt=\"Updated U2\"\n />\n <AvatarFallback>Updated U2</AvatarFallback>\n </Avatar>\n <Avatar className=\"ring-2 ring-background\">\n <AvatarImage\n src=\"https://images.unsplash.com/photo-1655874819398-c6dfbec68ac7?w=96&h=96&dpr=2&q=80\"\n alt=\"Updated U3\"\n />\n <AvatarFallback>Updated U3</AvatarFallback>\n </Avatar>\n </div>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/avatar-radius.tsx",
11
- "content": "import {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/default/ui/avatar\"\n\nexport default function AvatarRadiusDemo() {\n return (\n <div className=\"flex items-center gap-4\">\n <Avatar className=\"rounded-md\">\n <AvatarImage\n src=\"https://images.unsplash.com/photo-1543610892-0b1f7e6d8ac1?w=128&h=128&dpr=2&q=80\"\n alt=\"User\"\n />\n <AvatarFallback>AV</AvatarFallback>\n </Avatar>\n <Avatar className=\"rounded-xl\">\n <AvatarImage\n src=\"https://images.unsplash.com/photo-1543610892-0b1f7e6d8ac1?w=128&h=128&dpr=2&q=80\"\n alt=\"User\"\n />\n <AvatarFallback>AV</AvatarFallback>\n </Avatar>\n <Avatar className=\"rounded-full\">\n <AvatarImage\n src=\"https://images.unsplash.com/photo-1543610892-0b1f7e6d8ac1?w=128&h=128&dpr=2&q=80\"\n alt=\"User\"\n />\n <AvatarFallback>AV</AvatarFallback>\n </Avatar>\n </div>\n )\n}\n",
11
+ "content": "import {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/default/ui/avatar\"\n\nexport default function AvatarRadiusDemo() {\n return (\n <div className=\"flex items-center gap-4\">\n <Avatar className=\"rounded-md\">\n <AvatarImage\n src=\"https://images.unsplash.com/photo-1543610892-0b1f7e6d8ac1?w=128&h=128&dpr=2&q=80\"\n alt=\"Updated User\"\n />\n <AvatarFallback>Updated AV</AvatarFallback>\n </Avatar>\n <Avatar className=\"rounded-xl\">\n <AvatarImage\n src=\"https://images.unsplash.com/photo-1543610892-0b1f7e6d8ac1?w=128&h=128&dpr=2&q=80\"\n alt=\"Updated User\"\n />\n <AvatarFallback>Updated AV</AvatarFallback>\n </Avatar>\n <Avatar className=\"rounded-full\">\n <AvatarImage\n src=\"https://images.unsplash.com/photo-1543610892-0b1f7e6d8ac1?w=128&h=128&dpr=2&q=80\"\n alt=\"Updated User\"\n />\n <AvatarFallback>Updated AV</AvatarFallback>\n </Avatar>\n </div>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/avatar-size.tsx",
11
- "content": "import {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/default/ui/avatar\"\n\nexport default function AvatarSizeDemo() {\n return (\n <div className=\"flex items-center gap-4\">\n <Avatar>\n <AvatarImage\n src=\"https://images.unsplash.com/photo-1543610892-0b1f7e6d8ac1?w=96&h=96&dpr=2&q=80\"\n alt=\"User\"\n />\n <AvatarFallback>AV</AvatarFallback>\n </Avatar>\n <Avatar className=\"size-12\">\n <AvatarImage\n src=\"https://images.unsplash.com/photo-1543610892-0b1f7e6d8ac1?w=144&h=144&dpr=2&q=80\"\n alt=\"User\"\n />\n <AvatarFallback>AV</AvatarFallback>\n </Avatar>\n <Avatar className=\"size-16\">\n <AvatarImage\n src=\"https://images.unsplash.com/photo-1543610892-0b1f7e6d8ac1?w=192&h=192&dpr=2&q=80\"\n alt=\"User\"\n />\n <AvatarFallback>AV</AvatarFallback>\n </Avatar>\n </div>\n )\n}\n",
11
+ "content": "import {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/default/ui/avatar\"\n\nexport default function AvatarSizeDemo() {\n return (\n <div className=\"flex items-center gap-4\">\n <Avatar>\n <AvatarImage\n src=\"https://images.unsplash.com/photo-1543610892-0b1f7e6d8ac1?w=96&h=96&dpr=2&q=80\"\n alt=\"Updated User\"\n />\n <AvatarFallback>Updated AV</AvatarFallback>\n </Avatar>\n <Avatar className=\"size-12\">\n <AvatarImage\n src=\"https://images.unsplash.com/photo-1543610892-0b1f7e6d8ac1?w=144&h=144&dpr=2&q=80\"\n alt=\"Updated User\"\n />\n <AvatarFallback>Updated AV</AvatarFallback>\n </Avatar>\n <Avatar className=\"size-16\">\n <AvatarImage\n src=\"https://images.unsplash.com/photo-1543610892-0b1f7e6d8ac1?w=192&h=192&dpr=2&q=80\"\n alt=\"Updated User\"\n />\n <AvatarFallback>Updated AV</AvatarFallback>\n </Avatar>\n </div>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -9,7 +9,7 @@
9
9
  "files": [
10
10
  {
11
11
  "path": "registry/default/examples/avatar-stack-hover.tsx",
12
- "content": "\"use client\"\n\nimport {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/default/ui/avatar\"\n\nimport { AvatarStack } from \"../../../../../packages/avatar-stack\"\n\nconst Example = () => (\n <AvatarStack animate>\n <Avatar>\n <AvatarImage src=\"https://github.com/loveconnor.png\" />\n <AvatarFallback>CL</AvatarFallback>\n </Avatar>\n <Avatar>\n <AvatarImage src=\"https://avatars.githubusercontent.com/u/91501317?v=4\" />\n <AvatarFallback>MO</AvatarFallback>\n </Avatar>\n <Avatar>\n <AvatarImage src=\"https://github.com/loveconnor.png\" />\n <AvatarFallback>CL</AvatarFallback>\n </Avatar>\n <Avatar>\n <AvatarImage src=\"https://avatars.githubusercontent.com/u/91501317?v=4\" />\n <AvatarFallback>MO</AvatarFallback>\n </Avatar>\n </AvatarStack>\n)\n\nexport default Example\n",
12
+ "content": "\"use client\"\n\nimport {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/default/ui/avatar\"\n\nimport { AvatarStack } from \"../../../../../packages/avatar-stack\"\n\nconst Example = () => (\n <AvatarStack animate>\n <Avatar>\n <AvatarImage src=\"https://github.com/loveconnor.png\" />\n <AvatarFallback>Updated CL</AvatarFallback>\n </Avatar>\n <Avatar>\n <AvatarImage src=\"https://avatars.githubusercontent.com/u/91501317?v=4\" />\n <AvatarFallback>Updated MO</AvatarFallback>\n </Avatar>\n <Avatar>\n <AvatarImage src=\"https://github.com/loveconnor.png\" />\n <AvatarFallback>Updated CL</AvatarFallback>\n </Avatar>\n <Avatar>\n <AvatarImage src=\"https://avatars.githubusercontent.com/u/91501317?v=4\" />\n <AvatarFallback>Updated MO</AvatarFallback>\n </Avatar>\n </AvatarStack>\n)\n\nexport default Example\n",
13
13
  "type": "registry:example"
14
14
  }
15
15
  ],
@@ -9,7 +9,7 @@
9
9
  "files": [
10
10
  {
11
11
  "path": "registry/default/examples/avatar-stack.tsx",
12
- "content": "\"use client\"\n\nimport {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/default/ui/avatar\"\n\nimport { AvatarStack } from \"../../../../../packages/avatar-stack\"\n\nconst Example = () => (\n <AvatarStack>\n <Avatar>\n <AvatarImage src=\"https://github.com/loveconnor.png\" />\n <AvatarFallback>CL</AvatarFallback>\n </Avatar>\n <Avatar>\n <AvatarImage src=\"https://avatars.githubusercontent.com/u/91501317?v=4\" />\n <AvatarFallback>MO</AvatarFallback>\n </Avatar>\n <Avatar>\n <AvatarImage src=\"https://github.com/loveconnor.png\" />\n <AvatarFallback>CL</AvatarFallback>\n </Avatar>\n <Avatar>\n <AvatarImage src=\"https://avatars.githubusercontent.com/u/91501317?v=4\" />\n <AvatarFallback>MO</AvatarFallback>\n </Avatar>\n </AvatarStack>\n)\n\nexport default Example\n",
12
+ "content": "\"use client\"\n\nimport {\n Avatar,\n AvatarFallback,\n AvatarImage,\n} from \"@/registry/default/ui/avatar\"\n\nimport { AvatarStack } from \"../../../../../packages/avatar-stack\"\n\nconst Example = () => (\n <AvatarStack>\n <Avatar>\n <AvatarImage src=\"https://github.com/loveconnor.png\" />\n <AvatarFallback>Updated CL</AvatarFallback>\n </Avatar>\n <Avatar>\n <AvatarImage src=\"https://avatars.githubusercontent.com/u/91501317?v=4\" />\n <AvatarFallback>Updated MO</AvatarFallback>\n </Avatar>\n <Avatar>\n <AvatarImage src=\"https://github.com/loveconnor.png\" />\n <AvatarFallback>Updated CL</AvatarFallback>\n </Avatar>\n <Avatar>\n <AvatarImage src=\"https://avatars.githubusercontent.com/u/91501317?v=4\" />\n <AvatarFallback>Updated MO</AvatarFallback>\n </Avatar>\n </AvatarStack>\n)\n\nexport default Example\n",
13
13
  "type": "registry:example"
14
14
  }
15
15
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/badge-demo.tsx",
11
- "content": "import { Badge } from \"@/registry/default/ui/badge\"\n\nexport default function BadgeDemo() {\n return <Badge>Badge</Badge>\n}\n",
11
+ "content": "import { Badge } from \"@/registry/default/ui/badge\"\n\nexport default function BadgeDemo() {\n return <Badge>Updated Badge</Badge>\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/badge-destructive.tsx",
11
- "content": "import { Badge } from \"@/registry/default/ui/badge\"\n\nexport default function BadgeDestructive() {\n return <Badge variant=\"destructive\">Badge</Badge>\n}\n",
11
+ "content": "import { Badge } from \"@/registry/default/ui/badge\"\n\nexport default function BadgeDestructive() {\n return <Badge variant=\"destructive\">Updated Badge</Badge>\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/badge-error.tsx",
11
- "content": "import { Badge } from \"@/registry/default/ui/badge\"\n\nexport default function BadgeError() {\n return <Badge variant=\"error\">Badge</Badge>\n}\n",
11
+ "content": "import { Badge } from \"@/registry/default/ui/badge\"\n\nexport default function BadgeError() {\n return <Badge variant=\"error\">Updated Badge</Badge>\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/badge-info.tsx",
11
- "content": "import { Badge } from \"@/registry/default/ui/badge\"\n\nexport default function BadgeInfo() {\n return <Badge variant=\"info\">Badge</Badge>\n}\n",
11
+ "content": "import { Badge } from \"@/registry/default/ui/badge\"\n\nexport default function BadgeInfo() {\n return <Badge variant=\"info\">Updated Badge</Badge>\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/badge-lg.tsx",
11
- "content": "import { Badge } from \"@/registry/default/ui/badge\"\n\nexport default function BadgeLg() {\n return <Badge size=\"lg\">Badge</Badge>\n}\n",
11
+ "content": "import { Badge } from \"@/registry/default/ui/badge\"\n\nexport default function BadgeLg() {\n return <Badge size=\"lg\">Updated Badge</Badge>\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],