<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">{"version":3,"names":["t","require","_template","exports","getDynamicImportSource","node","source","arguments","isStringLiteral","isTemplateLiteral","template","expression","ast","buildDynamicImport","deferToThen","wrapWithPromise","builder","specifier","quasis","length","specifierToString","identifier","templateLiteral","templateElement","raw"],"sources":["../src/dynamic-import.ts"],"sourcesContent":["// Heavily inspired by\n// https://github.com/airbnb/babel-plugin-dynamic-import-node/blob/master/src/utils.js\n\nimport * as t from \"@babel/types\";\nimport template from \"@babel/template\";\n\nif (!process.env.BABEL_8_BREAKING) {\n  if (!USE_ESM) {\n    if (!IS_STANDALONE) {\n      // eslint-disable-next-line no-restricted-globals\n      exports.getDynamicImportSource = function getDynamicImportSource(\n        node: t.CallExpression,\n      ): t.StringLiteral | t.TemplateLiteral {\n        const [source] = node.arguments;\n\n        return t.isStringLiteral(source) || t.isTemplateLiteral(source)\n          ? source\n          : (template.expression.ast`\\`\\${${source}}\\`` as t.TemplateLiteral);\n      };\n    }\n  }\n}\n\nexport function buildDynamicImport(\n  node: t.CallExpression,\n  deferToThen: boolean,\n  wrapWithPromise: boolean,\n  builder: (specifier: t.Expression) =&gt; t.Expression,\n): t.Expression {\n  const [specifier] = node.arguments;\n\n  if (\n    t.isStringLiteral(specifier) ||\n    (t.isTemplateLiteral(specifier) &amp;&amp; specifier.quasis.length === 0)\n  ) {\n    if (deferToThen) {\n      return template.expression.ast`\n        Promise.resolve().then(() =&gt; ${builder(specifier)})\n      `;\n    } else return builder(specifier);\n  }\n\n  const specifierToString = t.isTemplateLiteral(specifier)\n    ? t.identifier(\"specifier\")\n    : t.templateLiteral(\n        [t.templateElement({ raw: \"\" }), t.templateElement({ raw: \"\" })],\n        [t.identifier(\"specifier\")],\n      );\n\n  if (deferToThen) {\n    return template.expression.ast`\n      (specifier =&gt;\n        new Promise(r =&gt; r(${specifierToString}))\n          .then(s =&gt; ${builder(t.identifier(\"s\"))})\n      )(${specifier})\n    `;\n  } else if (wrapWithPromise) {\n    return template.expression.ast`\n      (specifier =&gt;\n        new Promise(r =&gt; r(${builder(specifierToString)}))\n      )(${specifier})\n    `;\n  } else {\n    return template.expression.ast`\n      (specifier =&gt; ${builder(specifierToString)})(${specifier})\n    `;\n  }\n}\n"],"mappings":";;;;;;AAGA,IAAAA,CAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAEmC;EACnB;IACQ;MAElBE,OAAO,CAACC,sBAAsB,GAAG,SAASA,sBAAsBA,CAC9DC,IAAsB,EACe;QACrC,MAAM,CAACC,MAAM,CAAC,GAAGD,IAAI,CAACE,SAAS;QAE/B,OAAOP,CAAC,CAACQ,eAAe,CAACF,MAAM,CAAC,IAAIN,CAAC,CAACS,iBAAiB,CAACH,MAAM,CAAC,GAC3DA,MAAM,GACLI,iBAAQ,CAACC,UAAU,CAACC,GAAI,QAAON,MAAO,KAA0B;MACvE,CAAC;IACH;EACF;AACF;AAEO,SAASO,kBAAkBA,CAChCR,IAAsB,EACtBS,WAAoB,EACpBC,eAAwB,EACxBC,OAAkD,EACpC;EACd,MAAM,CAACC,SAAS,CAAC,GAAGZ,IAAI,CAACE,SAAS;EAElC,IACEP,CAAC,CAACQ,eAAe,CAACS,SAAS,CAAC,IAC3BjB,CAAC,CAACS,iBAAiB,CAACQ,SAAS,CAAC,IAAIA,SAAS,CAACC,MAAM,CAACC,MAAM,KAAK,CAAE,EACjE;IACA,IAAIL,WAAW,EAAE;MACf,OAAOJ,iBAAQ,CAACC,UAAU,CAACC,GAAI;AACrC,uCAAuCI,OAAO,CAACC,SAAS,CAAE;AAC1D,OAAO;IACH,CAAC,MAAM,OAAOD,OAAO,CAACC,SAAS,CAAC;EAClC;EAEA,MAAMG,iBAAiB,GAAGpB,CAAC,CAACS,iBAAiB,CAACQ,SAAS,CAAC,GACpDjB,CAAC,CAACqB,UAAU,CAAC,WAAW,CAAC,GACzBrB,CAAC,CAACsB,eAAe,CACf,CAACtB,CAAC,CAACuB,eAAe,CAAC;IAAEC,GAAG,EAAE;EAAG,CAAC,CAAC,EAAExB,CAAC,CAACuB,eAAe,CAAC;IAAEC,GAAG,EAAE;EAAG,CAAC,CAAC,CAAC,EAChE,CAACxB,CAAC,CAACqB,UAAU,CAAC,WAAW,CAAC,CAC5B,CAAC;EAEL,IAAIP,WAAW,EAAE;IACf,OAAOJ,iBAAQ,CAACC,UAAU,CAACC,GAAI;AACnC;AACA,6BAA6BQ,iBAAkB;AAC/C,uBAAuBJ,OAAO,CAAChB,CAAC,CAACqB,UAAU,CAAC,GAAG,CAAC,CAAE;AAClD,UAAUJ,SAAU;AACpB,KAAK;EACH,CAAC,MAAM,IAAIF,eAAe,EAAE;IAC1B,OAAOL,iBAAQ,CAACC,UAAU,CAACC,GAAI;AACnC;AACA,6BAA6BI,OAAO,CAACI,iBAAiB,CAAE;AACxD,UAAUH,SAAU;AACpB,KAAK;EACH,CAAC,MAAM;IACL,OAAOP,iBAAQ,CAACC,UAAU,CAACC,GAAI;AACnC,sBAAsBI,OAAO,CAACI,iBAAiB,CAAE,KAAIH,SAAU;AAC/D,KAAK;EACH;AACF"}</pre></body></html>