transform-fs-promises-webpack-plugin
Version:
A webpack plugin to transform fs promises APIs for compatible with lower Node.js versions.
1 lines • 2.08 kB
Source Map (JSON)
{"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"}