Skip to content

Named export createOverflowHandler not foundΒ #1083

@s100

Description

@s100

To recreate this bug:

// a.mjs
import * as toolbar from '@carbon/ai-chat-components/es/components/toolbar/src/toolbar.js'
console.log(toolbar)
npm install @carbon/ai-chat-components@0.10.0 --exact
node a.mjs

Output:

file:///C:/.../node_modules/@carbon/ai-chat-components/es/components/toolbar/src/toolbar.js:15
import { createOverflowHandler } from '@carbon/utilities';
         ^^^^^^^^^^^^^^^^^^^^^
SyntaxError: Named export 'createOverflowHandler' not found. The requested module '@carbon/utilities' 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 '@carbon/utilities';
const { createOverflowHandler } = pkg;

    at ModuleJob._instantiate (node:internal/modules/esm/module_job:228:21)
    at async ModuleJob.run (node:internal/modules/esm/module_job:337:5)
    at async onImport.tracePromise.__proto__ (node:internal/modules/esm/loader:651:26)
    at async asyncRunEntryPointWithESMLoader (node:internal/modules/run_main:117:5)

Node.js v22.19.0

This error comes from this line of code:

import { createOverflowHandler } from "@carbon/utilities";

The error message is pretty self-explanatory, @carbon/utilities is indeed CommonJS, it does not have named ESM exports, only a default export object. Replacing this line of code with:

import utilities from '@carbon/utilities'
const { createOverflowHandler } = utilities

does indeed fix the bug for us. I can open a PR if you wish.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    πŸ“© Inbox

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions