api-platform / api-platform/create-client

Error when generating typescript for an endpoint named "resource"

Aperta
#389 1 commento 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
TypeScript
Stelle
376
Fork
132
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

**API Platform version(s) affected**: 4.0.8

**Description**
When generating typescript types using the command `npm init @api-platform/client http://localhost apiTypes -- --generator typescript` I get the following error:

`Error: Cannot find the class related to http://localhost:8095/docs.jsonld#Entrypoint/resource.`

This only occurs if I have an ApiResource/Entity named 'Resource'. Renaming it resolves the error.

**How to reproduce**
Create an API resource as below, and then run`npm init @api-platform/client http://localhost apiTypes -- --generator typescript`:

```php
namespace App\Entity;

use ApiPlatform\Metadata\ApiResource;
use App\Repository\ResourceRepository;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Uid\Uuid;

#[ORM\Entity(repositoryClass: ResourceRepository::class)]
#[ApiResource]
class Resource
{
#[ORM\Id]
#[ORM\Column(type: 'uuid', unique: true)]
private ?Uuid $id;

#[ORM\Column(length: 255)]
private ?string $name = null;

#[ORM\Column]
private ?\DateTimeImmutable $createdAt;

public function getId(): ?Uuid
{
return $this->id;
}

public function __construct()
{
$this->id = Uuid::v4();
$this->createdAt = new \DateTimeImmutable();
}

public function getName(): ?string
{
return $this->name;
}

public function setName(string $name): static
{
$this->name = $name;

return $this;
}

public function getCreatedAt(): ?\DateTimeImmutable
{
return $this->createdAt;
}

public function setCreatedAt(\DateTimeImmutable $createdAt): static
{
$this->createdAt = $createdAt;

return $this;
}
}

```

Changing the shortname resolves the issue:

```php
#[ApiResource(
shortName: 'Res'
)]
```

```
> npm init @api-platform/client http://localhost apiTypes -- --generator typescript

Interface for the "Res" resource type has been generated!
Interface for the "User" resource type has been generated!
```

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.