@rollup/plugin-commonjs 21.0.1 → 22.0.0-11

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../src/parse.js","../../src/analyze-top-level-statements.js","../../src/utils.js","../../src/dynamic-modules.js","../../src/helpers.js","../../src/proxies.js","../../src/resolve-id.js","../../src/resolve-require-sources.js","../../src/rollup-version.js","../../src/ast-utils.js","../../src/generate-exports.js","../../src/generate-imports.js","../../src/transform-commonjs.js","../../src/index.js"],"sourcesContent":["export function 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\nexport function hasCjsKeywords(code, ignoreGlobal) {\n const firstpass = ignoreGlobal ? firstpassNoGlobal : firstpassGlobal;\n return firstpass.test(code);\n}\n","/* eslint-disable no-underscore-dangle */\n\nimport { tryParse } from './parse';\n\nexport default function 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 default:\n }\n }\n\n return { isEsModule, hasDefaultExport, hasNamedExports, ast };\n}\n","/* eslint-disable import/prefer-default-export */\n\nimport { basename, dirname, extname, relative } from 'path';\n\nimport { createFilter, makeLegalIdentifier } from '@rollup/pluginutils';\n\nexport function deconflict(scopes, globals, identifier) {\n let i = 1;\n let deconflicted = makeLegalIdentifier(identifier);\n const hasConflicts = () =>\n 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\nexport function 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\nexport function normalizePathSlashes(path) {\n return path.replace(/\\\\/g, '/');\n}\n\nexport const getVirtualPathForDynamicRequirePath = (path, commonDir) =>\n `/${normalizePathSlashes(relative(commonDir, path))}`;\n\nexport function capitalize(name) {\n return name[0].toUpperCase() + name.slice(1);\n}\n\nexport function getStrictRequiresFilter({ strictRequires }) {\n switch (strictRequires) {\n case true:\n return { strictRequiresFilter: () => true, detectCyclesAndConditional: false };\n // eslint-disable-next-line no-undefined\n case undefined:\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","import { existsSync, readFileSync, statSync } from 'fs';\nimport { join, resolve, dirname } from 'path';\n\nimport getCommonDir from 'commondir';\n\nimport glob from 'glob';\n\nimport { getVirtualPathForDynamicRequirePath, normalizePathSlashes } from './utils';\n\nfunction getPackageEntryPoint(dirPath) {\n let entryPoint = 'index.js';\n\n try {\n if (existsSync(join(dirPath, 'package.json'))) {\n entryPoint =\n JSON.parse(readFileSync(join(dirPath, 'package.json'), { encoding: 'utf8' })).main ||\n 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\nexport function 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\n ? dynamicRequireModules.delete(targetPath)\n : dynamicRequireModules.set(targetPath, resolvedPath);\n for (const path of glob.sync(isNegated ? pattern.substr(1) : pattern)) {\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\nexport const COMMONJS_REQUIRE_EXPORT = 'commonjsRequire';\nexport const CREATE_COMMONJS_REQUIRE_EXPORT = 'createCommonjsRequire';\n\nexport function 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","export const isWrappedId = (id, suffix) => id.endsWith(suffix);\nexport const wrapId = (id, suffix) => `\\0${id}${suffix}`;\nexport const unwrapId = (wrappedId, suffix) => wrappedId.slice(1, -suffix.length);\n\nexport const PROXY_SUFFIX = '?commonjs-proxy';\nexport const WRAPPED_SUFFIX = '?commonjs-wrapped';\nexport const EXTERNAL_SUFFIX = '?commonjs-external';\nexport const EXPORTS_SUFFIX = '?commonjs-exports';\nexport const MODULE_SUFFIX = '?commonjs-module';\nexport const ENTRY_SUFFIX = '?commonjs-entry';\nexport const ES_IMPORT_SUFFIX = '?commonjs-es-import';\n\nexport const DYNAMIC_MODULES_ID = '\\0commonjs-dynamic-modules';\nexport const HELPERS_ID = '\\0commonjsHelpers.js';\n\nexport const 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 var f = n.default;\n\tif (typeof f == \"function\") {\n\t\tvar a = function () {\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\nexport function getHelpersModule() {\n return HELPERS;\n}\n","import { HELPERS_ID, IS_WRAPPED_COMMONJS } from './helpers';\nimport { capitalize, getName } from './utils';\n\nexport function 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\nexport async 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 } else if (commonjsMeta.isCommonJS) {\n return `export { __moduleExports as default } from ${JSON.stringify(id)};`;\n } else if (!requireReturnsDefault) {\n return `import { getAugmentedNamespace } from \"${HELPERS_ID}\"; import * as ${name} from ${JSON.stringify(\n id\n )}; export default /*@__PURE__*/getAugmentedNamespace(${name});`;\n } else 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\nexport function getEntryProxy(id, defaultIsModuleExports, getModuleInfo) {\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 code;\n }\n return getEsImportProxy(id, defaultIsModuleExports);\n}\n\nexport function getEsImportProxy(id, defaultIsModuleExports) {\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} = ${requireModule}();\\n` +\n `export { ${exportsName} as __moduleExports };`;\n if (defaultIsModuleExports) {\n code += `\\nexport { ${exportsName} as default };`;\n } else {\n code += `export default /*@__PURE__*/getDefaultExportFromCjs(${exportsName});`;\n }\n return {\n code,\n syntheticNamedExports: '__moduleExports',\n meta: { commonjs: { isCommonJS: false } }\n };\n}\n","/* eslint-disable no-param-reassign, no-undefined */\n\nimport { statSync } from 'fs';\nimport { dirname, resolve, sep } from 'path';\n\nimport {\n DYNAMIC_MODULES_ID,\n ENTRY_SUFFIX,\n ES_IMPORT_SUFFIX,\n EXPORTS_SUFFIX,\n EXTERNAL_SUFFIX,\n HELPERS_ID,\n IS_WRAPPED_COMMONJS,\n isWrappedId,\n MODULE_SUFFIX,\n PROXY_SUFFIX,\n unwrapId,\n wrapId,\n WRAPPED_SUFFIX\n} from './helpers';\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\nexport function 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\nexport default function getResolveId(extensions) {\n return async function resolveId(importee, importer, resolveOptions) {\n // We assume that all requires are pre-resolved\n const customOptions = resolveOptions.custom;\n if (customOptions && customOptions['node-resolve'] && customOptions['node-resolve'].isRequire) {\n return null;\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, { skipSelf: true }))) {\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 ) {\n return resolved;\n }\n const moduleInfo = await this.load(resolved);\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 const {\n meta: { commonjs: commonjsMeta }\n } = moduleInfo;\n if (commonjsMeta && commonjsMeta.isCommonJS === IS_WRAPPED_COMMONJS) {\n return wrapId(resolved.id, ES_IMPORT_SUFFIX);\n }\n return resolved;\n };\n}\n","import {\n EXTERNAL_SUFFIX,\n IS_WRAPPED_COMMONJS,\n PROXY_SUFFIX,\n wrapId,\n WRAPPED_SUFFIX\n} from './helpers';\nimport { resolveExtensions } from './resolve-id';\n\nexport function getRequireResolver(extensions, detectCyclesAndConditional) {\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 any 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 return {\n getWrappedIds: () =>\n Object.keys(knownCjsModuleTypes).filter(\n (id) => knownCjsModuleTypes[id] === IS_WRAPPED_COMMONJS\n ),\n isRequiredId: (id) => requiredIds[id],\n async shouldTransformCachedModule({ id: parentId, meta: { commonjs: parentMeta } }) {\n // Ignore modules that did not pass through the original transformer in a previous build\n if (!(parentMeta && parentMeta.requires)) {\n return false;\n }\n setInitialParentType(parentId, parentMeta.initialCommonJSType);\n await Promise.all(\n parentMeta.requires.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 parentMeta.requires) {\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 parentMeta.requires) {\n fullyAnalyzedModules[id] = true;\n }\n return false;\n },\n /* eslint-disable no-param-reassign */\n resolveRequireSourcesAndUpdateMeta: (rollupContext) => async (\n parentId,\n isParentCommonJS,\n parentMeta,\n sources\n ) => {\n parentMeta.initialCommonJSType = isParentCommonJS;\n parentMeta.requires = [];\n parentMeta.isRequiredCommonJS = Object.create(null);\n setInitialParentType(parentId, isParentCommonJS);\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 const resolved =\n (await rollupContext.resolve(source, parentId, {\n custom: { 'node-resolve': { isRequire: true } }\n })) || resolveExtensions(source, parentId, extensions);\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[\n dependencyId\n ] = getTypeForFullyAnalyzedModule(dependencyId));\n fullyAnalyzedModules[dependencyId] = true;\n return {\n source: sources[index].source,\n id: allowProxy\n ? isCommonJS === IS_WRAPPED_COMMONJS\n ? wrapId(dependencyId, WRAPPED_SUFFIX)\n : wrapId(dependencyId, PROXY_SUFFIX)\n : dependencyId,\n isCommonJS\n };\n });\n }\n };\n}\n","export default function 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 (\n major < minMajor ||\n (major === minMajor && (minor < minMinor || (minor === minMinor && patch < minPatch)))\n ) {\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","export { default as isReference } from 'is-reference';\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\nexport function 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\nexport function isFalsy(node) {\n return not(isTruthy(node));\n}\n\nexport function 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\nexport const KEY_COMPILED_ESM = '__esModule';\n\nexport function isDefineCompiledEsm(node) {\n const definedProperty =\n getDefinePropertyCallName(node, 'exports') || getDefinePropertyCallName(node, 'module.exports');\n if (definedProperty && definedProperty.key === KEY_COMPILED_ESM) {\n return isTruthy(definedProperty.value);\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\nexport function isShorthandProperty(parent) {\n return parent && parent.type === 'Property' && parent.shorthand;\n}\n\nexport function hasDefineEsmProperty(node) {\n return node.properties.some((property) => {\n if (\n property.type === 'Property' &&\n property.key.type === 'Identifier' &&\n property.key.name === '__esModule' &&\n isTruthy(property.value)\n ) {\n return true;\n }\n return false;\n });\n}\n","export function wrapCode(magicString, uses, moduleName, exportsName) {\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(exportsName);\n }\n magicString\n .trim()\n .indent('\\t')\n .prepend(`(function (${args.join(', ')}) {\\n`)\n .append(`\\n} (${passedArgs.join(', ')}));`);\n}\n\nexport function rewriteExportsAndGetExportsBlock(\n magicString,\n moduleName,\n exportsName,\n wrapped,\n moduleExportsAssignments,\n firstTopLevelModuleExportsAssignment,\n exportsAssignmentsByName,\n topLevelAssignments,\n defineCompiledEsmExpressions,\n deconflictedExportNames,\n code,\n HELPERS_NAME,\n exportMode,\n detectWrappedDefault,\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 );\n } else {\n exports.push(`${exportsName} as __moduleExports`);\n if (wrapped) {\n getExportsWhenWrapping(\n exportDeclarations,\n exportsName,\n detectWrappedDefault,\n HELPERS_NAME,\n defaultIsModuleExports\n );\n } else {\n getExports(\n magicString,\n exports,\n exportDeclarations,\n moduleExportsAssignments,\n exportsAssignmentsByName,\n deconflictedExportNames,\n topLevelAssignments,\n moduleName,\n exportsName,\n defineCompiledEsmExpressions,\n HELPERS_NAME,\n defaultIsModuleExports\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 if (!wrapped) {\n if (exportMode === 'replace') {\n for (const { left } of moduleExportsAssignments) {\n magicString.overwrite(left.start, left.end, exportsName);\n }\n } else {\n // Collect and rewrite module.exports assignments\n for (const { left } of moduleExportsAssignments) {\n magicString.overwrite(left.start, left.end, `${moduleName}.exports`);\n }\n // Collect and rewrite named exports\n for (const [exportName, { nodes }] of exportsAssignmentsByName) {\n for (const node of nodes) {\n magicString.overwrite(node.start, node.left.end, `${exportsName}.${exportName}`);\n }\n }\n // Collect and rewrite exports.__esModule assignments\n for (const expression of defineCompiledEsmExpressions) {\n const moduleExportsExpression =\n expression.type === 'CallExpression' ? expression.arguments[0] : expression.left.object;\n magicString.overwrite(\n moduleExportsExpression.start,\n moduleExportsExpression.end,\n exportsName\n );\n }\n }\n }\n exports.push(`${requireName} as __require`);\n}\n\nfunction getExportsForReplacedModuleExports(\n magicString,\n exports,\n exportDeclarations,\n moduleExportsAssignments,\n firstTopLevelModuleExportsAssignment,\n exportsName\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(`export default ${exportsName};`);\n}\n\nfunction getExportsWhenWrapping(\n exportDeclarations,\n exportsName,\n detectWrappedDefault,\n HELPERS_NAME,\n defaultIsModuleExports\n) {\n exportDeclarations.push(\n `export default ${\n detectWrappedDefault && defaultIsModuleExports === 'auto'\n ? `/*@__PURE__*/${HELPERS_NAME}.getDefaultExportFromCjs(${exportsName})`\n : defaultIsModuleExports === false\n ? `${exportsName}.default`\n : exportsName\n };`\n );\n}\n\nfunction getExports(\n magicString,\n exports,\n exportDeclarations,\n moduleExportsAssignments,\n exportsAssignmentsByName,\n deconflictedExportNames,\n topLevelAssignments,\n moduleName,\n exportsName,\n defineCompiledEsmExpressions,\n HELPERS_NAME,\n defaultIsModuleExports\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 of nodes) {\n let replacement = `${deconflicted} = ${exportsName}.${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 // Collect and rewrite exports.__esModule assignments\n let isRestorableCompiledEsm = false;\n for (const expression of defineCompiledEsmExpressions) {\n isRestorableCompiledEsm = true;\n const moduleExportsExpression =\n expression.type === 'CallExpression' ? expression.arguments[0] : expression.left.object;\n magicString.overwrite(moduleExportsExpression.start, moduleExportsExpression.end, exportsName);\n }\n\n if (!isRestorableCompiledEsm || defaultIsModuleExports === true) {\n exports.push(`${exportsName} as default`);\n } else if (moduleExportsAssignments.length === 0 || defaultIsModuleExports === false) {\n exports.push(`${deconflictedDefaultExportName || exportsName} as default`);\n } else {\n exportDeclarations.push(\n `export default /*@__PURE__*/${HELPERS_NAME}.getDefaultExportFromCjs(${exportsName});`\n );\n }\n}\n","import { COMMONJS_REQUIRE_EXPORT, CREATE_COMMONJS_REQUIRE_EXPORT } from './dynamic-modules';\nimport {\n DYNAMIC_MODULES_ID,\n EXPORTS_SUFFIX,\n EXTERNAL_SUFFIX,\n HELPERS_ID,\n IS_WRAPPED_COMMONJS,\n isWrappedId,\n MODULE_SUFFIX,\n wrapId\n} from './helpers';\n\nexport function 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\nexport function 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\nexport function 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\nexport function 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\nexport function isNodeRequirePropertyAccess(parent) {\n return parent && parent.property && reservedMethod[parent.property.name];\n}\n\nexport function getRequireStringArg(node) {\n return node.arguments[0].type === 'Literal'\n ? node.arguments[0].value\n : node.arguments[0].quasis[0].value.cooked;\n}\n\nexport function getRequireHandlers() {\n const requireExpressions = [];\n\n function addRequireStatement(\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}, exports as ${exportsName} } from ${JSON.stringify(\n wrapId(id, MODULE_SUFFIX)\n )}`\n );\n } else if (exportMode === 'exports') {\n imports.push(\n `import { __exports as ${exportsName} } from ${JSON.stringify(wrapId(id, EXPORTS_SUFFIX))}`\n );\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 addRequireStatement,\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 } 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, `${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","/* eslint-disable no-param-reassign, no-shadow, no-underscore-dangle, no-continue */\n\nimport { dirname } from 'path';\n\nimport { attachScopes, extractAssignedNames } from '@rollup/pluginutils';\nimport { walk } from 'estree-walker';\nimport MagicString from 'magic-string';\n\nimport {\n getKeypath,\n hasDefineEsmProperty,\n isDefineCompiledEsm,\n isFalsy,\n isReference,\n isShorthandProperty,\n isTruthy,\n KEY_COMPILED_ESM\n} from './ast-utils';\nimport { COMMONJS_REQUIRE_EXPORT, CREATE_COMMONJS_REQUIRE_EXPORT } from './dynamic-modules';\nimport { rewriteExportsAndGetExportsBlock, wrapCode } from './generate-exports';\nimport {\n getRequireHandlers,\n getRequireStringArg,\n hasDynamicArguments,\n isModuleRequire,\n isNodeRequirePropertyAccess,\n isRequire,\n isRequireExpression\n} from './generate-imports';\nimport { IS_WRAPPED_COMMONJS } from './helpers';\nimport { tryParse } from './parse';\nimport { capitalize, deconflict, getName, getVirtualPathForDynamicRequirePath } from './utils';\n\nconst exportsPattern = /^(?:module\\.)?exports(?:\\.([a-zA-Z_$][a-zA-Z_$0-9]*))?$/;\n\nconst functionType = /^(?:FunctionDeclaration|FunctionExpression|ArrowFunctionExpression)$/;\n\nexport default async 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 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 { addRequireStatement, 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 replacedDynamicRequires = [];\n const importedVariables = new Set();\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\n if (defaultIsModuleExports === false) {\n shouldWrap = true;\n } else if (defaultIsModuleExports === 'auto') {\n if (node.right.type === 'ObjectExpression') {\n if (hasDefineEsmProperty(node.right)) {\n shouldWrap = true;\n }\n } else if (defaultIsModuleExports === false) {\n shouldWrap = true;\n }\n }\n } else if (exportName === KEY_COMPILED_ESM) {\n if (programDepth > 3) {\n shouldWrap = true;\n } else {\n topLevelDefineCompiledEsmExpressions.push(node);\n }\n } else {\n const exportsAssignments = exportsAssignmentsByName.get(exportName) || {\n nodes: [],\n scopes: new Set()\n };\n exportsAssignments.nodes.push(node);\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 if (isDefineCompiledEsm(node)) {\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);\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 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 addRequireStatement(\n requireStringArg,\n node,\n scope,\n usesReturnValue,\n currentTryBlockEnd !== null,\n currentConditionalNodeEnd !== null,\n parent.type === 'ExpressionStatement' ? parent : node\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 '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 (\n currentConditionalNodeEnd === null &&\n !(parent.type === 'CallExpression' && parent.callee === node)\n ) {\n currentConditionalNodeEnd = node.end;\n }\n return;\n case 'Identifier': {\n const { name } = node;\n if (!isReference(node, parent) || scope.contains(name)) 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 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) {\n uses.global = true;\n if (!ignoreGlobal) {\n replacedGlobal.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 }\n },\n\n leave(node) {\n programDepth -= 1;\n if (node.scope) scope = scope.parent;\n if (functionType.test(node.type)) lexicalDepth -= 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 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 const detectWrappedDefault =\n shouldWrap &&\n (topLevelDefineCompiledEsmExpressions.length > 0 || code.indexOf('__esModule') >= 0);\n\n if (\n !(\n shouldWrap ||\n isRequired ||\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 const exportMode = 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 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 shouldWrap,\n moduleExportsAssignments,\n firstTopLevelModuleExportsAssignment,\n exportsAssignmentsByName,\n topLevelAssignments,\n topLevelDefineCompiledEsmExpressions,\n deconflictedExportNames,\n code,\n helpersName,\n exportMode,\n detectWrappedDefault,\n defaultIsModuleExports,\n usesRequireWrapper,\n requireName\n );\n\n if (shouldWrap) {\n wrapCode(magicString, uses, moduleName, exportsName);\n }\n\n if (usesRequireWrapper) {\n magicString.trim().indent('\\t');\n magicString.prepend(\n `var ${isRequiredName};\n\nfunction ${requireName} () {\n\\tif (${isRequiredName}) return ${exportsName};\n\\t${isRequiredName} = 1;\n`\n ).append(`\n\\treturn ${exportsName};\n}`);\n if (exportMode === 'replace') {\n magicString.prepend(`var ${exportsName};\\n`);\n }\n }\n\n magicString\n .trim()\n .prepend(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 }\n };\n}\n","import { extname, relative, resolve, dirname } from 'path';\n\nimport { createFilter } from '@rollup/pluginutils';\n\nimport { peerDependencies, version } from '../package.json';\n\nimport analyzeTopLevelStatements from './analyze-top-level-statements';\nimport { getDynamicModuleRegistry, getDynamicRequireModules } from './dynamic-modules';\n\nimport {\n DYNAMIC_MODULES_ID,\n ENTRY_SUFFIX,\n ES_IMPORT_SUFFIX,\n EXPORTS_SUFFIX,\n EXTERNAL_SUFFIX,\n getHelpersModule,\n HELPERS_ID,\n isWrappedId,\n MODULE_SUFFIX,\n PROXY_SUFFIX,\n unwrapId\n} from './helpers';\nimport { hasCjsKeywords } from './parse';\nimport {\n getEntryProxy,\n getEsImportProxy,\n getStaticRequireProxy,\n getUnknownRequireProxy\n} from './proxies';\nimport getResolveId from './resolve-id';\nimport { getRequireResolver } from './resolve-require-sources';\nimport validateVersion from './rollup-version';\nimport transformCommonjs from './transform-commonjs';\nimport { getName, getStrictRequiresFilter, normalizePathSlashes } from './utils';\n\nconst PLUGIN_NAME = 'commonjs';\n\nexport default function commonjs(options = {}) {\n const {\n ignoreGlobal,\n ignoreDynamicRequires,\n requireReturnsDefault: requireReturnsDefaultOption,\n esmExternals\n } = options;\n const extensions = options.extensions || ['.js'];\n const filter = createFilter(options.include, options.exclude);\n const { strictRequiresFilter, detectCyclesAndConditional } = getStrictRequiresFilter(options);\n\n const getRequireReturnsDefault =\n typeof requireReturnsDefaultOption === 'function'\n ? requireReturnsDefaultOption\n : () => 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 defaultIsModuleExports =\n typeof options.defaultIsModuleExports === 'boolean' ? options.defaultIsModuleExports : 'auto';\n\n const dynamicRequireRoot =\n typeof options.dynamicRequireRoot === 'string'\n ? resolve(options.dynamicRequireRoot)\n : 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 resolveId = getResolveId(extensions);\n\n const sourceMap = options.sourceMap !== false;\n\n // Initialized in buildStart\n let requireResolver;\n\n function transformAndCheckExports(code, id) {\n const { isEsModule, hasDefaultExport, hasNamedExports, ast } = analyzeTopLevelStatements(\n this.parse,\n code,\n id\n );\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(normalizePathSlashes(id)) &&\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 =\n !isEsModule &&\n (dynamicRequireModules.has(normalizePathSlashes(id)) || strictRequiresFilter(id));\n\n const checkDynamicRequire = (position) => {\n if (id.indexOf(dynamicRequireRoot) !== 0) {\n this.error(\n {\n code: 'DYNAMIC_REQUIRE_OUTSIDE_ROOT',\n id,\n dynamicRequireRoot,\n message: `\"${id}\" contains dynamic require statements but it is not within the current dynamicRequireRoot \"${dynamicRequireRoot}\". You should set dynamicRequireRoot to \"${dirname(\n id\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 defaultIsModuleExports,\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);\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 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 syntheticNamedExports: '__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(\n actualId,\n isEsmExternal(actualId) ? getRequireReturnsDefault(actualId) : true\n );\n }\n\n // entry suffix is just appended to not mess up relative external resolution\n if (id.endsWith(ENTRY_SUFFIX)) {\n return getEntryProxy(\n id.slice(0, -ENTRY_SUFFIX.length),\n defaultIsModuleExports,\n this.getModuleInfo\n );\n }\n\n if (isWrappedId(id, ES_IMPORT_SUFFIX)) {\n return getEsImportProxy(unwrapId(id, ES_IMPORT_SUFFIX), defaultIsModuleExports);\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 const extName = extname(id);\n if (extName !== '.cjs' && (!filter(id) || !extensions.includes(extName))) {\n return null;\n }\n\n try {\n return transformAndCheckExports.call(this, code, id);\n } catch (err) {\n return this.error(err, err.loc);\n }\n }\n };\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"type":"module"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rollup/plugin-commonjs",
3
- "version": "21.0.1",
3
+ "version": "22.0.0-11",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -13,10 +13,14 @@
13
13
  "author": "Rich Harris <richard.a.harris@gmail.com>",
14
14
  "homepage": "https://github.com/rollup/plugins/tree/master/packages/commonjs/#readme",
15
15
  "bugs": "https://github.com/rollup/plugins/issues",
16
- "main": "dist/index.js",
17
- "module": "dist/index.es.js",
16
+ "main": "./dist/cjs/index.js",
17
+ "module": "./dist/es/index.js",
18
+ "exports": {
19
+ "require": "./dist/cjs/index.js",
20
+ "import": "./dist/es/index.js"
21
+ },
18
22
  "engines": {
19
- "node": ">= 8.0.0"
23
+ "node": ">= 12.0.0"
20
24
  },
21
25
  "scripts": {
22
26
  "build": "rollup -c",
@@ -26,6 +30,7 @@
26
30
  "ci:test": "pnpm test -- --verbose && pnpm test:ts",
27
31
  "prebuild": "del-cli dist",
28
32
  "prepare": "if [ ! -d 'dist' ]; then pnpm build; fi",
33
+ "prepublishOnly": "pnpm build",
29
34
  "prerelease": "pnpm build",
30
35
  "pretest": "pnpm build",
31
36
  "release": "pnpm plugin:release --workspace-root -- --pkg $npm_package_name",
@@ -47,7 +52,7 @@
47
52
  "require"
48
53
  ],
49
54
  "peerDependencies": {
50
- "rollup": "^2.38.3"
55
+ "rollup": "^2.67.0"
51
56
  },
52
57
  "dependencies": {
53
58
  "@rollup/pluginutils": "^3.1.0",
@@ -60,10 +65,10 @@
60
65
  },
61
66
  "devDependencies": {
62
67
  "@rollup/plugin-json": "^4.1.0",
63
- "@rollup/plugin-node-resolve": "^8.4.0",
68
+ "@rollup/plugin-node-resolve": "^13.1.0",
64
69
  "locate-character": "^2.0.5",
65
70
  "require-relative": "^0.8.7",
66
- "rollup": "^2.58.0",
71
+ "rollup": "^2.67.0",
67
72
  "shx": "^0.3.2",
68
73
  "source-map": "^0.7.3",
69
74
  "source-map-support": "^0.5.19",
package/types/index.d.ts CHANGED
@@ -7,10 +7,10 @@ interface RollupCommonJSOptions {
7
7
  /**
8
8
  * A minimatch pattern, or array of patterns, which specifies the files in
9
9
  * the build the plugin should operate on. By default, all files with
10
- * extension `".cjs"` or those in `extensions` are included, but you can narrow
11
- * this list by only including specific files. These files will be analyzed
12
- * and transpiled if either the analysis does not find ES module specific
13
- * statements or `transformMixedEsModules` is `true`.
10
+ * extension `".cjs"` or those in `extensions` are included, but you can
11
+ * narrow this list by only including specific files. These files will be
12
+ * analyzed and transpiled if either the analysis does not find ES module
13
+ * specific statements or `transformMixedEsModules` is `true`.
14
14
  * @default undefined
15
15
  */
16
16
  include?: FilterPattern;
@@ -64,6 +64,39 @@ interface RollupCommonJSOptions {
64
64
  * @default false
65
65
  */
66
66
  transformMixedEsModules?: boolean;
67
+ /**
68
+ * By default, this plugin will try to hoist `require` statements as imports
69
+ * to the top of each file. While this works well for many code bases and
70
+ * allows for very efficient ESM output, it does not perfectly capture
71
+ * CommonJS semantics as the order of side effects like log statements may
72
+ * change. But it is especially problematic when there are circular `require`
73
+ * calls between CommonJS modules as those often rely on the lazy execution of
74
+ * nested `require` calls.
75
+ *
76
+ * Setting this option to `true` will wrap all CommonJS files in functions
77
+ * which are executed when they are required for the first time, preserving
78
+ * NodeJS semantics. Note that this can have an impact on the size and
79
+ * performance of the generated code.
80
+ *
81
+ * The default value of `"auto"` will only wrap CommonJS files when they are
82
+ * part of a CommonJS dependency cycle, e.g. an index file that is required by
83
+ * many of its dependencies. All other CommonJS files are hoisted. This is the
84
+ * recommended setting for most code bases.
85
+ *
86
+ * `false` will entirely prevent wrapping and hoist all files. This may still
87
+ * work depending on the nature of cyclic dependencies but will often cause
88
+ * problems.
89
+ *
90
+ * You can also provide a minimatch pattern, or array of patterns, to only
91
+ * specify a subset of files which should be wrapped in functions for proper
92
+ * `require` semantics.
93
+ *
94
+ * `"debug"` works like `"auto"` but after bundling, it will display a warning
95
+ * containing a list of ids that have been wrapped which can be used as
96
+ * minimatch pattern for fine-tuning.
97
+ * @default "auto"
98
+ */
99
+ strictRequires?: boolean | FilterPattern;
67
100
  /**
68
101
  * Sometimes you have to leave require statements unconverted. Pass an array
69
102
  * containing the IDs or a `id => boolean` function.
@@ -74,14 +107,16 @@ interface RollupCommonJSOptions {
74
107
  * In most cases, where `require` calls are inside a `try-catch` clause,
75
108
  * they should be left unconverted as it requires an optional dependency
76
109
  * that may or may not be installed beside the rolled up package.
77
- * Due to the conversion of `require` to a static `import` - the call is hoisted
78
- * to the top of the file, outside of the `try-catch` clause.
110
+ * Due to the conversion of `require` to a static `import` - the call is
111
+ * hoisted to the top of the file, outside of the `try-catch` clause.
79
112
  *
80
113
  * - `true`: All `require` calls inside a `try` will be left unconverted.
81
- * - `false`: All `require` calls inside a `try` will be converted as if the `try-catch` clause is not there.
114
+ * - `false`: All `require` calls inside a `try` will be converted as if the
115
+ * `try-catch` clause is not there.
82
116
  * - `remove`: Remove all `require` calls from inside any `try` block.
83
117
  * - `string[]`: Pass an array containing the IDs to left unconverted.
84
- * - `((id: string) => boolean|'remove')`: Pass a function that control individual IDs.
118
+ * - `((id: string) => boolean|'remove')`: Pass a function that control
119
+ * individual IDs.
85
120
  *
86
121
  * @default false
87
122
  */
@@ -165,8 +200,8 @@ interface RollupCommonJSOptions {
165
200
  * Some modules contain dynamic `require` calls, or require modules that
166
201
  * contain circular dependencies, which are not handled well by static
167
202
  * imports. Including those modules as `dynamicRequireTargets` will simulate a
168
- * CommonJS (NodeJS-like) environment for them with support for dynamic and
169
- * circular dependencies.
203
+ * CommonJS (NodeJS-like) environment for them with support for dynamic
204
+ * dependencies. It also enables `strictRequires` for those modules.
170
205
  *
171
206
  * Note: In extreme cases, this feature may result in some paths being
172
207
  * rendered as absolute in the final bundle. The plugin tries to avoid
@@ -175,6 +210,13 @@ interface RollupCommonJSOptions {
175
210
  * replacing strings like `"/Users/John/Desktop/foo-project/"` -> `"/"`.
176
211
  */
177
212
  dynamicRequireTargets?: string | ReadonlyArray<string>;
213
+ /**
214
+ * To avoid long paths when using the `dynamicRequireTargets` option, you can use this option to specify a directory
215
+ * that is a common parent for all files that use dynamic require statements. Using a directory higher up such as `/`
216
+ * may lead to unnecessarily long paths in the generated code and may expose directory names on your machine like your
217
+ * home directory name. By default it uses the current working directory.
218
+ */
219
+ dynamicRequireRoot?: string;
178
220
  }
179
221
 
180
222
  /**