From bbabb86ed34b8b9f38062364a0cea84be64048ed Mon Sep 17 00:00:00 2001 From: stephann <3025661+stephannv@users.noreply.github.com> Date: Mon, 11 Nov 2024 14:34:01 -0300 Subject: [PATCH] Remove Lookbook (#131) --- Gemfile | 2 - Gemfile.lock | 23 --- app/views/components/shared/navbar.rb | 1 - app/views/layouts/component_preview.html.erb | 18 --- config/application.rb | 4 - config/initializers/lookbook.rb | 16 -- config/routes.rb | 2 - .../previews/rbui/accordion_preview.rb | 36 ----- .../previews/rbui/alert_dialog_preview.rb | 29 ---- .../components/previews/rbui/alert_preview.rb | 17 -- .../previews/rbui/aspect_ratio_preview.rb | 39 ----- .../previews/rbui/avatar_preview.rb | 32 ---- .../components/previews/rbui/badge_preview.rb | 17 -- .../previews/rbui/button_preview.rb | 50 ------ .../previews/rbui/calendar_preview.rb | 14 -- test/components/previews/rbui/card_preview.rb | 33 ---- .../previews/rbui/checkbox_group_preview.rb | 13 -- .../previews/rbui/checkbox_preview.rb | 13 -- .../previews/rbui/clipboard_preview.rb | 21 --- .../previews/rbui/codeblock_preview.rb | 19 --- .../previews/rbui/collapsible_preview.rb | 38 ----- .../previews/rbui/combobox_preview.rb | 51 ------ .../previews/rbui/command_preview.rb | 59 ------- .../previews/rbui/context_menu_preview.rb | 29 ---- .../previews/rbui/date_picker_preview.rb | 25 --- .../previews/rbui/dialog_preview.rb | 38 ----- .../previews/rbui/dropdown_menu_preview.rb | 30 ---- test/components/previews/rbui/form_preview.rb | 148 ------------------ .../previews/rbui/hover_card_preview.rb | 33 ---- .../components/previews/rbui/input_preview.rb | 40 ----- test/components/previews/rbui/link_preview.rb | 45 ------ .../previews/rbui/pagination_preview.rb | 43 ----- .../previews/rbui/popover_preview.rb | 67 -------- .../previews/rbui/select_preview.rb | 27 ---- .../components/previews/rbui/sheet_preview.rb | 38 ----- .../previews/rbui/shortcut_key_preview.rb | 17 -- .../components/previews/rbui/table_preview.rb | 46 ------ test/components/previews/rbui/tabs_preview.rb | 36 ----- .../previews/rbui/textarea_preview.rb | 32 ---- .../previews/rbui/theme_toggle_preview.rb | 23 --- .../previews/rbui/tooltip_preview.rb | 21 --- .../previews/rbui/typography_preview.rb | 16 -- 42 files changed, 1301 deletions(-) delete mode 100644 app/views/layouts/component_preview.html.erb delete mode 100644 test/components/previews/rbui/accordion_preview.rb delete mode 100644 test/components/previews/rbui/alert_dialog_preview.rb delete mode 100644 test/components/previews/rbui/alert_preview.rb delete mode 100644 test/components/previews/rbui/aspect_ratio_preview.rb delete mode 100644 test/components/previews/rbui/avatar_preview.rb delete mode 100644 test/components/previews/rbui/badge_preview.rb delete mode 100644 test/components/previews/rbui/button_preview.rb delete mode 100644 test/components/previews/rbui/calendar_preview.rb delete mode 100644 test/components/previews/rbui/card_preview.rb delete mode 100644 test/components/previews/rbui/checkbox_group_preview.rb delete mode 100644 test/components/previews/rbui/checkbox_preview.rb delete mode 100644 test/components/previews/rbui/clipboard_preview.rb delete mode 100644 test/components/previews/rbui/codeblock_preview.rb delete mode 100644 test/components/previews/rbui/collapsible_preview.rb delete mode 100644 test/components/previews/rbui/combobox_preview.rb delete mode 100644 test/components/previews/rbui/command_preview.rb delete mode 100644 test/components/previews/rbui/context_menu_preview.rb delete mode 100644 test/components/previews/rbui/date_picker_preview.rb delete mode 100644 test/components/previews/rbui/dialog_preview.rb delete mode 100644 test/components/previews/rbui/dropdown_menu_preview.rb delete mode 100644 test/components/previews/rbui/form_preview.rb delete mode 100644 test/components/previews/rbui/hover_card_preview.rb delete mode 100644 test/components/previews/rbui/input_preview.rb delete mode 100644 test/components/previews/rbui/link_preview.rb delete mode 100644 test/components/previews/rbui/pagination_preview.rb delete mode 100644 test/components/previews/rbui/popover_preview.rb delete mode 100644 test/components/previews/rbui/select_preview.rb delete mode 100644 test/components/previews/rbui/sheet_preview.rb delete mode 100644 test/components/previews/rbui/shortcut_key_preview.rb delete mode 100644 test/components/previews/rbui/table_preview.rb delete mode 100644 test/components/previews/rbui/tabs_preview.rb delete mode 100644 test/components/previews/rbui/textarea_preview.rb delete mode 100644 test/components/previews/rbui/theme_toggle_preview.rb delete mode 100644 test/components/previews/rbui/tooltip_preview.rb delete mode 100644 test/components/previews/rbui/typography_preview.rb diff --git a/Gemfile b/Gemfile index b426e800..2c09b088 100644 --- a/Gemfile +++ b/Gemfile @@ -20,8 +20,6 @@ gem "stimulus-rails", "1.3.3" # Bundle and process CSS [https://github.com/rails/cssbundling-rails] gem "cssbundling-rails", "1.4.0" -gem "lookbook", "2.3.2" - gem "lucide-rails", "0.4.0" # gem "jbuilder" diff --git a/Gemfile.lock b/Gemfile.lock index 3b0cd7e5..2017e5b3 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -117,8 +117,6 @@ GEM concurrent-ruby (1.3.4) connection_pool (2.4.1) crass (1.0.6) - css_parser (1.19.1) - addressable cssbundling-rails (1.4.0) railties (>= 6.0.0) date (3.4.0) @@ -131,8 +129,6 @@ GEM erubi (1.13.0) globalid (1.2.1) activesupport (>= 6.1) - htmlbeautifier (1.4.3) - htmlentities (4.3.4) i18n (1.14.6) concurrent-ruby (~> 1.0) io-console (0.7.2) @@ -148,18 +144,6 @@ GEM loofah (2.23.1) crass (~> 1.0.2) nokogiri (>= 1.12.0) - lookbook (2.3.2) - activemodel - css_parser - htmlbeautifier (~> 1.3) - htmlentities (~> 4.3.4) - marcel (~> 1.0) - railties (>= 5.0) - redcarpet (~> 3.5) - rouge (>= 3.26, < 5.0) - view_component (>= 2.0) - yard (~> 0.9) - zeitwerk (~> 2.5) lru_redux (1.1.0) lucide-rails (0.4.0) railties (>= 4.1.0) @@ -246,7 +230,6 @@ GEM rake (13.2.1) rdoc (6.7.0) psych (>= 4.0.0) - redcarpet (3.6.0) regexp_parser (2.9.2) reline (0.5.11) io-console (~> 0.5) @@ -305,10 +288,6 @@ GEM concurrent-ruby (~> 1.0) unicode-display_width (2.6.0) useragent (0.16.10) - view_component (3.20.0) - activesupport (>= 5.2.0, < 8.1) - concurrent-ruby (~> 1.0) - method_source (~> 1.0) web-console (4.2.1) actionview (>= 6.0.0) activemodel (>= 6.0.0) @@ -320,7 +299,6 @@ GEM websocket-extensions (0.1.5) xpath (3.2.0) nokogiri (~> 1.8) - yard (0.9.37) zeitwerk (2.7.1) PLATFORMS @@ -333,7 +311,6 @@ DEPENDENCIES debug dockerfile-rails (>= 1.6) jsbundling-rails (= 1.3.0) - lookbook (= 2.3.2) lucide-rails (= 0.4.0) phlex! phlex-rails! diff --git a/app/views/components/shared/navbar.rb b/app/views/components/shared/navbar.rb index 894e9cf4..4babff97 100644 --- a/app/views/components/shared/navbar.rb +++ b/app/views/components/shared/navbar.rb @@ -11,7 +11,6 @@ def view_template Link(href: helpers.docs_introduction_path, variant: :ghost, class: "hidden md:inline-block") { "Docs" } Link(href: helpers.docs_accordion_path, variant: :ghost, class: "hidden md:inline-block") { "Components" } Link(href: helpers.theme_path("default"), variant: :ghost, class: "hidden md:inline-block") { "Themes" } - Link(href: helpers.lookbook_path("default"), target: "_blank", variant: :ghost, class: "hidden md:inline-block") { "Lookbook" } end div(class: "flex items-center gap-x-2 md:divide-x") do div(class: "flex items-center") do diff --git a/app/views/layouts/component_preview.html.erb b/app/views/layouts/component_preview.html.erb deleted file mode 100644 index e907bc06..00000000 --- a/app/views/layouts/component_preview.html.erb +++ /dev/null @@ -1,18 +0,0 @@ - -"> - - Component Preview - - <%= stylesheet_link_tag 'application' %> - <%= javascript_include_tag 'application', defer: true %> - - -
- "> -
- <%= yield %> -
-
- - diff --git a/config/application.rb b/config/application.rb index 89e85841..f576ed6a 100644 --- a/config/application.rb +++ b/config/application.rb @@ -29,10 +29,6 @@ class Application < Rails::Application # config.time_zone = "Central Time (US & Canada)" # config.eager_load_paths << Rails.root.join("extras") - # lookbook configuration - config.lookbook.project_name = "Phlex Components" - config.lookbook.preview_layout = "component_preview" - config.exceptions_app = routes # redirects all exceptions to custom error pages (See routes) end end diff --git a/config/initializers/lookbook.rb b/config/initializers/lookbook.rb index 1b52b5d7..8e9b8f90 100644 --- a/config/initializers/lookbook.rb +++ b/config/initializers/lookbook.rb @@ -1,17 +1 @@ # frozen_string_literal: true - -# lookbook workaround for phlex components -if defined?(Lookbook) - module Lookbook::PreviewOverrides - # see https://github.com/ViewComponent/lookbook/issues/584 - def render(component = nil, **args, &block) - if block - super { component.instance_exec component, &block } - else - super - end - end - end - - Rails.application.configure { Lookbook::Preview.prepend Lookbook::PreviewOverrides } -end diff --git a/config/routes.rb b/config/routes.rb index f90d8c00..1774ae51 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -1,8 +1,6 @@ Rails.application.routes.draw do get "themes/:theme", to: "themes#show", as: :theme - mount Lookbook::Engine, at: "/lookbook" - scope "docs" do # GETTING STARTED get "introduction", to: "docs#introduction", as: :docs_introduction diff --git a/test/components/previews/rbui/accordion_preview.rb b/test/components/previews/rbui/accordion_preview.rb deleted file mode 100644 index b1818775..00000000 --- a/test/components/previews/rbui/accordion_preview.rb +++ /dev/null @@ -1,36 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class AccordionPreview < Lookbook::Preview - ITEMS = [ - {title: "Item 1", content: "Content 1"}, - {title: "Item 2", content: "Content 2"}, - {title: "Item 3", content: "Content 3"} - ] - - # Default Accordion - # --------------- - def default - render(TestView.new) do - div(class: "w-96") do - Accordion do - ITEMS.each do |it| - AccordionItem do - AccordionTrigger do - p(class: "font-medium") { it[:title] } - AccordionIcon() - end - - AccordionContent do - p(class: "text-sm pb-4") do - it[:content] - end - end - end - end - end - end - end - end - end -end diff --git a/test/components/previews/rbui/alert_dialog_preview.rb b/test/components/previews/rbui/alert_dialog_preview.rb deleted file mode 100644 index de6157c0..00000000 --- a/test/components/previews/rbui/alert_dialog_preview.rb +++ /dev/null @@ -1,29 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class AlertDialogPreview < Lookbook::Preview - # Default AlertDialog - # --------------- - def default - render(TestView.new) do - AlertDialog do - AlertDialogTrigger { Button { "Show dialog" } } - - AlertDialogContent do - AlertDialogHeader do - AlertDialogTitle { "Are you absolutely sure?" } - AlertDialogDescription do - "This action cannot be undone. This will permanently delete your account and remove your data from our servers." - end - end - - AlertDialogFooter do - AlertDialogCancel { "Cancel" } - AlertDialogAction { "Continue" } - end - end - end - end - end - end -end diff --git a/test/components/previews/rbui/alert_preview.rb b/test/components/previews/rbui/alert_preview.rb deleted file mode 100644 index 787cab4a..00000000 --- a/test/components/previews/rbui/alert_preview.rb +++ /dev/null @@ -1,17 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class AlertPreview < Lookbook::Preview - # Default Alert - # --------------- - # @param variant [Symbol] select { choices: [nil, warning, success, destructive] } - def variants(variant: nil) - render(TestView.new) do - Alert(variant:) do - AlertTitle { "Pro tip" } - AlertDescription { "With RBUI you'll ship faster." } - end - end - end - end -end diff --git a/test/components/previews/rbui/aspect_ratio_preview.rb b/test/components/previews/rbui/aspect_ratio_preview.rb deleted file mode 100644 index 0abd26b6..00000000 --- a/test/components/previews/rbui/aspect_ratio_preview.rb +++ /dev/null @@ -1,39 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class AspectRatioPreview < Lookbook::Preview - # AspectRatio 16/9 - # --------------- - def aspect_16x9 - render(TestView.new) do - div(class: "w-96") do - AspectRatio(aspect_ratio: "16/9") do |aspect_ratio| - aspect_ratio.img(alt: "Placeholder", loading: "lazy", src: helpers.image_path("pattern.jpg")) - end - end - end - end - - # AspectRatio 4/3 - def aspect_4x3 - render(TestView.new) do - div(class: "w-96") do - AspectRatio(aspect_ratio: "4/3") do |aspect_ratio| - aspect_ratio.img(alt: "Placeholder", loading: "lazy", src: helpers.image_path("pattern.jpg")) - end - end - end - end - - # AspectRatio 1/1 - def aspect_1x1 - render(TestView.new) do - div(class: "w-96") do - AspectRatio(aspect_ratio: "1/1") do |aspect_ratio| - aspect_ratio.img(alt: "Placeholder", loading: "lazy", src: helpers.image_path("pattern.jpg")) - end - end - end - end - end -end diff --git a/test/components/previews/rbui/avatar_preview.rb b/test/components/previews/rbui/avatar_preview.rb deleted file mode 100644 index 68f598b3..00000000 --- a/test/components/previews/rbui/avatar_preview.rb +++ /dev/null @@ -1,32 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class AvatarPreview < Lookbook::Preview - # Avatar sizes - # --------------- - # @param size [Symbol] select { choices: [sm, md, lg, xl] } - def sizes(size: :md) - render(TestView.new) do - Avatar(size:) do - AvatarImage(src: "https://avatars.githubusercontent.com/u/246692?v=4", alt: "joeldrapper") - end - end - end - - # Avatar Images - def image - render(TestView.new) do - Avatar do - AvatarImage(src: "https://avatars.githubusercontent.com/u/246692?v=4", alt: "joeldrapper") - end - end - end - - # Avatar fallback - def fallback - render(TestView.new) do - Avatar { AvatarFallback { "JD" } } - end - end - end -end diff --git a/test/components/previews/rbui/badge_preview.rb b/test/components/previews/rbui/badge_preview.rb deleted file mode 100644 index 06a864ea..00000000 --- a/test/components/previews/rbui/badge_preview.rb +++ /dev/null @@ -1,17 +0,0 @@ -# frozen_string_literal: true - -# rubocop:disable Layout/LineLength - -module RBUI - class BadgePreview < Lookbook::Preview - # Default Badge - # --------------- - # @param variant [Symbol] select { choices: [primary, secondary, outline, destructive, success, warning, slate, gray, zinc, neutral, stone, red, orange, amber, yellow, lime, green, emerald, teal, cyan, sky, blue, indigo, violet, purple, fuchsia, pink, rose] } - def default(variant: :primary) - render(TestView.new) do - Badge(variant:) { "My Badge" } - end - end - end -end -# rubocop:enable Layout/LineLength diff --git a/test/components/previews/rbui/button_preview.rb b/test/components/previews/rbui/button_preview.rb deleted file mode 100644 index 5089656b..00000000 --- a/test/components/previews/rbui/button_preview.rb +++ /dev/null @@ -1,50 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class ButtonPreview < Lookbook::Preview - # Primary Button - # --------------- - # @param variant [Symbol] select { choices: [primary, destructive, outline, secondary, ghost, link] } - # @param size [Symbol] select { choices: [sm, md, lg, xl] } - def primary(variant: :primary, size: :md) - render(TestView.new) do - Button(variant:, size:) { variant.capitalize } - end - end - - # Destructive Button - def destructive(variant: :destructive, size: :md) - render(TestView.new) do - Button(variant:, size:) { variant.capitalize } - end - end - - # Outline Button - def outline(variant: :outline, size: :md) - render(TestView.new) do - Button(variant:, size:) { variant.capitalize } - end - end - - # Secondary Button - def secondary(variant: :secondary, size: :md) - render(TestView.new) do - Button(variant:, size:) { variant.capitalize } - end - end - - # Ghost Button - def ghost(variant: :ghost, size: :md) - render(TestView.new) do - Button(variant:, size:) { variant.capitalize } - end - end - - # Link Button - def link(variant: :link, size: :md) - render(TestView.new) do - Button(variant:, size:) { variant.capitalize } - end - end - end -end diff --git a/test/components/previews/rbui/calendar_preview.rb b/test/components/previews/rbui/calendar_preview.rb deleted file mode 100644 index e9611a49..00000000 --- a/test/components/previews/rbui/calendar_preview.rb +++ /dev/null @@ -1,14 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class CalendarPreview < Lookbook::Preview - def default - render(TestView.new) do - div(class: "space-y-4") do - Input(type: "string", placeholder: "Select a date", class: "rounded-md border shadow", id: "date", data_controller: "input") - Calendar(input_id: "#date", class: "rounded-md border shadow") - end - end - end - end -end diff --git a/test/components/previews/rbui/card_preview.rb b/test/components/previews/rbui/card_preview.rb deleted file mode 100644 index 58557dd9..00000000 --- a/test/components/previews/rbui/card_preview.rb +++ /dev/null @@ -1,33 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class CardPreview < Lookbook::Preview - # Default CardPreview - # --------------- - def default - render(TestView.new) do - Card(class: "w-96") do - CardHeader do - CardTitle { 'You might like "PhlexUi"' } - CardDescription { "@joeldrapper" } - end - - CardContent do - AspectRatio(aspect_ratio: "16/9", class: "rounded-md overflow-hidden border") do - img( - alt: "Placeholder", - loading: "lazy", - src: helpers.image_url("pattern.jpg") - ) - end - end - - CardFooter(class: "flex justify-end gap-x-2") do - Button(variant: :outline) { "See more" } - Button(variant: :primary) { "Buy now" } - end - end - end - end - end -end diff --git a/test/components/previews/rbui/checkbox_group_preview.rb b/test/components/previews/rbui/checkbox_group_preview.rb deleted file mode 100644 index 912471bd..00000000 --- a/test/components/previews/rbui/checkbox_group_preview.rb +++ /dev/null @@ -1,13 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class CheckboxGroupPreview < Lookbook::Preview - # Default CheckboxGroup - # --------------- - def default - render(TestView.new) do - CheckboxGroup(id: "terms") - end - end - end -end diff --git a/test/components/previews/rbui/checkbox_preview.rb b/test/components/previews/rbui/checkbox_preview.rb deleted file mode 100644 index e12effb1..00000000 --- a/test/components/previews/rbui/checkbox_preview.rb +++ /dev/null @@ -1,13 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class CheckboxPreview < Lookbook::Preview - # Default Checkbox - # --------------- - def default - render(TestView.new) do - Checkbox(id: "terms") - end - end - end -end diff --git a/test/components/previews/rbui/clipboard_preview.rb b/test/components/previews/rbui/clipboard_preview.rb deleted file mode 100644 index 04b5123e..00000000 --- a/test/components/previews/rbui/clipboard_preview.rb +++ /dev/null @@ -1,21 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class ClipboardPreview < Lookbook::Preview - # Default Clipboard - # --------------- - def default - render(TestView.new) do - Clipboard(success: "Copied!", error: "Copy failed!", class: "relative", options: {placement: "top"}) do - ClipboardSource(class: "hidden") { span { "Born rich!!!" } } - - ClipboardTrigger do - Link(href: "#", class: "gap-1") do - Text(size: :small, class: "text-primary") { "Copy the secret of success!!!" } - end - end - end - end - end - end -end diff --git a/test/components/previews/rbui/codeblock_preview.rb b/test/components/previews/rbui/codeblock_preview.rb deleted file mode 100644 index 00b0ff17..00000000 --- a/test/components/previews/rbui/codeblock_preview.rb +++ /dev/null @@ -1,19 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class CodeblockPreview < Lookbook::Preview - # Default Codeblock - # --------------- - def default - code = <<~CODE - def hello_world - puts "Hello, world!" - end - CODE - - render(TestView.new) do - Codeblock(code, syntax: :ruby) - end - end - end -end diff --git a/test/components/previews/rbui/collapsible_preview.rb b/test/components/previews/rbui/collapsible_preview.rb deleted file mode 100644 index 484fd0a4..00000000 --- a/test/components/previews/rbui/collapsible_preview.rb +++ /dev/null @@ -1,38 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class CollapsiblePreview < Lookbook::Preview - # Default Collapsible - # --------------- - def default - render(TestView.new) do - Collapsible do - div(class: "flex items-center justify-between space-x-4 px-4 py-2") do - h4(class: "text-sm font-semibold") { " @joeldrapper starred 3 repositories" } - CollapsibleTrigger do - Button(variant: :ghost, icon: true) do - plain(helpers.lucide_icon("chevrons-up-down", class: "w-4 h-4")) - span(class: "sr-only") { "Toggle" } - end - end - end - - div(class: "rounded-md border px-4 py-2 font-mono text-sm shadow-sm") do - "phlex-ruby/phlex" - end - - CollapsibleContent do - div(class: "space-y-2 mt-2") do - div(class: "rounded-md border px-4 py-2 font-mono text-sm shadow-sm") do - "phlex-ruby/phlex-rails" - end - div(class: "rounded-md border px-4 py-2 font-mono text-sm shadow-sm") do - "RBUI/rbui" - end - end - end - end - end - end - end -end diff --git a/test/components/previews/rbui/combobox_preview.rb b/test/components/previews/rbui/combobox_preview.rb deleted file mode 100644 index a0023449..00000000 --- a/test/components/previews/rbui/combobox_preview.rb +++ /dev/null @@ -1,51 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class ComboboxPreview < Lookbook::Preview - # Default Combobox - # --------------- - def default - render(TestView.new) do - div(class: "w-96") do - Combobox do - ComboboxInput() - ComboboxTrigger do - ComboboxValue(placeholder: "Select event...") - end - ComboboxContent do - ComboboxSearchInput(placeholder: "Search event...") - ComboboxList do - ComboboxEmpty { "No results found." } - ComboboxGroup(heading: "Suggestions") do - ComboboxItem(value: "railsworld") do - span { "Rails World" } - end - ComboboxItem(value: "tropicalrb") do - span { "Tropical.rb" } - end - ComboboxItem(value: "friendly.rb") do - span { "Friendly.rb" } - end - end - - ComboboxSeparator() - - ComboboxGroup(heading: "Others") do - ComboboxItem(value: "railsconf") do - span { "RailsConf" } - end - ComboboxItem(value: "euruko") do - span { "Euruko" } - end - ComboboxItem(value: "rubykaigi") do - span { "RubyKaigi" } - end - end - end - end - end - end - end - end - end -end diff --git a/test/components/previews/rbui/command_preview.rb b/test/components/previews/rbui/command_preview.rb deleted file mode 100644 index 51013b5d..00000000 --- a/test/components/previews/rbui/command_preview.rb +++ /dev/null @@ -1,59 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class CommandPreview < Lookbook::Preview - # Default Command - # --------------- - def default - render(TestView.new) do - CommandDialog do - CommandDialogTrigger do - Button(variant: "outline", class: "w-56 pr-2 pl-3 justify-between") do - div(class: "flex items-center space-x-1") do - plain(helpers.lucide_icon("search", class: "w-4 h-4 mr-1.5")) - span(class: "text-muted-foreground font-normal") { plain("Search") } - end - end - end - - CommandDialogContent do - Command do - CommandInput(placeholder: "Type a command or search..") - CommandEmpty { "No results found" } - CommandList do - CommandGroup(title: "Components") do - [ - {name: "Accordion", path: "#"}, - {name: "Alert", path: "#"}, - {name: "Alert Dialog", path: "#"}, - {name: "Aspect Ratio", path: "#"}, - {name: "Avatar", path: "#"}, - {name: "Badge", path: "#"} - ].each do |component| - CommandItem(value: component[:name], href: component[:path]) do - plain(helpers.lucide_icon("circle-arrow-right", class: "w-4 h-4")) - plain(component[:name]) - end - end - end - - CommandGroup(title: "Settings") do - [ - {name: "Profile", path: "#"}, - {name: "Mail", path: "#"}, - {name: "Settings", path: "#"} - ].each do |setting| - CommandItem(value: setting[:name], href: setting[:path]) do - plain(helpers.lucide_icon("circle-arrow-right", class: "w-4 h-4")) - plain(setting[:name]) - end - end - end - end - end - end - end - end - end - end -end diff --git a/test/components/previews/rbui/context_menu_preview.rb b/test/components/previews/rbui/context_menu_preview.rb deleted file mode 100644 index d644a65d..00000000 --- a/test/components/previews/rbui/context_menu_preview.rb +++ /dev/null @@ -1,29 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class ContextMenuPreview < Lookbook::Preview - # Default ContextMenu - # --------------- - def default - render(TestView.new) do - ContextMenu do - ContextMenuTrigger(class: "flex h-[150px] w-[300px] items-center justify-center rounded-md border border-dashed text-sm") { "Right click here" } - ContextMenuContent(class: "w-64") do - ContextMenuItem(href: "#", shortcut: "⌘[") { "Back" } - ContextMenuItem(href: "#", shortcut: "⌘]", disabled: true) { "Forward" } - ContextMenuItem(href: "#", shortcut: "⌘R") { "Reload" } - ContextMenuSeparator() - ContextMenuItem(href: "#", shortcut: "⌘⇧B", checked: true) { "Show Bookmarks Bar" } - ContextMenuItem(href: "#") { "Show Full URLs" } - ContextMenuSeparator() - ContextMenuLabel(inset: true) { "More Tools" } - ContextMenuSeparator() - ContextMenuItem(href: "#") { "Developer Tools" } - ContextMenuItem(href: "#") { "Task Manager" } - ContextMenuItem(href: "#") { "Extensions" } - end - end - end - end - end -end diff --git a/test/components/previews/rbui/date_picker_preview.rb b/test/components/previews/rbui/date_picker_preview.rb deleted file mode 100644 index 2f8ed44a..00000000 --- a/test/components/previews/rbui/date_picker_preview.rb +++ /dev/null @@ -1,25 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class DatePickerPreview < Lookbook::Preview - # Default DatePicker - # --------------- - def default - render(TestView.new) do - div(class: "space-y-4 w-[260px]") do - Popover(options: {trigger: "focusin"}) do - PopoverTrigger(class: "w-full") do - div(class: "grid w-full max-w-sm items-center gap-1.5") do - label(for: "date") { "Select a date" } - Input(type: "string", placeholder: "Select a date", class: "rounded-md border shadow", id: "date", data_controller: "input") - end - end - PopoverContent do - Calendar(input_id: "#date") - end - end - end - end - end - end -end diff --git a/test/components/previews/rbui/dialog_preview.rb b/test/components/previews/rbui/dialog_preview.rb deleted file mode 100644 index 9ec3d769..00000000 --- a/test/components/previews/rbui/dialog_preview.rb +++ /dev/null @@ -1,38 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class DialogPreview < Lookbook::Preview - # Default Dialog - # --------------- - # @param size [Symbol] select { choices: [sm, md, lg, xl, full] } - def default(size: :md) - render(TestView.new) do - Dialog do - DialogTrigger { Button { "Open Dialog" } } - DialogContent(size:) do - DialogHeader do - DialogTitle { "RBUI to the rescue" } - DialogDescription do - "RBUI helps you build accessible standard compliant web apps with ease" - end - end - DialogMiddle do - AspectRatio(aspect_ratio: "16/9", class: "rounded-md overflow-hidden border") do - img( - alt: "Placeholder", - loading: "lazy", - src: helpers.image_path("pattern.jpg") - ) - end - end - DialogFooter do - Button(variant: :outline, data: {action: "click->dismissable#dismiss"}) { "Cancel" } - - Button { "Save" } - end - end - end - end - end - end -end diff --git a/test/components/previews/rbui/dropdown_menu_preview.rb b/test/components/previews/rbui/dropdown_menu_preview.rb deleted file mode 100644 index 1fe85f35..00000000 --- a/test/components/previews/rbui/dropdown_menu_preview.rb +++ /dev/null @@ -1,30 +0,0 @@ -# frozen_string_literal: true - -# rubocop:disable Layout/LineLength - -module RBUI - class DropdownMenuPreview < Lookbook::Preview - # Default DropdownMenu - # --------------- - # @param placement [String] select { choices: ['top', 'top-start', 'top-end', 'right', 'right-start', 'right-end', 'left', 'left-start', 'left-end', 'bottom', 'bottom-start', 'bottom-end'] } - def default(placement: "top") - render(TestView.new) do - DropdownMenu(options: {placement:}) do - DropdownMenuTrigger(class: "w-full") do - Button(variant: :outline) { "Open" } - end - - DropdownMenuContent do - DropdownMenuLabel { "My Account" } - DropdownMenuSeparator() - DropdownMenuItem(href: "#") { "Profile" } - DropdownMenuItem(href: "#") { "Billing" } - DropdownMenuItem(href: "#") { "Team" } - DropdownMenuItem(href: "#") { "Subscription" } - end - end - end - end - end -end -# rubocop:enable Layout/LineLength diff --git a/test/components/previews/rbui/form_preview.rb b/test/components/previews/rbui/form_preview.rb deleted file mode 100644 index 3b7c12bf..00000000 --- a/test/components/previews/rbui/form_preview.rb +++ /dev/null @@ -1,148 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class FormPreview < Lookbook::Preview - # Default Form - # --------------- - def default - render(TestView.new) do - Form(class: "w-2/3 space-y-6 w-64") do - FormField do - FormFieldLabel { "Default error" } - Input(placeholder: "Joel Drapper", required: true, minlength: "3") { "Joel Drapper" } - FormFieldHint() - FormFieldError() - end - Button(type: "submit") { "Save" } - end - end - end - - # Custom error message - # --------------- - def custom_error_message - render(TestView.new) do - Form(class: "w-2/3 space-y-6 w-64") do - FormField do - FormFieldLabel { "Custom error message" } - Input(placeholder: "joel@drapper.me", required: true, data_value_missing: "Custom error message") - FormFieldError() - end - Button(type: "submit") { "Save" } - end - end - end - - # Error from backend - # --------------- - def error_from_backend - render(TestView.new) do - Form(class: "w-2/3 space-y-6 w-64") do - FormField do - FormFieldLabel { "Backend error" } - Input(placeholder: "Joel Drapper", required: true) - FormFieldError { "Error from backend" } - end - Button(type: "submit") { "Save" } - end - end - end - - # Checkbox - # --------------- - def checkbox - render(TestView.new) do - Form(class: "w-2/3 space-y-6 w-64") do - FormField do - Checkbox(required: true) - label(class: "text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70") do - "Accept terms and conditions" - end - FormFieldError() - end - Button(type: "submit") { "Save" } - end - end - end - - # Select - # --------------- - def select - render(TestView.new) do - Form(class: "w-2/3 space-y-6 w-64") do - FormField do - FormFieldLabel { "Select" } - Select do - SelectInput(required: true) - SelectTrigger do - SelectValue(placeholder: "Select a fruit") - end - SelectContent() do - SelectGroup do - SelectLabel { "Fruits" } - SelectItem(value: "apple") { "Apple" } - SelectItem(value: "orange") { "Orange" } - SelectItem(value: "banana") { "Banana" } - SelectItem(value: "watermelon") { "Watermelon" } - end - end - end - FormFieldError() - end - Button(type: "submit") { "Save" } - end - end - end - - # Combobox - # --------------- - def combobox - render(TestView.new) do - Form(class: "w-2/3 space-y-6") do - FormField do - FormFieldLabel { "Combobox" } - Combobox do - ComboboxInput(required: true) - ComboboxTrigger do - ComboboxValue(placeholder: "Select event...") - end - ComboboxContent do - ComboboxSearchInput(placeholder: "Search event...") - ComboboxList do - ComboboxEmpty { "No results found." } - ComboboxGroup(heading: "Suggestions") do - ComboboxItem(value: "railsworld") do - span { "Rails World" } - end - ComboboxItem(value: "tropicalrb") do - span { "Tropical.rb" } - end - ComboboxItem(value: "friendly.rb") do - span { "Friendly.rb" } - end - end - - ComboboxSeparator() - - ComboboxGroup(heading: "Others") do - ComboboxItem(value: "railsconf") do - span { "RailsConf" } - end - ComboboxItem(value: "euruko") do - span { "Euruko" } - end - ComboboxItem(value: "rubykaigi") do - span { "RubyKaigi" } - end - end - end - end - end - FormFieldError() - end - Button(type: "submit") { "Save" } - end - end - end - end -end diff --git a/test/components/previews/rbui/hover_card_preview.rb b/test/components/previews/rbui/hover_card_preview.rb deleted file mode 100644 index 2538ebdf..00000000 --- a/test/components/previews/rbui/hover_card_preview.rb +++ /dev/null @@ -1,33 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class HoverCardPreview < Lookbook::Preview - # Default HoverCard - # --------------- - def default - render(TestView.new) do - HoverCard do - HoverCardTrigger { Button(variant: :link) { "@joeldrapper" } } - - HoverCardContent do - div(class: "flex justify-between space-x-4") do - Avatar do - AvatarImage(src: "https://avatars.githubusercontent.com/u/246692?v=4", alt: "joeldrapper") - AvatarFallback { "JD" } - end - - div(class: "space-y-1") do - h4(class: "text-sm font-medium") { "@joeldrapper" } - p(class: "text-sm") { "Creator of Phlex Components. Ruby on Rails developer." } - div(class: "flex items-center pt-2") do - plain(helpers.lucide_icon("calendar-days", class: "mr-2 h-4 w-4 opacity-70")) - span(class: "text-xs text-muted-foreground") { "Joined December 2021" } - end - end - end - end - end - end - end - end -end diff --git a/test/components/previews/rbui/input_preview.rb b/test/components/previews/rbui/input_preview.rb deleted file mode 100644 index 7aa4d5fa..00000000 --- a/test/components/previews/rbui/input_preview.rb +++ /dev/null @@ -1,40 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class InputPreview < Lookbook::Preview - # Email Input - # --------------- - def email - render(TestView.new) do - Input(type: "email", placeholder: "Email", class: "max-w-sm") - end - end - - # File input - def file - render(TestView.new) do - Input(type: "file", id: "picture") - end - end - - # Disabled input - def disabled - render(TestView.new) do - Input(disabled: true, type: "email", placeholder: "Email", class: "max-w-sm") - end - end - - # with error - def with_error - render(TestView.new) do - Input( - type: "email", - placeholder: "Email", - id: "email1", - value: "joel@mail", - error: "Invalid email address" - ) - end - end - end -end diff --git a/test/components/previews/rbui/link_preview.rb b/test/components/previews/rbui/link_preview.rb deleted file mode 100644 index b03cc0f3..00000000 --- a/test/components/previews/rbui/link_preview.rb +++ /dev/null @@ -1,45 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class LinkPreview < Lookbook::Preview - # Default Link - # --------------- - def default - render(TestView.new) do - Link(href: "#") { "Link" } - end - end - - # Primary Link - # --------------- - def primary - render(TestView.new) do - Link(href: "#", variant: :primary) { "Primary" } - end - end - - # Secondary Link - # --------------- - def secondary - render(TestView.new) do - Link(href: "#", variant: :secondary) { "Secondary" } - end - end - - # Destructive Link - # --------------- - def destructive - render(TestView.new) do - Link(href: "#", variant: :destructive) { "Destructive" } - end - end - - # ghost Link - # --------------- - def ghost - render(TestView.new) do - Link(href: "#", variant: :ghost) { "Ghost" } - end - end - end -end diff --git a/test/components/previews/rbui/pagination_preview.rb b/test/components/previews/rbui/pagination_preview.rb deleted file mode 100644 index 30cdba01..00000000 --- a/test/components/previews/rbui/pagination_preview.rb +++ /dev/null @@ -1,43 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class PaginationPreview < Lookbook::Preview - # Default Pagination - # --------------- - def default - render(TestView.new) do - Pagination do - PaginationContent do - PaginationItem(href: "#") do - plain(helpers.lucide_icon("chevrons-left", class: "w-4 h-4")) - plain "First" - end - - PaginationItem(href: "#") do - plain(helpers.lucide_icon("chevron-left", class: "w-4 h-4")) - plain "Prev" - end - - PaginationEllipsis() - - PaginationItem(href: "#") { "4" } - PaginationItem(href: "#", active: true) { "5" } - PaginationItem(href: "#") { "6" } - - PaginationEllipsis() - - PaginationItem(href: "#") do - plain "Next" - plain(helpers.lucide_icon("chevron-right", class: "w-4 h-4")) - end - - PaginationItem(href: "#") do - plain "Last" - plain(helpers.lucide_icon("chevrons-right", class: "w-4 h-4")) - end - end - end - end - end - end -end diff --git a/test/components/previews/rbui/popover_preview.rb b/test/components/previews/rbui/popover_preview.rb deleted file mode 100644 index 67a25792..00000000 --- a/test/components/previews/rbui/popover_preview.rb +++ /dev/null @@ -1,67 +0,0 @@ -# frozen_string_literal: true - -# rubocop:disable Layout/LineLength - -module RBUI - class PopoverPreview < Lookbook::Preview - # Default Popover - # --------------- - # @param placement [String] select { choices: ['top', 'top-start', 'top-end', 'right', 'right-start', 'right-end', 'left', 'left-start', 'left-end', 'bottom', 'bottom-start', 'bottom-end'] } - def default(placement: "top") - render(TestView.new) do - Popover(options: {placement:}) do - PopoverTrigger(class: "w-full") do - Button(variant: :outline) { "Open Popover" } - end - - PopoverContent(class: "w-40") do - Link(href: "#", variant: :ghost, class: "w-full justify-start pl-2") do - plain(helpers.lucide_icon("circle-user", class: "w-4 h-4 mr-2")) - plain("Profile") - end - - Link(href: "#", variant: :ghost, class: "w-full justify-start pl-2") do - plain(helpers.lucide_icon("cog", class: "w-4 h-4 mr-2")) - plain("Settings") - end - - Link(href: "#", variant: :ghost, class: "w-full justify-start pl-2") do - plain(helpers.lucide_icon("log-out", class: "w-4 h-4 mr-2")) - plain("Logout") - end - end - end - end - end - - # Trigger Popover - # --------------- - def trigger - render(TestView.new) do - Popover(options: {trigger: "click"}) do - PopoverTrigger(class: "w-full") do - Button(variant: :outline) { "Open Popover" } - end - - PopoverContent(class: "w-40") do - Link(href: "#", variant: :ghost, class: "w-full justify-start pl-2") do - plain(helpers.lucide_icon("circle-user", class: "w-4 h-4 mr-2")) - plain("Profile") - end - - Link(href: "#", variant: :ghost, class: "w-full justify-start pl-2") do - plain(helpers.lucide_icon("cog", class: "w-4 h-4 mr-2")) - plain("Settings") - end - - Link(href: "#", variant: :ghost, class: "w-full justify-start pl-2") do - plain(helpers.lucide_icon("log-out", class: "w-4 h-4 mr-2")) - plain("Logout") - end - end - end - end - end - end -end -# rubocop:enable Layout/LineLength diff --git a/test/components/previews/rbui/select_preview.rb b/test/components/previews/rbui/select_preview.rb deleted file mode 100644 index f75383aa..00000000 --- a/test/components/previews/rbui/select_preview.rb +++ /dev/null @@ -1,27 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class SelectPreview < Lookbook::Preview - def default - render(TestView.new) do - Select(class: "w-56 flex items-center justify-center") do - SelectInput(value: "apple", id: "select-a-fruit") - - SelectTrigger do - SelectValue(placeholder: "Select a fruit", id: "select-a-fruit") { "Apple" } - end - - SelectContent(outlet_id: "select-a-fruit") do - SelectGroup do - SelectLabel { "Fruits" } - SelectItem(value: "apple") { "Apple" } - SelectItem(value: "orange") { "Orange" } - SelectItem(value: "banana") { "Banana" } - SelectItem(value: "watermelon") { "Watermelon" } - end - end - end - end - end - end -end diff --git a/test/components/previews/rbui/sheet_preview.rb b/test/components/previews/rbui/sheet_preview.rb deleted file mode 100644 index d5a1d080..00000000 --- a/test/components/previews/rbui/sheet_preview.rb +++ /dev/null @@ -1,38 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class SheetPreview < Lookbook::Preview - # Default Sheet - # --------------- - # @param side [Symbol] select { choices: [top, right, bottom, left] } - # @param size [String] select { choices: ["", "w-3/4", "w-1/2"] } - def default(side: :top, size: "") - render(TestView.new) do - Sheet do - SheetTrigger { Button(variant: :outline) { "Open Sheet" } } - SheetContent(side:, class: size) do - SheetHeader do - SheetTitle { "Edit profile" } - SheetDescription { "Make changes to your profile here. Click save when you're done." } - end - - Form do - SheetMiddle do - label { "Name" } - Input(placeholder: "Joel Drapper") { "Joel Drapper" } - - label { "Email" } - Input(placeholder: "joel@drapper.me") - end - - SheetFooter do - Button(variant: :outline, data: {action: "click->rbui--sheet-content#close"}) { "Cancel" } - Button(type: "submit") { "Save" } - end - end - end - end - end - end - end -end diff --git a/test/components/previews/rbui/shortcut_key_preview.rb b/test/components/previews/rbui/shortcut_key_preview.rb deleted file mode 100644 index d43f05eb..00000000 --- a/test/components/previews/rbui/shortcut_key_preview.rb +++ /dev/null @@ -1,17 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class ShortcutKeyPreview < Lookbook::Preview - def default - render(TestView.new) do - div(class: "flex flex-col items-center gap-y-4") do - ShortcutKey do - span(class: "text-xs") { "⌘" } - plain "K" - end - p(class: "text-muted-foreground text-sm text-center") { "Note this does not trigger anything, it is purely a visual prompt" } - end - end - end - end -end diff --git a/test/components/previews/rbui/table_preview.rb b/test/components/previews/rbui/table_preview.rb deleted file mode 100644 index a919d4d5..00000000 --- a/test/components/previews/rbui/table_preview.rb +++ /dev/null @@ -1,46 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class TablePreview < Lookbook::Preview - # Default TablePreview - # --------------- - def default - render(TestView.new) do - Table do - TableCaption { "Employees at Acme inc." } - TableHeader do - TableRow do - TableHead { "Name" } - TableHead { "Email" } - TableHead { "Status" } - TableHead(class: "text-right") { "Role" } - end - end - - TableBody do - [ - {identifier: "INV-0001", status: "Active", method: "Credit Card", amount: 100}, - {identifier: "INV-0002", status: "Active", method: "Bank Transfer", amount: 230}, - {identifier: "INV-0003", status: "Pending", method: "PayPal", amount: 350}, - {identifier: "INV-0004", status: "Inactive", method: "Credit Card", amount: 10} - ].each do |invoice| - TableRow do - TableCell(class: "font-medium") { invoice[:identifier] } - TableCell { invoice[:status] } - TableCell { invoice[:method] } - TableCell(class: "text-right") { invoice[:amount] } - end - end - end - - TableFooter do - TableRow do - TableHead(class: "font-medium", colspan: 3) { "Total" } - TableHead(class: "font-medium text-right") { "780" } - end - end - end - end - end - end -end diff --git a/test/components/previews/rbui/tabs_preview.rb b/test/components/previews/rbui/tabs_preview.rb deleted file mode 100644 index efac9aab..00000000 --- a/test/components/previews/rbui/tabs_preview.rb +++ /dev/null @@ -1,36 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class TabsPreview < Lookbook::Preview - # Default TabsPreview - # --------------- - def default - render(TestView.new) do - Tabs(default_value: "account", class: "w-96") do - TabsList do - TabsTrigger(value: "account") { "Account" } - TabsTrigger(value: "password") { "Password" } - end - - TabsContent(value: "account") do - div(class: "rounded-lg border p-6 space-y-4 bg-background text-foreground") do - div(class: "space-y-0") do - plain("Account") - plain("Update your account details.") - end - end - end - - TabsContent(value: "password") do - div(class: "rounded-lg border p-6 space-y-4 bg-background text-foreground") do - div do - plain("Password") - plain("Change your password here. After saving, you'll be logged out.") - end - end - end - end - end - end - end -end diff --git a/test/components/previews/rbui/textarea_preview.rb b/test/components/previews/rbui/textarea_preview.rb deleted file mode 100644 index fb72eb96..00000000 --- a/test/components/previews/rbui/textarea_preview.rb +++ /dev/null @@ -1,32 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class TextareaPreview < Lookbook::Preview - # Default - # --------------- - def default - render(TestView.new) do - Textarea(placeholder: "Textarea") - end - end - - # Disabled - def disabled - render(TestView.new) do - Textarea(disabled: true, placeholder: "Disabled") - end - end - - # FormField - def with_error - render(TestView.new) do - FormField do - FormFieldLabel(for: "textarea") { "Textarea" } - FormFieldHint { "This is a textarea" } - Textarea(placeholder: "Textarea", id: "textarea") - FormFieldError { "This is an error message" } - end - end - end - end -end diff --git a/test/components/previews/rbui/theme_toggle_preview.rb b/test/components/previews/rbui/theme_toggle_preview.rb deleted file mode 100644 index 059d1d8a..00000000 --- a/test/components/previews/rbui/theme_toggle_preview.rb +++ /dev/null @@ -1,23 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class ThemeTogglePreview < Lookbook::Preview - def default - render(TestView.new) do - ThemeToggle do |toggle| - toggle.light_mode do - Button(variant: :ghost, icon: true) do - plain(helpers.lucide_icon("sun", class: "w-4 h-4")) - end - end - - toggle.dark_mode do - Button(variant: :ghost, icon: true) do - plain(helpers.lucide_icon("moon", class: "w-4 h-4")) - end - end - end - end - end - end -end diff --git a/test/components/previews/rbui/tooltip_preview.rb b/test/components/previews/rbui/tooltip_preview.rb deleted file mode 100644 index 8048c431..00000000 --- a/test/components/previews/rbui/tooltip_preview.rb +++ /dev/null @@ -1,21 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class TooltipPreview < Lookbook::Preview - # Default TooltipPreview - # --------------- - def default - render(TestView.new) do - Tooltip do - TooltipTrigger do - Button(variant: :outline, icon: true) do - plain(ActionController::Base.helpers.lucide_icon("bookmark", class: "w-4 h-4")) - end - end - - TooltipContent { plain("Add to library") } - end - end - end - end -end diff --git a/test/components/previews/rbui/typography_preview.rb b/test/components/previews/rbui/typography_preview.rb deleted file mode 100644 index aff42816..00000000 --- a/test/components/previews/rbui/typography_preview.rb +++ /dev/null @@ -1,16 +0,0 @@ -# frozen_string_literal: true - -module RBUI - class TypographyPreview < Lookbook::Preview - # Heading - # --------------- - # @param level [Symbol] select { choices: [1, 2, 3, 4] } - # @param as [Symbol] select { choices: [h1, h2] } - # @param size [Symbol] select { choices: [1,2,3,4,5,6,7,8,9] } - def heading(level: 1, as: "h1", size: 6) - render(TestView.new) do - Heading(level:, as:, size:) { "This is an H1 heading" } - end - end - end -end