diff --git a/packages/babel-helpers/src/helpers.js b/packages/babel-helpers/src/helpers.js index a4f9c49eed..0329ff4dd0 100644 --- a/packages/babel-helpers/src/helpers.js +++ b/packages/babel-helpers/src/helpers.js @@ -7,7 +7,7 @@ export default helpers; // Helpers never include placeholders, so we disable placeholder pattern // matching to allow us to use pattern-like variable names. -const defineHelper = template({ placeholderPattern: false }); +const defineHelper = template.program({ placeholderPattern: false }); helpers.typeof = defineHelper(` export default function _typeof(obj) { diff --git a/packages/babel-helpers/src/index.js b/packages/babel-helpers/src/index.js index 641d1bab9a..44cd492c07 100644 --- a/packages/babel-helpers/src/index.js +++ b/packages/babel-helpers/src/index.js @@ -232,8 +232,7 @@ function loadHelper(name) { if (!helpers[name]) throw new ReferenceError(`Unknown helper ${name}`); const fn = () => { - const ast = helpers[name](); - return t.file(t.program(Array.isArray(ast) ? ast : [ast])); + return t.file(helpers[name]()); }; const metadata = getHelperMetadata(fn()); diff --git a/packages/babel-helpers/test/helpers/define-helper.js b/packages/babel-helpers/test/helpers/define-helper.js index ee62c00c48..69cc39e7a9 100644 --- a/packages/babel-helpers/test/helpers/define-helper.js +++ b/packages/babel-helpers/test/helpers/define-helper.js @@ -17,7 +17,7 @@ export default function defineHelper( throw new Error(`The ${id} helper is already defined.`); } Object.defineProperty(helpers, id, { - value: template(code), + value: template.program(code), }); return id; }