Sha256: b1147d4d7e648b2121653a34cc49308561d9d2ebbfa4f345c3353a0820d318e0

Contents?: true

Size: 864 Bytes

Versions: 4

Compression:

Stored size: 864 Bytes

Contents

require_relative 'todo_input'

class NewTodoInput < TodoInput
  option :presenter
  
  markup {
    input(class: todo_input_class, placeholder: "What needs to be done?", autofocus: "") {
      value <=> [presenter.new_todo, :task]
    
      onkeyup do |event|
        presenter.create_todo if event.key == 'Enter' || event.keyCode == "\r"
      end
    
      style {
        todo_input_styles
      }
    }
  }
  
  def todo_input_class
    'new-todo'
  end
  
  def todo_input_styles
    super
    
    rule(".#{todo_input_class}") {
      padding '16px 16px 16px 60px'
      height '65px'
      border 'none'
      background 'rgba(0, 0, 0, 0.003)'
      box_shadow 'inset 0 -2px 1px rgba(0,0,0,0.03)'
    }
    
    rule(".#{todo_input_class}::placeholder") {
      font_style 'italic'
      font_weight '400'
      color 'rgba(0, 0, 0, 0.4)'
    }
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
glimmer-dsl-web-0.3.1 lib/glimmer-dsl-web/samples/regular/todo_mvc/views/new_todo_input.rb
glimmer-dsl-web-0.3.0 lib/glimmer-dsl-web/samples/regular/todo_mvc/views/new_todo_input.rb
glimmer-dsl-web-0.2.8 lib/glimmer-dsl-web/samples/regular/todo_mvc/views/new_todo_input.rb
glimmer-dsl-web-0.2.7 lib/glimmer-dsl-web/samples/regular/todo_mvc/views/new_todo_input.rb