Skip to content

[Bug?]: Solid Start parses every TypeScript file as TSX #1655

Closed

Description

@AFatNiBBa

Duplicates

  • I have searched the existing issues

Latest version

  • I have tested the latest version

Current behavior 😯

I have a TypeScript dependency (Not transpiled) that uses the alternative cast syntax (<any>{} instead of {} as any), which is allowed in ".ts" files but not in ".tsx".
When I import that dependency it throws a syntax error because EVERY file is interpreted as TSX

Expected behavior 🤔

Normal ".ts" files should NOT behave as ".tsx"

Steps to reproduce 🕹

Steps:

  1. Create a new bare Solid Start project with TypeScript (npm init solid)
  2. Go inside the "src" directory and create a file named "a.ts" containing export default <any>{};
  3. Add this (↓) to "app.tsx"
import a from "./a";
console.log(a);

You'll get an error like this one
image

Context 🔦

I tried specifying the extensions option in the config, but here it's being added instead of overriding the default one

import { defineConfig } from "@solidjs/start/config";

export default defineConfig({
    extensions: [ "jsx", "tsx" ]
});

I suggest changing that line into

const extensions = start.extensions || DEFAULT_EXTENSIONS;

Or even better, this one into

const DEFAULT_EXTENSIONS = ["jsx", "tsx"];

Note

This is just a partial suggestion, since I noticed that doing this has the side effect of breaking ".ts" API routes

Your environment 🌎

I don't know what command you are talking about, sorry (Luckily, I don't think it matters anyway)

System:
  OS: Windows 11
  CPU: (16) x64
Binaries:
  Node: v22.8.0
  npm: 10.8.2
npmPackages:
  @solidjs/start@1.0.9
  solid-js@1.9.2
  vinxi@0.4.3

Activity

  1. huseeiin commented on Jan 31, 2025

    @huseeiin
    Contributor

    this is babel

  2. AFatNiBBa commented on Feb 9, 2025

    @AFatNiBBa
    Author

    Interesting...
    Then I wonder why the behaviour is different with normal solid

  3. atilafassina commented on Feb 12, 2025

    @atilafassina
    Member

    Interesting... Then I wonder why the behaviour is different with normal solid

    likely something to do with the way Vinxi configures the Solid plugin.
    I marked as Vinxi issue and added the needs triage so we can dig on this

  4. AFatNiBBa commented on Feb 12, 2025

    @AFatNiBBa
    Author

    Thanks

  5. PeterDraex commented on Apr 4, 2025

    @PeterDraex

    Is there any workaround for this? And way to fix the babel config without breaking .ts API routes?

  6. birkskyum commented on Jul 25, 2026

    @birkskyum
    Member

    Closed as a SolidStart v1 bug. If you experience anything like it with SolidStart v2 (currently in RC), feel free to reopen with a fresh reproduction.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions