xray-rails 0.2.0 → 0.3.0
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.
- checksums.yaml +4 -4
- data/lib/xray-rails.rb +1 -0
- data/lib/xray/aliasing.rb +38 -0
- data/lib/xray/engine.rb +3 -1
- data/lib/xray/version.rb +1 -1
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 90126528bd463acc13b70d3524a2b52764ca4543
|
4
|
+
data.tar.gz: 50d91170ce09b2222925d4515d288b2a0736a8ab
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1f265795ab69c9e76f6b5afcf5837323d507fb02cf24e3fc3802dee8dc038c0ae89b670f83e62a4b72e4c24db7b976e42db226552cfe1318923db434341b74c4
|
7
|
+
data.tar.gz: fd428470fadd89218b169da0219507e25e869ce59b45b3524659e660113d2f644b7e572716f6ed27130475282a5604d92b515e0e417cb3bd82ad24123fff3900
|
data/lib/xray-rails.rb
CHANGED
@@ -0,0 +1,38 @@
|
|
1
|
+
module Xray
|
2
|
+
# This module implements the old ActiveSupport alias_method_chain feature
|
3
|
+
# with a new name, and without the deprecation warnings. In ActiveSupport 5+,
|
4
|
+
# this style of patching was deprecated in favor of Module.prepend. But
|
5
|
+
# Module.prepend is not present in Ruby 1.9, which we would still like to
|
6
|
+
# support. So we continue to use of alias_method_chain, albeit with a
|
7
|
+
# different name to avoid collisions.
|
8
|
+
#
|
9
|
+
# TODO: remove this and drop support for Ruby 1.9.
|
10
|
+
#
|
11
|
+
module Aliasing
|
12
|
+
# This code is copied and pasted from ActiveSupport, but with :xray
|
13
|
+
# hardcoded as the feature name, and with the deprecation warning removed.
|
14
|
+
def xray_method_alias(target)
|
15
|
+
feature = :xray
|
16
|
+
|
17
|
+
# Strip out punctuation on predicates, bang or writer methods since
|
18
|
+
# e.g. target?_without_feature is not a valid method name.
|
19
|
+
aliased_target, punctuation = target.to_s.sub(/([?!=])$/, ''), $1
|
20
|
+
yield(aliased_target, punctuation) if block_given?
|
21
|
+
|
22
|
+
with_method = "#{aliased_target}_with_#{feature}#{punctuation}"
|
23
|
+
without_method = "#{aliased_target}_without_#{feature}#{punctuation}"
|
24
|
+
|
25
|
+
alias_method without_method, target
|
26
|
+
alias_method target, with_method
|
27
|
+
|
28
|
+
case
|
29
|
+
when public_method_defined?(without_method)
|
30
|
+
public target
|
31
|
+
when protected_method_defined?(without_method)
|
32
|
+
protected target
|
33
|
+
when private_method_defined?(without_method)
|
34
|
+
private target
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
data/lib/xray/engine.rb
CHANGED
@@ -19,6 +19,8 @@ module Xray
|
|
19
19
|
# Monkey patch ActionView::Template to augment server-side templates
|
20
20
|
# with filepath information. See `Xray.augment_template` for details.
|
21
21
|
ActionView::Template.class_eval do
|
22
|
+
extend Xray::Aliasing
|
23
|
+
|
22
24
|
def render_with_xray(*args, &block)
|
23
25
|
path = identifier
|
24
26
|
view = args.first
|
@@ -37,7 +39,7 @@ module Xray
|
|
37
39
|
source
|
38
40
|
end
|
39
41
|
end
|
40
|
-
|
42
|
+
xray_method_alias :render
|
41
43
|
end
|
42
44
|
|
43
45
|
# Sprockets preprocessor interface which supports all versions of Sprockets.
|
data/lib/xray/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: xray-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Brent Dillingham
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-04-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -109,6 +109,7 @@ files:
|
|
109
109
|
- app/assets/stylesheets/xray.css
|
110
110
|
- app/views/_xray_bar.html.erb
|
111
111
|
- lib/xray-rails.rb
|
112
|
+
- lib/xray/aliasing.rb
|
112
113
|
- lib/xray/config.rb
|
113
114
|
- lib/xray/engine.rb
|
114
115
|
- lib/xray/middleware.rb
|
@@ -133,7 +134,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
133
134
|
version: '0'
|
134
135
|
requirements: []
|
135
136
|
rubyforge_project:
|
136
|
-
rubygems_version: 2.
|
137
|
+
rubygems_version: 2.6.11
|
137
138
|
signing_key:
|
138
139
|
specification_version: 4
|
139
140
|
summary: Reveal the structure of your UI
|