{"version":3,"file":"esm/index.mjs","sources":["webpack://transform-fs-promises-webpack-plugin/./src/index.ts"],"sourcesContent":["import { babelPluginTransformFsPromises } from \"babel-plugin-transform-fs-promises\";\nimport BabelTransformPlugin from \"babel-transform-webpack-plugin\";\nimport type { TransformOptions } from \"@babel/core\";\nimport type { Compiler } from \"webpack\";\n\n/**\n * 将 fs.promises 替换为 fs 以兼容低版本 Node.js\n * 兼容 Webpack 4 和 Webpack 5\n */\nclass TransformFsPromisesPlugin {\n    isWebpack5 = false;\n\n    transformOptions: TransformOptions;\n\n    constructor({ transformOptions = {} } = {}) {\n        this.transformOptions = transformOptions || {};\n    }\n\n    apply(compiler: Compiler) {\n        new BabelTransformPlugin({\n            ...this.transformOptions,\n            transformOptions: {\n                plugins: ([babelPluginTransformFsPromises] as TransformOptions[\"plugins\"])\n                    .concat(this.transformOptions.plugins ?? [])\n                    .filter(Boolean),\n            },\n        }).apply(compiler);\n    }\n}\n\nexport { TransformFsPromisesPlugin };\nexport default TransformFsPromisesPlugin;\n"],"names":["TransformFsPromisesPlugin","_ref","transformOptions","apply","compiler","_this_transformOptions_plugins","BabelTransformPlugin","babelPluginTransformFsPromises","Boolean"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,IAAMA,4CAAyBA,WAAAA,GAA/B;;aAAMA;YAKUC,OAAAA,UAAAA,MAAAA,GAAAA,KAAAA,AAAAA,KAAAA,MAAAA,SAAAA,CAAAA,EAAAA,GAAAA,SAAAA,CAAAA,EAAAA,GAA4B,CAAC,2BAA7BA,KAAEC,gBAAgB,EAAhBA,mBAAmB,AAAnBA,KAAAA,MAAmB,yBAAC;gCALhCF;QACF,qCAAa;QAEb;QAGI,IAAI,CAAC,gBAAgB,GAAGE,oBAAoB,CAAC;;kBAN/CF,2BAAAA;;YASFG,KAAAA;mBAAAA,SAAMC,QAAkB;oBAKAC;gBAJpB,IAAIC,mEAAAA,CAAAA,UAAoBA,CAAC,wCAClB,IAAI,CAAC,gBAAgB;oBACxB,kBAAkB;wBACd,SAAU;4BAACC,wEAAAA,8BAA8BA;yBAAC,CACrC,MAAM,CAACF,AAA6B,SAA7BA,CAAAA,iCAAAA,IAAI,CAAC,gBAAgB,CAAC,OAAO,AAAD,KAA5BA,AAAAA,KAAAA,MAAAA,iCAAAA,iCAAiC,EAAE,EAC1C,MAAM,CAACG;oBAChB;oBACD,KAAK,CAACJ;YACb;;;WAlBEJ;;AAsBN,uBAAeA"}