From 952092c8d1beae4988d3ec959b4beb8ecc3654f4 Mon Sep 17 00:00:00 2001 From: Henry Zhu Date: Fri, 26 Mar 2021 00:48:53 -0400 Subject: [PATCH] inline isRegExp --- packages/babel-types/src/converters/valueToNode.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/babel-types/src/converters/valueToNode.ts b/packages/babel-types/src/converters/valueToNode.ts index ed58a475fb75..4505a2186e15 100644 --- a/packages/babel-types/src/converters/valueToNode.ts +++ b/packages/babel-types/src/converters/valueToNode.ts @@ -1,5 +1,4 @@ import isPlainObject from "lodash/isPlainObject"; -import isRegExp from "lodash/isRegExp"; import isValidIdentifier from "../validators/isValidIdentifier"; import { identifier, @@ -33,6 +32,10 @@ export default valueToNode as { (value: unknown): t.Expression; }; +function isRegExp(value): boolean { + return Object.prototype.toString.call(value) === "[object RegExp]"; +} + function valueToNode(value: unknown): t.Expression { // undefined if (value === undefined) { @@ -81,7 +84,7 @@ function valueToNode(value: unknown): t.Expression { // regexes if (isRegExp(value)) { - const pattern = value.source; + const pattern = (value as RegExp).source; const flags = value.toString().match(/\/([a-z]+|)$/)[1]; return regExpLiteral(pattern, flags); }