api-platform / api-platform/create-client

Error when generating typescript for an endpoint named "resource"

Offen
#389 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
TypeScript
Sterne
376
Forks
132
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

**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!
```

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.