Skip to content
GitLab
    • Explore Projects Groups Snippets
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • O openapi-generator
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 3,476
    • Issues 3,476
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 402
    • Merge requests 402
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • OpenAPI Tools
  • openapi-generator
  • Merge requests
  • !643

[html2] Various enhancements

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Administrator requested to merge github/fork/Metaswitch/html2-changes-merge into master 7 years ago
  • Overview 0
  • Commits 1
  • Pipelines 0
  • Changes 10

Created by: bjgill

PR checklist

  • Read the contribution guidelines.
  • Ran the shell script under ./bin/ to update Petstore sample so that CIs can verify the change. (For instance, only need to run ./bin/{LANG}-petstore.sh and ./bin/security/{LANG}-petstore.sh if updating the {LANG} (e.g. php, ruby, python, etc) code generator or {LANG} client's mustache templates). Windows batch files can be found in .\bin\windows\.
  • Filed the PR against the correct branch: master, 3.2.x, 4.0.x. Default: master. - [ ] Copied the technical committee to review the pull request if your PR is targeting a particular programming language. - doesn't seem to be a committee for html2...

Description of the PR

(details of the change, additional tests that have been done, reference to the issue for tracking, etc)

This commit includes the following changes:

  • Fix docs not generating parameter descriptions, add rust sample.
  • Add example to doc output.
  • Add basic scope reporting.
  • Stringify the JSON "Example" objects for response schemas.
  • Prettify JSON examples in response schemas.
  • Parse and present multiline response descriptions.
  • Add API error details to docsgen.
  • Add read only markers to read only properties.
  • Fix up style document indentation.
  • Add support for x-shared-errors, an extension to define common error types that can be shared across a microservice framework. Currently only supported by rust-server - I'll add it to https://github.com/OpenAPITools/openapi-generator/wiki/Vendor-Extensions once this gets merged.

Required for https://github.com/OpenAPITools/openapi-generator/issues/550. I've not specifically tested, but we have been using this for several months now without incident.

Thanks to @angusi and @kw217 - the original authors of these changes.

Compare
  • master (base)

and
  • latest version
    5df65f40
    1 commit, 2 years ago

10 files
+ 1769
- 448

    Preferences

    File browser
    Compare changes
modules/openapi-g‎enerator/src/main‎
java/org/openapitoo‎ls/codegen/languages‎
StaticHtml2G‎enerator.java‎ +18 -0
resources‎/htmlDocs2‎
fonts.m‎ustache‎ +1 -0
index.m‎ustache‎ +114 -42
js_jsonschema‎view.mustache‎ +15 -5
param.m‎ustache‎ +2 -2
paramB.‎mustache‎ +1 -2
sample_rus‎t.mustache‎ +11 -0
styles.‎mustache‎ +175 -57
sample‎s/html2‎
.openapi-‎generator‎
VER‎SION‎ +1 -1
index‎.html‎ +1431 -339
modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/StaticHtml2Generator.java
+ 18
- 0
  • View file @ 5df65f40

  • Edit in single-file editor

  • Open in Web IDE


@@ -17,12 +17,14 @@
package org.openapitools.codegen.languages;
import io.swagger.v3.core.util.Json;
import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.Operation;
import io.swagger.v3.oas.models.info.Info;
import io.swagger.v3.oas.models.media.ArraySchema;
import io.swagger.v3.oas.models.media.Schema;
import com.fasterxml.jackson.databind.JsonNode;
import org.apache.commons.lang3.StringUtils;
import org.openapitools.codegen.CliOption;
import org.openapitools.codegen.CodegenConfig;
@@ -175,6 +177,22 @@ public class StaticHtml2Generator extends DefaultCodegen implements CodegenConfi
additionalProperties.put("jsModuleName", jsModuleName);
preparHtmlForGlobalDescription(openAPI);
Map<String, Object> vendorExtensions = openAPI.getExtensions();
if (vendorExtensions != null) {
for(Map.Entry<String, Object> vendorExtension: vendorExtensions.entrySet()) {
// Vendor extensions could be Maps (objects). If we wanted to iterate through them in our template files
// without knowing the keys beforehand, the default `toString` method renders them unusable. Instead, we
// convert them to JSON strings now, which means we can easily use them later.
if (vendorExtension.getValue() instanceof Map) {
this.vendorExtensions().put(vendorExtension.getKey(), Json.mapper().convertValue(vendorExtension.getValue(), JsonNode.class));
} else {
this.vendorExtensions().put(vendorExtension.getKey(), vendorExtension.getValue());
}
}
}
openAPI.setExtensions(this.vendorExtensions);
}
@Override
modules/openapi-generator/src/main/resources/htmlDocs2/fonts.mustache 0 → 100644
+ 1
- 0
  • View file @ 5df65f40

  • Edit in single-file editor

  • Open in Web IDE

@import url('https://fonts.googleapis.com/css?family=Source+Code+Pro');
\ No newline at end of file
modules/openapi-generator/src/main/resources/htmlDocs2/index.mustache
+ 114
- 42
  • View file @ 5df65f40

  • Edit in single-file editor

  • Open in Web IDE


@@ -103,20 +103,31 @@
});
</script>
<style type="text/css">
{{>css_bootstrap}}
{{>css_prettify}}
{{>styles}}
{{>fonts}}
{{>css_bootstrap}}
{{>css_prettify}}
{{>styles}}
</style>
</head>
<body>
<script>
// Script section to load models into a JS Var
var defs = {}
{{#models}}
{{#model}}
defs.{{name}} = {{{modelJson}}};
{{/model}}
{{#models}}
{{#model}}
defs["{{name}}"] = {{{modelJson}}};
{{/model}}
{{/models}}
var errs = {};
{{#swagger.vendorExtensions.x-shared-errors}}
{
let err = {{{.}}};
errs[err.errorID] = err;
}
{{/swagger.vendorExtensions.x-shared-errors}}
</script>
<div class="container-fluid">
@@ -162,7 +173,9 @@
<div class="app-desc">Version: {{{version}}}</div>
{{/version}}
<hr>
<div>{{{appDescription}}}</div>
<div id="app-description" class="app-desc">
{{{appDescription}}}
</div>
</div>
</div>
<div id="sections">
@@ -200,6 +213,7 @@
<li class=""><a href="#examples-{{baseName}}-{{nickname}}-0-php">PHP</a></li>
<li class=""><a href="#examples-{{baseName}}-{{nickname}}-0-perl">Perl</a></li>
<li class=""><a href="#examples-{{baseName}}-{{nickname}}-0-python">Python</a></li>
<li class=""><a href="#examples-{{baseName}}-{{nickname}}-0-rust">Rust</a></li>
</ul>
<div class="tab-content">
@@ -243,8 +257,22 @@
<div class="tab-pane" id="examples-{{baseName}}-{{nickname}}-0-python">
<pre class="prettyprint"><code class="language-python">{{>sample_python}}</code></pre>
</div>
<div class="tab-pane" id="examples-{{baseName}}-{{nickname}}-0-rust">
<pre class="prettyprint"><code class="language-rust">{{>sample_rust}}</code></pre>
</div>
</div>
<h2>Scopes</h2>
<table>
{{#authMethods}}{{#scopes}}
<tr>
<td>{{scope}}</td>
<td>{{description}}</td>
</tr>
{{/scopes}}{{/authMethods}}
</table>
<h2>Parameters</h2>
{{#hasPathParams}}
@@ -314,31 +342,77 @@
<h2>Responses</h2>
{{#responses}}
<h3> Status: {{code}} - {{message}} </h3>
<ul class="nav nav-tabs nav-tabs-examples" >
<h3 id="examples-{{baseName}}-{{nickname}}-title-{{code}}"></h3>
<p id="examples-{{baseName}}-{{nickname}}-description-{{code}}" class="marked"></p>
<script>
var response{{baseName}}{{code}}_description = `{{{message}}}`;
var response{{baseName}}{{code}}_description_break = response{{baseName}}{{code}}_description.indexOf('\n');
if (response{{baseName}}{{code}}_description_break == -1) {
$("#examples-{{baseName}}-{{nickname}}-title-{{code}}").text("Status: {{code}} - " + response{{baseName}}{{code}}_description);
} else {
$("#examples-{{baseName}}-{{nickname}}-title-{{code}}").text("Status: {{code}} - " + response{{baseName}}{{code}}_description.substring(0, response{{baseName}}{{code}}_description_break));
$("#examples-{{baseName}}-{{nickname}}-description-{{code}}").html(response{{baseName}}{{code}}_description.substring(response{{baseName}}{{code}}_description_break));
}
</script>
<ul id="responses-detail-{{baseName}}-{{nickname}}-{{code}}" class="nav nav-tabs nav-tabs-examples" >
{{#schema}}
<li class="active">
<a data-toggle="tab" href="#responses-{{nickname}}-{{code}}-schema">Schema</a>
<a data-toggle="tab" href="#responses-{{baseName}}-{{nickname}}-{{code}}-schema">Schema</a>
</li>
{{#examples}}
<li class="">
<a data-toggle="tab" href="#responses-{{nickname}}-{{code}}-example">Response Example</a>
<a data-toggle="tab" href="#responses-{{baseName}}-{{nickname}}-{{code}}-example">Response Example</a>
</li>
{{/examples}}
{{/schema}}
{{#hasHeaders}}
<li class="">
<a data-toggle="tab" href="#responses-{{nickname}}-{{code}}-headers">Headers</a>
</li>
{{/hasHeaders}}
{{#vendorExtensions}}
{{#x-shared-errors}}
<script>
$(document).ready(function()
{
var errRef = "{{{$ref}}}";
var errorID = errRef.substring(errRef.lastIndexOf("/") + 1);
var errorDef = errs[errorID];
var tabID = 'responses-detail-{{baseName}}-{{nickname}}-{{code}}-' + errorID;
var contentID = tabID + "-content";
$('#responses-detail-{{baseName}}-{{nickname}}-{{code}}').append("<li><a href='#" + tabID + "' data-toggle='tab'>" + errorID + "</a></li>");
var contentWrapper = $('#responses-{{baseName}}-{{nickname}}-{{code}}-wrapper');
contentWrapper.append('<div class="tab-pane" id="' + tabID + '"><div id="' + contentID + '" class="exampleStyle"></div></div>');
var contentPane = $('#' + contentID);
contentPane.append('<p>' + errorDef.message + '</p>');
if (errorDef.variables)
{
contentPane.append('<h4>Variables</h4>');
var lVars = $('<ol></ol>').appendTo(contentPane);
for (lii = 0; lii < errorDef.variables.length; lii++)
{
$("<li></li>").appendTo(lVars).text(errorDef.variables[lii]);
}
}
});
</script>
{{/x-shared-errors}}
{{/vendorExtensions}}
</ul>
<div class="tab-content" style='margin-bottom: 10px;'>
<div class="tab-content" id="responses-{{baseName}}-{{nickname}}-{{code}}-wrapper" style='margin-bottom: 10px;'>
{{#schema}}
<div class="tab-pane active" id="responses-{{nickname}}-{{code}}-schema">
<div id='responses-{{nickname}}-{{code}}-schema-{{code}}' style="padding: 30px; border-left: 1px solid #eee; border-right: 1px solid #eee; border-bottom: 1px solid #eee;">
<div class="tab-pane active" id="responses-{{baseName}}-{{nickname}}-{{code}}-schema">
<div id="responses-{{baseName}}-{{nickname}}-schema-{{code}}" class="exampleStyle">
<script>
$(document).ready(function() {
var schemaWrapper = {{{jsonSchema}}};
@@ -352,45 +426,43 @@
});
}
//console.log(JSON.stringify(schema));
var view = new JSONSchemaView(schema, 3);
$('#responses-{{nickname}}-{{code}}-schema-data').val(stringify(schema));
var result = $('#responses-{{nickname}}-{{code}}-schema-{{code}}');
$('#responses-{{baseName}}-{{nickname}}-{{code}}-schema-data').val(JSON.stringify(schema));
var result = $('#responses-{{baseName}}-{{nickname}}-schema-{{code}}');
result.empty();
result.append(view.render());
});
</script>
</div>
<input id='responses-{{nickname}}-{{code}}-schema-data' type='hidden' value=''></input>
<input id='responses-{{baseName}}-{{nickname}}-{{code}}-schema-data' type='hidden' value=''></input>
</div>
{{#examples}}
<div class="tab-pane" id="responses-{{nickname}}-{{code}}-example">
<pre class="prettyprint"><code class="json">{{example}}</code></pre>
</div>
<div class="tab-pane" id="examples-{{baseName}}-{{nickname}}-{{code}}-example">
<pre class="prettyprint"><code class="json">{{example}}</code></pre>
</div>
{{/examples}}
{{/schema}}
{{#hasHeaders}}
<div class="tab-pane" id="responses-{{nickname}}-{{code}}-headers">
<table>
<tr>
<th width="150px">Name</th>
<th width="100px">Type</th>
<th width="100px">Format</th>
<th>Description</th>
</tr>
{{#headers}}
<tr>
<td>{{#name}}{{name}}{{/name}}</td>
<td>{{#datatype}}{{dataType}}{{/datatype}}</td>
<td>{{#dataFormat}}{{dataFormat}}{{/dataFormat}}</td>
<td>{{#description}}{{description}}{{/description}}</td>
</tr>
{{/headers}}
</table>
</div>
<div class="tab-pane" id="responses-{{nickname}}-{{code}}-headers">
<table>
<tr>
<th width="150px">Name</th>
<th width="100px">Type</th>
<th width="100px">Format</th>
<th>Description</th>
</tr>
{{#headers}}
<tr>
<td>{{#name}}{{name}}{{/name}}</td>
<td>{{#datatype}}{{dataType}}{{/datatype}}</td>
<td>{{#dataFormat}}{{dataFormat}}{{/dataFormat}}</td>
<td>{{#description}}{{description}}{{/description}}</td>
</tr>
{{/headers}}
</table>
</div>
{{/hasHeaders}}
</div>
{{/responses}}
</article>
</div>
modules/openapi-generator/src/main/resources/htmlDocs2/js_jsonschemaview.mustache
+ 15
- 5
  • View file @ 5df65f40

  • Edit in single-file editor

  • Open in Web IDE

Files with large changes are collapsed by default.

modules/openapi-generator/src/main/resources/htmlDocs2/param.mustache
+ 2
- 2
  • View file @ 5df65f40

  • Edit in single-file editor

  • Open in Web IDE


@@ -15,8 +15,8 @@
{{/dataFormat}}
{{#description}}
<div class="inner description">
{{description}}
<div class="inner description marked">
{{description}}
</div>
{{/description}}
</div>
modules/openapi-generator/src/main/resources/htmlDocs2/paramB.mustache
+ 1
- 2
  • View file @ 5df65f40

  • Edit in single-file editor

  • Open in Web IDE


<tr><td style="width:150px;">{{paramName}} {{^required}}{{/required}}{{#required}}<span style="color:red;">*</span>{{/required}}</td>
<td>
<p class="marked">{{description}}</p>
<script>
$(document).ready(function() {
var schemaWrapper = {{{jsonSchema}}};
modules/openapi-generator/src/main/resources/htmlDocs2/sample_rust.mustache 0 → 100644
+ 11
- 0
  • View file @ 5df65f40

  • Edit in single-file editor

  • Open in Web IDE

extern crate {{classname}};
pub fn main() {
{{#allParams}} let {{paramName}} = {{{example}}}; // {{{dataType}}}
{{/allParams}}
let mut context = {{classname}}::Context::default();
let result = client.{{operationId}}({{#allParams}}{{paramName}}, {{/allParams}}&context).wait();
println!("{:?}", result);
}
modules/openapi-generator/src/main/resources/htmlDocs2/styles.mustache
+ 175
- 57
  • View file @ 5df65f40

  • Edit in single-file editor

  • Open in Web IDE


@@ -2,7 +2,7 @@
* Content
* ------------------------------------------------------------------------------------------ */
@import url('https://fonts.googleapis.com/css?family=Source+Code+Pro');
* {
font-family: 'Source Code Pro', sans-serif;
}
@@ -10,7 +10,11 @@ body {
min-width: 980px;
}
body, p, a, div, th, td {
.app-desc {
color: #808080
}
body, p, a, div, th, td, li {
font-family: "Source Sans Pro", sans-serif;
font-weight: 400;
font-size: 16px;
@@ -310,8 +314,6 @@ pre code.sample-request-response-json {
border-left: #e5e5e5 4px solid;
}
/* ------------------------------------------------------------------------------------------
* Tabs
* ------------------------------------------------------------------------------------------ */
@@ -362,59 +364,175 @@ ul.nav-tabs {
} /* /@media print */
.doc-chapter
{
display:none;
background-color: #eee;
border-radius: 1px;
padding: 10px;
margin-bottom: 20px;
.doc-chapter {
display: none;
background-color: #eee;
border-radius: 1px;
padding: 10px;
margin-bottom: 20px;
}
/*!
* json-schema-view-js
* https://github.com/mohsen1/json-schema-view-js#readme
* Version: 0.4.1 - 2015-11-12T17:19:27.615Z
* License: MIT
*/.json-schema-view .toggle-handle:after,.json-schema-view.json-schema-view-dark .toggle-handle:after,json-schema-view .toggle-handle:after,json-schema-view[json-schema-view-dark] .toggle-handle:after{content:"\25BC"}.json-schema-view .title,.json-schema-view.json-schema-view-dark .title,json-schema-view .title,json-schema-view[json-schema-view-dark] .title{font-weight:700;cursor:pointer}.json-schema-view,json-schema-view{font-family:monospace;font-size:0;display:table-cell}.json-schema-view>*,json-schema-view>*{font-size:14px}.json-schema-view .toggle-handle,json-schema-view .toggle-handle{cursor:pointer;margin:auto .3em;font-size:10px;display:inline-block;transform-origin:50% 40%;transition:transform 150ms ease-in}.json-schema-view .toggle-handle,.json-schema-view .toggle-handle:hover,json-schema-view .toggle-handle,json-schema-view .toggle-handle:hover{text-decoration:none;color:#333}.json-schema-view .description,json-schema-view .description{color:gray;font-style:italic}
.pattern {
color: blue;
}
.default {
color: black;
}
.required {
color:black;
}
.json-schema-view .title,.json-schema-view .title:hover,json-schema-view .title,json-schema-view .title:hover{text-decoration:none;color:#333}.json-schema-view .brace,.json-schema-view .bracket,.json-schema-view .title,json-schema-view .brace,json-schema-view .bracket,json-schema-view .title{color:#333}.json-schema-view .property,json-schema-view .property{font-size:0;display:table-row}.json-schema-view .property>*,json-schema-view .property>*{font-size:14px;padding:.2em}.json-schema-view .name,json-schema-view .name{color:#00f;display:table-cell;vertical-align:top}.json-schema-view .type,json-schema-view .type{color:green}.json-schema-view .type-any,json-schema-view .type-any{color:#33f}.json-schema-view .required,json-schema-view .required{color:red}.json-schema-view .inner,json-schema-view .inner{padding-left:18px}.json-schema-view.collapsed .description,.json-schema-view.collapsed .property,json-schema-view.collapsed .description,json-schema-view.collapsed .property{display:none}.json-schema-view.collapsed .closeing.brace,json-schema-view.collapsed .closeing.brace{display:inline-block}.json-schema-view.collapsed .toggle-handle,json-schema-view.collapsed .toggle-handle{transform:rotate(-90deg)}.json-schema-view.json-schema-view-dark,json-schema-view[json-schema-view-dark]{font-family:monospace;font-size:0;display:table-cell}.json-schema-view.json-schema-view-dark>*,json-schema-view[json-schema-view-dark]>*{font-size:14px}.json-schema-view.json-schema-view-dark .toggle-handle,json-schema-view[json-schema-view-dark] .toggle-handle{cursor:pointer;margin:auto .3em;font-size:10px;display:inline-block;transform-origin:50% 40%;transition:transform 150ms ease-in}.json-schema-view.json-schema-view-dark .toggle-handle,.json-schema-view.json-schema-view-dark .toggle-handle:hover,json-schema-view[json-schema-view-dark] .toggle-handle,json-schema-view[json-schema-view-dark] .toggle-handle:hover{text-decoration:none;color:#eee}.json-schema-view.json-schema-view-dark .description,json-schema-view[json-schema-view-dark] .description{color:gray;font-style:italic}.json-schema-view.json-schema-view-dark .title,.json-schema-view.json-schema-view-dark .title:hover,json-schema-view[json-schema-view-dark] .title,json-schema-view[json-schema-view-dark] .title:hover{text-decoration:none;color:#eee}.json-schema-view.json-schema-view-dark .brace,.json-schema-view.json-schema-view-dark .bracket,.json-schema-view.json-schema-view-dark .title,json-schema-view[json-schema-view-dark] .brace,json-schema-view[json-schema-view-dark] .bracket,json-schema-view[json-schema-view-dark] .title{color:#eee}.json-schema-view.json-schema-view-dark .property,json-schema-view[json-schema-view-dark] .property{font-size:0;display:table-row}.json-schema-view.json-schema-view-dark .property>*,json-schema-view[json-schema-view-dark] .property>*{font-size:14px;padding:.2em}.json-schema-view.json-schema-view-dark .name,json-schema-view[json-schema-view-dark] .name{color:#add8e6;display:table-cell;vertical-align:top}.json-schema-view.json-schema-view-dark .type,json-schema-view[json-schema-view-dark] .type{color:#90ee90}.json-schema-view.json-schema-view-dark .type-any,json-schema-view[json-schema-view-dark] .type-any{color:#d4ebf2}.json-schema-view.json-schema-view-dark .required,json-schema-view[json-schema-view-dark] .required{color:#fe0000}.json-schema-view.json-schema-view-dark .inner,json-schema-view[json-schema-view-dark] .inner{padding-left:18px}.json-schema-view.json-schema-view-dark.collapsed .description,.json-schema-view.json-schema-view-dark.collapsed .property,json-schema-view[json-schema-view-dark].collapsed .description,json-schema-view[json-schema-view-dark].collapsed .property{display:none}.json-schema-view.json-schema-view-dark.collapsed .closeing.brace,json-schema-view[json-schema-view-dark].collapsed .closeing.brace{display:inline-block}.json-schema-view.json-schema-view-dark.collapsed .toggle-handle,json-schema-view[json-schema-view-dark].collapsed .toggle-handle{transform:rotate(-90deg)}
* json-schema-view-js
* https://github.com/mohsen1/json-schema-view-js#readme
* Version: 0.4.1 - 2015-11-12T17:19:27.615Z
* License: MIT
*/
.json-schema-view .toggle-handle:after, .json-schema-view.json-schema-view-dark .toggle-handle:after, json-schema-view .toggle-handle:after, json-schema-view[json-schema-view-dark] .toggle-handle:after {
content: "\25BC"
}
.json-schema-view .title, .json-schema-view.json-schema-view-dark .title, json-schema-view .title, json-schema-view[json-schema-view-dark] .title {
font-weight: 700;
cursor: pointer
}
.json-schema-view, json-schema-view {
font-family: monospace;
font-size: 0;
display: table-cell
}
.json-schema-view>*, json-schema-view>* {
font-size: 14px
}
.json-schema-view .toggle-handle, json-schema-view .toggle-handle {
cursor: pointer;
margin: auto .3em;
font-size: 10px;
display: inline-block;
transform-origin: 50% 40%;
transition: transform 150ms ease-in
}
.json-schema-view .toggle-handle, .json-schema-view .toggle-handle:hover, json-schema-view .toggle-handle, json-schema-view .toggle-handle:hover {
text-decoration: none;
color: #333
}
.json-schema-view .description, json-schema-view .description {
color: gray;
font-style: italic
}
.json-schema-view .readOnly, json-schema-view .readOnly {
color: gray;
font-style: italic
}
.json-schema-view .nullable, json-schema-view .nullable {
color: gray;
font-style: italic
}
.pattern, .example {
color: blue;
}
.default {
color: black;
}
.required {
color: black;
}
.json-schema-view .title, .json-schema-view .title:hover, json-schema-view .title, json-schema-view .title:hover {
text-decoration: none;
color: #333
}
.json-schema-view .brace, .json-schema-view .bracket, .json-schema-view .title, json-schema-view .brace, json-schema-view .bracket, json-schema-view .title {
color: #333
}
.json-schema-view .property, json-schema-view .property {
font-size: 0;
display: table-row
}
.json-schema-view .property>*, json-schema-view .property>* {
font-size: 14px;
padding: .2em
}
.json-schema-view .name, json-schema-view .name {
color: #00f;
display: table-cell;
vertical-align: top
}
.json-schema-view .type, json-schema-view .type {
color: green
}
.json-schema-view .type-any, json-schema-view .type-any {
color: #33f
}
.json-schema-view .required, json-schema-view .required {
color: red
}
.json-schema-view .inner, json-schema-view .inner {
padding-left: 18px
}
.json-schema-view.collapsed .description, .json-schema-view.collapsed .property, json-schema-view.collapsed .description, json-schema-view.collapsed .property {
display: none
}
.json-schema-view.collapsed .closeing.brace, json-schema-view.collapsed .closeing.brace {
display: inline-block
}
.json-schema-view.collapsed .toggle-handle, json-schema-view.collapsed .toggle-handle {
transform: rotate(-90deg)
}
.json-schema-view.json-schema-view-dark, json-schema-view[json-schema-view-dark] {
font-family: monospace;
font-size: 0;
display: table-cell
}
.json-schema-view.json-schema-view-dark>*, json-schema-view[json-schema-view-dark]>* {
font-size: 14px
}
.json-schema-view.json-schema-view-dark .toggle-handle, json-schema-view[json-schema-view-dark] .toggle-handle {
cursor: pointer;
margin: auto .3em;
font-size: 10px;
display: inline-block;
transform-origin: 50% 40%;
transition: transform 150ms ease-in
}
.json-schema-view.json-schema-view-dark .toggle-handle, .json-schema-view.json-schema-view-dark .toggle-handle:hover, json-schema-view[json-schema-view-dark] .toggle-handle, json-schema-view[json-schema-view-dark] .toggle-handle:hover {
text-decoration: none;
color: #eee
}
.json-schema-view.json-schema-view-dark .description, json-schema-view[json-schema-view-dark] .description {
color: gray;
font-style: italic
}
.json-schema-view.json-schema-view-dark .title, .json-schema-view.json-schema-view-dark .title:hover, json-schema-view[json-schema-view-dark] .title, json-schema-view[json-schema-view-dark] .title:hover {
text-decoration: none;
color: #eee
}
.json-schema-view.json-schema-view-dark .brace, .json-schema-view.json-schema-view-dark .bracket, .json-schema-view.json-schema-view-dark .title, json-schema-view[json-schema-view-dark] .brace, json-schema-view[json-schema-view-dark] .bracket, json-schema-view[json-schema-view-dark] .title {
color: #eee
}
.json-schema-view.json-schema-view-dark .property, json-schema-view[json-schema-view-dark] .property {
font-size: 0;
display: table-row
}
.json-schema-view.json-schema-view-dark .property>*, json-schema-view[json-schema-view-dark] .property>* {
font-size: 14px;
padding: .2em
}
.json-schema-view.json-schema-view-dark .name, json-schema-view[json-schema-view-dark] .name {
color: #add8e6;
display: table-cell;
vertical-align: top
}
.json-schema-view.json-schema-view-dark .type, json-schema-view[json-schema-view-dark] .type {
color: #90ee90
}
.json-schema-view.json-schema-view-dark .type-any, json-schema-view[json-schema-view-dark] .type-any {
color: #d4ebf2
}
.json-schema-view.json-schema-view-dark .required, json-schema-view[json-schema-view-dark] .required {
color: #fe0000
}
.json-schema-view.json-schema-view-dark .inner, json-schema-view[json-schema-view-dark] .inner {
padding-left: 18px
}
.json-schema-view.json-schema-view-dark.collapsed .description, .json-schema-view.json-schema-view-dark.collapsed .property, json-schema-view[json-schema-view-dark].collapsed .description, json-schema-view[json-schema-view-dark].collapsed .property {
display: none
}
.json-schema-view.json-schema-view-dark.collapsed .closeing.brace, json-schema-view[json-schema-view-dark].collapsed .closeing.brace {
display: inline-block
}
.json-schema-view.json-schema-view-dark.collapsed .toggle-handle, json-schema-view[json-schema-view-dark].collapsed .toggle-handle {
transform: rotate(-90deg)
}
.exampleStyle {
padding: 30px; border-left: 1px solid #eee; border-right: 1px solid #eee; border-bottom: 1px solid #eee;
}
\ No newline at end of file
samples/html2/.openapi-generator/VERSION
+ 1
- 1
  • View file @ 5df65f40

  • Edit in single-file editor

  • Open in Web IDE

3.0.0-SNAPSHOT
\ No newline at end of file
3.1.2-SNAPSHOT
\ No newline at end of file
samples/html2/index.html
+ 1431
- 339
  • View file @ 5df65f40

  • Edit in single-file editor

  • Open in Web IDE

Changes are too large to be shown.

View file @ 5df65f40
0 Assignees
None
Assign to
0 Reviewers
None
Request review from
Labels
0
None
0
None
    Assign labels
  • Manage project labels

Milestone
No milestone
None
None
Time tracking
No estimate or time spent
Lock merge request
Unlocked
0
0 participants
Reference: OpenAPITools/openapi-generator!12573
Source branch: github/fork/Metaswitch/html2-changes-merge

Menu

Explore Projects Groups Snippets