Wasp Version: 0.16.0 NodeJS Version: 22.13.0 OS: WSL Template: OpenSaaS
I'm new to Wasp and NodeJS in general, but have been making some good progress on my project. However, I've tried to separate some of my logic into a shared file I'm now having problems when referencing files on relative paths.
I have a file in src/queries/resellers.ts that has an import of:
import { getUserAccessTree } from '../utils/accessTree';
import { getUserAccessTree } from '../utils/accessTree';
The file does exist correctly at src/utils/accessTree.ts and VSCode can find the path with no errors.
When I run Wasp though, I get the error:
[ Server!] Error [ERR_MODULE_NOT_FOUND]: Cannot find module '<path_to_project>/app/.wasp/out/sdk/wasp/dist/ext-src/utils/accessTree' imported from <path_to_project>/app/.wasp/out/sdk/wasp/dist/ext-src/queries/reseller.js[ Server!] at finalizeResolution (node:internal/modules/esm/resolve:275:11)[ Server!] at moduleResolve (node:internal/modules/esm/resolve:932:10)[ Server!] at defaultResolve (node:internal/modules/esm/resolve:1056:11)[ Server!] at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:654:12)[ Server!] at #cachedDefaultResolve (node:internal/modules/esm/loader:603:25)[ Server!] at ModuleLoader.resolve (node:internal/modules/esm/loader:586:38)[ Server!] at ModuleLoader.getModuleJobForImport (node:internal/modules/esm/loader:242:38)[ Server!] at ModuleJob._link (node:internal/modules/esm/module_job:135:49) {[ Server!] code: 'ERR_MODULE_NOT_FOUND',[ Server!] url: 'file:///<path_to_project>/app/.wasp/out/sdk/wasp/dist/ext-src/utils/accessTree'
[ Server!] Error [ERR_MODULE_NOT_FOUND]: Cannot find module '<path_to_project>/app/.wasp/out/sdk/wasp/dist/ext-src/utils/accessTree' imported from <path_to_project>/app/.wasp/out/sdk/wasp/dist/ext-src/queries/reseller.js[ Server!] at finalizeResolution (node:internal/modules/esm/resolve:275:11)[ Server!] at moduleResolve (node:internal/modules/esm/resolve:932:10)[ Server!] at defaultResolve (node:internal/modules/esm/resolve:1056:11)[ Server!] at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:654:12)[ Server!] at #cachedDefaultResolve (node:internal/modules/esm/loader:603:25)[ Server!] at ModuleLoader.resolve (node:internal/modules/esm/loader:586:38)[ Server!] at ModuleLoader.getModuleJobForImport (node:internal/modules/esm/loader:242:38)[ Server!] at ModuleJob._link (node:internal/modules/esm/module_job:135:49) {[ Server!] code: 'ERR_MODULE_NOT_FOUND',[ Server!] url: 'file:///<path_to_project>/app/.wasp/out/sdk/wasp/dist/ext-src/utils/accessTree'
Technically this is correct based on the url specified at the bottom as there is no file called "accessTree" at that path, but there is an "accessTree.js" file along with "accessTree.d.ts" and "accessTree.js.map"
Is there a proper structure I should be following for shared utility files like this or some configuration setting that I need for wasp to compile and reference it any differently?