Prevent needing to use Method
enum with the Link
component
#1392
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR fixes an issue where TypeScript users now need to use the
Method
enum with theLink
component.Prior to 1.0, the
Method
enum was only needed when callingInertia.visit()
in TypeScript, but in most cases, people were probably using the shortcut methods that bypass the need to specify themethod
argument.When the adapters were converted to TypeScript, their existing type definitions specified the
method
prop as astring
, but this was not compatible with the stricter definition that already existed in core. Rather than loosening the definition in core, I opted to make the adapter definitions compatible. In hindsight, this creates an unnecessary burden on TypeScript users.As suggested in #1384 (comment), this PR introduces a union type that offers the same type safety but without needing to import the type.
Removing the existing enum would be a breaking change, so this PR just deprecates it for now.
Fixes #1384