Skip to content

Commit 2b832aa

Browse files
authored
Allow to toggle 'merge Components' and default to false (#1849)
1 parent 9cf6abe commit 2b832aa

File tree

5 files changed

+192
-39
lines changed

5 files changed

+192
-39
lines changed

docs/reference/annotations.md

Lines changed: 43 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ These will be ignored by `swagger-php` but can be used for custom processing.
2828

2929
#### Allowed in
3030
---
31-
<a href="#additionalproperties">AdditionalProperties</a>, <a href="#components">Components</a>, <a href="#contact">Contact</a>, <a href="#delete">Delete</a>, <a href="#discriminator">Discriminator</a>, <a href="#examples">Examples</a>, <a href="#externaldocumentation">ExternalDocumentation</a>, <a href="#flow">Flow</a>, <a href="#get">Get</a>, <a href="#head">Head</a>, <a href="#header">Header</a>, <a href="#info">Info</a>, <a href="#items">Items</a>, <a href="#jsoncontent">JsonContent</a>, <a href="#license">License</a>, <a href="#link">Link</a>, <a href="#mediatype">MediaType</a>, <a href="#openapi">OpenApi</a>, <a href="#operation">Operation</a>, <a href="#options">Options</a>, <a href="#parameter">Parameter</a>, <a href="#patch">Patch</a>, <a href="#pathitem">PathItem</a>, <a href="#pathparameter">PathParameter</a>, <a href="#post">Post</a>, <a href="#property">Property</a>, <a href="#put">Put</a>, <a href="#requestbody">RequestBody</a>, <a href="#response">Response</a>, <a href="#schema">Schema</a>, <a href="#securityscheme">SecurityScheme</a>, <a href="#server">Server</a>, <a href="#servervariable">ServerVariable</a>, <a href="#tag">Tag</a>, <a href="#trace">Trace</a>, <a href="#webhook">Webhook</a>, <a href="#xml">Xml</a>, <a href="#xmlcontent">XmlContent</a>
31+
<a href="#additionalproperties">AdditionalProperties</a>, <a href="#components">Components</a>, <a href="#contact">Contact</a>, <a href="#delete">Delete</a>, <a href="#discriminator">Discriminator</a>, <a href="#encoding">Encoding</a>, <a href="#examples">Examples</a>, <a href="#externaldocumentation">ExternalDocumentation</a>, <a href="#flow">Flow</a>, <a href="#get">Get</a>, <a href="#head">Head</a>, <a href="#header">Header</a>, <a href="#info">Info</a>, <a href="#items">Items</a>, <a href="#jsoncontent">JsonContent</a>, <a href="#license">License</a>, <a href="#link">Link</a>, <a href="#mediatype">MediaType</a>, <a href="#openapi">OpenApi</a>, <a href="#operation">Operation</a>, <a href="#options">Options</a>, <a href="#parameter">Parameter</a>, <a href="#patch">Patch</a>, <a href="#pathitem">PathItem</a>, <a href="#pathparameter">PathParameter</a>, <a href="#post">Post</a>, <a href="#property">Property</a>, <a href="#put">Put</a>, <a href="#requestbody">RequestBody</a>, <a href="#response">Response</a>, <a href="#schema">Schema</a>, <a href="#securityscheme">SecurityScheme</a>, <a href="#server">Server</a>, <a href="#servervariable">ServerVariable</a>, <a href="#tag">Tag</a>, <a href="#trace">Trace</a>, <a href="#webhook">Webhook</a>, <a href="#xml">Xml</a>, <a href="#xmlcontent">XmlContent</a>
3232

3333
### [Components](https://github.com/zircote/swagger-php/tree/master/src/Annotations/Components.php)
3434

@@ -151,6 +151,37 @@ On top of this subset, there are extensions provided by this specification to al
151151
- [Discriminator Object](https://spec.openapis.org/oas/v3.1.1.html#discriminator-object)
152152
- [JSON Schema](http://json-schema.org/)
153153

154+
### [Encoding](https://github.com/zircote/swagger-php/tree/master/src/Annotations/Encoding.php)
155+
156+
A single encoding definition applied to a single schema property.
157+
158+
#### Allowed in
159+
---
160+
<a href="#jsoncontent">JsonContent</a>, <a href="#xmlcontent">XmlContent</a>, <a href="#mediatype">MediaType</a>, <a href="#property">Property</a>
161+
162+
#### Nested elements
163+
---
164+
<a href="#header">Header</a>, <a href="#attachable">Attachable</a>
165+
166+
#### Properties
167+
---
168+
<dl>
169+
<dt><strong>property</strong> : <span style="font-family: monospace;">string</span></dt>
170+
<dd><p>The property name to which the encoding applies.</p><table class="table-plain"><tbody><tr><td><i>Required</i>:</td><td style="padding-left: 0;"><b>no</b></td></tr></tbody></table></dd>
171+
<dt><strong>contentType</strong> : <span style="font-family: monospace;">string</span></dt>
172+
<dd><p>The content type.</p><table class="table-plain"><tbody><tr><td><i>Required</i>:</td><td style="padding-left: 0;"><b>no</b></td></tr></tbody></table></dd>
173+
<dt><strong>style</strong> : <span style="font-family: monospace;">string</span></dt>
174+
<dd><p>No details available.</p><table class="table-plain"><tbody><tr><td><i>Required</i>:</td><td style="padding-left: 0;"><b>no</b></td></tr></tbody></table></dd>
175+
<dt><strong>explode</strong> : <span style="font-family: monospace;">bool</span></dt>
176+
<dd><p>No details available.</p><table class="table-plain"><tbody><tr><td><i>Required</i>:</td><td style="padding-left: 0;"><b>no</b></td></tr></tbody></table></dd>
177+
<dt><strong>allowReserved</strong> : <span style="font-family: monospace;">bool</span></dt>
178+
<dd><p>No details available.</p><table class="table-plain"><tbody><tr><td><i>Required</i>:</td><td style="padding-left: 0;"><b>no</b></td></tr></tbody></table></dd>
179+
</dl>
180+
181+
#### Reference
182+
---
183+
- [Encoding Object](https://spec.openapis.org/oas/v3.1.0.html#encoding-object)
184+
154185
### [Examples](https://github.com/zircote/swagger-php/tree/master/src/Annotations/Examples.php)
155186

156187

@@ -305,7 +336,7 @@ A map between the scope name and a short description for it.</p><table class="ta
305336

306337
#### Allowed in
307338
---
308-
<a href="#components">Components</a>, <a href="#response">Response</a>
339+
<a href="#encoding">Encoding</a>, <a href="#components">Components</a>, <a href="#response">Response</a>
309340

310341
#### Nested elements
311342
---
@@ -429,7 +460,7 @@ vs.
429460

430461
#### Nested elements
431462
---
432-
<a href="#discriminator">Discriminator</a>, <a href="#items">Items</a>, <a href="#property">Property</a>, <a href="#externaldocumentation">ExternalDocumentation</a>, <a href="#additionalproperties">AdditionalProperties</a>, <a href="#examples">Examples</a>, <a href="#attachable">Attachable</a>
463+
<a href="#discriminator">Discriminator</a>, <a href="#items">Items</a>, <a href="#property">Property</a>, <a href="#externaldocumentation">ExternalDocumentation</a>, <a href="#additionalproperties">AdditionalProperties</a>, <a href="#encoding">Encoding</a>, <a href="#examples">Examples</a>, <a href="#attachable">Attachable</a>
433464

434465
### [License](https://github.com/zircote/swagger-php/tree/master/src/Annotations/License.php)
435466

@@ -528,7 +559,7 @@ Each Media Type object provides schema and examples for the media type identifie
528559

529560
#### Nested elements
530561
---
531-
<a href="#schema">Schema</a>, <a href="#examples">Examples</a>, <a href="#attachable">Attachable</a>
562+
<a href="#schema">Schema</a>, <a href="#examples">Examples</a>, <a href="#encoding">Encoding</a>, <a href="#attachable">Attachable</a>
532563

533564
#### Properties
534565
---
@@ -543,13 +574,6 @@ The example object is mutually exclusive of the examples object.<br />
543574
<br />
544575
Furthermore, if referencing a schema which contains an example,<br />
545576
the example value shall override the example provided by the schema.</p><table class="table-plain"><tbody><tr><td><i>Required</i>:</td><td style="padding-left: 0;"><b>no</b></td></tr></tbody></table></dd>
546-
<dt><strong>encoding</strong> : <span style="font-family: monospace;">array&lt;string,mixed&gt;</span></dt>
547-
<dd><p>A map between a property name and its encoding information.<br />
548-
<br />
549-
The key, being the property name, must exist in the schema as a property.<br />
550-
<br />
551-
The encoding object shall only apply to requestBody objects when the media type is multipart or<br />
552-
application/x-www-form-urlencoded.</p><table class="table-plain"><tbody><tr><td><i>Required</i>:</td><td style="padding-left: 0;"><b>no</b></td></tr></tbody></table></dd>
553577
</dl>
554578

555579
#### Reference
@@ -818,7 +842,7 @@ A <code>@OA\Request</code> path parameter.
818842

819843
#### Nested elements
820844
---
821-
<a href="#discriminator">Discriminator</a>, <a href="#items">Items</a>, <a href="#property">Property</a>, <a href="#externaldocumentation">ExternalDocumentation</a>, <a href="#xml">Xml</a>, <a href="#additionalproperties">AdditionalProperties</a>, <a href="#attachable">Attachable</a>
845+
<a href="#discriminator">Discriminator</a>, <a href="#items">Items</a>, <a href="#property">Property</a>, <a href="#externaldocumentation">ExternalDocumentation</a>, <a href="#xml">Xml</a>, <a href="#additionalproperties">AdditionalProperties</a>, <a href="#encoding">Encoding</a>, <a href="#attachable">Attachable</a>
822846

823847
#### Properties
824848
---
@@ -1095,6 +1119,12 @@ defined by this property's value.</p><table class="table-plain"><tbody><tr><td><
10951119
<dd><p>http://json-schema.org/latest/json-schema-validation.html#rfc.section.6.22.</p><table class="table-plain"><tbody><tr><td><i>Required</i>:</td><td style="padding-left: 0;"><b>no</b></td></tr></tbody></table></dd>
10961120
<dt><strong>const</strong></dt>
10971121
<dd><p>http://json-schema.org/draft/2020-12/json-schema-validation.html#rfc.section.6.1.3.</p><table class="table-plain"><tbody><tr><td><i>Required</i>:</td><td style="padding-left: 0;"><b>no</b></td></tr></tbody></table></dd>
1122+
<dt><strong>contentEncoding</strong> : <span style="font-family: monospace;">string</span></dt>
1123+
<dd><p>https://spec.openapis.org/oas/v3.1.0.html#considerations-for-file-uploads<br />
1124+
https://json-schema.org/draft/2020-12/draft-bhutton-json-schema-validation-00#rfc.section.8.3.</p><table class="table-plain"><tbody><tr><td><i>Required</i>:</td><td style="padding-left: 0;"><b>no</b></td></tr></tbody></table></dd>
1125+
<dt><strong>contentMediaType</strong> : <span style="font-family: monospace;">string</span></dt>
1126+
<dd><p>https://spec.openapis.org/oas/v3.1.0.html#considerations-for-file-uploads<br />
1127+
https://json-schema.org/draft/2020-12/draft-bhutton-json-schema-validation-00#rfc.section.8.4.</p><table class="table-plain"><tbody><tr><td><i>Required</i>:</td><td style="padding-left: 0;"><b>no</b></td></tr></tbody></table></dd>
10981128
</dl>
10991129

11001130
#### Reference
@@ -1326,5 +1356,5 @@ Use as <code>@OA\Schema</code> inside a <code>Response</code> and <code>MediaTyp
13261356

13271357
#### Nested elements
13281358
---
1329-
<a href="#discriminator">Discriminator</a>, <a href="#items">Items</a>, <a href="#property">Property</a>, <a href="#externaldocumentation">ExternalDocumentation</a>, <a href="#xml">Xml</a>, <a href="#additionalproperties">AdditionalProperties</a>, <a href="#examples">Examples</a>, <a href="#attachable">Attachable</a>
1359+
<a href="#discriminator">Discriminator</a>, <a href="#items">Items</a>, <a href="#property">Property</a>, <a href="#externaldocumentation">ExternalDocumentation</a>, <a href="#xml">Xml</a>, <a href="#additionalproperties">AdditionalProperties</a>, <a href="#encoding">Encoding</a>, <a href="#examples">Examples</a>, <a href="#attachable">Attachable</a>
13301360

0 commit comments

Comments
 (0)