diff --git a/packages/babel-helper-create-class-features-plugin/src/index.ts b/packages/babel-helper-create-class-features-plugin/src/index.ts index 6698e246570a..a67b5715184c 100644 --- a/packages/babel-helper-create-class-features-plugin/src/index.ts +++ b/packages/babel-helper-create-class-features-plugin/src/index.ts @@ -96,6 +96,15 @@ export function createClassFeaturePlugin({ pre(file) { enableFeature(file, feature, loose); + if (!process.env.BABEL_8_BREAKING) { + // Until 7.21.4, we used to encode the version as a number. + // If file.get(versionKey) is a number, it has thus been + // set by an older version of this plugin. + if (typeof file.get(versionKey) === "number") { + file.set(versionKey, PACKAGE_JSON.version); + return; + } + } if ( !file.get(versionKey) || semver.lt(file.get(versionKey), PACKAGE_JSON.version) diff --git a/packages/babel-helper-create-regexp-features-plugin/src/index.ts b/packages/babel-helper-create-regexp-features-plugin/src/index.ts index 95c5cdda8c52..486628e733f7 100644 --- a/packages/babel-helper-create-regexp-features-plugin/src/index.ts +++ b/packages/babel-helper-create-regexp-features-plugin/src/index.ts @@ -82,8 +82,17 @@ export function createRegExpFeaturePlugin({ } } + if (!process.env.BABEL_8_BREAKING) { + // Until 7.21.4, we used to encode the version as a number. + // If file.get(versionKey) is a number, it has thus been + // set by an older version of this plugin. + if (typeof file.get(versionKey) === "number") { + file.set(versionKey, PACKAGE_JSON.version); + return; + } + } if ( - !file.has(versionKey) || + !file.get(versionKey) || semver.lt(file.get(versionKey), PACKAGE_JSON.version) ) { file.set(versionKey, PACKAGE_JSON.version);