Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
dd3037f481 | ||
|
|
d133e38f21 | ||
|
|
11b4d6d077 | ||
|
|
ecf1519abf | ||
|
|
4a8e5dd310 | ||
|
|
636f3514cb | ||
|
|
bde3c26ece | ||
|
|
78fdef4d70 | ||
|
|
beab1f2eaa | ||
|
|
dbfb1adc26 | ||
|
|
880c8da652 | ||
|
|
c1efde5e5b | ||
|
|
b5d2f21a6d | ||
|
|
7200f3edbb | ||
|
|
156d0befbb | ||
|
|
84240817e1 | ||
|
|
8b1cf18daa | ||
|
|
e66c08907d | ||
|
|
f43e96fec8 | ||
|
|
8ec69b272c | ||
|
|
ec15dea8c2 | ||
|
|
091c3f912b | ||
|
|
484406b95e | ||
|
|
ae93b581d2 | ||
|
|
722da60f5d | ||
|
|
db4175ef57 | ||
|
|
c2292905c2 | ||
|
|
c3a3f1861c | ||
|
|
4ee046d39c | ||
|
|
d9285f175d | ||
|
|
4fb7ffdcac | ||
|
|
d205753044 | ||
|
|
1a017d46a5 | ||
|
|
29b3d1dc68 | ||
|
|
e7e95c372e | ||
|
|
a79a6600cc | ||
|
|
c016b2977f | ||
|
|
b6d60786c1 | ||
|
|
39e36013b0 | ||
|
|
2a16842f6b | ||
|
|
e318616cd1 | ||
|
|
9b1bd11f2d | ||
|
|
f195c65880 | ||
|
|
1ec55a8829 | ||
|
|
7a23876ce7 | ||
|
|
8a9d41ca27 | ||
|
|
f0f6a07a61 | ||
|
|
ba2263e6f3 | ||
|
|
8669ad1018 | ||
|
|
baab722d64 | ||
|
|
2212f73492 | ||
|
|
eb4198ccd0 | ||
|
|
5e714918aa | ||
|
|
24dc86fb4c | ||
|
|
3edb6437fb | ||
|
|
356ae491aa | ||
|
|
7bc8109e88 | ||
|
|
3fd37c3ef6 | ||
|
|
586c6d6292 | ||
|
|
12bdd38406 | ||
|
|
369b639329 | ||
|
|
3f9ed33f7f | ||
|
|
d1bffc8fb4 | ||
|
|
55f0c1a2f8 | ||
|
|
03e21019d2 | ||
|
|
75fd46ef21 | ||
|
|
75ff471425 | ||
|
|
dd1b2219b8 | ||
|
|
f5cfee8296 | ||
|
|
a1337cf118 | ||
|
|
2bc67cbcae | ||
|
|
30886478d4 | ||
|
|
fc320397e9 | ||
|
|
9b58ed5430 | ||
|
|
2d62bddfb8 | ||
|
|
cfa2006042 | ||
|
|
3dca74c08f | ||
|
|
fd6379140d | ||
|
|
ab572e87be | ||
|
|
9687a8084f |
@@ -3,7 +3,6 @@ wordnik*.zip
|
||||
*.ipr
|
||||
*.iml
|
||||
*.iws
|
||||
dist/
|
||||
lib/*.jar
|
||||
META-INF/
|
||||
web/
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
*.sublime-*
|
||||
example.html
|
||||
*.tgz
|
||||
.classpath
|
||||
.project
|
||||
.npmignore
|
||||
node_modules
|
||||
@@ -10,6 +10,8 @@ sourceFiles = [
|
||||
'view/OperationView'
|
||||
'view/StatusCodeView'
|
||||
'view/ParameterView'
|
||||
'view/SignatureView'
|
||||
'view/ContentTypeView'
|
||||
]
|
||||
|
||||
|
||||
@@ -72,6 +74,7 @@ task 'dist', 'Build a distribution', ->
|
||||
pack = ->
|
||||
console.log ' : Packaging...'
|
||||
exec 'cp -r lib dist'
|
||||
exec 'cp -r node_modules/swagger-client/lib/swagger.js dist/lib'
|
||||
exec 'cp -r src/main/html/* dist'
|
||||
console.log ' !'
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ Swagger UI
|
||||
Swagger UI is part of [Swagger](http://swagger.wordnik.com/) project. The Swagger project allows you to produce, visualize and consume your OWN RESTful
|
||||
services. No proxy or 3rd party services required. Do it your own way.
|
||||
|
||||
Swagger UI is a dependency-free collection of HTML, Javascript, and CSS assets that dynamically
|
||||
Swagger UI is a dependency-free collection of HTML, Javascript, and CSS assets that dynamically
|
||||
generate beautiful documentation and sandbox from a [Swagger-compliant](https://github.com/wordnik/swagger-core/wiki) API. Because Swagger UI has no
|
||||
dependencies, you can host it in any server environment, or on your local machine.
|
||||
|
||||
@@ -12,16 +12,14 @@ How to Use It
|
||||
-------------
|
||||
|
||||
### Download
|
||||
You can use the swagger-ui code AS-IS! No need to build or recompile--just [download](https://github.com/wordnik/swagger-ui/downloads) the distribution,
|
||||
unpack and start using it. If you like swagger-ui as-is, stop here.
|
||||
You can use the swagger-ui code AS-IS! No need to build or recompile--just clone this repo and use the pre-built files in the `dist` folder. If you like swagger-ui as-is, stop here.
|
||||
|
||||
### Build
|
||||
You can rebuild swagger-ui on your own to tweak it or just so you can say you did. To do so, follow these steps:
|
||||
|
||||
1. Install [CoffeeScript](http://coffeescript.org/#installation) which will give you [cake](http://coffeescript.org/#cake)
|
||||
2. Install [handlebars](http://handlebarsjs.com/) using 'npm install handlebars -g'
|
||||
3. Run cake dist
|
||||
4. You should see the distribution under the dist folder. Open ./dist/index.html to launch Swagger UI in a browser
|
||||
|
||||
1. npm install
|
||||
2. npm run-script build
|
||||
3. You should see the distribution under the dist folder. Open ./dist/index.html to launch Swagger UI in a browser
|
||||
|
||||
### Use
|
||||
Once you open the Swagger UI, it will load the [Swagger Petstore](http://petstore.swagger.wordnik.com/api/resources.json) service and show its APIs.
|
||||
@@ -38,7 +36,7 @@ You may choose to customize Swagger UI for your organization. Here is an overvie
|
||||
- src/main/coffeescript: main code in CoffeeScript
|
||||
- src/main/templates: [handlebars](http://handlebarsjs.com/) templates used to render swagger-ui
|
||||
- src/main/html: the html files, some images and css
|
||||
- src/main/javascript: some legacy javascript referenced by CofffeeScript code
|
||||
- src/main/javascript: some legacy javascript referenced by CoffeeScript code
|
||||
|
||||
### SwaggerUi
|
||||
To use swagger-ui you should take a look at the [source of swagger-ui html page](https://github.com/wordnik/swagger-ui/tree/master/src/main/html) and customize it. This basically requires you to instantiate a SwaggerUi object and call load() on it as below:
|
||||
@@ -64,9 +62,9 @@ To use swagger-ui you should take a look at the [source of swagger-ui html page]
|
||||
|
||||
|
||||
### HTTP Methods and API Invocation
|
||||
swagger-ui supports invocation of all HTTP methods APIs but only GET methods APIs are enabled by default. You can choose to enable other HTTP methods like POST, PUT and DELETE. This can be enabled by [setting the supportedSubmitMethods parameter when creating SwaggerUI instance](https://github.com/wordnik/swagger-ui/blob/f2e63c65a759421aad590b7275371cd0c06c74ea/src/main/html/index.html#L49).
|
||||
swagger-ui supports invocation of all HTTP methods APIs but only GET methods APIs are enabled by default. You can choose to enable other HTTP methods like POST, PUT and DELETE. This can be enabled by [setting the supportedSubmitMethods parameter when creating SwaggerUI instance](https://github.com/wordnik/swagger-ui/blob/f2e63c65a759421aad590b7275371cd0c06c74ea/src/main/html/index.html#L49).
|
||||
|
||||
For example if you wanted to enable GET, POST and PUT but not for DELETE, you'd set this as:
|
||||
For example if you wanted to enable GET, POST and PUT but not for DELETE, you'd set this as:
|
||||
|
||||
supportedSubmitMethods: ['get', 'post', 'put']
|
||||
|
||||
@@ -97,7 +95,7 @@ To share your changes, [submit a pull request](https://github.com/wordnik/swagge
|
||||
License
|
||||
-------
|
||||
|
||||
Copyright 2011-2012 Wordnik, Inc.
|
||||
Copyright 2011-2013 Wordnik, Inc.
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
|
||||
Vendored
+135
@@ -0,0 +1,135 @@
|
||||
/*
|
||||
|
||||
Original style from softwaremaniacs.org (c) Ivan Sagalaev <Maniac@SoftwareManiacs.Org>
|
||||
|
||||
*/
|
||||
|
||||
pre code {
|
||||
display: block; padding: 0.5em;
|
||||
background: #F0F0F0;
|
||||
}
|
||||
|
||||
pre code,
|
||||
pre .subst,
|
||||
pre .tag .title,
|
||||
pre .lisp .title,
|
||||
pre .clojure .built_in,
|
||||
pre .nginx .title {
|
||||
color: black;
|
||||
}
|
||||
|
||||
pre .string,
|
||||
pre .title,
|
||||
pre .constant,
|
||||
pre .parent,
|
||||
pre .tag .value,
|
||||
pre .rules .value,
|
||||
pre .rules .value .number,
|
||||
pre .preprocessor,
|
||||
pre .ruby .symbol,
|
||||
pre .ruby .symbol .string,
|
||||
pre .aggregate,
|
||||
pre .template_tag,
|
||||
pre .django .variable,
|
||||
pre .smalltalk .class,
|
||||
pre .addition,
|
||||
pre .flow,
|
||||
pre .stream,
|
||||
pre .bash .variable,
|
||||
pre .apache .tag,
|
||||
pre .apache .cbracket,
|
||||
pre .tex .command,
|
||||
pre .tex .special,
|
||||
pre .erlang_repl .function_or_atom,
|
||||
pre .markdown .header {
|
||||
color: #800;
|
||||
}
|
||||
|
||||
pre .comment,
|
||||
pre .annotation,
|
||||
pre .template_comment,
|
||||
pre .diff .header,
|
||||
pre .chunk,
|
||||
pre .markdown .blockquote {
|
||||
color: #888;
|
||||
}
|
||||
|
||||
pre .number,
|
||||
pre .date,
|
||||
pre .regexp,
|
||||
pre .literal,
|
||||
pre .smalltalk .symbol,
|
||||
pre .smalltalk .char,
|
||||
pre .go .constant,
|
||||
pre .change,
|
||||
pre .markdown .bullet,
|
||||
pre .markdown .link_url {
|
||||
color: #080;
|
||||
}
|
||||
|
||||
pre .label,
|
||||
pre .javadoc,
|
||||
pre .ruby .string,
|
||||
pre .decorator,
|
||||
pre .filter .argument,
|
||||
pre .localvars,
|
||||
pre .array,
|
||||
pre .attr_selector,
|
||||
pre .important,
|
||||
pre .pseudo,
|
||||
pre .pi,
|
||||
pre .doctype,
|
||||
pre .deletion,
|
||||
pre .envvar,
|
||||
pre .shebang,
|
||||
pre .apache .sqbracket,
|
||||
pre .nginx .built_in,
|
||||
pre .tex .formula,
|
||||
pre .erlang_repl .reserved,
|
||||
pre .prompt,
|
||||
pre .markdown .link_label,
|
||||
pre .vhdl .attribute,
|
||||
pre .clojure .attribute,
|
||||
pre .coffeescript .property {
|
||||
color: #88F
|
||||
}
|
||||
|
||||
pre .keyword,
|
||||
pre .id,
|
||||
pre .phpdoc,
|
||||
pre .title,
|
||||
pre .built_in,
|
||||
pre .aggregate,
|
||||
pre .css .tag,
|
||||
pre .javadoctag,
|
||||
pre .phpdoc,
|
||||
pre .yardoctag,
|
||||
pre .smalltalk .class,
|
||||
pre .winutils,
|
||||
pre .bash .variable,
|
||||
pre .apache .tag,
|
||||
pre .go .typename,
|
||||
pre .tex .command,
|
||||
pre .markdown .strong,
|
||||
pre .request,
|
||||
pre .status {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
pre .markdown .emphasis {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
pre .nginx .built_in {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
pre .coffeescript .javascript,
|
||||
pre .javascript .xml,
|
||||
pre .tex .formula,
|
||||
pre .xml .javascript,
|
||||
pre .xml .vbscript,
|
||||
pre .xml .css,
|
||||
pre .xml .cdata {
|
||||
opacity: 0.5;
|
||||
}
|
||||
Vendored
+1759
File diff suppressed because it is too large
Load Diff
Vendored
BIN
Binary file not shown.
|
After Width: | Height: | Size: 770 B |
Vendored
BIN
Binary file not shown.
|
After Width: | Height: | Size: 824 B |
Vendored
BIN
Binary file not shown.
|
After Width: | Height: | Size: 9.0 KiB |
Vendored
BIN
Binary file not shown.
|
After Width: | Height: | Size: 980 B |
Vendored
+80
@@ -0,0 +1,80 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Swagger UI</title>
|
||||
<link href='//fonts.googleapis.com/css?family=Droid+Sans:400,700' rel='stylesheet' type='text/css'/>
|
||||
<link href='css/hightlight.default.css' media='screen' rel='stylesheet' type='text/css'/>
|
||||
<link href='css/screen.css' media='screen' rel='stylesheet' type='text/css'/>
|
||||
<script src='lib/jquery-1.8.0.min.js' type='text/javascript'></script>
|
||||
<script src='lib/jquery.slideto.min.js' type='text/javascript'></script>
|
||||
<script src='lib/jquery.wiggle.min.js' type='text/javascript'></script>
|
||||
<script src='lib/jquery.ba-bbq.min.js' type='text/javascript'></script>
|
||||
<script src='lib/handlebars-1.0.rc.1.js' type='text/javascript'></script>
|
||||
<script src='lib/underscore-min.js' type='text/javascript'></script>
|
||||
<script src='lib/backbone-min.js' type='text/javascript'></script>
|
||||
<script src='lib/swagger.js' type='text/javascript'></script>
|
||||
<script src='swagger-ui.js' type='text/javascript'></script>
|
||||
<script src='lib/highlight.7.3.pack.js' type='text/javascript'></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(function () {
|
||||
window.swaggerUi = new SwaggerUi({
|
||||
discoveryUrl:"http://petstore.swagger.wordnik.com/api/api-docs.json",
|
||||
apiKey:"special-key",
|
||||
dom_id:"swagger-ui-container",
|
||||
supportHeaderParams: false,
|
||||
supportedSubmitMethods: ['get', 'post', 'put'],
|
||||
onComplete: function(swaggerApi, swaggerUi){
|
||||
if(console) {
|
||||
console.log("Loaded SwaggerUI")
|
||||
console.log(swaggerApi);
|
||||
console.log(swaggerUi);
|
||||
}
|
||||
$('pre code').each(function(i, e) {hljs.highlightBlock(e)});
|
||||
},
|
||||
onFailure: function(data) {
|
||||
if(console) {
|
||||
console.log("Unable to Load SwaggerUI");
|
||||
console.log(data);
|
||||
}
|
||||
},
|
||||
docExpansion: "none"
|
||||
});
|
||||
|
||||
window.swaggerUi.load();
|
||||
});
|
||||
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id='header'>
|
||||
<div class="swagger-ui-wrap">
|
||||
<a id="logo" href="http://swagger.wordnik.com">swagger</a>
|
||||
|
||||
<form id='api_selector'>
|
||||
<div class='input icon-btn'>
|
||||
<img id="show-pet-store-icon" src="images/pet_store_api.png" title="Show Swagger Petstore Example Apis">
|
||||
</div>
|
||||
<div class='input icon-btn'>
|
||||
<img id="show-wordnik-dev-icon" src="images/wordnik_api.png" title="Show Wordnik Developer Apis">
|
||||
</div>
|
||||
<div class='input'><input placeholder="http://example.com/api" id="input_baseUrl" name="baseUrl"
|
||||
type="text"/></div>
|
||||
<div class='input'><input placeholder="api_key" id="input_apiKey" name="apiKey" type="text"/></div>
|
||||
<div class='input'><a id="explore" href="#">Explore</a></div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="message-bar" class="swagger-ui-wrap">
|
||||
|
||||
</div>
|
||||
|
||||
<div id="swagger-ui-container" class="swagger-ui-wrap">
|
||||
|
||||
</div>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
Vendored
+38
@@ -0,0 +1,38 @@
|
||||
// Backbone.js 0.9.2
|
||||
|
||||
// (c) 2010-2012 Jeremy Ashkenas, DocumentCloud Inc.
|
||||
// Backbone may be freely distributed under the MIT license.
|
||||
// For all details and documentation:
|
||||
// http://backbonejs.org
|
||||
(function(){var l=this,y=l.Backbone,z=Array.prototype.slice,A=Array.prototype.splice,g;g="undefined"!==typeof exports?exports:l.Backbone={};g.VERSION="0.9.2";var f=l._;!f&&"undefined"!==typeof require&&(f=require("underscore"));var i=l.jQuery||l.Zepto||l.ender;g.setDomLibrary=function(a){i=a};g.noConflict=function(){l.Backbone=y;return this};g.emulateHTTP=!1;g.emulateJSON=!1;var p=/\s+/,k=g.Events={on:function(a,b,c){var d,e,f,g,j;if(!b)return this;a=a.split(p);for(d=this._callbacks||(this._callbacks=
|
||||
{});e=a.shift();)f=(j=d[e])?j.tail:{},f.next=g={},f.context=c,f.callback=b,d[e]={tail:g,next:j?j.next:f};return this},off:function(a,b,c){var d,e,h,g,j,q;if(e=this._callbacks){if(!a&&!b&&!c)return delete this._callbacks,this;for(a=a?a.split(p):f.keys(e);d=a.shift();)if(h=e[d],delete e[d],h&&(b||c))for(g=h.tail;(h=h.next)!==g;)if(j=h.callback,q=h.context,b&&j!==b||c&&q!==c)this.on(d,j,q);return this}},trigger:function(a){var b,c,d,e,f,g;if(!(d=this._callbacks))return this;f=d.all;a=a.split(p);for(g=
|
||||
z.call(arguments,1);b=a.shift();){if(c=d[b])for(e=c.tail;(c=c.next)!==e;)c.callback.apply(c.context||this,g);if(c=f){e=c.tail;for(b=[b].concat(g);(c=c.next)!==e;)c.callback.apply(c.context||this,b)}}return this}};k.bind=k.on;k.unbind=k.off;var o=g.Model=function(a,b){var c;a||(a={});b&&b.parse&&(a=this.parse(a));if(c=n(this,"defaults"))a=f.extend({},c,a);b&&b.collection&&(this.collection=b.collection);this.attributes={};this._escapedAttributes={};this.cid=f.uniqueId("c");this.changed={};this._silent=
|
||||
{};this._pending={};this.set(a,{silent:!0});this.changed={};this._silent={};this._pending={};this._previousAttributes=f.clone(this.attributes);this.initialize.apply(this,arguments)};f.extend(o.prototype,k,{changed:null,_silent:null,_pending:null,idAttribute:"id",initialize:function(){},toJSON:function(){return f.clone(this.attributes)},get:function(a){return this.attributes[a]},escape:function(a){var b;if(b=this._escapedAttributes[a])return b;b=this.get(a);return this._escapedAttributes[a]=f.escape(null==
|
||||
b?"":""+b)},has:function(a){return null!=this.get(a)},set:function(a,b,c){var d,e;f.isObject(a)||null==a?(d=a,c=b):(d={},d[a]=b);c||(c={});if(!d)return this;d instanceof o&&(d=d.attributes);if(c.unset)for(e in d)d[e]=void 0;if(!this._validate(d,c))return!1;this.idAttribute in d&&(this.id=d[this.idAttribute]);var b=c.changes={},h=this.attributes,g=this._escapedAttributes,j=this._previousAttributes||{};for(e in d){a=d[e];if(!f.isEqual(h[e],a)||c.unset&&f.has(h,e))delete g[e],(c.silent?this._silent:
|
||||
b)[e]=!0;c.unset?delete h[e]:h[e]=a;!f.isEqual(j[e],a)||f.has(h,e)!=f.has(j,e)?(this.changed[e]=a,c.silent||(this._pending[e]=!0)):(delete this.changed[e],delete this._pending[e])}c.silent||this.change(c);return this},unset:function(a,b){(b||(b={})).unset=!0;return this.set(a,null,b)},clear:function(a){(a||(a={})).unset=!0;return this.set(f.clone(this.attributes),a)},fetch:function(a){var a=a?f.clone(a):{},b=this,c=a.success;a.success=function(d,e,f){if(!b.set(b.parse(d,f),a))return!1;c&&c(b,d)};
|
||||
a.error=g.wrapError(a.error,b,a);return(this.sync||g.sync).call(this,"read",this,a)},save:function(a,b,c){var d,e;f.isObject(a)||null==a?(d=a,c=b):(d={},d[a]=b);c=c?f.clone(c):{};if(c.wait){if(!this._validate(d,c))return!1;e=f.clone(this.attributes)}a=f.extend({},c,{silent:!0});if(d&&!this.set(d,c.wait?a:c))return!1;var h=this,i=c.success;c.success=function(a,b,e){b=h.parse(a,e);if(c.wait){delete c.wait;b=f.extend(d||{},b)}if(!h.set(b,c))return false;i?i(h,a):h.trigger("sync",h,a,c)};c.error=g.wrapError(c.error,
|
||||
h,c);b=this.isNew()?"create":"update";b=(this.sync||g.sync).call(this,b,this,c);c.wait&&this.set(e,a);return b},destroy:function(a){var a=a?f.clone(a):{},b=this,c=a.success,d=function(){b.trigger("destroy",b,b.collection,a)};if(this.isNew())return d(),!1;a.success=function(e){a.wait&&d();c?c(b,e):b.trigger("sync",b,e,a)};a.error=g.wrapError(a.error,b,a);var e=(this.sync||g.sync).call(this,"delete",this,a);a.wait||d();return e},url:function(){var a=n(this,"urlRoot")||n(this.collection,"url")||t();
|
||||
return this.isNew()?a:a+("/"==a.charAt(a.length-1)?"":"/")+encodeURIComponent(this.id)},parse:function(a){return a},clone:function(){return new this.constructor(this.attributes)},isNew:function(){return null==this.id},change:function(a){a||(a={});var b=this._changing;this._changing=!0;for(var c in this._silent)this._pending[c]=!0;var d=f.extend({},a.changes,this._silent);this._silent={};for(c in d)this.trigger("change:"+c,this,this.get(c),a);if(b)return this;for(;!f.isEmpty(this._pending);){this._pending=
|
||||
{};this.trigger("change",this,a);for(c in this.changed)!this._pending[c]&&!this._silent[c]&&delete this.changed[c];this._previousAttributes=f.clone(this.attributes)}this._changing=!1;return this},hasChanged:function(a){return!arguments.length?!f.isEmpty(this.changed):f.has(this.changed,a)},changedAttributes:function(a){if(!a)return this.hasChanged()?f.clone(this.changed):!1;var b,c=!1,d=this._previousAttributes,e;for(e in a)if(!f.isEqual(d[e],b=a[e]))(c||(c={}))[e]=b;return c},previous:function(a){return!arguments.length||
|
||||
!this._previousAttributes?null:this._previousAttributes[a]},previousAttributes:function(){return f.clone(this._previousAttributes)},isValid:function(){return!this.validate(this.attributes)},_validate:function(a,b){if(b.silent||!this.validate)return!0;var a=f.extend({},this.attributes,a),c=this.validate(a,b);if(!c)return!0;b&&b.error?b.error(this,c,b):this.trigger("error",this,c,b);return!1}});var r=g.Collection=function(a,b){b||(b={});b.model&&(this.model=b.model);b.comparator&&(this.comparator=b.comparator);
|
||||
this._reset();this.initialize.apply(this,arguments);a&&this.reset(a,{silent:!0,parse:b.parse})};f.extend(r.prototype,k,{model:o,initialize:function(){},toJSON:function(a){return this.map(function(b){return b.toJSON(a)})},add:function(a,b){var c,d,e,g,i,j={},k={},l=[];b||(b={});a=f.isArray(a)?a.slice():[a];c=0;for(d=a.length;c<d;c++){if(!(e=a[c]=this._prepareModel(a[c],b)))throw Error("Can't add an invalid model to a collection");g=e.cid;i=e.id;j[g]||this._byCid[g]||null!=i&&(k[i]||this._byId[i])?
|
||||
l.push(c):j[g]=k[i]=e}for(c=l.length;c--;)a.splice(l[c],1);c=0;for(d=a.length;c<d;c++)(e=a[c]).on("all",this._onModelEvent,this),this._byCid[e.cid]=e,null!=e.id&&(this._byId[e.id]=e);this.length+=d;A.apply(this.models,[null!=b.at?b.at:this.models.length,0].concat(a));this.comparator&&this.sort({silent:!0});if(b.silent)return this;c=0;for(d=this.models.length;c<d;c++)if(j[(e=this.models[c]).cid])b.index=c,e.trigger("add",e,this,b);return this},remove:function(a,b){var c,d,e,g;b||(b={});a=f.isArray(a)?
|
||||
a.slice():[a];c=0;for(d=a.length;c<d;c++)if(g=this.getByCid(a[c])||this.get(a[c]))delete this._byId[g.id],delete this._byCid[g.cid],e=this.indexOf(g),this.models.splice(e,1),this.length--,b.silent||(b.index=e,g.trigger("remove",g,this,b)),this._removeReference(g);return this},push:function(a,b){a=this._prepareModel(a,b);this.add(a,b);return a},pop:function(a){var b=this.at(this.length-1);this.remove(b,a);return b},unshift:function(a,b){a=this._prepareModel(a,b);this.add(a,f.extend({at:0},b));return a},
|
||||
shift:function(a){var b=this.at(0);this.remove(b,a);return b},get:function(a){return null==a?void 0:this._byId[null!=a.id?a.id:a]},getByCid:function(a){return a&&this._byCid[a.cid||a]},at:function(a){return this.models[a]},where:function(a){return f.isEmpty(a)?[]:this.filter(function(b){for(var c in a)if(a[c]!==b.get(c))return!1;return!0})},sort:function(a){a||(a={});if(!this.comparator)throw Error("Cannot sort a set without a comparator");var b=f.bind(this.comparator,this);1==this.comparator.length?
|
||||
this.models=this.sortBy(b):this.models.sort(b);a.silent||this.trigger("reset",this,a);return this},pluck:function(a){return f.map(this.models,function(b){return b.get(a)})},reset:function(a,b){a||(a=[]);b||(b={});for(var c=0,d=this.models.length;c<d;c++)this._removeReference(this.models[c]);this._reset();this.add(a,f.extend({silent:!0},b));b.silent||this.trigger("reset",this,b);return this},fetch:function(a){a=a?f.clone(a):{};void 0===a.parse&&(a.parse=!0);var b=this,c=a.success;a.success=function(d,
|
||||
e,f){b[a.add?"add":"reset"](b.parse(d,f),a);c&&c(b,d)};a.error=g.wrapError(a.error,b,a);return(this.sync||g.sync).call(this,"read",this,a)},create:function(a,b){var c=this,b=b?f.clone(b):{},a=this._prepareModel(a,b);if(!a)return!1;b.wait||c.add(a,b);var d=b.success;b.success=function(e,f){b.wait&&c.add(e,b);d?d(e,f):e.trigger("sync",a,f,b)};a.save(null,b);return a},parse:function(a){return a},chain:function(){return f(this.models).chain()},_reset:function(){this.length=0;this.models=[];this._byId=
|
||||
{};this._byCid={}},_prepareModel:function(a,b){b||(b={});a instanceof o?a.collection||(a.collection=this):(b.collection=this,a=new this.model(a,b),a._validate(a.attributes,b)||(a=!1));return a},_removeReference:function(a){this==a.collection&&delete a.collection;a.off("all",this._onModelEvent,this)},_onModelEvent:function(a,b,c,d){("add"==a||"remove"==a)&&c!=this||("destroy"==a&&this.remove(b,d),b&&a==="change:"+b.idAttribute&&(delete this._byId[b.previous(b.idAttribute)],this._byId[b.id]=b),this.trigger.apply(this,
|
||||
arguments))}});f.each("forEach,each,map,reduce,reduceRight,find,detect,filter,select,reject,every,all,some,any,include,contains,invoke,max,min,sortBy,sortedIndex,toArray,size,first,initial,rest,last,without,indexOf,shuffle,lastIndexOf,isEmpty,groupBy".split(","),function(a){r.prototype[a]=function(){return f[a].apply(f,[this.models].concat(f.toArray(arguments)))}});var u=g.Router=function(a){a||(a={});a.routes&&(this.routes=a.routes);this._bindRoutes();this.initialize.apply(this,arguments)},B=/:\w+/g,
|
||||
C=/\*\w+/g,D=/[-[\]{}()+?.,\\^$|#\s]/g;f.extend(u.prototype,k,{initialize:function(){},route:function(a,b,c){g.history||(g.history=new m);f.isRegExp(a)||(a=this._routeToRegExp(a));c||(c=this[b]);g.history.route(a,f.bind(function(d){d=this._extractParameters(a,d);c&&c.apply(this,d);this.trigger.apply(this,["route:"+b].concat(d));g.history.trigger("route",this,b,d)},this));return this},navigate:function(a,b){g.history.navigate(a,b)},_bindRoutes:function(){if(this.routes){var a=[],b;for(b in this.routes)a.unshift([b,
|
||||
this.routes[b]]);b=0;for(var c=a.length;b<c;b++)this.route(a[b][0],a[b][1],this[a[b][1]])}},_routeToRegExp:function(a){a=a.replace(D,"\\$&").replace(B,"([^/]+)").replace(C,"(.*?)");return RegExp("^"+a+"$")},_extractParameters:function(a,b){return a.exec(b).slice(1)}});var m=g.History=function(){this.handlers=[];f.bindAll(this,"checkUrl")},s=/^[#\/]/,E=/msie [\w.]+/;m.started=!1;f.extend(m.prototype,k,{interval:50,getHash:function(a){return(a=(a?a.location:window.location).href.match(/#(.*)$/))?a[1]:
|
||||
""},getFragment:function(a,b){if(null==a)if(this._hasPushState||b){var a=window.location.pathname,c=window.location.search;c&&(a+=c)}else a=this.getHash();a.indexOf(this.options.root)||(a=a.substr(this.options.root.length));return a.replace(s,"")},start:function(a){if(m.started)throw Error("Backbone.history has already been started");m.started=!0;this.options=f.extend({},{root:"/"},this.options,a);this._wantsHashChange=!1!==this.options.hashChange;this._wantsPushState=!!this.options.pushState;this._hasPushState=
|
||||
!(!this.options.pushState||!window.history||!window.history.pushState);var a=this.getFragment(),b=document.documentMode;if(b=E.exec(navigator.userAgent.toLowerCase())&&(!b||7>=b))this.iframe=i('<iframe src="javascript:0" tabindex="-1" />').hide().appendTo("body")[0].contentWindow,this.navigate(a);this._hasPushState?i(window).bind("popstate",this.checkUrl):this._wantsHashChange&&"onhashchange"in window&&!b?i(window).bind("hashchange",this.checkUrl):this._wantsHashChange&&(this._checkUrlInterval=setInterval(this.checkUrl,
|
||||
this.interval));this.fragment=a;a=window.location;b=a.pathname==this.options.root;if(this._wantsHashChange&&this._wantsPushState&&!this._hasPushState&&!b)return this.fragment=this.getFragment(null,!0),window.location.replace(this.options.root+"#"+this.fragment),!0;this._wantsPushState&&this._hasPushState&&b&&a.hash&&(this.fragment=this.getHash().replace(s,""),window.history.replaceState({},document.title,a.protocol+"//"+a.host+this.options.root+this.fragment));if(!this.options.silent)return this.loadUrl()},
|
||||
stop:function(){i(window).unbind("popstate",this.checkUrl).unbind("hashchange",this.checkUrl);clearInterval(this._checkUrlInterval);m.started=!1},route:function(a,b){this.handlers.unshift({route:a,callback:b})},checkUrl:function(){var a=this.getFragment();a==this.fragment&&this.iframe&&(a=this.getFragment(this.getHash(this.iframe)));if(a==this.fragment)return!1;this.iframe&&this.navigate(a);this.loadUrl()||this.loadUrl(this.getHash())},loadUrl:function(a){var b=this.fragment=this.getFragment(a);return f.any(this.handlers,
|
||||
function(a){if(a.route.test(b))return a.callback(b),!0})},navigate:function(a,b){if(!m.started)return!1;if(!b||!0===b)b={trigger:b};var c=(a||"").replace(s,"");this.fragment!=c&&(this._hasPushState?(0!=c.indexOf(this.options.root)&&(c=this.options.root+c),this.fragment=c,window.history[b.replace?"replaceState":"pushState"]({},document.title,c)):this._wantsHashChange?(this.fragment=c,this._updateHash(window.location,c,b.replace),this.iframe&&c!=this.getFragment(this.getHash(this.iframe))&&(b.replace||
|
||||
this.iframe.document.open().close(),this._updateHash(this.iframe.location,c,b.replace))):window.location.assign(this.options.root+a),b.trigger&&this.loadUrl(a))},_updateHash:function(a,b,c){c?a.replace(a.toString().replace(/(javascript:|#).*$/,"")+"#"+b):a.hash=b}});var v=g.View=function(a){this.cid=f.uniqueId("view");this._configure(a||{});this._ensureElement();this.initialize.apply(this,arguments);this.delegateEvents()},F=/^(\S+)\s*(.*)$/,w="model,collection,el,id,attributes,className,tagName".split(",");
|
||||
f.extend(v.prototype,k,{tagName:"div",$:function(a){return this.$el.find(a)},initialize:function(){},render:function(){return this},remove:function(){this.$el.remove();return this},make:function(a,b,c){a=document.createElement(a);b&&i(a).attr(b);c&&i(a).html(c);return a},setElement:function(a,b){this.$el&&this.undelegateEvents();this.$el=a instanceof i?a:i(a);this.el=this.$el[0];!1!==b&&this.delegateEvents();return this},delegateEvents:function(a){if(a||(a=n(this,"events"))){this.undelegateEvents();
|
||||
for(var b in a){var c=a[b];f.isFunction(c)||(c=this[a[b]]);if(!c)throw Error('Method "'+a[b]+'" does not exist');var d=b.match(F),e=d[1],d=d[2],c=f.bind(c,this),e=e+(".delegateEvents"+this.cid);""===d?this.$el.bind(e,c):this.$el.delegate(d,e,c)}}},undelegateEvents:function(){this.$el.unbind(".delegateEvents"+this.cid)},_configure:function(a){this.options&&(a=f.extend({},this.options,a));for(var b=0,c=w.length;b<c;b++){var d=w[b];a[d]&&(this[d]=a[d])}this.options=a},_ensureElement:function(){if(this.el)this.setElement(this.el,
|
||||
!1);else{var a=n(this,"attributes")||{};this.id&&(a.id=this.id);this.className&&(a["class"]=this.className);this.setElement(this.make(this.tagName,a),!1)}}});o.extend=r.extend=u.extend=v.extend=function(a,b){var c=G(this,a,b);c.extend=this.extend;return c};var H={create:"POST",update:"PUT","delete":"DELETE",read:"GET"};g.sync=function(a,b,c){var d=H[a];c||(c={});var e={type:d,dataType:"json"};c.url||(e.url=n(b,"url")||t());if(!c.data&&b&&("create"==a||"update"==a))e.contentType="application/json",
|
||||
e.data=JSON.stringify(b.toJSON());g.emulateJSON&&(e.contentType="application/x-www-form-urlencoded",e.data=e.data?{model:e.data}:{});if(g.emulateHTTP&&("PUT"===d||"DELETE"===d))g.emulateJSON&&(e.data._method=d),e.type="POST",e.beforeSend=function(a){a.setRequestHeader("X-HTTP-Method-Override",d)};"GET"!==e.type&&!g.emulateJSON&&(e.processData=!1);return i.ajax(f.extend(e,c))};g.wrapError=function(a,b,c){return function(d,e){e=d===b?e:d;a?a(b,e,c):b.trigger("error",b,e,c)}};var x=function(){},G=function(a,
|
||||
b,c){var d;d=b&&b.hasOwnProperty("constructor")?b.constructor:function(){a.apply(this,arguments)};f.extend(d,a);x.prototype=a.prototype;d.prototype=new x;b&&f.extend(d.prototype,b);c&&f.extend(d,c);d.prototype.constructor=d;d.__super__=a.prototype;return d},n=function(a,b){return!a||!a[b]?null:f.isFunction(a[b])?a[b]():a[b]},t=function(){throw Error('A "url" property or function must be specified');}}).call(this);
|
||||
Vendored
+1920
File diff suppressed because it is too large
Load Diff
Vendored
+1
File diff suppressed because one or more lines are too long
Vendored
+2
File diff suppressed because one or more lines are too long
Vendored
+18
@@ -0,0 +1,18 @@
|
||||
/*
|
||||
* jQuery BBQ: Back Button & Query Library - v1.2.1 - 2/17/2010
|
||||
* http://benalman.com/projects/jquery-bbq-plugin/
|
||||
*
|
||||
* Copyright (c) 2010 "Cowboy" Ben Alman
|
||||
* Dual licensed under the MIT and GPL licenses.
|
||||
* http://benalman.com/about/license/
|
||||
*/
|
||||
(function($,p){var i,m=Array.prototype.slice,r=decodeURIComponent,a=$.param,c,l,v,b=$.bbq=$.bbq||{},q,u,j,e=$.event.special,d="hashchange",A="querystring",D="fragment",y="elemUrlAttr",g="location",k="href",t="src",x=/^.*\?|#.*$/g,w=/^.*\#/,h,C={};function E(F){return typeof F==="string"}function B(G){var F=m.call(arguments,1);return function(){return G.apply(this,F.concat(m.call(arguments)))}}function n(F){return F.replace(/^[^#]*#?(.*)$/,"$1")}function o(F){return F.replace(/(?:^[^?#]*\?([^#]*).*$)?.*/,"$1")}function f(H,M,F,I,G){var O,L,K,N,J;if(I!==i){K=F.match(H?/^([^#]*)\#?(.*)$/:/^([^#?]*)\??([^#]*)(#?.*)/);J=K[3]||"";if(G===2&&E(I)){L=I.replace(H?w:x,"")}else{N=l(K[2]);I=E(I)?l[H?D:A](I):I;L=G===2?I:G===1?$.extend({},I,N):$.extend({},N,I);L=a(L);if(H){L=L.replace(h,r)}}O=K[1]+(H?"#":L||!K[1]?"?":"")+L+J}else{O=M(F!==i?F:p[g][k])}return O}a[A]=B(f,0,o);a[D]=c=B(f,1,n);c.noEscape=function(G){G=G||"";var F=$.map(G.split(""),encodeURIComponent);h=new RegExp(F.join("|"),"g")};c.noEscape(",/");$.deparam=l=function(I,F){var H={},G={"true":!0,"false":!1,"null":null};$.each(I.replace(/\+/g," ").split("&"),function(L,Q){var K=Q.split("="),P=r(K[0]),J,O=H,M=0,R=P.split("]["),N=R.length-1;if(/\[/.test(R[0])&&/\]$/.test(R[N])){R[N]=R[N].replace(/\]$/,"");R=R.shift().split("[").concat(R);N=R.length-1}else{N=0}if(K.length===2){J=r(K[1]);if(F){J=J&&!isNaN(J)?+J:J==="undefined"?i:G[J]!==i?G[J]:J}if(N){for(;M<=N;M++){P=R[M]===""?O.length:R[M];O=O[P]=M<N?O[P]||(R[M+1]&&isNaN(R[M+1])?{}:[]):J}}else{if($.isArray(H[P])){H[P].push(J)}else{if(H[P]!==i){H[P]=[H[P],J]}else{H[P]=J}}}}else{if(P){H[P]=F?i:""}}});return H};function z(H,F,G){if(F===i||typeof F==="boolean"){G=F;F=a[H?D:A]()}else{F=E(F)?F.replace(H?w:x,""):F}return l(F,G)}l[A]=B(z,0);l[D]=v=B(z,1);$[y]||($[y]=function(F){return $.extend(C,F)})({a:k,base:k,iframe:t,img:t,input:t,form:"action",link:k,script:t});j=$[y];function s(I,G,H,F){if(!E(H)&&typeof H!=="object"){F=H;H=G;G=i}return this.each(function(){var L=$(this),J=G||j()[(this.nodeName||"").toLowerCase()]||"",K=J&&L.attr(J)||"";L.attr(J,a[I](K,H,F))})}$.fn[A]=B(s,A);$.fn[D]=B(s,D);b.pushState=q=function(I,F){if(E(I)&&/^#/.test(I)&&F===i){F=2}var H=I!==i,G=c(p[g][k],H?I:{},H?F:2);p[g][k]=G+(/#/.test(G)?"":"#")};b.getState=u=function(F,G){return F===i||typeof F==="boolean"?v(F):v(G)[F]};b.removeState=function(F){var G={};if(F!==i){G=u();$.each($.isArray(F)?F:arguments,function(I,H){delete G[H]})}q(G,2)};e[d]=$.extend(e[d],{add:function(F){var H;function G(J){var I=J[D]=c();J.getState=function(K,L){return K===i||typeof K==="boolean"?l(I,K):l(I,L)[K]};H.apply(this,arguments)}if($.isFunction(F)){H=F;return G}else{H=F.handler;F.handler=G}}})})(jQuery,this);
|
||||
/*
|
||||
* jQuery hashchange event - v1.2 - 2/11/2010
|
||||
* http://benalman.com/projects/jquery-hashchange-plugin/
|
||||
*
|
||||
* Copyright (c) 2010 "Cowboy" Ben Alman
|
||||
* Dual licensed under the MIT and GPL licenses.
|
||||
* http://benalman.com/about/license/
|
||||
*/
|
||||
(function($,i,b){var j,k=$.event.special,c="location",d="hashchange",l="href",f=$.browser,g=document.documentMode,h=f.msie&&(g===b||g<8),e="on"+d in i&&!h;function a(m){m=m||i[c][l];return m.replace(/^[^#]*#?(.*)$/,"$1")}$[d+"Delay"]=100;k[d]=$.extend(k[d],{setup:function(){if(e){return false}$(j.start)},teardown:function(){if(e){return false}$(j.stop)}});j=(function(){var m={},r,n,o,q;function p(){o=q=function(s){return s};if(h){n=$('<iframe src="javascript:0"/>').hide().insertAfter("body")[0].contentWindow;q=function(){return a(n.document[c][l])};o=function(u,s){if(u!==s){var t=n.document;t.open().close();t[c].hash="#"+u}};o(a())}}m.start=function(){if(r){return}var t=a();o||p();(function s(){var v=a(),u=q(t);if(v!==t){o(t=v,u);$(i).trigger(d)}else{if(u!==t){i[c][l]=i[c][l].replace(/#.*/,"")+"#"+u}}r=setTimeout(s,$[d+"Delay"])})()};m.stop=function(){if(!n){r&&clearTimeout(r);r=0}};return m})()})(jQuery,this);
|
||||
Vendored
+1
@@ -0,0 +1 @@
|
||||
(function(b){b.fn.slideto=function(a){a=b.extend({slide_duration:"slow",highlight_duration:3E3,highlight:true,highlight_color:"#FFFF99"},a);return this.each(function(){obj=b(this);b("body").animate({scrollTop:obj.offset().top},a.slide_duration,function(){a.highlight&&b.ui.version&&obj.effect("highlight",{color:a.highlight_color},a.highlight_duration)})})}})(jQuery);
|
||||
Vendored
+8
@@ -0,0 +1,8 @@
|
||||
/*
|
||||
jQuery Wiggle
|
||||
Author: WonderGroup, Jordan Thomas
|
||||
URL: http://labs.wondergroup.com/demos/mini-ui/index.html
|
||||
License: MIT (http://en.wikipedia.org/wiki/MIT_License)
|
||||
*/
|
||||
jQuery.fn.wiggle=function(o){var d={speed:50,wiggles:3,travel:5,callback:null};var o=jQuery.extend(d,o);return this.each(function(){var cache=this;var wrap=jQuery(this).wrap('<div class="wiggle-wrap"></div>').css("position","relative");var calls=0;for(i=1;i<=o.wiggles;i++){jQuery(this).animate({left:"-="+o.travel},o.speed).animate({left:"+="+o.travel*2},o.speed*2).animate({left:"-="+o.travel},o.speed,function(){calls++;if(jQuery(cache).parent().hasClass('wiggle-wrap')){jQuery(cache).parent().replaceWith(cache);}
|
||||
if(calls==o.wiggles&&jQuery.isFunction(o.callback)){o.callback();}});}});};
|
||||
Vendored
+121
-38
@@ -1,4 +1,4 @@
|
||||
// Generated by CoffeeScript 1.3.3
|
||||
// Generated by CoffeeScript 1.4.0
|
||||
(function() {
|
||||
var SwaggerApi, SwaggerModel, SwaggerModelProperty, SwaggerOperation, SwaggerRequest, SwaggerResource,
|
||||
__bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; };
|
||||
@@ -53,6 +53,9 @@
|
||||
this.progress('fetching resource list: ' + this.discoveryUrl);
|
||||
return jQuery.getJSON(this.discoveryUrl, function(response) {
|
||||
var res, resource, _i, _j, _len, _len1, _ref, _ref1;
|
||||
if (response.apiVersion != null) {
|
||||
_this.apiVersion = response.apiVersion;
|
||||
}
|
||||
if ((response.basePath != null) && jQuery.trim(response.basePath).length > 0) {
|
||||
_this.basePath = response.basePath;
|
||||
if (_this.basePath.match(/^HTTP/i) == null) {
|
||||
@@ -63,8 +66,8 @@
|
||||
_this.basePath = _this.discoveryUrl.substring(0, _this.discoveryUrl.lastIndexOf('/'));
|
||||
log('derived basepath from discoveryUrl as ' + _this.basePath);
|
||||
}
|
||||
_this.resources = {};
|
||||
_this.resourcesArray = [];
|
||||
_this.apis = {};
|
||||
_this.apisArray = [];
|
||||
if (response.resourcePath != null) {
|
||||
_this.resourcePath = response.resourcePath;
|
||||
res = null;
|
||||
@@ -78,8 +81,8 @@
|
||||
}
|
||||
}
|
||||
if (res != null) {
|
||||
_this.resources[res.name] = res;
|
||||
_this.resourcesArray.push(res);
|
||||
_this.apis[res.name] = res;
|
||||
_this.apisArray.push(res);
|
||||
res.ready = true;
|
||||
_this.selfReflect();
|
||||
}
|
||||
@@ -88,22 +91,30 @@
|
||||
for (_j = 0, _len1 = _ref1.length; _j < _len1; _j++) {
|
||||
resource = _ref1[_j];
|
||||
res = new SwaggerResource(resource, _this);
|
||||
_this.resources[res.name] = res;
|
||||
_this.resourcesArray.push(res);
|
||||
_this.apis[res.name] = res;
|
||||
_this.apisArray.push(res);
|
||||
}
|
||||
}
|
||||
return _this;
|
||||
}).error(function(error) {
|
||||
return _this.fail(error.status + ' : ' + error.statusText + ' ' + _this.discoveryUrl);
|
||||
if (_this.discoveryUrl.substring(0, 4) !== 'http') {
|
||||
return _this.fail('Please specify the protocol for ' + _this.discoveryUrl);
|
||||
} else if (error.status === 0) {
|
||||
return _this.fail('Can\'t read from server. It may not have the appropriate access-control-origin settings.');
|
||||
} else if (error.status === 404) {
|
||||
return _this.fail('Can\'t read swagger JSON from ' + _this.discoveryUrl);
|
||||
} else {
|
||||
return _this.fail(error.status + ' : ' + error.statusText + ' ' + _this.discoveryUrl);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
SwaggerApi.prototype.selfReflect = function() {
|
||||
var resource, resource_name, _ref;
|
||||
if (this.resources == null) {
|
||||
if (this.apis == null) {
|
||||
return false;
|
||||
}
|
||||
_ref = this.resources;
|
||||
_ref = this.apis;
|
||||
for (resource_name in _ref) {
|
||||
resource = _ref[resource_name];
|
||||
if (resource.ready == null) {
|
||||
@@ -126,7 +137,7 @@
|
||||
var model, modelName, resource, resource_name, _i, _len, _ref, _ref1, _results;
|
||||
this.modelsArray = [];
|
||||
this.models = {};
|
||||
_ref = this.resources;
|
||||
_ref = this.apis;
|
||||
for (resource_name in _ref) {
|
||||
resource = _ref[resource_name];
|
||||
for (modelName in resource.models) {
|
||||
@@ -157,7 +168,7 @@
|
||||
|
||||
SwaggerApi.prototype.help = function() {
|
||||
var operation, operation_name, parameter, resource, resource_name, _i, _len, _ref, _ref1, _ref2;
|
||||
_ref = this.resources;
|
||||
_ref = this.apis;
|
||||
for (resource_name in _ref) {
|
||||
resource = _ref[resource_name];
|
||||
console.log(resource_name);
|
||||
@@ -223,7 +234,7 @@
|
||||
_this.ready = true;
|
||||
return _this.api.selfReflect();
|
||||
}).error(function(error) {
|
||||
return _this.api.fail(error.status + ' : ' + error.statusText + ' ' + _this.url);
|
||||
return _this.api.fail("Unable to read api '" + _this.name + "' from path " + _this.url + " (server returned " + error.statusText + ")");
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -232,9 +243,11 @@
|
||||
var model, modelName, swaggerModel, _i, _len, _ref, _results;
|
||||
if (models != null) {
|
||||
for (modelName in models) {
|
||||
swaggerModel = new SwaggerModel(modelName, models[modelName]);
|
||||
this.modelsArray.push(swaggerModel);
|
||||
this.models[modelName] = swaggerModel;
|
||||
if (!(this.models[modelName] != null)) {
|
||||
swaggerModel = new SwaggerModel(modelName, models[modelName]);
|
||||
this.modelsArray.push(swaggerModel);
|
||||
this.models[modelName] = swaggerModel;
|
||||
}
|
||||
}
|
||||
_ref = this.modelsArray;
|
||||
_results = [];
|
||||
@@ -247,12 +260,26 @@
|
||||
};
|
||||
|
||||
SwaggerResource.prototype.addOperations = function(resource_path, ops) {
|
||||
var o, op, _i, _len, _results;
|
||||
var consumes, err, errorResponses, o, op, _i, _j, _len, _len1, _results;
|
||||
if (ops) {
|
||||
_results = [];
|
||||
for (_i = 0, _len = ops.length; _i < _len; _i++) {
|
||||
o = ops[_i];
|
||||
op = new SwaggerOperation(o.nickname, resource_path, o.httpMethod, o.parameters, o.summary, o.notes, o.responseClass, o.errorResponses, this);
|
||||
consumes = o.consumes;
|
||||
if (o.supportedContentTypes) {
|
||||
consumes = o.supportedContentTypes;
|
||||
}
|
||||
errorResponses = o.responseMessages;
|
||||
if (errorResponses) {
|
||||
for (_j = 0, _len1 = errorResponses.length; _j < _len1; _j++) {
|
||||
err = errorResponses[_j];
|
||||
err.reason = err.message;
|
||||
}
|
||||
}
|
||||
if (o.errorResponses) {
|
||||
errorResponses = o.errorResponses;
|
||||
}
|
||||
op = new SwaggerOperation(o.nickname, resource_path, o.httpMethod, o.parameters, o.summary, o.notes, o.responseClass, errorResponses, this, o.consumes, o.produces);
|
||||
this.operations[op.nickname] = op;
|
||||
_results.push(this.operationsArray.push(op));
|
||||
}
|
||||
@@ -307,7 +334,7 @@
|
||||
return _results;
|
||||
};
|
||||
|
||||
SwaggerModel.prototype.getMockSignature = function(prefix, modelToIgnore) {
|
||||
SwaggerModel.prototype.getMockSignature = function(modelsToIgnore) {
|
||||
var classClose, classOpen, prop, propertiesStr, returnVal, strong, strongClose, stronger, _i, _j, _len, _len1, _ref, _ref1;
|
||||
propertiesStr = [];
|
||||
_ref = this.properties;
|
||||
@@ -315,25 +342,39 @@
|
||||
prop = _ref[_i];
|
||||
propertiesStr.push(prop.toString());
|
||||
}
|
||||
strong = '<span style="font-weight: bold; color: #000; font-size: 1.0em">';
|
||||
stronger = '<span style="font-weight: bold; color: #000; font-size: 1.1em">';
|
||||
strong = '<span class="strong">';
|
||||
stronger = '<span class="stronger">';
|
||||
strongClose = '</span>';
|
||||
classOpen = strong + 'class ' + this.name + '(' + strongClose;
|
||||
classClose = strong + ')' + strongClose;
|
||||
returnVal = classOpen + '<span>' + propertiesStr.join('</span>, <span>') + '</span>' + classClose;
|
||||
if (prefix != null) {
|
||||
returnVal = stronger + prefix + strongClose + '<br/>' + returnVal;
|
||||
classOpen = strong + this.name + ' {' + strongClose;
|
||||
classClose = strong + '}' + strongClose;
|
||||
returnVal = classOpen + '<div>' + propertiesStr.join(',</div><div>') + '</div>' + classClose;
|
||||
if (!modelsToIgnore) {
|
||||
modelsToIgnore = [];
|
||||
}
|
||||
modelsToIgnore.push(this);
|
||||
_ref1 = this.properties;
|
||||
for (_j = 0, _len1 = _ref1.length; _j < _len1; _j++) {
|
||||
prop = _ref1[_j];
|
||||
if ((prop.refModel != null) && (!(prop.refModel === modelToIgnore))) {
|
||||
returnVal = returnVal + ('<br>' + prop.refModel.getMockSignature(void 0, this));
|
||||
if ((prop.refModel != null) && (modelsToIgnore.indexOf(prop.refModel)) === -1) {
|
||||
returnVal = returnVal + ('<br>' + prop.refModel.getMockSignature(modelsToIgnore));
|
||||
}
|
||||
}
|
||||
return returnVal;
|
||||
};
|
||||
|
||||
SwaggerModel.prototype.createJSONSample = function(modelsToIgnore) {
|
||||
var prop, result, _i, _len, _ref;
|
||||
result = {};
|
||||
modelsToIgnore = modelsToIgnore || [];
|
||||
modelsToIgnore.push(this.name);
|
||||
_ref = this.properties;
|
||||
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
||||
prop = _ref[_i];
|
||||
result[prop.name] = prop.getSampleValue(modelsToIgnore);
|
||||
}
|
||||
return result;
|
||||
};
|
||||
|
||||
return SwaggerModel;
|
||||
|
||||
})();
|
||||
@@ -343,8 +384,9 @@
|
||||
function SwaggerModelProperty(name, obj) {
|
||||
this.name = name;
|
||||
this.dataType = obj.type;
|
||||
this.isArray = this.dataType.toLowerCase() === 'array';
|
||||
this.isCollection = this.dataType && (this.dataType.toLowerCase() === 'array' || this.dataType.toLowerCase() === 'list' || this.dataType.toLowerCase() === 'set');
|
||||
this.descr = obj.description;
|
||||
this.required = obj.required;
|
||||
if (obj.items != null) {
|
||||
if (obj.items.type != null) {
|
||||
this.refDataType = obj.items.type;
|
||||
@@ -363,14 +405,37 @@
|
||||
}
|
||||
}
|
||||
|
||||
SwaggerModelProperty.prototype.getSampleValue = function(modelsToIgnore) {
|
||||
var result;
|
||||
if ((this.refModel != null) && (modelsToIgnore.indexOf(this.refModel.name) === -1)) {
|
||||
result = this.refModel.createJSONSample(modelsToIgnore);
|
||||
} else {
|
||||
if (this.isCollection) {
|
||||
result = this.refDataType;
|
||||
} else {
|
||||
result = this.dataType;
|
||||
}
|
||||
}
|
||||
if (this.isCollection) {
|
||||
return [result];
|
||||
} else {
|
||||
return result;
|
||||
}
|
||||
};
|
||||
|
||||
SwaggerModelProperty.prototype.toString = function() {
|
||||
var str;
|
||||
str = this.name + ': ' + this.dataTypeWithRef;
|
||||
var req, str;
|
||||
req = this.required ? 'propReq' : 'propOpt';
|
||||
str = '<span class="propName ' + req + '">' + this.name + '</span> (<span class="propType">' + this.dataTypeWithRef + '</span>';
|
||||
if (!this.required) {
|
||||
str += ', <span class="propOptKey">optional</span>';
|
||||
}
|
||||
str += ')';
|
||||
if (this.values != null) {
|
||||
str += " = ['" + this.values.join("' or '") + "']";
|
||||
str += " = <span class='propVals'>['" + this.values.join("' or '") + "']</span>";
|
||||
}
|
||||
if (this.descr != null) {
|
||||
str += ' {' + this.descr + '}';
|
||||
str += ': <span class="propDesc">' + this.descr + '</span>';
|
||||
}
|
||||
return str;
|
||||
};
|
||||
@@ -381,7 +446,7 @@
|
||||
|
||||
SwaggerOperation = (function() {
|
||||
|
||||
function SwaggerOperation(nickname, path, httpMethod, parameters, summary, notes, responseClass, errorResponses, resource) {
|
||||
function SwaggerOperation(nickname, path, httpMethod, parameters, summary, notes, responseClass, errorResponses, resource, consumes, produces) {
|
||||
var parameter, v, _i, _j, _len, _len1, _ref, _ref1, _ref2,
|
||||
_this = this;
|
||||
this.nickname = nickname;
|
||||
@@ -393,6 +458,8 @@
|
||||
this.responseClass = responseClass;
|
||||
this.errorResponses = errorResponses;
|
||||
this.resource = resource;
|
||||
this.consumes = consumes;
|
||||
this.produces = produces;
|
||||
this["do"] = __bind(this["do"], this);
|
||||
|
||||
if (this.nickname == null) {
|
||||
@@ -413,6 +480,7 @@
|
||||
}
|
||||
if (this.responseClass != null) {
|
||||
this.responseClassSignature = this.getSignature(this.responseClass, this.resource.models);
|
||||
this.responseSampleJSON = this.getSampleJSON(this.responseClass, this.resource.models);
|
||||
}
|
||||
this.errorResponses = this.errorResponses || [];
|
||||
_ref1 = this.parameters;
|
||||
@@ -424,6 +492,7 @@
|
||||
parameter.allowableValues.values = this.resource.api.booleanValues;
|
||||
}
|
||||
parameter.signature = this.getSignature(parameter.dataType, this.resource.models);
|
||||
parameter.sampleJSON = this.getSampleJSON(parameter.dataType, this.resource.models);
|
||||
if (parameter.allowableValues != null) {
|
||||
if (parameter.allowableValues.valueType === "RANGE") {
|
||||
parameter.isRange = true;
|
||||
@@ -471,13 +540,24 @@
|
||||
return dataType;
|
||||
} else {
|
||||
if (listType != null) {
|
||||
return models[listType].getMockSignature(dataType);
|
||||
return models[listType].getMockSignature();
|
||||
} else {
|
||||
return models[dataType].getMockSignature(dataType);
|
||||
return models[dataType].getMockSignature();
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
SwaggerOperation.prototype.getSampleJSON = function(dataType, models) {
|
||||
var isPrimitive, listType, val;
|
||||
listType = this.isListType(dataType);
|
||||
isPrimitive = ((listType != null) && models[listType]) || (models[dataType] != null) ? false : true;
|
||||
val = isPrimitive ? void 0 : (listType != null ? models[listType].createJSONSample() : models[dataType].createJSONSample());
|
||||
if (val) {
|
||||
val = listType ? [val] : val;
|
||||
return JSON.stringify(val, null, 2);
|
||||
}
|
||||
};
|
||||
|
||||
SwaggerOperation.prototype["do"] = function(args, callback, error) {
|
||||
var body, headers;
|
||||
if (args == null) {
|
||||
@@ -518,7 +598,7 @@
|
||||
};
|
||||
|
||||
SwaggerOperation.prototype.urlify = function(args, includeApiKey) {
|
||||
var param, queryParams, url, _i, _len, _ref;
|
||||
var param, queryParams, reg, url, _i, _len, _ref;
|
||||
if (includeApiKey == null) {
|
||||
includeApiKey = true;
|
||||
}
|
||||
@@ -528,7 +608,8 @@
|
||||
param = _ref[_i];
|
||||
if (param.paramType === 'path') {
|
||||
if (args[param.name]) {
|
||||
url = url.replace("{" + param.name + "}", encodeURIComponent(args[param.name]));
|
||||
reg = new RegExp('\{' + param.name + '[^\}]*\}', 'gi');
|
||||
url = url.replace(reg, encodeURIComponent(args[param.name]));
|
||||
delete args[param.name];
|
||||
} else {
|
||||
throw "" + param.name + " is a required path param.";
|
||||
@@ -696,4 +777,6 @@
|
||||
|
||||
window.SwaggerRequest = SwaggerRequest;
|
||||
|
||||
window.SwaggerModelProperty = SwaggerModelProperty;
|
||||
|
||||
}).call(this);
|
||||
Vendored
+32
@@ -0,0 +1,32 @@
|
||||
// Underscore.js 1.3.3
|
||||
// (c) 2009-2012 Jeremy Ashkenas, DocumentCloud Inc.
|
||||
// Underscore is freely distributable under the MIT license.
|
||||
// Portions of Underscore are inspired or borrowed from Prototype,
|
||||
// Oliver Steele's Functional, and John Resig's Micro-Templating.
|
||||
// For all details and documentation:
|
||||
// http://documentcloud.github.com/underscore
|
||||
(function(){function r(a,c,d){if(a===c)return 0!==a||1/a==1/c;if(null==a||null==c)return a===c;a._chain&&(a=a._wrapped);c._chain&&(c=c._wrapped);if(a.isEqual&&b.isFunction(a.isEqual))return a.isEqual(c);if(c.isEqual&&b.isFunction(c.isEqual))return c.isEqual(a);var e=l.call(a);if(e!=l.call(c))return!1;switch(e){case "[object String]":return a==""+c;case "[object Number]":return a!=+a?c!=+c:0==a?1/a==1/c:a==+c;case "[object Date]":case "[object Boolean]":return+a==+c;case "[object RegExp]":return a.source==
|
||||
c.source&&a.global==c.global&&a.multiline==c.multiline&&a.ignoreCase==c.ignoreCase}if("object"!=typeof a||"object"!=typeof c)return!1;for(var f=d.length;f--;)if(d[f]==a)return!0;d.push(a);var f=0,g=!0;if("[object Array]"==e){if(f=a.length,g=f==c.length)for(;f--&&(g=f in a==f in c&&r(a[f],c[f],d)););}else{if("constructor"in a!="constructor"in c||a.constructor!=c.constructor)return!1;for(var h in a)if(b.has(a,h)&&(f++,!(g=b.has(c,h)&&r(a[h],c[h],d))))break;if(g){for(h in c)if(b.has(c,h)&&!f--)break;
|
||||
g=!f}}d.pop();return g}var s=this,I=s._,o={},k=Array.prototype,p=Object.prototype,i=k.slice,J=k.unshift,l=p.toString,K=p.hasOwnProperty,y=k.forEach,z=k.map,A=k.reduce,B=k.reduceRight,C=k.filter,D=k.every,E=k.some,q=k.indexOf,F=k.lastIndexOf,p=Array.isArray,L=Object.keys,t=Function.prototype.bind,b=function(a){return new m(a)};"undefined"!==typeof exports?("undefined"!==typeof module&&module.exports&&(exports=module.exports=b),exports._=b):s._=b;b.VERSION="1.3.3";var j=b.each=b.forEach=function(a,
|
||||
c,d){if(a!=null)if(y&&a.forEach===y)a.forEach(c,d);else if(a.length===+a.length)for(var e=0,f=a.length;e<f;e++){if(e in a&&c.call(d,a[e],e,a)===o)break}else for(e in a)if(b.has(a,e)&&c.call(d,a[e],e,a)===o)break};b.map=b.collect=function(a,c,b){var e=[];if(a==null)return e;if(z&&a.map===z)return a.map(c,b);j(a,function(a,g,h){e[e.length]=c.call(b,a,g,h)});if(a.length===+a.length)e.length=a.length;return e};b.reduce=b.foldl=b.inject=function(a,c,d,e){var f=arguments.length>2;a==null&&(a=[]);if(A&&
|
||||
a.reduce===A){e&&(c=b.bind(c,e));return f?a.reduce(c,d):a.reduce(c)}j(a,function(a,b,i){if(f)d=c.call(e,d,a,b,i);else{d=a;f=true}});if(!f)throw new TypeError("Reduce of empty array with no initial value");return d};b.reduceRight=b.foldr=function(a,c,d,e){var f=arguments.length>2;a==null&&(a=[]);if(B&&a.reduceRight===B){e&&(c=b.bind(c,e));return f?a.reduceRight(c,d):a.reduceRight(c)}var g=b.toArray(a).reverse();e&&!f&&(c=b.bind(c,e));return f?b.reduce(g,c,d,e):b.reduce(g,c)};b.find=b.detect=function(a,
|
||||
c,b){var e;G(a,function(a,g,h){if(c.call(b,a,g,h)){e=a;return true}});return e};b.filter=b.select=function(a,c,b){var e=[];if(a==null)return e;if(C&&a.filter===C)return a.filter(c,b);j(a,function(a,g,h){c.call(b,a,g,h)&&(e[e.length]=a)});return e};b.reject=function(a,c,b){var e=[];if(a==null)return e;j(a,function(a,g,h){c.call(b,a,g,h)||(e[e.length]=a)});return e};b.every=b.all=function(a,c,b){var e=true;if(a==null)return e;if(D&&a.every===D)return a.every(c,b);j(a,function(a,g,h){if(!(e=e&&c.call(b,
|
||||
a,g,h)))return o});return!!e};var G=b.some=b.any=function(a,c,d){c||(c=b.identity);var e=false;if(a==null)return e;if(E&&a.some===E)return a.some(c,d);j(a,function(a,b,h){if(e||(e=c.call(d,a,b,h)))return o});return!!e};b.include=b.contains=function(a,c){var b=false;if(a==null)return b;if(q&&a.indexOf===q)return a.indexOf(c)!=-1;return b=G(a,function(a){return a===c})};b.invoke=function(a,c){var d=i.call(arguments,2);return b.map(a,function(a){return(b.isFunction(c)?c||a:a[c]).apply(a,d)})};b.pluck=
|
||||
function(a,c){return b.map(a,function(a){return a[c]})};b.max=function(a,c,d){if(!c&&b.isArray(a)&&a[0]===+a[0])return Math.max.apply(Math,a);if(!c&&b.isEmpty(a))return-Infinity;var e={computed:-Infinity};j(a,function(a,b,h){b=c?c.call(d,a,b,h):a;b>=e.computed&&(e={value:a,computed:b})});return e.value};b.min=function(a,c,d){if(!c&&b.isArray(a)&&a[0]===+a[0])return Math.min.apply(Math,a);if(!c&&b.isEmpty(a))return Infinity;var e={computed:Infinity};j(a,function(a,b,h){b=c?c.call(d,a,b,h):a;b<e.computed&&
|
||||
(e={value:a,computed:b})});return e.value};b.shuffle=function(a){var b=[],d;j(a,function(a,f){d=Math.floor(Math.random()*(f+1));b[f]=b[d];b[d]=a});return b};b.sortBy=function(a,c,d){var e=b.isFunction(c)?c:function(a){return a[c]};return b.pluck(b.map(a,function(a,b,c){return{value:a,criteria:e.call(d,a,b,c)}}).sort(function(a,b){var c=a.criteria,d=b.criteria;return c===void 0?1:d===void 0?-1:c<d?-1:c>d?1:0}),"value")};b.groupBy=function(a,c){var d={},e=b.isFunction(c)?c:function(a){return a[c]};
|
||||
j(a,function(a,b){var c=e(a,b);(d[c]||(d[c]=[])).push(a)});return d};b.sortedIndex=function(a,c,d){d||(d=b.identity);for(var e=0,f=a.length;e<f;){var g=e+f>>1;d(a[g])<d(c)?e=g+1:f=g}return e};b.toArray=function(a){return!a?[]:b.isArray(a)||b.isArguments(a)?i.call(a):a.toArray&&b.isFunction(a.toArray)?a.toArray():b.values(a)};b.size=function(a){return b.isArray(a)?a.length:b.keys(a).length};b.first=b.head=b.take=function(a,b,d){return b!=null&&!d?i.call(a,0,b):a[0]};b.initial=function(a,b,d){return i.call(a,
|
||||
0,a.length-(b==null||d?1:b))};b.last=function(a,b,d){return b!=null&&!d?i.call(a,Math.max(a.length-b,0)):a[a.length-1]};b.rest=b.tail=function(a,b,d){return i.call(a,b==null||d?1:b)};b.compact=function(a){return b.filter(a,function(a){return!!a})};b.flatten=function(a,c){return b.reduce(a,function(a,e){if(b.isArray(e))return a.concat(c?e:b.flatten(e));a[a.length]=e;return a},[])};b.without=function(a){return b.difference(a,i.call(arguments,1))};b.uniq=b.unique=function(a,c,d){var d=d?b.map(a,d):a,
|
||||
e=[];a.length<3&&(c=true);b.reduce(d,function(d,g,h){if(c?b.last(d)!==g||!d.length:!b.include(d,g)){d.push(g);e.push(a[h])}return d},[]);return e};b.union=function(){return b.uniq(b.flatten(arguments,true))};b.intersection=b.intersect=function(a){var c=i.call(arguments,1);return b.filter(b.uniq(a),function(a){return b.every(c,function(c){return b.indexOf(c,a)>=0})})};b.difference=function(a){var c=b.flatten(i.call(arguments,1),true);return b.filter(a,function(a){return!b.include(c,a)})};b.zip=function(){for(var a=
|
||||
i.call(arguments),c=b.max(b.pluck(a,"length")),d=Array(c),e=0;e<c;e++)d[e]=b.pluck(a,""+e);return d};b.indexOf=function(a,c,d){if(a==null)return-1;var e;if(d){d=b.sortedIndex(a,c);return a[d]===c?d:-1}if(q&&a.indexOf===q)return a.indexOf(c);d=0;for(e=a.length;d<e;d++)if(d in a&&a[d]===c)return d;return-1};b.lastIndexOf=function(a,b){if(a==null)return-1;if(F&&a.lastIndexOf===F)return a.lastIndexOf(b);for(var d=a.length;d--;)if(d in a&&a[d]===b)return d;return-1};b.range=function(a,b,d){if(arguments.length<=
|
||||
1){b=a||0;a=0}for(var d=arguments[2]||1,e=Math.max(Math.ceil((b-a)/d),0),f=0,g=Array(e);f<e;){g[f++]=a;a=a+d}return g};var H=function(){};b.bind=function(a,c){var d,e;if(a.bind===t&&t)return t.apply(a,i.call(arguments,1));if(!b.isFunction(a))throw new TypeError;e=i.call(arguments,2);return d=function(){if(!(this instanceof d))return a.apply(c,e.concat(i.call(arguments)));H.prototype=a.prototype;var b=new H,g=a.apply(b,e.concat(i.call(arguments)));return Object(g)===g?g:b}};b.bindAll=function(a){var c=
|
||||
i.call(arguments,1);c.length==0&&(c=b.functions(a));j(c,function(c){a[c]=b.bind(a[c],a)});return a};b.memoize=function(a,c){var d={};c||(c=b.identity);return function(){var e=c.apply(this,arguments);return b.has(d,e)?d[e]:d[e]=a.apply(this,arguments)}};b.delay=function(a,b){var d=i.call(arguments,2);return setTimeout(function(){return a.apply(null,d)},b)};b.defer=function(a){return b.delay.apply(b,[a,1].concat(i.call(arguments,1)))};b.throttle=function(a,c){var d,e,f,g,h,i,j=b.debounce(function(){h=
|
||||
g=false},c);return function(){d=this;e=arguments;f||(f=setTimeout(function(){f=null;h&&a.apply(d,e);j()},c));g?h=true:i=a.apply(d,e);j();g=true;return i}};b.debounce=function(a,b,d){var e;return function(){var f=this,g=arguments;d&&!e&&a.apply(f,g);clearTimeout(e);e=setTimeout(function(){e=null;d||a.apply(f,g)},b)}};b.once=function(a){var b=false,d;return function(){if(b)return d;b=true;return d=a.apply(this,arguments)}};b.wrap=function(a,b){return function(){var d=[a].concat(i.call(arguments,0));
|
||||
return b.apply(this,d)}};b.compose=function(){var a=arguments;return function(){for(var b=arguments,d=a.length-1;d>=0;d--)b=[a[d].apply(this,b)];return b[0]}};b.after=function(a,b){return a<=0?b():function(){if(--a<1)return b.apply(this,arguments)}};b.keys=L||function(a){if(a!==Object(a))throw new TypeError("Invalid object");var c=[],d;for(d in a)b.has(a,d)&&(c[c.length]=d);return c};b.values=function(a){return b.map(a,b.identity)};b.functions=b.methods=function(a){var c=[],d;for(d in a)b.isFunction(a[d])&&
|
||||
c.push(d);return c.sort()};b.extend=function(a){j(i.call(arguments,1),function(b){for(var d in b)a[d]=b[d]});return a};b.pick=function(a){var c={};j(b.flatten(i.call(arguments,1)),function(b){b in a&&(c[b]=a[b])});return c};b.defaults=function(a){j(i.call(arguments,1),function(b){for(var d in b)a[d]==null&&(a[d]=b[d])});return a};b.clone=function(a){return!b.isObject(a)?a:b.isArray(a)?a.slice():b.extend({},a)};b.tap=function(a,b){b(a);return a};b.isEqual=function(a,b){return r(a,b,[])};b.isEmpty=
|
||||
function(a){if(a==null)return true;if(b.isArray(a)||b.isString(a))return a.length===0;for(var c in a)if(b.has(a,c))return false;return true};b.isElement=function(a){return!!(a&&a.nodeType==1)};b.isArray=p||function(a){return l.call(a)=="[object Array]"};b.isObject=function(a){return a===Object(a)};b.isArguments=function(a){return l.call(a)=="[object Arguments]"};b.isArguments(arguments)||(b.isArguments=function(a){return!(!a||!b.has(a,"callee"))});b.isFunction=function(a){return l.call(a)=="[object Function]"};
|
||||
b.isString=function(a){return l.call(a)=="[object String]"};b.isNumber=function(a){return l.call(a)=="[object Number]"};b.isFinite=function(a){return b.isNumber(a)&&isFinite(a)};b.isNaN=function(a){return a!==a};b.isBoolean=function(a){return a===true||a===false||l.call(a)=="[object Boolean]"};b.isDate=function(a){return l.call(a)=="[object Date]"};b.isRegExp=function(a){return l.call(a)=="[object RegExp]"};b.isNull=function(a){return a===null};b.isUndefined=function(a){return a===void 0};b.has=function(a,
|
||||
b){return K.call(a,b)};b.noConflict=function(){s._=I;return this};b.identity=function(a){return a};b.times=function(a,b,d){for(var e=0;e<a;e++)b.call(d,e)};b.escape=function(a){return(""+a).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")};b.result=function(a,c){if(a==null)return null;var d=a[c];return b.isFunction(d)?d.call(a):d};b.mixin=function(a){j(b.functions(a),function(c){M(c,b[c]=a[c])})};var N=0;b.uniqueId=
|
||||
function(a){var b=N++;return a?a+b:b};b.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var u=/.^/,n={"\\":"\\","'":"'",r:"\r",n:"\n",t:"\t",u2028:"\u2028",u2029:"\u2029"},v;for(v in n)n[n[v]]=v;var O=/\\|'|\r|\n|\t|\u2028|\u2029/g,P=/\\(\\|'|r|n|t|u2028|u2029)/g,w=function(a){return a.replace(P,function(a,b){return n[b]})};b.template=function(a,c,d){d=b.defaults(d||{},b.templateSettings);a="__p+='"+a.replace(O,function(a){return"\\"+n[a]}).replace(d.escape||
|
||||
u,function(a,b){return"'+\n_.escape("+w(b)+")+\n'"}).replace(d.interpolate||u,function(a,b){return"'+\n("+w(b)+")+\n'"}).replace(d.evaluate||u,function(a,b){return"';\n"+w(b)+"\n;__p+='"})+"';\n";d.variable||(a="with(obj||{}){\n"+a+"}\n");var a="var __p='';var print=function(){__p+=Array.prototype.join.call(arguments, '')};\n"+a+"return __p;\n",e=new Function(d.variable||"obj","_",a);if(c)return e(c,b);c=function(a){return e.call(this,a,b)};c.source="function("+(d.variable||"obj")+"){\n"+a+"}";return c};
|
||||
b.chain=function(a){return b(a).chain()};var m=function(a){this._wrapped=a};b.prototype=m.prototype;var x=function(a,c){return c?b(a).chain():a},M=function(a,c){m.prototype[a]=function(){var a=i.call(arguments);J.call(a,this._wrapped);return x(c.apply(b,a),this._chain)}};b.mixin(b);j("pop,push,reverse,shift,sort,splice,unshift".split(","),function(a){var b=k[a];m.prototype[a]=function(){var d=this._wrapped;b.apply(d,arguments);var e=d.length;(a=="shift"||a=="splice")&&e===0&&delete d[0];return x(d,
|
||||
this._chain)}});j(["concat","join","slice"],function(a){var b=k[a];m.prototype[a]=function(){return x(b.apply(this._wrapped,arguments),this._chain)}});m.prototype.chain=function(){this._chain=true;return this};m.prototype.value=function(){return this._wrapped}}).call(this);
|
||||
Vendored
+2020
File diff suppressed because it is too large
Load Diff
Vendored
+1
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,25 @@
|
||||
{
|
||||
"name": "swagger-ui",
|
||||
"version": "1.1.15",
|
||||
"description": "Swagger UI is a dependency-free collection of HTML, Javascript, and CSS assets that dynamically generate beautiful documentation from a Swagger-compliant API",
|
||||
"scripts": {
|
||||
"build": "PATH=$PATH:./node_modules/.bin cake dist",
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/wordnik/swagger-ui.git"
|
||||
},
|
||||
"author": {
|
||||
"name": "Tony Tam",
|
||||
"email": "fehguy@gmail.com",
|
||||
"url": "http://developer.wordnik.com"
|
||||
},
|
||||
"license": "Apache",
|
||||
"readmeFilename": "README.md",
|
||||
"dependencies": {
|
||||
"coffee-script": "~1.5.0",
|
||||
"swagger-client": "1.0.4",
|
||||
"handlebars": "~1.0.10"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
class ContentTypeView extends Backbone.View
|
||||
initialize: ->
|
||||
|
||||
render: ->
|
||||
template = @template()
|
||||
$(@el).html(template(@model))
|
||||
|
||||
@isParam = @model.isParam
|
||||
|
||||
if @isParam
|
||||
$('label[for=contentType]', $(@el)).text('Parameter content type:')
|
||||
else
|
||||
$('label[for=contentType]', $(@el)).text('Response Content Type')
|
||||
|
||||
@
|
||||
|
||||
template: ->
|
||||
Handlebars.templates.content_type
|
||||
|
||||
@@ -13,7 +13,7 @@ class HeaderView extends Backbone.View
|
||||
showPetStore: (e) ->
|
||||
@trigger(
|
||||
'update-swagger-ui'
|
||||
{discoveryUrl:"http://petstore.swagger.wordnik.com/api/resources.json", apiKey:"special-key"}
|
||||
{discoveryUrl:"http://petstore.swagger.wordnik.com/api/api-docs.json", apiKey:"special-key"}
|
||||
)
|
||||
|
||||
showWordnikDev: (e) ->
|
||||
|
||||
@@ -6,7 +6,7 @@ class MainView extends Backbone.View
|
||||
$(@el).html(Handlebars.templates.main(@model))
|
||||
|
||||
# Render each resource
|
||||
@addResource resource for resource in @model.resourcesArray
|
||||
@addResource resource for resource in @model.apisArray
|
||||
@
|
||||
|
||||
addResource: (resource) ->
|
||||
|
||||
@@ -14,6 +14,30 @@ class OperationView extends Backbone.View
|
||||
|
||||
$(@el).html(Handlebars.templates.operation(@model))
|
||||
|
||||
if @model.responseClassSignature and @model.responseClassSignature != 'string'
|
||||
signatureModel =
|
||||
sampleJSON: @model.responseSampleJSON
|
||||
isParam: false
|
||||
signature: @model.responseClassSignature
|
||||
|
||||
responseSignatureView = new SignatureView({model: signatureModel, tagName: 'div'})
|
||||
$('.model-signature', $(@el)).append responseSignatureView.render().el
|
||||
else
|
||||
$('.model-signature', $(@el)).html(@model.responseClass)
|
||||
|
||||
contentTypeModel =
|
||||
isParam: false
|
||||
|
||||
# support old syntax
|
||||
if @model.supportedContentTypes
|
||||
contentTypeModel.produces = @model.supportedContentTypes
|
||||
|
||||
if @model.produces
|
||||
contentTypeModel.produces = @model.produces
|
||||
|
||||
contentTypeView = new ContentTypeView({model: contentTypeModel})
|
||||
$('.content-type', $(@el)).append contentTypeView.render().el
|
||||
|
||||
# Render each parameter
|
||||
@addParameter param for param in @model.parameters
|
||||
|
||||
@@ -52,27 +76,48 @@ class OperationView extends Backbone.View
|
||||
if(o.value? && jQuery.trim(o.value).length > 0)
|
||||
map[o.name] = o.value
|
||||
|
||||
isFileUpload = $('input[type~="file"]').size != 0
|
||||
isFileUpload = form.children().find('input[type~="file"]').size() != 0
|
||||
|
||||
isFormPost = false
|
||||
consumes = "application/json"
|
||||
if @model.consumes and @model.consumes.length > 0
|
||||
# honor the consumes setting above everything else
|
||||
consumes = @model.consumes[0]
|
||||
else
|
||||
for o in @model.parameters
|
||||
if o.paramType == 'form'
|
||||
isFormPost = true
|
||||
consumes = false
|
||||
|
||||
if isFileUpload
|
||||
consumes = false
|
||||
else if @model.httpMethod.toLowerCase() == "post" and isFormPost is false
|
||||
consumes = "application/json"
|
||||
|
||||
if isFileUpload
|
||||
# requires HTML5 compatible browser
|
||||
bodyParam = new FormData()
|
||||
|
||||
# add params
|
||||
# add params except file
|
||||
for param in @model.parameters
|
||||
if param.paramType is 'body'
|
||||
if (param.paramType is 'body' or 'form') and param.name isnt 'file' and param.name isnt 'File' and map[param.name]?
|
||||
bodyParam.append(param.name, map[param.name])
|
||||
|
||||
# add files
|
||||
$.each $('input[type~="file"]'), (i, el) ->
|
||||
$.each form.children().find('input[type~="file"]'), (i, el) ->
|
||||
bodyParam.append($(el).attr('name'), el.files[0])
|
||||
|
||||
console.log(bodyParam)
|
||||
else if isFormPost
|
||||
bodyParam = new FormData()
|
||||
for param in @model.parameters
|
||||
if map[param.name]?
|
||||
bodyParam.append(param.name, map[param.name])
|
||||
else
|
||||
bodyParam = null
|
||||
for param in @model.parameters
|
||||
if param.paramType is 'body'
|
||||
bodyParam = map[param.name]
|
||||
bodyParam = null
|
||||
for param in @model.parameters
|
||||
if param.paramType is 'body'
|
||||
bodyParam = map[param.name]
|
||||
|
||||
log "bodyParam = " + bodyParam
|
||||
|
||||
@@ -95,6 +140,7 @@ class OperationView extends Backbone.View
|
||||
url: invocationUrl
|
||||
headers: headerParams
|
||||
data: bodyParam
|
||||
contentType: consumes
|
||||
dataType: 'json'
|
||||
processData: false
|
||||
error: (xhr, textStatus, error) =>
|
||||
@@ -104,8 +150,22 @@ class OperationView extends Backbone.View
|
||||
complete: (data) =>
|
||||
@showCompleteStatus(data)
|
||||
|
||||
obj.contentType = "application/json" if (obj.type.toLowerCase() == "put" or obj.type.toLowerCase() == "patch")
|
||||
obj.contentType = false if isFileUpload
|
||||
paramContentTypeField = $("td select[name=contentType]", $(@el)).val()
|
||||
if paramContentTypeField
|
||||
obj.contentType = paramContentTypeField
|
||||
|
||||
log 'content type = ' + obj.contentType
|
||||
|
||||
if not (obj.data or (obj.type is 'GET' or obj.type is 'DELETE')) and obj.contentType is not "application/x-www-form-urlencoded"
|
||||
obj.contentType = false
|
||||
|
||||
log 'content type is now = ' + obj.contentType
|
||||
|
||||
responseContentTypeField = $('.content > .content-type > div > select[name=contentType]', $(@el)).val()
|
||||
if responseContentTypeField
|
||||
obj.headers = if obj.headers? then obj.headers else {}
|
||||
obj.headers.accept = responseContentTypeField
|
||||
|
||||
jQuery.ajax(obj)
|
||||
false
|
||||
# $.getJSON(invocationUrl, (r) => @showResponse(r)).complete((r) => @showCompleteStatus(r)).error (r) => @showErrorStatus(r)
|
||||
@@ -120,7 +180,7 @@ class OperationView extends Backbone.View
|
||||
# Show response from server
|
||||
showResponse: (response) ->
|
||||
prettyJson = JSON.stringify(response, null, "\t").replace(/\n/g, "<br>")
|
||||
$(".response_body", $(@el)).html prettyJson
|
||||
$(".response_body", $(@el)).html escape(prettyJson)
|
||||
|
||||
|
||||
# Show error from server
|
||||
@@ -131,19 +191,82 @@ class OperationView extends Backbone.View
|
||||
showCompleteStatus: (data) ->
|
||||
@showStatus data
|
||||
|
||||
# Adapted from http://stackoverflow.com/a/2893259/454004
|
||||
formatXml: (xml) ->
|
||||
reg = /(>)(<)(\/*)/g
|
||||
wsexp = /[ ]*(.*)[ ]+\n/g
|
||||
contexp = /(<.+>)(.+\n)/g
|
||||
xml = xml.replace(reg, '$1\n$2$3').replace(wsexp, '$1\n').replace(contexp, '$1\n$2')
|
||||
pad = 0
|
||||
formatted = ''
|
||||
lines = xml.split('\n')
|
||||
indent = 0
|
||||
lastType = 'other'
|
||||
# 4 types of tags - single, closing, opening, other (text, doctype, comment) - 4*4 = 16 transitions
|
||||
transitions =
|
||||
'single->single': 0
|
||||
'single->closing': -1
|
||||
'single->opening': 0
|
||||
'single->other': 0
|
||||
'closing->single': 0
|
||||
'closing->closing': -1
|
||||
'closing->opening': 0
|
||||
'closing->other': 0
|
||||
'opening->single': 1
|
||||
'opening->closing': 0
|
||||
'opening->opening': 1
|
||||
'opening->other': 1
|
||||
'other->single': 0
|
||||
'other->closing': -1
|
||||
'other->opening': 0
|
||||
'other->other': 0
|
||||
|
||||
for ln in lines
|
||||
do (ln) ->
|
||||
|
||||
types =
|
||||
# is this line a single tag? ex. <br />
|
||||
single: Boolean(ln.match(/<.+\/>/))
|
||||
# is this a closing tag? ex. </a>
|
||||
closing: Boolean(ln.match(/<\/.+>/))
|
||||
# is this even a tag (that's not <!something>)
|
||||
opening: Boolean(ln.match(/<[^!?].*>/))
|
||||
|
||||
[type] = (key for key, value of types when value)
|
||||
type = if type is undefined then 'other' else type
|
||||
|
||||
fromTo = lastType + '->' + type
|
||||
lastType = type
|
||||
padding = ''
|
||||
|
||||
indent += transitions[fromTo]
|
||||
padding = (' ' for j in [0...(indent)]).join('')
|
||||
if fromTo == 'opening->closing'
|
||||
#substr removes line break (\n) from prev loop
|
||||
formatted = formatted.substr(0, formatted.length - 1) + ln + '\n'
|
||||
else
|
||||
formatted += padding + ln + '\n'
|
||||
|
||||
formatted
|
||||
|
||||
|
||||
# puts the response data in UI
|
||||
showStatus: (data) ->
|
||||
try
|
||||
response_body = "<pre>" + JSON.stringify(JSON.parse(data.responseText), null, 2).replace(/\n/g, "<br>") + "</pre>"
|
||||
code = $('<code />').text(JSON.stringify(JSON.parse(data.responseText), null, 2))
|
||||
pre = $('<pre class="json" />').append(code)
|
||||
catch error
|
||||
response_body = "<span style='color:red'> [unable to parse as json; raw response below]</span><br><pre>" + data.responseText + "</pre>"
|
||||
code = $('<code />').text(@formatXml(data.responseText))
|
||||
pre = $('<pre class="xml" />').append(code)
|
||||
response_body = pre
|
||||
$(".response_code", $(@el)).html "<pre>" + data.status + "</pre>"
|
||||
$(".response_body", $(@el)).html response_body
|
||||
$(".response_headers", $(@el)).html "<pre>" + data.getAllResponseHeaders() + "</pre>"
|
||||
$(".response", $(@el)).slideDown()
|
||||
$(".response_hider", $(@el)).show()
|
||||
$(".response_throbber", $(@el)).hide()
|
||||
hljs.highlightBlock($('.response_body', $(@el))[0])
|
||||
|
||||
toggleOperationContent: ->
|
||||
elem = $('#' + @model.resourceName + "_" + @model.nickname + "_" + @model.httpMethod + "_content");
|
||||
elem = $('#' + Docs.escapeResourceName(@model.resourceName) + "_" + @model.nickname + "_" + @model.httpMethod + "_" + @model.number + "_content")
|
||||
if elem.is(':visible') then Docs.collapseOperation(elem) else Docs.expandOperation(elem)
|
||||
|
||||
@@ -8,6 +8,30 @@ class ParameterView extends Backbone.View
|
||||
template = @template()
|
||||
$(@el).html(template(@model))
|
||||
|
||||
signatureModel =
|
||||
sampleJSON: @model.sampleJSON
|
||||
isParam: true
|
||||
signature: @model.signature
|
||||
|
||||
if @model.sampleJSON
|
||||
signatureView = new SignatureView({model: signatureModel, tagName: 'div'})
|
||||
$('.model-signature', $(@el)).append signatureView.render().el
|
||||
else
|
||||
$('.model-signature', $(@el)).html(@model.signature)
|
||||
|
||||
contentTypeModel =
|
||||
isParam: false
|
||||
|
||||
# support old syntax
|
||||
if @model.supportedContentTypes
|
||||
contentTypeModel.produces = @model.supportedContentTypes
|
||||
|
||||
if @model.produces
|
||||
contentTypeModel.produces = @model.produces
|
||||
|
||||
contentTypeView = new ContentTypeView({model: contentTypeModel})
|
||||
$('.content-type', $(@el)).append contentTypeView.render().el
|
||||
|
||||
@
|
||||
|
||||
# Return an appropriate template based on if the parameter is a list, readonly, required
|
||||
|
||||
@@ -4,11 +4,18 @@ class ResourceView extends Backbone.View
|
||||
render: ->
|
||||
$(@el).html(Handlebars.templates.resource(@model))
|
||||
|
||||
@number = 0
|
||||
|
||||
# Render each operation
|
||||
@addOperation operation for operation in @model.operationsArray
|
||||
@
|
||||
|
||||
addOperation: (operation) ->
|
||||
|
||||
operation.number = @number
|
||||
|
||||
# Render an operation and add it to operations li
|
||||
operationView = new OperationView({model: operation, tagName: 'li', className: 'endpoint'})
|
||||
$('.endpoints', $(@el)).append operationView.render().el
|
||||
$('.endpoints', $(@el)).append operationView.render().el
|
||||
|
||||
@number++
|
||||
@@ -0,0 +1,51 @@
|
||||
class SignatureView extends Backbone.View
|
||||
events: {
|
||||
'click a.description-link' : 'switchToDescription'
|
||||
'click a.snippet-link' : 'switchToSnippet'
|
||||
'mousedown .snippet' : 'snippetToTextArea'
|
||||
}
|
||||
|
||||
initialize: ->
|
||||
|
||||
render: ->
|
||||
template = @template()
|
||||
$(@el).html(template(@model))
|
||||
|
||||
@switchToDescription()
|
||||
|
||||
@isParam = @model.isParam
|
||||
|
||||
if @isParam
|
||||
$('.notice', $(@el)).text('Click to set as parameter value')
|
||||
|
||||
@
|
||||
|
||||
template: ->
|
||||
Handlebars.templates.signature
|
||||
|
||||
# handler for show signature
|
||||
switchToDescription: (e) ->
|
||||
e?.preventDefault()
|
||||
$(".snippet", $(@el)).hide()
|
||||
$(".description", $(@el)).show()
|
||||
$('.description-link', $(@el)).addClass('selected')
|
||||
$('.snippet-link', $(@el)).removeClass('selected')
|
||||
|
||||
# handler for show sample
|
||||
switchToSnippet: (e) ->
|
||||
e?.preventDefault()
|
||||
$(".description", $(@el)).hide()
|
||||
$(".snippet", $(@el)).show()
|
||||
$('.snippet-link', $(@el)).addClass('selected')
|
||||
$('.description-link', $(@el)).removeClass('selected')
|
||||
|
||||
# handler for snippet to text area
|
||||
snippetToTextArea: (e) ->
|
||||
if @isParam
|
||||
e?.preventDefault()
|
||||
textArea = $('textarea', $(@el.parentNode.parentNode.parentNode))
|
||||
if $.trim(textArea.val()) == ''
|
||||
textArea.val(@model.sampleJSON)
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,135 @@
|
||||
/*
|
||||
|
||||
Original style from softwaremaniacs.org (c) Ivan Sagalaev <Maniac@SoftwareManiacs.Org>
|
||||
|
||||
*/
|
||||
|
||||
pre code {
|
||||
display: block; padding: 0.5em;
|
||||
background: #F0F0F0;
|
||||
}
|
||||
|
||||
pre code,
|
||||
pre .subst,
|
||||
pre .tag .title,
|
||||
pre .lisp .title,
|
||||
pre .clojure .built_in,
|
||||
pre .nginx .title {
|
||||
color: black;
|
||||
}
|
||||
|
||||
pre .string,
|
||||
pre .title,
|
||||
pre .constant,
|
||||
pre .parent,
|
||||
pre .tag .value,
|
||||
pre .rules .value,
|
||||
pre .rules .value .number,
|
||||
pre .preprocessor,
|
||||
pre .ruby .symbol,
|
||||
pre .ruby .symbol .string,
|
||||
pre .aggregate,
|
||||
pre .template_tag,
|
||||
pre .django .variable,
|
||||
pre .smalltalk .class,
|
||||
pre .addition,
|
||||
pre .flow,
|
||||
pre .stream,
|
||||
pre .bash .variable,
|
||||
pre .apache .tag,
|
||||
pre .apache .cbracket,
|
||||
pre .tex .command,
|
||||
pre .tex .special,
|
||||
pre .erlang_repl .function_or_atom,
|
||||
pre .markdown .header {
|
||||
color: #800;
|
||||
}
|
||||
|
||||
pre .comment,
|
||||
pre .annotation,
|
||||
pre .template_comment,
|
||||
pre .diff .header,
|
||||
pre .chunk,
|
||||
pre .markdown .blockquote {
|
||||
color: #888;
|
||||
}
|
||||
|
||||
pre .number,
|
||||
pre .date,
|
||||
pre .regexp,
|
||||
pre .literal,
|
||||
pre .smalltalk .symbol,
|
||||
pre .smalltalk .char,
|
||||
pre .go .constant,
|
||||
pre .change,
|
||||
pre .markdown .bullet,
|
||||
pre .markdown .link_url {
|
||||
color: #080;
|
||||
}
|
||||
|
||||
pre .label,
|
||||
pre .javadoc,
|
||||
pre .ruby .string,
|
||||
pre .decorator,
|
||||
pre .filter .argument,
|
||||
pre .localvars,
|
||||
pre .array,
|
||||
pre .attr_selector,
|
||||
pre .important,
|
||||
pre .pseudo,
|
||||
pre .pi,
|
||||
pre .doctype,
|
||||
pre .deletion,
|
||||
pre .envvar,
|
||||
pre .shebang,
|
||||
pre .apache .sqbracket,
|
||||
pre .nginx .built_in,
|
||||
pre .tex .formula,
|
||||
pre .erlang_repl .reserved,
|
||||
pre .prompt,
|
||||
pre .markdown .link_label,
|
||||
pre .vhdl .attribute,
|
||||
pre .clojure .attribute,
|
||||
pre .coffeescript .property {
|
||||
color: #88F
|
||||
}
|
||||
|
||||
pre .keyword,
|
||||
pre .id,
|
||||
pre .phpdoc,
|
||||
pre .title,
|
||||
pre .built_in,
|
||||
pre .aggregate,
|
||||
pre .css .tag,
|
||||
pre .javadoctag,
|
||||
pre .phpdoc,
|
||||
pre .yardoctag,
|
||||
pre .smalltalk .class,
|
||||
pre .winutils,
|
||||
pre .bash .variable,
|
||||
pre .apache .tag,
|
||||
pre .go .typename,
|
||||
pre .tex .command,
|
||||
pre .markdown .strong,
|
||||
pre .request,
|
||||
pre .status {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
pre .markdown .emphasis {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
pre .nginx .built_in {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
pre .coffeescript .javascript,
|
||||
pre .javascript .xml,
|
||||
pre .tex .formula,
|
||||
pre .xml .javascript,
|
||||
pre .xml .vbscript,
|
||||
pre .xml .css,
|
||||
pre .xml .cdata {
|
||||
opacity: 0.5;
|
||||
}
|
||||
+366
-124
@@ -68,7 +68,6 @@ h1 span.divider, h2 span.divider, h3 span.divider, h4 span.divider, h5 span.divi
|
||||
}
|
||||
|
||||
h1 {
|
||||
color: #547f00;
|
||||
color: black;
|
||||
font-size: 1.5em;
|
||||
line-height: 1.3em;
|
||||
@@ -78,7 +77,6 @@ h1 {
|
||||
}
|
||||
|
||||
h2 {
|
||||
color: #89bf04;
|
||||
color: black;
|
||||
font-size: 1.3em;
|
||||
padding: 10px 0 10px 0;
|
||||
@@ -104,14 +102,14 @@ h3 {
|
||||
padding: 10px 0 10px 0;
|
||||
}
|
||||
|
||||
div.heading_with_menu {
|
||||
.heading_with_menu {
|
||||
float: none;
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
display: block;
|
||||
}
|
||||
|
||||
div.heading_with_menu h1, div.heading_with_menu h2, div.heading_with_menu h3, div.heading_with_menu h4, div.heading_with_menu h5, div.heading_with_menu h6 {
|
||||
.heading_with_menu h1, .heading_with_menu h2, .heading_with_menu h3, .heading_with_menu h4, .heading_with_menu h5, .heading_with_menu h6 {
|
||||
display: block;
|
||||
clear: none;
|
||||
float: left;
|
||||
@@ -122,7 +120,7 @@ div.heading_with_menu h1, div.heading_with_menu h2, div.heading_with_menu h3, di
|
||||
width: 60%;
|
||||
}
|
||||
|
||||
div.heading_with_menu ul {
|
||||
.heading_with_menu ul {
|
||||
display: block;
|
||||
clear: none;
|
||||
float: right;
|
||||
@@ -133,19 +131,25 @@ div.heading_with_menu ul {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
input.parameter {
|
||||
width: 300px;
|
||||
border: 1px solid #aaa;
|
||||
}
|
||||
|
||||
.body-textarea {
|
||||
width: 300px;
|
||||
height: 100px;
|
||||
border: 1px solid #aaa;
|
||||
}
|
||||
|
||||
p {
|
||||
line-height: 1.4em;
|
||||
padding: 0 0 10px 0;
|
||||
padding: 0 0 10px;
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
ol {
|
||||
margin: 0px 0 10px 0;
|
||||
margin: 0px 0 10px;
|
||||
padding: 0 0 0 18px;
|
||||
list-style-type: decimal;
|
||||
}
|
||||
@@ -167,8 +171,7 @@ ol li {
|
||||
.markdown pre {
|
||||
font-family: "Anonymous Pro", "Menlo", "Consolas", "Bitstream Vera Sans Mono", "Courier New", monospace;
|
||||
background-color: #fcf6db;
|
||||
border: 1px solid black;
|
||||
border-color: #e5e0c6;
|
||||
border: 1px solid #e5e0c6;
|
||||
padding: 10px;
|
||||
margin: 0 0 10px 0;
|
||||
}
|
||||
@@ -186,7 +189,7 @@ ol li {
|
||||
|
||||
.markdown ol, .markdown ul {
|
||||
font-family: "Droid Sans", sans-serif;
|
||||
margin: 5px 0 10px 0;
|
||||
margin: 5px 0 10px;
|
||||
padding: 0 0 0 18px;
|
||||
list-style-type: disc;
|
||||
}
|
||||
@@ -219,10 +222,9 @@ a {
|
||||
color: #547f00;
|
||||
}
|
||||
|
||||
strong {
|
||||
b, strong {
|
||||
font-family: "Droid Sans", sans-serif;
|
||||
font-weight: bold;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.code {
|
||||
@@ -232,10 +234,8 @@ strong {
|
||||
pre {
|
||||
font-family: "Anonymous Pro", "Menlo", "Consolas", "Bitstream Vera Sans Mono", "Courier New", monospace;
|
||||
background-color: #fcf6db;
|
||||
border: 1px solid black;
|
||||
border-color: #e5e0c6;
|
||||
border: 1px solid #e5e0c6;
|
||||
padding: 10px;
|
||||
/* white-space: pre-line */
|
||||
}
|
||||
|
||||
pre code {
|
||||
@@ -279,8 +279,7 @@ table tbody tr.offset {
|
||||
|
||||
form.form_box {
|
||||
background-color: #ebf3f9;
|
||||
border: 1px solid black;
|
||||
border-color: #c3d9ec;
|
||||
border: 1px solid #c3d9ec;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
@@ -295,7 +294,7 @@ form.form_box input[type=submit] {
|
||||
|
||||
form.form_box p {
|
||||
font-size: 0.9em;
|
||||
padding: 0 0 15px 0;
|
||||
padding: 0 0 15px;
|
||||
color: #7e7b6d;
|
||||
}
|
||||
|
||||
@@ -322,7 +321,7 @@ form.formtastic fieldset.inputs ol li label {
|
||||
display: block;
|
||||
clear: both;
|
||||
width: auto;
|
||||
padding: 0 0 3px 0;
|
||||
padding: 0 0 3px;
|
||||
color: #666666;
|
||||
}
|
||||
|
||||
@@ -499,7 +498,7 @@ body ul#resources li.resource div.heading {
|
||||
|
||||
body ul#resources li.resource div.heading h2 {
|
||||
color: #999999;
|
||||
padding-left: 0px;
|
||||
padding-left: 0;
|
||||
display: block;
|
||||
clear: none;
|
||||
float: left;
|
||||
@@ -516,10 +515,7 @@ body ul#resources li.resource div.heading h2 a:hover {
|
||||
}
|
||||
|
||||
body ul#resources li.resource div.heading ul.options {
|
||||
float: none;
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
display: block;
|
||||
clear: none;
|
||||
@@ -572,8 +568,8 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
display: block;
|
||||
margin: 0 0 10px 0;
|
||||
padding: 0 0 0 0px;
|
||||
margin: 0 0 10px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading {
|
||||
@@ -581,11 +577,10 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
display: block;
|
||||
margin: 0 0 0 0;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
background-color: #e7f0f7;
|
||||
border: 1px solid black;
|
||||
border-color: #c3d9ec;
|
||||
border: 1px solid #c3d9ec;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading h3 {
|
||||
@@ -636,10 +631,7 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading ul.options {
|
||||
float: none;
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
display: block;
|
||||
clear: none;
|
||||
@@ -681,8 +673,7 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content {
|
||||
background-color: #ebf3f9;
|
||||
border: 1px solid black;
|
||||
border-color: #c3d9ec;
|
||||
border: 1px solid #c3d9ec;
|
||||
border-top: none;
|
||||
padding: 10px;
|
||||
-moz-border-radius-bottomleft: 6px;
|
||||
@@ -697,14 +688,14 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
-ms-border-bottom-right-radius: 6px;
|
||||
-khtml-border-bottom-right-radius: 6px;
|
||||
border-bottom-right-radius: 6px;
|
||||
margin: 0 0 20px 0;
|
||||
margin: 0 0 20px;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content h4 {
|
||||
color: #0f6ab4;
|
||||
font-size: 1.1em;
|
||||
margin: 0;
|
||||
padding: 15px 0 5px 0px;
|
||||
padding: 15px 0 5px;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content form input[type='text'].error {
|
||||
@@ -727,7 +718,6 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content div.sandbox_header img {
|
||||
display: block;
|
||||
display: block;
|
||||
clear: none;
|
||||
float: right;
|
||||
@@ -740,12 +730,6 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
font-size: 0.9em;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content div.response div.block {
|
||||
background-color: #fcf6db;
|
||||
border: 1px solid black;
|
||||
border-color: #e5e0c6;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content div.response div.block pre {
|
||||
font-family: "Anonymous Pro", "Menlo", "Consolas", "Bitstream Vera Sans Mono", "Courier New", monospace;
|
||||
padding: 10px;
|
||||
@@ -759,8 +743,8 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
display: block;
|
||||
margin: 0 0 10px 0;
|
||||
padding: 0 0 0 0px;
|
||||
margin: 0 0 10px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading {
|
||||
@@ -768,11 +752,10 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
display: block;
|
||||
margin: 0 0 0 0;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
background-color: #e7f6ec;
|
||||
border: 1px solid black;
|
||||
border-color: #c3e8d1;
|
||||
border: 1px solid #c3e8d1;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading h3 {
|
||||
@@ -823,10 +806,7 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading ul.options {
|
||||
float: none;
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
display: block;
|
||||
clear: none;
|
||||
@@ -868,8 +848,7 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content {
|
||||
background-color: #ebf7f0;
|
||||
border: 1px solid black;
|
||||
border-color: #c3e8d1;
|
||||
border: 1px solid #c3e8d1;
|
||||
border-top: none;
|
||||
padding: 10px;
|
||||
-moz-border-radius-bottomleft: 6px;
|
||||
@@ -884,14 +863,14 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
-ms-border-bottom-right-radius: 6px;
|
||||
-khtml-border-bottom-right-radius: 6px;
|
||||
border-bottom-right-radius: 6px;
|
||||
margin: 0 0 20px 0;
|
||||
margin: 0 0 20px;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content h4 {
|
||||
color: #10a54a;
|
||||
font-size: 1.1em;
|
||||
margin: 0;
|
||||
padding: 15px 0 5px 0px;
|
||||
padding: 15px 0 5px;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content form input[type='text'].error {
|
||||
@@ -914,7 +893,6 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content div.sandbox_header img {
|
||||
display: block;
|
||||
display: block;
|
||||
clear: none;
|
||||
float: right;
|
||||
@@ -927,12 +905,6 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
font-size: 0.9em;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content div.response div.block {
|
||||
background-color: #fcf6db;
|
||||
border: 1px solid black;
|
||||
border-color: #e5e0c6;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content div.response div.block pre {
|
||||
font-family: "Anonymous Pro", "Menlo", "Consolas", "Bitstream Vera Sans Mono", "Courier New", monospace;
|
||||
padding: 10px;
|
||||
@@ -946,8 +918,8 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
display: block;
|
||||
margin: 0 0 10px 0;
|
||||
padding: 0 0 0 0px;
|
||||
margin: 0 0 10px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading {
|
||||
@@ -955,11 +927,10 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
display: block;
|
||||
margin: 0 0 0 0;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
background-color: #f9f2e9;
|
||||
border: 1px solid black;
|
||||
border-color: #f0e0ca;
|
||||
border: 1px solid #f0e0ca;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading h3 {
|
||||
@@ -987,7 +958,7 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
width: 50px;
|
||||
font-size: 0.7em;
|
||||
text-align: center;
|
||||
padding: 7px 0 4px 0;
|
||||
padding: 7px 0 4px;
|
||||
-moz-border-radius: 2px;
|
||||
-webkit-border-radius: 2px;
|
||||
-o-border-radius: 2px;
|
||||
@@ -1010,10 +981,7 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading ul.options {
|
||||
float: none;
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
display: block;
|
||||
clear: none;
|
||||
@@ -1055,8 +1023,7 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content {
|
||||
background-color: #faf5ee;
|
||||
border: 1px solid black;
|
||||
border-color: #f0e0ca;
|
||||
border: 1px solid #f0e0ca;
|
||||
border-top: none;
|
||||
padding: 10px;
|
||||
-moz-border-radius-bottomleft: 6px;
|
||||
@@ -1071,14 +1038,14 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
-ms-border-bottom-right-radius: 6px;
|
||||
-khtml-border-bottom-right-radius: 6px;
|
||||
border-bottom-right-radius: 6px;
|
||||
margin: 0 0 20px 0;
|
||||
margin: 0 0 20px;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content h4 {
|
||||
color: #c5862b;
|
||||
font-size: 1.1em;
|
||||
margin: 0;
|
||||
padding: 15px 0 5px 0px;
|
||||
padding: 15px 0 5px;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content form input[type='text'].error {
|
||||
@@ -1101,7 +1068,6 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content div.sandbox_header img {
|
||||
display: block;
|
||||
display: block;
|
||||
clear: none;
|
||||
float: right;
|
||||
@@ -1114,12 +1080,6 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
font-size: 0.9em;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content div.response div.block {
|
||||
background-color: #fcf6db;
|
||||
border: 1px solid black;
|
||||
border-color: #e5e0c6;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content div.response div.block pre {
|
||||
font-family: "Anonymous Pro", "Menlo", "Consolas", "Bitstream Vera Sans Mono", "Courier New", monospace;
|
||||
padding: 10px;
|
||||
@@ -1128,14 +1088,13 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch {
|
||||
float: none;
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
display: block;
|
||||
margin: 0 0 10px 0;
|
||||
padding: 0 0 0 0px;
|
||||
margin: 0 0 10px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading {
|
||||
@@ -1143,11 +1102,10 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
display: block;
|
||||
margin: 0 0 0 0;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
background-color: #faebf2;
|
||||
border: 1px solid black;
|
||||
border-color: #f0cecb;
|
||||
background-color: #FCE9E3;
|
||||
border: 1px solid #F5D5C3;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading h3 {
|
||||
@@ -1168,7 +1126,7 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading h3 span.http_method a {
|
||||
text-transform: uppercase;
|
||||
background-color: #993300;
|
||||
background-color: #D38042;
|
||||
text-decoration: none;
|
||||
color: white;
|
||||
display: inline-block;
|
||||
@@ -1198,10 +1156,7 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading ul.options {
|
||||
float: none;
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
display: block;
|
||||
clear: none;
|
||||
@@ -1228,12 +1183,12 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading ul.options li {
|
||||
border-right-color: #f0cecb;
|
||||
color: #993300;
|
||||
color: #D38042;
|
||||
font-size: 0.9em;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading ul.options li a {
|
||||
color: #993300;
|
||||
color: #D38042;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
@@ -1243,8 +1198,7 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content {
|
||||
background-color: #faf0ef;
|
||||
border: 1px solid black;
|
||||
border-color: #f0cecb;
|
||||
border: 1px solid #f0cecb;
|
||||
border-top: none;
|
||||
padding: 10px;
|
||||
-moz-border-radius-bottomleft: 6px;
|
||||
@@ -1259,19 +1213,19 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
-ms-border-bottom-right-radius: 6px;
|
||||
-khtml-border-bottom-right-radius: 6px;
|
||||
border-bottom-right-radius: 6px;
|
||||
margin: 0 0 20px 0;
|
||||
margin: 0 0 20px;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content h4 {
|
||||
color: #993300;
|
||||
color: #D38042;
|
||||
font-size: 1.1em;
|
||||
margin: 0;
|
||||
padding: 15px 0 5px 0px;
|
||||
padding: 15px 0 5px;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content form input[type='text'].error {
|
||||
outline: 2px solid black;
|
||||
outline-color: #cc0000;
|
||||
outline-color: #F5D5C3;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content div.sandbox_header {
|
||||
@@ -1289,7 +1243,6 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content div.sandbox_header img {
|
||||
display: block;
|
||||
display: block;
|
||||
clear: none;
|
||||
float: right;
|
||||
@@ -1302,13 +1255,194 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
font-size: 0.9em;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content div.response div.block {
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content div.response div.block pre {
|
||||
font-family: "Anonymous Pro", "Menlo", "Consolas", "Bitstream Vera Sans Mono", "Courier New", monospace;
|
||||
padding: 10px;
|
||||
font-size: 0.9em;
|
||||
max-height: 400px;
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head {
|
||||
float: none;
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
display: block;
|
||||
margin: 0 0 10px 0;
|
||||
padding: 0 0 0 0px;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading {
|
||||
float: none;
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
display: block;
|
||||
margin: 0 0 0 0;
|
||||
padding: 0;
|
||||
background-color: #fcffcd;
|
||||
border: 1px solid black;
|
||||
border-color: #ffd20f;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading h3 {
|
||||
display: block;
|
||||
clear: none;
|
||||
float: left;
|
||||
width: auto;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
line-height: 1.1em;
|
||||
color: black;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading h3 span {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading h3 span.http_method a {
|
||||
text-transform: uppercase;
|
||||
background-color: #ffd20f;
|
||||
text-decoration: none;
|
||||
color: white;
|
||||
display: inline-block;
|
||||
width: 50px;
|
||||
font-size: 0.7em;
|
||||
text-align: center;
|
||||
padding: 7px 0 4px 0;
|
||||
-moz-border-radius: 2px;
|
||||
-webkit-border-radius: 2px;
|
||||
-o-border-radius: 2px;
|
||||
-ms-border-radius: 2px;
|
||||
-khtml-border-radius: 2px;
|
||||
border-radius: 2px;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading h3 span.path {
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading h3 span.path a {
|
||||
color: black;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading h3 span.path a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options {
|
||||
float: none;
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
display: block;
|
||||
clear: none;
|
||||
float: right;
|
||||
margin: 6px 10px 0 0;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li {
|
||||
float: left;
|
||||
clear: none;
|
||||
margin: 0;
|
||||
padding: 2px 10px;
|
||||
border-right: 1px solid #dddddd;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li:first-child, body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li.first {
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li:last-child, body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li.last {
|
||||
padding-right: 0;
|
||||
border-right: none;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li {
|
||||
border-right-color: #ffd20f;
|
||||
color: #ffd20f;
|
||||
font-size: 0.9em;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li a {
|
||||
color: #ffd20f;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li a:hover, body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li a:active, body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li a.active {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content {
|
||||
background-color: #fcffcd;
|
||||
border: 1px solid black;
|
||||
border-color: #ffd20f;
|
||||
border-top: none;
|
||||
padding: 10px;
|
||||
-moz-border-radius-bottomleft: 6px;
|
||||
-webkit-border-bottom-left-radius: 6px;
|
||||
-o-border-bottom-left-radius: 6px;
|
||||
-ms-border-bottom-left-radius: 6px;
|
||||
-khtml-border-bottom-left-radius: 6px;
|
||||
border-bottom-left-radius: 6px;
|
||||
-moz-border-radius-bottomright: 6px;
|
||||
-webkit-border-bottom-right-radius: 6px;
|
||||
-o-border-bottom-right-radius: 6px;
|
||||
-ms-border-bottom-right-radius: 6px;
|
||||
-khtml-border-bottom-right-radius: 6px;
|
||||
border-bottom-right-radius: 6px;
|
||||
margin: 0 0 20px 0;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content h4 {
|
||||
color: #ffd20f;
|
||||
font-size: 1.1em;
|
||||
margin: 0;
|
||||
padding: 15px 0 5px 0px;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content form input[type='text'].error {
|
||||
outline: 2px solid black;
|
||||
outline-color: #cc0000;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content div.sandbox_header {
|
||||
float: none;
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
display: block;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content div.sandbox_header input.submit {
|
||||
display: block;
|
||||
clear: none;
|
||||
float: left;
|
||||
padding: 6px 8px;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content div.sandbox_header img {
|
||||
display: block;
|
||||
display: block;
|
||||
clear: none;
|
||||
float: right;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content div.sandbox_header a {
|
||||
padding: 4px 0 0 10px;
|
||||
color: #6fc992;
|
||||
display: inline-block;
|
||||
font-size: 0.9em;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content div.response div.block {
|
||||
background-color: #fcf6db;
|
||||
border: 1px solid black;
|
||||
border-color: #e5e0c6;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content div.response div.block pre {
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content div.response div.block pre {
|
||||
font-family: "Anonymous Pro", "Menlo", "Consolas", "Bitstream Vera Sans Mono", "Courier New", monospace;
|
||||
padding: 10px;
|
||||
font-size: 0.9em;
|
||||
@@ -1321,8 +1455,8 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
display: block;
|
||||
margin: 0 0 10px 0;
|
||||
padding: 0 0 0 0px;
|
||||
margin: 0 0 10px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading {
|
||||
@@ -1330,11 +1464,10 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
display: block;
|
||||
margin: 0 0 0 0;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
background-color: #f5e8e8;
|
||||
border: 1px solid black;
|
||||
border-color: #e8c6c7;
|
||||
border: 1px solid #e8c6c7;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading h3 {
|
||||
@@ -1385,10 +1518,7 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading ul.options {
|
||||
float: none;
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
display: block;
|
||||
clear: none;
|
||||
@@ -1430,8 +1560,7 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content {
|
||||
background-color: #f7eded;
|
||||
border: 1px solid black;
|
||||
border-color: #e8c6c7;
|
||||
border: 1px solid #e8c6c7;
|
||||
border-top: none;
|
||||
padding: 10px;
|
||||
-moz-border-radius-bottomleft: 6px;
|
||||
@@ -1453,7 +1582,7 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
color: #a41e22;
|
||||
font-size: 1.1em;
|
||||
margin: 0;
|
||||
padding: 15px 0 5px 0px;
|
||||
padding: 15px 0 5px;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content form input[type='text'].error {
|
||||
@@ -1476,7 +1605,6 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content div.sandbox_header img {
|
||||
display: block;
|
||||
display: block;
|
||||
clear: none;
|
||||
float: right;
|
||||
@@ -1489,12 +1617,6 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
font-size: 0.9em;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content div.response div.block {
|
||||
background-color: #fcf6db;
|
||||
border: 1px solid black;
|
||||
border-color: #e5e0c6;
|
||||
}
|
||||
|
||||
body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content div.response div.block pre {
|
||||
font-family: "Anonymous Pro", "Menlo", "Consolas", "Bitstream Vera Sans Mono", "Courier New", monospace;
|
||||
padding: 10px;
|
||||
@@ -1509,9 +1631,129 @@ body ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operatio
|
||||
font-size: 1em;
|
||||
line-height: 1.5em;
|
||||
}
|
||||
.model-signature span {
|
||||
|
||||
.model-signature .description div {
|
||||
font-size: 0.9em;
|
||||
line-height: 1.5em;
|
||||
margin-left: 1em;
|
||||
}
|
||||
.model-signature span:nth-child(odd) { color:#333; }
|
||||
.model-signature span:nth-child(even) { color:#C5862B; }
|
||||
|
||||
.model-signature .description .strong {
|
||||
font-weight: bold;
|
||||
color: #000;
|
||||
font-size: .9em;
|
||||
}
|
||||
|
||||
.model-signature .description .stronger {
|
||||
font-weight: bold;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
.model-signature .signature-nav a {
|
||||
text-decoration: none;
|
||||
color: #AAA;
|
||||
}
|
||||
|
||||
.model-signature pre {
|
||||
font-size: .85em;
|
||||
line-height: 1.2em;
|
||||
overflow: auto;
|
||||
max-height: 200px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.model-signature pre:hover {
|
||||
background-color: #ffffdd;
|
||||
}
|
||||
|
||||
.model-signature .snippet small {
|
||||
font-size: 0.75em;
|
||||
}
|
||||
|
||||
.model-signature .signature-container {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.model-signature .signature-nav a:hover {
|
||||
text-decoration: underline;
|
||||
color: black;
|
||||
}
|
||||
|
||||
.model-signature .signature-nav .selected {
|
||||
color: black;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.model-signature ul.signature-nav {
|
||||
display: block;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.model-signature ul.signature-nav li {
|
||||
float: left;
|
||||
margin: 0 5px 5px 0;
|
||||
padding: 2px 5px 2px 0;
|
||||
border-right: 1px solid #ddd;
|
||||
}
|
||||
|
||||
.model-signature ul.signature-nav li:last-child {
|
||||
padding-right: 0;
|
||||
border-right: none;
|
||||
}
|
||||
|
||||
.model-signature .propName {
|
||||
font-weight: bold;
|
||||
}
|
||||
.model-signature .propType {
|
||||
color: #5555aa;
|
||||
}
|
||||
.model-signature .propOptKey {
|
||||
font-style: italic;
|
||||
}
|
||||
.model-signature .propOpt {
|
||||
color: #555;
|
||||
}
|
||||
|
||||
pre code {
|
||||
background: none;
|
||||
}
|
||||
|
||||
.content pre {
|
||||
font-size: 12px;
|
||||
margin-top: 5px;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.content > .content-type > div > label {
|
||||
clear: both;
|
||||
display: block;
|
||||
color: #0F6AB4;
|
||||
font-size: 1.1em;
|
||||
margin: 0;
|
||||
padding: 15px 0 5px;
|
||||
}
|
||||
|
||||
.swagger-ui-wrap {
|
||||
max-width: 960px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
.icon-btn {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
#message-bar {
|
||||
min-height: 30px;
|
||||
text-align: center;
|
||||
padding-top: 10px;
|
||||
}
|
||||
|
||||
.message-success {
|
||||
color: #89BF04;
|
||||
}
|
||||
|
||||
.message-fail {
|
||||
color: #cc0000;
|
||||
}
|
||||
@@ -2,7 +2,8 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>Swagger UI</title>
|
||||
<link href='http://fonts.googleapis.com/css?family=Droid+Sans:400,700' rel='stylesheet' type='text/css'/>
|
||||
<link href='//fonts.googleapis.com/css?family=Droid+Sans:400,700' rel='stylesheet' type='text/css'/>
|
||||
<link href='css/hightlight.default.css' media='screen' rel='stylesheet' type='text/css'/>
|
||||
<link href='css/screen.css' media='screen' rel='stylesheet' type='text/css'/>
|
||||
<script src='lib/jquery-1.8.0.min.js' type='text/javascript'></script>
|
||||
<script src='lib/jquery.slideto.min.js' type='text/javascript'></script>
|
||||
@@ -13,37 +14,12 @@
|
||||
<script src='lib/backbone-min.js' type='text/javascript'></script>
|
||||
<script src='lib/swagger.js' type='text/javascript'></script>
|
||||
<script src='swagger-ui.js' type='text/javascript'></script>
|
||||
|
||||
<style type="text/css">
|
||||
.swagger-ui-wrap {
|
||||
max-width: 960px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
.icon-btn {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
#message-bar {
|
||||
min-height: 30px;
|
||||
text-align: center;
|
||||
padding-top: 10px;
|
||||
}
|
||||
|
||||
.message-success {
|
||||
color: #89BF04;
|
||||
}
|
||||
|
||||
.message-fail {
|
||||
color: #cc0000;
|
||||
}
|
||||
</style>
|
||||
<script src='lib/highlight.7.3.pack.js' type='text/javascript'></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(function () {
|
||||
window.swaggerUi = new SwaggerUi({
|
||||
discoveryUrl:"http://petstore.swagger.wordnik.com/api/resources.json",
|
||||
$(function () {
|
||||
window.swaggerUi = new SwaggerUi({
|
||||
discoveryUrl:"http://petstore.swagger.wordnik.com/api/api-docs.json",
|
||||
apiKey:"special-key",
|
||||
dom_id:"swagger-ui-container",
|
||||
supportHeaderParams: false,
|
||||
@@ -54,6 +30,7 @@
|
||||
console.log(swaggerApi);
|
||||
console.log(swaggerUi);
|
||||
}
|
||||
$('pre code').each(function(i, e) {hljs.highlightBlock(e)});
|
||||
},
|
||||
onFailure: function(data) {
|
||||
if(console) {
|
||||
|
||||
@@ -115,7 +115,7 @@ var Docs = {
|
||||
},
|
||||
|
||||
toggleEndpointListForResource: function(resource) {
|
||||
var elem = $('li[id^=resource_' + Docs.escapeResourceName(resource) + '] ul.endpoints');
|
||||
var elem = $('li#resource_' + Docs.escapeResourceName(resource) + ' ul.endpoints');
|
||||
if (elem.is(':visible')) {
|
||||
Docs.collapseEndpointListForResource(resource);
|
||||
} else {
|
||||
@@ -125,24 +125,37 @@ var Docs = {
|
||||
|
||||
// Expand resource
|
||||
expandEndpointListForResource: function(resource) {
|
||||
$('[id^=resource_' + resource + ']').addClass('active');
|
||||
var resource = Docs.escapeResourceName(resource);
|
||||
if (resource == '') {
|
||||
$('.resource ul.endpoints').slideDown();
|
||||
return;
|
||||
}
|
||||
|
||||
$('li#resource_' + resource).addClass('active');
|
||||
|
||||
var elem = $('li[id^=resource_' + Docs.escapeResourceName(resource) + '] ul.endpoints');
|
||||
var elem = $('li#resource_' + resource + ' ul.endpoints');
|
||||
elem.slideDown();
|
||||
},
|
||||
|
||||
// Collapse resource and mark as explicitly closed
|
||||
collapseEndpointListForResource: function(resource) {
|
||||
$('[id^=resource_' + resource + ']').removeClass('active');
|
||||
var resource = Docs.escapeResourceName(resource);
|
||||
$('li#resource_' + resource).removeClass('active');
|
||||
|
||||
var elem = $('li[id^=resource_' + Docs.escapeResourceName(resource) + '] ul.endpoints');
|
||||
var elem = $('li#resource_' + resource + ' ul.endpoints');
|
||||
elem.slideUp();
|
||||
},
|
||||
|
||||
expandOperationsForResource: function(resource) {
|
||||
// Make sure the resource container is open..
|
||||
Docs.expandEndpointListForResource(resource);
|
||||
$('li[id^=resource_' + Docs.escapeResourceName(resource) + '] li.operation div.content').each(function() {
|
||||
|
||||
if (resource == '') {
|
||||
$('.resource ul.endpoints li.operation div.content').slideDown();
|
||||
return;
|
||||
}
|
||||
|
||||
$('li#resource_' + Docs.escapeResourceName(resource) + ' li.operation div.content').each(function() {
|
||||
Docs.expandOperation($(this));
|
||||
});
|
||||
},
|
||||
@@ -150,13 +163,14 @@ var Docs = {
|
||||
collapseOperationsForResource: function(resource) {
|
||||
// Make sure the resource container is open..
|
||||
Docs.expandEndpointListForResource(resource);
|
||||
$('li[id^=resource_' + Docs.escapeResourceName(resource) + '] li.operation div.content').each(function() {
|
||||
|
||||
$('li#resource_' + Docs.escapeResourceName(resource) + ' li.operation div.content').each(function() {
|
||||
Docs.collapseOperation($(this));
|
||||
});
|
||||
},
|
||||
|
||||
escapeResourceName: function(resource) {
|
||||
return resource.replace(/[!"#$%&'()*+,.\/:;<=>?@\[\\\]\^`{|}~]/g, "\\$&")
|
||||
return resource.replace(/[!"#$%&'()*+,.\/:;<=>?@\[\\\]\^`{|}~]/g, "\\$&");
|
||||
},
|
||||
|
||||
expandOperation: function(elem) {
|
||||
@@ -167,4 +181,4 @@ var Docs = {
|
||||
elem.slideUp();
|
||||
}
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
<label for="contentType"></label>
|
||||
<select name="contentType">
|
||||
{{#if produces}}
|
||||
{{#each produces}}
|
||||
<option value="{{{this}}}">{{{this}}}</option>
|
||||
{{/each}}
|
||||
{{else}}
|
||||
<option value="application/json">application/json</option>
|
||||
{{/if}}
|
||||
</select>
|
||||
@@ -6,6 +6,9 @@
|
||||
<div class="footer">
|
||||
<br>
|
||||
<br>
|
||||
<h4 style="color: #999">[<span style="font-variant: small-caps">base url</span>: {{basePath}}]</h4>
|
||||
<h4 style="color: #999">[ <span style="font-variant: small-caps">base url</span>: {{basePath}}
|
||||
{{#if apiVersion}}
|
||||
, <span style="font-variant: small-caps">api version</span>: {{apiVersion}}
|
||||
{{/if}}]</h4>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,53 +1,54 @@
|
||||
|
||||
<ul class='operations' >
|
||||
<li class='{{httpMethod}} operation' id='{{resourceName}}_{{nickname}}_{{httpMethod}}'>
|
||||
<li class='{{httpMethod}} operation' id='{{resourceName}}_{{nickname}}_{{httpMethod}}_{{number}}'>
|
||||
<div class='heading'>
|
||||
<h3>
|
||||
<span class='http_method'>
|
||||
<a href='#!/{{resourceName}}/{{nickname}}_{{httpMethod}}' class="toggleOperation">{{httpMethod}}</a>
|
||||
<a href='#!/{{resourceName}}/{{nickname}}_{{httpMethod}}_{{number}}' class="toggleOperation">{{httpMethod}}</a>
|
||||
</span>
|
||||
<span class='path'>
|
||||
<a href='#!/{{resourceName}}/{{nickname}}_{{httpMethod}}' class="toggleOperation">{{path}}</a>
|
||||
<a href='#!/{{resourceName}}/{{nickname}}_{{httpMethod}}_{{number}}' class="toggleOperation">{{path}}</a>
|
||||
</span>
|
||||
</h3>
|
||||
<ul class='options'>
|
||||
<li>
|
||||
<a href='#!/{{resourceName}}/{{nickname}}_{{httpMethod}}' class="toggleOperation">{{{summary}}}</a>
|
||||
<a href='#!/{{resourceName}}/{{nickname}}_{{httpMethod}}_{{number}}' class="toggleOperation">{{{summary}}}</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class='content' id='{{resourceName}}_{{nickname}}_{{httpMethod}}_content' style='display:none'>
|
||||
<div class='content' id='{{resourceName}}_{{nickname}}_{{httpMethod}}_{{number}}_content' style='display:none'>
|
||||
{{#if notes}}
|
||||
<h4>Implementation Notes</h4>
|
||||
<p>{{{notes}}}</p>
|
||||
{{/if}}
|
||||
{{#if responseClass}}
|
||||
<h4>Response Class</h4>
|
||||
{{#if responseClassSignature}}
|
||||
<p><span class="model-signature">{{{responseClassSignature}}}</span></p>
|
||||
{{else}}
|
||||
<p>{{{responseClass}}}</p>
|
||||
{{/if}}
|
||||
<p><span class="model-signature" /></p>
|
||||
<br/>
|
||||
<div class="content-type" />
|
||||
{{/if}}
|
||||
<form accept-charset='UTF-8' class='sandbox'>
|
||||
<div style='margin:0;padding:0;display:inline'></div>
|
||||
{{#if parameters}}
|
||||
<h4>Parameters</h4>
|
||||
<table class='fullwidth'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="width: 100px; max-width: 100px" >Parameter</th>
|
||||
<th style="width: 100px; max-width: 100px">Parameter</th>
|
||||
<th style="width: 310px; max-width: 310px">Value</th>
|
||||
<th style="width: 200px; max-width: 200px">Description</th>
|
||||
<th style="width: 320px; max-width: 330px">Data Type</th>
|
||||
<th style="width: 100px; max-width: 100px">Parameter Type</th>
|
||||
<th style="width: 220px; max-width: 230px">Data Type</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody class="operation-params">
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
{{/if}}
|
||||
{{#if errorResponses}}
|
||||
<div style='margin:0;padding:0;display:inline'></div>
|
||||
<h4>Status Codes</h4>
|
||||
<h4>Error Status Codes</h4>
|
||||
<table class='fullwidth'>
|
||||
<thead>
|
||||
<tr>
|
||||
|
||||
@@ -8,20 +8,23 @@
|
||||
{{#if defaultValue}}
|
||||
<textarea class='body-textarea' name='{{name}}'>{{defaultValue}}</textarea>
|
||||
{{else}}
|
||||
<textarea class='body-textarea' name='{{name}}'></textarea>
|
||||
<textarea class='body-textarea' name='{{name}}'></textarea>
|
||||
<br />
|
||||
<div class="content-type" />
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
{{else}}
|
||||
{{#if defaultValue}}
|
||||
<input minlength='0' name='{{name}}' placeholder='' type='text' value='{{defaultValue}}'/>
|
||||
<input class='parameter' minlength='0' name='{{name}}' placeholder='' type='text' value='{{defaultValue}}'/>
|
||||
{{else}}
|
||||
<input minlength='0' name='{{name}}' placeholder='' type='text' value=''/>
|
||||
<input class='parameter' minlength='0' name='{{name}}' placeholder='' type='text' value=''/>
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
|
||||
</td>
|
||||
<td>{{{description}}}</td>
|
||||
<td>{{{paramType}}}</td>
|
||||
<td>
|
||||
<span class="model-signature">{{{signature}}}</span>
|
||||
<span class="model-signature"></span>
|
||||
</td>
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<td class='code'>{{name}}</td>
|
||||
<td>
|
||||
<select name='{{name}}'>
|
||||
<select class='parameter' name='{{name}}'>
|
||||
{{#if required}}
|
||||
{{else}}
|
||||
{{#if defaultValue}}
|
||||
@@ -18,4 +18,5 @@
|
||||
</select>
|
||||
</td>
|
||||
<td>{{{description}}}</td>
|
||||
<td><span class="model-signature">{{{signature}}}</span></td>
|
||||
<td>{{{paramType}}}</td>
|
||||
<td><span class="model-signature"></span></td>
|
||||
|
||||
@@ -3,8 +3,13 @@
|
||||
{{#if isBody}}
|
||||
<textarea class='body-textarea' readonly='readonly' name='{{name}}'>{{defaultValue}}</textarea>
|
||||
{{else}}
|
||||
{{defaultValue}}
|
||||
{{#if defaultValue}}
|
||||
{{defaultValue}}
|
||||
{{else}}
|
||||
(empty)
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
</td>
|
||||
<td>{{{description}}}</td>
|
||||
<td><span class="model-signature">{{{signature}}}</span></td>
|
||||
<td>{{{paramType}}}</td>
|
||||
<td><span class="model-signature"></span></td>
|
||||
|
||||
@@ -3,8 +3,13 @@
|
||||
{{#if isBody}}
|
||||
<textarea class='body-textarea' readonly='readonly' placeholder='(required)' name='{{name}}'>{{defaultValue}}</textarea>
|
||||
{{else}}
|
||||
{{defaultValue}}
|
||||
{{#if defaultValue}}
|
||||
{{defaultValue}}
|
||||
{{else}}
|
||||
(empty)
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
</td>
|
||||
<td>{{{description}}}</td>
|
||||
<td><span class="model-signature">{{{signature}}}</span></td>
|
||||
<td>{{{paramType}}}</td>
|
||||
<td><span class="model-signature"></span></td>
|
||||
|
||||
@@ -7,22 +7,25 @@
|
||||
{{#if defaultValue}}
|
||||
<textarea class='body-textarea' placeholder='(required)' name='{{name}}'>{{defaultValue}}</textarea>
|
||||
{{else}}
|
||||
<textarea class='body-textarea' placeholder='(required)' name='{{name}}'></textarea>
|
||||
<textarea class='body-textarea' placeholder='(required)' name='{{name}}'></textarea>
|
||||
<br />
|
||||
<div class="content-type" />
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
{{else}}
|
||||
{{#if isFile}}
|
||||
<input class='required' type='file' name='{{name}}'/>
|
||||
<input class='parameter' class='required' type='file' name='{{name}}'/>
|
||||
{{else}}
|
||||
{{#if defaultValue}}
|
||||
<input class='required' minlength='1' name='{{name}}' placeholder='(required)' type='text' value='{{defaultValue}}'/>
|
||||
<input class='parameter required' minlength='1' name='{{name}}' placeholder='(required)' type='text' value='{{defaultValue}}'/>
|
||||
{{else}}
|
||||
<input class='required' minlength='1' name='{{name}}' placeholder='(required)' type='text' value=''/>
|
||||
<input class='parameter required' minlength='1' name='{{name}}' placeholder='(required)' type='text' value=''/>
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
</td>
|
||||
<td>
|
||||
<strong>{{{description}}}</strong>
|
||||
<strong>{{{description}}}</strong>
|
||||
</td>
|
||||
<td><span class="model-signature">{{{signature}}}</span></td>
|
||||
<td>{{{paramType}}}</td>
|
||||
<td><span class="model-signature"></span></td>
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
<div>
|
||||
<ul class="signature-nav">
|
||||
<li><a class="description-link" href="#">Model</a></li>
|
||||
<li><a class="snippet-link" href="#">Model Schema</a></li>
|
||||
</ul>
|
||||
<div>
|
||||
|
||||
<div class="signature-container">
|
||||
<div class="description">
|
||||
{{{signature}}}
|
||||
</div>
|
||||
|
||||
<div class="snippet">
|
||||
<pre><code>{{sampleJSON}}</code></pre>
|
||||
<small class="notice"></small>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user