Returns the correct encoding for a given mime type, while falling back on the default external encoding, if it exists.
# File lib/sprockets/mime.rb, line 42 def encoding_for_mime_type(type) encoding = Encoding::BINARY if type =~ %r{^(image|audio|video)/} encoding ||= default_external_encoding if respond_to?(:default_external_encoding) encoding end
# File lib/sprockets/mime.rb, line 24 def extension_for_mime_type(type) mime_types.key(type) end
Returns a `Hash` of registered mime types registered on the environment and those part of `Rack::Mime`.
If an `ext` is given, it will lookup the mime type for that extension.
# File lib/sprockets/mime.rb, line 9 def mime_types(ext = nil) if ext.nil? Rack::Mime::MIME_TYPES.merge(@mime_types) else ext = Sprockets::Utils.normalize_extension(ext) @mime_types[ext] || Rack::Mime::MIME_TYPES[ext] end end
Register a new mime type.
# File lib/sprockets/mime.rb, line 34 def register_mime_type(mime_type, ext) ext = Sprockets::Utils.normalize_extension(ext) @mime_types[ext] = mime_type end
Returns a `Hash` of explicitly registered mime types.
# File lib/sprockets/mime.rb, line 19 def registered_mime_types @mime_types.dup end