-
Notifications
You must be signed in to change notification settings - Fork 724
Open
Description
Given the following code based on /home/lach/.cache/deno/npm/registry.npmjs.org/qs/6.14.0/lib/formats.js
var replace = String.prototype.replace;
var percentTwenties = /%20/g;
var Format = {
RFC3986: 'RFC3986'
};
module.exports = {
'default': Format.RFC3986,
formatters: {
RFC3986: function (value) {
return String(value);
}
},
RFC3986: Format.RFC3986
};
Fresh produces the following:
+ var exports = {},
+ module = {};
+ Object.defineProperty(module, "exports", {
+ get() {
+ return exports;
+ },
+ set(value) {
+ exports = value;
+ }
+ });
var replace = String.prototype.replace;
var percentTwenties = /%20/g;
var Format = {
RFC3986: 'RFC3986'
};
module.exports = {
'default': Format.RFC3986,
formatters: {
RFC3986: function (value) {
return String(value);
}
},
RFC3986: Format.RFC3986
};
+ var _formatters = exports.formatters;
+ var _RFC = exports.RFC3986;
+ export { _formatters as formatters, _RFC as RFC3986 };
+ const _default = exports.default ?? exports;
+ _default.formatters = _formatters;
+ _default.RFC3986 = _RFC;
+ export default _default;
+ export var __require = exports;
That crashes with the following error: TypeError: Cannot create property 'formatters' on string 'RFC3986'
Altering the default export like this doesn't seem to be right, perhaps this part:
const _default = exports.default ?? exports;
_default.formatters = _formatters;
_default.RFC3986 = _RFC;
Should be rewritten as
let _default;
if ('default' in exports) {
_default = exports.default;
} else {
_default = exports;
_default.formatters = _formatters;
_default.RFC3986 = _RFC;
}
instead.
Metadata
Metadata
Assignees
Labels
No labels