railsui 3.1.4 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.claude/settings.local.json +10 -0
- data/Gemfile.lock +29 -27
- data/README.md +1 -1
- data/app/assets/images/tailwind-corgie-thumbnail.jpg +0 -0
- data/app/assets/stylesheets/railsui/railsui.css +18 -0
- data/app/helpers/railsui/application_helper.rb +22 -17
- data/app/helpers/railsui/host_route_fallback_helper.rb +18 -0
- data/app/javascript/controllers/alert_controller.js +0 -0
- data/app/models/railsui/default.rb +28 -109
- data/app/views/railsui/admin/fields/_color.html.erb +6 -1
- data/app/views/railsui/admin/fields/_theme.html.erb +16 -8
- data/app/views/railsui/default/_launchpad.html.erb +1 -1
- data/app/views/railsui/shared/_flash_messages.html.erb +2 -2
- data/app/views/railsui/shared/_full_access_cta.html.erb +27 -0
- data/app/views/railsui/shared/_global_nav.html.erb +2 -2
- data/app/views/railsui/shared/_preview.html.erb +1 -1
- data/app/views/railsui/shared/_rui_email_preview.html.erb +60 -3
- data/app/views/railsui/systems/forms/form_builder.html.erb +171 -0
- data/app/views/railsui/themes/corgie/_components.html.erb +7 -0
- data/app/views/railsui/themes/corgie/_content.html.erb +9 -0
- data/app/views/railsui/themes/corgie/_fonts.html.erb +0 -0
- data/app/views/railsui/themes/corgie/_forms.html.erb +19 -0
- data/app/views/railsui/themes/corgie/_icons.html.erb +125 -0
- data/app/views/railsui/themes/corgie/_nav.html.erb +166 -0
- data/app/views/railsui/themes/corgie/_scaffolds.html.erb +42 -0
- data/app/views/railsui/themes/corgie/authentication/_overview.html.erb +5 -0
- data/app/views/railsui/themes/corgie/authentication/devise/_change_password.html.erb +74 -0
- data/app/views/railsui/themes/corgie/authentication/devise/_confirmation.html.erb +63 -0
- data/app/views/railsui/themes/corgie/authentication/devise/_edit.html.erb +103 -0
- data/app/views/railsui/themes/corgie/authentication/devise/_overview.html.erb +225 -0
- data/app/views/railsui/themes/corgie/authentication/devise/_reset_password.html.erb +60 -0
- data/app/views/railsui/themes/corgie/authentication/devise/_signin.html.erb +93 -0
- data/app/views/railsui/themes/corgie/authentication/devise/_signup.html.erb +98 -0
- data/app/views/railsui/themes/corgie/authentication/devise/_unlocks.html.erb +60 -0
- data/app/views/railsui/themes/corgie/authentication/static/_change_password.html.erb +67 -0
- data/app/views/railsui/themes/corgie/authentication/static/_confirmation.html.erb +58 -0
- data/app/views/railsui/themes/corgie/authentication/static/_overview.html.erb +204 -0
- data/app/views/railsui/themes/corgie/authentication/static/_reset_password.html.erb +59 -0
- data/app/views/railsui/themes/corgie/authentication/static/_signin.html.erb +102 -0
- data/app/views/railsui/themes/corgie/authentication/static/_signup.html.erb +108 -0
- data/app/views/railsui/themes/corgie/authentication/static/_unlocks.html.erb +60 -0
- data/app/views/railsui/themes/corgie/components/_accordion.html.erb +17 -0
- data/app/views/railsui/themes/corgie/components/_alert.html.erb +23 -0
- data/app/views/railsui/themes/corgie/components/_avatar.html.erb +13 -0
- data/app/views/railsui/themes/corgie/components/_badge.html.erb +20 -0
- data/app/views/railsui/themes/corgie/components/_breadcrumb.html.erb +14 -0
- data/app/views/railsui/themes/corgie/components/_button.html.erb +16 -0
- data/app/views/railsui/themes/corgie/components/_card.html.erb +23 -0
- data/app/views/railsui/themes/corgie/components/_combobox.html.erb +11 -0
- data/app/views/railsui/themes/corgie/components/_dropdown.html.erb +22 -0
- data/app/views/railsui/themes/corgie/components/_flash.html.erb +17 -0
- data/app/views/railsui/themes/corgie/components/_modal.html.erb +27 -0
- data/app/views/railsui/themes/corgie/components/_navigation.html.erb +7 -0
- data/app/views/railsui/themes/corgie/components/_pagination.html.erb +15 -0
- data/app/views/railsui/themes/corgie/components/_tab.html.erb +23 -0
- data/app/views/railsui/themes/corgie/components/_toast.html.erb +75 -0
- data/app/views/railsui/themes/corgie/components/_tooltip.html.erb +77 -0
- data/app/views/railsui/themes/corgie/components/accordion/_contained.html.erb +90 -0
- data/app/views/railsui/themes/corgie/components/accordion/_flush.html.erb +92 -0
- data/app/views/railsui/themes/corgie/components/alert/_dismissable.html.erb +45 -0
- data/app/views/railsui/themes/corgie/components/alert/_with_accent_border.html.erb +32 -0
- data/app/views/railsui/themes/corgie/components/alert/_with_actions.html.erb +57 -0
- data/app/views/railsui/themes/corgie/components/alert/_with_description.html.erb +41 -0
- data/app/views/railsui/themes/corgie/components/alert/_with_list.html.erb +46 -0
- data/app/views/railsui/themes/corgie/components/avatar/_circle.html.erb +53 -0
- data/app/views/railsui/themes/corgie/components/avatar/_rounded.html.erb +53 -0
- data/app/views/railsui/themes/corgie/components/badge/_basic.html.erb +70 -0
- data/app/views/railsui/themes/corgie/components/badge/_outline.html.erb +67 -0
- data/app/views/railsui/themes/corgie/components/badge/_pill.html.erb +67 -0
- data/app/views/railsui/themes/corgie/components/badge/_tag.html.erb +277 -0
- data/app/views/railsui/themes/corgie/components/breadcrumb/_article.html.erb +88 -0
- data/app/views/railsui/themes/corgie/components/breadcrumb/_base.html.erb +77 -0
- data/app/views/railsui/themes/corgie/components/button/_base.html.erb +38 -0
- data/app/views/railsui/themes/corgie/components/button/_expanded.html.erb +24 -0
- data/app/views/railsui/themes/corgie/components/button/_sizes.html.erb +31 -0
- data/app/views/railsui/themes/corgie/components/card/_article.html.erb +119 -0
- data/app/views/railsui/themes/corgie/components/card/_base.html.erb +34 -0
- data/app/views/railsui/themes/corgie/components/card/_feature.html.erb +54 -0
- data/app/views/railsui/themes/corgie/components/card/_team_member.html.erb +60 -0
- data/app/views/railsui/themes/corgie/components/card/_value.html.erb +54 -0
- data/app/views/railsui/themes/corgie/components/combobox/_base.html.erb +250 -0
- data/app/views/railsui/themes/corgie/components/dropdown/_base.html.erb +61 -0
- data/app/views/railsui/themes/corgie/components/dropdown/_dropdown.html.erb +24 -0
- data/app/views/railsui/themes/corgie/components/dropdown/_dropdown_w_icon.html.erb +27 -0
- data/app/views/railsui/themes/corgie/components/dropdown/_right_aligned.html.erb +82 -0
- data/app/views/railsui/themes/corgie/components/dropdown/_with_dividers.html.erb +93 -0
- data/app/views/railsui/themes/corgie/components/dropdown/_with_icons.html.erb +85 -0
- data/app/views/railsui/themes/corgie/components/dropdown/tutorial/_1.html.erb +44 -0
- data/app/views/railsui/themes/corgie/components/dropdown/tutorial/_2.html.erb +16 -0
- data/app/views/railsui/themes/corgie/components/dropdown/tutorial/_3.html.erb +16 -0
- data/app/views/railsui/themes/corgie/components/dropdown/tutorial/_4.html.erb +27 -0
- data/app/views/railsui/themes/corgie/components/dropdown/tutorial/_dependencies.html.erb +3 -0
- data/app/views/railsui/themes/corgie/components/dropdown/tutorial/_tutorial.html.erb +25 -0
- data/app/views/railsui/themes/corgie/components/flash/_alert.html.erb +29 -0
- data/app/views/railsui/themes/corgie/components/flash/_dynamic.html.erb +46 -0
- data/app/views/railsui/themes/corgie/components/flash/_notice.html.erb +29 -0
- data/app/views/railsui/themes/corgie/components/modal/_base.html.erb +110 -0
- data/app/views/railsui/themes/corgie/components/modal/_centered_dual_action.html.erb +124 -0
- data/app/views/railsui/themes/corgie/components/modal/_dismiss_icon.html.erb +124 -0
- data/app/views/railsui/themes/corgie/components/modal/_settings.html.erb +201 -0
- data/app/views/railsui/themes/corgie/components/modal/_single_action.html.erb +119 -0
- data/app/views/railsui/themes/corgie/components/modal/_with_form.html.erb +148 -0
- data/app/views/railsui/themes/corgie/components/navigation/_base.html.erb +215 -0
- data/app/views/railsui/themes/corgie/components/navigation/_chat.html.erb +194 -0
- data/app/views/railsui/themes/corgie/components/navigation/_nav_preview.html.erb +9 -0
- data/app/views/railsui/themes/corgie/components/pagination/_contained.html.erb +131 -0
- data/app/views/railsui/themes/corgie/components/pagination/_pagy.html.erb +97 -0
- data/app/views/railsui/themes/corgie/components/pagination/_simple.html.erb +114 -0
- data/app/views/railsui/themes/corgie/components/tab/_base.html.erb +101 -0
- data/app/views/railsui/themes/corgie/components/tab/_pills.html.erb +102 -0
- data/app/views/railsui/themes/corgie/components/tab/_rounded.html.erb +104 -0
- data/app/views/railsui/themes/corgie/components/tab/_vertical.html.erb +145 -0
- data/app/views/railsui/themes/corgie/components/tab/_with_icons.html.erb +138 -0
- data/app/views/railsui/themes/corgie/components/toast/_base.html.erb +98 -0
- data/app/views/railsui/themes/corgie/components/tooltip/_base.html.erb +51 -0
- data/app/views/railsui/themes/corgie/content/_image.html.erb +31 -0
- data/app/views/railsui/themes/corgie/content/_table.html.erb +21 -0
- data/app/views/railsui/themes/corgie/content/_typography.html.erb +47 -0
- data/app/views/railsui/themes/corgie/content/image/_object_contain.html.erb +31 -0
- data/app/views/railsui/themes/corgie/content/image/_object_cover.html.erb +32 -0
- data/app/views/railsui/themes/corgie/content/image/_object_fill.html.erb +32 -0
- data/app/views/railsui/themes/corgie/content/image/_object_scale_down.html.erb +34 -0
- data/app/views/railsui/themes/corgie/content/image/_responsive.html.erb +24 -0
- data/app/views/railsui/themes/corgie/content/table/_bordered.html.erb +93 -0
- data/app/views/railsui/themes/corgie/content/table/_borderless.html.erb +92 -0
- data/app/views/railsui/themes/corgie/content/table/_comparison.html.erb +494 -0
- data/app/views/railsui/themes/corgie/content/typography/_blockquote.html.erb +41 -0
- data/app/views/railsui/themes/corgie/content/typography/_display_headings.html.erb +70 -0
- data/app/views/railsui/themes/corgie/content/typography/_fonts.html.erb +30 -0
- data/app/views/railsui/themes/corgie/content/typography/_headings.html.erb +88 -0
- data/app/views/railsui/themes/corgie/content/typography/_inline_formatting.html.erb +44 -0
- data/app/views/railsui/themes/corgie/content/typography/_lead_paragraph.html.erb +26 -0
- data/app/views/railsui/themes/corgie/content/typography/_lists.html.erb +82 -0
- data/app/views/railsui/themes/corgie/content/typography/_paragraphs.html.erb +33 -0
- data/app/views/railsui/themes/corgie/forms/_action_text.html.erb +54 -0
- data/app/views/railsui/themes/corgie/forms/_checkbox.html.erb +60 -0
- data/app/views/railsui/themes/corgie/forms/_form_builder.html.erb +487 -0
- data/app/views/railsui/themes/corgie/forms/_input.html.erb +378 -0
- data/app/views/railsui/themes/corgie/forms/_input_group.html.erb +485 -0
- data/app/views/railsui/themes/corgie/forms/_radio.html.erb +92 -0
- data/app/views/railsui/themes/corgie/forms/_select.html.erb +118 -0
- data/app/views/railsui/themes/corgie/forms/_switch.html.erb +60 -0
- data/app/views/railsui/themes/corgie/forms/_validation.html.erb +52 -0
- data/app/views/railsui/themes/corgie/mailers/_devise.html.erb +44 -0
- data/app/views/railsui/themes/corgie/mailers/_layout.html.erb +536 -0
- data/app/views/railsui/themes/corgie/mailers/_mailer_preview.html.erb +523 -0
- data/app/views/railsui/themes/corgie/mailers/_minimal.html.erb +63 -0
- data/app/views/railsui/themes/corgie/mailers/_promotion.html.erb +62 -0
- data/app/views/railsui/themes/corgie/mailers/_transactional.html.erb +133 -0
- data/app/views/railsui/themes/corgie/mailers/devise/_confirmation_instructions.html.erb +34 -0
- data/app/views/railsui/themes/corgie/mailers/devise/_email_changed.html.erb +32 -0
- data/app/views/railsui/themes/corgie/mailers/devise/_password_changed.html.erb +25 -0
- data/app/views/railsui/themes/corgie/mailers/devise/_reset_password_instructions.html.erb +33 -0
- data/app/views/railsui/themes/corgie/mailers/devise/_unlock_instructions.html.erb +32 -0
- data/app/views/railsui/themes/corgie/scaffolds/_edit.html.erb +88 -0
- data/app/views/railsui/themes/corgie/scaffolds/_index.html.erb +88 -0
- data/app/views/railsui/themes/corgie/scaffolds/_new.html.erb +80 -0
- data/app/views/railsui/themes/corgie/scaffolds/_partial.html.erb +56 -0
- data/app/views/railsui/themes/corgie/scaffolds/_show.html.erb +85 -0
- data/app/views/railsui/themes/hound/_forms.html.erb +2 -0
- data/app/views/railsui/themes/hound/_nav.html.erb +2 -0
- data/app/views/railsui/themes/hound/authentication/devise/_change_password.html.erb +1 -27
- data/app/views/railsui/themes/hound/authentication/devise/_confirmation.html.erb +1 -20
- data/app/views/railsui/themes/hound/authentication/devise/_edit.html.erb +1 -44
- data/app/views/railsui/themes/hound/authentication/devise/_overview.html.erb +3 -51
- data/app/views/railsui/themes/hound/authentication/devise/_reset_password.html.erb +1 -17
- data/app/views/railsui/themes/hound/authentication/devise/_signin.html.erb +1 -30
- data/app/views/railsui/themes/hound/authentication/devise/_signup.html.erb +1 -31
- data/app/views/railsui/themes/hound/authentication/devise/_unlocks.html.erb +1 -17
- data/app/views/railsui/themes/hound/authentication/static/_change_password.html.erb +1 -32
- data/app/views/railsui/themes/hound/authentication/static/_confirmation.html.erb +1 -23
- data/app/views/railsui/themes/hound/authentication/static/_edit.html.erb +1 -39
- data/app/views/railsui/themes/hound/authentication/static/_overview.html.erb +2 -40
- data/app/views/railsui/themes/hound/authentication/static/_reset_password.html.erb +1 -22
- data/app/views/railsui/themes/hound/authentication/static/_signin.html.erb +1 -35
- data/app/views/railsui/themes/hound/authentication/static/_signup.html.erb +1 -31
- data/app/views/railsui/themes/hound/authentication/static/_unlocks.html.erb +1 -20
- data/app/views/railsui/themes/hound/components/_toast.html.erb +0 -3
- data/app/views/railsui/themes/hound/components/accordion/_contained.html.erb +0 -27
- data/app/views/railsui/themes/hound/components/accordion/_flush.html.erb +0 -27
- data/app/views/railsui/themes/hound/components/alert/_dismissable.html.erb +0 -8
- data/app/views/railsui/themes/hound/components/alert/_with_accent_border.html.erb +0 -7
- data/app/views/railsui/themes/hound/components/alert/_with_actions.html.erb +0 -11
- data/app/views/railsui/themes/hound/components/alert/_with_description.html.erb +0 -7
- data/app/views/railsui/themes/hound/components/alert/_with_list.html.erb +0 -8
- data/app/views/railsui/themes/hound/components/avatar/_circle.html.erb +0 -12
- data/app/views/railsui/themes/hound/components/avatar/_rounded.html.erb +0 -12
- data/app/views/railsui/themes/hound/components/badge/_basic.html.erb +0 -22
- data/app/views/railsui/themes/hound/components/badge/_outline.html.erb +0 -22
- data/app/views/railsui/themes/hound/components/badge/_pill.html.erb +0 -22
- data/app/views/railsui/themes/hound/components/badge/_tag.html.erb +0 -52
- data/app/views/railsui/themes/hound/components/breadcrumb/_base.html.erb +0 -14
- data/app/views/railsui/themes/hound/components/breadcrumb/_contained.html.erb +0 -14
- data/app/views/railsui/themes/hound/components/button/_base.html.erb +0 -10
- data/app/views/railsui/themes/hound/components/button/_expanded.html.erb +0 -3
- data/app/views/railsui/themes/hound/components/button/_sizes.html.erb +0 -5
- data/app/views/railsui/themes/hound/components/card/_base.html.erb +0 -6
- data/app/views/railsui/themes/hound/components/card/_user_card.html.erb +0 -13
- data/app/views/railsui/themes/hound/components/card/_user_card_dropdown.html.erb +0 -20
- data/app/views/railsui/themes/hound/components/card/_user_card_with_actions.html.erb +0 -18
- data/app/views/railsui/themes/hound/components/card/_with_action.html.erb +0 -13
- data/app/views/railsui/themes/hound/components/card/_with_header.html.erb +0 -43
- data/app/views/railsui/themes/hound/components/combobox/_base.html.erb +0 -40
- data/app/views/railsui/themes/hound/components/dropdown/_base.html.erb +0 -10
- data/app/views/railsui/themes/hound/components/dropdown/_right_aligned.html.erb +0 -14
- data/app/views/railsui/themes/hound/components/dropdown/_with_dividers.html.erb +0 -14
- data/app/views/railsui/themes/hound/components/dropdown/_with_icons.html.erb +0 -20
- data/app/views/railsui/themes/hound/components/flash/_alert.html.erb +0 -5
- data/app/views/railsui/themes/hound/components/flash/_dynamic.html.erb +0 -5
- data/app/views/railsui/themes/hound/components/flash/_notice.html.erb +0 -5
- data/app/views/railsui/themes/hound/components/modal/_base.html.erb +0 -13
- data/app/views/railsui/themes/hound/components/modal/_centered_dual_action.html.erb +0 -16
- data/app/views/railsui/themes/hound/components/modal/_dismiss_icon.html.erb +0 -20
- data/app/views/railsui/themes/hound/components/modal/_single_action.html.erb +0 -15
- data/app/views/railsui/themes/hound/components/modal/_with_form.html.erb +0 -23
- data/app/views/railsui/themes/hound/components/navigation/_base.html.erb +1 -41
- data/app/views/railsui/themes/hound/components/navigation/_with_action.html.erb +1 -38
- data/app/views/railsui/themes/hound/components/navigation/_with_dropdowns.html.erb +1 -105
- data/app/views/railsui/themes/hound/components/navigation/_with_search.html.erb +1 -41
- data/app/views/railsui/themes/hound/components/pagination/_contained.html.erb +0 -31
- data/app/views/railsui/themes/hound/components/pagination/_minimal.html.erb +0 -27
- data/app/views/railsui/themes/hound/components/pagination/_pagy.html.erb +47 -72
- data/app/views/railsui/themes/hound/components/tab/_base.html.erb +1 -18
- data/app/views/railsui/themes/hound/components/tab/_pills.html.erb +1 -18
- data/app/views/railsui/themes/hound/components/tab/_rounded.html.erb +1 -18
- data/app/views/railsui/themes/hound/components/tab/_with_icons.html.erb +1 -26
- data/app/views/railsui/themes/hound/components/toast/_base.html.erb +0 -16
- data/app/views/railsui/themes/hound/components/tooltip/_base.html.erb +0 -3
- data/app/views/railsui/themes/hound/content/image/_object_contain.html.erb +0 -5
- data/app/views/railsui/themes/hound/content/image/_object_cover.html.erb +0 -5
- data/app/views/railsui/themes/hound/content/image/_object_fill.html.erb +0 -5
- data/app/views/railsui/themes/hound/content/image/_object_scale_down.html.erb +0 -5
- data/app/views/railsui/themes/hound/content/image/_responsive.html.erb +0 -4
- data/app/views/railsui/themes/hound/content/table/_bordered.html.erb +0 -21
- data/app/views/railsui/themes/hound/content/table/_borderless.html.erb +0 -21
- data/app/views/railsui/themes/hound/content/typography/_blockquote.html.erb +0 -9
- data/app/views/railsui/themes/hound/content/typography/_display_headings.html.erb +0 -9
- data/app/views/railsui/themes/hound/content/typography/_headings.html.erb +0 -12
- data/app/views/railsui/themes/hound/content/typography/_inline_formatting.html.erb +0 -20
- data/app/views/railsui/themes/hound/content/typography/_lead_paragraph.html.erb +0 -5
- data/app/views/railsui/themes/hound/content/typography/_lists.html.erb +0 -17
- data/app/views/railsui/themes/hound/content/typography/_paragraphs.html.erb +0 -4
- data/app/views/railsui/themes/hound/forms/_action_text.html.erb +0 -6
- data/app/views/railsui/themes/hound/forms/_checkbox.html.erb +0 -9
- data/app/views/railsui/themes/hound/forms/_form_builder.html.erb +487 -0
- data/app/views/railsui/themes/hound/forms/_input.html.erb +0 -93
- data/app/views/railsui/themes/hound/forms/_input_group.html.erb +0 -83
- data/app/views/railsui/themes/hound/forms/_radio.html.erb +0 -13
- data/app/views/railsui/themes/hound/forms/_select.html.erb +0 -16
- data/app/views/railsui/themes/hound/forms/_switch.html.erb +0 -9
- data/app/views/railsui/themes/hound/forms/_validation.html.erb +0 -15
- data/app/views/railsui/themes/hound/mailers/_layout.html.erb +1 -432
- data/app/views/railsui/themes/hound/mailers/_minimal.html.erb +1 -16
- data/app/views/railsui/themes/hound/mailers/_promotion.html.erb +1 -20
- data/app/views/railsui/themes/hound/mailers/_transactional.html.erb +1 -43
- data/app/views/railsui/themes/hound/mailers/devise/_confirmation_instructions.html.erb +1 -9
- data/app/views/railsui/themes/hound/mailers/devise/_email_changed.html.erb +1 -13
- data/app/views/railsui/themes/hound/mailers/devise/_password_changed.html.erb +1 -7
- data/app/views/railsui/themes/hound/mailers/devise/_reset_password_instructions.html.erb +1 -9
- data/app/views/railsui/themes/hound/mailers/devise/_unlock_instructions.html.erb +1 -9
- data/app/views/railsui/themes/hound/scaffolds/_edit.html.erb +1 -19
- data/app/views/railsui/themes/hound/scaffolds/_index.html.erb +1 -14
- data/app/views/railsui/themes/hound/scaffolds/_new.html.erb +1 -17
- data/app/views/railsui/themes/hound/scaffolds/_partial.html.erb +1 -17
- data/app/views/railsui/themes/hound/scaffolds/_show.html.erb +1 -20
- data/app/views/railsui/themes/shepherd/_forms.html.erb +5 -3
- data/app/views/railsui/themes/shepherd/_nav.html.erb +2 -0
- data/app/views/railsui/themes/shepherd/authentication/devise/_change_password.html.erb +1 -23
- data/app/views/railsui/themes/shepherd/authentication/devise/_confirmation.html.erb +1 -12
- data/app/views/railsui/themes/shepherd/authentication/devise/_edit.html.erb +1 -74
- data/app/views/railsui/themes/shepherd/authentication/devise/_overview.html.erb +2 -57
- data/app/views/railsui/themes/shepherd/authentication/devise/_reset_password.html.erb +1 -12
- data/app/views/railsui/themes/shepherd/authentication/devise/_signin.html.erb +1 -25
- data/app/views/railsui/themes/shepherd/authentication/devise/_signup.html.erb +1 -26
- data/app/views/railsui/themes/shepherd/authentication/devise/_unlocks.html.erb +1 -12
- data/app/views/railsui/themes/shepherd/authentication/static/_change_password.html.erb +1 -23
- data/app/views/railsui/themes/shepherd/authentication/static/_confirmation.html.erb +1 -12
- data/app/views/railsui/themes/shepherd/authentication/static/_edit.html.erb +1 -67
- data/app/views/railsui/themes/shepherd/authentication/static/_overview.html.erb +1 -56
- data/app/views/railsui/themes/shepherd/authentication/static/_reset_password.html.erb +1 -12
- data/app/views/railsui/themes/shepherd/authentication/static/_signin.html.erb +1 -24
- data/app/views/railsui/themes/shepherd/authentication/static/_signup.html.erb +1 -26
- data/app/views/railsui/themes/shepherd/authentication/static/_unlocks.html.erb +1 -16
- data/app/views/railsui/themes/shepherd/components/_toast.html.erb +0 -3
- data/app/views/railsui/themes/shepherd/components/accordion/_contained.html.erb +0 -28
- data/app/views/railsui/themes/shepherd/components/accordion/_flush.html.erb +0 -27
- data/app/views/railsui/themes/shepherd/components/alert/_dismissable.html.erb +0 -8
- data/app/views/railsui/themes/shepherd/components/alert/_with_accent_border.html.erb +0 -6
- data/app/views/railsui/themes/shepherd/components/alert/_with_actions.html.erb +0 -11
- data/app/views/railsui/themes/shepherd/components/alert/_with_description.html.erb +0 -7
- data/app/views/railsui/themes/shepherd/components/alert/_with_list.html.erb +0 -8
- data/app/views/railsui/themes/shepherd/components/avatar/_circle.html.erb +0 -12
- data/app/views/railsui/themes/shepherd/components/avatar/_rounded.html.erb +0 -12
- data/app/views/railsui/themes/shepherd/components/badge/_basic.html.erb +0 -22
- data/app/views/railsui/themes/shepherd/components/badge/_outline.html.erb +0 -22
- data/app/views/railsui/themes/shepherd/components/badge/_pill.html.erb +0 -22
- data/app/views/railsui/themes/shepherd/components/badge/_tag.html.erb +0 -52
- data/app/views/railsui/themes/shepherd/components/breadcrumb/_base.html.erb +0 -14
- data/app/views/railsui/themes/shepherd/components/breadcrumb/_contained.html.erb +0 -14
- data/app/views/railsui/themes/shepherd/components/button/_base.html.erb +0 -17
- data/app/views/railsui/themes/shepherd/components/button/_expanded.html.erb +0 -3
- data/app/views/railsui/themes/shepherd/components/button/_sizes.html.erb +0 -5
- data/app/views/railsui/themes/shepherd/components/card/_base.html.erb +0 -6
- data/app/views/railsui/themes/shepherd/components/card/_property_card.html.erb +0 -28
- data/app/views/railsui/themes/shepherd/components/card/_property_user_card.html.erb +0 -14
- data/app/views/railsui/themes/shepherd/components/card/_user_card_with_actions.html.erb +0 -12
- data/app/views/railsui/themes/shepherd/components/card/_with_action.html.erb +0 -7
- data/app/views/railsui/themes/shepherd/components/card/_with_header.html.erb +0 -7
- data/app/views/railsui/themes/shepherd/components/combobox/_base.html.erb +0 -40
- data/app/views/railsui/themes/shepherd/components/datalist/_booking_list.html.erb +0 -45
- data/app/views/railsui/themes/shepherd/components/datalist/_property_list.html.erb +0 -47
- data/app/views/railsui/themes/shepherd/components/dropdown/_base.html.erb +0 -10
- data/app/views/railsui/themes/shepherd/components/dropdown/_right_aligned.html.erb +0 -13
- data/app/views/railsui/themes/shepherd/components/dropdown/_with_dividers.html.erb +0 -14
- data/app/views/railsui/themes/shepherd/components/dropdown/_with_menu_icons.html.erb +0 -16
- data/app/views/railsui/themes/shepherd/components/flash/_alert.html.erb +0 -5
- data/app/views/railsui/themes/shepherd/components/flash/_dynamic.html.erb +0 -5
- data/app/views/railsui/themes/shepherd/components/flash/_notice.html.erb +0 -5
- data/app/views/railsui/themes/shepherd/components/modal/_base.html.erb +0 -12
- data/app/views/railsui/themes/shepherd/components/modal/_centered_dual_action.html.erb +0 -16
- data/app/views/railsui/themes/shepherd/components/modal/_dismiss_icon.html.erb +0 -23
- data/app/views/railsui/themes/shepherd/components/modal/_single_action.html.erb +0 -14
- data/app/views/railsui/themes/shepherd/components/modal/_with_form.html.erb +0 -23
- data/app/views/railsui/themes/shepherd/components/navigation/_base.html.erb +0 -81
- data/app/views/railsui/themes/shepherd/components/navigation/_logged_out.html.erb +0 -22
- data/app/views/railsui/themes/shepherd/components/navigation/_with_dropdowns.html.erb +0 -88
- data/app/views/railsui/themes/shepherd/components/navigation/_with_search.html.erb +1 -83
- data/app/views/railsui/themes/shepherd/components/pagination/_contained.html.erb +0 -31
- data/app/views/railsui/themes/shepherd/components/pagination/_dark.html.erb +0 -31
- data/app/views/railsui/themes/shepherd/components/pagination/_pagy.html.erb +53 -98
- data/app/views/railsui/themes/shepherd/components/pagination/_simple.html.erb +0 -27
- data/app/views/railsui/themes/shepherd/components/tab/_base.html.erb +1 -18
- data/app/views/railsui/themes/shepherd/components/tab/_pills.html.erb +1 -18
- data/app/views/railsui/themes/shepherd/components/tab/_rounded.html.erb +1 -18
- data/app/views/railsui/themes/shepherd/components/tab/_with_icons.html.erb +1 -26
- data/app/views/railsui/themes/shepherd/components/toast/_base.html.erb +0 -16
- data/app/views/railsui/themes/shepherd/components/tooltip/_base.html.erb +0 -3
- data/app/views/railsui/themes/shepherd/content/_image_old.html.erb +0 -20
- data/app/views/railsui/themes/shepherd/content/image/_object_contain.html.erb +0 -5
- data/app/views/railsui/themes/shepherd/content/image/_object_cover.html.erb +0 -5
- data/app/views/railsui/themes/shepherd/content/image/_object_fill.html.erb +0 -5
- data/app/views/railsui/themes/shepherd/content/image/_object_scale_down.html.erb +0 -5
- data/app/views/railsui/themes/shepherd/content/image/_responsive.html.erb +0 -4
- data/app/views/railsui/themes/shepherd/content/table/_bordered.html.erb +0 -21
- data/app/views/railsui/themes/shepherd/content/table/_borderless.html.erb +0 -21
- data/app/views/railsui/themes/shepherd/content/typography/_blockquote.html.erb +0 -9
- data/app/views/railsui/themes/shepherd/content/typography/_display_headings.html.erb +0 -9
- data/app/views/railsui/themes/shepherd/content/typography/_headings.html.erb +0 -15
- data/app/views/railsui/themes/shepherd/content/typography/_inline_formatting.html.erb +0 -21
- data/app/views/railsui/themes/shepherd/content/typography/_lead_paragraph.html.erb +0 -5
- data/app/views/railsui/themes/shepherd/content/typography/_lists.html.erb +0 -17
- data/app/views/railsui/themes/shepherd/content/typography/_paragraphs.html.erb +0 -4
- data/app/views/railsui/themes/shepherd/forms/_action_text.html.erb +0 -6
- data/app/views/railsui/themes/shepherd/forms/_checkbox.html.erb +0 -9
- data/app/views/railsui/themes/shepherd/forms/_form_builder.html.erb +487 -0
- data/app/views/railsui/themes/shepherd/forms/_input.html.erb +0 -119
- data/app/views/railsui/themes/shepherd/forms/_input_group.html.erb +0 -81
- data/app/views/railsui/themes/shepherd/forms/_radio.html.erb +0 -13
- data/app/views/railsui/themes/shepherd/forms/_select.html.erb +0 -16
- data/app/views/railsui/themes/shepherd/forms/_switch.html.erb +0 -9
- data/app/views/railsui/themes/shepherd/forms/_validation.html.erb +0 -11
- data/app/views/railsui/themes/shepherd/mailers/_layout.html.erb +1 -493
- data/app/views/railsui/themes/shepherd/mailers/_minimal.html.erb +1 -16
- data/app/views/railsui/themes/shepherd/mailers/_promotion.html.erb +1 -20
- data/app/views/railsui/themes/shepherd/mailers/_transactional.html.erb +1 -43
- data/app/views/railsui/themes/shepherd/mailers/devise/_confirmation_instructions.html.erb +1 -9
- data/app/views/railsui/themes/shepherd/mailers/devise/_email_changed.html.erb +1 -12
- data/app/views/railsui/themes/shepherd/mailers/devise/_password_changed.html.erb +1 -7
- data/app/views/railsui/themes/shepherd/mailers/devise/_reset_password_instructions.html.erb +1 -9
- data/app/views/railsui/themes/shepherd/mailers/devise/_unlock_instructions.html.erb +1 -9
- data/app/views/railsui/themes/shepherd/scaffolds/_edit.html.erb +1 -19
- data/app/views/railsui/themes/shepherd/scaffolds/_index.html.erb +1 -11
- data/app/views/railsui/themes/shepherd/scaffolds/_new.html.erb +1 -17
- data/app/views/railsui/themes/shepherd/scaffolds/_partial.html.erb +1 -17
- data/app/views/railsui/themes/shepherd/scaffolds/_show.html.erb +1 -18
- data/config/pages.yml +103 -0
- data/config/routes.rb +6 -5
- data/config/theme.yml +2 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/auth-bg.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/blog-feature.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/blog1.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/blog2.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/blog3.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/blog4.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/blog5.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/blog6.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/blog7.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/blog8.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/blog9.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/copy.svg +6 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/pencil.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/scroll-text.svg +9 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/social/facebook.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/social/github.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/social/google.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/social/instagram.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/social/linkedin.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/social/twitter.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/social/x.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/social/youtube.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/stethoscope.svg +8 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/icons/test-tubes.svg +11 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/logo.svg +10 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/meta/android-chrome-192x192.png +0 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/meta/android-chrome-512x512.png +0 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/meta/apple-touch-icon.png +0 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/meta/favicon-16x16.png +0 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/meta/favicon-32x32.png +0 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/meta/favicon.ico +0 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/meta/favicon.svg +20 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/meta/opengraph-mark.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/meta/opengraph.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/meta/site.webmanifest +19 -0
- data/lib/generators/railsui/install/templates/themes/corgie/images/railsui/railsui.svg +3 -0
- data/lib/generators/railsui/install/templates/themes/corgie/javascript/controllers/railsui/character_count_controller.js +134 -0
- data/lib/generators/railsui/install/templates/themes/corgie/javascript/controllers/railsui/chat_controller.js +45 -0
- data/lib/generators/railsui/install/templates/themes/corgie/javascript/controllers/railsui/help_search_controller.js +333 -0
- data/lib/generators/railsui/install/templates/themes/corgie/javascript/controllers/railsui/highlight_controller.js +13 -0
- data/lib/generators/railsui/install/templates/themes/corgie/javascript/controllers/railsui/markdown_controller.js +106 -0
- data/lib/generators/railsui/install/templates/themes/corgie/javascript/controllers/railsui/search_controller.js +311 -0
- data/lib/generators/railsui/install/templates/themes/corgie/javascript/controllers/railsui/sidebar_controller.js +105 -0
- data/lib/generators/railsui/install/templates/themes/corgie/javascript/controllers/railsui/snippet_controller.js +223 -0
- data/lib/generators/railsui/install/templates/themes/corgie/mail/railsui_mailer/minimal.html.erb +21 -0
- data/lib/generators/railsui/install/templates/themes/corgie/mail/railsui_mailer/minimal.text.erb +9 -0
- data/lib/generators/railsui/install/templates/themes/corgie/mail/railsui_mailer/promotion.html.erb +23 -0
- data/lib/generators/railsui/install/templates/themes/corgie/mail/railsui_mailer/promotion.text.erb +9 -0
- data/lib/generators/railsui/install/templates/themes/corgie/mail/railsui_mailer/transactional.html.erb +55 -0
- data/lib/generators/railsui/install/templates/themes/corgie/mail/railsui_mailer/transactional.text.erb +22 -0
- data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/actiontext.css +173 -0
- data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/blog.css +29 -0
- data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/buttons.css +49 -0
- data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/card.css +9 -0
- data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/chat.css +27 -0
- data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/code.css +233 -0
- data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/dropdown.css +9 -0
- data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/forms.css +321 -0
- data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/sidebar.css +15 -0
- data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/tailwind.config.js +24 -0
- data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/theme.css +77 -0
- data/lib/generators/railsui/install/templates/themes/corgie/stylesheets/railsui/typography.css +47 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/layouts/rui/railsui.html.erb +31 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/layouts/rui/railsui_admin.html.erb +30 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/layouts/rui/railsui_auth.html.erb +50 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/layouts/rui/railsui_mailer.html.erb +503 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/about.html.erb +278 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/blog.html.erb +258 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/blog_category.html.erb +261 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/blog_show.html.erb +429 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/chat_new.html.erb +68 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/chat_show.html.erb +152 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/features.html.erb +356 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/help.html.erb +123 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/home.html.erb +252 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/pricing.html.erb +397 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/privacy.html.erb +140 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/signin.html.erb +38 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/signup.html.erb +48 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/pages/terms.html.erb +182 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_account_dropdown.html.erb +46 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_email_action.html.erb +15 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_email_callout.html.erb +7 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_email_spacer.html.erb +7 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_error_messages.html.erb +10 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_faq.html.erb +9 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_flash.html.erb +11 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_fonts.html.erb +7 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_footer.html.erb +72 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_header.html.erb +15 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_meta.html.erb +90 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_nav.html.erb +3 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_railsui_head.html.erb +4 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_search.html.erb +32 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_sidebar.html.erb +7 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/_waves.html.erb +47 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/blog/_article.html.erb +39 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/blog/_pagination.html.erb +21 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/chat/_disclaimer.html.erb +4 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/chat/_form.html.erb +62 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/chat/_header.html.erb +47 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/chat/_history.html.erb +36 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/chat/_key_legend.html.erb +11 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/chat/_link.html.erb +17 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/chat/_message.html.erb +69 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/chat/_model_select.html.erb +55 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/common/_cta_section.html.erb +16 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/common/_feature_card.html.erb +23 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/common/_feature_check_item.html.erb +6 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/common/_social_auth_buttons.html.erb +22 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/help/_categories.html.erb +82 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/help/_faq.html.erb +45 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/help/_quick_actions.html.erb +46 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/marketing/_career.html.erb +9 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/marketing/_nav.html.erb +57 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/marketing/_team_member_card.html.erb +16 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/settings/_modal.html.erb +84 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/settings/_nav_item.html.erb +14 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/settings/panels/_billing.html.erb +120 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/settings/panels/_data_controls.html.erb +69 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/settings/panels/_general.html.erb +92 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/settings/panels/_notifications.html.erb +102 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/settings/panels/_personalization.html.erb +100 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/settings/panels/_security.html.erb +98 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/settings/panels/_title.html.erb +5 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/sidebar/_actions.html.erb +39 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/sidebar/_header.html.erb +40 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/sidebar/_history.html.erb +36 -0
- data/lib/generators/railsui/install/templates/themes/corgie/views/rui/shared/sidebar/_link.html.erb +23 -0
- data/lib/generators/railsui/install/templates/themes/hound/stylesheets/railsui/forms.css +18 -4
- data/lib/generators/railsui/install/templates/themes/hound/stylesheets/railsui/theme.css +3 -2
- data/lib/generators/railsui/install/templates/themes/shepherd/stylesheets/railsui/forms.css +12 -2
- data/lib/generators/railsui/scaffold/templates/themes/corgie/views/_form.html.erb.tt +52 -0
- data/lib/generators/railsui/scaffold/templates/themes/corgie/views/edit.html.erb.tt +25 -0
- data/lib/generators/railsui/scaffold/templates/themes/corgie/views/index.html.erb.tt +12 -0
- data/lib/generators/railsui/scaffold/templates/themes/corgie/views/new.html.erb.tt +22 -0
- data/lib/generators/railsui/scaffold/templates/themes/corgie/views/partial.html.erb.tt +22 -0
- data/lib/generators/railsui/scaffold/templates/themes/corgie/views/show.html.erb.tt +24 -0
- data/lib/generators/railsui/scaffold/templates/themes/hound/views/_form.html.erb.tt +29 -24
- data/lib/generators/railsui/scaffold/templates/themes/shepherd/views/_form.html.erb.tt +28 -26
- data/lib/railsui/configuration.rb +22 -21
- data/lib/railsui/engine.rb +26 -20
- data/lib/railsui/form_builder.rb +307 -0
- data/lib/railsui/pages.rb +14 -3
- data/lib/railsui/theme_helper.rb +8 -8
- data/lib/railsui/theme_setup.rb +83 -49
- data/lib/railsui/themes.rb +3 -4
- data/lib/railsui/version.rb +1 -1
- data/lib/railsui.rb +9 -6
- data/lib/tasks/install.rake +1 -1
- data/lib/tasks/pages.rake +1 -1
- data/lib/tasks/stimulus.rake +1 -1
- metadata +287 -5
- data/.standard.yml +0 -3
- data/CHANGELOG.md +0 -9
- data/config/colors.yml +0 -50
@@ -0,0 +1,194 @@
|
|
1
|
+
<div id="navigation-chat">
|
2
|
+
<%= render layout: example, locals: { heading: "Chat", section: "Navigation" } do %>
|
3
|
+
|
4
|
+
<div class="prose prose-neutral mb-6">
|
5
|
+
<p>Full functionality is available on the dedicated <%= link_to "chat page", rui_chat_new_path %>.</p>
|
6
|
+
</div>
|
7
|
+
|
8
|
+
|
9
|
+
<div class="rounded-3xl bg-neutral-50/50 overflow-hidden border border-neutral-200 dark:border-neutral-700/80 font-tiktok">
|
10
|
+
<div class="flex h-full" data-controller="sidebar">
|
11
|
+
<!-- Sidebar -->
|
12
|
+
<%= render "rui/shared/sidebar" %>
|
13
|
+
|
14
|
+
<!-- Main Content -->
|
15
|
+
<div class="flex flex-col flex-1 min-w-0">
|
16
|
+
<!-- Header -->
|
17
|
+
<header class="p-6 shrink-0 md:static sticky top-0">
|
18
|
+
<div class="flex items-center justify-between md:justify-end gap-6">
|
19
|
+
<aside class="md:hidden flex items-center justify-between gap-6 flex-1">
|
20
|
+
<a href="/" class="block shrink-0">
|
21
|
+
<%= icon "logo", class: "size-6 shrink-0 fill-current dark:fill-neutral-100", custom_path: "/railsui/logo.svg" %>
|
22
|
+
</a>
|
23
|
+
|
24
|
+
<div class="flex items-center gap-4">
|
25
|
+
<a href="#"
|
26
|
+
class="rounded-full size-8 focus:bg-neutral-200 flex items-center justify-center focus:ring-4 focus:ring-neutral-200/80 dark:focus:ring-neutral-700/90">
|
27
|
+
<%= icon "pencil-square", class: "size-6 stroke-current shrink-0" %>
|
28
|
+
</a>
|
29
|
+
|
30
|
+
<div data-controller="railsui-dropdown">
|
31
|
+
<button data-action="click->railsui-dropdown#toggle click@window->railsui-dropdown#hide" class="rounded-full size-8 focus:bg-neutral-200 flex items-center justify-center focus:ring-4 focus:ring-neutral-200/80
|
32
|
+
dark:focus:ring-neutral-700/90">
|
33
|
+
<%= icon "queue-list", class: "size-6 stroke-current shrink-0" %>
|
34
|
+
</button>
|
35
|
+
|
36
|
+
<ul
|
37
|
+
class="hidden fixed inset-0 h-full w-full bg-neutral-100/80 backdrop-blur-lg z-10 pt-10 overflow-y-auto pb-32 dark:bg-neutral-900/90"
|
38
|
+
data-railsui-dropdown-target="menu"
|
39
|
+
data-transition-enter-active="transition ease-out duration-50"
|
40
|
+
data-transition-enter-from="transform opacity-0 scale-95"
|
41
|
+
data-transition-enter-to="transform opacity-100 scale-100"
|
42
|
+
data-transition-leave-active="transition ease-in duration-100"
|
43
|
+
data-transition-leave-from="transform opacity-100 scale-100"
|
44
|
+
data-transition-leave-to="transform opacity-0 scale-95"
|
45
|
+
>
|
46
|
+
<button data-action="click->railsui-dropdown#toggle" class="absolute top-4 right-4 z-40">
|
47
|
+
<%= icon "x-mark", class: "size-8 stroke-current stroke-neutral-600 dark:stroke-neutral-400" %>
|
48
|
+
</button>
|
49
|
+
<div class="overflow-y-auto">
|
50
|
+
<%= render "rui/shared/chat/history" %>
|
51
|
+
</div>
|
52
|
+
</ul>
|
53
|
+
</div>
|
54
|
+
</div>
|
55
|
+
</aside>
|
56
|
+
<%= render "rui/shared/account_dropdown" %>
|
57
|
+
</div>
|
58
|
+
</header>
|
59
|
+
<div class="flex flex-col justify-center flex-1 min-h-0">
|
60
|
+
<div class="flex flex-col justify-center flex-1">
|
61
|
+
<div class="flex justify-center mb-10">
|
62
|
+
<svg class="w-14 h-14 fill-current text-neutral-200/70 dark:text-neutral-900" width="333" height="325" viewBox="0 0 333 325" xmlns="http://www.w3.org/2000/svg"><path d="M332.64 279.04L326.88 273.28L316.32 281.44C306.08 271.52 297.76 257.28 291.36 238.72C282.72 213.44 276 196.64 271.2 188.32C259.36 168.8 241.28 151.68 216.96 136.96L284.16 88.96L259.68 55.36C251.04 43.52 243.2 32.96 236.16 23.68C229.44 14.4 223.52 6.55999 218.4 0.159975L132.96 56.8C131.36 40.48 125.76 27.36 116.16 17.44C106.56 7.19998 93.6 2.07998 77.28 2.07998C55.2 2.07998 34.72 10.08 15.84 26.08V32.32C29.28 28.8 39.52 27.04 46.56 27.04C73.12 27.04 86.24 41.92 85.92 71.68L85.44 92.32L7.68 150.4C60.48 176.32 86.88 209.92 86.88 251.2C51.36 262.08 22.4 282.4 0 312.16L0.48 314.56C36.96 300.8 68 293.92 93.6 293.92C96.8 293.92 99.84 294.08 102.72 294.4C105.92 294.4 108.8 294.56 111.36 294.88C125.12 296.48 138.72 300.96 152.16 308.32C154.72 309.92 158.24 312 162.72 314.56C167.2 317.12 172.64 320.32 179.04 324.16L228 274.72L221.76 268.48L211.68 277.6C197.92 269.6 183.2 262.88 167.52 257.44V174.4C189.92 174.4 207.52 184.16 220.32 203.68C224.8 210.4 234.08 231.04 248.16 265.6C259.04 292.48 271.04 311.04 284.16 321.28H288.96L332.64 279.04ZM236.64 111.04L167.52 161.92V45.28L182.4 35.2L236.64 111.04ZM157.44 254.08C150.72 252.16 143.52 251.2 135.84 251.2V67.36L157.44 52.96V254.08ZM84.96 158.08L48.96 129.28L84.96 105.28V158.08Z"></path>
|
63
|
+
</svg>
|
64
|
+
</div>
|
65
|
+
</div>
|
66
|
+
</div>
|
67
|
+
</div>
|
68
|
+
</div>
|
69
|
+
</div>
|
70
|
+
|
71
|
+
|
72
|
+
<% content_for :example, flush: true do %>
|
73
|
+
<% content_for :html, flush: true do %>
|
74
|
+
<div class="rounded-3xl bg-neutral-50/50 overflow-hidden border border-neutral-200 dark:border-neutral-700/80">
|
75
|
+
<div class="flex h-full" data-controller="sidebar">
|
76
|
+
<!-- Sidebar -->
|
77
|
+
<div class="sidebar"><!-- Sidebar content --></div>
|
78
|
+
|
79
|
+
<!-- Main Content -->
|
80
|
+
<div class="flex flex-col flex-1 min-w-0">
|
81
|
+
<!-- Header -->
|
82
|
+
<header class="p-6 shrink-0 md:static sticky top-0">
|
83
|
+
<div class="flex items-center justify-between md:justify-end gap-6">
|
84
|
+
<aside class="md:hidden flex items-center justify-between gap-6 flex-1">
|
85
|
+
<a href="/" class="block shrink-0">
|
86
|
+
<svg><!-- logo icon --></svg>
|
87
|
+
</a>
|
88
|
+
|
89
|
+
<div class="flex items-center gap-4">
|
90
|
+
<a href="#" class="rounded-full size-8 focus:bg-neutral-200 flex items-center justify-center focus:ring-4 focus:ring-neutral-200/80 dark:focus:ring-neutral-700/90">
|
91
|
+
<svg><!-- pencil icon --></svg>
|
92
|
+
</a>
|
93
|
+
|
94
|
+
<div data-controller="railsui-dropdown">
|
95
|
+
<button data-action="click->railsui-dropdown#toggle click@window->railsui-dropdown#hide" class="rounded-full size-8 focus:bg-neutral-200 flex items-center justify-center focus:ring-4 focus:ring-neutral-200/80 dark:focus:ring-neutral-700/90">
|
96
|
+
<svg><!-- queue-list icon --></svg>
|
97
|
+
</button>
|
98
|
+
|
99
|
+
<ul class="hidden fixed inset-0 h-full w-full bg-neutral-100/80 backdrop-blur-lg z-10 pt-10 overflow-y-auto pb-32 dark:bg-neutral-900/90" data-railsui-dropdown-target="menu" data-transition-enter-active="transition ease-out duration-50" data-transition-enter-from="transform opacity-0 scale-95" data-transition-enter-to="transform opacity-100 scale-100" data-transition-leave-active="transition ease-in duration-100" data-transition-leave-from="transform opacity-100 scale-100" data-transition-leave-to="transform opacity-0 scale-95">
|
100
|
+
<button data-action="click->railsui-dropdown#toggle" class="absolute top-4 right-4 z-40">
|
101
|
+
<svg><!-- x-mark icon --></svg>
|
102
|
+
</button>
|
103
|
+
<div class="overflow-y-auto">
|
104
|
+
<!-- Chat history -->
|
105
|
+
</div>
|
106
|
+
</ul>
|
107
|
+
</div>
|
108
|
+
</div>
|
109
|
+
</aside>
|
110
|
+
<!-- Account dropdown -->
|
111
|
+
</div>
|
112
|
+
</header>
|
113
|
+
<div class="flex flex-col justify-center flex-1 min-h-0">
|
114
|
+
<div class="flex flex-col justify-center flex-1">
|
115
|
+
<div class="flex justify-center mb-10">
|
116
|
+
<svg class="w-14 h-14 fill-current text-neutral-200/70 dark:text-neutral-900" width="333" height="325" viewBox="0 0 333 325" xmlns="http://www.w3.org/2000/svg"><path d="M332.64 279.04L326.88 273.28L316.32 281.44C306.08 271.52 297.76 257.28 291.36 238.72C282.72 213.44 276 196.64 271.2 188.32C259.36 168.8 241.28 151.68 216.96 136.96L284.16 88.96L259.68 55.36C251.04 43.52 243.2 32.96 236.16 23.68C229.44 14.4 223.52 6.55999 218.4 0.159975L132.96 56.8C131.36 40.48 125.76 27.36 116.16 17.44C106.56 7.19998 93.6 2.07998 77.28 2.07998C55.2 2.07998 34.72 10.08 15.84 26.08V32.32C29.28 28.8 39.52 27.04 46.56 27.04C73.12 27.04 86.24 41.92 85.92 71.68L85.44 92.32L7.68 150.4C60.48 176.32 86.88 209.92 86.88 251.2C51.36 262.08 22.4 282.4 0 312.16L0.48 314.56C36.96 300.8 68 293.92 93.6 293.92C96.8 293.92 99.84 294.08 102.72 294.4C105.92 294.4 108.8 294.56 111.36 294.88C125.12 296.48 138.72 300.96 152.16 308.32C154.72 309.92 158.24 312 162.72 314.56C167.2 317.12 172.64 320.32 179.04 324.16L228 274.72L221.76 268.48L211.68 277.6C197.92 269.6 183.2 262.88 167.52 257.44V174.4C189.92 174.4 207.52 184.16 220.32 203.68C224.8 210.4 234.08 231.04 248.16 265.6C259.04 292.48 271.04 311.04 284.16 321.28H288.96L332.64 279.04ZM236.64 111.04L167.52 161.92V45.28L182.4 35.2L236.64 111.04ZM157.44 254.08C150.72 252.16 143.52 251.2 135.84 251.2V67.36L157.44 52.96V254.08ZM84.96 158.08L48.96 129.28L84.96 105.28V158.08Z"></path></svg>
|
117
|
+
</div>
|
118
|
+
</div>
|
119
|
+
</div>
|
120
|
+
</div>
|
121
|
+
</div>
|
122
|
+
</div>
|
123
|
+
<% end %>
|
124
|
+
|
125
|
+
<% content_for :erb, flush: true do %>
|
126
|
+
<div class="rounded-3xl bg-neutral-50/50 overflow-hidden border border-neutral-200 dark:border-neutral-700/80">
|
127
|
+
<div class="flex h-full" data-controller="sidebar">
|
128
|
+
<!-- Sidebar -->
|
129
|
+
<%%= render "rui/shared/sidebar" %>
|
130
|
+
|
131
|
+
<!-- Main Content -->
|
132
|
+
<div class="flex flex-col flex-1 min-w-0">
|
133
|
+
<!-- Header -->
|
134
|
+
<header class="p-6 shrink-0 md:static sticky top-0">
|
135
|
+
<div class="flex items-center justify-between md:justify-end gap-6">
|
136
|
+
<aside class="md:hidden flex items-center justify-between gap-6 flex-1">
|
137
|
+
<%%= link_to root_path, class: "block" do %>
|
138
|
+
<%%= icon "logo", class: "size-6 shrink-0 fill-current dark:fill-neutral-100", custom_path: "/railsui/logo.svg" %>
|
139
|
+
<%% end %>
|
140
|
+
|
141
|
+
<div class="flex items-center gap-4">
|
142
|
+
<%%= link_to "#", class: "rounded-full size-8 focus:bg-neutral-200 flex items-center justify-center focus:ring-4 focus:ring-neutral-200/80 dark:focus:ring-neutral-700/90" do %>
|
143
|
+
<%%= icon "pencil-square", class: "size-6 stroke-current shrink-0" %>
|
144
|
+
<%% end %>
|
145
|
+
|
146
|
+
<div data-controller="railsui-dropdown">
|
147
|
+
<button data-action="click->railsui-dropdown#toggle click@window->railsui-dropdown#hide" class="rounded-full size-8 focus:bg-neutral-200 flex items-center justify-center focus:ring-4 focus:ring-neutral-200/80
|
148
|
+
dark:focus:ring-neutral-700/90">
|
149
|
+
<%%= icon "queue-list", class: "size-6 stroke-current shrink-0" %>
|
150
|
+
</button>
|
151
|
+
|
152
|
+
<ul
|
153
|
+
class="hidden fixed inset-0 h-full w-full bg-neutral-100/80 backdrop-blur-lg z-10 pt-10 overflow-y-auto pb-32 dark:bg-neutral-900/90"
|
154
|
+
data-railsui-dropdown-target="menu"
|
155
|
+
data-transition-enter-active="transition ease-out duration-50"
|
156
|
+
data-transition-enter-from="transform opacity-0 scale-95"
|
157
|
+
data-transition-enter-to="transform opacity-100 scale-100"
|
158
|
+
data-transition-leave-active="transition ease-in duration-100"
|
159
|
+
data-transition-leave-from="transform opacity-100 scale-100"
|
160
|
+
data-transition-leave-to="transform opacity-0 scale-95"
|
161
|
+
>
|
162
|
+
<button data-action="click->railsui-dropdown#toggle" class="absolute top-4 right-4 z-40">
|
163
|
+
<%%= icon "x-mark", class: "size-8 stroke-current stroke-neutral-600 dark:stroke-neutral-400" %>
|
164
|
+
</button>
|
165
|
+
<div class="overflow-y-auto">
|
166
|
+
<%%= render "rui/shared/chat/history" %>
|
167
|
+
</div>
|
168
|
+
</ul>
|
169
|
+
</div>
|
170
|
+
</div>
|
171
|
+
</aside>
|
172
|
+
<%%= render "rui/shared/account_dropdown" %>
|
173
|
+
</div>
|
174
|
+
</header>
|
175
|
+
<div class="flex flex-col justify-center flex-1 min-h-0">
|
176
|
+
<div class="flex flex-col justify-center flex-1">
|
177
|
+
<div class="flex justify-center mb-10">
|
178
|
+
<%%= icon "logo", class: "w-14 h-14 fill-current text-neutral-200/70 dark:text-neutral-900", custom_path: "/railsui/logo.svg" %>
|
179
|
+
</div>
|
180
|
+
</div>
|
181
|
+
</div>
|
182
|
+
</div>
|
183
|
+
</div>
|
184
|
+
</div>
|
185
|
+
<% end %>
|
186
|
+
|
187
|
+
<% content_for :js, flush: true do %>
|
188
|
+
|
189
|
+
<% end %>
|
190
|
+
|
191
|
+
<%= render_snippet active_tab: :erb %>
|
192
|
+
<% end %>
|
193
|
+
<% end %>
|
194
|
+
</div>
|
@@ -0,0 +1,9 @@
|
|
1
|
+
<div class="rounded-lg border min-h-[200px] rounded-t-2xl relative shadow-inner <%= local_assigns[:dark] == true ? "border-neutral-700 bg-neutral-800" : "dark:border-neutral-700 dark:bg-neutral-800 border-neutral-200 bg-neutral-50" %>">
|
2
|
+
<div class="w-full border-b <%= local_assigns[:dark] == true ? "rounded-t border-neutral-700": "border-neutral-200 rounded-t dark:border-neutral-700" %>">
|
3
|
+
<%= yield %>
|
4
|
+
</div>
|
5
|
+
<span class="absolute top-[50%] -mb-7 left-[50%] -ml-7">
|
6
|
+
<svg class="w-14 h-14 fill-current <%= local_assigns[:dark] == true ? "text-neutral-900/50" : "text-neutral-200/70 dark:text-neutral-900" %>" width="333" height="325" viewBox="0 0 333 325" xmlns="http://www.w3.org/2000/svg"><path d="M332.64 279.04L326.88 273.28L316.32 281.44C306.08 271.52 297.76 257.28 291.36 238.72C282.72 213.44 276 196.64 271.2 188.32C259.36 168.8 241.28 151.68 216.96 136.96L284.16 88.96L259.68 55.36C251.04 43.52 243.2 32.96 236.16 23.68C229.44 14.4 223.52 6.55999 218.4 0.159975L132.96 56.8C131.36 40.48 125.76 27.36 116.16 17.44C106.56 7.19998 93.6 2.07998 77.28 2.07998C55.2 2.07998 34.72 10.08 15.84 26.08V32.32C29.28 28.8 39.52 27.04 46.56 27.04C73.12 27.04 86.24 41.92 85.92 71.68L85.44 92.32L7.68 150.4C60.48 176.32 86.88 209.92 86.88 251.2C51.36 262.08 22.4 282.4 0 312.16L0.48 314.56C36.96 300.8 68 293.92 93.6 293.92C96.8 293.92 99.84 294.08 102.72 294.4C105.92 294.4 108.8 294.56 111.36 294.88C125.12 296.48 138.72 300.96 152.16 308.32C154.72 309.92 158.24 312 162.72 314.56C167.2 317.12 172.64 320.32 179.04 324.16L228 274.72L221.76 268.48L211.68 277.6C197.92 269.6 183.2 262.88 167.52 257.44V174.4C189.92 174.4 207.52 184.16 220.32 203.68C224.8 210.4 234.08 231.04 248.16 265.6C259.04 292.48 271.04 311.04 284.16 321.28H288.96L332.64 279.04ZM236.64 111.04L167.52 161.92V45.28L182.4 35.2L236.64 111.04ZM157.44 254.08C150.72 252.16 143.52 251.2 135.84 251.2V67.36L157.44 52.96V254.08ZM84.96 158.08L48.96 129.28L84.96 105.28V158.08Z"/>
|
7
|
+
</svg>
|
8
|
+
</span>
|
9
|
+
</div>
|
@@ -0,0 +1,131 @@
|
|
1
|
+
<div id="pagination-contained">
|
2
|
+
<%= render layout: example, locals: { heading: "Contained", section: "Pagination" } do %>
|
3
|
+
|
4
|
+
<%= render preview('neutral') do %>
|
5
|
+
<div class="flex flex-wrap md:justify-between justify-center items-center space-y-2 font-tiktok">
|
6
|
+
<p class="text-neutral-600 dark:text-neutral-200 text-sm block w-full md:w-auto md:text-left text-center">Viewing page <strong>1</strong> with <strong>24</strong> results per page</p>
|
7
|
+
<nav aria-label="Page navgiation" class="text-neutral-500 dark:text-neutral-200 md:text-sm text-base font-medium w-auto flex">
|
8
|
+
<ul class="flex flex-wrap items-center justify-center w-auto divide-x divide-neutral-300 shadow-xs dark:divide-neutral-600">
|
9
|
+
<li class="flex justify-start items-center">
|
10
|
+
<a data-controller="railsui-prevent" data-action="click->railsui-prevent#prevent" href="#" class="bg-white inline-flex justify-center items-center md:py-2 py-[.63rem] px-2 rounded-l hover:bg-neutral-50/50 group hover:text-primary-600 md:w-auto w-full border-y border-l border-neutral-300 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600">
|
11
|
+
<%= icon "arrow-small-left", class: "w-5 h-5 text-neutral-400 group-hover:text-primary-500 dark:group-hover:text-neutral-200", title: "Previous" %>
|
12
|
+
</a>
|
13
|
+
</li>
|
14
|
+
<li>
|
15
|
+
<a data-controller="railsui-prevent" data-action="click->railsui-prevent#prevent" href="#" 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">1</a>
|
16
|
+
</li>
|
17
|
+
<li>
|
18
|
+
<a data-controller="railsui-prevent" data-action="click->railsui-prevent#prevent" href="#" class="bg-white inline-flex items-center py-2 px-4 border-y border-neutral-300 hover:bg-neutral-50/50 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600">2</a>
|
19
|
+
</li>
|
20
|
+
<li>
|
21
|
+
<a data-controller="railsui-prevent" data-action="click->railsui-prevent#prevent" href="#" class="bg-white inline-flex items-center py-2 px-4 border-y border-neutral-300 hover:bg-neutral-50/50 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600">3</a>
|
22
|
+
</li>
|
23
|
+
<li class="md:block hidden">
|
24
|
+
<span href="#" class="bg-white inline-flex items-center py-2 px-3 border-y border-neutral-300 select-none pointer-events-nonehover:bg-neutral-50/50 dark:bg-neutral-800 dark:border-neutral-600">…</span>
|
25
|
+
</li>
|
26
|
+
<li>
|
27
|
+
<a data-controller="railsui-prevent" data-action="click->railsui-prevent#prevent" href="#" class="bg-white inline-flex items-center py-2 px-4 border-y border-neutral-300 hover:bg-neutral-50/50 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600">8</a>
|
28
|
+
</li>
|
29
|
+
<li>
|
30
|
+
<a data-controller="railsui-prevent" data-action="click->railsui-prevent#prevent" href="#" class="bg-white inline-flex items-center py-2 px-4 border-y border-neutral-300 hover:bg-neutral-50/50 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600">9</a>
|
31
|
+
</li>
|
32
|
+
<li>
|
33
|
+
<a data-controller="railsui-prevent" data-action="click->railsui-prevent#prevent" href="#" class="bg-white inline-flex items-center py-2 px-4 border-y border-neutral-300 hover:bg-neutral-50/50 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600">10</a>
|
34
|
+
</li>
|
35
|
+
<li class="flex justify-end items-center">
|
36
|
+
<a data-controller="railsui-prevent" data-action="click->railsui-prevent#prevent" href="#" class="bg-white inline-flex justify-center items-center md:py-2 py-[.63rem] px-2 rounded-r hover:bg-neutral-50/50 group hover:text-primary-600 md:w-auto w-full border-y border-r border-neutral-300 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600">
|
37
|
+
<%= icon "arrow-small-right", class: "w-5 h-5 text-neutral-400 group-hover:text-primary-500 dark:group-hover:text-neutral-200", title: "Next" %>
|
38
|
+
</a>
|
39
|
+
</li>
|
40
|
+
</ul>
|
41
|
+
</nav>
|
42
|
+
</div>
|
43
|
+
<% end %>
|
44
|
+
|
45
|
+
<%= content_for :example, flush: true do %>
|
46
|
+
<%= content_for :html, flush: true do %>
|
47
|
+
<div class="flex flex-wrap md:justify-between justify-center items-center space-y-2">
|
48
|
+
<p class="text-neutral-600 dark:text-neutral-200 text-sm block w-full md:w-auto md:text-left text-center">Viewing page <strong>1</strong> with <strong>24</strong> results per page</p>
|
49
|
+
<nav aria-label="Page navgiation" class="text-neutral-500 dark:text-neutral-200 md:text-sm text-base font-medium w-auto flex">
|
50
|
+
<ul class="flex flex-wrap items-center justify-center w-auto divide-x divide-neutral-300 shadow-xs dark:divide-neutral-600">
|
51
|
+
<li class="flex justify-start items-center">
|
52
|
+
<a href="#" class="bg-white inline-flex justify-center items-center md:py-2 py-[.63rem] px-2 rounded-l hover:bg-neutral-50/50 group hover:text-primary-600 md:w-auto w-full border-y border-l border-neutral-300 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600">
|
53
|
+
<%%= icon "arrow-small-left", class: "w-5 h-5 text-neutral-400 group-hover:text-primary-500 dark:group-hover:text-neutral-200", title: "Previous" %>
|
54
|
+
</a>
|
55
|
+
</li>
|
56
|
+
<li>
|
57
|
+
<a href="#" 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">1</a>
|
58
|
+
</li>
|
59
|
+
<li>
|
60
|
+
<a href="#" class="bg-white inline-flex items-center py-2 px-4 border-y border-neutral-300 hover:bg-neutral-50/50 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600">2</a>
|
61
|
+
</li>
|
62
|
+
<li>
|
63
|
+
<a href="#" class="bg-white inline-flex items-center py-2 px-4 border-y border-neutral-300 hover:bg-neutral-50/50 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600">3</a>
|
64
|
+
</li>
|
65
|
+
<li class="md:block hidden">
|
66
|
+
<span href="#" class="bg-white inline-flex items-center py-2 px-3 border-y border-neutral-300 select-none pointer-events-nonehover:bg-neutral-50/50 dark:bg-neutral-800 dark:border-neutral-600">…</span>
|
67
|
+
</li>
|
68
|
+
<li>
|
69
|
+
<a href="#" class="bg-white inline-flex items-center py-2 px-4 border-y border-neutral-300 hover:bg-neutral-50/50 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600">8</a>
|
70
|
+
</li>
|
71
|
+
<li>
|
72
|
+
<a href="#" class="bg-white inline-flex items-center py-2 px-4 border-y border-neutral-300 hover:bg-neutral-50/50 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600">9</a>
|
73
|
+
</li>
|
74
|
+
<li>
|
75
|
+
<a href="#" class="bg-white inline-flex items-center py-2 px-4 border-y border-neutral-300 hover:bg-neutral-50/50 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600">10</a>
|
76
|
+
</li>
|
77
|
+
<li class="flex justify-end items-center">
|
78
|
+
<a href="#" class="bg-white inline-flex justify-center items-center md:py-2 py-[.63rem] px-2 rounded-r hover:bg-neutral-50/50 group hover:text-primary-600 md:w-auto w-full border-y border-r border-neutral-300 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600">
|
79
|
+
<%%= icon "arrow-small-right", class: "w-5 h-5 text-neutral-400 group-hover:text-primary-500 dark:group-hover:text-neutral-200", title: "Next" %>
|
80
|
+
</a>
|
81
|
+
</li>
|
82
|
+
</ul>
|
83
|
+
</nav>
|
84
|
+
</div>
|
85
|
+
<% end %>
|
86
|
+
|
87
|
+
<%= content_for :erb, flush: true do %>
|
88
|
+
<div class="flex flex-wrap md:justify-between justify-center items-center space-y-2">
|
89
|
+
<p class="text-neutral-600 dark:text-neutral-200 text-sm block w-full md:w-auto md:text-left text-center">Viewing page <strong>1</strong> with <strong>24</strong> results per page</p>
|
90
|
+
<nav aria-label="Page navgiation" class="text-neutral-500 dark:text-neutral-200 md:text-sm text-base font-medium w-auto flex">
|
91
|
+
<ul class="flex flex-wrap items-center justify-center w-auto divide-x divide-neutral-300 shadow-xs dark:divide-neutral-600">
|
92
|
+
<li class="flex justify-start items-center">
|
93
|
+
<%%= link_to "#", class: "bg-white inline-flex justify-center items-center md:py-2 py-[.63rem] px-2 rounded-l hover:bg-neutral-50/50 group hover:text-primary-600 md:w-auto w-full border-y border-l border-neutral-300 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600" do %>
|
94
|
+
<%%= icon "arrow-small-left", class: "w-5 h-5 text-neutral-400 group-hover:text-primary-500 dark:group-hover:text-neutral-200", title: "Previous" %>
|
95
|
+
<%% end %>
|
96
|
+
</li>
|
97
|
+
<li>
|
98
|
+
<%%= 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" %>
|
99
|
+
</li>
|
100
|
+
<li>
|
101
|
+
<%%= link_to "2", "#", class: "bg-white inline-flex items-center py-2 px-4 border-y border-neutral-300 hover:bg-neutral-50/50 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600" %>
|
102
|
+
</li>
|
103
|
+
<li>
|
104
|
+
<%%= link_to "3", "#", class: "bg-white inline-flex items-center py-2 px-4 border-y border-neutral-300 hover:bg-neutral-50/50 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600" %>
|
105
|
+
</li>
|
106
|
+
<li class="md:block hidden">
|
107
|
+
<span href="#" class="bg-white inline-flex items-center py-2 px-3 border-y border-neutral-300 select-none pointer-events-nonehover:bg-neutral-50/50 dark:bg-neutral-800 dark:border-neutral-600">…</span>
|
108
|
+
</li>
|
109
|
+
<li>
|
110
|
+
<%%= link_to "8", "#", class: "bg-white inline-flex items-center py-2 px-4 border-y border-neutral-300 hover:bg-neutral-50/50 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600" %>
|
111
|
+
</li>
|
112
|
+
<li>
|
113
|
+
<%%= link_to "9", "#", class: "bg-white inline-flex items-center py-2 px-4 border-y border-neutral-300 hover:bg-neutral-50/50 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600" %>
|
114
|
+
</li>
|
115
|
+
<li>
|
116
|
+
<%%= link_to "10", "#", class: "bg-white inline-flex items-center py-2 px-4 border-y border-neutral-300 hover:bg-neutral-50/50 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600" %>
|
117
|
+
</li>
|
118
|
+
<li class="flex justify-end items-center">
|
119
|
+
<%%= link_to "#", class: "bg-white inline-flex justify-center items-center md:py-2 py-[.63rem] px-2 rounded-r hover:bg-neutral-50/50 group hover:text-primary-600 md:w-auto w-full border-y border-r border-neutral-300 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600" do %>
|
120
|
+
<%%= icon "arrow-small-right", class: "w-5 h-5 text-neutral-400 group-hover:text-primary-500 dark:group-hover:text-neutral-200", title: "Next" %>
|
121
|
+
<%% end %>
|
122
|
+
</li>
|
123
|
+
</ul>
|
124
|
+
</nav>
|
125
|
+
</div>
|
126
|
+
<% end %>
|
127
|
+
|
128
|
+
<%= render_snippet %>
|
129
|
+
<% end %>
|
130
|
+
<% end %>
|
131
|
+
</div>
|
@@ -0,0 +1,97 @@
|
|
1
|
+
<div id="pagination-pagy">
|
2
|
+
<%= render layout: example, locals: { heading: "Pagy gem", section: "Pagination" } do %>
|
3
|
+
|
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. This implementation uses Pagy's default <code>pagy_nav</code> helper with custom CSS styling to match the Rails UI button design system.</p>
|
6
|
+
|
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 button classes while maintaining all of Pagy's built-in functionality.</p>
|
10
|
+
</div>
|
11
|
+
|
12
|
+
<%= render preview('neutral') do %>
|
13
|
+
<div class="flex justify-center mt-16">
|
14
|
+
<nav class="flex gap-2 items-center" aria-label="Pagination">
|
15
|
+
<a href="#" class="btn btn-white size-10">
|
16
|
+
<span class="sr-only">Previous</span>
|
17
|
+
<%= icon "chevron-left", class: "size-5" %>
|
18
|
+
</a>
|
19
|
+
<a href="#" class="btn btn-primary dark:bg-black dark:shadow-sm size-10">1</a>
|
20
|
+
<a href="#" class="btn btn-white size-10">2</a>
|
21
|
+
<a href="#" class="btn btn-white size-10">3</a>
|
22
|
+
<span class="btn btn-white size-10 pointer-events-none cursor-none">...</span>
|
23
|
+
<a href="#" class="btn btn-white size-10">8</a>
|
24
|
+
<a href="#" class="btn btn-white size-10">
|
25
|
+
<span class="sr-only">Next</span>
|
26
|
+
<%= icon "chevron-right", class: "size-5" %>
|
27
|
+
</a>
|
28
|
+
</nav>
|
29
|
+
</div>
|
30
|
+
<% end %>
|
31
|
+
|
32
|
+
<% content_for :example, flush: true do %>
|
33
|
+
<% content_for :html, flush: true do %>
|
34
|
+
|
35
|
+
<% end %>
|
36
|
+
|
37
|
+
<% content_for :erb, flush: true do %>
|
38
|
+
<div class="flex justify-center mt-16">
|
39
|
+
<%%== pagy_nav(pagy) %>
|
40
|
+
</div>
|
41
|
+
<% end %>
|
42
|
+
|
43
|
+
<% content_for :css, flush: true do %>
|
44
|
+
/* Custom Pagy Styles - Override defaults with button-style design */
|
45
|
+
.pagy nav {
|
46
|
+
@apply flex gap-2 items-center;
|
47
|
+
}
|
48
|
+
|
49
|
+
.pagy nav a,
|
50
|
+
.pagy nav span {
|
51
|
+
@apply btn btn-white size-10 justify-center items-center;
|
52
|
+
}
|
53
|
+
|
54
|
+
.pagy nav a.current {
|
55
|
+
@apply btn-primary dark:bg-black dark:shadow-sm;
|
56
|
+
}
|
57
|
+
|
58
|
+
.pagy nav span.gap {
|
59
|
+
@apply pointer-events-none cursor-none;
|
60
|
+
}
|
61
|
+
|
62
|
+
.pagy nav a:disabled,
|
63
|
+
.pagy nav span:disabled {
|
64
|
+
@apply opacity-50 pointer-events-none cursor-not-allowed;
|
65
|
+
}
|
66
|
+
|
67
|
+
/* Hide default text content for prev/next, use icons instead */
|
68
|
+
.pagy nav a[aria-label*="prev"]::after {
|
69
|
+
content: "‹";
|
70
|
+
@apply text-lg font-bold;
|
71
|
+
}
|
72
|
+
|
73
|
+
.pagy nav a[aria-label*="next"]::after {
|
74
|
+
content: "›";
|
75
|
+
@apply text-lg font-bold;
|
76
|
+
}
|
77
|
+
|
78
|
+
.pagy nav a[aria-label*="prev"],
|
79
|
+
.pagy nav a[aria-label*="next"] {
|
80
|
+
text-indent: -9999px;
|
81
|
+
position: relative;
|
82
|
+
}
|
83
|
+
|
84
|
+
.pagy nav a[aria-label*="prev"]::after,
|
85
|
+
.pagy nav a[aria-label*="next"]::after {
|
86
|
+
position: absolute;
|
87
|
+
top: 50%;
|
88
|
+
left: 50%;
|
89
|
+
transform: translate(-50%, -50%);
|
90
|
+
text-indent: 0;
|
91
|
+
}
|
92
|
+
<% end %>
|
93
|
+
|
94
|
+
<%= render_snippet active_tab: "css" %>
|
95
|
+
<% end %>
|
96
|
+
<% end %>
|
97
|
+
</div>
|
@@ -0,0 +1,114 @@
|
|
1
|
+
<div id="pagination-simple">
|
2
|
+
<%= render layout: example, locals: { heading: "Simple", section: "Pagination" } do %>
|
3
|
+
|
4
|
+
<%= render preview('neutral') do %>
|
5
|
+
<div class="flex justify-center mt-16">
|
6
|
+
<nav class="flex gap-2 items-center" aria-label="Pagination">
|
7
|
+
<a href="#" class="btn btn-white size-10">
|
8
|
+
<span class="sr-only">Previous</span>
|
9
|
+
<%= icon "chevron-left", class: "size-5" %>
|
10
|
+
</a>
|
11
|
+
<a href="#" class="btn btn-primary dark:bg-black dark:shadow-sm size-10">1</a>
|
12
|
+
<a href="#" class="btn btn-white size-10">2</a>
|
13
|
+
<a href="#" class="btn btn-white size-10">3</a>
|
14
|
+
<span class="btn btn-white size-10 pointer-events-none cursor-none">...</span>
|
15
|
+
<a href="#" class="btn btn-white size-10">8</a>
|
16
|
+
<a href="#" class="btn btn-white size-10">
|
17
|
+
<span class="sr-only">Next</span>
|
18
|
+
<%= icon "chevron-right", class: "size-5" %>
|
19
|
+
</a>
|
20
|
+
</nav>
|
21
|
+
</div>
|
22
|
+
<% end %>
|
23
|
+
|
24
|
+
<% content_for :example, flush: true do %>
|
25
|
+
<% content_for :html, flush: true do %>
|
26
|
+
<nav aria-label="Page navgiation" class="text-neutral-500 sm:text-sm text-base font-medium dark:text-neutral-300">
|
27
|
+
<ul class="flex flex-wrap items-center sm:justify-between justify-center">
|
28
|
+
<li class="flex-1 flex justify-start items-center sm:w-auto w-full">
|
29
|
+
<a href="#" class="flex justify-center items-center space-x-2 py-2 px-4 rounded hover:bg-neutral-50/50 group hover:text-primary-600 sm:w-auto w-full sm:bg-transparent bg-neutral-50 sm:mb-0 mb-3 dark:hover:bg-neutral-500/30 dark:hover:text-neutral-200">
|
30
|
+
<%%= icon "arrow-small-left", class: "w-4 h-4 text-neutral-400 group-hover:text-primary-500 dark:group-hover:text-neutral-200" %>
|
31
|
+
<span>Previous</span>
|
32
|
+
</a>
|
33
|
+
</li>
|
34
|
+
<div class="flex items-center justify-center sm:w-auto w-full sm:text-sm text-lg">
|
35
|
+
<li>
|
36
|
+
<a href="#" class="py-2 px-4 block border-t-2 border-transparent rounded hover:bg-neutral-50/50 dark:hover:bg-neutral-500/30 dark:hover:text-neutral-200">1</a>
|
37
|
+
</li>
|
38
|
+
<li>
|
39
|
+
<a href="#" 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">2</a>
|
40
|
+
</li>
|
41
|
+
<li>
|
42
|
+
<a href="#" class="py-2 px-4 block border-t-2 border-transparent rounded hover:bg-neutral-50/50 dark:hover:bg-neutral-500/30 dark:hover:text-neutral-200">3</a>
|
43
|
+
</li>
|
44
|
+
<li>
|
45
|
+
<span href="#" class="py-2 px-4 block border-t-2 border-transparent rounded pointer-events-none select-none">…</span>
|
46
|
+
</li>
|
47
|
+
<li>
|
48
|
+
<a href="#" class="py-2 px-4 block border-t-2 border-transparent rounded hover:bg-neutral-50/50 dark:hover:bg-neutral-500/30 dark:hover:text-neutral-200">8</a>
|
49
|
+
</li>
|
50
|
+
<li>
|
51
|
+
<a href="#" class="py-2 px-4 block border-t-2 border-transparent rounded hover:bg-neutral-50/50 dark:hover:bg-neutral-500/30 dark:hover:text-neutral-200">9</a>
|
52
|
+
</li>
|
53
|
+
<li>
|
54
|
+
<a href="#" class="py-2 px-4 block border-t-2 border-transparent rounded hover:bg-neutral-50/50 dark:hover:bg-neutral-500/30 dark:hover:text-neutral-200">10</a>
|
55
|
+
</li>
|
56
|
+
|
57
|
+
</div>
|
58
|
+
<li class="flex-1 flex justify-end items-center">
|
59
|
+
<a href="#" class="flex justify-center items-center space-x-2 py-2 px-4 rounded hover:bg-neutral-50/50 group hover:text-primary-600 sm:w-auto w-full sm:bg-transparent bg-neutral-50 sm:mt-0 mt-3 dark:hover:bg-neutral-500/30 dark:hover:text-neutral-200">
|
60
|
+
<span>Next</span>
|
61
|
+
<%%= icon "arrow-small-right", class: "w-4 h-4 text-neutral-400 group-hover:text-primary-500 dark:group-hover:text-neutral-200" %>
|
62
|
+
</a>
|
63
|
+
</li>
|
64
|
+
</ul>
|
65
|
+
</nav>
|
66
|
+
<% end %>
|
67
|
+
|
68
|
+
<% content_for :erb, flush: true do %>
|
69
|
+
<nav aria-label="Page navgiation" class="text-neutral-500 sm:text-sm text-base font-medium dark:text-neutral-300">
|
70
|
+
<ul class="flex flex-wrap items-center sm:justify-between justify-center">
|
71
|
+
<li class="flex-1 flex justify-start items-center sm:w-auto w-full">
|
72
|
+
<%%= link_to "#", class: "flex justify-center items-center space-x-2 py-2 px-4 rounded hover:bg-neutral-50/50 group hover:text-primary-600 sm:w-auto w-full sm:bg-transparent bg-neutral-50 sm:mb-0 mb-3 dark:hover:bg-neutral-500/30 dark:hover:text-neutral-200" %>
|
73
|
+
<%%= icon "arrow-small-left", class: "w-4 h-4 text-neutral-400 group-hover:text-primary-500 dark:group-hover:text-neutral-200" %>
|
74
|
+
<span>Previous</span>
|
75
|
+
<%% end %>
|
76
|
+
</li>
|
77
|
+
<div class="flex items-center justify-center sm:w-auto w-full sm:text-sm text-lg">
|
78
|
+
<li>
|
79
|
+
<%%= link_to "1", "#", class:"py-2 px-4 block border-t-2 border-transparent rounded hover:bg-neutral-50/50 dark:hover:bg-neutral-500/30 dark:hover:text-neutral-200" %>
|
80
|
+
</li>
|
81
|
+
<li>
|
82
|
+
<%%= 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" %>
|
83
|
+
</li>
|
84
|
+
<li>
|
85
|
+
<%%= link_to "3", "#", class:"py-2 px-4 block border-t-2 border-transparent rounded hover:bg-neutral-50/50 dark:hover:bg-neutral-500/30 dark:hover:text-neutral-200" %>
|
86
|
+
</li>
|
87
|
+
<li>
|
88
|
+
<span href="#" class="py-2 px-4 block border-t-2 border-transparent rounded pointer-events-none select-none">…</span>
|
89
|
+
</li>
|
90
|
+
<li>
|
91
|
+
<%%= link_to "8", "#", class:"py-2 px-4 block border-t-2 border-transparent rounded hover:bg-neutral-50/50 dark:hover:bg-neutral-500/30 dark:hover:text-neutral-200" %>
|
92
|
+
</li>
|
93
|
+
<li>
|
94
|
+
<%%= link_to "9", "#", class:"py-2 px-4 block border-t-2 border-transparent rounded hover:bg-neutral-50/50 dark:hover:bg-neutral-500/30 dark:hover:text-neutral-200" %>
|
95
|
+
</li>
|
96
|
+
<li>
|
97
|
+
<%%= link_to "10", "#", class:"py-2 px-4 block border-t-2 border-transparent rounded hover:bg-neutral-50/50 dark:hover:bg-neutral-500/30 dark:hover:text-neutral-200" %>
|
98
|
+
</li>
|
99
|
+
</div>
|
100
|
+
<li class="flex-1 flex justify-end items-center">
|
101
|
+
<%%= link_to "#", class: "flex justify-center items-center space-x-2 py-2 px-4 rounded hover:bg-neutral-50/50 group hover:text-primary-600 sm:w-auto w-full sm:bg-transparent bg-neutral-50 sm:mt-0 mt-3 dark:hover:bg-neutral-500/30 dark:hover:text-neutral-200" do %>
|
102
|
+
<span>Next</span>
|
103
|
+
<%%= icon "arrow-small-right", class: "w-4 h-4 text-neutral-400 group-hover:text-primary-500 dark:group-hover:text-neutral-200" %>
|
104
|
+
<%% end %>
|
105
|
+
</li>
|
106
|
+
</ul>
|
107
|
+
</nav>
|
108
|
+
<% end %>
|
109
|
+
|
110
|
+
|
111
|
+
<%= render_snippet %>
|
112
|
+
<% end %>
|
113
|
+
<% end %>
|
114
|
+
</div>
|