lib/pipekit/field_repository.rb in pipekit-1.0.0 vs lib/pipekit/field_repository.rb in pipekit-1.0.1

- old
+ new

@@ -1,25 +1,34 @@ module Pipekit module FieldRepository - def get_by_key(key) - key = Config.field_id(parent_resource, key) - search_fields("key", key) - end + include Repository + def get_by_key(key) + key = Config.field_id(parent_resource, key) + search_fields("key", key) + end - def get_by_name(name) - search_fields("name", name) - end + def get_by_name(name) + search_fields("name", name) + end - private + def find_label(field:,id:) + find_values(field).find({}) { |value| value["id"] == id }.fetch("label") + end - def search_fields(field_element, value) - result = request.get.select { |element| element[field_element] == value } + def find_values(field) + find_by(name: field)["options"] + end - raise ResourceNotFoundError.new("#{parent_resource}Field searching by element #{field_element} for #{value} could not be found") if result.empty? - result - end + private - def parent_resource - resource.chomp("Field") - end + def search_fields(field_element, value) + result = request.get.select { |element| element[field_element] == value } + + raise ResourceNotFoundError.new("#{parent_resource}Field searching by element #{field_element} for #{value} could not be found") if result.empty? + result + end + + def parent_resource + resource.chomp("Field") + end end end