Skip to content

Type reflection issues #798

@MirrorBytes

Description

@MirrorBytes

Describe the bug
Typescript metadata reflection does not seem to work at all. At first I thought it was related to the graphql adder, but it turns out that type-graphql works perfectly fine outside of sveltekit in an api folder served by vercel dev. This is not a permanent solution though considering there are existing issues pertaining to MIME types: #781.

Logs
This is produced in both the response and the dev console (not browser).

Error when evaluating SSR module /src/resolvers/user.ts:
Error: Unable to infer GraphQL type from TypeScript reflection system. You need to provide explicit type for argument named 'data' of 'register' of 'UserResolver' class.
    at Object.findType (/Users/bobby/Documents/phorm-kit-vercel/node_modules/type-graphql/dist/helpers/findType.js:19:15)
    at Object.getParamInfo (/Users/bobby/Documents/phorm-kit-vercel/node_modules/type-graphql/dist/helpers/params.js:10:49)
    at /Users/bobby/Documents/phorm-kit-vercel/node_modules/type-graphql/dist/decorators/Arg.js:14:25
    at eval (/src/resolvers/user.ts:14:54)
    at __decorate (/src/resolvers/user.ts:9:24)
    at eval (/src/resolvers/user.ts:74:1)
    at instantiateModule (/Users/bobby/Documents/phorm-kit-vercel/node_modules/vite/dist/node/chunks/dep-66eb515d.js:69030:166) (x18)
Error: Unable to infer GraphQL type from TypeScript reflection system. You need to provide explicit type for argument named 'data' of 'register' of 'UserResolver' class.
    at Object.findType (/Users/bobby/Documents/phorm-kit-vercel/node_modules/type-graphql/dist/helpers/findType.js:19:15)
    at Object.getParamInfo (/Users/bobby/Documents/phorm-kit-vercel/node_modules/type-graphql/dist/helpers/params.js:10:49)
    at /Users/bobby/Documents/phorm-kit-vercel/node_modules/type-graphql/dist/decorators/Arg.js:14:25
    at eval (/src/resolvers/user.ts:14:54)
    at __decorate (/src/resolvers/user.ts:9:24)
    at eval (/src/resolvers/user.ts:74:1)
    at instantiateModule (/Users/bobby/Documents/phorm-kit-vercel/node_modules/vite/dist/node/chunks/dep-66eb515d.js:69030:166)

To Reproduce
Create a new sveltekit project, use graphql adder, and create an object and resolver using type-graphql.
You can also look here: https://github.com/MirrorBytes/phorm-kit-vercel

Expected behavior
For metadata reflection to function.

Information about your SvelteKit Installation:

System:
    OS: macOS 11.2.3
    CPU: (8) arm64 Apple M1
    Memory: 373.55 MB / 8.00 GB
    Shell: 5.8 - /bin/zsh
  Binaries:
    Node: 15.12.0 - /opt/homebrew/bin/node
    Yarn: 1.22.10 - /opt/homebrew/bin/yarn
    npm: 7.7.5 - /opt/homebrew/bin/npm
  Browsers:
    Brave Browser: 89.1.22.70
    Safari: 14.0.3
  npmPackages:
    @sveltejs/kit: next => 1.0.0-next.64
    svelte: ^3.29.0 => 3.36.0
  • Your browser
    Brave & Safari

  • Your adapter (e.g. Node, static, Vercel, Begin, etc...)
    Vercel

Severity
How severe an issue is this bug to you? Is this annoying, blocking some users, blocking an upgrade or blocking your usage of SvelteKit entirely?

It's a hindrance to me and potentially anyone using TypeScript with decorators.
I'm reproducing an existing project that currently exists in plain Svelte, so it's just a mild inconvenience at the moment, but it's ultimately blocking me from moving forward with SvelteKit.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions