hud 2.4.0 → 2.6.0
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/lib/hud/version.rb +1 -1
- data/lib/hud.rb +30 -10
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7bbb2c2c8a520111decb888ab0ae02bc5811203e3b2e0447b9019de03757e149
|
4
|
+
data.tar.gz: 63bf018b8fe9e6274a57dd891db4efe6b5de57a07b06928a1cf1a539fa15ab56
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 39374ac6630da23c9f7173a2f3317ee9efe1b8b4c657c80fad29ba87fb5aa365980a93ef9cf3cbe9902c138d5ed13996e27a871004dd80abfed0b8cf98d0e35e
|
7
|
+
data.tar.gz: 762d25bc32700fdbad514b18d6e825414c668cf8207ef000829eebd58aa4f43e0108807fc4511f313b7ba2bad23e8e71ecc4905fa9283a1bc892565cccd5e9b8
|
data/lib/hud/version.rb
CHANGED
data/lib/hud.rb
CHANGED
@@ -84,9 +84,9 @@ module Hud
|
|
84
84
|
|
85
85
|
class Display
|
86
86
|
module Helpers
|
87
|
-
def display(name, from: nil, locals: {}
|
87
|
+
def display(name, from: nil, locals: {})
|
88
88
|
klz = Display.build(name)
|
89
|
-
klz.call(locals: locals).render_template(name: name, locals: @locals, from: from
|
89
|
+
klz.call(locals: locals).render_template(name: name, locals: @locals, from: from)
|
90
90
|
end
|
91
91
|
alias_method :render, :display
|
92
92
|
alias_method :d, :display
|
@@ -104,7 +104,18 @@ module Hud
|
|
104
104
|
attr_reader :locals
|
105
105
|
attr_reader :content
|
106
106
|
alias_method :args, :locals
|
107
|
-
|
107
|
+
|
108
|
+
class HtmlContent
|
109
|
+
def initialize(content)
|
110
|
+
@content = content
|
111
|
+
end
|
112
|
+
def to_s
|
113
|
+
@content
|
114
|
+
end
|
115
|
+
def css(selector)
|
116
|
+
Oga.parse_html(@content).css(selector).text
|
117
|
+
end
|
118
|
+
end
|
108
119
|
|
109
120
|
def folders
|
110
121
|
Hud.configuration.components_dirs
|
@@ -114,12 +125,23 @@ module Hud
|
|
114
125
|
ENV["RACK_ENV"] == "development"
|
115
126
|
end
|
116
127
|
|
128
|
+
def method_missing(method_name, *args, &block)
|
129
|
+
if @locals.respond_to?(method_name)
|
130
|
+
@locals.send(method_name, *args, &block)
|
131
|
+
else
|
132
|
+
super
|
133
|
+
end
|
134
|
+
|
135
|
+
end
|
136
|
+
|
137
|
+
def respond_to_missing?(method_name, include_private = false)
|
138
|
+
@locals.respond_to?(method_name) || super
|
139
|
+
end
|
117
140
|
|
118
141
|
def display(name, locals: {},css:nil)
|
119
142
|
template = Tilt::ERBTemplate.new("#{Hud.configuration.base_path}/components/#{name.to_s}.html.erb")
|
120
143
|
result = template.render(self, locals)
|
121
|
-
return
|
122
|
-
result
|
144
|
+
return HtmlContent.new(result)
|
123
145
|
end
|
124
146
|
|
125
147
|
alias_method :render, :display
|
@@ -138,7 +160,7 @@ module Hud
|
|
138
160
|
new(locals: locals)
|
139
161
|
end
|
140
162
|
|
141
|
-
def render_template(name: nil, from: nil, locals: {}
|
163
|
+
def render_template(name: nil, from: nil, locals: {})
|
142
164
|
name ||= self.class.to_s.downcase.gsub("::", "_")
|
143
165
|
|
144
166
|
base_path = Pathname.new(Rack::App::Utils.pwd)
|
@@ -159,13 +181,11 @@ module Hud
|
|
159
181
|
puts path
|
160
182
|
if from.nil?
|
161
183
|
result = template.render(self, locals)
|
162
|
-
return
|
163
|
-
return result
|
184
|
+
return HtmlContent.new(result)
|
164
185
|
else
|
165
186
|
from_path = base_path.join(from, "components")
|
166
187
|
result = template.render(self, locals)
|
167
|
-
return
|
168
|
-
return result if path.to_path.start_with? from_path.to_s
|
188
|
+
return HtmlContent.new(result) if path.to_path.start_with? from_path.to_s
|
169
189
|
end
|
170
190
|
|
171
191
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hud
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Delaney Kuldvee Burke
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-02-
|
11
|
+
date: 2024-02-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|