Skip to content

Conversation

@ivanhofer
Copy link
Contributor

Please don't delete this checklist! Before submitting the PR, please make sure you do the following:

  • It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs
  • This message body should clearly illustrate what problems it solves.
  • Ideally, include a test that fails without this PR but passes with it.

Tests

  • Run the tests with pnpm test and lint the project with pnpm lint and pnpm check

Changesets

  • If your PR makes a change that should be noted in one or more packages' changelogs, generate a changeset by running pnpx changeset and following the prompts. All changesets should be patch until SvelteKit 1.0

Same fix as here: #4160
But this time for the generated Load type.

I also have restricted all the Params and Props types with the extends keyword.
Maybe it makes sense to create a "base type" and use it everywhere:

+type BaseParams = Record<string, string> +type BaseProps = Record<string, any> export interface Load< -Params extends Record<string, string> = Record<string, string>, -InputProps extends Record<string, any> = Record<string, any>, -OutputProps extends Record<string, any> = InputProps +Params extends BaseParams = BaseParams, +InputProps extends BaseProps = BaseProps, +OutputProps extends BaseProps = InputProps > {	(input: LoadInput<Params, InputProps>): MaybePromise<	Either<Fallthrough, LoadOutput<OutputProps>>	>; } 
@changeset-bot
Copy link

changeset-bot bot commented Mar 12, 2022

🦋 Changeset detected

Latest commit: 2d367e7

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@sveltejs/kit Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@ivanhofer
Copy link
Contributor Author

ivanhofer commented Mar 12, 2022

I also have noticed the same issue with the generated RequestHandler type.
It was already included in the docs but the generated type was wrong. I included the fix in this PR.

I'm not sure what to do with the Body type from the "private" types. Can I move it to index.d.ts?

@Rich-Harris
Copy link
Member

Thanks! Yeah, it makes sense to expose Body. I've updated this PR so that it's exposed as ResponseBody

@Rich-Harris Rich-Harris merged commit 9d726f1 into sveltejs:master Mar 14, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

3 participants