From f656b70634f008ff36636a03ae0f6238c63720b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Ribaudo?= Date: Sat, 18 Feb 2023 18:18:48 +0100 Subject: [PATCH] Move decorators to Stage 3 in `@babel/standalone` (#15430) --- packages/babel-standalone/src/preset-stage-2.ts | 14 +------------- packages/babel-standalone/src/preset-stage-3.ts | 16 +++++++++++++++- 2 files changed, 16 insertions(+), 14 deletions(-) diff --git a/packages/babel-standalone/src/preset-stage-2.ts b/packages/babel-standalone/src/preset-stage-2.ts index 09660d13a89c..d1bd3788d1a2 100644 --- a/packages/babel-standalone/src/preset-stage-2.ts +++ b/packages/babel-standalone/src/preset-stage-2.ts @@ -3,26 +3,14 @@ import * as babelPlugins from "./generated/plugins"; export default (_: any, opts: any = {}) => { const { - loose = false, - useBuiltIns = false, - decoratorsLegacy = false, - decoratorsVersion = "2018-09", - decoratorsBeforeExport, pipelineProposal = "minimal", pipelineTopicToken = "%", recordAndTupleSyntax = "hash", } = opts; return { - presets: [[presetStage3, { loose, useBuiltIns }]], + presets: [[presetStage3, opts]], plugins: [ - [ - babelPlugins.proposalDecorators, - { - version: decoratorsLegacy ? "legacy" : decoratorsVersion, - decoratorsBeforeExport, - }, - ], babelPlugins.proposalDestructuringPrivate, [ babelPlugins.proposalPipelineOperator, diff --git a/packages/babel-standalone/src/preset-stage-3.ts b/packages/babel-standalone/src/preset-stage-3.ts index f4f67041caa4..56749b82e9e1 100644 --- a/packages/babel-standalone/src/preset-stage-3.ts +++ b/packages/babel-standalone/src/preset-stage-3.ts @@ -1,11 +1,25 @@ import * as babelPlugins from "./generated/plugins"; -export default (_: any, { loose = false } = {}) => { +export default (_: any, opts: any = {}) => { + const { + loose = false, + decoratorsLegacy = false, + decoratorsVersion = "2018-09", + decoratorsBeforeExport, + } = opts; + // todo(flow->ts) improve types const plugins: any[] = [ babelPlugins.syntaxImportAssertions, babelPlugins.proposalUnicodeSetsRegex, babelPlugins.proposalDuplicateNamedCapturingGroupsRegex, + [ + babelPlugins.proposalDecorators, + { + version: decoratorsLegacy ? "legacy" : decoratorsVersion, + decoratorsBeforeExport, + }, + ], ]; if (!process.env.BABEL_8_BREAKING) {