rabbet 0.0.1 → 0.0.3
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.
- checksums.yaml +4 -4
- data/Rakefile +6 -3
- data/app/assets/stylesheets/rabbet/_topbar.scss +7 -9
- data/app/helpers/rabbet/views/helpers.rb +35 -0
- data/docs/README.md +9 -0
- data/lib/rabbet/engine.rb +3 -0
- data/lib/rabbet/version.rb +1 -1
- data/lib/rabbet/views.rb +16 -0
- data/lib/rabbet.rb +2 -0
- metadata +7 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 79aa8c3ed6f45d0b3260c1207bc8755596fe8590732a0cbe18fe54e7e169f661
|
4
|
+
data.tar.gz: e7cb567498a596937e8e28aeaeac645c6e0d63e26f2588c38d2df9e482cccdab
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0f906478f205c7189349542d2b29fa9c144b45deda53a2bb0bc655c2840103f041fa9f718b5b03db8f50568af02c7cfd1061c7af00b04d338d22f8dbe35bb6fe
|
7
|
+
data.tar.gz: 2827cd61b4a4627e98346ccaa3a7c5d62d45da1cae9d7cc57c2c49035b5c767b730250abc9729aee0358708dda941c1ac78d6a096dfa65629acbb758fd081c17
|
data/Rakefile
CHANGED
@@ -1,8 +1,11 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require
|
4
|
-
require 'rspec/core/rake_task'
|
3
|
+
require "bundler/gem_tasks"
|
5
4
|
|
5
|
+
require "rspec/core/rake_task"
|
6
6
|
RSpec::Core::RakeTask.new(:spec)
|
7
7
|
|
8
|
-
|
8
|
+
require "rubocop/rake_task"
|
9
|
+
RuboCop::RakeTask.new(:rubocop)
|
10
|
+
|
11
|
+
task default: %i[rubocop spec]
|
@@ -12,7 +12,13 @@ body {
|
|
12
12
|
align-items: center;
|
13
13
|
|
14
14
|
&-left, &-center, &-right {
|
15
|
-
|
15
|
+
display: flex;
|
16
|
+
flex-basis: 33.3%;
|
17
|
+
position: static;
|
18
|
+
padding: 12px;
|
19
|
+
color: #FFFFFF;
|
20
|
+
margin: 2px;
|
21
|
+
align-items: center;
|
16
22
|
}
|
17
23
|
|
18
24
|
&-left {
|
@@ -34,12 +40,4 @@ body {
|
|
34
40
|
.muted {
|
35
41
|
display: none;
|
36
42
|
}
|
37
|
-
|
38
|
-
& * {
|
39
|
-
max-height: 50px;
|
40
|
-
color: #FFFFFF;
|
41
|
-
display: flex;
|
42
|
-
margin: 2px;
|
43
|
-
align-items: center;
|
44
|
-
}
|
45
43
|
}
|
@@ -0,0 +1,35 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Rabbet
|
4
|
+
module Views
|
5
|
+
# View helpers -- currently used to help facilitate view injection
|
6
|
+
module Helpers
|
7
|
+
# Execute all registered view content injectors passing
|
8
|
+
# a context hash with information that is currently provided
|
9
|
+
# by the UIState#current_user.
|
10
|
+
#
|
11
|
+
# @param [Hash] context a hash with useful information that can be accessed by injectors.
|
12
|
+
#
|
13
|
+
def apply_injected_content(context:)
|
14
|
+
Rabbet::Views.injectors.each do |section, injector|
|
15
|
+
next if injector_is_nil?(section, injector)
|
16
|
+
|
17
|
+
view_context = instance_exec(context, &injector)
|
18
|
+
|
19
|
+
next if view_context.nil?
|
20
|
+
|
21
|
+
# Avoid duplicate injector payloads
|
22
|
+
next if content_for?(section) && @view_flow.get(section).include?(view_context)
|
23
|
+
|
24
|
+
# Evaluates the content generator block within
|
25
|
+
# the current view's context
|
26
|
+
content_for section, view_context
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
def injector_is_nil?(section, injector)
|
31
|
+
section.nil? || injector.nil?
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
data/docs/README.md
CHANGED
@@ -30,6 +30,15 @@ require "rabbet"
|
|
30
30
|
@import "rabbet";
|
31
31
|
```
|
32
32
|
|
33
|
+
1. Include the view helpers to help with injection
|
34
|
+
|
35
|
+
```ruby
|
36
|
+
# application_helper.rb
|
37
|
+
|
38
|
+
include Rabbet::Views::Helpers
|
39
|
+
|
40
|
+
```
|
41
|
+
|
33
42
|
## Usage 🐇
|
34
43
|
|
35
44
|
You can find a list of available pieces in [app/views/rabbet](https://github.com/powerhome/power-tools/blob/main/packages/rabbet/app/views/rabbet/). If, for example, you'd like to add the topbar to your application, you can view the injectible pieces in [that specific file](https://github.com/powerhome/power-tools/blob/main/packages/rabbet/app/views/rabbet/_topbar.html.erb). In topbar, pieces that are injectible include:
|
data/lib/rabbet/engine.rb
CHANGED
data/lib/rabbet/version.rb
CHANGED
data/lib/rabbet/views.rb
ADDED
data/lib/rabbet.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rabbet
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Carlos Palhares
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2023-01-12 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: cygnet
|
@@ -219,15 +219,18 @@ files:
|
|
219
219
|
- Rakefile
|
220
220
|
- app/assets/stylesheets/rabbet.scss
|
221
221
|
- app/assets/stylesheets/rabbet/_topbar.scss
|
222
|
+
- app/helpers/rabbet/views/helpers.rb
|
222
223
|
- app/views/rabbet/_topbar.html.erb
|
223
224
|
- docs/README.md
|
224
225
|
- lib/rabbet.rb
|
225
226
|
- lib/rabbet/engine.rb
|
226
227
|
- lib/rabbet/version.rb
|
228
|
+
- lib/rabbet/views.rb
|
227
229
|
homepage: https://github.com/powerhome/power-tools
|
228
230
|
licenses:
|
229
231
|
- MIT
|
230
|
-
metadata:
|
232
|
+
metadata:
|
233
|
+
rubygems_mfa_required: 'true'
|
231
234
|
post_install_message:
|
232
235
|
rdoc_options: []
|
233
236
|
require_paths:
|
@@ -243,7 +246,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
243
246
|
- !ruby/object:Gem::Version
|
244
247
|
version: '0'
|
245
248
|
requirements: []
|
246
|
-
rubygems_version: 3.
|
249
|
+
rubygems_version: 3.4.1
|
247
250
|
signing_key:
|
248
251
|
specification_version: 4
|
249
252
|
summary: A ruby-based visual application layout
|