@ms-cloudpack/bundler 0.23.3 → 0.23.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
- import type { BundlerPlugin } from '@ms-cloudpack/common-types';
2
- export declare const allBundlers: Record<string, () => Promise<BundlerPlugin>>;
1
+ import type { Bundler } from '@ms-cloudpack/common-types';
2
+ export declare const allBundlers: Record<string, () => Promise<Bundler>>;
3
3
  /** Names of all the built-in bundlers. */
4
4
  export declare const bundlerNames: string[];
5
5
  //# sourceMappingURL=allBundlers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"allBundlers.d.ts","sourceRoot":"","sources":["../src/allBundlers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAKpE,CAAC;AAEF,0CAA0C;AAC1C,eAAO,MAAM,YAAY,UAA2B,CAAC"}
1
+ {"version":3,"file":"allBundlers.d.ts","sourceRoot":"","sources":["../src/allBundlers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAE1D,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAK9D,CAAC;AAEF,0CAA0C;AAC1C,eAAO,MAAM,YAAY,UAA2B,CAAC"}
@@ -1,8 +1,8 @@
1
1
  export const allBundlers = {
2
- rollup: async () => (await import('@ms-cloudpack/bundler-plugin-rollup')).default,
3
- ori: async () => (await import('@ms-cloudpack/bundler-plugin-ori')).default,
4
- webpack: async () => (await import('@ms-cloudpack/bundler-plugin-webpack')).default,
5
- rspack: async () => (await import('@ms-cloudpack/bundler-plugin-rspack')).default,
2
+ rollup: async () => (await import('@ms-cloudpack/bundler-rollup')).default,
3
+ ori: async () => (await import('@ms-cloudpack/bundler-ori')).default,
4
+ webpack: async () => (await import('@ms-cloudpack/bundler-webpack')).default,
5
+ rspack: async () => (await import('@ms-cloudpack/bundler-rspack')).default,
6
6
  };
7
7
  /** Names of all the built-in bundlers. */
8
8
  export const bundlerNames = Object.keys(allBundlers);
@@ -1 +1 @@
1
- {"version":3,"file":"allBundlers.js","sourceRoot":"","sources":["../src/allBundlers.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,WAAW,GAAiD;IACvE,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,qCAAqC,CAAC,CAAC,CAAC,OAAO;IACjF,GAAG,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,kCAAkC,CAAC,CAAC,CAAC,OAAO;IAC3E,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,sCAAsC,CAAC,CAAC,CAAC,OAAO;IACnF,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,qCAAqC,CAAC,CAAC,CAAC,OAAO;CAClF,CAAC;AAEF,0CAA0C;AAC1C,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC","sourcesContent":["import type { BundlerPlugin } from '@ms-cloudpack/common-types';\n\nexport const allBundlers: Record<string, () => Promise<BundlerPlugin>> = {\n rollup: async () => (await import('@ms-cloudpack/bundler-plugin-rollup')).default,\n ori: async () => (await import('@ms-cloudpack/bundler-plugin-ori')).default,\n webpack: async () => (await import('@ms-cloudpack/bundler-plugin-webpack')).default,\n rspack: async () => (await import('@ms-cloudpack/bundler-plugin-rspack')).default,\n};\n\n/** Names of all the built-in bundlers. */\nexport const bundlerNames = Object.keys(allBundlers);\n"]}
1
+ {"version":3,"file":"allBundlers.js","sourceRoot":"","sources":["../src/allBundlers.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,WAAW,GAA2C;IACjE,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,8BAA8B,CAAC,CAAC,CAAC,OAAO;IAC1E,GAAG,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC,CAAC,OAAO;IACpE,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,+BAA+B,CAAC,CAAC,CAAC,OAAO;IAC5E,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,8BAA8B,CAAC,CAAC,CAAC,OAAO;CAC3E,CAAC;AAEF,0CAA0C;AAC1C,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC","sourcesContent":["import type { Bundler } from '@ms-cloudpack/common-types';\n\nexport const allBundlers: Record<string, () => Promise<Bundler>> = {\n rollup: async () => (await import('@ms-cloudpack/bundler-rollup')).default,\n ori: async () => (await import('@ms-cloudpack/bundler-ori')).default,\n webpack: async () => (await import('@ms-cloudpack/bundler-webpack')).default,\n rspack: async () => (await import('@ms-cloudpack/bundler-rspack')).default,\n};\n\n/** Names of all the built-in bundlers. */\nexport const bundlerNames = Object.keys(allBundlers);\n"]}
package/lib/bundle.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { BundleOptions, BundleResult, BundlerPluginResult, CloudpackConfig } from '@ms-cloudpack/common-types';
1
+ import type { BundleOptions, BundleResult, BundlerResult, CloudpackConfig } from '@ms-cloudpack/common-types';
2
2
  /**
3
3
  * Abstracted consumer input to the bundle method for the appropriate bundler. Provides a more
4
4
  * advanced api surface.
@@ -11,7 +11,7 @@ export declare function bundle(options: BundleOptions, context: {
11
11
  * between normal `bundle()` calls and `result.rebuild()` (if provided by the bundler plugin),
12
12
  * and helps with testing.
13
13
  */
14
- export declare function bundleInternal(pluginBundle: () => Promise<BundlerPluginResult>, options: BundleOptions & {
14
+ export declare function bundleInternal(pluginBundle: () => Promise<BundlerResult>, options: BundleOptions & {
15
15
  bundler: string;
16
16
  }): Promise<BundleResult>;
17
17
  //# sourceMappingURL=bundle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../src/bundle.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,eAAe,EAEhB,MAAM,4BAA4B,CAAC;AAMpC;;;GAGG;AACH,wBAAsB,MAAM,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE;IAAE,MAAM,EAAE,eAAe,CAAA;CAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAgEhH;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAClC,YAAY,EAAE,MAAM,OAAO,CAAC,mBAAmB,CAAC,EAChD,OAAO,EAAE,aAAa,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GAC3C,OAAO,CAAC,YAAY,CAAC,CAsCvB"}
1
+ {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../src/bundle.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,aAAa,EACb,YAAY,EACZ,aAAa,EACb,eAAe,EAEhB,MAAM,4BAA4B,CAAC;AAMpC;;;GAGG;AACH,wBAAsB,MAAM,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE;IAAE,MAAM,EAAE,eAAe,CAAA;CAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAgEhH;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAClC,YAAY,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,EAC1C,OAAO,EAAE,aAAa,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GAC3C,OAAO,CAAC,YAAY,CAAC,CAsCvB"}
package/lib/bundle.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"bundle.js","sourceRoot":"","sources":["../src/bundle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AASnD,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEtF;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,OAAsB,EAAE,OAAoC;IACvF,MAAM,YAAY,GAAoB,EAAE,CAAC;IAEzC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;QAC/B,YAAY,CAAC,IAAI,CAAC;YAChB,IAAI,EAAE,mCAAmC;YACzC,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/C,YAAY,CAAC,IAAI,CAAC;YAChB,IAAI,EAAE,8BAA8B;YACpC,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;QAC/C,YAAY,CAAC,IAAI,CAAC;YAChB,IAAI,EAAE,+CAA+C,OAAO,CAAC,SAAS,IAAI;YAC1E,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtG,YAAY,CAAC,IAAI,CAAC;YAChB,IAAI,EAAE,+BAA+B;YACrC,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,OAAO,CAAC,cAAc,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QAC/C,YAAY,CAAC,IAAI,CAAC;YAChB,IAAI,EAAE,0EAA0E;YAChF,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;QACxB,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;IAChE,CAAC;IAED,sCAAsC;IACtC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CACvE,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAClD,CAAC;IAEF,IAAI,UAAU,GAAe,KAAK,CAAC;IAEnC,sFAAsF;IACtF,KAAK,MAAM,WAAW,IAAI,aAAa,EAAE,CAAC;QACxC,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;QACxF,IAAI,UAAU,KAAK,KAAK,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;YACjD,UAAU,GAAG,UAAU,CAAC;YACxB,MAAM;QACR,CAAC;IACH,CAAC;IAED,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAE7G,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC;QAClC,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI;QACzB,UAAU;QACV,YAAY;KACb,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;IAC7E,OAAO,cAAc,CAAC,UAAU,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;AAC3E,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,YAAgD,EAChD,OAA4C;IAE5C,IAAI,YAAY,GAAoC,SAAS,CAAC;IAE9D,IAAI,CAAC;QACH,YAAY,GAAG,MAAM,YAAY,EAAE,CAAC;IACtC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,YAAY,GAAkB,EAAE,IAAI,EAAE,6BAA6B,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;QACxG,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;YAClC,oCAAoC;YACpC,YAAY,CAAC,KAAK,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAClG,CAAC;QACD,YAAY,GAAG;YACb,MAAM,EAAE,CAAC,YAAY,CAAC;SACvB,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,YAAY,IAAI,EAAE,CAAC;IACrE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,aAAa,GAAG,SAAS,EAAE,GAAG,OAAO,CAAC;IAEvF,MAAM,OAAO,CAAC,GAAG,CAAC;QAChB,IAAI,CAAC,MAAM,EAAE,MAAM,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,OAAO,cAAc,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC;QACjG,QAAQ,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,OAAO,aAAa,CAAC,EAAE,QAAQ,CAAC;QAClF,SAAS,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,OAAO,cAAc,CAAC,EAAE,SAAS,CAAC;KACtF,CAAC,CAAC;IAEH,MAAM,MAAM,GAAiB,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC;IACtE,IAAI,OAAO,CAAC,sBAAsB,EAAE,MAAM,IAAI,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QACtE,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CACtC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CACtG,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACZ,2CAA2C;QAC3C,MAAM,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["import { chooseBundler } from './chooseBundler.js';\nimport type {\n BundleMessage,\n BundleOptions,\n BundleResult,\n BundlerPluginResult,\n CloudpackConfig,\n ModuleType,\n} from '@ms-cloudpack/common-types';\nimport { writeJson } from '@ms-cloudpack/json-utilities';\nimport path from 'path';\nimport { detectModuleType } from '@ms-cloudpack/package-utilities';\nimport { sourceExtensions, typescriptExtensions } from '@ms-cloudpack/path-utilities';\n\n/**\n * Abstracted consumer input to the bundle method for the appropriate bundler. Provides a more\n * advanced api surface.\n */\nexport async function bundle(options: BundleOptions, context: { config: CloudpackConfig }): Promise<BundleResult> {\n const configErrors: BundleMessage[] = [];\n\n if (!options.inputPath?.length) {\n configErrors.push({\n text: 'No input path provided to bundle.',\n source: 'bundle',\n });\n } else if (!path.isAbsolute(options.inputPath)) {\n configErrors.push({\n text: 'Input path must be absolute.',\n source: 'bundle',\n });\n }\n\n if (!Object.keys(options.entries || {}).length) {\n configErrors.push({\n text: `No entries provided to bundle at inputPath \"${options.inputPath}\".`,\n source: 'bundle',\n });\n } else if (Object.entries(options.entries).some(([k, v]) => path.isAbsolute(k) || path.isAbsolute(v))) {\n configErrors.push({\n text: `Entry paths must be relative.`,\n source: 'bundle',\n });\n }\n\n if (options.bundlerOptions && !options.bundler) {\n configErrors.push({\n text: '`bundlerOptions` are bundler-specific, so a `bundler` must be specified.',\n source: 'bundle',\n });\n }\n\n if (configErrors.length) {\n return { inputPath: options.inputPath, errors: configErrors };\n }\n\n // Choose the bundler type and bundle.\n const sourceEntries = Object.values(options.entries).filter((fileName) =>\n sourceExtensions.includes(path.extname(fileName)),\n );\n\n let moduleType: ModuleType = 'esm';\n\n // Check the module type of each entry, short circuiting if we find a cjs or amd file.\n for (const sourceEntry of sourceEntries) {\n const sourceType = await detectModuleType(path.resolve(options.inputPath, sourceEntry));\n if (sourceType === 'amd' || sourceType === 'cjs') {\n moduleType = sourceType;\n break;\n }\n }\n\n const isTypescript = sourceEntries.some((fileName) => typescriptExtensions.includes(path.extname(fileName)));\n\n const bundler = await chooseBundler({\n bundler: options.bundler,\n mode: context.config.mode,\n moduleType,\n isTypescript,\n });\n const bundleFunc = () => bundler.bundle(options, { ...context, moduleType });\n return bundleInternal(bundleFunc, { ...options, bundler: bundler.name });\n}\n\n/**\n * Wrapper for bundling and normalizing the result. This is separated to allow sharing the logic\n * between normal `bundle()` calls and `result.rebuild()` (if provided by the bundler plugin),\n * and helps with testing.\n */\nexport async function bundleInternal(\n pluginBundle: () => Promise<BundlerPluginResult>,\n options: BundleOptions & { bundler: string },\n): Promise<BundleResult> {\n let pluginResult: BundlerPluginResult | undefined = undefined;\n\n try {\n pluginResult = await pluginBundle();\n } catch (e) {\n const errorMessage: BundleMessage = { text: `Exception while bundling: ${e}`, source: options.bundler };\n if (e instanceof Error && e.stack) {\n // remove the message from the stack\n errorMessage.notes = [{ text: e.stack.includes(e.message) ? e.stack.split(e.message)[1] : '' }];\n }\n pluginResult = {\n errors: [errorMessage],\n };\n }\n\n const { rawInput, rawOutput, rebuild, ...rest } = pluginResult || {};\n const { bundler, inputPath, entries, outputPath: logOutputPath = inputPath } = options;\n\n await Promise.all([\n rest.errors?.length && writeJson(path.join(logOutputPath, `${bundler}-errors.json`), rest.errors),\n rawInput && writeJson(path.join(logOutputPath, `${bundler}-input.json`), rawInput),\n rawOutput && writeJson(path.join(logOutputPath, `${bundler}-output.json`), rawOutput),\n ]);\n\n const result: BundleResult = { bundler, inputPath, entries, ...rest };\n if (options.ignoredBundlerWarnings?.length && result.warnings?.length) {\n result.warnings = result.warnings.filter(\n (warning) => !options.ignoredBundlerWarnings?.some((suppressed) => warning.text.includes(suppressed)),\n );\n }\n\n if (rebuild) {\n // Wrap rebuild with proper result handling\n result.rebuild = () => bundleInternal(rebuild, options);\n }\n\n return result;\n}\n"]}
1
+ {"version":3,"file":"bundle.js","sourceRoot":"","sources":["../src/bundle.ts"],"names":[],"mappings":"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","sourcesContent":["import { chooseBundler } from './chooseBundler.js';\nimport type {\n BundleMessage,\n BundleOptions,\n BundleResult,\n BundlerResult,\n CloudpackConfig,\n ModuleType,\n} from '@ms-cloudpack/common-types';\nimport { writeJson } from '@ms-cloudpack/json-utilities';\nimport path from 'path';\nimport { detectModuleType } from '@ms-cloudpack/package-utilities';\nimport { sourceExtensions, typescriptExtensions } from '@ms-cloudpack/path-utilities';\n\n/**\n * Abstracted consumer input to the bundle method for the appropriate bundler. Provides a more\n * advanced api surface.\n */\nexport async function bundle(options: BundleOptions, context: { config: CloudpackConfig }): Promise<BundleResult> {\n const configErrors: BundleMessage[] = [];\n\n if (!options.inputPath?.length) {\n configErrors.push({\n text: 'No input path provided to bundle.',\n source: 'bundle',\n });\n } else if (!path.isAbsolute(options.inputPath)) {\n configErrors.push({\n text: 'Input path must be absolute.',\n source: 'bundle',\n });\n }\n\n if (!Object.keys(options.entries || {}).length) {\n configErrors.push({\n text: `No entries provided to bundle at inputPath \"${options.inputPath}\".`,\n source: 'bundle',\n });\n } else if (Object.entries(options.entries).some(([k, v]) => path.isAbsolute(k) || path.isAbsolute(v))) {\n configErrors.push({\n text: `Entry paths must be relative.`,\n source: 'bundle',\n });\n }\n\n if (options.bundlerOptions && !options.bundler) {\n configErrors.push({\n text: '`bundlerOptions` are bundler-specific, so a `bundler` must be specified.',\n source: 'bundle',\n });\n }\n\n if (configErrors.length) {\n return { inputPath: options.inputPath, errors: configErrors };\n }\n\n // Choose the bundler type and bundle.\n const sourceEntries = Object.values(options.entries).filter((fileName) =>\n sourceExtensions.includes(path.extname(fileName)),\n );\n\n let moduleType: ModuleType = 'esm';\n\n // Check the module type of each entry, short circuiting if we find a cjs or amd file.\n for (const sourceEntry of sourceEntries) {\n const sourceType = await detectModuleType(path.resolve(options.inputPath, sourceEntry));\n if (sourceType === 'amd' || sourceType === 'cjs') {\n moduleType = sourceType;\n break;\n }\n }\n\n const isTypescript = sourceEntries.some((fileName) => typescriptExtensions.includes(path.extname(fileName)));\n\n const bundler = await chooseBundler({\n bundler: options.bundler,\n mode: context.config.mode,\n moduleType,\n isTypescript,\n });\n const bundleFunc = () => bundler.bundle(options, { ...context, moduleType });\n return bundleInternal(bundleFunc, { ...options, bundler: bundler.name });\n}\n\n/**\n * Wrapper for bundling and normalizing the result. This is separated to allow sharing the logic\n * between normal `bundle()` calls and `result.rebuild()` (if provided by the bundler plugin),\n * and helps with testing.\n */\nexport async function bundleInternal(\n pluginBundle: () => Promise<BundlerResult>,\n options: BundleOptions & { bundler: string },\n): Promise<BundleResult> {\n let pluginResult: BundlerResult | undefined = undefined;\n\n try {\n pluginResult = await pluginBundle();\n } catch (e) {\n const errorMessage: BundleMessage = { text: `Exception while bundling: ${e}`, source: options.bundler };\n if (e instanceof Error && e.stack) {\n // remove the message from the stack\n errorMessage.notes = [{ text: e.stack.includes(e.message) ? e.stack.split(e.message)[1] : '' }];\n }\n pluginResult = {\n errors: [errorMessage],\n };\n }\n\n const { rawInput, rawOutput, rebuild, ...rest } = pluginResult || {};\n const { bundler, inputPath, entries, outputPath: logOutputPath = inputPath } = options;\n\n await Promise.all([\n rest.errors?.length && writeJson(path.join(logOutputPath, `${bundler}-errors.json`), rest.errors),\n rawInput && writeJson(path.join(logOutputPath, `${bundler}-input.json`), rawInput),\n rawOutput && writeJson(path.join(logOutputPath, `${bundler}-output.json`), rawOutput),\n ]);\n\n const result: BundleResult = { bundler, inputPath, entries, ...rest };\n if (options.ignoredBundlerWarnings?.length && result.warnings?.length) {\n result.warnings = result.warnings.filter(\n (warning) => !options.ignoredBundlerWarnings?.some((suppressed) => warning.text.includes(suppressed)),\n );\n }\n\n if (rebuild) {\n // Wrap rebuild with proper result handling\n result.rebuild = () => bundleInternal(rebuild, options);\n }\n\n return result;\n}\n"]}
@@ -1,4 +1,4 @@
1
- import type { BundleMode, BundlerPlugin, ModuleType } from '@ms-cloudpack/common-types';
1
+ import type { BundleMode, Bundler, ModuleType } from '@ms-cloudpack/common-types';
2
2
  /**
3
3
  * Determines which bundler plugin to use.
4
4
  * @returns A bundler plugin.
@@ -9,5 +9,5 @@ export declare function chooseBundler(params: {
9
9
  moduleType: ModuleType;
10
10
  isTypescript: boolean;
11
11
  mode?: BundleMode;
12
- }): Promise<BundlerPlugin>;
12
+ }): Promise<Bundler>;
13
13
  //# sourceMappingURL=chooseBundler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chooseBundler.d.ts","sourceRoot":"","sources":["../src/chooseBundler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAGxF;;;GAGG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE;IAC1C,uDAAuD;IACvD,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,UAAU,EAAE,UAAU,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB,GAAG,OAAO,CAAC,aAAa,CAAC,CAiBzB"}
1
+ {"version":3,"file":"chooseBundler.d.ts","sourceRoot":"","sources":["../src/chooseBundler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAGlF;;;GAGG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE;IAC1C,uDAAuD;IACvD,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,UAAU,EAAE,UAAU,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB,GAAG,OAAO,CAAC,OAAO,CAAC,CAiBnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"chooseBundler.js","sourceRoot":"","sources":["../src/chooseBundler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAMnC;IACC,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAElD,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAEzB,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACnC,IAAI,IAAI,KAAK,YAAY,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;YAClD,OAAO,GAAG,SAAS,CAAC;QACtB,CAAC;aAAM,IAAI,UAAU,KAAK,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;YACjD,0EAA0E;YAC1E,OAAO,GAAG,QAAQ,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,KAAK,CAAC;QAClB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;AACtC,CAAC","sourcesContent":["import type { BundleMode, BundlerPlugin, ModuleType } from '@ms-cloudpack/common-types';\nimport { allBundlers } from './allBundlers.js';\n\n/**\n * Determines which bundler plugin to use.\n * @returns A bundler plugin.\n */\nexport async function chooseBundler(params: {\n /** Bundler as specified in `BundleOptions` (if any) */\n bundler: string | undefined;\n moduleType: ModuleType;\n isTypescript: boolean;\n mode?: BundleMode;\n}): Promise<BundlerPlugin> {\n const { moduleType, isTypescript, mode } = params;\n\n let { bundler } = params;\n\n if (!bundler || bundler === 'auto') {\n if (mode === 'production' || moduleType === 'amd') {\n bundler = 'webpack';\n } else if (moduleType === 'cjs' && !isTypescript) {\n // TODO do we still need !isTypescript now that rollup handles typescript?\n bundler = 'rollup';\n } else {\n bundler = 'ori';\n }\n }\n\n return await allBundlers[bundler]();\n}\n"]}
1
+ {"version":3,"file":"chooseBundler.js","sourceRoot":"","sources":["../src/chooseBundler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAMnC;IACC,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAElD,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAEzB,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACnC,IAAI,IAAI,KAAK,YAAY,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;YAClD,OAAO,GAAG,SAAS,CAAC;QACtB,CAAC;aAAM,IAAI,UAAU,KAAK,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;YACjD,0EAA0E;YAC1E,OAAO,GAAG,QAAQ,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,KAAK,CAAC;QAClB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;AACtC,CAAC","sourcesContent":["import type { BundleMode, Bundler, ModuleType } from '@ms-cloudpack/common-types';\nimport { allBundlers } from './allBundlers.js';\n\n/**\n * Determines which bundler plugin to use.\n * @returns A bundler plugin.\n */\nexport async function chooseBundler(params: {\n /** Bundler as specified in `BundleOptions` (if any) */\n bundler: string | undefined;\n moduleType: ModuleType;\n isTypescript: boolean;\n mode?: BundleMode;\n}): Promise<Bundler> {\n const { moduleType, isTypescript, mode } = params;\n\n let { bundler } = params;\n\n if (!bundler || bundler === 'auto') {\n if (mode === 'production' || moduleType === 'amd') {\n bundler = 'webpack';\n } else if (moduleType === 'cjs' && !isTypescript) {\n // TODO do we still need !isTypescript now that rollup handles typescript?\n bundler = 'rollup';\n } else {\n bundler = 'ori';\n }\n }\n\n return await allBundlers[bundler]();\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ms-cloudpack/bundler",
3
- "version": "0.23.3",
3
+ "version": "0.23.4",
4
4
  "description": "An abstraction to bundle source code.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -14,16 +14,16 @@
14
14
  }
15
15
  },
16
16
  "dependencies": {
17
- "@ms-cloudpack/bundler-plugin-ori": "^0.19.33",
18
- "@ms-cloudpack/bundler-plugin-rollup": "^0.15.23",
19
- "@ms-cloudpack/bundler-plugin-rspack": "^0.1.3",
20
- "@ms-cloudpack/bundler-plugin-webpack": "^0.9.12",
21
- "@ms-cloudpack/common-types": "^0.21.1",
22
- "@ms-cloudpack/config": "^0.31.2",
23
- "@ms-cloudpack/json-utilities": "^0.1.7",
24
- "@ms-cloudpack/package-utilities": "^10.2.2",
17
+ "@ms-cloudpack/bundler-ori": "^0.1.1",
18
+ "@ms-cloudpack/bundler-rollup": "^0.1.1",
19
+ "@ms-cloudpack/bundler-rspack": "^0.1.1",
20
+ "@ms-cloudpack/bundler-webpack": "^0.1.1",
21
+ "@ms-cloudpack/common-types": "^0.22.0",
22
+ "@ms-cloudpack/config": "^0.31.3",
23
+ "@ms-cloudpack/json-utilities": "^0.1.8",
24
+ "@ms-cloudpack/package-utilities": "^10.2.3",
25
25
  "@ms-cloudpack/path-string-parsing": "^1.2.4",
26
- "@ms-cloudpack/path-utilities": "^2.7.47"
26
+ "@ms-cloudpack/path-utilities": "^2.7.48"
27
27
  },
28
28
  "devDependencies": {
29
29
  "@ms-cloudpack/eslint-plugin-internal": "^0.0.1",