railsui 3.1.5 → 3.2.1

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 (533) hide show
  1. checksums.yaml +4 -4
  2. data/.claude/settings.local.json +10 -0
  3. data/Gemfile.lock +29 -27
  4. data/README.md +1 -1
  5. data/app/assets/images/tailwind-corgie-thumbnail.jpg +0 -0
  6. data/app/assets/stylesheets/railsui/railsui.css +18 -0
  7. data/app/helpers/railsui/application_helper.rb +22 -17
  8. data/app/helpers/railsui/host_route_fallback_helper.rb +18 -0
  9. data/app/javascript/controllers/alert_controller.js +0 -0
  10. data/app/models/railsui/default.rb +28 -109
  11. data/app/views/railsui/admin/fields/_color.html.erb +6 -1
  12. data/app/views/railsui/admin/fields/_theme.html.erb +16 -8
  13. data/app/views/railsui/shared/_flash_messages.html.erb +2 -2
  14. data/app/views/railsui/shared/_full_access_cta.html.erb +27 -0
  15. data/app/views/railsui/shared/_preview.html.erb +1 -1
  16. data/app/views/railsui/shared/_rui_email_preview.html.erb +60 -3
  17. data/app/views/railsui/systems/forms/form_builder.html.erb +171 -0
  18. data/app/views/railsui/themes/corgie/_components.html.erb +7 -0
  19. data/app/views/railsui/themes/corgie/_content.html.erb +9 -0
  20. data/app/views/railsui/themes/corgie/_fonts.html.erb +0 -0
  21. data/app/views/railsui/themes/corgie/_forms.html.erb +19 -0
  22. data/app/views/railsui/themes/corgie/_icons.html.erb +125 -0
  23. data/app/views/railsui/themes/corgie/_nav.html.erb +166 -0
  24. data/app/views/railsui/themes/corgie/_scaffolds.html.erb +42 -0
  25. data/app/views/railsui/themes/corgie/authentication/_overview.html.erb +5 -0
  26. data/app/views/railsui/themes/corgie/authentication/devise/_change_password.html.erb +74 -0
  27. data/app/views/railsui/themes/corgie/authentication/devise/_confirmation.html.erb +63 -0
  28. data/app/views/railsui/themes/corgie/authentication/devise/_edit.html.erb +103 -0
  29. data/app/views/railsui/themes/corgie/authentication/devise/_overview.html.erb +225 -0
  30. data/app/views/railsui/themes/corgie/authentication/devise/_reset_password.html.erb +60 -0
  31. data/app/views/railsui/themes/corgie/authentication/devise/_signin.html.erb +93 -0
  32. data/app/views/railsui/themes/corgie/authentication/devise/_signup.html.erb +98 -0
  33. data/app/views/railsui/themes/corgie/authentication/devise/_unlocks.html.erb +60 -0
  34. data/app/views/railsui/themes/corgie/authentication/static/_change_password.html.erb +67 -0
  35. data/app/views/railsui/themes/corgie/authentication/static/_confirmation.html.erb +58 -0
  36. data/app/views/railsui/themes/corgie/authentication/static/_overview.html.erb +204 -0
  37. data/app/views/railsui/themes/corgie/authentication/static/_reset_password.html.erb +59 -0
  38. data/app/views/railsui/themes/corgie/authentication/static/_signin.html.erb +102 -0
  39. data/app/views/railsui/themes/corgie/authentication/static/_signup.html.erb +108 -0
  40. data/app/views/railsui/themes/corgie/authentication/static/_unlocks.html.erb +60 -0
  41. data/app/views/railsui/themes/corgie/components/_accordion.html.erb +17 -0
  42. data/app/views/railsui/themes/corgie/components/_alert.html.erb +23 -0
  43. data/app/views/railsui/themes/corgie/components/_avatar.html.erb +13 -0
  44. data/app/views/railsui/themes/corgie/components/_badge.html.erb +20 -0
  45. data/app/views/railsui/themes/corgie/components/_breadcrumb.html.erb +14 -0
  46. data/app/views/railsui/themes/corgie/components/_button.html.erb +16 -0
  47. data/app/views/railsui/themes/corgie/components/_card.html.erb +23 -0
  48. data/app/views/railsui/themes/corgie/components/_combobox.html.erb +11 -0
  49. data/app/views/railsui/themes/corgie/components/_dropdown.html.erb +22 -0
  50. data/app/views/railsui/themes/corgie/components/_flash.html.erb +17 -0
  51. data/app/views/railsui/themes/corgie/components/_modal.html.erb +27 -0
  52. data/app/views/railsui/themes/corgie/components/_navigation.html.erb +7 -0
  53. data/app/views/railsui/themes/corgie/components/_pagination.html.erb +15 -0
  54. data/app/views/railsui/themes/corgie/components/_tab.html.erb +23 -0
  55. data/app/views/railsui/themes/corgie/components/_toast.html.erb +75 -0
  56. data/app/views/railsui/themes/corgie/components/_tooltip.html.erb +77 -0
  57. data/app/views/railsui/themes/corgie/components/accordion/_contained.html.erb +90 -0
  58. data/app/views/railsui/themes/corgie/components/accordion/_flush.html.erb +92 -0
  59. data/app/views/railsui/themes/corgie/components/alert/_dismissable.html.erb +45 -0
  60. data/app/views/railsui/themes/corgie/components/alert/_with_accent_border.html.erb +32 -0
  61. data/app/views/railsui/themes/corgie/components/alert/_with_actions.html.erb +57 -0
  62. data/app/views/railsui/themes/corgie/components/alert/_with_description.html.erb +41 -0
  63. data/app/views/railsui/themes/corgie/components/alert/_with_list.html.erb +46 -0
  64. data/app/views/railsui/themes/corgie/components/avatar/_circle.html.erb +53 -0
  65. data/app/views/railsui/themes/corgie/components/avatar/_rounded.html.erb +53 -0
  66. data/app/views/railsui/themes/corgie/components/badge/_basic.html.erb +70 -0
  67. data/app/views/railsui/themes/corgie/components/badge/_outline.html.erb +67 -0
  68. data/app/views/railsui/themes/corgie/components/badge/_pill.html.erb +67 -0
  69. data/app/views/railsui/themes/corgie/components/badge/_tag.html.erb +277 -0
  70. data/app/views/railsui/themes/corgie/components/breadcrumb/_article.html.erb +88 -0
  71. data/app/views/railsui/themes/corgie/components/breadcrumb/_base.html.erb +77 -0
  72. data/app/views/railsui/themes/corgie/components/button/_base.html.erb +38 -0
  73. data/app/views/railsui/themes/corgie/components/button/_expanded.html.erb +24 -0
  74. data/app/views/railsui/themes/corgie/components/button/_sizes.html.erb +31 -0
  75. data/app/views/railsui/themes/corgie/components/card/_article.html.erb +119 -0
  76. data/app/views/railsui/themes/corgie/components/card/_base.html.erb +34 -0
  77. data/app/views/railsui/themes/corgie/components/card/_feature.html.erb +54 -0
  78. data/app/views/railsui/themes/corgie/components/card/_team_member.html.erb +60 -0
  79. data/app/views/railsui/themes/corgie/components/card/_value.html.erb +54 -0
  80. data/app/views/railsui/themes/corgie/components/combobox/_base.html.erb +250 -0
  81. data/app/views/railsui/themes/corgie/components/dropdown/_base.html.erb +61 -0
  82. data/app/views/railsui/themes/corgie/components/dropdown/_dropdown.html.erb +24 -0
  83. data/app/views/railsui/themes/corgie/components/dropdown/_dropdown_w_icon.html.erb +27 -0
  84. data/app/views/railsui/themes/corgie/components/dropdown/_right_aligned.html.erb +82 -0
  85. data/app/views/railsui/themes/corgie/components/dropdown/_with_dividers.html.erb +93 -0
  86. data/app/views/railsui/themes/corgie/components/dropdown/_with_icons.html.erb +85 -0
  87. data/app/views/railsui/themes/corgie/components/dropdown/tutorial/_1.html.erb +44 -0
  88. data/app/views/railsui/themes/corgie/components/dropdown/tutorial/_2.html.erb +16 -0
  89. data/app/views/railsui/themes/corgie/components/dropdown/tutorial/_3.html.erb +16 -0
  90. data/app/views/railsui/themes/corgie/components/dropdown/tutorial/_4.html.erb +27 -0
  91. data/app/views/railsui/themes/corgie/components/dropdown/tutorial/_dependencies.html.erb +3 -0
  92. data/app/views/railsui/themes/corgie/components/dropdown/tutorial/_tutorial.html.erb +25 -0
  93. data/app/views/railsui/themes/corgie/components/flash/_alert.html.erb +29 -0
  94. data/app/views/railsui/themes/corgie/components/flash/_dynamic.html.erb +46 -0
  95. data/app/views/railsui/themes/corgie/components/flash/_notice.html.erb +29 -0
  96. data/app/views/railsui/themes/corgie/components/modal/_base.html.erb +110 -0
  97. data/app/views/railsui/themes/corgie/components/modal/_centered_dual_action.html.erb +124 -0
  98. data/app/views/railsui/themes/corgie/components/modal/_dismiss_icon.html.erb +124 -0
  99. data/app/views/railsui/themes/corgie/components/modal/_settings.html.erb +201 -0
  100. data/app/views/railsui/themes/corgie/components/modal/_single_action.html.erb +119 -0
  101. data/app/views/railsui/themes/corgie/components/modal/_with_form.html.erb +148 -0
  102. data/app/views/railsui/themes/corgie/components/navigation/_base.html.erb +215 -0
  103. data/app/views/railsui/themes/corgie/components/navigation/_chat.html.erb +194 -0
  104. data/app/views/railsui/themes/corgie/components/navigation/_nav_preview.html.erb +9 -0
  105. data/app/views/railsui/themes/corgie/components/pagination/_contained.html.erb +131 -0
  106. data/app/views/railsui/themes/corgie/components/pagination/_pagy.html.erb +97 -0
  107. data/app/views/railsui/themes/corgie/components/pagination/_simple.html.erb +114 -0
  108. data/app/views/railsui/themes/corgie/components/tab/_base.html.erb +101 -0
  109. data/app/views/railsui/themes/corgie/components/tab/_pills.html.erb +102 -0
  110. data/app/views/railsui/themes/corgie/components/tab/_rounded.html.erb +104 -0
  111. data/app/views/railsui/themes/corgie/components/tab/_vertical.html.erb +145 -0
  112. data/app/views/railsui/themes/corgie/components/tab/_with_icons.html.erb +138 -0
  113. data/app/views/railsui/themes/corgie/components/toast/_base.html.erb +98 -0
  114. data/app/views/railsui/themes/corgie/components/tooltip/_base.html.erb +51 -0
  115. data/app/views/railsui/themes/corgie/content/_image.html.erb +31 -0
  116. data/app/views/railsui/themes/corgie/content/_table.html.erb +21 -0
  117. data/app/views/railsui/themes/corgie/content/_typography.html.erb +47 -0
  118. data/app/views/railsui/themes/corgie/content/image/_object_contain.html.erb +31 -0
  119. data/app/views/railsui/themes/corgie/content/image/_object_cover.html.erb +32 -0
  120. data/app/views/railsui/themes/corgie/content/image/_object_fill.html.erb +32 -0
  121. data/app/views/railsui/themes/corgie/content/image/_object_scale_down.html.erb +34 -0
  122. data/app/views/railsui/themes/corgie/content/image/_responsive.html.erb +24 -0
  123. data/app/views/railsui/themes/corgie/content/table/_bordered.html.erb +93 -0
  124. data/app/views/railsui/themes/corgie/content/table/_borderless.html.erb +92 -0
  125. data/app/views/railsui/themes/corgie/content/table/_comparison.html.erb +494 -0
  126. data/app/views/railsui/themes/corgie/content/typography/_blockquote.html.erb +41 -0
  127. data/app/views/railsui/themes/corgie/content/typography/_display_headings.html.erb +70 -0
  128. data/app/views/railsui/themes/corgie/content/typography/_fonts.html.erb +30 -0
  129. data/app/views/railsui/themes/corgie/content/typography/_headings.html.erb +88 -0
  130. data/app/views/railsui/themes/corgie/content/typography/_inline_formatting.html.erb +44 -0
  131. data/app/views/railsui/themes/corgie/content/typography/_lead_paragraph.html.erb +26 -0
  132. data/app/views/railsui/themes/corgie/content/typography/_lists.html.erb +82 -0
  133. data/app/views/railsui/themes/corgie/content/typography/_paragraphs.html.erb +33 -0
  134. data/app/views/railsui/themes/corgie/forms/_action_text.html.erb +54 -0
  135. data/app/views/railsui/themes/corgie/forms/_checkbox.html.erb +60 -0
  136. data/app/views/railsui/themes/corgie/forms/_form_builder.html.erb +487 -0
  137. data/app/views/railsui/themes/corgie/forms/_input.html.erb +378 -0
  138. data/app/views/railsui/themes/corgie/forms/_input_group.html.erb +485 -0
  139. data/app/views/railsui/themes/corgie/forms/_radio.html.erb +92 -0
  140. data/app/views/railsui/themes/corgie/forms/_select.html.erb +118 -0
  141. data/app/views/railsui/themes/corgie/forms/_switch.html.erb +60 -0
  142. data/app/views/railsui/themes/corgie/forms/_validation.html.erb +52 -0
  143. data/app/views/railsui/themes/corgie/mailers/_devise.html.erb +44 -0
  144. data/app/views/railsui/themes/corgie/mailers/_layout.html.erb +536 -0
  145. data/app/views/railsui/themes/corgie/mailers/_mailer_preview.html.erb +523 -0
  146. data/app/views/railsui/themes/corgie/mailers/_minimal.html.erb +63 -0
  147. data/app/views/railsui/themes/corgie/mailers/_promotion.html.erb +62 -0
  148. data/app/views/railsui/themes/corgie/mailers/_transactional.html.erb +133 -0
  149. data/app/views/railsui/themes/corgie/mailers/devise/_confirmation_instructions.html.erb +34 -0
  150. data/app/views/railsui/themes/corgie/mailers/devise/_email_changed.html.erb +32 -0
  151. data/app/views/railsui/themes/corgie/mailers/devise/_password_changed.html.erb +25 -0
  152. data/app/views/railsui/themes/corgie/mailers/devise/_reset_password_instructions.html.erb +33 -0
  153. data/app/views/railsui/themes/corgie/mailers/devise/_unlock_instructions.html.erb +32 -0
  154. data/app/views/railsui/themes/corgie/scaffolds/_edit.html.erb +88 -0
  155. data/app/views/railsui/themes/corgie/scaffolds/_index.html.erb +88 -0
  156. data/app/views/railsui/themes/corgie/scaffolds/_new.html.erb +80 -0
  157. data/app/views/railsui/themes/corgie/scaffolds/_partial.html.erb +56 -0
  158. data/app/views/railsui/themes/corgie/scaffolds/_show.html.erb +85 -0
  159. data/app/views/railsui/themes/hound/_forms.html.erb +2 -0
  160. data/app/views/railsui/themes/hound/_nav.html.erb +2 -0
  161. data/app/views/railsui/themes/hound/authentication/devise/_change_password.html.erb +1 -27
  162. data/app/views/railsui/themes/hound/authentication/devise/_confirmation.html.erb +1 -20
  163. data/app/views/railsui/themes/hound/authentication/devise/_edit.html.erb +1 -44
  164. data/app/views/railsui/themes/hound/authentication/devise/_overview.html.erb +3 -51
  165. data/app/views/railsui/themes/hound/authentication/devise/_reset_password.html.erb +1 -17
  166. data/app/views/railsui/themes/hound/authentication/devise/_signin.html.erb +1 -30
  167. data/app/views/railsui/themes/hound/authentication/devise/_signup.html.erb +1 -31
  168. data/app/views/railsui/themes/hound/authentication/devise/_unlocks.html.erb +1 -17
  169. data/app/views/railsui/themes/hound/authentication/static/_change_password.html.erb +1 -32
  170. data/app/views/railsui/themes/hound/authentication/static/_confirmation.html.erb +1 -23
  171. data/app/views/railsui/themes/hound/authentication/static/_edit.html.erb +1 -39
  172. data/app/views/railsui/themes/hound/authentication/static/_overview.html.erb +2 -40
  173. data/app/views/railsui/themes/hound/authentication/static/_reset_password.html.erb +1 -22
  174. data/app/views/railsui/themes/hound/authentication/static/_signin.html.erb +1 -35
  175. data/app/views/railsui/themes/hound/authentication/static/_signup.html.erb +1 -31
  176. data/app/views/railsui/themes/hound/authentication/static/_unlocks.html.erb +1 -20
  177. data/app/views/railsui/themes/hound/components/_toast.html.erb +0 -3
  178. data/app/views/railsui/themes/hound/components/accordion/_contained.html.erb +0 -27
  179. data/app/views/railsui/themes/hound/components/accordion/_flush.html.erb +0 -27
  180. data/app/views/railsui/themes/hound/components/alert/_dismissable.html.erb +0 -8
  181. data/app/views/railsui/themes/hound/components/alert/_with_accent_border.html.erb +0 -7
  182. data/app/views/railsui/themes/hound/components/alert/_with_actions.html.erb +0 -11
  183. data/app/views/railsui/themes/hound/components/alert/_with_description.html.erb +0 -7
  184. data/app/views/railsui/themes/hound/components/alert/_with_list.html.erb +0 -8
  185. data/app/views/railsui/themes/hound/components/avatar/_circle.html.erb +0 -12
  186. data/app/views/railsui/themes/hound/components/avatar/_rounded.html.erb +0 -12
  187. data/app/views/railsui/themes/hound/components/badge/_basic.html.erb +0 -22
  188. data/app/views/railsui/themes/hound/components/badge/_outline.html.erb +0 -22
  189. data/app/views/railsui/themes/hound/components/badge/_pill.html.erb +0 -22
  190. data/app/views/railsui/themes/hound/components/badge/_tag.html.erb +0 -52
  191. data/app/views/railsui/themes/hound/components/breadcrumb/_base.html.erb +0 -14
  192. data/app/views/railsui/themes/hound/components/breadcrumb/_contained.html.erb +0 -14
  193. data/app/views/railsui/themes/hound/components/button/_base.html.erb +0 -10
  194. data/app/views/railsui/themes/hound/components/button/_expanded.html.erb +0 -3
  195. data/app/views/railsui/themes/hound/components/button/_sizes.html.erb +0 -5
  196. data/app/views/railsui/themes/hound/components/card/_base.html.erb +0 -6
  197. data/app/views/railsui/themes/hound/components/card/_user_card.html.erb +0 -13
  198. data/app/views/railsui/themes/hound/components/card/_user_card_dropdown.html.erb +0 -20
  199. data/app/views/railsui/themes/hound/components/card/_user_card_with_actions.html.erb +0 -18
  200. data/app/views/railsui/themes/hound/components/card/_with_action.html.erb +0 -13
  201. data/app/views/railsui/themes/hound/components/card/_with_header.html.erb +0 -43
  202. data/app/views/railsui/themes/hound/components/combobox/_base.html.erb +0 -40
  203. data/app/views/railsui/themes/hound/components/dropdown/_base.html.erb +0 -10
  204. data/app/views/railsui/themes/hound/components/dropdown/_right_aligned.html.erb +0 -14
  205. data/app/views/railsui/themes/hound/components/dropdown/_with_dividers.html.erb +0 -14
  206. data/app/views/railsui/themes/hound/components/dropdown/_with_icons.html.erb +0 -20
  207. data/app/views/railsui/themes/hound/components/flash/_alert.html.erb +0 -5
  208. data/app/views/railsui/themes/hound/components/flash/_dynamic.html.erb +0 -5
  209. data/app/views/railsui/themes/hound/components/flash/_notice.html.erb +0 -5
  210. data/app/views/railsui/themes/hound/components/modal/_base.html.erb +0 -13
  211. data/app/views/railsui/themes/hound/components/modal/_centered_dual_action.html.erb +0 -16
  212. data/app/views/railsui/themes/hound/components/modal/_dismiss_icon.html.erb +0 -20
  213. data/app/views/railsui/themes/hound/components/modal/_single_action.html.erb +0 -15
  214. data/app/views/railsui/themes/hound/components/modal/_with_form.html.erb +0 -23
  215. data/app/views/railsui/themes/hound/components/navigation/_base.html.erb +1 -41
  216. data/app/views/railsui/themes/hound/components/navigation/_with_action.html.erb +1 -38
  217. data/app/views/railsui/themes/hound/components/navigation/_with_dropdowns.html.erb +1 -105
  218. data/app/views/railsui/themes/hound/components/navigation/_with_search.html.erb +1 -41
  219. data/app/views/railsui/themes/hound/components/pagination/_contained.html.erb +0 -31
  220. data/app/views/railsui/themes/hound/components/pagination/_minimal.html.erb +0 -27
  221. data/app/views/railsui/themes/hound/components/pagination/_pagy.html.erb +47 -72
  222. data/app/views/railsui/themes/hound/components/tab/_base.html.erb +1 -18
  223. data/app/views/railsui/themes/hound/components/tab/_pills.html.erb +1 -18
  224. data/app/views/railsui/themes/hound/components/tab/_rounded.html.erb +1 -18
  225. data/app/views/railsui/themes/hound/components/tab/_with_icons.html.erb +1 -26
  226. data/app/views/railsui/themes/hound/components/toast/_base.html.erb +0 -16
  227. data/app/views/railsui/themes/hound/components/tooltip/_base.html.erb +0 -3
  228. data/app/views/railsui/themes/hound/content/image/_object_contain.html.erb +0 -5
  229. data/app/views/railsui/themes/hound/content/image/_object_cover.html.erb +0 -5
  230. data/app/views/railsui/themes/hound/content/image/_object_fill.html.erb +0 -5
  231. data/app/views/railsui/themes/hound/content/image/_object_scale_down.html.erb +0 -5
  232. data/app/views/railsui/themes/hound/content/image/_responsive.html.erb +0 -4
  233. data/app/views/railsui/themes/hound/content/table/_bordered.html.erb +0 -21
  234. data/app/views/railsui/themes/hound/content/table/_borderless.html.erb +0 -21
  235. data/app/views/railsui/themes/hound/content/typography/_blockquote.html.erb +0 -9
  236. data/app/views/railsui/themes/hound/content/typography/_display_headings.html.erb +0 -9
  237. data/app/views/railsui/themes/hound/content/typography/_headings.html.erb +0 -12
  238. data/app/views/railsui/themes/hound/content/typography/_inline_formatting.html.erb +0 -20
  239. data/app/views/railsui/themes/hound/content/typography/_lead_paragraph.html.erb +0 -5
  240. data/app/views/railsui/themes/hound/content/typography/_lists.html.erb +0 -17
  241. data/app/views/railsui/themes/hound/content/typography/_paragraphs.html.erb +0 -4
  242. data/app/views/railsui/themes/hound/forms/_action_text.html.erb +0 -6
  243. data/app/views/railsui/themes/hound/forms/_checkbox.html.erb +0 -9
  244. data/app/views/railsui/themes/hound/forms/_form_builder.html.erb +487 -0
  245. data/app/views/railsui/themes/hound/forms/_input.html.erb +0 -93
  246. data/app/views/railsui/themes/hound/forms/_input_group.html.erb +0 -83
  247. data/app/views/railsui/themes/hound/forms/_radio.html.erb +0 -13
  248. data/app/views/railsui/themes/hound/forms/_select.html.erb +0 -16
  249. data/app/views/railsui/themes/hound/forms/_switch.html.erb +0 -9
  250. data/app/views/railsui/themes/hound/forms/_validation.html.erb +0 -15
  251. data/app/views/railsui/themes/hound/mailers/_layout.html.erb +1 -432
  252. data/app/views/railsui/themes/hound/mailers/_minimal.html.erb +1 -16
  253. data/app/views/railsui/themes/hound/mailers/_promotion.html.erb +1 -20
  254. data/app/views/railsui/themes/hound/mailers/_transactional.html.erb +1 -43
  255. data/app/views/railsui/themes/hound/mailers/devise/_confirmation_instructions.html.erb +1 -9
  256. data/app/views/railsui/themes/hound/mailers/devise/_email_changed.html.erb +1 -13
  257. data/app/views/railsui/themes/hound/mailers/devise/_password_changed.html.erb +1 -7
  258. data/app/views/railsui/themes/hound/mailers/devise/_reset_password_instructions.html.erb +1 -9
  259. data/app/views/railsui/themes/hound/mailers/devise/_unlock_instructions.html.erb +1 -9
  260. data/app/views/railsui/themes/hound/scaffolds/_edit.html.erb +1 -19
  261. data/app/views/railsui/themes/hound/scaffolds/_index.html.erb +1 -14
  262. data/app/views/railsui/themes/hound/scaffolds/_new.html.erb +1 -17
  263. data/app/views/railsui/themes/hound/scaffolds/_partial.html.erb +1 -17
  264. data/app/views/railsui/themes/hound/scaffolds/_show.html.erb +1 -20
  265. data/app/views/railsui/themes/shepherd/_forms.html.erb +5 -3
  266. data/app/views/railsui/themes/shepherd/_nav.html.erb +2 -0
  267. data/app/views/railsui/themes/shepherd/authentication/devise/_change_password.html.erb +1 -23
  268. data/app/views/railsui/themes/shepherd/authentication/devise/_confirmation.html.erb +1 -12
  269. data/app/views/railsui/themes/shepherd/authentication/devise/_edit.html.erb +1 -74
  270. data/app/views/railsui/themes/shepherd/authentication/devise/_overview.html.erb +2 -57
  271. data/app/views/railsui/themes/shepherd/authentication/devise/_reset_password.html.erb +1 -12
  272. data/app/views/railsui/themes/shepherd/authentication/devise/_signin.html.erb +1 -25
  273. data/app/views/railsui/themes/shepherd/authentication/devise/_signup.html.erb +1 -26
  274. data/app/views/railsui/themes/shepherd/authentication/devise/_unlocks.html.erb +1 -12
  275. data/app/views/railsui/themes/shepherd/authentication/static/_change_password.html.erb +1 -23
  276. data/app/views/railsui/themes/shepherd/authentication/static/_confirmation.html.erb +1 -12
  277. data/app/views/railsui/themes/shepherd/authentication/static/_edit.html.erb +1 -67
  278. data/app/views/railsui/themes/shepherd/authentication/static/_overview.html.erb +1 -56
  279. data/app/views/railsui/themes/shepherd/authentication/static/_reset_password.html.erb +1 -12
  280. data/app/views/railsui/themes/shepherd/authentication/static/_signin.html.erb +1 -24
  281. data/app/views/railsui/themes/shepherd/authentication/static/_signup.html.erb +1 -26
  282. data/app/views/railsui/themes/shepherd/authentication/static/_unlocks.html.erb +1 -16
  283. data/app/views/railsui/themes/shepherd/components/_toast.html.erb +0 -3
  284. data/app/views/railsui/themes/shepherd/components/accordion/_contained.html.erb +0 -28
  285. data/app/views/railsui/themes/shepherd/components/accordion/_flush.html.erb +0 -27
  286. data/app/views/railsui/themes/shepherd/components/alert/_dismissable.html.erb +0 -8
  287. data/app/views/railsui/themes/shepherd/components/alert/_with_accent_border.html.erb +0 -6
  288. data/app/views/railsui/themes/shepherd/components/alert/_with_actions.html.erb +0 -11
  289. data/app/views/railsui/themes/shepherd/components/alert/_with_description.html.erb +0 -7
  290. data/app/views/railsui/themes/shepherd/components/alert/_with_list.html.erb +0 -8
  291. data/app/views/railsui/themes/shepherd/components/avatar/_circle.html.erb +0 -12
  292. data/app/views/railsui/themes/shepherd/components/avatar/_rounded.html.erb +0 -12
  293. data/app/views/railsui/themes/shepherd/components/badge/_basic.html.erb +0 -22
  294. data/app/views/railsui/themes/shepherd/components/badge/_outline.html.erb +0 -22
  295. data/app/views/railsui/themes/shepherd/components/badge/_pill.html.erb +0 -22
  296. data/app/views/railsui/themes/shepherd/components/badge/_tag.html.erb +0 -52
  297. data/app/views/railsui/themes/shepherd/components/breadcrumb/_base.html.erb +0 -14
  298. data/app/views/railsui/themes/shepherd/components/breadcrumb/_contained.html.erb +0 -14
  299. data/app/views/railsui/themes/shepherd/components/button/_base.html.erb +0 -17
  300. data/app/views/railsui/themes/shepherd/components/button/_expanded.html.erb +0 -3
  301. data/app/views/railsui/themes/shepherd/components/button/_sizes.html.erb +0 -5
  302. data/app/views/railsui/themes/shepherd/components/card/_base.html.erb +0 -6
  303. data/app/views/railsui/themes/shepherd/components/card/_property_card.html.erb +0 -28
  304. data/app/views/railsui/themes/shepherd/components/card/_property_user_card.html.erb +0 -14
  305. data/app/views/railsui/themes/shepherd/components/card/_user_card_with_actions.html.erb +0 -12
  306. data/app/views/railsui/themes/shepherd/components/card/_with_action.html.erb +0 -7
  307. data/app/views/railsui/themes/shepherd/components/card/_with_header.html.erb +0 -7
  308. data/app/views/railsui/themes/shepherd/components/combobox/_base.html.erb +0 -40
  309. data/app/views/railsui/themes/shepherd/components/datalist/_booking_list.html.erb +0 -45
  310. data/app/views/railsui/themes/shepherd/components/datalist/_property_list.html.erb +0 -47
  311. data/app/views/railsui/themes/shepherd/components/dropdown/_base.html.erb +0 -10
  312. data/app/views/railsui/themes/shepherd/components/dropdown/_right_aligned.html.erb +0 -13
  313. data/app/views/railsui/themes/shepherd/components/dropdown/_with_dividers.html.erb +0 -14
  314. data/app/views/railsui/themes/shepherd/components/dropdown/_with_menu_icons.html.erb +0 -16
  315. data/app/views/railsui/themes/shepherd/components/flash/_alert.html.erb +0 -5
  316. data/app/views/railsui/themes/shepherd/components/flash/_dynamic.html.erb +0 -5
  317. data/app/views/railsui/themes/shepherd/components/flash/_notice.html.erb +0 -5
  318. data/app/views/railsui/themes/shepherd/components/modal/_base.html.erb +0 -12
  319. data/app/views/railsui/themes/shepherd/components/modal/_centered_dual_action.html.erb +0 -16
  320. data/app/views/railsui/themes/shepherd/components/modal/_dismiss_icon.html.erb +0 -23
  321. data/app/views/railsui/themes/shepherd/components/modal/_single_action.html.erb +0 -14
  322. data/app/views/railsui/themes/shepherd/components/modal/_with_form.html.erb +0 -23
  323. data/app/views/railsui/themes/shepherd/components/navigation/_base.html.erb +0 -81
  324. data/app/views/railsui/themes/shepherd/components/navigation/_logged_out.html.erb +0 -22
  325. data/app/views/railsui/themes/shepherd/components/navigation/_with_dropdowns.html.erb +0 -88
  326. data/app/views/railsui/themes/shepherd/components/navigation/_with_search.html.erb +1 -83
  327. data/app/views/railsui/themes/shepherd/components/pagination/_contained.html.erb +0 -31
  328. data/app/views/railsui/themes/shepherd/components/pagination/_dark.html.erb +0 -31
  329. data/app/views/railsui/themes/shepherd/components/pagination/_pagy.html.erb +53 -98
  330. data/app/views/railsui/themes/shepherd/components/pagination/_simple.html.erb +0 -27
  331. data/app/views/railsui/themes/shepherd/components/tab/_base.html.erb +1 -18
  332. data/app/views/railsui/themes/shepherd/components/tab/_pills.html.erb +1 -18
  333. data/app/views/railsui/themes/shepherd/components/tab/_rounded.html.erb +1 -18
  334. data/app/views/railsui/themes/shepherd/components/tab/_with_icons.html.erb +1 -26
  335. data/app/views/railsui/themes/shepherd/components/toast/_base.html.erb +0 -16
  336. data/app/views/railsui/themes/shepherd/components/tooltip/_base.html.erb +0 -3
  337. data/app/views/railsui/themes/shepherd/content/_image_old.html.erb +0 -20
  338. data/app/views/railsui/themes/shepherd/content/image/_object_contain.html.erb +0 -5
  339. data/app/views/railsui/themes/shepherd/content/image/_object_cover.html.erb +0 -5
  340. data/app/views/railsui/themes/shepherd/content/image/_object_fill.html.erb +0 -5
  341. data/app/views/railsui/themes/shepherd/content/image/_object_scale_down.html.erb +0 -5
  342. data/app/views/railsui/themes/shepherd/content/image/_responsive.html.erb +0 -4
  343. data/app/views/railsui/themes/shepherd/content/table/_bordered.html.erb +0 -21
  344. data/app/views/railsui/themes/shepherd/content/table/_borderless.html.erb +0 -21
  345. data/app/views/railsui/themes/shepherd/content/typography/_blockquote.html.erb +0 -9
  346. data/app/views/railsui/themes/shepherd/content/typography/_display_headings.html.erb +0 -9
  347. data/app/views/railsui/themes/shepherd/content/typography/_headings.html.erb +0 -15
  348. data/app/views/railsui/themes/shepherd/content/typography/_inline_formatting.html.erb +0 -21
  349. data/app/views/railsui/themes/shepherd/content/typography/_lead_paragraph.html.erb +0 -5
  350. data/app/views/railsui/themes/shepherd/content/typography/_lists.html.erb +0 -17
  351. data/app/views/railsui/themes/shepherd/content/typography/_paragraphs.html.erb +0 -4
  352. data/app/views/railsui/themes/shepherd/forms/_action_text.html.erb +0 -6
  353. data/app/views/railsui/themes/shepherd/forms/_checkbox.html.erb +0 -9
  354. data/app/views/railsui/themes/shepherd/forms/_form_builder.html.erb +487 -0
  355. data/app/views/railsui/themes/shepherd/forms/_input.html.erb +0 -119
  356. data/app/views/railsui/themes/shepherd/forms/_input_group.html.erb +0 -81
  357. data/app/views/railsui/themes/shepherd/forms/_radio.html.erb +0 -13
  358. data/app/views/railsui/themes/shepherd/forms/_select.html.erb +0 -16
  359. data/app/views/railsui/themes/shepherd/forms/_switch.html.erb +0 -9
  360. data/app/views/railsui/themes/shepherd/forms/_validation.html.erb +0 -11
  361. data/app/views/railsui/themes/shepherd/mailers/_layout.html.erb +1 -493
  362. data/app/views/railsui/themes/shepherd/mailers/_minimal.html.erb +1 -16
  363. data/app/views/railsui/themes/shepherd/mailers/_promotion.html.erb +1 -20
  364. data/app/views/railsui/themes/shepherd/mailers/_transactional.html.erb +1 -43
  365. data/app/views/railsui/themes/shepherd/mailers/devise/_confirmation_instructions.html.erb +1 -9
  366. data/app/views/railsui/themes/shepherd/mailers/devise/_email_changed.html.erb +1 -12
  367. data/app/views/railsui/themes/shepherd/mailers/devise/_password_changed.html.erb +1 -7
  368. data/app/views/railsui/themes/shepherd/mailers/devise/_reset_password_instructions.html.erb +1 -9
  369. data/app/views/railsui/themes/shepherd/mailers/devise/_unlock_instructions.html.erb +1 -9
  370. data/app/views/railsui/themes/shepherd/scaffolds/_edit.html.erb +1 -19
  371. data/app/views/railsui/themes/shepherd/scaffolds/_index.html.erb +1 -11
  372. data/app/views/railsui/themes/shepherd/scaffolds/_new.html.erb +1 -17
  373. data/app/views/railsui/themes/shepherd/scaffolds/_partial.html.erb +1 -17
  374. data/app/views/railsui/themes/shepherd/scaffolds/_show.html.erb +1 -18
  375. data/config/pages.yml +103 -0
  376. data/config/routes.rb +6 -5
  377. data/config/theme.yml +2 -0
  378. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/auth-bg.jpg +0 -0
  379. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/blog-feature.jpg +0 -0
  380. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/blog1.jpg +0 -0
  381. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/blog2.jpg +0 -0
  382. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/blog3.jpg +0 -0
  383. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/blog4.jpg +0 -0
  384. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/blog5.jpg +0 -0
  385. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/blog6.jpg +0 -0
  386. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/blog7.jpg +0 -0
  387. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/blog8.jpg +0 -0
  388. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/blog9.jpg +0 -0
  389. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/copy.svg +6 -0
  390. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/pencil.svg +1 -0
  391. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/scroll-text.svg +9 -0
  392. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/social/facebook.svg +1 -0
  393. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/social/github.svg +1 -0
  394. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/social/google.svg +1 -0
  395. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/social/instagram.svg +1 -0
  396. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/social/linkedin.svg +1 -0
  397. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/social/twitter.svg +1 -0
  398. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/social/x.svg +1 -0
  399. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/social/youtube.svg +1 -0
  400. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/stethoscope.svg +8 -0
  401. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/test-tubes.svg +11 -0
  402. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/logo.svg +10 -0
  403. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/meta/android-chrome-192x192.png +0 -0
  404. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/meta/android-chrome-512x512.png +0 -0
  405. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/meta/apple-touch-icon.png +0 -0
  406. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/meta/favicon-16x16.png +0 -0
  407. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/meta/favicon-32x32.png +0 -0
  408. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/meta/favicon.ico +0 -0
  409. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/meta/favicon.svg +20 -0
  410. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/meta/opengraph-mark.jpg +0 -0
  411. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/meta/opengraph.jpg +0 -0
  412. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/meta/site.webmanifest +19 -0
  413. data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/railsui.svg +3 -0
  414. data/lib/generators/railsui/install/templates/themes/corgie/javascript/controllers/railsui/character_count_controller.js +134 -0
  415. data/lib/generators/railsui/install/templates/themes/corgie/javascript/controllers/railsui/chat_controller.js +45 -0
  416. data/lib/generators/railsui/install/templates/themes/corgie/javascript/controllers/railsui/help_search_controller.js +333 -0
  417. data/lib/generators/railsui/install/templates/themes/corgie/javascript/controllers/railsui/highlight_controller.js +13 -0
  418. data/lib/generators/railsui/install/templates/themes/corgie/javascript/controllers/railsui/markdown_controller.js +106 -0
  419. data/lib/generators/railsui/install/templates/themes/corgie/javascript/controllers/railsui/search_controller.js +311 -0
  420. data/lib/generators/railsui/install/templates/themes/corgie/javascript/controllers/railsui/sidebar_controller.js +105 -0
  421. data/lib/generators/railsui/install/templates/themes/corgie/javascript/controllers/railsui/snippet_controller.js +223 -0
  422. data/lib/generators/railsui/install/templates/themes/corgie/mail/railsui_mailer/minimal.html.erb +21 -0
  423. data/lib/generators/railsui/install/templates/themes/corgie/mail/railsui_mailer/minimal.text.erb +9 -0
  424. data/lib/generators/railsui/install/templates/themes/corgie/mail/railsui_mailer/promotion.html.erb +23 -0
  425. data/lib/generators/railsui/install/templates/themes/corgie/mail/railsui_mailer/promotion.text.erb +9 -0
  426. data/lib/generators/railsui/install/templates/themes/corgie/mail/railsui_mailer/transactional.html.erb +55 -0
  427. data/lib/generators/railsui/install/templates/themes/corgie/mail/railsui_mailer/transactional.text.erb +22 -0
  428. data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/actiontext.css +173 -0
  429. data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/blog.css +29 -0
  430. data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/buttons.css +49 -0
  431. data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/card.css +9 -0
  432. data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/chat.css +27 -0
  433. data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/code.css +233 -0
  434. data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/dropdown.css +9 -0
  435. data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/forms.css +321 -0
  436. data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/sidebar.css +15 -0
  437. data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/tailwind.config.js +24 -0
  438. data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/theme.css +77 -0
  439. data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/typography.css +47 -0
  440. data/lib/generators/railsui/install/templates/themes/corgie/views/layouts/rui/railsui.html.erb +31 -0
  441. data/lib/generators/railsui/install/templates/themes/corgie/views/layouts/rui/railsui_admin.html.erb +30 -0
  442. data/lib/generators/railsui/install/templates/themes/corgie/views/layouts/rui/railsui_auth.html.erb +50 -0
  443. data/lib/generators/railsui/install/templates/themes/corgie/views/layouts/rui/railsui_mailer.html.erb +503 -0
  444. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/about.html.erb +278 -0
  445. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/blog.html.erb +258 -0
  446. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/blog_category.html.erb +261 -0
  447. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/blog_show.html.erb +429 -0
  448. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/chat_new.html.erb +68 -0
  449. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/chat_show.html.erb +152 -0
  450. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/features.html.erb +356 -0
  451. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/help.html.erb +123 -0
  452. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/home.html.erb +252 -0
  453. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/pricing.html.erb +397 -0
  454. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/privacy.html.erb +140 -0
  455. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/signin.html.erb +38 -0
  456. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/signup.html.erb +48 -0
  457. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/terms.html.erb +182 -0
  458. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_account_dropdown.html.erb +46 -0
  459. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_email_action.html.erb +15 -0
  460. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_email_callout.html.erb +7 -0
  461. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_email_spacer.html.erb +7 -0
  462. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_error_messages.html.erb +10 -0
  463. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_faq.html.erb +9 -0
  464. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_flash.html.erb +11 -0
  465. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_fonts.html.erb +7 -0
  466. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_footer.html.erb +72 -0
  467. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_header.html.erb +15 -0
  468. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_meta.html.erb +90 -0
  469. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_nav.html.erb +3 -0
  470. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_railsui_head.html.erb +4 -0
  471. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_search.html.erb +32 -0
  472. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_sidebar.html.erb +7 -0
  473. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_waves.html.erb +47 -0
  474. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/blog/_article.html.erb +39 -0
  475. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/blog/_pagination.html.erb +21 -0
  476. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/chat/_disclaimer.html.erb +4 -0
  477. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/chat/_form.html.erb +62 -0
  478. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/chat/_header.html.erb +47 -0
  479. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/chat/_history.html.erb +36 -0
  480. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/chat/_key_legend.html.erb +11 -0
  481. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/chat/_link.html.erb +17 -0
  482. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/chat/_message.html.erb +69 -0
  483. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/chat/_model_select.html.erb +55 -0
  484. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/common/_cta_section.html.erb +16 -0
  485. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/common/_feature_card.html.erb +23 -0
  486. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/common/_feature_check_item.html.erb +6 -0
  487. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/common/_social_auth_buttons.html.erb +22 -0
  488. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/help/_categories.html.erb +82 -0
  489. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/help/_faq.html.erb +45 -0
  490. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/help/_quick_actions.html.erb +46 -0
  491. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/marketing/_career.html.erb +9 -0
  492. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/marketing/_nav.html.erb +57 -0
  493. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/marketing/_team_member_card.html.erb +16 -0
  494. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/settings/_modal.html.erb +84 -0
  495. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/settings/_nav_item.html.erb +14 -0
  496. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/settings/panels/_billing.html.erb +120 -0
  497. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/settings/panels/_data_controls.html.erb +69 -0
  498. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/settings/panels/_general.html.erb +92 -0
  499. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/settings/panels/_notifications.html.erb +102 -0
  500. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/settings/panels/_personalization.html.erb +100 -0
  501. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/settings/panels/_security.html.erb +98 -0
  502. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/settings/panels/_title.html.erb +5 -0
  503. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/sidebar/_actions.html.erb +39 -0
  504. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/sidebar/_header.html.erb +40 -0
  505. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/sidebar/_history.html.erb +36 -0
  506. data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/sidebar/_link.html.erb +23 -0
  507. data/lib/generators/railsui/install/templates/themes/hound/stylesheets/railsui/forms.css +18 -4
  508. data/lib/generators/railsui/install/templates/themes/hound/stylesheets/railsui/theme.css +3 -2
  509. data/lib/generators/railsui/install/templates/themes/shepherd/stylesheets/railsui/forms.css +12 -2
  510. data/lib/generators/railsui/scaffold/templates/themes/corgie/views/_form.html.erb.tt +52 -0
  511. data/lib/generators/railsui/scaffold/templates/themes/corgie/views/edit.html.erb.tt +25 -0
  512. data/lib/generators/railsui/scaffold/templates/themes/corgie/views/index.html.erb.tt +12 -0
  513. data/lib/generators/railsui/scaffold/templates/themes/corgie/views/new.html.erb.tt +22 -0
  514. data/lib/generators/railsui/scaffold/templates/themes/corgie/views/partial.html.erb.tt +22 -0
  515. data/lib/generators/railsui/scaffold/templates/themes/corgie/views/show.html.erb.tt +24 -0
  516. data/lib/generators/railsui/scaffold/templates/themes/hound/views/_form.html.erb.tt +29 -24
  517. data/lib/generators/railsui/scaffold/templates/themes/shepherd/views/_form.html.erb.tt +28 -26
  518. data/lib/railsui/configuration.rb +22 -21
  519. data/lib/railsui/engine.rb +26 -20
  520. data/lib/railsui/form_builder.rb +307 -0
  521. data/lib/railsui/pages.rb +14 -3
  522. data/lib/railsui/theme_helper.rb +8 -8
  523. data/lib/railsui/theme_setup.rb +83 -49
  524. data/lib/railsui/themes.rb +3 -4
  525. data/lib/railsui/version.rb +1 -1
  526. data/lib/railsui.rb +9 -6
  527. data/lib/tasks/install.rake +1 -1
  528. data/lib/tasks/pages.rake +1 -1
  529. data/lib/tasks/stimulus.rake +1 -1
  530. metadata +287 -5
  531. data/.standard.yml +0 -3
  532. data/CHANGELOG.md +0 -9
  533. data/config/colors.yml +0 -50
@@ -612,110 +612,6 @@
612
612
  </header>
613
613
  <% end %>
614
614
 
615
- <% content_for :haml, flush: true do %>
616
- %header.relative.dark:bg-slate-900.bg-white{"data-controller" => "nav"}
617
- .container.mx-auto.px-4
618
- .md:flex.items-center.flex-wrap.md:space-x-2
619
- .md:block.flex.items-center.justify-between
620
- = link_to root_path, class: "w-12 h-12 flex justify-center" do
621
- / Hound logo
622
- %svg.fill-current.w-5.h-auto.text-primary-600.hover:text-primary-700.duration-300.transition.ease-in-out.dark:hover:text-primary-500{fill: "none", height: "50", viewbox: "0 0 39 50", width: "39", xmlns: "http://www.w3.org/2000/svg"}
623
- %path{"clip-rule" => "evenodd", d: "M8.55264 0C3.82915 0 0 3.82915 0 8.55265V26.1842C0 30.9077 3.82915 34.7368 8.55264 34.7368C13.2761 34.7368 17.1053 30.9077 17.1053 26.1842V8.55264C17.1053 3.82915 13.2761 0 8.55264 0ZM29.6053 0C24.8818 0 21.0527 3.82915 21.0527 8.55264V41.4474C21.0527 46.1709 24.8818 50 29.6053 50C34.3288 50 38.1579 46.1708 38.1579 41.4474V8.55264C38.1579 3.82915 34.3288 0 29.6053 0Z", "fill-rule" => "evenodd"}
624
- %span.sr-only Hound
625
- %button#dropdowns-nav-toggle.md:hidden.block.p-1.rounded.focus:ring-4.focus:ring-slate-100.active:bg-white.group.dark:focus:bg-slate-800.dark:focus:ring-slate-700{class: "focus:bg-white/50", "data-action" => "click->nav#toggle"}
626
- %div{"data-nav-target" => "menuBars", role: "none"}
627
- = icon "bars-3-center-left", class: "size-8 text-slate-600 group-focus:text-primary-600 dark:text-slate-400 dark:group-focus:text-slate-100"
628
- .hidden{"data-nav-target" => "menuCross", role: "none"}
629
- = icon "x-mark", class: "size-8 text-slate-600 group-focus:text-primary-600 dark:text-slate-400 dark:group-focus:text-slate-100"
630
- #dropdowns-navigation.md:flex-1.md:block.hidden.md:static.absolute.top-14.left-0.w-full.bg-white.dark:bg-slate-900.md:bg-transparent.transform.origin-top.px-4.pb-4.md:p-0.rounded-b.md:shadow-none.shadow-xl.z-40.text-base{"data-nav-target" => "nav", "data-transition-enter-active" => "transition ease-out duration-200", "data-transition-enter-from" => "opacity-0 scale-95", "data-transition-enter-to" => "opacity-100 scale-100", "data-transition-leave-active" => "transition ease-in duration-200", "data-transition-leave-from" => "opacity-100 scale-100", "data-transition-leave-to" => "opacity-0 scale-95"}
631
- .md:flex-1.md:flex.flex-wrap.items-center.justify-between.lg:text-left.text-center
632
- %nav{role: "Primary navigation"}
633
- %ul.md:flex.block.items-center.flex-wrap.space-x-0.md:space-x-3.md:text-base.md:leading-normal.leading-relaxed.space-y-1.md:space-y-0.md:mb-0.mb-2
634
- %li
635
- = nav_link_to "Dashboard", "#", class: "rui-nav-link"
636
- %li
637
- = nav_link_to "Metrics", "#", class: "rui-nav-link"
638
- %li
639
- = nav_link_to "Settings", "#", class: "rui-nav-link"
640
- %li.relative{"data-controller" => "railsui-dropdown"}
641
- %button.rui-nav-link.flex.justify-center.items-center.space-x-2.sm:w-auto.w-full{"data-action" => "click->railsui-dropdown#toggle click@window->railsui-dropdown#hide"}
642
- %span More
643
- = icon "chevron-down", class: "size-3 text-slate-500"
644
- .hidden.transition.transform.origin-to-right.md:absolute.left-0.md:mt-0.mt-2.top-12.bg-white.md:rounded-lg.md:shadow-xl.md:border.border-slate-200.z-50.py-1.md:text-sm.dark:bg-slate-700.sm:text-sm.text-base.font-medium.text-slate-600.dark:text-slate-200{class: "shadow-slate-900/10 md:min-w-[180px] dark:shadow-slate-900/50 dark:border-slate-500/60", "data-railsui-dropdown-target" => "menu", "data-transition-enter-from" => "opacity-0 scale-95", "data-transition-enter-to" => "opacity-100 scale-100", "data-transition-leave-from" => "opacity-100 scale-100", "data-transition-leave-to" => "opacity-0 scale-95"}
645
- = link_to "Documents", "#", class: "px-4 py-[.4rem] hover:text-primary-600 block dark:hover:text-primary-300"
646
- = link_to "Statements", "#", class: "px-4 py-[.4rem] hover:text-primary-600 block dark:hover:text-primary-300"
647
- = link_to "Contacts", "#", class: "px-4 py-[.4rem] hover:text-primary-600 block dark:hover:text-primary-300"
648
- = link_to "Referrals", "#", class: "px-4 py-[.4rem] hover:text-primary-600 block dark:hover:text-primary-300"
649
- %nav{role: "Secondary navigation"}
650
- %ul.md:flex.flex-wrap.items-center.md:justify-center.justify-between.md:space-x-4
651
- / Create + Dropdown
652
- %li.w-full.md:w-auto.relative{"data-controller" => "railsui-dropdown"}
653
- %button.btn.btn-primary.md:w-auto.w-full.space-x-1.pr-3{"data-action" => "click->railsui-dropdown#toggle click@window->railsui-dropdown#hide", type: "button"}
654
- %span Create
655
- = icon "plus", class: "size-4 text-primary-100"
656
- .hidden.transition.transform.origin-to-right.md:absolute.right-0.top-10.bg-white.rounded-lg.md:shadow-xl.md:border.border-slate-200.z-50.text-base.py-1.md:text-sm.dark:bg-slate-700.font-medium.text-slate-600.dark:text-slate-200.md:space-y-0.space-y-2{class: "shadow-slate-900/10 md:min-w-[180px] dark:shadow-slate-900/50 dark:border-slate-500/60", "data-railsui-dropdown-target" => "menu", "data-transition-enter-from" => "opacity-0 scale-95", "data-transition-enter-to" => "opacity-100 scale-100", "data-transition-leave-from" => "opacity-100 scale-100", "data-transition-leave-to" => "opacity-0 scale-95"}
657
- = link_to "#", class: "px-4 py-[.4rem] hover:text-primary-600 dark:hover:text-primary-400 flex items-center space-x-2 group md:justify-start justify-center" do
658
- = icon "rectangle-stack", class: "text-blue-500 size-5"
659
- %span Repository
660
- = link_to "#", class: "px-4 py-[.4rem] hover:text-primary-600 dark:hover:text-primary-400 flex items-center space-x-2 group md:justify-start justify-center" do
661
- = icon "chart-pie", class: "text-rose-500 size-5"
662
- %span Report
663
- = link_to "#", class: "px-4 py-[.4rem] hover:text-primary-600 dark:hover:text-primary-400 flex items-center space-x-2 group md:justify-start justify-center" do
664
- = icon "arrow-down-circle", class: "text-amber-500 size-5"
665
- %span Export
666
- / Notifications Dropdown
667
- %li.md:mt-0.mt-2.relative{"data-controller" => "railsui-dropdown"}
668
- %button.flex.group.justify-center.items-center.md:w-auto.w-full.px-4.py-3.md:p-0{"data-action" => "click->railsui-dropdown#toggle click@window->railsui-dropdown#hide", type: "button"}
669
- .relative
670
- = icon "bell", class:"text-slate-400 size-6 group-hover:text-primary-600 dark:group-hover:text-slate-300"
671
- %span.bg-primary-600.rounded-full.hover:animate-pulse.absolute.top-0.right-0.z-20.dark:bg-primary-400{class: "w-[10px] h-[10px]"}
672
- %span.md:hidden.text-slate-500.dark:text-slate-200.text-sm.font-medium.ml-2 Notifications
673
- .hidden.transition.transform.origin-to-right.md:absolute.mt-2.ml-2.md:ml-0.md:mt-0.right-0.top-8.bg-white.rounded-lg.md:shadow-xl.border.border-slate-200.z-50.py-1.text-sm.divide-y.text-left.dark:bg-slate-700.font-medium.text-slate-600.dark:text-slate-200.dark:divide-gray-600{class: "shadow-slate-900/10 md:min-w-[320px] dark:shadow-slate-900/50 dark:border-slate-500/60", "data-railsui-dropdown-target" => "menu", "data-transition-enter-from" => "opacity-0 scale-95", "data-transition-enter-to" => "opacity-100 scale-100", "data-transition-leave-from" => "opacity-100 scale-100", "data-transition-leave-to" => "opacity-0 scale-95"}
674
- .px-4.py-3.md:py-2.flex.items-center.justify-between.group
675
- .flex-1
676
- .flex.items-start.space-x-2
677
- = image_tag "#", class: "size-6 object-cover rounded-full flex-shrink-0 mt-1", alt: "John D."
678
- .flex-1
679
- %p.truncate
680
- John D. replied to #{link_to "your comment", "#", class:"underline text-primary-600 hover:text-primary-700 dark:text-primary-400 dark:hover:text-primary-400"}
681
- %p.text-xs.text-slate-500.dark:text-slate-400 Just now
682
- %button.opacity-0.group-hover:opacity-100.transition.ease-in-out.duration-300.flex.items-center.justify-center.rounded-full.w-7.h-7.group.border.border-slate-200.hover:border-slate-300.focus:ring-4.dark:border-slate-400{class: "hover:bg-slate-50/50 focus:ring-slate-100/75 bg-white/50 dark:bg-slate-500/75 dark:focus:ring-slate-100/10 dark:hover:bg-white/20"}
683
- = icon "x-mark", class: "size-3 text-slate-600 group-hover:text-primary-600 dark:group-hover:text-primary-400 dark:group-hover:text-slate-100 dark:text-slate-50"
684
- .px-4.py-3.md:py-2.flex.items-center.justify-between.group
685
- .flex-1
686
- .flex.items-start.space-x-2
687
- = image_tag "#", class: "size-6 object-cover rounded-full flex-shrink-0 mt-1", alt: "Jane D."
688
- .flex-1
689
- %p
690
- Jane D. posted #{link_to "an update", "#", class:"underline text-primary-600 hover:text-primary-700 dark:text-primary-400 dark:hover:text-primary-400"}
691
- %p.text-xs.text-slate-500.dark:text-slate-400 15 mins ago
692
- %button.opacity-0.group-hover:opacity-100.transition.ease-in-out.duration-300.flex.items-center.justify-center.rounded-full.w-7.h-7.group.border.border-slate-200.hover:border-slate-300.focus:ring-4.dark:border-slate-400{class: "hover:bg-slate-50/50 focus:ring-slate-100/75 bg-white/50 dark:bg-slate-500/75 dark:focus:ring-slate-100/10 dark:hover:bg-white/20"}
693
- = icon "x-mark", class: "size-3 text-slate-600 group-hover:text-primary-600 dark:group-hover:text-primary-400 dark:group-hover:text-slate-100 dark:text-slate-50"
694
- .px-4.py-3.md:py-2.flex.items-center.justify-between.group
695
- .flex-1
696
- .flex.items-start.space-x-2
697
- = image_tag "#", class: "size-6 object-cover rounded-full flex-shrink-0 mt-1", alt: "Scotty P."
698
- .flex-1
699
- %p
700
- Scotty P. shared #{link_to "a repository", "#", class: "underline text-primary-600 hover:text-primary-700 dark:text-primary-400 dark:hover:text-primary-400"}
701
- %p.text-xs.text-slate-500.dark:text-slate-400 2 hours ago
702
- %button.opacity-0.group-hover:opacity-100.transition.ease-in-out.duration-300.flex.items-center.justify-center.rounded-full.w-7.h-7.group.border.border-slate-200.hover:border-slate-300.focus:ring-4.dark:border-slate-400{class: "hover:bg-slate-50/50 focus:ring-slate-100/75 bg-white/50 dark:bg-slate-500/75 dark:focus:ring-slate-100/10 dark:hover:bg-white/20"}
703
- = icon "x-mark", class: "size-3 text-slate-600 group-hover:text-primary-600 dark:group-hover:text-primary-400 dark:group-hover:text-slate-100 dark:text-slate-50"
704
- %div
705
- = link_to "flex items-center justify-between group px-4 pt-3 pb-2 hover:bg-slate-50 hover:text-primary-500 text-sm group font-medium text-slate-500 dark:text-slate-200 dark:hover:bg-slate-700 dark:hover:text-white" do
706
- %span View all notifications
707
- = icon "chevron-right", class: "group-hover:translate-x-1 transform transition ease-in-out size-4 text-slate-400 group-hover:text-primary-500 dark:group-hover:text-primary-200"
708
- %li.md:mt-0.mt-4.flex.flex-col.items-center.relative{"data-controller" => "railsui-dropdown"}
709
- %button.group{"data-action" => "click->railsui-dropdown#toggle click@window->railsui-dropdown#hide", type: "button"}
710
- = image_tag "#", class: "rounded-full md:w-10 w-12 md:h-10 h-12 object-cover border-2 border-transparent group-hover:border-primary-600 transition duration-300 ease-in-out"
711
- .hidden.transition.transform.origin-to-right.md:absolute.right-0.top-10.bg-white.rounded-lg.md:shadow-xl.md:border.border-slate-200.z-50.py-1.divide-y.divide-gray-200.md:w-auto.w-full.md:text-sm.dark:bg-slate-700.text-base.font-medium.text-slate-600.dark:text-slate-200.dark:divide-gray-600{class: "md:shadow-slate-900/10 md:min-w-[200px] dark:shadow-slate-900/50 dark:border-slate-500/60", "data-railsui-dropdown-target" => "menu", "data-transition-enter-from" => "opacity-0 scale-95", "data-transition-enter-to" => "opacity-100 scale-100", "data-transition-leave-from" => "opacity-100 scale-100", "data-transition-leave-to" => "opacity-0 scale-95"}
712
- %div{role: "none"}
713
- = link_to "Profile", "#", class: "px-4 py-2 md:py-[.4rem] hover:text-primary-600 dark:hover:text-primary-400 block"
714
- = link_to "Preferences", "#", class: "px-4 py-2 md:py-[.4rem] hover:text-primary-600 dark:hover:text-primary-400 block"
715
- = link_to "Billing", "#", class: "px-4 py-2 md:py-[.4rem] hover:text-primary-600 dark:hover:text-primary-400 block"
716
- %div{role: "none"}
717
- = button_to "Sign out", destroy_user_session_path, method: :delete, class: "px-4 py-2 md:py-[.4rem] hover:text-primary-600 dark:hover:text-primary-400 block"
718
- <% end %>
719
615
 
720
616
  <% content_for :js, flush: true do %>
721
617
  // app/javascript/controllers/nav_controller.js
@@ -748,7 +644,7 @@ export default class extends Controller {
748
644
  }
749
645
  <% end %>
750
646
 
751
- <%= render_snippet(html_filename: "nav.html", erb_filename: "_nav.html.erb", haml_filename: "_nav.haml.erb", js_filename: "nav_controller.js") %>
647
+ <%= render_snippet(html_filename: "nav.html", erb_filename: "_nav.html.erb", js_filename: "nav_controller.js") %>
752
648
  <% end %>
753
649
  <% end %>
754
650
  </div>
@@ -225,46 +225,6 @@
225
225
  </header>
226
226
  <% end %>
227
227
 
228
- <% content_for :haml, flush: true do %>
229
- %header.relative.bg-slate-900{"data-controller" => "nav"}
230
- .container.mx-auto.px-4
231
- .sm:flex.items-center.flex-wrap.sm:space-x-2
232
- .sm:block.flex.items-center.justify-between
233
- = link_to root_path class: "w-12 h-12 flex justify-center" do
234
- / Hound logo
235
- %svg.fill-current.w-6.h-auto.text-primary-600.hover:text-primary-700.duration-300.transition.ease-in-out.dark:hover:text-primary-500{fill: "none", height: "50", viewbox: "0 0 39 50", width: "39", xmlns: "http://www.w3.org/2000/svg"}
236
- %path{"clip-rule" => "evenodd", d: "M8.55264 0C3.82915 0 0 3.82915 0 8.55265V26.1842C0 30.9077 3.82915 34.7368 8.55264 34.7368C13.2761 34.7368 17.1053 30.9077 17.1053 26.1842V8.55264C17.1053 3.82915 13.2761 0 8.55264 0ZM29.6053 0C24.8818 0 21.0527 3.82915 21.0527 8.55264V41.4474C21.0527 46.1709 24.8818 50 29.6053 50C34.3288 50 38.1579 46.1708 38.1579 41.4474V8.55264C38.1579 3.82915 34.3288 0 29.6053 0Z", "fill-rule" => "evenodd"}
237
- %span.sr-only Hound
238
- %button#search-nav-toggle.sm:hidden.block.p-1.rounded.focus:ring-4.group.focus:bg-slate-800.focus:ring-slate-700{"data-action" => "click->nav#toggle", role: "Mobile navigation toggle"}
239
- %div{"data-nav-target" => "menuBars", role: "none"}
240
- = icon "bars-3-center-left", class: "w-8 h-8 text-slate-300 group-focus:text-slate-200"
241
- .hidden{"data-nav-target" => "menuCross", role: "none"}
242
- = icon "x-mark", class: "w-8 h-8 text-slate-300 group-focus:text-slate-200"
243
- #search-navigation.sm:flex-1.sm:block.hidden.sm:static.absolute.top-14.left-0.w-full.bg-slate-900.sm:bg-transparent.transform.origin-top.sm:p-0.p-4.rounded-b.sm:shadow-none.shadow-xl.z-30{"data-nav-target" => "nav", "data-transition-enter-active" => "transition ease-out duration-200", "data-transition-enter-from" => "opacity-0 scale-95", "data-transition-enter-to" => "opacity-100 scale-100", "data-transition-leave-active" => "transition ease-in duration-200", "data-transition-leave-from" => "opacity-100 scale-100", "data-transition-leave-to" => "opacity-0 scale-95"}
244
- .sm:flex-1.sm:flex.flex-wrap.items-center.justify-between.lg:text-left.text-center
245
- %nav{role: "Primary navigation"}
246
- %ul.sm:flex.block.items-center.flex-wrap.space-x-0.sm:space-x-3.sm:text-base.text-lg.sm:leading-normal.leading-relaxed.space-y-1.sm:space-y-0.sm:mb-0.mb-4
247
- %li
248
- = nav_link_to "Product", "#", class: "rui-nav-link-dark"
249
- %li
250
- = nav_link_to "Pricing", "#", class: "rui-nav-link-dark"
251
- %li
252
- = nav_link_to "Company", "#", class: "rui-nav-link-dark"
253
- %nav{role: "Secondary navigation"}
254
- %ul.sm:flex.flex-wrap.items-center.justify-center.grid.grid-cols-2.sm:gap-0.gap-4.sm:mt-0.mt-6
255
- %li.sm:pr-5
256
- = link_to "#", class: "group sm:border-none border rounded sm:bg-transparent bg-slate-900 border-slate-700 flex justify-center items-center sm:py-0 py-2 sm:px-0 px-3 sm:block sm:focus:ring-none focus:ring-4 focus:ring-slate-800" do |
257
- = icon "question-mark-circle", class: "fill-current size-5 text-primary-500 group-hover:text-primary-600 transition ease-in-out duration-300 dark:text-primary-500 dark:group-hover:text-primary-600", variant: :solid
258
- %li.sm:pr-3
259
- = link_to "#", class: "group sm:border-none border rounded sm:bg-transparent bg-slate-900 border-slate-700 flex justify-center items-center sm:py-0 py-2 sm:px-0 px-3 sm:block sm:focus:ring-none focus:ring-4 focus:ring-slate-800" do
260
- = icon "book-open", class: "fill-current size-5 text-primary-500 group-hover:text-primary-600 transition ease-in-out duration-300 dark:text-primary-500 dark:group-hover:text-primary-600", variant: :solid
261
- %li.sm:block.hidden.sm:px-2
262
- %span.h-6.w-px.block.bg-slate-600
263
- %li.w-full.sm:w-auto.sm:mb-0.col-span-2
264
- = link_to "Sign in", new_user_session_path, class: "btn btn-dark sm:w-auto w-full"
265
- %li.sm:pl-3.w-full.sm:w-auto.col-span-2
266
- = link_to "Sign up", new_user_registration_path, class: "btn btn-primary sm:w-auto w-full"
267
- <% end %>
268
228
 
269
229
  <% content_for :js, flush: true do %>
270
230
  // app/javascript/controllers/nav_controller.js
@@ -297,7 +257,7 @@ export default class extends Controller {
297
257
  }
298
258
  <% end %>
299
259
 
300
- <%= render_snippet(html_filename: "nav.html", erb_filename: "_nav.html.erb", haml_filename: "_nav.haml.erb", js_filename: "nav_controller.js") %>
260
+ <%= render_snippet(html_filename: "nav.html", erb_filename: "_nav.html.erb", js_filename: "nav_controller.js") %>
301
261
  <% end %>
302
262
  <% end %>
303
263
  </div>
@@ -125,37 +125,6 @@
125
125
  </div>
126
126
  <% end %>
127
127
 
128
- <% content_for :haml, flush: true do %>
129
- .flex.flex-wrap.md:justify-between.justify-center.items-center.space-y-2
130
- %p.text-slate-600.dark:text-slate-200.text-sm.block.w-full.md:w-auto.md:text-left.text-center
131
- Viewing page
132
- %strong 1
133
- with
134
- %strong 24
135
- results per page
136
- %nav.text-slate-500.dark:text-slate-200.md:text-sm.text-base.font-medium.w-auto.flex{"aria-label" => "Page navgiation"}
137
- %ul.flex.flex-wrap.items-center.justify-center.w-auto.divide-x.divide-slate-300.shadow-xs.dark:divide-slate-600
138
- %li.flex.justify-start.items-center
139
- = link_to "#", class: "bg-white inline-flex justify-center items-center md:py-2 py-[.63rem] px-2 rounded-l hover:bg-slate-50/50 group hover:text-primary-600 md:w-auto w-full border-y border-l border-slate-300 dark:bg-slate-800 dark:hover:bg-slate-700 dark:border-slate-600"
140
- = icon "arrow-small-left", class: "w-5 h-5 text-slate-400 group-hover:text-primary-500 dark:group-hover:text-slate-200", title: "Previous"
141
- %li
142
- = link_to "1", "#", class: "inline-flex items-center py-2 px-4 bg-primary-600 text-white hover:bg-primary-700 border-y border-primary-600 hover:border-primary-700 dark:hover:bg-primary-500"
143
- %li
144
- = link_to "2", "#", class: "bg-white inline-flex items-center py-2 px-4 border-y border-slate-300 hover:bg-slate-50/50 dark:bg-slate-800 dark:hover:bg-slate-700 dark:border-slate-600"
145
- %li
146
- = link_to "3", "#", class: "bg-white inline-flex items-center py-2 px-4 border-y border-slate-300 hover:bg-slate-50/50 dark:bg-slate-800 dark:hover:bg-slate-700 dark:border-slate-600"
147
- %li.md:block.hidden
148
- %span.bg-white.inline-flex.items-center.py-2.px-3.border-y.border-slate-300.select-none.dark:bg-slate-800.dark:border-slate-600{class: "pointer-events-nonehover:bg-slate-50/50", href: "#"} …
149
- %li
150
- = link_to "8", "#", class: "bg-white inline-flex items-center py-2 px-4 border-y border-slate-300 hover:bg-slate-50/50 dark:bg-slate-800 dark:hover:bg-slate-700 dark:border-slate-600"
151
- %li
152
- = link_to "9", "#", class: "bg-white inline-flex items-center py-2 px-4 border-y border-slate-300 hover:bg-slate-50/50 dark:bg-slate-800 dark:hover:bg-slate-700 dark:border-slate-600"
153
- %li
154
- = link_to "10", "#", class: "bg-white inline-flex items-center py-2 px-4 border-y border-slate-300 hover:bg-slate-50/50 dark:bg-slate-800 dark:hover:bg-slate-700 dark:border-slate-600"
155
- %li.flex.justify-end.items-center
156
- = link_to "#", class: "bg-white inline-flex justify-center items-center md:py-2 py-[.63rem] px-2 rounded-r hover:bg-slate-50/50 group hover:text-primary-600 md:w-auto w-full border-y border-r border-slate-300 dark:bg-slate-800 dark:hover:bg-slate-700 dark:border-slate-600"
157
- = icon "arrow-small-right", class: "w-5 h-5 text-slate-400 group-hover:text-primary-500 dark:group-hover:text-slate-200", title: "Next"
158
- <% end %>
159
128
  <%= render_snippet %>
160
129
  <% end %>
161
130
  <% end %>
@@ -130,33 +130,6 @@
130
130
  </nav>
131
131
  <% end %>
132
132
 
133
- <% content_for :haml, flush: true do %>
134
- %nav.text-slate-500.sm:text-sm.text-base.font-medium.dark:text-slate-300{"aria-label" => "Page navgiation"}
135
- %ul.flex.flex-wrap.items-center.sm:justify-between.justify-center
136
- %li.flex-1.flex.justify-start.items-center.sm:w-auto.w-full
137
- = link_to "#", class: "flex justify-center items-center space-x-2 py-2 px-4 rounded hover:bg-slate-50/50 group hover:text-primary-600 sm:w-auto w-full sm:bg-transparent bg-slate-50 sm:mb-0 mb-3 dark:hover:bg-slate-500/30 dark:hover:text-slate-200"
138
- = icon "arrow-small-left", class: "w-4 h-4 text-slate-400 group-hover:text-primary-500 dark:group-hover:text-slate-200"
139
- %span Previous
140
- .flex.items-center.justify-center.sm:w-auto.w-full.sm:text-sm.text-lg
141
- %li
142
- = link_to "1", "#", class:"py-2 px-4 block border-t-2 border-transparent rounded hover:bg-slate-50/50 dark:hover:bg-slate-500/30 dark:hover:text-slate-200"
143
- %li
144
- = link_to "2", "#", class:"py-2 px-4 border-t-2 block border-primary-500 hover:bg-primary-50/50 text-primary-600 dark:text-primary-400 dark:border-primary-400 dark:hover:bg-primary-500/30"
145
- %li
146
- = link_to "3", "#", class:"py-2 px-4 block border-t-2 border-transparent rounded hover:bg-slate-50/50 dark:hover:bg-slate-500/30 dark:hover:text-slate-200"
147
- %li
148
- %span.py-2.px-4.block.border-t-2.border-transparent.rounded.pointer-events-none.select-none{href: "#"} …
149
- %li
150
- = link_to "8", "#", class:"py-2 px-4 block border-t-2 border-transparent rounded hover:bg-slate-50/50 dark:hover:bg-slate-500/30 dark:hover:text-slate-200"
151
- %li
152
- = link_to "9", "#", class:"py-2 px-4 block border-t-2 border-transparent rounded hover:bg-slate-50/50 dark:hover:bg-slate-500/30 dark:hover:text-slate-200"
153
- %li
154
- = link_to "10", "#", class:"py-2 px-4 block border-t-2 border-transparent rounded hover:bg-slate-50/50 dark:hover:bg-slate-500/30 dark:hover:text-slate-200"
155
- %li.flex-1.flex.justify-end.items-center
156
- = link_to "#", class: "flex justify-center items-center space-x-2 py-2 px-4 rounded hover:bg-slate-50/50 group hover:text-primary-600 sm:w-auto w-full sm:bg-transparent bg-slate-50 sm:mt-0 mt-3 dark:hover:bg-slate-500/30 dark:hover:text-slate-200"
157
- %span Next
158
- = icon "arrow-small-right", class: "w-4 h-4 text-slate-400 group-hover:text-primary-500 dark:group-hover:text-slate-200"
159
- <% end %>
160
133
 
161
134
  <%= render_snippet %>
162
135
  <% end %>
@@ -2,9 +2,11 @@
2
2
  <%= render layout: example, locals: { heading: "Pagy gem", section: "Pagination" } do %>
3
3
 
4
4
  <div class="prose prose-slate dark:prose-invert my-6">
5
- <p><%= link_to "Pagy", "https://github.com/ddnexus/pagy", target: :_blank %> is a popular pagination solution for Ruby/Rails developers. The nav partial <%= link_to "from the gem", "https://github.com/ddnexus/pagy/tree/master/lib/templates", target: :_blank %> comes ready to use with Rails UI.</p>
5
+ <p><%= link_to "Pagy", "https://github.com/ddnexus/pagy", target: :_blank %> is a popular pagination solution for Ruby/Rails developers. This implementation uses Pagy's default <code>pagy_nav</code> helper with custom CSS styling to match the Rails UI design system.</p>
6
6
 
7
- <p>To make use of this UI you will need to render an alternative partial containing the code below with the <code>@pagy</code> instance variable passed through as a local variable inside the partial.</p>
7
+ <p>To use this design, include the CSS styles in your stylesheet and use the simple ERB snippet below. The <code>@pagy</code> instance variable should be passed to your view from the controller.</p>
8
+
9
+ <p>The CSS overrides Pagy's default styling using Tailwind's <code>@apply</code> directive to apply Rails UI classes while maintaining all of Pagy's built-in functionality.</p>
8
10
  </div>
9
11
 
10
12
  <%= render preview 'gray' do %>
@@ -41,80 +43,53 @@
41
43
  <% end %>
42
44
 
43
45
  <% content_for :erb, flush: true do %>
44
- <!-- Source: https://github.com/ddnexus/pagy/blob/master/lib/templates/nav.html.erb -->
45
-
46
- <%% link = pagy_link_proc(pagy) %>
47
- <nav aria-label="pager" class="text-slate-500 sm:text-sm text-base font-medium" role="navigation">
48
- <div class="flex flex-wrap items-center sm:justify-between justify-center">
49
- <%% if pagy.prev %>
50
- <div class="sm:flex-1 flex justify-start items-center sm:w-auto w-full">
51
- <%%== link.call(pagy.prev, pagy_t('pagy.nav.prev'), 'aria-label="previous" class="flex justify-center items-center gap-2 py-2 px-4 rounded hover:bg-slate-50/50 group hover:text-primary-600 sm:w-auto w-full sm:bg-transparent bg-slate-50 sm:mb-0 mb-3 dark:hover:bg-primary-600 dark:hover:text-white dark:bg-primary-600 dark:text-white"') %>
52
- </div>
53
- <%% else %>
54
- <div class="sm:flex-1 flex justify-start items-center sm:w-auto w-full">
55
- <span class="opacity-40 dark:opacity-60 flex justify-center items-center gap-2 py-2 px-4 rounded sm:w-auto w-full bg-transparent sm:mb-0 mb-3 pointer-events-none select-none">
56
- <%%== pagy_t('pagy.nav.prev') %>
57
- </span>
58
- </div>
59
- <%% end %>
60
-
61
- <!-- series example: [1, :gap, 7, 8, "9", 10, 11, :gap, 36] -->
62
- <%% pagy.series.each do |item| %>
63
- <%% if item.is_a?(Integer) %>
64
- <%%== link.call(item, item, 'class="py-2 px-4 block border-t-2 border-transparent rounded hover:bg-slate-50/50 dark:hover:bg-slate-500/30 dark:hover:text-slate-200"') %>
65
- <%% elsif item.is_a?(String) %>
66
- <span class="py-2 px-4 border-t-2 border-transparent block border-primary-500 hover:bg-primary-50/50 text-primary-600 dark:hover:bg-primary-600 dark:hover:text-white dark:hover:border-primary-600 dark:text-primary-400"><%%= item %></span>
67
- <%% elsif item == :gap %>
68
- <span class="py-2 px-4 block border-t-2 border-transparent rounded pointer-events-none select-none"><%%== pagy_t('pagy.nav.gap') %></span>
69
- <%% end %>
70
- <%% end %>
71
-
72
- <%% if pagy.next %>
73
- <div class="sm:flex-1 flex justify-end items-center sm:w-auto w-full">
74
- <%%== link.call(pagy.next, pagy_t('pagy.nav.next'), 'aria-label="next" class="flex justify-center items-center gap-2 py-2 px-4 rounded hover:bg-slate-50/50 group hover:text-primary-600 sm:w-auto w-full sm:bg-transparent bg-slate-50 sm:mt-0 mt-3 dark:hover:bg-primary-600 dark:hover:text-white dark:bg-primary-600 dark:text-white"') %>
75
- </div>
76
- <%% else %>
77
- <div class="sm:flex-1 flex justify-end items-center sm:w-auto w-full">
78
- <span class="opacity-40 dark:opacity-60 flex justify-center items-center gap-2 py-2 px-4 rounded sm:w-auto w-full bg-transparent sm:mt-0 mt-3 pointer-events-none select-none">
79
- <%%== pagy_t('pagy.nav.next') %>
80
- </span>
81
- </div>
82
- <%% end %>
83
- </div>
84
- </nav>
46
+ <%%== pagy_nav(pagy) %>
85
47
  <% end %>
86
48
 
87
- <% content_for :haml, flush: true do %>
88
- / Source: https://github.com/ddnexus/pagy/blob/master/lib/templates/nav.html.erb
89
-
90
- - link = pagy_link_proc(pagy)
91
- %nav.text-slate-500.sm:text-sm.text-base.font-medium{"aria-label" => "pager", role: "navigation"}
92
- .flex.flex-wrap.items-center.sm:justify-between.justify-center
93
- - if pagy.prev
94
- .sm:flex-1.flex.justify-start.items-center.sm:w-auto.w-full
95
- != link.call(pagy.prev, pagy_t('pagy.nav.prev'), 'aria-label="previous" class="flex justify-center items-center gap-2 py-2 px-4 rounded hover:bg-slate-50/50 group hover:text-primary-600 sm:w-auto w-full sm:bg-transparent bg-slate-50 sm:mb-0 mb-3 dark:hover:bg-primary-600 dark:hover:text-white dark:bg-primary-600 dark:text-white"')
96
- - else
97
- .sm:flex-1.flex.justify-start.items-center.sm:w-auto.w-full
98
- %span.opacity-40.dark:opacity-60.flex.justify-center.items-center.gap-2.py-2.px-4.rounded.sm:w-auto.w-full.bg-transparent.sm:mb-0.mb-3.pointer-events-none.select-none
99
- != pagy_t('pagy.nav.prev')
100
- / series example: [1, :gap, 7, 8, "9", 10, 11, :gap, 36]
101
- - pagy.series.each do |item|
102
- - if item.is_a?(Integer)
103
- != link.call(item, item, 'class="py-2 px-4 block border-t-2 border-transparent rounded hover:bg-slate-50/50 dark:hover:bg-slate-500/30 dark:hover:text-slate-200"')
104
- - elsif item.is_a?(String)
105
- %span.py-2.px-4.border-t-2.border-transparent.block.border-primary-500.text-primary-600.dark:hover:bg-primary-600.dark:hover:text-white.dark:hover:border-primary-600.dark:text-primary-400{class: "hover:bg-primary-50/50"}= item
106
- - elsif item == :gap
107
- %span.py-2.px-4.block.border-t-2.border-transparent.rounded.pointer-events-none.select-none!= pagy_t('pagy.nav.gap')
108
- - if pagy.next
109
- .sm:flex-1.flex.justify-end.items-center.sm:w-auto.w-full
110
- != link.call(pagy.next, pagy_t('pagy.nav.next'), 'aria-label="next" class="flex justify-center items-center gap-2 py-2 px-4 rounded hover:bg-slate-50/50 group hover:text-primary-600 sm:w-auto w-full sm:bg-transparent bg-slate-50 sm:mt-0 mt-3 dark:hover:bg-primary-600 dark:hover:text-white dark:bg-primary-600 dark:text-white"')
111
- - else
112
- .sm:flex-1.flex.justify-end.items-center.sm:w-auto.w-full
113
- %span.opacity-40.dark:opacity-60.flex.justify-center.items-center.gap-2.py-2.px-4.rounded.sm:w-auto.w-full.bg-transparent.sm:mt-0.mt-3.pointer-events-none.select-none
114
- != pagy_t('pagy.nav.next')
49
+ <% content_for :css, flush: true do %>
50
+ /* Custom Pagy Styles - Override defaults with hound theme design */
51
+ .pagy nav {
52
+ @apply text-slate-500 text-sm font-medium dark:text-slate-300;
53
+ }
54
+
55
+ .pagy nav > div {
56
+ @apply flex flex-wrap items-center justify-between;
57
+ }
58
+
59
+ /* Previous/Next buttons */
60
+ .pagy nav > div > span:first-child,
61
+ .pagy nav > div > span:last-child {
62
+ @apply flex-1 flex justify-start items-center w-auto;
63
+ }
115
64
 
65
+ .pagy nav > div > span:last-child {
66
+ @apply justify-end;
67
+ }
68
+
69
+ .pagy nav a[aria-label*="prev"],
70
+ .pagy nav a[aria-label*="next"] {
71
+ @apply flex justify-center items-center gap-2 py-2 px-4 rounded hover:bg-slate-50/50 group hover:text-primary-600 w-auto bg-transparent mb-0 mt-0 dark:hover:bg-primary-600 dark:hover:text-white dark:bg-primary-600 dark:text-white;
72
+ }
73
+
74
+ .pagy nav span:disabled {
75
+ @apply opacity-40 dark:opacity-60 flex justify-center items-center gap-2 py-2 px-4 rounded w-auto bg-transparent mb-0 mt-0 pointer-events-none select-none;
76
+ }
77
+
78
+ /* Page number links */
79
+ .pagy nav a:not([aria-label]) {
80
+ @apply py-2 px-4 block border-t-2 border-transparent rounded hover:bg-slate-50/50 dark:hover:bg-slate-500/30 dark:hover:text-slate-200;
81
+ }
82
+
83
+ .pagy nav a.current {
84
+ @apply py-2 px-4 border-t-2 border-transparent block border-primary-500 hover:bg-primary-50/50 text-primary-600 dark:hover:bg-primary-600 dark:hover:text-white dark:hover:border-primary-600 dark:text-primary-400;
85
+ }
86
+
87
+ .pagy nav span.gap {
88
+ @apply py-2 px-4 block border-t-2 border-transparent rounded pointer-events-none select-none;
89
+ }
116
90
  <% end %>
117
- <%= render_snippet active_tab: "erb" %>
91
+
92
+ <%= render_snippet active_tab: "css" %>
118
93
  <% end %>
119
94
  <% end %>
120
95
  </div>
@@ -89,30 +89,13 @@
89
89
  </div>
90
90
  <% end %>
91
91
 
92
- <% content_for :haml, flush: true do %>
93
- %div{"data-controller" => "railsui-tabs", "data-railsui-tabs-active-tab" => "border-b border-primary-600 inline-block bg-white text-primary-600 dark:bg-transparent dark:text-white dark:border-primary-400 py-3 px-4", "data-railsui-tabs-inactive-tab" => "border-b border-slate-200 inline-block bg-white text-slate-600 dark:bg-transparent dark:text-slate-100 dark:border-slate-600 py-3 px-4"}
94
- .border-slate-200.border-b.text-slate-600.dark:text-slate-100.dark:border-slate-600.font-medium.text-sm
95
- %nav.-mb-px{role: "navigation"}
96
- = link_to "Activity", "#", data: { action: "click-railsui-tabs#change", railsui_tabs_target: "tab" }, class: "border-b border-primary-600 inline-block bg-white text-primary-600 dark:bg-transparent dark:text-white dark:border-primary-400 py-3 px-4"
97
- = link_to "Account", "#", data: { action: "click-railsui-tabs#change", railsui_tabs_target: "tab"}, class: "border-b border-slate-200 inline-block bg-white text-slate-600 dark:bg-transparent dark:text-slate-100 dark:border-slate-600 py-3 px-4"
98
- = link_to "Billing", "#", data: { action: "click-railsui-tabs#change", railsui_tabs_target: "tab"}, class: "border-b border-slate-200 inline-block bg-white text-slate-600 dark:bg-transparent dark:text-slate-100 dark:border-slate-600 py-3 px-4"
99
- = link_to "Team", "#", data: { action: "click-railsui-tabs#change", railsui_tabs_target: "tab" }, class: "border-b border-slate-200 inline-block bg-white text-slate-600 dark:bg-transparent dark:text-slate-100 dark:border-slate-600 py-3 px-4"
100
- .p-4{"data-railsui-tabs-target" => "panel"}
101
- Some activities...
102
- .hidden.p-4{"data-railsui-tabs-target" => "panel"}
103
- Account information...
104
- .hidden.p-4{"data-railsui-tabs-target" => "panel"}
105
- Billing information...
106
- .hidden.p-4{"data-railsui-tabs-target" => "panel"}
107
- Team information...
108
- <% end %>
109
92
 
110
93
  <% content_for :js, flush: true do %>
111
94
  import { RailsuiTabs } from 'railsui-stimulus'
112
95
  application.register('railsui-tabs', RailsuiTabs)
113
96
  <% end %>
114
97
 
115
- <%= render_snippet html_filename: "tabs.html", erb_filename: "_tabs.html.erb", haml_filename: "_tabs.html.haml", js_filename: "index.js" %>
98
+ <%= render_snippet html_filename: "tabs.html", erb_filename: "_tabs.html.erb", js_filename: "index.js" %>
116
99
  <% end %>
117
100
  <% end %>
118
101
  </div>
@@ -90,30 +90,13 @@
90
90
  </div>
91
91
  <% end %>
92
92
 
93
- <% content_for :haml, flush: true do %>
94
- %div{"data-controller" => "railsui-tabs", "data-railsui-tabs-active-tab" => "py-2 px-4 bg-primary-50 inline-block rounded-full text-primary-600 dark:bg-primary-600 dark:text-white", "data-railsui-tabs-inactive-tab" => "py-2 px-4 rounded-full inline-block dark:bg-transparent dark:text-slate-300"}
95
- .text-slate-600.dark:text-slate-300
96
- %nav.flex.items-center.space-x-1.font-medium.text-sm{role: "navigation"}
97
- = link_to "Activity", "#", class: "py-2 px-4 bg-primary-50 inline-block rounded-full text-primary-600 dark:bg-primary-600 dark:text-white", data: { action: "click->railsui-tabs#change", railsui_tabs_target: "tab" }
98
- = link_to "Account", "#", class: "py-2 px-4 rounded-full inline-block dark:transparent dark:text-slate-300", data: { action: "click->railsui-tabs#change", railsui_tabs_target: "tab" }
99
- = link_to "Billing", "#", class: "py-2 px-4 rounded-full inline-block dark:transparent dark:text-slate-300", data: { action: "click->railsui-tabs#change", railsui_tabs_target: "tab" }
100
- = link_to "Team", "#", class: "py-2 px-4 rounded-full inline-block dark:transparent dark:text-slate-300", data: { action: "click->railsui-tabs#change", railsui_tabs_target: "tab" }
101
- .p-4{"data-railsui-tabs-target" => "panel"}
102
- Some activities...
103
- .hidden.p-4{"data-railsui-tabs-target" => "panel"}
104
- Account information...
105
- .hidden.p-4{"data-railsui-tabs-target" => "panel"}
106
- Billing information...
107
- .hidden.p-4{"data-railsui-tabs-target" => "panel"}
108
- Team information...
109
- <% end %>
110
93
 
111
94
  <% content_for :js, flush: true do %>
112
95
  import { RailsuiTabs } from 'railsui-stimulus'
113
96
  application.register('railsui-tabs', RailsuiTabs)
114
97
  <% end %>
115
98
 
116
- <%= render_snippet html_filename: "tabs.html", erb_filename: "_tabs.html.erb", haml_filename: "_tabs.html.haml", js_filename: "index.js" %>
99
+ <%= render_snippet html_filename: "tabs.html", erb_filename: "_tabs.html.erb", js_filename: "index.js" %>
117
100
  <% end %>
118
101
  <% end %>
119
102
  </div>
@@ -92,30 +92,13 @@
92
92
  </div>
93
93
  <% end %>
94
94
 
95
- <% content_for :haml, flush: true do %>
96
- %div{"data-controller" => "railsui-tabs", "data-railsui-tabs-active-tab" => "py-2 px-4 bg-primary-50 inline-block rounded-md text-primary-600 dark:bg-primary-600 dark:text-white", "data-railsui-tabs-inactive-tab" => "py-2 px-4 rounded-md inline-block dark:bg-slate-900 dark:text-slate-300"}
97
- %div
98
- %nav.flex.items-center.text-gray-600.space-x-1.font-medium.text-sm{role: "navigation"}
99
- = link_to "Activity", "#", class: "py-2 px-4 bg-primary-50 inline-block rounded-md text-primary-600 dark:bg-primary-600 dark:text-white", data: { action: "click->railsui-tabs#change", railsui_tabs_target: "tab" }
100
- = link_to "Account", "#", class: "py-2 px-4 rounded-md inline-block dark:bg-transparent dark:text-slate-300", data: { action: "click->railsui-tabs#change", railsui_tabs_target: "tab" }
101
- = link_to "Billing", "#", class: "py-2 px-4 rounded-md inline-block dark:bg-transparent dark:text-slate-300", data: { action: "click->railsui-tabs#change", railsui_tabs_target: "tab" }
102
- = link_to "Team", "#", class: "py-2 px-4 rounded-md inline-block dark:bg-transparent dark:text-slate-300", data: { action: "click->railsui-tabs#change", railsui_tabs_target: "tab" }
103
- .p-4{"data-railsui-tabs-target" => "panel"}
104
- Some activities...
105
- .hidden.p-4{"data-railsui-tabs-target" => "panel"}
106
- Account information...
107
- .hidden.p-4{"data-railsui-tabs-target" => "panel"}
108
- Billing information...
109
- .hidden.p-4{"data-railsui-tabs-target" => "panel"}
110
- Team information...
111
- <% end %>
112
95
 
113
96
  <% content_for :js, flush: true do %>
114
97
  import { RailsuiTabs } from 'railsui-stimulus'
115
98
  application.register('railsui-tabs', RailsuiTabs)
116
99
  <% end %>
117
100
 
118
- <%= render_snippet html_filename: "tabs.html", erb_filename: "_tabs.html.erb", haml_filename: "_tabs.html.haml", js_filename: "index.js" %>
101
+ <%= render_snippet html_filename: "tabs.html", erb_filename: "_tabs.html.erb", js_filename: "index.js" %>
119
102
  <% end %>
120
103
  <% end %>
121
104
  </div>
@@ -126,38 +126,13 @@
126
126
  </div>
127
127
  <% end %>
128
128
 
129
- <% content_for :haml, flush: true do %>
130
- %div{"data-controller" => "railsui-tabs", "data-railsui-tabs-active-tab" => "py-3 px-4 border-b border-primary-500 flex items-center space-x-3 whitespace-nowrap text-primary-600 dark:text-primary-400 dark:border-primary-400 rounded-t", "data-railsui-tabs-inactive-tab" => "py-3 px-4 flex items-center space-x-3 whitespace-nowrap border-b border-transparent dark:border-slate-600"}
131
- .border-slate-200.border-b.text-slate-600.dark:text-slate-200.dark:border-slate-600.text-sm.font-medium
132
- %nav.-mb-px.flex.items-center.flex-wrap{role: "navigation"}
133
- = link_to "#", class: "py-3 px-4 border-b border-primary-500 flex items-center space-x-3 whitespace-nowrap text-primary-600 dark:text-primary-400 dark:border-primary-400 rounded-t", data: { railsui_tabs_target: "tab", action: "click->railsui-tabs#change" } do
134
- = icon "chat-bubble-oval-left-ellipsis", class: "size-5"
135
- %span Activity
136
- = link_to "#", class: "py-3 px-4 flex items-center space-x-3 whitespace-nowrap border-b bg-transparent dark:bg-transparent dark:border-slate-600", data: { railsui_tabs_target: "tab", action: "click->railsui-tabs#change" } do
137
- = icon "user-circle", class: "size-5"
138
- %span Account
139
- = link_to "#", class: "py-3 px-4 flex items-center space-x-3 whitespace-nowrap border-b bg-transparent dark:bg-transparent dark:border-slate-600", data: { railsui_tabs_target: "tab", action: "click->railsui-tabs#change" } do
140
- = icon "credit-card", class: "size-5"
141
- %span Billing
142
- = link_to "#", class: "py-3 px-4 flex items-center space-x-3 whitespace-nowrap border-b bg-transparent dark:bg-transparent dark:border-slate-600", data: { railsui_tabs_target: "tab", action: "click->railsui-tabs#change" } do
143
- = icon "users", class: "size-5"
144
- %span Team
145
- .p-4{"data-railsui-tabs-target" => "panel"}
146
- Some activities...
147
- .hidden.p-4{"data-railsui-tabs-target" => "panel"}
148
- Account information...
149
- .hidden.p-4{"data-railsui-tabs-target" => "panel"}
150
- Billing information...
151
- .hidden.p-4{"data-railsui-tabs-target" => "panel"}
152
- Team information...
153
- <% end %>
154
129
 
155
130
  <% content_for :js, flush: true do %>
156
131
  import { RailsuiTabs } from 'railsui-stimulus'
157
132
  application.register('railsui-tabs', RailsuiTabs)
158
133
  <% end %>
159
134
 
160
- <%= render_snippet html_filename: "tabs.html", erb_filename: "_tabs.html.erb", haml_filename: "_tabs.html.haml", js_filename: "index.js" %>
135
+ <%= render_snippet html_filename: "tabs.html", erb_filename: "_tabs.html.erb", js_filename: "index.js" %>
161
136
  <% end %>
162
137
  <% end %>
163
138
  </div>
@@ -81,22 +81,6 @@
81
81
  </div>
82
82
  <% end %>
83
83
 
84
- <% content_for :haml, flush: true do %>
85
- .relative.overflow-hidden
86
- .pointer-events-none.absolute.flex.items-center.justify-end.px-4.py-6.sm:p-6.top-0.right-0.left-0.w-full.animate-toast-from-right(aria-live="assertive" data-controller="railsui-toast")
87
- .pointer-events-auto.w-full.max-w-sm.overflow-hidden.rounded-md.bg-white.shadow-lg.ring-1.ring-black.dark:bg-slate-950.dark:border(class="dark:border-slate-700/80 ring-black/10")
88
- .p-4
89
- .flex.items-start
90
- .shrink-0
91
- = icon "hand-thumb-up", class: "size-6 text-blue-500 dark:text-blue-400"
92
- .ml-3.w-0.flex-1(class="pt-0.5")
93
- %p.text-sm.font-medium.text-slate-900.dark:text-white Successfully liked!
94
- %p.mt-1.text-sm.text-slate-500.dark:text-slate-300 John Doe has been notified.
95
- .ml-4.flex.shrink-0
96
- %button.inline-flex.rounded-sm.bg-white.text-slate-400.hover:text-slate-500.focus:outline-hidden.focus:ring-2.focus:ring-slate-50.dark:bg-transparent.dark:focus:ring-slate-500.dark:hover:text-slate-100.dark:focus:text-slate-100(data-action="click->railsui-toast#hide" type="button")
97
- %span.sr-only Close
98
- = icon "x-mark", class: "size-5"
99
- <% end %>
100
84
 
101
85
  <% content_for :css, flush: true do %>
102
86
 
@@ -15,9 +15,6 @@
15
15
  <%%= button_tag "#", class: "btn btn-primary", data: { controller: "railsui-tooltip", railsui_tooltip_content_value: "This is the <strong>bold</strong> and <u>underlined</u> content inside my tooltip!", railsui_tooltip_allow_html_value: "true" } %>
16
16
  <% end %>
17
17
 
18
- <% content_for :haml, flush: true do %>
19
- %button.btn.btn-primary{"data-controller" => "railsui-tooltip", "data-railsui-tooltip-allow-html-value" => "true", "data-railsui-tooltip-content-value" => "This is the <strong>bold</strong> and <u>underlined</u> content inside my tooltip!"} Tooltip with HTML demo
20
- <% end %>
21
18
 
22
19
  <% content_for :js, flush: true do %>
23
20
  // https://github.com/getrailsui/railsui-stimulus/blob/main/src/railsui_tooltip.js
@@ -25,11 +25,6 @@
25
25
  </div>
26
26
  <% end %>
27
27
 
28
- <%# .haml %>
29
- <% content_for :haml, flush: true do %>
30
- .bg-slate-50
31
- image_tag "#", class: "object-contain h-48 w-96"
32
- <% end %>
33
28
  <%= render_snippet %>
34
29
  <% end %>
35
30
  <% end %>
@@ -26,11 +26,6 @@
26
26
  </div>
27
27
  <% end %>
28
28
 
29
- <%# .haml %>
30
- <% content_for :haml, flush: true do %>
31
- .bg-slate-50
32
- image_tag "#", class: "object-cover h-48 w-96"
33
- <% end %>
34
29
  <%= render_snippet %>
35
30
 
36
31
  <% end %>
@@ -26,11 +26,6 @@
26
26
  </div>
27
27
  <% end %>
28
28
 
29
- <%# .haml %>
30
- <% content_for :haml, flush: true do %>
31
- .bg-slate-50
32
- image_tag "#", class: "object-fill h-48 w-96"
33
- <% end %>
34
29
  <%= render_snippet %>
35
30
  <% end %>
36
31
  <% end %>