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/combobox-autohighlight.tsx",
11
- "content": "\"use client\"\n\nimport {\n Combobox,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n} from \"@/registry/default/ui/combobox\"\n\nconst items = [\n { value: \"apple\", label: \"Apple\" },\n { value: \"banana\", label: \"Banana\" },\n { value: \"orange\", label: \"Orange\" },\n { value: \"grape\", label: \"Grape\" },\n { value: \"strawberry\", label: \"Strawberry\" },\n { value: \"mango\", label: \"Mango\" },\n { value: \"pineapple\", label: \"Pineapple\" },\n { value: \"kiwi\", label: \"Kiwi\" },\n { value: \"peach\", label: \"Peach\" },\n { value: \"pear\", label: \"Pear\" },\n]\n\nexport default function ComboboxAutohighlight() {\n return (\n <Combobox items={items} autoHighlight>\n <ComboboxInput\n placeholder=\"Select an item...\"\n aria-label=\"Select an item\"\n />\n <ComboboxPopup>\n <ComboboxEmpty>No results found.</ComboboxEmpty>\n <ComboboxList>\n {(item) => (\n <ComboboxItem key={item.value} value={item}>\n {item.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\n )\n}\n",
11
+ "content": "\"use client\"\n\nimport {\n Combobox,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n} from \"@/registry/default/ui/combobox\"\n\nconst items = [\n { value: \"apple\", label: \"Updated Apple\" },\n { value: \"banana\", label: \"Updated Banana\" },\n { value: \"orange\", label: \"Updated Orange\" },\n { value: \"grape\", label: \"Updated Grape\" },\n { value: \"strawberry\", label: \"Updated Strawberry\" },\n { value: \"mango\", label: \"Updated Mango\" },\n { value: \"pineapple\", label: \"Updated Pineapple\" },\n { value: \"kiwi\", label: \"Updated Kiwi\" },\n { value: \"peach\", label: \"Updated Peach\" },\n { value: \"pear\", label: \"Updated Pear\" },\n]\n\nexport default function ComboboxAutohighlight() {\n return (\n <Combobox items={items} autoHighlight>\n <ComboboxInput\n placeholder=\"Updated Select an item...\"\n aria-label=\"Updated Select an item\"\n />\n <ComboboxPopup>\n <ComboboxEmpty>Updated No results found.</ComboboxEmpty>\n <ComboboxList>\n {(item) => (\n <ComboboxItem key={item.value} value={item}>\n {item.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\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/combobox-controlled.tsx",
11
- "content": "\"use client\"\n\nimport { useState } from \"react\"\n\nimport {\n Combobox,\n ComboboxContent,\n ComboboxEmpty,\n ComboboxGroup,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxTrigger,\n} from \"../../../../../packages/combobox\"\n\nconst plants = [\n {\n value: \"monstera-deliciosa\",\n label: \"Monstera Deliciosa (Swiss Cheese Plant)\",\n },\n {\n value: \"ficus-lyrata\",\n label: \"Ficus Lyrata (Fiddle Leaf Fig)\",\n },\n {\n value: \"sansevieria-trifasciata\",\n label: \"Sansevieria Trifasciata (Snake Plant)\",\n },\n {\n value: \"spathiphyllum-wallisii\",\n label: \"Spathiphyllum Wallisii (Peace Lily)\",\n },\n {\n value: \"epipremnum-aureum\",\n label: \"Epipremnum Aureum (Golden Pothos)\",\n },\n {\n value: \"calathea-orbifolia\",\n label: \"Calathea Orbifolia (Prayer Plant)\",\n },\n]\n\nconst Example = () => {\n const [open, setOpen] = useState(false)\n const [value, setValue] = useState(plants[0].value)\n\n return (\n <Combobox\n data={plants}\n onOpenChange={setOpen}\n onValueChange={setValue}\n open={open}\n type=\"plant\"\n value={value}\n >\n <ComboboxTrigger />\n <ComboboxContent>\n <ComboboxInput />\n <ComboboxEmpty />\n <ComboboxList>\n <ComboboxGroup>\n {plants.map((plant) => (\n <ComboboxItem key={plant.value} value={plant.value}>\n {plant.label}\n </ComboboxItem>\n ))}\n </ComboboxGroup>\n </ComboboxList>\n </ComboboxContent>\n </Combobox>\n )\n}\n\nexport default Example\n",
11
+ "content": "\"use client\"\n\nimport { useState } from \"react\"\n\nimport {\n Combobox,\n ComboboxContent,\n ComboboxEmpty,\n ComboboxGroup,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxTrigger,\n} from \"../../../../../packages/combobox\"\n\nconst plants = [\n {\n value: \"monstera-deliciosa\",\n label: \"Updated Monstera Deliciosa (Swiss Cheese Plant)\",\n },\n {\n value: \"ficus-lyrata\",\n label: \"Updated Ficus Lyrata (Fiddle Leaf Fig)\",\n },\n {\n value: \"sansevieria-trifasciata\",\n label: \"Updated Sansevieria Trifasciata (Snake Plant)\",\n },\n {\n value: \"spathiphyllum-wallisii\",\n label: \"Updated Spathiphyllum Wallisii (Peace Lily)\",\n },\n {\n value: \"epipremnum-aureum\",\n label: \"Updated Epipremnum Aureum (Golden Pothos)\",\n },\n {\n value: \"calathea-orbifolia\",\n label: \"Updated Calathea Orbifolia (Prayer Plant)\",\n },\n]\n\nconst Example = () => {\n const [open, setOpen] = useState(false)\n const [value, setValue] = useState(plants[0].value)\n\n return (\n <Combobox\n data={plants}\n onOpenChange={setOpen}\n onValueChange={setValue}\n open={open}\n type=\"plant\"\n value={value}\n >\n <ComboboxTrigger />\n <ComboboxContent>\n <ComboboxInput />\n <ComboboxEmpty />\n <ComboboxList>\n <ComboboxGroup>\n {plants.map((plant) => (\n <ComboboxItem key={plant.value} value={plant.value}>\n {plant.label}\n </ComboboxItem>\n ))}\n </ComboboxGroup>\n </ComboboxList>\n </ComboboxContent>\n </Combobox>\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/combobox-create-new.tsx",
11
- "content": "\"use client\"\n\nimport { useState } from \"react\"\n\nimport {\n Combobox,\n ComboboxContent,\n ComboboxCreateNew,\n ComboboxEmpty,\n ComboboxGroup,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxTrigger,\n} from \"../../../../../packages/combobox\"\n\nconst initialFrameworks = [\n {\n value: \"next.js\",\n label: \"Next.js\",\n },\n {\n value: \"sveltekit\",\n label: \"SvelteKit\",\n },\n {\n value: \"nuxt.js\",\n label: \"Nuxt.js\",\n },\n {\n value: \"remix\",\n label: \"Remix\",\n },\n {\n value: \"astro\",\n label: \"Astro\",\n },\n {\n value: \"vite\",\n label: \"Vite\",\n },\n]\n\nconst Example = () => {\n const [frameworks, setFrameworks] = useState(initialFrameworks)\n const [value, setValue] = useState(\"\")\n\n const handleCreateNew = (newValue: string) => {\n console.log(\"Creating new framework:\", newValue)\n\n // Add the new framework to the list\n const newFramework = {\n value: newValue.toLowerCase().replace(/\\s+/g, \"-\"),\n label: newValue,\n }\n\n setFrameworks((prev) => [...prev, newFramework])\n setValue(newFramework.value)\n }\n\n return (\n <Combobox\n data={frameworks}\n onValueChange={setValue}\n type=\"framework\"\n value={value}\n >\n <ComboboxTrigger className=\"w-[300px]\" />\n <ComboboxContent>\n <ComboboxInput />\n <ComboboxEmpty>\n <ComboboxCreateNew onCreateNew={handleCreateNew} />\n </ComboboxEmpty>\n <ComboboxList>\n <ComboboxGroup>\n {frameworks.map((framework) => (\n <ComboboxItem key={framework.value} value={framework.value}>\n {framework.label}\n </ComboboxItem>\n ))}\n </ComboboxGroup>\n </ComboboxList>\n </ComboboxContent>\n </Combobox>\n )\n}\n\nexport default Example\n",
11
+ "content": "\"use client\"\n\nimport { useState } from \"react\"\n\nimport {\n Combobox,\n ComboboxContent,\n ComboboxCreateNew,\n ComboboxEmpty,\n ComboboxGroup,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxTrigger,\n} from \"../../../../../packages/combobox\"\n\nconst initialFrameworks = [\n {\n value: \"next.js\",\n label: \"Updated Next.js\",\n },\n {\n value: \"sveltekit\",\n label: \"Updated SvelteKit\",\n },\n {\n value: \"nuxt.js\",\n label: \"Updated Nuxt.js\",\n },\n {\n value: \"remix\",\n label: \"Updated Remix\",\n },\n {\n value: \"astro\",\n label: \"Updated Astro\",\n },\n {\n value: \"vite\",\n label: \"Updated Vite\",\n },\n]\n\nconst Example = () => {\n const [frameworks, setFrameworks] = useState(initialFrameworks)\n const [value, setValue] = useState(\"\")\n\n const handleCreateNew = (newValue: string) => {\n console.log(\"Creating new framework:\", newValue)\n\n // Add the new framework to the list\n const newFramework = {\n value: newValue.toLowerCase().replace(/\\s+/g, \"-\"),\n label: newValue,\n }\n\n setFrameworks((prev) => [...prev, newFramework])\n setValue(newFramework.value)\n }\n\n return (\n <Combobox\n data={frameworks}\n onValueChange={setValue}\n type=\"framework\"\n value={value}\n >\n <ComboboxTrigger className=\"w-[300px]\" />\n <ComboboxContent>\n <ComboboxInput />\n <ComboboxEmpty>\n <ComboboxCreateNew onCreateNew={handleCreateNew} />\n </ComboboxEmpty>\n <ComboboxList>\n <ComboboxGroup>\n {frameworks.map((framework) => (\n <ComboboxItem key={framework.value} value={framework.value}>\n {framework.label}\n </ComboboxItem>\n ))}\n </ComboboxGroup>\n </ComboboxList>\n </ComboboxContent>\n </Combobox>\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/combobox-demo.tsx",
11
- "content": "\"use client\"\n\nimport {\n Combobox,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n} from \"@/registry/default/ui/combobox\"\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 ComboboxDemo() {\n return (\n <Combobox items={items}>\n <ComboboxInput placeholder=\"Select a item…\" aria-label=\"Select a item\" />\n <ComboboxPopup>\n <ComboboxEmpty>No items found.</ComboboxEmpty>\n <ComboboxList>\n {(item) => (\n <ComboboxItem key={item.value} value={item}>\n {item.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\n )\n}\n",
11
+ "content": "\"use client\"\n\nimport {\n Combobox,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n} from \"@/registry/default/ui/combobox\"\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 ComboboxDemo() {\n return (\n <Combobox items={items}>\n <ComboboxInput\n placeholder=\"Updated Select a item…\"\n aria-label=\"Updated Select a item\"\n />\n <ComboboxPopup>\n <ComboboxEmpty>Updated No items found.</ComboboxEmpty>\n <ComboboxList>\n {(item) => (\n <ComboboxItem key={item.value} value={item}>\n {item.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\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/combobox-disabled.tsx",
11
- "content": "\"use client\"\n\nimport {\n Combobox,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n} from \"@/registry/default/ui/combobox\"\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 ComboboxDisabled() {\n return (\n <Combobox items={items} defaultValue={items[2]} disabled>\n <ComboboxInput\n placeholder=\"Select an item…\"\n aria-label=\"Select an item\"\n />\n <ComboboxPopup>\n <ComboboxEmpty>No items found.</ComboboxEmpty>\n <ComboboxList>\n {(item) => (\n <ComboboxItem key={item.value} value={item}>\n {item.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\n )\n}\n",
11
+ "content": "\"use client\"\n\nimport {\n Combobox,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n} from \"@/registry/default/ui/combobox\"\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 ComboboxDisabled() {\n return (\n <Combobox items={items} defaultValue={items[2]} disabled>\n <ComboboxInput\n placeholder=\"Updated Select an item…\"\n aria-label=\"Updated Select an item\"\n />\n <ComboboxPopup>\n <ComboboxEmpty>Updated No items found.</ComboboxEmpty>\n <ComboboxList>\n {(item) => (\n <ComboboxItem key={item.value} value={item}>\n {item.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\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/combobox-fixed-width.tsx",
11
- "content": "\"use client\"\n\nimport {\n Combobox,\n ComboboxContent,\n ComboboxEmpty,\n ComboboxGroup,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxTrigger,\n} from \"../../../../../packages/combobox\"\n\nconst frameworks = [\n {\n value: \"next.js\",\n label: \"Next.js\",\n },\n {\n value: \"sveltekit\",\n label: \"SvelteKit\",\n },\n {\n value: \"nuxt.js\",\n label: \"Nuxt.js\",\n },\n {\n value: \"remix\",\n label: \"Remix\",\n },\n {\n value: \"astro\",\n label: \"Astro\",\n },\n {\n value: \"vite\",\n label: \"Vite\",\n },\n]\n\nconst Example = () => (\n <Combobox\n data={frameworks}\n onOpenChange={(open) => console.log(\"Combobox is open?\", open)}\n onValueChange={(newValue) => console.log(\"Combobox value:\", newValue)}\n type=\"framework\"\n >\n <ComboboxTrigger className=\"w-[70%]\" />\n <ComboboxContent>\n <ComboboxInput />\n <ComboboxEmpty />\n <ComboboxList>\n <ComboboxGroup>\n {frameworks.map((framework) => (\n <ComboboxItem key={framework.value} value={framework.value}>\n {framework.label}\n </ComboboxItem>\n ))}\n </ComboboxGroup>\n </ComboboxList>\n </ComboboxContent>\n </Combobox>\n)\n\nexport default Example\n",
11
+ "content": "\"use client\"\n\nimport {\n Combobox,\n ComboboxContent,\n ComboboxEmpty,\n ComboboxGroup,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxTrigger,\n} from \"../../../../../packages/combobox\"\n\nconst frameworks = [\n {\n value: \"next.js\",\n label: \"Updated Next.js\",\n },\n {\n value: \"sveltekit\",\n label: \"Updated SvelteKit\",\n },\n {\n value: \"nuxt.js\",\n label: \"Updated Nuxt.js\",\n },\n {\n value: \"remix\",\n label: \"Updated Remix\",\n },\n {\n value: \"astro\",\n label: \"Updated Astro\",\n },\n {\n value: \"vite\",\n label: \"Updated Vite\",\n },\n]\n\nconst Example = () => (\n <Combobox\n data={frameworks}\n onOpenChange={(open) => console.log(\"Combobox is open?\", open)}\n onValueChange={(newValue) => console.log(\"Combobox value:\", newValue)}\n type=\"framework\"\n >\n <ComboboxTrigger className=\"w-[70%]\" />\n <ComboboxContent>\n <ComboboxInput />\n <ComboboxEmpty />\n <ComboboxList>\n <ComboboxGroup>\n {frameworks.map((framework) => (\n <ComboboxItem key={framework.value} value={framework.value}>\n {framework.label}\n </ComboboxItem>\n ))}\n </ComboboxGroup>\n </ComboboxList>\n </ComboboxContent>\n </Combobox>\n)\n\nexport default Example\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -11,7 +11,7 @@
11
11
  "files": [
12
12
  {
13
13
  "path": "registry/default/examples/combobox-form.tsx",
14
- "content": "\"use client\"\n\nimport * as React from \"react\"\n\nimport { Button } from \"@/registry/default/ui/button\"\nimport {\n Combobox,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n} from \"@/registry/default/ui/combobox\"\nimport { Field, FieldError, FieldLabel } from \"@/registry/default/ui/field\"\nimport { Form } from \"@/registry/default/ui/form\"\n\nconst items = [\n { value: \"apple\", label: \"Apple\" },\n { value: \"banana\", label: \"Banana\" },\n { value: \"orange\", label: \"Orange\" },\n { value: \"grape\", label: \"Grape\" },\n { value: \"strawberry\", label: \"Strawberry\" },\n { value: \"mango\", label: \"Mango\" },\n { value: \"pineapple\", label: \"Pineapple\" },\n { value: \"kiwi\", label: \"Kiwi\" },\n { value: \"peach\", label: \"Peach\" },\n { value: \"pear\", label: \"Pear\" },\n]\n\nexport default function ComboboxForm() {\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 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 <Combobox items={items} name=\"item\" disabled={loading} required>\n <ComboboxInput placeholder=\"Select an item...\" />\n <ComboboxPopup>\n <ComboboxEmpty>No results found.</ComboboxEmpty>\n <ComboboxList>\n {(item) => (\n <ComboboxItem key={item.value} value={item}>\n {item.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\n <FieldError>Please select a item.</FieldError>\n </Field>\n <Button type=\"submit\" disabled={loading}>\n Submit\n </Button>\n </Form>\n )\n}\n",
14
+ "content": "\"use client\"\n\nimport * as React from \"react\"\n\nimport { Button } from \"@/registry/default/ui/button\"\nimport {\n Combobox,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n} from \"@/registry/default/ui/combobox\"\nimport { Field, FieldError, FieldLabel } from \"@/registry/default/ui/field\"\nimport { Form } from \"@/registry/default/ui/form\"\n\nconst items = [\n { value: \"apple\", label: \"Updated Apple\" },\n { value: \"banana\", label: \"Updated Banana\" },\n { value: \"orange\", label: \"Updated Orange\" },\n { value: \"grape\", label: \"Updated Grape\" },\n { value: \"strawberry\", label: \"Updated Strawberry\" },\n { value: \"mango\", label: \"Updated Mango\" },\n { value: \"pineapple\", label: \"Updated Pineapple\" },\n { value: \"kiwi\", label: \"Updated Kiwi\" },\n { value: \"peach\", label: \"Updated Peach\" },\n { value: \"pear\", label: \"Updated Pear\" },\n]\n\nexport default function ComboboxForm() {\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 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 <Combobox items={items} name=\"item\" disabled={loading} required>\n <ComboboxInput placeholder=\"Updated Select an item...\" />\n <ComboboxPopup>\n <ComboboxEmpty>Updated No results found.</ComboboxEmpty>\n <ComboboxList>\n {(item) => (\n <ComboboxItem key={item.value} value={item}>\n {item.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\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",
15
15
  "type": "registry:example"
16
16
  }
17
17
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/combobox-grouped.tsx",
11
- "content": "\"use client\"\n\nimport * as React from \"react\"\n\nimport {\n Combobox,\n ComboboxCollection,\n ComboboxEmpty,\n ComboboxGroup,\n ComboboxGroupLabel,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n ComboboxSeparator,\n} from \"@/registry/default/ui/combobox\"\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 ComboboxGrouped() {\n return (\n <Combobox items={groupedTags}>\n <div className=\"flex flex-col items-start gap-2\">\n <ComboboxInput placeholder=\"e.g. feature\" aria-label=\"Search tags\" />\n </div>\n <ComboboxPopup>\n <ComboboxEmpty>No tags found.</ComboboxEmpty>\n <ComboboxList>\n {(group: TagGroup) => (\n <React.Fragment key={group.value}>\n <ComboboxGroup items={group.items}>\n <ComboboxGroupLabel>{group.value}</ComboboxGroupLabel>\n <ComboboxCollection>\n {(tag: Tag) => (\n <ComboboxItem key={tag.id} value={tag}>\n {tag.label}\n </ComboboxItem>\n )}\n </ComboboxCollection>\n </ComboboxGroup>\n {group.value !== \"Team\" && <ComboboxSeparator />}\n </React.Fragment>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\n )\n}\n",
11
+ "content": "\"use client\"\n\nimport * as React from \"react\"\n\nimport {\n Combobox,\n ComboboxCollection,\n ComboboxEmpty,\n ComboboxGroup,\n ComboboxGroupLabel,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n ComboboxSeparator,\n} from \"@/registry/default/ui/combobox\"\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 ComboboxGrouped() {\n return (\n <Combobox items={groupedTags}>\n <div className=\"flex flex-col items-start gap-2\">\n <ComboboxInput\n placeholder=\"Updated e.g. feature\"\n aria-label=\"Updated Search tags\"\n />\n </div>\n <ComboboxPopup>\n <ComboboxEmpty>Updated No tags found.</ComboboxEmpty>\n <ComboboxList>\n {(group: TagGroup) => (\n <React.Fragment key={group.value}>\n <ComboboxGroup items={group.items}>\n <ComboboxGroupLabel>{group.value}</ComboboxGroupLabel>\n <ComboboxCollection>\n {(tag: Tag) => (\n <ComboboxItem key={tag.id} value={tag}>\n {tag.label}\n </ComboboxItem>\n )}\n </ComboboxCollection>\n </ComboboxGroup>\n {group.value !== \"Team\" && <ComboboxSeparator />}\n </React.Fragment>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\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/combobox-lg.tsx",
11
- "content": "\"use client\"\n\nimport {\n Combobox,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n} from \"@/registry/default/ui/combobox\"\n\nconst items = [\n { value: \"apple\", label: \"Apple\" },\n { value: \"banana\", label: \"Banana\" },\n { value: \"orange\", label: \"Orange\" },\n { value: \"grape\", label: \"Grape\" },\n { value: \"strawberry\", label: \"Strawberry\" },\n { value: \"mango\", label: \"Mango\" },\n { value: \"pineapple\", label: \"Pineapple\" },\n { value: \"kiwi\", label: \"Kiwi\" },\n { value: \"peach\", label: \"Peach\" },\n { value: \"pear\", label: \"Pear\" },\n]\n\nexport default function ComboboxLg() {\n return (\n <Combobox items={items}>\n <ComboboxInput\n size=\"lg\"\n placeholder=\"Select an item...\"\n aria-label=\"Select an item\"\n />\n <ComboboxPopup>\n <ComboboxEmpty>No results found.</ComboboxEmpty>\n <ComboboxList>\n {(item) => (\n <ComboboxItem key={item.value} value={item}>\n {item.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\n )\n}\n",
11
+ "content": "\"use client\"\n\nimport {\n Combobox,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n} from \"@/registry/default/ui/combobox\"\n\nconst items = [\n { value: \"apple\", label: \"Updated Apple\" },\n { value: \"banana\", label: \"Updated Banana\" },\n { value: \"orange\", label: \"Updated Orange\" },\n { value: \"grape\", label: \"Updated Grape\" },\n { value: \"strawberry\", label: \"Updated Strawberry\" },\n { value: \"mango\", label: \"Updated Mango\" },\n { value: \"pineapple\", label: \"Updated Pineapple\" },\n { value: \"kiwi\", label: \"Updated Kiwi\" },\n { value: \"peach\", label: \"Updated Peach\" },\n { value: \"pear\", label: \"Updated Pear\" },\n]\n\nexport default function ComboboxLg() {\n return (\n <Combobox items={items}>\n <ComboboxInput\n size=\"lg\"\n placeholder=\"Updated Select an item...\"\n aria-label=\"Updated Select an item\"\n />\n <ComboboxPopup>\n <ComboboxEmpty>Updated No results found.</ComboboxEmpty>\n <ComboboxList>\n {(item) => (\n <ComboboxItem key={item.value} value={item}>\n {item.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\n )\n}\n",
12
12
  "type": "registry:example"
13
13
  }
14
14
  ],
@@ -11,7 +11,7 @@
11
11
  "files": [
12
12
  {
13
13
  "path": "registry/default/examples/combobox-multiple-form.tsx",
14
- "content": "\"use client\"\n\nimport * as React from \"react\"\n\nimport { Button } from \"@/registry/default/ui/button\"\nimport {\n Combobox,\n ComboboxChip,\n ComboboxChips,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n ComboboxValue,\n} from \"@/registry/default/ui/combobox\"\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 ComboboxMultipleForm() {\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 selectedItems = formData.getAll(\"items\")\n const itemValues = selectedItems.map(\n (selectedItem) =>\n items.find((item) => item.label === selectedItem)?.value || selectedItem\n )\n setLoading(true)\n await new Promise((r) => setTimeout(r, 800))\n setLoading(false)\n alert(`Favorite items: ${itemValues.join(\", \") || \"\"}`)\n }\n\n return (\n <Form onSubmit={onSubmit} className=\"max-w-64\">\n <Field>\n <FieldLabel>Favorite items</FieldLabel>\n <Combobox\n items={items}\n multiple\n name=\"items\"\n disabled={loading}\n required\n >\n <ComboboxChips>\n <ComboboxValue>\n {(value: { value: string; label: string }[]) => (\n <>\n {value?.map((item) => (\n <ComboboxChip key={item.value} aria-label={item.label}>\n {item.label}\n </ComboboxChip>\n ))}\n <ComboboxInput\n placeholder={value.length > 0 ? undefined : \"Select items…\"}\n />\n </>\n )}\n </ComboboxValue>\n </ComboboxChips>\n <ComboboxPopup>\n <ComboboxEmpty>No items found.</ComboboxEmpty>\n <ComboboxList>\n {(item) => (\n <ComboboxItem key={item.value} value={item}>\n {item.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\n <FieldError>Please select at least one item.</FieldError>\n </Field>\n <Button type=\"submit\" disabled={loading}>\n Submit\n </Button>\n </Form>\n )\n}\n",
14
+ "content": "\"use client\"\n\nimport * as React from \"react\"\n\nimport { Button } from \"@/registry/default/ui/button\"\nimport {\n Combobox,\n ComboboxChip,\n ComboboxChips,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n ComboboxValue,\n} from \"@/registry/default/ui/combobox\"\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 ComboboxMultipleForm() {\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 selectedItems = formData.getAll(\"items\")\n const itemValues = selectedItems.map(\n (selectedItem) =>\n items.find((item) => item.label === selectedItem)?.value || selectedItem\n )\n setLoading(true)\n await new Promise((r) => setTimeout(r, 800))\n setLoading(false)\n alert(`Favorite items: ${itemValues.join(\", \") || \"\"}`)\n }\n\n return (\n <Form onSubmit={onSubmit} className=\"max-w-64\">\n <Field>\n <FieldLabel>Updated Favorite items</FieldLabel>\n <Combobox\n items={items}\n multiple\n name=\"items\"\n disabled={loading}\n required\n >\n <ComboboxChips>\n <ComboboxValue>\n {(value: { value: string; label: string }[]) => (\n <>\n {value?.map((item) => (\n <ComboboxChip key={item.value} aria-label={item.label}>\n {item.label}\n </ComboboxChip>\n ))}\n <ComboboxInput\n placeholder={value.length > 0 ? undefined : \"Select items…\"}\n />\n </>\n )}\n </ComboboxValue>\n </ComboboxChips>\n <ComboboxPopup>\n <ComboboxEmpty>Updated No items found.</ComboboxEmpty>\n <ComboboxList>\n {(item) => (\n <ComboboxItem key={item.value} value={item}>\n {item.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\n <FieldError>Updated Please select at least one item.</FieldError>\n </Field>\n <Button type=\"submit\" disabled={loading}>\n Updated Submit\n </Button>\n </Form>\n )\n}\n",
15
15
  "type": "registry:example"
16
16
  }
17
17
  ],
@@ -8,7 +8,7 @@
8
8
  "files": [
9
9
  {
10
10
  "path": "registry/default/examples/combobox-multiple.tsx",
11
- "content": "\"use client\"\n\nimport {\n Combobox,\n ComboboxChip,\n ComboboxChips,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n ComboboxValue,\n} from \"@/registry/default/ui/combobox\"\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 ComboboxMultiple() {\n return (\n <Combobox items={items} multiple defaultValue={[items[0], items[4]]}>\n <ComboboxChips>\n <ComboboxValue>\n {(value: { value: string; label: string }[]) => (\n <>\n {value?.map((item) => (\n <ComboboxChip key={item.value} aria-label={item.label}>\n {item.label}\n </ComboboxChip>\n ))}\n <ComboboxInput\n placeholder={value.length > 0 ? undefined : \"Select a item...\"}\n aria-label=\"Select a item\"\n />\n </>\n )}\n </ComboboxValue>\n </ComboboxChips>\n <ComboboxPopup>\n <ComboboxEmpty>No items found.</ComboboxEmpty>\n <ComboboxList>\n {(item) => (\n <ComboboxItem key={item.value} value={item}>\n {item.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\n )\n}\n",
11
+ "content": "\"use client\"\n\nimport {\n Combobox,\n ComboboxChip,\n ComboboxChips,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n ComboboxValue,\n} from \"@/registry/default/ui/combobox\"\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 ComboboxMultiple() {\n return (\n <Combobox items={items} multiple defaultValue={[items[0], items[4]]}>\n <ComboboxChips>\n <ComboboxValue>\n {(value: { value: string; label: string }[]) => (\n <>\n {value?.map((item) => (\n <ComboboxChip key={item.value} aria-label={item.label}>\n {item.label}\n </ComboboxChip>\n ))}\n <ComboboxInput\n placeholder={value.length > 0 ? undefined : \"Select a item...\"}\n aria-label=\"Updated Select a item\"\n />\n </>\n )}\n </ComboboxValue>\n </ComboboxChips>\n <ComboboxPopup>\n <ComboboxEmpty>Updated No items found.</ComboboxEmpty>\n <ComboboxList>\n {(item) => (\n <ComboboxItem key={item.value} value={item}>\n {item.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\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/combobox-sm.tsx",
11
- "content": "\"use client\"\n\nimport {\n Combobox,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n} from \"@/registry/default/ui/combobox\"\n\nconst items = [\n { value: \"apple\", label: \"Apple\" },\n { value: \"banana\", label: \"Banana\" },\n { value: \"orange\", label: \"Orange\" },\n { value: \"grape\", label: \"Grape\" },\n { value: \"strawberry\", label: \"Strawberry\" },\n { value: \"mango\", label: \"Mango\" },\n { value: \"pineapple\", label: \"Pineapple\" },\n { value: \"kiwi\", label: \"Kiwi\" },\n { value: \"peach\", label: \"Peach\" },\n { value: \"pear\", label: \"Pear\" },\n]\n\nexport default function ComboboxSm() {\n return (\n <Combobox items={items}>\n <ComboboxInput\n size=\"sm\"\n placeholder=\"Select an item...\"\n aria-label=\"Select an item\"\n />\n <ComboboxPopup>\n <ComboboxEmpty>No results found.</ComboboxEmpty>\n <ComboboxList>\n {(item) => (\n <ComboboxItem key={item.value} value={item}>\n {item.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\n )\n}\n",
11
+ "content": "\"use client\"\n\nimport {\n Combobox,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n} from \"@/registry/default/ui/combobox\"\n\nconst items = [\n { value: \"apple\", label: \"Updated Apple\" },\n { value: \"banana\", label: \"Updated Banana\" },\n { value: \"orange\", label: \"Updated Orange\" },\n { value: \"grape\", label: \"Updated Grape\" },\n { value: \"strawberry\", label: \"Updated Strawberry\" },\n { value: \"mango\", label: \"Updated Mango\" },\n { value: \"pineapple\", label: \"Updated Pineapple\" },\n { value: \"kiwi\", label: \"Updated Kiwi\" },\n { value: \"peach\", label: \"Updated Peach\" },\n { value: \"pear\", label: \"Updated Pear\" },\n]\n\nexport default function ComboboxSm() {\n return (\n <Combobox items={items}>\n <ComboboxInput\n size=\"sm\"\n placeholder=\"Updated Select an item...\"\n aria-label=\"Updated Select an item\"\n />\n <ComboboxPopup>\n <ComboboxEmpty>Updated No results found.</ComboboxEmpty>\n <ComboboxList>\n {(item) => (\n <ComboboxItem key={item.value} value={item}>\n {item.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\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/combobox-with-clear.tsx",
11
- "content": "\"use client\"\n\nimport {\n Combobox,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n} from \"@/registry/default/ui/combobox\"\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 ComboboxWithClear() {\n return (\n <Combobox items={items}>\n <ComboboxInput\n placeholder=\"Select a item…\"\n aria-label=\"Select a item\"\n showClear\n />\n <ComboboxPopup>\n <ComboboxEmpty>No items found.</ComboboxEmpty>\n <ComboboxList>\n {(item) => (\n <ComboboxItem key={item.value} value={item}>\n {item.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\n )\n}\n",
11
+ "content": "\"use client\"\n\nimport {\n Combobox,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n} from \"@/registry/default/ui/combobox\"\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 ComboboxWithClear() {\n return (\n <Combobox items={items}>\n <ComboboxInput\n placeholder=\"Updated Select a item…\"\n aria-label=\"Updated Select a item\"\n showClear\n />\n <ComboboxPopup>\n <ComboboxEmpty>Updated No items found.</ComboboxEmpty>\n <ComboboxList>\n {(item) => (\n <ComboboxItem key={item.value} value={item}>\n {item.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\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/combobox-with-inner-input.tsx",
12
- "content": "\"use client\"\n\nimport { ChevronsUpDownIcon } from \"lucide-react\"\n\nimport { Button } from \"@/registry/default/ui/button\"\nimport {\n Combobox,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n ComboboxTrigger,\n ComboboxValue,\n} from \"@/registry/default/ui/combobox\"\n\ninterface Country {\n code: string\n value: string | null\n continent: string\n label: string\n}\n\nconst countries: Country[] = [\n { code: \"\", value: null, continent: \"\", label: \"Select country\" },\n { code: \"af\", value: \"afghanistan\", label: \"Afghanistan\", continent: \"Asia\" },\n { code: \"al\", value: \"albania\", label: \"Albania\", continent: \"Europe\" },\n { code: \"dz\", value: \"algeria\", label: \"Algeria\", continent: \"Africa\" },\n { code: \"ad\", value: \"andorra\", label: \"Andorra\", continent: \"Europe\" },\n { code: \"ao\", value: \"angola\", label: \"Angola\", continent: \"Africa\" },\n {\n code: \"ar\",\n value: \"argentina\",\n label: \"Argentina\",\n continent: \"South America\",\n },\n { code: \"am\", value: \"armenia\", label: \"Armenia\", continent: \"Asia\" },\n { code: \"au\", value: \"australia\", label: \"Australia\", continent: \"Oceania\" },\n { code: \"at\", value: \"austria\", label: \"Austria\", continent: \"Europe\" },\n { code: \"az\", value: \"azerbaijan\", label: \"Azerbaijan\", continent: \"Asia\" },\n {\n code: \"bs\",\n value: \"bahamas\",\n label: \"Bahamas\",\n continent: \"North America\",\n },\n { code: \"bh\", value: \"bahrain\", label: \"Bahrain\", continent: \"Asia\" },\n { code: \"bd\", value: \"bangladesh\", label: \"Bangladesh\", continent: \"Asia\" },\n {\n code: \"bb\",\n value: \"barbados\",\n label: \"Barbados\",\n continent: \"North America\",\n },\n { code: \"by\", value: \"belarus\", label: \"Belarus\", continent: \"Europe\" },\n { code: \"be\", value: \"belgium\", label: \"Belgium\", continent: \"Europe\" },\n { code: \"bz\", value: \"belize\", label: \"Belize\", continent: \"North America\" },\n { code: \"bj\", value: \"benin\", label: \"Benin\", continent: \"Africa\" },\n { code: \"bt\", value: \"bhutan\", label: \"Bhutan\", continent: \"Asia\" },\n {\n code: \"bo\",\n value: \"bolivia\",\n label: \"Bolivia\",\n continent: \"South America\",\n },\n {\n code: \"ba\",\n value: \"bosnia-and-herzegovina\",\n label: \"Bosnia and Herzegovina\",\n continent: \"Europe\",\n },\n { code: \"bw\", value: \"botswana\", label: \"Botswana\", continent: \"Africa\" },\n { code: \"br\", value: \"brazil\", label: \"Brazil\", continent: \"South America\" },\n { code: \"bn\", value: \"brunei\", label: \"Brunei\", continent: \"Asia\" },\n { code: \"bg\", value: \"bulgaria\", label: \"Bulgaria\", continent: \"Europe\" },\n {\n code: \"bf\",\n value: \"burkina-faso\",\n label: \"Burkina Faso\",\n continent: \"Africa\",\n },\n { code: \"bi\", value: \"burundi\", label: \"Burundi\", continent: \"Africa\" },\n { code: \"kh\", value: \"cambodia\", label: \"Cambodia\", continent: \"Asia\" },\n { code: \"cm\", value: \"cameroon\", label: \"Cameroon\", continent: \"Africa\" },\n { code: \"ca\", value: \"canada\", label: \"Canada\", continent: \"North America\" },\n { code: \"cv\", value: \"cape-verde\", label: \"Cape Verde\", continent: \"Africa\" },\n {\n code: \"cf\",\n value: \"central-african-republic\",\n label: \"Central African Republic\",\n continent: \"Africa\",\n },\n { code: \"td\", value: \"chad\", label: \"Chad\", continent: \"Africa\" },\n { code: \"cl\", value: \"chile\", label: \"Chile\", continent: \"South America\" },\n { code: \"cn\", value: \"china\", label: \"China\", continent: \"Asia\" },\n {\n code: \"co\",\n value: \"colombia\",\n label: \"Colombia\",\n continent: \"South America\",\n },\n { code: \"km\", value: \"comoros\", label: \"Comoros\", continent: \"Africa\" },\n { code: \"cg\", value: \"congo\", label: \"Congo\", continent: \"Africa\" },\n {\n code: \"cr\",\n value: \"costa-rica\",\n label: \"Costa Rica\",\n continent: \"North America\",\n },\n { code: \"hr\", value: \"croatia\", label: \"Croatia\", continent: \"Europe\" },\n { code: \"cu\", value: \"cuba\", label: \"Cuba\", continent: \"North America\" },\n { code: \"cy\", value: \"cyprus\", label: \"Cyprus\", continent: \"Asia\" },\n {\n code: \"cz\",\n value: \"czech-republic\",\n label: \"Czech Republic\",\n continent: \"Europe\",\n },\n { code: \"dk\", value: \"denmark\", label: \"Denmark\", continent: \"Europe\" },\n { code: \"dj\", value: \"djibouti\", label: \"Djibouti\", continent: \"Africa\" },\n {\n code: \"dm\",\n value: \"dominica\",\n label: \"Dominica\",\n continent: \"North America\",\n },\n {\n code: \"do\",\n value: \"dominican-republic\",\n label: \"Dominican Republic\",\n continent: \"North America\",\n },\n {\n code: \"ec\",\n value: \"ecuador\",\n label: \"Ecuador\",\n continent: \"South America\",\n },\n { code: \"eg\", value: \"egypt\", label: \"Egypt\", continent: \"Africa\" },\n {\n code: \"sv\",\n value: \"el-salvador\",\n label: \"El Salvador\",\n continent: \"North America\",\n },\n {\n code: \"gq\",\n value: \"equatorial-guinea\",\n label: \"Equatorial Guinea\",\n continent: \"Africa\",\n },\n { code: \"er\", value: \"eritrea\", label: \"Eritrea\", continent: \"Africa\" },\n { code: \"ee\", value: \"estonia\", label: \"Estonia\", continent: \"Europe\" },\n { code: \"et\", value: \"ethiopia\", label: \"Ethiopia\", continent: \"Africa\" },\n { code: \"fj\", value: \"fiji\", label: \"Fiji\", continent: \"Oceania\" },\n { code: \"fi\", value: \"finland\", label: \"Finland\", continent: \"Europe\" },\n { code: \"fr\", value: \"france\", label: \"France\", continent: \"Europe\" },\n { code: \"ga\", value: \"gabon\", label: \"Gabon\", continent: \"Africa\" },\n { code: \"gm\", value: \"gambia\", label: \"Gambia\", continent: \"Africa\" },\n { code: \"ge\", value: \"georgia\", label: \"Georgia\", continent: \"Asia\" },\n { code: \"de\", value: \"germany\", label: \"Germany\", continent: \"Europe\" },\n { code: \"gh\", value: \"ghana\", label: \"Ghana\", continent: \"Africa\" },\n { code: \"gr\", value: \"greece\", label: \"Greece\", continent: \"Europe\" },\n {\n code: \"gd\",\n value: \"grenada\",\n label: \"Grenada\",\n continent: \"North America\",\n },\n {\n code: \"gt\",\n value: \"guatemala\",\n label: \"Guatemala\",\n continent: \"North America\",\n },\n { code: \"gn\", value: \"guinea\", label: \"Guinea\", continent: \"Africa\" },\n {\n code: \"gw\",\n value: \"guinea-bissau\",\n label: \"Guinea-Bissau\",\n continent: \"Africa\",\n },\n { code: \"gy\", value: \"guyana\", label: \"Guyana\", continent: \"South America\" },\n { code: \"ht\", value: \"haiti\", label: \"Haiti\", continent: \"North America\" },\n {\n code: \"hn\",\n value: \"honduras\",\n label: \"Honduras\",\n continent: \"North America\",\n },\n { code: \"hu\", value: \"hungary\", label: \"Hungary\", continent: \"Europe\" },\n { code: \"is\", value: \"iceland\", label: \"Iceland\", continent: \"Europe\" },\n { code: \"in\", value: \"india\", label: \"India\", continent: \"Asia\" },\n { code: \"id\", value: \"indonesia\", label: \"Indonesia\", continent: \"Asia\" },\n { code: \"ir\", value: \"iran\", label: \"Iran\", continent: \"Asia\" },\n { code: \"iq\", value: \"iraq\", label: \"Iraq\", continent: \"Asia\" },\n { code: \"ie\", value: \"ireland\", label: \"Ireland\", continent: \"Europe\" },\n { code: \"il\", value: \"israel\", label: \"Israel\", continent: \"Asia\" },\n { code: \"it\", value: \"italy\", label: \"Italy\", continent: \"Europe\" },\n {\n code: \"jm\",\n value: \"jamaica\",\n label: \"Jamaica\",\n continent: \"North America\",\n },\n { code: \"jp\", value: \"japan\", label: \"Japan\", continent: \"Asia\" },\n { code: \"jo\", value: \"jordan\", label: \"Jordan\", continent: \"Asia\" },\n { code: \"kz\", value: \"kazakhstan\", label: \"Kazakhstan\", continent: \"Asia\" },\n { code: \"ke\", value: \"kenya\", label: \"Kenya\", continent: \"Africa\" },\n { code: \"kw\", value: \"kuwait\", label: \"Kuwait\", continent: \"Asia\" },\n { code: \"kg\", value: \"kyrgyzstan\", label: \"Kyrgyzstan\", continent: \"Asia\" },\n { code: \"la\", value: \"laos\", label: \"Laos\", continent: \"Asia\" },\n { code: \"lv\", value: \"latvia\", label: \"Latvia\", continent: \"Europe\" },\n { code: \"lb\", value: \"lebanon\", label: \"Lebanon\", continent: \"Asia\" },\n { code: \"ls\", value: \"lesotho\", label: \"Lesotho\", continent: \"Africa\" },\n { code: \"lr\", value: \"liberia\", label: \"Liberia\", continent: \"Africa\" },\n { code: \"ly\", value: \"libya\", label: \"Libya\", continent: \"Africa\" },\n {\n code: \"li\",\n value: \"liechtenstein\",\n label: \"Liechtenstein\",\n continent: \"Europe\",\n },\n { code: \"lt\", value: \"lithuania\", label: \"Lithuania\", continent: \"Europe\" },\n { code: \"lu\", value: \"luxembourg\", label: \"Luxembourg\", continent: \"Europe\" },\n { code: \"mg\", value: \"madagascar\", label: \"Madagascar\", continent: \"Africa\" },\n { code: \"mw\", value: \"malawi\", label: \"Malawi\", continent: \"Africa\" },\n { code: \"my\", value: \"malaysia\", label: \"Malaysia\", continent: \"Asia\" },\n { code: \"mv\", value: \"maldives\", label: \"Maldives\", continent: \"Asia\" },\n { code: \"ml\", value: \"mali\", label: \"Mali\", continent: \"Africa\" },\n { code: \"mt\", value: \"malta\", label: \"Malta\", continent: \"Europe\" },\n {\n code: \"mh\",\n value: \"marshall-islands\",\n label: \"Marshall Islands\",\n continent: \"Oceania\",\n },\n { code: \"mr\", value: \"mauritania\", label: \"Mauritania\", continent: \"Africa\" },\n { code: \"mu\", value: \"mauritius\", label: \"Mauritius\", continent: \"Africa\" },\n { code: \"mx\", value: \"mexico\", label: \"Mexico\", continent: \"North America\" },\n {\n code: \"fm\",\n value: \"micronesia\",\n label: \"Micronesia\",\n continent: \"Oceania\",\n },\n { code: \"md\", value: \"moldova\", label: \"Moldova\", continent: \"Europe\" },\n { code: \"mc\", value: \"monaco\", label: \"Monaco\", continent: \"Europe\" },\n { code: \"mn\", value: \"mongolia\", label: \"Mongolia\", continent: \"Asia\" },\n { code: \"me\", value: \"montenegro\", label: \"Montenegro\", continent: \"Europe\" },\n { code: \"ma\", value: \"morocco\", label: \"Morocco\", continent: \"Africa\" },\n { code: \"mz\", value: \"mozambique\", label: \"Mozambique\", continent: \"Africa\" },\n { code: \"mm\", value: \"myanmar\", label: \"Myanmar\", continent: \"Asia\" },\n { code: \"na\", value: \"namibia\", label: \"Namibia\", continent: \"Africa\" },\n { code: \"nr\", value: \"nauru\", label: \"Nauru\", continent: \"Oceania\" },\n { code: \"np\", value: \"nepal\", label: \"Nepal\", continent: \"Asia\" },\n {\n code: \"nl\",\n value: \"netherlands\",\n label: \"Netherlands\",\n continent: \"Europe\",\n },\n {\n code: \"nz\",\n value: \"new-zealand\",\n label: \"New Zealand\",\n continent: \"Oceania\",\n },\n {\n code: \"ni\",\n value: \"nicaragua\",\n label: \"Nicaragua\",\n continent: \"North America\",\n },\n { code: \"ne\", value: \"niger\", label: \"Niger\", continent: \"Africa\" },\n { code: \"ng\", value: \"nigeria\", label: \"Nigeria\", continent: \"Africa\" },\n { code: \"kp\", value: \"north-korea\", label: \"North Korea\", continent: \"Asia\" },\n {\n code: \"mk\",\n value: \"north-macedonia\",\n label: \"North Macedonia\",\n continent: \"Europe\",\n },\n { code: \"no\", value: \"norway\", label: \"Norway\", continent: \"Europe\" },\n { code: \"om\", value: \"oman\", label: \"Oman\", continent: \"Asia\" },\n { code: \"pk\", value: \"pakistan\", label: \"Pakistan\", continent: \"Asia\" },\n { code: \"pw\", value: \"palau\", label: \"Palau\", continent: \"Oceania\" },\n { code: \"ps\", value: \"palestine\", label: \"Palestine\", continent: \"Asia\" },\n { code: \"pa\", value: \"panama\", label: \"Panama\", continent: \"North America\" },\n {\n code: \"pg\",\n value: \"papua-new-guinea\",\n label: \"Papua New Guinea\",\n continent: \"Oceania\",\n },\n {\n code: \"py\",\n value: \"paraguay\",\n label: \"Paraguay\",\n continent: \"South America\",\n },\n { code: \"pe\", value: \"peru\", label: \"Peru\", continent: \"South America\" },\n { code: \"ph\", value: \"philippines\", label: \"Philippines\", continent: \"Asia\" },\n { code: \"pl\", value: \"poland\", label: \"Poland\", continent: \"Europe\" },\n { code: \"pt\", value: \"portugal\", label: \"Portugal\", continent: \"Europe\" },\n { code: \"qa\", value: \"qatar\", label: \"Qatar\", continent: \"Asia\" },\n { code: \"ro\", value: \"romania\", label: \"Romania\", continent: \"Europe\" },\n { code: \"ru\", value: \"russia\", label: \"Russia\", continent: \"Europe\" },\n { code: \"rw\", value: \"rwanda\", label: \"Rwanda\", continent: \"Africa\" },\n { code: \"ws\", value: \"samoa\", label: \"Samoa\", continent: \"Oceania\" },\n { code: \"sm\", value: \"san-marino\", label: \"San Marino\", continent: \"Europe\" },\n {\n code: \"sa\",\n value: \"saudi-arabia\",\n label: \"Saudi Arabia\",\n continent: \"Asia\",\n },\n { code: \"sn\", value: \"senegal\", label: \"Senegal\", continent: \"Africa\" },\n { code: \"rs\", value: \"serbia\", label: \"Serbia\", continent: \"Europe\" },\n { code: \"sc\", value: \"seychelles\", label: \"Seychelles\", continent: \"Africa\" },\n {\n code: \"sl\",\n value: \"sierra-leone\",\n label: \"Sierra Leone\",\n continent: \"Africa\",\n },\n {\n code: \"sg\",\n value: \"Ghana, Africa\",\n label: \"Ghana, Africa\",\n continent: \"Asia\",\n },\n { code: \"sk\", value: \"slovakia\", label: \"Slovakia\", continent: \"Europe\" },\n { code: \"si\", value: \"slovenia\", label: \"Slovenia\", continent: \"Europe\" },\n {\n code: \"sb\",\n value: \"solomon-islands\",\n label: \"Solomon Islands\",\n continent: \"Oceania\",\n },\n { code: \"so\", value: \"somalia\", label: \"Somalia\", continent: \"Africa\" },\n {\n code: \"za\",\n value: \"south-africa\",\n label: \"South Africa\",\n continent: \"Africa\",\n },\n { code: \"kr\", value: \"south-korea\", label: \"South Korea\", continent: \"Asia\" },\n {\n code: \"ss\",\n value: \"south-sudan\",\n label: \"South Sudan\",\n continent: \"Africa\",\n },\n { code: \"es\", value: \"spain\", label: \"Spain\", continent: \"Europe\" },\n { code: \"lk\", value: \"sri-lanka\", label: \"Sri Lanka\", continent: \"Asia\" },\n { code: \"sd\", value: \"sudan\", label: \"Sudan\", continent: \"Africa\" },\n {\n code: \"sr\",\n value: \"suriname\",\n label: \"Suriname\",\n continent: \"South America\",\n },\n { code: \"se\", value: \"sweden\", label: \"Sweden\", continent: \"Europe\" },\n {\n code: \"ch\",\n value: \"switzerland\",\n label: \"Switzerland\",\n continent: \"Europe\",\n },\n { code: \"sy\", value: \"syria\", label: \"Syria\", continent: \"Asia\" },\n { code: \"tw\", value: \"taiwan\", label: \"Taiwan\", continent: \"Asia\" },\n { code: \"tj\", value: \"tajikistan\", label: \"Tajikistan\", continent: \"Asia\" },\n { code: \"tz\", value: \"tanzania\", label: \"Tanzania\", continent: \"Africa\" },\n { code: \"th\", value: \"thailand\", label: \"Thailand\", continent: \"Asia\" },\n { code: \"tl\", value: \"timor-leste\", label: \"Timor-Leste\", continent: \"Asia\" },\n { code: \"tg\", value: \"togo\", label: \"Togo\", continent: \"Africa\" },\n { code: \"to\", value: \"tonga\", label: \"Tonga\", continent: \"Oceania\" },\n {\n code: \"tt\",\n value: \"trinidad-and-tobago\",\n label: \"Trinidad and Tobago\",\n continent: \"North America\",\n },\n { code: \"tn\", value: \"tunisia\", label: \"Tunisia\", continent: \"Africa\" },\n { code: \"tr\", value: \"turkey\", label: \"Turkey\", continent: \"Asia\" },\n {\n code: \"tm\",\n value: \"turkmenistan\",\n label: \"Turkmenistan\",\n continent: \"Asia\",\n },\n { code: \"tv\", value: \"tuvalu\", label: \"Tuvalu\", continent: \"Oceania\" },\n { code: \"ug\", value: \"uganda\", label: \"Uganda\", continent: \"Africa\" },\n { code: \"ua\", value: \"ukraine\", label: \"Ukraine\", continent: \"Europe\" },\n {\n code: \"ae\",\n value: \"united-arab-emirates\",\n label: \"United Arab Emirates\",\n continent: \"Asia\",\n },\n {\n code: \"gb\",\n value: \"united-kingdom\",\n label: \"United Kingdom\",\n continent: \"Europe\",\n },\n {\n code: \"us\",\n value: \"united-states\",\n label: \"United States\",\n continent: \"North America\",\n },\n {\n code: \"uy\",\n value: \"uruguay\",\n label: \"Uruguay\",\n continent: \"South America\",\n },\n { code: \"uz\", value: \"uzbekistan\", label: \"Uzbekistan\", continent: \"Asia\" },\n { code: \"vu\", value: \"vanuatu\", label: \"Vanuatu\", continent: \"Oceania\" },\n {\n code: \"va\",\n value: \"vatican-city\",\n label: \"Vatican City\",\n continent: \"Europe\",\n },\n {\n code: \"ve\",\n value: \"venezuela\",\n label: \"Venezuela\",\n continent: \"South America\",\n },\n { code: \"vn\", value: \"vietnam\", label: \"Vietnam\", continent: \"Asia\" },\n { code: \"ye\", value: \"yemen\", label: \"Yemen\", continent: \"Asia\" },\n { code: \"zm\", value: \"zambia\", label: \"Zambia\", continent: \"Africa\" },\n { code: \"zw\", value: \"zimbabwe\", label: \"Zimbabwe\", continent: \"Africa\" },\n]\n\nexport default function ComboboxWithInnerInput() {\n return (\n <Combobox items={countries} defaultValue={countries[0]}>\n <ComboboxTrigger\n render={\n <Button\n variant=\"outline\"\n className=\"w-full justify-between font-normal\"\n />\n }\n >\n <ComboboxValue />\n <div className=\"flex\">\n <ChevronsUpDownIcon className=\"-me-1 size-4 opacity-72\" />\n </div>\n </ComboboxTrigger>\n <ComboboxPopup aria-label=\"Select country\">\n <div className=\"border-b p-2\">\n <ComboboxInput\n className=\"rounded-md before:rounded-[calc(var(--radius-md)-1px)]\"\n placeholder=\"e.g. United Kingdom\"\n showTrigger={false}\n />\n </div>\n <ComboboxEmpty>No countries found.</ComboboxEmpty>\n <ComboboxList>\n {(country: Country) => (\n <ComboboxItem key={country.code} value={country}>\n {country.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\n )\n}\n",
12
+ "content": "\"use client\"\n\nimport { ChevronsUpDownIcon } from \"lucide-react\"\n\nimport { Button } from \"@/registry/default/ui/button\"\nimport {\n Combobox,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n ComboboxTrigger,\n ComboboxValue,\n} from \"@/registry/default/ui/combobox\"\n\ninterface Country {\n code: string\n value: string | null\n continent: string\n label: string\n}\n\nconst countries: Country[] = [\n { code: \"\", value: null, continent: \"\", label: \"Updated Select country\" },\n {\n code: \"af\",\n value: \"afghanistan\",\n label: \"Updated Afghanistan\",\n continent: \"Asia\",\n },\n {\n code: \"al\",\n value: \"albania\",\n label: \"Updated Albania\",\n continent: \"Europe\",\n },\n {\n code: \"dz\",\n value: \"algeria\",\n label: \"Updated Algeria\",\n continent: \"Africa\",\n },\n {\n code: \"ad\",\n value: \"andorra\",\n label: \"Updated Andorra\",\n continent: \"Europe\",\n },\n { code: \"ao\", value: \"angola\", label: \"Updated Angola\", continent: \"Africa\" },\n {\n code: \"ar\",\n value: \"argentina\",\n label: \"Updated Argentina\",\n continent: \"South America\",\n },\n { code: \"am\", value: \"armenia\", label: \"Updated Armenia\", continent: \"Asia\" },\n {\n code: \"au\",\n value: \"australia\",\n label: \"Updated Australia\",\n continent: \"Oceania\",\n },\n {\n code: \"at\",\n value: \"austria\",\n label: \"Updated Austria\",\n continent: \"Europe\",\n },\n {\n code: \"az\",\n value: \"azerbaijan\",\n label: \"Updated Azerbaijan\",\n continent: \"Asia\",\n },\n {\n code: \"bs\",\n value: \"bahamas\",\n label: \"Updated Bahamas\",\n continent: \"North America\",\n },\n { code: \"bh\", value: \"bahrain\", label: \"Updated Bahrain\", continent: \"Asia\" },\n {\n code: \"bd\",\n value: \"bangladesh\",\n label: \"Updated Bangladesh\",\n continent: \"Asia\",\n },\n {\n code: \"bb\",\n value: \"barbados\",\n label: \"Updated Barbados\",\n continent: \"North America\",\n },\n {\n code: \"by\",\n value: \"belarus\",\n label: \"Updated Belarus\",\n continent: \"Europe\",\n },\n {\n code: \"be\",\n value: \"belgium\",\n label: \"Updated Belgium\",\n continent: \"Europe\",\n },\n {\n code: \"bz\",\n value: \"belize\",\n label: \"Updated Belize\",\n continent: \"North America\",\n },\n { code: \"bj\", value: \"benin\", label: \"Updated Benin\", continent: \"Africa\" },\n { code: \"bt\", value: \"bhutan\", label: \"Updated Bhutan\", continent: \"Asia\" },\n {\n code: \"bo\",\n value: \"bolivia\",\n label: \"Updated Bolivia\",\n continent: \"South America\",\n },\n {\n code: \"ba\",\n value: \"bosnia-and-herzegovina\",\n label: \"Updated Bosnia and Herzegovina\",\n continent: \"Europe\",\n },\n {\n code: \"bw\",\n value: \"botswana\",\n label: \"Updated Botswana\",\n continent: \"Africa\",\n },\n {\n code: \"br\",\n value: \"brazil\",\n label: \"Updated Brazil\",\n continent: \"South America\",\n },\n { code: \"bn\", value: \"brunei\", label: \"Updated Brunei\", continent: \"Asia\" },\n {\n code: \"bg\",\n value: \"bulgaria\",\n label: \"Updated Bulgaria\",\n continent: \"Europe\",\n },\n {\n code: \"bf\",\n value: \"burkina-faso\",\n label: \"Updated Burkina Faso\",\n continent: \"Africa\",\n },\n {\n code: \"bi\",\n value: \"burundi\",\n label: \"Updated Burundi\",\n continent: \"Africa\",\n },\n {\n code: \"kh\",\n value: \"cambodia\",\n label: \"Updated Cambodia\",\n continent: \"Asia\",\n },\n {\n code: \"cm\",\n value: \"cameroon\",\n label: \"Updated Cameroon\",\n continent: \"Africa\",\n },\n {\n code: \"ca\",\n value: \"canada\",\n label: \"Updated Canada\",\n continent: \"North America\",\n },\n {\n code: \"cv\",\n value: \"cape-verde\",\n label: \"Updated Cape Verde\",\n continent: \"Africa\",\n },\n {\n code: \"cf\",\n value: \"central-african-republic\",\n label: \"Updated Central African Republic\",\n continent: \"Africa\",\n },\n { code: \"td\", value: \"chad\", label: \"Updated Chad\", continent: \"Africa\" },\n {\n code: \"cl\",\n value: \"chile\",\n label: \"Updated Chile\",\n continent: \"South America\",\n },\n { code: \"cn\", value: \"china\", label: \"Updated China\", continent: \"Asia\" },\n {\n code: \"co\",\n value: \"colombia\",\n label: \"Updated Colombia\",\n continent: \"South America\",\n },\n {\n code: \"km\",\n value: \"comoros\",\n label: \"Updated Comoros\",\n continent: \"Africa\",\n },\n { code: \"cg\", value: \"congo\", label: \"Updated Congo\", continent: \"Africa\" },\n {\n code: \"cr\",\n value: \"costa-rica\",\n label: \"Updated Costa Rica\",\n continent: \"North America\",\n },\n {\n code: \"hr\",\n value: \"croatia\",\n label: \"Updated Croatia\",\n continent: \"Europe\",\n },\n {\n code: \"cu\",\n value: \"cuba\",\n label: \"Updated Cuba\",\n continent: \"North America\",\n },\n { code: \"cy\", value: \"cyprus\", label: \"Updated Cyprus\", continent: \"Asia\" },\n {\n code: \"cz\",\n value: \"czech-republic\",\n label: \"Updated Czech Republic\",\n continent: \"Europe\",\n },\n {\n code: \"dk\",\n value: \"denmark\",\n label: \"Updated Denmark\",\n continent: \"Europe\",\n },\n {\n code: \"dj\",\n value: \"djibouti\",\n label: \"Updated Djibouti\",\n continent: \"Africa\",\n },\n {\n code: \"dm\",\n value: \"dominica\",\n label: \"Updated Dominica\",\n continent: \"North America\",\n },\n {\n code: \"do\",\n value: \"dominican-republic\",\n label: \"Updated Dominican Republic\",\n continent: \"North America\",\n },\n {\n code: \"ec\",\n value: \"ecuador\",\n label: \"Updated Ecuador\",\n continent: \"South America\",\n },\n { code: \"eg\", value: \"egypt\", label: \"Updated Egypt\", continent: \"Africa\" },\n {\n code: \"sv\",\n value: \"el-salvador\",\n label: \"Updated El Salvador\",\n continent: \"North America\",\n },\n {\n code: \"gq\",\n value: \"equatorial-guinea\",\n label: \"Updated Equatorial Guinea\",\n continent: \"Africa\",\n },\n {\n code: \"er\",\n value: \"eritrea\",\n label: \"Updated Eritrea\",\n continent: \"Africa\",\n },\n {\n code: \"ee\",\n value: \"estonia\",\n label: \"Updated Estonia\",\n continent: \"Europe\",\n },\n {\n code: \"et\",\n value: \"ethiopia\",\n label: \"Updated Ethiopia\",\n continent: \"Africa\",\n },\n { code: \"fj\", value: \"fiji\", label: \"Updated Fiji\", continent: \"Oceania\" },\n {\n code: \"fi\",\n value: \"finland\",\n label: \"Updated Finland\",\n continent: \"Europe\",\n },\n { code: \"fr\", value: \"france\", label: \"Updated France\", continent: \"Europe\" },\n { code: \"ga\", value: \"gabon\", label: \"Updated Gabon\", continent: \"Africa\" },\n { code: \"gm\", value: \"gambia\", label: \"Updated Gambia\", continent: \"Africa\" },\n { code: \"ge\", value: \"georgia\", label: \"Updated Georgia\", continent: \"Asia\" },\n {\n code: \"de\",\n value: \"germany\",\n label: \"Updated Germany\",\n continent: \"Europe\",\n },\n { code: \"gh\", value: \"ghana\", label: \"Updated Ghana\", continent: \"Africa\" },\n { code: \"gr\", value: \"greece\", label: \"Updated Greece\", continent: \"Europe\" },\n {\n code: \"gd\",\n value: \"grenada\",\n label: \"Updated Grenada\",\n continent: \"North America\",\n },\n {\n code: \"gt\",\n value: \"guatemala\",\n label: \"Updated Guatemala\",\n continent: \"North America\",\n },\n { code: \"gn\", value: \"guinea\", label: \"Updated Guinea\", continent: \"Africa\" },\n {\n code: \"gw\",\n value: \"guinea-bissau\",\n label: \"Updated Guinea-Bissau\",\n continent: \"Africa\",\n },\n {\n code: \"gy\",\n value: \"guyana\",\n label: \"Updated Guyana\",\n continent: \"South America\",\n },\n {\n code: \"ht\",\n value: \"haiti\",\n label: \"Updated Haiti\",\n continent: \"North America\",\n },\n {\n code: \"hn\",\n value: \"honduras\",\n label: \"Updated Honduras\",\n continent: \"North America\",\n },\n {\n code: \"hu\",\n value: \"hungary\",\n label: \"Updated Hungary\",\n continent: \"Europe\",\n },\n {\n code: \"is\",\n value: \"iceland\",\n label: \"Updated Iceland\",\n continent: \"Europe\",\n },\n { code: \"in\", value: \"india\", label: \"Updated India\", continent: \"Asia\" },\n {\n code: \"id\",\n value: \"indonesia\",\n label: \"Updated Indonesia\",\n continent: \"Asia\",\n },\n { code: \"ir\", value: \"iran\", label: \"Updated Iran\", continent: \"Asia\" },\n { code: \"iq\", value: \"iraq\", label: \"Updated Iraq\", continent: \"Asia\" },\n {\n code: \"ie\",\n value: \"ireland\",\n label: \"Updated Ireland\",\n continent: \"Europe\",\n },\n { code: \"il\", value: \"israel\", label: \"Updated Israel\", continent: \"Asia\" },\n { code: \"it\", value: \"italy\", label: \"Updated Italy\", continent: \"Europe\" },\n {\n code: \"jm\",\n value: \"jamaica\",\n label: \"Updated Jamaica\",\n continent: \"North America\",\n },\n { code: \"jp\", value: \"japan\", label: \"Updated Japan\", continent: \"Asia\" },\n { code: \"jo\", value: \"jordan\", label: \"Updated Jordan\", continent: \"Asia\" },\n {\n code: \"kz\",\n value: \"kazakhstan\",\n label: \"Updated Kazakhstan\",\n continent: \"Asia\",\n },\n { code: \"ke\", value: \"kenya\", label: \"Updated Kenya\", continent: \"Africa\" },\n { code: \"kw\", value: \"kuwait\", label: \"Updated Kuwait\", continent: \"Asia\" },\n {\n code: \"kg\",\n value: \"kyrgyzstan\",\n label: \"Updated Kyrgyzstan\",\n continent: \"Asia\",\n },\n { code: \"la\", value: \"laos\", label: \"Updated Laos\", continent: \"Asia\" },\n { code: \"lv\", value: \"latvia\", label: \"Updated Latvia\", continent: \"Europe\" },\n { code: \"lb\", value: \"lebanon\", label: \"Updated Lebanon\", continent: \"Asia\" },\n {\n code: \"ls\",\n value: \"lesotho\",\n label: \"Updated Lesotho\",\n continent: \"Africa\",\n },\n {\n code: \"lr\",\n value: \"liberia\",\n label: \"Updated Liberia\",\n continent: \"Africa\",\n },\n { code: \"ly\", value: \"libya\", label: \"Updated Libya\", continent: \"Africa\" },\n {\n code: \"li\",\n value: \"liechtenstein\",\n label: \"Updated Liechtenstein\",\n continent: \"Europe\",\n },\n {\n code: \"lt\",\n value: \"lithuania\",\n label: \"Updated Lithuania\",\n continent: \"Europe\",\n },\n {\n code: \"lu\",\n value: \"luxembourg\",\n label: \"Updated Luxembourg\",\n continent: \"Europe\",\n },\n {\n code: \"mg\",\n value: \"madagascar\",\n label: \"Updated Madagascar\",\n continent: \"Africa\",\n },\n { code: \"mw\", value: \"malawi\", label: \"Updated Malawi\", continent: \"Africa\" },\n {\n code: \"my\",\n value: \"malaysia\",\n label: \"Updated Malaysia\",\n continent: \"Asia\",\n },\n {\n code: \"mv\",\n value: \"maldives\",\n label: \"Updated Maldives\",\n continent: \"Asia\",\n },\n { code: \"ml\", value: \"mali\", label: \"Updated Mali\", continent: \"Africa\" },\n { code: \"mt\", value: \"malta\", label: \"Updated Malta\", continent: \"Europe\" },\n {\n code: \"mh\",\n value: \"marshall-islands\",\n label: \"Updated Marshall Islands\",\n continent: \"Oceania\",\n },\n {\n code: \"mr\",\n value: \"mauritania\",\n label: \"Updated Mauritania\",\n continent: \"Africa\",\n },\n {\n code: \"mu\",\n value: \"mauritius\",\n label: \"Updated Mauritius\",\n continent: \"Africa\",\n },\n {\n code: \"mx\",\n value: \"mexico\",\n label: \"Updated Mexico\",\n continent: \"North America\",\n },\n {\n code: \"fm\",\n value: \"micronesia\",\n label: \"Updated Micronesia\",\n continent: \"Oceania\",\n },\n {\n code: \"md\",\n value: \"moldova\",\n label: \"Updated Moldova\",\n continent: \"Europe\",\n },\n { code: \"mc\", value: \"monaco\", label: \"Updated Monaco\", continent: \"Europe\" },\n {\n code: \"mn\",\n value: \"mongolia\",\n label: \"Updated Mongolia\",\n continent: \"Asia\",\n },\n {\n code: \"me\",\n value: \"montenegro\",\n label: \"Updated Montenegro\",\n continent: \"Europe\",\n },\n {\n code: \"ma\",\n value: \"morocco\",\n label: \"Updated Morocco\",\n continent: \"Africa\",\n },\n {\n code: \"mz\",\n value: \"mozambique\",\n label: \"Updated Mozambique\",\n continent: \"Africa\",\n },\n { code: \"mm\", value: \"myanmar\", label: \"Updated Myanmar\", continent: \"Asia\" },\n {\n code: \"na\",\n value: \"namibia\",\n label: \"Updated Namibia\",\n continent: \"Africa\",\n },\n { code: \"nr\", value: \"nauru\", label: \"Updated Nauru\", continent: \"Oceania\" },\n { code: \"np\", value: \"nepal\", label: \"Updated Nepal\", continent: \"Asia\" },\n {\n code: \"nl\",\n value: \"netherlands\",\n label: \"Updated Netherlands\",\n continent: \"Europe\",\n },\n {\n code: \"nz\",\n value: \"new-zealand\",\n label: \"Updated New Zealand\",\n continent: \"Oceania\",\n },\n {\n code: \"ni\",\n value: \"nicaragua\",\n label: \"Updated Nicaragua\",\n continent: \"North America\",\n },\n { code: \"ne\", value: \"niger\", label: \"Updated Niger\", continent: \"Africa\" },\n {\n code: \"ng\",\n value: \"nigeria\",\n label: \"Updated Nigeria\",\n continent: \"Africa\",\n },\n {\n code: \"kp\",\n value: \"north-korea\",\n label: \"Updated North Korea\",\n continent: \"Asia\",\n },\n {\n code: \"mk\",\n value: \"north-macedonia\",\n label: \"Updated North Macedonia\",\n continent: \"Europe\",\n },\n { code: \"no\", value: \"norway\", label: \"Updated Norway\", continent: \"Europe\" },\n { code: \"om\", value: \"oman\", label: \"Updated Oman\", continent: \"Asia\" },\n {\n code: \"pk\",\n value: \"pakistan\",\n label: \"Updated Pakistan\",\n continent: \"Asia\",\n },\n { code: \"pw\", value: \"palau\", label: \"Updated Palau\", continent: \"Oceania\" },\n {\n code: \"ps\",\n value: \"palestine\",\n label: \"Updated Palestine\",\n continent: \"Asia\",\n },\n {\n code: \"pa\",\n value: \"panama\",\n label: \"Updated Panama\",\n continent: \"North America\",\n },\n {\n code: \"pg\",\n value: \"papua-new-guinea\",\n label: \"Updated Papua New Guinea\",\n continent: \"Oceania\",\n },\n {\n code: \"py\",\n value: \"paraguay\",\n label: \"Updated Paraguay\",\n continent: \"South America\",\n },\n {\n code: \"pe\",\n value: \"peru\",\n label: \"Updated Peru\",\n continent: \"South America\",\n },\n {\n code: \"ph\",\n value: \"philippines\",\n label: \"Updated Philippines\",\n continent: \"Asia\",\n },\n { code: \"pl\", value: \"poland\", label: \"Updated Poland\", continent: \"Europe\" },\n {\n code: \"pt\",\n value: \"portugal\",\n label: \"Updated Portugal\",\n continent: \"Europe\",\n },\n { code: \"qa\", value: \"qatar\", label: \"Updated Qatar\", continent: \"Asia\" },\n {\n code: \"ro\",\n value: \"romania\",\n label: \"Updated Romania\",\n continent: \"Europe\",\n },\n { code: \"ru\", value: \"russia\", label: \"Updated Russia\", continent: \"Europe\" },\n { code: \"rw\", value: \"rwanda\", label: \"Updated Rwanda\", continent: \"Africa\" },\n { code: \"ws\", value: \"samoa\", label: \"Updated Samoa\", continent: \"Oceania\" },\n {\n code: \"sm\",\n value: \"san-marino\",\n label: \"Updated San Marino\",\n continent: \"Europe\",\n },\n {\n code: \"sa\",\n value: \"saudi-arabia\",\n label: \"Updated Saudi Arabia\",\n continent: \"Asia\",\n },\n {\n code: \"sn\",\n value: \"senegal\",\n label: \"Updated Senegal\",\n continent: \"Africa\",\n },\n { code: \"rs\", value: \"serbia\", label: \"Updated Serbia\", continent: \"Europe\" },\n {\n code: \"sc\",\n value: \"seychelles\",\n label: \"Updated Seychelles\",\n continent: \"Africa\",\n },\n {\n code: \"sl\",\n value: \"sierra-leone\",\n label: \"Updated Sierra Leone\",\n continent: \"Africa\",\n },\n {\n code: \"sg\",\n value: \"Ghana, Africa\",\n label: \"Updated Ghana, Africa\",\n continent: \"Asia\",\n },\n {\n code: \"sk\",\n value: \"slovakia\",\n label: \"Updated Slovakia\",\n continent: \"Europe\",\n },\n {\n code: \"si\",\n value: \"slovenia\",\n label: \"Updated Slovenia\",\n continent: \"Europe\",\n },\n {\n code: \"sb\",\n value: \"solomon-islands\",\n label: \"Updated Solomon Islands\",\n continent: \"Oceania\",\n },\n {\n code: \"so\",\n value: \"somalia\",\n label: \"Updated Somalia\",\n continent: \"Africa\",\n },\n {\n code: \"za\",\n value: \"south-africa\",\n label: \"Updated South Africa\",\n continent: \"Africa\",\n },\n {\n code: \"kr\",\n value: \"south-korea\",\n label: \"Updated South Korea\",\n continent: \"Asia\",\n },\n {\n code: \"ss\",\n value: \"south-sudan\",\n label: \"Updated South Sudan\",\n continent: \"Africa\",\n },\n { code: \"es\", value: \"spain\", label: \"Updated Spain\", continent: \"Europe\" },\n {\n code: \"lk\",\n value: \"sri-lanka\",\n label: \"Updated Sri Lanka\",\n continent: \"Asia\",\n },\n { code: \"sd\", value: \"sudan\", label: \"Updated Sudan\", continent: \"Africa\" },\n {\n code: \"sr\",\n value: \"suriname\",\n label: \"Updated Suriname\",\n continent: \"South America\",\n },\n { code: \"se\", value: \"sweden\", label: \"Updated Sweden\", continent: \"Europe\" },\n {\n code: \"ch\",\n value: \"switzerland\",\n label: \"Updated Switzerland\",\n continent: \"Europe\",\n },\n { code: \"sy\", value: \"syria\", label: \"Updated Syria\", continent: \"Asia\" },\n { code: \"tw\", value: \"taiwan\", label: \"Updated Taiwan\", continent: \"Asia\" },\n {\n code: \"tj\",\n value: \"tajikistan\",\n label: \"Updated Tajikistan\",\n continent: \"Asia\",\n },\n {\n code: \"tz\",\n value: \"tanzania\",\n label: \"Updated Tanzania\",\n continent: \"Africa\",\n },\n {\n code: \"th\",\n value: \"thailand\",\n label: \"Updated Thailand\",\n continent: \"Asia\",\n },\n {\n code: \"tl\",\n value: \"timor-leste\",\n label: \"Updated Timor-Leste\",\n continent: \"Asia\",\n },\n { code: \"tg\", value: \"togo\", label: \"Updated Togo\", continent: \"Africa\" },\n { code: \"to\", value: \"tonga\", label: \"Updated Tonga\", continent: \"Oceania\" },\n {\n code: \"tt\",\n value: \"trinidad-and-tobago\",\n label: \"Updated Trinidad and Tobago\",\n continent: \"North America\",\n },\n {\n code: \"tn\",\n value: \"tunisia\",\n label: \"Updated Tunisia\",\n continent: \"Africa\",\n },\n { code: \"tr\", value: \"turkey\", label: \"Updated Turkey\", continent: \"Asia\" },\n {\n code: \"tm\",\n value: \"turkmenistan\",\n label: \"Updated Turkmenistan\",\n continent: \"Asia\",\n },\n {\n code: \"tv\",\n value: \"tuvalu\",\n label: \"Updated Tuvalu\",\n continent: \"Oceania\",\n },\n { code: \"ug\", value: \"uganda\", label: \"Updated Uganda\", continent: \"Africa\" },\n {\n code: \"ua\",\n value: \"ukraine\",\n label: \"Updated Ukraine\",\n continent: \"Europe\",\n },\n {\n code: \"ae\",\n value: \"united-arab-emirates\",\n label: \"Updated United Arab Emirates\",\n continent: \"Asia\",\n },\n {\n code: \"gb\",\n value: \"united-kingdom\",\n label: \"Updated United Kingdom\",\n continent: \"Europe\",\n },\n {\n code: \"us\",\n value: \"united-states\",\n label: \"Updated United States\",\n continent: \"North America\",\n },\n {\n code: \"uy\",\n value: \"uruguay\",\n label: \"Updated Uruguay\",\n continent: \"South America\",\n },\n {\n code: \"uz\",\n value: \"uzbekistan\",\n label: \"Updated Uzbekistan\",\n continent: \"Asia\",\n },\n {\n code: \"vu\",\n value: \"vanuatu\",\n label: \"Updated Vanuatu\",\n continent: \"Oceania\",\n },\n {\n code: \"va\",\n value: \"vatican-city\",\n label: \"Updated Vatican City\",\n continent: \"Europe\",\n },\n {\n code: \"ve\",\n value: \"venezuela\",\n label: \"Updated Venezuela\",\n continent: \"South America\",\n },\n { code: \"vn\", value: \"vietnam\", label: \"Updated Vietnam\", continent: \"Asia\" },\n { code: \"ye\", value: \"yemen\", label: \"Updated Yemen\", continent: \"Asia\" },\n { code: \"zm\", value: \"zambia\", label: \"Updated Zambia\", continent: \"Africa\" },\n {\n code: \"zw\",\n value: \"zimbabwe\",\n label: \"Updated Zimbabwe\",\n continent: \"Africa\",\n },\n]\n\nexport default function ComboboxWithInnerInput() {\n return (\n <Combobox items={countries} defaultValue={countries[0]}>\n <ComboboxTrigger\n render={\n <Button\n variant=\"outline\"\n className=\"w-full justify-between font-normal\"\n />\n }\n >\n <ComboboxValue />\n <div className=\"flex\">\n <ChevronsUpDownIcon className=\"-me-1 size-4 opacity-72\" />\n </div>\n </ComboboxTrigger>\n <ComboboxPopup aria-label=\"Updated Select country\">\n <div className=\"border-b p-2\">\n <ComboboxInput\n className=\"rounded-md before:rounded-[calc(var(--radius-md)-1px)]\"\n placeholder=\"Updated e.g. United Kingdom\"\n showTrigger={false}\n />\n </div>\n <ComboboxEmpty>Updated No countries found.</ComboboxEmpty>\n <ComboboxList>\n {(country: Country) => (\n <ComboboxItem key={country.code} value={country}>\n {country.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\n )\n}\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/combobox-with-label.tsx",
12
- "content": "\"use client\"\n\nimport { useId } from \"react\"\n\nimport {\n Combobox,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n} from \"@/registry/default/ui/combobox\"\nimport { Label } from \"@/registry/default/ui/label\"\n\nconst items = [\n { value: \"apple\", label: \"Apple\" },\n { value: \"banana\", label: \"Banana\" },\n { value: \"orange\", label: \"Orange\" },\n { value: \"grape\", label: \"Grape\" },\n { value: \"strawberry\", label: \"Strawberry\" },\n { value: \"mango\", label: \"Mango\" },\n { value: \"pineapple\", label: \"Pineapple\" },\n { value: \"kiwi\", label: \"Kiwi\" },\n { value: \"peach\", label: \"Peach\" },\n { value: \"pear\", label: \"Pear\" },\n]\n\nexport default function ComboboxWithLabel() {\n const id = useId()\n return (\n <Combobox items={items}>\n <div className=\"flex flex-col items-start gap-2\">\n <Label htmlFor={id}>Fruits</Label>\n <ComboboxInput\n id={id}\n placeholder=\"Select an item...\"\n aria-label=\"Select an item\"\n />\n </div>\n <ComboboxPopup>\n <ComboboxEmpty>No results found.</ComboboxEmpty>\n <ComboboxList>\n {(item) => (\n <ComboboxItem key={item.value} value={item}>\n {item.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\n )\n}\n",
12
+ "content": "\"use client\"\n\nimport { useId } from \"react\"\n\nimport {\n Combobox,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxList,\n ComboboxPopup,\n} from \"@/registry/default/ui/combobox\"\nimport { Label } from \"@/registry/default/ui/label\"\n\nconst items = [\n { value: \"apple\", label: \"Updated Apple\" },\n { value: \"banana\", label: \"Updated Banana\" },\n { value: \"orange\", label: \"Updated Orange\" },\n { value: \"grape\", label: \"Updated Grape\" },\n { value: \"strawberry\", label: \"Updated Strawberry\" },\n { value: \"mango\", label: \"Updated Mango\" },\n { value: \"pineapple\", label: \"Updated Pineapple\" },\n { value: \"kiwi\", label: \"Updated Kiwi\" },\n { value: \"peach\", label: \"Updated Peach\" },\n { value: \"pear\", label: \"Updated Pear\" },\n]\n\nexport default function ComboboxWithLabel() {\n const id = useId()\n return (\n <Combobox items={items}>\n <div className=\"flex flex-col items-start gap-2\">\n <Label htmlFor={id}>Updated Fruits</Label>\n <ComboboxInput\n id={id}\n placeholder=\"Updated Select an item...\"\n aria-label=\"Updated Select an item\"\n />\n </div>\n <ComboboxPopup>\n <ComboboxEmpty>Updated No results found.</ComboboxEmpty>\n <ComboboxList>\n {(item) => (\n <ComboboxItem key={item.value} value={item}>\n {item.label}\n </ComboboxItem>\n )}\n </ComboboxList>\n </ComboboxPopup>\n </Combobox>\n )\n}\n",
13
13
  "type": "registry:example"
14
14
  }
15
15
  ],
@@ -0,0 +1,18 @@
1
+ {
2
+ "$schema": "https://ui.shadcn.com/schema/registry-item.json",
3
+ "name": "command",
4
+ "type": "registry:ui",
5
+ "dependencies": [
6
+ "cmdk"
7
+ ],
8
+ "registryDependencies": [
9
+ "https://loveui.dev/building-blocks/r/dialog.json"
10
+ ],
11
+ "files": [
12
+ {
13
+ "path": "registry/default/ui/command.tsx",
14
+ "content": "\"use client\"\n\nimport * as React from \"react\"\nimport { Command as CommandPrimitive } from \"cmdk\"\nimport { SearchIcon } from \"lucide-react\"\n\nimport { cn } from \"@/registry/default/lib/utils\"\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogHeader,\n DialogTitle,\n} from \"@/registry/default/ui/dialog\"\n\nfunction Command({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive>) {\n return (\n <CommandPrimitive\n data-slot=\"command\"\n className={cn(\n \"flex size-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CommandDialog({\n title = \"Command Palette\",\n description = \"Search for a command to run...\",\n children,\n ...props\n}: React.ComponentProps<typeof Dialog> & {\n title?: string\n description?: string\n}) {\n return (\n <Dialog {...props}>\n <DialogHeader className=\"sr-only\">\n <DialogTitle>{title}</DialogTitle>\n <DialogDescription>{description}</DialogDescription>\n </DialogHeader>\n <DialogContent className=\"overflow-hidden p-0 sm:max-w-lg [&>button:last-child]:hidden\">\n <Command className=\"max-h-[100svh] **:data-[slot=command-input-wrapper]:h-12 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]]:px-2 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-3 [&_[cmdk-item]]:py-2\">\n {children}\n </Command>\n </DialogContent>\n </Dialog>\n )\n}\n\nfunction CommandInput({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Input>) {\n return (\n <div\n className=\"flex items-center border-b border-input px-5\"\n cmdk-input-wrapper=\"\"\n >\n <SearchIcon size={20} className=\"me-3 text-muted-foreground/80\" />\n <CommandPrimitive.Input\n data-slot=\"command-input-wrapper\"\n className={cn(\n \"flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden placeholder:text-muted-foreground/70 disabled:cursor-not-allowed disabled:opacity-50\",\n className\n )}\n {...props}\n />\n </div>\n )\n}\n\nfunction CommandList({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.List>) {\n return (\n <CommandPrimitive.List\n data-slot=\"command-list\"\n className={cn(\n \"max-h-80 flex-1 overflow-x-hidden overflow-y-auto\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CommandEmpty({\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Empty>) {\n return (\n <CommandPrimitive.Empty\n data-slot=\"command-empty\"\n className=\"py-6 text-center text-sm\"\n {...props}\n />\n )\n}\n\nfunction CommandGroup({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Group>) {\n return (\n <CommandPrimitive.Group\n data-slot=\"command-group\"\n className={cn(\n \"overflow-hidden p-2 text-foreground [&_[cmdk-group-heading]]:px-3 [&_[cmdk-group-heading]]:py-2 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CommandSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Separator>) {\n return (\n <CommandPrimitive.Separator\n data-slot=\"command-separator\"\n className={cn(\"-mx-1 h-px bg-border\", className)}\n {...props}\n />\n )\n}\n\nfunction CommandItem({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Item>) {\n return (\n <CommandPrimitive.Item\n data-slot=\"command-item\"\n className={cn(\n \"relative flex cursor-default items-center gap-3 rounded-md px-2 py-1.5 text-sm outline-hidden select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CommandShortcut({\n className,\n ...props\n}: React.ComponentProps<\"span\">) {\n return (\n <kbd\n data-slot=\"command-shortcut\"\n className={cn(\n \"ms-auto -me-1 inline-flex h-5 max-h-full items-center rounded border bg-background px-1 font-[inherit] text-[0.625rem] font-medium text-muted-foreground/70\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport {\n Command,\n CommandDialog,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n CommandSeparator,\n CommandShortcut,\n}\n",
15
+ "type": "registry:ui"
16
+ }
17
+ ]
18
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "$schema": "https://ui.shadcn.com/schema/registry-item.json",
3
+ "name": "comp-01",
4
+ "type": "registry:component",
5
+ "registryDependencies": [
6
+ "https://loveui.dev/building-blocks/r/input.json",
7
+ "https://loveui.dev/building-blocks/r/label.json"
8
+ ],
9
+ "files": [
10
+ {
11
+ "path": "registry/default/components/comp-01.tsx",
12
+ "content": "import { useId } from \"react\"\n\nimport { Input } from \"@/registry/building-blocks/default/ui/input\"\nimport { Label } from \"@/registry/building-blocks/default/ui/label\"\n\nexport default function Component() {\n const id = useId()\n return (\n <div className=\"*:not-first:mt-2\">\n <Label htmlFor={id}>Simple input</Label>\n <Input id={id} placeholder=\"Email\" type=\"email\" />\n </div>\n )\n}\n",
13
+ "type": "registry:component"
14
+ }
15
+ ],
16
+ "meta": {
17
+ "tags": [
18
+ "input",
19
+ "label"
20
+ ]
21
+ }
22
+ }
@@ -0,0 +1,23 @@
1
+ {
2
+ "$schema": "https://ui.shadcn.com/schema/registry-item.json",
3
+ "name": "comp-02",
4
+ "type": "registry:component",
5
+ "registryDependencies": [
6
+ "https://loveui.dev/building-blocks/r/input.json",
7
+ "https://loveui.dev/building-blocks/r/label.json"
8
+ ],
9
+ "files": [
10
+ {
11
+ "path": "registry/default/components/comp-02.tsx",
12
+ "content": "import { useId } from \"react\"\n\nimport { Input } from \"@/registry/building-blocks/default/ui/input\"\nimport { Label } from \"@/registry/building-blocks/default/ui/label\"\n\nexport default function Component() {\n const id = useId()\n return (\n <div className=\"*:not-first:mt-2\">\n <Label htmlFor={id}>\n Required input <span className=\"text-destructive\">*</span>\n </Label>\n <Input id={id} placeholder=\"Email\" type=\"email\" required />\n </div>\n )\n}\n",
13
+ "type": "registry:component"
14
+ }
15
+ ],
16
+ "meta": {
17
+ "tags": [
18
+ "input",
19
+ "label",
20
+ "required"
21
+ ]
22
+ }
23
+ }
@@ -0,0 +1,23 @@
1
+ {
2
+ "$schema": "https://ui.shadcn.com/schema/registry-item.json",
3
+ "name": "comp-03",
4
+ "type": "registry:component",
5
+ "registryDependencies": [
6
+ "https://loveui.dev/building-blocks/r/input.json",
7
+ "https://loveui.dev/building-blocks/r/label.json"
8
+ ],
9
+ "files": [
10
+ {
11
+ "path": "registry/default/components/comp-03.tsx",
12
+ "content": "import { useId } from \"react\"\n\nimport { Input } from \"@/registry/building-blocks/default/ui/input\"\nimport { Label } from \"@/registry/building-blocks/default/ui/label\"\n\nexport default function Component() {\n const id = useId()\n return (\n <div className=\"*:not-first:mt-2\">\n <Label htmlFor={id}>Input with helper text</Label>\n <Input id={id} placeholder=\"Email\" type=\"email\" />\n <p\n className=\"mt-2 text-xs text-muted-foreground\"\n role=\"region\"\n aria-live=\"polite\"\n >\n We won&lsquo;t share your email with anyone\n </p>\n </div>\n )\n}\n",
13
+ "type": "registry:component"
14
+ }
15
+ ],
16
+ "meta": {
17
+ "tags": [
18
+ "input",
19
+ "label",
20
+ "helper"
21
+ ]
22
+ }
23
+ }
@@ -0,0 +1,23 @@
1
+ {
2
+ "$schema": "https://ui.shadcn.com/schema/registry-item.json",
3
+ "name": "comp-04",
4
+ "type": "registry:component",
5
+ "registryDependencies": [
6
+ "https://loveui.dev/building-blocks/r/input.json",
7
+ "https://loveui.dev/building-blocks/r/label.json"
8
+ ],
9
+ "files": [
10
+ {
11
+ "path": "registry/default/components/comp-04.tsx",
12
+ "content": "import { useId } from \"react\"\n\nimport { Input } from \"@/registry/building-blocks/default/ui/input\"\nimport { Label } from \"@/registry/building-blocks/default/ui/label\"\n\nexport default function Component() {\n const id = useId()\n return (\n <div className=\"*:not-first:mt-2\">\n <div className=\"flex items-center justify-between gap-2\">\n <Label htmlFor={id} className=\"leading-6\">\n Input with hint\n </Label>\n <span className=\"text-sm text-muted-foreground\">Optional</span>\n </div>\n <Input id={id} placeholder=\"Email\" type=\"email\" />\n </div>\n )\n}\n",
13
+ "type": "registry:component"
14
+ }
15
+ ],
16
+ "meta": {
17
+ "tags": [
18
+ "input",
19
+ "label",
20
+ "hint"
21
+ ]
22
+ }
23
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "$schema": "https://ui.shadcn.com/schema/registry-item.json",
3
+ "name": "comp-05",
4
+ "type": "registry:component",
5
+ "registryDependencies": [
6
+ "https://loveui.dev/building-blocks/r/input.json",
7
+ "https://loveui.dev/building-blocks/r/label.json"
8
+ ],
9
+ "files": [
10
+ {
11
+ "path": "registry/default/components/comp-05.tsx",
12
+ "content": "import { useId } from \"react\"\n\nimport { Input } from \"@/registry/building-blocks/default/ui/input\"\nimport { Label } from \"@/registry/building-blocks/default/ui/label\"\n\nexport default function Component() {\n const id = useId()\n return (\n <>\n <div className=\"[--ring:var(--color-indigo-300)] *:not-first:mt-2 in-[.dark]:[--ring:var(--color-indigo-900)]\">\n <Label htmlFor={id}>Input with colored border and ring</Label>\n <Input id={id} placeholder=\"Email\" type=\"email\" />\n </div>\n </>\n )\n}\n",
13
+ "type": "registry:component"
14
+ }
15
+ ],
16
+ "meta": {
17
+ "tags": [
18
+ "input",
19
+ "label"
20
+ ]
21
+ }
22
+ }
@@ -0,0 +1,23 @@
1
+ {
2
+ "$schema": "https://ui.shadcn.com/schema/registry-item.json",
3
+ "name": "comp-06",
4
+ "type": "registry:component",
5
+ "registryDependencies": [
6
+ "https://loveui.dev/building-blocks/r/input.json",
7
+ "https://loveui.dev/building-blocks/r/label.json"
8
+ ],
9
+ "files": [
10
+ {
11
+ "path": "registry/default/components/comp-06.tsx",
12
+ "content": "import { useId } from \"react\"\n\nimport { Input } from \"@/registry/building-blocks/default/ui/input\"\nimport { Label } from \"@/registry/building-blocks/default/ui/label\"\n\nexport default function Component() {\n const id = useId()\n return (\n <div className=\"*:not-first:mt-2\">\n <Label htmlFor={id}>Input with error</Label>\n <Input\n id={id}\n className=\"peer\"\n placeholder=\"Email\"\n type=\"email\"\n defaultValue=\"invalid@email.com\"\n aria-invalid\n />\n <p\n className=\"mt-2 text-xs peer-aria-invalid:text-destructive\"\n role=\"alert\"\n aria-live=\"polite\"\n >\n Email is invalid\n </p>\n </div>\n )\n}\n",
13
+ "type": "registry:component"
14
+ }
15
+ ],
16
+ "meta": {
17
+ "tags": [
18
+ "input",
19
+ "label",
20
+ "error"
21
+ ]
22
+ }
23
+ }