Skip to content

Commit

Permalink
Fix incorrect module path when absoluteRuntime is specified (#11893)
Browse files Browse the repository at this point in the history
* - Added failing tests for issue #11885.

* - Fix issue #11885: absoluteRuntime does not work as expected with corejs3.

* - Removed helper code from test output files (tests for issue #11885).

* chore: add @babel/runtime-corejs3 to dev deps

* chore: update test fixtures

Co-authored-by: Hu谩ng J霉nli脿ng <jlhwung@gmail.com>
  • Loading branch information
sz-coder and JLHwung committed Jul 30, 2020
1 parent 164a939 commit 4ce1b70
Show file tree
Hide file tree
Showing 8 changed files with 116 additions and 3 deletions.
1 change: 1 addition & 0 deletions packages/babel-plugin-transform-runtime/package.json
Expand Up @@ -35,6 +35,7 @@
"@babel/plugin-transform-typeof-symbol": "^7.10.4",
"@babel/preset-env": "^7.10.4",
"@babel/runtime": "^7.10.5",
"@babel/runtime-corejs3": "^7.10.5",
"@babel/template": "^7.10.4",
"@babel/types": "^7.10.5"
}
Expand Down
6 changes: 3 additions & 3 deletions packages/babel-plugin-transform-runtime/src/index.js
Expand Up @@ -310,7 +310,7 @@ export default declare((api, options, dirname) => {
node.callee = t.memberExpression(
t.callExpression(
this.addDefaultImport(
`${moduleName}/${corejsRoot}/instance/${InstanceProperties[propertyName].path}`,
`${modulePath}/${corejsRoot}/instance/${InstanceProperties[propertyName].path}`,
`${propertyName}InstanceProperty`,
),
[context2],
Expand Down Expand Up @@ -379,7 +379,7 @@ export default declare((api, options, dirname) => {
path.replaceWith(
t.callExpression(
this.addDefaultImport(
`${moduleName}/core-js/get-iterator-method`,
`${modulePath}/core-js/get-iterator-method`,
"getIteratorMethod",
),
[object],
Expand Down Expand Up @@ -407,7 +407,7 @@ export default declare((api, options, dirname) => {
path.replaceWith(
t.callExpression(
this.addDefaultImport(
`${moduleName}/${corejsRoot}/instance/${InstanceProperties[propertyName].path}`,
`${modulePath}/${corejsRoot}/instance/${InstanceProperties[propertyName].path}`,
`${propertyName}InstanceProperty`,
),
[object],
Expand Down
@@ -0,0 +1,8 @@
Array.map;
function* makeIterator() {
yield 1;
yield 2;
}
for (const itItem of makeIterator()) {
console.log(itItem);
}
@@ -0,0 +1,7 @@
{
"presets": ["env"],
"plugins": [
["transform-runtime", { "absoluteRuntime": true, "corejs": { "version": 3, "proposals": true } }],
["external-helpers", { "helperVersion": "7.100.0" }]
]
}
@@ -0,0 +1,41 @@
var _regeneratorRuntime = require("<CWD>/packages/babel-plugin-transform-runtime/node_modules/@babel/runtime-corejs3/regenerator");

var _mapInstanceProperty = require("<CWD>/packages/babel-plugin-transform-runtime/node_modules/@babel/runtime-corejs3/core-js/instance/map");

var _marked = /*#__PURE__*/_regeneratorRuntime.mark(makeIterator);

_mapInstanceProperty(Array);

function makeIterator() {
return _regeneratorRuntime.wrap(function makeIterator$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return 1;

case 2:
_context.next = 4;
return 2;

case 4:
case "end":
return _context.stop();
}
}
}, _marked);
}

var _iterator = babelHelpers.createForOfIteratorHelper(makeIterator()),
_step;

try {
for (_iterator.s(); !(_step = _iterator.n()).done;) {
var itItem = _step.value;
console.log(itItem);
}
} catch (err) {
_iterator.e(err);
} finally {
_iterator.f();
}
@@ -0,0 +1,8 @@
Array.map;
function* makeIterator() {
yield 1;
yield 2;
}
for (const itItem of makeIterator()) {
console.log(itItem);
}
@@ -0,0 +1,7 @@
{
"presets": ["env"],
"plugins": [
["transform-runtime", { "absoluteRuntime": true, "corejs": { "version": 3, "proposals": false } }],
["external-helpers", { "helperVersion": "7.100.0" }]
]
}
@@ -0,0 +1,41 @@
var _regeneratorRuntime = require("<CWD>/packages/babel-plugin-transform-runtime/node_modules/@babel/runtime-corejs3/regenerator");

var _mapInstanceProperty = require("<CWD>/packages/babel-plugin-transform-runtime/node_modules/@babel/runtime-corejs3/core-js-stable/instance/map");

var _marked = /*#__PURE__*/_regeneratorRuntime.mark(makeIterator);

_mapInstanceProperty(Array);

function makeIterator() {
return _regeneratorRuntime.wrap(function makeIterator$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return 1;

case 2:
_context.next = 4;
return 2;

case 4:
case "end":
return _context.stop();
}
}
}, _marked);
}

var _iterator = babelHelpers.createForOfIteratorHelper(makeIterator()),
_step;

try {
for (_iterator.s(); !(_step = _iterator.n()).done;) {
var itItem = _step.value;
console.log(itItem);
}
} catch (err) {
_iterator.e(err);
} finally {
_iterator.f();
}

0 comments on commit 4ce1b70

Please sign in to comment.