Class: Ruflet::UI::Controls::RufletComponents::NavigationDrawerControl

Inherits:
Control
  • Object
show all
Defined in:
lib/ruflet_ui/ruflet/ui/controls/materials/navigationdrawer_control.rb

Constant Summary collapse

TYPE =
"navigationdrawer".freeze
WIRE =
"NavigationDrawer".freeze

Constants inherited from Control

Control::HOST_EXPANDED_TYPES

Instance Attribute Summary

Attributes inherited from Control

#children, #id, #props, #runtime_page, #type, #wire_id

Instance Method Summary collapse

Methods inherited from Control

#emit, generate_id, #has_handler?, #on, #to_patch

Constructor Details

#initialize(id: nil, adaptive: nil, badge: nil, bgcolor: nil, col: nil, controls: nil, data: nil, disabled: nil, elevation: nil, expand: nil, expand_loose: nil, indicator_color: nil, indicator_shape: nil, key: nil, opacity: nil, rtl: nil, selected_index: nil, shadow_color: nil, surface_tint_color: nil, tile_padding: nil, tooltip: nil, visible: nil, width: nil, on_change: nil, on_dismiss: nil) ⇒ NavigationDrawerControl

Returns a new instance of NavigationDrawerControl.



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/navigationdrawer_control.rb', line 11

def initialize(id: nil, adaptive: nil, badge: nil, bgcolor: nil, col: nil, controls: nil, data: nil, disabled: nil, elevation: nil, expand: nil, expand_loose: nil, indicator_color: nil, indicator_shape: nil, key: nil, opacity: nil, rtl: nil, selected_index: nil, shadow_color: nil, surface_tint_color: nil, tile_padding: nil, tooltip: nil, visible: nil, width: nil, on_change: nil, on_dismiss: nil)
  selected_index = 0 if selected_index.nil?

  {
    elevation: elevation,
    width: width
  }.each do |name, value|
    raise ArgumentError, "navigation_drawer #{name} must be greater than or equal to 0" unless value.nil? || value >= 0
  end

  props = {}
  props[:adaptive] = adaptive unless adaptive.nil?
  props[:badge] = badge unless badge.nil?
  props[:bgcolor] = bgcolor unless bgcolor.nil?
  props[:col] = col unless col.nil?
  props[:controls] = controls unless controls.nil?
  props[:data] = data unless data.nil?
  props[:disabled] = disabled unless disabled.nil?
  props[:elevation] = elevation unless elevation.nil?
  props[:expand] = expand unless expand.nil?
  props[:expand_loose] = expand_loose unless expand_loose.nil?
  props[:indicator_color] = indicator_color unless indicator_color.nil?
  props[:indicator_shape] = indicator_shape unless indicator_shape.nil?
  props[:key] = key unless key.nil?
  props[:opacity] = opacity unless opacity.nil?
  props[:rtl] = rtl unless rtl.nil?
  props[:selected_index] = selected_index unless selected_index.nil?
  props[:shadow_color] = shadow_color unless shadow_color.nil?
  props[:surface_tint_color] = surface_tint_color unless surface_tint_color.nil?
  props[:tile_padding] = tile_padding unless tile_padding.nil?
  props[:tooltip] = tooltip unless tooltip.nil?
  props[:visible] = visible unless visible.nil?
  props[:width] = width unless width.nil?
  props[:on_change] = on_change unless on_change.nil?
  props[:on_dismiss] = on_dismiss unless on_dismiss.nil?
  super(type: TYPE, id: id, **props)
end