28 Commits

Author SHA1 Message Date
Christopher Davis
da02f3ad33
Stop Model Property Description When a Schema Type or Ref is Already Defined (#1978)
* Return a Result Object from AnnotationsReader::updateDefinition

This is so we can make a decision on whether or not a schema's type or
ref has been manually defined by a user via an `@OA\Schema` annotation
as something other than an object.

If it has been defined, this bundle should not read model properties any
further as it causes errors.

I put this in AnnotationReader as it seemed the most flexible in the
long run. It could have gone in `OpenApiAnnotationsReader`, but then any
additional things added to `updateDefinition` could be left out of the
decision down the road. This is also a convenient place to decide this
once for `ObjectModelDescriber` and `JMSModelDescriber`.

* Stop Model Describer if a Schema Type or Ref Has Been Defined

Via the result object added in the previous commit.

This lets user "short circuit" the model describers by manually defining
the schema type or ref on a plain PHP object or form. For example,
a collection class could be defined like this:

    /**
     * @OA\Schema(type="array", @OA\Items(ref=@Model(type=SomeEntity::class)))
     */
     class SomeCollection implements \IteratorAggregate { }

Previously the model describer would error as it tries to merge the
`array` schema with the already defiend `object` schema. Now it will
prefer the array schema and skip reading all the properties of the
object.

* Add a Documentation Bit on Stopping Property Description

* Mark UpdateClassDefinitionResult as Internal
2022-04-30 20:28:05 +02:00
Alexey Alshenetsky
14383f4ee5
Add support for zircore/swagger-php 4.0 (#1916)
* add zircore/swagger-php v4 to composer.json

* fix incompatibilities

* add compatibility with 3.2

* Apply fixes from StyleCI

* mark SetsContextTrait as internal

* Bump php version

Co-authored-by: Alexey <alshenestky@icloud.com>
Co-authored-by: Alexey Alshenetsky <alshenetsky@users.noreply.github.com>
Co-authored-by: Guilhem Niot <guilhem@gniot.fr>
2021-12-11 14:39:04 +01:00
Yoann Laissus
7858afec09 Display form type childs description and title properly 2021-03-30 14:42:47 +02:00
Guilhem Niot
363fd26f7c Merge branch '3.x' 2020-12-10 22:28:55 +01:00
Guilhem Niot
90f835f1ef
Allow to not document form types fields (#1752)
* Allow the usage of `@SWG\Definition` on form types

* Allow to not document form types fields

* Reduce the number of changes
2020-12-02 15:38:38 +01:00
Guilhem Niot
23fdbf0412 Merge branch '3.x' 2020-08-06 10:29:17 +02:00
Guilhem Niot
edf6b70175 Apply StyleCI fixes 2020-08-06 10:26:59 +02:00
Filip Benčo
78664ef9ec
OpenApi 3 Support (#1623)
* Initial pass for OA3 upgrade

* Fix Util Tests

* Fix first batch of Unit Tests. Up to Model

* Another batch of fixed tests

* Update annotations

* Convert Model & Property Describers

* Update tests, Fix RouteDescribers, FIx additional bugs

* Another batch of updates

* Another batch of fixed Functional Tests

* Fix FunctionalTest tests

* Fix Bazinga Tests

* FIx FOS Rest

* Fix JMS TEsts & describers

* Fix all Tests

* Fix few stuff from own CR

* CS Fixes

* CS Fixes 2

* CS Fixes 3

* CS Fixes 4

* Remove collection bug

* Updates after first CRs

* CS

* Drop support for SF3

* Update the docs

* Add an upgrade guide

* misc doc fixes

* Configurable media types

* Code Style Fixes

* Don't use ::$ref for @Response and @RequestBody

* Fix upgrading guide

* Fix OA case

Co-authored-by: Filip Benčo <filip.benco@websupport.sk>
Co-authored-by: Guilhem Niot <guilhem.niot@gmail.com>
Co-authored-by: Mantis Development <mantis@users.noreply.github.com>
2020-05-28 13:19:11 +02:00
Paweł Mikołajczuk
14e4eedbad Merge pull request #1522 from ahilles107/port/options_support_in_model
Port/options support in model
2019-06-01 15:31:09 +02:00
neFAST
92790b1d28 FIX #1428 Make sure FormInterfaceConfig has a 'documentation' option … (#1429)
* FIX #1428 Make sure FormInterfaceConfig has a 'documentation' option before getting it

FIX #1428

* adding SubmitType to Tests

* Update UserType.php

* Update UserType.php

* Update FunctionalTest.php

* Update FunctionalTest.php

* removed check to see how unit test handles this

* Add test back

* Cs
2019-03-07 08:48:56 +01:00
Asmir Mustafic
bf01a8e019
add boolean enums support to forms 2018-09-24 17:35:57 +02:00
eaunitrust
f0b1eb7849 master: RepeatedType added (#1387)
* master: RepeatedType added

* Fix RepeatedType support
2018-08-30 00:16:19 +02:00
Rob Holmes
309f935763 Added support for Doctrine MongoDB ODM 'document' form type (#1377)
* Added support for Doctrine MongoDB ODM 'document' form type

* Simplify code
2018-08-29 23:14:19 +02:00
imajim
6e04137ee6 CollectionType not working in example tab (#1360)
* CollectionType not working in example tab

Removed just line 179 and collectionType now working in example tab

* Fix comments
2018-07-26 14:04:33 +02:00
Marek Štípek
22ec4fb83b Fixing FormModelDescriber entity form type description regression 2018-05-13 20:36:53 +02:00
Marek Štípek
b4ba46f9c2 Support for extended builtin form types 2018-05-10 01:01:26 +02:00
Asmir Mustafic
af30c6ac0e
handle form collection with type introspection 2018-04-27 12:43:42 +02:00
Guilhem N
37efa7228b
Add a documentation form extension (#1234)
* Adding format and example extensions. Getting child type better for collections

Fixing copyrights

Fixing style issues

Fixing style issues

Fixing style issues

* Adding DocumentationExtension

* Adding error for invalid properties

* Reverting switch

* Missing entity break

* Removing unecessary doc

* Removing unecessary method

* Style change

* Adding break for number, integer, and text types

* Extracts the documentation form extension
2018-02-19 10:56:51 +01:00
fredrocheron
72010c1d98 FormModelDescriber: set type to array with correct example for multiple choices form. (#1212)
* FormModelDescriber: set type to array with correct example for multiple choices form.

* Remove arrays examples and add test for multiple ChoiceType form

* Use of "items" for multiple ChoiceType form.
Detect "choices" type to determine property or items type.
Remove unused variable declaration.
2018-02-03 12:52:43 +01:00
David Buchmann
75cf1201ed Apply fixes from StyleCI 2017-12-22 17:42:18 +00:00
Christian Schiffler
6f9ed9bba9 Add integer support to FormModelDescriber 2017-12-19 00:22:26 +01:00
Marcin Szepczyński
bff1b3ba0a Add support for boolean type for CheckboxType (#1123)
* Add support for boolean type for CheckboxType

* add functional tests to checkbox form type as boolean
2017-12-15 16:58:40 +01:00
kopaygorodsky
8521fdc7ea added break 2017-11-11 13:43:42 +02:00
kopaygorodsky
27402d7bb6 added support of collection type + example in forms 2017-11-11 13:33:41 +02:00
kopaygorodsky
b405b33ea2 codestyle fixes 2017-09-15 21:43:20 +03:00
kopaygorodsky
6e41a20e40 Added support for EntityType in FormModel Describer. Reading form recursively down. Modified formSupport test 2017-09-15 20:31:51 +03:00
Guilhem Niot
b8479d02e1 Add JMS serializer support 2017-07-25 10:09:41 +02:00
Guilhem Niot
8eb084908d Add forms support 2017-06-24 19:54:48 +02:00