summaryrefslogtreecommitdiff
path: root/app/components/pajamas/component.rb
blob: b05d93b680ecc9ce4a83e18f0fd48e06f0f6dd4a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# frozen_string_literal: true

module Pajamas
  class Component < ViewComponent::Base
    private

    # :nocov:

    # Filter a given a value against a list of allowed values
    # If no value is given or value is not allowed return default one
    #
    # @param [Object] value
    # @param [Enumerable] allowed_values
    # @param [Object] default
    def filter_attribute(value, allowed_values, default: nil)
      return default unless value
      return value if allowed_values.include?(value)

      default
    end
    # :nocov:
  end
end