class Playbook::Props::Base
def initialize(default: nil, required: false)
def initialize(default: nil, required: false) @default = default @required = required end
def validate(_value)
def validate(_value) true end
def validate!(input_value)
def validate!(input_value) raise(Playbook::Props::Error, "#{inspect} is a required prop and needs to be provided a value") if required && input_value.nil? validate(value(input_value)) || raise(Playbook::Props::Error, "Invalid value (#{input_value.inspect}) for prop (#{inspect})") end
def value(value)
def value(value) value.nil? ? @default : value end