diff --git a/README.md b/README.md
index 794c4e31..5c167806 100644
--- a/README.md
+++ b/README.md
@@ -10,10 +10,10 @@
As a brand new version, written from the ground up, there are some known issues and unimplemented features. Check out the [Known Issues](#known-issues) section for more details.
-This repo publishes to two different NPM packages:
+This repository publishes to two different NPM modules:
-* [swagger-ui](https://www.npmjs.com/package/swagger-ui) is intended for use as a node module.
-* [swagger-ui-dist](https://www.npmjs.com/package/swagger-ui-dist) comes pre-bundled with all dependencies and can be incorporated directly in a webapp.
+* [swagger-ui](https://www.npmjs.com/package/swagger-ui) is a traditional npm module intended for use in JavaScript web application projects that are capable of resolving dependencies (via Webpack, Browserify, etc).
+* [swagger-ui-dist](https://www.npmjs.com/package/swagger-ui-dist) is a dependency-free module that includes everything you need to serve Swagger-UI in a server-side project, or a web project that can't resolve npm module dependencies.
For the older version of swagger-ui, refer to the [*2.x branch*](https://github.com/swagger-api/swagger-ui/tree/2.x).
diff --git a/src/core/components/array-model.jsx b/src/core/components/array-model.jsx
index a9c36a2c..e4cde55c 100644
--- a/src/core/components/array-model.jsx
+++ b/src/core/components/array-model.jsx
@@ -41,7 +41,7 @@ export default class ArrayModel extends Component {
{
properties.size ?
{ properties.entrySeq().map( ( [ key, v ] ) =>
-
{ `${key}:`}{ String(v) })
+
{ key }: { String(v) })
}
: null
}
diff --git a/src/core/components/primitive-model.jsx b/src/core/components/primitive-model.jsx
index 81773523..f1fba8a5 100644
--- a/src/core/components/primitive-model.jsx
+++ b/src/core/components/primitive-model.jsx
@@ -23,6 +23,7 @@ export default class Primitive extends Component {
let format = schema.get("format")
let xml = schema.get("xml")
let enumArray = schema.get("enum")
+ let title = schema.get("title") || name
let description = schema.get("description")
let properties = schema.filter( ( v, key) => ["enum", "type", "format", "description", "$$ref"].indexOf(key) === -1 )
const Markdown = getComponent("Markdown")
@@ -30,7 +31,7 @@ export default class Primitive extends Component {
return
- { name && { name } }
+ { name && { title } }
{ type }
{ format && (${format})}
{
diff --git a/src/style/_models.scss b/src/style/_models.scss
index dd043f7f..c3a901d9 100644
--- a/src/style/_models.scss
+++ b/src/style/_models.scss
@@ -237,7 +237,8 @@ span
.prop-name
{
display: inline-block;
- width: 100px;
+ margin-right: 1em;
+ width: 8em;
}
.prop-type
diff --git a/test/components/primitive-model.js b/test/components/primitive-model.js
new file mode 100644
index 00000000..9394bb8c
--- /dev/null
+++ b/test/components/primitive-model.js
@@ -0,0 +1,49 @@
+/* eslint-env mocha */
+import React from "react"
+import expect from "expect"
+import { shallow } from "enzyme"
+import { fromJS } from "immutable"
+import PrimitiveModel from "components/primitive-model"
+
+describe("", function() {
+ describe("Model name", function() {
+ const dummyComponent = () => null
+ const components = {
+ Markdown: dummyComponent,
+ EnumModel: dummyComponent
+ }
+ const props = {
+ getComponent: c => components[c],
+ name: "Name from props",
+ depth: 1,
+ schema: fromJS({
+ type: "string",
+ title: "Custom model title"
+ })
+ }
+
+ it("renders the schema's title", function() {
+ // When
+ const wrapper = shallow()
+ const modelTitleEl = wrapper.find("span.model-title")
+ expect(modelTitleEl.length).toEqual(1)
+
+ // Then
+ expect( modelTitleEl.text() ).toEqual( "Custom model title" )
+ })
+
+ it("falls back to the passed-in `name` prop for the title", function() {
+ // When
+ props.schema = fromJS({
+ type: "string"
+ })
+ const wrapper = shallow()
+ const modelTitleEl = wrapper.find("span.model-title")
+ expect(modelTitleEl.length).toEqual(1)
+
+ // Then
+ expect( modelTitleEl.text() ).toEqual( "Name from props" )
+ })
+
+ })
+} )
\ No newline at end of file
diff --git a/test/core/utils.js b/test/core/utils.js
index b4be6c1b..42103cc1 100644
--- a/test/core/utils.js
+++ b/test/core/utils.js
@@ -583,7 +583,7 @@ describe("utils", function() {
})
})
- describe.only("getAcceptControllingResponse", () => {
+ describe("getAcceptControllingResponse", () => {
it("should return the first 2xx response with a media type", () => {
const responses = fromJSOrdered({
"200": {