From 5912e33ef3ef0e78fd206c1ee28c061ca246e384 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Ribaudo?= Date: Sat, 8 Jan 2022 22:44:51 +0100 Subject: [PATCH] Add transform support for the RegExp `unicodeSets` proposal --- .../src/parser/util/missing-plugin-helper.ts | 10 ++++ .../src/features.ts | 2 + .../src/index.ts | 4 ++ .../src/util.ts | 27 ++++++++--- .../.npmignore | 3 ++ .../README.md | 19 ++++++++ .../package.json | 48 +++++++++++++++++++ .../src/index.ts | 15 ++++++ .../test/fixtures/basic/basic/input.js | 1 + .../test/fixtures/basic/basic/options.json | 3 ++ .../test/fixtures/basic/basic/output.js | 1 + .../test/fixtures/basic/transform-u/input.js | 1 + .../fixtures/basic/transform-u/options.json | 3 ++ .../test/fixtures/basic/transform-u/output.js | 1 + .../test/index.js | 3 ++ .../test/package.json | 1 + .../.npmignore | 3 ++ .../README.md | 19 ++++++++ .../package.json | 48 +++++++++++++++++++ .../src/index.ts | 15 ++++++ .../fixtures/plugin-enabled/basic/input.js | 1 + .../plugin-enabled/basic/options.json | 3 ++ .../fixtures/plugin-enabled/basic/output.js | 1 + .../fixtures/plugin-missing/basic/input.js | 1 + .../plugin-missing/basic/options.json | 3 ++ .../plugin-missing/other-enabled/input.js | 1 + .../plugin-missing/other-enabled/options.json | 4 ++ .../test/index.js | 3 ++ .../test/package.json | 1 + tsconfig.json | 8 ++++ yarn.lock | 26 ++++++++++ 31 files changed, 273 insertions(+), 6 deletions(-) create mode 100644 packages/babel-plugin-proposal-unicode-sets-regex/.npmignore create mode 100644 packages/babel-plugin-proposal-unicode-sets-regex/README.md create mode 100644 packages/babel-plugin-proposal-unicode-sets-regex/package.json create mode 100644 packages/babel-plugin-proposal-unicode-sets-regex/src/index.ts create mode 100644 packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/basic/input.js create mode 100644 packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/basic/options.json create mode 100644 packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/basic/output.js create mode 100644 packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/transform-u/input.js create mode 100644 packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/transform-u/options.json create mode 100644 packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/transform-u/output.js create mode 100644 packages/babel-plugin-proposal-unicode-sets-regex/test/index.js create mode 100644 packages/babel-plugin-proposal-unicode-sets-regex/test/package.json create mode 100644 packages/babel-plugin-syntax-unicode-sets-regex/.npmignore create mode 100644 packages/babel-plugin-syntax-unicode-sets-regex/README.md create mode 100644 packages/babel-plugin-syntax-unicode-sets-regex/package.json create mode 100644 packages/babel-plugin-syntax-unicode-sets-regex/src/index.ts create mode 100644 packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-enabled/basic/input.js create mode 100644 packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-enabled/basic/options.json create mode 100644 packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-enabled/basic/output.js create mode 100644 packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-missing/basic/input.js create mode 100644 packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-missing/basic/options.json create mode 100644 packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-missing/other-enabled/input.js create mode 100644 packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-missing/other-enabled/options.json create mode 100644 packages/babel-plugin-syntax-unicode-sets-regex/test/index.js create mode 100644 packages/babel-plugin-syntax-unicode-sets-regex/test/package.json diff --git a/packages/babel-core/src/parser/util/missing-plugin-helper.ts b/packages/babel-core/src/parser/util/missing-plugin-helper.ts index 81199e7d0db1..6636002fe58d 100644 --- a/packages/babel-core/src/parser/util/missing-plugin-helper.ts +++ b/packages/babel-core/src/parser/util/missing-plugin-helper.ts @@ -201,6 +201,16 @@ const pluginNameMap = { url: "https://git.io/JvKp3", }, }, + regexpUnicodeSets: { + syntax: { + name: "@babel/plugin-syntax-unicode-sets-regex", + url: "https://git.io/J9GTd", + }, + transform: { + name: "@babel/plugin-proposal-unicode-sets-regex", + url: "https://git.io/J9GTQ", + }, + }, throwExpressions: { syntax: { name: "@babel/plugin-syntax-throw-expressions", diff --git a/packages/babel-helper-create-regexp-features-plugin/src/features.ts b/packages/babel-helper-create-regexp-features-plugin/src/features.ts index 51a0c21b4d08..abe72d0b4729 100644 --- a/packages/babel-helper-create-regexp-features-plugin/src/features.ts +++ b/packages/babel-helper-create-regexp-features-plugin/src/features.ts @@ -3,6 +3,8 @@ export const FEATURES = Object.freeze({ dotAllFlag: 1 << 1, unicodePropertyEscape: 1 << 2, namedCaptureGroups: 1 << 3, + unicodeSetsFlag_syntax: 1 << 4, + unicodeSetsFlag: 1 << 5, }); // We can't use a symbol because this needs to always be the same, even if 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 4551856d2dbb..997175c320cd 100644 --- a/packages/babel-helper-create-regexp-features-plugin/src/index.ts +++ b/packages/babel-helper-create-regexp-features-plugin/src/index.ts @@ -20,9 +20,13 @@ export function createRegExpFeaturePlugin({ name, feature, options = {} as any, + manipulateOptions = (() => {}) as (opts: any, parserOpts: any) => void, }) { return { name, + + manipulateOptions, + pre() { const { file } = this; const features = file.get(featuresKey) ?? 0; diff --git a/packages/babel-helper-create-regexp-features-plugin/src/util.ts b/packages/babel-helper-create-regexp-features-plugin/src/util.ts index 30b679656b99..88ceed7321e0 100644 --- a/packages/babel-helper-create-regexp-features-plugin/src/util.ts +++ b/packages/babel-helper-create-regexp-features-plugin/src/util.ts @@ -3,22 +3,30 @@ import { FEATURES, hasFeature } from "./features"; type RegexpuOptions = { unicodeFlag: "transform" | false; + unicodeSetsFlag: "transform" | "parse" | false; dotAllFlag: "transform" | false; unicodePropertyEscapes: "transform" | false; namedGroups: "transform" | false; onNamedGroup: (name: string, index: number) => void; }; +type Stable = 0; + export function generateRegexpuOptions(toTransform: number): RegexpuOptions { - const feat = (name: keyof typeof FEATURES) => { - return hasFeature(toTransform, FEATURES[name]) ? "transform" : false; + const feat = ( + name: keyof typeof FEATURES, + ok: "transform" | (IsStable extends Stable ? never : "parse") = "transform", + ) => { + return hasFeature(toTransform, FEATURES[name]) ? ok : false; }; return { - unicodeFlag: feat("unicodeFlag"), - dotAllFlag: feat("dotAllFlag"), - unicodePropertyEscapes: feat("unicodePropertyEscape"), - namedGroups: feat("namedCaptureGroups"), + unicodeFlag: feat("unicodeFlag"), + unicodeSetsFlag: + feat("unicodeSetsFlag") || feat("unicodeSetsFlag_syntax", "parse"), + dotAllFlag: feat("dotAllFlag"), + unicodePropertyEscapes: feat("unicodePropertyEscape"), + namedGroups: feat("namedCaptureGroups"), onNamedGroup: () => {}, }; } @@ -29,6 +37,10 @@ export function canSkipRegexpu( ): boolean { const { flags, pattern } = node; + if (flags.includes("v")) { + if (options.unicodeSetsFlag === "transform") return false; + } + if (flags.includes("u")) { if (options.unicodeFlag === "transform") return false; if ( @@ -51,6 +63,9 @@ export function canSkipRegexpu( } export function transformFlags(regexpuOptions: RegexpuOptions, flags: string) { + if (regexpuOptions.unicodeSetsFlag === "transform") { + flags = flags.replace("v", "u"); + } if (regexpuOptions.unicodeFlag === "transform") { flags = flags.replace("u", ""); } diff --git a/packages/babel-plugin-proposal-unicode-sets-regex/.npmignore b/packages/babel-plugin-proposal-unicode-sets-regex/.npmignore new file mode 100644 index 000000000000..f9806945836e --- /dev/null +++ b/packages/babel-plugin-proposal-unicode-sets-regex/.npmignore @@ -0,0 +1,3 @@ +src +test +*.log diff --git a/packages/babel-plugin-proposal-unicode-sets-regex/README.md b/packages/babel-plugin-proposal-unicode-sets-regex/README.md new file mode 100644 index 000000000000..98441062d519 --- /dev/null +++ b/packages/babel-plugin-proposal-unicode-sets-regex/README.md @@ -0,0 +1,19 @@ +# @babel/plugin-proposal-unicode-sets-regex + +> Compile regular expressions' unicodeSets (v) flag. + +See our website [@babel/plugin-proposal-unicode-sets-regex](https://babeljs.io/docs/en/babel-plugin-proposal-unicode-sets-regex) for more information. + +## Install + +Using npm: + +```sh +npm install --save-dev @babel/plugin-proposal-unicode-sets-regex +``` + +or using yarn: + +```sh +yarn add @babel/plugin-proposal-unicode-sets-regex --dev +``` diff --git a/packages/babel-plugin-proposal-unicode-sets-regex/package.json b/packages/babel-plugin-proposal-unicode-sets-regex/package.json new file mode 100644 index 000000000000..0d2ce39af8a8 --- /dev/null +++ b/packages/babel-plugin-proposal-unicode-sets-regex/package.json @@ -0,0 +1,48 @@ +{ + "name": "@babel/plugin-proposal-unicode-sets-regex", + "version": "7.16.7", + "description": "Compile regular expressions' unicodeSets (v) flag.", + "homepage": "https://babel.dev/docs/en/next/babel-plugin-proposal-unicode-sets-regex", + "license": "MIT", + "publishConfig": { + "access": "public" + }, + "main": "./lib/index.js", + "keywords": [ + "babel-plugin", + "regex", + "regexp", + "unicode", + "sets", + "properties", + "property", + "string", + "strings", + "regular expressions" + ], + "repository": { + "type": "git", + "url": "https://github.com/babel/babel.git", + "directory": "packages/babel-plugin-proposal-unicode-sets-regex" + }, + "bugs": "https://github.com/babel/babel/issues", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "workspace:^", + "@babel/helper-plugin-utils": "workspace:^" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + }, + "devDependencies": { + "@babel/core": "workspace:^", + "@babel/helper-plugin-test-runner": "workspace:^" + }, + "author": "The Babel Team (https://babel.dev/team)", + "exports": { + ".": "./lib/index.js", + "./package.json": "./package.json" + }, + "engines": { + "node": ">=6.9.0" + } +} diff --git a/packages/babel-plugin-proposal-unicode-sets-regex/src/index.ts b/packages/babel-plugin-proposal-unicode-sets-regex/src/index.ts new file mode 100644 index 000000000000..4aeb8e078cb7 --- /dev/null +++ b/packages/babel-plugin-proposal-unicode-sets-regex/src/index.ts @@ -0,0 +1,15 @@ +/* eslint-disable @babel/development/plugin-name */ +import { createRegExpFeaturePlugin } from "@babel/helper-create-regexp-features-plugin"; +import { declare } from "@babel/helper-plugin-utils"; + +export default declare(api => { + api.assertVersion(7); + + return createRegExpFeaturePlugin({ + name: "transform-unicode-sets-regex", + feature: "unicodeSetsFlag", + manipulateOptions(opts, parserOpts) { + parserOpts.plugins.push("regexpUnicodeSets"); + }, + }); +}); diff --git a/packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/basic/input.js b/packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/basic/input.js new file mode 100644 index 000000000000..dca7b75f2156 --- /dev/null +++ b/packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/basic/input.js @@ -0,0 +1 @@ +/[[0-7]&&[5-9]]\u{10FFFF}/v; diff --git a/packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/basic/options.json b/packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/basic/options.json new file mode 100644 index 000000000000..061a9addce37 --- /dev/null +++ b/packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/basic/options.json @@ -0,0 +1,3 @@ +{ + "plugins": ["proposal-unicode-sets-regex"] +} diff --git a/packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/basic/output.js b/packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/basic/output.js new file mode 100644 index 000000000000..ed4a334dc0c5 --- /dev/null +++ b/packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/basic/output.js @@ -0,0 +1 @@ +/[5-7]\u{10FFFF}/u; diff --git a/packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/transform-u/input.js b/packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/transform-u/input.js new file mode 100644 index 000000000000..dca7b75f2156 --- /dev/null +++ b/packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/transform-u/input.js @@ -0,0 +1 @@ +/[[0-7]&&[5-9]]\u{10FFFF}/v; diff --git a/packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/transform-u/options.json b/packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/transform-u/options.json new file mode 100644 index 000000000000..2adbb9834185 --- /dev/null +++ b/packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/transform-u/options.json @@ -0,0 +1,3 @@ +{ + "plugins": ["proposal-unicode-sets-regex", "transform-unicode-regex"] +} diff --git a/packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/transform-u/output.js b/packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/transform-u/output.js new file mode 100644 index 000000000000..f954459ee750 --- /dev/null +++ b/packages/babel-plugin-proposal-unicode-sets-regex/test/fixtures/basic/transform-u/output.js @@ -0,0 +1 @@ +/[5-7](?:\uDBFF\uDFFF)/; diff --git a/packages/babel-plugin-proposal-unicode-sets-regex/test/index.js b/packages/babel-plugin-proposal-unicode-sets-regex/test/index.js new file mode 100644 index 000000000000..21a55ce6b5e7 --- /dev/null +++ b/packages/babel-plugin-proposal-unicode-sets-regex/test/index.js @@ -0,0 +1,3 @@ +import runner from "@babel/helper-plugin-test-runner"; + +runner(import.meta.url); diff --git a/packages/babel-plugin-proposal-unicode-sets-regex/test/package.json b/packages/babel-plugin-proposal-unicode-sets-regex/test/package.json new file mode 100644 index 000000000000..5ffd9800b97c --- /dev/null +++ b/packages/babel-plugin-proposal-unicode-sets-regex/test/package.json @@ -0,0 +1 @@ +{ "type": "module" } diff --git a/packages/babel-plugin-syntax-unicode-sets-regex/.npmignore b/packages/babel-plugin-syntax-unicode-sets-regex/.npmignore new file mode 100644 index 000000000000..f9806945836e --- /dev/null +++ b/packages/babel-plugin-syntax-unicode-sets-regex/.npmignore @@ -0,0 +1,3 @@ +src +test +*.log diff --git a/packages/babel-plugin-syntax-unicode-sets-regex/README.md b/packages/babel-plugin-syntax-unicode-sets-regex/README.md new file mode 100644 index 000000000000..6d4bae61db39 --- /dev/null +++ b/packages/babel-plugin-syntax-unicode-sets-regex/README.md @@ -0,0 +1,19 @@ +# @babel/plugin-syntax-unicode-sets-regex + +> Parse regular expressions' unicodeSets (v) flag. + +See our website [@babel/plugin-syntax-unicode-sets-regex](https://babeljs.io/docs/en/babel-plugin-syntax-unicode-sets-regex) for more information. + +## Install + +Using npm: + +```sh +npm install --save-dev @babel/plugin-syntax-unicode-sets-regex +``` + +or using yarn: + +```sh +yarn add @babel/plugin-syntax-unicode-sets-regex --dev +``` diff --git a/packages/babel-plugin-syntax-unicode-sets-regex/package.json b/packages/babel-plugin-syntax-unicode-sets-regex/package.json new file mode 100644 index 000000000000..36c137f9ff35 --- /dev/null +++ b/packages/babel-plugin-syntax-unicode-sets-regex/package.json @@ -0,0 +1,48 @@ +{ + "name": "@babel/plugin-syntax-unicode-sets-regex", + "version": "7.16.7", + "description": "Parse regular expressions' unicodeSets (v) flag.", + "homepage": "https://babel.dev/docs/en/next/babel-plugin-syntax-unicode-sets-regex", + "license": "MIT", + "publishConfig": { + "access": "public" + }, + "main": "./lib/index.js", + "keywords": [ + "babel-plugin", + "regex", + "regexp", + "unicode", + "sets", + "properties", + "property", + "string", + "strings", + "regular expressions" + ], + "repository": { + "type": "git", + "url": "https://github.com/babel/babel.git", + "directory": "packages/babel-plugin-syntax-unicode-sets-regex" + }, + "bugs": "https://github.com/babel/babel/issues", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "workspace:^", + "@babel/helper-plugin-utils": "workspace:^" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + }, + "devDependencies": { + "@babel/core": "workspace:^", + "@babel/helper-plugin-test-runner": "workspace:^" + }, + "author": "The Babel Team (https://babel.dev/team)", + "exports": { + ".": "./lib/index.js", + "./package.json": "./package.json" + }, + "engines": { + "node": ">=6.9.0" + } +} diff --git a/packages/babel-plugin-syntax-unicode-sets-regex/src/index.ts b/packages/babel-plugin-syntax-unicode-sets-regex/src/index.ts new file mode 100644 index 000000000000..e1dd0209d6a1 --- /dev/null +++ b/packages/babel-plugin-syntax-unicode-sets-regex/src/index.ts @@ -0,0 +1,15 @@ +/* eslint-disable @babel/development/plugin-name */ +import { createRegExpFeaturePlugin } from "@babel/helper-create-regexp-features-plugin"; +import { declare } from "@babel/helper-plugin-utils"; + +export default declare(api => { + api.assertVersion(7); + + return createRegExpFeaturePlugin({ + name: "syntax-unicode-sets-regex", + feature: "unicodeSetsFlag_syntax", + manipulateOptions(opts, parserOpts) { + parserOpts.plugins.push("regexpUnicodeSets"); + }, + }); +}); diff --git a/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-enabled/basic/input.js b/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-enabled/basic/input.js new file mode 100644 index 000000000000..99787d31de93 --- /dev/null +++ b/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-enabled/basic/input.js @@ -0,0 +1 @@ +/[[0-7]&&[5-9]]/v; diff --git a/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-enabled/basic/options.json b/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-enabled/basic/options.json new file mode 100644 index 000000000000..e22ec1766962 --- /dev/null +++ b/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-enabled/basic/options.json @@ -0,0 +1,3 @@ +{ + "plugins": ["syntax-unicode-sets-regex"] +} diff --git a/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-enabled/basic/output.js b/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-enabled/basic/output.js new file mode 100644 index 000000000000..99787d31de93 --- /dev/null +++ b/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-enabled/basic/output.js @@ -0,0 +1 @@ +/[[0-7]&&[5-9]]/v; diff --git a/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-missing/basic/input.js b/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-missing/basic/input.js new file mode 100644 index 000000000000..99787d31de93 --- /dev/null +++ b/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-missing/basic/input.js @@ -0,0 +1 @@ +/[[0-7]&&[5-9]]/v; diff --git a/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-missing/basic/options.json b/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-missing/basic/options.json new file mode 100644 index 000000000000..c451f857b0c7 --- /dev/null +++ b/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-missing/basic/options.json @@ -0,0 +1,3 @@ +{ + "throws": "Support for the experimental syntax 'regexpUnicodeSets' isn't currently enabled" +} diff --git a/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-missing/other-enabled/input.js b/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-missing/other-enabled/input.js new file mode 100644 index 000000000000..3478cd88850a --- /dev/null +++ b/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-missing/other-enabled/input.js @@ -0,0 +1 @@ +/[[0-7]&&[5-9]](?.)/v; diff --git a/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-missing/other-enabled/options.json b/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-missing/other-enabled/options.json new file mode 100644 index 000000000000..b0d199882be7 --- /dev/null +++ b/packages/babel-plugin-syntax-unicode-sets-regex/test/fixtures/plugin-missing/other-enabled/options.json @@ -0,0 +1,4 @@ +{ + "plugins": ["transform-named-capturing-groups-regex"], + "throws": "Support for the experimental syntax 'regexpUnicodeSets' isn't currently enabled" +} diff --git a/packages/babel-plugin-syntax-unicode-sets-regex/test/index.js b/packages/babel-plugin-syntax-unicode-sets-regex/test/index.js new file mode 100644 index 000000000000..21a55ce6b5e7 --- /dev/null +++ b/packages/babel-plugin-syntax-unicode-sets-regex/test/index.js @@ -0,0 +1,3 @@ +import runner from "@babel/helper-plugin-test-runner"; + +runner(import.meta.url); diff --git a/packages/babel-plugin-syntax-unicode-sets-regex/test/package.json b/packages/babel-plugin-syntax-unicode-sets-regex/test/package.json new file mode 100644 index 000000000000..5ffd9800b97c --- /dev/null +++ b/packages/babel-plugin-syntax-unicode-sets-regex/test/package.json @@ -0,0 +1 @@ +{ "type": "module" } diff --git a/tsconfig.json b/tsconfig.json index 1496fefa164a..bd65ab96a03f 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -63,6 +63,7 @@ "./packages/babel-plugin-proposal-record-and-tuple/src/**/*.ts", "./packages/babel-plugin-proposal-throw-expressions/src/**/*.ts", "./packages/babel-plugin-proposal-unicode-property-regex/src/**/*.ts", + "./packages/babel-plugin-proposal-unicode-sets-regex/src/**/*.ts", "./packages/babel-plugin-syntax-async-do-expressions/src/**/*.ts", "./packages/babel-plugin-syntax-decimal/src/**/*.ts", "./packages/babel-plugin-syntax-decorators/src/**/*.ts", @@ -79,6 +80,7 @@ "./packages/babel-plugin-syntax-record-and-tuple/src/**/*.ts", "./packages/babel-plugin-syntax-throw-expressions/src/**/*.ts", "./packages/babel-plugin-syntax-typescript/src/**/*.ts", + "./packages/babel-plugin-syntax-unicode-sets-regex/src/**/*.ts", "./packages/babel-plugin-transform-arrow-functions/src/**/*.ts", "./packages/babel-plugin-transform-async-to-generator/src/**/*.ts", "./packages/babel-plugin-transform-block-scoped-functions/src/**/*.ts", @@ -331,6 +333,9 @@ "@babel/plugin-proposal-unicode-property-regex": [ "./packages/babel-plugin-proposal-unicode-property-regex/src" ], + "@babel/plugin-proposal-unicode-sets-regex": [ + "./packages/babel-plugin-proposal-unicode-sets-regex/src" + ], "@babel/plugin-syntax-async-do-expressions": [ "./packages/babel-plugin-syntax-async-do-expressions/src" ], @@ -379,6 +384,9 @@ "@babel/plugin-syntax-typescript": [ "./packages/babel-plugin-syntax-typescript/src" ], + "@babel/plugin-syntax-unicode-sets-regex": [ + "./packages/babel-plugin-syntax-unicode-sets-regex/src" + ], "@babel/plugin-transform-arrow-functions": [ "./packages/babel-plugin-transform-arrow-functions/src" ], diff --git a/yarn.lock b/yarn.lock index 3dbadd276d0f..ac51f0ba4553 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1730,6 +1730,19 @@ __metadata: languageName: unknown linkType: soft +"@babel/plugin-proposal-unicode-sets-regex@workspace:packages/babel-plugin-proposal-unicode-sets-regex": + version: 0.0.0-use.local + resolution: "@babel/plugin-proposal-unicode-sets-regex@workspace:packages/babel-plugin-proposal-unicode-sets-regex" + dependencies: + "@babel/core": "workspace:^" + "@babel/helper-create-regexp-features-plugin": "workspace:^" + "@babel/helper-plugin-test-runner": "workspace:^" + "@babel/helper-plugin-utils": "workspace:^" + peerDependencies: + "@babel/core": ^7.0.0 + languageName: unknown + linkType: soft + "@babel/plugin-syntax-async-do-expressions@workspace:^, @babel/plugin-syntax-async-do-expressions@workspace:packages/babel-plugin-syntax-async-do-expressions": version: 0.0.0-use.local resolution: "@babel/plugin-syntax-async-do-expressions@workspace:packages/babel-plugin-syntax-async-do-expressions" @@ -2103,6 +2116,19 @@ __metadata: languageName: unknown linkType: soft +"@babel/plugin-syntax-unicode-sets-regex@workspace:packages/babel-plugin-syntax-unicode-sets-regex": + version: 0.0.0-use.local + resolution: "@babel/plugin-syntax-unicode-sets-regex@workspace:packages/babel-plugin-syntax-unicode-sets-regex" + dependencies: + "@babel/core": "workspace:^" + "@babel/helper-create-regexp-features-plugin": "workspace:^" + "@babel/helper-plugin-test-runner": "workspace:^" + "@babel/helper-plugin-utils": "workspace:^" + peerDependencies: + "@babel/core": ^7.0.0 + languageName: unknown + linkType: soft + "@babel/plugin-transform-arrow-functions@npm:^7.16.0": version: 7.16.0 resolution: "@babel/plugin-transform-arrow-functions@npm:7.16.0"