express_templates 0.8.0 → 0.9.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/express_templates/components.rb +1 -0
- data/lib/express_templates/components/base.rb +4 -0
- data/lib/express_templates/components/container.rb +43 -0
- data/lib/express_templates/components/forms/express_form.rb +2 -3
- data/lib/express_templates/components/forms/form_component.rb +2 -2
- data/lib/express_templates/version.rb +1 -1
- metadata +21 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7977047ccc67c08d98fd6455b7cb2489ca8d1443
|
4
|
+
data.tar.gz: 9d135566210f9533ec5405070e0fa24f827e77d4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 86d2c106761699eeed090914b848e017a1c3f91e5b9de8b5ebd4065f2eec9d966f0e8f3634e69418ff68d670769d5fb1ed9ea6a1842cfd68805c9e622afaf11f
|
7
|
+
data.tar.gz: 8a17726987ae8de7ad866e6fc1c5ce4fd1ca0eb5d955442f7eb8139a969931fda38b78f4407912f9c7a2c39cb65c15e37633d6326038f3705f5742e13ae67a60
|
@@ -71,6 +71,10 @@ module ExpressTemplates
|
|
71
71
|
builder_method_and_class subclass.to_s.demodulize.underscore, subclass
|
72
72
|
end
|
73
73
|
|
74
|
+
def self.descendants
|
75
|
+
ObjectSpace.each_object(Class).select { |klass| klass < self }
|
76
|
+
end
|
77
|
+
|
74
78
|
protected
|
75
79
|
def default_class_name
|
76
80
|
self.class.name.demodulize.underscore.dasherize
|
@@ -0,0 +1,43 @@
|
|
1
|
+
module ExpressTemplates
|
2
|
+
module Components
|
3
|
+
class Container < Configurable
|
4
|
+
|
5
|
+
class_attribute :prepended_blocks
|
6
|
+
self.prepended_blocks = []
|
7
|
+
|
8
|
+
class_attribute :appended_blocks
|
9
|
+
self.appended_blocks = []
|
10
|
+
|
11
|
+
contains -> (&block) {
|
12
|
+
prepended
|
13
|
+
block.call(self) if block
|
14
|
+
appended
|
15
|
+
}
|
16
|
+
|
17
|
+
def prepended
|
18
|
+
prepended_blocks.each do |block_to_prepend|
|
19
|
+
call_block(block_to_prepend)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
def appended
|
24
|
+
appended_blocks.each do |block_to_append|
|
25
|
+
call_block(block_to_append)
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
def call_block(block)
|
30
|
+
instance_exec &block
|
31
|
+
end
|
32
|
+
|
33
|
+
def self.prepends(proc = nil, &block)
|
34
|
+
self.prepended_blocks += [proc || block]
|
35
|
+
end
|
36
|
+
|
37
|
+
def self.appends(proc = nil, &block)
|
38
|
+
self.appended_blocks += [proc || block]
|
39
|
+
end
|
40
|
+
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
module ExpressTemplates
|
2
2
|
module Components
|
3
3
|
module Forms
|
4
|
-
class ExpressForm <
|
4
|
+
class ExpressForm < Container
|
5
5
|
include ExpressTemplates::Components::Capabilities::Resourceful
|
6
6
|
|
7
7
|
tag :form
|
@@ -9,13 +9,12 @@ module ExpressTemplates
|
|
9
9
|
has_option :method, 'The form method', default: 'POST', attribute: true #, options: ['PUT', 'POST', 'GET', 'DELETE']
|
10
10
|
has_option :action, 'The form action containing the resource path or url.'
|
11
11
|
|
12
|
-
|
12
|
+
prepends -> {
|
13
13
|
div(style: 'display:none') {
|
14
14
|
add_child helpers.utf8_enforcer_tag
|
15
15
|
add_child helpers.send(:method_tag, resource.persisted? ? :put : :post)
|
16
16
|
helpers.send(:token_tag)
|
17
17
|
}
|
18
|
-
block.call(self) if block
|
19
18
|
}
|
20
19
|
|
21
20
|
before_build -> {
|
@@ -7,10 +7,10 @@ module ExpressTemplates
|
|
7
7
|
|
8
8
|
before_build -> {
|
9
9
|
set_attribute(:id, "#{resource_name}_#{field_name}_wrapper")
|
10
|
-
add_class(config[:
|
10
|
+
add_class(config[:wrapper_class])
|
11
11
|
}
|
12
12
|
|
13
|
-
has_option :
|
13
|
+
has_option :wrapper_class, 'Override the class of the wrapping div of a form component', default: 'field-wrapper'
|
14
14
|
has_option :label, 'Override the inferred label of a form component'
|
15
15
|
|
16
16
|
# Lookup the resource_name from the parent ExpressForm.
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: express_templates
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.9.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Steven Talcott Smith
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2015-07-
|
12
|
+
date: 2015-07-24 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activesupport
|
@@ -43,16 +43,16 @@ dependencies:
|
|
43
43
|
name: arbre
|
44
44
|
requirement: !ruby/object:Gem::Requirement
|
45
45
|
requirements:
|
46
|
-
- - "
|
46
|
+
- - "~>"
|
47
47
|
- !ruby/object:Gem::Version
|
48
|
-
version: '0'
|
48
|
+
version: '1.0'
|
49
49
|
type: :runtime
|
50
50
|
prerelease: false
|
51
51
|
version_requirements: !ruby/object:Gem::Requirement
|
52
52
|
requirements:
|
53
|
-
- - "
|
53
|
+
- - "~>"
|
54
54
|
- !ruby/object:Gem::Version
|
55
|
-
version: '0'
|
55
|
+
version: '1.0'
|
56
56
|
- !ruby/object:Gem::Dependency
|
57
57
|
name: rails
|
58
58
|
requirement: !ruby/object:Gem::Requirement
|
@@ -151,6 +151,20 @@ dependencies:
|
|
151
151
|
- - "~>"
|
152
152
|
- !ruby/object:Gem::Version
|
153
153
|
version: '0.4'
|
154
|
+
- !ruby/object:Gem::Dependency
|
155
|
+
name: minitest-line
|
156
|
+
requirement: !ruby/object:Gem::Requirement
|
157
|
+
requirements:
|
158
|
+
- - ">="
|
159
|
+
- !ruby/object:Gem::Version
|
160
|
+
version: '0'
|
161
|
+
type: :development
|
162
|
+
prerelease: false
|
163
|
+
version_requirements: !ruby/object:Gem::Requirement
|
164
|
+
requirements:
|
165
|
+
- - ">="
|
166
|
+
- !ruby/object:Gem::Version
|
167
|
+
version: '0'
|
154
168
|
description: Replace Erb/HAML/Slim with ExpressTemplates and write templates in a
|
155
169
|
declartive style of Ruby. With ExpressTemplates you may easily create a library
|
156
170
|
of components for use across projects.
|
@@ -173,6 +187,7 @@ files:
|
|
173
187
|
- lib/express_templates/components/base.rb
|
174
188
|
- lib/express_templates/components/capabilities/resourceful.rb
|
175
189
|
- lib/express_templates/components/configurable.rb
|
190
|
+
- lib/express_templates/components/container.rb
|
176
191
|
- lib/express_templates/components/forms.rb
|
177
192
|
- lib/express_templates/components/forms/basic_fields.rb
|
178
193
|
- lib/express_templates/components/forms/checkbox.rb
|