vime_view_components 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.md +35 -0
  4. data/Rakefile +12 -0
  5. data/lib/vime/component.rb +39 -0
  6. data/lib/vime/core/embed.rb +27 -0
  7. data/lib/vime/core/player.rb +53 -0
  8. data/lib/vime/core/playground.rb +29 -0
  9. data/lib/vime/providers/audio.rb +25 -0
  10. data/lib/vime/providers/dailymotion.rb +37 -0
  11. data/lib/vime/providers/dash.rb +39 -0
  12. data/lib/vime/providers/file.rb +37 -0
  13. data/lib/vime/providers/hls.rb +33 -0
  14. data/lib/vime/providers/video.rb +29 -0
  15. data/lib/vime/providers/vimeo.rb +31 -0
  16. data/lib/vime/providers/youtube.rb +27 -0
  17. data/lib/vime/ui/captions.rb +23 -0
  18. data/lib/vime/ui/click_to_play.rb +21 -0
  19. data/lib/vime/ui/controls/caption_control.rb +33 -0
  20. data/lib/vime/ui/controls/control.rb +35 -0
  21. data/lib/vime/ui/controls/control_group.rb +23 -0
  22. data/lib/vime/ui/controls/control_spacer.rb +15 -0
  23. data/lib/vime/ui/controls/controls.rb +43 -0
  24. data/lib/vime/ui/controls/default_controls.rb +29 -0
  25. data/lib/vime/ui/controls/fullscreen_control.rb +33 -0
  26. data/lib/vime/ui/controls/mute_control.rb +35 -0
  27. data/lib/vime/ui/controls/pip_control.rb +33 -0
  28. data/lib/vime/ui/controls/playback_control.rb +33 -0
  29. data/lib/vime/ui/controls/scrubber_control.rb +27 -0
  30. data/lib/vime/ui/controls/settings_control.rb +31 -0
  31. data/lib/vime/ui/controls/volume_control.rb +37 -0
  32. data/lib/vime/ui/dbl_click_fullscreen.rb +21 -0
  33. data/lib/vime/ui/default_ui.rb +37 -0
  34. data/lib/vime/ui/icon.rb +21 -0
  35. data/lib/vime/ui/icons.rb +21 -0
  36. data/lib/vime/ui/live_indicator.rb +13 -0
  37. data/lib/vime/ui/poster.rb +21 -0
  38. data/lib/vime/ui/scrim.rb +21 -0
  39. data/lib/vime/ui/settings/default_settings.rb +23 -0
  40. data/lib/vime/ui/settings/menu.rb +27 -0
  41. data/lib/vime/ui/settings/menu_item.rb +39 -0
  42. data/lib/vime/ui/settings/menu_radio.rb +31 -0
  43. data/lib/vime/ui/settings/menu_radio_group.rb +23 -0
  44. data/lib/vime/ui/settings/settings.rb +27 -0
  45. data/lib/vime/ui/settings/submenu.rb +29 -0
  46. data/lib/vime/ui/skeleton.rb +21 -0
  47. data/lib/vime/ui/slider.rb +31 -0
  48. data/lib/vime/ui/spinner.rb +13 -0
  49. data/lib/vime/ui/time/current_time.rb +23 -0
  50. data/lib/vime/ui/time/end_time.rb +23 -0
  51. data/lib/vime/ui/time/time.rb +27 -0
  52. data/lib/vime/ui/time/time_progress.rb +25 -0
  53. data/lib/vime/ui/tooltip.rb +27 -0
  54. data/lib/vime/ui/ui.rb +13 -0
  55. data/lib/vime_view_components.rb +68 -0
  56. data/lib/vime_view_components/version.rb +5 -0
  57. metadata +204 -0
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ # @see https://vimejs.com/components/ui/spinner
4
+
5
+ module Vime
6
+ module Ui
7
+ class Spinner < Component
8
+ def call
9
+ tag "vime-spinner", process_attrs(dom_attrs)
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ # @see https://vimejs.com/components/ui/time/current-time
4
+
5
+ module Vime
6
+ module Ui
7
+ module Time
8
+ class CurrentTime < Component
9
+ option :always_show_hours, type: Types::Bool, default: -> { false }
10
+
11
+ def call
12
+ tag "vime-current-time", process_attrs(dom_attrs)
13
+ end
14
+
15
+ def dom_attrs
16
+ super.merge({
17
+ always_show_hours: always_show_hours,
18
+ })
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ # @see https://vimejs.com/components/ui/time/end-time
4
+
5
+ module Vime
6
+ module Ui
7
+ module Time
8
+ class EndTime < Component
9
+ option :always_show_hours, type: Types::Bool, default: -> { false }
10
+
11
+ def call
12
+ tag "vime-end-time", process_attrs(dom_attrs)
13
+ end
14
+
15
+ def dom_attrs
16
+ super.merge({
17
+ always_show_hours: always_show_hours,
18
+ })
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ # @see https://vimejs.com/components/ui/time/time
4
+
5
+ module Vime
6
+ module Ui
7
+ module Time
8
+ class Time < Component
9
+ option :always_show_hours, type: Types::Bool, default: -> { false }
10
+ option :label, type: Types::String
11
+ option :seconds, type: Types::Integer, default: -> { 0 }
12
+
13
+ def call
14
+ tag "vime-time", process_attrs(dom_attrs)
15
+ end
16
+
17
+ def dom_attrs
18
+ super.merge({
19
+ always_show_hours: always_show_hours,
20
+ label: label,
21
+ seconds: seconds,
22
+ })
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ # @see https://vimejs.com/components/ui/time/time-progress
4
+
5
+ module Vime
6
+ module Ui
7
+ module Time
8
+ class TimeProgress < Component
9
+ option :always_show_hours, type: Types::Bool, default: -> { false }
10
+ option :separator, type: Types::String, default: -> { "/" }
11
+
12
+ def call
13
+ tag "vime-time-progress", process_attrs(dom_attrs)
14
+ end
15
+
16
+ def dom_attrs
17
+ super.merge({
18
+ always_show_hours: always_show_hours,
19
+ separator: separator,
20
+ })
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ # @see https://vimejs.com/components/ui/tooltip
4
+
5
+ module Vime
6
+ module Ui
7
+ class Tooltip < Component
8
+ option :active, type: Types::Bool, default: -> { false }
9
+ option :direction, type: Types::String.enum("left", "right"), optional: true
10
+ option :hidden, type: Types::Bool, default: -> { false }
11
+ option :position, type: Types::String.enum("top", "bottom"), default: -> { "top" }
12
+
13
+ def call
14
+ content_tag "vime-tooltip", content, process_attrs(dom_attrs)
15
+ end
16
+
17
+ def dom_attrs
18
+ super.merge({
19
+ active: active,
20
+ direction: direction,
21
+ hidden: hidden,
22
+ position: position,
23
+ })
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ # @see https://vimejs.com/components/ui/ui
4
+
5
+ module Vime
6
+ module Ui
7
+ class Ui < Component
8
+ def call
9
+ content_tag "vime-ui", content, process_attrs(dom_attrs)
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,68 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "dry-initializer"
4
+ require "dry-types"
5
+ require "rails"
6
+ require "view_component"
7
+
8
+ require "vime/component"
9
+
10
+ require "vime/core/embed"
11
+ require "vime/core/player"
12
+ require "vime/core/playground"
13
+
14
+ require "vime/providers/audio"
15
+ require "vime/providers/dailymotion"
16
+ require "vime/providers/dash"
17
+ require "vime/providers/file"
18
+ require "vime/providers/hls"
19
+ require "vime/providers/video"
20
+ require "vime/providers/vimeo"
21
+ require "vime/providers/youtube"
22
+
23
+ require "vime/ui/controls/caption_control"
24
+ require "vime/ui/controls/control"
25
+ require "vime/ui/controls/control_group"
26
+ require "vime/ui/controls/control_spacer"
27
+ require "vime/ui/controls/controls"
28
+ require "vime/ui/controls/default_controls"
29
+ require "vime/ui/controls/fullscreen_control"
30
+ require "vime/ui/controls/mute_control"
31
+ require "vime/ui/controls/pip_control"
32
+ require "vime/ui/controls/playback_control"
33
+ require "vime/ui/controls/scrubber_control"
34
+ require "vime/ui/controls/settings_control"
35
+ require "vime/ui/controls/volume_control"
36
+
37
+ require "vime/ui/time/current_time"
38
+ require "vime/ui/time/end_time"
39
+ require "vime/ui/time/time"
40
+ require "vime/ui/time/time_progress"
41
+
42
+ require "vime/ui/settings/default_settings"
43
+ require "vime/ui/settings/menu"
44
+ require "vime/ui/settings/menu_item"
45
+ require "vime/ui/settings/menu_radio"
46
+ require "vime/ui/settings/menu_radio_group"
47
+ require "vime/ui/settings/settings"
48
+ require "vime/ui/settings/submenu"
49
+
50
+ require "vime/ui/captions"
51
+ require "vime/ui/click_to_play"
52
+ require "vime/ui/dbl_click_fullscreen"
53
+ require "vime/ui/default_ui"
54
+ require "vime/ui/icon"
55
+ require "vime/ui/icons"
56
+ require "vime/ui/live_indicator"
57
+ require "vime/ui/poster"
58
+ require "vime/ui/scrim"
59
+ require "vime/ui/skeleton"
60
+ require "vime/ui/slider"
61
+ require "vime/ui/spinner"
62
+ require "vime/ui/tooltip"
63
+ require "vime/ui/ui"
64
+
65
+ require "vime_view_components/version"
66
+
67
+ module VimeViewComponents
68
+ end
@@ -0,0 +1,5 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VimeViewComponents
4
+ VERSION = "0.1.0"
5
+ end
metadata ADDED
@@ -0,0 +1,204 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: vime_view_components
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Asger Behncke Jacobsen
8
+ - Tomas Celizna
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2020-11-16 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: dry-initializer
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - "~>"
19
+ - !ruby/object:Gem::Version
20
+ version: '3.0'
21
+ type: :runtime
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - "~>"
26
+ - !ruby/object:Gem::Version
27
+ version: '3.0'
28
+ - !ruby/object:Gem::Dependency
29
+ name: dry-types
30
+ requirement: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - "~>"
33
+ - !ruby/object:Gem::Version
34
+ version: '1.4'
35
+ type: :runtime
36
+ prerelease: false
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - "~>"
40
+ - !ruby/object:Gem::Version
41
+ version: '1.4'
42
+ - !ruby/object:Gem::Dependency
43
+ name: view_component
44
+ requirement: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - ">="
47
+ - !ruby/object:Gem::Version
48
+ version: 2.0.0
49
+ - - "<"
50
+ - !ruby/object:Gem::Version
51
+ version: '3.0'
52
+ type: :runtime
53
+ prerelease: false
54
+ version_requirements: !ruby/object:Gem::Requirement
55
+ requirements:
56
+ - - ">="
57
+ - !ruby/object:Gem::Version
58
+ version: 2.0.0
59
+ - - "<"
60
+ - !ruby/object:Gem::Version
61
+ version: '3.0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: minitest
64
+ requirement: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '5.14'
69
+ type: :development
70
+ prerelease: false
71
+ version_requirements: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '5.14'
76
+ - !ruby/object:Gem::Dependency
77
+ name: minitest-reporters
78
+ requirement: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ type: :development
84
+ prerelease: false
85
+ version_requirements: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ - !ruby/object:Gem::Dependency
91
+ name: nokogiri
92
+ requirement: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ type: :development
98
+ prerelease: false
99
+ version_requirements: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ - !ruby/object:Gem::Dependency
105
+ name: rubocop-rails_config
106
+ requirement: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ type: :development
112
+ prerelease: false
113
+ version_requirements: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ description: ViewComponents for vime.js
119
+ email:
120
+ - a@asgerbehnckejacobsen.dk
121
+ - mail@tomascelizna.com
122
+ executables: []
123
+ extensions: []
124
+ extra_rdoc_files: []
125
+ files:
126
+ - MIT-LICENSE
127
+ - README.md
128
+ - Rakefile
129
+ - lib/vime/component.rb
130
+ - lib/vime/core/embed.rb
131
+ - lib/vime/core/player.rb
132
+ - lib/vime/core/playground.rb
133
+ - lib/vime/providers/audio.rb
134
+ - lib/vime/providers/dailymotion.rb
135
+ - lib/vime/providers/dash.rb
136
+ - lib/vime/providers/file.rb
137
+ - lib/vime/providers/hls.rb
138
+ - lib/vime/providers/video.rb
139
+ - lib/vime/providers/vimeo.rb
140
+ - lib/vime/providers/youtube.rb
141
+ - lib/vime/ui/captions.rb
142
+ - lib/vime/ui/click_to_play.rb
143
+ - lib/vime/ui/controls/caption_control.rb
144
+ - lib/vime/ui/controls/control.rb
145
+ - lib/vime/ui/controls/control_group.rb
146
+ - lib/vime/ui/controls/control_spacer.rb
147
+ - lib/vime/ui/controls/controls.rb
148
+ - lib/vime/ui/controls/default_controls.rb
149
+ - lib/vime/ui/controls/fullscreen_control.rb
150
+ - lib/vime/ui/controls/mute_control.rb
151
+ - lib/vime/ui/controls/pip_control.rb
152
+ - lib/vime/ui/controls/playback_control.rb
153
+ - lib/vime/ui/controls/scrubber_control.rb
154
+ - lib/vime/ui/controls/settings_control.rb
155
+ - lib/vime/ui/controls/volume_control.rb
156
+ - lib/vime/ui/dbl_click_fullscreen.rb
157
+ - lib/vime/ui/default_ui.rb
158
+ - lib/vime/ui/icon.rb
159
+ - lib/vime/ui/icons.rb
160
+ - lib/vime/ui/live_indicator.rb
161
+ - lib/vime/ui/poster.rb
162
+ - lib/vime/ui/scrim.rb
163
+ - lib/vime/ui/settings/default_settings.rb
164
+ - lib/vime/ui/settings/menu.rb
165
+ - lib/vime/ui/settings/menu_item.rb
166
+ - lib/vime/ui/settings/menu_radio.rb
167
+ - lib/vime/ui/settings/menu_radio_group.rb
168
+ - lib/vime/ui/settings/settings.rb
169
+ - lib/vime/ui/settings/submenu.rb
170
+ - lib/vime/ui/skeleton.rb
171
+ - lib/vime/ui/slider.rb
172
+ - lib/vime/ui/spinner.rb
173
+ - lib/vime/ui/time/current_time.rb
174
+ - lib/vime/ui/time/end_time.rb
175
+ - lib/vime/ui/time/time.rb
176
+ - lib/vime/ui/time/time_progress.rb
177
+ - lib/vime/ui/tooltip.rb
178
+ - lib/vime/ui/ui.rb
179
+ - lib/vime_view_components.rb
180
+ - lib/vime_view_components/version.rb
181
+ homepage: https://github.com/asgerb/vime_view_components
182
+ licenses:
183
+ - MIT
184
+ metadata: {}
185
+ post_install_message:
186
+ rdoc_options: []
187
+ require_paths:
188
+ - lib
189
+ required_ruby_version: !ruby/object:Gem::Requirement
190
+ requirements:
191
+ - - ">="
192
+ - !ruby/object:Gem::Version
193
+ version: '0'
194
+ required_rubygems_version: !ruby/object:Gem::Requirement
195
+ requirements:
196
+ - - ">="
197
+ - !ruby/object:Gem::Version
198
+ version: '0'
199
+ requirements: []
200
+ rubygems_version: 3.0.3
201
+ signing_key:
202
+ specification_version: 4
203
+ summary: ViewComponents for vime.js
204
+ test_files: []