flora 0.9.1 → 0.10.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/README.md +7 -4
- data/lib/flora/config.rb +6 -1
- data/lib/flora/project.rb +2 -10
- data/lib/flora/version.rb +1 -1
- data/lib/flora.rb +9 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: f445572c3d4330b5d1e8f3d6ce42ef45cd11053e17cceee1cbcd0d8860430d2b
|
|
4
|
+
data.tar.gz: a02c49517eed09e56f8fcba6586646f4b566d78405fe78b61157c75aec8feb53
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 41e4980576a56a14e468b8d63bcf5cc344ca5ae54525c3676f8ec3a08d5049803fd22848cf0bd9b2472da3f87f2b587fc1773833c96d6d9ca3e0cf0070295469
|
|
7
|
+
data.tar.gz: 55f9466b3b93a5d39021403f9874b65cca0250dc47e68d353de8da7569edd71da9e9883c9b8268206cb3a01563bef161d246792410eb0781e76713e7ac0f8a59
|
data/README.md
CHANGED
|
@@ -33,10 +33,10 @@ Lilac is Flora's DSL for writing HTML. Tags are just methods named the same as t
|
|
|
33
33
|
Looking for a way to make reusable components? Write a function! For example:
|
|
34
34
|
|
|
35
35
|
```ruby
|
|
36
|
-
# lib/
|
|
37
|
-
|
|
36
|
+
# lib/my_helpers.rb
|
|
37
|
+
module MyHelpers
|
|
38
38
|
|
|
39
|
-
def
|
|
39
|
+
def cool_title(text)
|
|
40
40
|
div(class: 'title') do
|
|
41
41
|
h1 do
|
|
42
42
|
text
|
|
@@ -46,10 +46,13 @@ class CoolTitle
|
|
|
46
46
|
|
|
47
47
|
end
|
|
48
48
|
|
|
49
|
+
# _config.rb
|
|
50
|
+
extend_view(MyHelpers)
|
|
51
|
+
|
|
49
52
|
# index.rb
|
|
50
53
|
html do
|
|
51
54
|
body do
|
|
52
|
-
|
|
55
|
+
cool_title('My blog')
|
|
53
56
|
end
|
|
54
57
|
end
|
|
55
58
|
```
|
data/lib/flora/config.rb
CHANGED
data/lib/flora/project.rb
CHANGED
|
@@ -10,19 +10,12 @@ class Flora::Project
|
|
|
10
10
|
IGNORES = ['.git/*', 'lib/**', '**_*.rb']
|
|
11
11
|
|
|
12
12
|
|
|
13
|
-
def initialize(dir, config)
|
|
13
|
+
def initialize(dir, loader, config)
|
|
14
14
|
@dir = dir
|
|
15
|
+
@loader = loader
|
|
15
16
|
@config = config
|
|
16
17
|
|
|
17
18
|
@blueprints = find_blueprints
|
|
18
|
-
|
|
19
|
-
@loader = Zeitwerk::Loader.new
|
|
20
|
-
if has_supporting_code?
|
|
21
|
-
@loader.push_dir(@dir.join('lib').to_s)
|
|
22
|
-
end
|
|
23
|
-
@loader.enable_reloading
|
|
24
|
-
@loader.setup
|
|
25
|
-
@loader.eager_load
|
|
26
19
|
end
|
|
27
20
|
|
|
28
21
|
|
|
@@ -55,7 +48,6 @@ class Flora::Project
|
|
|
55
48
|
|
|
56
49
|
|
|
57
50
|
def has_supporting_code?
|
|
58
|
-
@dir.join('lib').exist?
|
|
59
51
|
end
|
|
60
52
|
|
|
61
53
|
end
|
data/lib/flora/version.rb
CHANGED
data/lib/flora.rb
CHANGED
|
@@ -24,8 +24,16 @@ class Flora
|
|
|
24
24
|
@project_class = Class.new(Project)
|
|
25
25
|
@factory_class = Class.new(Factory)
|
|
26
26
|
|
|
27
|
+
# This has to be loaded before Config so Config can reference lib/ code.
|
|
28
|
+
@project_loader = Zeitwerk::Loader.new
|
|
29
|
+
if dir.join('lib').exist?
|
|
30
|
+
@project_loader.push_dir(dir.join('lib'))
|
|
31
|
+
end
|
|
32
|
+
@project_loader.enable_reloading
|
|
33
|
+
@project_loader.setup
|
|
34
|
+
|
|
27
35
|
@config = @config_class.new(dir.join('_config.rb'), self)
|
|
28
|
-
@project = @project_class.new(dir, @config)
|
|
36
|
+
@project = @project_class.new(dir, @project_loader, @config)
|
|
29
37
|
@factory = @factory_class.new(@project, @config)
|
|
30
38
|
end
|
|
31
39
|
|