lbundle
Version:
Small zero-configuration bundler build on top of Rollup.js and SWC for NPM libraries
1 lines • 3.88 kB
Source Map (JSON)
{"version":3,"file":"bundle-lib-if-needed.mjs","sources":["../../src/helpers/bundle-lib-if-needed.ts"],"sourcesContent":["import { rollup } from 'rollup';\nimport { nodeResolve } from '@rollup/plugin-node-resolve';\nimport commonjs from '@rollup/plugin-commonjs';\nimport { swc } from 'rollup-plugin-swc3';\nimport { typescriptPaths } from 'rollup-plugin-typescript-paths';\nimport PeerDepsExternalPlugin from 'rollup-plugin-peer-deps-external';\nimport json from '@rollup/plugin-json';\nimport { getSwcConfig } from './get-swc-config';\nimport { jsExtensions } from '../constants/js-extensions';\nimport { isEmptyArray, isNil, isString, isStringFull } from '../utils/checks';\nimport typescript from '@rollup/plugin-typescript';\nimport { getRollupTypescriptConfig } from './get-rollup-typescript-config';\nimport { stylesExtensions } from '../constants/styles-extensions';\nimport { getRollupStylerPlugin } from './get-rollup-styler-plugin';\nexport const bundleLibIfNeeded = async (ctx) => {\n const { pkg, options, libOutputs, pkgPath, resolvedSource } = ctx;\n if (isNil(resolvedSource) || isEmptyArray(libOutputs))\n return;\n await Promise.all(libOutputs.map(async (output) => {\n const bundle = await rollup({\n input: resolvedSource,\n plugins: [\n PeerDepsExternalPlugin({\n includeDependencies: true,\n packageJsonPath: pkgPath,\n }),\n typescriptPaths({\n preserveExtensions: true,\n }),\n json(),\n swc({\n ...getSwcConfig(ctx, output),\n tsconfig: ctx.tsconfigPath ?? false,\n }),\n commonjs({ extensions: jsExtensions }),\n nodeResolve({\n rootDir: options.cwd,\n extensions: [...jsExtensions, ...stylesExtensions],\n }),\n getRollupStylerPlugin(ctx),\n isString(pkg.types) &&\n isStringFull(pkg.types) &&\n typescript(getRollupTypescriptConfig(ctx)),\n ],\n });\n await bundle.write(output);\n }));\n};\n"],"names":["bundleLibIfNeeded","ctx","pkg","options","libOutputs","pkgPath","resolvedSource","isNil","isEmptyArray","Promise","all","map","output","bundle","rollup","input","plugins","PeerDepsExternalPlugin","includeDependencies","packageJsonPath","typescriptPaths","preserveExtensions","json","swc","getSwcConfig","tsconfig","tsconfigPath","commonjs","extensions","jsExtensions","nodeResolve","rootDir","cwd","stylesExtensions","getRollupStylerPlugin","isString","types","isStringFull","typescript","getRollupTypescriptConfig","write"],"mappings":";;;;;;;;;;;;;;;AAcO,MAAMA,oBAAoB,OAAOC,GAAAA,GAAAA;IACpC,MAAM,EAAEC,GAAG,EAAEC,OAAO,EAAEC,UAAU,EAAEC,OAAO,EAAEC,cAAc,EAAE,GAAGL,GAAAA;IAC9D,IAAIM,KAAAA,CAAMD,cAAmBE,CAAAA,IAAAA,YAAAA,CAAaJ,UACtC,CAAA,EAAA;AACJ,IAAA,MAAMK,QAAQC,GAAG,CAACN,UAAWO,CAAAA,GAAG,CAAC,OAAOC,MAAAA,GAAAA;QACpC,MAAMC,MAAAA,GAAS,MAAMC,MAAO,CAAA;YACxBC,KAAOT,EAAAA,cAAAA;YACPU,OAAS,EAAA;gBACLC,sBAAuB,CAAA;oBACnBC,mBAAqB,EAAA,IAAA;oBACrBC,eAAiBd,EAAAA;AACrB,iBAAA,CAAA;gBACAe,eAAgB,CAAA;oBACZC,kBAAoB,EAAA;AACxB,iBAAA,CAAA;AACAC,gBAAAA,IAAAA,EAAAA;gBACAC,GAAI,CAAA;oBACA,GAAGC,YAAAA,CAAavB,KAAKW,MAAO,CAAA;oBAC5Ba,QAAUxB,EAAAA,GAAAA,CAAIyB,YAAY,IAAI;AAClC,iBAAA,CAAA;gBACAC,QAAS,CAAA;oBAAEC,UAAYC,EAAAA;AAAa,iBAAA,CAAA;gBACpCC,WAAY,CAAA;AACRC,oBAAAA,OAAAA,EAAS5B,QAAQ6B,GAAG;oBACpBJ,UAAY,EAAA;AAAIC,wBAAAA,GAAAA,YAAAA;AAAiBI,wBAAAA,GAAAA;AAAiB;AACtD,iBAAA,CAAA;gBACAC,qBAAsBjC,CAAAA,GAAAA,CAAAA;gBACtBkC,QAASjC,CAAAA,GAAAA,CAAIkC,KAAK,CACdC,IAAAA,YAAAA,CAAanC,IAAIkC,KAAK,CAAA,IACtBE,WAAWC,yBAA0BtC,CAAAA,GAAAA,CAAAA;AAC5C;AACL,SAAA,CAAA;QACA,MAAMY,MAAAA,CAAO2B,KAAK,CAAC5B,MAAAA,CAAAA;AACvB,KAAA,CAAA,CAAA;AACJ;;;;"}