amber_component 0.0.2 → 0.0.4

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.
Files changed (76) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +1 -1
  3. data/.ruby-gemset +1 -0
  4. data/.ruby-version +1 -1
  5. data/.solargraph.yml +1 -2
  6. data/CONTRIBUTING.md +87 -0
  7. data/Gemfile +4 -1
  8. data/Gemfile.lock +24 -99
  9. data/README.md +25 -42
  10. data/Rakefile +17 -1
  11. data/amber_component.gemspec +4 -2
  12. data/banner.png +0 -0
  13. data/docs/.bundle/config +2 -0
  14. data/docs/.gitignore +5 -0
  15. data/docs/404.html +25 -0
  16. data/docs/Gemfile +37 -0
  17. data/docs/Gemfile.lock +89 -0
  18. data/docs/README.md +19 -0
  19. data/docs/_config.yml +148 -0
  20. data/docs/_data/amber_component.yml +3 -0
  21. data/docs/_sass/_variables.scss +2 -0
  22. data/docs/_sass/color_schemes/amber_component.scss +11 -0
  23. data/docs/_sass/custom/custom.scss +60 -0
  24. data/docs/api/index.md +8 -0
  25. data/docs/assets/images/logo_wide.png +0 -0
  26. data/docs/changelog/index.md +8 -0
  27. data/docs/favicon.ico +0 -0
  28. data/docs/getting_started/index.md +8 -0
  29. data/docs/getting_started/installation.md +7 -0
  30. data/docs/getting_started/ruby_support.md +7 -0
  31. data/docs/getting_started/wireframes.md +7 -0
  32. data/docs/index.md +17 -0
  33. data/docs/introduction/basic_usage.md +7 -0
  34. data/docs/introduction/index.md +8 -0
  35. data/docs/introduction/why_amber_component.md +7 -0
  36. data/docs/resources/index.md +8 -0
  37. data/docs/styles/index.md +8 -0
  38. data/docs/styles/usage.md +7 -0
  39. data/docs/views/index.md +8 -0
  40. data/docs/views/usage.md +7 -0
  41. data/icon.png +0 -0
  42. data/lib/amber_component/assets.rb +59 -0
  43. data/lib/amber_component/base.rb +85 -434
  44. data/lib/amber_component/helpers/class_helper.rb +22 -0
  45. data/lib/amber_component/helpers/component_helper.rb +19 -0
  46. data/lib/amber_component/helpers/css_helper.rb +25 -0
  47. data/lib/amber_component/helpers.rb +11 -0
  48. data/lib/amber_component/prop_definition.rb +54 -0
  49. data/lib/amber_component/props.rb +111 -0
  50. data/lib/amber_component/railtie.rb +21 -0
  51. data/lib/amber_component/rendering.rb +53 -0
  52. data/lib/amber_component/template_handler/erb.rb +17 -0
  53. data/lib/amber_component/template_handler.rb +26 -0
  54. data/lib/amber_component/typed_content.rb +3 -3
  55. data/lib/amber_component/version.rb +1 -1
  56. data/lib/amber_component/views.rb +198 -0
  57. data/lib/amber_component.rb +14 -11
  58. data/lib/generators/amber_component/install_generator.rb +23 -0
  59. data/lib/generators/amber_component/templates/application_component.rb +13 -0
  60. data/lib/generators/amber_component_generator.rb +24 -0
  61. data/lib/generators/templates/component.rb.erb +9 -0
  62. data/lib/generators/templates/component_test.rb.erb +9 -0
  63. data/lib/generators/templates/style.css.erb +3 -0
  64. data/lib/generators/templates/view.html.erb +3 -0
  65. metadata +87 -19
  66. data/.kanbn/index.md +0 -23
  67. data/.kanbn/tasks/add-instance-variables-to-view-when-block-given-markdown.md +0 -9
  68. data/.kanbn/tasks/bind-clas-to-action-view-method-call-example-component-data-data-without-calling-any-method.md +0 -9
  69. data/.kanbn/tasks/bind-scoped-css-to-head-of-doc.md +0 -10
  70. data/.kanbn/tasks/check-if-we-need-full-rails-gem-pack.md +0 -9
  71. data/.kanbn/tasks/simple-proto.md +0 -10
  72. data/.kanbn/tasks/verify-if-template-is-haml-or-erb.md +0 -9
  73. data/PLANS.md +0 -17
  74. data/lib/amber_component/helper.rb +0 -8
  75. data/lib/amber_component/style_injector.rb +0 -52
  76. data/sig/amber_components.rbs +0 -4
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: amber_component
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ruby-Amber
@@ -10,24 +10,38 @@ authors:
10
10
  autorequire:
11
11
  bindir: exe
12
12
  cert_chain: []
13
- date: 2022-07-27 00:00:00.000000000 Z
13
+ date: 2022-09-25 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
- name: memery
16
+ name: actionview
17
17
  requirement: !ruby/object:Gem::Requirement
18
18
  requirements:
19
19
  - - ">="
20
20
  - !ruby/object:Gem::Version
21
- version: 1.4.1
21
+ version: '6'
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
26
  - - ">="
27
27
  - !ruby/object:Gem::Version
28
- version: 1.4.1
28
+ version: '6'
29
+ - !ruby/object:Gem::Dependency
30
+ name: activemodel
31
+ requirement: !ruby/object:Gem::Requirement
32
+ requirements:
33
+ - - ">="
34
+ - !ruby/object:Gem::Version
35
+ version: '6'
36
+ type: :runtime
37
+ prerelease: false
38
+ version_requirements: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ version: '6'
29
43
  - !ruby/object:Gem::Dependency
30
- name: rails
44
+ name: activesupport
31
45
  requirement: !ruby/object:Gem::Requirement
32
46
  requirements:
33
47
  - - ">="
@@ -40,6 +54,20 @@ dependencies:
40
54
  - - ">="
41
55
  - !ruby/object:Gem::Version
42
56
  version: '6'
57
+ - !ruby/object:Gem::Dependency
58
+ name: memery
59
+ requirement: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ version: 1.4.1
64
+ type: :runtime
65
+ prerelease: false
66
+ version_requirements: !ruby/object:Gem::Requirement
67
+ requirements:
68
+ - - ">="
69
+ - !ruby/object:Gem::Version
70
+ version: 1.4.1
43
71
  - !ruby/object:Gem::Dependency
44
72
  name: tilt
45
73
  requirement: !ruby/object:Gem::Requirement
@@ -66,31 +94,71 @@ executables: []
66
94
  extensions: []
67
95
  extra_rdoc_files: []
68
96
  files:
69
- - ".kanbn/index.md"
70
- - ".kanbn/tasks/add-instance-variables-to-view-when-block-given-markdown.md"
71
- - ".kanbn/tasks/bind-clas-to-action-view-method-call-example-component-data-data-without-calling-any-method.md"
72
- - ".kanbn/tasks/bind-scoped-css-to-head-of-doc.md"
73
- - ".kanbn/tasks/check-if-we-need-full-rails-gem-pack.md"
74
- - ".kanbn/tasks/simple-proto.md"
75
- - ".kanbn/tasks/verify-if-template-is-haml-or-erb.md"
76
97
  - ".rubocop.yml"
98
+ - ".ruby-gemset"
77
99
  - ".ruby-version"
78
100
  - ".solargraph.yml"
79
101
  - CHANGELOG.md
102
+ - CONTRIBUTING.md
80
103
  - Gemfile
81
104
  - Gemfile.lock
82
105
  - LICENSE
83
- - PLANS.md
84
106
  - README.md
85
107
  - Rakefile
86
108
  - amber_component.gemspec
109
+ - banner.png
110
+ - docs/.bundle/config
111
+ - docs/.gitignore
112
+ - docs/404.html
113
+ - docs/Gemfile
114
+ - docs/Gemfile.lock
115
+ - docs/README.md
116
+ - docs/_config.yml
117
+ - docs/_data/amber_component.yml
118
+ - docs/_sass/_variables.scss
119
+ - docs/_sass/color_schemes/amber_component.scss
120
+ - docs/_sass/custom/custom.scss
121
+ - docs/api/index.md
122
+ - docs/assets/images/logo_wide.png
123
+ - docs/changelog/index.md
124
+ - docs/favicon.ico
125
+ - docs/getting_started/index.md
126
+ - docs/getting_started/installation.md
127
+ - docs/getting_started/ruby_support.md
128
+ - docs/getting_started/wireframes.md
129
+ - docs/index.md
130
+ - docs/introduction/basic_usage.md
131
+ - docs/introduction/index.md
132
+ - docs/introduction/why_amber_component.md
133
+ - docs/resources/index.md
134
+ - docs/styles/index.md
135
+ - docs/styles/usage.md
136
+ - docs/views/index.md
137
+ - docs/views/usage.md
138
+ - icon.png
87
139
  - lib/amber_component.rb
140
+ - lib/amber_component/assets.rb
88
141
  - lib/amber_component/base.rb
89
- - lib/amber_component/helper.rb
90
- - lib/amber_component/style_injector.rb
142
+ - lib/amber_component/helpers.rb
143
+ - lib/amber_component/helpers/class_helper.rb
144
+ - lib/amber_component/helpers/component_helper.rb
145
+ - lib/amber_component/helpers/css_helper.rb
146
+ - lib/amber_component/prop_definition.rb
147
+ - lib/amber_component/props.rb
148
+ - lib/amber_component/railtie.rb
149
+ - lib/amber_component/rendering.rb
150
+ - lib/amber_component/template_handler.rb
151
+ - lib/amber_component/template_handler/erb.rb
91
152
  - lib/amber_component/typed_content.rb
92
153
  - lib/amber_component/version.rb
93
- - sig/amber_components.rbs
154
+ - lib/amber_component/views.rb
155
+ - lib/generators/amber_component/install_generator.rb
156
+ - lib/generators/amber_component/templates/application_component.rb
157
+ - lib/generators/amber_component_generator.rb
158
+ - lib/generators/templates/component.rb.erb
159
+ - lib/generators/templates/component_test.rb.erb
160
+ - lib/generators/templates/style.css.erb
161
+ - lib/generators/templates/view.html.erb
94
162
  homepage: https://github.com/amber-ruby/amber_component
95
163
  licenses:
96
164
  - MIT
@@ -106,14 +174,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
106
174
  requirements:
107
175
  - - ">="
108
176
  - !ruby/object:Gem::Version
109
- version: 2.6.0
177
+ version: 2.7.0
110
178
  required_rubygems_version: !ruby/object:Gem::Requirement
111
179
  requirements:
112
180
  - - ">="
113
181
  - !ruby/object:Gem::Version
114
182
  version: '0'
115
183
  requirements: []
116
- rubygems_version: 3.3.3
184
+ rubygems_version: 3.3.7
117
185
  signing_key:
118
186
  specification_version: 4
119
187
  summary: A simple component library which seamlessly hooks into your Rails project.
data/.kanbn/index.md DELETED
@@ -1,23 +0,0 @@
1
- ---
2
- startedColumns:
3
- - 'In Progress'
4
- completedColumns:
5
- - Done
6
- ---
7
-
8
- # Amber Components
9
-
10
- ## Backlog
11
-
12
- - [check-if-we-need-full-rails-gem-pack](tasks/check-if-we-need-full-rails-gem-pack.md)
13
- - [verify-if-template-is-haml-or-erb](tasks/verify-if-template-is-haml-or-erb.md)
14
- - [bind-clas-to-action-view-method-call-example-component-data-data-without-calling-any-method](tasks/bind-clas-to-action-view-method-call-example-component-data-data-without-calling-any-method.md)
15
- - [add-instance-variables-to-view-when-block-given-markdown](tasks/add-instance-variables-to-view-when-block-given-markdown.md)
16
-
17
- ## In Progress
18
-
19
- - [bind-scoped-css-to-head-of-doc](tasks/bind-scoped-css-to-head-of-doc.md)
20
-
21
- ## Done
22
-
23
- - [simple-proto](tasks/simple-proto.md)
@@ -1,9 +0,0 @@
1
- ---
2
- created: 2022-07-24T21:05:00.209Z
3
- updated: 2022-07-24T21:05:00.205Z
4
- assigned: ""
5
- progress: 0
6
- tags: []
7
- ---
8
-
9
- # Add instance variables to view when block given - markdown
@@ -1,9 +0,0 @@
1
- ---
2
- created: 2022-07-24T09:34:44.925Z
3
- updated: 2022-07-24T09:35:24.434Z
4
- assigned: ""
5
- progress: 0
6
- tags: []
7
- ---
8
-
9
- # bind clas to ActionView method (call ExampleComponent data: data - without calling any method)
@@ -1,10 +0,0 @@
1
- ---
2
- created: 2022-07-23T15:24:49.521Z
3
- updated: 2022-07-24T12:09:45.281Z
4
- assigned: ""
5
- progress: 0
6
- tags: []
7
- started: 2022-07-24T12:09:45.282Z
8
- ---
9
-
10
- # bind scoped css to head of doc
@@ -1,9 +0,0 @@
1
- ---
2
- created: 2022-07-23T15:23:43.278Z
3
- updated: 2022-07-23T15:23:43.275Z
4
- assigned: ""
5
- progress: 0
6
- tags: []
7
- ---
8
-
9
- # check if we need full rails gem pack
@@ -1,10 +0,0 @@
1
- ---
2
- created: 2022-07-23T15:23:22.133Z
3
- updated: 2022-07-24T09:34:38.629Z
4
- assigned: ""
5
- progress: 0
6
- tags: []
7
- completed: 2022-07-24T09:34:38.629Z
8
- ---
9
-
10
- # simple proto
@@ -1,9 +0,0 @@
1
- ---
2
- created: 2022-07-23T15:24:25.486Z
3
- updated: 2022-07-23T15:24:25.484Z
4
- assigned: ""
5
- progress: 0
6
- tags: []
7
- ---
8
-
9
- # verify if template is HAML or ERB
data/PLANS.md DELETED
@@ -1,17 +0,0 @@
1
- app
2
- |
3
- +-- components
4
- |
5
- +-- example_component.rb
6
- |
7
- +-- example_component
8
- |
9
- +-- view.(haml|erb)
10
- |
11
- +-- style.(scss|css)
12
- |
13
- +-- script.(coffee|js)
14
-
15
- 1.0 - actions, scoped styling views, js
16
- 0.5 - components libraries
17
- 0.1 - MVP - actions, views + nesting
@@ -1,8 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module ::AmberComponent
4
- # Contains methods for quickly rendering
5
- # components defined under the root namespace `Object`.
6
- module Helper
7
- end
8
- end
@@ -1,52 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'nokogiri'
4
-
5
- # Helper class for injecting styles into DOM.
6
- class ::AmberComponent::StyleInjector
7
- class << self
8
-
9
- # Injects styles into the DOM, or returns string if
10
- # DOM stucture is not available.
11
- #
12
- # @param style [String]
13
- # @return [String, nil]
14
- def inject(style)
15
- injector = new(style)
16
- injector.run
17
- end
18
- end
19
-
20
- # @param style [String]
21
- def initialize(style)
22
- @style = style
23
- end
24
-
25
- # @return [void]
26
- def run
27
- return dom_tag unless dom_available?
28
-
29
- insert_style_in_head
30
- nil
31
- end
32
-
33
- private
34
-
35
- # @return [Boolean]
36
- def dom_available?
37
- false
38
- # check for header in DOM rendrer
39
- end
40
-
41
- # @return [void]
42
- def insert_style_in_head
43
- false
44
- end
45
-
46
- # @return [String]
47
- def dom_tag
48
- <<~HTML
49
- <style type='text/css'>#{@style}</style>
50
- HTML
51
- end
52
- end
@@ -1,4 +0,0 @@
1
- module AmberComponent
2
- VERSION: String
3
- # See the writing guide of rbs: https://github.com/ruby/rbs#guides
4
- end