lib/nexmo/oas/renderer/views/open_api/_endpoint.erb in nexmo-oas-renderer-0.3.7 vs lib/nexmo/oas/renderer/views/open_api/_endpoint.erb in nexmo-oas-renderer-0.4.0
- old
+ new
@@ -85,71 +85,52 @@
</table>
</div>
<% end %>
<%= erb :'open_api/_parameter_groups', locals: { endpoint: endpoint } %>
- <%= erb :'open_api/_response_descriptions', locals: { endpoint: endpoint, anchor_prefix: "response-#{endpoint.operationId}", auto_expand_responses: @auto_expand_responses } %>
+ <%= erb :'open_api/_response_descriptions', locals: { endpoint: endpoint, auto_expand_responses: @auto_expand_responses } %>
</div>
</div>
<div class="Vlt-col Vlt-col--1of3 Nxd-api__code">
<%= erb :'open_api/_code_examples', locals: { endpoint: endpoint } %>
- <% endpoint.responses.each do |response| %>
- <%
- id = SecureRandom.hex
- expand_response = response.code[0] == '2' && response.raw['x-expand-response'] != false
- expand_response = true if response.raw['x-expand-response']
- %>
+ <div class='Nxd-api__responses'>
+ <% endpoint.responses.each do |response| %>
+ <%
+ id = SecureRandom.hex
+ expand_response = response.code[0] == '2' && response.raw['x-expand-response'] != false
+ expand_response = true if response.raw['x-expand-response']
+ %>
- <div class="Vlt-accordion">
- <button tabindex="0" class="Vlt-accordion__trigger <%= expand_response ? 'Vlt-accordion__trigger_active' : '' %>">
- <h5 class="Vlt-title--nomargin">HTTP response
- <span class="Vlt-badge Vlt-badge--<%= response.code[0] == '2' ? 'green' : response.code[0] == '3' ? 'yellow' : 'red' %>"><%= response.code %></span>
- </h5>
- </button>
+ <div class="Vlt-accordion">
+ <button tabindex="0" class="Vlt-accordion__trigger <%= expand_response ? 'Vlt-accordion__trigger_active' : '' %>">
+ <h5 class="Vlt-title--nomargin">HTTP response
+ <span class="Vlt-badge Vlt-badge--<%= response.code[0] == '2' ? 'green' : response.code[0] == '3' ? 'yellow' : 'red' %>"><%= response.code %></span>
+ </h5>
+ </button>
- <div class="Vlt-accordion__content <%= expand_response ? 'Vlt-accordion__content_open' : '' %>">
- <% response.formats.each_with_index do |format, index| %>
- <div class="js-format" data-format="<%= format %>">
- <% if response.exhibits_one_of_multiple_schemas?(format) %>
- <%
- schema_tab_ids = []
- id = SecureRandom.hex
- response.split_schemas(format).each { schema_tab_ids << SecureRandom.hex }
- %>
+ <div class="Vlt-accordion__content <%= expand_response ? 'Vlt-accordion__content_open' : '' %>">
+ <% response.formats.each_with_index do |format, index| %>
+ <div class="js-format" data-format="<%= format %>">
+ <% if response.exhibits_one_of_multiple_schemas?(format) %>
+ <%= erb :'open_api/_response_tabs', locals: { format: format, response: response, content: :responses } %>
+ <% else %>
+ <% schema = response.schema(format) %>
+ <%= Nexmo::OAS::Renderer::ResponseParserDecorator.new(schema).html(format, xml_options: schema['xml']) %>
+ <% end %>
+ </div>
+ <% end %>
- <div class="Vlt-tabs">
- <div class="Vlt-tabs__header">
- <% response.split_schemas(format).each_with_index do |schema, index| %>
- <div tabindex="<%= schema_tab_ids[index] %>" <% if index.zero? %>class="Vlt-tabs__link Vlt-tabs__link_active" aria-selected="true"<% else %>class="Vlt-tabs__link"<% end %>>
- <%= schema['description'] || "Response #{index + 1}" %>
- </div>
- <% end %>
- </div>
- <div class="Vlt-tabs__content">
- <% response.split_schemas(format).each_with_index do |schema, index| %>
- <div class="Vlt-tabs__panel <% if index.zero? %>Vlt-tabs__panel_active<% end %>">
- <%= Nexmo::OAS::Renderer::ResponseParserDecorator.new(schema).html(format, xml_options: schema['xml']) %>
- </div>
- <% end %>
- </div>
- </div>
- <% else %>
- <% schema = response.schema(format) %>
- <%= Nexmo::OAS::Renderer::ResponseParserDecorator.new(schema).html(format, xml_options: schema['xml']) %>
- <% end %>
- </div>
+ <% if response.code == '204' || response.formats.empty? %>
+ <% content = response.description ? response.description : 'No content' %>
+ <pre class="highlight"><code><%= content %></code></pre>
<% end %>
-
- <% if response.code == '204' || response.formats.empty? %>
- <% content = response.description ? response.description : 'No content' %>
- <pre class="highlight"><code><%= content %></code></pre>
- <% end %>
+ </div>
</div>
- </div>
- <% end %>
+ <% end %>
+ </div>
</div>
</div>
<% endpoint.callbacks.each do |callback| %>
<%= erb :'open_api/_callback', locals: { callback: callback, webhook: false } %>