Sha256: 3d8ea04cb469465a9afffd58ee89f00d67578c8110da28a34d240c5c03c699ec

Contents?: true

Size: 1015 Bytes

Versions: 1

Compression:

Stored size: 1015 Bytes

Contents

module Components::InputHelper
  def render_input(name:, label: false, id: nil, type: :text, value: nil, **options)
    options[:class] = "flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50 #{options[:class]} "
    options[:class] << case options[:variant]
    when :borderless
      " border-0 focus-visible:outline-none focus-visible:shadow-none focus-visible:ring-transparent"
    else
      " focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:border-muted"
    end
    options.reverse_merge!(required: false, disabled: false,
      readonly: false, label: false, placeholder: "Type here...")
    render partial: "components/ui/input", locals: {
      type:,
      label:,
      name:,
      value:,
      id:,
      options: options
    }
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
shadcn-ui-0.0.4 app/helpers/components/input_helper.rb