Class: Ruflet::UI::Controls::RufletComponents::VideoControl

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

Constant Summary collapse

TYPE =
"video".freeze
WIRE =
"Video".freeze
KEYWORDS =
[].freeze

Constants inherited from Control

Control::HOST_EXPANDED_TYPES, Control::SCHEMA_METADATA_CACHE

Instance Attribute Summary

Attributes inherited from Control

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

Instance Method Summary collapse

Methods inherited from Control

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

Constructor Details

#initialize(id: nil, **props) ⇒ VideoControl

Returns a new instance of VideoControl.



13
14
15
16
17
18
19
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 13

def initialize(id: nil, **props)
  compact = {}
  props.each do |key, value|
    compact[key] = value unless value.nil?
  end
  super(type: TYPE, id: id, **compact)
end

Instance Method Details

#get_current_position(timeout: 10, on_result: nil) ⇒ Object



21
22
23
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 21

def get_current_position(timeout: 10, on_result: nil)
  runtime_page&.invoke(self, "get_current_position", timeout: timeout, on_result: on_result)
end

#get_duration(timeout: 10, on_result: nil) ⇒ Object



25
26
27
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 25

def get_duration(timeout: 10, on_result: nil)
  runtime_page&.invoke(self, "get_duration", timeout: timeout, on_result: on_result)
end

#is_completed(timeout: 10, on_result: nil) ⇒ Object



29
30
31
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 29

def is_completed(timeout: 10, on_result: nil)
  runtime_page&.invoke(self, "is_completed", timeout: timeout, on_result: on_result)
end

#is_playing(timeout: 10, on_result: nil) ⇒ Object



33
34
35
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 33

def is_playing(timeout: 10, on_result: nil)
  runtime_page&.invoke(self, "is_playing", timeout: timeout, on_result: on_result)
end

#jump_to(media_index, timeout: 10, on_result: nil) ⇒ Object



37
38
39
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 37

def jump_to(media_index, timeout: 10, on_result: nil)
  runtime_page&.invoke(self, "jump_to", args: { "media_index" => media_index }, timeout: timeout, on_result: on_result)
end

#next(timeout: 10, on_result: nil) ⇒ Object



41
42
43
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 41

def next(timeout: 10, on_result: nil)
  runtime_page&.invoke(self, "next", timeout: timeout, on_result: on_result)
end

#pause(timeout: 10, on_result: nil) ⇒ Object



45
46
47
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 45

def pause(timeout: 10, on_result: nil)
  runtime_page&.invoke(self, "pause", timeout: timeout, on_result: on_result)
end

#play(timeout: 10, on_result: nil) ⇒ Object



49
50
51
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 49

def play(timeout: 10, on_result: nil)
  runtime_page&.invoke(self, "play", timeout: timeout, on_result: on_result)
end

#play_or_pause(timeout: 10, on_result: nil) ⇒ Object



53
54
55
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 53

def play_or_pause(timeout: 10, on_result: nil)
  runtime_page&.invoke(self, "play_or_pause", timeout: timeout, on_result: on_result)
end

#playlist_add(media = nil, timeout: 10, on_result: nil, **props) ⇒ Object



57
58
59
60
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 57

def playlist_add(media = nil, timeout: 10, on_result: nil, **props)
  item = media || props
  runtime_page&.invoke(self, "playlist_add", args: { "media" => stringify_hash_keys(item) }, timeout: timeout, on_result: on_result)
end

#playlist_remove(media_index, timeout: 10, on_result: nil) ⇒ Object



62
63
64
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 62

def playlist_remove(media_index, timeout: 10, on_result: nil)
  runtime_page&.invoke(self, "playlist_remove", args: { "media_index" => media_index }, timeout: timeout, on_result: on_result)
end

#previous(timeout: 10, on_result: nil) ⇒ Object



66
67
68
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 66

def previous(timeout: 10, on_result: nil)
  runtime_page&.invoke(self, "previous", timeout: timeout, on_result: on_result)
end

#seek(position_milliseconds, timeout: 10, on_result: nil) ⇒ Object



70
71
72
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 70

def seek(position_milliseconds, timeout: 10, on_result: nil)
  runtime_page&.invoke(self, "seek", args: { "position" => position_milliseconds }, timeout: timeout, on_result: on_result)
end

#stop(timeout: 10, on_result: nil) ⇒ Object



74
75
76
# File 'lib/ruflet_ui/ruflet/ui/controls/materials/video_control.rb', line 74

def stop(timeout: 10, on_result: nil)
  runtime_page&.invoke(self, "stop", timeout: timeout, on_result: on_result)
end