atomicojs / atomico

Atomico a micro-library for creating webcomponents using only functions, hooks and virtual-dom.
https://atomicojs.dev
MIT License
1.15k stars 43 forks source link

Context does not work with SSR #98

Open efoken opened 1 year ago

efoken commented 1 year ago

Describe the bug When using createContext, SSR is broken for me. I'm getting this errors in the console when starting Next.js:

ReferenceError: CustomEvent is not defined
     at dispatchEvent (file:///Users/eike.foken/Code/test-ui/node_modules/.pnpm/atomico@1.65.0/node_modules/atomico/src/element/set-prototype.js:95:50)
     at ref.<computed> (file:///Users/eike.foken/Code/test-ui/node_modules/.pnpm/atomico@1.65.0/node_modules/atomico/src/hooks/custom-hooks/use-event.js:11:13)
     at detectContext (file:///Users/eike.foken/Code/test-ui/node_modules/.pnpm/atomico@1.65.0/node_modules/atomico/src/context.js:21:9)
     at load (file:///Users/eike.foken/Code/test-ui/node_modules/.pnpm/atomico@1.65.0/node_modules/atomico/src/hooks/hooks.js:19:56)
     at file:///Users/eike.foken/Code/test-ui/node_modules/.pnpm/atomico@1.65.0/node_modules/atomico/src/hooks/hooks.js:21:24
     at useHook (file:///Users/eike.foken/Code/test-ui/node_modules/.pnpm/atomico@1.65.0/node_modules/atomico/src/hooks/create-hooks.js:14:15)
     at useState (file:///Users/eike.foken/Code/test-ui/node_modules/.pnpm/atomico@1.65.0/node_modules/atomico/src/hooks/hooks.js:17:12)
     at useContext (file:///Users/eike.foken/Code/test-ui/node_modules/.pnpm/atomico@1.65.0/node_modules/atomico/src/context.js:35:49)
     at useTheme (webpack-internal:///../packages/styles/src/theme/theme-provider.ts:19:68)

And also later on (if I polyfill CustomEvent with an empty function):

TypeError: node.dispatchEvent is not a function

Expected behavior No errors in console

*SSR/SSG environment (Optional, required if the problem is caused by using SSR/SSG, please complete the following information):