lib/quby/compiler/dsl/questions/base.rb in quby-compiler-0.3.1 vs lib/quby/compiler/dsl/questions/base.rb in quby-compiler-0.3.3

- old
+ new

@@ -8,12 +8,12 @@ attr_reader :key attr_reader :title attr_reader :type attr_reader :questionnaire - def initialize(key, options = {}) - @questionnaire = options[:questionnaire] + def initialize(key, questionnaire:, **options) + @questionnaire = questionnaire end def build @question end @@ -109,11 +109,11 @@ instance_eval(&block) if block end end module Subquestions - def initialize(key, options = {}, &block) + def initialize(key, **options, &block) super @default_question_options = options[:default_question_options] || {} @title_question = nil end @@ -124,33 +124,33 @@ end super end - def title_question(key, options = {}, &block) + def title_question(key, **options, &block) options = @default_question_options.merge({depends_on: @question.key, questionnaire: @questionnaire, parent: @question, presentation: :next_to_title, allow_blank_titles: @question.allow_blank_titles}.merge(options)) check_question_keys_uniqueness key, options, @questionnaire - question = QuestionBuilder.build(key, options, &block) + question = QuestionBuilder.build(key, **options, &block) @questionnaire.register_question(question) @title_question = question end - def question(key, options = {}, &block) + def question(key, **options, &block) options = @default_question_options.merge(options) .merge(questionnaire: @questionnaire, parent: @question, parent_option_key: @question.options.last.key) check_question_keys_uniqueness key, options, @questionnaire - question = QuestionBuilder.build(key, options, &block) + question = QuestionBuilder.build(key, **options, &block) @questionnaire.register_question(question) @question.options.last.questions << question end end