Class: Kward::RPC::AttachmentNormalizer
- Inherits:
-
Object
- Object
- Kward::RPC::AttachmentNormalizer
- Defined in:
- lib/kward/rpc/attachment_normalizer.rb
Overview
Validates and normalizes RPC image attachments.
Constant Summary collapse
- IMAGE_MIME_TYPES =
["image/png", "image/jpeg", "image/gif", "image/webp"].freeze
- MAX_BYTES =
10 * 1024 * 1024
Instance Method Summary collapse
-
#initialize(max_bytes: MAX_BYTES, mime_types: IMAGE_MIME_TYPES) ⇒ AttachmentNormalizer
constructor
A new instance of AttachmentNormalizer.
- #normalize(attachments) ⇒ Object
Constructor Details
#initialize(max_bytes: MAX_BYTES, mime_types: IMAGE_MIME_TYPES) ⇒ AttachmentNormalizer
Returns a new instance of AttachmentNormalizer.
13 14 15 16 |
# File 'lib/kward/rpc/attachment_normalizer.rb', line 13 def initialize(max_bytes: MAX_BYTES, mime_types: IMAGE_MIME_TYPES) @max_bytes = max_bytes @mime_types = mime_types end |
Instance Method Details
#normalize(attachments) ⇒ Object
18 19 20 21 22 23 |
# File 'lib/kward/rpc/attachment_normalizer.rb', line 18 def normalize() return [] if .nil? raise ArgumentError, "attachments must be an array" unless .is_a?(Array) .map { || () } end |