shadcn_view_component 0.3.3

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 (507) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +255 -0
  3. data/MIT-LICENSE +20 -0
  4. data/README.md +604 -0
  5. data/app/assets/stylesheets/shadcn-themes.css +1075 -0
  6. data/app/assets/stylesheets/shadcn.css +853 -0
  7. data/app/components/shadcn/accordion/component.rb +44 -0
  8. data/app/components/shadcn/accordion/content/component.rb +44 -0
  9. data/app/components/shadcn/accordion/item/component.rb +41 -0
  10. data/app/components/shadcn/accordion/preview.rb +16 -0
  11. data/app/components/shadcn/accordion/previews/default.html.erb +10 -0
  12. data/app/components/shadcn/accordion/previews/multiple.html.erb +13 -0
  13. data/app/components/shadcn/accordion/trigger/component.rb +52 -0
  14. data/app/components/shadcn/alert/component.rb +52 -0
  15. data/app/components/shadcn/alert/preview.rb +11 -0
  16. data/app/components/shadcn/alert/previews/default.html.erb +8 -0
  17. data/app/components/shadcn/alert.rb +17 -0
  18. data/app/components/shadcn/alert_dialog/action/component.rb +35 -0
  19. data/app/components/shadcn/alert_dialog/cancel/component.rb +16 -0
  20. data/app/components/shadcn/alert_dialog/component.rb +20 -0
  21. data/app/components/shadcn/alert_dialog/content/component.rb +55 -0
  22. data/app/components/shadcn/alert_dialog/header/component.rb +33 -0
  23. data/app/components/shadcn/alert_dialog/preview.rb +16 -0
  24. data/app/components/shadcn/alert_dialog/previews/default.html.erb +13 -0
  25. data/app/components/shadcn/alert_dialog/previews/small_with_media.html.erb +38 -0
  26. data/app/components/shadcn/alert_dialog.rb +32 -0
  27. data/app/components/shadcn/application_view_component.rb +225 -0
  28. data/app/components/shadcn/application_view_component_preview.rb +8 -0
  29. data/app/components/shadcn/aspect_ratio/component.rb +34 -0
  30. data/app/components/shadcn/aspect_ratio/preview.rb +16 -0
  31. data/app/components/shadcn/aspect_ratio/previews/default.html.erb +5 -0
  32. data/app/components/shadcn/aspect_ratio/previews/ratios.html.erb +12 -0
  33. data/app/components/shadcn/attachment/action/component.rb +19 -0
  34. data/app/components/shadcn/attachment/component.rb +76 -0
  35. data/app/components/shadcn/attachment/media/component.rb +56 -0
  36. data/app/components/shadcn/attachment/preview.rb +11 -0
  37. data/app/components/shadcn/attachment/previews/default.html.erb +80 -0
  38. data/app/components/shadcn/attachment/trigger/component.rb +31 -0
  39. data/app/components/shadcn/attachment.rb +42 -0
  40. data/app/components/shadcn/avatar/component.rb +43 -0
  41. data/app/components/shadcn/avatar/fallback/component.rb +23 -0
  42. data/app/components/shadcn/avatar/image/component.rb +20 -0
  43. data/app/components/shadcn/avatar/preview.rb +11 -0
  44. data/app/components/shadcn/avatar/previews/default.html.erb +13 -0
  45. data/app/components/shadcn/avatar.rb +32 -0
  46. data/app/components/shadcn/badge/component.rb +57 -0
  47. data/app/components/shadcn/badge/preview.rb +11 -0
  48. data/app/components/shadcn/badge/previews/default.html.erb +5 -0
  49. data/app/components/shadcn/breadcrumb/component.rb +15 -0
  50. data/app/components/shadcn/breadcrumb/ellipsis/component.rb +28 -0
  51. data/app/components/shadcn/breadcrumb/page/component.rb +25 -0
  52. data/app/components/shadcn/breadcrumb/preview.rb +16 -0
  53. data/app/components/shadcn/breadcrumb/previews/custom_separator.html.erb +17 -0
  54. data/app/components/shadcn/breadcrumb/previews/default.html.erb +15 -0
  55. data/app/components/shadcn/breadcrumb/separator/component.rb +31 -0
  56. data/app/components/shadcn/breadcrumb.rb +18 -0
  57. data/app/components/shadcn/bubble/component.rb +90 -0
  58. data/app/components/shadcn/bubble/preview.rb +16 -0
  59. data/app/components/shadcn/bubble/previews/alignment.html.erb +33 -0
  60. data/app/components/shadcn/bubble/previews/default.html.erb +22 -0
  61. data/app/components/shadcn/bubble/reactions/component.rb +54 -0
  62. data/app/components/shadcn/bubble.rb +24 -0
  63. data/app/components/shadcn/button/component.rb +85 -0
  64. data/app/components/shadcn/button/preview.rb +31 -0
  65. data/app/components/shadcn/button/previews/default.html.erb +8 -0
  66. data/app/components/shadcn/button/previews/sizes.html.erb +5 -0
  67. data/app/components/shadcn/button/previews/variants.html.erb +5 -0
  68. data/app/components/shadcn/button_group/component.rb +53 -0
  69. data/app/components/shadcn/button_group/preview.rb +15 -0
  70. data/app/components/shadcn/button_group/previews/default.html.erb +18 -0
  71. data/app/components/shadcn/button_group/previews/vertical.html.erb +5 -0
  72. data/app/components/shadcn/button_group/separator/component.rb +30 -0
  73. data/app/components/shadcn/button_group/text/component.rb +20 -0
  74. data/app/components/shadcn/calendar/component.rb +558 -0
  75. data/app/components/shadcn/calendar/month.rb +74 -0
  76. data/app/components/shadcn/calendar/preview.rb +64 -0
  77. data/app/components/shadcn/calendar/previews/booked.html.erb +18 -0
  78. data/app/components/shadcn/calendar/previews/custom_cell_size.html.erb +11 -0
  79. data/app/components/shadcn/calendar/previews/date_and_time.html.erb +31 -0
  80. data/app/components/shadcn/calendar/previews/default.html.erb +8 -0
  81. data/app/components/shadcn/calendar/previews/dropdown_caption.html.erb +11 -0
  82. data/app/components/shadcn/calendar/previews/in_a_form.html.erb +8 -0
  83. data/app/components/shadcn/calendar/previews/presets.html.erb +20 -0
  84. data/app/components/shadcn/calendar/previews/range.html.erb +10 -0
  85. data/app/components/shadcn/calendar/previews/week_numbers.html.erb +8 -0
  86. data/app/components/shadcn/card/component.rb +24 -0
  87. data/app/components/shadcn/card/header/component.rb +26 -0
  88. data/app/components/shadcn/card/preview.rb +16 -0
  89. data/app/components/shadcn/card/previews/default.html.erb +18 -0
  90. data/app/components/shadcn/card/previews/image.html.erb +37 -0
  91. data/app/components/shadcn/card.rb +21 -0
  92. data/app/components/shadcn/carousel/component.rb +61 -0
  93. data/app/components/shadcn/carousel/content/component.rb +86 -0
  94. data/app/components/shadcn/carousel/item/component.rb +42 -0
  95. data/app/components/shadcn/carousel/next/component.rb +59 -0
  96. data/app/components/shadcn/carousel/preview.rb +22 -0
  97. data/app/components/shadcn/carousel/previews/default.html.erb +22 -0
  98. data/app/components/shadcn/carousel/previews/sizes.html.erb +42 -0
  99. data/app/components/shadcn/carousel/previews/vertical.html.erb +27 -0
  100. data/app/components/shadcn/carousel/previous/component.rb +59 -0
  101. data/app/components/shadcn/chart/area/component.rb +43 -0
  102. data/app/components/shadcn/chart/bar/component.rb +75 -0
  103. data/app/components/shadcn/chart/cartesian/component.rb +152 -0
  104. data/app/components/shadcn/chart/component.rb +124 -0
  105. data/app/components/shadcn/chart/focusable.rb +38 -0
  106. data/app/components/shadcn/chart/legend/component.rb +55 -0
  107. data/app/components/shadcn/chart/line/component.rb +50 -0
  108. data/app/components/shadcn/chart/pie/component.rb +169 -0
  109. data/app/components/shadcn/chart/plot.rb +147 -0
  110. data/app/components/shadcn/chart/preview.rb +45 -0
  111. data/app/components/shadcn/chart/previews/area.html.erb +31 -0
  112. data/app/components/shadcn/chart/previews/bar.html.erb +32 -0
  113. data/app/components/shadcn/chart/previews/bar_stacked.html.erb +30 -0
  114. data/app/components/shadcn/chart/previews/default.html.erb +30 -0
  115. data/app/components/shadcn/chart/previews/donut.html.erb +16 -0
  116. data/app/components/shadcn/chart/previews/line.html.erb +30 -0
  117. data/app/components/shadcn/chart/previews/percentages.html.erb +17 -0
  118. data/app/components/shadcn/chart/table/component.rb +75 -0
  119. data/app/components/shadcn/chart/tooltip/component.rb +111 -0
  120. data/app/components/shadcn/checkbox/component.rb +109 -0
  121. data/app/components/shadcn/checkbox/preview.rb +16 -0
  122. data/app/components/shadcn/checkbox/previews/default.html.erb +14 -0
  123. data/app/components/shadcn/checkbox/previews/states.html.erb +23 -0
  124. data/app/components/shadcn/collapsible/component.rb +35 -0
  125. data/app/components/shadcn/collapsible/content/component.rb +20 -0
  126. data/app/components/shadcn/collapsible/preview.rb +11 -0
  127. data/app/components/shadcn/collapsible/previews/default.html.erb +9 -0
  128. data/app/components/shadcn/collapsible/trigger/component.rb +23 -0
  129. data/app/components/shadcn/combobox/chip/component.rb +60 -0
  130. data/app/components/shadcn/combobox/chip_input/component.rb +43 -0
  131. data/app/components/shadcn/combobox/chips/component.rb +54 -0
  132. data/app/components/shadcn/combobox/clear/component.rb +32 -0
  133. data/app/components/shadcn/combobox/component.rb +113 -0
  134. data/app/components/shadcn/combobox/content/component.rb +59 -0
  135. data/app/components/shadcn/combobox/empty/component.rb +23 -0
  136. data/app/components/shadcn/combobox/input/component.rb +85 -0
  137. data/app/components/shadcn/combobox/item/component.rb +69 -0
  138. data/app/components/shadcn/combobox/list/component.rb +27 -0
  139. data/app/components/shadcn/combobox/preview.rb +31 -0
  140. data/app/components/shadcn/combobox/previews/default.html.erb +20 -0
  141. data/app/components/shadcn/combobox/previews/grouped.html.erb +25 -0
  142. data/app/components/shadcn/combobox/previews/multiple.html.erb +28 -0
  143. data/app/components/shadcn/combobox/previews/with_clear.html.erb +16 -0
  144. data/app/components/shadcn/combobox/trigger/component.rb +54 -0
  145. data/app/components/shadcn/combobox.rb +16 -0
  146. data/app/components/shadcn/command/component.rb +67 -0
  147. data/app/components/shadcn/command/dialog/component.rb +72 -0
  148. data/app/components/shadcn/command/empty/component.rb +29 -0
  149. data/app/components/shadcn/command/group/component.rb +63 -0
  150. data/app/components/shadcn/command/input/component.rb +66 -0
  151. data/app/components/shadcn/command/item/component.rb +62 -0
  152. data/app/components/shadcn/command/list/component.rb +36 -0
  153. data/app/components/shadcn/command/preview.rb +26 -0
  154. data/app/components/shadcn/command/previews/default.html.erb +41 -0
  155. data/app/components/shadcn/command/previews/dialog.html.erb +33 -0
  156. data/app/components/shadcn/command/previews/ranking.html.erb +16 -0
  157. data/app/components/shadcn/command/separator/component.rb +33 -0
  158. data/app/components/shadcn/command.rb +14 -0
  159. data/app/components/shadcn/concerns/modal_root.rb +43 -0
  160. data/app/components/shadcn/concerns/submits_value.rb +81 -0
  161. data/app/components/shadcn/context_menu/component.rb +45 -0
  162. data/app/components/shadcn/context_menu/content/component.rb +40 -0
  163. data/app/components/shadcn/context_menu/preview.rb +16 -0
  164. data/app/components/shadcn/context_menu/previews/default.html.erb +34 -0
  165. data/app/components/shadcn/context_menu/previews/items.html.erb +35 -0
  166. data/app/components/shadcn/context_menu/sub/component.rb +47 -0
  167. data/app/components/shadcn/context_menu/sub_content/component.rb +31 -0
  168. data/app/components/shadcn/context_menu/trigger/component.rb +50 -0
  169. data/app/components/shadcn/context_menu.rb +43 -0
  170. data/app/components/shadcn/dialog/close/component.rb +20 -0
  171. data/app/components/shadcn/dialog/component.rb +20 -0
  172. data/app/components/shadcn/dialog/content/component.rb +78 -0
  173. data/app/components/shadcn/dialog/header/component.rb +23 -0
  174. data/app/components/shadcn/dialog/overlay/component.rb +28 -0
  175. data/app/components/shadcn/dialog/preview.rb +28 -0
  176. data/app/components/shadcn/dialog/previews/default.html.erb +17 -0
  177. data/app/components/shadcn/dialog/previews/inside_stacking_context.html.erb +25 -0
  178. data/app/components/shadcn/dialog/previews/no_close_button.html.erb +15 -0
  179. data/app/components/shadcn/dialog/previews/scrollable_content.html.erb +29 -0
  180. data/app/components/shadcn/dialog/trigger/component.rb +24 -0
  181. data/app/components/shadcn/dialog.rb +17 -0
  182. data/app/components/shadcn/drawer/component.rb +33 -0
  183. data/app/components/shadcn/drawer/content/component.rb +95 -0
  184. data/app/components/shadcn/drawer/header/component.rb +34 -0
  185. data/app/components/shadcn/drawer/preview.rb +29 -0
  186. data/app/components/shadcn/drawer/previews/default.html.erb +21 -0
  187. data/app/components/shadcn/drawer/previews/scrollable.html.erb +20 -0
  188. data/app/components/shadcn/drawer/previews/scrollable_side.html.erb +21 -0
  189. data/app/components/shadcn/drawer/previews/sides.html.erb +17 -0
  190. data/app/components/shadcn/drawer.rb +27 -0
  191. data/app/components/shadcn/dropdown_menu/checkbox_item/component.rb +61 -0
  192. data/app/components/shadcn/dropdown_menu/component.rb +48 -0
  193. data/app/components/shadcn/dropdown_menu/content/component.rb +49 -0
  194. data/app/components/shadcn/dropdown_menu/group/component.rb +16 -0
  195. data/app/components/shadcn/dropdown_menu/item/component.rb +50 -0
  196. data/app/components/shadcn/dropdown_menu/preview.rb +16 -0
  197. data/app/components/shadcn/dropdown_menu/previews/checkboxes_and_radio.html.erb +34 -0
  198. data/app/components/shadcn/dropdown_menu/previews/default.html.erb +23 -0
  199. data/app/components/shadcn/dropdown_menu/radio_group/component.rb +16 -0
  200. data/app/components/shadcn/dropdown_menu/radio_item/component.rb +63 -0
  201. data/app/components/shadcn/dropdown_menu/sub/component.rb +44 -0
  202. data/app/components/shadcn/dropdown_menu/sub_content/component.rb +45 -0
  203. data/app/components/shadcn/dropdown_menu/sub_trigger/component.rb +58 -0
  204. data/app/components/shadcn/dropdown_menu/trigger/component.rb +25 -0
  205. data/app/components/shadcn/dropdown_menu.rb +18 -0
  206. data/app/components/shadcn/empty/component.rb +17 -0
  207. data/app/components/shadcn/empty/media/component.rb +48 -0
  208. data/app/components/shadcn/empty/preview.rb +16 -0
  209. data/app/components/shadcn/empty/previews/default.html.erb +15 -0
  210. data/app/components/shadcn/empty/previews/media.html.erb +32 -0
  211. data/app/components/shadcn/empty.rb +26 -0
  212. data/app/components/shadcn/field/component.rb +61 -0
  213. data/app/components/shadcn/field/error/component.rb +49 -0
  214. data/app/components/shadcn/field/legend/component.rb +30 -0
  215. data/app/components/shadcn/field/preview.rb +17 -0
  216. data/app/components/shadcn/field/previews/default.html.erb +29 -0
  217. data/app/components/shadcn/field/previews/form_builder.html.erb +38 -0
  218. data/app/components/shadcn/field/separator/component.rb +35 -0
  219. data/app/components/shadcn/field.rb +44 -0
  220. data/app/components/shadcn/hover_card/component.rb +51 -0
  221. data/app/components/shadcn/hover_card/content/component.rb +45 -0
  222. data/app/components/shadcn/hover_card/preview.rb +16 -0
  223. data/app/components/shadcn/hover_card/previews/default.html.erb +36 -0
  224. data/app/components/shadcn/hover_card/previews/sides.html.erb +15 -0
  225. data/app/components/shadcn/hover_card/trigger/component.rb +33 -0
  226. data/app/components/shadcn/icon/component.rb +76 -0
  227. data/app/components/shadcn/icon.rb +43 -0
  228. data/app/components/shadcn/input/component.rb +26 -0
  229. data/app/components/shadcn/input/preview.rb +16 -0
  230. data/app/components/shadcn/input/previews/default.html.erb +5 -0
  231. data/app/components/shadcn/input/previews/states.html.erb +20 -0
  232. data/app/components/shadcn/input_group/addon/component.rb +65 -0
  233. data/app/components/shadcn/input_group/button/component.rb +40 -0
  234. data/app/components/shadcn/input_group/component.rb +43 -0
  235. data/app/components/shadcn/input_group/input/component.rb +25 -0
  236. data/app/components/shadcn/input_group/preview.rb +17 -0
  237. data/app/components/shadcn/input_group/previews/addons.html.erb +53 -0
  238. data/app/components/shadcn/input_group/previews/default.html.erb +25 -0
  239. data/app/components/shadcn/input_group/text/component.rb +20 -0
  240. data/app/components/shadcn/input_group/textarea/component.rb +21 -0
  241. data/app/components/shadcn/input_otp/component.rb +95 -0
  242. data/app/components/shadcn/input_otp/preview.rb +17 -0
  243. data/app/components/shadcn/input_otp/previews/default.html.erb +19 -0
  244. data/app/components/shadcn/input_otp/previews/variations.html.erb +33 -0
  245. data/app/components/shadcn/input_otp/separator/component.rb +21 -0
  246. data/app/components/shadcn/input_otp/slot/component.rb +60 -0
  247. data/app/components/shadcn/input_otp.rb +11 -0
  248. data/app/components/shadcn/item/component.rb +56 -0
  249. data/app/components/shadcn/item/group/component.rb +53 -0
  250. data/app/components/shadcn/item/media/component.rb +53 -0
  251. data/app/components/shadcn/item/preview.rb +20 -0
  252. data/app/components/shadcn/item/previews/default.html.erb +32 -0
  253. data/app/components/shadcn/item/previews/link.html.erb +39 -0
  254. data/app/components/shadcn/item/previews/outline.html.erb +8 -0
  255. data/app/components/shadcn/item/separator/component.rb +24 -0
  256. data/app/components/shadcn/item.rb +34 -0
  257. data/app/components/shadcn/kbd/component.rb +23 -0
  258. data/app/components/shadcn/kbd/group/component.rb +17 -0
  259. data/app/components/shadcn/kbd/preview.rb +11 -0
  260. data/app/components/shadcn/kbd/previews/default.html.erb +4 -0
  261. data/app/components/shadcn/label/component.rb +20 -0
  262. data/app/components/shadcn/label/preview.rb +11 -0
  263. data/app/components/shadcn/label/previews/default.html.erb +4 -0
  264. data/app/components/shadcn/marker/component.rb +46 -0
  265. data/app/components/shadcn/marker/icon/component.rb +23 -0
  266. data/app/components/shadcn/marker/preview.rb +17 -0
  267. data/app/components/shadcn/marker/previews/default.html.erb +18 -0
  268. data/app/components/shadcn/marker/previews/status.html.erb +32 -0
  269. data/app/components/shadcn/marker.rb +17 -0
  270. data/app/components/shadcn/menubar/component.rb +36 -0
  271. data/app/components/shadcn/menubar/content/component.rb +49 -0
  272. data/app/components/shadcn/menubar/menu/component.rb +39 -0
  273. data/app/components/shadcn/menubar/preview.rb +16 -0
  274. data/app/components/shadcn/menubar/previews/default.html.erb +52 -0
  275. data/app/components/shadcn/menubar/previews/items.html.erb +38 -0
  276. data/app/components/shadcn/menubar/sub/component.rb +43 -0
  277. data/app/components/shadcn/menubar/sub_content/component.rb +31 -0
  278. data/app/components/shadcn/menubar/sub_trigger/component.rb +31 -0
  279. data/app/components/shadcn/menubar/trigger/component.rb +41 -0
  280. data/app/components/shadcn/menubar.rb +47 -0
  281. data/app/components/shadcn/message/component.rb +33 -0
  282. data/app/components/shadcn/message/preview.rb +16 -0
  283. data/app/components/shadcn/message/previews/actions.html.erb +51 -0
  284. data/app/components/shadcn/message/previews/default.html.erb +35 -0
  285. data/app/components/shadcn/message.rb +35 -0
  286. data/app/components/shadcn/message_scroller/button/component.rb +78 -0
  287. data/app/components/shadcn/message_scroller/component.rb +59 -0
  288. data/app/components/shadcn/message_scroller/content/component.rb +50 -0
  289. data/app/components/shadcn/message_scroller/item/component.rb +45 -0
  290. data/app/components/shadcn/message_scroller/preview.rb +11 -0
  291. data/app/components/shadcn/message_scroller/previews/default.html.erb +72 -0
  292. data/app/components/shadcn/message_scroller/viewport/component.rb +41 -0
  293. data/app/components/shadcn/mode_switcher/component.rb +67 -0
  294. data/app/components/shadcn/mode_switcher/preview.rb +11 -0
  295. data/app/components/shadcn/mode_switcher/previews/default.html.erb +5 -0
  296. data/app/components/shadcn/mode_toggle/component.rb +75 -0
  297. data/app/components/shadcn/mode_toggle/preview.rb +11 -0
  298. data/app/components/shadcn/mode_toggle/previews/default.html.erb +20 -0
  299. data/app/components/shadcn/native_select/component.rb +59 -0
  300. data/app/components/shadcn/native_select/preview.rb +16 -0
  301. data/app/components/shadcn/native_select/previews/default.html.erb +9 -0
  302. data/app/components/shadcn/native_select/previews/groups.html.erb +26 -0
  303. data/app/components/shadcn/native_select.rb +16 -0
  304. data/app/components/shadcn/navigation_menu/component.rb +51 -0
  305. data/app/components/shadcn/navigation_menu/content/component.rb +58 -0
  306. data/app/components/shadcn/navigation_menu/preview.rb +11 -0
  307. data/app/components/shadcn/navigation_menu/previews/default.html.erb +49 -0
  308. data/app/components/shadcn/navigation_menu/trigger/component.rb +59 -0
  309. data/app/components/shadcn/navigation_menu.rb +28 -0
  310. data/app/components/shadcn/pagination/component.rb +19 -0
  311. data/app/components/shadcn/pagination/ellipsis/component.rb +28 -0
  312. data/app/components/shadcn/pagination/link/component.rb +37 -0
  313. data/app/components/shadcn/pagination/next/component.rb +31 -0
  314. data/app/components/shadcn/pagination/preview.rb +16 -0
  315. data/app/components/shadcn/pagination/previews/default.html.erb +18 -0
  316. data/app/components/shadcn/pagination/previews/simple.html.erb +39 -0
  317. data/app/components/shadcn/pagination/previous/component.rb +31 -0
  318. data/app/components/shadcn/pagination.rb +14 -0
  319. data/app/components/shadcn/parts.rb +38 -0
  320. data/app/components/shadcn/popover/anchor/component.rb +17 -0
  321. data/app/components/shadcn/popover/component.rb +42 -0
  322. data/app/components/shadcn/popover/content/component.rb +40 -0
  323. data/app/components/shadcn/popover/preview.rb +28 -0
  324. data/app/components/shadcn/popover/previews/align.html.erb +13 -0
  325. data/app/components/shadcn/popover/previews/default.html.erb +9 -0
  326. data/app/components/shadcn/popover/previews/inside_containing_block.html.erb +41 -0
  327. data/app/components/shadcn/popover/previews/inside_stacking_context.html.erb +30 -0
  328. data/app/components/shadcn/popover/trigger/component.rb +24 -0
  329. data/app/components/shadcn/popover.rb +16 -0
  330. data/app/components/shadcn/progress/component.rb +62 -0
  331. data/app/components/shadcn/progress/preview.rb +11 -0
  332. data/app/components/shadcn/progress/previews/default.html.erb +5 -0
  333. data/app/components/shadcn/radio_group/component.rb +51 -0
  334. data/app/components/shadcn/radio_group/item/component.rb +74 -0
  335. data/app/components/shadcn/radio_group/preview.rb +16 -0
  336. data/app/components/shadcn/radio_group/previews/default.html.erb +15 -0
  337. data/app/components/shadcn/radio_group/previews/states.html.erb +41 -0
  338. data/app/components/shadcn/resizable/component.rb +59 -0
  339. data/app/components/shadcn/resizable/handle/component.rb +70 -0
  340. data/app/components/shadcn/resizable/panel/component.rb +53 -0
  341. data/app/components/shadcn/resizable/preview.rb +23 -0
  342. data/app/components/shadcn/resizable/previews/default.html.erb +25 -0
  343. data/app/components/shadcn/resizable/previews/vertical.html.erb +19 -0
  344. data/app/components/shadcn/resizable/previews/with_handle.html.erb +17 -0
  345. data/app/components/shadcn/scroll_area/component.rb +84 -0
  346. data/app/components/shadcn/scroll_area/preview.rb +11 -0
  347. data/app/components/shadcn/scroll_area/previews/default.html.erb +36 -0
  348. data/app/components/shadcn/scroll_area/scrollbar/component.rb +72 -0
  349. data/app/components/shadcn/scroll_area/viewport/component.rb +70 -0
  350. data/app/components/shadcn/scroll_area.rb +14 -0
  351. data/app/components/shadcn/select/component.rb +67 -0
  352. data/app/components/shadcn/select/content/component.rb +157 -0
  353. data/app/components/shadcn/select/empty/component.rb +38 -0
  354. data/app/components/shadcn/select/group/component.rb +16 -0
  355. data/app/components/shadcn/select/item/component.rb +71 -0
  356. data/app/components/shadcn/select/list/component.rb +41 -0
  357. data/app/components/shadcn/select/preview.rb +24 -0
  358. data/app/components/shadcn/select/previews/default.html.erb +17 -0
  359. data/app/components/shadcn/select/previews/scrollable.html.erb +19 -0
  360. data/app/components/shadcn/select/previews/searchable.html.erb +18 -0
  361. data/app/components/shadcn/select/previews/states.html.erb +25 -0
  362. data/app/components/shadcn/select/search/component.rb +54 -0
  363. data/app/components/shadcn/select/trigger/component.rb +78 -0
  364. data/app/components/shadcn/select/value/component.rb +28 -0
  365. data/app/components/shadcn/select.rb +15 -0
  366. data/app/components/shadcn/separator/component.rb +41 -0
  367. data/app/components/shadcn/separator/preview.rb +11 -0
  368. data/app/components/shadcn/separator/previews/default.html.erb +9 -0
  369. data/app/components/shadcn/sheet/component.rb +16 -0
  370. data/app/components/shadcn/sheet/content/component.rb +98 -0
  371. data/app/components/shadcn/sheet/header/component.rb +23 -0
  372. data/app/components/shadcn/sheet/preview.rb +16 -0
  373. data/app/components/shadcn/sheet/previews/default.html.erb +16 -0
  374. data/app/components/shadcn/sheet/previews/no_close_button.html.erb +14 -0
  375. data/app/components/shadcn/sheet.rb +22 -0
  376. data/app/components/shadcn/sidebar/component.rb +232 -0
  377. data/app/components/shadcn/sidebar/input/component.rb +25 -0
  378. data/app/components/shadcn/sidebar/menu_action/component.rb +58 -0
  379. data/app/components/shadcn/sidebar/menu_button/component.rb +100 -0
  380. data/app/components/shadcn/sidebar/menu_skeleton/component.rb +51 -0
  381. data/app/components/shadcn/sidebar/menu_sub_button/component.rb +60 -0
  382. data/app/components/shadcn/sidebar/preview.rb +22 -0
  383. data/app/components/shadcn/sidebar/previews/default.html.erb +189 -0
  384. data/app/components/shadcn/sidebar/previews/floating.html.erb +39 -0
  385. data/app/components/shadcn/sidebar/previews/inset.html.erb +48 -0
  386. data/app/components/shadcn/sidebar/provider/component.rb +53 -0
  387. data/app/components/shadcn/sidebar/rail/component.rb +43 -0
  388. data/app/components/shadcn/sidebar/separator/component.rb +23 -0
  389. data/app/components/shadcn/sidebar/trigger/component.rb +39 -0
  390. data/app/components/shadcn/sidebar.rb +98 -0
  391. data/app/components/shadcn/skeleton/component.rb +14 -0
  392. data/app/components/shadcn/skeleton/preview.rb +11 -0
  393. data/app/components/shadcn/skeleton/previews/default.html.erb +7 -0
  394. data/app/components/shadcn/slider/component.rb +145 -0
  395. data/app/components/shadcn/slider/preview.rb +16 -0
  396. data/app/components/shadcn/slider/previews/default.html.erb +17 -0
  397. data/app/components/shadcn/slider/previews/vertical.html.erb +7 -0
  398. data/app/components/shadcn/slider/range/component.rb +51 -0
  399. data/app/components/shadcn/slider/thumb/component.rb +58 -0
  400. data/app/components/shadcn/slider/track/component.rb +32 -0
  401. data/app/components/shadcn/spinner/component.rb +21 -0
  402. data/app/components/shadcn/spinner/preview.rb +11 -0
  403. data/app/components/shadcn/spinner/previews/default.html.erb +7 -0
  404. data/app/components/shadcn/switch/component.rb +104 -0
  405. data/app/components/shadcn/switch/preview.rb +11 -0
  406. data/app/components/shadcn/switch/previews/default.html.erb +24 -0
  407. data/app/components/shadcn/table/component.rb +26 -0
  408. data/app/components/shadcn/table/preview.rb +16 -0
  409. data/app/components/shadcn/table/previews/default.html.erb +19 -0
  410. data/app/components/shadcn/table/previews/footer.html.erb +25 -0
  411. data/app/components/shadcn/table.rb +33 -0
  412. data/app/components/shadcn/tabs/component.rb +40 -0
  413. data/app/components/shadcn/tabs/content/component.rb +34 -0
  414. data/app/components/shadcn/tabs/list/component.rb +51 -0
  415. data/app/components/shadcn/tabs/preview.rb +16 -0
  416. data/app/components/shadcn/tabs/previews/default.html.erb +21 -0
  417. data/app/components/shadcn/tabs/previews/line.html.erb +23 -0
  418. data/app/components/shadcn/tabs/trigger/component.rb +66 -0
  419. data/app/components/shadcn/textarea/component.rb +24 -0
  420. data/app/components/shadcn/textarea/preview.rb +16 -0
  421. data/app/components/shadcn/textarea/previews/default.html.erb +3 -0
  422. data/app/components/shadcn/textarea/previews/states.html.erb +18 -0
  423. data/app/components/shadcn/theme_selector/component.rb +88 -0
  424. data/app/components/shadcn/theme_selector/preview.rb +17 -0
  425. data/app/components/shadcn/theme_selector/previews/all_themes.html.erb +20 -0
  426. data/app/components/shadcn/theme_selector/previews/default.html.erb +18 -0
  427. data/app/components/shadcn/toaster/component.rb +139 -0
  428. data/app/components/shadcn/toaster/preview.rb +16 -0
  429. data/app/components/shadcn/toaster/previews/default.html.erb +19 -0
  430. data/app/components/shadcn/toaster/previews/from_the_server.html.erb +15 -0
  431. data/app/components/shadcn/toaster/toast/component.rb +134 -0
  432. data/app/components/shadcn/toggle/component.rb +81 -0
  433. data/app/components/shadcn/toggle/preview.rb +11 -0
  434. data/app/components/shadcn/toggle/previews/default.html.erb +6 -0
  435. data/app/components/shadcn/toggle_group/component.rb +62 -0
  436. data/app/components/shadcn/toggle_group/item/component.rb +59 -0
  437. data/app/components/shadcn/toggle_group/preview.rb +16 -0
  438. data/app/components/shadcn/toggle_group/previews/default.html.erb +12 -0
  439. data/app/components/shadcn/toggle_group/previews/sizes.html.erb +37 -0
  440. data/app/components/shadcn/tooltip/component.rb +38 -0
  441. data/app/components/shadcn/tooltip/content/component.rb +62 -0
  442. data/app/components/shadcn/tooltip/preview.rb +21 -0
  443. data/app/components/shadcn/tooltip/previews/default.html.erb +4 -0
  444. data/app/components/shadcn/tooltip/previews/sides.html.erb +19 -0
  445. data/app/components/shadcn/tooltip/previews/with_keyboard_shortcut.html.erb +11 -0
  446. data/app/components/shadcn/tooltip/provider/component.rb +28 -0
  447. data/app/components/shadcn/tooltip/trigger/component.rb +25 -0
  448. data/app/helpers/shadcn_view_component/form_helper.rb +25 -0
  449. data/app/helpers/shadcn_view_component/theme_helper.rb +61 -0
  450. data/app/javascript/shadcn/animation.js +180 -0
  451. data/app/javascript/shadcn/command_score.js +110 -0
  452. data/app/javascript/shadcn/controllers/accordion_controller.js +127 -0
  453. data/app/javascript/shadcn/controllers/avatar_controller.js +32 -0
  454. data/app/javascript/shadcn/controllers/calendar_controller.js +633 -0
  455. data/app/javascript/shadcn/controllers/carousel_controller.js +139 -0
  456. data/app/javascript/shadcn/controllers/chart_controller.js +110 -0
  457. data/app/javascript/shadcn/controllers/checkbox_controller.js +61 -0
  458. data/app/javascript/shadcn/controllers/collapsible_controller.js +55 -0
  459. data/app/javascript/shadcn/controllers/combobox_controller.js +360 -0
  460. data/app/javascript/shadcn/controllers/command_controller.js +199 -0
  461. data/app/javascript/shadcn/controllers/dialog_controller.js +154 -0
  462. data/app/javascript/shadcn/controllers/drawer_controller.js +265 -0
  463. data/app/javascript/shadcn/controllers/dropdown_menu_controller.js +259 -0
  464. data/app/javascript/shadcn/controllers/hover_card_controller.js +85 -0
  465. data/app/javascript/shadcn/controllers/input_group_controller.js +17 -0
  466. data/app/javascript/shadcn/controllers/input_otp_controller.js +80 -0
  467. data/app/javascript/shadcn/controllers/menubar_controller.js +151 -0
  468. data/app/javascript/shadcn/controllers/message_scroller_controller.js +456 -0
  469. data/app/javascript/shadcn/controllers/navigation_menu_controller.js +211 -0
  470. data/app/javascript/shadcn/controllers/popover_controller.js +66 -0
  471. data/app/javascript/shadcn/controllers/radio_group_controller.js +69 -0
  472. data/app/javascript/shadcn/controllers/resizable_controller.js +167 -0
  473. data/app/javascript/shadcn/controllers/scroll_area_controller.js +253 -0
  474. data/app/javascript/shadcn/controllers/select_controller.js +320 -0
  475. data/app/javascript/shadcn/controllers/sidebar_controller.js +273 -0
  476. data/app/javascript/shadcn/controllers/slider_controller.js +230 -0
  477. data/app/javascript/shadcn/controllers/switch_controller.js +39 -0
  478. data/app/javascript/shadcn/controllers/tabs_controller.js +81 -0
  479. data/app/javascript/shadcn/controllers/theme_controller.js +67 -0
  480. data/app/javascript/shadcn/controllers/toaster_controller.js +281 -0
  481. data/app/javascript/shadcn/controllers/toggle_controller.js +24 -0
  482. data/app/javascript/shadcn/controllers/toggle_group_controller.js +73 -0
  483. data/app/javascript/shadcn/controllers/tooltip_controller.js +58 -0
  484. data/app/javascript/shadcn/direction.js +41 -0
  485. data/app/javascript/shadcn/dismiss.js +73 -0
  486. data/app/javascript/shadcn/floating.js +207 -0
  487. data/app/javascript/shadcn/focus.js +86 -0
  488. data/app/javascript/shadcn/id.js +14 -0
  489. data/app/javascript/shadcn/index.js +110 -0
  490. data/app/javascript/shadcn/popper.js +262 -0
  491. data/app/javascript/shadcn/scroll_geometry.js +267 -0
  492. data/app/javascript/shadcn/theme.js +161 -0
  493. data/app/javascript/shadcn/top_layer.js +59 -0
  494. data/app/javascript/shadcn/typeahead.js +99 -0
  495. data/config/importmap.rb +6 -0
  496. data/config/locales/en.yml +62 -0
  497. data/lib/generators/shadcn_view_component/install/install_generator.rb +149 -0
  498. data/lib/shadcn_view_component/engine.rb +73 -0
  499. data/lib/shadcn_view_component/form_builder.rb +264 -0
  500. data/lib/shadcn_view_component/icon_registry.rb +66 -0
  501. data/lib/shadcn_view_component/icons.rb +32 -0
  502. data/lib/shadcn_view_component/themes.rb +1065 -0
  503. data/lib/shadcn_view_component/version.rb +3 -0
  504. data/lib/shadcn_view_component.rb +82 -0
  505. data/lib/tasks/icons.rake +53 -0
  506. data/lib/tasks/themes.rake +171 -0
  507. metadata +608 -0
@@ -0,0 +1,1075 @@
1
+ /*
2
+ * shadcn/ui colour themes.
3
+ *
4
+ * Generated from the shadcn/ui registry (`vendor/shadcn/themes.json`, taken
5
+ * from `apps/v4/registry/themes.ts` at the revision in
6
+ * `vendor/shadcn/REVISION`) — do not edit by hand, run `rake themes:build`.
7
+ *
8
+ * Each theme is a `.theme-<name>` class holding the same token set as
9
+ * `:root`, plus a `.dark .theme-<name>` override — the way shadcn's own
10
+ * site swaps palettes. Put the class on <body>, or on any container to
11
+ * scope a palette to part of the page: custom properties inherit, so
12
+ * everything inside picks them up.
13
+ *
14
+ * The `[data-shadcn-theme]` twin exists so the inline no-flash script can
15
+ * set the palette on <html> before <body> is parsed.
16
+ *
17
+ * Import it after `shadcn.css`. These selectors have the same specificity
18
+ * as `:root`, so source order is what decides.
19
+ */
20
+
21
+ /* Neutral */
22
+
23
+ .theme-neutral,
24
+ [data-shadcn-theme="neutral"] {
25
+ --background: oklch(1 0 0);
26
+ --foreground: oklch(0.145 0 0);
27
+ --card: oklch(1 0 0);
28
+ --card-foreground: oklch(0.145 0 0);
29
+ --popover: oklch(1 0 0);
30
+ --popover-foreground: oklch(0.145 0 0);
31
+ --primary: oklch(0.205 0 0);
32
+ --primary-foreground: oklch(0.985 0 0);
33
+ --secondary: oklch(0.97 0 0);
34
+ --secondary-foreground: oklch(0.205 0 0);
35
+ --muted: oklch(0.97 0 0);
36
+ --muted-foreground: oklch(0.556 0 0);
37
+ --accent: oklch(0.97 0 0);
38
+ --accent-foreground: oklch(0.205 0 0);
39
+ --destructive: oklch(0.577 0.245 27.325);
40
+ --border: oklch(0.922 0 0);
41
+ --input: oklch(0.922 0 0);
42
+ --ring: oklch(0.708 0 0);
43
+ --chart-1: oklch(0.87 0 0);
44
+ --chart-2: oklch(0.556 0 0);
45
+ --chart-3: oklch(0.439 0 0);
46
+ --chart-4: oklch(0.371 0 0);
47
+ --chart-5: oklch(0.269 0 0);
48
+ --radius: 0.625rem;
49
+ --sidebar: oklch(0.985 0 0);
50
+ --sidebar-foreground: oklch(0.145 0 0);
51
+ --sidebar-primary: oklch(0.205 0 0);
52
+ --sidebar-primary-foreground: oklch(0.985 0 0);
53
+ --sidebar-accent: oklch(0.97 0 0);
54
+ --sidebar-accent-foreground: oklch(0.205 0 0);
55
+ --sidebar-border: oklch(0.922 0 0);
56
+ --sidebar-ring: oklch(0.708 0 0);
57
+ }
58
+
59
+ .dark .theme-neutral,
60
+ .dark[data-shadcn-theme="neutral"] {
61
+ --background: oklch(0.145 0 0);
62
+ --foreground: oklch(0.985 0 0);
63
+ --card: oklch(0.205 0 0);
64
+ --card-foreground: oklch(0.985 0 0);
65
+ --popover: oklch(0.205 0 0);
66
+ --popover-foreground: oklch(0.985 0 0);
67
+ --primary: oklch(0.922 0 0);
68
+ --primary-foreground: oklch(0.205 0 0);
69
+ --secondary: oklch(0.269 0 0);
70
+ --secondary-foreground: oklch(0.985 0 0);
71
+ --muted: oklch(0.269 0 0);
72
+ --muted-foreground: oklch(0.708 0 0);
73
+ --accent: oklch(0.269 0 0);
74
+ --accent-foreground: oklch(0.985 0 0);
75
+ --destructive: oklch(0.704 0.191 22.216);
76
+ --border: oklch(1 0 0 / 10%);
77
+ --input: oklch(1 0 0 / 15%);
78
+ --ring: oklch(0.556 0 0);
79
+ --chart-1: oklch(0.87 0 0);
80
+ --chart-2: oklch(0.556 0 0);
81
+ --chart-3: oklch(0.439 0 0);
82
+ --chart-4: oklch(0.371 0 0);
83
+ --chart-5: oklch(0.269 0 0);
84
+ --sidebar: oklch(0.205 0 0);
85
+ --sidebar-foreground: oklch(0.985 0 0);
86
+ --sidebar-primary: oklch(0.488 0.243 264.376);
87
+ --sidebar-primary-foreground: oklch(0.985 0 0);
88
+ --sidebar-accent: oklch(0.269 0 0);
89
+ --sidebar-accent-foreground: oklch(0.985 0 0);
90
+ --sidebar-border: oklch(1 0 0 / 10%);
91
+ --sidebar-ring: oklch(0.556 0 0);
92
+ }
93
+
94
+ /* Stone */
95
+
96
+ .theme-stone,
97
+ [data-shadcn-theme="stone"] {
98
+ --background: oklch(1 0 0);
99
+ --foreground: oklch(0.147 0.004 49.25);
100
+ --card: oklch(1 0 0);
101
+ --card-foreground: oklch(0.147 0.004 49.25);
102
+ --popover: oklch(1 0 0);
103
+ --popover-foreground: oklch(0.147 0.004 49.25);
104
+ --primary: oklch(0.216 0.006 56.043);
105
+ --primary-foreground: oklch(0.985 0.001 106.423);
106
+ --secondary: oklch(0.97 0.001 106.424);
107
+ --secondary-foreground: oklch(0.216 0.006 56.043);
108
+ --muted: oklch(0.97 0.001 106.424);
109
+ --muted-foreground: oklch(0.553 0.013 58.071);
110
+ --accent: oklch(0.97 0.001 106.424);
111
+ --accent-foreground: oklch(0.216 0.006 56.043);
112
+ --destructive: oklch(0.577 0.245 27.325);
113
+ --border: oklch(0.923 0.003 48.717);
114
+ --input: oklch(0.923 0.003 48.717);
115
+ --ring: oklch(0.709 0.01 56.259);
116
+ --chart-1: oklch(0.869 0.005 56.366);
117
+ --chart-2: oklch(0.553 0.013 58.071);
118
+ --chart-3: oklch(0.444 0.011 73.639);
119
+ --chart-4: oklch(0.374 0.01 67.558);
120
+ --chart-5: oklch(0.268 0.007 34.298);
121
+ --radius: 0.625rem;
122
+ --sidebar: oklch(0.985 0.001 106.423);
123
+ --sidebar-foreground: oklch(0.147 0.004 49.25);
124
+ --sidebar-primary: oklch(0.216 0.006 56.043);
125
+ --sidebar-primary-foreground: oklch(0.985 0.001 106.423);
126
+ --sidebar-accent: oklch(0.97 0.001 106.424);
127
+ --sidebar-accent-foreground: oklch(0.216 0.006 56.043);
128
+ --sidebar-border: oklch(0.923 0.003 48.717);
129
+ --sidebar-ring: oklch(0.709 0.01 56.259);
130
+ }
131
+
132
+ .dark .theme-stone,
133
+ .dark[data-shadcn-theme="stone"] {
134
+ --background: oklch(0.147 0.004 49.25);
135
+ --foreground: oklch(0.985 0.001 106.423);
136
+ --card: oklch(0.216 0.006 56.043);
137
+ --card-foreground: oklch(0.985 0.001 106.423);
138
+ --popover: oklch(0.216 0.006 56.043);
139
+ --popover-foreground: oklch(0.985 0.001 106.423);
140
+ --primary: oklch(0.923 0.003 48.717);
141
+ --primary-foreground: oklch(0.216 0.006 56.043);
142
+ --secondary: oklch(0.268 0.007 34.298);
143
+ --secondary-foreground: oklch(0.985 0.001 106.423);
144
+ --muted: oklch(0.268 0.007 34.298);
145
+ --muted-foreground: oklch(0.709 0.01 56.259);
146
+ --accent: oklch(0.268 0.007 34.298);
147
+ --accent-foreground: oklch(0.985 0.001 106.423);
148
+ --destructive: oklch(0.704 0.191 22.216);
149
+ --border: oklch(1 0 0 / 10%);
150
+ --input: oklch(1 0 0 / 15%);
151
+ --ring: oklch(0.553 0.013 58.071);
152
+ --chart-1: oklch(0.869 0.005 56.366);
153
+ --chart-2: oklch(0.553 0.013 58.071);
154
+ --chart-3: oklch(0.444 0.011 73.639);
155
+ --chart-4: oklch(0.374 0.01 67.558);
156
+ --chart-5: oklch(0.268 0.007 34.298);
157
+ --sidebar: oklch(0.216 0.006 56.043);
158
+ --sidebar-foreground: oklch(0.985 0.001 106.423);
159
+ --sidebar-primary: oklch(0.488 0.243 264.376);
160
+ --sidebar-primary-foreground: oklch(0.985 0.001 106.423);
161
+ --sidebar-accent: oklch(0.268 0.007 34.298);
162
+ --sidebar-accent-foreground: oklch(0.985 0.001 106.423);
163
+ --sidebar-border: oklch(1 0 0 / 10%);
164
+ --sidebar-ring: oklch(0.553 0.013 58.071);
165
+ }
166
+
167
+ /* Zinc */
168
+
169
+ .theme-zinc,
170
+ [data-shadcn-theme="zinc"] {
171
+ --background: oklch(1 0 0);
172
+ --foreground: oklch(0.141 0.005 285.823);
173
+ --card: oklch(1 0 0);
174
+ --card-foreground: oklch(0.141 0.005 285.823);
175
+ --popover: oklch(1 0 0);
176
+ --popover-foreground: oklch(0.141 0.005 285.823);
177
+ --primary: oklch(0.21 0.006 285.885);
178
+ --primary-foreground: oklch(0.985 0 0);
179
+ --secondary: oklch(0.967 0.001 286.375);
180
+ --secondary-foreground: oklch(0.21 0.006 285.885);
181
+ --muted: oklch(0.967 0.001 286.375);
182
+ --muted-foreground: oklch(0.552 0.016 285.938);
183
+ --accent: oklch(0.967 0.001 286.375);
184
+ --accent-foreground: oklch(0.21 0.006 285.885);
185
+ --destructive: oklch(0.577 0.245 27.325);
186
+ --border: oklch(0.92 0.004 286.32);
187
+ --input: oklch(0.92 0.004 286.32);
188
+ --ring: oklch(0.705 0.015 286.067);
189
+ --chart-1: oklch(0.871 0.006 286.286);
190
+ --chart-2: oklch(0.552 0.016 285.938);
191
+ --chart-3: oklch(0.442 0.017 285.786);
192
+ --chart-4: oklch(0.37 0.013 285.805);
193
+ --chart-5: oklch(0.274 0.006 286.033);
194
+ --radius: 0.625rem;
195
+ --sidebar: oklch(0.985 0 0);
196
+ --sidebar-foreground: oklch(0.141 0.005 285.823);
197
+ --sidebar-primary: oklch(0.21 0.006 285.885);
198
+ --sidebar-primary-foreground: oklch(0.985 0 0);
199
+ --sidebar-accent: oklch(0.967 0.001 286.375);
200
+ --sidebar-accent-foreground: oklch(0.21 0.006 285.885);
201
+ --sidebar-border: oklch(0.92 0.004 286.32);
202
+ --sidebar-ring: oklch(0.705 0.015 286.067);
203
+ }
204
+
205
+ .dark .theme-zinc,
206
+ .dark[data-shadcn-theme="zinc"] {
207
+ --background: oklch(0.141 0.005 285.823);
208
+ --foreground: oklch(0.985 0 0);
209
+ --card: oklch(0.21 0.006 285.885);
210
+ --card-foreground: oklch(0.985 0 0);
211
+ --popover: oklch(0.21 0.006 285.885);
212
+ --popover-foreground: oklch(0.985 0 0);
213
+ --primary: oklch(0.92 0.004 286.32);
214
+ --primary-foreground: oklch(0.21 0.006 285.885);
215
+ --secondary: oklch(0.274 0.006 286.033);
216
+ --secondary-foreground: oklch(0.985 0 0);
217
+ --muted: oklch(0.274 0.006 286.033);
218
+ --muted-foreground: oklch(0.705 0.015 286.067);
219
+ --accent: oklch(0.274 0.006 286.033);
220
+ --accent-foreground: oklch(0.985 0 0);
221
+ --destructive: oklch(0.704 0.191 22.216);
222
+ --border: oklch(1 0 0 / 10%);
223
+ --input: oklch(1 0 0 / 15%);
224
+ --ring: oklch(0.552 0.016 285.938);
225
+ --chart-1: oklch(0.871 0.006 286.286);
226
+ --chart-2: oklch(0.552 0.016 285.938);
227
+ --chart-3: oklch(0.442 0.017 285.786);
228
+ --chart-4: oklch(0.37 0.013 285.805);
229
+ --chart-5: oklch(0.274 0.006 286.033);
230
+ --sidebar: oklch(0.21 0.006 285.885);
231
+ --sidebar-foreground: oklch(0.985 0 0);
232
+ --sidebar-primary: oklch(0.488 0.243 264.376);
233
+ --sidebar-primary-foreground: oklch(0.985 0 0);
234
+ --sidebar-accent: oklch(0.274 0.006 286.033);
235
+ --sidebar-accent-foreground: oklch(0.985 0 0);
236
+ --sidebar-border: oklch(1 0 0 / 10%);
237
+ --sidebar-ring: oklch(0.552 0.016 285.938);
238
+ }
239
+
240
+ /* Mauve */
241
+
242
+ .theme-mauve,
243
+ [data-shadcn-theme="mauve"] {
244
+ --background: oklch(1 0 0);
245
+ --foreground: oklch(0.145 0.008 326);
246
+ --card: oklch(1 0 0);
247
+ --card-foreground: oklch(0.145 0.008 326);
248
+ --popover: oklch(1 0 0);
249
+ --popover-foreground: oklch(0.145 0.008 326);
250
+ --primary: oklch(0.212 0.019 322.12);
251
+ --primary-foreground: oklch(0.985 0 0);
252
+ --secondary: oklch(0.96 0.003 325.6);
253
+ --secondary-foreground: oklch(0.212 0.019 322.12);
254
+ --muted: oklch(0.96 0.003 325.6);
255
+ --muted-foreground: oklch(0.542 0.034 322.5);
256
+ --accent: oklch(0.96 0.003 325.6);
257
+ --accent-foreground: oklch(0.212 0.019 322.12);
258
+ --destructive: oklch(0.577 0.245 27.325);
259
+ --border: oklch(0.922 0.005 325.62);
260
+ --input: oklch(0.922 0.005 325.62);
261
+ --ring: oklch(0.711 0.019 323.02);
262
+ --chart-1: oklch(0.865 0.012 325.68);
263
+ --chart-2: oklch(0.542 0.034 322.5);
264
+ --chart-3: oklch(0.435 0.029 321.78);
265
+ --chart-4: oklch(0.364 0.029 323.89);
266
+ --chart-5: oklch(0.263 0.024 320.12);
267
+ --radius: 0.625rem;
268
+ --sidebar: oklch(0.985 0 0);
269
+ --sidebar-foreground: oklch(0.145 0.008 326);
270
+ --sidebar-primary: oklch(0.212 0.019 322.12);
271
+ --sidebar-primary-foreground: oklch(0.985 0 0);
272
+ --sidebar-accent: oklch(0.96 0.003 325.6);
273
+ --sidebar-accent-foreground: oklch(0.212 0.019 322.12);
274
+ --sidebar-border: oklch(0.922 0.005 325.62);
275
+ --sidebar-ring: oklch(0.711 0.019 323.02);
276
+ }
277
+
278
+ .dark .theme-mauve,
279
+ .dark[data-shadcn-theme="mauve"] {
280
+ --background: oklch(0.145 0.008 326);
281
+ --foreground: oklch(0.985 0 0);
282
+ --card: oklch(0.212 0.019 322.12);
283
+ --card-foreground: oklch(0.985 0 0);
284
+ --popover: oklch(0.212 0.019 322.12);
285
+ --popover-foreground: oklch(0.985 0 0);
286
+ --primary: oklch(0.922 0.005 325.62);
287
+ --primary-foreground: oklch(0.212 0.019 322.12);
288
+ --secondary: oklch(0.263 0.024 320.12);
289
+ --secondary-foreground: oklch(0.985 0 0);
290
+ --muted: oklch(0.263 0.024 320.12);
291
+ --muted-foreground: oklch(0.711 0.019 323.02);
292
+ --accent: oklch(0.263 0.024 320.12);
293
+ --accent-foreground: oklch(0.985 0 0);
294
+ --destructive: oklch(0.704 0.191 22.216);
295
+ --border: oklch(1 0 0 / 10%);
296
+ --input: oklch(1 0 0 / 15%);
297
+ --ring: oklch(0.542 0.034 322.5);
298
+ --chart-1: oklch(0.865 0.012 325.68);
299
+ --chart-2: oklch(0.542 0.034 322.5);
300
+ --chart-3: oklch(0.435 0.029 321.78);
301
+ --chart-4: oklch(0.364 0.029 323.89);
302
+ --chart-5: oklch(0.263 0.024 320.12);
303
+ --sidebar: oklch(0.212 0.019 322.12);
304
+ --sidebar-foreground: oklch(0.985 0 0);
305
+ --sidebar-primary: oklch(0.488 0.243 264.376);
306
+ --sidebar-primary-foreground: oklch(0.985 0 0);
307
+ --sidebar-accent: oklch(0.263 0.024 320.12);
308
+ --sidebar-accent-foreground: oklch(0.985 0 0);
309
+ --sidebar-border: oklch(1 0 0 / 10%);
310
+ --sidebar-ring: oklch(0.542 0.034 322.5);
311
+ }
312
+
313
+ /* Olive */
314
+
315
+ .theme-olive,
316
+ [data-shadcn-theme="olive"] {
317
+ --background: oklch(1 0 0);
318
+ --foreground: oklch(0.153 0.006 107.1);
319
+ --card: oklch(1 0 0);
320
+ --card-foreground: oklch(0.153 0.006 107.1);
321
+ --popover: oklch(1 0 0);
322
+ --popover-foreground: oklch(0.153 0.006 107.1);
323
+ --primary: oklch(0.228 0.013 107.4);
324
+ --primary-foreground: oklch(0.988 0.003 106.5);
325
+ --secondary: oklch(0.966 0.005 106.5);
326
+ --secondary-foreground: oklch(0.228 0.013 107.4);
327
+ --muted: oklch(0.966 0.005 106.5);
328
+ --muted-foreground: oklch(0.58 0.031 107.3);
329
+ --accent: oklch(0.966 0.005 106.5);
330
+ --accent-foreground: oklch(0.228 0.013 107.4);
331
+ --destructive: oklch(0.577 0.245 27.325);
332
+ --border: oklch(0.93 0.007 106.5);
333
+ --input: oklch(0.93 0.007 106.5);
334
+ --ring: oklch(0.737 0.021 106.9);
335
+ --chart-1: oklch(0.88 0.011 106.6);
336
+ --chart-2: oklch(0.58 0.031 107.3);
337
+ --chart-3: oklch(0.466 0.025 107.3);
338
+ --chart-4: oklch(0.394 0.023 107.4);
339
+ --chart-5: oklch(0.286 0.016 107.4);
340
+ --radius: 0.625rem;
341
+ --sidebar: oklch(0.988 0.003 106.5);
342
+ --sidebar-foreground: oklch(0.153 0.006 107.1);
343
+ --sidebar-primary: oklch(0.228 0.013 107.4);
344
+ --sidebar-primary-foreground: oklch(0.988 0.003 106.5);
345
+ --sidebar-accent: oklch(0.966 0.005 106.5);
346
+ --sidebar-accent-foreground: oklch(0.228 0.013 107.4);
347
+ --sidebar-border: oklch(0.93 0.007 106.5);
348
+ --sidebar-ring: oklch(0.737 0.021 106.9);
349
+ }
350
+
351
+ .dark .theme-olive,
352
+ .dark[data-shadcn-theme="olive"] {
353
+ --background: oklch(0.153 0.006 107.1);
354
+ --foreground: oklch(0.988 0.003 106.5);
355
+ --card: oklch(0.228 0.013 107.4);
356
+ --card-foreground: oklch(0.988 0.003 106.5);
357
+ --popover: oklch(0.228 0.013 107.4);
358
+ --popover-foreground: oklch(0.988 0.003 106.5);
359
+ --primary: oklch(0.93 0.007 106.5);
360
+ --primary-foreground: oklch(0.228 0.013 107.4);
361
+ --secondary: oklch(0.286 0.016 107.4);
362
+ --secondary-foreground: oklch(0.988 0.003 106.5);
363
+ --muted: oklch(0.286 0.016 107.4);
364
+ --muted-foreground: oklch(0.737 0.021 106.9);
365
+ --accent: oklch(0.286 0.016 107.4);
366
+ --accent-foreground: oklch(0.988 0.003 106.5);
367
+ --destructive: oklch(0.704 0.191 22.216);
368
+ --border: oklch(1 0 0 / 10%);
369
+ --input: oklch(1 0 0 / 15%);
370
+ --ring: oklch(0.58 0.031 107.3);
371
+ --chart-1: oklch(0.88 0.011 106.6);
372
+ --chart-2: oklch(0.58 0.031 107.3);
373
+ --chart-3: oklch(0.466 0.025 107.3);
374
+ --chart-4: oklch(0.394 0.023 107.4);
375
+ --chart-5: oklch(0.286 0.016 107.4);
376
+ --sidebar: oklch(0.228 0.013 107.4);
377
+ --sidebar-foreground: oklch(0.988 0.003 106.5);
378
+ --sidebar-primary: oklch(0.488 0.243 264.376);
379
+ --sidebar-primary-foreground: oklch(0.988 0.003 106.5);
380
+ --sidebar-accent: oklch(0.286 0.016 107.4);
381
+ --sidebar-accent-foreground: oklch(0.988 0.003 106.5);
382
+ --sidebar-border: oklch(1 0 0 / 10%);
383
+ --sidebar-ring: oklch(0.58 0.031 107.3);
384
+ }
385
+
386
+ /* Mist */
387
+
388
+ .theme-mist,
389
+ [data-shadcn-theme="mist"] {
390
+ --background: oklch(1 0 0);
391
+ --foreground: oklch(0.148 0.004 228.8);
392
+ --card: oklch(1 0 0);
393
+ --card-foreground: oklch(0.148 0.004 228.8);
394
+ --popover: oklch(1 0 0);
395
+ --popover-foreground: oklch(0.148 0.004 228.8);
396
+ --primary: oklch(0.218 0.008 223.9);
397
+ --primary-foreground: oklch(0.987 0.002 197.1);
398
+ --secondary: oklch(0.963 0.002 197.1);
399
+ --secondary-foreground: oklch(0.218 0.008 223.9);
400
+ --muted: oklch(0.963 0.002 197.1);
401
+ --muted-foreground: oklch(0.56 0.021 213.5);
402
+ --accent: oklch(0.963 0.002 197.1);
403
+ --accent-foreground: oklch(0.218 0.008 223.9);
404
+ --destructive: oklch(0.577 0.245 27.325);
405
+ --border: oklch(0.925 0.005 214.3);
406
+ --input: oklch(0.925 0.005 214.3);
407
+ --ring: oklch(0.723 0.014 214.4);
408
+ --chart-1: oklch(0.872 0.007 219.6);
409
+ --chart-2: oklch(0.56 0.021 213.5);
410
+ --chart-3: oklch(0.45 0.017 213.2);
411
+ --chart-4: oklch(0.378 0.015 216);
412
+ --chart-5: oklch(0.275 0.011 216.9);
413
+ --radius: 0.625rem;
414
+ --sidebar: oklch(0.987 0.002 197.1);
415
+ --sidebar-foreground: oklch(0.148 0.004 228.8);
416
+ --sidebar-primary: oklch(0.218 0.008 223.9);
417
+ --sidebar-primary-foreground: oklch(0.987 0.002 197.1);
418
+ --sidebar-accent: oklch(0.963 0.002 197.1);
419
+ --sidebar-accent-foreground: oklch(0.218 0.008 223.9);
420
+ --sidebar-border: oklch(0.925 0.005 214.3);
421
+ --sidebar-ring: oklch(0.723 0.014 214.4);
422
+ }
423
+
424
+ .dark .theme-mist,
425
+ .dark[data-shadcn-theme="mist"] {
426
+ --background: oklch(0.148 0.004 228.8);
427
+ --foreground: oklch(0.987 0.002 197.1);
428
+ --card: oklch(0.218 0.008 223.9);
429
+ --card-foreground: oklch(0.987 0.002 197.1);
430
+ --popover: oklch(0.218 0.008 223.9);
431
+ --popover-foreground: oklch(0.987 0.002 197.1);
432
+ --primary: oklch(0.925 0.005 214.3);
433
+ --primary-foreground: oklch(0.218 0.008 223.9);
434
+ --secondary: oklch(0.275 0.011 216.9);
435
+ --secondary-foreground: oklch(0.987 0.002 197.1);
436
+ --muted: oklch(0.275 0.011 216.9);
437
+ --muted-foreground: oklch(0.723 0.014 214.4);
438
+ --accent: oklch(0.275 0.011 216.9);
439
+ --accent-foreground: oklch(0.987 0.002 197.1);
440
+ --destructive: oklch(0.704 0.191 22.216);
441
+ --border: oklch(1 0 0 / 10%);
442
+ --input: oklch(1 0 0 / 15%);
443
+ --ring: oklch(0.56 0.021 213.5);
444
+ --chart-1: oklch(0.872 0.007 219.6);
445
+ --chart-2: oklch(0.56 0.021 213.5);
446
+ --chart-3: oklch(0.45 0.017 213.2);
447
+ --chart-4: oklch(0.378 0.015 216);
448
+ --chart-5: oklch(0.275 0.011 216.9);
449
+ --sidebar: oklch(0.218 0.008 223.9);
450
+ --sidebar-foreground: oklch(0.987 0.002 197.1);
451
+ --sidebar-primary: oklch(0.488 0.243 264.376);
452
+ --sidebar-primary-foreground: oklch(0.987 0.002 197.1);
453
+ --sidebar-accent: oklch(0.275 0.011 216.9);
454
+ --sidebar-accent-foreground: oklch(0.987 0.002 197.1);
455
+ --sidebar-border: oklch(1 0 0 / 10%);
456
+ --sidebar-ring: oklch(0.56 0.021 213.5);
457
+ }
458
+
459
+ /* Taupe */
460
+
461
+ .theme-taupe,
462
+ [data-shadcn-theme="taupe"] {
463
+ --background: oklch(1 0 0);
464
+ --foreground: oklch(0.147 0.004 49.3);
465
+ --card: oklch(1 0 0);
466
+ --card-foreground: oklch(0.147 0.004 49.3);
467
+ --popover: oklch(1 0 0);
468
+ --popover-foreground: oklch(0.147 0.004 49.3);
469
+ --primary: oklch(0.214 0.009 43.1);
470
+ --primary-foreground: oklch(0.986 0.002 67.8);
471
+ --secondary: oklch(0.96 0.002 17.2);
472
+ --secondary-foreground: oklch(0.214 0.009 43.1);
473
+ --muted: oklch(0.96 0.002 17.2);
474
+ --muted-foreground: oklch(0.547 0.021 43.1);
475
+ --accent: oklch(0.96 0.002 17.2);
476
+ --accent-foreground: oklch(0.214 0.009 43.1);
477
+ --destructive: oklch(0.577 0.245 27.325);
478
+ --border: oklch(0.922 0.005 34.3);
479
+ --input: oklch(0.922 0.005 34.3);
480
+ --ring: oklch(0.714 0.014 41.2);
481
+ --chart-1: oklch(0.868 0.007 39.5);
482
+ --chart-2: oklch(0.547 0.021 43.1);
483
+ --chart-3: oklch(0.438 0.017 39.3);
484
+ --chart-4: oklch(0.367 0.016 35.7);
485
+ --chart-5: oklch(0.268 0.011 36.5);
486
+ --radius: 0.625rem;
487
+ --sidebar: oklch(0.986 0.002 67.8);
488
+ --sidebar-foreground: oklch(0.147 0.004 49.3);
489
+ --sidebar-primary: oklch(0.214 0.009 43.1);
490
+ --sidebar-primary-foreground: oklch(0.986 0.002 67.8);
491
+ --sidebar-accent: oklch(0.96 0.002 17.2);
492
+ --sidebar-accent-foreground: oklch(0.214 0.009 43.1);
493
+ --sidebar-border: oklch(0.922 0.005 34.3);
494
+ --sidebar-ring: oklch(0.714 0.014 41.2);
495
+ }
496
+
497
+ .dark .theme-taupe,
498
+ .dark[data-shadcn-theme="taupe"] {
499
+ --background: oklch(0.147 0.004 49.3);
500
+ --foreground: oklch(0.986 0.002 67.8);
501
+ --card: oklch(0.214 0.009 43.1);
502
+ --card-foreground: oklch(0.986 0.002 67.8);
503
+ --popover: oklch(0.214 0.009 43.1);
504
+ --popover-foreground: oklch(0.986 0.002 67.8);
505
+ --primary: oklch(0.922 0.005 34.3);
506
+ --primary-foreground: oklch(0.214 0.009 43.1);
507
+ --secondary: oklch(0.268 0.011 36.5);
508
+ --secondary-foreground: oklch(0.986 0.002 67.8);
509
+ --muted: oklch(0.268 0.011 36.5);
510
+ --muted-foreground: oklch(0.714 0.014 41.2);
511
+ --accent: oklch(0.268 0.011 36.5);
512
+ --accent-foreground: oklch(0.986 0.002 67.8);
513
+ --destructive: oklch(0.704 0.191 22.216);
514
+ --border: oklch(1 0 0 / 10%);
515
+ --input: oklch(1 0 0 / 15%);
516
+ --ring: oklch(0.547 0.021 43.1);
517
+ --chart-1: oklch(0.868 0.007 39.5);
518
+ --chart-2: oklch(0.547 0.021 43.1);
519
+ --chart-3: oklch(0.438 0.017 39.3);
520
+ --chart-4: oklch(0.367 0.016 35.7);
521
+ --chart-5: oklch(0.268 0.011 36.5);
522
+ --sidebar: oklch(0.214 0.009 43.1);
523
+ --sidebar-foreground: oklch(0.986 0.002 67.8);
524
+ --sidebar-primary: oklch(0.488 0.243 264.376);
525
+ --sidebar-primary-foreground: oklch(0.986 0.002 67.8);
526
+ --sidebar-accent: oklch(0.268 0.011 36.5);
527
+ --sidebar-accent-foreground: oklch(0.986 0.002 67.8);
528
+ --sidebar-border: oklch(1 0 0 / 10%);
529
+ --sidebar-ring: oklch(0.547 0.021 43.1);
530
+ }
531
+
532
+ /* Amber */
533
+
534
+ .theme-amber,
535
+ [data-shadcn-theme="amber"] {
536
+ --primary: oklch(0.555 0.163 48.998);
537
+ --primary-foreground: oklch(0.987 0.022 95.277);
538
+ --secondary: oklch(0.967 0.001 286.375);
539
+ --secondary-foreground: oklch(0.21 0.006 285.885);
540
+ --chart-1: oklch(0.879 0.169 91.605);
541
+ --chart-2: oklch(0.769 0.188 70.08);
542
+ --chart-3: oklch(0.666 0.179 58.318);
543
+ --chart-4: oklch(0.555 0.163 48.998);
544
+ --chart-5: oklch(0.473 0.137 46.201);
545
+ --sidebar-primary: oklch(0.666 0.179 58.318);
546
+ --sidebar-primary-foreground: oklch(0.987 0.022 95.277);
547
+ }
548
+
549
+ .dark .theme-amber,
550
+ .dark[data-shadcn-theme="amber"] {
551
+ --primary: oklch(0.473 0.137 46.201);
552
+ --primary-foreground: oklch(0.987 0.022 95.277);
553
+ --secondary: oklch(0.274 0.006 286.033);
554
+ --secondary-foreground: oklch(0.985 0 0);
555
+ --chart-1: oklch(0.879 0.169 91.605);
556
+ --chart-2: oklch(0.769 0.188 70.08);
557
+ --chart-3: oklch(0.666 0.179 58.318);
558
+ --chart-4: oklch(0.555 0.163 48.998);
559
+ --chart-5: oklch(0.473 0.137 46.201);
560
+ --sidebar-primary: oklch(0.769 0.188 70.08);
561
+ --sidebar-primary-foreground: oklch(0.279 0.077 45.635);
562
+ }
563
+
564
+ /* Blue */
565
+
566
+ .theme-blue,
567
+ [data-shadcn-theme="blue"] {
568
+ --primary: oklch(0.488 0.243 264.376);
569
+ --primary-foreground: oklch(0.97 0.014 254.604);
570
+ --secondary: oklch(0.967 0.001 286.375);
571
+ --secondary-foreground: oklch(0.21 0.006 285.885);
572
+ --chart-1: oklch(0.809 0.105 251.813);
573
+ --chart-2: oklch(0.623 0.214 259.815);
574
+ --chart-3: oklch(0.546 0.245 262.881);
575
+ --chart-4: oklch(0.488 0.243 264.376);
576
+ --chart-5: oklch(0.424 0.199 265.638);
577
+ --sidebar-primary: oklch(0.546 0.245 262.881);
578
+ --sidebar-primary-foreground: oklch(0.97 0.014 254.604);
579
+ }
580
+
581
+ .dark .theme-blue,
582
+ .dark[data-shadcn-theme="blue"] {
583
+ --primary: oklch(0.424 0.199 265.638);
584
+ --primary-foreground: oklch(0.97 0.014 254.604);
585
+ --secondary: oklch(0.274 0.006 286.033);
586
+ --secondary-foreground: oklch(0.985 0 0);
587
+ --chart-1: oklch(0.809 0.105 251.813);
588
+ --chart-2: oklch(0.623 0.214 259.815);
589
+ --chart-3: oklch(0.546 0.245 262.881);
590
+ --chart-4: oklch(0.488 0.243 264.376);
591
+ --chart-5: oklch(0.424 0.199 265.638);
592
+ --sidebar-primary: oklch(0.623 0.214 259.815);
593
+ --sidebar-primary-foreground: oklch(0.97 0.014 254.604);
594
+ }
595
+
596
+ /* Cyan */
597
+
598
+ .theme-cyan,
599
+ [data-shadcn-theme="cyan"] {
600
+ --primary: oklch(0.52 0.105 223.128);
601
+ --primary-foreground: oklch(0.984 0.019 200.873);
602
+ --secondary: oklch(0.967 0.001 286.375);
603
+ --secondary-foreground: oklch(0.21 0.006 285.885);
604
+ --chart-1: oklch(0.865 0.127 207.078);
605
+ --chart-2: oklch(0.715 0.143 215.221);
606
+ --chart-3: oklch(0.609 0.126 221.723);
607
+ --chart-4: oklch(0.52 0.105 223.128);
608
+ --chart-5: oklch(0.45 0.085 224.283);
609
+ --sidebar-primary: oklch(0.609 0.126 221.723);
610
+ --sidebar-primary-foreground: oklch(0.984 0.019 200.873);
611
+ }
612
+
613
+ .dark .theme-cyan,
614
+ .dark[data-shadcn-theme="cyan"] {
615
+ --primary: oklch(0.45 0.085 224.283);
616
+ --primary-foreground: oklch(0.984 0.019 200.873);
617
+ --secondary: oklch(0.274 0.006 286.033);
618
+ --secondary-foreground: oklch(0.985 0 0);
619
+ --chart-1: oklch(0.865 0.127 207.078);
620
+ --chart-2: oklch(0.715 0.143 215.221);
621
+ --chart-3: oklch(0.609 0.126 221.723);
622
+ --chart-4: oklch(0.52 0.105 223.128);
623
+ --chart-5: oklch(0.45 0.085 224.283);
624
+ --sidebar-primary: oklch(0.715 0.143 215.221);
625
+ --sidebar-primary-foreground: oklch(0.302 0.056 229.695);
626
+ }
627
+
628
+ /* Emerald */
629
+
630
+ .theme-emerald,
631
+ [data-shadcn-theme="emerald"] {
632
+ --primary: oklch(0.508 0.118 165.612);
633
+ --primary-foreground: oklch(0.979 0.021 166.113);
634
+ --secondary: oklch(0.967 0.001 286.375);
635
+ --secondary-foreground: oklch(0.21 0.006 285.885);
636
+ --chart-1: oklch(0.845 0.143 164.978);
637
+ --chart-2: oklch(0.696 0.17 162.48);
638
+ --chart-3: oklch(0.596 0.145 163.225);
639
+ --chart-4: oklch(0.508 0.118 165.612);
640
+ --chart-5: oklch(0.432 0.095 166.913);
641
+ --sidebar-primary: oklch(0.596 0.145 163.225);
642
+ --sidebar-primary-foreground: oklch(0.979 0.021 166.113);
643
+ }
644
+
645
+ .dark .theme-emerald,
646
+ .dark[data-shadcn-theme="emerald"] {
647
+ --primary: oklch(0.432 0.095 166.913);
648
+ --primary-foreground: oklch(0.979 0.021 166.113);
649
+ --secondary: oklch(0.274 0.006 286.033);
650
+ --secondary-foreground: oklch(0.985 0 0);
651
+ --chart-1: oklch(0.845 0.143 164.978);
652
+ --chart-2: oklch(0.696 0.17 162.48);
653
+ --chart-3: oklch(0.596 0.145 163.225);
654
+ --chart-4: oklch(0.508 0.118 165.612);
655
+ --chart-5: oklch(0.432 0.095 166.913);
656
+ --sidebar-primary: oklch(0.696 0.17 162.48);
657
+ --sidebar-primary-foreground: oklch(0.262 0.051 172.552);
658
+ }
659
+
660
+ /* Fuchsia */
661
+
662
+ .theme-fuchsia,
663
+ [data-shadcn-theme="fuchsia"] {
664
+ --primary: oklch(0.518 0.253 323.949);
665
+ --primary-foreground: oklch(0.977 0.017 320.058);
666
+ --secondary: oklch(0.967 0.001 286.375);
667
+ --secondary-foreground: oklch(0.21 0.006 285.885);
668
+ --chart-1: oklch(0.833 0.145 321.434);
669
+ --chart-2: oklch(0.667 0.295 322.15);
670
+ --chart-3: oklch(0.591 0.293 322.896);
671
+ --chart-4: oklch(0.518 0.253 323.949);
672
+ --chart-5: oklch(0.452 0.211 324.591);
673
+ --sidebar-primary: oklch(0.591 0.293 322.896);
674
+ --sidebar-primary-foreground: oklch(0.977 0.017 320.058);
675
+ }
676
+
677
+ .dark .theme-fuchsia,
678
+ .dark[data-shadcn-theme="fuchsia"] {
679
+ --primary: oklch(0.452 0.211 324.591);
680
+ --primary-foreground: oklch(0.977 0.017 320.058);
681
+ --secondary: oklch(0.274 0.006 286.033);
682
+ --secondary-foreground: oklch(0.985 0 0);
683
+ --chart-1: oklch(0.833 0.145 321.434);
684
+ --chart-2: oklch(0.667 0.295 322.15);
685
+ --chart-3: oklch(0.591 0.293 322.896);
686
+ --chart-4: oklch(0.518 0.253 323.949);
687
+ --chart-5: oklch(0.452 0.211 324.591);
688
+ --sidebar-primary: oklch(0.667 0.295 322.15);
689
+ --sidebar-primary-foreground: oklch(0.977 0.017 320.058);
690
+ }
691
+
692
+ /* Green */
693
+
694
+ .theme-green,
695
+ [data-shadcn-theme="green"] {
696
+ --primary: oklch(0.527 0.154 150.069);
697
+ --primary-foreground: oklch(0.982 0.018 155.826);
698
+ --secondary: oklch(0.967 0.001 286.375);
699
+ --secondary-foreground: oklch(0.21 0.006 285.885);
700
+ --chart-1: oklch(0.871 0.15 154.449);
701
+ --chart-2: oklch(0.723 0.219 149.579);
702
+ --chart-3: oklch(0.627 0.194 149.214);
703
+ --chart-4: oklch(0.527 0.154 150.069);
704
+ --chart-5: oklch(0.448 0.119 151.328);
705
+ --sidebar-primary: oklch(0.627 0.194 149.214);
706
+ --sidebar-primary-foreground: oklch(0.982 0.018 155.826);
707
+ }
708
+
709
+ .dark .theme-green,
710
+ .dark[data-shadcn-theme="green"] {
711
+ --primary: oklch(0.448 0.119 151.328);
712
+ --primary-foreground: oklch(0.982 0.018 155.826);
713
+ --secondary: oklch(0.274 0.006 286.033);
714
+ --secondary-foreground: oklch(0.985 0 0);
715
+ --chart-1: oklch(0.871 0.15 154.449);
716
+ --chart-2: oklch(0.723 0.219 149.579);
717
+ --chart-3: oklch(0.627 0.194 149.214);
718
+ --chart-4: oklch(0.527 0.154 150.069);
719
+ --chart-5: oklch(0.448 0.119 151.328);
720
+ --sidebar-primary: oklch(0.723 0.219 149.579);
721
+ --sidebar-primary-foreground: oklch(0.982 0.018 155.826);
722
+ }
723
+
724
+ /* Indigo */
725
+
726
+ .theme-indigo,
727
+ [data-shadcn-theme="indigo"] {
728
+ --primary: oklch(0.457 0.24 277.023);
729
+ --primary-foreground: oklch(0.962 0.018 272.314);
730
+ --secondary: oklch(0.967 0.001 286.375);
731
+ --secondary-foreground: oklch(0.21 0.006 285.885);
732
+ --chart-1: oklch(0.785 0.115 274.713);
733
+ --chart-2: oklch(0.585 0.233 277.117);
734
+ --chart-3: oklch(0.511 0.262 276.966);
735
+ --chart-4: oklch(0.457 0.24 277.023);
736
+ --chart-5: oklch(0.398 0.195 277.366);
737
+ --sidebar-primary: oklch(0.511 0.262 276.966);
738
+ --sidebar-primary-foreground: oklch(0.962 0.018 272.314);
739
+ }
740
+
741
+ .dark .theme-indigo,
742
+ .dark[data-shadcn-theme="indigo"] {
743
+ --primary: oklch(0.398 0.195 277.366);
744
+ --primary-foreground: oklch(0.962 0.018 272.314);
745
+ --secondary: oklch(0.274 0.006 286.033);
746
+ --secondary-foreground: oklch(0.985 0 0);
747
+ --chart-1: oklch(0.785 0.115 274.713);
748
+ --chart-2: oklch(0.585 0.233 277.117);
749
+ --chart-3: oklch(0.511 0.262 276.966);
750
+ --chart-4: oklch(0.457 0.24 277.023);
751
+ --chart-5: oklch(0.398 0.195 277.366);
752
+ --sidebar-primary: oklch(0.585 0.233 277.117);
753
+ --sidebar-primary-foreground: oklch(0.962 0.018 272.314);
754
+ }
755
+
756
+ /* Lime */
757
+
758
+ .theme-lime,
759
+ [data-shadcn-theme="lime"] {
760
+ --primary: oklch(0.841 0.238 128.85);
761
+ --primary-foreground: oklch(0.405 0.101 131.063);
762
+ --secondary: oklch(0.967 0.001 286.375);
763
+ --secondary-foreground: oklch(0.21 0.006 285.885);
764
+ --chart-1: oklch(0.897 0.196 126.665);
765
+ --chart-2: oklch(0.768 0.233 130.85);
766
+ --chart-3: oklch(0.648 0.2 131.684);
767
+ --chart-4: oklch(0.532 0.157 131.589);
768
+ --chart-5: oklch(0.453 0.124 130.933);
769
+ --sidebar-primary: oklch(0.648 0.2 131.684);
770
+ --sidebar-primary-foreground: oklch(0.986 0.031 120.757);
771
+ }
772
+
773
+ .dark .theme-lime,
774
+ .dark[data-shadcn-theme="lime"] {
775
+ --primary: oklch(0.768 0.233 130.85);
776
+ --primary-foreground: oklch(0.405 0.101 131.063);
777
+ --secondary: oklch(0.274 0.006 286.033);
778
+ --secondary-foreground: oklch(0.985 0 0);
779
+ --chart-1: oklch(0.897 0.196 126.665);
780
+ --chart-2: oklch(0.768 0.233 130.85);
781
+ --chart-3: oklch(0.648 0.2 131.684);
782
+ --chart-4: oklch(0.532 0.157 131.589);
783
+ --chart-5: oklch(0.453 0.124 130.933);
784
+ --sidebar-primary: oklch(0.768 0.233 130.85);
785
+ --sidebar-primary-foreground: oklch(0.274 0.072 132.109);
786
+ }
787
+
788
+ /* Orange */
789
+
790
+ .theme-orange,
791
+ [data-shadcn-theme="orange"] {
792
+ --primary: oklch(0.553 0.195 38.402);
793
+ --primary-foreground: oklch(0.98 0.016 73.684);
794
+ --secondary: oklch(0.967 0.001 286.375);
795
+ --secondary-foreground: oklch(0.21 0.006 285.885);
796
+ --chart-1: oklch(0.837 0.128 66.29);
797
+ --chart-2: oklch(0.705 0.213 47.604);
798
+ --chart-3: oklch(0.646 0.222 41.116);
799
+ --chart-4: oklch(0.553 0.195 38.402);
800
+ --chart-5: oklch(0.47 0.157 37.304);
801
+ --sidebar-primary: oklch(0.646 0.222 41.116);
802
+ --sidebar-primary-foreground: oklch(0.98 0.016 73.684);
803
+ }
804
+
805
+ .dark .theme-orange,
806
+ .dark[data-shadcn-theme="orange"] {
807
+ --primary: oklch(0.47 0.157 37.304);
808
+ --primary-foreground: oklch(0.98 0.016 73.684);
809
+ --secondary: oklch(0.274 0.006 286.033);
810
+ --secondary-foreground: oklch(0.985 0 0);
811
+ --chart-1: oklch(0.837 0.128 66.29);
812
+ --chart-2: oklch(0.705 0.213 47.604);
813
+ --chart-3: oklch(0.646 0.222 41.116);
814
+ --chart-4: oklch(0.553 0.195 38.402);
815
+ --chart-5: oklch(0.47 0.157 37.304);
816
+ --sidebar-primary: oklch(0.705 0.213 47.604);
817
+ --sidebar-primary-foreground: oklch(0.98 0.016 73.684);
818
+ }
819
+
820
+ /* Pink */
821
+
822
+ .theme-pink,
823
+ [data-shadcn-theme="pink"] {
824
+ --primary: oklch(0.525 0.223 3.958);
825
+ --primary-foreground: oklch(0.971 0.014 343.198);
826
+ --secondary: oklch(0.967 0.001 286.375);
827
+ --secondary-foreground: oklch(0.21 0.006 285.885);
828
+ --chart-1: oklch(0.823 0.12 346.018);
829
+ --chart-2: oklch(0.656 0.241 354.308);
830
+ --chart-3: oklch(0.592 0.249 0.584);
831
+ --chart-4: oklch(0.525 0.223 3.958);
832
+ --chart-5: oklch(0.459 0.187 3.815);
833
+ --sidebar-primary: oklch(0.592 0.249 0.584);
834
+ --sidebar-primary-foreground: oklch(0.971 0.014 343.198);
835
+ }
836
+
837
+ .dark .theme-pink,
838
+ .dark[data-shadcn-theme="pink"] {
839
+ --primary: oklch(0.459 0.187 3.815);
840
+ --primary-foreground: oklch(0.971 0.014 343.198);
841
+ --secondary: oklch(0.274 0.006 286.033);
842
+ --secondary-foreground: oklch(0.985 0 0);
843
+ --chart-1: oklch(0.823 0.12 346.018);
844
+ --chart-2: oklch(0.656 0.241 354.308);
845
+ --chart-3: oklch(0.592 0.249 0.584);
846
+ --chart-4: oklch(0.525 0.223 3.958);
847
+ --chart-5: oklch(0.459 0.187 3.815);
848
+ --sidebar-primary: oklch(0.656 0.241 354.308);
849
+ --sidebar-primary-foreground: oklch(0.971 0.014 343.198);
850
+ }
851
+
852
+ /* Purple */
853
+
854
+ .theme-purple,
855
+ [data-shadcn-theme="purple"] {
856
+ --primary: oklch(0.496 0.265 301.924);
857
+ --primary-foreground: oklch(0.977 0.014 308.299);
858
+ --secondary: oklch(0.967 0.001 286.375);
859
+ --secondary-foreground: oklch(0.21 0.006 285.885);
860
+ --chart-1: oklch(0.827 0.119 306.383);
861
+ --chart-2: oklch(0.627 0.265 303.9);
862
+ --chart-3: oklch(0.558 0.288 302.321);
863
+ --chart-4: oklch(0.496 0.265 301.924);
864
+ --chart-5: oklch(0.438 0.218 303.724);
865
+ --sidebar-primary: oklch(0.558 0.288 302.321);
866
+ --sidebar-primary-foreground: oklch(0.977 0.014 308.299);
867
+ }
868
+
869
+ .dark .theme-purple,
870
+ .dark[data-shadcn-theme="purple"] {
871
+ --primary: oklch(0.438 0.218 303.724);
872
+ --primary-foreground: oklch(0.977 0.014 308.299);
873
+ --secondary: oklch(0.274 0.006 286.033);
874
+ --secondary-foreground: oklch(0.985 0 0);
875
+ --chart-1: oklch(0.827 0.119 306.383);
876
+ --chart-2: oklch(0.627 0.265 303.9);
877
+ --chart-3: oklch(0.558 0.288 302.321);
878
+ --chart-4: oklch(0.496 0.265 301.924);
879
+ --chart-5: oklch(0.438 0.218 303.724);
880
+ --sidebar-primary: oklch(0.627 0.265 303.9);
881
+ --sidebar-primary-foreground: oklch(0.977 0.014 308.299);
882
+ }
883
+
884
+ /* Red */
885
+
886
+ .theme-red,
887
+ [data-shadcn-theme="red"] {
888
+ --primary: oklch(0.505 0.213 27.518);
889
+ --primary-foreground: oklch(0.971 0.013 17.38);
890
+ --secondary: oklch(0.967 0.001 286.375);
891
+ --secondary-foreground: oklch(0.21 0.006 285.885);
892
+ --chart-1: oklch(0.808 0.114 19.571);
893
+ --chart-2: oklch(0.637 0.237 25.331);
894
+ --chart-3: oklch(0.577 0.245 27.325);
895
+ --chart-4: oklch(0.505 0.213 27.518);
896
+ --chart-5: oklch(0.444 0.177 26.899);
897
+ --sidebar-primary: oklch(0.577 0.245 27.325);
898
+ --sidebar-primary-foreground: oklch(0.971 0.013 17.38);
899
+ }
900
+
901
+ .dark .theme-red,
902
+ .dark[data-shadcn-theme="red"] {
903
+ --primary: oklch(0.444 0.177 26.899);
904
+ --primary-foreground: oklch(0.971 0.013 17.38);
905
+ --secondary: oklch(0.274 0.006 286.033);
906
+ --secondary-foreground: oklch(0.985 0 0);
907
+ --chart-1: oklch(0.808 0.114 19.571);
908
+ --chart-2: oklch(0.637 0.237 25.331);
909
+ --chart-3: oklch(0.577 0.245 27.325);
910
+ --chart-4: oklch(0.505 0.213 27.518);
911
+ --chart-5: oklch(0.444 0.177 26.899);
912
+ --sidebar-primary: oklch(0.637 0.237 25.331);
913
+ --sidebar-primary-foreground: oklch(0.971 0.013 17.38);
914
+ }
915
+
916
+ /* Rose */
917
+
918
+ .theme-rose,
919
+ [data-shadcn-theme="rose"] {
920
+ --primary: oklch(0.514 0.222 16.935);
921
+ --primary-foreground: oklch(0.969 0.015 12.422);
922
+ --secondary: oklch(0.967 0.001 286.375);
923
+ --secondary-foreground: oklch(0.21 0.006 285.885);
924
+ --chart-1: oklch(0.81 0.117 11.638);
925
+ --chart-2: oklch(0.645 0.246 16.439);
926
+ --chart-3: oklch(0.586 0.253 17.585);
927
+ --chart-4: oklch(0.514 0.222 16.935);
928
+ --chart-5: oklch(0.455 0.188 13.697);
929
+ --sidebar-primary: oklch(0.586 0.253 17.585);
930
+ --sidebar-primary-foreground: oklch(0.969 0.015 12.422);
931
+ }
932
+
933
+ .dark .theme-rose,
934
+ .dark[data-shadcn-theme="rose"] {
935
+ --primary: oklch(0.455 0.188 13.697);
936
+ --primary-foreground: oklch(0.969 0.015 12.422);
937
+ --secondary: oklch(0.274 0.006 286.033);
938
+ --secondary-foreground: oklch(0.985 0 0);
939
+ --chart-1: oklch(0.81 0.117 11.638);
940
+ --chart-2: oklch(0.645 0.246 16.439);
941
+ --chart-3: oklch(0.586 0.253 17.585);
942
+ --chart-4: oklch(0.514 0.222 16.935);
943
+ --chart-5: oklch(0.455 0.188 13.697);
944
+ --sidebar: oklch(0.21 0.006 285.885);
945
+ --sidebar-primary: oklch(0.645 0.246 16.439);
946
+ --sidebar-primary-foreground: oklch(0.969 0.015 12.422);
947
+ }
948
+
949
+ /* Sky */
950
+
951
+ .theme-sky,
952
+ [data-shadcn-theme="sky"] {
953
+ --primary: oklch(0.5 0.134 242.749);
954
+ --primary-foreground: oklch(0.977 0.013 236.62);
955
+ --secondary: oklch(0.967 0.001 286.375);
956
+ --secondary-foreground: oklch(0.21 0.006 285.885);
957
+ --chart-1: oklch(0.828 0.111 230.318);
958
+ --chart-2: oklch(0.685 0.169 237.323);
959
+ --chart-3: oklch(0.588 0.158 241.966);
960
+ --chart-4: oklch(0.5 0.134 242.749);
961
+ --chart-5: oklch(0.443 0.11 240.79);
962
+ --sidebar-primary: oklch(0.588 0.158 241.966);
963
+ --sidebar-primary-foreground: oklch(0.977 0.013 236.62);
964
+ }
965
+
966
+ .dark .theme-sky,
967
+ .dark[data-shadcn-theme="sky"] {
968
+ --primary: oklch(0.443 0.11 240.79);
969
+ --primary-foreground: oklch(0.977 0.013 236.62);
970
+ --secondary: oklch(0.274 0.006 286.033);
971
+ --secondary-foreground: oklch(0.985 0 0);
972
+ --chart-1: oklch(0.828 0.111 230.318);
973
+ --chart-2: oklch(0.685 0.169 237.323);
974
+ --chart-3: oklch(0.588 0.158 241.966);
975
+ --chart-4: oklch(0.5 0.134 242.749);
976
+ --chart-5: oklch(0.443 0.11 240.79);
977
+ --sidebar-primary: oklch(0.685 0.169 237.323);
978
+ --sidebar-primary-foreground: oklch(0.293 0.066 243.157);
979
+ }
980
+
981
+ /* Teal */
982
+
983
+ .theme-teal,
984
+ [data-shadcn-theme="teal"] {
985
+ --primary: oklch(0.511 0.096 186.391);
986
+ --primary-foreground: oklch(0.984 0.014 180.72);
987
+ --secondary: oklch(0.967 0.001 286.375);
988
+ --secondary-foreground: oklch(0.21 0.006 285.885);
989
+ --chart-1: oklch(0.855 0.138 181.071);
990
+ --chart-2: oklch(0.704 0.14 182.503);
991
+ --chart-3: oklch(0.6 0.118 184.704);
992
+ --chart-4: oklch(0.511 0.096 186.391);
993
+ --chart-5: oklch(0.437 0.078 188.216);
994
+ --sidebar-primary: oklch(0.6 0.118 184.704);
995
+ --sidebar-primary-foreground: oklch(0.984 0.014 180.72);
996
+ }
997
+
998
+ .dark .theme-teal,
999
+ .dark[data-shadcn-theme="teal"] {
1000
+ --primary: oklch(0.437 0.078 188.216);
1001
+ --primary-foreground: oklch(0.984 0.014 180.72);
1002
+ --secondary: oklch(0.274 0.006 286.033);
1003
+ --secondary-foreground: oklch(0.985 0 0);
1004
+ --chart-1: oklch(0.855 0.138 181.071);
1005
+ --chart-2: oklch(0.704 0.14 182.503);
1006
+ --chart-3: oklch(0.6 0.118 184.704);
1007
+ --chart-4: oklch(0.511 0.096 186.391);
1008
+ --chart-5: oklch(0.437 0.078 188.216);
1009
+ --sidebar-primary: oklch(0.704 0.14 182.503);
1010
+ --sidebar-primary-foreground: oklch(0.277 0.046 192.524);
1011
+ }
1012
+
1013
+ /* Violet */
1014
+
1015
+ .theme-violet,
1016
+ [data-shadcn-theme="violet"] {
1017
+ --primary: oklch(0.491 0.27 292.581);
1018
+ --primary-foreground: oklch(0.969 0.016 293.756);
1019
+ --secondary: oklch(0.967 0.001 286.375);
1020
+ --secondary-foreground: oklch(0.21 0.006 285.885);
1021
+ --chart-1: oklch(0.811 0.111 293.571);
1022
+ --chart-2: oklch(0.606 0.25 292.717);
1023
+ --chart-3: oklch(0.541 0.281 293.009);
1024
+ --chart-4: oklch(0.491 0.27 292.581);
1025
+ --chart-5: oklch(0.432 0.232 292.759);
1026
+ --sidebar-primary: oklch(0.541 0.281 293.009);
1027
+ --sidebar-primary-foreground: oklch(0.969 0.016 293.756);
1028
+ }
1029
+
1030
+ .dark .theme-violet,
1031
+ .dark[data-shadcn-theme="violet"] {
1032
+ --primary: oklch(0.432 0.232 292.759);
1033
+ --primary-foreground: oklch(0.969 0.016 293.756);
1034
+ --secondary: oklch(0.274 0.006 286.033);
1035
+ --secondary-foreground: oklch(0.985 0 0);
1036
+ --chart-1: oklch(0.811 0.111 293.571);
1037
+ --chart-2: oklch(0.606 0.25 292.717);
1038
+ --chart-3: oklch(0.541 0.281 293.009);
1039
+ --chart-4: oklch(0.491 0.27 292.581);
1040
+ --chart-5: oklch(0.432 0.232 292.759);
1041
+ --sidebar-primary: oklch(0.606 0.25 292.717);
1042
+ --sidebar-primary-foreground: oklch(0.969 0.016 293.756);
1043
+ }
1044
+
1045
+ /* Yellow */
1046
+
1047
+ .theme-yellow,
1048
+ [data-shadcn-theme="yellow"] {
1049
+ --primary: oklch(0.852 0.199 91.936);
1050
+ --primary-foreground: oklch(0.421 0.095 57.708);
1051
+ --secondary: oklch(0.967 0.001 286.375);
1052
+ --secondary-foreground: oklch(0.21 0.006 285.885);
1053
+ --chart-1: oklch(0.905 0.182 98.111);
1054
+ --chart-2: oklch(0.795 0.184 86.047);
1055
+ --chart-3: oklch(0.681 0.162 75.834);
1056
+ --chart-4: oklch(0.554 0.135 66.442);
1057
+ --chart-5: oklch(0.476 0.114 61.907);
1058
+ --sidebar-primary: oklch(0.681 0.162 75.834);
1059
+ --sidebar-primary-foreground: oklch(0.987 0.026 102.212);
1060
+ }
1061
+
1062
+ .dark .theme-yellow,
1063
+ .dark[data-shadcn-theme="yellow"] {
1064
+ --primary: oklch(0.795 0.184 86.047);
1065
+ --primary-foreground: oklch(0.421 0.095 57.708);
1066
+ --secondary: oklch(0.274 0.006 286.033);
1067
+ --secondary-foreground: oklch(0.985 0 0);
1068
+ --chart-1: oklch(0.905 0.182 98.111);
1069
+ --chart-2: oklch(0.795 0.184 86.047);
1070
+ --chart-3: oklch(0.681 0.162 75.834);
1071
+ --chart-4: oklch(0.554 0.135 66.442);
1072
+ --chart-5: oklch(0.476 0.114 61.907);
1073
+ --sidebar-primary: oklch(0.795 0.184 86.047);
1074
+ --sidebar-primary-foreground: oklch(0.987 0.026 102.212);
1075
+ }