pwnstyles_rails 0.1.9 → 0.1.10

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.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.9
1
+ 0.1.10
@@ -186,8 +186,8 @@ PwnFx.registerEffect 'move', PwnFxMove
186
186
  # with a random string; useful for generating unique IDs
187
187
  # data-pwnfx-render-target: set on the element(s) receiving the rendered HTML;
188
188
  # set to the identifier in data-pwnfx-render
189
- # data-pwnfx-render-source: set on the <script> tag containing the source HTML
190
- # to be rendered; set to the identifier in data-pwnfx-render
189
+ # data-pwnfx-render-source: set to the identifier in data-pwnfx-render, on the
190
+ # <script> tag containing the source HTML
191
191
  class PwnFxRender
192
192
  constructor: (element, identifier, scopeId) ->
193
193
  sourceSelector = "script[data-pwnfx-render-source=\"#{identifier}\"]"
@@ -393,6 +393,46 @@ class PwnFxHide
393
393
  PwnFx.registerEffect 'hide', PwnFxHide
394
394
 
395
395
 
396
+ # Shows / hides elements in a DOM depending on an input's value.
397
+ #
398
+ # Attributes:
399
+ # data-pwnfx-showif: an identifier that connects the source <input>
400
+ # data-pwnfx-showif-class: the CSS class that is added to hidden elements;
401
+ # (default: hidden)
402
+ # data-pwnfx-showif-is: the value that the <input> has to match for this
403
+ # element to be shown
404
+ # data-pwnfx-showif-source: set to the identifier in data-pwnfx-showif
405
+ # on the <input> whose value determines if this element is shown or not
406
+ class PwnFxShowIf
407
+ constructor: (element, identifier, scopeId) ->
408
+ hiddenClass = element.getAttribute('data-pwnfx-showif-class') || 'hidden'
409
+ showValue = element.getAttribute 'data-pwnfx-showif-is'
410
+ sourceSelector = "[data-pwnfx-showif-source=\"#{identifier}\"]"
411
+
412
+ oldValue = null
413
+ onChange = (event) ->
414
+ console.log ['change', event.target]
415
+ value = event.target.value
416
+ return true if value == oldValue
417
+ oldValue = value
418
+
419
+ console.log [value, showValue]
420
+ if value == showValue
421
+ element.classList.remove hiddenClass
422
+ else
423
+ element.classList.add hiddenClass
424
+ true
425
+
426
+ scope = PwnFx.resolveScope scopeId, element
427
+ for sourceElement in PwnFx.queryScope(scope, sourceSelector)
428
+ sourceElement.addEventListener 'change', onChange, false
429
+ sourceElement.addEventListener 'keydown', onChange, false
430
+ sourceElement.addEventListener 'keyup', onChange, false
431
+ onChange target: sourceElement
432
+
433
+ PwnFx.registerEffect 'showif', PwnFxShowIf
434
+
435
+
396
436
  # Removes elements from the DOM when an element is clicked.
397
437
  #
398
438
  # Attributes:
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "pwnstyles_rails"
8
- s.version = "0.1.9"
8
+ s.version = "0.1.10"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Victor Costan"]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pwnstyles_rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.9
4
+ version: 0.1.10
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-02-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
16
- requirement: &11333680 !ruby/object:Gem::Requirement
16
+ requirement: &21316180 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 3.2.0
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *11333680
24
+ version_requirements: *21316180
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: sass-rails
27
- requirement: &11332740 !ruby/object:Gem::Requirement
27
+ requirement: &21314680 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 3.2.4
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *11332740
35
+ version_requirements: *21314680
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: shoulda
38
- requirement: &11331580 !ruby/object:Gem::Requirement
38
+ requirement: &21313960 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *11331580
46
+ version_requirements: *21313960
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: bundler
49
- requirement: &11330960 !ruby/object:Gem::Requirement
49
+ requirement: &21313420 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 1.0.0
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *11330960
57
+ version_requirements: *21313420
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: jeweler
60
- requirement: &11330260 !ruby/object:Gem::Requirement
60
+ requirement: &21312680 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: 1.8.0
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *11330260
68
+ version_requirements: *21312680
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rcov
71
- requirement: &11329560 !ruby/object:Gem::Requirement
71
+ requirement: &21311940 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: '0'
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *11329560
79
+ version_requirements: *21311940
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: simplecov
82
- requirement: &11328840 !ruby/object:Gem::Requirement
82
+ requirement: &21310720 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ! '>='
@@ -87,7 +87,7 @@ dependencies:
87
87
  version: '0'
88
88
  type: :development
89
89
  prerelease: false
90
- version_requirements: *11328840
90
+ version_requirements: *21310720
91
91
  description: Included CSS was designed for reuse across pwnb.us apps.
92
92
  email: victor@costan.us
93
93
  executables: []
@@ -152,7 +152,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
152
152
  version: '0'
153
153
  segments:
154
154
  - 0
155
- hash: -1561629047696915926
155
+ hash: -4003050498325912377
156
156
  required_rubygems_version: !ruby/object:Gem::Requirement
157
157
  none: false
158
158
  requirements: