{"version":3,"names":["_helperPluginUtils","require","_default","exports","default","declare","api","assertVersion","regex","replace","match","escapes","separator","isEscaped","length","charCodeAt","toString","name","manipulateOptions","_","parser","plugins","push","visitor","DirectiveLiteral|StringLiteral","node","extra","raw"],"sources":["../src/index.ts"],"sourcesContent":["import { declare } from \"@babel/helper-plugin-utils\";\nimport type { NodePath, types as t } from \"@babel/core\";\n\nexport default declare(api => {\n  api.assertVersion(REQUIRED_VERSION(7));\n  const regex = /(\\\\*)([\\u2028\\u2029])/g;\n  function replace(match: string, escapes: string, separator: string) {\n    // If there's an odd number, that means the separator itself was escaped.\n    // \"\\X\" escapes X.\n    // \"\\\\X\" escapes the backslash, so X is unescaped.\n    const isEscaped = escapes.length % 2 === 1;\n    if (isEscaped) return match;\n\n    return `${escapes}\\\\u${separator.charCodeAt(0).toString(16)}`;\n  }\n\n  return {\n    name: \"transform-json-strings\",\n    manipulateOptions: process.env.BABEL_8_BREAKING\n      ? undefined\n      : (_, parser) => parser.plugins.push(\"jsonStrings\"),\n\n    visitor: {\n      \"DirectiveLiteral|StringLiteral\"({\n        node,\n      }: NodePath<t.DirectiveLiteral | t.StringLiteral>) {\n        const { extra } = node;\n        if (!extra?.raw) return;\n\n        extra.raw = (extra.raw as string).replace(regex, replace);\n      },\n    },\n  };\n});\n"],"mappings":";;;;;;AAAA,IAAAA,kBAAA,GAAAC,OAAA;AAAqD,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAGtC,IAAAC,0BAAO,EAACC,GAAG,IAAI;EAC5BA,GAAG,CAACC,aAAa,uCAAoB,CAAC;EACtC,MAAMC,KAAK,GAAG,wBAAwB;EACtC,SAASC,OAAOA,CAACC,KAAa,EAAEC,OAAe,EAAEC,SAAiB,EAAE;IAIlE,MAAMC,SAAS,GAAGF,OAAO,CAACG,MAAM,GAAG,CAAC,KAAK,CAAC;IAC1C,IAAID,SAAS,EAAE,OAAOH,KAAK;IAE3B,OAAO,GAAGC,OAAO,MAAMC,SAAS,CAACG,UAAU,CAAC,CAAC,CAAC,CAACC,QAAQ,CAAC,EAAE,CAAC,EAAE;EAC/D;EAEA,OAAO;IACLC,IAAI,EAAE,wBAAwB;IAC9BC,iBAAiB,EAEbA,CAACC,CAAC,EAAEC,MAAM,KAAKA,MAAM,CAACC,OAAO,CAACC,IAAI,CAAC,aAAa,CAAC;IAErDC,OAAO,EAAE;MACP,gCAAgCC,CAAC;QAC/BC;MAC8C,CAAC,EAAE;QACjD,MAAM;UAAEC;QAAM,CAAC,GAAGD,IAAI;QACtB,IAAI,EAACC,KAAK,YAALA,KAAK,CAAEC,GAAG,GAAE;QAEjBD,KAAK,CAACC,GAAG,GAAID,KAAK,CAACC,GAAG,CAAYlB,OAAO,CAACD,KAAK,EAAEC,OAAO,CAAC;MAC3D;IACF;EACF,CAAC;AACH,CAAC,CAAC","ignoreList":[]}