Sha256: 94b694e6ffffce38d00f4b49b7e1dbf976126fd66c86603f8e2c261d31c7b8b0

Contents?: true

Size: 1.59 KB

Versions: 9

Compression:

Stored size: 1.59 KB

Contents

# frozen_string_literal: true

require 'quby/questionnaires/entities'

require 'quby/questionnaires/dsl/questions/base'
require 'quby/questionnaires/dsl/questions/checkbox_question_builder'
require 'quby/questionnaires/dsl/questions/date_question_builder'
require 'quby/questionnaires/dsl/questions/deprecated_question_builder'
require 'quby/questionnaires/dsl/questions/float_question_builder'
require 'quby/questionnaires/dsl/questions/integer_question_builder'
require 'quby/questionnaires/dsl/questions/radio_question_builder'
require 'quby/questionnaires/dsl/questions/select_question_builder'
require 'quby/questionnaires/dsl/questions/string_question_builder'
require 'quby/questionnaires/dsl/questions/text_question_builder'

module Quby
  module Questionnaires
    module DSL
      module QuestionBuilder
        include Helpers
        BUILDERS = {
          'string'    => Questions::StringQuestionBuilder,
          'textarea'  => Questions::TextQuestionBuilder,
          'integer'   => Questions::IntegerQuestionBuilder,
          'float'     => Questions::FloatQuestionBuilder,
          'radio'     => Questions::RadioQuestionBuilder,
          'scale'     => Questions::RadioQuestionBuilder,
          'select'    => Questions::SelectQuestionBuilder,
          'check_box' => Questions::CheckboxQuestionBuilder,
          'date'      => Questions::DateQuestionBuilder,
          'hidden'    => Questions::DeprecatedQuestionBuilder
        }

        def self.build(key, options = {}, &block)
          BUILDERS.fetch(options.fetch(:type).to_s).build(key, options, &block)
        end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
quby-4.0.4 lib/quby/questionnaires/dsl/question_builder.rb
quby-4.0.3 lib/quby/questionnaires/dsl/question_builder.rb
quby-4.0.2 lib/quby/questionnaires/dsl/question_builder.rb
quby-4.0.1 lib/quby/questionnaires/dsl/question_builder.rb
quby-4.0.0 lib/quby/questionnaires/dsl/question_builder.rb
quby-3.2.2 lib/quby/questionnaires/dsl/question_builder.rb
quby-3.2.1 lib/quby/questionnaires/dsl/question_builder.rb
quby-3.2.0 lib/quby/questionnaires/dsl/question_builder.rb
quby-3.2.0.pre.pre1 lib/quby/questionnaires/dsl/question_builder.rb