mirror of
https://github.com/Redocly/redoc.git
synced 2024-11-28 03:23:44 +03:00
Merge commit 'cfc5c04e20cb07ddd3cc48671067dc49698ad232' into releases
This commit is contained in:
commit
35c32b2022
11
CHANGELOG.md
11
CHANGELOG.md
|
@ -1,3 +1,14 @@
|
|||
# 1.6.1 (2016-12-02)
|
||||
### Bug fixes
|
||||
* Fix only the first instance of schema was rendered ([#150](https://github.com/Rebilly/ReDoc/issues/150))
|
||||
* Regression: fix side panel overlaps footer
|
||||
* Fix menu was not initialized for specs without tags
|
||||
|
||||
### Features/Improvements
|
||||
* Don't show error screen for runtimes after render finished
|
||||
* Updated dependencies (angular to the latest version + dev deps)
|
||||
|
||||
|
||||
# 1.6.0 (2016-11-30)
|
||||
### Bug fixes
|
||||
* Update webpack to the latest beta ([#143](https://github.com/Rebilly/ReDoc/issues/143))
|
||||
|
|
|
@ -54,6 +54,13 @@ Extends OpenAPI [Tag Object](http://swagger.io/specification/#tagObject)
|
|||
| :------------- | :------: | :---------- |
|
||||
| x-traitTag | boolean | In Swagger two operations can have multiply tags. This property distinguish between tags that are used to group operations (default) from tags that are used to mark operation with certain trait (`true` value) |
|
||||
|
||||
#### x-displayName
|
||||
|
||||
| Field Name | Type | Description |
|
||||
| :------------- | :------: | :---------- |
|
||||
| x-displayName | string | Define the text that is used for this tag in the menu and in section headings |
|
||||
|
||||
|
||||
###### Usage in Redoc
|
||||
Tags that have `x-traitTag` set to `true` are listed in side-menu but don't have any subitems (operations). Tag `description` is rendered as well.
|
||||
This is useful for handling out common things like Pagination, Rate-Limits, etc.
|
||||
|
@ -109,7 +116,7 @@ source: console.log('Hello World');
|
|||
|
||||
### Schema Object vendor extensions
|
||||
Extends OpenAPI [Schema Object](http://swagger.io/specification/#schemaObject)
|
||||
#### x-code-samples
|
||||
#### x-nullable
|
||||
| Field Name | Type | Description |
|
||||
| :------------- | :------: | :---------- |
|
||||
| x-nullable | boolean | marks schema as a nullable |
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<div class="methods">
|
||||
<div class="tag" *ngFor="let tag of tags;let catIdx = index; trackBy:trackByTagName">
|
||||
<div class="tag-info" [attr.section]="tag.id" *ngIf="!tag.headless">
|
||||
<h1 class="sharable-header"> <a class="share-link" href="#tag/{{tag.name | encodeURIComponent}}"></a>{{tag.name}} </h1>
|
||||
<h1 class="sharable-header"> <a class="share-link" href="#{{tag.id}}"></a>{{tag.name}} </h1>
|
||||
<p *ngIf="tag.description" [innerHtml]="tag.description | marked"> </p>
|
||||
</div>
|
||||
<method *lazyFor="let method of tag.methods;let show = show;" [hidden]="!show" [pointer]="method.pointer" [attr.pointer]="method.pointer"
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<h2 class="responses-list-header" *ngIf="responses.length"> Responses </h2>
|
||||
<zippy *ngFor="let response of responses;trackBy:trackByCode" title="{{response.code}} {{response.description}}"
|
||||
<zippy *ngFor="let response of responses;trackBy:trackByCode" title="{{response.code}} {{response.description || marked}}"
|
||||
[type]="response.type" [empty]="response.empty" (open)="lazySchema.load()">
|
||||
<div *ngIf="response.headers" class="response-headers">
|
||||
<header>
|
||||
|
|
|
@ -7,7 +7,8 @@ describe('Spec Helper', () => {
|
|||
let suitSchema = {
|
||||
tags: [
|
||||
{name: 'tag1', description: 'info1', 'x-traitTag': true},
|
||||
{name: 'tag2', description: 'info2'}
|
||||
{name: 'tag2', description: 'info2'},
|
||||
{name: 'tag4', description: 'info2', 'x-displayName': 'Tag Four'}
|
||||
],
|
||||
paths: {
|
||||
test: {
|
||||
|
@ -19,6 +20,10 @@ describe('Spec Helper', () => {
|
|||
tags: ['tag1', 'tag2'],
|
||||
summary: 'test get'
|
||||
},
|
||||
delete: {
|
||||
tags: ['tag4'],
|
||||
summary: 'test delete'
|
||||
},
|
||||
// no tags
|
||||
post: {
|
||||
summary: 'test post'
|
||||
|
@ -41,19 +46,19 @@ describe('Spec Helper', () => {
|
|||
});
|
||||
|
||||
it('should return Array with correct number of items', () => {
|
||||
//2 - defined tags, 1 - tag3 and 1 [other] tag for no-tags method
|
||||
menuTree.length.should.be.equal(2 + 1 + 1);
|
||||
//3 - defined tags, 1 - tag3 and 1 [other] tag for no-tags method
|
||||
menuTree.length.should.be.equal(3 + 1 + 1);
|
||||
});
|
||||
|
||||
it('should append not defined tags to the end of list', () => {
|
||||
let info = menuTree[2];
|
||||
let info = menuTree[3];
|
||||
info.name.should.be.equal('tag3');
|
||||
info.methods.length.should.be.equal(1);
|
||||
info.methods[0].summary.should.be.equal('test put');
|
||||
});
|
||||
|
||||
it('should append methods without tags to [other] tag', () => {
|
||||
let info = menuTree[3];
|
||||
let info = menuTree[4];
|
||||
info.name.should.be.equal('');
|
||||
info.methods.length.should.be.equal(1);
|
||||
info.methods[0].summary.should.be.equal('test post');
|
||||
|
@ -84,6 +89,12 @@ describe('Spec Helper', () => {
|
|||
}
|
||||
}
|
||||
});
|
||||
|
||||
it('should use x-displayName to set custom names', () => {
|
||||
let info = menuTree[2];
|
||||
info.id.should.be.equal('tag/tag4');
|
||||
info.name.should.be.equal('Tag Four');
|
||||
});
|
||||
});
|
||||
|
||||
describe('injectors', () => {
|
|
@ -315,7 +315,7 @@ export class SchemaHelper {
|
|||
for (let tag of schema.tags || []) {
|
||||
let id = 'tag/' + slugify(tag.name);
|
||||
tag2MethodMapping[id] = {
|
||||
name: tag.name,
|
||||
name: tag['x-displayName'] || tag.name,
|
||||
id: id,
|
||||
description: tag.description,
|
||||
headless: tag.name === '',
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"name": "redoc",
|
||||
"description": "Swagger-generated API Reference Documentation",
|
||||
"version": "1.6.1",
|
||||
"version": "1.6.2",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git://github.com/Rebilly/ReDoc"
|
||||
|
|
Loading…
Reference in New Issue
Block a user