react-client-sdk
react-client-sdk copied to clipboard
Misconfigured package doesn't play well with Remix
Describe the bug The NPM package is misconfigured with regards to esm/cjs types and as such certain build tools like Remix will not build successfully.
To reproduce Make a Remix app in SPA mode Add launchdarkly-react-client-sdk Build
Expected behavior Should build successfully.
Logs
import { useFlags } from "launchdarkly-react-client-sdk";
^^^^^^^^
SyntaxError: Named export 'useFlags' not found. The requested module 'launchdarkly-react-client-sdk' is a CommonJS module, which may not support all module.exports as named exports.
CommonJS modules can always be imported via the default export, for example using:
import pkg from 'launchdarkly-react-client-sdk';
const { useFlags } = pkg;
SDK version 3.0.10
Language version, developer tools
OS/platform Mac or Windows.
Additional context
Recommended fixes: https://publint.dev/[email protected]
Hello @mikecousins, thank you for reporting the issue. We will take a look at it and report back once we see can we apply the recommended fix (or if we have other suggestions).
Filed internally as 230629.
For now I forked it at: https://github.com/mikecousins/launchdarkly-react-client-sdk
I then released this package which works great with Next/Remix/etc: https://www.npmjs.com/package/@mikecousins/launchdarkly-react-client-sdk
I'm also experiencing this issue when I create a package in a monorepo with LaunchDarkly React SDK wrapper and use it in an application built with Vite. I get the same error as @mikecousins when running Vitest in the Vite application.
@louis-launchdarkly Are there any updates on when this will be updated?