sprockets-rails 2.3.3 → 3.4.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.
@@ -0,0 +1,11 @@
1
+ require 'sprockets'
2
+
3
+ module Sprockets
4
+ module Rails
5
+ module Utils
6
+ def using_sprockets4?
7
+ Gem::Version.new(Sprockets::VERSION) >= Gem::Version.new('4.x')
8
+ end
9
+ end
10
+ end
11
+ end
@@ -1,5 +1,5 @@
1
1
  module Sprockets
2
2
  module Rails
3
- VERSION = "2.3.3"
3
+ VERSION = "3.4.2"
4
4
  end
5
5
  end
@@ -2,9 +2,17 @@ require 'rails'
2
2
  require 'rails/railtie'
3
3
  require 'action_controller/railtie'
4
4
  require 'active_support/core_ext/module/remove_method'
5
+ require 'active_support/core_ext/numeric/bytes'
5
6
  require 'sprockets'
7
+
8
+ require 'sprockets/rails/asset_url_processor'
9
+ require 'sprockets/rails/sourcemapping_url_processor'
10
+ require 'sprockets/rails/context'
6
11
  require 'sprockets/rails/helper'
12
+ require 'sprockets/rails/quiet_assets'
13
+ require 'sprockets/rails/route_wrapper'
7
14
  require 'sprockets/rails/version'
15
+ require 'set'
8
16
 
9
17
  module Rails
10
18
  class Application
@@ -19,37 +27,40 @@ module Rails
19
27
  remove_possible_method :assets=
20
28
 
21
29
  # Returns Sprockets::Environment for app config.
22
- def assets
23
- @assets ||= Sprockets::Environment.new(root.to_s) do |env|
24
- env.version = ::Rails.env
30
+ attr_accessor :assets
25
31
 
26
- path = "#{config.root}/tmp/cache/assets/#{::Rails.env}"
27
- env.cache = Sprockets::Cache::FileStore.new(path)
32
+ # Returns Sprockets::Manifest for app config.
33
+ attr_accessor :assets_manifest
28
34
 
29
- env.context_class.class_eval do
30
- include ::Sprockets::Rails::Helper
31
- end
35
+ # Called from asset helpers to alert you if you reference an asset URL that
36
+ # isn't precompiled and hence won't be available in production.
37
+ def asset_precompiled?(logical_path)
38
+ if precompiled_assets.include?(logical_path)
39
+ true
40
+ elsif !config.cache_classes
41
+ # Check to see if precompile list has been updated
42
+ precompiled_assets(true).include?(logical_path)
43
+ else
44
+ false
32
45
  end
33
46
  end
34
- attr_writer :assets
35
47
 
36
- # Returns Sprockets::Manifest for app config.
37
- attr_accessor :assets_manifest
48
+ # Lazy-load the precompile list so we don't cause asset compilation at app
49
+ # boot time, but ensure we cache the list so we don't recompute it for each
50
+ # request or test case.
51
+ def precompiled_assets(clear_cache = false)
52
+ @precompiled_assets = nil if clear_cache
53
+ @precompiled_assets ||= assets_manifest.find(config.assets.precompile).map(&:logical_path).to_set
54
+ end
38
55
  end
39
56
 
40
57
  class Engine < Railtie
41
58
  # Skip defining append_assets_path on Rails <= 4.2
42
59
  unless initializers.find { |init| init.name == :append_assets_path }
43
60
  initializer :append_assets_path, :group => :all do |app|
44
- if paths["app/assets"].respond_to?(:existent_directories)
45
- app.config.assets.paths.unshift(*paths["vendor/assets"].existent_directories)
46
- app.config.assets.paths.unshift(*paths["lib/assets"].existent_directories)
47
- app.config.assets.paths.unshift(*paths["app/assets"].existent_directories)
48
- else
49
- app.config.assets.paths.unshift(*paths["vendor/assets"].paths.select { |d| File.directory?(d) })
50
- app.config.assets.paths.unshift(*paths["lib/assets"].paths.select { |d| File.directory?(d) })
51
- app.config.assets.paths.unshift(*paths["app/assets"].paths.select { |d| File.directory?(d) })
52
- end
61
+ app.config.assets.paths.unshift(*paths["vendor/assets"].existent_directories)
62
+ app.config.assets.paths.unshift(*paths["lib/assets"].existent_directories)
63
+ app.config.assets.paths.unshift(*paths["app/assets"].existent_directories)
53
64
  end
54
65
  end
55
66
  end
@@ -57,8 +68,26 @@ end
57
68
 
58
69
  module Sprockets
59
70
  class Railtie < ::Rails::Railtie
60
- LOOSE_APP_ASSETS = lambda do |filename, path|
61
- path =~ /app\/assets/ && !%w(.js .css).include?(File.extname(filename))
71
+ include Sprockets::Rails::Utils
72
+
73
+ class ManifestNeededError < StandardError
74
+ def initialize
75
+ msg = "Expected to find a manifest file in `app/assets/config/manifest.js`\n" +
76
+ "But did not, please create this file and use it to link any assets that need\n" +
77
+ "to be rendered by your app:\n\n" +
78
+ "Example:\n" +
79
+ " //= link_tree ../images\n" +
80
+ " //= link_directory ../javascripts .js\n" +
81
+ " //= link_directory ../stylesheets .css\n" +
82
+ "and restart your server\n\n" +
83
+ "For more information see: https://github.com/rails/sprockets/blob/070fc01947c111d35bb4c836e9bb71962a8e0595/UPGRADING.md#manifestjs"
84
+ super msg
85
+ end
86
+ end
87
+
88
+ LOOSE_APP_ASSETS = lambda do |logical_path, filename|
89
+ filename.start_with?(::Rails.root.join("app/assets").to_s) &&
90
+ !['.js', '.css', ''].include?(File.extname(logical_path))
62
91
  end
63
92
 
64
93
  class OrderedOptions < ActiveSupport::OrderedOptions
@@ -68,92 +97,173 @@ module Sprockets
68
97
  end
69
98
 
70
99
  config.assets = OrderedOptions.new
71
- config.assets._blocks = []
72
- config.assets.paths = []
73
- config.assets.prefix = "/assets"
74
- config.assets.manifest = nil
75
- config.assets.precompile = [LOOSE_APP_ASSETS, /(?:\/|\\|\A)application\.(css|js)$/]
76
- config.assets.version = ""
77
- config.assets.debug = false
78
- config.assets.compile = true
79
- config.assets.digest = false
100
+ config.assets._blocks = []
101
+ config.assets.paths = []
102
+ config.assets.precompile = []
103
+ config.assets.prefix = "/assets"
104
+ config.assets.manifest = nil
105
+ config.assets.quiet = false
106
+ config.assets.resolve_assets_in_css_urls = true
107
+
108
+ initializer :set_default_precompile do |app|
109
+ if using_sprockets4?
110
+ raise ManifestNeededError unless ::Rails.root.join("app/assets/config/manifest.js").exist?
111
+ app.config.assets.precompile += %w( manifest.js )
112
+ else
113
+ app.config.assets.precompile += [LOOSE_APP_ASSETS, /(?:\/|\\|\A)application\.(css|js)$/]
114
+ end
115
+ end
116
+
117
+ initializer :quiet_assets do |app|
118
+ if app.config.assets.quiet
119
+ app.middleware.insert_before ::Rails::Rack::Logger, ::Sprockets::Rails::QuietAssets
120
+ end
121
+ end
122
+
123
+ initializer :asset_url_processor do |app|
124
+ if app.config.assets.resolve_assets_in_css_urls
125
+ Sprockets.register_postprocessor "text/css", ::Sprockets::Rails::AssetUrlProcessor
126
+ end
127
+ end
128
+
129
+ initializer :asset_sourcemap_url_processor do |app|
130
+ Sprockets.register_postprocessor "application/javascript", ::Sprockets::Rails::SourcemappingUrlProcessor
131
+ end
132
+
133
+ config.assets.version = ""
134
+ config.assets.debug = false
135
+ config.assets.compile = true
136
+ config.assets.digest = true
137
+ config.assets.cache_limit = 50.megabytes
138
+ config.assets.gzip = true
139
+ config.assets.check_precompiled_asset = true
140
+ config.assets.unknown_asset_fallback = true
141
+
142
+ config.assets.configure do |env|
143
+ config.assets.paths.each { |path| env.append_path(path) }
144
+ end
145
+
146
+ config.assets.configure do |env|
147
+ env.context_class.send :include, ::Sprockets::Rails::Context
148
+ env.context_class.assets_prefix = config.assets.prefix
149
+ env.context_class.digest_assets = config.assets.digest
150
+ env.context_class.config = config.action_controller
151
+ end
152
+
153
+ config.assets.configure do |env|
154
+ env.cache = Sprockets::Cache::FileStore.new(
155
+ "#{env.root}/tmp/cache/assets",
156
+ config.assets.cache_limit,
157
+ env.logger
158
+ )
159
+ end
160
+
161
+ Sprockets.register_dependency_resolver 'rails-env' do
162
+ ::Rails.env.to_s
163
+ end
164
+
165
+ config.assets.configure do |env|
166
+ env.depend_on 'rails-env'
167
+ end
168
+
169
+ config.assets.configure do |env|
170
+ env.version = config.assets.version
171
+ end
172
+
173
+ config.assets.configure do |env|
174
+ env.gzip = config.assets.gzip if env.respond_to?(:gzip=)
175
+ end
80
176
 
81
177
  rake_tasks do |app|
82
178
  require 'sprockets/rails/task'
83
179
  Sprockets::Rails::Task.new(app)
84
180
  end
85
181
 
86
- config.after_initialize do |app|
87
- config = app.config
88
-
89
- # Configuration options that should invalidate
90
- # the Sprockets cache when changed.
91
- app.assets.version = [
92
- app.assets.version,
93
- config.assets.version,
94
- config.action_controller.relative_url_root,
95
- (config.action_controller.asset_host unless config.action_controller.asset_host.respond_to?(:call)),
96
- Sprockets::Rails::VERSION
97
- ].compact.join('-')
98
-
99
- # Copy config.assets.paths to Sprockets
100
- config.assets.paths.each do |path|
101
- app.assets.append_path path
182
+ def build_environment(app, initialized = nil)
183
+ initialized = app.initialized? if initialized.nil?
184
+ unless initialized
185
+ ::Rails.logger.warn "Application uninitialized: Try calling YourApp::Application.initialize!"
102
186
  end
103
187
 
188
+ env = Sprockets::Environment.new(app.root.to_s)
189
+
190
+ config = app.config
191
+
104
192
  # Run app.assets.configure blocks
105
193
  config.assets._blocks.each do |block|
106
- block.call app.assets
194
+ block.call(env)
107
195
  end
108
196
 
109
197
  # Set compressors after the configure blocks since they can
110
198
  # define new compressors and we only accept existent compressors.
111
- app.assets.js_compressor = config.assets.js_compressor
112
- app.assets.css_compressor = config.assets.css_compressor
199
+ env.js_compressor = config.assets.js_compressor
200
+ env.css_compressor = config.assets.css_compressor
113
201
 
114
202
  # No more configuration changes at this point.
115
203
  # With cache classes on, Sprockets won't check the FS when files
116
204
  # change. Preferable in production when the FS only changes on
117
205
  # deploys when the app restarts.
118
206
  if config.cache_classes
119
- app.assets = app.assets.index
207
+ env = env.cached
120
208
  end
121
209
 
122
- manifest_assets_path = File.join(config.paths['public'].first, config.assets.prefix)
210
+ env
211
+ end
212
+
213
+ def self.build_manifest(app)
214
+ config = app.config
215
+ path = File.join(config.paths['public'].first, config.assets.prefix)
216
+ Sprockets::Manifest.new(app.assets, path, config.assets.manifest)
217
+ end
218
+
219
+ config.after_initialize do |app|
220
+ config = app.config
221
+
123
222
  if config.assets.compile
124
- app.assets_manifest = Sprockets::Manifest.new(app.assets, manifest_assets_path, config.assets.manifest)
125
- else
126
- app.assets_manifest = Sprockets::Manifest.new(manifest_assets_path, config.assets.manifest)
223
+ app.assets = self.build_environment(app, true)
224
+ app.routes.prepend do
225
+ mount app.assets => config.assets.prefix
226
+ end
227
+ end
228
+
229
+ app.assets_manifest = build_manifest(app)
230
+
231
+ if config.assets.resolve_with.nil?
232
+ config.assets.resolve_with = []
233
+ config.assets.resolve_with << :manifest if config.assets.digest && !config.assets.debug
234
+ config.assets.resolve_with << :environment if config.assets.compile
235
+ end
236
+
237
+ ActionDispatch::Routing::RouteWrapper.class_eval do
238
+ class_attribute :assets_prefix
239
+
240
+ if defined?(prepend) && ::Rails.version >= '4'
241
+ prepend Sprockets::Rails::RouteWrapper
242
+ else
243
+ include Sprockets::Rails::RouteWrapper
244
+ end
245
+
246
+ self.assets_prefix = config.assets.prefix
127
247
  end
128
248
 
129
249
  ActiveSupport.on_load(:action_view) do
130
250
  include Sprockets::Rails::Helper
131
251
 
132
252
  # Copy relevant config to AV context
133
- self.debug_assets = config.assets.debug
134
- self.digest_assets = config.assets.digest
135
- self.assets_prefix = config.assets.prefix
253
+ self.debug_assets = config.assets.debug
254
+ self.digest_assets = config.assets.digest
255
+ self.assets_prefix = config.assets.prefix
256
+ self.assets_precompile = config.assets.precompile
136
257
 
137
- # Copy over to Sprockets as well
138
- context = app.assets.context_class
139
- context.assets_prefix = config.assets.prefix
140
- context.digest_assets = config.assets.digest
141
- context.config = config.action_controller
142
-
143
- self.assets_environment = app.assets if config.assets.compile
258
+ self.assets_environment = app.assets
144
259
  self.assets_manifest = app.assets_manifest
145
- end
146
260
 
147
- Sprockets::Rails::Helper.precompile ||= app.config.assets.precompile
148
- Sprockets::Rails::Helper.assets ||= app.assets
149
- Sprockets::Rails::Helper.raise_runtime_errors = app.config.assets.raise_runtime_errors
261
+ self.resolve_assets_with = config.assets.resolve_with
150
262
 
151
- if config.assets.compile
152
- if app.routes.respond_to?(:prepend)
153
- app.routes.prepend do
154
- mount app.assets => config.assets.prefix
155
- end
156
- end
263
+ self.check_precompiled_asset = config.assets.check_precompiled_asset
264
+ self.unknown_asset_fallback = config.assets.unknown_asset_fallback
265
+ # Expose the app precompiled asset check to the view
266
+ self.precompiled_asset_checker = -> logical_path { app.asset_precompiled? logical_path }
157
267
  end
158
268
  end
159
269
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sprockets-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.3
4
+ version: 3.4.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: 2015-09-08 00:00:00.000000000 Z
11
+ date: 2021-12-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sprockets
@@ -16,62 +16,56 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '2.8'
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: '2.8'
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: '3.0'
33
+ version: '5.2'
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: '3.0'
40
+ version: '5.2'
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: '3.0'
47
+ version: '5.2'
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: '3.0'
54
+ version: '5.2'
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: '3.0'
61
+ version: '5.2'
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: '3.0'
68
+ version: '5.2'
75
69
  - !ruby/object:Gem::Dependency
76
70
  name: rake
77
71
  requirement: !ruby/object:Gem::Requirement
@@ -114,26 +108,30 @@ dependencies:
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:
123
- - LICENSE
117
+ - MIT-LICENSE
124
118
  - README.md
125
119
  - lib/sprockets/rails.rb
120
+ - lib/sprockets/rails/asset_url_processor.rb
121
+ - lib/sprockets/rails/context.rb
126
122
  - lib/sprockets/rails/helper.rb
127
- - lib/sprockets/rails/legacy_asset_tag_helper.rb
128
- - lib/sprockets/rails/legacy_asset_url_helper.rb
123
+ - lib/sprockets/rails/quiet_assets.rb
124
+ - lib/sprockets/rails/route_wrapper.rb
125
+ - lib/sprockets/rails/sourcemapping_url_processor.rb
129
126
  - lib/sprockets/rails/task.rb
127
+ - lib/sprockets/rails/utils.rb
130
128
  - lib/sprockets/rails/version.rb
131
129
  - lib/sprockets/railtie.rb
132
130
  homepage: https://github.com/rails/sprockets-rails
133
131
  licenses:
134
132
  - MIT
135
133
  metadata: {}
136
- post_install_message:
134
+ post_install_message:
137
135
  rdoc_options: []
138
136
  require_paths:
139
137
  - lib
@@ -141,17 +139,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
141
139
  requirements:
142
140
  - - ">="
143
141
  - !ruby/object:Gem::Version
144
- version: '0'
142
+ version: '2.5'
145
143
  required_rubygems_version: !ruby/object:Gem::Requirement
146
144
  requirements:
147
145
  - - ">="
148
146
  - !ruby/object:Gem::Version
149
147
  version: '0'
150
148
  requirements: []
151
- rubyforge_project:
152
- rubygems_version: 2.4.7
153
- signing_key:
149
+ rubygems_version: 3.2.32
150
+ signing_key:
154
151
  specification_version: 4
155
152
  summary: Sprockets Rails integration
156
153
  test_files: []
157
- has_rdoc:
@@ -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