import{declare}from"@babel/helper-plugin-utils";importrewritePatternfrom"regexpu-core";import*asregexfrom"@babel/helper-regex";exportdefaultdeclare((api,options)=>{api.assertVersion(7);const{useUnicodeFlag=true}=options;if(typeofuseUnicodeFlag!=="boolean"){thrownewError(".useUnicodeFlag must be a boolean, or undefined");}return{name:"proposal-unicode-property-regex",visitor:{RegExpLiteral(path){constnode=path.node;if(!regex.is(node,"u")){return;}node.pattern=rewritePattern(node.pattern,node.flags,{unicodePropertyEscape:true,useUnicodeFlag,});if(!useUnicodeFlag){regex.pullFlag(node,"u");}},},};});