web
web copied to clipboard
Named import from CommonJS module is broken
I have the following module as entry point to import enum variable from commonJS module.
index.js module
import commonExport from './common.js';
import { NetworkTypes } from './common.js';
console.info('default import NetworkTypes', commonExport.NetworkTypes);
console.info('Named import', NetworkTypes);
common.js module
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.SingOnMethod = exports.NetworkTypes = void 0;
var SingOnMethod;
(function (SingOnMethod) {
SingOnMethod["Iframe"] = "iframe";
SingOnMethod["Popup"] = "popup";
SingOnMethod["Tab"] = "tab";
})(SingOnMethod = exports.SingOnMethod || (exports.SingOnMethod = {}));
var NetworkTypes;
(function (NetworkTypes) {
NetworkTypes["Public"] = "public";
NetworkTypes["Private"] = "private";
})(NetworkTypes = exports.NetworkTypes || (exports.NetworkTypes = {}));
@web/dev-server result
There is no "NetworkTypes" export name in "common.js" module.
import commonExport from './common.js';
import { NetworkTypes } from './common.js';
console.info('default import NetworkTypes', commonExport.NetworkTypes);
console.info('Named import', NetworkTypes);
common.js module
export default /*@__PURE__*/commonjsHelpers.getDefaultExportFromCjs(common);
export { common as __moduleExports };
Rollup.js result
It works fine on Rollup.js because named import is changed while generating chunk process.
import commonExport from './common.js';
import { __exports as common } from './_virtual/common.js';
console.info('default import NetworkTypes', commonExport.NetworkTypes);
console.info('Named import', common.NetworkTypes);
Demo Repository https://github.com/Soul-Master/web-dev-server-2386
Online Demo https://stackblitz.com/edit/stackblitz-starters-athhpx?file=index.js