Sha256: 26438e2804a309a64ab2d26fc61f2941df4e6b39305c6222c71031c86743ae53

Contents?: true

Size: 1.19 KB

Versions: 26

Compression:

Stored size: 1.19 KB

Contents

class Card
  class Format
    module Nest
      # Handle the main nest
      module Main
        def wrap_main
          yield # no wrapping in base format
        end

        def main_nest opts
          wrap_main do
            with_nest_mode :normal do
              nest root.card, opts.merge(main_view: true, main: true)
            end
          end
        end

        def main_nest? nest_name
          nest_name == "_main" && !root.already_mained?
        end

        def already_mained?
          return true if @main || @already_main
          @already_main = true
          false
        end

        def main!
          @main = true
        end

        def main_nest_options
          opts = root.main_opts || {}
          main_nest_size_opt opts
          main_nest_items_opt opts
          opts
        end

        protected

        def main_nest_size_opt opts
          val = params[:size]
          return unless val.present?
          opts[:size] = val.to_sym
        end

        def main_nest_items_opt opts
          val = params[:item]
          return unless val.present?
          opts[:items] ||= {}
          opts[:items][:view] = val.to_sym
        end
      end
    end
  end
end

Version data entries

26 entries across 26 versions & 1 rubygems

Version Path
card-1.94.1 lib/card/format/nest/main.rb
card-1.94.0 lib/card/format/nest/main.rb
card-1.93.13 lib/card/format/nest/main.rb
card-1.93.12 lib/card/format/nest/main.rb
card-1.93.11 lib/card/format/nest/main.rb
card-1.93.10 lib/card/format/nest/main.rb
card-1.93.9 lib/card/format/nest/main.rb
card-1.93.8 lib/card/format/nest/main.rb
card-1.93.7 lib/card/format/nest/main.rb
card-1.93.6 lib/card/format/nest/main.rb
card-1.93.5 lib/card/format/nest/main.rb
card-1.93.4 lib/card/format/nest/main.rb
card-1.93.3 lib/card/format/nest/main.rb
card-1.93.2 lib/card/format/nest/main.rb
card-1.93.1 lib/card/format/nest/main.rb
card-1.93.0 lib/card/format/nest/main.rb
card-1.92.2 lib/card/format/nest/main.rb
card-1.92.1 lib/card/format/nest/main.rb
card-1.92 lib/card/format/nest/main.rb
card-1.91 lib/card/format/nest/main.rb