railsui 3.1.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 +7 -0
- data/.nvmrc +1 -0
- data/.standard.yml +3 -0
- data/CHANGELOG.md +9 -0
- data/Gemfile +13 -0
- data/Gemfile.lock +254 -0
- data/LICENSE.md +122 -0
- data/Procfile.dev +1 -0
- data/README.md +165 -0
- data/Rakefile +14 -0
- data/app/assets/builds/railsui/application.css +742 -0
- data/app/assets/builds/railsui/application.js +60430 -0
- data/app/assets/builds/railsui/application.js.map +7 -0
- data/app/assets/config/railsui_manifest.js +4 -0
- data/app/assets/images/animated-logo.svg +1 -0
- data/app/assets/images/arrow-left.svg +1 -0
- data/app/assets/images/arrow-right.svg +1 -0
- data/app/assets/images/blur.png +0 -0
- data/app/assets/images/book.svg +1 -0
- data/app/assets/images/bootstrap.svg +3 -0
- data/app/assets/images/bulma.svg +3 -0
- data/app/assets/images/check.svg +1 -0
- data/app/assets/images/chevron-down.svg +1 -0
- data/app/assets/images/chevron-left.svg +1 -0
- data/app/assets/images/chevron-right.svg +1 -0
- data/app/assets/images/clipboard.svg +1 -0
- data/app/assets/images/code.svg +1 -0
- data/app/assets/images/cog.svg +1 -0
- data/app/assets/images/components.svg +1 -0
- data/app/assets/images/content.svg +1 -0
- data/app/assets/images/copy.svg +1 -0
- data/app/assets/images/dark-mode.svg +1 -0
- data/app/assets/images/eye-close.svg +1 -0
- data/app/assets/images/eye-open.svg +1 -0
- data/app/assets/images/favicon.svg +4 -0
- data/app/assets/images/forms.svg +1 -0
- data/app/assets/images/github.svg +1 -0
- data/app/assets/images/hashtag.svg +1 -0
- data/app/assets/images/icons/outline/academic-cap.svg +3 -0
- data/app/assets/images/icons/outline/adjustments-horizontal.svg +3 -0
- data/app/assets/images/icons/outline/adjustments-vertical.svg +3 -0
- data/app/assets/images/icons/outline/archive-box-arrow-down.svg +3 -0
- data/app/assets/images/icons/outline/archive-box-x-mark.svg +3 -0
- data/app/assets/images/icons/outline/archive-box.svg +3 -0
- data/app/assets/images/icons/outline/arrow-down-circle.svg +3 -0
- data/app/assets/images/icons/outline/arrow-down-left.svg +3 -0
- data/app/assets/images/icons/outline/arrow-down-on-square-stack.svg +3 -0
- data/app/assets/images/icons/outline/arrow-down-on-square.svg +3 -0
- data/app/assets/images/icons/outline/arrow-down-right.svg +3 -0
- data/app/assets/images/icons/outline/arrow-down-tray.svg +3 -0
- data/app/assets/images/icons/outline/arrow-down.svg +3 -0
- data/app/assets/images/icons/outline/arrow-left-circle.svg +3 -0
- data/app/assets/images/icons/outline/arrow-left-on-rectangle.svg +3 -0
- data/app/assets/images/icons/outline/arrow-left.svg +3 -0
- data/app/assets/images/icons/outline/arrow-long-down.svg +3 -0
- data/app/assets/images/icons/outline/arrow-long-left.svg +3 -0
- data/app/assets/images/icons/outline/arrow-long-right.svg +3 -0
- data/app/assets/images/icons/outline/arrow-long-up.svg +3 -0
- data/app/assets/images/icons/outline/arrow-path-rounded-square.svg +3 -0
- data/app/assets/images/icons/outline/arrow-path.svg +3 -0
- data/app/assets/images/icons/outline/arrow-right-circle.svg +3 -0
- data/app/assets/images/icons/outline/arrow-right-on-rectangle.svg +3 -0
- data/app/assets/images/icons/outline/arrow-right.svg +3 -0
- data/app/assets/images/icons/outline/arrow-small-down.svg +3 -0
- data/app/assets/images/icons/outline/arrow-small-left.svg +3 -0
- data/app/assets/images/icons/outline/arrow-small-right.svg +3 -0
- data/app/assets/images/icons/outline/arrow-small-up.svg +3 -0
- data/app/assets/images/icons/outline/arrow-top-right-on-square.svg +3 -0
- data/app/assets/images/icons/outline/arrow-trending-down.svg +3 -0
- data/app/assets/images/icons/outline/arrow-trending-up.svg +3 -0
- data/app/assets/images/icons/outline/arrow-up-circle.svg +3 -0
- data/app/assets/images/icons/outline/arrow-up-left.svg +3 -0
- data/app/assets/images/icons/outline/arrow-up-on-square-stack.svg +3 -0
- data/app/assets/images/icons/outline/arrow-up-on-square.svg +3 -0
- data/app/assets/images/icons/outline/arrow-up-right.svg +3 -0
- data/app/assets/images/icons/outline/arrow-up-tray.svg +3 -0
- data/app/assets/images/icons/outline/arrow-up.svg +3 -0
- data/app/assets/images/icons/outline/arrow-uturn-down.svg +3 -0
- data/app/assets/images/icons/outline/arrow-uturn-left.svg +3 -0
- data/app/assets/images/icons/outline/arrow-uturn-right.svg +3 -0
- data/app/assets/images/icons/outline/arrow-uturn-up.svg +3 -0
- data/app/assets/images/icons/outline/arrows-pointing-in.svg +3 -0
- data/app/assets/images/icons/outline/arrows-pointing-out.svg +3 -0
- data/app/assets/images/icons/outline/arrows-right-left.svg +3 -0
- data/app/assets/images/icons/outline/arrows-up-down.svg +3 -0
- data/app/assets/images/icons/outline/at-symbol.svg +3 -0
- data/app/assets/images/icons/outline/backspace.svg +3 -0
- data/app/assets/images/icons/outline/backward.svg +3 -0
- data/app/assets/images/icons/outline/banknotes.svg +3 -0
- data/app/assets/images/icons/outline/bars-2.svg +3 -0
- data/app/assets/images/icons/outline/bars-3-bottom-left.svg +3 -0
- data/app/assets/images/icons/outline/bars-3-bottom-right.svg +3 -0
- data/app/assets/images/icons/outline/bars-3-center-left.svg +3 -0
- data/app/assets/images/icons/outline/bars-3.svg +3 -0
- data/app/assets/images/icons/outline/bars-4.svg +3 -0
- data/app/assets/images/icons/outline/bars-arrow-down.svg +3 -0
- data/app/assets/images/icons/outline/bars-arrow-up.svg +3 -0
- data/app/assets/images/icons/outline/battery-0.svg +3 -0
- data/app/assets/images/icons/outline/battery-100.svg +3 -0
- data/app/assets/images/icons/outline/battery-50.svg +3 -0
- data/app/assets/images/icons/outline/beaker.svg +3 -0
- data/app/assets/images/icons/outline/bell-alert.svg +3 -0
- data/app/assets/images/icons/outline/bell-slash.svg +3 -0
- data/app/assets/images/icons/outline/bell-snooze.svg +3 -0
- data/app/assets/images/icons/outline/bell.svg +3 -0
- data/app/assets/images/icons/outline/bolt-slash.svg +3 -0
- data/app/assets/images/icons/outline/bolt.svg +3 -0
- data/app/assets/images/icons/outline/book-open.svg +3 -0
- data/app/assets/images/icons/outline/bookmark-slash.svg +3 -0
- data/app/assets/images/icons/outline/bookmark-square.svg +3 -0
- data/app/assets/images/icons/outline/bookmark.svg +3 -0
- data/app/assets/images/icons/outline/briefcase.svg +3 -0
- data/app/assets/images/icons/outline/bug-ant.svg +3 -0
- data/app/assets/images/icons/outline/building-library.svg +3 -0
- data/app/assets/images/icons/outline/building-office-2.svg +3 -0
- data/app/assets/images/icons/outline/building-office.svg +3 -0
- data/app/assets/images/icons/outline/building-storefront.svg +3 -0
- data/app/assets/images/icons/outline/cake.svg +3 -0
- data/app/assets/images/icons/outline/calculator.svg +3 -0
- data/app/assets/images/icons/outline/calendar-days.svg +3 -0
- data/app/assets/images/icons/outline/calendar.svg +3 -0
- data/app/assets/images/icons/outline/camera.svg +4 -0
- data/app/assets/images/icons/outline/chart-bar-square.svg +3 -0
- data/app/assets/images/icons/outline/chart-bar.svg +3 -0
- data/app/assets/images/icons/outline/chart-pie.svg +4 -0
- data/app/assets/images/icons/outline/chat-bubble-bottom-center-text.svg +3 -0
- data/app/assets/images/icons/outline/chat-bubble-bottom-center.svg +3 -0
- data/app/assets/images/icons/outline/chat-bubble-left-ellipsis.svg +3 -0
- data/app/assets/images/icons/outline/chat-bubble-left-right.svg +3 -0
- data/app/assets/images/icons/outline/chat-bubble-left.svg +3 -0
- data/app/assets/images/icons/outline/chat-bubble-oval-left-ellipsis.svg +3 -0
- data/app/assets/images/icons/outline/chat-bubble-oval-left.svg +3 -0
- data/app/assets/images/icons/outline/check-badge.svg +3 -0
- data/app/assets/images/icons/outline/check-circle.svg +3 -0
- data/app/assets/images/icons/outline/check.svg +3 -0
- data/app/assets/images/icons/outline/chevron-double-down.svg +3 -0
- data/app/assets/images/icons/outline/chevron-double-left.svg +3 -0
- data/app/assets/images/icons/outline/chevron-double-right.svg +3 -0
- data/app/assets/images/icons/outline/chevron-double-up.svg +3 -0
- data/app/assets/images/icons/outline/chevron-down.svg +3 -0
- data/app/assets/images/icons/outline/chevron-left.svg +3 -0
- data/app/assets/images/icons/outline/chevron-right.svg +3 -0
- data/app/assets/images/icons/outline/chevron-up-down.svg +3 -0
- data/app/assets/images/icons/outline/chevron-up.svg +3 -0
- data/app/assets/images/icons/outline/circle-stack.svg +3 -0
- data/app/assets/images/icons/outline/clipboard-document-check.svg +3 -0
- data/app/assets/images/icons/outline/clipboard-document-list.svg +3 -0
- data/app/assets/images/icons/outline/clipboard-document.svg +3 -0
- data/app/assets/images/icons/outline/clipboard.svg +3 -0
- data/app/assets/images/icons/outline/clock.svg +3 -0
- data/app/assets/images/icons/outline/cloud-arrow-down.svg +3 -0
- data/app/assets/images/icons/outline/cloud-arrow-up.svg +3 -0
- data/app/assets/images/icons/outline/cloud.svg +3 -0
- data/app/assets/images/icons/outline/code-bracket-square.svg +3 -0
- data/app/assets/images/icons/outline/code-bracket.svg +3 -0
- data/app/assets/images/icons/outline/cog-6-tooth.svg +4 -0
- data/app/assets/images/icons/outline/cog-8-tooth.svg +4 -0
- data/app/assets/images/icons/outline/cog.svg +3 -0
- data/app/assets/images/icons/outline/command-line.svg +3 -0
- data/app/assets/images/icons/outline/computer-desktop.svg +3 -0
- data/app/assets/images/icons/outline/cpu-chip.svg +3 -0
- data/app/assets/images/icons/outline/credit-card.svg +3 -0
- data/app/assets/images/icons/outline/cube-transparent.svg +3 -0
- data/app/assets/images/icons/outline/cube.svg +3 -0
- data/app/assets/images/icons/outline/currency-bangladeshi.svg +3 -0
- data/app/assets/images/icons/outline/currency-dollar.svg +3 -0
- data/app/assets/images/icons/outline/currency-euro.svg +3 -0
- data/app/assets/images/icons/outline/currency-pound.svg +3 -0
- data/app/assets/images/icons/outline/currency-rupee.svg +3 -0
- data/app/assets/images/icons/outline/currency-yen.svg +3 -0
- data/app/assets/images/icons/outline/cursor-arrow-rays.svg +3 -0
- data/app/assets/images/icons/outline/cursor-arrow-ripple.svg +3 -0
- data/app/assets/images/icons/outline/device-phone-mobile.svg +3 -0
- data/app/assets/images/icons/outline/device-tablet.svg +3 -0
- data/app/assets/images/icons/outline/document-arrow-down.svg +3 -0
- data/app/assets/images/icons/outline/document-arrow-up.svg +3 -0
- data/app/assets/images/icons/outline/document-chart-bar.svg +3 -0
- data/app/assets/images/icons/outline/document-check.svg +3 -0
- data/app/assets/images/icons/outline/document-duplicate.svg +3 -0
- data/app/assets/images/icons/outline/document-magnifying-glass.svg +3 -0
- data/app/assets/images/icons/outline/document-minus.svg +3 -0
- data/app/assets/images/icons/outline/document-plus.svg +3 -0
- data/app/assets/images/icons/outline/document-text.svg +3 -0
- data/app/assets/images/icons/outline/document.svg +3 -0
- data/app/assets/images/icons/outline/ellipsis-horizontal-circle.svg +3 -0
- data/app/assets/images/icons/outline/ellipsis-horizontal.svg +3 -0
- data/app/assets/images/icons/outline/ellipsis-vertical.svg +3 -0
- data/app/assets/images/icons/outline/envelope-open.svg +3 -0
- data/app/assets/images/icons/outline/envelope.svg +3 -0
- data/app/assets/images/icons/outline/exclamation-circle.svg +3 -0
- data/app/assets/images/icons/outline/exclamation-triangle.svg +3 -0
- data/app/assets/images/icons/outline/eye-dropper.svg +3 -0
- data/app/assets/images/icons/outline/eye-slash.svg +3 -0
- data/app/assets/images/icons/outline/eye.svg +4 -0
- data/app/assets/images/icons/outline/face-frown.svg +3 -0
- data/app/assets/images/icons/outline/face-smile.svg +3 -0
- data/app/assets/images/icons/outline/film.svg +3 -0
- data/app/assets/images/icons/outline/finger-print.svg +3 -0
- data/app/assets/images/icons/outline/fire.svg +4 -0
- data/app/assets/images/icons/outline/flag.svg +3 -0
- data/app/assets/images/icons/outline/folder-arrow-down.svg +3 -0
- data/app/assets/images/icons/outline/folder-minus.svg +3 -0
- data/app/assets/images/icons/outline/folder-open.svg +3 -0
- data/app/assets/images/icons/outline/folder-plus.svg +3 -0
- data/app/assets/images/icons/outline/folder.svg +3 -0
- data/app/assets/images/icons/outline/forward.svg +3 -0
- data/app/assets/images/icons/outline/funnel.svg +3 -0
- data/app/assets/images/icons/outline/gif.svg +3 -0
- data/app/assets/images/icons/outline/gift-top.svg +3 -0
- data/app/assets/images/icons/outline/gift.svg +3 -0
- data/app/assets/images/icons/outline/globe-alt.svg +3 -0
- data/app/assets/images/icons/outline/globe-americas.svg +3 -0
- data/app/assets/images/icons/outline/globe-asia-australia.svg +3 -0
- data/app/assets/images/icons/outline/globe-europe-africa.svg +3 -0
- data/app/assets/images/icons/outline/hand-raised.svg +3 -0
- data/app/assets/images/icons/outline/hand-thumb-down.svg +3 -0
- data/app/assets/images/icons/outline/hand-thumb-up.svg +3 -0
- data/app/assets/images/icons/outline/hashtag.svg +3 -0
- data/app/assets/images/icons/outline/heart.svg +3 -0
- data/app/assets/images/icons/outline/home-modern.svg +3 -0
- data/app/assets/images/icons/outline/home.svg +3 -0
- data/app/assets/images/icons/outline/identification.svg +3 -0
- data/app/assets/images/icons/outline/inbox-arrow-down.svg +3 -0
- data/app/assets/images/icons/outline/inbox-stack.svg +3 -0
- data/app/assets/images/icons/outline/inbox.svg +3 -0
- data/app/assets/images/icons/outline/information-circle.svg +3 -0
- data/app/assets/images/icons/outline/key.svg +3 -0
- data/app/assets/images/icons/outline/language.svg +3 -0
- data/app/assets/images/icons/outline/lifebuoy.svg +3 -0
- data/app/assets/images/icons/outline/light-bulb.svg +3 -0
- data/app/assets/images/icons/outline/link.svg +3 -0
- data/app/assets/images/icons/outline/list-bullet.svg +3 -0
- data/app/assets/images/icons/outline/lock-closed.svg +3 -0
- data/app/assets/images/icons/outline/lock-open.svg +3 -0
- data/app/assets/images/icons/outline/magnifying-glass-circle.svg +3 -0
- data/app/assets/images/icons/outline/magnifying-glass-minus.svg +3 -0
- data/app/assets/images/icons/outline/magnifying-glass-plus.svg +3 -0
- data/app/assets/images/icons/outline/magnifying-glass.svg +3 -0
- data/app/assets/images/icons/outline/map-pin.svg +4 -0
- data/app/assets/images/icons/outline/map.svg +3 -0
- data/app/assets/images/icons/outline/megaphone.svg +3 -0
- data/app/assets/images/icons/outline/microphone.svg +3 -0
- data/app/assets/images/icons/outline/minus-circle.svg +3 -0
- data/app/assets/images/icons/outline/minus-small.svg +3 -0
- data/app/assets/images/icons/outline/minus.svg +3 -0
- data/app/assets/images/icons/outline/moon.svg +3 -0
- data/app/assets/images/icons/outline/musical-note.svg +3 -0
- data/app/assets/images/icons/outline/newspaper.svg +3 -0
- data/app/assets/images/icons/outline/no-symbol.svg +3 -0
- data/app/assets/images/icons/outline/paint-brush.svg +3 -0
- data/app/assets/images/icons/outline/paper-airplane.svg +3 -0
- data/app/assets/images/icons/outline/paper-clip.svg +3 -0
- data/app/assets/images/icons/outline/pause-circle.svg +3 -0
- data/app/assets/images/icons/outline/pause.svg +3 -0
- data/app/assets/images/icons/outline/pencil-square.svg +3 -0
- data/app/assets/images/icons/outline/pencil.svg +3 -0
- data/app/assets/images/icons/outline/phone-arrow-down-left.svg +3 -0
- data/app/assets/images/icons/outline/phone-arrow-up-right.svg +3 -0
- data/app/assets/images/icons/outline/phone-x-mark.svg +3 -0
- data/app/assets/images/icons/outline/phone.svg +3 -0
- data/app/assets/images/icons/outline/photo.svg +3 -0
- data/app/assets/images/icons/outline/play-circle.svg +4 -0
- data/app/assets/images/icons/outline/play-pause.svg +3 -0
- data/app/assets/images/icons/outline/play.svg +3 -0
- data/app/assets/images/icons/outline/plus-circle.svg +3 -0
- data/app/assets/images/icons/outline/plus-small.svg +3 -0
- data/app/assets/images/icons/outline/plus.svg +3 -0
- data/app/assets/images/icons/outline/power.svg +3 -0
- data/app/assets/images/icons/outline/presentation-chart-bar.svg +3 -0
- data/app/assets/images/icons/outline/presentation-chart-line.svg +3 -0
- data/app/assets/images/icons/outline/printer.svg +3 -0
- data/app/assets/images/icons/outline/puzzle-piece.svg +3 -0
- data/app/assets/images/icons/outline/qr-code.svg +4 -0
- data/app/assets/images/icons/outline/question-mark-circle.svg +3 -0
- data/app/assets/images/icons/outline/queue-list.svg +3 -0
- data/app/assets/images/icons/outline/radio.svg +3 -0
- data/app/assets/images/icons/outline/receipt-percent.svg +3 -0
- data/app/assets/images/icons/outline/receipt-refund.svg +3 -0
- data/app/assets/images/icons/outline/rectangle-group.svg +3 -0
- data/app/assets/images/icons/outline/rectangle-stack.svg +3 -0
- data/app/assets/images/icons/outline/rocket-launch.svg +3 -0
- data/app/assets/images/icons/outline/rss.svg +3 -0
- data/app/assets/images/icons/outline/scale.svg +3 -0
- data/app/assets/images/icons/outline/scissors.svg +3 -0
- data/app/assets/images/icons/outline/server-stack.svg +3 -0
- data/app/assets/images/icons/outline/server.svg +3 -0
- data/app/assets/images/icons/outline/share.svg +3 -0
- data/app/assets/images/icons/outline/shield-check.svg +3 -0
- data/app/assets/images/icons/outline/shield-exclamation.svg +3 -0
- data/app/assets/images/icons/outline/shopping-bag.svg +3 -0
- data/app/assets/images/icons/outline/shopping-cart.svg +3 -0
- data/app/assets/images/icons/outline/signal-slash.svg +3 -0
- data/app/assets/images/icons/outline/signal.svg +3 -0
- data/app/assets/images/icons/outline/sparkles.svg +3 -0
- data/app/assets/images/icons/outline/speaker-wave.svg +3 -0
- data/app/assets/images/icons/outline/speaker-x-mark.svg +3 -0
- data/app/assets/images/icons/outline/square-2-stack.svg +3 -0
- data/app/assets/images/icons/outline/square-3-stack-3d.svg +3 -0
- data/app/assets/images/icons/outline/squares-2x2.svg +3 -0
- data/app/assets/images/icons/outline/squares-plus.svg +3 -0
- data/app/assets/images/icons/outline/star.svg +3 -0
- data/app/assets/images/icons/outline/stop-circle.svg +4 -0
- data/app/assets/images/icons/outline/stop.svg +3 -0
- data/app/assets/images/icons/outline/sun.svg +3 -0
- data/app/assets/images/icons/outline/swatch.svg +3 -0
- data/app/assets/images/icons/outline/table-cells.svg +3 -0
- data/app/assets/images/icons/outline/tag.svg +4 -0
- data/app/assets/images/icons/outline/ticket.svg +3 -0
- data/app/assets/images/icons/outline/trash.svg +3 -0
- data/app/assets/images/icons/outline/trophy.svg +3 -0
- data/app/assets/images/icons/outline/truck.svg +3 -0
- data/app/assets/images/icons/outline/tv.svg +3 -0
- data/app/assets/images/icons/outline/user-circle.svg +3 -0
- data/app/assets/images/icons/outline/user-group.svg +3 -0
- data/app/assets/images/icons/outline/user-minus.svg +3 -0
- data/app/assets/images/icons/outline/user-plus.svg +3 -0
- data/app/assets/images/icons/outline/user.svg +3 -0
- data/app/assets/images/icons/outline/users.svg +3 -0
- data/app/assets/images/icons/outline/variable.svg +3 -0
- data/app/assets/images/icons/outline/video-camera-slash.svg +3 -0
- data/app/assets/images/icons/outline/video-camera.svg +3 -0
- data/app/assets/images/icons/outline/view-columns.svg +3 -0
- data/app/assets/images/icons/outline/viewfinder-circle.svg +3 -0
- data/app/assets/images/icons/outline/wallet.svg +3 -0
- data/app/assets/images/icons/outline/wifi.svg +3 -0
- data/app/assets/images/icons/outline/window.svg +3 -0
- data/app/assets/images/icons/outline/wrench-screwdriver.svg +3 -0
- data/app/assets/images/icons/outline/wrench.svg +4 -0
- data/app/assets/images/icons/outline/x-circle.svg +3 -0
- data/app/assets/images/icons/outline/x-mark.svg +3 -0
- data/app/assets/images/icons/solid/academic-cap.svg +5 -0
- data/app/assets/images/icons/solid/adjustments-horizontal.svg +3 -0
- data/app/assets/images/icons/solid/adjustments-vertical.svg +3 -0
- data/app/assets/images/icons/solid/archive-box-arrow-down.svg +4 -0
- data/app/assets/images/icons/solid/archive-box-x-mark.svg +4 -0
- data/app/assets/images/icons/solid/archive-box.svg +4 -0
- data/app/assets/images/icons/solid/arrow-down-circle.svg +3 -0
- data/app/assets/images/icons/solid/arrow-down-left.svg +3 -0
- data/app/assets/images/icons/solid/arrow-down-on-square-stack.svg +4 -0
- data/app/assets/images/icons/solid/arrow-down-on-square.svg +3 -0
- data/app/assets/images/icons/solid/arrow-down-right.svg +3 -0
- data/app/assets/images/icons/solid/arrow-down-tray.svg +3 -0
- data/app/assets/images/icons/solid/arrow-down.svg +3 -0
- data/app/assets/images/icons/solid/arrow-left-circle.svg +3 -0
- data/app/assets/images/icons/solid/arrow-left-on-rectangle.svg +3 -0
- data/app/assets/images/icons/solid/arrow-left.svg +3 -0
- data/app/assets/images/icons/solid/arrow-long-down.svg +3 -0
- data/app/assets/images/icons/solid/arrow-long-left.svg +3 -0
- data/app/assets/images/icons/solid/arrow-long-right.svg +3 -0
- data/app/assets/images/icons/solid/arrow-long-up.svg +3 -0
- data/app/assets/images/icons/solid/arrow-path-rounded-square.svg +3 -0
- data/app/assets/images/icons/solid/arrow-path.svg +3 -0
- data/app/assets/images/icons/solid/arrow-right-circle.svg +3 -0
- data/app/assets/images/icons/solid/arrow-right-on-rectangle.svg +3 -0
- data/app/assets/images/icons/solid/arrow-right.svg +3 -0
- data/app/assets/images/icons/solid/arrow-small-down.svg +3 -0
- data/app/assets/images/icons/solid/arrow-small-left.svg +3 -0
- data/app/assets/images/icons/solid/arrow-small-right.svg +3 -0
- data/app/assets/images/icons/solid/arrow-small-up.svg +3 -0
- data/app/assets/images/icons/solid/arrow-top-right-on-square.svg +3 -0
- data/app/assets/images/icons/solid/arrow-trending-down.svg +3 -0
- data/app/assets/images/icons/solid/arrow-trending-up.svg +3 -0
- data/app/assets/images/icons/solid/arrow-up-circle.svg +3 -0
- data/app/assets/images/icons/solid/arrow-up-left.svg +3 -0
- data/app/assets/images/icons/solid/arrow-up-on-square-stack.svg +4 -0
- data/app/assets/images/icons/solid/arrow-up-on-square.svg +3 -0
- data/app/assets/images/icons/solid/arrow-up-right.svg +3 -0
- data/app/assets/images/icons/solid/arrow-up-tray.svg +3 -0
- data/app/assets/images/icons/solid/arrow-up.svg +3 -0
- data/app/assets/images/icons/solid/arrow-uturn-down.svg +3 -0
- data/app/assets/images/icons/solid/arrow-uturn-left.svg +3 -0
- data/app/assets/images/icons/solid/arrow-uturn-right.svg +3 -0
- data/app/assets/images/icons/solid/arrow-uturn-up.svg +3 -0
- data/app/assets/images/icons/solid/arrows-pointing-in.svg +3 -0
- data/app/assets/images/icons/solid/arrows-pointing-out.svg +3 -0
- data/app/assets/images/icons/solid/arrows-right-left.svg +3 -0
- data/app/assets/images/icons/solid/arrows-up-down.svg +3 -0
- data/app/assets/images/icons/solid/at-symbol.svg +3 -0
- data/app/assets/images/icons/solid/backspace.svg +3 -0
- data/app/assets/images/icons/solid/backward.svg +3 -0
- data/app/assets/images/icons/solid/banknotes.svg +5 -0
- data/app/assets/images/icons/solid/bars-2.svg +3 -0
- data/app/assets/images/icons/solid/bars-3-bottom-left.svg +3 -0
- data/app/assets/images/icons/solid/bars-3-bottom-right.svg +3 -0
- data/app/assets/images/icons/solid/bars-3-center-left.svg +3 -0
- data/app/assets/images/icons/solid/bars-3.svg +3 -0
- data/app/assets/images/icons/solid/bars-4.svg +3 -0
- data/app/assets/images/icons/solid/bars-arrow-down.svg +3 -0
- data/app/assets/images/icons/solid/bars-arrow-up.svg +3 -0
- data/app/assets/images/icons/solid/battery-0.svg +3 -0
- data/app/assets/images/icons/solid/battery-100.svg +3 -0
- data/app/assets/images/icons/solid/battery-50.svg +4 -0
- data/app/assets/images/icons/solid/beaker.svg +3 -0
- data/app/assets/images/icons/solid/bell-alert.svg +4 -0
- data/app/assets/images/icons/solid/bell-slash.svg +4 -0
- data/app/assets/images/icons/solid/bell-snooze.svg +3 -0
- data/app/assets/images/icons/solid/bell.svg +3 -0
- data/app/assets/images/icons/solid/bolt-slash.svg +3 -0
- data/app/assets/images/icons/solid/bolt.svg +3 -0
- data/app/assets/images/icons/solid/book-open.svg +3 -0
- data/app/assets/images/icons/solid/bookmark-slash.svg +3 -0
- data/app/assets/images/icons/solid/bookmark-square.svg +3 -0
- data/app/assets/images/icons/solid/bookmark.svg +3 -0
- data/app/assets/images/icons/solid/briefcase.svg +4 -0
- data/app/assets/images/icons/solid/bug-ant.svg +3 -0
- data/app/assets/images/icons/solid/building-library.svg +5 -0
- data/app/assets/images/icons/solid/building-office-2.svg +3 -0
- data/app/assets/images/icons/solid/building-office.svg +3 -0
- data/app/assets/images/icons/solid/building-storefront.svg +4 -0
- data/app/assets/images/icons/solid/cake.svg +3 -0
- data/app/assets/images/icons/solid/calculator.svg +3 -0
- data/app/assets/images/icons/solid/calendar-days.svg +4 -0
- data/app/assets/images/icons/solid/calendar.svg +3 -0
- data/app/assets/images/icons/solid/camera.svg +4 -0
- data/app/assets/images/icons/solid/chart-bar-square.svg +3 -0
- data/app/assets/images/icons/solid/chart-bar.svg +3 -0
- data/app/assets/images/icons/solid/chart-pie.svg +4 -0
- data/app/assets/images/icons/solid/chat-bubble-bottom-center-text.svg +3 -0
- data/app/assets/images/icons/solid/chat-bubble-bottom-center.svg +3 -0
- data/app/assets/images/icons/solid/chat-bubble-left-ellipsis.svg +3 -0
- data/app/assets/images/icons/solid/chat-bubble-left-right.svg +4 -0
- data/app/assets/images/icons/solid/chat-bubble-left.svg +3 -0
- data/app/assets/images/icons/solid/chat-bubble-oval-left-ellipsis.svg +3 -0
- data/app/assets/images/icons/solid/chat-bubble-oval-left.svg +3 -0
- data/app/assets/images/icons/solid/check-badge.svg +3 -0
- data/app/assets/images/icons/solid/check-circle.svg +3 -0
- data/app/assets/images/icons/solid/check.svg +3 -0
- data/app/assets/images/icons/solid/chevron-double-down.svg +3 -0
- data/app/assets/images/icons/solid/chevron-double-left.svg +3 -0
- data/app/assets/images/icons/solid/chevron-double-right.svg +3 -0
- data/app/assets/images/icons/solid/chevron-double-up.svg +3 -0
- data/app/assets/images/icons/solid/chevron-down.svg +3 -0
- data/app/assets/images/icons/solid/chevron-left.svg +3 -0
- data/app/assets/images/icons/solid/chevron-right.svg +3 -0
- data/app/assets/images/icons/solid/chevron-up-down.svg +3 -0
- data/app/assets/images/icons/solid/chevron-up.svg +3 -0
- data/app/assets/images/icons/solid/circle-stack.svg +6 -0
- data/app/assets/images/icons/solid/clipboard-document-check.svg +4 -0
- data/app/assets/images/icons/solid/clipboard-document-list.svg +4 -0
- data/app/assets/images/icons/solid/clipboard-document.svg +5 -0
- data/app/assets/images/icons/solid/clipboard.svg +3 -0
- data/app/assets/images/icons/solid/clock.svg +3 -0
- data/app/assets/images/icons/solid/cloud-arrow-down.svg +3 -0
- data/app/assets/images/icons/solid/cloud-arrow-up.svg +3 -0
- data/app/assets/images/icons/solid/cloud.svg +3 -0
- data/app/assets/images/icons/solid/code-bracket-square.svg +3 -0
- data/app/assets/images/icons/solid/code-bracket.svg +3 -0
- data/app/assets/images/icons/solid/cog-6-tooth.svg +3 -0
- data/app/assets/images/icons/solid/cog-8-tooth.svg +3 -0
- data/app/assets/images/icons/solid/cog.svg +4 -0
- data/app/assets/images/icons/solid/command-line.svg +3 -0
- data/app/assets/images/icons/solid/computer-desktop.svg +3 -0
- data/app/assets/images/icons/solid/cpu-chip.svg +4 -0
- data/app/assets/images/icons/solid/credit-card.svg +4 -0
- data/app/assets/images/icons/solid/cube-transparent.svg +3 -0
- data/app/assets/images/icons/solid/cube.svg +3 -0
- data/app/assets/images/icons/solid/currency-bangladeshi.svg +3 -0
- data/app/assets/images/icons/solid/currency-dollar.svg +4 -0
- data/app/assets/images/icons/solid/currency-euro.svg +3 -0
- data/app/assets/images/icons/solid/currency-pound.svg +3 -0
- data/app/assets/images/icons/solid/currency-rupee.svg +3 -0
- data/app/assets/images/icons/solid/currency-yen.svg +3 -0
- data/app/assets/images/icons/solid/cursor-arrow-rays.svg +3 -0
- data/app/assets/images/icons/solid/cursor-arrow-ripple.svg +3 -0
- data/app/assets/images/icons/solid/device-phone-mobile.svg +4 -0
- data/app/assets/images/icons/solid/device-tablet.svg +4 -0
- data/app/assets/images/icons/solid/document-arrow-down.svg +4 -0
- data/app/assets/images/icons/solid/document-arrow-up.svg +4 -0
- data/app/assets/images/icons/solid/document-chart-bar.svg +4 -0
- data/app/assets/images/icons/solid/document-check.svg +4 -0
- data/app/assets/images/icons/solid/document-duplicate.svg +4 -0
- data/app/assets/images/icons/solid/document-magnifying-glass.svg +5 -0
- data/app/assets/images/icons/solid/document-minus.svg +4 -0
- data/app/assets/images/icons/solid/document-plus.svg +4 -0
- data/app/assets/images/icons/solid/document-text.svg +4 -0
- data/app/assets/images/icons/solid/document.svg +4 -0
- data/app/assets/images/icons/solid/ellipsis-horizontal-circle.svg +3 -0
- data/app/assets/images/icons/solid/ellipsis-horizontal.svg +3 -0
- data/app/assets/images/icons/solid/ellipsis-vertical.svg +3 -0
- data/app/assets/images/icons/solid/envelope-open.svg +4 -0
- data/app/assets/images/icons/solid/envelope.svg +4 -0
- data/app/assets/images/icons/solid/exclamation-circle.svg +3 -0
- data/app/assets/images/icons/solid/exclamation-triangle.svg +3 -0
- data/app/assets/images/icons/solid/eye-dropper.svg +3 -0
- data/app/assets/images/icons/solid/eye-slash.svg +5 -0
- data/app/assets/images/icons/solid/eye.svg +4 -0
- data/app/assets/images/icons/solid/face-frown.svg +3 -0
- data/app/assets/images/icons/solid/face-smile.svg +3 -0
- data/app/assets/images/icons/solid/film.svg +3 -0
- data/app/assets/images/icons/solid/finger-print.svg +3 -0
- data/app/assets/images/icons/solid/fire.svg +3 -0
- data/app/assets/images/icons/solid/flag.svg +3 -0
- data/app/assets/images/icons/solid/folder-arrow-down.svg +3 -0
- data/app/assets/images/icons/solid/folder-minus.svg +3 -0
- data/app/assets/images/icons/solid/folder-open.svg +3 -0
- data/app/assets/images/icons/solid/folder-plus.svg +3 -0
- data/app/assets/images/icons/solid/folder.svg +3 -0
- data/app/assets/images/icons/solid/forward.svg +3 -0
- data/app/assets/images/icons/solid/funnel.svg +3 -0
- data/app/assets/images/icons/solid/gif.svg +3 -0
- data/app/assets/images/icons/solid/gift-top.svg +4 -0
- data/app/assets/images/icons/solid/gift.svg +3 -0
- data/app/assets/images/icons/solid/globe-alt.svg +3 -0
- data/app/assets/images/icons/solid/globe-americas.svg +3 -0
- data/app/assets/images/icons/solid/globe-asia-australia.svg +4 -0
- data/app/assets/images/icons/solid/globe-europe-africa.svg +3 -0
- data/app/assets/images/icons/solid/hand-raised.svg +3 -0
- data/app/assets/images/icons/solid/hand-thumb-down.svg +3 -0
- data/app/assets/images/icons/solid/hand-thumb-up.svg +3 -0
- data/app/assets/images/icons/solid/hashtag.svg +3 -0
- data/app/assets/images/icons/solid/heart.svg +3 -0
- data/app/assets/images/icons/solid/home-modern.svg +4 -0
- data/app/assets/images/icons/solid/home.svg +4 -0
- data/app/assets/images/icons/solid/identification.svg +3 -0
- data/app/assets/images/icons/solid/inbox-arrow-down.svg +4 -0
- data/app/assets/images/icons/solid/inbox-stack.svg +4 -0
- data/app/assets/images/icons/solid/inbox.svg +3 -0
- data/app/assets/images/icons/solid/information-circle.svg +3 -0
- data/app/assets/images/icons/solid/key.svg +3 -0
- data/app/assets/images/icons/solid/language.svg +3 -0
- data/app/assets/images/icons/solid/lifebuoy.svg +3 -0
- data/app/assets/images/icons/solid/light-bulb.svg +4 -0
- data/app/assets/images/icons/solid/link.svg +3 -0
- data/app/assets/images/icons/solid/list-bullet.svg +3 -0
- data/app/assets/images/icons/solid/lock-closed.svg +3 -0
- data/app/assets/images/icons/solid/lock-open.svg +3 -0
- data/app/assets/images/icons/solid/magnifying-glass-circle.svg +4 -0
- data/app/assets/images/icons/solid/magnifying-glass-minus.svg +3 -0
- data/app/assets/images/icons/solid/magnifying-glass-plus.svg +3 -0
- data/app/assets/images/icons/solid/magnifying-glass.svg +3 -0
- data/app/assets/images/icons/solid/map-pin.svg +3 -0
- data/app/assets/images/icons/solid/map.svg +3 -0
- data/app/assets/images/icons/solid/megaphone.svg +3 -0
- data/app/assets/images/icons/solid/microphone.svg +4 -0
- data/app/assets/images/icons/solid/minus-circle.svg +3 -0
- data/app/assets/images/icons/solid/minus-small.svg +3 -0
- data/app/assets/images/icons/solid/minus.svg +3 -0
- data/app/assets/images/icons/solid/moon.svg +3 -0
- data/app/assets/images/icons/solid/musical-note.svg +3 -0
- data/app/assets/images/icons/solid/newspaper.svg +4 -0
- data/app/assets/images/icons/solid/no-symbol.svg +3 -0
- data/app/assets/images/icons/solid/paint-brush.svg +3 -0
- data/app/assets/images/icons/solid/paper-airplane.svg +3 -0
- data/app/assets/images/icons/solid/paper-clip.svg +3 -0
- data/app/assets/images/icons/solid/pause-circle.svg +3 -0
- data/app/assets/images/icons/solid/pause.svg +3 -0
- data/app/assets/images/icons/solid/pencil-square.svg +4 -0
- data/app/assets/images/icons/solid/pencil.svg +3 -0
- data/app/assets/images/icons/solid/phone-arrow-down-left.svg +4 -0
- data/app/assets/images/icons/solid/phone-arrow-up-right.svg +4 -0
- data/app/assets/images/icons/solid/phone-x-mark.svg +3 -0
- data/app/assets/images/icons/solid/phone.svg +3 -0
- data/app/assets/images/icons/solid/photo.svg +3 -0
- data/app/assets/images/icons/solid/play-circle.svg +3 -0
- data/app/assets/images/icons/solid/play-pause.svg +3 -0
- data/app/assets/images/icons/solid/play.svg +3 -0
- data/app/assets/images/icons/solid/plus-circle.svg +3 -0
- data/app/assets/images/icons/solid/plus-small.svg +3 -0
- data/app/assets/images/icons/solid/plus.svg +3 -0
- data/app/assets/images/icons/solid/power.svg +3 -0
- data/app/assets/images/icons/solid/presentation-chart-bar.svg +3 -0
- data/app/assets/images/icons/solid/presentation-chart-line.svg +3 -0
- data/app/assets/images/icons/solid/printer.svg +3 -0
- data/app/assets/images/icons/solid/puzzle-piece.svg +3 -0
- data/app/assets/images/icons/solid/qr-code.svg +3 -0
- data/app/assets/images/icons/solid/question-mark-circle.svg +3 -0
- data/app/assets/images/icons/solid/queue-list.svg +3 -0
- data/app/assets/images/icons/solid/radio.svg +3 -0
- data/app/assets/images/icons/solid/receipt-percent.svg +3 -0
- data/app/assets/images/icons/solid/receipt-refund.svg +3 -0
- data/app/assets/images/icons/solid/rectangle-group.svg +3 -0
- data/app/assets/images/icons/solid/rectangle-stack.svg +3 -0
- data/app/assets/images/icons/solid/rocket-launch.svg +4 -0
- data/app/assets/images/icons/solid/rss.svg +3 -0
- data/app/assets/images/icons/solid/scale.svg +3 -0
- data/app/assets/images/icons/solid/scissors.svg +4 -0
- data/app/assets/images/icons/solid/server-stack.svg +4 -0
- data/app/assets/images/icons/solid/server.svg +4 -0
- data/app/assets/images/icons/solid/share.svg +3 -0
- data/app/assets/images/icons/solid/shield-check.svg +3 -0
- data/app/assets/images/icons/solid/shield-exclamation.svg +3 -0
- data/app/assets/images/icons/solid/shopping-bag.svg +3 -0
- data/app/assets/images/icons/solid/shopping-cart.svg +3 -0
- data/app/assets/images/icons/solid/signal-slash.svg +3 -0
- data/app/assets/images/icons/solid/signal.svg +3 -0
- data/app/assets/images/icons/solid/sparkles.svg +3 -0
- data/app/assets/images/icons/solid/speaker-wave.svg +4 -0
- data/app/assets/images/icons/solid/speaker-x-mark.svg +3 -0
- data/app/assets/images/icons/solid/square-2-stack.svg +4 -0
- data/app/assets/images/icons/solid/square-3-stack-3d.svg +5 -0
- data/app/assets/images/icons/solid/squares-2x2.svg +3 -0
- data/app/assets/images/icons/solid/squares-plus.svg +3 -0
- data/app/assets/images/icons/solid/star.svg +3 -0
- data/app/assets/images/icons/solid/stop-circle.svg +3 -0
- data/app/assets/images/icons/solid/stop.svg +3 -0
- data/app/assets/images/icons/solid/sun.svg +3 -0
- data/app/assets/images/icons/solid/swatch.svg +4 -0
- data/app/assets/images/icons/solid/table-cells.svg +3 -0
- data/app/assets/images/icons/solid/tag.svg +3 -0
- data/app/assets/images/icons/solid/ticket.svg +3 -0
- data/app/assets/images/icons/solid/trash.svg +3 -0
- data/app/assets/images/icons/solid/trophy.svg +3 -0
- data/app/assets/images/icons/solid/truck.svg +5 -0
- data/app/assets/images/icons/solid/tv.svg +4 -0
- data/app/assets/images/icons/solid/user-circle.svg +3 -0
- data/app/assets/images/icons/solid/user-group.svg +4 -0
- data/app/assets/images/icons/solid/user-minus.svg +3 -0
- data/app/assets/images/icons/solid/user-plus.svg +3 -0
- data/app/assets/images/icons/solid/user.svg +3 -0
- data/app/assets/images/icons/solid/users.svg +3 -0
- data/app/assets/images/icons/solid/variable.svg +3 -0
- data/app/assets/images/icons/solid/video-camera-slash.svg +3 -0
- data/app/assets/images/icons/solid/video-camera.svg +3 -0
- data/app/assets/images/icons/solid/view-columns.svg +3 -0
- data/app/assets/images/icons/solid/viewfinder-circle.svg +3 -0
- data/app/assets/images/icons/solid/wallet.svg +3 -0
- data/app/assets/images/icons/solid/wifi.svg +3 -0
- data/app/assets/images/icons/solid/window.svg +3 -0
- data/app/assets/images/icons/solid/wrench-screwdriver.svg +5 -0
- data/app/assets/images/icons/solid/wrench.svg +3 -0
- data/app/assets/images/icons/solid/x-circle.svg +3 -0
- data/app/assets/images/icons/solid/x-mark.svg +3 -0
- data/app/assets/images/key.svg +1 -0
- data/app/assets/images/light-mode.svg +1 -0
- data/app/assets/images/loading.svg +36 -0
- data/app/assets/images/lock-unlocked.svg +1 -0
- data/app/assets/images/mail.svg +1 -0
- data/app/assets/images/map.svg +1 -0
- data/app/assets/images/menu.svg +1 -0
- data/app/assets/images/message.svg +1 -0
- data/app/assets/images/open-book.svg +1 -0
- data/app/assets/images/paw.svg +1 -0
- data/app/assets/images/question-mark.svg +1 -0
- data/app/assets/images/r.svg +3 -0
- data/app/assets/images/rails-logo.svg +1 -0
- data/app/assets/images/railsui-light.svg +1 -0
- data/app/assets/images/railsui-logo.svg +8 -0
- data/app/assets/images/settings.svg +1 -0
- data/app/assets/images/social/facebook.png +0 -0
- data/app/assets/images/social/facebook.svg +1 -0
- data/app/assets/images/social/github.png +0 -0
- data/app/assets/images/social/github.svg +1 -0
- data/app/assets/images/social/google.png +0 -0
- data/app/assets/images/social/instagram.png +0 -0
- data/app/assets/images/social/instagram.svg +1 -0
- data/app/assets/images/social/linkedin.png +0 -0
- data/app/assets/images/social/linkedin.svg +1 -0
- data/app/assets/images/social/twitter.png +0 -0
- data/app/assets/images/social/twitter.svg +1 -0
- data/app/assets/images/social/x.png +0 -0
- data/app/assets/images/social/youtube.png +0 -0
- data/app/assets/images/social/youtube.svg +1 -0
- data/app/assets/images/system-mode.svg +1 -0
- data/app/assets/images/tailwind-hound-thumbnail.jpg +0 -0
- data/app/assets/images/tailwind-shepherd-thumbnail.jpg +0 -0
- data/app/assets/images/tailwind.svg +3 -0
- data/app/assets/images/themes/hound/fusion.png +0 -0
- data/app/assets/images/themes/hound/logo.svg +1 -0
- data/app/assets/images/themes/shepherd/auth-cabin.jpg +0 -0
- data/app/assets/images/themes/shepherd/auth-desert.jpg +0 -0
- data/app/assets/images/themes/shepherd/logo.svg +1 -0
- data/app/assets/images/themes/shepherd/property-1.jpg +0 -0
- data/app/assets/images/themes/shepherd/property-2.jpg +0 -0
- data/app/assets/images/themes/shepherd/property-3.jpg +0 -0
- data/app/assets/images/twitter.svg +1 -0
- data/app/assets/images/users.svg +0 -0
- data/app/assets/images/warning.svg +3 -0
- data/app/assets/javascripts/railsui.js +163 -0
- data/app/assets/stylesheets/railsui/code.css +137 -0
- data/app/assets/stylesheets/railsui/config.css +20 -0
- data/app/assets/stylesheets/railsui/docs.css +14 -0
- data/app/assets/stylesheets/railsui/forms.css +52 -0
- data/app/assets/stylesheets/railsui/nav.css +28 -0
- data/app/assets/stylesheets/railsui/overrides.css +5 -0
- data/app/assets/stylesheets/railsui/railsui.css +297 -0
- data/app/controllers/railsui/admin_controller.rb +11 -0
- data/app/controllers/railsui/application_controller.rb +5 -0
- data/app/controllers/railsui/configurations_controller.rb +30 -0
- data/app/controllers/railsui/default_controller.rb +13 -0
- data/app/controllers/railsui/routes_controller.rb +13 -0
- data/app/controllers/railsui/systems/authentication/devise_controller.rb +16 -0
- data/app/controllers/railsui/systems/authentication/static_controller.rb +16 -0
- data/app/controllers/railsui/systems/authentication_controller.rb +15 -0
- data/app/controllers/railsui/systems/components_controller.rb +14 -0
- data/app/controllers/railsui/systems/content_controller.rb +16 -0
- data/app/controllers/railsui/systems/forms_controller.rb +14 -0
- data/app/controllers/railsui/systems/helpers_controller.rb +311 -0
- data/app/controllers/railsui/systems/mailers_controller.rb +14 -0
- data/app/controllers/railsui/systems/pages_controller.rb +8 -0
- data/app/controllers/railsui/systems_controller.rb +328 -0
- data/app/helpers/railsui/application_helper.rb +269 -0
- data/app/helpers/railsui/framework_helper.rb +23 -0
- data/app/helpers/railsui/mail_helper.rb +18 -0
- data/app/javascript/application.js +1 -0
- data/app/javascript/controllers/application.js +9 -0
- data/app/javascript/controllers/index.js +80 -0
- data/app/javascript/controllers/railsui_anchor_controller.js +13 -0
- data/app/javascript/controllers/railsui_auto_expand_text_area_controller.js +24 -0
- data/app/javascript/controllers/railsui_canvas_controller.js +164 -0
- data/app/javascript/controllers/railsui_code_controller.js +36 -0
- data/app/javascript/controllers/railsui_color_controller.js +18 -0
- data/app/javascript/controllers/railsui_configuration_controller.js +44 -0
- data/app/javascript/controllers/railsui_dialog_controller.js +21 -0
- data/app/javascript/controllers/railsui_flash_controller.js +11 -0
- data/app/javascript/controllers/railsui_helper_controller.js +24 -0
- data/app/javascript/controllers/railsui_loading_controller.js +43 -0
- data/app/javascript/controllers/railsui_modal_controller.js +56 -0
- data/app/javascript/controllers/railsui_nav_controller.js +26 -0
- data/app/javascript/controllers/railsui_pages_controller.js +16 -0
- data/app/javascript/controllers/railsui_prevent_controller.js +7 -0
- data/app/javascript/controllers/railsui_scroll_controller.js +31 -0
- data/app/javascript/controllers/railsui_scroll_spy_controller.js +84 -0
- data/app/javascript/controllers/railsui_search_controller.js +29 -0
- data/app/javascript/controllers/railsui_smooth_controller.js +18 -0
- data/app/javascript/controllers/railsui_snippet_controller.js +83 -0
- data/app/models/railsui/application_record.rb +6 -0
- data/app/models/railsui/default.rb +126 -0
- data/app/views/layouts/railsui/application.html.erb +69 -0
- data/app/views/layouts/railsui/fullwidth.html.erb +51 -0
- data/app/views/layouts/railsui/landing.html.erb +40 -0
- data/app/views/layouts/railsui/routes.html.erb +45 -0
- data/app/views/railsui/admin/_form.html.erb +32 -0
- data/app/views/railsui/admin/_loader.html.erb +47 -0
- data/app/views/railsui/admin/fields/_color.html.erb +39 -0
- data/app/views/railsui/admin/fields/_commit.html.erb +12 -0
- data/app/views/railsui/admin/fields/_general.html.erb +21 -0
- data/app/views/railsui/admin/fields/_page.html.erb +28 -0
- data/app/views/railsui/admin/fields/_pages.html.erb +43 -0
- data/app/views/railsui/admin/fields/_theme.html.erb +92 -0
- data/app/views/railsui/admin/fields/pages/_page_present.html.erb +10 -0
- data/app/views/railsui/admin/show.html.erb +1 -0
- data/app/views/railsui/default/_launchpad.html.erb +89 -0
- data/app/views/railsui/default/_link.html.erb +9 -0
- data/app/views/railsui/default/index.html.erb +2 -0
- data/app/views/railsui/default/start.html.erb +2 -0
- data/app/views/railsui/routes/_nav.html.erb +20 -0
- data/app/views/railsui/routes/show.html.erb +41 -0
- data/app/views/railsui/shared/_callout.html.erb +8 -0
- data/app/views/railsui/shared/_code_example.html.erb +29 -0
- data/app/views/railsui/shared/_code_example_heading.html.erb +1 -0
- data/app/views/railsui/shared/_component_nav.html.erb +8 -0
- data/app/views/railsui/shared/_email_action.html.erb +15 -0
- data/app/views/railsui/shared/_email_callout.html.erb +7 -0
- data/app/views/railsui/shared/_email_spacer.html.erb +7 -0
- data/app/views/railsui/shared/_flash_messages.html.erb +11 -0
- data/app/views/railsui/shared/_footer.html.erb +9 -0
- data/app/views/railsui/shared/_global_nav.html.erb +58 -0
- data/app/views/railsui/shared/_global_nav_item.html.erb +16 -0
- data/app/views/railsui/shared/_header.html.erb +19 -0
- data/app/views/railsui/shared/_launcher.html.erb +119 -0
- data/app/views/railsui/shared/_linkable.html.erb +11 -0
- data/app/views/railsui/shared/_linkables.html.erb +3 -0
- data/app/views/railsui/shared/_logo.html.erb +4 -0
- data/app/views/railsui/shared/_logo_light.html.erb +4 -0
- data/app/views/railsui/shared/_mailer_preview.html.erb +489 -0
- data/app/views/railsui/shared/_nav.html.erb +168 -0
- data/app/views/railsui/shared/_pagination.html.erb +10 -0
- data/app/views/railsui/shared/_preview.html.erb +3 -0
- data/app/views/railsui/shared/_preview_dark.html.erb +3 -0
- data/app/views/railsui/shared/_preview_dark_zinc.html.erb +3 -0
- data/app/views/railsui/shared/_preview_gray.html.erb +3 -0
- data/app/views/railsui/shared/_preview_zinc.html.erb +3 -0
- data/app/views/railsui/shared/_quicklinks.html.erb +10 -0
- data/app/views/railsui/shared/_read_before.html.erb +5 -0
- data/app/views/railsui/shared/_rui_email_preview.html.erb +22 -0
- data/app/views/railsui/shared/_rui_email_preview_neutral.html.erb +22 -0
- data/app/views/railsui/shared/_scroll_to_top.html.erb +6 -0
- data/app/views/railsui/shared/_snippet.html.erb +184 -0
- data/app/views/railsui/shared/_system_nav.html.erb +3 -0
- data/app/views/railsui/shared/_system_nav_item.html.erb +3 -0
- data/app/views/railsui/shared/_theme_label.html.erb +18 -0
- data/app/views/railsui/shared/_usage_guide.html.erb +17 -0
- data/app/views/railsui/systems/authentication/devise/change_password.html.erb +2 -0
- data/app/views/railsui/systems/authentication/devise/confirmation.html.erb +2 -0
- data/app/views/railsui/systems/authentication/devise/edit.html.erb +2 -0
- data/app/views/railsui/systems/authentication/devise/edit_password.html.erb +2 -0
- data/app/views/railsui/systems/authentication/devise/overview.html.erb +2 -0
- data/app/views/railsui/systems/authentication/devise/reset_password.html.erb +2 -0
- data/app/views/railsui/systems/authentication/devise/signin.html.erb +2 -0
- data/app/views/railsui/systems/authentication/devise/signup.html.erb +2 -0
- data/app/views/railsui/systems/authentication/devise/unlocks.html.erb +2 -0
- data/app/views/railsui/systems/authentication/overview.html.erb +2 -0
- data/app/views/railsui/systems/authentication/static/change_password.html.erb +2 -0
- data/app/views/railsui/systems/authentication/static/confirmation.html.erb +2 -0
- data/app/views/railsui/systems/authentication/static/edit.html.erb +2 -0
- data/app/views/railsui/systems/authentication/static/edit_password.html.erb +2 -0
- data/app/views/railsui/systems/authentication/static/overview.html.erb +2 -0
- data/app/views/railsui/systems/authentication/static/reset_password.html.erb +2 -0
- data/app/views/railsui/systems/authentication/static/signin.html.erb +2 -0
- data/app/views/railsui/systems/authentication/static/signup.html.erb +2 -0
- data/app/views/railsui/systems/authentication/static/unlocks.html.erb +2 -0
- data/app/views/railsui/systems/components/accordion.html.erb +6 -0
- data/app/views/railsui/systems/components/alert.html.erb +6 -0
- data/app/views/railsui/systems/components/avatar.html.erb +6 -0
- data/app/views/railsui/systems/components/badge.html.erb +6 -0
- data/app/views/railsui/systems/components/breadcrumb.html.erb +5 -0
- data/app/views/railsui/systems/components/button.html.erb +6 -0
- data/app/views/railsui/systems/components/card.html.erb +5 -0
- data/app/views/railsui/systems/components/combobox.html.erb +5 -0
- data/app/views/railsui/systems/components/datalist.html.erb +2 -0
- data/app/views/railsui/systems/components/dropdown.html.erb +5 -0
- data/app/views/railsui/systems/components/flash.html.erb +6 -0
- data/app/views/railsui/systems/components/modal.html.erb +6 -0
- data/app/views/railsui/systems/components/navigation.html.erb +5 -0
- data/app/views/railsui/systems/components/pagination.html.erb +5 -0
- data/app/views/railsui/systems/components/tab.html.erb +6 -0
- data/app/views/railsui/systems/components/toast.html.erb +6 -0
- data/app/views/railsui/systems/components/tooltip.html.erb +5 -0
- data/app/views/railsui/systems/components.html.erb +2 -0
- data/app/views/railsui/systems/content/image.html.erb +6 -0
- data/app/views/railsui/systems/content/table.html.erb +6 -0
- data/app/views/railsui/systems/content/typography.html.erb +6 -0
- data/app/views/railsui/systems/content.html.erb +2 -0
- data/app/views/railsui/systems/forms/action_text.html.erb +6 -0
- data/app/views/railsui/systems/forms/checkbox.html.erb +6 -0
- data/app/views/railsui/systems/forms/input.html.erb +6 -0
- data/app/views/railsui/systems/forms/input_group.html.erb +6 -0
- data/app/views/railsui/systems/forms/layout.html.erb +2 -0
- data/app/views/railsui/systems/forms/radio.html.erb +5 -0
- data/app/views/railsui/systems/forms/scaffolding.html.erb +6 -0
- data/app/views/railsui/systems/forms/select.html.erb +6 -0
- data/app/views/railsui/systems/forms/switch.html.erb +6 -0
- data/app/views/railsui/systems/forms/validation.html.erb +6 -0
- data/app/views/railsui/systems/forms.html.erb +2 -0
- data/app/views/railsui/systems/helpers/custom_colors.html.erb +100 -0
- data/app/views/railsui/systems/helpers/demo_avatar.html.erb +77 -0
- data/app/views/railsui/systems/helpers/email_action.html.erb +121 -0
- data/app/views/railsui/systems/helpers/email_callout.html.erb +67 -0
- data/app/views/railsui/systems/helpers/icon.html.erb +10 -0
- data/app/views/railsui/systems/helpers/nav_link.html.erb +99 -0
- data/app/views/railsui/systems/helpers/overview.html.erb +19 -0
- data/app/views/railsui/systems/helpers/railsui_head.html.erb +64 -0
- data/app/views/railsui/systems/helpers/spacer.html.erb +41 -0
- data/app/views/railsui/systems/icons.html.erb +6 -0
- data/app/views/railsui/systems/mailers/devise.html.erb +2 -0
- data/app/views/railsui/systems/mailers/layout.html.erb +2 -0
- data/app/views/railsui/systems/mailers/minimal.html.erb +2 -0
- data/app/views/railsui/systems/mailers/overview.html.erb +54 -0
- data/app/views/railsui/systems/mailers/promotion.html.erb +2 -0
- data/app/views/railsui/systems/mailers/transactional.html.erb +2 -0
- data/app/views/railsui/systems/mailers.html.erb +225 -0
- data/app/views/railsui/systems/scaffolds.html.erb +2 -0
- data/app/views/railsui/systems/show.html.erb +26 -0
- data/app/views/railsui/themes/hound/_components.html.erb +7 -0
- data/app/views/railsui/themes/hound/_content.html.erb +9 -0
- data/app/views/railsui/themes/hound/_fonts.html.erb +0 -0
- data/app/views/railsui/themes/hound/_forms.html.erb +17 -0
- data/app/views/railsui/themes/hound/_icons.html.erb +125 -0
- data/app/views/railsui/themes/hound/_nav.html.erb +166 -0
- data/app/views/railsui/themes/hound/_scaffolds.html.erb +42 -0
- data/app/views/railsui/themes/hound/authentication/_overview.html.erb +5 -0
- data/app/views/railsui/themes/hound/authentication/devise/_change_password.html.erb +141 -0
- data/app/views/railsui/themes/hound/authentication/devise/_confirmation.html.erb +107 -0
- data/app/views/railsui/themes/hound/authentication/devise/_edit.html.erb +255 -0
- data/app/views/railsui/themes/hound/authentication/devise/_overview.html.erb +332 -0
- data/app/views/railsui/themes/hound/authentication/devise/_reset_password.html.erb +105 -0
- data/app/views/railsui/themes/hound/authentication/devise/_signin.html.erb +162 -0
- data/app/views/railsui/themes/hound/authentication/devise/_signup.html.erb +163 -0
- data/app/views/railsui/themes/hound/authentication/devise/_unlocks.html.erb +98 -0
- data/app/views/railsui/themes/hound/authentication/static/_change_password.html.erb +211 -0
- data/app/views/railsui/themes/hound/authentication/static/_confirmation.html.erb +156 -0
- data/app/views/railsui/themes/hound/authentication/static/_edit.html.erb +244 -0
- data/app/views/railsui/themes/hound/authentication/static/_overview.html.erb +279 -0
- data/app/views/railsui/themes/hound/authentication/static/_reset_password.html.erb +159 -0
- data/app/views/railsui/themes/hound/authentication/static/_signin.html.erb +233 -0
- data/app/views/railsui/themes/hound/authentication/static/_signup.html.erb +223 -0
- data/app/views/railsui/themes/hound/authentication/static/_unlocks.html.erb +146 -0
- data/app/views/railsui/themes/hound/components/_accordion.html.erb +17 -0
- data/app/views/railsui/themes/hound/components/_alert.html.erb +23 -0
- data/app/views/railsui/themes/hound/components/_avatar.html.erb +13 -0
- data/app/views/railsui/themes/hound/components/_badge.html.erb +20 -0
- data/app/views/railsui/themes/hound/components/_breadcrumb.html.erb +14 -0
- data/app/views/railsui/themes/hound/components/_button.html.erb +16 -0
- data/app/views/railsui/themes/hound/components/_card.html.erb +26 -0
- data/app/views/railsui/themes/hound/components/_combobox.html.erb +11 -0
- data/app/views/railsui/themes/hound/components/_dropdown.html.erb +22 -0
- data/app/views/railsui/themes/hound/components/_flash.html.erb +17 -0
- data/app/views/railsui/themes/hound/components/_modal.html.erb +24 -0
- data/app/views/railsui/themes/hound/components/_navigation.html.erb +11 -0
- data/app/views/railsui/themes/hound/components/_pagination.html.erb +18 -0
- data/app/views/railsui/themes/hound/components/_tab.html.erb +20 -0
- data/app/views/railsui/themes/hound/components/_toast.html.erb +78 -0
- data/app/views/railsui/themes/hound/components/_tooltip.html.erb +77 -0
- data/app/views/railsui/themes/hound/components/accordion/_contained.html.erb +118 -0
- data/app/views/railsui/themes/hound/components/accordion/_flush.html.erb +119 -0
- data/app/views/railsui/themes/hound/components/alert/_dismissable.html.erb +53 -0
- data/app/views/railsui/themes/hound/components/alert/_with_accent_border.html.erb +39 -0
- data/app/views/railsui/themes/hound/components/alert/_with_actions.html.erb +68 -0
- data/app/views/railsui/themes/hound/components/alert/_with_description.html.erb +48 -0
- data/app/views/railsui/themes/hound/components/alert/_with_list.html.erb +54 -0
- data/app/views/railsui/themes/hound/components/avatar/_circle.html.erb +65 -0
- data/app/views/railsui/themes/hound/components/avatar/_rounded.html.erb +65 -0
- data/app/views/railsui/themes/hound/components/badge/_basic.html.erb +90 -0
- data/app/views/railsui/themes/hound/components/badge/_outline.html.erb +89 -0
- data/app/views/railsui/themes/hound/components/badge/_pill.html.erb +89 -0
- data/app/views/railsui/themes/hound/components/badge/_tag.html.erb +329 -0
- data/app/views/railsui/themes/hound/components/breadcrumb/_base.html.erb +91 -0
- data/app/views/railsui/themes/hound/components/breadcrumb/_contained.html.erb +86 -0
- data/app/views/railsui/themes/hound/components/button/_base.html.erb +52 -0
- data/app/views/railsui/themes/hound/components/button/_expanded.html.erb +27 -0
- data/app/views/railsui/themes/hound/components/button/_sizes.html.erb +36 -0
- data/app/views/railsui/themes/hound/components/card/_base.html.erb +36 -0
- data/app/views/railsui/themes/hound/components/card/_user_card.html.erb +62 -0
- data/app/views/railsui/themes/hound/components/card/_user_card_dropdown.html.erb +134 -0
- data/app/views/railsui/themes/hound/components/card/_user_card_with_actions.html.erb +74 -0
- data/app/views/railsui/themes/hound/components/card/_with_action.html.erb +62 -0
- data/app/views/railsui/themes/hound/components/card/_with_header.html.erb +184 -0
- data/app/views/railsui/themes/hound/components/combobox/_base.html.erb +464 -0
- data/app/views/railsui/themes/hound/components/dropdown/_base.html.erb +73 -0
- data/app/views/railsui/themes/hound/components/dropdown/_dropdown.html.erb +24 -0
- data/app/views/railsui/themes/hound/components/dropdown/_dropdown_w_icon.html.erb +27 -0
- data/app/views/railsui/themes/hound/components/dropdown/_right_aligned.html.erb +96 -0
- data/app/views/railsui/themes/hound/components/dropdown/_with_dividers.html.erb +107 -0
- data/app/views/railsui/themes/hound/components/dropdown/_with_icons.html.erb +107 -0
- data/app/views/railsui/themes/hound/components/dropdown/tutorial/_1.html.erb +44 -0
- data/app/views/railsui/themes/hound/components/dropdown/tutorial/_2.html.erb +16 -0
- data/app/views/railsui/themes/hound/components/dropdown/tutorial/_3.html.erb +16 -0
- data/app/views/railsui/themes/hound/components/dropdown/tutorial/_4.html.erb +27 -0
- data/app/views/railsui/themes/hound/components/dropdown/tutorial/_dependencies.html.erb +3 -0
- data/app/views/railsui/themes/hound/components/dropdown/tutorial/_tutorial.html.erb +25 -0
- data/app/views/railsui/themes/hound/components/flash/_alert.html.erb +34 -0
- data/app/views/railsui/themes/hound/components/flash/_dynamic.html.erb +51 -0
- data/app/views/railsui/themes/hound/components/flash/_notice.html.erb +34 -0
- data/app/views/railsui/themes/hound/components/modal/_base.html.erb +123 -0
- data/app/views/railsui/themes/hound/components/modal/_centered_dual_action.html.erb +140 -0
- data/app/views/railsui/themes/hound/components/modal/_dismiss_icon.html.erb +161 -0
- data/app/views/railsui/themes/hound/components/modal/_single_action.html.erb +134 -0
- data/app/views/railsui/themes/hound/components/modal/_with_form.html.erb +171 -0
- data/app/views/railsui/themes/hound/components/navigation/_base.html.erb +316 -0
- data/app/views/railsui/themes/hound/components/navigation/_nav_preview.html.erb +9 -0
- data/app/views/railsui/themes/hound/components/navigation/_with_action.html.erb +300 -0
- data/app/views/railsui/themes/hound/components/navigation/_with_dropdowns.html.erb +754 -0
- data/app/views/railsui/themes/hound/components/navigation/_with_search.html.erb +303 -0
- data/app/views/railsui/themes/hound/components/pagination/_contained.html.erb +162 -0
- data/app/views/railsui/themes/hound/components/pagination/_minimal.html.erb +164 -0
- data/app/views/railsui/themes/hound/components/pagination/_pagy.html.erb +120 -0
- data/app/views/railsui/themes/hound/components/tab/_base.html.erb +118 -0
- data/app/views/railsui/themes/hound/components/tab/_pills.html.erb +119 -0
- data/app/views/railsui/themes/hound/components/tab/_rounded.html.erb +121 -0
- data/app/views/railsui/themes/hound/components/tab/_with_icons.html.erb +163 -0
- data/app/views/railsui/themes/hound/components/toast/_base.html.erb +114 -0
- data/app/views/railsui/themes/hound/components/tooltip/_base.html.erb +54 -0
- data/app/views/railsui/themes/hound/content/_image.html.erb +31 -0
- data/app/views/railsui/themes/hound/content/_table.html.erb +16 -0
- data/app/views/railsui/themes/hound/content/_typography.html.erb +47 -0
- data/app/views/railsui/themes/hound/content/image/_object_contain.html.erb +36 -0
- data/app/views/railsui/themes/hound/content/image/_object_cover.html.erb +38 -0
- data/app/views/railsui/themes/hound/content/image/_object_fill.html.erb +37 -0
- data/app/views/railsui/themes/hound/content/image/_object_scale_down.html.erb +39 -0
- data/app/views/railsui/themes/hound/content/image/_responsive.html.erb +28 -0
- data/app/views/railsui/themes/hound/content/table/_bordered.html.erb +114 -0
- data/app/views/railsui/themes/hound/content/table/_borderless.html.erb +113 -0
- data/app/views/railsui/themes/hound/content/typography/_blockquote.html.erb +51 -0
- data/app/views/railsui/themes/hound/content/typography/_display_headings.html.erb +80 -0
- data/app/views/railsui/themes/hound/content/typography/_fonts.html.erb +29 -0
- data/app/views/railsui/themes/hound/content/typography/_headings.html.erb +101 -0
- data/app/views/railsui/themes/hound/content/typography/_inline_formatting.html.erb +64 -0
- data/app/views/railsui/themes/hound/content/typography/_lead_paragraph.html.erb +31 -0
- data/app/views/railsui/themes/hound/content/typography/_lists.html.erb +100 -0
- data/app/views/railsui/themes/hound/content/typography/_paragraphs.html.erb +38 -0
- data/app/views/railsui/themes/hound/forms/_action_text.html.erb +52 -0
- data/app/views/railsui/themes/hound/forms/_checkbox.html.erb +63 -0
- data/app/views/railsui/themes/hound/forms/_input.html.erb +432 -0
- data/app/views/railsui/themes/hound/forms/_input_group.html.erb +477 -0
- data/app/views/railsui/themes/hound/forms/_radio.html.erb +98 -0
- data/app/views/railsui/themes/hound/forms/_select.html.erb +116 -0
- data/app/views/railsui/themes/hound/forms/_switch.html.erb +63 -0
- data/app/views/railsui/themes/hound/forms/_validation.html.erb +77 -0
- data/app/views/railsui/themes/hound/mailers/_devise.html.erb +44 -0
- data/app/views/railsui/themes/hound/mailers/_layout.html.erb +980 -0
- data/app/views/railsui/themes/hound/mailers/_mailer_preview.html.erb +537 -0
- data/app/views/railsui/themes/hound/mailers/_minimal.html.erb +73 -0
- data/app/views/railsui/themes/hound/mailers/_promotion.html.erb +81 -0
- data/app/views/railsui/themes/hound/mailers/_transactional.html.erb +175 -0
- data/app/views/railsui/themes/hound/mailers/devise/_confirmation_instructions.html.erb +42 -0
- data/app/views/railsui/themes/hound/mailers/devise/_email_changed.html.erb +44 -0
- data/app/views/railsui/themes/hound/mailers/devise/_password_changed.html.erb +31 -0
- data/app/views/railsui/themes/hound/mailers/devise/_reset_password_instructions.html.erb +39 -0
- data/app/views/railsui/themes/hound/mailers/devise/_unlock_instructions.html.erb +40 -0
- data/app/views/railsui/themes/hound/scaffolds/_edit.html.erb +106 -0
- data/app/views/railsui/themes/hound/scaffolds/_index.html.erb +108 -0
- data/app/views/railsui/themes/hound/scaffolds/_new.html.erb +97 -0
- data/app/views/railsui/themes/hound/scaffolds/_partial.html.erb +72 -0
- data/app/views/railsui/themes/hound/scaffolds/_show.html.erb +105 -0
- data/app/views/railsui/themes/shepherd/_components.html.erb +8 -0
- data/app/views/railsui/themes/shepherd/_content.html.erb +11 -0
- data/app/views/railsui/themes/shepherd/_fonts.html.erb +4 -0
- data/app/views/railsui/themes/shepherd/_forms.html.erb +17 -0
- data/app/views/railsui/themes/shepherd/_icons.html.erb +125 -0
- data/app/views/railsui/themes/shepherd/_nav.html.erb +169 -0
- data/app/views/railsui/themes/shepherd/_scaffolds.html.erb +42 -0
- data/app/views/railsui/themes/shepherd/authentication/_overview.html.erb +5 -0
- data/app/views/railsui/themes/shepherd/authentication/devise/_change_password.html.erb +117 -0
- data/app/views/railsui/themes/shepherd/authentication/devise/_confirmation.html.erb +71 -0
- data/app/views/railsui/themes/shepherd/authentication/devise/_edit.html.erb +566 -0
- data/app/views/railsui/themes/shepherd/authentication/devise/_overview.html.erb +290 -0
- data/app/views/railsui/themes/shepherd/authentication/devise/_reset_password.html.erb +69 -0
- data/app/views/railsui/themes/shepherd/authentication/devise/_signin.html.erb +121 -0
- data/app/views/railsui/themes/shepherd/authentication/devise/_signup.html.erb +128 -0
- data/app/views/railsui/themes/shepherd/authentication/devise/_unlocks.html.erb +77 -0
- data/app/views/railsui/themes/shepherd/authentication/static/_change_password.html.erb +157 -0
- data/app/views/railsui/themes/shepherd/authentication/static/_confirmation.html.erb +71 -0
- data/app/views/railsui/themes/shepherd/authentication/static/_edit.html.erb +553 -0
- data/app/views/railsui/themes/shepherd/authentication/static/_overview.html.erb +259 -0
- data/app/views/railsui/themes/shepherd/authentication/static/_reset_password.html.erb +91 -0
- data/app/views/railsui/themes/shepherd/authentication/static/_signin.html.erb +158 -0
- data/app/views/railsui/themes/shepherd/authentication/static/_signup.html.erb +220 -0
- data/app/views/railsui/themes/shepherd/authentication/static/_unlocks.html.erb +112 -0
- data/app/views/railsui/themes/shepherd/components/_accordion.html.erb +17 -0
- data/app/views/railsui/themes/shepherd/components/_alert.html.erb +23 -0
- data/app/views/railsui/themes/shepherd/components/_avatar.html.erb +13 -0
- data/app/views/railsui/themes/shepherd/components/_badge.html.erb +20 -0
- data/app/views/railsui/themes/shepherd/components/_breadcrumb.html.erb +14 -0
- data/app/views/railsui/themes/shepherd/components/_button.html.erb +16 -0
- data/app/views/railsui/themes/shepherd/components/_card.html.erb +29 -0
- data/app/views/railsui/themes/shepherd/components/_combobox.html.erb +11 -0
- data/app/views/railsui/themes/shepherd/components/_datalist.html.erb +14 -0
- data/app/views/railsui/themes/shepherd/components/_dropdown.html.erb +23 -0
- data/app/views/railsui/themes/shepherd/components/_flash.html.erb +15 -0
- data/app/views/railsui/themes/shepherd/components/_modal.html.erb +24 -0
- data/app/views/railsui/themes/shepherd/components/_navigation.html.erb +11 -0
- data/app/views/railsui/themes/shepherd/components/_pagination.html.erb +20 -0
- data/app/views/railsui/themes/shepherd/components/_tab.html.erb +22 -0
- data/app/views/railsui/themes/shepherd/components/_toast.html.erb +79 -0
- data/app/views/railsui/themes/shepherd/components/_tooltip.html.erb +77 -0
- data/app/views/railsui/themes/shepherd/components/accordion/_contained.html.erb +160 -0
- data/app/views/railsui/themes/shepherd/components/accordion/_flush.html.erb +159 -0
- data/app/views/railsui/themes/shepherd/components/alert/_dismissable.html.erb +50 -0
- data/app/views/railsui/themes/shepherd/components/alert/_with_accent_border.html.erb +34 -0
- data/app/views/railsui/themes/shepherd/components/alert/_with_actions.html.erb +66 -0
- data/app/views/railsui/themes/shepherd/components/alert/_with_description.html.erb +44 -0
- data/app/views/railsui/themes/shepherd/components/alert/_with_list.html.erb +51 -0
- data/app/views/railsui/themes/shepherd/components/avatar/_circle.html.erb +65 -0
- data/app/views/railsui/themes/shepherd/components/avatar/_rounded.html.erb +65 -0
- data/app/views/railsui/themes/shepherd/components/badge/_basic.html.erb +90 -0
- data/app/views/railsui/themes/shepherd/components/badge/_outline.html.erb +89 -0
- data/app/views/railsui/themes/shepherd/components/badge/_pill.html.erb +89 -0
- data/app/views/railsui/themes/shepherd/components/badge/_tag.html.erb +244 -0
- data/app/views/railsui/themes/shepherd/components/breadcrumb/_base.html.erb +91 -0
- data/app/views/railsui/themes/shepherd/components/breadcrumb/_contained.html.erb +86 -0
- data/app/views/railsui/themes/shepherd/components/button/_base.html.erb +74 -0
- data/app/views/railsui/themes/shepherd/components/button/_expanded.html.erb +27 -0
- data/app/views/railsui/themes/shepherd/components/button/_sizes.html.erb +36 -0
- data/app/views/railsui/themes/shepherd/components/card/_base.html.erb +36 -0
- data/app/views/railsui/themes/shepherd/components/card/_list_item.html.erb +62 -0
- data/app/views/railsui/themes/shepherd/components/card/_property_card.html.erb +140 -0
- data/app/views/railsui/themes/shepherd/components/card/_property_user_card.html.erb +78 -0
- data/app/views/railsui/themes/shepherd/components/card/_user_card_with_actions.html.erb +70 -0
- data/app/views/railsui/themes/shepherd/components/card/_with_action.html.erb +97 -0
- data/app/views/railsui/themes/shepherd/components/card/_with_header.html.erb +57 -0
- data/app/views/railsui/themes/shepherd/components/card/preview/_property_card.html.erb +50 -0
- data/app/views/railsui/themes/shepherd/components/card/preview/_property_user_card.html.erb +20 -0
- data/app/views/railsui/themes/shepherd/components/combobox/_base.html.erb +461 -0
- data/app/views/railsui/themes/shepherd/components/datalist/_booking_item.html.erb +69 -0
- data/app/views/railsui/themes/shepherd/components/datalist/_booking_list.html.erb +282 -0
- data/app/views/railsui/themes/shepherd/components/datalist/_line_item.html.erb +60 -0
- data/app/views/railsui/themes/shepherd/components/datalist/_property_list.html.erb +194 -0
- data/app/views/railsui/themes/shepherd/components/dropdown/_base.html.erb +75 -0
- data/app/views/railsui/themes/shepherd/components/dropdown/_dropdown.html.erb +25 -0
- data/app/views/railsui/themes/shepherd/components/dropdown/_dropdown_w_icon.html.erb +28 -0
- data/app/views/railsui/themes/shepherd/components/dropdown/_right_aligned.html.erb +103 -0
- data/app/views/railsui/themes/shepherd/components/dropdown/_with_dividers.html.erb +115 -0
- data/app/views/railsui/themes/shepherd/components/dropdown/_with_menu_icons.html.erb +97 -0
- data/app/views/railsui/themes/shepherd/components/dropdown/tutorial/_1.html.erb +44 -0
- data/app/views/railsui/themes/shepherd/components/dropdown/tutorial/_2.html.erb +16 -0
- data/app/views/railsui/themes/shepherd/components/dropdown/tutorial/_3.html.erb +16 -0
- data/app/views/railsui/themes/shepherd/components/dropdown/tutorial/_4.html.erb +27 -0
- data/app/views/railsui/themes/shepherd/components/dropdown/tutorial/_dependencies.html.erb +3 -0
- data/app/views/railsui/themes/shepherd/components/dropdown/tutorial/_tutorial.html.erb +25 -0
- data/app/views/railsui/themes/shepherd/components/flash/_alert.html.erb +34 -0
- data/app/views/railsui/themes/shepherd/components/flash/_dynamic.html.erb +51 -0
- data/app/views/railsui/themes/shepherd/components/flash/_notice.html.erb +34 -0
- data/app/views/railsui/themes/shepherd/components/modal/_base.html.erb +146 -0
- data/app/views/railsui/themes/shepherd/components/modal/_centered_dual_action.html.erb +184 -0
- data/app/views/railsui/themes/shepherd/components/modal/_dismiss_icon.html.erb +205 -0
- data/app/views/railsui/themes/shepherd/components/modal/_single_action.html.erb +167 -0
- data/app/views/railsui/themes/shepherd/components/modal/_with_form.html.erb +230 -0
- data/app/views/railsui/themes/shepherd/components/navigation/_base.html.erb +423 -0
- data/app/views/railsui/themes/shepherd/components/navigation/_logged_out.html.erb +199 -0
- data/app/views/railsui/themes/shepherd/components/navigation/_nav_menu.html.erb +84 -0
- data/app/views/railsui/themes/shepherd/components/navigation/_nav_preview.html.erb +8 -0
- data/app/views/railsui/themes/shepherd/components/navigation/_nav_preview_zinc.html.erb +8 -0
- data/app/views/railsui/themes/shepherd/components/navigation/_notifications.html.erb +62 -0
- data/app/views/railsui/themes/shepherd/components/navigation/_with_dropdowns.html.erb +622 -0
- data/app/views/railsui/themes/shepherd/components/navigation/_with_search.html.erb +579 -0
- data/app/views/railsui/themes/shepherd/components/pagination/_contained.html.erb +162 -0
- data/app/views/railsui/themes/shepherd/components/pagination/_dark.html.erb +161 -0
- data/app/views/railsui/themes/shepherd/components/pagination/_pagy.html.erb +146 -0
- data/app/views/railsui/themes/shepherd/components/pagination/_simple.html.erb +161 -0
- data/app/views/railsui/themes/shepherd/components/tab/_base.html.erb +116 -0
- data/app/views/railsui/themes/shepherd/components/tab/_dark.html.erb +0 -0
- data/app/views/railsui/themes/shepherd/components/tab/_pills.html.erb +118 -0
- data/app/views/railsui/themes/shepherd/components/tab/_rounded.html.erb +121 -0
- data/app/views/railsui/themes/shepherd/components/tab/_with_icons.html.erb +167 -0
- data/app/views/railsui/themes/shepherd/components/toast/_base.html.erb +108 -0
- data/app/views/railsui/themes/shepherd/components/tooltip/_base.html.erb +34 -0
- data/app/views/railsui/themes/shepherd/content/_image.html.erb +31 -0
- data/app/views/railsui/themes/shepherd/content/_image_old.html.erb +139 -0
- data/app/views/railsui/themes/shepherd/content/_table.html.erb +16 -0
- data/app/views/railsui/themes/shepherd/content/_typography.html.erb +47 -0
- data/app/views/railsui/themes/shepherd/content/image/_object_contain.html.erb +34 -0
- data/app/views/railsui/themes/shepherd/content/image/_object_cover.html.erb +36 -0
- data/app/views/railsui/themes/shepherd/content/image/_object_fill.html.erb +36 -0
- data/app/views/railsui/themes/shepherd/content/image/_object_scale_down.html.erb +36 -0
- data/app/views/railsui/themes/shepherd/content/image/_responsive.html.erb +28 -0
- data/app/views/railsui/themes/shepherd/content/table/_bordered.html.erb +113 -0
- data/app/views/railsui/themes/shepherd/content/table/_borderless.html.erb +114 -0
- data/app/views/railsui/themes/shepherd/content/typography/_blockquote.html.erb +51 -0
- data/app/views/railsui/themes/shepherd/content/typography/_display_headings.html.erb +80 -0
- data/app/views/railsui/themes/shepherd/content/typography/_fonts.html.erb +29 -0
- data/app/views/railsui/themes/shepherd/content/typography/_headings.html.erb +99 -0
- data/app/views/railsui/themes/shepherd/content/typography/_inline_formatting.html.erb +63 -0
- data/app/views/railsui/themes/shepherd/content/typography/_lead_paragraph.html.erb +32 -0
- data/app/views/railsui/themes/shepherd/content/typography/_lists.html.erb +102 -0
- data/app/views/railsui/themes/shepherd/content/typography/_paragraphs.html.erb +38 -0
- data/app/views/railsui/themes/shepherd/forms/_action_text.html.erb +52 -0
- data/app/views/railsui/themes/shepherd/forms/_checkbox.html.erb +62 -0
- data/app/views/railsui/themes/shepherd/forms/_input.html.erb +571 -0
- data/app/views/railsui/themes/shepherd/forms/_input_group.html.erb +478 -0
- data/app/views/railsui/themes/shepherd/forms/_radio.html.erb +97 -0
- data/app/views/railsui/themes/shepherd/forms/_select.html.erb +114 -0
- data/app/views/railsui/themes/shepherd/forms/_switch.html.erb +63 -0
- data/app/views/railsui/themes/shepherd/forms/_validation.html.erb +64 -0
- data/app/views/railsui/themes/shepherd/mailers/_devise.html.erb +36 -0
- data/app/views/railsui/themes/shepherd/mailers/_layout.html.erb +1041 -0
- data/app/views/railsui/themes/shepherd/mailers/_mailer_preview.html.erb +541 -0
- data/app/views/railsui/themes/shepherd/mailers/_minimal.html.erb +68 -0
- data/app/views/railsui/themes/shepherd/mailers/_promotion.html.erb +82 -0
- data/app/views/railsui/themes/shepherd/mailers/_transactional.html.erb +175 -0
- data/app/views/railsui/themes/shepherd/mailers/devise/_confirmation_instructions.html.erb +41 -0
- data/app/views/railsui/themes/shepherd/mailers/devise/_email_changed.html.erb +41 -0
- data/app/views/railsui/themes/shepherd/mailers/devise/_password_changed.html.erb +31 -0
- data/app/views/railsui/themes/shepherd/mailers/devise/_reset_password_instructions.html.erb +37 -0
- data/app/views/railsui/themes/shepherd/mailers/devise/_unlock_instructions.html.erb +40 -0
- data/app/views/railsui/themes/shepherd/scaffolds/_edit.html.erb +105 -0
- data/app/views/railsui/themes/shepherd/scaffolds/_index.html.erb +99 -0
- data/app/views/railsui/themes/shepherd/scaffolds/_new.html.erb +96 -0
- data/app/views/railsui/themes/shepherd/scaffolds/_partial.html.erb +72 -0
- data/app/views/railsui/themes/shepherd/scaffolds/_show.html.erb +98 -0
- data/app/views/routes/_route.html.erb +66 -0
- data/app/views/routes/_table.html.erb +7 -0
- data/config/colors.yml +50 -0
- data/config/pages.yml +302 -0
- data/config/routes.rb +114 -0
- data/config/theme.yml +4 -0
- data/lib/generators/railsui/install/install_generator.rb +101 -0
- data/lib/generators/railsui/install/templates/controllers/pages_controller.rb +28 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/blog-1.png +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/blog-2.png +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/blog-3.png +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/brad-jost.png +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/challenges.png +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/checkboard-pattern.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/customer-support.png +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/enabling-collaboration.png +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/fusion.png +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/hero-image.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/logo.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/meta/android-chrome-192x192.png +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/meta/android-chrome-512x512.png +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/meta/apple-touch-icon.png +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/meta/favicon-16x16.png +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/meta/favicon-32x32.png +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/meta/favicon.ico +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/meta/favicon.svg +3 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/meta/opengraph-mark.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/meta/opengraph.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/omniauth/facebook.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/omniauth/github.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/omniauth/google.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/omniauth/instagram.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/omniauth/linkedin.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/omniauth/x.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/omniauth/youtube.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/process.png +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/quote.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/social/facebook.png +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/social/facebook.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/social/github.png +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/social/github.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/social/instagram.png +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/social/instagram.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/social/linkedin.png +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/social/linkedin.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/social/x.png +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/social/x.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/social/youtube.png +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/images/railsui/social/youtube.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/hound/javascript/controllers/railsui/combo_select_controller.js +262 -0
- data/lib/generators/railsui/install/templates/themes/hound/javascript/controllers/railsui/dashboard_controller.js +218 -0
- data/lib/generators/railsui/install/templates/themes/hound/javascript/controllers/railsui/nav_controller.js +26 -0
- data/lib/generators/railsui/install/templates/themes/hound/javascript/tailwind/headings.js +0 -0
- data/lib/generators/railsui/install/templates/themes/hound/mail/railsui_mailer/minimal.html.erb +21 -0
- data/lib/generators/railsui/install/templates/themes/hound/mail/railsui_mailer/minimal.text.erb +9 -0
- data/lib/generators/railsui/install/templates/themes/hound/mail/railsui_mailer/promotion.html.erb +23 -0
- data/lib/generators/railsui/install/templates/themes/hound/mail/railsui_mailer/promotion.text.erb +9 -0
- data/lib/generators/railsui/install/templates/themes/hound/mail/railsui_mailer/transactional.html.erb +55 -0
- data/lib/generators/railsui/install/templates/themes/hound/mail/railsui_mailer/transactional.text.erb +22 -0
- data/lib/generators/railsui/install/templates/themes/hound/stylesheets/railsui/actiontext.css +177 -0
- data/lib/generators/railsui/install/templates/themes/hound/stylesheets/railsui/buttons.css +45 -0
- data/lib/generators/railsui/install/templates/themes/hound/stylesheets/railsui/forms.css +204 -0
- data/lib/generators/railsui/install/templates/themes/hound/stylesheets/railsui/headings.css +47 -0
- data/lib/generators/railsui/install/templates/themes/hound/stylesheets/railsui/navigation.css +42 -0
- data/lib/generators/railsui/install/templates/themes/hound/stylesheets/railsui/tailwind.config.js +13 -0
- data/lib/generators/railsui/install/templates/themes/hound/stylesheets/railsui/theme.css +72 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/layouts/rui/railsui.html.erb +31 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/layouts/rui/railsui_admin.html.erb +31 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/layouts/rui/railsui_mailer.html.erb +440 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/pages/about.html.erb +235 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/pages/activity.html.erb +145 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/pages/assignments.html.erb +133 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/pages/billing.html.erb +130 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/pages/calendar.html.erb +348 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/pages/dashboard.html.erb +313 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/pages/integrations.html.erb +173 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/pages/message.html.erb +212 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/pages/messages.html.erb +200 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/pages/notifications.html.erb +101 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/pages/people.html.erb +253 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/pages/pricing.html.erb +370 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/pages/profile.html.erb +166 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/pages/project.html.erb +267 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/pages/projects.html.erb +161 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/pages/settings.html.erb +66 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/pages/team.html.erb +200 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/shared/_email_action.html.erb +15 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/shared/_email_callout.html.erb +7 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/shared/_email_spacer.html.erb +7 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/shared/_error_messages.html.erb +15 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/shared/_flash.html.erb +11 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/shared/_fonts.html.erb +3 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/shared/_footer.html.erb +51 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/shared/_meta.html.erb +90 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/shared/_nav.html.erb +3 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/shared/_nav_links.html.erb +8 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/shared/_nav_menu.html.erb +74 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/shared/_railsui_head.html.erb +4 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/shared/_search_overlay.html.erb +28 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/shared/admin/_create_dropdown.html.erb +142 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/shared/admin/_nav.html.erb +158 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/shared/admin/_nav_links.html.erb +8 -0
- data/lib/generators/railsui/install/templates/themes/hound/views/rui/shared/admin/_settings_nav.html.erb +29 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/aimee.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/auth-cabin.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/auth-desert.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/cards/amex.svg +11 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/cards/discover.svg +16 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/cards/mastercard.svg +26 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/cards/paypal.svg +26 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/cards/visa.svg +14 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/faq.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/frankie.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/gallery-1.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/gallery-2.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/gallery-3.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/gallery-4.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/gallery-5.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/gallery-6.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/harman.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/help-1.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/help-2.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/help-3.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/help-4.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/hero-bg.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/hero-image.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/jackie-jones.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/jackie.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/jake-jones.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/jake.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/janae.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/janel.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/linework.svg +6 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/logo.svg +3 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/meta/android-chrome-192x192.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/meta/android-chrome-512x512.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/meta/apple-touch-icon.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/meta/browserconfig.xml +9 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/meta/favicon-16x16.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/meta/favicon-32x32.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/meta/favicon.ico +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/meta/favicon.svg +3 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/meta/mstile-144x144.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/meta/mstile-150x150.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/meta/mstile-310x150.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/meta/mstile-310x310.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/meta/mstile-70x70.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/meta/opengraph-mark.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/meta/opengraph.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/meta/safari-pinned-tab.svg +39 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/meta/site.webmanifest +19 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/omniauth/facebook.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/omniauth/github.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/omniauth/google.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/omniauth/instagram.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/omniauth/linkedin.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/omniauth/x.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/omniauth/youtube.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/property-1.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/property-2.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/property-3.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/read-more-photo.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/ross.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/ryan.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/social/facebook.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/social/facebook.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/social/github.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/social/github.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/social/google.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/social/google.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/social/instagram.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/social/instagram.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/social/linkedin.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/social/linkedin.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/social/twitter.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/social/twitter.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/social/x.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/social/x.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/social/youtube.png +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/social/youtube.svg +1 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/trevor.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/images/railsui/trusted-by.jpg +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/javascript/controllers/railsui/auto_expand_text_area_controller.js +24 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/javascript/controllers/railsui/counter_input_controller.js +36 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/javascript/controllers/railsui/dark_mode_controller.js +64 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/javascript/controllers/railsui/gallery_controller.js +14 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/javascript/controllers/railsui/help_search_controller.js +62 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/javascript/controllers/railsui/inbox_controller.js +53 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/javascript/controllers/railsui/insight_chart_controller.js +122 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/javascript/controllers/railsui/insights_controller.js +7 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/javascript/controllers/railsui/nav_controller.js +20 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/javascript/controllers/railsui/pricing_controller.js +41 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/javascript/controllers/railsui/properties_controller.js +25 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/javascript/controllers/railsui/scroll_spy_controller.js +84 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/javascript/controllers/railsui/search_controller.js +43 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/javascript/controllers/railsui/select_all_controller.js +16 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/javascript/controllers/railsui/smooth_scroll_controller.js +13 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/javascript/controllers/railsui/visibility_controller.js +20 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/mail/railsui_mailer/minimal.html.erb +21 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/mail/railsui_mailer/minimal.text.erb +9 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/mail/railsui_mailer/promotion.html.erb +23 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/mail/railsui_mailer/promotion.text.erb +9 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/mail/railsui_mailer/transactional.html.erb +55 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/mail/railsui_mailer/transactional.text.erb +22 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/stylesheets/railsui/actiontext.css +172 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/stylesheets/railsui/buttons.css +45 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/stylesheets/railsui/flatpickr.css +832 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/stylesheets/railsui/forms.css +215 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/stylesheets/railsui/headings.css +47 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/stylesheets/railsui/navigation.css +17 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/stylesheets/railsui/properties.css +3 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/stylesheets/railsui/tailwind.config.js +13 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/stylesheets/railsui/theme.css +73 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/layouts/rui/railsui.html.erb +32 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/layouts/rui/railsui_admin.html.erb +32 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/layouts/rui/railsui_mailer.html.erb +440 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/about.html.erb +304 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/account_notifications.html.erb +85 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/account_payment_methods.html.erb +105 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/account_payouts.html.erb +57 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/account_preferences.html.erb +78 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/api.html.erb +351 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/booking.html.erb +118 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/bookings.html.erb +980 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/calendar.html.erb +319 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/changelog.html.erb +57 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/contact.html.erb +41 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/dashboard.html.erb +180 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/edit_booking.html.erb +144 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/help_center.html.erb +213 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/inbox.html.erb +501 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/insights.html.erb +687 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/new_booking.html.erb +137 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/pricing.html.erb +273 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/privacy_policy.html.erb +74 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/properties.html.erb +256 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/pages/terms.html.erb +43 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/shared/_email_action.html.erb +15 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/shared/_email_callout.html.erb +7 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/shared/_email_spacer.html.erb +7 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/shared/_error_messages.html.erb +10 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/shared/_flash.html.erb +11 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/shared/_fonts.html.erb +4 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/shared/_footer.html.erb +142 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/shared/_meta.html.erb +90 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/shared/_nav.html.erb +3 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/shared/_nav_links.html.erb +0 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/shared/_nav_menu.html.erb +75 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/shared/_notifications.html.erb +62 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/shared/_railsui_head.html.erb +4 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/shared/_search_overlay.html.erb +28 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/shared/account/_tabs.html.erb +13 -0
- data/lib/generators/railsui/install/templates/themes/shepherd/views/rui/shared/admin/_nav_links.html.erb +7 -0
- data/lib/generators/railsui/scaffold/USAGE +6 -0
- data/lib/generators/railsui/scaffold/scaffold_generator.rb +39 -0
- data/lib/generators/railsui/scaffold/templates/themes/hound/views/_form.html.erb.tt +47 -0
- data/lib/generators/railsui/scaffold/templates/themes/hound/views/edit.html.erb.tt +25 -0
- data/lib/generators/railsui/scaffold/templates/themes/hound/views/index.html.erb.tt +18 -0
- data/lib/generators/railsui/scaffold/templates/themes/hound/views/new.html.erb.tt +22 -0
- data/lib/generators/railsui/scaffold/templates/themes/hound/views/partial.html.erb.tt +24 -0
- data/lib/generators/railsui/scaffold/templates/themes/hound/views/show.html.erb.tt +24 -0
- data/lib/generators/railsui/scaffold/templates/themes/shepherd/views/_form.html.erb.tt +50 -0
- data/lib/generators/railsui/scaffold/templates/themes/shepherd/views/edit.html.erb.tt +25 -0
- data/lib/generators/railsui/scaffold/templates/themes/shepherd/views/index.html.erb.tt +12 -0
- data/lib/generators/railsui/scaffold/templates/themes/shepherd/views/new.html.erb.tt +22 -0
- data/lib/generators/railsui/scaffold/templates/themes/shepherd/views/partial.html.erb.tt +24 -0
- data/lib/generators/railsui/scaffold/templates/themes/shepherd/views/show.html.erb.tt +24 -0
- data/lib/generators/railsui/update/update_generator.rb +81 -0
- data/lib/railsui/configuration.rb +129 -0
- data/lib/railsui/engine.rb +28 -0
- data/lib/railsui/pages.rb +41 -0
- data/lib/railsui/theme_helper.rb +90 -0
- data/lib/railsui/theme_setup.rb +336 -0
- data/lib/railsui/themes.rb +22 -0
- data/lib/railsui/version.rb +3 -0
- data/lib/railsui.rb +60 -0
- data/lib/tasks/install.rake +6 -0
- data/lib/tasks/pages.rake +16 -0
- data/lib/tasks/stimulus.rake +13 -0
- data/package.json +24 -0
- data/postcss.config.js +8 -0
- data/tailwind.config.js +91 -0
- data/yarn.lock +349 -0
- metadata +1520 -0
@@ -0,0 +1,336 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'fileutils'
|
4
|
+
|
5
|
+
module Railsui
|
6
|
+
module ThemeSetup
|
7
|
+
# gems
|
8
|
+
def install_gems
|
9
|
+
rails_command "generate railsui_icon:install"
|
10
|
+
rails_command "action_text:install"
|
11
|
+
end
|
12
|
+
|
13
|
+
# Assets
|
14
|
+
def copy_theme_javascript(theme)
|
15
|
+
say("Adding theme-specific stimulus.js controllers", :yellow)
|
16
|
+
|
17
|
+
# Define paths
|
18
|
+
source_path = "themes/#{theme}/javascript/controllers/railsui"
|
19
|
+
destination_path = "app/javascript/controllers/railsui"
|
20
|
+
index_js_path = Rails.root.join("app/javascript/controllers/index.js")
|
21
|
+
railsui_index_js_path = Rails.root.join("app/javascript/controllers/railsui/index.js")
|
22
|
+
|
23
|
+
# Empty the railsui folder
|
24
|
+
remove_dir destination_path
|
25
|
+
empty_directory destination_path
|
26
|
+
|
27
|
+
# Copy the directory
|
28
|
+
directory source_path, destination_path, force: true
|
29
|
+
|
30
|
+
# Get the list of controller files
|
31
|
+
controller_files = Dir.children(Rails.root.join(destination_path)).select { |f| f.end_with?("_controller.js") }
|
32
|
+
say("Controller files: 🗄️ #{controller_files}", :cyan)
|
33
|
+
|
34
|
+
# Generate import and register statements for railsui/index.js
|
35
|
+
railsui_index_content = controller_files.map do |file|
|
36
|
+
controller_name = File.basename(file, ".js").sub("_controller", "")
|
37
|
+
import_name = controller_name.camelize
|
38
|
+
registration_name = controller_name.dasherize
|
39
|
+
"import #{import_name}Controller from \"./#{File.basename(file, '.js')}\";\napplication.register(\"#{registration_name}\", #{import_name}Controller);"
|
40
|
+
end.join("\n")
|
41
|
+
|
42
|
+
js_content = <<-JAVASCRIPT.strip_heredoc
|
43
|
+
import { RailsuiClipboard, RailsuiCountUp, RailsuiCombobox, RailsuiDateRangePicker, RailsuiDropdown, RailsuiModal, RailsuiRange, RailsuiReadMore,RailsuiSelectAll, RailsuiTabs, RailsuiToast, RailsuiToggle, RailsuiTooltip } from 'railsui-stimulus'
|
44
|
+
|
45
|
+
application.register('railsui-clipboard', RailsuiClipboard)
|
46
|
+
application.register('railsui-count-up', RailsuiCountUp)
|
47
|
+
application.register('railsui-combobox', RailsuiCombobox)
|
48
|
+
application.register('railsui-date-range-picker', RailsuiDateRangePicker)
|
49
|
+
application.register('railsui-dropdown', RailsuiDropdown)
|
50
|
+
application.register('railsui-modal', RailsuiModal)
|
51
|
+
application.register('railsui-range', RailsuiRange)
|
52
|
+
application.register('railsui-read-more', RailsuiReadMore)
|
53
|
+
application.register('railsui-select-all', RailsuiSelectAll)
|
54
|
+
application.register('railsui-tabs', RailsuiTabs)
|
55
|
+
application.register('railsui-toast', RailsuiToast)
|
56
|
+
application.register('railsui-toggle', RailsuiToggle)
|
57
|
+
application.register('railsui-tooltip', RailsuiTooltip)
|
58
|
+
JAVASCRIPT
|
59
|
+
|
60
|
+
# Add js_content to railsui_index_content
|
61
|
+
railsui_index_content += "\n\n#{js_content}"
|
62
|
+
|
63
|
+
# Write the railsui/index.js file
|
64
|
+
create_file railsui_index_js_path, "import { application } from \"../application\"\n\n#{railsui_index_content}", force: true
|
65
|
+
|
66
|
+
# Read the existing main index.js content
|
67
|
+
index_js_content = File.exist?(index_js_path) ? File.read(index_js_path) : ""
|
68
|
+
|
69
|
+
# Remove old import statements for railsui controllers
|
70
|
+
new_index_js_content = index_js_content.gsub(/import .* from "\.\/railsui\/.*";\n*/, "")
|
71
|
+
|
72
|
+
# Add the new import statement for railsui/index.js if not already present
|
73
|
+
unless new_index_js_content.include?('import "./railsui"')
|
74
|
+
new_index_js_content += "import \"./railsui\"\n"
|
75
|
+
end
|
76
|
+
|
77
|
+
# Write the updated content back to main index.js
|
78
|
+
create_file index_js_path, new_index_js_content, force: true
|
79
|
+
say("Updated app/javascript/controllers/index.js and created app/javascript/controllers/railsui/index.js successfully.", :green)
|
80
|
+
end
|
81
|
+
|
82
|
+
def copy_theme_stylesheets(theme)
|
83
|
+
say("Copying theme-specific stylesheets", :yellow)
|
84
|
+
|
85
|
+
# Define paths
|
86
|
+
source_path = "themes/#{theme}/stylesheets/railsui"
|
87
|
+
destination_path = "app/assets/stylesheets/railsui"
|
88
|
+
application_css_path = Rails.root.join("app/assets/stylesheets/application.tailwind.css")
|
89
|
+
|
90
|
+
# Empty the destination directory before copying
|
91
|
+
FileUtils.rm_rf(Dir.glob("#{destination_path}/*"))
|
92
|
+
|
93
|
+
# Copy the directory and overwrite if theme is modified
|
94
|
+
directory source_path, destination_path, force: true
|
95
|
+
|
96
|
+
# Get the list of stylesheet files
|
97
|
+
stylesheet_files = Dir.children(Rails.root.join(destination_path)).select { |f| f.end_with?(".css") }
|
98
|
+
puts "Stylesheet files: 🗄️ #{stylesheet_files}"
|
99
|
+
|
100
|
+
# Generate import statements for stylesheets
|
101
|
+
import_statements = stylesheet_files.map do |file|
|
102
|
+
"@import \"../stylesheets/railsui/#{File.basename(file, '.css')}\";"
|
103
|
+
end.join("\n")
|
104
|
+
|
105
|
+
# Read the existing application.tailwind.css content
|
106
|
+
application_css_content = File.exist?(application_css_path) ? File.read(application_css_path) : ""
|
107
|
+
|
108
|
+
# Remove old @tailwind directives and import statements for tailwindcss and railsui stylesheets
|
109
|
+
cleaned_css_content = application_css_content
|
110
|
+
cleaned_css_content = cleaned_css_content.gsub(/@import "tailwindcss";\n*/, "")
|
111
|
+
cleaned_css_content = cleaned_css_content.gsub(/@import "\.\.\/stylesheets\/railsui\/.*";\n*/, "")
|
112
|
+
|
113
|
+
# Add the new import statements in the correct order
|
114
|
+
new_application_css_content = [
|
115
|
+
'@import "tailwindcss";',
|
116
|
+
cleaned_css_content.strip, # Preserving existing content
|
117
|
+
import_statements
|
118
|
+
].join("\n")
|
119
|
+
|
120
|
+
# Write the updated content back to application.tailwind.css
|
121
|
+
File.write(application_css_path, new_application_css_content)
|
122
|
+
say("Updated app/assets/stylesheets/application.tailwind.css successfully.", :green)
|
123
|
+
end
|
124
|
+
|
125
|
+
def install_theme_dependencies(theme)
|
126
|
+
say("Installing dependencies", :yellow)
|
127
|
+
add_yarn_packages(theme_dependencies(theme))
|
128
|
+
end
|
129
|
+
|
130
|
+
|
131
|
+
def remove_action_text_defaults
|
132
|
+
say "Remove default ActionText CSS"
|
133
|
+
# remove import from application.tailwind.css if present as we add it to another imported css file.
|
134
|
+
|
135
|
+
gsub_file "app/assets/stylesheets/application.tailwind.css", /@import 'actiontext.css';/, ""
|
136
|
+
end
|
137
|
+
|
138
|
+
def humanize_theme(theme)
|
139
|
+
theme.humanize
|
140
|
+
end
|
141
|
+
|
142
|
+
def theme_dependencies(theme)
|
143
|
+
case theme
|
144
|
+
when "hound"
|
145
|
+
["@tailwindcss/typography", "apexcharts", "railsui-stimulus", "stimulus-use","tailwindcss@latest", "@tailwindcss/cli@latest", "tippy.js"]
|
146
|
+
when "shepherd"
|
147
|
+
["@tailwindcss/typography", "apexcharts", "flatpickr", "hotkeys-js", "photoswipe", "railsui-stimulus", "stimulus-use", "tippy.js", "tailwindcss@latest", "@tailwindcss/cli@latest"]
|
148
|
+
when "retriever"
|
149
|
+
["@tailwindcss/typography", "apexcharts", "autoprefixer", "flatpickr","railsui-stimulus", "stimulus-use", "tailwindcss@latest", "@tailwindcss/cli@latest", "tippy.js"]
|
150
|
+
when "setter"
|
151
|
+
["@tailwindcss/typography", "railsui-stimulus", "stimulus-use", "tailwindcss@latest", "@tailwindcss/cli@latest", "tippy.js"]
|
152
|
+
else
|
153
|
+
["@tailwindcss/typography", "railsui-stimulus", "stimulus-use", "tailwindcss@latest", "@tailwindcss/cli@latest" "tippy.js"]
|
154
|
+
end
|
155
|
+
end
|
156
|
+
|
157
|
+
def add_yarn_packages(packages)
|
158
|
+
run "yarn add #{packages.join(' ')} --latest"
|
159
|
+
end
|
160
|
+
|
161
|
+
# Mailers
|
162
|
+
def generate_sample_mailers(theme)
|
163
|
+
say "Adding Rails UI mailers", :yellow
|
164
|
+
|
165
|
+
rails_command "generate mailer Railsui minimal promotion transactional"
|
166
|
+
|
167
|
+
combined_mailer_setup = <<-RUBY
|
168
|
+
layout "rui/railsui_mailer"
|
169
|
+
helper :application
|
170
|
+
RUBY
|
171
|
+
|
172
|
+
insert_into_file Rails.root.join("app/mailers/railsui_mailer.rb").to_s, combined_mailer_setup, after: "class RailsuiMailer < ApplicationMailer\n"
|
173
|
+
|
174
|
+
copy_sample_mailers(theme)
|
175
|
+
end
|
176
|
+
|
177
|
+
def copy_sample_mailers(theme)
|
178
|
+
source_directory = "themes/#{theme}/mail/railsui_mailer"
|
179
|
+
destination_directory = Rails.root.join("app/views/railsui_mailer")
|
180
|
+
directory source_directory, destination_directory, force: true
|
181
|
+
end
|
182
|
+
|
183
|
+
def update_railsui_mailer_layout(theme)
|
184
|
+
source_file = Rails.root.join('app/views/layouts/rui/railsui_mailer.html.erb')
|
185
|
+
if File.exist?(source_file)
|
186
|
+
remove_file source_file
|
187
|
+
end
|
188
|
+
|
189
|
+
copy_file "themes/#{theme}/views/layouts/rui/railsui_mailer.html.erb", source_file, force: true
|
190
|
+
end
|
191
|
+
|
192
|
+
def update_application_helper
|
193
|
+
content = <<-RUBY
|
194
|
+
def spacer(amount = 16)
|
195
|
+
render "rui/shared/email_spacer", amount: amount
|
196
|
+
end
|
197
|
+
|
198
|
+
def email_action(action, url, options={})
|
199
|
+
align = options[:align] ||= "left"
|
200
|
+
theme = options[:theme] ||= "primary"
|
201
|
+
fullwidth = options[:fullwidth] ||= false
|
202
|
+
render "rui/shared/email_action", align: align, theme: theme, action: action, url: url, fullwidth: fullwidth
|
203
|
+
end
|
204
|
+
|
205
|
+
def email_callout(&block)
|
206
|
+
render "rui/shared/email_callout", block: block
|
207
|
+
end
|
208
|
+
RUBY
|
209
|
+
|
210
|
+
insert_into_file "#{Rails.root}/app/helpers/application_helper.rb", content, after: "module ApplicationHelper\n"
|
211
|
+
end
|
212
|
+
|
213
|
+
# Routes
|
214
|
+
def copy_railsui_routes
|
215
|
+
routes_file = "#{Rails.root}/config/routes.rb"
|
216
|
+
route_content = File.read(routes_file)
|
217
|
+
|
218
|
+
content = <<-RUBY
|
219
|
+
if Rails.env.development?
|
220
|
+
# Visit the start page for Rails UI any time at /railsui/start
|
221
|
+
mount Railsui::Engine, at: "/railsui"
|
222
|
+
end
|
223
|
+
|
224
|
+
RUBY
|
225
|
+
|
226
|
+
# Check if a root route already exists
|
227
|
+
unless route_content.match?(/^\s*root\s+/)
|
228
|
+
content += <<-RUBY
|
229
|
+
# Inherits from Railsui::PageController#index
|
230
|
+
# To override, add your own page#index view or change to a new root
|
231
|
+
root action: :index, controller: "railsui/default"
|
232
|
+
RUBY
|
233
|
+
end
|
234
|
+
|
235
|
+
insert_into_file routes_file, "\n#{content}\n", after: "Rails.application.routes.draw do\n", force: true
|
236
|
+
end
|
237
|
+
|
238
|
+
def copy_railsui_pages_routes
|
239
|
+
routes_file = Rails.root.join('config/routes.rb')
|
240
|
+
|
241
|
+
# Define the regex pattern for the `rui` namespace block
|
242
|
+
namespace_pattern = /^\s*namespace :rui do.*?end\n/m
|
243
|
+
|
244
|
+
# Generate new routes content based on the active pages
|
245
|
+
new_routes = Railsui::Pages.theme_pages.keys.map do |page|
|
246
|
+
" get \"#{page}\", to: \"pages##{page}\""
|
247
|
+
end.join("\n")
|
248
|
+
|
249
|
+
# Define the routes block to be inserted within the namespace
|
250
|
+
routes_block = "\n namespace :rui do\n#{new_routes}\n end\n"
|
251
|
+
|
252
|
+
# Read the current content of the routes file
|
253
|
+
route_content = File.read(routes_file)
|
254
|
+
|
255
|
+
# Remove the existing `rui` namespace block if present
|
256
|
+
updated_content = route_content.gsub(namespace_pattern, '')
|
257
|
+
|
258
|
+
# Append the new routes block after the initial `Rails.application.routes.draw do` line
|
259
|
+
updated_content.sub!("Rails.application.routes.draw do\n", "Rails.application.routes.draw do\n#{routes_block}")
|
260
|
+
|
261
|
+
# Write the updated content back to the routes file
|
262
|
+
File.open(routes_file, 'w') { |file| file.write(updated_content) }
|
263
|
+
end
|
264
|
+
|
265
|
+
# Pages
|
266
|
+
def copy_railsui_page_controller(theme)
|
267
|
+
copy_file "controllers/pages_controller.rb", "app/controllers/rui/pages_controller.rb", force: true
|
268
|
+
end
|
269
|
+
|
270
|
+
def copy_railsui_pages(theme)
|
271
|
+
# Copy Pages
|
272
|
+
directory "themes/#{theme}/views/rui", "app/views/rui", force: true
|
273
|
+
|
274
|
+
# Copy layouts
|
275
|
+
directory "themes/#{theme}/views/layouts/rui", "app/views/layouts/rui", force: true
|
276
|
+
end
|
277
|
+
|
278
|
+
def copy_railsui_head(theme)
|
279
|
+
layout_file = "app/views/layouts/application.html.erb"
|
280
|
+
return unless File.exist?(layout_file)
|
281
|
+
|
282
|
+
unless File.read(layout_file).include?('<%= railsui_head %>')
|
283
|
+
content = <<-ERB
|
284
|
+
<%= railsui_head %>
|
285
|
+
ERB
|
286
|
+
insert_into_file layout_file, "\n#{content}", before: '</head>'
|
287
|
+
end
|
288
|
+
end
|
289
|
+
|
290
|
+
def copy_railsui_launcher(theme)
|
291
|
+
layout_file = "app/views/layouts/application.html.erb"
|
292
|
+
return unless File.exist?(layout_file)
|
293
|
+
|
294
|
+
unless File.read(layout_file).include?('<%= railsui_launcher if Rails.env.development? %>')
|
295
|
+
content = <<-ERB
|
296
|
+
<%= railsui_launcher if Rails.env.development? %>
|
297
|
+
ERB
|
298
|
+
insert_into_file layout_file, "\n#{content}", before: '</body>'
|
299
|
+
end
|
300
|
+
end
|
301
|
+
|
302
|
+
def copy_railsui_images(theme)
|
303
|
+
# Define paths
|
304
|
+
theme_images_dir = "themes/#{theme}/images/railsui"
|
305
|
+
target_images_dir = Rails.root.join("app/assets/images/railsui")
|
306
|
+
|
307
|
+
# Remove existing target directory
|
308
|
+
remove_directory(target_images_dir, "images")
|
309
|
+
# add new images based on theme passed
|
310
|
+
directory theme_images_dir, target_images_dir, force: true
|
311
|
+
end
|
312
|
+
|
313
|
+
private
|
314
|
+
|
315
|
+
def remove_directory(directory_path, thing)
|
316
|
+
if Dir.exist?(directory_path)
|
317
|
+
FileUtils.rm_rf(directory_path)
|
318
|
+
say("Removed existing #{thing} in #{directory_path}")
|
319
|
+
end
|
320
|
+
rescue => e
|
321
|
+
say("Error removing directory #{directory_path}: #{e.message}", :red)
|
322
|
+
raise e
|
323
|
+
end
|
324
|
+
|
325
|
+
def remove_route(file, page)
|
326
|
+
# Read the current content of the routes file
|
327
|
+
route_content = File.read(file)
|
328
|
+
|
329
|
+
# Remove route associated with railsui/pages#<page>
|
330
|
+
route_content.gsub!(/^\s*get\s+'#{page}',\s+to:\s+'railsui\/pages##{page}'\s*$/, '')
|
331
|
+
|
332
|
+
# Write the updated content back to the file
|
333
|
+
File.open(file, 'w') { |f| f.write(route_content) }
|
334
|
+
end
|
335
|
+
end
|
336
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Railsui
|
4
|
+
module Themes
|
5
|
+
CONFIG_FILE = Railsui::Engine.root.join("config", "theme.yml")
|
6
|
+
|
7
|
+
def self.theme_classes
|
8
|
+
@theme_classes ||= load_theme_config
|
9
|
+
end
|
10
|
+
|
11
|
+
def self.body_classes(theme_name)
|
12
|
+
theme_classes[theme_name]['body_classes'] if theme_classes.key?(theme_name)
|
13
|
+
end
|
14
|
+
|
15
|
+
private
|
16
|
+
|
17
|
+
def self.load_theme_config
|
18
|
+
return {} unless File.exist?(CONFIG_FILE)
|
19
|
+
YAML.safe_load_file(CONFIG_FILE)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
data/lib/railsui.rb
ADDED
@@ -0,0 +1,60 @@
|
|
1
|
+
require "railsui/version"
|
2
|
+
require "railsui/engine"
|
3
|
+
require 'railsui_icon'
|
4
|
+
require 'meta-tags'
|
5
|
+
|
6
|
+
module Railsui
|
7
|
+
autoload :Configuration, "railsui/configuration"
|
8
|
+
autoload :Pages, "railsui/pages"
|
9
|
+
autoload :Themes, "railsui/themes"
|
10
|
+
autoload :ThemeHelper, "railsui/theme_helper"
|
11
|
+
autoload :ThemeSetup, "railsui/theme_setup"
|
12
|
+
|
13
|
+
mattr_accessor :config
|
14
|
+
@@config = Railsui::Configuration.new
|
15
|
+
|
16
|
+
def self.clear
|
17
|
+
run_command "rails tmp:clear"
|
18
|
+
end
|
19
|
+
|
20
|
+
def self.restart
|
21
|
+
run_command "rails restart"
|
22
|
+
end
|
23
|
+
|
24
|
+
def self.bundle
|
25
|
+
run_command "bundle"
|
26
|
+
end
|
27
|
+
|
28
|
+
def self.build_css
|
29
|
+
if File.exist?("#{Rails.root}/package.json")
|
30
|
+
package_json = JSON.parse(File.read("#{Rails.root}/package.json"))
|
31
|
+
if package_json["scripts"] && package_json["scripts"]["build:css"]
|
32
|
+
run_command "yarn build:css"
|
33
|
+
else
|
34
|
+
puts "'build:css' script not found in package.json, skipping"
|
35
|
+
end
|
36
|
+
else
|
37
|
+
puts "package.json not found in the application root, skipping"
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
def self.theme_logo_url
|
42
|
+
theme = Railsui.config.theme
|
43
|
+
file_extension = if defined?(Rails.application) && Rails.application.config.action_mailer
|
44
|
+
"png"
|
45
|
+
else
|
46
|
+
"svg"
|
47
|
+
end
|
48
|
+
"https://f001.backblazeb2.com/file/railsui/themes/#{theme}/logo.#{file_extension}"
|
49
|
+
end
|
50
|
+
|
51
|
+
def self.asset_url
|
52
|
+
"https://f001.backblazeb2.com/file/railsui"
|
53
|
+
end
|
54
|
+
|
55
|
+
def self.run_command(command)
|
56
|
+
Bundler.with_original_env do
|
57
|
+
system command
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
namespace :railsui do
|
4
|
+
desc "Show Rails UI theme pages"
|
5
|
+
task :pages, [:theme] => :environment do |t, args|
|
6
|
+
# Default to Railsui.config.theme if no argument is provided
|
7
|
+
theme = args.theme || Railsui.config.theme
|
8
|
+
|
9
|
+
# Fetch the theme colors using Railsui::Colors
|
10
|
+
pages = Railsui.config.pages
|
11
|
+
|
12
|
+
puts "Page list for #{theme.humanize} theme:"
|
13
|
+
# Output the colors in YAML format
|
14
|
+
puts pages.to_yaml
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
namespace :stimulus do
|
2
|
+
namespace :manifest do
|
3
|
+
# Clear :update task to skip default behavior from stimulus-rails gem
|
4
|
+
Rake::Task[:update].clear
|
5
|
+
desc "Overwrite the default manifest update behavior to do nothing"
|
6
|
+
task update: :environment do
|
7
|
+
alert = %(
|
8
|
+
Skipping stimulus:manifest:update to avoid overwriting index.js
|
9
|
+
).strip
|
10
|
+
puts "\e[33m#{alert}\e[0m"
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
data/package.json
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
{
|
2
|
+
"name": "railsui",
|
3
|
+
"version": "1.0.0",
|
4
|
+
"description": "A Rails engine with pre-built UI/UX using popular CSS frameworks",
|
5
|
+
"repository": "git@github.com:justalever/railsui.git",
|
6
|
+
"author": "Andy Leverenz <andy@justalever.com>",
|
7
|
+
"private": true,
|
8
|
+
"dependencies": {
|
9
|
+
"@hotwired/stimulus": "^3.2.1",
|
10
|
+
"debounce": "^1.2.1",
|
11
|
+
"deepmerge": "^4.3.1",
|
12
|
+
"esbuild": "^0.17.16",
|
13
|
+
"flatpickr": "^4.6.13",
|
14
|
+
"highlight.js": "^11.6.0",
|
15
|
+
"railsui-stimulus": "^1.0.8",
|
16
|
+
"stimulus-use": "^0.52.0",
|
17
|
+
"tippy.js": "^6.3.7",
|
18
|
+
"vanilla-colorful": "^0.7.2"
|
19
|
+
},
|
20
|
+
"scripts": {
|
21
|
+
"build:js": "esbuild app/javascript/*.* --bundle --sourcemap --outdir=app/assets/builds/railsui"
|
22
|
+
},
|
23
|
+
"devDependencies": {}
|
24
|
+
}
|
data/postcss.config.js
ADDED
data/tailwind.config.js
ADDED
@@ -0,0 +1,91 @@
|
|
1
|
+
const execSync = require("child_process").execSync
|
2
|
+
const outputRailsUI = execSync("bundle show railsui", { encoding: "utf-8" })
|
3
|
+
const rails_ui_path = outputRailsUI.trim() + "/**/*.rb"
|
4
|
+
const rails_ui_template_path = outputRailsUI.trim() + "/**/*.html.erb"
|
5
|
+
|
6
|
+
const defaultTheme = require("tailwindcss/defaultTheme")
|
7
|
+
module.exports = {
|
8
|
+
//important: true,
|
9
|
+
content: [
|
10
|
+
"./app/helpers/**/*.rb",
|
11
|
+
"./app/views/**/*.html.erb",
|
12
|
+
"./app/components/**/*.html.erb",
|
13
|
+
"./app/javascript/**/*.{js,vue,jsx}",
|
14
|
+
"./lib/generators/templates/**/*.html.erb.tt",
|
15
|
+
"./config/initializers/railsui_icon.rb",
|
16
|
+
rails_ui_path,
|
17
|
+
rails_ui_template_path,
|
18
|
+
],
|
19
|
+
theme: {
|
20
|
+
extend: {
|
21
|
+
fontFamily: {
|
22
|
+
rui: ["Inter", ...defaultTheme.fontFamily.sans],
|
23
|
+
mono: ["Fira Code", "monospace"],
|
24
|
+
},
|
25
|
+
colors: {
|
26
|
+
salmon: {
|
27
|
+
500: "#FA8072",
|
28
|
+
},
|
29
|
+
rails: {
|
30
|
+
500: "#D30001",
|
31
|
+
600: "#9b0203",
|
32
|
+
700: "#800001",
|
33
|
+
},
|
34
|
+
primary: {
|
35
|
+
50: "rgb(var(--primary-50) / <alpha-value>)",
|
36
|
+
100: "rgb(var(--primary-100) / <alpha-value>)",
|
37
|
+
200: "rgb(var(--primary-200) / <alpha-value>)",
|
38
|
+
300: "rgb(var(--primary-300) / <alpha-value>)",
|
39
|
+
400: "rgb(var(--primary-400) / <alpha-value>)",
|
40
|
+
500: "rgb(var(--primary-500) / <alpha-value>)",
|
41
|
+
600: "rgb(var(--primary-600) / <alpha-value>)",
|
42
|
+
700: "rgb(var(--primary-700) / <alpha-value>)",
|
43
|
+
800: "rgb(var(--primary-800) / <alpha-value>)",
|
44
|
+
900: "rgb(var(--primary-900) / <alpha-value>)",
|
45
|
+
950: "rgb(var(--primary-950) / <alpha-value>)",
|
46
|
+
},
|
47
|
+
secondary: {
|
48
|
+
50: "rgb(var(--secondary-50) / <alpha-value>)",
|
49
|
+
100: "rgb(var(--secondary-100) / <alpha-value>)",
|
50
|
+
200: "rgb(var(--secondary-200) / <alpha-value>)",
|
51
|
+
300: "rgb(var(--secondary-300) / <alpha-value>)",
|
52
|
+
400: "rgb(var(--secondary-400) / <alpha-value>)",
|
53
|
+
500: "rgb(var(--secondary-500) / <alpha-value>)",
|
54
|
+
600: "rgb(var(--secondary-600) / <alpha-value>)",
|
55
|
+
700: "rgb(var(--secondary-700) / <alpha-value>)",
|
56
|
+
800: "rgb(var(--secondary-800) / <alpha-value>)",
|
57
|
+
900: "rgb(var(--secondary-900) / <alpha-value>)",
|
58
|
+
950: "rgb(var(--secondary-950) / <alpha-value>)",
|
59
|
+
},
|
60
|
+
},
|
61
|
+
animation: {
|
62
|
+
"fade-in": "fade-in 0.3s ease-in-out",
|
63
|
+
"toast-from-right":
|
64
|
+
"toast-from-right 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55)",
|
65
|
+
"toast-from-left":
|
66
|
+
"toast-from-left 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55)",
|
67
|
+
},
|
68
|
+
|
69
|
+
keyframes: {
|
70
|
+
"fade-in": {
|
71
|
+
"0%": { opacity: "0%" },
|
72
|
+
"100%": { opacity: "100%" },
|
73
|
+
},
|
74
|
+
"toast-from-right": {
|
75
|
+
"0%": { transform: "translateX(50%)", opacity: "0%" },
|
76
|
+
"100%": { transform: "translateX(0)", opacity: "100%" },
|
77
|
+
},
|
78
|
+
"toast-from-left": {
|
79
|
+
"0%": { transform: "translateX(-50%)", opacity: "0%" },
|
80
|
+
"100%": { transform: "translateX(0)", opacity: "100%" },
|
81
|
+
},
|
82
|
+
},
|
83
|
+
},
|
84
|
+
},
|
85
|
+
plugins: [
|
86
|
+
require("@tailwindcss/typography"),
|
87
|
+
require("@tailwindcss/forms"),
|
88
|
+
require("@tailwindcss/aspect-ratio"),
|
89
|
+
require("tailwind-scrollbar"),
|
90
|
+
],
|
91
|
+
}
|