hat-trick 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: b23ea5678f7381bb57707ad2a6fbe528ef927bf0
4
+ data.tar.gz: 31a2714731ccc727bbc6de9df8c91c7244d309cd
5
+ SHA512:
6
+ metadata.gz: 403fed398d10bd055447086f68254007896d49fd22e0f31ba2fd7d52210ee6d2b882e3ddbce28655c781b56f0d1eef05a8f552ac8405027d886fcfa8381df0ba
7
+ data.tar.gz: 7d029b1de0fcf1fbf384d5a85cab657bf0c5e1c6b0b89dec04b9b185c630bae558a12cb6700838f4dbc21895638a150e34559bd1bac50d2226f2ac15a18e1327
data/.gitignore CHANGED
@@ -4,3 +4,4 @@ Gemfile.lock
4
4
  pkg/*
5
5
  .tags*
6
6
  tags
7
+ .idea
data/Changelog CHANGED
@@ -1,3 +1,4 @@
1
+ * 0.4.0 - Add ability to set lambdas as button labels. They will be called each time the button is rendered.
1
2
  * 0.3.0 - Add model_class DSL method to explicitly tell hat-trick which model to use.
2
3
  - Clean up validation_groups on models after each request.
3
4
  - Stop monkey-patching all of ActiveRecord::Base with hat-trick's model methods.
data/hat-trick.gemspec CHANGED
@@ -18,9 +18,8 @@ Gem::Specification.new do |s|
18
18
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
19
19
  s.require_paths = ["lib"]
20
20
 
21
- s.add_development_dependency "rspec"
21
+ s.add_development_dependency "rspec", "~> 2.99"
22
22
  s.add_development_dependency "mocha"
23
- s.add_development_dependency "debugger"
24
23
 
25
24
  s.add_runtime_dependency "rails", ">= 3.1"
26
25
  s.add_runtime_dependency "validation_group"
@@ -48,9 +48,22 @@ module HatTrick
48
48
  visited_steps << self.to_sym
49
49
  end
50
50
 
51
+ def render_buttons(buttons)
52
+ buttons.map do |b|
53
+ button_type = b.keys.first
54
+ button = b[button_type]
55
+ if button[:label].respond_to?(:call)
56
+ rendered_label = button[:label].call
57
+ { button_type => button.merge({label: rendered_label}) }
58
+ else
59
+ b
60
+ end
61
+ end
62
+ end
63
+
51
64
  def as_json(options = nil)
52
65
  json = { :name => name, :fieldset => fieldset }
53
- json[:buttons] = buttons.empty? ? [] : buttons
66
+ json[:buttons] = buttons.empty? ? [] : render_buttons(buttons)
54
67
  json[:first] = first?
55
68
  json[:redirect] = redirect?
56
69
  json[:redirectFrom] = redirect_from
@@ -1,3 +1,3 @@
1
1
  module HatTrick
2
- VERSION = "0.3.0"
2
+ VERSION = "0.4.0"
3
3
  end
metadata CHANGED
@@ -1,110 +1,83 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hat-trick
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
5
- prerelease:
4
+ version: 0.4.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Wes Morgan
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-07-08 00:00:00.000000000 Z
11
+ date: 2015-11-24 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rspec
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - "~>"
20
18
  - !ruby/object:Gem::Version
21
- version: '0'
19
+ version: '2.99'
22
20
  type: :development
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - "~>"
28
25
  - !ruby/object:Gem::Version
29
- version: '0'
26
+ version: '2.99'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: mocha
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
- requirements:
35
- - - ! '>='
36
- - !ruby/object:Gem::Version
37
- version: '0'
38
- type: :development
39
- prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - ! '>='
44
- - !ruby/object:Gem::Version
45
- version: '0'
46
- - !ruby/object:Gem::Dependency
47
- name: debugger
48
- requirement: !ruby/object:Gem::Requirement
49
- none: false
50
30
  requirements:
51
- - - ! '>='
31
+ - - ">="
52
32
  - !ruby/object:Gem::Version
53
33
  version: '0'
54
34
  type: :development
55
35
  prerelease: false
56
36
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
37
  requirements:
59
- - - ! '>='
38
+ - - ">="
60
39
  - !ruby/object:Gem::Version
61
40
  version: '0'
62
41
  - !ruby/object:Gem::Dependency
63
42
  name: rails
64
43
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
44
  requirements:
67
- - - ! '>='
45
+ - - ">="
68
46
  - !ruby/object:Gem::Version
69
47
  version: '3.1'
70
48
  type: :runtime
71
49
  prerelease: false
72
50
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
51
  requirements:
75
- - - ! '>='
52
+ - - ">="
76
53
  - !ruby/object:Gem::Version
77
54
  version: '3.1'
78
55
  - !ruby/object:Gem::Dependency
79
56
  name: validation_group
80
57
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
58
  requirements:
83
- - - ! '>='
59
+ - - ">="
84
60
  - !ruby/object:Gem::Version
85
61
  version: '0'
86
62
  type: :runtime
87
63
  prerelease: false
88
64
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
65
  requirements:
91
- - - ! '>='
66
+ - - ">="
92
67
  - !ruby/object:Gem::Version
93
68
  version: '0'
94
69
  - !ruby/object:Gem::Dependency
95
70
  name: gon
96
71
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
72
  requirements:
99
- - - ! '>='
73
+ - - ">="
100
74
  - !ruby/object:Gem::Version
101
75
  version: '0'
102
76
  type: :runtime
103
77
  prerelease: false
104
78
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
79
  requirements:
107
- - - ! '>='
80
+ - - ">="
108
81
  - !ruby/object:Gem::Version
109
82
  version: '0'
110
83
  description: Hat-Trick brings together jQuery, validation_group, and Ajax to make
@@ -116,8 +89,8 @@ executables: []
116
89
  extensions: []
117
90
  extra_rdoc_files: []
118
91
  files:
119
- - .gitignore
120
- - .rspec
92
+ - ".gitignore"
93
+ - ".rspec"
121
94
  - Changelog
122
95
  - Gemfile
123
96
  - LICENSE
@@ -157,27 +130,26 @@ files:
157
130
  - vendor/assets/javascripts/vendor_js.js
158
131
  homepage: https://github.com/turbovote/hat-trick
159
132
  licenses: []
133
+ metadata: {}
160
134
  post_install_message:
161
135
  rdoc_options: []
162
136
  require_paths:
163
137
  - lib
164
138
  required_ruby_version: !ruby/object:Gem::Requirement
165
- none: false
166
139
  requirements:
167
- - - ! '>='
140
+ - - ">="
168
141
  - !ruby/object:Gem::Version
169
142
  version: '0'
170
143
  required_rubygems_version: !ruby/object:Gem::Requirement
171
- none: false
172
144
  requirements:
173
- - - ! '>='
145
+ - - ">="
174
146
  - !ruby/object:Gem::Version
175
147
  version: '0'
176
148
  requirements: []
177
149
  rubyforge_project: hat-trick
178
- rubygems_version: 1.8.23
150
+ rubygems_version: 2.2.2
179
151
  signing_key:
180
- specification_version: 3
152
+ specification_version: 4
181
153
  summary: A simple DSL for creating client-side multi-step forms in Rails.
182
154
  test_files:
183
155
  - spec/lib/hat_trick/dsl_spec.rb