Sha256: 06b8bce942b51c47e21f716ba56879b0d6a7d8891ae06c80a703c352ae0b75b7

Contents?: true

Size: 638 Bytes

Versions: 70

Compression:

Stored size: 638 Bytes

Contents

module Avo
  module Fields
    class StatusField < BaseField
      def initialize(id, **args, &block)
        super(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]
      end

      def status
        status = "success"
        if value.present?
          status = "failed" if @failed_when.include? value.to_sym
          status = "loading" if @loading_when.include? value.to_sym
        end

        status
      end
    end
  end
end

Version data entries

70 entries across 70 versions & 1 rubygems

Version Path
avo-2.53.0 lib/avo/fields/status_field.rb
avo-2.52.0 lib/avo/fields/status_field.rb
avo-2.49.0 lib/avo/fields/status_field.rb
avo-2.48.0 lib/avo/fields/status_field.rb
avo-2.47.0 lib/avo/fields/status_field.rb
avo-2.46.0 lib/avo/fields/status_field.rb
avo-2.45.0 lib/avo/fields/status_field.rb
avo-2.44.0 lib/avo/fields/status_field.rb
avo-2.43.0 lib/avo/fields/status_field.rb
avo-2.42.2 lib/avo/fields/status_field.rb
avo-2.42.1 lib/avo/fields/status_field.rb
avo-2.42.0 lib/avo/fields/status_field.rb
avo-2.41.0 lib/avo/fields/status_field.rb
avo-2.40.0 lib/avo/fields/status_field.rb
avo-2.39.0 lib/avo/fields/status_field.rb
avo-2.38.0 lib/avo/fields/status_field.rb
avo-2.37.2 lib/avo/fields/status_field.rb
avo-2.37.1 lib/avo/fields/status_field.rb
avo-2.37.0 lib/avo/fields/status_field.rb
avo-2.36.3 lib/avo/fields/status_field.rb