class ActiveStorage::Filename::Parameters

:nodoc:

def ascii

def ascii
  'filename="' + percent_escape(I18n.transliterate(filename.sanitized), TRADITIONAL_ESCAPED_CHAR) + '"'
end

def combined

def combined
  "#{ascii}; #{utf8}"
end

def initialize(filename)

def initialize(filename)
  @filename = filename
end

def percent_escape(string, pattern)

def percent_escape(string, pattern)
  string.gsub(pattern) do |char|
    char.bytes.map { |byte| "%%%02X" % byte }.join
  end
end

def to_s

def to_s
  combined
end

def utf8

def utf8
  "filename*=UTF-8''" + percent_escape(filename.sanitized, RFC_5987_ESCAPED_CHAR)
end