{"version":3,"file":"export-equals.cjs","sources":["../src/plugin.ts"],"sourcesContent":["import { readFile, writeFile } from 'fs/promises';\nimport type { Plugin } from 'rollup';\nimport type { ExportEqualsOptions, ReplaceFunction } from './types';\n\nexport function equals(options: ExportEqualsOptions = {}): Plugin {\n\n  const {\n    file: filename,\n    replace = 'export = $1',\n  } = options;\n\n  const captureIdPattern = '([a-zA-Z$_][\\\\w$_]*)';\n\n  const strings = [\n    `export default ${captureIdPattern}`,\n    `export { ${captureIdPattern} as default }`,\n  ];\n\n  const patterns = strings.map((str) => new RegExp(str));\n\n  const replaceExport = (code: string): string => {\n    for (const pattern of patterns) {\n      if (pattern.test(code)) {\n        return code.replace(pattern, replace as string & ReplaceFunction);\n      }\n    }\n    return code;\n  };\n\n  return {\n\n    name: 'export-equals',\n\n    renderChunk(code) {\n\n      if (filename) {\n        return;\n      }\n\n      return replaceExport(code);\n\n    },\n\n    async writeBundle() {\n\n      if (!filename) {\n        return;\n      }\n\n      const content = await readFile(\n        filename,\n        'utf-8',\n      );\n\n      await writeFile(\n        filename,\n        replaceExport(content),\n      );\n\n    },\n\n  };\n\n}\n"],"names":["equals","options","file","filename","replace","captureIdPattern","strings","patterns","map","str","RegExp","replaceExport","code","pattern","test","name","renderChunk","writeBundle","content","readFile","writeFile"],"mappings":";;;;;;AAIgB,SAAAA,MAAMA,CAACC,OAAA,GAA+B,EAAE,EAAA;EAEtD,MAAM;AACJC,IAAAA,IAAI,EAAEC,QAAQ;AACdC,IAAAA,OAAO,GAAG,aAAA;AAAa,GACxB,GAAGH,OAAO,CAAA;EAEX,MAAMI,gBAAgB,GAAG,sBAAsB,CAAA;EAE/C,MAAMC,OAAO,GAAG,CACd,CAAkBD,eAAAA,EAAAA,gBAAgB,EAAE,EACpC,CAAA,SAAA,EAAYA,gBAAgB,CAAA,aAAA,CAAe,CAC5C,CAAA;AAED,EAAA,MAAME,QAAQ,GAAGD,OAAO,CAACE,GAAG,CAAEC,GAAG,IAAK,IAAIC,MAAM,CAACD,GAAG,CAAC,CAAC,CAAA;EAEtD,MAAME,aAAa,GAAIC,IAAY,IAAY;AAC7C,IAAA,KAAK,MAAMC,OAAO,IAAIN,QAAQ,EAAE;AAC9B,MAAA,IAAIM,OAAO,CAACC,IAAI,CAACF,IAAI,CAAC,EAAE;AACtB,QAAA,OAAOA,IAAI,CAACR,OAAO,CAACS,OAAO,EAAET,OAAmC,CAAC,CAAA;AACnE,OAAA;AACF,KAAA;AACA,IAAA,OAAOQ,IAAI,CAAA;GACZ,CAAA;EAED,OAAO;AAELG,IAAAA,IAAI,EAAE,eAAe;IAErBC,WAAWA,CAACJ,IAAI,EAAA;AAEd,MAAA,IAAIT,QAAQ,EAAE;AACZ,QAAA,OAAA;AACF,OAAA;MAEA,OAAOQ,aAAa,CAACC,IAAI,CAAC,CAAA;KAE3B;IAED,MAAMK,WAAWA,GAAA;MAEf,IAAI,CAACd,QAAQ,EAAE;AACb,QAAA,OAAA;AACF,OAAA;MAEA,MAAMe,OAAO,GAAG,MAAMC,iBAAQ,CAC5BhB,QAAQ,EACR,OAAO,CACR,CAAA;MAED,MAAMiB,kBAAS,CACbjB,QAAQ,EACRQ,aAAa,CAACO,OAAO,CAAC,CACvB,CAAA;AAEH,KAAA;GAED,CAAA;AAEH;;;;"}