shared패키지에서 절대 경로 사용 시 에러가 발생한다.

패키지의 단독 빌드에는 문제가 없다.
import { MemoStorage } from "../bridge/shared";
export const backupMemo = () => __async(void 0, null, function* () {
const memoStorage = yield MemoStorage.get();
return memoStorage;
});

이 패키지를 사용하려는 측에서 에러가 발생한다.

에러 재현을 위해 변화를 준 파일은 shared패키지의 config.ts이다.
// packages/shared/src/constants/config.ts
import { getSafeConfig } from '@src/utils';
위와 같이 shared패키지에서 절대경로를 사용하니 에러가 발생했다.
정리하면, 절대 경로를 변환하지 못한 것이다. new-tab에서 utils사용을 추가하지 않았는데 utils를 찾지 못했다고 에러가 발생한 것을 보면, 빌드 과정에서 절대 경로를 상대 경로로 변환하지 못한 것이다.
빌드 파일을 확인해보고, 빌드 과정에서 절대 경로를 상대 경로로 변경하는 옵션을 추가하면 해결이 될 듯하다.
빌드 파일 확인
// packages/shared/dist/src/constants/config.js
import { getSafeConfig } from "@src/utils";
역시 변환이 안되어있다.
공식문서
유사한 내용이 없다.
구글링
관련 이슈
https://github.com/evanw/esbuild/issues/2191
bundle 활성화
var getSafeConfig = (name, value) => {
if (value === void 0) throw new Error(`${name}\uC774 \uC124\uC815\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4.`);
else return value;
};
여전히 에러가 뜬다.
boilerplate 코드 clone해서 실행해보기
여전히 에러가 뜬다.
esbuild환경 직접 세팅해보기