Sha256: 3c465feea7f8046ed5e39114b92a0eb39ba557879860b698d7d0c2ec956163cc
Contents?: true
Size: 1.07 KB
Versions: 4
Compression:
Stored size: 1.07 KB
Contents
# frozen_string_literal: true module RailsDevtools module Components class Ui::Drawer < Components::ApplicationComponent def initialize(id:, direction: "left", classes: "") @id = id @direction = direction @classes = classes end def view_template(&block) div(class: drawer_classes, data_controller: "checkbox") do input(id: @id, type: "checkbox", class: "drawer-toggle", data_checkbox_target: "checkbox") block.call end end def content(&) div(class: "drawer-content flex flex-col", &) end def drawer_side(&block) div(class: "drawer-side") do label( for: @id, aria_label: "close sidebar", class: "drawer-overlay" ) block.call end end private def drawer_classes [ "drawer", direction_class, @classes ].join(" ") end def direction_class @direction == "left" ? "" : "drawer-end" end end end end
Version data entries
4 entries across 4 versions & 1 rubygems