diff --git a/lib/avo/fields/status_field.rb b/lib/avo/fields/status_field.rb index 1f08ebd5d1..e0d1236ca8 100644 --- a/lib/avo/fields/status_field.rb +++ b/lib/avo/fields/status_field.rb @@ -7,10 +7,12 @@ def initialize(id, **args, &block) @loading_when = args[:loading_when].present? ? [args[:loading_when]].flatten.map(&:to_sym) : [:waiting, :running] @failed_when = args[:failed_when].present? ? [args[:failed_when]].flatten.map(&:to_sym) : [:failed] @success_when = args[:success_when].present? ? [args[:success_when]].flatten.map(&:to_sym) : [] + @neutral_when = args[:neutral_when].present? ? [args[:neutral_when]].flatten.map(&:to_sym) : nil end def status status = "neutral" + if value.present? status = "failed" if @failed_when.include? value.to_sym status = "loading" if @loading_when.include? value.to_sym @@ -21,7 +23,7 @@ def status end def options_for_filter - [@failed_when, @loading_when].flatten + [@failed_when, @loading_when, @success_when, @neutral_when].flatten.uniq end end end