/**
 * Minified by jsDelivr using Terser v5.48.0.
 * Original file: /npm/@babel/plugin-transform-modules-amd@8.0.1/lib/index.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
import{declare}from"@babel/helper-plugin-utils";import{isModule,getModuleName,rewriteModuleStatementsAndPrepareHeader,hasExports,isSideEffectImport,wrapInterop,buildNamespaceInitStatements,ensureStatementsHoisted,buildDynamicImport}from"@babel/helper-module-transforms";import{template,types}from"@babel/core";const buildWrapper=template.statement("\n  define(MODULE_NAME, AMD_ARGUMENTS, function(IMPORT_NAMES) {\n  })\n"),buildAnonymousWrapper=template.statement('\n  define(["require"], function(REQUIRE) {\n  })\n');function injectWrapper(e,t){const{body:r,directives:s}=e.node;e.node.directives=[],e.node.body=[];const o=e.pushContainer("body",t)[0].get("expression").get("arguments"),n=o[o.length-1].get("body");n.pushContainer("directives",s),n.pushContainer("body",r)}const index=declare((e,t)=>{e.assertVersion("^7.0.0-0 || ^8.0.0"),"loose"in t&&console.warn("@babel/plugin-transform-modules-amd: The 'loose' option has been deprecated, use the `constantReexports` and `enumerableModuleMeta` assumptions instead (https://babeljs.io/assumptions).");const{allowTopLevelThis:r,strict:s,strictMode:o,importInterop:n,noInterop:i}=t,p=e.assumption("constantReexports")??t.loose,a=e.assumption("enumerableModuleMeta")??t.loose;return{name:"transform-modules-amd",pre(){this.file.set("@babel/plugin-transform-modules-*","amd")},visitor:e.traverse.explode({"CallExpression|ImportExpression"(e,t){if(!this.file.has("@babel/plugin-proposal-dynamic-import"))return;if(e.isCallExpression()&&!e.get("callee").isImport())return;let{requireId:r,resolveId:s,rejectId:o}=t;r||(r=e.scope.generateUidIdentifier("require"),t.requireId=r),s&&o||(s=e.scope.generateUidIdentifier("resolve"),o=e.scope.generateUidIdentifier("reject"),t.resolveId=s,t.rejectId=o);let n=types.identifier("imported");i||(n=wrapInterop(this.file.path,n,"namespace")),e.replaceWith(buildDynamicImport(e.node,!1,!1,e=>template.expression.ast`
              new Promise((${s}, ${o}) =>
                ${r}(
                  [${e}],
                  imported => ${types.cloneNode(s)}(${n}),
                  ${types.cloneNode(o)}
                )
              )
            `))},Program:{exit(e,{requireId:l}){if(!isModule(e))return void(l&&injectWrapper(e,buildAnonymousWrapper({REQUIRE:types.cloneNode(l)})));const d=[],m=[];l&&(d.push(types.stringLiteral("require")),m.push(types.cloneNode(l)));let u=getModuleName(this.file.opts,t);u&&(u=types.stringLiteral(u));const{meta:c,headers:f}=rewriteModuleStatementsAndPrepareHeader(e,{enumerableModuleMeta:a,constantReexports:p,strict:s,strictMode:o,allowTopLevelThis:r,importInterop:n,noInterop:i,filename:this.file.opts.filename});hasExports(c)&&(d.push(types.stringLiteral("exports")),m.push(types.identifier(c.exportName)));for(const[t,r]of c.source){if(d.push(types.stringLiteral(t)),m.push(types.identifier(r.name)),!isSideEffectImport(r)){const t=wrapInterop(e,types.identifier(r.name),r.interop);if(t){const e=types.expressionStatement(types.assignmentExpression("=",types.identifier(r.name),t));e.loc=r.loc,f.push(e)}}f.push(...buildNamespaceInitStatements(c,r,p))}ensureStatementsHoisted(f),e.unshiftContainer("body",f),injectWrapper(e,buildWrapper({MODULE_NAME:u,AMD_ARGUMENTS:types.arrayExpression(d),IMPORT_NAMES:m}))}}})}});export{index as default};
//# sourceMappingURL=/sm/e5173de9e7a456bb8443b4aafe99be48c785635248ded049b246aa3b462ed67c.map