Class: KeeperSecretsManager::FieldTypes::Field

Inherits:
Object
  • Object
show all
Defined in:
lib/keeper_secrets_manager/field_types.rb

Overview

Base field helper

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(type:, value:, label: nil, required: false, privacy_screen: false) ⇒ Field

Returns a new instance of Field.



7
8
9
10
11
12
13
14
15
# File 'lib/keeper_secrets_manager/field_types.rb', line 7

def initialize(type:, value:, label: nil, required: false, privacy_screen: false)
  @type = type
  @label = label
  @required = required
  @privacy_screen = privacy_screen

  # Ensure value is always an array
  @value = value.is_a?(Array) ? value : [value]
end

Instance Attribute Details

#labelObject

Returns the value of attribute label.



5
6
7
# File 'lib/keeper_secrets_manager/field_types.rb', line 5

def label
  @label
end

#privacy_screenObject

Returns the value of attribute privacy_screen.



5
6
7
# File 'lib/keeper_secrets_manager/field_types.rb', line 5

def privacy_screen
  @privacy_screen
end

#requiredObject

Returns the value of attribute required.



5
6
7
# File 'lib/keeper_secrets_manager/field_types.rb', line 5

def required
  @required
end

#typeObject

Returns the value of attribute type.



5
6
7
# File 'lib/keeper_secrets_manager/field_types.rb', line 5

def type
  @type
end

#valueObject

Returns the value of attribute value.



5
6
7
# File 'lib/keeper_secrets_manager/field_types.rb', line 5

def value
  @value
end

Instance Method Details

#to_hObject



17
18
19
20
21
22
23
# File 'lib/keeper_secrets_manager/field_types.rb', line 17

def to_h
  h = { 'type' => type, 'value' => value }
  h['label'] = label if label
  h['required'] = required if required
  h['privacyScreen'] = privacy_screen if privacy_screen
  h
end