Sha256: 37c21212b65dcbbf55dcc7bcc9a3fe4d5d12b054c7b7785f13c42cbaede39f4d

Contents?: true

Size: 804 Bytes

Versions: 4

Compression:

Stored size: 804 Bytes

Contents

# frozen_string_literal: true

module Playbook
  module PbForm
    class FormWith < Playbook::KitBase
      class FormBuilder < ::ActionView::Helpers::FormBuilder
        include ::Playbook::PbForm::FormBuilder
      end

      prop :options, type: Playbook::Props::Hash, default: {}
      prop :validate, type: Playbook::Props::Boolean, default: false

      def data
        prop(:data).merge("pb-form-validation" => validate)
      end

      def options
        { url: "" }.merge(Hash(prop(:options)))
      end

      def classname
        [generate_classname("pb-form"), options[:class]].join(" ")
      end

      def form_builder
        ::Playbook::PbForm::FormWith::FormBuilder
      end

      def render_in(view_context, &_block)
        super(view_context, &nil)
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
playbook_ui-8.0.0 app/pb_kits/playbook/pb_form/form_with.rb
playbook_ui-8.0.0.pre.alpha5 app/pb_kits/playbook/pb_form/form_with.rb
playbook_ui-8.0.0.pre.alpha4 app/pb_kits/playbook/pb_form/form_with.rb
playbook_ui-8.0.0.pre.alpha1 app/pb_kits/playbook/pb_form/form_with.rb