Skip to content

Type errors when generating with Livewire installed #97

@aihowes

Description

@aihowes

Wayfinder Version

0.1.12

Laravel Version

12.28.1

PHP Version

8.3

Description

I have a project that uses Filament as an admin panel (which in turn includes Livewire)

Wayfinder generates Livewire/Mechanisms/FrontendAssets and Livewire/Mechanisms/HandleRequest actions.

When testing types in my project, these two files are failing. These are the errors.

resources/js/wayfinder/actions/Livewire/Mechanisms/FrontendAssets/index.ts:1:8 - error TS2440: Import declaration conflicts with local declaration of 'FrontendAssets'.

1 import FrontendAssets from './FrontendAssets'
         ~~~~~~~~~~~~~~

resources/js/wayfinder/actions/Livewire/Mechanisms/FrontendAssets/index.ts:3:7 - error TS7022: 'FrontendAssets' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer.

3 const FrontendAssets = {
        ~~~~~~~~~~~~~~

resources/js/wayfinder/actions/Livewire/Mechanisms/FrontendAssets/index.ts:4:35 - error TS2448: Block-scoped variable 'FrontendAssets' used before its declaration.

4     FrontendAssets: Object.assign(FrontendAssets, FrontendAssets),
                                    ~~~~~~~~~~~~~~

  resources/js/wayfinder/actions/Livewire/Mechanisms/FrontendAssets/index.ts:3:7
    3 const FrontendAssets = {
            ~~~~~~~~~~~~~~
    'FrontendAssets' is declared here.

resources/js/wayfinder/actions/Livewire/Mechanisms/FrontendAssets/index.ts:4:51 - error TS2448: Block-scoped variable 'FrontendAssets' used before its declaration.

4     FrontendAssets: Object.assign(FrontendAssets, FrontendAssets),
                                                    ~~~~~~~~~~~~~~

  resources/js/wayfinder/actions/Livewire/Mechanisms/FrontendAssets/index.ts:3:7
    3 const FrontendAssets = {
            ~~~~~~~~~~~~~~
    'FrontendAssets' is declared here.

resources/js/wayfinder/actions/Livewire/Mechanisms/HandleRequests/index.ts:1:8 - error TS2440: Import declaration conflicts with local declaration of 'HandleRequests'.

1 import HandleRequests from './HandleRequests'
         ~~~~~~~~~~~~~~

resources/js/wayfinder/actions/Livewire/Mechanisms/HandleRequests/index.ts:3:7 - error TS7022: 'HandleRequests' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer.

3 const HandleRequests = {
        ~~~~~~~~~~~~~~

resources/js/wayfinder/actions/Livewire/Mechanisms/HandleRequests/index.ts:4:35 - error TS2448: Block-scoped variable 'HandleRequests' used before its declaration.

4     HandleRequests: Object.assign(HandleRequests, HandleRequests),
                                    ~~~~~~~~~~~~~~

  resources/js/wayfinder/actions/Livewire/Mechanisms/HandleRequests/index.ts:3:7
    3 const HandleRequests = {
            ~~~~~~~~~~~~~~
    'HandleRequests' is declared here.

resources/js/wayfinder/actions/Livewire/Mechanisms/HandleRequests/index.ts:4:51 - error TS2448: Block-scoped variable 'HandleRequests' used before its declaration.

4     HandleRequests: Object.assign(HandleRequests, HandleRequests),
                                                    ~~~~~~~~~~~~~~

  resources/js/wayfinder/actions/Livewire/Mechanisms/HandleRequests/index.ts:3:7
    3 const HandleRequests = {
            ~~~~~~~~~~~~~~
    'HandleRequests' is declared here.

Steps To Reproduce

  • Install fresh laravel react starter kit
  • composer require livewire/livewire
  • npm run build
  • npm run types

Metadata

Metadata

Assignees

No one assigned

    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