sprockets-rails 2.3.2 → 3.2.2
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 +5 -5
- data/{LICENSE → MIT-LICENSE} +1 -1
- data/README.md +66 -36
- data/lib/sprockets/rails/context.rb +48 -0
- data/lib/sprockets/rails/helper.rb +271 -128
- data/lib/sprockets/rails/quiet_assets.rb +18 -0
- data/lib/sprockets/rails/route_wrapper.rb +23 -0
- data/lib/sprockets/rails/task.rb +10 -15
- data/lib/sprockets/rails/utils.rb +11 -0
- data/lib/sprockets/rails/version.rb +1 -1
- data/lib/sprockets/railtie.rb +173 -75
- metadata +38 -43
- data/lib/sprockets/rails/legacy_asset_tag_helper.rb +0 -32
- data/lib/sprockets/rails/legacy_asset_url_helper.rb +0 -133
metadata
CHANGED
@@ -1,156 +1,151 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sprockets-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 3.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Joshua Peek
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-09-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sprockets
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
20
|
-
- - <
|
21
|
-
- !ruby/object:Gem::Version
|
22
|
-
version: '4.0'
|
19
|
+
version: 3.0.0
|
23
20
|
type: :runtime
|
24
21
|
prerelease: false
|
25
22
|
version_requirements: !ruby/object:Gem::Requirement
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - ">="
|
28
25
|
- !ruby/object:Gem::Version
|
29
|
-
version:
|
30
|
-
- - <
|
31
|
-
- !ruby/object:Gem::Version
|
32
|
-
version: '4.0'
|
26
|
+
version: 3.0.0
|
33
27
|
- !ruby/object:Gem::Dependency
|
34
28
|
name: actionpack
|
35
29
|
requirement: !ruby/object:Gem::Requirement
|
36
30
|
requirements:
|
37
|
-
- -
|
31
|
+
- - ">="
|
38
32
|
- !ruby/object:Gem::Version
|
39
|
-
version: '
|
33
|
+
version: '4.0'
|
40
34
|
type: :runtime
|
41
35
|
prerelease: false
|
42
36
|
version_requirements: !ruby/object:Gem::Requirement
|
43
37
|
requirements:
|
44
|
-
- -
|
38
|
+
- - ">="
|
45
39
|
- !ruby/object:Gem::Version
|
46
|
-
version: '
|
40
|
+
version: '4.0'
|
47
41
|
- !ruby/object:Gem::Dependency
|
48
42
|
name: activesupport
|
49
43
|
requirement: !ruby/object:Gem::Requirement
|
50
44
|
requirements:
|
51
|
-
- -
|
45
|
+
- - ">="
|
52
46
|
- !ruby/object:Gem::Version
|
53
|
-
version: '
|
47
|
+
version: '4.0'
|
54
48
|
type: :runtime
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
51
|
requirements:
|
58
|
-
- -
|
52
|
+
- - ">="
|
59
53
|
- !ruby/object:Gem::Version
|
60
|
-
version: '
|
54
|
+
version: '4.0'
|
61
55
|
- !ruby/object:Gem::Dependency
|
62
56
|
name: railties
|
63
57
|
requirement: !ruby/object:Gem::Requirement
|
64
58
|
requirements:
|
65
|
-
- -
|
59
|
+
- - ">="
|
66
60
|
- !ruby/object:Gem::Version
|
67
|
-
version: '
|
61
|
+
version: '4.0'
|
68
62
|
type: :development
|
69
63
|
prerelease: false
|
70
64
|
version_requirements: !ruby/object:Gem::Requirement
|
71
65
|
requirements:
|
72
|
-
- -
|
66
|
+
- - ">="
|
73
67
|
- !ruby/object:Gem::Version
|
74
|
-
version: '
|
68
|
+
version: '4.0'
|
75
69
|
- !ruby/object:Gem::Dependency
|
76
70
|
name: rake
|
77
71
|
requirement: !ruby/object:Gem::Requirement
|
78
72
|
requirements:
|
79
|
-
- -
|
73
|
+
- - ">="
|
80
74
|
- !ruby/object:Gem::Version
|
81
75
|
version: '0'
|
82
76
|
type: :development
|
83
77
|
prerelease: false
|
84
78
|
version_requirements: !ruby/object:Gem::Requirement
|
85
79
|
requirements:
|
86
|
-
- -
|
80
|
+
- - ">="
|
87
81
|
- !ruby/object:Gem::Version
|
88
82
|
version: '0'
|
89
83
|
- !ruby/object:Gem::Dependency
|
90
84
|
name: sass
|
91
85
|
requirement: !ruby/object:Gem::Requirement
|
92
86
|
requirements:
|
93
|
-
- -
|
87
|
+
- - ">="
|
94
88
|
- !ruby/object:Gem::Version
|
95
89
|
version: '0'
|
96
90
|
type: :development
|
97
91
|
prerelease: false
|
98
92
|
version_requirements: !ruby/object:Gem::Requirement
|
99
93
|
requirements:
|
100
|
-
- -
|
94
|
+
- - ">="
|
101
95
|
- !ruby/object:Gem::Version
|
102
96
|
version: '0'
|
103
97
|
- !ruby/object:Gem::Dependency
|
104
98
|
name: uglifier
|
105
99
|
requirement: !ruby/object:Gem::Requirement
|
106
100
|
requirements:
|
107
|
-
- -
|
101
|
+
- - ">="
|
108
102
|
- !ruby/object:Gem::Version
|
109
103
|
version: '0'
|
110
104
|
type: :development
|
111
105
|
prerelease: false
|
112
106
|
version_requirements: !ruby/object:Gem::Requirement
|
113
107
|
requirements:
|
114
|
-
- -
|
108
|
+
- - ">="
|
115
109
|
- !ruby/object:Gem::Version
|
116
110
|
version: '0'
|
117
|
-
description:
|
111
|
+
description:
|
118
112
|
email: josh@joshpeek.com
|
119
113
|
executables: []
|
120
114
|
extensions: []
|
121
115
|
extra_rdoc_files: []
|
122
116
|
files:
|
117
|
+
- MIT-LICENSE
|
123
118
|
- README.md
|
119
|
+
- lib/sprockets/rails.rb
|
120
|
+
- lib/sprockets/rails/context.rb
|
124
121
|
- lib/sprockets/rails/helper.rb
|
125
|
-
- lib/sprockets/rails/
|
126
|
-
- lib/sprockets/rails/
|
122
|
+
- lib/sprockets/rails/quiet_assets.rb
|
123
|
+
- lib/sprockets/rails/route_wrapper.rb
|
127
124
|
- lib/sprockets/rails/task.rb
|
125
|
+
- lib/sprockets/rails/utils.rb
|
128
126
|
- lib/sprockets/rails/version.rb
|
129
|
-
- lib/sprockets/rails.rb
|
130
127
|
- lib/sprockets/railtie.rb
|
131
|
-
- LICENSE
|
132
128
|
homepage: https://github.com/rails/sprockets-rails
|
133
129
|
licenses:
|
134
130
|
- MIT
|
135
131
|
metadata: {}
|
136
|
-
post_install_message:
|
132
|
+
post_install_message:
|
137
133
|
rdoc_options: []
|
138
134
|
require_paths:
|
139
135
|
- lib
|
140
136
|
required_ruby_version: !ruby/object:Gem::Requirement
|
141
137
|
requirements:
|
142
|
-
- -
|
138
|
+
- - ">="
|
143
139
|
- !ruby/object:Gem::Version
|
144
|
-
version:
|
140
|
+
version: 1.9.3
|
145
141
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
146
142
|
requirements:
|
147
|
-
- -
|
143
|
+
- - ">="
|
148
144
|
- !ruby/object:Gem::Version
|
149
145
|
version: '0'
|
150
146
|
requirements: []
|
151
|
-
|
152
|
-
|
153
|
-
signing_key:
|
147
|
+
rubygems_version: 3.1.2
|
148
|
+
signing_key:
|
154
149
|
specification_version: 4
|
155
150
|
summary: Sprockets Rails integration
|
156
151
|
test_files: []
|
@@ -1,32 +0,0 @@
|
|
1
|
-
require 'sprockets'
|
2
|
-
|
3
|
-
module Sprockets
|
4
|
-
module Rails
|
5
|
-
# Backports of AssetTagHelper methods for Rails 2.x and 3.x.
|
6
|
-
module LegacyAssetTagHelper
|
7
|
-
include ActionView::Helpers::TagHelper
|
8
|
-
|
9
|
-
def javascript_include_tag(*sources)
|
10
|
-
options = sources.extract_options!.stringify_keys
|
11
|
-
sources.uniq.map { |source|
|
12
|
-
tag_options = {
|
13
|
-
"src" => path_to_javascript(source)
|
14
|
-
}.merge(options)
|
15
|
-
content_tag(:script, "", tag_options)
|
16
|
-
}.join("\n").html_safe
|
17
|
-
end
|
18
|
-
|
19
|
-
def stylesheet_link_tag(*sources)
|
20
|
-
options = sources.extract_options!.stringify_keys
|
21
|
-
sources.uniq.map { |source|
|
22
|
-
tag_options = {
|
23
|
-
"rel" => "stylesheet",
|
24
|
-
"media" => "screen",
|
25
|
-
"href" => path_to_stylesheet(source)
|
26
|
-
}.merge(options)
|
27
|
-
tag(:link, tag_options)
|
28
|
-
}.join("\n").html_safe
|
29
|
-
end
|
30
|
-
end
|
31
|
-
end
|
32
|
-
end
|
@@ -1,133 +0,0 @@
|
|
1
|
-
require 'sprockets'
|
2
|
-
|
3
|
-
module Sprockets
|
4
|
-
module Rails
|
5
|
-
# Backports of AssetUrlHelper methods for Rails 2.x and 3.x.
|
6
|
-
module LegacyAssetUrlHelper
|
7
|
-
URI_REGEXP = %r{^[-a-z]+://|^(?:cid|data):|^//}
|
8
|
-
|
9
|
-
def asset_path(source, options = {})
|
10
|
-
source = source.to_s
|
11
|
-
return "" unless source.present?
|
12
|
-
return source if source =~ URI_REGEXP
|
13
|
-
|
14
|
-
tail, source = source[/([\?#].+)$/], source.sub(/([\?#].+)$/, '')
|
15
|
-
|
16
|
-
if extname = compute_asset_extname(source, options)
|
17
|
-
source = "#{source}#{extname}"
|
18
|
-
end
|
19
|
-
|
20
|
-
if source[0] != ?/
|
21
|
-
source = compute_asset_path(source, options)
|
22
|
-
end
|
23
|
-
|
24
|
-
relative_url_root = defined?(config.relative_url_root) && config.relative_url_root
|
25
|
-
if relative_url_root
|
26
|
-
source = "#{relative_url_root}#{source}" unless source.starts_with?("#{relative_url_root}/")
|
27
|
-
end
|
28
|
-
|
29
|
-
if host = compute_asset_host(source, options)
|
30
|
-
source = "#{host}#{source}"
|
31
|
-
end
|
32
|
-
|
33
|
-
"#{source}#{tail}"
|
34
|
-
end
|
35
|
-
alias_method :path_to_asset, :asset_path
|
36
|
-
|
37
|
-
def asset_url(source, options = {})
|
38
|
-
path_to_asset(source, options.merge(:protocol => :request))
|
39
|
-
end
|
40
|
-
|
41
|
-
ASSET_EXTENSIONS = {
|
42
|
-
:javascript => '.js',
|
43
|
-
:stylesheet => '.css'
|
44
|
-
}
|
45
|
-
|
46
|
-
def compute_asset_extname(source, options = {})
|
47
|
-
return if options[:extname] == false
|
48
|
-
extname = options[:extname] || ASSET_EXTENSIONS[options[:type]]
|
49
|
-
extname if extname && File.extname(source) != extname
|
50
|
-
end
|
51
|
-
|
52
|
-
ASSET_PUBLIC_DIRECTORIES = {
|
53
|
-
:audio => '/audios',
|
54
|
-
:font => '/fonts',
|
55
|
-
:image => '/images',
|
56
|
-
:javascript => '/javascripts',
|
57
|
-
:stylesheet => '/stylesheets',
|
58
|
-
:video => '/videos'
|
59
|
-
}
|
60
|
-
|
61
|
-
def compute_asset_path(source, options = {})
|
62
|
-
dir = ASSET_PUBLIC_DIRECTORIES[options[:type]] || ""
|
63
|
-
File.join(dir, source)
|
64
|
-
end
|
65
|
-
|
66
|
-
def compute_asset_host(source = "", options = {})
|
67
|
-
request = self.request if respond_to?(:request)
|
68
|
-
|
69
|
-
if defined? config
|
70
|
-
host = config.asset_host
|
71
|
-
elsif defined? ActionController::Base.asset_host
|
72
|
-
host = ActionController::Base.asset_host
|
73
|
-
end
|
74
|
-
|
75
|
-
host ||= request.base_url if request && options[:protocol] == :request
|
76
|
-
return unless host
|
77
|
-
|
78
|
-
if host.respond_to?(:call)
|
79
|
-
arity = host.respond_to?(:arity) ? host.arity : host.method(:call).arity
|
80
|
-
args = [source]
|
81
|
-
args << request if request && (arity > 1 || arity < 0)
|
82
|
-
host = host.call(*args)
|
83
|
-
elsif host =~ /%d/
|
84
|
-
host = host % (Zlib.crc32(source) % 4)
|
85
|
-
end
|
86
|
-
|
87
|
-
if host =~ URI_REGEXP
|
88
|
-
host
|
89
|
-
else
|
90
|
-
protocol = options[:protocol] || (request ? :request : :relative)
|
91
|
-
case protocol
|
92
|
-
when :relative
|
93
|
-
"//#{host}"
|
94
|
-
when :request
|
95
|
-
"#{request.protocol}#{host}"
|
96
|
-
else
|
97
|
-
"#{protocol}://#{host}"
|
98
|
-
end
|
99
|
-
end
|
100
|
-
end
|
101
|
-
|
102
|
-
def javascript_path(source, options = {})
|
103
|
-
path_to_asset(source, {:type => :javascript}.merge(options))
|
104
|
-
end
|
105
|
-
alias_method :path_to_javascript, :javascript_path
|
106
|
-
|
107
|
-
def stylesheet_path(source, options = {})
|
108
|
-
path_to_asset(source, {:type => :stylesheet}.merge(options))
|
109
|
-
end
|
110
|
-
alias_method :path_to_stylesheet, :stylesheet_path
|
111
|
-
|
112
|
-
def image_path(source, options = {})
|
113
|
-
path_to_asset(source, {:type => :image}.merge(options))
|
114
|
-
end
|
115
|
-
alias_method :path_to_image, :image_path
|
116
|
-
|
117
|
-
def video_path(source, options = {})
|
118
|
-
path_to_asset(source, {:type => :video}.merge(options))
|
119
|
-
end
|
120
|
-
alias_method :path_to_video, :video_path
|
121
|
-
|
122
|
-
def audio_path(source, options = {})
|
123
|
-
path_to_asset(source, {:type => :audio}.merge(options))
|
124
|
-
end
|
125
|
-
alias_method :path_to_audio, :audio_path
|
126
|
-
|
127
|
-
def font_path(source, options = {})
|
128
|
-
path_to_asset(source, {:type => :font}.merge(options))
|
129
|
-
end
|
130
|
-
alias_method :path_to_font, :font_path
|
131
|
-
end
|
132
|
-
end
|
133
|
-
end
|