styleus 0.0.2 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
@@ -1,51 +1,46 @@
|
|
1
1
|
module StyleusHelper
|
2
|
-
def styleus(
|
3
|
-
|
4
|
-
|
5
|
-
|
2
|
+
def styleus(comp_list = [])
|
3
|
+
component_list = ComponentList.from_hashes(comp_list)
|
4
|
+
|
5
|
+
component_listing = component_list.components.map do |component|
|
6
|
+
wrap_component component
|
6
7
|
end
|
7
8
|
|
8
|
-
|
9
|
+
component_menu(component_list).concat(component_listing.join.html_safe)
|
9
10
|
end
|
10
11
|
|
11
|
-
def
|
12
|
-
# create a "unique" id for anchor tags
|
13
|
-
#TODO make it really unique ^^
|
14
|
-
component_id = "#{headline}#{rand(999)}".underscore
|
15
|
-
|
12
|
+
def wrap_component(component)
|
16
13
|
# add component to linked list menu
|
17
|
-
menu.push({ id:
|
18
|
-
|
19
|
-
|
20
|
-
styleus_partials(partial_path)
|
14
|
+
#menu.push({ id: component.id, headline: component.headline }) if menu
|
15
|
+
_styleus_article_wrap(headline: component.headline, anchor_id: component.id) do
|
16
|
+
styleus_partials(component.partial_path)
|
21
17
|
end
|
22
18
|
end
|
23
19
|
|
24
20
|
def styleus_partials(partial_path)
|
25
21
|
sample_template = _styleus_representation_wrap(class: '__boxed') do
|
26
|
-
|
27
|
-
|
22
|
+
render partial: "#{partial_path}_sample"
|
23
|
+
end
|
28
24
|
|
29
|
-
|
30
|
-
|
31
|
-
|
25
|
+
plain_template = _coderay_highlight_wrap("#{partial_path}.html.erb") do
|
26
|
+
render partial: "#{partial_path}_plain"
|
27
|
+
end
|
32
28
|
|
33
|
-
|
29
|
+
sample_template.concat(plain_template)
|
34
30
|
end
|
35
31
|
|
36
|
-
def
|
32
|
+
def component_menu(component_list)
|
37
33
|
content_tag 'nav' do
|
38
34
|
content_tag 'ul' do
|
39
|
-
|
40
|
-
|
41
|
-
link_to entry[:headline], anchor: entry[:id]
|
42
|
-
end
|
35
|
+
content_tag_for(:li, component_list.components) do |component|
|
36
|
+
link_to component.headline, anchor: component.id
|
43
37
|
end
|
44
|
-
link_list.join.html_safe
|
45
38
|
end
|
46
39
|
end
|
47
40
|
end
|
48
41
|
|
42
|
+
|
43
|
+
|
49
44
|
def _styleus_article_wrap(options = { }, &block)
|
50
45
|
captured_block = capture(&block)
|
51
46
|
|
data/app/models/base.rb
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
class Base
|
2
|
+
extend ActiveModel::Naming
|
3
|
+
include ActiveModel::AttributeMethods
|
4
|
+
include ActiveModel::Serialization
|
5
|
+
|
6
|
+
def initialize(attributes)
|
7
|
+
@attributes = attributes
|
8
|
+
end
|
9
|
+
|
10
|
+
def id
|
11
|
+
@id ||= rand(99999999)
|
12
|
+
end
|
13
|
+
|
14
|
+
# as implemented as in ActiveRecord
|
15
|
+
def to_key
|
16
|
+
key = self.id
|
17
|
+
[key] if key
|
18
|
+
end
|
19
|
+
|
20
|
+
private
|
21
|
+
|
22
|
+
def attribute(attr)
|
23
|
+
@attributes[attr.to_sym]
|
24
|
+
end
|
25
|
+
|
26
|
+
class << self
|
27
|
+
def with_attributes(*attribute_names)
|
28
|
+
define_attribute_methods attribute_names.map(&:to_s)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
class ComponentList
|
2
|
+
|
3
|
+
def components
|
4
|
+
@components ||= []
|
5
|
+
end
|
6
|
+
|
7
|
+
class << self
|
8
|
+
def from_hashes(hashes)
|
9
|
+
@component_list = ComponentList.new
|
10
|
+
hashes.each { |comp_hash| @component_list.components << Component.new(comp_hash)}
|
11
|
+
@component_list
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
end
|
data/lib/styleus/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: styleus
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-11-
|
12
|
+
date: 2012-11-20 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
@@ -75,7 +75,10 @@ files:
|
|
75
75
|
- app/assets/stylesheets/styleus/settings/_colors.css.scss
|
76
76
|
- app/assets/stylesheets/styleus.css
|
77
77
|
- app/helpers/styleus_helper.rb
|
78
|
-
- app/
|
78
|
+
- app/models/base.rb
|
79
|
+
- app/models/component.rb
|
80
|
+
- app/models/component_list.rb
|
81
|
+
- app/views/layouts/_styleus.html.erb
|
79
82
|
- app/views/styleus/_screen_size_viewer.html.erb
|
80
83
|
- config/routes.rb
|
81
84
|
- lib/styleus/engine.rb
|