+ "content": "# frozen_string_literal: true\n\nmodule RubyUI\n class DropdownMenuItem < Base\n def initialize(as: :a, href: \"#\", **attrs)\n @as = as\n @href = href\n super(**attrs)\n end\n\n def view_template(&)\n if @as == :div\n div(**attrs, &)\n else\n a(**attrs, &)\n end\n end\n\n private\n\n def default_attrs\n base = {\n role: \"menuitem\",\n class: \"relative flex cursor-pointer select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground aria-selected:bg-accent aria-selected:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\n data_action: \"click->ruby-ui--dropdown-menu#close\",\n data_ruby_ui__dropdown_menu_target: \"menuItem\",\n tabindex: \"-1\",\n data_orientation: \"vertical\"\n }\n base[:href] = @href unless @as == :div\n base\n end\n end\nend\n"
0 commit comments