<% @object.attributes_for_display.each do |attr, attrvalue| %> <% if attr == 'components' and attrvalue.is_a? Hash and attrvalue[:steps].is_a? Array %> <% else %> <%= render partial: 'application/arvados_object_attr', locals: { attr: attr, attrvalue: attrvalue } %> <% end %> <% end %>
components[steps] <% attrvalue[:steps].each_with_index do |s, i| %> <% %w(name function min_revision max_steps_per_node params).each do |key| %> <% end %> <% end %>
<%= i %> <% if key == 'params' %> <% s[key.to_sym].each do |p| %> <%= p[:name] %> <% if p[:data_locator] || p[:value] %> ← <%= p[:data_locator] || p[:value] %> <% end %> <%= '(optional)' if p[:optional] %>
<% end %> <% else %> <%= s[key.to_sym] %> <% end %>