glimmer-dsl-web 0.2.6 → 0.2.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,87 @@
1
+ require 'glimmer-dsl-web'
2
+
3
+ require_relative 'todo_mvc/presenters/todo_presenter'
4
+
5
+ require_relative 'todo_mvc/views/new_todo_form'
6
+ require_relative 'todo_mvc/views/todo_list'
7
+ require_relative 'todo_mvc/views/todo_filters'
8
+ require_relative 'todo_mvc/views/todo_mvc_footer'
9
+
10
+ class TodoMvc
11
+ include Glimmer::Web::Component
12
+
13
+ before_render do
14
+ @presenter = TodoPresenter.new
15
+ end
16
+
17
+ after_render do
18
+ @presenter.setup_filter_routes
19
+ end
20
+
21
+ markup {
22
+ div(class: 'todomvc') {
23
+ section(class: 'todoapp') {
24
+ new_todo_form(presenter: @presenter)
25
+
26
+ todo_list(presenter: @presenter)
27
+
28
+ todo_filters(presenter: @presenter)
29
+
30
+ style {
31
+ todo_mvc_styles
32
+ }
33
+ }
34
+
35
+ todo_mvc_footer
36
+
37
+ on_remove do
38
+ @presenter.unsetup_filter_routes
39
+ end
40
+ }
41
+ }
42
+
43
+ def todo_mvc_styles
44
+ rule('body, button, html') {
45
+ margin '0'
46
+ padding '0'
47
+ }
48
+
49
+ rule('button') {
50
+ _webkit_font_smoothing 'antialiased'
51
+ _webkit_appearance 'none'
52
+ appearance 'none'
53
+ background 'none'
54
+ border '0'
55
+ color 'inherit'
56
+ font_family 'inherit'
57
+ font_size '100%'
58
+ font_weight 'inherit'
59
+ vertical_align 'baseline'
60
+ }
61
+
62
+ rule('.todoapp') {
63
+ background '#fff'
64
+ margin '130px 0 40px 0'
65
+ position 'relative'
66
+ box_shadow '0 2px 4px 0 rgba(0, 0, 0, 0.2), 0 25px 50px 0 rgba(0, 0, 0, 0.1)'
67
+ }
68
+
69
+ media('screen and (-webkit-min-device-pixel-ratio:0)') {
70
+ rule('body') {
71
+ font "14px 'Helvetica Neue', Helvetica, Arial, sans-serif"
72
+ line_height '1.4em'
73
+ background '#f5f5f5'
74
+ color '#111111'
75
+ min_width '230px'
76
+ max_width '550px'
77
+ margin '0 auto'
78
+ _webkit_font_smoothing 'antialiased'
79
+ font_weight '300'
80
+ }
81
+ }
82
+ end
83
+ end
84
+
85
+ Document.ready? do
86
+ TodoMvc.render
87
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: glimmer-dsl-web
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.6
4
+ version: 0.2.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andy Maleh
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-05-26 00:00:00.000000000 Z
11
+ date: 2024-06-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: glimmer
@@ -134,14 +134,14 @@ dependencies:
134
134
  requirements:
135
135
  - - ">="
136
136
  - !ruby/object:Gem::Version
137
- version: '0'
137
+ version: 1.0.0
138
138
  type: :development
139
139
  prerelease: false
140
140
  version_requirements: !ruby/object:Gem::Requirement
141
141
  requirements:
142
142
  - - ">="
143
143
  - !ruby/object:Gem::Version
144
- version: '0'
144
+ version: 1.0.0
145
145
  - !ruby/object:Gem::Dependency
146
146
  name: rake
147
147
  requirement: !ruby/object:Gem::Requirement
@@ -281,9 +281,21 @@ files:
281
281
  - lib/glimmer-dsl-web/samples/hello/hello_paragraph.rb
282
282
  - lib/glimmer-dsl-web/samples/hello/hello_world.rb
283
283
  - lib/glimmer-dsl-web/samples/regular/button_counter.rb
284
+ - lib/glimmer-dsl-web/samples/regular/todo_mvc.rb
285
+ - lib/glimmer-dsl-web/samples/regular/todo_mvc/models/todo.rb
286
+ - lib/glimmer-dsl-web/samples/regular/todo_mvc/presenters/todo_presenter.rb
287
+ - lib/glimmer-dsl-web/samples/regular/todo_mvc/views/edit_todo_input.rb
288
+ - lib/glimmer-dsl-web/samples/regular/todo_mvc/views/new_todo_form.rb
289
+ - lib/glimmer-dsl-web/samples/regular/todo_mvc/views/new_todo_input.rb
290
+ - lib/glimmer-dsl-web/samples/regular/todo_mvc/views/todo_filters.rb
291
+ - lib/glimmer-dsl-web/samples/regular/todo_mvc/views/todo_input.rb
292
+ - lib/glimmer-dsl-web/samples/regular/todo_mvc/views/todo_list.rb
293
+ - lib/glimmer-dsl-web/samples/regular/todo_mvc/views/todo_list_item.rb
294
+ - lib/glimmer-dsl-web/samples/regular/todo_mvc/views/todo_mvc_footer.rb
284
295
  - lib/glimmer-dsl-web/vendor/jquery.js
285
296
  - lib/glimmer/config/opal_logger.rb
286
297
  - lib/glimmer/data_binding/element_binding.rb
298
+ - lib/glimmer/dsl/web/a_expression.rb
287
299
  - lib/glimmer/dsl/web/bind_expression.rb
288
300
  - lib/glimmer/dsl/web/component_expression.rb
289
301
  - lib/glimmer/dsl/web/content_data_binding_expression.rb
@@ -325,7 +337,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
325
337
  - !ruby/object:Gem::Version
326
338
  version: '0'
327
339
  requirements: []
328
- rubygems_version: 3.5.3
340
+ rubygems_version: 3.4.10
329
341
  signing_key:
330
342
  specification_version: 4
331
343
  summary: Glimmer DSL for Web (Ruby in the Browser Web Frontend Framework)