UNPKG

storybook-builder-rsbuild

Version:
52 lines (48 loc) 2.14 kB
import CJS_COMPAT_NODE_URL_9822f21edcc46e85 from 'node:url'; import CJS_COMPAT_NODE_PATH_9822f21edcc46e85 from 'node:path'; import CJS_COMPAT_NODE_MODULE_9822f21edcc46e85 from "node:module"; var __filename = CJS_COMPAT_NODE_URL_9822f21edcc46e85.fileURLToPath(import.meta.url); var __dirname = CJS_COMPAT_NODE_PATH_9822f21edcc46e85.dirname(__filename); var require = CJS_COMPAT_NODE_MODULE_9822f21edcc46e85.createRequire(import.meta.url); // ------------------------------------------------------------ // end of CJS compatibility banner, injected by Storybook's esbuild configuration // ------------------------------------------------------------ import "../_node-chunks/chunk-L73IVHZJ.js"; // src/loaders/export-order-loader.ts import assert from "node:assert"; import { init as initCjsParser, parse as parseCjs } from "cjs-module-lexer"; import { parse as parseEs } from "es-module-lexer"; import MagicString from "magic-string"; async function loader(source, map, meta) { let callback = this.async(); try { let magicString = new MagicString(source); if (!source.includes("__namedExportsOrder")) try { let namedExportsOrder = ((await parseEs(source))[1] || []).map((e) => source.substring(e.s, e.e)).filter((e) => e !== "default"); assert( namedExportsOrder.length > 0, "No named exports found. Very likely that this is not a ES module." ), magicString.append( `;export const __namedExportsOrder = ${JSON.stringify(namedExportsOrder)};` ); } catch { await initCjsParser(); let namedExportsOrder = (parseCjs(source).exports || []).filter( (e) => e !== "default" && e !== "__esModule" ); assert( namedExportsOrder.length > 0, "No named exports found. Very likely that this is not a CJS module." ), magicString.append( `;module.exports.__namedExportsOrder = ${JSON.stringify(namedExportsOrder)};` ); } return callback(null, magicString.toString(), map, meta); } catch { return callback(null, source, map, meta); } } export { loader as default };