Skip to content
This repository was archived by the owner on Mar 5, 2023. It is now read-only.
This repository was archived by the owner on Mar 5, 2023. It is now read-only.

Typescript path aliases cannot be used #23

Open

Description

@danielkcz

I am using path aliases quite heavily. An example of my tsconfig.json.

{
  "compilerOptions": {
    "baseUrl": "src",
    "paths": {
      "~machinery/graphql": ["generated/machinerygraphql"],
      "~machinery/*": ["*"],
      "~tools/*": ["../../tools/src/*"]
    },
  },
}

Then in the code I can do eg. import { getNow } from '~tools/timing'. Works like a charm with other tooling (after some hassle).

However, running xstate-codegen I am getting Error: Cannot find module '~tools/timing'.

I suppose based on the #21 (comment) it should be solved when transition is done?

Activity

  1. mattpocock commented on Sep 12, 2020

    @mattpocock
    Owner

    This makes sense why this wouldn't work, rollup doesn't know about your aliases. Another reason why the transition mentioned in #21 makes sense.

    As with that comment, a workaround is to extract the machines into their own file which doesn't use aliases. Is that workable for you?

  2. danielkcz commented on Sep 12, 2020

    @danielkcz
    Author

    workaround is to extract the machines into their own file which doesn't use aliases. Is that workable for you?

    Not really, because those imported functions are an inherent part of the machine. I am even used to splitting everything like this and the main bootMachine.ts does not have any aliased imports.

    image

    It's alright, I will wait for the transition. You are doing a great thing here. Looking forward to a moment when all these nasty edge cases are figured out.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions