Sha256: c01ce503b02d6b5820353e3f9d4f701170d09ac341e7b7a3235dfaa78a45c1d4

Contents?: true

Size: 1004 Bytes

Versions: 4

Compression:

Stored size: 1004 Bytes

Contents

format do
  view :template_nest, cache: :never, unknown: true do
    return "" unless voo.nest_name

    if voo.nest_name.to_name.field_only?
      with_nest_mode :normal do
        nest template_link_set_name, view: :template_link
      end
    else
      "{{#{voo.nest_syntax}}}"
    end
  end

  def template_link_set_name
    name = voo.nest_name.to_name
    if name.absolute?
      name.field_name :self
    else
      template_link_set_name_for_relative_name name
    end
  end

  def template_link_set_name_for_relative_name name
    name = name.fully_stripped

    if (type = on_type_set)
      [type, name].to_name.field_name :type_plus_right
    else
      name.to_name.field_name :right
    end
  end

  def on_type_set
    return unless
      (tmpl_set_name = parent.card.name.trunk_name) &&
      (tmpl_set_class_name = tmpl_set_name.tag_name) &&
      (tmpl_set_class_card = Card[tmpl_set_class_name]) &&
      (tmpl_set_class_card.codename == :type)

    tmpl_set_name.left_name
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
card-mod-edit-0.18.1 set/all/template_nest.rb
card-mod-edit-0.18.0 set/all/template_nest.rb
card-mod-edit-0.17.0 set/all/template_nest.rb
card-mod-edit-0.16.0 set/all/template_nest.rb