diff options
author | provokateurin <kate@provokateurin.de> | 2024-09-24 15:53:13 +0200 |
---|---|---|
committer | provokateurin <kate@provokateurin.de> | 2024-11-05 09:58:11 +0100 |
commit | 77114fb3277742fc69ddcf2432311ecb263af97e (patch) | |
tree | 0f360660038c65acc5f9cd014f183e45b0c5355b /lib/public/Files | |
parent | 1140e41db2ef6241f806eb605df48642a2a32c62 (diff) | |
download | nextcloud-server-fix/openapi/array-syntax.tar.gz nextcloud-server-fix/openapi/array-syntax.zip |
fix(OpenAPI): Adjust array syntax to avoid ambiguitiesfix/openapi/array-syntax
Signed-off-by: provokateurin <kate@provokateurin.de>
Diffstat (limited to 'lib/public/Files')
-rw-r--r-- | lib/public/Files/Template/Field.php | 9 | ||||
-rw-r--r-- | lib/public/Files/Template/Fields/CheckBoxField.php | 9 | ||||
-rw-r--r-- | lib/public/Files/Template/Fields/RichTextField.php | 9 | ||||
-rw-r--r-- | lib/public/Files/Template/ITemplateManager.php | 2 | ||||
-rw-r--r-- | lib/public/Files/Template/Template.php | 28 | ||||
-rw-r--r-- | lib/public/Files/Template/TemplateFileCreator.php | 4 |
6 files changed, 56 insertions, 5 deletions
diff --git a/lib/public/Files/Template/Field.php b/lib/public/Files/Template/Field.php index ec195ca3504..e047e83a29e 100644 --- a/lib/public/Files/Template/Field.php +++ b/lib/public/Files/Template/Field.php @@ -32,6 +32,15 @@ abstract class Field implements \JsonSerializable { abstract public function setValue(mixed $value): void; /** + * @return array{ + * index: string, + * type: string, + * alias: ?string, + * tag: ?string, + * id: ?int, + * content?: string, + * checked?: bool, + * } * @since 30.0.0 */ public function jsonSerialize(): array { diff --git a/lib/public/Files/Template/Fields/CheckBoxField.php b/lib/public/Files/Template/Fields/CheckBoxField.php index 48ccb04336a..6fab3ce66a6 100644 --- a/lib/public/Files/Template/Fields/CheckBoxField.php +++ b/lib/public/Files/Template/Fields/CheckBoxField.php @@ -37,6 +37,15 @@ class CheckBoxField extends Field { } /** + * @return array{ + * index: string, + * type: string, + * alias: ?string, + * tag: ?string, + * id: ?int, + * content?: string, + * checked?: bool, + * } * @since 30.0.0 */ public function jsonSerialize(): array { diff --git a/lib/public/Files/Template/Fields/RichTextField.php b/lib/public/Files/Template/Fields/RichTextField.php index 14539bc9dbd..93ead68747c 100644 --- a/lib/public/Files/Template/Fields/RichTextField.php +++ b/lib/public/Files/Template/Fields/RichTextField.php @@ -37,6 +37,15 @@ class RichTextField extends Field { } /** + * @return array{ + * index: string, + * type: string, + * alias: ?string, + * tag: ?string, + * id: ?int, + * content?: string, + * checked?: bool, + * } * @since 30.0.0 */ public function jsonSerialize(): array { diff --git a/lib/public/Files/Template/ITemplateManager.php b/lib/public/Files/Template/ITemplateManager.php index 94e0db935e7..9a81aa51ceb 100644 --- a/lib/public/Files/Template/ITemplateManager.php +++ b/lib/public/Files/Template/ITemplateManager.php @@ -33,7 +33,7 @@ interface ITemplateManager { /** * Get a list of available file creators and their offered templates * - * @return array + * @return list<array{app: string, label: string, extension: string, iconClass: ?string, iconSvgInline: ?string, mimetypes: list<string>, ratio: ?float, actionLabel: string, templates: list<Template>}> * @since 21.0.0 */ public function listTemplates(): array; diff --git a/lib/public/Files/Template/Template.php b/lib/public/Files/Template/Template.php index 634935d212e..7f01c2afa48 100644 --- a/lib/public/Files/Template/Template.php +++ b/lib/public/Files/Template/Template.php @@ -24,7 +24,7 @@ final class Template implements \JsonSerializable { private $hasPreview = false; /** @var string|null */ private $previewUrl = null; - /** @var array */ + /** @var list<Field> */ private $fields = []; /** @@ -51,6 +51,7 @@ final class Template implements \JsonSerializable { } /** + * @param list<Field> $fields * @since 30.0.0 */ public function setFields(array $fields): void { @@ -58,6 +59,29 @@ final class Template implements \JsonSerializable { } /** + * @return array{ + * templateType: string, + * templateId: string, + * basename: string, + * etag: string, + * fileid: int, + * filename: string, + * lastmod: int, + * mime: string, + * size: int|float, + * type: string, + * hasPreview: bool, + * previewUrl: ?string, + * fields: list<array{ + * index: string, + * type: string, + * alias: ?string, + * tag: ?string, + * id: ?int, + * content?: string, + * checked?: bool, + * }>, + * } * @since 21.0.0 */ public function jsonSerialize(): array { @@ -74,7 +98,7 @@ final class Template implements \JsonSerializable { 'type' => $this->file->getType(), 'hasPreview' => $this->hasPreview, 'previewUrl' => $this->previewUrl, - 'fields' => $this->fields + 'fields' => array_map(static fn (Field $field) => $field->jsonSerialize(), $this->fields), ]; } } diff --git a/lib/public/Files/Template/TemplateFileCreator.php b/lib/public/Files/Template/TemplateFileCreator.php index 9a4bd2fae43..809bd3d0bc2 100644 --- a/lib/public/Files/Template/TemplateFileCreator.php +++ b/lib/public/Files/Template/TemplateFileCreator.php @@ -13,7 +13,7 @@ namespace OCP\Files\Template; */ final class TemplateFileCreator implements \JsonSerializable { protected $appId; - /** @var string[] $mimetypes */ + /** @var list<string> $mimetypes */ protected $mimetypes = []; protected $actionName; protected $fileExtension; @@ -121,7 +121,7 @@ final class TemplateFileCreator implements \JsonSerializable { /** * @since 21.0.0 - * @return array{app: string, label: string, extension: string, iconClass: ?string, iconSvgInline: ?string, mimetypes: string[], ratio: ?float, actionLabel: string} + * @return array{app: string, label: string, extension: string, iconClass: ?string, iconSvgInline: ?string, mimetypes: list<string>, ratio: ?float, actionLabel: string} */ public function jsonSerialize(): array { return [ |