Closed VictorS67 closed 3 weeks ago
Current solution for importing getRecordId()
from backend is never import that to frontend.
The function is re-structured in the @encrejs/web
so that it is the same as getRecordId()
in the backend:
utils/fakeId.ts
:
import { customAlphabet } from 'nanoid';
import { RecordId } from 'internal/src/types/encre';
export function fakeId(length: number): string {
const _alphabet =
'0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz@';
const nanoid = customAlphabet(_alphabet, 17);
return nanoid() as RecordId;
}
Another issue from importing extMap
from backend is now fixed. DO NOT import any constant from the backend.
What happened?
When I run
yarn workspace @encrejs/web start:browser
and openhttp://localhost:3001/
, I can only see blank page (500 Internal Error).I found out that the error occurs because I import
getRecordId()
andextMap
frominternal/src/types/encre
, where those are imported from@encrejs/api
. I assume these imports brings some node-specific package into the React App. Please see the error message from console in below.What was the expected behavior?
The pages should be rendered correctly. Currently, my workaround is mock
getRecordId()
andextMap
in the React App. (seefakeId()
inapp/src/utils/fakeId
, andexpMap
inapp/src/components/descriptors/ImageDescriptor
orapp/src/components/descriptors/FileDescriptor
orapp/src/components/AudioVisualizer
). But I'm expected better solution than this.Describe your environment
MacOS 10.14.6
Node version: v20.15.0
Relevant log output
Relevant screenshots
Screenshot of the web console when blank page occurs:
Code of Conduct