Class: Imgproxy::Config

Inherits:
Anyway::Config
  • Object
show all
Defined in:
lib/imgproxy/config.rb

Overview

Imgproxy config

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#always_escape_plain_urlsString

Always escape plain URLs. Defaults to false

Returns:

  • (String)


51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# File 'lib/imgproxy/config.rb', line 51

class Config < Anyway::Config
  attr_config(
    :endpoint,
    :key,
    :salt,
    :raw_key,
    :raw_salt,
    signature_size: 32,
    use_short_options: true,
    base64_encode_urls: false,
    always_escape_plain_urls: false,
    use_s3_urls: false,
    use_gcs_urls: false,
    gcs_bucket: nil,
    shrine_host: nil,
  )

  alias_method :set_key, :key=
  alias_method :set_raw_key, :raw_key=
  alias_method :set_salt, :salt=
  alias_method :set_raw_salt, :raw_salt=
  private :set_key, :set_raw_key, :set_salt, :set_raw_salt

  def key=(value)
    value = value&.to_s
    super(value)
    set_raw_key(value && [value].pack("H*"))
  end

  def raw_key=(value)
    value = value&.to_s
    super(value)
    set_key(value&.unpack("H*")&.first)
  end

  def salt=(value)
    value = value&.to_s
    super(value)
    set_raw_salt(value && [value].pack("H*"))
  end

  def raw_salt=(value)
    value = value&.to_s
    super(value)
    set_salt(value&.unpack("H*")&.first)
  end

  # @deprecated Please use {#key} instead
  def hex_key=(value)
    warn "[DEPRECATION] #hex_key is deprecated. Please use #key instead."
    self.key = value
  end

  # @deprecated Please use {#salt} instead
  def hex_salt=(value)
    warn "[DEPRECATION] #hex_salt is deprecated. Please use #salt instead."
    self.salt = value
  end

  # URL adapters config. Allows to use this gem with ActiveStorage, Shrine, etc.
  #
  #   Imgproxy.configure do |config|
  #     config.url_adapters.add Imgproxy::UrlAdapters::ActiveStorage.new
  #   end
  #
  #   Imgproxy.url_for(user.avatar)
  #
  # @return [Imgproxy::UrlAdapters]
  # @see Imgproxy::UrlAdapters
  def url_adapters
    @url_adapters ||= Imgproxy::UrlAdapters.new
  end
end

#base64_encode_urlsString

Base64 encode the URL. Defaults to false

Returns:

  • (String)


51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# File 'lib/imgproxy/config.rb', line 51

class Config < Anyway::Config
  attr_config(
    :endpoint,
    :key,
    :salt,
    :raw_key,
    :raw_salt,
    signature_size: 32,
    use_short_options: true,
    base64_encode_urls: false,
    always_escape_plain_urls: false,
    use_s3_urls: false,
    use_gcs_urls: false,
    gcs_bucket: nil,
    shrine_host: nil,
  )

  alias_method :set_key, :key=
  alias_method :set_raw_key, :raw_key=
  alias_method :set_salt, :salt=
  alias_method :set_raw_salt, :raw_salt=
  private :set_key, :set_raw_key, :set_salt, :set_raw_salt

  def key=(value)
    value = value&.to_s
    super(value)
    set_raw_key(value && [value].pack("H*"))
  end

  def raw_key=(value)
    value = value&.to_s
    super(value)
    set_key(value&.unpack("H*")&.first)
  end

  def salt=(value)
    value = value&.to_s
    super(value)
    set_raw_salt(value && [value].pack("H*"))
  end

  def raw_salt=(value)
    value = value&.to_s
    super(value)
    set_salt(value&.unpack("H*")&.first)
  end

  # @deprecated Please use {#key} instead
  def hex_key=(value)
    warn "[DEPRECATION] #hex_key is deprecated. Please use #key instead."
    self.key = value
  end

  # @deprecated Please use {#salt} instead
  def hex_salt=(value)
    warn "[DEPRECATION] #hex_salt is deprecated. Please use #salt instead."
    self.salt = value
  end

  # URL adapters config. Allows to use this gem with ActiveStorage, Shrine, etc.
  #
  #   Imgproxy.configure do |config|
  #     config.url_adapters.add Imgproxy::UrlAdapters::ActiveStorage.new
  #   end
  #
  #   Imgproxy.url_for(user.avatar)
  #
  # @return [Imgproxy::UrlAdapters]
  # @see Imgproxy::UrlAdapters
  def url_adapters
    @url_adapters ||= Imgproxy::UrlAdapters.new
  end
end

#endpointString

imgproxy endpoint

Returns:

  • (String)


51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# File 'lib/imgproxy/config.rb', line 51

class Config < Anyway::Config
  attr_config(
    :endpoint,
    :key,
    :salt,
    :raw_key,
    :raw_salt,
    signature_size: 32,
    use_short_options: true,
    base64_encode_urls: false,
    always_escape_plain_urls: false,
    use_s3_urls: false,
    use_gcs_urls: false,
    gcs_bucket: nil,
    shrine_host: nil,
  )

  alias_method :set_key, :key=
  alias_method :set_raw_key, :raw_key=
  alias_method :set_salt, :salt=
  alias_method :set_raw_salt, :raw_salt=
  private :set_key, :set_raw_key, :set_salt, :set_raw_salt

  def key=(value)
    value = value&.to_s
    super(value)
    set_raw_key(value && [value].pack("H*"))
  end

  def raw_key=(value)
    value = value&.to_s
    super(value)
    set_key(value&.unpack("H*")&.first)
  end

  def salt=(value)
    value = value&.to_s
    super(value)
    set_raw_salt(value && [value].pack("H*"))
  end

  def raw_salt=(value)
    value = value&.to_s
    super(value)
    set_salt(value&.unpack("H*")&.first)
  end

  # @deprecated Please use {#key} instead
  def hex_key=(value)
    warn "[DEPRECATION] #hex_key is deprecated. Please use #key instead."
    self.key = value
  end

  # @deprecated Please use {#salt} instead
  def hex_salt=(value)
    warn "[DEPRECATION] #hex_salt is deprecated. Please use #salt instead."
    self.salt = value
  end

  # URL adapters config. Allows to use this gem with ActiveStorage, Shrine, etc.
  #
  #   Imgproxy.configure do |config|
  #     config.url_adapters.add Imgproxy::UrlAdapters::ActiveStorage.new
  #   end
  #
  #   Imgproxy.url_for(user.avatar)
  #
  # @return [Imgproxy::UrlAdapters]
  # @see Imgproxy::UrlAdapters
  def url_adapters
    @url_adapters ||= Imgproxy::UrlAdapters.new
  end
end

#gcs_bucketString

Google Cloud Storage bucket name

Returns:

  • (String)


51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# File 'lib/imgproxy/config.rb', line 51

class Config < Anyway::Config
  attr_config(
    :endpoint,
    :key,
    :salt,
    :raw_key,
    :raw_salt,
    signature_size: 32,
    use_short_options: true,
    base64_encode_urls: false,
    always_escape_plain_urls: false,
    use_s3_urls: false,
    use_gcs_urls: false,
    gcs_bucket: nil,
    shrine_host: nil,
  )

  alias_method :set_key, :key=
  alias_method :set_raw_key, :raw_key=
  alias_method :set_salt, :salt=
  alias_method :set_raw_salt, :raw_salt=
  private :set_key, :set_raw_key, :set_salt, :set_raw_salt

  def key=(value)
    value = value&.to_s
    super(value)
    set_raw_key(value && [value].pack("H*"))
  end

  def raw_key=(value)
    value = value&.to_s
    super(value)
    set_key(value&.unpack("H*")&.first)
  end

  def salt=(value)
    value = value&.to_s
    super(value)
    set_raw_salt(value && [value].pack("H*"))
  end

  def raw_salt=(value)
    value = value&.to_s
    super(value)
    set_salt(value&.unpack("H*")&.first)
  end

  # @deprecated Please use {#key} instead
  def hex_key=(value)
    warn "[DEPRECATION] #hex_key is deprecated. Please use #key instead."
    self.key = value
  end

  # @deprecated Please use {#salt} instead
  def hex_salt=(value)
    warn "[DEPRECATION] #hex_salt is deprecated. Please use #salt instead."
    self.salt = value
  end

  # URL adapters config. Allows to use this gem with ActiveStorage, Shrine, etc.
  #
  #   Imgproxy.configure do |config|
  #     config.url_adapters.add Imgproxy::UrlAdapters::ActiveStorage.new
  #   end
  #
  #   Imgproxy.url_for(user.avatar)
  #
  # @return [Imgproxy::UrlAdapters]
  # @see Imgproxy::UrlAdapters
  def url_adapters
    @url_adapters ||= Imgproxy::UrlAdapters.new
  end
end

#keyString

imgproxy hex-encoded signature key

Returns:

  • (String)


51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# File 'lib/imgproxy/config.rb', line 51

class Config < Anyway::Config
  attr_config(
    :endpoint,
    :key,
    :salt,
    :raw_key,
    :raw_salt,
    signature_size: 32,
    use_short_options: true,
    base64_encode_urls: false,
    always_escape_plain_urls: false,
    use_s3_urls: false,
    use_gcs_urls: false,
    gcs_bucket: nil,
    shrine_host: nil,
  )

  alias_method :set_key, :key=
  alias_method :set_raw_key, :raw_key=
  alias_method :set_salt, :salt=
  alias_method :set_raw_salt, :raw_salt=
  private :set_key, :set_raw_key, :set_salt, :set_raw_salt

  def key=(value)
    value = value&.to_s
    super(value)
    set_raw_key(value && [value].pack("H*"))
  end

  def raw_key=(value)
    value = value&.to_s
    super(value)
    set_key(value&.unpack("H*")&.first)
  end

  def salt=(value)
    value = value&.to_s
    super(value)
    set_raw_salt(value && [value].pack("H*"))
  end

  def raw_salt=(value)
    value = value&.to_s
    super(value)
    set_salt(value&.unpack("H*")&.first)
  end

  # @deprecated Please use {#key} instead
  def hex_key=(value)
    warn "[DEPRECATION] #hex_key is deprecated. Please use #key instead."
    self.key = value
  end

  # @deprecated Please use {#salt} instead
  def hex_salt=(value)
    warn "[DEPRECATION] #hex_salt is deprecated. Please use #salt instead."
    self.salt = value
  end

  # URL adapters config. Allows to use this gem with ActiveStorage, Shrine, etc.
  #
  #   Imgproxy.configure do |config|
  #     config.url_adapters.add Imgproxy::UrlAdapters::ActiveStorage.new
  #   end
  #
  #   Imgproxy.url_for(user.avatar)
  #
  # @return [Imgproxy::UrlAdapters]
  # @see Imgproxy::UrlAdapters
  def url_adapters
    @url_adapters ||= Imgproxy::UrlAdapters.new
  end
end

#raw_keyString

Decoded signature key

Returns:

  • (String)


51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# File 'lib/imgproxy/config.rb', line 51

class Config < Anyway::Config
  attr_config(
    :endpoint,
    :key,
    :salt,
    :raw_key,
    :raw_salt,
    signature_size: 32,
    use_short_options: true,
    base64_encode_urls: false,
    always_escape_plain_urls: false,
    use_s3_urls: false,
    use_gcs_urls: false,
    gcs_bucket: nil,
    shrine_host: nil,
  )

  alias_method :set_key, :key=
  alias_method :set_raw_key, :raw_key=
  alias_method :set_salt, :salt=
  alias_method :set_raw_salt, :raw_salt=
  private :set_key, :set_raw_key, :set_salt, :set_raw_salt

  def key=(value)
    value = value&.to_s
    super(value)
    set_raw_key(value && [value].pack("H*"))
  end

  def raw_key=(value)
    value = value&.to_s
    super(value)
    set_key(value&.unpack("H*")&.first)
  end

  def salt=(value)
    value = value&.to_s
    super(value)
    set_raw_salt(value && [value].pack("H*"))
  end

  def raw_salt=(value)
    value = value&.to_s
    super(value)
    set_salt(value&.unpack("H*")&.first)
  end

  # @deprecated Please use {#key} instead
  def hex_key=(value)
    warn "[DEPRECATION] #hex_key is deprecated. Please use #key instead."
    self.key = value
  end

  # @deprecated Please use {#salt} instead
  def hex_salt=(value)
    warn "[DEPRECATION] #hex_salt is deprecated. Please use #salt instead."
    self.salt = value
  end

  # URL adapters config. Allows to use this gem with ActiveStorage, Shrine, etc.
  #
  #   Imgproxy.configure do |config|
  #     config.url_adapters.add Imgproxy::UrlAdapters::ActiveStorage.new
  #   end
  #
  #   Imgproxy.url_for(user.avatar)
  #
  # @return [Imgproxy::UrlAdapters]
  # @see Imgproxy::UrlAdapters
  def url_adapters
    @url_adapters ||= Imgproxy::UrlAdapters.new
  end
end

#raw_saltString

Decoded signature salt

Returns:

  • (String)


51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# File 'lib/imgproxy/config.rb', line 51

class Config < Anyway::Config
  attr_config(
    :endpoint,
    :key,
    :salt,
    :raw_key,
    :raw_salt,
    signature_size: 32,
    use_short_options: true,
    base64_encode_urls: false,
    always_escape_plain_urls: false,
    use_s3_urls: false,
    use_gcs_urls: false,
    gcs_bucket: nil,
    shrine_host: nil,
  )

  alias_method :set_key, :key=
  alias_method :set_raw_key, :raw_key=
  alias_method :set_salt, :salt=
  alias_method :set_raw_salt, :raw_salt=
  private :set_key, :set_raw_key, :set_salt, :set_raw_salt

  def key=(value)
    value = value&.to_s
    super(value)
    set_raw_key(value && [value].pack("H*"))
  end

  def raw_key=(value)
    value = value&.to_s
    super(value)
    set_key(value&.unpack("H*")&.first)
  end

  def salt=(value)
    value = value&.to_s
    super(value)
    set_raw_salt(value && [value].pack("H*"))
  end

  def raw_salt=(value)
    value = value&.to_s
    super(value)
    set_salt(value&.unpack("H*")&.first)
  end

  # @deprecated Please use {#key} instead
  def hex_key=(value)
    warn "[DEPRECATION] #hex_key is deprecated. Please use #key instead."
    self.key = value
  end

  # @deprecated Please use {#salt} instead
  def hex_salt=(value)
    warn "[DEPRECATION] #hex_salt is deprecated. Please use #salt instead."
    self.salt = value
  end

  # URL adapters config. Allows to use this gem with ActiveStorage, Shrine, etc.
  #
  #   Imgproxy.configure do |config|
  #     config.url_adapters.add Imgproxy::UrlAdapters::ActiveStorage.new
  #   end
  #
  #   Imgproxy.url_for(user.avatar)
  #
  # @return [Imgproxy::UrlAdapters]
  # @see Imgproxy::UrlAdapters
  def url_adapters
    @url_adapters ||= Imgproxy::UrlAdapters.new
  end
end

#saltString

imgproxy hex-encoded signature salt

Returns:

  • (String)


51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# File 'lib/imgproxy/config.rb', line 51

class Config < Anyway::Config
  attr_config(
    :endpoint,
    :key,
    :salt,
    :raw_key,
    :raw_salt,
    signature_size: 32,
    use_short_options: true,
    base64_encode_urls: false,
    always_escape_plain_urls: false,
    use_s3_urls: false,
    use_gcs_urls: false,
    gcs_bucket: nil,
    shrine_host: nil,
  )

  alias_method :set_key, :key=
  alias_method :set_raw_key, :raw_key=
  alias_method :set_salt, :salt=
  alias_method :set_raw_salt, :raw_salt=
  private :set_key, :set_raw_key, :set_salt, :set_raw_salt

  def key=(value)
    value = value&.to_s
    super(value)
    set_raw_key(value && [value].pack("H*"))
  end

  def raw_key=(value)
    value = value&.to_s
    super(value)
    set_key(value&.unpack("H*")&.first)
  end

  def salt=(value)
    value = value&.to_s
    super(value)
    set_raw_salt(value && [value].pack("H*"))
  end

  def raw_salt=(value)
    value = value&.to_s
    super(value)
    set_salt(value&.unpack("H*")&.first)
  end

  # @deprecated Please use {#key} instead
  def hex_key=(value)
    warn "[DEPRECATION] #hex_key is deprecated. Please use #key instead."
    self.key = value
  end

  # @deprecated Please use {#salt} instead
  def hex_salt=(value)
    warn "[DEPRECATION] #hex_salt is deprecated. Please use #salt instead."
    self.salt = value
  end

  # URL adapters config. Allows to use this gem with ActiveStorage, Shrine, etc.
  #
  #   Imgproxy.configure do |config|
  #     config.url_adapters.add Imgproxy::UrlAdapters::ActiveStorage.new
  #   end
  #
  #   Imgproxy.url_for(user.avatar)
  #
  # @return [Imgproxy::UrlAdapters]
  # @see Imgproxy::UrlAdapters
  def url_adapters
    @url_adapters ||= Imgproxy::UrlAdapters.new
  end
end

#shrine_hostString

Shrine host

Returns:

  • (String)


51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# File 'lib/imgproxy/config.rb', line 51

class Config < Anyway::Config
  attr_config(
    :endpoint,
    :key,
    :salt,
    :raw_key,
    :raw_salt,
    signature_size: 32,
    use_short_options: true,
    base64_encode_urls: false,
    always_escape_plain_urls: false,
    use_s3_urls: false,
    use_gcs_urls: false,
    gcs_bucket: nil,
    shrine_host: nil,
  )

  alias_method :set_key, :key=
  alias_method :set_raw_key, :raw_key=
  alias_method :set_salt, :salt=
  alias_method :set_raw_salt, :raw_salt=
  private :set_key, :set_raw_key, :set_salt, :set_raw_salt

  def key=(value)
    value = value&.to_s
    super(value)
    set_raw_key(value && [value].pack("H*"))
  end

  def raw_key=(value)
    value = value&.to_s
    super(value)
    set_key(value&.unpack("H*")&.first)
  end

  def salt=(value)
    value = value&.to_s
    super(value)
    set_raw_salt(value && [value].pack("H*"))
  end

  def raw_salt=(value)
    value = value&.to_s
    super(value)
    set_salt(value&.unpack("H*")&.first)
  end

  # @deprecated Please use {#key} instead
  def hex_key=(value)
    warn "[DEPRECATION] #hex_key is deprecated. Please use #key instead."
    self.key = value
  end

  # @deprecated Please use {#salt} instead
  def hex_salt=(value)
    warn "[DEPRECATION] #hex_salt is deprecated. Please use #salt instead."
    self.salt = value
  end

  # URL adapters config. Allows to use this gem with ActiveStorage, Shrine, etc.
  #
  #   Imgproxy.configure do |config|
  #     config.url_adapters.add Imgproxy::UrlAdapters::ActiveStorage.new
  #   end
  #
  #   Imgproxy.url_for(user.avatar)
  #
  # @return [Imgproxy::UrlAdapters]
  # @see Imgproxy::UrlAdapters
  def url_adapters
    @url_adapters ||= Imgproxy::UrlAdapters.new
  end
end

#signature_sizeString

imgproxy signature size. Defaults to 32

Returns:

  • (String)


51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# File 'lib/imgproxy/config.rb', line 51

class Config < Anyway::Config
  attr_config(
    :endpoint,
    :key,
    :salt,
    :raw_key,
    :raw_salt,
    signature_size: 32,
    use_short_options: true,
    base64_encode_urls: false,
    always_escape_plain_urls: false,
    use_s3_urls: false,
    use_gcs_urls: false,
    gcs_bucket: nil,
    shrine_host: nil,
  )

  alias_method :set_key, :key=
  alias_method :set_raw_key, :raw_key=
  alias_method :set_salt, :salt=
  alias_method :set_raw_salt, :raw_salt=
  private :set_key, :set_raw_key, :set_salt, :set_raw_salt

  def key=(value)
    value = value&.to_s
    super(value)
    set_raw_key(value && [value].pack("H*"))
  end

  def raw_key=(value)
    value = value&.to_s
    super(value)
    set_key(value&.unpack("H*")&.first)
  end

  def salt=(value)
    value = value&.to_s
    super(value)
    set_raw_salt(value && [value].pack("H*"))
  end

  def raw_salt=(value)
    value = value&.to_s
    super(value)
    set_salt(value&.unpack("H*")&.first)
  end

  # @deprecated Please use {#key} instead
  def hex_key=(value)
    warn "[DEPRECATION] #hex_key is deprecated. Please use #key instead."
    self.key = value
  end

  # @deprecated Please use {#salt} instead
  def hex_salt=(value)
    warn "[DEPRECATION] #hex_salt is deprecated. Please use #salt instead."
    self.salt = value
  end

  # URL adapters config. Allows to use this gem with ActiveStorage, Shrine, etc.
  #
  #   Imgproxy.configure do |config|
  #     config.url_adapters.add Imgproxy::UrlAdapters::ActiveStorage.new
  #   end
  #
  #   Imgproxy.url_for(user.avatar)
  #
  # @return [Imgproxy::UrlAdapters]
  # @see Imgproxy::UrlAdapters
  def url_adapters
    @url_adapters ||= Imgproxy::UrlAdapters.new
  end
end

#use_gcs_urlsString

Use short Google Cloud Storage urls (gs://…) when possible. Defaults to false

Returns:

  • (String)


51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# File 'lib/imgproxy/config.rb', line 51

class Config < Anyway::Config
  attr_config(
    :endpoint,
    :key,
    :salt,
    :raw_key,
    :raw_salt,
    signature_size: 32,
    use_short_options: true,
    base64_encode_urls: false,
    always_escape_plain_urls: false,
    use_s3_urls: false,
    use_gcs_urls: false,
    gcs_bucket: nil,
    shrine_host: nil,
  )

  alias_method :set_key, :key=
  alias_method :set_raw_key, :raw_key=
  alias_method :set_salt, :salt=
  alias_method :set_raw_salt, :raw_salt=
  private :set_key, :set_raw_key, :set_salt, :set_raw_salt

  def key=(value)
    value = value&.to_s
    super(value)
    set_raw_key(value && [value].pack("H*"))
  end

  def raw_key=(value)
    value = value&.to_s
    super(value)
    set_key(value&.unpack("H*")&.first)
  end

  def salt=(value)
    value = value&.to_s
    super(value)
    set_raw_salt(value && [value].pack("H*"))
  end

  def raw_salt=(value)
    value = value&.to_s
    super(value)
    set_salt(value&.unpack("H*")&.first)
  end

  # @deprecated Please use {#key} instead
  def hex_key=(value)
    warn "[DEPRECATION] #hex_key is deprecated. Please use #key instead."
    self.key = value
  end

  # @deprecated Please use {#salt} instead
  def hex_salt=(value)
    warn "[DEPRECATION] #hex_salt is deprecated. Please use #salt instead."
    self.salt = value
  end

  # URL adapters config. Allows to use this gem with ActiveStorage, Shrine, etc.
  #
  #   Imgproxy.configure do |config|
  #     config.url_adapters.add Imgproxy::UrlAdapters::ActiveStorage.new
  #   end
  #
  #   Imgproxy.url_for(user.avatar)
  #
  # @return [Imgproxy::UrlAdapters]
  # @see Imgproxy::UrlAdapters
  def url_adapters
    @url_adapters ||= Imgproxy::UrlAdapters.new
  end
end

#use_s3_urlsString

Use short S3 urls (s3://…) when possible. Defaults to false

Returns:

  • (String)


51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# File 'lib/imgproxy/config.rb', line 51

class Config < Anyway::Config
  attr_config(
    :endpoint,
    :key,
    :salt,
    :raw_key,
    :raw_salt,
    signature_size: 32,
    use_short_options: true,
    base64_encode_urls: false,
    always_escape_plain_urls: false,
    use_s3_urls: false,
    use_gcs_urls: false,
    gcs_bucket: nil,
    shrine_host: nil,
  )

  alias_method :set_key, :key=
  alias_method :set_raw_key, :raw_key=
  alias_method :set_salt, :salt=
  alias_method :set_raw_salt, :raw_salt=
  private :set_key, :set_raw_key, :set_salt, :set_raw_salt

  def key=(value)
    value = value&.to_s
    super(value)
    set_raw_key(value && [value].pack("H*"))
  end

  def raw_key=(value)
    value = value&.to_s
    super(value)
    set_key(value&.unpack("H*")&.first)
  end

  def salt=(value)
    value = value&.to_s
    super(value)
    set_raw_salt(value && [value].pack("H*"))
  end

  def raw_salt=(value)
    value = value&.to_s
    super(value)
    set_salt(value&.unpack("H*")&.first)
  end

  # @deprecated Please use {#key} instead
  def hex_key=(value)
    warn "[DEPRECATION] #hex_key is deprecated. Please use #key instead."
    self.key = value
  end

  # @deprecated Please use {#salt} instead
  def hex_salt=(value)
    warn "[DEPRECATION] #hex_salt is deprecated. Please use #salt instead."
    self.salt = value
  end

  # URL adapters config. Allows to use this gem with ActiveStorage, Shrine, etc.
  #
  #   Imgproxy.configure do |config|
  #     config.url_adapters.add Imgproxy::UrlAdapters::ActiveStorage.new
  #   end
  #
  #   Imgproxy.url_for(user.avatar)
  #
  # @return [Imgproxy::UrlAdapters]
  # @see Imgproxy::UrlAdapters
  def url_adapters
    @url_adapters ||= Imgproxy::UrlAdapters.new
  end
end

#use_short_optionsString

Use short processing option names (rs for resize, g for gravity, etc). Defaults to true

Returns:

  • (String)


51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# File 'lib/imgproxy/config.rb', line 51

class Config < Anyway::Config
  attr_config(
    :endpoint,
    :key,
    :salt,
    :raw_key,
    :raw_salt,
    signature_size: 32,
    use_short_options: true,
    base64_encode_urls: false,
    always_escape_plain_urls: false,
    use_s3_urls: false,
    use_gcs_urls: false,
    gcs_bucket: nil,
    shrine_host: nil,
  )

  alias_method :set_key, :key=
  alias_method :set_raw_key, :raw_key=
  alias_method :set_salt, :salt=
  alias_method :set_raw_salt, :raw_salt=
  private :set_key, :set_raw_key, :set_salt, :set_raw_salt

  def key=(value)
    value = value&.to_s
    super(value)
    set_raw_key(value && [value].pack("H*"))
  end

  def raw_key=(value)
    value = value&.to_s
    super(value)
    set_key(value&.unpack("H*")&.first)
  end

  def salt=(value)
    value = value&.to_s
    super(value)
    set_raw_salt(value && [value].pack("H*"))
  end

  def raw_salt=(value)
    value = value&.to_s
    super(value)
    set_salt(value&.unpack("H*")&.first)
  end

  # @deprecated Please use {#key} instead
  def hex_key=(value)
    warn "[DEPRECATION] #hex_key is deprecated. Please use #key instead."
    self.key = value
  end

  # @deprecated Please use {#salt} instead
  def hex_salt=(value)
    warn "[DEPRECATION] #hex_salt is deprecated. Please use #salt instead."
    self.salt = value
  end

  # URL adapters config. Allows to use this gem with ActiveStorage, Shrine, etc.
  #
  #   Imgproxy.configure do |config|
  #     config.url_adapters.add Imgproxy::UrlAdapters::ActiveStorage.new
  #   end
  #
  #   Imgproxy.url_for(user.avatar)
  #
  # @return [Imgproxy::UrlAdapters]
  # @see Imgproxy::UrlAdapters
  def url_adapters
    @url_adapters ||= Imgproxy::UrlAdapters.new
  end
end

Instance Method Details

#hex_key=(value) ⇒ Object

Deprecated.

Please use #key instead



99
100
101
102
# File 'lib/imgproxy/config.rb', line 99

def hex_key=(value)
  warn "[DEPRECATION] #hex_key is deprecated. Please use #key instead."
  self.key = value
end

#hex_salt=(value) ⇒ Object

Deprecated.

Please use #salt instead



105
106
107
108
# File 'lib/imgproxy/config.rb', line 105

def hex_salt=(value)
  warn "[DEPRECATION] #hex_salt is deprecated. Please use #salt instead."
  self.salt = value
end

#url_adaptersImgproxy::UrlAdapters

URL adapters config. Allows to use this gem with ActiveStorage, Shrine, etc.

Imgproxy.configure do |config|
  config.url_adapters.add Imgproxy::UrlAdapters::ActiveStorage.new
end

Imgproxy.url_for(user.avatar)

Returns:

See Also:



120
121
122
# File 'lib/imgproxy/config.rb', line 120

def url_adapters
  @url_adapters ||= Imgproxy::UrlAdapters.new
end