UNPKG

@node-minify/terser

Version:
1 lines 2.56 kB
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["/*!\n * node-minify\n * Copyright(c) 2011-2024 Rodolphe Stoclin\n * MIT Licensed\n */\n\n/**\n * Module dependencies.\n */\nimport type { MinifierOptions } from \"@node-minify/types\";\nimport { utils } from \"@node-minify/utils\";\n// @ts-expect-error moduleResolution:nodenext issue 54523\nimport { minify } from \"terser\";\n\ntype OptionsTerser = {\n sourceMap?: { url: string };\n};\n\ntype SettingsTerser = {\n options: OptionsTerser;\n};\n\ntype MinifierOptionsTerser = {\n settings: SettingsTerser;\n};\n\n/**\n * Run terser.\n * @param settings Terser options\n * @param content Content to minify\n * @param callback Callback\n * @param index Index of current file in array\n * @returns Minified content\n */\nconst minifyTerser = async ({\n settings,\n content,\n callback,\n index,\n}: MinifierOptions & MinifierOptionsTerser) => {\n try {\n const contentMinified = await minify(content ?? \"\", settings?.options);\n if (\n contentMinified.map &&\n typeof settings?.options?.sourceMap?.url === \"string\"\n ) {\n utils.writeFile({\n file: settings.options.sourceMap.url,\n content: contentMinified.map,\n index,\n });\n }\n if (settings && !settings.content && settings.output) {\n utils.writeFile({\n file: settings.output,\n content: contentMinified.code,\n index,\n });\n }\n if (callback) {\n return callback(null, contentMinified.code);\n }\n return contentMinified.code;\n } catch (error) {\n return callback?.(error);\n }\n};\n\n/**\n * Expose `minifyTerser()`.\n */\nminifyTerser.default = minifyTerser;\nexport = minifyTerser;\n"],"mappings":";;;;;;AAUA,SAAS,aAAa;AAEtB,SAAS,cAAc;AAZvB;AAAA;AAkCA,QAAM,eAAe,OAAO;AAAA,MACxB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ,MAA+C;AAC3C,UAAI;AACA,cAAM,kBAAkB,MAAM,OAAO,WAAW,IAAI,UAAU,OAAO;AACrE,YACI,gBAAgB,OAChB,OAAO,UAAU,SAAS,WAAW,QAAQ,UAC/C;AACE,gBAAM,UAAU;AAAA,YACZ,MAAM,SAAS,QAAQ,UAAU;AAAA,YACjC,SAAS,gBAAgB;AAAA,YACzB;AAAA,UACJ,CAAC;AAAA,QACL;AACA,YAAI,YAAY,CAAC,SAAS,WAAW,SAAS,QAAQ;AAClD,gBAAM,UAAU;AAAA,YACZ,MAAM,SAAS;AAAA,YACf,SAAS,gBAAgB;AAAA,YACzB;AAAA,UACJ,CAAC;AAAA,QACL;AACA,YAAI,UAAU;AACV,iBAAO,SAAS,MAAM,gBAAgB,IAAI;AAAA,QAC9C;AACA,eAAO,gBAAgB;AAAA,MAC3B,SAAS,OAAO;AACZ,eAAO,WAAW,KAAK;AAAA,MAC3B;AAAA,IACJ;AAKA,iBAAa,UAAU;AACvB,qBAAS;AAAA;AAAA;","names":[]}