Skip to content

Multiline documentation with a graphql schema leads to unnececairy indent/code block formatting #1167

@mousetail

Description

@mousetail
Q A
Bug report? yes
Feature request? no
BC Break report? no
RFC? no
Version/Branch 1.2.0

I have a schema like this:

"""
A date time in RFC3339-Extended format.

Eg. 2023-03-02T14:12:12.1222Z
"""
scalar DateTime

However, it renders like this:

afbeelding

In the JSON schema:

"A date time in RFC3339-Extended format.\n            \n            Eg. 2023-03-02T14:12:12.1222Z"

It seems to be inserting unnecessary spaces after every line break.

Some more debug info

The generated class seems to have indented the string:

<?php
/**
 * THIS FILE WAS GENERATED AND SHOULD NOT BE EDITED MANUALLY.
 */
final class DateTimeType extends CustomScalarType implements GeneratedTypeInterface, AliasedInterface
{
    public const NAME = 'DateTime';
    
    public function __construct(ConfigProcessor $configProcessor, GraphQLServices $services)
    {
        $config = [
            'name' => self::NAME,
            'description' => 'A date time in RFC3339-Extended format.
            
            Eg. 2023-03-02T14:12:12.1222Z',
            'serialize' => fn() => CustomScalarNode::mustOverrideConfig(...\func_get_args()),
            'parseValue' => fn() => CustomScalarNode::mustOverrideConfig(...\func_get_args()),
            'parseLiteral' => fn() => CustomScalarNode::mustOverrideConfig(...\func_get_args()),
        ];

Using a double quoted string with escapes instead of actual newlines might be better, or wrapping it in a function that can properly remove the indentation.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions