@ms-cloudpack/bundler-rollup 0.2.37 → 0.3.0

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
1
  import type { BundleOptions, BundlerResult } from '@ms-cloudpack/common-types';
2
- import type { OutputOptions, RollupOptions, RollupOutput, RollupWarning } from 'rollup';
2
+ import type { OutputOptions, RollupOptions, RollupOutput, RollupLog } from 'rollup';
3
3
  /**
4
4
  * Converts rollup output to a BundlerResult.
5
5
  */
@@ -8,6 +8,6 @@ export declare function normalizeRollupOutput(params: {
8
8
  inputOptions: RollupOptions;
9
9
  outputOptions: OutputOptions;
10
10
  output: RollupOutput;
11
- warnings: RollupWarning[];
11
+ warnings: RollupLog[];
12
12
  }): BundlerResult;
13
13
  //# sourceMappingURL=normalizeRollupOutput.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"normalizeRollupOutput.d.ts","sourceRoot":"","sources":["../src/normalizeRollupOutput.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAoB,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEjG,OAAO,KAAK,EAAe,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAGrG;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE;IAC5C,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,SAAS,GAAG,WAAW,CAAC,CAAC;IACtD,YAAY,EAAE,aAAa,CAAC;IAC5B,aAAa,EAAE,aAAa,CAAC;IAC7B,MAAM,EAAE,YAAY,CAAC;IACrB,QAAQ,EAAE,aAAa,EAAE,CAAC;CAC3B,GAAG,aAAa,CAmChB"}
1
+ {"version":3,"file":"normalizeRollupOutput.d.ts","sourceRoot":"","sources":["../src/normalizeRollupOutput.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAoB,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEjG,OAAO,KAAK,EAAe,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAGjG;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE;IAC5C,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,SAAS,GAAG,WAAW,CAAC,CAAC;IACtD,YAAY,EAAE,aAAa,CAAC;IAC5B,aAAa,EAAE,aAAa,CAAC;IAC7B,MAAM,EAAE,YAAY,CAAC;IACrB,QAAQ,EAAE,SAAS,EAAE,CAAC;CACvB,GAAG,aAAa,CAmChB"}
@@ -1 +1 @@
1
- {"version":3,"file":"normalizeRollupOutput.js","sourceRoot":"","sources":["../src/normalizeRollupOutput.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAE1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAMrC;IACC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAC1E,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC;IACrC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;IACvF,CAAC;IAED,OAAO;QACL,UAAU;QACV,WAAW,EACT,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,EAAoB,EAAE;YAC7C,MAAM,OAAO,GAAqB;gBAChC,UAAU,EAAE,qBAAqB,CAAC,KAAK,CAAC,QAAQ,CAAC;gBACjD,OAAO,EAAG,KAAqB,CAAC,OAAO;aACxC,CAAC;YAEF,uFAAuF;YACvF,IAAI,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvC,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;gBAC5E,IAAI,UAAU,EAAE,CAAC;oBACf,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;gBAClC,CAAC;YACH,CAAC;YAED,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,IAAI,EAAE;QACV,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACnC,IAAI,EAAE,OAAO,CAAC,OAAO;YACrB,QAAQ,EAAE,kBAAkB,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;YAChF,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;QACH,QAAQ,EAAE,EAAE,YAAY,EAAE,aAAa,EAAE;QACzC,SAAS,EAAE,MAA4C;KACxD,CAAC;AACJ,CAAC","sourcesContent":["import type { BundleOptions, BundleOutputFile, BundlerResult } from '@ms-cloudpack/common-types';\nimport { normalizeRelativePath } from '@ms-cloudpack/path-string-parsing';\nimport type { OutputChunk, OutputOptions, RollupOptions, RollupOutput, RollupWarning } from 'rollup';\nimport { normalizeRollupLoc } from './normalizeRollupLoc.js';\n\n/**\n * Converts rollup output to a BundlerResult.\n */\nexport function normalizeRollupOutput(params: {\n options: Pick<BundleOptions, 'entries' | 'inputPath'>;\n inputOptions: RollupOptions;\n outputOptions: OutputOptions;\n output: RollupOutput;\n warnings: RollupWarning[];\n}): BundlerResult {\n const { options, inputOptions, outputOptions, output, warnings } = params;\n const outputPath = outputOptions.dir;\n if (!outputPath) {\n throw new Error('Expected outputOptions.dir to be set (this is a bug in Cloudpack)');\n }\n\n return {\n outputPath,\n outputFiles:\n output.output?.map((chunk): BundleOutputFile => {\n const outFile: BundleOutputFile = {\n outputPath: normalizeRelativePath(chunk.fileName),\n exports: (chunk as OutputChunk).exports,\n };\n\n // Rollup doesn't include entry point info in the output, so add manually if applicable\n if (outFile.outputPath.endsWith('.js')) {\n const entryPoint = options.entries[outFile.outputPath.replace(/\\.js$/, '')];\n if (entryPoint) {\n outFile.entryPoint = entryPoint;\n }\n }\n\n return outFile;\n }) || [],\n errors: [],\n warnings: warnings.map((warning) => ({\n text: warning.message,\n location: normalizeRollupLoc({ loc: warning.loc, inputPath: options.inputPath }),\n source: 'rollup',\n })),\n rawInput: { inputOptions, outputOptions },\n rawOutput: output as unknown as Record<string, unknown>,\n };\n}\n"]}
1
+ {"version":3,"file":"normalizeRollupOutput.js","sourceRoot":"","sources":["../src/normalizeRollupOutput.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAE1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAMrC;IACC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAC1E,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC;IACrC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;IACvF,CAAC;IAED,OAAO;QACL,UAAU;QACV,WAAW,EACT,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,EAAoB,EAAE;YAC7C,MAAM,OAAO,GAAqB;gBAChC,UAAU,EAAE,qBAAqB,CAAC,KAAK,CAAC,QAAQ,CAAC;gBACjD,OAAO,EAAG,KAAqB,CAAC,OAAO;aACxC,CAAC;YAEF,uFAAuF;YACvF,IAAI,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvC,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;gBAC5E,IAAI,UAAU,EAAE,CAAC;oBACf,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;gBAClC,CAAC;YACH,CAAC;YAED,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,IAAI,EAAE;QACV,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACnC,IAAI,EAAE,OAAO,CAAC,OAAO;YACrB,QAAQ,EAAE,kBAAkB,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;YAChF,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;QACH,QAAQ,EAAE,EAAE,YAAY,EAAE,aAAa,EAAE;QACzC,SAAS,EAAE,MAA4C;KACxD,CAAC;AACJ,CAAC","sourcesContent":["import type { BundleOptions, BundleOutputFile, BundlerResult } from '@ms-cloudpack/common-types';\nimport { normalizeRelativePath } from '@ms-cloudpack/path-string-parsing';\nimport type { OutputChunk, OutputOptions, RollupOptions, RollupOutput, RollupLog } from 'rollup';\nimport { normalizeRollupLoc } from './normalizeRollupLoc.js';\n\n/**\n * Converts rollup output to a BundlerResult.\n */\nexport function normalizeRollupOutput(params: {\n options: Pick<BundleOptions, 'entries' | 'inputPath'>;\n inputOptions: RollupOptions;\n outputOptions: OutputOptions;\n output: RollupOutput;\n warnings: RollupLog[];\n}): BundlerResult {\n const { options, inputOptions, outputOptions, output, warnings } = params;\n const outputPath = outputOptions.dir;\n if (!outputPath) {\n throw new Error('Expected outputOptions.dir to be set (this is a bug in Cloudpack)');\n }\n\n return {\n outputPath,\n outputFiles:\n output.output?.map((chunk): BundleOutputFile => {\n const outFile: BundleOutputFile = {\n outputPath: normalizeRelativePath(chunk.fileName),\n exports: (chunk as OutputChunk).exports,\n };\n\n // Rollup doesn't include entry point info in the output, so add manually if applicable\n if (outFile.outputPath.endsWith('.js')) {\n const entryPoint = options.entries[outFile.outputPath.replace(/\\.js$/, '')];\n if (entryPoint) {\n outFile.entryPoint = entryPoint;\n }\n }\n\n return outFile;\n }) || [],\n errors: [],\n warnings: warnings.map((warning) => ({\n text: warning.message,\n location: normalizeRollupLoc({ loc: warning.loc, inputPath: options.inputPath }),\n source: 'rollup',\n })),\n rawInput: { inputOptions, outputOptions },\n rawOutput: output as unknown as Record<string, unknown>,\n };\n}\n"]}
@@ -11,7 +11,7 @@ import { fdir } from 'fdir';
11
11
  import { walk } from 'estree-walker';
12
12
  import MagicString from 'magic-string';
13
13
  import isReference from 'is-reference';
14
- var version = '28.0.2';
14
+ var version = '28.0.3';
15
15
  var peerDependencies = {
16
16
  rollup: '^2.68.0||^3.0.0||^4.0.0',
17
17
  };
@@ -323,7 +323,7 @@ export function getDefaultExportFromNamespaceIfNotNamed (n) {
323
323
  }
324
324
 
325
325
  export function getAugmentedNamespace(n) {
326
- if (n.__esModule) return n;
326
+ if (Object.prototype.hasOwnProperty.call(n, '__esModule')) return n;
327
327
  var f = n.default;
328
328
  if (typeof f == "function") {
329
329
  var a = function a () {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/commonjs/index.js"],"names":[],"mappings":"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","sourcesContent":["// Fork of @rollup/plugin-commonjs to fix missing try/catch around instanceof checks.\n// More info: https://github.com/microsoft/cloudpack/pull/1707\n/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n\nimport { basename, extname, dirname, relative, resolve, join, sep } from 'path';\nimport { makeLegalIdentifier, createFilter, attachScopes, extractAssignedNames } from '@rollup/pluginutils';\nimport { existsSync, readFileSync, statSync } from 'fs';\nimport getCommonDir from 'commondir';\nimport { fdir } from 'fdir';\nimport { walk } from 'estree-walker';\nimport MagicString from 'magic-string';\nimport isReference from 'is-reference';\n\nvar version = '28.0.2';\nvar peerDependencies = {\n rollup: '^2.68.0||^3.0.0||^4.0.0',\n};\n\nfunction tryParse(parse, code, id) {\n try {\n return parse(code, { allowReturnOutsideFunction: true });\n } catch (err) {\n err.message += ` in ${id}`;\n throw err;\n }\n}\n\nconst firstpassGlobal = /\\b(?:require|module|exports|global)\\b/;\n\nconst firstpassNoGlobal = /\\b(?:require|module|exports)\\b/;\n\nfunction hasCjsKeywords(code, ignoreGlobal) {\n const firstpass = ignoreGlobal ? firstpassNoGlobal : firstpassGlobal;\n return firstpass.test(code);\n}\n\nfunction analyzeTopLevelStatements(parse, code, id) {\n const ast = tryParse(parse, code, id);\n\n let isEsModule = false;\n let hasDefaultExport = false;\n let hasNamedExports = false;\n\n for (const node of ast.body) {\n switch (node.type) {\n case 'ExportDefaultDeclaration':\n isEsModule = true;\n hasDefaultExport = true;\n break;\n case 'ExportNamedDeclaration':\n isEsModule = true;\n if (node.declaration) {\n hasNamedExports = true;\n } else {\n for (const specifier of node.specifiers) {\n if (specifier.exported.name === 'default') {\n hasDefaultExport = true;\n } else {\n hasNamedExports = true;\n }\n }\n }\n break;\n case 'ExportAllDeclaration':\n isEsModule = true;\n if (node.exported && node.exported.name === 'default') {\n hasDefaultExport = true;\n } else {\n hasNamedExports = true;\n }\n break;\n case 'ImportDeclaration':\n isEsModule = true;\n break;\n }\n }\n\n return { isEsModule, hasDefaultExport, hasNamedExports, ast };\n}\n\nfunction deconflict(scopes, globals, identifier) {\n let i = 1;\n let deconflicted = makeLegalIdentifier(identifier);\n const hasConflicts = () => scopes.some((scope) => scope.contains(deconflicted)) || globals.has(deconflicted);\n\n while (hasConflicts()) {\n deconflicted = makeLegalIdentifier(`${identifier}_${i}`);\n i += 1;\n }\n\n for (const scope of scopes) {\n scope.declarations[deconflicted] = true;\n }\n\n return deconflicted;\n}\n\nfunction getName(id) {\n const name = makeLegalIdentifier(basename(id, extname(id)));\n if (name !== 'index') {\n return name;\n }\n return makeLegalIdentifier(basename(dirname(id)));\n}\n\nfunction normalizePathSlashes(path) {\n return path.replace(/\\\\/g, '/');\n}\n\nconst getVirtualPathForDynamicRequirePath = (path, commonDir) => `/${normalizePathSlashes(relative(commonDir, path))}`;\n\nfunction capitalize(name) {\n return name[0].toUpperCase() + name.slice(1);\n}\n\nfunction getStrictRequiresFilter({ strictRequires }) {\n switch (strictRequires) {\n case undefined:\n case true:\n return { strictRequiresFilter: () => true, detectCyclesAndConditional: false };\n case 'auto':\n case 'debug':\n case null:\n return { strictRequiresFilter: () => false, detectCyclesAndConditional: true };\n case false:\n return { strictRequiresFilter: () => false, detectCyclesAndConditional: false };\n default:\n if (typeof strictRequires === 'string' || Array.isArray(strictRequires)) {\n return {\n strictRequiresFilter: createFilter(strictRequires),\n detectCyclesAndConditional: false,\n };\n }\n throw new Error('Unexpected value for \"strictRequires\" option.');\n }\n}\n\nfunction getPackageEntryPoint(dirPath) {\n let entryPoint = 'index.js';\n\n try {\n if (existsSync(join(dirPath, 'package.json'))) {\n entryPoint = JSON.parse(readFileSync(join(dirPath, 'package.json'), { encoding: 'utf8' })).main || entryPoint;\n }\n } catch (ignored) {\n // ignored\n }\n\n return entryPoint;\n}\n\nfunction isDirectory(path) {\n try {\n if (statSync(path).isDirectory()) return true;\n } catch (ignored) {\n // Nothing to do here\n }\n return false;\n}\n\nfunction getDynamicRequireModules(patterns, dynamicRequireRoot) {\n const dynamicRequireModules = new Map();\n const dirNames = new Set();\n for (const pattern of !patterns || Array.isArray(patterns) ? patterns || [] : [patterns]) {\n const isNegated = pattern.startsWith('!');\n const modifyMap = (targetPath, resolvedPath) =>\n isNegated ? dynamicRequireModules.delete(targetPath) : dynamicRequireModules.set(targetPath, resolvedPath);\n for (const path of new fdir()\n .withBasePath()\n .withDirs()\n .glob(isNegated ? pattern.substr(1) : pattern)\n .crawl()\n .sync()\n .sort((a, b) => a.localeCompare(b, 'en'))) {\n const resolvedPath = resolve(path);\n const requirePath = normalizePathSlashes(resolvedPath);\n if (isDirectory(resolvedPath)) {\n dirNames.add(resolvedPath);\n const modulePath = resolve(join(resolvedPath, getPackageEntryPoint(path)));\n modifyMap(requirePath, modulePath);\n modifyMap(normalizePathSlashes(modulePath), modulePath);\n } else {\n dirNames.add(dirname(resolvedPath));\n modifyMap(requirePath, resolvedPath);\n }\n }\n }\n return {\n commonDir: dirNames.size ? getCommonDir([...dirNames, dynamicRequireRoot]) : null,\n dynamicRequireModules,\n };\n}\n\nconst FAILED_REQUIRE_ERROR = `throw new Error('Could not dynamically require \"' + path + '\". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.');`;\n\nconst COMMONJS_REQUIRE_EXPORT = 'commonjsRequire';\nconst CREATE_COMMONJS_REQUIRE_EXPORT = 'createCommonjsRequire';\n\nfunction getDynamicModuleRegistry(\n isDynamicRequireModulesEnabled,\n dynamicRequireModules,\n commonDir,\n ignoreDynamicRequires,\n) {\n if (!isDynamicRequireModulesEnabled) {\n return `export function ${COMMONJS_REQUIRE_EXPORT}(path) {\n\t${FAILED_REQUIRE_ERROR}\n}`;\n }\n const dynamicModuleImports = [...dynamicRequireModules.values()]\n .map(\n (id, index) =>\n `import ${id.endsWith('.json') ? `json${index}` : `{ __require as require${index} }`} from ${JSON.stringify(\n id,\n )};`,\n )\n .join('\\n');\n const dynamicModuleProps = [...dynamicRequireModules.keys()]\n .map(\n (id, index) =>\n `\\t\\t${JSON.stringify(getVirtualPathForDynamicRequirePath(id, commonDir))}: ${\n id.endsWith('.json') ? `function () { return json${index}; }` : `require${index}`\n }`,\n )\n .join(',\\n');\n return `${dynamicModuleImports}\n\nvar dynamicModules;\n\nfunction getDynamicModules() {\n\treturn dynamicModules || (dynamicModules = {\n${dynamicModuleProps}\n\t});\n}\n\nexport function ${CREATE_COMMONJS_REQUIRE_EXPORT}(originalModuleDir) {\n\tfunction handleRequire(path) {\n\t\tvar resolvedPath = commonjsResolve(path, originalModuleDir);\n\t\tif (resolvedPath !== null) {\n\t\t\treturn getDynamicModules()[resolvedPath]();\n\t\t}\n\t\t${ignoreDynamicRequires ? 'return require(path);' : FAILED_REQUIRE_ERROR}\n\t}\n\thandleRequire.resolve = function (path) {\n\t\tvar resolvedPath = commonjsResolve(path, originalModuleDir);\n\t\tif (resolvedPath !== null) {\n\t\t\treturn resolvedPath;\n\t\t}\n\t\treturn require.resolve(path);\n\t}\n\treturn handleRequire;\n}\n\nfunction commonjsResolve (path, originalModuleDir) {\n\tvar shouldTryNodeModules = isPossibleNodeModulesPath(path);\n\tpath = normalize(path);\n\tvar relPath;\n\tif (path[0] === '/') {\n\t\toriginalModuleDir = '';\n\t}\n\tvar modules = getDynamicModules();\n\tvar checkedExtensions = ['', '.js', '.json'];\n\twhile (true) {\n\t\tif (!shouldTryNodeModules) {\n\t\t\trelPath = normalize(originalModuleDir + '/' + path);\n\t\t} else {\n\t\t\trelPath = normalize(originalModuleDir + '/node_modules/' + path);\n\t\t}\n\n\t\tif (relPath.endsWith('/..')) {\n\t\t\tbreak; // Travelled too far up, avoid infinite loop\n\t\t}\n\n\t\tfor (var extensionIndex = 0; extensionIndex < checkedExtensions.length; extensionIndex++) {\n\t\t\tvar resolvedPath = relPath + checkedExtensions[extensionIndex];\n\t\t\tif (modules[resolvedPath]) {\n\t\t\t\treturn resolvedPath;\n\t\t\t}\n\t\t}\n\t\tif (!shouldTryNodeModules) break;\n\t\tvar nextDir = normalize(originalModuleDir + '/..');\n\t\tif (nextDir === originalModuleDir) break;\n\t\toriginalModuleDir = nextDir;\n\t}\n\treturn null;\n}\n\nfunction isPossibleNodeModulesPath (modulePath) {\n\tvar c0 = modulePath[0];\n\tif (c0 === '/' || c0 === '\\\\\\\\') return false;\n\tvar c1 = modulePath[1], c2 = modulePath[2];\n\tif ((c0 === '.' && (!c1 || c1 === '/' || c1 === '\\\\\\\\')) ||\n\t\t(c0 === '.' && c1 === '.' && (!c2 || c2 === '/' || c2 === '\\\\\\\\'))) return false;\n\tif (c1 === ':' && (c2 === '/' || c2 === '\\\\\\\\')) return false;\n\treturn true;\n}\n\nfunction normalize (path) {\n\tpath = path.replace(/\\\\\\\\/g, '/');\n\tvar parts = path.split('/');\n\tvar slashed = parts[0] === '';\n\tfor (var i = 1; i < parts.length; i++) {\n\t\tif (parts[i] === '.' || parts[i] === '') {\n\t\t\tparts.splice(i--, 1);\n\t\t}\n\t}\n\tfor (var i = 1; i < parts.length; i++) {\n\t\tif (parts[i] !== '..') continue;\n\t\tif (i > 0 && parts[i - 1] !== '..' && parts[i - 1] !== '.') {\n\t\t\tparts.splice(--i, 2);\n\t\t\ti--;\n\t\t}\n\t}\n\tpath = parts.join('/');\n\tif (slashed && path[0] !== '/') path = '/' + path;\n\telse if (path.length === 0) path = '.';\n\treturn path;\n}`;\n}\n\nconst isWrappedId = (id, suffix) => id.endsWith(suffix);\nconst wrapId = (id, suffix) => `\\0${id}${suffix}`;\nconst unwrapId = (wrappedId, suffix) => wrappedId.slice(1, -suffix.length);\n\n// A proxy module when a module is required from non-wrapped CommonJS. Is different for ESM and CommonJS requires.\nconst PROXY_SUFFIX = '?commonjs-proxy';\n// Indicates that a required module is wrapped commonjs and needs special handling.\nconst WRAPPED_SUFFIX = '?commonjs-wrapped';\n// Indicates that a required module is external\nconst EXTERNAL_SUFFIX = '?commonjs-external';\n// A helper module that contains the exports object of a module\nconst EXPORTS_SUFFIX = '?commonjs-exports';\n// A helper module that contains the module object of a module, e.g. when module.exports is reassigned\nconst MODULE_SUFFIX = '?commonjs-module';\n// A special proxy for CommonJS entry points\nconst ENTRY_SUFFIX = '?commonjs-entry';\n// A proxy when wrapped ESM is required from CommonJS\nconst ES_IMPORT_SUFFIX = '?commonjs-es-import';\n\nconst DYNAMIC_MODULES_ID = '\\0commonjs-dynamic-modules';\nconst HELPERS_ID = '\\0commonjsHelpers.js';\n\nconst IS_WRAPPED_COMMONJS = 'withRequireFunction';\n\n// `x['default']` is used instead of `x.default` for backward compatibility with ES3 browsers.\n// Minifiers like uglify will usually transpile it back if compatibility with ES3 is not enabled.\n// This could be improved by inspecting Rollup's \"generatedCode\" option\n\nconst HELPERS = `\nexport var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\nexport function getDefaultExportFromCjs (x) {\n\treturn x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;\n}\n\nexport function getDefaultExportFromNamespaceIfPresent (n) {\n\treturn n && Object.prototype.hasOwnProperty.call(n, 'default') ? n['default'] : n;\n}\n\nexport function getDefaultExportFromNamespaceIfNotNamed (n) {\n\treturn n && Object.prototype.hasOwnProperty.call(n, 'default') && Object.keys(n).length === 1 ? n['default'] : n;\n}\n\nexport function getAugmentedNamespace(n) {\n if (n.__esModule) return n;\n var f = n.default;\n\tif (typeof f == \"function\") {\n\t\tvar a = function a () {\n var isInstance = false;\n try {\n isInstance = this instanceof a;\n } catch {}\n\t\t\tif (isInstance) {\n return Reflect.construct(f, arguments, this.constructor);\n\t\t\t}\n\t\t\treturn f.apply(this, arguments);\n\t\t};\n\t\ta.prototype = f.prototype;\n } else a = {};\n Object.defineProperty(a, '__esModule', {value: true});\n\tObject.keys(n).forEach(function (k) {\n\t\tvar d = Object.getOwnPropertyDescriptor(n, k);\n\t\tObject.defineProperty(a, k, d.get ? d : {\n\t\t\tenumerable: true,\n\t\t\tget: function () {\n\t\t\t\treturn n[k];\n\t\t\t}\n\t\t});\n\t});\n\treturn a;\n}\n`;\n\nfunction getHelpersModule() {\n return HELPERS;\n}\n\nfunction getUnknownRequireProxy(id, requireReturnsDefault) {\n if (requireReturnsDefault === true || id.endsWith('.json')) {\n return `export { default } from ${JSON.stringify(id)};`;\n }\n const name = getName(id);\n const exported =\n requireReturnsDefault === 'auto'\n ? `import { getDefaultExportFromNamespaceIfNotNamed } from \"${HELPERS_ID}\"; export default /*@__PURE__*/getDefaultExportFromNamespaceIfNotNamed(${name});`\n : requireReturnsDefault === 'preferred'\n ? `import { getDefaultExportFromNamespaceIfPresent } from \"${HELPERS_ID}\"; export default /*@__PURE__*/getDefaultExportFromNamespaceIfPresent(${name});`\n : !requireReturnsDefault\n ? `import { getAugmentedNamespace } from \"${HELPERS_ID}\"; export default /*@__PURE__*/getAugmentedNamespace(${name});`\n : `export default ${name};`;\n return `import * as ${name} from ${JSON.stringify(id)}; ${exported}`;\n}\n\nasync function getStaticRequireProxy(id, requireReturnsDefault, loadModule) {\n const name = getName(id);\n const {\n meta: { commonjs: commonjsMeta },\n } = await loadModule({ id });\n if (!commonjsMeta) {\n return getUnknownRequireProxy(id, requireReturnsDefault);\n }\n if (commonjsMeta.isCommonJS) {\n return `export { __moduleExports as default } from ${JSON.stringify(id)};`;\n }\n if (!requireReturnsDefault) {\n return `import { getAugmentedNamespace } from \"${HELPERS_ID}\"; import * as ${name} from ${JSON.stringify(\n id,\n )}; export default /*@__PURE__*/getAugmentedNamespace(${name});`;\n }\n if (\n requireReturnsDefault !== true &&\n (requireReturnsDefault === 'namespace' ||\n !commonjsMeta.hasDefaultExport ||\n (requireReturnsDefault === 'auto' && commonjsMeta.hasNamedExports))\n ) {\n return `import * as ${name} from ${JSON.stringify(id)}; export default ${name};`;\n }\n return `export { default } from ${JSON.stringify(id)};`;\n}\n\nfunction getEntryProxy(id, defaultIsModuleExports, getModuleInfo, shebang) {\n const {\n meta: { commonjs: commonjsMeta },\n hasDefaultExport,\n } = getModuleInfo(id);\n if (!commonjsMeta || commonjsMeta.isCommonJS !== IS_WRAPPED_COMMONJS) {\n const stringifiedId = JSON.stringify(id);\n let code = `export * from ${stringifiedId};`;\n if (hasDefaultExport) {\n code += `export { default } from ${stringifiedId};`;\n }\n return shebang + code;\n }\n const result = getEsImportProxy(id, defaultIsModuleExports, true);\n return {\n ...result,\n code: shebang + result.code,\n };\n}\n\nfunction getEsImportProxy(id, defaultIsModuleExports, moduleSideEffects) {\n const name = getName(id);\n const exportsName = `${name}Exports`;\n const requireModule = `require${capitalize(name)}`;\n let code =\n `import { getDefaultExportFromCjs } from \"${HELPERS_ID}\";\\n` +\n `import { __require as ${requireModule} } from ${JSON.stringify(id)};\\n` +\n `var ${exportsName} = ${moduleSideEffects ? '' : '/*@__PURE__*/ '}${requireModule}();\\n` +\n `export { ${exportsName} as __moduleExports };`;\n if (defaultIsModuleExports === true) {\n code += `\\nexport { ${exportsName} as default };`;\n } else if (defaultIsModuleExports === false) {\n code += `\\nexport default ${exportsName}.default;`;\n } else {\n code += `\\nexport default /*@__PURE__*/getDefaultExportFromCjs(${exportsName});`;\n }\n return {\n code,\n syntheticNamedExports: '__moduleExports',\n };\n}\n\nfunction getCandidatesForExtension(resolved, extension) {\n return [resolved + extension, `${resolved}${sep}index${extension}`];\n}\n\nfunction getCandidates(resolved, extensions) {\n return extensions.reduce(\n (paths, extension) => paths.concat(getCandidatesForExtension(resolved, extension)),\n [resolved],\n );\n}\n\nfunction resolveExtensions(importee, importer, extensions) {\n // not our problem\n if (importee[0] !== '.' || !importer) return undefined;\n\n const resolved = resolve(dirname(importer), importee);\n const candidates = getCandidates(resolved, extensions);\n\n for (let i = 0; i < candidates.length; i += 1) {\n try {\n const stats = statSync(candidates[i]);\n if (stats.isFile()) return { id: candidates[i] };\n } catch (err) {\n /* noop */\n }\n }\n\n return undefined;\n}\n\nfunction getResolveId(extensions, isPossibleCjsId) {\n const currentlyResolving = new Map();\n\n return {\n /**\n * This is a Maps of importers to Sets of require sources being resolved at\n * the moment by resolveRequireSourcesAndUpdateMeta\n */\n currentlyResolving,\n async resolveId(importee, importer, resolveOptions) {\n const customOptions = resolveOptions.custom;\n // All logic below is specific to ES imports.\n // Also, if we do not skip this logic for requires that are resolved while\n // transforming a commonjs file, it can easily lead to deadlocks.\n if (customOptions?.['node-resolve']?.isRequire) {\n return null;\n }\n const currentlyResolvingForParent = currentlyResolving.get(importer);\n if (currentlyResolvingForParent && currentlyResolvingForParent.has(importee)) {\n this.warn({\n code: 'THIS_RESOLVE_WITHOUT_OPTIONS',\n message:\n 'It appears a plugin has implemented a \"resolveId\" hook that uses \"this.resolve\" without forwarding the third \"options\" parameter of \"resolveId\". This is problematic as it can lead to wrong module resolutions especially for the node-resolve plugin and in certain cases cause early exit errors for the commonjs plugin.\\nIn rare cases, this warning can appear if the same file is both imported and required from the same mixed ES/CommonJS module, in which case it can be ignored.',\n url: 'https://rollupjs.org/guide/en/#resolveid',\n });\n return null;\n }\n\n if (isWrappedId(importee, WRAPPED_SUFFIX)) {\n return unwrapId(importee, WRAPPED_SUFFIX);\n }\n\n if (\n importee.endsWith(ENTRY_SUFFIX) ||\n isWrappedId(importee, MODULE_SUFFIX) ||\n isWrappedId(importee, EXPORTS_SUFFIX) ||\n isWrappedId(importee, PROXY_SUFFIX) ||\n isWrappedId(importee, ES_IMPORT_SUFFIX) ||\n isWrappedId(importee, EXTERNAL_SUFFIX) ||\n importee.startsWith(HELPERS_ID) ||\n importee === DYNAMIC_MODULES_ID\n ) {\n return importee;\n }\n\n if (importer) {\n if (\n importer === DYNAMIC_MODULES_ID ||\n // Proxies are only importing resolved ids, no need to resolve again\n isWrappedId(importer, PROXY_SUFFIX) ||\n isWrappedId(importer, ES_IMPORT_SUFFIX) ||\n importer.endsWith(ENTRY_SUFFIX)\n ) {\n return importee;\n }\n if (isWrappedId(importer, EXTERNAL_SUFFIX)) {\n // We need to return null for unresolved imports so that the proper warning is shown\n if (!(await this.resolve(importee, importer, Object.assign({ skipSelf: true }, resolveOptions)))) {\n return null;\n }\n // For other external imports, we need to make sure they are handled as external\n return { id: importee, external: true };\n }\n }\n\n if (importee.startsWith('\\0')) {\n return null;\n }\n\n // If this is an entry point or ESM import, we need to figure out if the importee is wrapped and\n // if that is the case, we need to add a proxy.\n const resolved =\n (await this.resolve(importee, importer, Object.assign({ skipSelf: true }, resolveOptions))) ||\n resolveExtensions(importee, importer, extensions);\n // Make sure that even if other plugins resolve again, we ignore our own proxies\n if (\n !resolved ||\n resolved.external ||\n resolved.id.endsWith(ENTRY_SUFFIX) ||\n isWrappedId(resolved.id, ES_IMPORT_SUFFIX) ||\n !isPossibleCjsId(resolved.id)\n ) {\n return resolved;\n }\n const moduleInfo = await this.load(resolved);\n const {\n meta: { commonjs: commonjsMeta },\n } = moduleInfo;\n if (commonjsMeta) {\n const { isCommonJS } = commonjsMeta;\n if (isCommonJS) {\n if (resolveOptions.isEntry) {\n moduleInfo.moduleSideEffects = true;\n // We must not precede entry proxies with a `\\0` as that will mess up relative external resolution\n return resolved.id + ENTRY_SUFFIX;\n }\n if (isCommonJS === IS_WRAPPED_COMMONJS) {\n return { id: wrapId(resolved.id, ES_IMPORT_SUFFIX), meta: { commonjs: { resolved } } };\n }\n }\n }\n return resolved;\n },\n };\n}\n\nfunction getRequireResolver(extensions, detectCyclesAndConditional, currentlyResolving) {\n const knownCjsModuleTypes = Object.create(null);\n const requiredIds = Object.create(null);\n const unconditionallyRequiredIds = Object.create(null);\n const dependencies = Object.create(null);\n const getDependencies = (id) => dependencies[id] || (dependencies[id] = new Set());\n\n const isCyclic = (id) => {\n const dependenciesToCheck = new Set(getDependencies(id));\n for (const dependency of dependenciesToCheck) {\n if (dependency === id) {\n return true;\n }\n for (const childDependency of getDependencies(dependency)) {\n dependenciesToCheck.add(childDependency);\n }\n }\n return false;\n };\n\n // Once a module is listed here, its type (wrapped or not) is fixed and may\n // not change for the rest of the current build, to not break already\n // transformed modules.\n const fullyAnalyzedModules = Object.create(null);\n\n const getTypeForFullyAnalyzedModule = (id) => {\n const knownType = knownCjsModuleTypes[id];\n if (knownType !== true || !detectCyclesAndConditional || fullyAnalyzedModules[id]) {\n return knownType;\n }\n if (isCyclic(id)) {\n return (knownCjsModuleTypes[id] = IS_WRAPPED_COMMONJS);\n }\n return knownType;\n };\n\n const setInitialParentType = (id, initialCommonJSType) => {\n // Fully analyzed modules may never change type\n if (fullyAnalyzedModules[id]) {\n return;\n }\n knownCjsModuleTypes[id] = initialCommonJSType;\n if (\n detectCyclesAndConditional &&\n knownCjsModuleTypes[id] === true &&\n requiredIds[id] &&\n !unconditionallyRequiredIds[id]\n ) {\n knownCjsModuleTypes[id] = IS_WRAPPED_COMMONJS;\n }\n };\n\n const analyzeRequiredModule = async (parentId, resolved, isConditional, loadModule) => {\n const childId = resolved.id;\n requiredIds[childId] = true;\n if (!(isConditional || knownCjsModuleTypes[parentId] === IS_WRAPPED_COMMONJS)) {\n unconditionallyRequiredIds[childId] = true;\n }\n\n getDependencies(parentId).add(childId);\n if (!isCyclic(childId)) {\n // This makes sure the current transform handler waits for all direct\n // dependencies to be loaded and transformed and therefore for all\n // transitive CommonJS dependencies to be loaded as well so that all\n // cycles have been found and knownCjsModuleTypes is reliable.\n await loadModule(resolved);\n }\n };\n\n const getTypeForImportedModule = async (resolved, loadModule) => {\n if (resolved.id in knownCjsModuleTypes) {\n // This handles cyclic ES dependencies\n return knownCjsModuleTypes[resolved.id];\n }\n const {\n meta: { commonjs },\n } = await loadModule(resolved);\n return (commonjs && commonjs.isCommonJS) || false;\n };\n\n return {\n getWrappedIds: () =>\n Object.keys(knownCjsModuleTypes).filter((id) => knownCjsModuleTypes[id] === IS_WRAPPED_COMMONJS),\n isRequiredId: (id) => requiredIds[id],\n async shouldTransformCachedModule({ id: parentId, resolvedSources, meta: { commonjs: parentMeta } }) {\n // We explicitly track ES modules to handle circular imports\n if (!(parentMeta && parentMeta.isCommonJS)) knownCjsModuleTypes[parentId] = false;\n if (isWrappedId(parentId, ES_IMPORT_SUFFIX)) return false;\n const parentRequires = parentMeta && parentMeta.requires;\n if (parentRequires) {\n setInitialParentType(parentId, parentMeta.initialCommonJSType);\n await Promise.all(\n parentRequires.map(({ resolved, isConditional }) =>\n analyzeRequiredModule(parentId, resolved, isConditional, this.load),\n ),\n );\n if (getTypeForFullyAnalyzedModule(parentId) !== parentMeta.isCommonJS) {\n return true;\n }\n for (const {\n resolved: { id },\n } of parentRequires) {\n if (getTypeForFullyAnalyzedModule(id) !== parentMeta.isRequiredCommonJS[id]) {\n return true;\n }\n }\n // Now that we decided to go with the cached copy, neither the parent\n // module nor any of its children may change types anymore\n fullyAnalyzedModules[parentId] = true;\n for (const {\n resolved: { id },\n } of parentRequires) {\n fullyAnalyzedModules[id] = true;\n }\n }\n const parentRequireSet = new Set((parentRequires || []).map(({ resolved: { id } }) => id));\n return (\n await Promise.all(\n Object.keys(resolvedSources)\n .map((source) => resolvedSources[source])\n .filter(({ id, external }) => !(external || parentRequireSet.has(id)))\n .map(async (resolved) => {\n if (isWrappedId(resolved.id, ES_IMPORT_SUFFIX)) {\n return (\n (await getTypeForImportedModule(\n (await this.load({ id: resolved.id })).meta.commonjs.resolved,\n this.load,\n )) !== IS_WRAPPED_COMMONJS\n );\n }\n return (await getTypeForImportedModule(resolved, this.load)) === IS_WRAPPED_COMMONJS;\n }),\n )\n ).some((shouldTransform) => shouldTransform);\n },\n /* eslint-disable no-param-reassign */\n resolveRequireSourcesAndUpdateMeta: (rollupContext) => async (parentId, isParentCommonJS, parentMeta, sources) => {\n parentMeta.initialCommonJSType = isParentCommonJS;\n parentMeta.requires = [];\n parentMeta.isRequiredCommonJS = Object.create(null);\n setInitialParentType(parentId, isParentCommonJS);\n const currentlyResolvingForParent = currentlyResolving.get(parentId) || new Set();\n currentlyResolving.set(parentId, currentlyResolvingForParent);\n const requireTargets = await Promise.all(\n sources.map(async ({ source, isConditional }) => {\n // Never analyze or proxy internal modules\n if (source.startsWith('\\0')) {\n return { id: source, allowProxy: false };\n }\n currentlyResolvingForParent.add(source);\n const resolved =\n (await rollupContext.resolve(source, parentId, {\n skipSelf: false,\n custom: { 'node-resolve': { isRequire: true } },\n })) || resolveExtensions(source, parentId, extensions);\n currentlyResolvingForParent.delete(source);\n if (!resolved) {\n return { id: wrapId(source, EXTERNAL_SUFFIX), allowProxy: false };\n }\n const childId = resolved.id;\n if (resolved.external) {\n return { id: wrapId(childId, EXTERNAL_SUFFIX), allowProxy: false };\n }\n parentMeta.requires.push({ resolved, isConditional });\n await analyzeRequiredModule(parentId, resolved, isConditional, rollupContext.load);\n return { id: childId, allowProxy: true };\n }),\n );\n parentMeta.isCommonJS = getTypeForFullyAnalyzedModule(parentId);\n fullyAnalyzedModules[parentId] = true;\n return requireTargets.map(({ id: dependencyId, allowProxy }, index) => {\n // eslint-disable-next-line no-multi-assign\n const isCommonJS = (parentMeta.isRequiredCommonJS[dependencyId] = getTypeForFullyAnalyzedModule(dependencyId));\n const isWrappedCommonJS = isCommonJS === IS_WRAPPED_COMMONJS;\n fullyAnalyzedModules[dependencyId] = true;\n return {\n wrappedModuleSideEffects: isWrappedCommonJS && rollupContext.getModuleInfo(dependencyId).moduleSideEffects,\n source: sources[index].source,\n id: allowProxy ? wrapId(dependencyId, isWrappedCommonJS ? WRAPPED_SUFFIX : PROXY_SUFFIX) : dependencyId,\n isCommonJS,\n };\n });\n },\n isCurrentlyResolving(source, parentId) {\n const currentlyResolvingForParent = currentlyResolving.get(parentId);\n return currentlyResolvingForParent && currentlyResolvingForParent.has(source);\n },\n };\n}\n\nfunction validateVersion(actualVersion, peerDependencyVersion, name) {\n const versionRegexp = /\\^(\\d+\\.\\d+\\.\\d+)/g;\n let minMajor = Infinity;\n let minMinor = Infinity;\n let minPatch = Infinity;\n let foundVersion;\n // eslint-disable-next-line no-cond-assign\n while ((foundVersion = versionRegexp.exec(peerDependencyVersion))) {\n const [foundMajor, foundMinor, foundPatch] = foundVersion[1].split('.').map(Number);\n if (foundMajor < minMajor) {\n minMajor = foundMajor;\n minMinor = foundMinor;\n minPatch = foundPatch;\n }\n }\n if (!actualVersion) {\n throw new Error(\n `Insufficient ${name} version: \"@rollup/plugin-commonjs\" requires at least ${name}@${minMajor}.${minMinor}.${minPatch}.`,\n );\n }\n const [major, minor, patch] = actualVersion.split('.').map(Number);\n if (major < minMajor || (major === minMajor && (minor < minMinor || (minor === minMinor && patch < minPatch)))) {\n throw new Error(\n `Insufficient ${name} version: \"@rollup/plugin-commonjs\" requires at least ${name}@${minMajor}.${minMinor}.${minPatch} but found ${name}@${actualVersion}.`,\n );\n }\n}\n\nconst operators = {\n '==': (x) => equals(x.left, x.right, false),\n\n '!=': (x) => not(operators['=='](x)),\n\n '===': (x) => equals(x.left, x.right, true),\n\n '!==': (x) => not(operators['==='](x)),\n\n '!': (x) => isFalsy(x.argument),\n\n '&&': (x) => isTruthy(x.left) && isTruthy(x.right),\n\n '||': (x) => isTruthy(x.left) || isTruthy(x.right),\n};\n\nfunction not(value) {\n return value === null ? value : !value;\n}\n\nfunction equals(a, b, strict) {\n if (a.type !== b.type) return null;\n // eslint-disable-next-line eqeqeq\n if (a.type === 'Literal') return strict ? a.value === b.value : a.value == b.value;\n return null;\n}\n\nfunction isTruthy(node) {\n if (!node) return false;\n if (node.type === 'Literal') return !!node.value;\n if (node.type === 'ParenthesizedExpression') return isTruthy(node.expression);\n if (node.operator in operators) return operators[node.operator](node);\n return null;\n}\n\nfunction isFalsy(node) {\n return not(isTruthy(node));\n}\n\nfunction getKeypath(node) {\n const parts = [];\n\n while (node.type === 'MemberExpression') {\n if (node.computed) return null;\n\n parts.unshift(node.property.name);\n // eslint-disable-next-line no-param-reassign\n node = node.object;\n }\n\n if (node.type !== 'Identifier') return null;\n\n const { name } = node;\n parts.unshift(name);\n\n return { name, keypath: parts.join('.') };\n}\n\nconst KEY_COMPILED_ESM = '__esModule';\n\nfunction getDefineCompiledEsmType(node) {\n const definedPropertyWithExports = getDefinePropertyCallName(node, 'exports');\n const definedProperty = definedPropertyWithExports || getDefinePropertyCallName(node, 'module.exports');\n if (definedProperty && definedProperty.key === KEY_COMPILED_ESM) {\n return isTruthy(definedProperty.value) ? (definedPropertyWithExports ? 'exports' : 'module') : false;\n }\n return false;\n}\n\nfunction getDefinePropertyCallName(node, targetName) {\n const {\n callee: { object, property },\n } = node;\n if (!object || object.type !== 'Identifier' || object.name !== 'Object') return;\n if (!property || property.type !== 'Identifier' || property.name !== 'defineProperty') return;\n if (node.arguments.length !== 3) return;\n\n const targetNames = targetName.split('.');\n const [target, key, value] = node.arguments;\n if (targetNames.length === 1) {\n if (target.type !== 'Identifier' || target.name !== targetNames[0]) {\n return;\n }\n }\n\n if (targetNames.length === 2) {\n if (\n target.type !== 'MemberExpression' ||\n target.object.name !== targetNames[0] ||\n target.property.name !== targetNames[1]\n ) {\n return;\n }\n }\n\n if (value.type !== 'ObjectExpression' || !value.properties) return;\n\n const valueProperty = value.properties.find((p) => p.key && p.key.name === 'value');\n if (!valueProperty || !valueProperty.value) return;\n\n // eslint-disable-next-line consistent-return\n return { key: key.value, value: valueProperty.value };\n}\n\nfunction isShorthandProperty(parent) {\n return parent && parent.type === 'Property' && parent.shorthand;\n}\n\nfunction wrapCode(magicString, uses, moduleName, exportsName, indentExclusionRanges) {\n const args = [];\n const passedArgs = [];\n if (uses.module) {\n args.push('module');\n passedArgs.push(moduleName);\n }\n if (uses.exports) {\n args.push('exports');\n passedArgs.push(uses.module ? `${moduleName}.exports` : exportsName);\n }\n magicString\n .trim()\n .indent('\\t', { exclude: indentExclusionRanges })\n .prepend(`(function (${args.join(', ')}) {\\n`)\n // For some reason, this line is only indented correctly when using a\n // require-wrapper if we have this leading space\n .append(` \\n} (${passedArgs.join(', ')}));`);\n}\n\nfunction rewriteExportsAndGetExportsBlock(\n magicString,\n moduleName,\n exportsName,\n exportedExportsName,\n wrapped,\n moduleExportsAssignments,\n firstTopLevelModuleExportsAssignment,\n exportsAssignmentsByName,\n topLevelAssignments,\n defineCompiledEsmExpressions,\n deconflictedExportNames,\n code,\n HELPERS_NAME,\n exportMode,\n defaultIsModuleExports,\n usesRequireWrapper,\n requireName,\n) {\n const exports = [];\n const exportDeclarations = [];\n\n if (usesRequireWrapper) {\n getExportsWhenUsingRequireWrapper(\n magicString,\n wrapped,\n exportMode,\n exports,\n moduleExportsAssignments,\n exportsAssignmentsByName,\n moduleName,\n exportsName,\n requireName,\n defineCompiledEsmExpressions,\n );\n } else if (exportMode === 'replace') {\n getExportsForReplacedModuleExports(\n magicString,\n exports,\n exportDeclarations,\n moduleExportsAssignments,\n firstTopLevelModuleExportsAssignment,\n exportsName,\n defaultIsModuleExports,\n HELPERS_NAME,\n );\n } else {\n if (exportMode === 'module') {\n exportDeclarations.push(`var ${exportedExportsName} = ${moduleName}.exports`);\n exports.push(`${exportedExportsName} as __moduleExports`);\n } else {\n exports.push(`${exportsName} as __moduleExports`);\n }\n if (wrapped) {\n exportDeclarations.push(getDefaultExportDeclaration(exportedExportsName, defaultIsModuleExports, HELPERS_NAME));\n } else {\n getExports(\n magicString,\n exports,\n exportDeclarations,\n moduleExportsAssignments,\n exportsAssignmentsByName,\n deconflictedExportNames,\n topLevelAssignments,\n moduleName,\n exportsName,\n exportedExportsName,\n defineCompiledEsmExpressions,\n HELPERS_NAME,\n defaultIsModuleExports,\n exportMode,\n );\n }\n }\n if (exports.length) {\n exportDeclarations.push(`export { ${exports.join(', ')} }`);\n }\n\n return `\\n\\n${exportDeclarations.join(';\\n')};`;\n}\n\nfunction getExportsWhenUsingRequireWrapper(\n magicString,\n wrapped,\n exportMode,\n exports,\n moduleExportsAssignments,\n exportsAssignmentsByName,\n moduleName,\n exportsName,\n requireName,\n defineCompiledEsmExpressions,\n) {\n exports.push(`${requireName} as __require`);\n if (wrapped) return;\n if (exportMode === 'replace') {\n rewriteModuleExportsAssignments(magicString, moduleExportsAssignments, exportsName);\n } else {\n rewriteModuleExportsAssignments(magicString, moduleExportsAssignments, `${moduleName}.exports`);\n // Collect and rewrite named exports\n for (const [exportName, { nodes }] of exportsAssignmentsByName) {\n for (const { node, type } of nodes) {\n magicString.overwrite(\n node.start,\n node.left.end,\n `${exportMode === 'module' && type === 'module' ? `${moduleName}.exports` : exportsName}.${exportName}`,\n );\n }\n }\n replaceDefineCompiledEsmExpressionsAndGetIfRestorable(\n defineCompiledEsmExpressions,\n magicString,\n exportMode,\n moduleName,\n exportsName,\n );\n }\n}\n\nfunction getExportsForReplacedModuleExports(\n magicString,\n exports,\n exportDeclarations,\n moduleExportsAssignments,\n firstTopLevelModuleExportsAssignment,\n exportsName,\n defaultIsModuleExports,\n HELPERS_NAME,\n) {\n for (const { left } of moduleExportsAssignments) {\n magicString.overwrite(left.start, left.end, exportsName);\n }\n magicString.prependRight(firstTopLevelModuleExportsAssignment.left.start, 'var ');\n exports.push(`${exportsName} as __moduleExports`);\n exportDeclarations.push(getDefaultExportDeclaration(exportsName, defaultIsModuleExports, HELPERS_NAME));\n}\n\nfunction getDefaultExportDeclaration(exportedExportsName, defaultIsModuleExports, HELPERS_NAME) {\n return `export default ${\n defaultIsModuleExports === true\n ? exportedExportsName\n : defaultIsModuleExports === false\n ? `${exportedExportsName}.default`\n : `/*@__PURE__*/${HELPERS_NAME}.getDefaultExportFromCjs(${exportedExportsName})`\n }`;\n}\n\nfunction getExports(\n magicString,\n exports,\n exportDeclarations,\n moduleExportsAssignments,\n exportsAssignmentsByName,\n deconflictedExportNames,\n topLevelAssignments,\n moduleName,\n exportsName,\n exportedExportsName,\n defineCompiledEsmExpressions,\n HELPERS_NAME,\n defaultIsModuleExports,\n exportMode,\n) {\n let deconflictedDefaultExportName;\n // Collect and rewrite module.exports assignments\n for (const { left } of moduleExportsAssignments) {\n magicString.overwrite(left.start, left.end, `${moduleName}.exports`);\n }\n\n // Collect and rewrite named exports\n for (const [exportName, { nodes }] of exportsAssignmentsByName) {\n const deconflicted = deconflictedExportNames[exportName];\n let needsDeclaration = true;\n for (const { node, type } of nodes) {\n let replacement = `${deconflicted} = ${\n exportMode === 'module' && type === 'module' ? `${moduleName}.exports` : exportsName\n }.${exportName}`;\n if (needsDeclaration && topLevelAssignments.has(node)) {\n replacement = `var ${replacement}`;\n needsDeclaration = false;\n }\n magicString.overwrite(node.start, node.left.end, replacement);\n }\n if (needsDeclaration) {\n magicString.prepend(`var ${deconflicted};\\n`);\n }\n\n if (exportName === 'default') {\n deconflictedDefaultExportName = deconflicted;\n } else {\n exports.push(exportName === deconflicted ? exportName : `${deconflicted} as ${exportName}`);\n }\n }\n\n const isRestorableCompiledEsm = replaceDefineCompiledEsmExpressionsAndGetIfRestorable(\n defineCompiledEsmExpressions,\n magicString,\n exportMode,\n moduleName,\n exportsName,\n );\n\n if (\n defaultIsModuleExports === false ||\n (defaultIsModuleExports === 'auto' && isRestorableCompiledEsm && moduleExportsAssignments.length === 0)\n ) {\n // If there is no deconflictedDefaultExportName, then we use the namespace as\n // fallback because there can be no \"default\" property on the namespace\n exports.push(`${deconflictedDefaultExportName || exportedExportsName} as default`);\n } else if (defaultIsModuleExports === true || (!isRestorableCompiledEsm && moduleExportsAssignments.length === 0)) {\n exports.push(`${exportedExportsName} as default`);\n } else {\n exportDeclarations.push(getDefaultExportDeclaration(exportedExportsName, defaultIsModuleExports, HELPERS_NAME));\n }\n}\n\nfunction rewriteModuleExportsAssignments(magicString, moduleExportsAssignments, exportsName) {\n for (const { left } of moduleExportsAssignments) {\n magicString.overwrite(left.start, left.end, exportsName);\n }\n}\n\nfunction replaceDefineCompiledEsmExpressionsAndGetIfRestorable(\n defineCompiledEsmExpressions,\n magicString,\n exportMode,\n moduleName,\n exportsName,\n) {\n let isRestorableCompiledEsm = false;\n for (const { node, type } of defineCompiledEsmExpressions) {\n isRestorableCompiledEsm = true;\n const moduleExportsExpression = node.type === 'CallExpression' ? node.arguments[0] : node.left.object;\n magicString.overwrite(\n moduleExportsExpression.start,\n moduleExportsExpression.end,\n exportMode === 'module' && type === 'module' ? `${moduleName}.exports` : exportsName,\n );\n }\n return isRestorableCompiledEsm;\n}\n\nfunction isRequireExpression(node, scope) {\n if (!node) return false;\n if (node.type !== 'CallExpression') return false;\n\n // Weird case of `require()` or `module.require()` without arguments\n if (node.arguments.length === 0) return false;\n\n return isRequire(node.callee, scope);\n}\n\nfunction isRequire(node, scope) {\n return (\n (node.type === 'Identifier' && node.name === 'require' && !scope.contains('require')) ||\n (node.type === 'MemberExpression' && isModuleRequire(node, scope))\n );\n}\n\nfunction isModuleRequire({ object, property }, scope) {\n return (\n object.type === 'Identifier' &&\n object.name === 'module' &&\n property.type === 'Identifier' &&\n property.name === 'require' &&\n !scope.contains('module')\n );\n}\n\nfunction hasDynamicArguments(node) {\n return (\n node.arguments.length > 1 ||\n (node.arguments[0].type !== 'Literal' &&\n (node.arguments[0].type !== 'TemplateLiteral' || node.arguments[0].expressions.length > 0))\n );\n}\n\nconst reservedMethod = { resolve: true, cache: true, main: true };\n\nfunction isNodeRequirePropertyAccess(parent) {\n return parent && parent.property && reservedMethod[parent.property.name];\n}\n\nfunction getRequireStringArg(node) {\n return node.arguments[0].type === 'Literal' ? node.arguments[0].value : node.arguments[0].quasis[0].value.cooked;\n}\n\nfunction getRequireHandlers() {\n const requireExpressions = [];\n\n function addRequireExpression(\n sourceId,\n node,\n scope,\n usesReturnValue,\n isInsideTryBlock,\n isInsideConditional,\n toBeRemoved,\n ) {\n requireExpressions.push({\n sourceId,\n node,\n scope,\n usesReturnValue,\n isInsideTryBlock,\n isInsideConditional,\n toBeRemoved,\n });\n }\n\n async function rewriteRequireExpressionsAndGetImportBlock(\n magicString,\n topLevelDeclarations,\n reassignedNames,\n helpersName,\n dynamicRequireName,\n moduleName,\n exportsName,\n id,\n exportMode,\n resolveRequireSourcesAndUpdateMeta,\n needsRequireWrapper,\n isEsModule,\n isDynamicRequireModulesEnabled,\n getIgnoreTryCatchRequireStatementMode,\n commonjsMeta,\n ) {\n const imports = [];\n imports.push(`import * as ${helpersName} from \"${HELPERS_ID}\"`);\n if (dynamicRequireName) {\n imports.push(\n `import { ${\n isDynamicRequireModulesEnabled ? CREATE_COMMONJS_REQUIRE_EXPORT : COMMONJS_REQUIRE_EXPORT\n } as ${dynamicRequireName} } from \"${DYNAMIC_MODULES_ID}\"`,\n );\n }\n if (exportMode === 'module') {\n imports.push(\n `import { __module as ${moduleName} } from ${JSON.stringify(wrapId(id, MODULE_SUFFIX))}`,\n `var ${exportsName} = ${moduleName}.exports`,\n );\n } else if (exportMode === 'exports') {\n imports.push(`import { __exports as ${exportsName} } from ${JSON.stringify(wrapId(id, EXPORTS_SUFFIX))}`);\n }\n const requiresBySource = collectSources(requireExpressions);\n const requireTargets = await resolveRequireSourcesAndUpdateMeta(\n id,\n needsRequireWrapper ? IS_WRAPPED_COMMONJS : !isEsModule,\n commonjsMeta,\n Object.keys(requiresBySource).map((source) => {\n return {\n source,\n isConditional: requiresBySource[source].every((require) => require.isInsideConditional),\n };\n }),\n );\n processRequireExpressions(\n imports,\n requireTargets,\n requiresBySource,\n getIgnoreTryCatchRequireStatementMode,\n magicString,\n );\n return imports.length ? `${imports.join(';\\n')};\\n\\n` : '';\n }\n\n return {\n addRequireExpression,\n rewriteRequireExpressionsAndGetImportBlock,\n };\n}\n\nfunction collectSources(requireExpressions) {\n const requiresBySource = Object.create(null);\n for (const requireExpression of requireExpressions) {\n const { sourceId } = requireExpression;\n if (!requiresBySource[sourceId]) {\n requiresBySource[sourceId] = [];\n }\n const requires = requiresBySource[sourceId];\n requires.push(requireExpression);\n }\n return requiresBySource;\n}\n\nfunction processRequireExpressions(\n imports,\n requireTargets,\n requiresBySource,\n getIgnoreTryCatchRequireStatementMode,\n magicString,\n) {\n const generateRequireName = getGenerateRequireName();\n for (const { source, id: resolvedId, isCommonJS, wrappedModuleSideEffects } of requireTargets) {\n const requires = requiresBySource[source];\n const name = generateRequireName(requires);\n let usesRequired = false;\n let needsImport = false;\n for (const { node, usesReturnValue, toBeRemoved, isInsideTryBlock } of requires) {\n const { canConvertRequire, shouldRemoveRequire } =\n isInsideTryBlock && isWrappedId(resolvedId, EXTERNAL_SUFFIX)\n ? getIgnoreTryCatchRequireStatementMode(source)\n : { canConvertRequire: true, shouldRemoveRequire: false };\n if (shouldRemoveRequire) {\n if (usesReturnValue) {\n magicString.overwrite(node.start, node.end, 'undefined');\n } else {\n magicString.remove(toBeRemoved.start, toBeRemoved.end);\n }\n } else if (canConvertRequire) {\n needsImport = true;\n if (isCommonJS === IS_WRAPPED_COMMONJS) {\n magicString.overwrite(node.start, node.end, `${wrappedModuleSideEffects ? '' : '/*@__PURE__*/ '}${name}()`);\n } else if (usesReturnValue) {\n usesRequired = true;\n magicString.overwrite(node.start, node.end, name);\n } else {\n magicString.remove(toBeRemoved.start, toBeRemoved.end);\n }\n }\n }\n if (needsImport) {\n if (isCommonJS === IS_WRAPPED_COMMONJS) {\n imports.push(`import { __require as ${name} } from ${JSON.stringify(resolvedId)}`);\n } else {\n imports.push(`import ${usesRequired ? `${name} from ` : ''}${JSON.stringify(resolvedId)}`);\n }\n }\n }\n}\n\nfunction getGenerateRequireName() {\n let uid = 0;\n return (requires) => {\n let name;\n const hasNameConflict = ({ scope }) => scope.contains(name);\n do {\n name = `require$$${uid}`;\n uid += 1;\n } while (requires.some(hasNameConflict));\n return name;\n };\n}\n\n/* eslint-disable no-param-reassign, no-shadow, no-underscore-dangle, no-continue */\n\nconst exportsPattern = /^(?:module\\.)?exports(?:\\.([a-zA-Z_$][a-zA-Z_$0-9]*))?$/;\n\nconst functionType = /^(?:FunctionDeclaration|FunctionExpression|ArrowFunctionExpression)$/;\n\n// There are three different types of CommonJS modules, described by their\n// \"exportMode\":\n// - exports: Only assignments to (module.)exports properties\n// - replace: A single assignment to module.exports itself\n// - module: Anything else\n// Special cases:\n// - usesRequireWrapper\n// - isWrapped\nasync function transformCommonjs(\n parse,\n code,\n id,\n isEsModule,\n ignoreGlobal,\n ignoreRequire,\n ignoreDynamicRequires,\n getIgnoreTryCatchRequireStatementMode,\n sourceMap,\n isDynamicRequireModulesEnabled,\n dynamicRequireModules,\n commonDir,\n astCache,\n defaultIsModuleExports,\n needsRequireWrapper,\n resolveRequireSourcesAndUpdateMeta,\n isRequired,\n checkDynamicRequire,\n commonjsMeta,\n) {\n const ast = astCache || tryParse(parse, code, id);\n const magicString = new MagicString(code);\n const uses = {\n module: false,\n exports: false,\n global: false,\n require: false,\n };\n const virtualDynamicRequirePath =\n isDynamicRequireModulesEnabled && getVirtualPathForDynamicRequirePath(dirname(id), commonDir);\n let scope = attachScopes(ast, 'scope');\n let lexicalDepth = 0;\n let programDepth = 0;\n let classBodyDepth = 0;\n let currentTryBlockEnd = null;\n let shouldWrap = false;\n\n const globals = new Set();\n // A conditionalNode is a node for which execution is not guaranteed. If such a node is a require\n // or contains nested requires, those should be handled as function calls unless there is an\n // unconditional require elsewhere.\n let currentConditionalNodeEnd = null;\n const conditionalNodes = new Set();\n const { addRequireExpression, rewriteRequireExpressionsAndGetImportBlock } = getRequireHandlers();\n\n // See which names are assigned to. This is necessary to prevent\n // illegally replacing `var foo = require('foo')` with `import foo from 'foo'`,\n // where `foo` is later reassigned. (This happens in the wild. CommonJS, sigh)\n const reassignedNames = new Set();\n const topLevelDeclarations = [];\n const skippedNodes = new Set();\n const moduleAccessScopes = new Set([scope]);\n const exportsAccessScopes = new Set([scope]);\n const moduleExportsAssignments = [];\n let firstTopLevelModuleExportsAssignment = null;\n const exportsAssignmentsByName = new Map();\n const topLevelAssignments = new Set();\n const topLevelDefineCompiledEsmExpressions = [];\n const replacedGlobal = [];\n const replacedThis = [];\n const replacedDynamicRequires = [];\n const importedVariables = new Set();\n const indentExclusionRanges = [];\n\n walk(ast, {\n enter(node, parent) {\n if (skippedNodes.has(node)) {\n this.skip();\n return;\n }\n\n if (currentTryBlockEnd !== null && node.start > currentTryBlockEnd) {\n currentTryBlockEnd = null;\n }\n if (currentConditionalNodeEnd !== null && node.start > currentConditionalNodeEnd) {\n currentConditionalNodeEnd = null;\n }\n if (currentConditionalNodeEnd === null && conditionalNodes.has(node)) {\n currentConditionalNodeEnd = node.end;\n }\n\n programDepth += 1;\n if (node.scope) ({ scope } = node);\n if (functionType.test(node.type)) lexicalDepth += 1;\n if (sourceMap) {\n magicString.addSourcemapLocation(node.start);\n magicString.addSourcemapLocation(node.end);\n }\n\n // eslint-disable-next-line default-case\n switch (node.type) {\n case 'AssignmentExpression':\n if (node.left.type === 'MemberExpression') {\n const flattened = getKeypath(node.left);\n if (!flattened || scope.contains(flattened.name)) return;\n\n const exportsPatternMatch = exportsPattern.exec(flattened.keypath);\n if (!exportsPatternMatch || flattened.keypath === 'exports') return;\n\n const [, exportName] = exportsPatternMatch;\n uses[flattened.name] = true;\n\n // we're dealing with `module.exports = ...` or `[module.]exports.foo = ...` –\n if (flattened.keypath === 'module.exports') {\n moduleExportsAssignments.push(node);\n if (programDepth > 3) {\n moduleAccessScopes.add(scope);\n } else if (!firstTopLevelModuleExportsAssignment) {\n firstTopLevelModuleExportsAssignment = node;\n }\n } else if (exportName === KEY_COMPILED_ESM) {\n if (programDepth > 3) {\n shouldWrap = true;\n } else {\n // The \"type\" is either \"module\" or \"exports\" to discern\n // assignments to module.exports vs exports if needed\n topLevelDefineCompiledEsmExpressions.push({ node, type: flattened.name });\n }\n } else {\n const exportsAssignments = exportsAssignmentsByName.get(exportName) || {\n nodes: [],\n scopes: new Set(),\n };\n exportsAssignments.nodes.push({ node, type: flattened.name });\n exportsAssignments.scopes.add(scope);\n exportsAccessScopes.add(scope);\n exportsAssignmentsByName.set(exportName, exportsAssignments);\n if (programDepth <= 3) {\n topLevelAssignments.add(node);\n }\n }\n\n skippedNodes.add(node.left);\n } else {\n for (const name of extractAssignedNames(node.left)) {\n reassignedNames.add(name);\n }\n }\n return;\n case 'CallExpression': {\n const defineCompiledEsmType = getDefineCompiledEsmType(node);\n if (defineCompiledEsmType) {\n if (programDepth === 3 && parent.type === 'ExpressionStatement') {\n // skip special handling for [module.]exports until we know we render this\n skippedNodes.add(node.arguments[0]);\n topLevelDefineCompiledEsmExpressions.push({ node, type: defineCompiledEsmType });\n } else {\n shouldWrap = true;\n }\n return;\n }\n\n // Transform require.resolve\n if (\n isDynamicRequireModulesEnabled &&\n node.callee.object &&\n isRequire(node.callee.object, scope) &&\n node.callee.property.name === 'resolve'\n ) {\n checkDynamicRequire(node.start);\n uses.require = true;\n const requireNode = node.callee.object;\n replacedDynamicRequires.push(requireNode);\n skippedNodes.add(node.callee);\n return;\n }\n\n if (!isRequireExpression(node, scope)) {\n const keypath = getKeypath(node.callee);\n if (keypath && importedVariables.has(keypath.name)) {\n // Heuristic to deoptimize requires after a required function has been called\n currentConditionalNodeEnd = Infinity;\n }\n return;\n }\n\n skippedNodes.add(node.callee);\n uses.require = true;\n\n if (hasDynamicArguments(node)) {\n if (isDynamicRequireModulesEnabled) {\n checkDynamicRequire(node.start);\n }\n if (!ignoreDynamicRequires) {\n replacedDynamicRequires.push(node.callee);\n }\n return;\n }\n\n const requireStringArg = getRequireStringArg(node);\n if (!ignoreRequire(requireStringArg)) {\n const usesReturnValue = parent.type !== 'ExpressionStatement';\n const toBeRemoved =\n parent.type === 'ExpressionStatement' &&\n (!currentConditionalNodeEnd ||\n // We should completely remove requires directly in a try-catch\n // so that Rollup can remove up the try-catch\n (currentTryBlockEnd !== null && currentTryBlockEnd < currentConditionalNodeEnd))\n ? parent\n : node;\n addRequireExpression(\n requireStringArg,\n node,\n scope,\n usesReturnValue,\n currentTryBlockEnd !== null,\n currentConditionalNodeEnd !== null,\n toBeRemoved,\n );\n if (parent.type === 'VariableDeclarator' && parent.id.type === 'Identifier') {\n for (const name of extractAssignedNames(parent.id)) {\n importedVariables.add(name);\n }\n }\n }\n return;\n }\n case 'ClassBody':\n classBodyDepth += 1;\n return;\n case 'ConditionalExpression':\n case 'IfStatement':\n // skip dead branches\n if (isFalsy(node.test)) {\n skippedNodes.add(node.consequent);\n } else if (isTruthy(node.test)) {\n if (node.alternate) {\n skippedNodes.add(node.alternate);\n }\n } else {\n conditionalNodes.add(node.consequent);\n if (node.alternate) {\n conditionalNodes.add(node.alternate);\n }\n }\n return;\n case 'ArrowFunctionExpression':\n case 'FunctionDeclaration':\n case 'FunctionExpression':\n // requires in functions should be conditional unless it is an IIFE\n if (currentConditionalNodeEnd === null && !(parent.type === 'CallExpression' && parent.callee === node)) {\n currentConditionalNodeEnd = node.end;\n }\n return;\n case 'Identifier': {\n const { name } = node;\n if (\n !isReference(node, parent) ||\n scope.contains(name) ||\n (parent.type === 'PropertyDefinition' && parent.key === node)\n )\n return;\n switch (name) {\n case 'require':\n uses.require = true;\n if (isNodeRequirePropertyAccess(parent)) {\n return;\n }\n if (!ignoreDynamicRequires) {\n if (isShorthandProperty(parent)) {\n // as key and value are the same object, isReference regards\n // both as references, so we need to skip now\n skippedNodes.add(parent.value);\n magicString.prependRight(node.start, 'require: ');\n }\n replacedDynamicRequires.push(node);\n }\n return;\n case 'module':\n case 'exports':\n shouldWrap = true;\n uses[name] = true;\n return;\n case 'global':\n uses.global = true;\n if (!ignoreGlobal) {\n replacedGlobal.push(node);\n }\n return;\n case 'define':\n magicString.overwrite(node.start, node.end, 'undefined', {\n storeName: true,\n });\n return;\n default:\n globals.add(name);\n return;\n }\n }\n case 'LogicalExpression':\n // skip dead branches\n if (node.operator === '&&') {\n if (isFalsy(node.left)) {\n skippedNodes.add(node.right);\n } else if (!isTruthy(node.left)) {\n conditionalNodes.add(node.right);\n }\n } else if (node.operator === '||') {\n if (isTruthy(node.left)) {\n skippedNodes.add(node.right);\n } else if (!isFalsy(node.left)) {\n conditionalNodes.add(node.right);\n }\n }\n return;\n case 'MemberExpression':\n if (!isDynamicRequireModulesEnabled && isModuleRequire(node, scope)) {\n uses.require = true;\n replacedDynamicRequires.push(node);\n skippedNodes.add(node.object);\n skippedNodes.add(node.property);\n }\n return;\n case 'ReturnStatement':\n // if top-level return, we need to wrap it\n if (lexicalDepth === 0) {\n shouldWrap = true;\n }\n return;\n case 'ThisExpression':\n // rewrite top-level `this` as `commonjsHelpers.commonjsGlobal`\n if (lexicalDepth === 0 && !classBodyDepth) {\n uses.global = true;\n if (!ignoreGlobal) {\n replacedThis.push(node);\n }\n }\n return;\n case 'TryStatement':\n if (currentTryBlockEnd === null) {\n currentTryBlockEnd = node.block.end;\n }\n if (currentConditionalNodeEnd === null) {\n currentConditionalNodeEnd = node.end;\n }\n return;\n case 'UnaryExpression':\n // rewrite `typeof module`, `typeof module.exports` and `typeof exports` (https://github.com/rollup/rollup-plugin-commonjs/issues/151)\n if (node.operator === 'typeof') {\n const flattened = getKeypath(node.argument);\n if (!flattened) return;\n\n if (scope.contains(flattened.name)) return;\n\n if (\n !isEsModule &&\n (flattened.keypath === 'module.exports' ||\n flattened.keypath === 'module' ||\n flattened.keypath === 'exports')\n ) {\n magicString.overwrite(node.start, node.end, `'object'`, {\n storeName: false,\n });\n }\n }\n return;\n case 'VariableDeclaration':\n if (!scope.parent) {\n topLevelDeclarations.push(node);\n }\n return;\n case 'TemplateElement':\n if (node.value.raw.includes('\\n')) {\n indentExclusionRanges.push([node.start, node.end]);\n }\n }\n },\n\n leave(node) {\n programDepth -= 1;\n if (node.scope) scope = scope.parent;\n if (functionType.test(node.type)) lexicalDepth -= 1;\n if (node.type === 'ClassBody') classBodyDepth -= 1;\n },\n });\n\n const nameBase = getName(id);\n const exportsName = deconflict([...exportsAccessScopes], globals, nameBase);\n const moduleName = deconflict([...moduleAccessScopes], globals, `${nameBase}Module`);\n const requireName = deconflict([scope], globals, `require${capitalize(nameBase)}`);\n const isRequiredName = deconflict([scope], globals, `hasRequired${capitalize(nameBase)}`);\n const helpersName = deconflict([scope], globals, 'commonjsHelpers');\n const dynamicRequireName =\n replacedDynamicRequires.length > 0 &&\n deconflict(\n [scope],\n globals,\n isDynamicRequireModulesEnabled ? CREATE_COMMONJS_REQUIRE_EXPORT : COMMONJS_REQUIRE_EXPORT,\n );\n const deconflictedExportNames = Object.create(null);\n for (const [exportName, { scopes }] of exportsAssignmentsByName) {\n deconflictedExportNames[exportName] = deconflict([...scopes], globals, exportName);\n }\n\n for (const node of replacedGlobal) {\n magicString.overwrite(node.start, node.end, `${helpersName}.commonjsGlobal`, {\n storeName: true,\n });\n }\n for (const node of replacedThis) {\n magicString.overwrite(node.start, node.end, exportsName, {\n storeName: true,\n });\n }\n for (const node of replacedDynamicRequires) {\n magicString.overwrite(\n node.start,\n node.end,\n isDynamicRequireModulesEnabled\n ? `${dynamicRequireName}(${JSON.stringify(virtualDynamicRequirePath)})`\n : dynamicRequireName,\n {\n contentOnly: true,\n storeName: true,\n },\n );\n }\n\n // We cannot wrap ES/mixed modules\n shouldWrap = !isEsModule && (shouldWrap || (uses.exports && moduleExportsAssignments.length > 0));\n\n if (\n !(\n shouldWrap ||\n isRequired ||\n needsRequireWrapper ||\n uses.module ||\n uses.exports ||\n uses.require ||\n topLevelDefineCompiledEsmExpressions.length > 0\n ) &&\n (ignoreGlobal || !uses.global)\n ) {\n return { meta: { commonjs: { isCommonJS: false } } };\n }\n\n let leadingComment = '';\n if (code.startsWith('/*')) {\n const commentEnd = code.indexOf('*/', 2) + 2;\n leadingComment = `${code.slice(0, commentEnd)}\\n`;\n magicString.remove(0, commentEnd).trim();\n }\n\n let shebang = '';\n if (code.startsWith('#!')) {\n const shebangEndPosition = code.indexOf('\\n') + 1;\n shebang = code.slice(0, shebangEndPosition);\n magicString.remove(0, shebangEndPosition).trim();\n }\n\n const exportMode = isEsModule\n ? 'none'\n : shouldWrap\n ? uses.module\n ? 'module'\n : 'exports'\n : firstTopLevelModuleExportsAssignment\n ? exportsAssignmentsByName.size === 0 && topLevelDefineCompiledEsmExpressions.length === 0\n ? 'replace'\n : 'module'\n : moduleExportsAssignments.length === 0\n ? 'exports'\n : 'module';\n\n const exportedExportsName = exportMode === 'module' ? deconflict([], globals, `${nameBase}Exports`) : exportsName;\n\n const importBlock = await rewriteRequireExpressionsAndGetImportBlock(\n magicString,\n topLevelDeclarations,\n reassignedNames,\n helpersName,\n dynamicRequireName,\n moduleName,\n exportsName,\n id,\n exportMode,\n resolveRequireSourcesAndUpdateMeta,\n needsRequireWrapper,\n isEsModule,\n isDynamicRequireModulesEnabled,\n getIgnoreTryCatchRequireStatementMode,\n commonjsMeta,\n );\n const usesRequireWrapper = commonjsMeta.isCommonJS === IS_WRAPPED_COMMONJS;\n const exportBlock = isEsModule\n ? ''\n : rewriteExportsAndGetExportsBlock(\n magicString,\n moduleName,\n exportsName,\n exportedExportsName,\n shouldWrap,\n moduleExportsAssignments,\n firstTopLevelModuleExportsAssignment,\n exportsAssignmentsByName,\n topLevelAssignments,\n topLevelDefineCompiledEsmExpressions,\n deconflictedExportNames,\n code,\n helpersName,\n exportMode,\n defaultIsModuleExports,\n usesRequireWrapper,\n requireName,\n );\n\n if (shouldWrap) {\n wrapCode(magicString, uses, moduleName, exportsName, indentExclusionRanges);\n }\n\n if (usesRequireWrapper) {\n magicString.trim().indent('\\t', {\n exclude: indentExclusionRanges,\n });\n const exported = exportMode === 'module' ? `${moduleName}.exports` : exportsName;\n magicString.prepend(\n `var ${isRequiredName};\n\nfunction ${requireName} () {\n\\tif (${isRequiredName}) return ${exported};\n\\t${isRequiredName} = 1;\n`,\n ).append(`\n\\treturn ${exported};\n}`);\n if (exportMode === 'replace') {\n magicString.prepend(`var ${exportsName};\\n`);\n }\n }\n\n magicString\n .trim()\n .prepend(shebang + leadingComment + importBlock)\n .append(exportBlock);\n\n return {\n code: magicString.toString(),\n map: sourceMap ? magicString.generateMap() : null,\n syntheticNamedExports: isEsModule || usesRequireWrapper ? false : '__moduleExports',\n meta: { commonjs: { ...commonjsMeta, shebang } },\n };\n}\n\nconst PLUGIN_NAME = 'commonjs';\n\nfunction commonjs(options = {}) {\n const {\n ignoreGlobal,\n ignoreDynamicRequires,\n requireReturnsDefault: requireReturnsDefaultOption,\n defaultIsModuleExports: defaultIsModuleExportsOption,\n esmExternals,\n } = options;\n const extensions = options.extensions || ['.js'];\n const filter = createFilter(options.include, options.exclude);\n const isPossibleCjsId = (id) => {\n const extName = extname(id);\n return extName === '.cjs' || (extensions.includes(extName) && filter(id));\n };\n\n const { strictRequiresFilter, detectCyclesAndConditional } = getStrictRequiresFilter(options);\n\n const getRequireReturnsDefault =\n typeof requireReturnsDefaultOption === 'function' ? requireReturnsDefaultOption : () => requireReturnsDefaultOption;\n\n let esmExternalIds;\n const isEsmExternal =\n typeof esmExternals === 'function'\n ? esmExternals\n : Array.isArray(esmExternals)\n ? ((esmExternalIds = new Set(esmExternals)), (id) => esmExternalIds.has(id))\n : () => esmExternals;\n\n const getDefaultIsModuleExports =\n typeof defaultIsModuleExportsOption === 'function'\n ? defaultIsModuleExportsOption\n : () => (typeof defaultIsModuleExportsOption === 'boolean' ? defaultIsModuleExportsOption : 'auto');\n\n const dynamicRequireRoot =\n typeof options.dynamicRequireRoot === 'string' ? resolve(options.dynamicRequireRoot) : process.cwd();\n const { commonDir, dynamicRequireModules } = getDynamicRequireModules(\n options.dynamicRequireTargets,\n dynamicRequireRoot,\n );\n const isDynamicRequireModulesEnabled = dynamicRequireModules.size > 0;\n\n const ignoreRequire =\n typeof options.ignore === 'function'\n ? options.ignore\n : Array.isArray(options.ignore)\n ? (id) => options.ignore.includes(id)\n : () => false;\n\n const getIgnoreTryCatchRequireStatementMode = (id) => {\n const mode =\n typeof options.ignoreTryCatch === 'function'\n ? options.ignoreTryCatch(id)\n : Array.isArray(options.ignoreTryCatch)\n ? options.ignoreTryCatch.includes(id)\n : typeof options.ignoreTryCatch !== 'undefined'\n ? options.ignoreTryCatch\n : true;\n\n return {\n canConvertRequire: mode !== 'remove' && mode !== true,\n shouldRemoveRequire: mode === 'remove',\n };\n };\n\n const { currentlyResolving, resolveId } = getResolveId(extensions, isPossibleCjsId);\n\n const sourceMap = options.sourceMap !== false;\n\n // Initialized in buildStart\n let requireResolver;\n\n function transformAndCheckExports(code, id) {\n const normalizedId = normalizePathSlashes(id);\n const { isEsModule, hasDefaultExport, hasNamedExports, ast } = analyzeTopLevelStatements(this.parse, code, id);\n\n const commonjsMeta = this.getModuleInfo(id).meta.commonjs || {};\n if (hasDefaultExport) {\n commonjsMeta.hasDefaultExport = true;\n }\n if (hasNamedExports) {\n commonjsMeta.hasNamedExports = true;\n }\n\n if (\n !dynamicRequireModules.has(normalizedId) &&\n (!(hasCjsKeywords(code, ignoreGlobal) || requireResolver.isRequiredId(id)) ||\n (isEsModule && !options.transformMixedEsModules))\n ) {\n commonjsMeta.isCommonJS = false;\n return { meta: { commonjs: commonjsMeta } };\n }\n\n const needsRequireWrapper = !isEsModule && (dynamicRequireModules.has(normalizedId) || strictRequiresFilter(id));\n\n const checkDynamicRequire = (position) => {\n const normalizedDynamicRequireRoot = normalizePathSlashes(dynamicRequireRoot);\n\n if (normalizedId.indexOf(normalizedDynamicRequireRoot) !== 0) {\n this.error(\n {\n code: 'DYNAMIC_REQUIRE_OUTSIDE_ROOT',\n normalizedId,\n normalizedDynamicRequireRoot,\n message: `\"${normalizedId}\" contains dynamic require statements but it is not within the current dynamicRequireRoot \"${normalizedDynamicRequireRoot}\". You should set dynamicRequireRoot to \"${dirname(\n normalizedId,\n )}\" or one of its parent directories.`,\n },\n position,\n );\n }\n };\n\n return transformCommonjs(\n this.parse,\n code,\n id,\n isEsModule,\n ignoreGlobal || isEsModule,\n ignoreRequire,\n ignoreDynamicRequires && !isDynamicRequireModulesEnabled,\n getIgnoreTryCatchRequireStatementMode,\n sourceMap,\n isDynamicRequireModulesEnabled,\n dynamicRequireModules,\n commonDir,\n ast,\n getDefaultIsModuleExports(id),\n needsRequireWrapper,\n requireResolver.resolveRequireSourcesAndUpdateMeta(this),\n requireResolver.isRequiredId(id),\n checkDynamicRequire,\n commonjsMeta,\n );\n }\n\n return {\n name: PLUGIN_NAME,\n\n version,\n\n options(rawOptions) {\n // We inject the resolver in the beginning so that \"catch-all-resolver\" like node-resolver\n // do not prevent our plugin from resolving entry points ot proxies.\n const plugins = Array.isArray(rawOptions.plugins)\n ? [...rawOptions.plugins]\n : rawOptions.plugins\n ? [rawOptions.plugins]\n : [];\n plugins.unshift({\n name: 'commonjs--resolver',\n resolveId,\n });\n return { ...rawOptions, plugins };\n },\n\n buildStart({ plugins }) {\n validateVersion(this.meta.rollupVersion, peerDependencies.rollup, 'rollup');\n const nodeResolve = plugins.find(({ name }) => name === 'node-resolve');\n if (nodeResolve) {\n validateVersion(nodeResolve.version, '^13.0.6', '@rollup/plugin-node-resolve');\n }\n if (options.namedExports != null) {\n this.warn(\n 'The namedExports option from \"@rollup/plugin-commonjs\" is deprecated. Named exports are now handled automatically.',\n );\n }\n requireResolver = getRequireResolver(extensions, detectCyclesAndConditional, currentlyResolving);\n },\n\n buildEnd() {\n if (options.strictRequires === 'debug') {\n const wrappedIds = requireResolver.getWrappedIds();\n if (wrappedIds.length) {\n this.warn({\n code: 'WRAPPED_IDS',\n ids: wrappedIds,\n message: `The commonjs plugin automatically wrapped the following files:\\n[\\n${wrappedIds\n .map((id) => `\\t${JSON.stringify(relative(process.cwd(), id))}`)\n .join(',\\n')}\\n]`,\n });\n } else {\n this.warn({\n code: 'WRAPPED_IDS',\n ids: wrappedIds,\n message: 'The commonjs plugin did not wrap any files.',\n });\n }\n }\n },\n\n async load(id) {\n if (id === HELPERS_ID) {\n return getHelpersModule();\n }\n\n if (isWrappedId(id, MODULE_SUFFIX)) {\n const name = getName(unwrapId(id, MODULE_SUFFIX));\n return {\n code: `var ${name} = {exports: {}}; export {${name} as __module}`,\n meta: { commonjs: { isCommonJS: false } },\n };\n }\n\n if (isWrappedId(id, EXPORTS_SUFFIX)) {\n const name = getName(unwrapId(id, EXPORTS_SUFFIX));\n return {\n code: `var ${name} = {}; export {${name} as __exports}`,\n meta: { commonjs: { isCommonJS: false } },\n };\n }\n\n if (isWrappedId(id, EXTERNAL_SUFFIX)) {\n const actualId = unwrapId(id, EXTERNAL_SUFFIX);\n return getUnknownRequireProxy(actualId, isEsmExternal(actualId) ? getRequireReturnsDefault(actualId) : true);\n }\n\n // entry suffix is just appended to not mess up relative external resolution\n if (id.endsWith(ENTRY_SUFFIX)) {\n const acutalId = id.slice(0, -ENTRY_SUFFIX.length);\n const {\n meta: { commonjs: commonjsMeta },\n } = this.getModuleInfo(acutalId);\n const shebang = commonjsMeta?.shebang ?? '';\n return getEntryProxy(acutalId, getDefaultIsModuleExports(acutalId), this.getModuleInfo, shebang);\n }\n\n if (isWrappedId(id, ES_IMPORT_SUFFIX)) {\n const actualId = unwrapId(id, ES_IMPORT_SUFFIX);\n return getEsImportProxy(\n actualId,\n getDefaultIsModuleExports(actualId),\n (await this.load({ id: actualId })).moduleSideEffects,\n );\n }\n\n if (id === DYNAMIC_MODULES_ID) {\n return getDynamicModuleRegistry(\n isDynamicRequireModulesEnabled,\n dynamicRequireModules,\n commonDir,\n ignoreDynamicRequires,\n );\n }\n\n if (isWrappedId(id, PROXY_SUFFIX)) {\n const actualId = unwrapId(id, PROXY_SUFFIX);\n return getStaticRequireProxy(actualId, getRequireReturnsDefault(actualId), this.load);\n }\n\n return null;\n },\n\n shouldTransformCachedModule(...args) {\n return requireResolver.shouldTransformCachedModule.call(this, ...args);\n },\n\n transform(code, id) {\n if (!isPossibleCjsId(id)) return null;\n\n try {\n return transformAndCheckExports.call(this, code, id);\n } catch (err) {\n return this.error(err, err.pos);\n }\n },\n };\n}\n\nexport { commonjs as default };\n//# sourceMappingURL=index.js.map\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/commonjs/index.js"],"names":[],"mappings":"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","sourcesContent":["// Fork of @rollup/plugin-commonjs to fix missing try/catch around instanceof checks.\n// More info: https://github.com/microsoft/cloudpack/pull/1707\n/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n\nimport { basename, extname, dirname, relative, resolve, join, sep } from 'path';\nimport { makeLegalIdentifier, createFilter, attachScopes, extractAssignedNames } from '@rollup/pluginutils';\nimport { existsSync, readFileSync, statSync } from 'fs';\nimport getCommonDir from 'commondir';\nimport { fdir } from 'fdir';\nimport { walk } from 'estree-walker';\nimport MagicString from 'magic-string';\nimport isReference from 'is-reference';\n\nvar version = '28.0.3';\nvar peerDependencies = {\n rollup: '^2.68.0||^3.0.0||^4.0.0',\n};\n\nfunction tryParse(parse, code, id) {\n try {\n return parse(code, { allowReturnOutsideFunction: true });\n } catch (err) {\n err.message += ` in ${id}`;\n throw err;\n }\n}\n\nconst firstpassGlobal = /\\b(?:require|module|exports|global)\\b/;\n\nconst firstpassNoGlobal = /\\b(?:require|module|exports)\\b/;\n\nfunction hasCjsKeywords(code, ignoreGlobal) {\n const firstpass = ignoreGlobal ? firstpassNoGlobal : firstpassGlobal;\n return firstpass.test(code);\n}\n\nfunction analyzeTopLevelStatements(parse, code, id) {\n const ast = tryParse(parse, code, id);\n\n let isEsModule = false;\n let hasDefaultExport = false;\n let hasNamedExports = false;\n\n for (const node of ast.body) {\n switch (node.type) {\n case 'ExportDefaultDeclaration':\n isEsModule = true;\n hasDefaultExport = true;\n break;\n case 'ExportNamedDeclaration':\n isEsModule = true;\n if (node.declaration) {\n hasNamedExports = true;\n } else {\n for (const specifier of node.specifiers) {\n if (specifier.exported.name === 'default') {\n hasDefaultExport = true;\n } else {\n hasNamedExports = true;\n }\n }\n }\n break;\n case 'ExportAllDeclaration':\n isEsModule = true;\n if (node.exported && node.exported.name === 'default') {\n hasDefaultExport = true;\n } else {\n hasNamedExports = true;\n }\n break;\n case 'ImportDeclaration':\n isEsModule = true;\n break;\n }\n }\n\n return { isEsModule, hasDefaultExport, hasNamedExports, ast };\n}\n\nfunction deconflict(scopes, globals, identifier) {\n let i = 1;\n let deconflicted = makeLegalIdentifier(identifier);\n const hasConflicts = () => scopes.some((scope) => scope.contains(deconflicted)) || globals.has(deconflicted);\n\n while (hasConflicts()) {\n deconflicted = makeLegalIdentifier(`${identifier}_${i}`);\n i += 1;\n }\n\n for (const scope of scopes) {\n scope.declarations[deconflicted] = true;\n }\n\n return deconflicted;\n}\n\nfunction getName(id) {\n const name = makeLegalIdentifier(basename(id, extname(id)));\n if (name !== 'index') {\n return name;\n }\n return makeLegalIdentifier(basename(dirname(id)));\n}\n\nfunction normalizePathSlashes(path) {\n return path.replace(/\\\\/g, '/');\n}\n\nconst getVirtualPathForDynamicRequirePath = (path, commonDir) => `/${normalizePathSlashes(relative(commonDir, path))}`;\n\nfunction capitalize(name) {\n return name[0].toUpperCase() + name.slice(1);\n}\n\nfunction getStrictRequiresFilter({ strictRequires }) {\n switch (strictRequires) {\n case undefined:\n case true:\n return { strictRequiresFilter: () => true, detectCyclesAndConditional: false };\n case 'auto':\n case 'debug':\n case null:\n return { strictRequiresFilter: () => false, detectCyclesAndConditional: true };\n case false:\n return { strictRequiresFilter: () => false, detectCyclesAndConditional: false };\n default:\n if (typeof strictRequires === 'string' || Array.isArray(strictRequires)) {\n return {\n strictRequiresFilter: createFilter(strictRequires),\n detectCyclesAndConditional: false,\n };\n }\n throw new Error('Unexpected value for \"strictRequires\" option.');\n }\n}\n\nfunction getPackageEntryPoint(dirPath) {\n let entryPoint = 'index.js';\n\n try {\n if (existsSync(join(dirPath, 'package.json'))) {\n entryPoint = JSON.parse(readFileSync(join(dirPath, 'package.json'), { encoding: 'utf8' })).main || entryPoint;\n }\n } catch (ignored) {\n // ignored\n }\n\n return entryPoint;\n}\n\nfunction isDirectory(path) {\n try {\n if (statSync(path).isDirectory()) return true;\n } catch (ignored) {\n // Nothing to do here\n }\n return false;\n}\n\nfunction getDynamicRequireModules(patterns, dynamicRequireRoot) {\n const dynamicRequireModules = new Map();\n const dirNames = new Set();\n for (const pattern of !patterns || Array.isArray(patterns) ? patterns || [] : [patterns]) {\n const isNegated = pattern.startsWith('!');\n const modifyMap = (targetPath, resolvedPath) =>\n isNegated ? dynamicRequireModules.delete(targetPath) : dynamicRequireModules.set(targetPath, resolvedPath);\n for (const path of new fdir()\n .withBasePath()\n .withDirs()\n .glob(isNegated ? pattern.substr(1) : pattern)\n .crawl()\n .sync()\n .sort((a, b) => a.localeCompare(b, 'en'))) {\n const resolvedPath = resolve(path);\n const requirePath = normalizePathSlashes(resolvedPath);\n if (isDirectory(resolvedPath)) {\n dirNames.add(resolvedPath);\n const modulePath = resolve(join(resolvedPath, getPackageEntryPoint(path)));\n modifyMap(requirePath, modulePath);\n modifyMap(normalizePathSlashes(modulePath), modulePath);\n } else {\n dirNames.add(dirname(resolvedPath));\n modifyMap(requirePath, resolvedPath);\n }\n }\n }\n return {\n commonDir: dirNames.size ? getCommonDir([...dirNames, dynamicRequireRoot]) : null,\n dynamicRequireModules,\n };\n}\n\nconst FAILED_REQUIRE_ERROR = `throw new Error('Could not dynamically require \"' + path + '\". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.');`;\n\nconst COMMONJS_REQUIRE_EXPORT = 'commonjsRequire';\nconst CREATE_COMMONJS_REQUIRE_EXPORT = 'createCommonjsRequire';\n\nfunction getDynamicModuleRegistry(\n isDynamicRequireModulesEnabled,\n dynamicRequireModules,\n commonDir,\n ignoreDynamicRequires,\n) {\n if (!isDynamicRequireModulesEnabled) {\n return `export function ${COMMONJS_REQUIRE_EXPORT}(path) {\n\t${FAILED_REQUIRE_ERROR}\n}`;\n }\n const dynamicModuleImports = [...dynamicRequireModules.values()]\n .map(\n (id, index) =>\n `import ${\n id.endsWith('.json') ? `json${index}` : `{ __require as require${index} }`\n } from ${JSON.stringify(id)};`,\n )\n .join('\\n');\n const dynamicModuleProps = [...dynamicRequireModules.keys()]\n .map(\n (id, index) =>\n `\\t\\t${JSON.stringify(getVirtualPathForDynamicRequirePath(id, commonDir))}: ${\n id.endsWith('.json') ? `function () { return json${index}; }` : `require${index}`\n }`,\n )\n .join(',\\n');\n return `${dynamicModuleImports}\n\nvar dynamicModules;\n\nfunction getDynamicModules() {\n\treturn dynamicModules || (dynamicModules = {\n${dynamicModuleProps}\n\t});\n}\n\nexport function ${CREATE_COMMONJS_REQUIRE_EXPORT}(originalModuleDir) {\n\tfunction handleRequire(path) {\n\t\tvar resolvedPath = commonjsResolve(path, originalModuleDir);\n\t\tif (resolvedPath !== null) {\n\t\t\treturn getDynamicModules()[resolvedPath]();\n\t\t}\n\t\t${ignoreDynamicRequires ? 'return require(path);' : FAILED_REQUIRE_ERROR}\n\t}\n\thandleRequire.resolve = function (path) {\n\t\tvar resolvedPath = commonjsResolve(path, originalModuleDir);\n\t\tif (resolvedPath !== null) {\n\t\t\treturn resolvedPath;\n\t\t}\n\t\treturn require.resolve(path);\n\t}\n\treturn handleRequire;\n}\n\nfunction commonjsResolve (path, originalModuleDir) {\n\tvar shouldTryNodeModules = isPossibleNodeModulesPath(path);\n\tpath = normalize(path);\n\tvar relPath;\n\tif (path[0] === '/') {\n\t\toriginalModuleDir = '';\n\t}\n\tvar modules = getDynamicModules();\n\tvar checkedExtensions = ['', '.js', '.json'];\n\twhile (true) {\n\t\tif (!shouldTryNodeModules) {\n\t\t\trelPath = normalize(originalModuleDir + '/' + path);\n\t\t} else {\n\t\t\trelPath = normalize(originalModuleDir + '/node_modules/' + path);\n\t\t}\n\n\t\tif (relPath.endsWith('/..')) {\n\t\t\tbreak; // Travelled too far up, avoid infinite loop\n\t\t}\n\n\t\tfor (var extensionIndex = 0; extensionIndex < checkedExtensions.length; extensionIndex++) {\n\t\t\tvar resolvedPath = relPath + checkedExtensions[extensionIndex];\n\t\t\tif (modules[resolvedPath]) {\n\t\t\t\treturn resolvedPath;\n\t\t\t}\n\t\t}\n\t\tif (!shouldTryNodeModules) break;\n\t\tvar nextDir = normalize(originalModuleDir + '/..');\n\t\tif (nextDir === originalModuleDir) break;\n\t\toriginalModuleDir = nextDir;\n\t}\n\treturn null;\n}\n\nfunction isPossibleNodeModulesPath (modulePath) {\n\tvar c0 = modulePath[0];\n\tif (c0 === '/' || c0 === '\\\\\\\\') return false;\n\tvar c1 = modulePath[1], c2 = modulePath[2];\n\tif ((c0 === '.' && (!c1 || c1 === '/' || c1 === '\\\\\\\\')) ||\n\t\t(c0 === '.' && c1 === '.' && (!c2 || c2 === '/' || c2 === '\\\\\\\\'))) return false;\n\tif (c1 === ':' && (c2 === '/' || c2 === '\\\\\\\\')) return false;\n\treturn true;\n}\n\nfunction normalize (path) {\n\tpath = path.replace(/\\\\\\\\/g, '/');\n\tvar parts = path.split('/');\n\tvar slashed = parts[0] === '';\n\tfor (var i = 1; i < parts.length; i++) {\n\t\tif (parts[i] === '.' || parts[i] === '') {\n\t\t\tparts.splice(i--, 1);\n\t\t}\n\t}\n\tfor (var i = 1; i < parts.length; i++) {\n\t\tif (parts[i] !== '..') continue;\n\t\tif (i > 0 && parts[i - 1] !== '..' && parts[i - 1] !== '.') {\n\t\t\tparts.splice(--i, 2);\n\t\t\ti--;\n\t\t}\n\t}\n\tpath = parts.join('/');\n\tif (slashed && path[0] !== '/') path = '/' + path;\n\telse if (path.length === 0) path = '.';\n\treturn path;\n}`;\n}\n\nconst isWrappedId = (id, suffix) => id.endsWith(suffix);\nconst wrapId = (id, suffix) => `\\0${id}${suffix}`;\nconst unwrapId = (wrappedId, suffix) => wrappedId.slice(1, -suffix.length);\n\n// A proxy module when a module is required from non-wrapped CommonJS. Is different for ESM and CommonJS requires.\nconst PROXY_SUFFIX = '?commonjs-proxy';\n// Indicates that a required module is wrapped commonjs and needs special handling.\nconst WRAPPED_SUFFIX = '?commonjs-wrapped';\n// Indicates that a required module is external\nconst EXTERNAL_SUFFIX = '?commonjs-external';\n// A helper module that contains the exports object of a module\nconst EXPORTS_SUFFIX = '?commonjs-exports';\n// A helper module that contains the module object of a module, e.g. when module.exports is reassigned\nconst MODULE_SUFFIX = '?commonjs-module';\n// A special proxy for CommonJS entry points\nconst ENTRY_SUFFIX = '?commonjs-entry';\n// A proxy when wrapped ESM is required from CommonJS\nconst ES_IMPORT_SUFFIX = '?commonjs-es-import';\n\nconst DYNAMIC_MODULES_ID = '\\0commonjs-dynamic-modules';\nconst HELPERS_ID = '\\0commonjsHelpers.js';\n\nconst IS_WRAPPED_COMMONJS = 'withRequireFunction';\n\n// `x['default']` is used instead of `x.default` for backward compatibility with ES3 browsers.\n// Minifiers like uglify will usually transpile it back if compatibility with ES3 is not enabled.\n// This could be improved by inspecting Rollup's \"generatedCode\" option\n\nconst HELPERS = `\nexport var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\nexport function getDefaultExportFromCjs (x) {\n\treturn x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;\n}\n\nexport function getDefaultExportFromNamespaceIfPresent (n) {\n\treturn n && Object.prototype.hasOwnProperty.call(n, 'default') ? n['default'] : n;\n}\n\nexport function getDefaultExportFromNamespaceIfNotNamed (n) {\n\treturn n && Object.prototype.hasOwnProperty.call(n, 'default') && Object.keys(n).length === 1 ? n['default'] : n;\n}\n\nexport function getAugmentedNamespace(n) {\n if (Object.prototype.hasOwnProperty.call(n, '__esModule')) return n;\n var f = n.default;\n\tif (typeof f == \"function\") {\n\t\tvar a = function a () {\n var isInstance = false;\n try {\n isInstance = this instanceof a;\n } catch {}\n\t\t\tif (isInstance) {\n return Reflect.construct(f, arguments, this.constructor);\n\t\t\t}\n\t\t\treturn f.apply(this, arguments);\n\t\t};\n\t\ta.prototype = f.prototype;\n } else a = {};\n Object.defineProperty(a, '__esModule', {value: true});\n\tObject.keys(n).forEach(function (k) {\n\t\tvar d = Object.getOwnPropertyDescriptor(n, k);\n\t\tObject.defineProperty(a, k, d.get ? d : {\n\t\t\tenumerable: true,\n\t\t\tget: function () {\n\t\t\t\treturn n[k];\n\t\t\t}\n\t\t});\n\t});\n\treturn a;\n}\n`;\n\nfunction getHelpersModule() {\n return HELPERS;\n}\n\nfunction getUnknownRequireProxy(id, requireReturnsDefault) {\n if (requireReturnsDefault === true || id.endsWith('.json')) {\n return `export { default } from ${JSON.stringify(id)};`;\n }\n const name = getName(id);\n const exported =\n requireReturnsDefault === 'auto'\n ? `import { getDefaultExportFromNamespaceIfNotNamed } from \"${HELPERS_ID}\"; export default /*@__PURE__*/getDefaultExportFromNamespaceIfNotNamed(${name});`\n : requireReturnsDefault === 'preferred'\n ? `import { getDefaultExportFromNamespaceIfPresent } from \"${HELPERS_ID}\"; export default /*@__PURE__*/getDefaultExportFromNamespaceIfPresent(${name});`\n : !requireReturnsDefault\n ? `import { getAugmentedNamespace } from \"${HELPERS_ID}\"; export default /*@__PURE__*/getAugmentedNamespace(${name});`\n : `export default ${name};`;\n return `import * as ${name} from ${JSON.stringify(id)}; ${exported}`;\n}\n\nasync function getStaticRequireProxy(id, requireReturnsDefault, loadModule) {\n const name = getName(id);\n const {\n meta: { commonjs: commonjsMeta },\n } = await loadModule({ id });\n if (!commonjsMeta) {\n return getUnknownRequireProxy(id, requireReturnsDefault);\n }\n if (commonjsMeta.isCommonJS) {\n return `export { __moduleExports as default } from ${JSON.stringify(id)};`;\n }\n if (!requireReturnsDefault) {\n return `import { getAugmentedNamespace } from \"${HELPERS_ID}\"; import * as ${name} from ${JSON.stringify(\n id,\n )}; export default /*@__PURE__*/getAugmentedNamespace(${name});`;\n }\n if (\n requireReturnsDefault !== true &&\n (requireReturnsDefault === 'namespace' ||\n !commonjsMeta.hasDefaultExport ||\n (requireReturnsDefault === 'auto' && commonjsMeta.hasNamedExports))\n ) {\n return `import * as ${name} from ${JSON.stringify(id)}; export default ${name};`;\n }\n return `export { default } from ${JSON.stringify(id)};`;\n}\n\nfunction getEntryProxy(id, defaultIsModuleExports, getModuleInfo, shebang) {\n const {\n meta: { commonjs: commonjsMeta },\n hasDefaultExport,\n } = getModuleInfo(id);\n if (!commonjsMeta || commonjsMeta.isCommonJS !== IS_WRAPPED_COMMONJS) {\n const stringifiedId = JSON.stringify(id);\n let code = `export * from ${stringifiedId};`;\n if (hasDefaultExport) {\n code += `export { default } from ${stringifiedId};`;\n }\n return shebang + code;\n }\n const result = getEsImportProxy(id, defaultIsModuleExports, true);\n return {\n ...result,\n code: shebang + result.code,\n };\n}\n\nfunction getEsImportProxy(id, defaultIsModuleExports, moduleSideEffects) {\n const name = getName(id);\n const exportsName = `${name}Exports`;\n const requireModule = `require${capitalize(name)}`;\n let code =\n `import { getDefaultExportFromCjs } from \"${HELPERS_ID}\";\\n` +\n `import { __require as ${requireModule} } from ${JSON.stringify(id)};\\n` +\n `var ${exportsName} = ${moduleSideEffects ? '' : '/*@__PURE__*/ '}${requireModule}();\\n` +\n `export { ${exportsName} as __moduleExports };`;\n if (defaultIsModuleExports === true) {\n code += `\\nexport { ${exportsName} as default };`;\n } else if (defaultIsModuleExports === false) {\n code += `\\nexport default ${exportsName}.default;`;\n } else {\n code += `\\nexport default /*@__PURE__*/getDefaultExportFromCjs(${exportsName});`;\n }\n return {\n code,\n syntheticNamedExports: '__moduleExports',\n };\n}\n\nfunction getCandidatesForExtension(resolved, extension) {\n return [resolved + extension, `${resolved}${sep}index${extension}`];\n}\n\nfunction getCandidates(resolved, extensions) {\n return extensions.reduce(\n (paths, extension) => paths.concat(getCandidatesForExtension(resolved, extension)),\n [resolved],\n );\n}\n\nfunction resolveExtensions(importee, importer, extensions) {\n // not our problem\n if (importee[0] !== '.' || !importer) return undefined;\n\n const resolved = resolve(dirname(importer), importee);\n const candidates = getCandidates(resolved, extensions);\n\n for (let i = 0; i < candidates.length; i += 1) {\n try {\n const stats = statSync(candidates[i]);\n if (stats.isFile()) return { id: candidates[i] };\n } catch (err) {\n /* noop */\n }\n }\n\n return undefined;\n}\n\nfunction getResolveId(extensions, isPossibleCjsId) {\n const currentlyResolving = new Map();\n\n return {\n /**\n * This is a Maps of importers to Sets of require sources being resolved at\n * the moment by resolveRequireSourcesAndUpdateMeta\n */\n currentlyResolving,\n async resolveId(importee, importer, resolveOptions) {\n const customOptions = resolveOptions.custom;\n // All logic below is specific to ES imports.\n // Also, if we do not skip this logic for requires that are resolved while\n // transforming a commonjs file, it can easily lead to deadlocks.\n if (customOptions?.['node-resolve']?.isRequire) {\n return null;\n }\n const currentlyResolvingForParent = currentlyResolving.get(importer);\n if (currentlyResolvingForParent && currentlyResolvingForParent.has(importee)) {\n this.warn({\n code: 'THIS_RESOLVE_WITHOUT_OPTIONS',\n message:\n 'It appears a plugin has implemented a \"resolveId\" hook that uses \"this.resolve\" without forwarding the third \"options\" parameter of \"resolveId\". This is problematic as it can lead to wrong module resolutions especially for the node-resolve plugin and in certain cases cause early exit errors for the commonjs plugin.\\nIn rare cases, this warning can appear if the same file is both imported and required from the same mixed ES/CommonJS module, in which case it can be ignored.',\n url: 'https://rollupjs.org/guide/en/#resolveid',\n });\n return null;\n }\n\n if (isWrappedId(importee, WRAPPED_SUFFIX)) {\n return unwrapId(importee, WRAPPED_SUFFIX);\n }\n\n if (\n importee.endsWith(ENTRY_SUFFIX) ||\n isWrappedId(importee, MODULE_SUFFIX) ||\n isWrappedId(importee, EXPORTS_SUFFIX) ||\n isWrappedId(importee, PROXY_SUFFIX) ||\n isWrappedId(importee, ES_IMPORT_SUFFIX) ||\n isWrappedId(importee, EXTERNAL_SUFFIX) ||\n importee.startsWith(HELPERS_ID) ||\n importee === DYNAMIC_MODULES_ID\n ) {\n return importee;\n }\n\n if (importer) {\n if (\n importer === DYNAMIC_MODULES_ID ||\n // Proxies are only importing resolved ids, no need to resolve again\n isWrappedId(importer, PROXY_SUFFIX) ||\n isWrappedId(importer, ES_IMPORT_SUFFIX) ||\n importer.endsWith(ENTRY_SUFFIX)\n ) {\n return importee;\n }\n if (isWrappedId(importer, EXTERNAL_SUFFIX)) {\n // We need to return null for unresolved imports so that the proper warning is shown\n if (!(await this.resolve(importee, importer, Object.assign({ skipSelf: true }, resolveOptions)))) {\n return null;\n }\n // For other external imports, we need to make sure they are handled as external\n return { id: importee, external: true };\n }\n }\n\n if (importee.startsWith('\\0')) {\n return null;\n }\n\n // If this is an entry point or ESM import, we need to figure out if the importee is wrapped and\n // if that is the case, we need to add a proxy.\n const resolved =\n (await this.resolve(importee, importer, Object.assign({ skipSelf: true }, resolveOptions))) ||\n resolveExtensions(importee, importer, extensions);\n // Make sure that even if other plugins resolve again, we ignore our own proxies\n if (\n !resolved ||\n resolved.external ||\n resolved.id.endsWith(ENTRY_SUFFIX) ||\n isWrappedId(resolved.id, ES_IMPORT_SUFFIX) ||\n !isPossibleCjsId(resolved.id)\n ) {\n return resolved;\n }\n const moduleInfo = await this.load(resolved);\n const {\n meta: { commonjs: commonjsMeta },\n } = moduleInfo;\n if (commonjsMeta) {\n const { isCommonJS } = commonjsMeta;\n if (isCommonJS) {\n if (resolveOptions.isEntry) {\n moduleInfo.moduleSideEffects = true;\n // We must not precede entry proxies with a `\\0` as that will mess up relative external resolution\n return resolved.id + ENTRY_SUFFIX;\n }\n if (isCommonJS === IS_WRAPPED_COMMONJS) {\n return { id: wrapId(resolved.id, ES_IMPORT_SUFFIX), meta: { commonjs: { resolved } } };\n }\n }\n }\n return resolved;\n },\n };\n}\n\nfunction getRequireResolver(extensions, detectCyclesAndConditional, currentlyResolving) {\n const knownCjsModuleTypes = Object.create(null);\n const requiredIds = Object.create(null);\n const unconditionallyRequiredIds = Object.create(null);\n const dependencies = Object.create(null);\n const getDependencies = (id) => dependencies[id] || (dependencies[id] = new Set());\n\n const isCyclic = (id) => {\n const dependenciesToCheck = new Set(getDependencies(id));\n for (const dependency of dependenciesToCheck) {\n if (dependency === id) {\n return true;\n }\n for (const childDependency of getDependencies(dependency)) {\n dependenciesToCheck.add(childDependency);\n }\n }\n return false;\n };\n\n // Once a module is listed here, its type (wrapped or not) is fixed and may\n // not change for the rest of the current build, to not break already\n // transformed modules.\n const fullyAnalyzedModules = Object.create(null);\n\n const getTypeForFullyAnalyzedModule = (id) => {\n const knownType = knownCjsModuleTypes[id];\n if (knownType !== true || !detectCyclesAndConditional || fullyAnalyzedModules[id]) {\n return knownType;\n }\n if (isCyclic(id)) {\n return (knownCjsModuleTypes[id] = IS_WRAPPED_COMMONJS);\n }\n return knownType;\n };\n\n const setInitialParentType = (id, initialCommonJSType) => {\n // Fully analyzed modules may never change type\n if (fullyAnalyzedModules[id]) {\n return;\n }\n knownCjsModuleTypes[id] = initialCommonJSType;\n if (\n detectCyclesAndConditional &&\n knownCjsModuleTypes[id] === true &&\n requiredIds[id] &&\n !unconditionallyRequiredIds[id]\n ) {\n knownCjsModuleTypes[id] = IS_WRAPPED_COMMONJS;\n }\n };\n\n const analyzeRequiredModule = async (parentId, resolved, isConditional, loadModule) => {\n const childId = resolved.id;\n requiredIds[childId] = true;\n if (!(isConditional || knownCjsModuleTypes[parentId] === IS_WRAPPED_COMMONJS)) {\n unconditionallyRequiredIds[childId] = true;\n }\n\n getDependencies(parentId).add(childId);\n if (!isCyclic(childId)) {\n // This makes sure the current transform handler waits for all direct\n // dependencies to be loaded and transformed and therefore for all\n // transitive CommonJS dependencies to be loaded as well so that all\n // cycles have been found and knownCjsModuleTypes is reliable.\n await loadModule(resolved);\n }\n };\n\n const getTypeForImportedModule = async (resolved, loadModule) => {\n if (resolved.id in knownCjsModuleTypes) {\n // This handles cyclic ES dependencies\n return knownCjsModuleTypes[resolved.id];\n }\n const {\n meta: { commonjs },\n } = await loadModule(resolved);\n return (commonjs && commonjs.isCommonJS) || false;\n };\n\n return {\n getWrappedIds: () =>\n Object.keys(knownCjsModuleTypes).filter((id) => knownCjsModuleTypes[id] === IS_WRAPPED_COMMONJS),\n isRequiredId: (id) => requiredIds[id],\n async shouldTransformCachedModule({ id: parentId, resolvedSources, meta: { commonjs: parentMeta } }) {\n // We explicitly track ES modules to handle circular imports\n if (!(parentMeta && parentMeta.isCommonJS)) knownCjsModuleTypes[parentId] = false;\n if (isWrappedId(parentId, ES_IMPORT_SUFFIX)) return false;\n const parentRequires = parentMeta && parentMeta.requires;\n if (parentRequires) {\n setInitialParentType(parentId, parentMeta.initialCommonJSType);\n await Promise.all(\n parentRequires.map(({ resolved, isConditional }) =>\n analyzeRequiredModule(parentId, resolved, isConditional, this.load),\n ),\n );\n if (getTypeForFullyAnalyzedModule(parentId) !== parentMeta.isCommonJS) {\n return true;\n }\n for (const {\n resolved: { id },\n } of parentRequires) {\n if (getTypeForFullyAnalyzedModule(id) !== parentMeta.isRequiredCommonJS[id]) {\n return true;\n }\n }\n // Now that we decided to go with the cached copy, neither the parent\n // module nor any of its children may change types anymore\n fullyAnalyzedModules[parentId] = true;\n for (const {\n resolved: { id },\n } of parentRequires) {\n fullyAnalyzedModules[id] = true;\n }\n }\n const parentRequireSet = new Set((parentRequires || []).map(({ resolved: { id } }) => id));\n return (\n await Promise.all(\n Object.keys(resolvedSources)\n .map((source) => resolvedSources[source])\n .filter(({ id, external }) => !(external || parentRequireSet.has(id)))\n .map(async (resolved) => {\n if (isWrappedId(resolved.id, ES_IMPORT_SUFFIX)) {\n return (\n (await getTypeForImportedModule(\n (await this.load({ id: resolved.id })).meta.commonjs.resolved,\n this.load,\n )) !== IS_WRAPPED_COMMONJS\n );\n }\n return (await getTypeForImportedModule(resolved, this.load)) === IS_WRAPPED_COMMONJS;\n }),\n )\n ).some((shouldTransform) => shouldTransform);\n },\n /* eslint-disable no-param-reassign */\n resolveRequireSourcesAndUpdateMeta: (rollupContext) => async (parentId, isParentCommonJS, parentMeta, sources) => {\n parentMeta.initialCommonJSType = isParentCommonJS;\n parentMeta.requires = [];\n parentMeta.isRequiredCommonJS = Object.create(null);\n setInitialParentType(parentId, isParentCommonJS);\n const currentlyResolvingForParent = currentlyResolving.get(parentId) || new Set();\n currentlyResolving.set(parentId, currentlyResolvingForParent);\n const requireTargets = await Promise.all(\n sources.map(async ({ source, isConditional }) => {\n // Never analyze or proxy internal modules\n if (source.startsWith('\\0')) {\n return { id: source, allowProxy: false };\n }\n currentlyResolvingForParent.add(source);\n const resolved =\n (await rollupContext.resolve(source, parentId, {\n skipSelf: false,\n custom: { 'node-resolve': { isRequire: true } },\n })) || resolveExtensions(source, parentId, extensions);\n currentlyResolvingForParent.delete(source);\n if (!resolved) {\n return { id: wrapId(source, EXTERNAL_SUFFIX), allowProxy: false };\n }\n const childId = resolved.id;\n if (resolved.external) {\n return { id: wrapId(childId, EXTERNAL_SUFFIX), allowProxy: false };\n }\n parentMeta.requires.push({ resolved, isConditional });\n await analyzeRequiredModule(parentId, resolved, isConditional, rollupContext.load);\n return { id: childId, allowProxy: true };\n }),\n );\n parentMeta.isCommonJS = getTypeForFullyAnalyzedModule(parentId);\n fullyAnalyzedModules[parentId] = true;\n return requireTargets.map(({ id: dependencyId, allowProxy }, index) => {\n // eslint-disable-next-line no-multi-assign\n const isCommonJS = (parentMeta.isRequiredCommonJS[dependencyId] = getTypeForFullyAnalyzedModule(dependencyId));\n const isWrappedCommonJS = isCommonJS === IS_WRAPPED_COMMONJS;\n fullyAnalyzedModules[dependencyId] = true;\n return {\n wrappedModuleSideEffects: isWrappedCommonJS && rollupContext.getModuleInfo(dependencyId).moduleSideEffects,\n source: sources[index].source,\n id: allowProxy ? wrapId(dependencyId, isWrappedCommonJS ? WRAPPED_SUFFIX : PROXY_SUFFIX) : dependencyId,\n isCommonJS,\n };\n });\n },\n isCurrentlyResolving(source, parentId) {\n const currentlyResolvingForParent = currentlyResolving.get(parentId);\n return currentlyResolvingForParent && currentlyResolvingForParent.has(source);\n },\n };\n}\n\nfunction validateVersion(actualVersion, peerDependencyVersion, name) {\n const versionRegexp = /\\^(\\d+\\.\\d+\\.\\d+)/g;\n let minMajor = Infinity;\n let minMinor = Infinity;\n let minPatch = Infinity;\n let foundVersion;\n // eslint-disable-next-line no-cond-assign\n while ((foundVersion = versionRegexp.exec(peerDependencyVersion))) {\n const [foundMajor, foundMinor, foundPatch] = foundVersion[1].split('.').map(Number);\n if (foundMajor < minMajor) {\n minMajor = foundMajor;\n minMinor = foundMinor;\n minPatch = foundPatch;\n }\n }\n if (!actualVersion) {\n throw new Error(\n `Insufficient ${name} version: \"@rollup/plugin-commonjs\" requires at least ${name}@${minMajor}.${minMinor}.${minPatch}.`,\n );\n }\n const [major, minor, patch] = actualVersion.split('.').map(Number);\n if (major < minMajor || (major === minMajor && (minor < minMinor || (minor === minMinor && patch < minPatch)))) {\n throw new Error(\n `Insufficient ${name} version: \"@rollup/plugin-commonjs\" requires at least ${name}@${minMajor}.${minMinor}.${minPatch} but found ${name}@${actualVersion}.`,\n );\n }\n}\n\nconst operators = {\n '==': (x) => equals(x.left, x.right, false),\n\n '!=': (x) => not(operators['=='](x)),\n\n '===': (x) => equals(x.left, x.right, true),\n\n '!==': (x) => not(operators['==='](x)),\n\n '!': (x) => isFalsy(x.argument),\n\n '&&': (x) => isTruthy(x.left) && isTruthy(x.right),\n\n '||': (x) => isTruthy(x.left) || isTruthy(x.right),\n};\n\nfunction not(value) {\n return value === null ? value : !value;\n}\n\nfunction equals(a, b, strict) {\n if (a.type !== b.type) return null;\n // eslint-disable-next-line eqeqeq\n if (a.type === 'Literal') return strict ? a.value === b.value : a.value == b.value;\n return null;\n}\n\nfunction isTruthy(node) {\n if (!node) return false;\n if (node.type === 'Literal') return !!node.value;\n if (node.type === 'ParenthesizedExpression') return isTruthy(node.expression);\n if (node.operator in operators) return operators[node.operator](node);\n return null;\n}\n\nfunction isFalsy(node) {\n return not(isTruthy(node));\n}\n\nfunction getKeypath(node) {\n const parts = [];\n\n while (node.type === 'MemberExpression') {\n if (node.computed) return null;\n\n parts.unshift(node.property.name);\n // eslint-disable-next-line no-param-reassign\n node = node.object;\n }\n\n if (node.type !== 'Identifier') return null;\n\n const { name } = node;\n parts.unshift(name);\n\n return { name, keypath: parts.join('.') };\n}\n\nconst KEY_COMPILED_ESM = '__esModule';\n\nfunction getDefineCompiledEsmType(node) {\n const definedPropertyWithExports = getDefinePropertyCallName(node, 'exports');\n const definedProperty = definedPropertyWithExports || getDefinePropertyCallName(node, 'module.exports');\n if (definedProperty && definedProperty.key === KEY_COMPILED_ESM) {\n return isTruthy(definedProperty.value) ? (definedPropertyWithExports ? 'exports' : 'module') : false;\n }\n return false;\n}\n\nfunction getDefinePropertyCallName(node, targetName) {\n const {\n callee: { object, property },\n } = node;\n if (!object || object.type !== 'Identifier' || object.name !== 'Object') return;\n if (!property || property.type !== 'Identifier' || property.name !== 'defineProperty') return;\n if (node.arguments.length !== 3) return;\n\n const targetNames = targetName.split('.');\n const [target, key, value] = node.arguments;\n if (targetNames.length === 1) {\n if (target.type !== 'Identifier' || target.name !== targetNames[0]) {\n return;\n }\n }\n\n if (targetNames.length === 2) {\n if (\n target.type !== 'MemberExpression' ||\n target.object.name !== targetNames[0] ||\n target.property.name !== targetNames[1]\n ) {\n return;\n }\n }\n\n if (value.type !== 'ObjectExpression' || !value.properties) return;\n\n const valueProperty = value.properties.find((p) => p.key && p.key.name === 'value');\n if (!valueProperty || !valueProperty.value) return;\n\n // eslint-disable-next-line consistent-return\n return { key: key.value, value: valueProperty.value };\n}\n\nfunction isShorthandProperty(parent) {\n return parent && parent.type === 'Property' && parent.shorthand;\n}\n\nfunction wrapCode(magicString, uses, moduleName, exportsName, indentExclusionRanges) {\n const args = [];\n const passedArgs = [];\n if (uses.module) {\n args.push('module');\n passedArgs.push(moduleName);\n }\n if (uses.exports) {\n args.push('exports');\n passedArgs.push(uses.module ? `${moduleName}.exports` : exportsName);\n }\n magicString\n .trim()\n .indent('\\t', { exclude: indentExclusionRanges })\n .prepend(`(function (${args.join(', ')}) {\\n`)\n // For some reason, this line is only indented correctly when using a\n // require-wrapper if we have this leading space\n .append(` \\n} (${passedArgs.join(', ')}));`);\n}\n\nfunction rewriteExportsAndGetExportsBlock(\n magicString,\n moduleName,\n exportsName,\n exportedExportsName,\n wrapped,\n moduleExportsAssignments,\n firstTopLevelModuleExportsAssignment,\n exportsAssignmentsByName,\n topLevelAssignments,\n defineCompiledEsmExpressions,\n deconflictedExportNames,\n code,\n HELPERS_NAME,\n exportMode,\n defaultIsModuleExports,\n usesRequireWrapper,\n requireName,\n) {\n const exports = [];\n const exportDeclarations = [];\n\n if (usesRequireWrapper) {\n getExportsWhenUsingRequireWrapper(\n magicString,\n wrapped,\n exportMode,\n exports,\n moduleExportsAssignments,\n exportsAssignmentsByName,\n moduleName,\n exportsName,\n requireName,\n defineCompiledEsmExpressions,\n );\n } else if (exportMode === 'replace') {\n getExportsForReplacedModuleExports(\n magicString,\n exports,\n exportDeclarations,\n moduleExportsAssignments,\n firstTopLevelModuleExportsAssignment,\n exportsName,\n defaultIsModuleExports,\n HELPERS_NAME,\n );\n } else {\n if (exportMode === 'module') {\n exportDeclarations.push(`var ${exportedExportsName} = ${moduleName}.exports`);\n exports.push(`${exportedExportsName} as __moduleExports`);\n } else {\n exports.push(`${exportsName} as __moduleExports`);\n }\n if (wrapped) {\n exportDeclarations.push(getDefaultExportDeclaration(exportedExportsName, defaultIsModuleExports, HELPERS_NAME));\n } else {\n getExports(\n magicString,\n exports,\n exportDeclarations,\n moduleExportsAssignments,\n exportsAssignmentsByName,\n deconflictedExportNames,\n topLevelAssignments,\n moduleName,\n exportsName,\n exportedExportsName,\n defineCompiledEsmExpressions,\n HELPERS_NAME,\n defaultIsModuleExports,\n exportMode,\n );\n }\n }\n if (exports.length) {\n exportDeclarations.push(`export { ${exports.join(', ')} }`);\n }\n\n return `\\n\\n${exportDeclarations.join(';\\n')};`;\n}\n\nfunction getExportsWhenUsingRequireWrapper(\n magicString,\n wrapped,\n exportMode,\n exports,\n moduleExportsAssignments,\n exportsAssignmentsByName,\n moduleName,\n exportsName,\n requireName,\n defineCompiledEsmExpressions,\n) {\n exports.push(`${requireName} as __require`);\n if (wrapped) return;\n if (exportMode === 'replace') {\n rewriteModuleExportsAssignments(magicString, moduleExportsAssignments, exportsName);\n } else {\n rewriteModuleExportsAssignments(magicString, moduleExportsAssignments, `${moduleName}.exports`);\n // Collect and rewrite named exports\n for (const [exportName, { nodes }] of exportsAssignmentsByName) {\n for (const { node, type } of nodes) {\n magicString.overwrite(\n node.start,\n node.left.end,\n `${exportMode === 'module' && type === 'module' ? `${moduleName}.exports` : exportsName}.${exportName}`,\n );\n }\n }\n replaceDefineCompiledEsmExpressionsAndGetIfRestorable(\n defineCompiledEsmExpressions,\n magicString,\n exportMode,\n moduleName,\n exportsName,\n );\n }\n}\n\nfunction getExportsForReplacedModuleExports(\n magicString,\n exports,\n exportDeclarations,\n moduleExportsAssignments,\n firstTopLevelModuleExportsAssignment,\n exportsName,\n defaultIsModuleExports,\n HELPERS_NAME,\n) {\n for (const { left } of moduleExportsAssignments) {\n magicString.overwrite(left.start, left.end, exportsName);\n }\n magicString.prependRight(firstTopLevelModuleExportsAssignment.left.start, 'var ');\n exports.push(`${exportsName} as __moduleExports`);\n exportDeclarations.push(getDefaultExportDeclaration(exportsName, defaultIsModuleExports, HELPERS_NAME));\n}\n\nfunction getDefaultExportDeclaration(exportedExportsName, defaultIsModuleExports, HELPERS_NAME) {\n return `export default ${\n defaultIsModuleExports === true\n ? exportedExportsName\n : defaultIsModuleExports === false\n ? `${exportedExportsName}.default`\n : `/*@__PURE__*/${HELPERS_NAME}.getDefaultExportFromCjs(${exportedExportsName})`\n }`;\n}\n\nfunction getExports(\n magicString,\n exports,\n exportDeclarations,\n moduleExportsAssignments,\n exportsAssignmentsByName,\n deconflictedExportNames,\n topLevelAssignments,\n moduleName,\n exportsName,\n exportedExportsName,\n defineCompiledEsmExpressions,\n HELPERS_NAME,\n defaultIsModuleExports,\n exportMode,\n) {\n let deconflictedDefaultExportName;\n // Collect and rewrite module.exports assignments\n for (const { left } of moduleExportsAssignments) {\n magicString.overwrite(left.start, left.end, `${moduleName}.exports`);\n }\n\n // Collect and rewrite named exports\n for (const [exportName, { nodes }] of exportsAssignmentsByName) {\n const deconflicted = deconflictedExportNames[exportName];\n let needsDeclaration = true;\n for (const { node, type } of nodes) {\n let replacement = `${deconflicted} = ${\n exportMode === 'module' && type === 'module' ? `${moduleName}.exports` : exportsName\n }.${exportName}`;\n if (needsDeclaration && topLevelAssignments.has(node)) {\n replacement = `var ${replacement}`;\n needsDeclaration = false;\n }\n magicString.overwrite(node.start, node.left.end, replacement);\n }\n if (needsDeclaration) {\n magicString.prepend(`var ${deconflicted};\\n`);\n }\n\n if (exportName === 'default') {\n deconflictedDefaultExportName = deconflicted;\n } else {\n exports.push(exportName === deconflicted ? exportName : `${deconflicted} as ${exportName}`);\n }\n }\n\n const isRestorableCompiledEsm = replaceDefineCompiledEsmExpressionsAndGetIfRestorable(\n defineCompiledEsmExpressions,\n magicString,\n exportMode,\n moduleName,\n exportsName,\n );\n\n if (\n defaultIsModuleExports === false ||\n (defaultIsModuleExports === 'auto' && isRestorableCompiledEsm && moduleExportsAssignments.length === 0)\n ) {\n // If there is no deconflictedDefaultExportName, then we use the namespace as\n // fallback because there can be no \"default\" property on the namespace\n exports.push(`${deconflictedDefaultExportName || exportedExportsName} as default`);\n } else if (defaultIsModuleExports === true || (!isRestorableCompiledEsm && moduleExportsAssignments.length === 0)) {\n exports.push(`${exportedExportsName} as default`);\n } else {\n exportDeclarations.push(getDefaultExportDeclaration(exportedExportsName, defaultIsModuleExports, HELPERS_NAME));\n }\n}\n\nfunction rewriteModuleExportsAssignments(magicString, moduleExportsAssignments, exportsName) {\n for (const { left } of moduleExportsAssignments) {\n magicString.overwrite(left.start, left.end, exportsName);\n }\n}\n\nfunction replaceDefineCompiledEsmExpressionsAndGetIfRestorable(\n defineCompiledEsmExpressions,\n magicString,\n exportMode,\n moduleName,\n exportsName,\n) {\n let isRestorableCompiledEsm = false;\n for (const { node, type } of defineCompiledEsmExpressions) {\n isRestorableCompiledEsm = true;\n const moduleExportsExpression = node.type === 'CallExpression' ? node.arguments[0] : node.left.object;\n magicString.overwrite(\n moduleExportsExpression.start,\n moduleExportsExpression.end,\n exportMode === 'module' && type === 'module' ? `${moduleName}.exports` : exportsName,\n );\n }\n return isRestorableCompiledEsm;\n}\n\nfunction isRequireExpression(node, scope) {\n if (!node) return false;\n if (node.type !== 'CallExpression') return false;\n\n // Weird case of `require()` or `module.require()` without arguments\n if (node.arguments.length === 0) return false;\n\n return isRequire(node.callee, scope);\n}\n\nfunction isRequire(node, scope) {\n return (\n (node.type === 'Identifier' && node.name === 'require' && !scope.contains('require')) ||\n (node.type === 'MemberExpression' && isModuleRequire(node, scope))\n );\n}\n\nfunction isModuleRequire({ object, property }, scope) {\n return (\n object.type === 'Identifier' &&\n object.name === 'module' &&\n property.type === 'Identifier' &&\n property.name === 'require' &&\n !scope.contains('module')\n );\n}\n\nfunction hasDynamicArguments(node) {\n return (\n node.arguments.length > 1 ||\n (node.arguments[0].type !== 'Literal' &&\n (node.arguments[0].type !== 'TemplateLiteral' || node.arguments[0].expressions.length > 0))\n );\n}\n\nconst reservedMethod = { resolve: true, cache: true, main: true };\n\nfunction isNodeRequirePropertyAccess(parent) {\n return parent && parent.property && reservedMethod[parent.property.name];\n}\n\nfunction getRequireStringArg(node) {\n return node.arguments[0].type === 'Literal' ? node.arguments[0].value : node.arguments[0].quasis[0].value.cooked;\n}\n\nfunction getRequireHandlers() {\n const requireExpressions = [];\n\n function addRequireExpression(\n sourceId,\n node,\n scope,\n usesReturnValue,\n isInsideTryBlock,\n isInsideConditional,\n toBeRemoved,\n ) {\n requireExpressions.push({\n sourceId,\n node,\n scope,\n usesReturnValue,\n isInsideTryBlock,\n isInsideConditional,\n toBeRemoved,\n });\n }\n\n async function rewriteRequireExpressionsAndGetImportBlock(\n magicString,\n topLevelDeclarations,\n reassignedNames,\n helpersName,\n dynamicRequireName,\n moduleName,\n exportsName,\n id,\n exportMode,\n resolveRequireSourcesAndUpdateMeta,\n needsRequireWrapper,\n isEsModule,\n isDynamicRequireModulesEnabled,\n getIgnoreTryCatchRequireStatementMode,\n commonjsMeta,\n ) {\n const imports = [];\n imports.push(`import * as ${helpersName} from \"${HELPERS_ID}\"`);\n if (dynamicRequireName) {\n imports.push(\n `import { ${\n isDynamicRequireModulesEnabled ? CREATE_COMMONJS_REQUIRE_EXPORT : COMMONJS_REQUIRE_EXPORT\n } as ${dynamicRequireName} } from \"${DYNAMIC_MODULES_ID}\"`,\n );\n }\n if (exportMode === 'module') {\n imports.push(\n `import { __module as ${moduleName} } from ${JSON.stringify(wrapId(id, MODULE_SUFFIX))}`,\n `var ${exportsName} = ${moduleName}.exports`,\n );\n } else if (exportMode === 'exports') {\n imports.push(`import { __exports as ${exportsName} } from ${JSON.stringify(wrapId(id, EXPORTS_SUFFIX))}`);\n }\n const requiresBySource = collectSources(requireExpressions);\n const requireTargets = await resolveRequireSourcesAndUpdateMeta(\n id,\n needsRequireWrapper ? IS_WRAPPED_COMMONJS : !isEsModule,\n commonjsMeta,\n Object.keys(requiresBySource).map((source) => {\n return {\n source,\n isConditional: requiresBySource[source].every((require) => require.isInsideConditional),\n };\n }),\n );\n processRequireExpressions(\n imports,\n requireTargets,\n requiresBySource,\n getIgnoreTryCatchRequireStatementMode,\n magicString,\n );\n return imports.length ? `${imports.join(';\\n')};\\n\\n` : '';\n }\n\n return {\n addRequireExpression,\n rewriteRequireExpressionsAndGetImportBlock,\n };\n}\n\nfunction collectSources(requireExpressions) {\n const requiresBySource = Object.create(null);\n for (const requireExpression of requireExpressions) {\n const { sourceId } = requireExpression;\n if (!requiresBySource[sourceId]) {\n requiresBySource[sourceId] = [];\n }\n const requires = requiresBySource[sourceId];\n requires.push(requireExpression);\n }\n return requiresBySource;\n}\n\nfunction processRequireExpressions(\n imports,\n requireTargets,\n requiresBySource,\n getIgnoreTryCatchRequireStatementMode,\n magicString,\n) {\n const generateRequireName = getGenerateRequireName();\n for (const { source, id: resolvedId, isCommonJS, wrappedModuleSideEffects } of requireTargets) {\n const requires = requiresBySource[source];\n const name = generateRequireName(requires);\n let usesRequired = false;\n let needsImport = false;\n for (const { node, usesReturnValue, toBeRemoved, isInsideTryBlock } of requires) {\n const { canConvertRequire, shouldRemoveRequire } =\n isInsideTryBlock && isWrappedId(resolvedId, EXTERNAL_SUFFIX)\n ? getIgnoreTryCatchRequireStatementMode(source)\n : { canConvertRequire: true, shouldRemoveRequire: false };\n if (shouldRemoveRequire) {\n if (usesReturnValue) {\n magicString.overwrite(node.start, node.end, 'undefined');\n } else {\n magicString.remove(toBeRemoved.start, toBeRemoved.end);\n }\n } else if (canConvertRequire) {\n needsImport = true;\n if (isCommonJS === IS_WRAPPED_COMMONJS) {\n magicString.overwrite(node.start, node.end, `${wrappedModuleSideEffects ? '' : '/*@__PURE__*/ '}${name}()`);\n } else if (usesReturnValue) {\n usesRequired = true;\n magicString.overwrite(node.start, node.end, name);\n } else {\n magicString.remove(toBeRemoved.start, toBeRemoved.end);\n }\n }\n }\n if (needsImport) {\n if (isCommonJS === IS_WRAPPED_COMMONJS) {\n imports.push(`import { __require as ${name} } from ${JSON.stringify(resolvedId)}`);\n } else {\n imports.push(`import ${usesRequired ? `${name} from ` : ''}${JSON.stringify(resolvedId)}`);\n }\n }\n }\n}\n\nfunction getGenerateRequireName() {\n let uid = 0;\n return (requires) => {\n let name;\n const hasNameConflict = ({ scope }) => scope.contains(name);\n do {\n name = `require$$${uid}`;\n uid += 1;\n } while (requires.some(hasNameConflict));\n return name;\n };\n}\n\n/* eslint-disable no-param-reassign, no-shadow, no-underscore-dangle, no-continue */\n\nconst exportsPattern = /^(?:module\\.)?exports(?:\\.([a-zA-Z_$][a-zA-Z_$0-9]*))?$/;\n\nconst functionType = /^(?:FunctionDeclaration|FunctionExpression|ArrowFunctionExpression)$/;\n\n// There are three different types of CommonJS modules, described by their\n// \"exportMode\":\n// - exports: Only assignments to (module.)exports properties\n// - replace: A single assignment to module.exports itself\n// - module: Anything else\n// Special cases:\n// - usesRequireWrapper\n// - isWrapped\nasync function transformCommonjs(\n parse,\n code,\n id,\n isEsModule,\n ignoreGlobal,\n ignoreRequire,\n ignoreDynamicRequires,\n getIgnoreTryCatchRequireStatementMode,\n sourceMap,\n isDynamicRequireModulesEnabled,\n dynamicRequireModules,\n commonDir,\n astCache,\n defaultIsModuleExports,\n needsRequireWrapper,\n resolveRequireSourcesAndUpdateMeta,\n isRequired,\n checkDynamicRequire,\n commonjsMeta,\n) {\n const ast = astCache || tryParse(parse, code, id);\n const magicString = new MagicString(code);\n const uses = {\n module: false,\n exports: false,\n global: false,\n require: false,\n };\n const virtualDynamicRequirePath =\n isDynamicRequireModulesEnabled && getVirtualPathForDynamicRequirePath(dirname(id), commonDir);\n let scope = attachScopes(ast, 'scope');\n let lexicalDepth = 0;\n let programDepth = 0;\n let classBodyDepth = 0;\n let currentTryBlockEnd = null;\n let shouldWrap = false;\n\n const globals = new Set();\n // A conditionalNode is a node for which execution is not guaranteed. If such a node is a require\n // or contains nested requires, those should be handled as function calls unless there is an\n // unconditional require elsewhere.\n let currentConditionalNodeEnd = null;\n const conditionalNodes = new Set();\n const { addRequireExpression, rewriteRequireExpressionsAndGetImportBlock } = getRequireHandlers();\n\n // See which names are assigned to. This is necessary to prevent\n // illegally replacing `var foo = require('foo')` with `import foo from 'foo'`,\n // where `foo` is later reassigned. (This happens in the wild. CommonJS, sigh)\n const reassignedNames = new Set();\n const topLevelDeclarations = [];\n const skippedNodes = new Set();\n const moduleAccessScopes = new Set([scope]);\n const exportsAccessScopes = new Set([scope]);\n const moduleExportsAssignments = [];\n let firstTopLevelModuleExportsAssignment = null;\n const exportsAssignmentsByName = new Map();\n const topLevelAssignments = new Set();\n const topLevelDefineCompiledEsmExpressions = [];\n const replacedGlobal = [];\n const replacedThis = [];\n const replacedDynamicRequires = [];\n const importedVariables = new Set();\n const indentExclusionRanges = [];\n\n walk(ast, {\n enter(node, parent) {\n if (skippedNodes.has(node)) {\n this.skip();\n return;\n }\n\n if (currentTryBlockEnd !== null && node.start > currentTryBlockEnd) {\n currentTryBlockEnd = null;\n }\n if (currentConditionalNodeEnd !== null && node.start > currentConditionalNodeEnd) {\n currentConditionalNodeEnd = null;\n }\n if (currentConditionalNodeEnd === null && conditionalNodes.has(node)) {\n currentConditionalNodeEnd = node.end;\n }\n\n programDepth += 1;\n if (node.scope) ({ scope } = node);\n if (functionType.test(node.type)) lexicalDepth += 1;\n if (sourceMap) {\n magicString.addSourcemapLocation(node.start);\n magicString.addSourcemapLocation(node.end);\n }\n\n // eslint-disable-next-line default-case\n switch (node.type) {\n case 'AssignmentExpression':\n if (node.left.type === 'MemberExpression') {\n const flattened = getKeypath(node.left);\n if (!flattened || scope.contains(flattened.name)) return;\n\n const exportsPatternMatch = exportsPattern.exec(flattened.keypath);\n if (!exportsPatternMatch || flattened.keypath === 'exports') return;\n\n const [, exportName] = exportsPatternMatch;\n uses[flattened.name] = true;\n\n // we're dealing with `module.exports = ...` or `[module.]exports.foo = ...` –\n if (flattened.keypath === 'module.exports') {\n moduleExportsAssignments.push(node);\n if (programDepth > 3) {\n moduleAccessScopes.add(scope);\n } else if (!firstTopLevelModuleExportsAssignment) {\n firstTopLevelModuleExportsAssignment = node;\n }\n } else if (exportName === KEY_COMPILED_ESM) {\n if (programDepth > 3) {\n shouldWrap = true;\n } else {\n // The \"type\" is either \"module\" or \"exports\" to discern\n // assignments to module.exports vs exports if needed\n topLevelDefineCompiledEsmExpressions.push({ node, type: flattened.name });\n }\n } else {\n const exportsAssignments = exportsAssignmentsByName.get(exportName) || {\n nodes: [],\n scopes: new Set(),\n };\n exportsAssignments.nodes.push({ node, type: flattened.name });\n exportsAssignments.scopes.add(scope);\n exportsAccessScopes.add(scope);\n exportsAssignmentsByName.set(exportName, exportsAssignments);\n if (programDepth <= 3) {\n topLevelAssignments.add(node);\n }\n }\n\n skippedNodes.add(node.left);\n } else {\n for (const name of extractAssignedNames(node.left)) {\n reassignedNames.add(name);\n }\n }\n return;\n case 'CallExpression': {\n const defineCompiledEsmType = getDefineCompiledEsmType(node);\n if (defineCompiledEsmType) {\n if (programDepth === 3 && parent.type === 'ExpressionStatement') {\n // skip special handling for [module.]exports until we know we render this\n skippedNodes.add(node.arguments[0]);\n topLevelDefineCompiledEsmExpressions.push({ node, type: defineCompiledEsmType });\n } else {\n shouldWrap = true;\n }\n return;\n }\n\n // Transform require.resolve\n if (\n isDynamicRequireModulesEnabled &&\n node.callee.object &&\n isRequire(node.callee.object, scope) &&\n node.callee.property.name === 'resolve'\n ) {\n checkDynamicRequire(node.start);\n uses.require = true;\n const requireNode = node.callee.object;\n replacedDynamicRequires.push(requireNode);\n skippedNodes.add(node.callee);\n return;\n }\n\n if (!isRequireExpression(node, scope)) {\n const keypath = getKeypath(node.callee);\n if (keypath && importedVariables.has(keypath.name)) {\n // Heuristic to deoptimize requires after a required function has been called\n currentConditionalNodeEnd = Infinity;\n }\n return;\n }\n\n skippedNodes.add(node.callee);\n uses.require = true;\n\n if (hasDynamicArguments(node)) {\n if (isDynamicRequireModulesEnabled) {\n checkDynamicRequire(node.start);\n }\n if (!ignoreDynamicRequires) {\n replacedDynamicRequires.push(node.callee);\n }\n return;\n }\n\n const requireStringArg = getRequireStringArg(node);\n if (!ignoreRequire(requireStringArg)) {\n const usesReturnValue = parent.type !== 'ExpressionStatement';\n const toBeRemoved =\n parent.type === 'ExpressionStatement' &&\n (!currentConditionalNodeEnd ||\n // We should completely remove requires directly in a try-catch\n // so that Rollup can remove up the try-catch\n (currentTryBlockEnd !== null && currentTryBlockEnd < currentConditionalNodeEnd))\n ? parent\n : node;\n addRequireExpression(\n requireStringArg,\n node,\n scope,\n usesReturnValue,\n currentTryBlockEnd !== null,\n currentConditionalNodeEnd !== null,\n toBeRemoved,\n );\n if (parent.type === 'VariableDeclarator' && parent.id.type === 'Identifier') {\n for (const name of extractAssignedNames(parent.id)) {\n importedVariables.add(name);\n }\n }\n }\n return;\n }\n case 'ClassBody':\n classBodyDepth += 1;\n return;\n case 'ConditionalExpression':\n case 'IfStatement':\n // skip dead branches\n if (isFalsy(node.test)) {\n skippedNodes.add(node.consequent);\n } else if (isTruthy(node.test)) {\n if (node.alternate) {\n skippedNodes.add(node.alternate);\n }\n } else {\n conditionalNodes.add(node.consequent);\n if (node.alternate) {\n conditionalNodes.add(node.alternate);\n }\n }\n return;\n case 'ArrowFunctionExpression':\n case 'FunctionDeclaration':\n case 'FunctionExpression':\n // requires in functions should be conditional unless it is an IIFE\n if (currentConditionalNodeEnd === null && !(parent.type === 'CallExpression' && parent.callee === node)) {\n currentConditionalNodeEnd = node.end;\n }\n return;\n case 'Identifier': {\n const { name } = node;\n if (\n !isReference(node, parent) ||\n scope.contains(name) ||\n (parent.type === 'PropertyDefinition' && parent.key === node)\n )\n return;\n switch (name) {\n case 'require':\n uses.require = true;\n if (isNodeRequirePropertyAccess(parent)) {\n return;\n }\n if (!ignoreDynamicRequires) {\n if (isShorthandProperty(parent)) {\n // as key and value are the same object, isReference regards\n // both as references, so we need to skip now\n skippedNodes.add(parent.value);\n magicString.prependRight(node.start, 'require: ');\n }\n replacedDynamicRequires.push(node);\n }\n return;\n case 'module':\n case 'exports':\n shouldWrap = true;\n uses[name] = true;\n return;\n case 'global':\n uses.global = true;\n if (!ignoreGlobal) {\n replacedGlobal.push(node);\n }\n return;\n case 'define':\n magicString.overwrite(node.start, node.end, 'undefined', {\n storeName: true,\n });\n return;\n default:\n globals.add(name);\n return;\n }\n }\n case 'LogicalExpression':\n // skip dead branches\n if (node.operator === '&&') {\n if (isFalsy(node.left)) {\n skippedNodes.add(node.right);\n } else if (!isTruthy(node.left)) {\n conditionalNodes.add(node.right);\n }\n } else if (node.operator === '||') {\n if (isTruthy(node.left)) {\n skippedNodes.add(node.right);\n } else if (!isFalsy(node.left)) {\n conditionalNodes.add(node.right);\n }\n }\n return;\n case 'MemberExpression':\n if (!isDynamicRequireModulesEnabled && isModuleRequire(node, scope)) {\n uses.require = true;\n replacedDynamicRequires.push(node);\n skippedNodes.add(node.object);\n skippedNodes.add(node.property);\n }\n return;\n case 'ReturnStatement':\n // if top-level return, we need to wrap it\n if (lexicalDepth === 0) {\n shouldWrap = true;\n }\n return;\n case 'ThisExpression':\n // rewrite top-level `this` as `commonjsHelpers.commonjsGlobal`\n if (lexicalDepth === 0 && !classBodyDepth) {\n uses.global = true;\n if (!ignoreGlobal) {\n replacedThis.push(node);\n }\n }\n return;\n case 'TryStatement':\n if (currentTryBlockEnd === null) {\n currentTryBlockEnd = node.block.end;\n }\n if (currentConditionalNodeEnd === null) {\n currentConditionalNodeEnd = node.end;\n }\n return;\n case 'UnaryExpression':\n // rewrite `typeof module`, `typeof module.exports` and `typeof exports` (https://github.com/rollup/rollup-plugin-commonjs/issues/151)\n if (node.operator === 'typeof') {\n const flattened = getKeypath(node.argument);\n if (!flattened) return;\n\n if (scope.contains(flattened.name)) return;\n\n if (\n !isEsModule &&\n (flattened.keypath === 'module.exports' ||\n flattened.keypath === 'module' ||\n flattened.keypath === 'exports')\n ) {\n magicString.overwrite(node.start, node.end, `'object'`, {\n storeName: false,\n });\n }\n }\n return;\n case 'VariableDeclaration':\n if (!scope.parent) {\n topLevelDeclarations.push(node);\n }\n return;\n case 'TemplateElement':\n if (node.value.raw.includes('\\n')) {\n indentExclusionRanges.push([node.start, node.end]);\n }\n }\n },\n\n leave(node) {\n programDepth -= 1;\n if (node.scope) scope = scope.parent;\n if (functionType.test(node.type)) lexicalDepth -= 1;\n if (node.type === 'ClassBody') classBodyDepth -= 1;\n },\n });\n\n const nameBase = getName(id);\n const exportsName = deconflict([...exportsAccessScopes], globals, nameBase);\n const moduleName = deconflict([...moduleAccessScopes], globals, `${nameBase}Module`);\n const requireName = deconflict([scope], globals, `require${capitalize(nameBase)}`);\n const isRequiredName = deconflict([scope], globals, `hasRequired${capitalize(nameBase)}`);\n const helpersName = deconflict([scope], globals, 'commonjsHelpers');\n const dynamicRequireName =\n replacedDynamicRequires.length > 0 &&\n deconflict(\n [scope],\n globals,\n isDynamicRequireModulesEnabled ? CREATE_COMMONJS_REQUIRE_EXPORT : COMMONJS_REQUIRE_EXPORT,\n );\n const deconflictedExportNames = Object.create(null);\n for (const [exportName, { scopes }] of exportsAssignmentsByName) {\n deconflictedExportNames[exportName] = deconflict([...scopes], globals, exportName);\n }\n\n for (const node of replacedGlobal) {\n magicString.overwrite(node.start, node.end, `${helpersName}.commonjsGlobal`, {\n storeName: true,\n });\n }\n for (const node of replacedThis) {\n magicString.overwrite(node.start, node.end, exportsName, {\n storeName: true,\n });\n }\n for (const node of replacedDynamicRequires) {\n magicString.overwrite(\n node.start,\n node.end,\n isDynamicRequireModulesEnabled\n ? `${dynamicRequireName}(${JSON.stringify(virtualDynamicRequirePath)})`\n : dynamicRequireName,\n {\n contentOnly: true,\n storeName: true,\n },\n );\n }\n\n // We cannot wrap ES/mixed modules\n shouldWrap = !isEsModule && (shouldWrap || (uses.exports && moduleExportsAssignments.length > 0));\n\n if (\n !(\n shouldWrap ||\n isRequired ||\n needsRequireWrapper ||\n uses.module ||\n uses.exports ||\n uses.require ||\n topLevelDefineCompiledEsmExpressions.length > 0\n ) &&\n (ignoreGlobal || !uses.global)\n ) {\n return { meta: { commonjs: { isCommonJS: false } } };\n }\n\n let leadingComment = '';\n if (code.startsWith('/*')) {\n const commentEnd = code.indexOf('*/', 2) + 2;\n leadingComment = `${code.slice(0, commentEnd)}\\n`;\n magicString.remove(0, commentEnd).trim();\n }\n\n let shebang = '';\n if (code.startsWith('#!')) {\n const shebangEndPosition = code.indexOf('\\n') + 1;\n shebang = code.slice(0, shebangEndPosition);\n magicString.remove(0, shebangEndPosition).trim();\n }\n\n const exportMode = isEsModule\n ? 'none'\n : shouldWrap\n ? uses.module\n ? 'module'\n : 'exports'\n : firstTopLevelModuleExportsAssignment\n ? exportsAssignmentsByName.size === 0 && topLevelDefineCompiledEsmExpressions.length === 0\n ? 'replace'\n : 'module'\n : moduleExportsAssignments.length === 0\n ? 'exports'\n : 'module';\n\n const exportedExportsName = exportMode === 'module' ? deconflict([], globals, `${nameBase}Exports`) : exportsName;\n\n const importBlock = await rewriteRequireExpressionsAndGetImportBlock(\n magicString,\n topLevelDeclarations,\n reassignedNames,\n helpersName,\n dynamicRequireName,\n moduleName,\n exportsName,\n id,\n exportMode,\n resolveRequireSourcesAndUpdateMeta,\n needsRequireWrapper,\n isEsModule,\n isDynamicRequireModulesEnabled,\n getIgnoreTryCatchRequireStatementMode,\n commonjsMeta,\n );\n const usesRequireWrapper = commonjsMeta.isCommonJS === IS_WRAPPED_COMMONJS;\n const exportBlock = isEsModule\n ? ''\n : rewriteExportsAndGetExportsBlock(\n magicString,\n moduleName,\n exportsName,\n exportedExportsName,\n shouldWrap,\n moduleExportsAssignments,\n firstTopLevelModuleExportsAssignment,\n exportsAssignmentsByName,\n topLevelAssignments,\n topLevelDefineCompiledEsmExpressions,\n deconflictedExportNames,\n code,\n helpersName,\n exportMode,\n defaultIsModuleExports,\n usesRequireWrapper,\n requireName,\n );\n\n if (shouldWrap) {\n wrapCode(magicString, uses, moduleName, exportsName, indentExclusionRanges);\n }\n\n if (usesRequireWrapper) {\n magicString.trim().indent('\\t', {\n exclude: indentExclusionRanges,\n });\n const exported = exportMode === 'module' ? `${moduleName}.exports` : exportsName;\n magicString.prepend(\n `var ${isRequiredName};\n\nfunction ${requireName} () {\n\\tif (${isRequiredName}) return ${exported};\n\\t${isRequiredName} = 1;\n`,\n ).append(`\n\\treturn ${exported};\n}`);\n if (exportMode === 'replace') {\n magicString.prepend(`var ${exportsName};\\n`);\n }\n }\n\n magicString\n .trim()\n .prepend(shebang + leadingComment + importBlock)\n .append(exportBlock);\n\n return {\n code: magicString.toString(),\n map: sourceMap ? magicString.generateMap() : null,\n syntheticNamedExports: isEsModule || usesRequireWrapper ? false : '__moduleExports',\n meta: { commonjs: { ...commonjsMeta, shebang } },\n };\n}\n\nconst PLUGIN_NAME = 'commonjs';\n\nfunction commonjs(options = {}) {\n const {\n ignoreGlobal,\n ignoreDynamicRequires,\n requireReturnsDefault: requireReturnsDefaultOption,\n defaultIsModuleExports: defaultIsModuleExportsOption,\n esmExternals,\n } = options;\n const extensions = options.extensions || ['.js'];\n const filter = createFilter(options.include, options.exclude);\n const isPossibleCjsId = (id) => {\n const extName = extname(id);\n return extName === '.cjs' || (extensions.includes(extName) && filter(id));\n };\n\n const { strictRequiresFilter, detectCyclesAndConditional } = getStrictRequiresFilter(options);\n\n const getRequireReturnsDefault =\n typeof requireReturnsDefaultOption === 'function' ? requireReturnsDefaultOption : () => requireReturnsDefaultOption;\n\n let esmExternalIds;\n const isEsmExternal =\n typeof esmExternals === 'function'\n ? esmExternals\n : Array.isArray(esmExternals)\n ? ((esmExternalIds = new Set(esmExternals)), (id) => esmExternalIds.has(id))\n : () => esmExternals;\n\n const getDefaultIsModuleExports =\n typeof defaultIsModuleExportsOption === 'function'\n ? defaultIsModuleExportsOption\n : () => (typeof defaultIsModuleExportsOption === 'boolean' ? defaultIsModuleExportsOption : 'auto');\n\n const dynamicRequireRoot =\n typeof options.dynamicRequireRoot === 'string' ? resolve(options.dynamicRequireRoot) : process.cwd();\n const { commonDir, dynamicRequireModules } = getDynamicRequireModules(\n options.dynamicRequireTargets,\n dynamicRequireRoot,\n );\n const isDynamicRequireModulesEnabled = dynamicRequireModules.size > 0;\n\n const ignoreRequire =\n typeof options.ignore === 'function'\n ? options.ignore\n : Array.isArray(options.ignore)\n ? (id) => options.ignore.includes(id)\n : () => false;\n\n const getIgnoreTryCatchRequireStatementMode = (id) => {\n const mode =\n typeof options.ignoreTryCatch === 'function'\n ? options.ignoreTryCatch(id)\n : Array.isArray(options.ignoreTryCatch)\n ? options.ignoreTryCatch.includes(id)\n : typeof options.ignoreTryCatch !== 'undefined'\n ? options.ignoreTryCatch\n : true;\n\n return {\n canConvertRequire: mode !== 'remove' && mode !== true,\n shouldRemoveRequire: mode === 'remove',\n };\n };\n\n const { currentlyResolving, resolveId } = getResolveId(extensions, isPossibleCjsId);\n\n const sourceMap = options.sourceMap !== false;\n\n // Initialized in buildStart\n let requireResolver;\n\n function transformAndCheckExports(code, id) {\n const normalizedId = normalizePathSlashes(id);\n const { isEsModule, hasDefaultExport, hasNamedExports, ast } = analyzeTopLevelStatements(this.parse, code, id);\n\n const commonjsMeta = this.getModuleInfo(id).meta.commonjs || {};\n if (hasDefaultExport) {\n commonjsMeta.hasDefaultExport = true;\n }\n if (hasNamedExports) {\n commonjsMeta.hasNamedExports = true;\n }\n\n if (\n !dynamicRequireModules.has(normalizedId) &&\n (!(hasCjsKeywords(code, ignoreGlobal) || requireResolver.isRequiredId(id)) ||\n (isEsModule && !options.transformMixedEsModules))\n ) {\n commonjsMeta.isCommonJS = false;\n return { meta: { commonjs: commonjsMeta } };\n }\n\n const needsRequireWrapper = !isEsModule && (dynamicRequireModules.has(normalizedId) || strictRequiresFilter(id));\n\n const checkDynamicRequire = (position) => {\n const normalizedDynamicRequireRoot = normalizePathSlashes(dynamicRequireRoot);\n\n if (normalizedId.indexOf(normalizedDynamicRequireRoot) !== 0) {\n this.error(\n {\n code: 'DYNAMIC_REQUIRE_OUTSIDE_ROOT',\n normalizedId,\n normalizedDynamicRequireRoot,\n message: `\"${normalizedId}\" contains dynamic require statements but it is not within the current dynamicRequireRoot \"${normalizedDynamicRequireRoot}\". You should set dynamicRequireRoot to \"${dirname(\n normalizedId,\n )}\" or one of its parent directories.`,\n },\n position,\n );\n }\n };\n\n return transformCommonjs(\n this.parse,\n code,\n id,\n isEsModule,\n ignoreGlobal || isEsModule,\n ignoreRequire,\n ignoreDynamicRequires && !isDynamicRequireModulesEnabled,\n getIgnoreTryCatchRequireStatementMode,\n sourceMap,\n isDynamicRequireModulesEnabled,\n dynamicRequireModules,\n commonDir,\n ast,\n getDefaultIsModuleExports(id),\n needsRequireWrapper,\n requireResolver.resolveRequireSourcesAndUpdateMeta(this),\n requireResolver.isRequiredId(id),\n checkDynamicRequire,\n commonjsMeta,\n );\n }\n\n return {\n name: PLUGIN_NAME,\n\n version,\n\n options(rawOptions) {\n // We inject the resolver in the beginning so that \"catch-all-resolver\" like node-resolver\n // do not prevent our plugin from resolving entry points ot proxies.\n const plugins = Array.isArray(rawOptions.plugins)\n ? [...rawOptions.plugins]\n : rawOptions.plugins\n ? [rawOptions.plugins]\n : [];\n plugins.unshift({\n name: 'commonjs--resolver',\n resolveId,\n });\n return { ...rawOptions, plugins };\n },\n\n buildStart({ plugins }) {\n validateVersion(this.meta.rollupVersion, peerDependencies.rollup, 'rollup');\n const nodeResolve = plugins.find(({ name }) => name === 'node-resolve');\n if (nodeResolve) {\n validateVersion(nodeResolve.version, '^13.0.6', '@rollup/plugin-node-resolve');\n }\n if (options.namedExports != null) {\n this.warn(\n 'The namedExports option from \"@rollup/plugin-commonjs\" is deprecated. Named exports are now handled automatically.',\n );\n }\n requireResolver = getRequireResolver(extensions, detectCyclesAndConditional, currentlyResolving);\n },\n\n buildEnd() {\n if (options.strictRequires === 'debug') {\n const wrappedIds = requireResolver.getWrappedIds();\n if (wrappedIds.length) {\n this.warn({\n code: 'WRAPPED_IDS',\n ids: wrappedIds,\n message: `The commonjs plugin automatically wrapped the following files:\\n[\\n${wrappedIds\n .map((id) => `\\t${JSON.stringify(relative(process.cwd(), id))}`)\n .join(',\\n')}\\n]`,\n });\n } else {\n this.warn({\n code: 'WRAPPED_IDS',\n ids: wrappedIds,\n message: 'The commonjs plugin did not wrap any files.',\n });\n }\n }\n },\n\n async load(id) {\n if (id === HELPERS_ID) {\n return getHelpersModule();\n }\n\n if (isWrappedId(id, MODULE_SUFFIX)) {\n const name = getName(unwrapId(id, MODULE_SUFFIX));\n return {\n code: `var ${name} = {exports: {}}; export {${name} as __module}`,\n meta: { commonjs: { isCommonJS: false } },\n };\n }\n\n if (isWrappedId(id, EXPORTS_SUFFIX)) {\n const name = getName(unwrapId(id, EXPORTS_SUFFIX));\n return {\n code: `var ${name} = {}; export {${name} as __exports}`,\n meta: { commonjs: { isCommonJS: false } },\n };\n }\n\n if (isWrappedId(id, EXTERNAL_SUFFIX)) {\n const actualId = unwrapId(id, EXTERNAL_SUFFIX);\n return getUnknownRequireProxy(actualId, isEsmExternal(actualId) ? getRequireReturnsDefault(actualId) : true);\n }\n\n // entry suffix is just appended to not mess up relative external resolution\n if (id.endsWith(ENTRY_SUFFIX)) {\n const acutalId = id.slice(0, -ENTRY_SUFFIX.length);\n const {\n meta: { commonjs: commonjsMeta },\n } = this.getModuleInfo(acutalId);\n const shebang = commonjsMeta?.shebang ?? '';\n return getEntryProxy(acutalId, getDefaultIsModuleExports(acutalId), this.getModuleInfo, shebang);\n }\n\n if (isWrappedId(id, ES_IMPORT_SUFFIX)) {\n const actualId = unwrapId(id, ES_IMPORT_SUFFIX);\n return getEsImportProxy(\n actualId,\n getDefaultIsModuleExports(actualId),\n (await this.load({ id: actualId })).moduleSideEffects,\n );\n }\n\n if (id === DYNAMIC_MODULES_ID) {\n return getDynamicModuleRegistry(\n isDynamicRequireModulesEnabled,\n dynamicRequireModules,\n commonDir,\n ignoreDynamicRequires,\n );\n }\n\n if (isWrappedId(id, PROXY_SUFFIX)) {\n const actualId = unwrapId(id, PROXY_SUFFIX);\n return getStaticRequireProxy(actualId, getRequireReturnsDefault(actualId), this.load);\n }\n\n return null;\n },\n\n shouldTransformCachedModule(...args) {\n return requireResolver.shouldTransformCachedModule.call(this, ...args);\n },\n\n transform(code, id) {\n if (!isPossibleCjsId(id)) return null;\n\n try {\n return transformAndCheckExports.call(this, code, id);\n } catch (err) {\n return this.error(err, err.pos);\n }\n },\n };\n}\n\nexport { commonjs as default };\n//# sourceMappingURL=index.js.map\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ms-cloudpack/bundler-rollup",
3
- "version": "0.2.37",
3
+ "version": "0.3.0",
4
4
  "description": "A cloudpack plugin for abstracting rollup.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -19,17 +19,17 @@
19
19
  }
20
20
  },
21
21
  "dependencies": {
22
- "@ms-cloudpack/bundler-capabilities": "^0.2.21",
23
- "@ms-cloudpack/bundler-utilities": "^0.2.18",
24
- "@ms-cloudpack/common-types": "^0.24.16",
25
- "@ms-cloudpack/esm-stub-utilities": "^0.14.28",
26
- "@ms-cloudpack/package-utilities": "^12.3.4",
22
+ "@ms-cloudpack/bundler-capabilities": "^0.2.22",
23
+ "@ms-cloudpack/bundler-utilities": "^0.2.19",
24
+ "@ms-cloudpack/common-types": "^0.24.17",
25
+ "@ms-cloudpack/esm-stub-utilities": "^0.14.29",
26
+ "@ms-cloudpack/package-utilities": "^12.3.5",
27
27
  "@ms-cloudpack/path-string-parsing": "^1.2.7",
28
- "@ms-cloudpack/path-utilities": "^3.1.1",
28
+ "@ms-cloudpack/path-utilities": "^3.1.2",
29
29
  "@rollup/plugin-dynamic-import-vars": "^2.0.0",
30
- "@rollup/plugin-node-resolve": "^15.0.0",
31
- "@rollup/plugin-replace": "^5.0.0",
32
- "@rollup/plugin-swc": "^0.3.0",
30
+ "@rollup/plugin-node-resolve": "^16.0.0",
31
+ "@rollup/plugin-replace": "^6.0.0",
32
+ "@rollup/plugin-swc": "^0.4.0",
33
33
  "@rollup/plugin-terser": "^0.4.0",
34
34
  "@rollup/plugin-url": "^8.0.0",
35
35
  "@rollup/pluginutils": "^5.0.1",
@@ -41,8 +41,8 @@
41
41
  "magic-string": "^0.30.5",
42
42
  "picomatch": "^4.0.2",
43
43
  "postcss": "^8.0.0",
44
- "rollup": "^3.29.0",
45
- "rollup-plugin-polyfill-node": "^0.12.0",
44
+ "rollup": "^4.0.0",
45
+ "rollup-plugin-polyfill-node": "^0.13.0",
46
46
  "rollup-plugin-postcss": "^4.0.0",
47
47
  "sass": "^1.0.0"
48
48
  },