roda-component 0.1.54 → 0.1.55

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ac93227aa38ca66d828975be429d53f4f49b4829
4
- data.tar.gz: 89e584ade93b145089a3a881aa244eaf6a083707
3
+ metadata.gz: 6f0bd5b2f67beac13bc2f3aca5cf6b9730529bb2
4
+ data.tar.gz: 128bc04f62aedf156b4227bdcb7034ee771dbaa4
5
5
  SHA512:
6
- metadata.gz: f25e8aa49e8302ec65cee1f801d4bf85d4a5a345fa194738388c0893e8058fd2e7fa9bc7b6d415ed0685a29035618b7aaea7ee0be789ad8f71ab99df6b3cbed9
7
- data.tar.gz: a5548d6a14d481a23bedc91c061427225b4504c60f4b4f0502e653e2e36b2d6f8af558e9a40934bfdb103c65d44584665e0cdf05261758fe762d83af683811ca
6
+ metadata.gz: 7b8812b8a409755d5a457946b56ca33d83d1b969d9d2383f72554d008432ce210c4fa83cd34fd7739edc226a761b4ac220a32b9664f947ac36b47a3a32327084
7
+ data.tar.gz: fec0b4c8cb970af6be49fde8df2b7f6a0703b198307d0b745900dcfb73d59bf68648602e9c2e61308e9039a9bea56a8f448ef26c889a52368cd9cda5edaf52c9
@@ -1,15 +1,16 @@
1
1
  class Roda
2
2
  class Component
3
3
  class Events < Struct.new(:klass, :component_opts, :scope, :request)
4
- def on name, options = {}, form_klass = false, extra_opts = false, &block
5
- options = '' if options.empty? && (name.to_s == 'history_change' || name.to_s == 'ready')
4
+ def on name, options = false, form_klass = false, extra_opts = false, &block
6
5
 
7
- if client? && options.is_a?(String)
6
+ if client? && (options.is_a?(String) || !options)
8
7
  class_name = klass._name
9
8
  class_events = (events[class_name] ||= {})
10
9
  event = (class_events[:_jquery_events] ||= [])
11
10
  event << [block, class_name, options, form_klass, extra_opts, name]
12
- elsif options.is_a?(Hash)
11
+ elsif options.is_a?(Hash) || !options
12
+ options = {} unless options
13
+
13
14
  limit_if = options.delete(:if) || []
14
15
  limit_if = [limit_if] unless limit_if.is_a? Array
15
16
 
@@ -93,10 +94,18 @@ class Roda
93
94
  Component::Instance.new(component(comp), scope).instance_exec form, evt.current_target, evt, &block
94
95
  end
95
96
  else
96
- Document.on name, selector do |evt|
97
+ args = [name]
98
+ args << selector if selector
99
+
100
+ Document.on(*args) do |evt|
97
101
  el = evt.current_target
98
102
  Component::Instance.new(component(comp), scope).instance_exec el, evt, &block
99
103
  end
104
+
105
+ if name =~ /ready/
106
+ el = Element.find(selector != '' ? selector : 'body')
107
+ Component::Instance.new(component(comp), scope).instance_exec el, &block
108
+ end
100
109
  end
101
110
  end
102
111
  end
@@ -1,5 +1,5 @@
1
1
  class Roda
2
2
  class Component
3
- VERSION = "0.1.54"
3
+ VERSION = "0.1.55"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: roda-component
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.54
4
+ version: 0.1.55
5
5
  platform: ruby
6
6
  authors:
7
7
  - cj
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-03-10 00:00:00.000000000 Z
11
+ date: 2015-03-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: opal