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

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions